64 (34) 02ac 684 0b 00 ff ff 55 40 00 20 00 00 79 1c 00 11 00 00 96 (95) 020c 524 fc 00 20 13 7e 00 65 a5 0c 05 36 7c 02 11 00 00 96 (92) 02cc 716 cc 42 00 dd dd 73 55 ff ff 00 35 00 00 11 00 00 96 (90) 008c 140 ed ed 4e 00 ec f9 20 0e 01 00 00 c0 00 11 00 00 13760 554c 21836 1d 3f 44 3d 43 45 19 0c 22 16 22 0c 0c 11 00 00 - zlib - 64 (34) 2c78 11384 64 (43) 8c78 35960 64 (44) 080c 2060 cnt = 5; back = 48 + 5 + 1 = 54 copy_backptr(c, 54, 7) 79 1c cnt = 3; back = 224 0f24 p1 803db7af4 start of zlib text inflate() 8034335c - 8034395c 0x600 text in .data4 which starts at 803cb3a0 803d7bd8 00 "unknown compression method" 80343448 803d7bf3 1b "invalid window size" 80343488 803d7c07 2f "incorrect header check" 8034352c 803d7c1e 46 "need dictionary" 803436e4 803d7c2e 56 "incorrect data check" 8034390c :))))))) ???() 80343960 - 80343b3c 0x1dc 803d7c43 6b "1.1.3" 80343984 guess for new "inflate()" 8034_370c (comes in as 0 or a difference) r4 -> r31 r3 = file struct or something, offset 0x18 is the file itself entry 803394a8: 94 21 ff 90 stwu r1,-112(r1) 803394ac: 7c 08 02 a6 mflr r0 803394b0: 90 01 00 74 stw r0,116(r1) 803394b4: be c1 00 48 stmw r22,72(r1) 803394b8: 7c 7e 1b 78 mr r30,r3 803394bc: 7c 9f 23 78 mr r31,r4 803394c0: 48 04 be e9 bl 0x803853a8 803394c4: 82 fe 00 28 lwz r23,40(r30) 803394c8: 7c 9b 23 78 mr r27,r4 803394cc: 83 1e 00 18 lwz r24,24(r30) 803394d0: 7c 7c 1b 78 mr r28,r3 803394d4: 28 17 00 00 cmplwi r23,0 803394d8: 83 58 00 00 lwz r26,0(r24) filesize from file 803394dc: 40 82 01 68 bne- 0x80339644 803394e0: 3c 80 80 3d lis r4,-32707 803394e4: 38 60 00 38 li r3,56 sizeof(z_stream) 803394e8: 38 84 7a 28 addi r4,r4,31272 803394ec: 38 a0 00 00 li r5,0 803394f0: 4b fd c3 7d bl 0x8031586c "malloc"(56,"??stng",0) 803394f4: 3c 80 80 34 lis r4,-32716 803394f8: 3c a0 80 34 lis r5,-32716 803394fc: 38 04 fa 18 addi r0,r4,-151 80339500: 7c 77 1b 78 mr r23,r3 80339504: 90 03 00 20 stw r0,32(r3) zalloc = 8033fa18 80339508: 38 a5 f9 ec addi r5,r5,-1556 8033950c: 3c 80 80 3d lis r4,-32707 80339510: 38 00 00 00 li r0,0 80339514: 90 a3 00 24 stw r5,36(r3) zfree = 8033f9ec 80339518: 38 84 7a 28 addi r4,r4,31272 8033951c: 38 84 00 07 addi r4,r4,7 80339520: 38 a0 00 38 li r5,56 80339524: 90 03 00 28 stw r0,40(r3) opaque = NULL 80339528: 48 00 a4 39 bl 0x80343960 (inflateInit?) 8033952c: 38 a0 00 00 li r5,0 80339530: 7c 17 00 d0 neg r0,r23 80339534: 90 b7 00 08 stw r5,8(r23) total_in = 0 80339538: 7c 04 bb 78 or r4,r0,r23 8033953c: 38 61 00 34 addi r3,r1,52 80339540: 38 1e 00 24 addi r0,r30,36 80339544: 90 b7 00 14 stw r5,20(r23) total_out = 0 80339548: 7c 03 00 40 cmplw r3,r0 8033954c: 54 80 0f fe rlwinm r0,r4,1,31,31 80339550: 90 b7 00 04 stw r5,4(r23) avail_in = 0 80339554: 90 b7 00 10 stw r5,16(r23) avail_out = 0 80339558: 90 b7 00 00 stw r5,0(r23) *next_in = NULL 8033955c: 90 b7 00 0c stw r5,12(r23) *next_out = NULL 80339560: 98 01 00 34 stb r0,52(r1) 80339564: 92 e1 00 38 stw r23,56(r1) store z_stream 80339568: 41 82 00 30 beq- 0x80339598 8033956c: 88 1e 00 24 lbz r0,36(r30) 80339570: 28 00 00 00 cmplwi r0,0 80339574: 41 82 00 0c beq- 0x80339580 goto fwdC 80339578: 80 7e 00 28 lwz r3,40(r30) 8033957c: 4b fd c3 b5 bl 0x80315930 (common func) fwdC 80339580: 88 61 00 34 lbz r3,52(r1) 80339584: 38 00 00 00 li r0,0 80339588: 98 7e 00 24 stb r3,36(r30) 8033958c: 80 61 00 38 lwz r3,56(r1) retr z_stream 80339590: 90 7e 00 28 stw r3,40(r30) store z_stream 80339594: 98 01 00 34 stb r0,52(r1) 80339598: 88 01 00 34 lbz r0,52(r1) 8033959c: 28 00 00 00 cmplwi r0,0 803395a0: 41 82 00 0c beq- 0x803395ac goto fwdD 803395a4: 80 61 00 38 lwz r3,56(r1) retr z_stream 803395a8: 4b fd c3 89 bl 0x80315930 (common func) fwdD 803395ac: 3c 60 80 3d lis r3,-32707 803395b0: 3c 80 80 3d lis r4,-32707 803395b4: 38 a3 7a 28 addi r5,r3,31272 803395b8: 38 c4 6a a8 addi r6,r4,27304 803395bc: 38 61 00 2c addi r3,r1,44 803395c0: 38 80 ff ff li r4,-1 803395c4: 4b f9 ce 11 bl 0x802d63d4 somefunc("Unknown type") 803395c8: 7c 67 1b 78 mr r7,r3 803395cc: 7f 43 d3 78 mr r3,r26 803395d0: 38 80 00 02 li r4,2 803395d4: 38 a0 00 01 li r5,1 803395d8: 38 c0 00 00 li r6,0 803395dc: 4b fd c3 b9 bl 0x80315994 somefunc2(fszie,2,1,0,?) 803395e0: 7c 03 00 d0 neg r0,r3 803395e4: 38 81 00 24 addi r4,r1,36 803395e8: 7c 05 1b 78 or r5,r0,r3 803395ec: 38 1e 00 1c addi r0,r30,28 803395f0: 54 a5 0f fe rlwinm r5,r5,1,31,31 803395f4: 90 61 00 28 stw r3,40(r1) 803395f8: 7c 04 00 40 cmplw r4,r0 803395fc: 98 a1 00 24 stb r5,36(r1) 80339600: 41 82 00 30 beq- 0x80339630 goto fwdE 80339604: 88 1e 00 1c lbz r0,28(r30) 80339608: 28 00 00 00 cmplwi r0,0 8033960c: 41 82 00 0c beq- 0x80339618 goto fwd0 80339610: 80 7e 00 20 lwz r3,32(r30) 80339614: 4b fd c3 1d bl 0x80315930 (common func) fwd0 80339618: 88 61 00 24 lbz r3,36(r1) 8033961c: 38 00 00 00 li r0,0 80339620: 98 7e 00 1c stb r3,28(r30) 80339624: 80 61 00 28 lwz r3,40(r1) 80339628: 90 7e 00 20 stw r3,32(r30) 8033962c: 98 01 00 24 stb r0,36(r1) fwdE 80339630: 88 01 00 24 lbz r0,36(r1) 80339634: 28 00 00 00 cmplwi r0,0 80339638: 41 82 00 0c beq- 0x80339644 goto fwd1 8033963c: 80 61 00 28 lwz r3,40(r1) 80339640: 4b fd c2 f1 bl 0x80315930 (common func) fwd1 80339644: 80 9e 00 2c lwz r4,44(r30) 80339648: 3c 60 80 5a lis r3,-32678 8033964c: 3a d8 00 04 addi r22,r24,4 fptr+4 80339650: 3b 00 00 00 li r24,0 80339654: 3b 24 ff fc addi r25,r4,-4 80339658: 3b a3 fd 30 addi r29,r3,-720 (r29 = mem ptr) 8033965c: 48 00 00 74 b 0x803396d0 goto mid_loop inflate_loop: 80339660: 80 17 00 04 lwz r0,4(r23) avail_in 80339664: 28 00 00 00 cmplwi r0,0 if avail_in 80339668: 40 82 00 5c bne- 0x803396c4 goto fwd2 8033966c: 80 97 00 08 lwz r4,8(r23) total_in 80339670: 38 62 cb a0 addi r3,r2,-13408 80339674: 80 02 cb a0 lwz r0,-13408(r2) 80339678: 7c 84 c8 50 subf r4,r4,r25 8033967c: 7c 04 00 00 cmpw r4,r0 80339680: 90 81 00 08 stw r4,8(r1) 80339684: 40 80 00 08 bge- 0x8033968c goto fwd3 80339688: 38 61 00 08 addi r3,r1,8 fwd3 8033968c: 80 63 00 00 lwz r3,0(r3) 80339690: 2c 03 00 00 cmpwi r3,0 80339694: 41 82 00 84 beq- 0x80339718 goto out_of_loop 80339698: 80 17 00 08 lwz r0,8(r23) total_in 8033969c: 7c 16 02 14 add r0,r22,r0 fptr+4 + total_in = *n_i 803396a0: 90 17 00 00 stw r0,0(r23) *next_in 803396a4: 90 77 00 04 stw r3,4(r23) avail_in 803396a8: 80 7e 00 20 lwz r3,32(r30) 803396ac: 80 17 00 14 lwz r0,20(r23) total_out 803396b0: 7c 03 02 14 add r0,r3,r0 803396b4: 90 17 00 0c stw r0,12(r23) *next_out 803396b8: 80 17 00 14 lwz r0,20(r23) total_out 803396bc: 7c 00 d0 50 subf r0,r0,r26 fsize-total_out = a_out 803396c0: 90 17 00 10 stw r0,16(r23) avail_out fwd2 803396c4: 7e e3 bb 78 mr r3,r23 z_stream* 803396c8: 38 80 00 00 li r4,0 Z_NO_FLUSH 803396cc: 48 00 9c 91 bl 0x8034335c inflate() mid_loop: 803396d0: 28 1f 00 00 cmplwi r31,0 803396d4: 41 82 00 38 beq- 0x8033970c goto fwd4 803396d8: 48 04 bc d1 bl 0x803853a8 (func 1) 803396dc: 7c 9b 20 10 subfc r4,r27,r4 803396e0: 80 bd 00 08 lwz r5,8(r29) 803396e4: 80 dd 00 0c lwz r6,12(r29) 803396e8: 7c 7c 19 10 subfe r3,r28,r3 803396ec: 48 05 04 e1 bl 0x80389bcc (func 2) 803396f0: 6c 65 80 00 xoris r5,r3,32768 803396f4: 6f 03 80 00 xoris r3,r24,32768 803396f8: 7c 1f 20 10 subfc r0,r31,r4 803396fc: 7c 63 29 10 subfe r3,r3,r5 80339700: 7c 65 29 10 subfe r3,r5,r5 80339704: 7c 63 00 d1 neg. r3,r3 80339708: 41 82 00 10 beq- 0x80339718 out_of_loop fwd4 8033970c: 80 17 00 14 lwz r0,20(r23) total_out 80339710: 7c 1a 00 40 cmplw r26,r0 fsize != t_out ? 80339714: 40 82 ff 4c bne+ 0x80339660 goto inflate_loop out_of_loop 80339718: 80 17 00 14 lwz r0,20(r23) total_out 8033971c: 7c 1a 00 40 cmplw r26,r0 t_out != fsize ? 80339720: 40 82 01 48 bne- 0x80339868 goto near_end 80339724: 7e e3 bb 78 mr r3,r23 80339728: 48 00 a4 19 bl 0x80343b40 inflateEnd? 8033972c: 38 61 00 1c addi r3,r1,28 80339730: 38 1e 00 24 addi r0,r30,36 80339734: 38 80 00 00 li r4,0 80339738: 7c 03 00 40 cmplw r3,r0 8033973c: 98 81 00 1c stb r4,28(r1) 80339740: 90 81 00 20 stw r4,32(r1) 80339744: 41 82 00 30 beq- 0x80339774 80339748: 88 1e 00 24 lbz r0,36(r30) 8033974c: 28 00 00 00 cmplwi r0,0 80339750: 41 82 00 0c beq- 0x8033975c goto fwdF 80339754: 80 7e 00 28 lwz r3,40(r30) load z_stream? 80339758: 4b fd c1 d9 bl 0x80315930 (common func) fwdF 8033975c: 88 61 00 1c lbz r3,28(r1) 80339760: 38 00 00 00 li r0,0 80339764: 98 7e 00 24 stb r3,36(r30) 80339768: 80 61 00 20 lwz r3,32(r1) 8033976c: 90 7e 00 28 stw r3,40(r30) 80339770: 98 01 00 1c stb r0,28(r1) 80339774: 88 01 00 1c lbz r0,28(r1) 80339778: 28 00 00 00 cmplwi r0,0 8033977c: 41 82 00 0c beq- 0x80339788 80339780: 80 61 00 20 lwz r3,32(r1) near_end 80339868: 38 60 00 00 li r3,0 8033986c: ba c1 00 48 lmw r22,72(r1) 80339870: 80 01 00 74 lwz r0,116(r1) 80339874: 7c 08 03 a6 mtlr r0 80339878: 38 21 00 70 addi r1,r1,112 8033987c: 4e 80 00 20 blr (r3)[0x18] = fileptr (r3)[0x28] = decomp_out (total_out) Eentry 802f9e08: 94 21 ff b0 stwu r1,-80(r1) 802f9e0c: 7c 08 02 a6 mflr r0 802f9e10: 90 01 00 54 stw r0,84(r1) 802f9e14: be e1 00 2c stmw r23,44(r1) 802f9e18: 7c 77 1b 78 mr r23,r3 802f9e1c: 7c 98 23 78 mr r24,r4 802f9e20: 48 07 c3 29 bl 0x80376148 802f9e24: 80 17 00 24 lwz r0,36(r23) *output 802f9e28: 7c 9d 23 78 mr r29,r4 802f9e2c: 83 57 00 18 lwz r26,24(r23) fptr 802f9e30: 7c 7e 1b 78 mr r30,r3 802f9e34: 28 00 00 00 cmplwi r0,0 output != NULL 802f9e38: 83 9a 00 00 lwz r28,0(r26) filesize from file 802f9e3c: 40 82 00 9c bne- 0x802f9ed8 goto fwdE 802f9e40: 3c 60 80 3b lis r3,-32709 802f9e44: 3c 80 80 3b lis r4,-32709 802f9e48: 38 a3 fa 98 addi r5,r3,-1384 802f9e4c: 38 c4 ea b8 addi r6,r4,-5448 802f9e50: 38 61 00 1c addi r3,r1,28 802f9e54: 38 80 ff ff li r4,-1 802f9e58: 4b f9 21 91 bl 0x8028bfe8 somefunc("Unknown type") 802f9e5c: 7c 67 1b 78 mr r7,r3 802f9e60: 7f 83 e3 78 mr r3,r28 802f9e64: 38 80 00 02 li r4,2 802f9e68: 38 a0 00 01 li r5,1 802f9e6c: 38 c0 00 00 li r6,0 802f9e70: 4b fd 45 7d bl 0x802ce3ec somefunc2(fsize,2,1,0,?) 802f9e74: 7c 03 00 d0 neg r0,r3 802f9e78: 38 81 00 14 addi r4,r1,20 802f9e7c: 7c 05 1b 78 or r5,r0,r3 802f9e80: 38 17 00 20 addi r0,r23,32 802f9e84: 54 a5 0f fe rlwinm r5,r5,1,31,31 802f9e88: 90 61 00 18 stw r3,24(r1) 802f9e8c: 7c 04 00 40 cmplw r4,r0 802f9e90: 98 a1 00 14 stb r5,20(r1) 802f9e94: 41 82 00 30 beq- 0x802f9ec4 802f9e98: 88 17 00 20 lbz r0,32(r23) 802f9e9c: 28 00 00 00 cmplwi r0,0 802f9ea0: 41 82 00 0c beq- 0x802f9eac goto fwdD 802f9ea4: 80 77 00 24 lwz r3,36(r23) *output 802f9ea8: 4b fd 44 e1 bl 0x802ce388 (common func) fwdD 802f9eac: 88 61 00 14 lbz r3,20(r1) 802f9eb0: 38 00 00 00 li r0,0 802f9eb4: 98 77 00 20 stb r3,32(r23) 802f9eb8: 80 61 00 18 lwz r3,24(r1) 802f9ebc: 90 77 00 24 stw r3,36(r23) 802f9ec0: 98 01 00 14 stb r0,20(r1) 802f9ec4: 88 01 00 14 lbz r0,20(r1) 802f9ec8: 28 00 00 00 cmplwi r0,0 802f9ecc: 41 82 00 0c beq- 0x802f9ed8 goto fwdE 802f9ed0: 80 61 00 18 lwz r3,24(r1) 802f9ed4: 4b fd 44 b5 bl 0x802ce388 (common func) fwdE 802f9ed8: 3c 60 80 41 lis r3,-32703 802f9edc: 3b 3a 00 04 addi r25,r26,4 fptr+4 802f9ee0: 3b e3 10 50 addi r31,r3,4176 (mem ptr) 802f9ee4: 3b 40 00 00 li r26,0 802f9ee8: 48 00 00 70 b 0x802f9f58 goto mid_loop decomp_loop 802f9eec: 80 77 00 1c lwz r3,28(r23) curr_index 802f9ef0: 38 c1 00 08 addi r6,r1,8 stack, [0] = a_out 802f9ef4: 7f 79 1a 2e lhzx r27,r25,r3 read next seg size 802f9ef8: 38 03 00 02 addi r0,r3,2 802f9efc: 90 17 00 1c stw r0,28(r23) curr_index 802f9f00: 7f 64 db 78 mr r4,r27 802f9f04: 80 17 00 28 lwz r0,40(r23) total_out 802f9f08: 7c 00 e0 50 subf r0,r0,r28 fsize-total_out = 802f9f0c: 90 01 00 08 stw r0,8(r1) avail_out 802f9f10: 80 77 00 1c lwz r3,28(r23) curr_index 802f9f14: 80 b7 00 24 lwz r5,36(r23) *output 802f9f18: 80 17 00 28 lwz r0,40(r23) total_out 802f9f1c: 7c 79 1a 14 add r3,r25,r3 802f9f20: 7c a5 02 14 add r5,r5,r0 802f9f24: 48 04 97 e9 bl 0x8034370c (A)(segptr,segsz,optr,&a 802f9f28: 80 77 00 24 lwz r3,36(r23) *output 802f9f2c: 80 17 00 28 lwz r0,40(r23) total_out 802f9f30: 80 81 00 08 lwz r4,8(r1) avail_out 802f9f34: 7c 63 02 14 add r3,r3,r0 802f9f38: 48 07 4f d5 bl 0x8036ef0c (B)(out+t_out,avail_out) 802f9f3c: 80 17 00 1c lwz r0,28(r23) curr_index 802f9f40: 7c 00 da 14 add r0,r0,r27 idx + seg size = 802f9f44: 90 17 00 1c stw r0,28(r23) curr_index 802f9f48: 80 77 00 28 lwz r3,40(r23) total_out 802f9f4c: 80 01 00 08 lwz r0,8(r1) avail_out 802f9f50: 7c 03 02 14 add r0,r3,r0 tot+avail = 802f9f54: 90 17 00 28 stw r0,40(r23) total_out mid_loop 802f9f58: 28 18 00 00 cmplwi r24,0 comes from r4 on fnentry 802f9f5c: 41 82 00 38 beq- 0x802f9f94 goto fwd3 802f9f60: 48 07 c1 e9 bl 0x80376148 (func 1) 802f9f64: 7c 9d 20 10 subfc r4,r29,r4 802f9f68: 80 bf 00 08 lwz r5,8(r31) off mem ptr 802f9f6c: 80 df 00 0c lwz r6,12(r31) off mem ptr 802f9f70: 7c 7e 19 10 subfe r3,r30,r3 802f9f74: 48 04 b7 a9 bl 0x8034571c (func 2) 802f9f78: 6c 65 80 00 xoris r5,r3,32768 802f9f7c: 6f 43 80 00 xoris r3,r26,32768 802f9f80: 7c 18 20 10 subfc r0,r24,r4 802f9f84: 7c 63 29 10 subfe r3,r3,r5 802f9f88: 7c 65 29 10 subfe r3,r5,r5 802f9f8c: 7c 63 00 d1 neg. r3,r3 802f9f90: 41 82 00 10 beq- 0x802f9fa0 goto out_of_loop fwd3 802f9f94: 80 17 00 28 lwz r0,40(r23) total_out 802f9f98: 7c 1c 00 40 cmplw r28,r0 d_size != t_out ? 802f9f9c: 40 82 ff 50 bne+ 0x802f9eec goto decomp_loop out_of_loop 802f9fa0: 80 17 00 28 lwz r0,40(r23) total_out 802f9fa4: 7c 1c 00 40 cmplw r28,r0 full_size != t_out ? 802f9fa8: 40 82 00 b0 bne- 0x802fa058 goto near_end 802f9fac: 38 77 00 20 addi r3,r23,32 802f9fb0: 38 17 00 14 addi r0,r23,20 802f9fb4: 7c 03 00 40 cmplw r3,r0 802f9fb8: 41 82 00 30 beq- 0x802f9fe8 802f9fbc: 88 17 00 14 lbz r0,20(r23) 802f9fc0: 28 00 00 00 cmplwi r0,0 802f9fc4: 41 82 00 0c beq- 0x802f9fd0 802f9fc8: 80 77 00 18 lwz r3,24(r23) 802f9fcc: 4b fd 43 bd bl 0x802ce388 802f9fd0: 88 77 00 20 lbz r3,32(r23) 802f9fd4: 38 00 00 00 li r0,0 802f9fd8: 98 77 00 14 stb r3,20(r23) 802f9fdc: 80 77 00 24 lwz r3,36(r23) 802f9fe0: 90 77 00 18 stw r3,24(r23) 802fa030: 88 01 00 0c lbz r0,12(r1) 802fa034: 28 00 00 00 cmplwi r0,0 802fa038: 41 82 00 0c beq- 0x802fa044 802fa03c: 80 61 00 10 lwz r3,16(r1) 802fa040: 4b fd 43 49 bl 0x802ce388 802fa044: 38 00 00 00 li r0,0 802fa048: 38 60 00 01 li r3,1 802fa04c: 90 17 00 30 stw r0,48(r23) 802fa050: 93 97 00 2c stw r28,44(r23) 802fa054: 48 00 00 08 b 0x802fa05c near_end 802fa058: 38 60 00 00 li r3,0 802fa05c: ba e1 00 2c lmw r23,44(r1) 802fa060: 80 01 00 54 lwz r0,84(r1) 802fa064: 7c 08 03 a6 mtlr r0 802fa068: 38 21 00 50 addi r1,r1,80 cache sillyness. Can ignore! (func B)(r3 = out+t_out, r4 = avail_out) 8036ef0c: 28 04 00 00 cmplwi r4,0 8036ef10: 4c 81 00 20 blelr ret if a_out <= 0 8036ef14: 54 65 06 fe clrlwi r5,r3,27 (4 if <, 2 if >, 1 if =) 8036ef18: 7c 84 2a 14 add r4,r4,r5 8036ef1c: 38 84 00 1f addi r4,r4,31 8036ef20: 54 84 d9 7e rlwinm r4,r4,27,5,31 r4 = r4 >> 5; really! 8036ef24: 7c 89 03 a6 mtctr r4 ctr, mv to count reg back1 8036ef28: 7c 00 18 6c dcbst r0,r3 store in data cache 8036ef2c: 38 63 00 20 addi r3,r3,32 8036ef30: 42 00 ff f8 bdnz+ 0x8036ef28 goto back1 8036ef34: 44 00 00 02 sc system call 8036ef38: 4e 80 00 20 blr (func A)(r3 = segptr, r4 = segsz, r5 = *output, r6 = &avail_out) 8034370c: 94 21 ff e0 stwu r1,-32(r1) 80343710: 7c 08 02 a6 mflr r0 80343714: 90 01 00 24 stw r0,36(r1) 80343718: 93 e1 00 1c stw r31,28(r1) 8034371c: 7c df 33 78 mr r31,r6 80343720: 93 c1 00 18 stw r30,24(r1) 80343724: 7c be 2b 78 mr r30,r5 80343728: 93 a1 00 14 stw r29,20(r1) 8034372c: 7c 9d 23 78 mr r29,r4 80343730: 93 81 00 10 stw r28,16(r1) 80343734: 7c 7c 1b 78 mr r28,r3 80343738: 80 0d 9f 38 lwz r0,-24776(r13) 8034373c: 2c 00 00 00 cmpwi r0,0 80343740: 40 82 00 34 bne- 0x80343774 goto fwd7 fwd7 (silly) 80343744: 38 00 00 04 li r0,4 80343748: 38 60 10 80 li r3,4224 8034374c: 90 01 00 08 stw r0,8(r1) 80343750: 38 80 00 02 li r4,2 80343754: 38 a0 00 04 li r5,4 80343758: 38 c0 00 04 li r6,4 8034375c: 90 01 00 0c stw r0,12(r1) 80343760: 38 e0 00 04 li r7,4 80343764: 39 00 00 04 li r8,4 80343768: 39 20 00 04 li r9,4 8034376c: 39 40 00 04 li r10,4 80343770: 48 00 00 3d bl 0x803437ac funcC(x1080,2,4,4,4,4,4,4) 80343774: 7f 83 e3 78 mr r3,r28 80343778: 7f a4 eb 78 mr r4,r29 8034377c: 7f c5 f3 78 mr r5,r30 80343780: 7f e6 fb 78 mr r6,r31 80343784: 38 e0 00 00 li r7,0 80343788: 48 00 06 8d bl 0x80343e14 funcD(r3,r4,r5,r6,0) 8034378c: 80 01 00 24 lwz r0,36(r1) 80343790: 83 e1 00 1c lwz r31,28(r1) 80343794: 83 c1 00 18 lwz r30,24(r1) 80343798: 83 a1 00 14 lwz r29,20(r1) 8034379c: 83 81 00 10 lwz r28,16(r1) 803437a0: 7c 08 03 a6 mtlr r0 803437a4: 38 21 00 20 addi r1,r1,32 803437a8: 4e 80 00 20 blr funcC 803437ac: 94 21 ff f0 stwu r1,-16(r1) 803437b0: 7c 08 02 a6 mflr r0 803437b4: 28 03 00 00 cmplwi r3,0 803437b8: 90 01 00 14 stw r0,20(r1) 803437bc: 38 00 00 01 li r0,1 803437c0: 81 61 00 18 lwz r11,24(r1) 803437c4: 93 e1 00 0c stw r31,12(r1) 803437c8: 80 61 00 1c lwz r3,28(r1) 803437cc: 90 0d 9f 38 stw r0,-24776(r13) 803437d0: 40 82 00 0c bne- 0x803437dc 803437d4: 38 60 ff ff li r3,-1 803437d8: 48 00 01 e8 b 0x803439c0 803437dc: 2c 04 ff ff cmpwi r4,-1 803437e0: 38 00 00 00 li r0,0 803437e4: 41 82 00 0c beq- 0x803437f0 803437e8: 2c 04 00 02 cmpwi r4,2 803437ec: 40 82 00 88 bne- 0x80343874 803437f0: 2c 05 ff ff cmpwi r5,-1 803437f4: 41 82 00 0c beq- 0x80343800 803437f8: 2c 05 00 04 cmpwi r5,4 803437fc: 40 82 00 78 bne- 0x80343874 80343800: 2c 06 ff ff cmpwi r6,-1 80343804: 41 82 00 0c beq- 0x80343810 80343808: 2c 06 00 04 cmpwi r6,4 8034380c: 40 82 00 68 bne- 0x80343874 80343810: 2c 07 ff ff cmpwi r7,-1 80343814: 41 82 00 0c beq- 0x80343820 80343818: 2c 07 00 04 cmpwi r7,4 8034381c: 40 82 00 58 bne- 0x80343874 80343820: 2c 08 ff ff cmpwi r8,-1 80343824: 41 82 00 0c beq- 0x80343830 80343828: 2c 08 00 04 cmpwi r8,4 8034382c: 40 82 00 48 bne- 0x80343874 80343830: 2c 09 ff ff cmpwi r9,-1 80343834: 41 82 00 0c beq- 0x80343840 80343838: 2c 09 00 04 cmpwi r9,4 8034383c: 40 82 00 38 bne- 0x80343874 80343840: 2c 0a ff ff cmpwi r10,-1 80343844: 41 82 00 0c beq- 0x80343850 80343848: 2c 0a 00 04 cmpwi r10,4 8034384c: 40 82 00 28 bne- 0x80343874 80343850: 2c 0b ff ff cmpwi r11,-1 80343854: 41 82 00 0c beq- 0x80343860 80343858: 2c 0b 00 04 cmpwi r11,4 8034385c: 40 82 00 18 bne- 0x80343874 80343860: 2c 03 ff ff cmpwi r3,-1 80343864: 41 82 00 0c beq- 0x80343870 80343868: 2c 03 00 04 cmpwi r3,4 8034386c: 40 82 00 08 bne- 0x80343874 80343870: 38 00 00 01 li r0,1 80343874: 2c 00 00 00 cmpwi r0,0 80343878: 40 82 00 0c bne- 0x80343884 8034387c: 38 60 ff ff li r3,-1 80343880: 48 00 01 40 b 0x803439c0 80343884: 3c 60 80 3b lis r3,-32709 80343888: 3b e0 00 01 li r31,1 8034388c: 80 03 03 48 lwz r0,840(r3) 1 80343890: 7c 00 00 34 cntlzw r0,r0 80343894: 54 00 d9 7e rlwinm r0,r0,27,5,31 80343898: 7c 00 00 34 cntlzw r0,r0 8034389c: 54 00 d9 7e rlwinm r0,r0,27,5,31 803438a0: 7f ff 00 38 and r31,r31,r0 803438a4: 2c 1f 00 01 cmpwi r31,1 803438a8: 40 82 00 f8 bne- 0x803439a0 803438ac: 80 6d 8f 10 lwz r3,-28912(r13) 803438b0: 38 e0 00 00 li r7,0 803438b4: 28 03 00 00 cmplwi r3,0 803438b8: 40 81 00 ac ble- 0x80343964 803438bc: 28 03 00 08 cmplwi r3,8 803438c0: 38 83 ff f8 addi r4,r3,-8 803438c4: 40 81 00 68 ble- 0x8034392c 803438c8: 38 04 00 07 addi r0,r4,7 803438cc: 3c 60 80 3e lis r3,-32706 803438d0: 54 00 e8 fe rlwinm r0,r0,29,3,31 803438d4: 39 03 06 08 addi r8,r3,1544 (mem) 803438d8: 7c 09 03 a6 mtctr r0 803438dc: 28 04 00 00 cmplwi r4,0 803438e0: 40 81 00 4c ble- 0x8034392c 803438e4: 38 67 ff fd addi r3,r7,-3 803438e8: 38 07 ff fe addi r0,r7,-2 803438ec: 90 68 00 00 stw r3,0(r8) 803438f0: 38 c7 ff ff addi r6,r7,-1 803438f4: 38 a7 00 01 addi r5,r7,1 803438f8: 38 87 00 02 addi r4,r7,2 803438fc: 90 08 00 04 stw r0,4(r8) 80343900: 38 67 00 03 addi r3,r7,3 80343904: 38 07 00 04 addi r0,r7,4 80343908: 90 c8 00 08 stw r6,8(r8) 8034390c: 90 e8 00 0c stw r7,12(r8) 80343910: 38 e7 00 08 addi r7,r7,8 80343914: 90 a8 00 10 stw r5,16(r8) 80343918: 90 88 00 14 stw r4,20(r8) 8034391c: 90 68 00 18 stw r3,24(r8) 80343920: 90 08 00 1c stw r0,28(r8) 80343924: 39 08 00 20 addi r8,r8,32 80343928: 42 00 ff bc bdnz+ 0x803438e4 8034392c: 80 ad 8f 10 lwz r5,-28912(r13) 80343930: 3c 60 80 3e lis r3,-32706 80343934: 54 e4 10 3a rlwinm r4,r7,2,0,29 80343938: 38 63 06 08 addi r3,r3,1544 (mem) 8034393c: 7c 07 28 50 subf r0,r7,r5 80343940: 7c 63 22 14 add r3,r3,r4 80343944: 7c 09 03 a6 mtctr r0 80343948: 7c 07 28 40 cmplw r7,r5 8034394c: 40 80 00 18 bge- 0x80343964 80343950: 38 07 ff fd addi r0,r7,-3 80343954: 38 e7 00 01 addi r7,r7,1 80343958: 90 03 00 00 stw r0,0(r3) 8034395c: 38 63 00 04 addi r3,r3,4 80343960: 42 00 ff f0 bdnz+ 0x80343950 80343964: 3c 60 80 3e lis r3,-32706 80343968: 84 03 06 08 lwzu r0,1544(r3) (mem) 8034396c: 38 80 00 00 li r4,0 80343970: 2c 00 ff fd cmpwi r0,-3 80343974: 40 82 00 1c bne- 0x80343990 80343978: 80 03 00 04 lwz r0,4(r3) 8034397c: 2c 00 ff fe cmpwi r0,-2 80343980: 40 82 00 10 bne- 0x80343990 80343984: 80 03 00 08 lwz r0,8(r3) 80343988: 2c 00 ff ff cmpwi r0,-1 8034398c: 41 82 00 08 beq- 0x80343994 80343990: 38 80 00 01 li r4,1 80343994: 7c 80 00 34 cntlzw r0,r4 80343998: 54 00 d9 7e rlwinm r0,r0,27,5,31 8034399c: 7f ff 00 38 and r31,r31,r0 803439a0: 2c 1f 00 01 cmpwi r31,1 803439a4: 40 82 00 0c bne- 0x803439b0 803439a8: 48 00 00 2d bl 0x803439d4 funcE 803439ac: 7f ff 18 38 and r31,r31,r3 803439b0: 38 7f ff ff addi r3,r31,-1 803439b4: 20 1f 00 01 subfic r0,r31,1 803439b8: 7c 60 03 78 or r0,r3,r0 803439bc: 7c 03 fe 71 srawi. r3,r0,31 803439c0: 80 01 00 14 lwz r0,20(r1) 803439c4: 83 e1 00 0c lwz r31,12(r1) 803439c8: 7c 08 03 a6 mtlr r0 803439cc: 38 21 00 10 addi r1,r1,16 803439d0: 4e 80 00 20 blr funcE 803439d4: 94 21 ff b0 stwu r1,-80(r1) 803439d8: 7c 08 02 a6 mflr r0 803439dc: 39 60 00 00 li r11,0 803439e0: 39 40 00 01 li r10,1 803439e4: 90 01 00 54 stw r0,84(r1) 803439e8: 39 20 00 02 li r9,2 803439ec: 39 00 00 03 li r8,3 803439f0: 38 e0 00 04 li r7,4 803439f4: 93 e1 00 4c stw r31,76(r1) 803439f8: 38 c0 00 05 li r6,5 803439fc: 38 a0 00 06 li r5,6 80343a00: 38 00 00 07 li r0,7 80343a04: 93 c1 00 48 stw r30,72(r1) 80343a08: 38 61 00 1c addi r3,r1,28 80343a0c: 3b e0 00 01 li r31,1 80343a10: 38 80 00 04 li r4,4 80343a14: 99 61 00 0c stb r11,12(r1) 80343a18: 39 60 00 08 li r11,8 80343a1c: 99 41 00 0d stb r10,13(r1) 80343a20: 39 40 00 09 li r10,9 80343a24: 99 21 00 0e stb r9,14(r1) 80343a28: 39 20 00 0a li r9,10 80343a2c: 99 01 00 0f stb r8,15(r1) 80343a30: 39 00 00 0b li r8,11 80343a34: 98 e1 00 10 stb r7,16(r1) 80343a38: 38 e0 00 0c li r7,12 80343a3c: 98 c1 00 11 stb r6,17(r1) 80343a40: 38 c0 00 0d li r6,13 80343a44: 98 a1 00 12 stb r5,18(r1) 80343a48: 38 a0 00 0e li r5,14 80343a4c: 98 01 00 13 stb r0,19(r1) 80343a50: 38 00 00 0f li r0,15 80343a54: 99 61 00 14 stb r11,20(r1) 80343a58: 99 41 00 15 stb r10,21(r1) 80343a5c: 99 21 00 16 stb r9,22(r1) 80343a60: 99 01 00 17 stb r8,23(r1) 80343a64: 98 e1 00 18 stb r7,24(r1) 80343a68: 98 c1 00 19 stb r6,25(r1) 80343a6c: 98 a1 00 1a stb r5,26(r1) 80343a70: 98 01 00 1b stb r0,27(r1) 80343a74: 48 00 03 89 bl 0x80343dfc funcF 80343a78: 3b c1 00 1c addi r30,r1,28 80343a7c: 38 e0 00 04 li r7,4 80343a80: 7f c0 f3 78 mr r0,r30 80343a84: 38 80 00 00 li r4,0 80343a88: 7f de 1a 14 add r30,r30,r3 80343a8c: 38 61 00 08 addi r3,r1,8 80343a90: 7c a0 f0 50 subf r5,r0,r30 80343a94: 54 a6 0f fe rlwinm r6,r5,1,31,31 80343a98: 7c e0 2a 78 xor r0,r7,r5 80343a9c: 38 a0 00 04 li r5,4 80343aa0: 68 c8 00 01 xori r8,r6,1 80343aa4: 7c 06 0e 70 srawi r6,r0,1 80343aa8: 7c 00 38 38 and r0,r0,r7 80343aac: 7c 00 30 50 subf r0,r0,r6 80343ab0: 7f ff 40 38 and r31,r31,r8 80343ab4: 54 00 0f fe rlwinm r0,r0,1,31,31 80343ab8: 7f ff 00 38 and r31,r31,r0 80343abc: 4b cb f6 45 bl 0x80003100 80343ac0: 80 01 00 08 lwz r0,8(r1) 80343ac4: 38 61 00 08 addi r3,r1,8 80343ac8: 38 80 00 ff li r4,255 80343acc: 38 a0 00 04 li r5,4 80343ad0: 7c 00 00 34 cntlzw r0,r0 80343ad4: 54 00 d9 7e rlwinm r0,r0,27,5,31 80343ad8: 7f ff 00 38 and r31,r31,r0 80343adc: 4b cb f6 25 bl 0x80003100 80343ae0: 3c 60 00 01 lis r3,1 80343ae4: 80 e1 00 08 lwz r7,8(r1) 80343ae8: 38 03 ff ff addi r0,r3,-1 0xffff 80343aec: a0 61 00 08 lhz r3,8(r1) 80343af0: 54 00 04 3e clrlwi r0,r0,16 80343af4: 20 87 ff ff subfic r4,r7,-1 80343af8: 7c 03 00 50 subf r0,r3,r0 80343afc: 20 67 ff ff subfic r3,r7,-1 80343b00: 7c 05 00 34 cntlzw r5,r0 80343b04: 20 07 ff ff subfic r0,r7,-1 80343b08: 54 a6 d9 7e rlwinm r6,r5,27,5,31 80343b0c: 7c 85 00 34 cntlzw r5,r4 80343b10: 7c 64 00 34 cntlzw r4,r3 80343b14: 7c 03 00 34 cntlzw r3,r0 80343b18: 20 07 ff ff subfic r0,r7,-1 80343b1c: 7f ff 30 38 and r31,r31,r6 80343b20: 54 a5 d9 7e rlwinm r5,r5,27,5,31 80343b24: 54 84 d9 7e rlwinm r4,r4,27,5,31 80343b28: 7f ff 28 38 and r31,r31,r5 80343b2c: 7c 00 00 34 cntlzw r0,r0 80343b30: 7f ff 20 38 and r31,r31,r4 80343b34: 54 63 d9 7e rlwinm r3,r3,27,5,31 80343b38: 7f ff 18 38 and r31,r31,r3 80343b3c: 54 00 d9 7e rlwinm r0,r0,27,5,31 80343b40: 7f ff 00 38 and r31,r31,r0 80343b44: 2c 1f 00 01 cmpwi r31,1 80343b48: 40 82 00 bc bne- 0x80343c04 80343b4c: 7c 7e f0 50 subf r3,r30,r30 80343b50: 38 de 00 04 addi r6,r30,4 80343b54: 7c 60 00 34 cntlzw r0,r3 80343b58: 38 9e 00 04 addi r4,r30,4 80343b5c: 7c 66 20 50 subf r3,r6,r4 80343b60: 38 c6 00 04 addi r6,r6,4 80343b64: 54 05 d9 7e rlwinm r5,r0,27,5,31 80343b68: 38 9e 00 08 addi r4,r30,8 80343b6c: 7c 60 00 34 cntlzw r0,r3 80343b70: 7c 66 20 50 subf r3,r6,r4 80343b74: 7f ff 28 38 and r31,r31,r5 80343b78: 54 05 d9 7e rlwinm r5,r0,27,5,31 80343b7c: 38 9e 00 0c addi r4,r30,12 80343b80: 38 c6 00 04 addi r6,r6,4 80343b84: 7c 60 00 34 cntlzw r0,r3 80343b88: 7c 66 20 50 subf r3,r6,r4 80343b8c: 7f ff 28 38 and r31,r31,r5 80343b90: 54 05 d9 7e rlwinm r5,r0,27,5,31 80343b94: 38 9e 00 10 addi r4,r30,16 80343b98: 38 c6 00 04 addi r6,r6,4 80343b9c: 7c 60 00 34 cntlzw r0,r3 80343ba0: 7c 66 20 50 subf r3,r6,r4 80343ba4: 7f ff 28 38 and r31,r31,r5 80343ba8: 54 05 d9 7e rlwinm r5,r0,27,5,31 80343bac: 38 9e 00 14 addi r4,r30,20 80343bb0: 38 c6 00 04 addi r6,r6,4 80343bb4: 7c 60 00 34 cntlzw r0,r3 80343bb8: 7c 66 20 50 subf r3,r6,r4 80343bbc: 7f ff 28 38 and r31,r31,r5 80343bc0: 54 05 d9 7e rlwinm r5,r0,27,5,31 80343bc4: 38 9e 00 18 addi r4,r30,24 80343bc8: 38 c6 00 04 addi r6,r6,4 80343bcc: 7c 60 00 34 cntlzw r0,r3 80343bd0: 7c 66 20 50 subf r3,r6,r4 80343bd4: 7f ff 28 38 and r31,r31,r5 80343bd8: 54 05 d9 7e rlwinm r5,r0,27,5,31 80343bdc: 38 9e 00 1c addi r4,r30,28 80343be0: 38 c6 00 04 addi r6,r6,4 80343be4: 7c 60 00 34 cntlzw r0,r3 80343be8: 7f ff 28 38 and r31,r31,r5 80343bec: 54 05 d9 7e rlwinm r5,r0,27,5,31 80343bf0: 7c 66 20 50 subf r3,r6,r4 80343bf4: 7c 60 00 34 cntlzw r0,r3 80343bf8: 7f ff 28 38 and r31,r31,r5 80343bfc: 54 05 d9 7e rlwinm r5,r0,27,5,31 80343c00: 7f ff 28 38 and r31,r31,r5 80343c04: 38 61 00 08 addi r3,r1,8 80343c08: 38 80 00 00 li r4,0 80343c0c: 38 a0 00 04 li r5,4 80343c10: 4b cb f4 f1 bl 0x80003100 80343c14: 80 01 00 08 lwz r0,8(r1) 80343c18: 7c 00 00 34 cntlzw r0,r0 80343c1c: 54 00 d9 7e rlwinm r0,r0,27,5,31 80343c20: 7f ff 00 38 and r31,r31,r0 80343c24: 7f ff 00 38 and r31,r31,r0 80343c28: 57 ff 07 fe clrlwi r31,r31,31 80343c2c: 2c 1f 00 01 cmpwi r31,1 80343c30: 40 82 00 e4 bne- 0x80343d14 80343c34: 93 de 00 00 stw r30,0(r30) 80343c38: 38 7e 00 04 addi r3,r30,4 80343c3c: 38 80 00 00 li r4,0 80343c40: 38 a0 00 20 li r5,32 80343c44: 93 de 00 04 stw r30,4(r30) 80343c48: 93 de 00 08 stw r30,8(r30) 80343c4c: 93 de 00 0c stw r30,12(r30) 80343c50: 93 de 00 10 stw r30,16(r30) 80343c54: 93 de 00 14 stw r30,20(r30) 80343c58: 93 de 00 18 stw r30,24(r30) 80343c5c: 93 de 00 1c stw r30,28(r30) 80343c60: 93 de 00 20 stw r30,32(r30) 80343c64: 93 de 00 24 stw r30,36(r30) 80343c68: 4b cb f4 99 bl 0x80003100 80343c6c: 80 1e 00 00 lwz r0,0(r30) 80343c70: 80 9e 00 04 lwz r4,4(r30) 80343c74: 7c a0 f0 50 subf r5,r0,r30 80343c78: 80 1e 00 24 lwz r0,36(r30) 80343c7c: 7c 83 00 34 cntlzw r3,r4 80343c80: 80 9e 00 08 lwz r4,8(r30) 80343c84: 7c a5 00 34 cntlzw r5,r5 80343c88: 7c 00 f0 50 subf r0,r0,r30 80343c8c: 54 a5 d9 7e rlwinm r5,r5,27,5,31 80343c90: 54 66 d9 7e rlwinm r6,r3,27,5,31 80343c94: 7c 83 00 34 cntlzw r3,r4 80343c98: 80 9e 00 0c lwz r4,12(r30) 80343c9c: 7f ff 28 38 and r31,r31,r5 80343ca0: 7c 00 00 34 cntlzw r0,r0 80343ca4: 7f ff 30 38 and r31,r31,r6 80343ca8: 54 66 d9 7e rlwinm r6,r3,27,5,31 80343cac: 7c 83 00 34 cntlzw r3,r4 80343cb0: 80 9e 00 10 lwz r4,16(r30) 80343cb4: 7f ff 30 38 and r31,r31,r6 80343cb8: 54 00 d9 7e rlwinm r0,r0,27,5,31 80343cbc: 54 66 d9 7e rlwinm r6,r3,27,5,31 80343cc0: 7c 83 00 34 cntlzw r3,r4 80343cc4: 7f ff 30 38 and r31,r31,r6 80343cc8: 80 9e 00 14 lwz r4,20(r30) 80343ccc: 54 66 d9 7e rlwinm r6,r3,27,5,31 80343cd0: 7c 83 00 34 cntlzw r3,r4 80343cd4: 80 9e 00 18 lwz r4,24(r30) 80343cd8: 7f ff 30 38 and r31,r31,r6 80343cdc: 54 66 d9 7e rlwinm r6,r3,27,5,31 80343ce0: 7c 83 00 34 cntlzw r3,r4 80343ce4: 7f ff 30 38 and r31,r31,r6 80343ce8: 80 9e 00 1c lwz r4,28(r30) 80343cec: 54 66 d9 7e rlwinm r6,r3,27,5,31 80343cf0: 7c 83 00 34 cntlzw r3,r4 80343cf4: 80 9e 00 20 lwz r4,32(r30) 80343cf8: 7f ff 30 38 and r31,r31,r6 80343cfc: 54 66 d9 7e rlwinm r6,r3,27,5,31 80343d00: 7c 83 00 34 cntlzw r3,r4 80343d04: 7f ff 30 38 and r31,r31,r6 80343d08: 54 66 d9 7e rlwinm r6,r3,27,5,31 80343d0c: 7f ff 30 38 and r31,r31,r6 80343d10: 7f ff 00 38 and r31,r31,r0 80343d14: 2c 1f 00 01 cmpwi r31,1 80343d18: 40 82 00 c8 bne- 0x80343de0 80343d1c: 38 61 00 0d addi r3,r1,13 80343d20: 38 80 00 04 li r4,4 80343d24: 48 00 00 d9 bl 0x80343dfc funcF 80343d28: 38 83 00 01 addi r4,r3,1 80343d2c: 38 61 00 0c addi r3,r1,12 80343d30: 7c 63 22 14 add r3,r3,r4 80343d34: 39 21 00 0d addi r9,r1,13 80343d38: 54 65 07 be clrlwi r5,r3,30 80343d3c: 38 04 ff ff addi r0,r4,-1 80343d40: 39 40 00 01 li r10,1 80343d44: 7d 09 18 50 subf r8,r9,r3 80343d48: 7c a5 00 34 cntlzw r5,r5 80343d4c: 38 e0 00 05 li r7,5 80343d50: 54 ac d9 7e rlwinm r12,r5,27,5,31 80343d54: 38 a1 00 11 addi r5,r1,17 80343d58: 7c e6 22 78 xor r6,r7,r4 80343d5c: 7c 8b 53 38 orc r11,r4,r10 80343d60: 54 0a f8 7e rlwinm r10,r0,31,1,31 80343d64: 7c a0 1a 78 xor r0,r5,r3 80343d68: 7d 4a 58 50 subf r10,r10,r11 80343d6c: 7c c6 00 34 cntlzw r6,r6 80343d70: 7c e6 30 30 slw r6,r7,r6 80343d74: 7c 00 00 34 cntlzw r0,r0 80343d78: 7c a0 00 30 slw r0,r5,r0 80343d7c: 7c 67 4b 38 orc r7,r3,r9 80343d80: 55 05 f8 7e rlwinm r5,r8,31,1,31 80343d84: 7f ff 60 38 and r31,r31,r12 80343d88: 55 48 0f fe rlwinm r8,r10,1,31,31 80343d8c: 54 c6 0f fe rlwinm r6,r6,1,31,31 80343d90: 7c a5 38 50 subf r5,r5,r7 80343d94: 54 07 0f fe rlwinm r7,r0,1,31,31 80343d98: 7f ff 40 38 and r31,r31,r8 80343d9c: 54 a0 0f fe rlwinm r0,r5,1,31,31 80343da0: 7f ff 00 38 and r31,r31,r0 80343da4: 7f ff 30 38 and r31,r31,r6 80343da8: 7f ff 38 38 and r31,r31,r7 80343dac: 2c 1f 00 01 cmpwi r31,1 80343db0: 40 82 00 30 bne- 0x80343de0 80343db4: 38 a1 00 10 addi r5,r1,16 80343db8: 80 63 00 00 lwz r3,0(r3) 80343dbc: 7c 85 20 2e lwzx r4,r5,r4 80343dc0: 7c 03 00 d0 neg r0,r3 80343dc4: 7c 03 1b 78 or r3,r0,r3 80343dc8: 7c 04 00 d0 neg r0,r4 80343dcc: 54 63 0f fe rlwinm r3,r3,1,31,31 80343dd0: 7c 00 23 78 or r0,r0,r4 80343dd4: 7f ff 18 38 and r31,r31,r3 80343dd8: 54 00 0f fe rlwinm r0,r0,1,31,31 80343ddc: 7f ff 00 38 and r31,r31,r0 80343de0: 80 01 00 54 lwz r0,84(r1) 80343de4: 7f e3 fb 78 mr r3,r31 80343de8: 83 e1 00 4c lwz r31,76(r1) 80343dec: 83 c1 00 48 lwz r30,72(r1) 80343df0: 7c 08 03 a6 mtlr r0 80343df4: 38 21 00 50 addi r1,r1,80 80343df8: 4e 80 00 20 blr funcF returns (-r3) mod r4, 32 bit 80343dfc: 7c a4 1a 14 add r5,r4,r3 80343e00: 38 05 ff ff addi r0,r5,-1 80343e04: 7c 00 23 96 divwu r0,r0,r4 80343e08: 7c 04 01 d6 mullw r0,r4,r0 80343e0c: 7c 63 00 50 subf r3,r3,r0 80343e10: 4e 80 00 20 blr funcD(r3 = segptr, r4 = segsz, r5 = *output, r6 = &avail_out, r7 = 0) 80343e14: 38 00 00 00 li r0,0 80343e18: 7c a7 2b 78 mr r7,r5 80343e1c: 90 06 00 00 stw r0,0(r6) 80343e20: 7c 03 22 14 add r0,r3,r4 80343e24: 89 03 00 00 lbz r8,0(r3) 80343e28: 28 08 00 11 cmplwi r8,17 80343e2c: 40 81 00 30 ble- 0x80343e5c goto big_loop 80343e30: 39 08 ff ef addi r8,r8,-17 80343e34: 38 63 00 01 addi r3,r3,1 80343e38: 28 08 00 04 cmplwi r8,4 80343e3c: 41 80 02 44 blt- 0x80344080 goto fwd2 back1 80343e40: 88 83 00 00 lbz r4,0(r3) 80343e44: 35 08 ff ff addic. r8,r8,-1 80343e48: 38 63 00 01 addi r3,r3,1 80343e4c: 98 87 00 00 stb r4,0(r7) 80343e50: 38 e7 00 01 addi r7,r7,1 80343e54: 40 82 ff ec bne+ 0x80343e40 goto back1 80343e58: 48 00 00 78 b 0x80343ed0 goto abs1 big_loop: 80343e5c: 88 83 00 00 lbz r4,0(r3) 80343e60: 38 63 00 01 addi r3,r3,1 80343e64: 28 04 00 10 cmplwi r4,16 80343e68: 40 80 00 b4 bge- 0x80343f1c goto inner_loop 80343e6c: 28 04 00 00 cmplwi r4,0 80343e70: 40 82 00 28 bne- 0x80343e98 goto fwd4 80343e74: 48 00 00 0c b 0x80343e80 goto abs2 back2: 80343e78: 38 84 00 ff addi r4,r4,255 80343e7c: 38 63 00 01 addi r3,r3,1 abs2: 80343e80: 89 03 00 00 lbz r8,0(r3) 80343e84: 28 08 00 00 cmplwi r8,0 80343e88: 41 82 ff f0 beq+ 0x80343e78 goto back2 80343e8c: 7c 88 22 14 add r4,r8,r4 80343e90: 38 63 00 01 addi r3,r3,1 80343e94: 38 84 00 0f addi r4,r4,15 fwd4: 80343e98: 89 03 00 00 lbz r8,0(r3) 80343e9c: 99 07 00 00 stb r8,0(r7) 80343ea0: 89 03 00 01 lbz r8,1(r3) 80343ea4: 99 07 00 01 stb r8,1(r7) 80343ea8: 89 03 00 02 lbz r8,2(r3) 80343eac: 38 63 00 03 addi r3,r3,3 80343eb0: 99 07 00 02 stb r8,2(r7) 80343eb4: 38 e7 00 03 addi r7,r7,3 back3: 80343eb8: 89 03 00 00 lbz r8,0(r3) 80343ebc: 34 84 ff ff addic. r4,r4,-1 80343ec0: 38 63 00 01 addi r3,r3,1 80343ec4: 99 07 00 00 stb r8,0(r7) 80343ec8: 38 e7 00 01 addi r7,r7,1 80343ecc: 40 82 ff ec bne+ 0x80343eb8 goto back3 abs1: 80343ed0: 88 83 00 00 lbz r4,0(r3) 80343ed4: 38 63 00 01 addi r3,r3,1 80343ed8: 28 04 00 10 cmplwi r4,16 80343edc: 40 80 00 40 bge- 0x80343f1c goto inner_loop 80343ee0: 89 03 00 00 lbz r8,0(r3) 80343ee4: 39 27 f7 ff addi r9,r7,-2049 80343ee8: 54 84 f0 be rlwinm r4,r4,30,2,31 80343eec: 38 63 00 01 addi r3,r3,1 80343ef0: 7d 24 48 50 subf r9,r4,r9 80343ef4: 55 04 15 ba rlwinm r4,r8,2,22,29 80343ef8: 7d 24 48 50 subf r9,r4,r9 80343efc: 88 89 00 00 lbz r4,0(r9) 80343f00: 98 87 00 00 stb r4,0(r7) 80343f04: 88 89 00 01 lbz r4,1(r9) 80343f08: 98 87 00 01 stb r4,1(r7) 80343f0c: 88 89 00 02 lbz r4,2(r9) 80343f10: 98 87 00 02 stb r4,2(r7) 80343f14: 38 e7 00 03 addi r7,r7,3 80343f18: 48 00 01 58 b 0x80344070 goto abs3 inner_loop: 80343f1c: 28 04 00 40 cmplwi r4,64 80343f20: 41 80 00 2c blt- 0x80343f4c goto fwd4 80343f24: 89 03 00 00 lbz r8,0(r3) 80343f28: 39 47 ff ff addi r10,r7,-1 80343f2c: 54 89 f7 7e rlwinm r9,r4,30,29,31 80343f30: 54 84 d9 7e rlwinm r4,r4,27,5,31 80343f34: 7d 49 50 50 subf r10,r9,r10 80343f38: 55 08 1d 78 rlwinm r8,r8,3,21,28 80343f3c: 7d 48 50 50 subf r10,r8,r10 80343f40: 38 84 ff ff addi r4,r4,-1 80343f44: 38 63 00 01 addi r3,r3,1 80343f48: 48 00 00 f8 b 0x80344040 goto abs4 fwd4 80343f4c: 28 04 00 20 cmplwi r4,32 80343f50: 41 80 00 54 blt- 0x80343fa4 goto fwd5 80343f54: 54 84 06 ff clrlwi. r4,r4,27 80343f58: 40 82 00 28 bne- 0x80343f80 goto fwd6 80343f5c: 48 00 00 0c b 0x80343f68 goto abs5 back4 80343f60: 38 84 00 ff addi r4,r4,255 80343f64: 38 63 00 01 addi r3,r3,1 abs5: 80343f68: 89 03 00 00 lbz r8,0(r3) 80343f6c: 28 08 00 00 cmplwi r8,0 80343f70: 41 82 ff f0 beq+ 0x80343f60 goto back4 80343f74: 7c 88 22 14 add r4,r8,r4 80343f78: 38 63 00 01 addi r3,r3,1 80343f7c: 38 84 00 1f addi r4,r4,31 fwd6: 80343f80: 89 23 00 00 lbz r9,0(r3) 80343f84: 39 47 ff ff addi r10,r7,-1 80343f88: 89 03 00 01 lbz r8,1(r3) 80343f8c: 38 63 00 02 addi r3,r3,2 80343f90: 7d 29 16 70 srawi r9,r9,2 80343f94: 55 08 30 32 rlwinm r8,r8,6,0,25 80343f98: 7d 09 42 14 add r8,r9,r8 80343f9c: 7d 48 50 50 subf r10,r8,r10 80343fa0: 48 00 00 a0 b 0x80344040 goto abs4 fwd5: 80343fa4: 28 04 00 10 cmplwi r4,16 80343fa8: 41 80 00 64 blt- 0x8034400c goto fwd7 80343fac: 54 88 5c 62 rlwinm r8,r4,11,17,17 80343fb0: 54 84 07 7f clrlwi. r4,r4,29 80343fb4: 7d 48 38 50 subf r10,r8,r7 80343fb8: 40 82 00 28 bne- 0x80343fe0 goto fwd8 80343fbc: 48 00 00 0c b 0x80343fc8 goto abs5 back5: 80343fc0: 38 84 00 ff addi r4,r4,255 80343fc4: 38 63 00 01 addi r3,r3,1 abs5: 80343fc8: 89 03 00 00 lbz r8,0(r3) 80343fcc: 28 08 00 00 cmplwi r8,0 80343fd0: 41 82 ff f0 beq+ 0x80343fc0 goto back5 80343fd4: 7c 88 22 14 add r4,r8,r4 80343fd8: 38 63 00 01 addi r3,r3,1 80343fdc: 38 84 00 07 addi r4,r4,7 fwd8: 80343fe0: 89 23 00 00 lbz r9,0(r3) 80343fe4: 89 03 00 01 lbz r8,1(r3) 80343fe8: 38 63 00 02 addi r3,r3,2 80343fec: 7d 29 16 70 srawi r9,r9,2 80343ff0: 55 08 30 32 rlwinm r8,r8,6,0,25 80343ff4: 7d 09 42 14 add r8,r9,r8 80343ff8: 7d 48 50 50 subf r10,r8,r10 80343ffc: 7c 0a 38 40 cmplw r10,r7 80344000: 41 82 00 a4 beq- 0x803440a4 goto fwd9 80344004: 39 4a c0 00 addi r10,r10,-16384 80344008: 48 00 00 38 b 0x80344040 goto abs4 fwd7 8034400c: 89 03 00 00 lbz r8,0(r3) 80344010: 39 27 ff ff addi r9,r7,-1 80344014: 54 84 f0 be rlwinm r4,r4,30,2,31 80344018: 38 63 00 01 addi r3,r3,1 8034401c: 7d 24 48 50 subf r9,r4,r9 80344020: 55 04 15 ba rlwinm r4,r8,2,22,29 80344024: 7d 24 48 50 subf r9,r4,r9 80344028: 88 89 00 00 lbz r4,0(r9) 8034402c: 98 87 00 00 stb r4,0(r7) 80344030: 88 89 00 01 lbz r4,1(r9) 80344034: 98 87 00 01 stb r4,1(r7) 80344038: 38 e7 00 02 addi r7,r7,2 8034403c: 48 00 00 34 b 0x80344070 goto abs3 abs4: 80344040: 89 0a 00 00 lbz r8,0(r10) 80344044: 99 07 00 00 stb r8,0(r7) 80344048: 89 0a 00 01 lbz r8,1(r10) 8034404c: 39 4a 00 02 addi r10,r10,2 80344050: 99 07 00 01 stb r8,1(r7) 80344054: 38 e7 00 02 addi r7,r7,2 back6: 80344058: 89 0a 00 00 lbz r8,0(r10) 8034405c: 34 84 ff ff addic. r4,r4,-1 80344060: 39 4a 00 01 addi r10,r10,1 80344064: 99 07 00 00 stb r8,0(r7) 80344068: 38 e7 00 01 addi r7,r7,1 8034406c: 40 82 ff ec bne+ 0x80344058 goto back6 abs3: 80344070: 88 83 ff fe lbz r4,-2(r3) 80344074: 54 84 07 bf clrlwi. r4,r4,30 80344078: 7c 88 23 78 mr r8,r4 8034407c: 41 82 fd e0 beq+ 0x80343e5c goto big_loop fwd2: 80344080: 88 83 00 00 lbz r4,0(r3) 80344084: 35 08 ff ff addic. r8,r8,-1 80344088: 38 63 00 01 addi r3,r3,1 8034408c: 98 87 00 00 stb r4,0(r7) 80344090: 38 e7 00 01 addi r7,r7,1 80344094: 40 82 ff ec bne+ 0x80344080 goto fwd2(back) 80344098: 88 83 00 00 lbz r4,0(r3) 8034409c: 38 63 00 01 addi r3,r3,1 803440a0: 4b ff fe 7c b 0x80343f1c goto inner_loop fwd9: 803440a4: 7c 85 38 50 subf r4,r5,r7 803440a8: 7c 03 00 40 cmplw r3,r0 803440ac: 90 86 00 00 stw r4,0(r6) 803440b0: 40 82 00 0c bne- 0x803440bc goto fwdA 803440b4: 38 60 00 00 li r3,0 803440b8: 4e 80 00 20 blr fwdA: 803440bc: 38 60 ff fc li r3,-4 803440c0: 4c 80 00 20 bgelr 803440c4: 38 60 ff f8 li r3,-8 803440c8: 4e 80 00 20 blr