.file "991118-1.c" .text .align 2 .globl sub .type sub, @function sub: link.w %a6,#0 movm.l #0x3e00,-(%sp) move.l %a1,%d6 move.l 12(%a6),%d1 bfextu 9(%a6){#4:#20},%d0 move.l %d1,%d3 moveq.l #20,%d2 lsr.l %d2,%d3 move.l %d0,%d2 moveq.l #12,%d4 lsl.l %d4,%d2 move.l %d3,%d0 or.l %d2,%d0 lsl.l %d4,%d1 move.l %d0,%d5 moveq.l #20,%d2 lsl.l %d2,%d5 move.l %d1,%d4 moveq.l #12,%d2 lsr.l %d2,%d4 move.l %d5,%d3 or.l %d4,%d3 move.l %d0,%d2 moveq.l #12,%d4 asr.l %d4,%d2 eor.l #554580,%d2 eor.l #305419896,%d3 move.l %d3,12(%a6) bfins %d2,9(%a6){#4:#20} pea 8.w pea 8(%a6) move.l %a1,-(%sp) jbsr memcpy move.l %d6,%a0 movm.l -20(%a6),#0x7c unlk %a6 rts .size sub, .-sub .align 2 .globl sub2 .type sub2, @function sub2: link.w %a6,#0 movm.l #0x3e00,-(%sp) move.l %a1,%d6 bfextu 10(%a6){#4:#32},%d1 bfextu 8(%a6){#0:#20},%d0 move.l %d1,%d3 moveq.l #20,%d2 lsr.l %d2,%d3 move.l %d0,%d2 moveq.l #12,%d4 lsl.l %d4,%d2 move.l %d3,%d0 or.l %d2,%d0 lsl.l %d4,%d1 move.l %d0,%d5 moveq.l #20,%d2 lsl.l %d2,%d5 move.l %d1,%d4 moveq.l #12,%d2 lsr.l %d2,%d4 move.l %d5,%d3 or.l %d4,%d3 move.l %d0,%d2 moveq.l #12,%d4 asr.l %d4,%d2 eor.l #554580,%d2 eor.l #305419896,%d3 bfins %d3,10(%a6){#4:#32} bfins %d2,8(%a6){#0:#20} pea 8.w pea 8(%a6) move.l %a1,-(%sp) jbsr memcpy move.l %d6,%a0 movm.l -20(%a6),#0x7c unlk %a6 rts .size sub2, .-sub2 .align 2 .globl sub3 .type sub3, @function sub3: link.w %a6,#0 movm.l #0x3e00,-(%sp) move.l %a1,%d6 move.l 12(%a6),%d1 bfextu 9(%a6){#3:#21},%d0 move.l %d1,%d3 moveq.l #21,%d2 lsr.l %d2,%d3 move.l %d0,%d2 moveq.l #11,%d4 lsl.l %d4,%d2 move.l %d3,%d0 or.l %d2,%d0 lsl.l %d4,%d1 move.l %d0,%d5 moveq.l #21,%d2 lsl.l %d2,%d5 move.l %d1,%d4 moveq.l #11,%d2 lsr.l %d2,%d4 move.l %d5,%d3 or.l %d4,%d3 move.l %d0,%d2 moveq.l #11,%d4 asr.l %d4,%d2 eor.l #1603156,%d2 eor.l #305419896,%d3 move.l %d3,12(%a6) bfins %d2,9(%a6){#3:#21} pea 8.w pea 8(%a6) move.l %a1,-(%sp) jbsr memcpy move.l %d6,%a0 movm.l -20(%a6),#0x7c unlk %a6 rts .size sub3, .-sub3 .align 2 .globl sub4 .type sub4, @function sub4: link.w %a6,#0 movm.l #0x3e00,-(%sp) move.l %a1,%d6 bfextu 10(%a6){#5:#32},%d1 bfextu 8(%a6){#0:#21},%d0 move.l %d1,%d3 moveq.l #21,%d2 lsr.l %d2,%d3 move.l %d0,%d2 moveq.l #11,%d4 lsl.l %d4,%d2 move.l %d3,%d0 or.l %d2,%d0 lsl.l %d4,%d1 move.l %d0,%d5 moveq.l #21,%d2 lsl.l %d2,%d5 move.l %d1,%d4 moveq.l #11,%d2 lsr.l %d2,%d4 move.l %d5,%d3 or.l %d4,%d3 move.l %d0,%d2 moveq.l #11,%d4 asr.l %d4,%d2 eor.l #1603156,%d2 eor.l #305419896,%d3 bfins %d3,10(%a6){#5:#32} bfins %d2,8(%a6){#0:#21} pea 8.w pea 8(%a6) move.l %a1,-(%sp) jbsr memcpy move.l %d6,%a0 movm.l -20(%a6),#0x7c unlk %a6 rts .size sub4, .-sub4 .globl tmp .data .type tmp, @object .size tmp, 8 tmp: .byte 18 .byte 49 .byte 35 .byte 69 .byte 103 .byte 137 .byte 171 .byte 205 .globl tmp2 .type tmp2, @object .size tmp2, 8 tmp2: .byte 18 .byte 52 .byte 86 .byte 120 .byte 154 .byte 188 .byte 209 .byte 35 .globl tmp3 .type tmp3, @object .size tmp3, 8 tmp3: .byte 36 .byte 97 .byte 255 .byte 255 .byte 0 .byte 0 .byte 0 .byte 0 .globl tmp4 .type tmp4, @object .size tmp4, 8 tmp4: .byte 15 .byte 255 .byte 248 .byte 0 .byte 0 .byte 0 .byte 1 .byte 35 .text .align 2 .globl main .type main, @function main: link.w %a6,#-8 movm.l #0x3f3c,-(%sp) clr.l -8(%a6) clr.l -4(%a6) subq.l #8,%sp move.l %sp,%d0 lea tmp,%a2 pea 8.w move.l %a2,-(%sp) move.l %d0,-(%sp) lea memcpy,%a3 jbsr (%a3) lea (12,%sp),%sp move.l %a2,%a1 jbsr sub subq.l #8,%sp move.l %sp,%d0 pea 8.w pea tmp2 move.l %d0,-(%sp) jbsr (%a3) lea (12,%sp),%sp lea tmp2,%a1 jbsr sub2 bfexts (%a2){#0:#12},%d3 lea (16,%sp),%sp cmp.l #291,%d3 jbne .L14 move.l tmp+4,%d1 bfextu tmp+1{#4:#20},%d0 move.l %d1,%d3 moveq.l #20,%d2 lsr.l %d2,%d3 move.l %d0,%d2 moveq.l #12,%d4 lsl.l %d4,%d2 move.l %d3,%d0 or.l %d2,%d0 lsl.l %d4,%d1 move.l %d0,%d3 moveq.l #20,%d2 lsl.l %d2,%d3 move.l %d1,%d2 lsr.l %d4,%d2 move.l %d3,%d5 or.l %d2,%d5 move.l %d0,%d4 moveq.l #12,%d2 asr.l %d2,%d4 move.l #-436975,%d0 move.l #1975385525,%d1 sub.l %d5,%d1 subx.l %d4,%d0 jbeq .L15 .L14: jbsr abort .align 2 .L15: bfexts tmp2+6{#4:#12},%d7 cmp.l #291,%d7 jbne .L14 bfextu tmp2+2{#4:#32},%d1 bfextu tmp2{#0:#20},%d0 move.l %d1,%d3 moveq.l #20,%d6 lsr.l %d6,%d3 move.l %d0,%d2 moveq.l #12,%d6 lsl.l %d6,%d2 move.l %d3,%d0 or.l %d2,%d0 lsl.l %d6,%d1 move.l %d0,%d3 moveq.l #20,%d2 lsl.l %d2,%d3 move.l %d1,%d2 lsr.l %d6,%d2 move.l %d3,%d1 or.l %d2,%d1 asr.l %d6,%d0 sub.l %d5,%d1 subx.l %d4,%d0 jbne .L14 subq.l #8,%sp move.l %sp,%d0 lea tmp3,%a2 pea 8.w move.l %a2,-(%sp) move.l %d0,-(%sp) jbsr (%a3) lea (12,%sp),%sp move.l %a2,%a1 jbsr sub3 subq.l #8,%sp move.l %sp,%d0 pea 8.w pea tmp4 move.l %d0,-(%sp) jbsr (%a3) lea (12,%sp),%sp lea tmp4,%a1 jbsr sub4 bfexts (%a2){#0:#11},%d4 lea (16,%sp),%sp cmp.l #291,%d4 jbne .L14 move.l tmp3+4,%d1 bfextu tmp3+1{#3:#21},%d0 move.l %d1,%d3 moveq.l #21,%d6 lsr.l %d6,%d3 move.l %d0,%d2 moveq.l #11,%d4 lsl.l %d4,%d2 move.l %d3,%d0 or.l %d2,%d0 lsl.l %d4,%d1 move.l %d0,%d3 lsl.l %d6,%d3 move.l %d1,%d2 lsr.l %d4,%d2 move.l %d3,%d5 or.l %d2,%d5 move.l %d0,%d4 moveq.l #11,%d6 asr.l %d6,%d4 move.l #-423509,%d0 move.l #305419896,%d1 sub.l %d5,%d1 subx.l %d4,%d0 jbne .L14 bfexts tmp4+6{#5:#11},%d0 move.l %d0,-4(%a6) cmp.l #291,%d0 jbne .L14 bfextu tmp4+2{#5:#32},%d1 bfextu tmp4{#0:#21},%d0 move.l %d1,%d3 moveq.l #21,%d2 lsr.l %d2,%d3 move.l %d0,%d2 moveq.l #11,%d6 lsl.l %d6,%d2 move.l %d3,%d0 or.l %d2,%d0 lsl.l %d6,%d1 move.l %d0,%d3 moveq.l #21,%d2 lsl.l %d2,%d3 move.l %d1,%d2 lsr.l %d6,%d2 move.l %d3,%d1 or.l %d2,%d1 asr.l %d6,%d0 sub.l %d5,%d1 subx.l %d4,%d0 jbne .L14 clr.l -(%sp) jbsr exit nop .size main, .-main .ident "GCC: (GNU) 3.3.2"