.include "macros.inc" .section .rodata .global lbl_803D86E8 lbl_803D86E8: .incbin "baserom.dol", 0x3D56E8, 0x2C .global lbl_803D8714 lbl_803D8714: .incbin "baserom.dol", 0x3D5714, 0xC .section .text, "ax" .global atof atof: /* 803901DC 0038D13C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 803901E0 0038D140 7C 08 02 A6 */ mflr r0 /* 803901E4 0038D144 3C 80 80 39 */ lis r4, __StringRead@ha /* 803901E8 0038D148 90 01 00 24 */ stw r0, 0x24(r1) /* 803901EC 0038D14C 38 00 00 00 */ li r0, 0 /* 803901F0 0038D150 38 84 FE 9C */ addi r4, r4, __StringRead@l /* 803901F4 0038D154 38 A1 00 10 */ addi r5, r1, 0x10 /* 803901F8 0038D158 90 61 00 10 */ stw r3, 0x10(r1) /* 803901FC 0038D15C 3C 60 80 00 */ lis r3, 0x7FFFFFFF@ha /* 80390200 0038D160 38 63 FF FF */ addi r3, r3, 0x7FFFFFFF@l /* 80390204 0038D164 38 C1 00 08 */ addi r6, r1, 8 /* 80390208 0038D168 90 01 00 14 */ stw r0, 0x14(r1) /* 8039020C 0038D16C 38 E1 00 0C */ addi r7, r1, 0xc /* 80390210 0038D170 48 00 00 59 */ bl __strtold /* 80390214 0038D174 80 01 00 0C */ lwz r0, 0xc(r1) /* 80390218 0038D178 FC 40 0A 10 */ fabs f2, f1 /* 8039021C 0038D17C 2C 00 00 00 */ cmpwi r0, 0 /* 80390220 0038D180 40 82 00 30 */ bne lbl_80390250 /* 80390224 0038D184 C8 02 CF 88 */ lfd f0, lbl_805AECA8@sda21(r2) /* 80390228 0038D188 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 8039022C 0038D18C 41 82 00 2C */ beq lbl_80390258 /* 80390230 0038D190 3C 60 80 5B */ lis r3, lbl_805A8BA8@ha /* 80390234 0038D194 C8 03 8B A8 */ lfd f0, lbl_805A8BA8@l(r3) /* 80390238 0038D198 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8039023C 0038D19C 41 80 00 14 */ blt lbl_80390250 /* 80390240 0038D1A0 3C 60 80 5B */ lis r3, lbl_805A8BB0@ha /* 80390244 0038D1A4 C8 03 8B B0 */ lfd f0, lbl_805A8BB0@l(r3) /* 80390248 0038D1A8 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8039024C 0038D1AC 40 81 00 0C */ ble lbl_80390258 lbl_80390250: /* 80390250 0038D1B0 38 00 00 22 */ li r0, 0x22 /* 80390254 0038D1B4 90 0D AE 10 */ stw r0, lbl_805A99D0@sda21(r13) lbl_80390258: /* 80390258 0038D1B8 80 01 00 24 */ lwz r0, 0x24(r1) /* 8039025C 0038D1BC 7C 08 03 A6 */ mtlr r0 /* 80390260 0038D1C0 38 21 00 20 */ addi r1, r1, 0x20 /* 80390264 0038D1C4 4E 80 00 20 */ blr .global __strtold __strtold: /* 80390268 0038D1C8 94 21 FF 50 */ stwu r1, -0xb0(r1) /* 8039026C 0038D1CC 7C 08 02 A6 */ mflr r0 /* 80390270 0038D1D0 3D 00 80 3E */ lis r8, lbl_803D86E8@ha /* 80390274 0038D1D4 90 01 00 B4 */ stw r0, 0xb4(r1) /* 80390278 0038D1D8 38 00 00 00 */ li r0, 0 /* 8039027C 0038D1DC BD C1 00 68 */ stmw r14, 0x68(r1) /* 80390280 0038D1E0 3A E8 86 E8 */ addi r23, r8, lbl_803D86E8@l /* 80390284 0038D1E4 7C 90 23 78 */ mr r16, r4 /* 80390288 0038D1E8 3C 80 80 3F */ lis r4, lbl_803F2D20@ha /* 8039028C 0038D1EC 39 C4 2D 20 */ addi r14, r4, lbl_803F2D20@l /* 80390290 0038D1F0 7C B1 2B 78 */ mr r17, r5 /* 80390294 0038D1F4 7C F2 3B 78 */ mr r18, r7 /* 80390298 0038D1F8 90 C1 00 0C */ stw r6, 0xc(r1) /* 8039029C 0038D1FC 7E 0C 83 78 */ mr r12, r16 /* 803902A0 0038D200 3B 41 00 18 */ addi r26, r1, 0x18 /* 803902A4 0038D204 90 61 00 08 */ stw r3, 8(r1) /* 803902A8 0038D208 7E 23 8B 78 */ mr r3, r17 /* 803902AC 0038D20C 39 E0 00 01 */ li r15, 1 /* 803902B0 0038D210 3B E0 00 00 */ li r31, 0 /* 803902B4 0038D214 3B A0 00 00 */ li r29, 0 /* 803902B8 0038D218 3B 80 00 00 */ li r28, 0 /* 803902BC 0038D21C 3B 60 00 00 */ li r27, 0 /* 803902C0 0038D220 3B 00 00 00 */ li r24, 0 /* 803902C4 0038D224 82 D7 00 00 */ lwz r22, 0(r23) /* 803902C8 0038D228 82 97 00 04 */ lwz r20, 4(r23) /* 803902CC 0038D22C 82 B7 00 08 */ lwz r21, 8(r23) /* 803902D0 0038D230 80 97 00 0C */ lwz r4, 0xc(r23) /* 803902D4 0038D234 80 B7 00 10 */ lwz r5, 0x10(r23) /* 803902D8 0038D238 82 77 00 14 */ lwz r19, 0x14(r23) /* 803902DC 0038D23C 81 77 00 18 */ lwz r11, 0x18(r23) /* 803902E0 0038D240 81 57 00 1C */ lwz r10, 0x1c(r23) /* 803902E4 0038D244 81 37 00 20 */ lwz r9, 0x20(r23) /* 803902E8 0038D248 81 17 00 24 */ lwz r8, 0x24(r23) /* 803902EC 0038D24C A0 F7 00 28 */ lhz r7, 0x28(r23) /* 803902F0 0038D250 3A E0 00 00 */ li r23, 0 /* 803902F4 0038D254 92 C1 00 2C */ stw r22, 0x2c(r1) /* 803902F8 0038D258 3A C0 00 00 */ li r22, 0 /* 803902FC 0038D25C 80 CE 00 00 */ lwz r6, 0(r14) /* 80390300 0038D260 39 C0 00 00 */ li r14, 0 /* 80390304 0038D264 92 81 00 30 */ stw r20, 0x30(r1) /* 80390308 0038D268 3A 80 00 00 */ li r20, 0 /* 8039030C 0038D26C 90 81 00 38 */ stw r4, 0x38(r1) /* 80390310 0038D270 38 80 00 00 */ li r4, 0 /* 80390314 0038D274 90 A1 00 3C */ stw r5, 0x3c(r1) /* 80390318 0038D278 38 A0 00 00 */ li r5, 0 /* 8039031C 0038D27C 92 81 00 60 */ stw r20, 0x60(r1) /* 80390320 0038D280 3A 80 00 00 */ li r20, 0 /* 80390324 0038D284 92 81 00 5C */ stw r20, 0x5c(r1) /* 80390328 0038D288 3A 80 00 00 */ li r20, 0 /* 8039032C 0038D28C 92 A1 00 34 */ stw r21, 0x34(r1) /* 80390330 0038D290 92 61 00 40 */ stw r19, 0x40(r1) /* 80390334 0038D294 91 61 00 44 */ stw r11, 0x44(r1) /* 80390338 0038D298 91 41 00 48 */ stw r10, 0x48(r1) /* 8039033C 0038D29C 91 21 00 4C */ stw r9, 0x4c(r1) /* 80390340 0038D2A0 91 01 00 50 */ stw r8, 0x50(r1) /* 80390344 0038D2A4 B0 E1 00 54 */ sth r7, 0x54(r1) /* 80390348 0038D2A8 8A A6 00 00 */ lbz r21, 0(r6) /* 8039034C 0038D2AC 92 81 00 58 */ stw r20, 0x58(r1) /* 80390350 0038D2B0 90 12 00 00 */ stw r0, 0(r18) /* 80390354 0038D2B4 7D 89 03 A6 */ mtctr r12 /* 80390358 0038D2B8 3B C0 00 01 */ li r30, 1 /* 8039035C 0038D2BC 4E 80 04 21 */ bctrl /* 80390360 0038D2C0 7C 64 1B 78 */ mr r4, r3 /* 80390364 0038D2C4 48 00 0C 48 */ b lbl_80390FAC lbl_80390368: /* 80390368 0038D2C8 2C 0F 00 80 */ cmpwi r15, 0x80 /* 8039036C 0038D2CC 41 82 06 7C */ beq lbl_803909E8 /* 80390370 0038D2D0 40 80 00 5C */ bge lbl_803903CC /* 80390374 0038D2D4 2C 0F 00 08 */ cmpwi r15, 8 /* 80390378 0038D2D8 41 82 04 D8 */ beq lbl_80390850 /* 8039037C 0038D2DC 40 80 00 2C */ bge lbl_803903A8 /* 80390380 0038D2E0 2C 0F 00 03 */ cmpwi r15, 3 /* 80390384 0038D2E4 41 82 0C 28 */ beq lbl_80390FAC /* 80390388 0038D2E8 40 80 00 14 */ bge lbl_8039039C /* 8039038C 0038D2EC 2C 0F 00 01 */ cmpwi r15, 1 /* 80390390 0038D2F0 41 82 00 8C */ beq lbl_8039041C /* 80390394 0038D2F4 40 80 03 C8 */ bge lbl_8039075C /* 80390398 0038D2F8 48 00 0C 14 */ b lbl_80390FAC lbl_8039039C: /* 8039039C 0038D2FC 2C 0F 00 05 */ cmpwi r15, 5 /* 803903A0 0038D300 40 80 0C 0C */ bge lbl_80390FAC /* 803903A4 0038D304 48 00 04 78 */ b lbl_8039081C lbl_803903A8: /* 803903A8 0038D308 2C 0F 00 20 */ cmpwi r15, 0x20 /* 803903AC 0038D30C 41 82 05 68 */ beq lbl_80390914 /* 803903B0 0038D310 40 80 00 10 */ bge lbl_803903C0 /* 803903B4 0038D314 2C 0F 00 10 */ cmpwi r15, 0x10 /* 803903B8 0038D318 41 82 05 34 */ beq lbl_803908EC /* 803903BC 0038D31C 48 00 0B F0 */ b lbl_80390FAC lbl_803903C0: /* 803903C0 0038D320 2C 0F 00 40 */ cmpwi r15, 0x40 /* 803903C4 0038D324 41 82 05 CC */ beq lbl_80390990 /* 803903C8 0038D328 48 00 0B E4 */ b lbl_80390FAC lbl_803903CC: /* 803903CC 0038D32C 2C 0F 20 00 */ cmpwi r15, 0x2000 /* 803903D0 0038D330 41 82 02 48 */ beq lbl_80390618 /* 803903D4 0038D334 40 80 00 28 */ bge lbl_803903FC /* 803903D8 0038D338 2C 0F 02 00 */ cmpwi r15, 0x200 /* 803903DC 0038D33C 41 82 06 C8 */ beq lbl_80390AA4 /* 803903E0 0038D340 40 80 00 10 */ bge lbl_803903F0 /* 803903E4 0038D344 2C 0F 01 00 */ cmpwi r15, 0x100 /* 803903E8 0038D348 41 82 06 64 */ beq lbl_80390A4C /* 803903EC 0038D34C 48 00 0B C0 */ b lbl_80390FAC lbl_803903F0: /* 803903F0 0038D350 2C 0F 04 00 */ cmpwi r15, 0x400 /* 803903F4 0038D354 41 82 06 E4 */ beq lbl_80390AD8 /* 803903F8 0038D358 48 00 0B B4 */ b lbl_80390FAC lbl_803903FC: /* 803903FC 0038D35C 3C 60 00 01 */ lis r3, 0x00008000@ha /* 80390400 0038D360 38 03 80 00 */ addi r0, r3, 0x00008000@l /* 80390404 0038D364 7C 0F 00 00 */ cmpw r15, r0 /* 80390408 0038D368 41 82 07 30 */ beq lbl_80390B38 /* 8039040C 0038D36C 40 80 0B A0 */ bge lbl_80390FAC /* 80390410 0038D370 2C 0F 40 00 */ cmpwi r15, 0x4000 /* 80390414 0038D374 41 82 01 24 */ beq lbl_80390538 /* 80390418 0038D378 48 00 0B 94 */ b lbl_80390FAC lbl_8039041C: /* 8039041C 0038D37C 3C 60 80 3F */ lis r3, lbl_803F2A20@ha /* 80390420 0038D380 54 85 06 3E */ clrlwi r5, r4, 0x18 /* 80390424 0038D384 38 63 2A 20 */ addi r3, r3, lbl_803F2A20@l /* 80390428 0038D388 7C 03 28 AE */ lbzx r0, r3, r5 /* 8039042C 0038D38C 54 00 07 7D */ rlwinm. r0, r0, 0, 0x1d, 0x1e /* 80390430 0038D390 41 82 00 28 */ beq lbl_80390458 /* 80390434 0038D394 7E 0C 83 78 */ mr r12, r16 /* 80390438 0038D398 7E 23 8B 78 */ mr r3, r17 /* 8039043C 0038D39C 38 80 00 00 */ li r4, 0 /* 80390440 0038D3A0 38 A0 00 00 */ li r5, 0 /* 80390444 0038D3A4 7D 89 03 A6 */ mtctr r12 /* 80390448 0038D3A8 4E 80 04 21 */ bctrl /* 8039044C 0038D3AC 7C 64 1B 78 */ mr r4, r3 /* 80390450 0038D3B0 3B BD 00 01 */ addi r29, r29, 1 /* 80390454 0038D3B4 48 00 0B 58 */ b lbl_80390FAC lbl_80390458: /* 80390458 0038D3B8 2C 04 FF FF */ cmpwi r4, -1 /* 8039045C 0038D3BC 40 82 00 0C */ bne lbl_80390468 /* 80390460 0038D3C0 38 00 FF FF */ li r0, -1 /* 80390464 0038D3C4 48 00 00 10 */ b lbl_80390474 lbl_80390468: /* 80390468 0038D3C8 3C 60 80 3F */ lis r3, lbl_803F2C20@ha /* 8039046C 0038D3CC 38 63 2C 20 */ addi r3, r3, lbl_803F2C20@l /* 80390470 0038D3D0 7C 03 28 AE */ lbzx r0, r3, r5 lbl_80390474: /* 80390474 0038D3D4 2C 00 00 49 */ cmpwi r0, 0x49 /* 80390478 0038D3D8 41 82 00 68 */ beq lbl_803904E0 /* 8039047C 0038D3DC 40 80 00 28 */ bge lbl_803904A4 /* 80390480 0038D3E0 2C 00 00 2C */ cmpwi r0, 0x2c /* 80390484 0038D3E4 41 82 00 AC */ beq lbl_80390530 /* 80390488 0038D3E8 40 80 00 10 */ bge lbl_80390498 /* 8039048C 0038D3EC 2C 00 00 2B */ cmpwi r0, 0x2b /* 80390490 0038D3F0 40 80 00 24 */ bge lbl_803904B4 /* 80390494 0038D3F4 48 00 00 9C */ b lbl_80390530 lbl_80390498: /* 80390498 0038D3F8 2C 00 00 2E */ cmpwi r0, 0x2e /* 8039049C 0038D3FC 40 80 00 94 */ bge lbl_80390530 /* 803904A0 0038D400 48 00 00 10 */ b lbl_803904B0 lbl_803904A4: /* 803904A4 0038D404 2C 00 00 4E */ cmpwi r0, 0x4e /* 803904A8 0038D408 41 82 00 60 */ beq lbl_80390508 /* 803904AC 0038D40C 48 00 00 84 */ b lbl_80390530 lbl_803904B0: /* 803904B0 0038D410 39 C0 00 01 */ li r14, 1 lbl_803904B4: /* 803904B4 0038D414 7E 0C 83 78 */ mr r12, r16 /* 803904B8 0038D418 7E 23 8B 78 */ mr r3, r17 /* 803904BC 0038D41C 38 80 00 00 */ li r4, 0 /* 803904C0 0038D420 38 A0 00 00 */ li r5, 0 /* 803904C4 0038D424 7D 89 03 A6 */ mtctr r12 /* 803904C8 0038D428 3B DE 00 01 */ addi r30, r30, 1 /* 803904CC 0038D42C 4E 80 04 21 */ bctrl /* 803904D0 0038D430 38 00 00 01 */ li r0, 1 /* 803904D4 0038D434 7C 64 1B 78 */ mr r4, r3 /* 803904D8 0038D438 90 01 00 5C */ stw r0, 0x5c(r1) /* 803904DC 0038D43C 48 00 0A D0 */ b lbl_80390FAC lbl_803904E0: /* 803904E0 0038D440 7E 0C 83 78 */ mr r12, r16 /* 803904E4 0038D444 7E 23 8B 78 */ mr r3, r17 /* 803904E8 0038D448 38 80 00 00 */ li r4, 0 /* 803904EC 0038D44C 38 A0 00 00 */ li r5, 0 /* 803904F0 0038D450 7D 89 03 A6 */ mtctr r12 /* 803904F4 0038D454 3B DE 00 01 */ addi r30, r30, 1 /* 803904F8 0038D458 4E 80 04 21 */ bctrl /* 803904FC 0038D45C 39 E0 40 00 */ li r15, 0x4000 /* 80390500 0038D460 7C 64 1B 78 */ mr r4, r3 /* 80390504 0038D464 48 00 0A A8 */ b lbl_80390FAC lbl_80390508: /* 80390508 0038D468 7E 0C 83 78 */ mr r12, r16 /* 8039050C 0038D46C 7E 23 8B 78 */ mr r3, r17 /* 80390510 0038D470 38 80 00 00 */ li r4, 0 /* 80390514 0038D474 38 A0 00 00 */ li r5, 0 /* 80390518 0038D478 7D 89 03 A6 */ mtctr r12 /* 8039051C 0038D47C 3B DE 00 01 */ addi r30, r30, 1 /* 80390520 0038D480 4E 80 04 21 */ bctrl /* 80390524 0038D484 39 E0 20 00 */ li r15, 0x2000 /* 80390528 0038D488 7C 64 1B 78 */ mr r4, r3 /* 8039052C 0038D48C 48 00 0A 80 */ b lbl_80390FAC lbl_80390530: /* 80390530 0038D490 39 E0 00 02 */ li r15, 2 /* 80390534 0038D494 48 00 0A 78 */ b lbl_80390FAC lbl_80390538: /* 80390538 0038D498 3C 60 80 3E */ lis r3, lbl_803D8714@ha /* 8039053C 0038D49C 39 E1 00 21 */ addi r15, r1, 0x21 /* 80390540 0038D4A0 38 C3 87 14 */ addi r6, r3, lbl_803D8714@l /* 80390544 0038D4A4 3A 60 00 01 */ li r19, 1 /* 80390548 0038D4A8 80 A6 00 00 */ lwz r5, 0(r6) /* 8039054C 0038D4AC 80 66 00 04 */ lwz r3, 4(r6) /* 80390550 0038D4B0 88 06 00 08 */ lbz r0, 8(r6) /* 80390554 0038D4B4 90 A1 00 20 */ stw r5, 0x20(r1) /* 80390558 0038D4B8 90 61 00 24 */ stw r3, 0x24(r1) /* 8039055C 0038D4BC 98 01 00 28 */ stb r0, 0x28(r1) /* 80390560 0038D4C0 48 00 00 2C */ b lbl_8039058C lbl_80390564: /* 80390564 0038D4C4 7E 0C 83 78 */ mr r12, r16 /* 80390568 0038D4C8 7E 23 8B 78 */ mr r3, r17 /* 8039056C 0038D4CC 38 80 00 00 */ li r4, 0 /* 80390570 0038D4D0 38 A0 00 00 */ li r5, 0 /* 80390574 0038D4D4 7D 89 03 A6 */ mtctr r12 /* 80390578 0038D4D8 39 EF 00 01 */ addi r15, r15, 1 /* 8039057C 0038D4DC 3A 73 00 01 */ addi r19, r19, 1 /* 80390580 0038D4E0 3B DE 00 01 */ addi r30, r30, 1 /* 80390584 0038D4E4 4E 80 04 21 */ bctrl /* 80390588 0038D4E8 7C 64 1B 78 */ mr r4, r3 lbl_8039058C: /* 8039058C 0038D4EC 2C 13 00 08 */ cmpwi r19, 8 /* 80390590 0038D4F0 40 80 00 34 */ bge lbl_803905C4 /* 80390594 0038D4F4 88 0F 00 00 */ lbz r0, 0(r15) /* 80390598 0038D4F8 2C 04 FF FF */ cmpwi r4, -1 /* 8039059C 0038D4FC 7C 05 07 74 */ extsb r5, r0 /* 803905A0 0038D500 40 82 00 0C */ bne lbl_803905AC /* 803905A4 0038D504 38 00 FF FF */ li r0, -1 /* 803905A8 0038D508 48 00 00 14 */ b lbl_803905BC lbl_803905AC: /* 803905AC 0038D50C 3C 60 80 3F */ lis r3, lbl_803F2C20@ha /* 803905B0 0038D510 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 803905B4 0038D514 38 63 2C 20 */ addi r3, r3, lbl_803F2C20@l /* 803905B8 0038D518 7C 03 00 AE */ lbzx r0, r3, r0 lbl_803905BC: /* 803905BC 0038D51C 7C 05 00 00 */ cmpw r5, r0 /* 803905C0 0038D520 41 82 FF A4 */ beq lbl_80390564 lbl_803905C4: /* 803905C4 0038D524 2C 13 00 03 */ cmpwi r19, 3 /* 803905C8 0038D528 41 82 00 0C */ beq lbl_803905D4 /* 803905CC 0038D52C 2C 13 00 08 */ cmpwi r19, 8 /* 803905D0 0038D530 40 82 00 40 */ bne lbl_80390610 lbl_803905D4: /* 803905D4 0038D534 2C 0E 00 00 */ cmpwi r14, 0 /* 803905D8 0038D538 41 82 00 14 */ beq lbl_803905EC /* 803905DC 0038D53C 3C 60 80 5B */ lis r3, lbl_805A8BA4@ha /* 803905E0 0038D540 C0 03 8B A4 */ lfs f0, lbl_805A8BA4@l(r3) /* 803905E4 0038D544 FC 20 00 50 */ fneg f1, f0 /* 803905E8 0038D548 48 00 00 0C */ b lbl_803905F4 lbl_803905EC: /* 803905EC 0038D54C 3C 60 80 5B */ lis r3, lbl_805A8BA4@ha /* 803905F0 0038D550 C0 23 8B A4 */ lfs f1, lbl_805A8BA4@l(r3) lbl_803905F4: /* 803905F4 0038D554 80 01 00 5C */ lwz r0, 0x5c(r1) /* 803905F8 0038D558 80 61 00 0C */ lwz r3, 0xc(r1) /* 803905FC 0038D55C 7C 13 02 14 */ add r0, r19, r0 /* 80390600 0038D560 D8 21 00 18 */ stfd f1, 0x18(r1) /* 80390604 0038D564 7C 1D 02 14 */ add r0, r29, r0 /* 80390608 0038D568 90 03 00 00 */ stw r0, 0(r3) /* 8039060C 0038D56C 48 00 0C 54 */ b lbl_80391260 lbl_80390610: /* 80390610 0038D570 39 E0 10 00 */ li r15, 0x1000 /* 80390614 0038D574 48 00 09 98 */ b lbl_80390FAC lbl_80390618: /* 80390618 0038D578 80 62 CF 80 */ lwz r3, lbl_805AECA0@sda21(r2) /* 8039061C 0038D57C 39 E1 00 11 */ addi r15, r1, 0x11 /* 80390620 0038D580 88 02 CF 84 */ lbz r0, lbl_805AECA4@sda21(r2) /* 80390624 0038D584 3A 80 00 01 */ li r20, 1 /* 80390628 0038D588 90 61 00 10 */ stw r3, 0x10(r1) /* 8039062C 0038D58C 3A 60 00 00 */ li r19, 0 /* 80390630 0038D590 98 01 00 14 */ stb r0, 0x14(r1) /* 80390634 0038D594 48 00 00 2C */ b lbl_80390660 lbl_80390638: /* 80390638 0038D598 7E 0C 83 78 */ mr r12, r16 /* 8039063C 0038D59C 7E 23 8B 78 */ mr r3, r17 /* 80390640 0038D5A0 38 80 00 00 */ li r4, 0 /* 80390644 0038D5A4 38 A0 00 00 */ li r5, 0 /* 80390648 0038D5A8 7D 89 03 A6 */ mtctr r12 /* 8039064C 0038D5AC 39 EF 00 01 */ addi r15, r15, 1 /* 80390650 0038D5B0 3A 94 00 01 */ addi r20, r20, 1 /* 80390654 0038D5B4 3B DE 00 01 */ addi r30, r30, 1 /* 80390658 0038D5B8 4E 80 04 21 */ bctrl /* 8039065C 0038D5BC 7C 64 1B 78 */ mr r4, r3 lbl_80390660: /* 80390660 0038D5C0 2C 14 00 04 */ cmpwi r20, 4 /* 80390664 0038D5C4 40 80 00 34 */ bge lbl_80390698 /* 80390668 0038D5C8 88 0F 00 00 */ lbz r0, 0(r15) /* 8039066C 0038D5CC 2C 04 FF FF */ cmpwi r4, -1 /* 80390670 0038D5D0 7C 05 07 74 */ extsb r5, r0 /* 80390674 0038D5D4 40 82 00 0C */ bne lbl_80390680 /* 80390678 0038D5D8 38 00 FF FF */ li r0, -1 /* 8039067C 0038D5DC 48 00 00 14 */ b lbl_80390690 lbl_80390680: /* 80390680 0038D5E0 3C 60 80 3F */ lis r3, lbl_803F2C20@ha /* 80390684 0038D5E4 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 80390688 0038D5E8 38 63 2C 20 */ addi r3, r3, lbl_803F2C20@l /* 8039068C 0038D5EC 7C 03 00 AE */ lbzx r0, r3, r0 lbl_80390690: /* 80390690 0038D5F0 7C 05 00 00 */ cmpw r5, r0 /* 80390694 0038D5F4 41 82 FF A4 */ beq lbl_80390638 lbl_80390698: /* 80390698 0038D5F8 2C 14 00 03 */ cmpwi r20, 3 /* 8039069C 0038D5FC 41 82 00 0C */ beq lbl_803906A8 /* 803906A0 0038D600 2C 14 00 04 */ cmpwi r20, 4 /* 803906A4 0038D604 40 82 00 B0 */ bne lbl_80390754 lbl_803906A8: /* 803906A8 0038D608 2C 14 00 04 */ cmpwi r20, 4 /* 803906AC 0038D60C 40 82 00 68 */ bne lbl_80390714 /* 803906B0 0038D610 3C 60 80 3F */ lis r3, lbl_803F2A20@ha /* 803906B4 0038D614 39 E3 2A 20 */ addi r15, r3, lbl_803F2A20@l /* 803906B8 0038D618 48 00 00 28 */ b lbl_803906E0 lbl_803906BC: /* 803906BC 0038D61C 7E 0C 83 78 */ mr r12, r16 /* 803906C0 0038D620 7E 23 8B 78 */ mr r3, r17 /* 803906C4 0038D624 38 80 00 00 */ li r4, 0 /* 803906C8 0038D628 38 A0 00 00 */ li r5, 0 /* 803906CC 0038D62C 7D 89 03 A6 */ mtctr r12 /* 803906D0 0038D630 3A 73 00 01 */ addi r19, r19, 1 /* 803906D4 0038D634 3B DE 00 01 */ addi r30, r30, 1 /* 803906D8 0038D638 4E 80 04 21 */ bctrl /* 803906DC 0038D63C 7C 64 1B 78 */ mr r4, r3 lbl_803906E0: /* 803906E0 0038D640 2C 13 00 20 */ cmpwi r19, 0x20 /* 803906E4 0038D644 40 80 00 1C */ bge lbl_80390700 /* 803906E8 0038D648 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 803906EC 0038D64C 7C 6F 00 AE */ lbzx r3, r15, r0 /* 803906F0 0038D650 54 60 06 F7 */ rlwinm. r0, r3, 0, 0x1b, 0x1b /* 803906F4 0038D654 40 82 FF C8 */ bne lbl_803906BC /* 803906F8 0038D658 54 60 06 33 */ rlwinm. r0, r3, 0, 0x18, 0x19 /* 803906FC 0038D65C 40 82 FF C0 */ bne lbl_803906BC lbl_80390700: /* 80390700 0038D660 2C 04 00 29 */ cmpwi r4, 0x29 /* 80390704 0038D664 41 82 00 0C */ beq lbl_80390710 /* 80390708 0038D668 39 E0 10 00 */ li r15, 0x1000 /* 8039070C 0038D66C 48 00 08 A0 */ b lbl_80390FAC lbl_80390710: /* 80390710 0038D670 3A 73 00 01 */ addi r19, r19, 1 lbl_80390714: /* 80390714 0038D674 2C 0E 00 00 */ cmpwi r14, 0 /* 80390718 0038D678 41 82 00 14 */ beq lbl_8039072C /* 8039071C 0038D67C 3C 60 80 5B */ lis r3, lbl_805A8BA0@ha /* 80390720 0038D680 C0 03 8B A0 */ lfs f0, lbl_805A8BA0@l(r3) /* 80390724 0038D684 FC 20 00 50 */ fneg f1, f0 /* 80390728 0038D688 48 00 00 0C */ b lbl_80390734 lbl_8039072C: /* 8039072C 0038D68C 3C 60 80 5B */ lis r3, lbl_805A8BA0@ha /* 80390730 0038D690 C0 23 8B A0 */ lfs f1, lbl_805A8BA0@l(r3) lbl_80390734: /* 80390734 0038D694 80 01 00 5C */ lwz r0, 0x5c(r1) /* 80390738 0038D698 7C 74 9A 14 */ add r3, r20, r19 /* 8039073C 0038D69C D8 21 00 18 */ stfd f1, 0x18(r1) /* 80390740 0038D6A0 7C 03 02 14 */ add r0, r3, r0 /* 80390744 0038D6A4 80 61 00 0C */ lwz r3, 0xc(r1) /* 80390748 0038D6A8 7C 1D 02 14 */ add r0, r29, r0 /* 8039074C 0038D6AC 90 03 00 00 */ stw r0, 0(r3) /* 80390750 0038D6B0 48 00 0B 10 */ b lbl_80391260 lbl_80390754: /* 80390754 0038D6B4 39 E0 10 00 */ li r15, 0x1000 /* 80390758 0038D6B8 48 00 08 54 */ b lbl_80390FAC lbl_8039075C: /* 8039075C 0038D6BC 7C 04 A8 00 */ cmpw r4, r21 /* 80390760 0038D6C0 40 82 00 2C */ bne lbl_8039078C /* 80390764 0038D6C4 7E 0C 83 78 */ mr r12, r16 /* 80390768 0038D6C8 7E 23 8B 78 */ mr r3, r17 /* 8039076C 0038D6CC 39 E0 00 10 */ li r15, 0x10 /* 80390770 0038D6D0 38 80 00 00 */ li r4, 0 /* 80390774 0038D6D4 38 A0 00 00 */ li r5, 0 /* 80390778 0038D6D8 7D 89 03 A6 */ mtctr r12 /* 8039077C 0038D6DC 3B DE 00 01 */ addi r30, r30, 1 /* 80390780 0038D6E0 4E 80 04 21 */ bctrl /* 80390784 0038D6E4 7C 64 1B 78 */ mr r4, r3 /* 80390788 0038D6E8 48 00 08 24 */ b lbl_80390FAC lbl_8039078C: /* 8039078C 0038D6EC 3C 60 80 3F */ lis r3, lbl_803F2A20@ha /* 80390790 0038D6F0 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 80390794 0038D6F4 38 63 2A 20 */ addi r3, r3, lbl_803F2A20@l /* 80390798 0038D6F8 7C 03 00 AE */ lbzx r0, r3, r0 /* 8039079C 0038D6FC 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 803907A0 0038D700 40 82 00 0C */ bne lbl_803907AC /* 803907A4 0038D704 39 E0 10 00 */ li r15, 0x1000 /* 803907A8 0038D708 48 00 08 04 */ b lbl_80390FAC lbl_803907AC: /* 803907AC 0038D70C 2C 04 00 30 */ cmpwi r4, 0x30 /* 803907B0 0038D710 40 82 00 64 */ bne lbl_80390814 /* 803907B4 0038D714 7E 0C 83 78 */ mr r12, r16 /* 803907B8 0038D718 7E 23 8B 78 */ mr r3, r17 /* 803907BC 0038D71C 38 80 00 00 */ li r4, 0 /* 803907C0 0038D720 38 A0 00 00 */ li r5, 0 /* 803907C4 0038D724 7D 89 03 A6 */ mtctr r12 /* 803907C8 0038D728 3B DE 00 01 */ addi r30, r30, 1 /* 803907CC 0038D72C 4E 80 04 21 */ bctrl /* 803907D0 0038D730 2C 03 FF FF */ cmpwi r3, -1 /* 803907D4 0038D734 7C 64 1B 78 */ mr r4, r3 /* 803907D8 0038D738 40 82 00 0C */ bne lbl_803907E4 /* 803907DC 0038D73C 38 00 FF FF */ li r0, -1 /* 803907E0 0038D740 48 00 00 14 */ b lbl_803907F4 lbl_803907E4: /* 803907E4 0038D744 3C A0 80 3F */ lis r5, lbl_803F2C20@ha /* 803907E8 0038D748 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 803907EC 0038D74C 38 65 2C 20 */ addi r3, r5, lbl_803F2C20@l /* 803907F0 0038D750 7C 03 00 AE */ lbzx r0, r3, r0 lbl_803907F4: /* 803907F4 0038D754 2C 00 00 58 */ cmpwi r0, 0x58 /* 803907F8 0038D758 40 82 00 14 */ bne lbl_8039080C /* 803907FC 0038D75C 3C 60 00 01 */ lis r3, 0x00008000@ha /* 80390800 0038D760 3B E0 00 01 */ li r31, 1 /* 80390804 0038D764 39 E3 80 00 */ addi r15, r3, 0x00008000@l /* 80390808 0038D768 48 00 07 A4 */ b lbl_80390FAC lbl_8039080C: /* 8039080C 0038D76C 39 E0 00 04 */ li r15, 4 /* 80390810 0038D770 48 00 07 9C */ b lbl_80390FAC lbl_80390814: /* 80390814 0038D774 39 E0 00 08 */ li r15, 8 /* 80390818 0038D778 48 00 07 94 */ b lbl_80390FAC lbl_8039081C: /* 8039081C 0038D77C 2C 04 00 30 */ cmpwi r4, 0x30 /* 80390820 0038D780 40 82 00 28 */ bne lbl_80390848 /* 80390824 0038D784 7E 0C 83 78 */ mr r12, r16 /* 80390828 0038D788 7E 23 8B 78 */ mr r3, r17 /* 8039082C 0038D78C 38 80 00 00 */ li r4, 0 /* 80390830 0038D790 38 A0 00 00 */ li r5, 0 /* 80390834 0038D794 7D 89 03 A6 */ mtctr r12 /* 80390838 0038D798 3B DE 00 01 */ addi r30, r30, 1 /* 8039083C 0038D79C 4E 80 04 21 */ bctrl /* 80390840 0038D7A0 7C 64 1B 78 */ mr r4, r3 /* 80390844 0038D7A4 48 00 07 68 */ b lbl_80390FAC lbl_80390848: /* 80390848 0038D7A8 39 E0 00 08 */ li r15, 8 /* 8039084C 0038D7AC 48 00 07 60 */ b lbl_80390FAC lbl_80390850: /* 80390850 0038D7B0 3C 60 80 3F */ lis r3, lbl_803F2A20@ha /* 80390854 0038D7B4 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 80390858 0038D7B8 38 63 2A 20 */ addi r3, r3, lbl_803F2A20@l /* 8039085C 0038D7BC 7C 03 00 AE */ lbzx r0, r3, r0 /* 80390860 0038D7C0 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 80390864 0038D7C4 40 82 00 3C */ bne lbl_803908A0 /* 80390868 0038D7C8 7C 04 A8 00 */ cmpw r4, r21 /* 8039086C 0038D7CC 40 82 00 2C */ bne lbl_80390898 /* 80390870 0038D7D0 7E 0C 83 78 */ mr r12, r16 /* 80390874 0038D7D4 7E 23 8B 78 */ mr r3, r17 /* 80390878 0038D7D8 39 E0 00 20 */ li r15, 0x20 /* 8039087C 0038D7DC 38 80 00 00 */ li r4, 0 /* 80390880 0038D7E0 38 A0 00 00 */ li r5, 0 /* 80390884 0038D7E4 7D 89 03 A6 */ mtctr r12 /* 80390888 0038D7E8 3B DE 00 01 */ addi r30, r30, 1 /* 8039088C 0038D7EC 4E 80 04 21 */ bctrl /* 80390890 0038D7F0 7C 64 1B 78 */ mr r4, r3 /* 80390894 0038D7F4 48 00 07 18 */ b lbl_80390FAC lbl_80390898: /* 80390898 0038D7F8 39 E0 00 40 */ li r15, 0x40 /* 8039089C 0038D7FC 48 00 07 10 */ b lbl_80390FAC lbl_803908A0: /* 803908A0 0038D800 88 A1 00 30 */ lbz r5, 0x30(r1) /* 803908A4 0038D804 28 05 00 14 */ cmplwi r5, 0x14 /* 803908A8 0038D808 40 80 00 1C */ bge lbl_803908C4 /* 803908AC 0038D80C 38 05 00 01 */ addi r0, r5, 1 /* 803908B0 0038D810 38 61 00 2C */ addi r3, r1, 0x2c /* 803908B4 0038D814 98 01 00 30 */ stb r0, 0x30(r1) /* 803908B8 0038D818 38 05 00 05 */ addi r0, r5, 5 /* 803908BC 0038D81C 7C 83 01 AE */ stbx r4, r3, r0 /* 803908C0 0038D820 48 00 00 08 */ b lbl_803908C8 lbl_803908C4: /* 803908C4 0038D824 3B 7B 00 01 */ addi r27, r27, 1 lbl_803908C8: /* 803908C8 0038D828 7E 0C 83 78 */ mr r12, r16 /* 803908CC 0038D82C 7E 23 8B 78 */ mr r3, r17 /* 803908D0 0038D830 38 80 00 00 */ li r4, 0 /* 803908D4 0038D834 38 A0 00 00 */ li r5, 0 /* 803908D8 0038D838 7D 89 03 A6 */ mtctr r12 /* 803908DC 0038D83C 3B DE 00 01 */ addi r30, r30, 1 /* 803908E0 0038D840 4E 80 04 21 */ bctrl /* 803908E4 0038D844 7C 64 1B 78 */ mr r4, r3 /* 803908E8 0038D848 48 00 06 C4 */ b lbl_80390FAC lbl_803908EC: /* 803908EC 0038D84C 3C 60 80 3F */ lis r3, lbl_803F2A20@ha /* 803908F0 0038D850 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 803908F4 0038D854 38 63 2A 20 */ addi r3, r3, lbl_803F2A20@l /* 803908F8 0038D858 7C 03 00 AE */ lbzx r0, r3, r0 /* 803908FC 0038D85C 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 80390900 0038D860 40 82 00 0C */ bne lbl_8039090C /* 80390904 0038D864 39 E0 10 00 */ li r15, 0x1000 /* 80390908 0038D868 48 00 06 A4 */ b lbl_80390FAC lbl_8039090C: /* 8039090C 0038D86C 39 E0 00 20 */ li r15, 0x20 /* 80390910 0038D870 48 00 06 9C */ b lbl_80390FAC lbl_80390914: /* 80390914 0038D874 3C 60 80 3F */ lis r3, lbl_803F2A20@ha /* 80390918 0038D878 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 8039091C 0038D87C 38 63 2A 20 */ addi r3, r3, lbl_803F2A20@l /* 80390920 0038D880 7C 03 00 AE */ lbzx r0, r3, r0 /* 80390924 0038D884 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 80390928 0038D888 40 82 00 0C */ bne lbl_80390934 /* 8039092C 0038D88C 39 E0 00 40 */ li r15, 0x40 /* 80390930 0038D890 48 00 06 7C */ b lbl_80390FAC lbl_80390934: /* 80390934 0038D894 88 01 00 30 */ lbz r0, 0x30(r1) /* 80390938 0038D898 28 00 00 14 */ cmplwi r0, 0x14 /* 8039093C 0038D89C 40 80 00 30 */ bge lbl_8039096C /* 80390940 0038D8A0 2C 04 00 30 */ cmpwi r4, 0x30 /* 80390944 0038D8A4 40 82 00 0C */ bne lbl_80390950 /* 80390948 0038D8A8 28 00 00 00 */ cmplwi r0, 0 /* 8039094C 0038D8AC 41 82 00 1C */ beq lbl_80390968 lbl_80390950: /* 80390950 0038D8B0 88 C1 00 30 */ lbz r6, 0x30(r1) /* 80390954 0038D8B4 38 61 00 2C */ addi r3, r1, 0x2c /* 80390958 0038D8B8 38 A6 00 01 */ addi r5, r6, 1 /* 8039095C 0038D8BC 38 06 00 05 */ addi r0, r6, 5 /* 80390960 0038D8C0 98 A1 00 30 */ stb r5, 0x30(r1) /* 80390964 0038D8C4 7C 83 01 AE */ stbx r4, r3, r0 lbl_80390968: /* 80390968 0038D8C8 3B 7B FF FF */ addi r27, r27, -1 lbl_8039096C: /* 8039096C 0038D8CC 7E 0C 83 78 */ mr r12, r16 /* 80390970 0038D8D0 7E 23 8B 78 */ mr r3, r17 /* 80390974 0038D8D4 38 80 00 00 */ li r4, 0 /* 80390978 0038D8D8 38 A0 00 00 */ li r5, 0 /* 8039097C 0038D8DC 7D 89 03 A6 */ mtctr r12 /* 80390980 0038D8E0 3B DE 00 01 */ addi r30, r30, 1 /* 80390984 0038D8E4 4E 80 04 21 */ bctrl /* 80390988 0038D8E8 7C 64 1B 78 */ mr r4, r3 /* 8039098C 0038D8EC 48 00 06 20 */ b lbl_80390FAC lbl_80390990: /* 80390990 0038D8F0 2C 04 FF FF */ cmpwi r4, -1 /* 80390994 0038D8F4 40 82 00 0C */ bne lbl_803909A0 /* 80390998 0038D8F8 38 00 FF FF */ li r0, -1 /* 8039099C 0038D8FC 48 00 00 14 */ b lbl_803909B0 lbl_803909A0: /* 803909A0 0038D900 3C 60 80 3F */ lis r3, lbl_803F2C20@ha /* 803909A4 0038D904 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 803909A8 0038D908 38 63 2C 20 */ addi r3, r3, lbl_803F2C20@l /* 803909AC 0038D90C 7C 03 00 AE */ lbzx r0, r3, r0 lbl_803909B0: /* 803909B0 0038D910 2C 00 00 45 */ cmpwi r0, 0x45 /* 803909B4 0038D914 40 82 00 2C */ bne lbl_803909E0 /* 803909B8 0038D918 7E 0C 83 78 */ mr r12, r16 /* 803909BC 0038D91C 7E 23 8B 78 */ mr r3, r17 /* 803909C0 0038D920 39 E0 00 80 */ li r15, 0x80 /* 803909C4 0038D924 38 80 00 00 */ li r4, 0 /* 803909C8 0038D928 38 A0 00 00 */ li r5, 0 /* 803909CC 0038D92C 7D 89 03 A6 */ mtctr r12 /* 803909D0 0038D930 3B DE 00 01 */ addi r30, r30, 1 /* 803909D4 0038D934 4E 80 04 21 */ bctrl /* 803909D8 0038D938 7C 64 1B 78 */ mr r4, r3 /* 803909DC 0038D93C 48 00 05 D0 */ b lbl_80390FAC lbl_803909E0: /* 803909E0 0038D940 39 E0 08 00 */ li r15, 0x800 /* 803909E4 0038D944 48 00 05 C8 */ b lbl_80390FAC lbl_803909E8: /* 803909E8 0038D948 2C 04 00 2B */ cmpwi r4, 0x2b /* 803909EC 0038D94C 40 82 00 28 */ bne lbl_80390A14 /* 803909F0 0038D950 7E 0C 83 78 */ mr r12, r16 /* 803909F4 0038D954 7E 23 8B 78 */ mr r3, r17 /* 803909F8 0038D958 38 80 00 00 */ li r4, 0 /* 803909FC 0038D95C 38 A0 00 00 */ li r5, 0 /* 80390A00 0038D960 7D 89 03 A6 */ mtctr r12 /* 80390A04 0038D964 3B DE 00 01 */ addi r30, r30, 1 /* 80390A08 0038D968 4E 80 04 21 */ bctrl /* 80390A0C 0038D96C 7C 64 1B 78 */ mr r4, r3 /* 80390A10 0038D970 48 00 00 34 */ b lbl_80390A44 lbl_80390A14: /* 80390A14 0038D974 2C 04 00 2D */ cmpwi r4, 0x2d /* 80390A18 0038D978 40 82 00 2C */ bne lbl_80390A44 /* 80390A1C 0038D97C 7E 0C 83 78 */ mr r12, r16 /* 80390A20 0038D980 7E 23 8B 78 */ mr r3, r17 /* 80390A24 0038D984 38 80 00 00 */ li r4, 0 /* 80390A28 0038D988 38 A0 00 00 */ li r5, 0 /* 80390A2C 0038D98C 7D 89 03 A6 */ mtctr r12 /* 80390A30 0038D990 3B DE 00 01 */ addi r30, r30, 1 /* 80390A34 0038D994 4E 80 04 21 */ bctrl /* 80390A38 0038D998 38 00 00 01 */ li r0, 1 /* 80390A3C 0038D99C 7C 64 1B 78 */ mr r4, r3 /* 80390A40 0038D9A0 90 01 00 60 */ stw r0, 0x60(r1) lbl_80390A44: /* 80390A44 0038D9A4 39 E0 01 00 */ li r15, 0x100 /* 80390A48 0038D9A8 48 00 05 64 */ b lbl_80390FAC lbl_80390A4C: /* 80390A4C 0038D9AC 3C 60 80 3F */ lis r3, lbl_803F2A20@ha /* 80390A50 0038D9B0 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 80390A54 0038D9B4 38 63 2A 20 */ addi r3, r3, lbl_803F2A20@l /* 80390A58 0038D9B8 7C 03 00 AE */ lbzx r0, r3, r0 /* 80390A5C 0038D9BC 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 80390A60 0038D9C0 40 82 00 0C */ bne lbl_80390A6C /* 80390A64 0038D9C4 39 E0 10 00 */ li r15, 0x1000 /* 80390A68 0038D9C8 48 00 05 44 */ b lbl_80390FAC lbl_80390A6C: /* 80390A6C 0038D9CC 2C 04 00 30 */ cmpwi r4, 0x30 /* 80390A70 0038D9D0 40 82 00 2C */ bne lbl_80390A9C /* 80390A74 0038D9D4 7E 0C 83 78 */ mr r12, r16 /* 80390A78 0038D9D8 7E 23 8B 78 */ mr r3, r17 /* 80390A7C 0038D9DC 39 E0 02 00 */ li r15, 0x200 /* 80390A80 0038D9E0 38 80 00 00 */ li r4, 0 /* 80390A84 0038D9E4 38 A0 00 00 */ li r5, 0 /* 80390A88 0038D9E8 7D 89 03 A6 */ mtctr r12 /* 80390A8C 0038D9EC 3B DE 00 01 */ addi r30, r30, 1 /* 80390A90 0038D9F0 4E 80 04 21 */ bctrl /* 80390A94 0038D9F4 7C 64 1B 78 */ mr r4, r3 /* 80390A98 0038D9F8 48 00 05 14 */ b lbl_80390FAC lbl_80390A9C: /* 80390A9C 0038D9FC 39 E0 04 00 */ li r15, 0x400 /* 80390AA0 0038DA00 48 00 05 0C */ b lbl_80390FAC lbl_80390AA4: /* 80390AA4 0038DA04 2C 04 00 30 */ cmpwi r4, 0x30 /* 80390AA8 0038DA08 40 82 00 28 */ bne lbl_80390AD0 /* 80390AAC 0038DA0C 7E 0C 83 78 */ mr r12, r16 /* 80390AB0 0038DA10 7E 23 8B 78 */ mr r3, r17 /* 80390AB4 0038DA14 38 80 00 00 */ li r4, 0 /* 80390AB8 0038DA18 38 A0 00 00 */ li r5, 0 /* 80390ABC 0038DA1C 7D 89 03 A6 */ mtctr r12 /* 80390AC0 0038DA20 3B DE 00 01 */ addi r30, r30, 1 /* 80390AC4 0038DA24 4E 80 04 21 */ bctrl /* 80390AC8 0038DA28 7C 64 1B 78 */ mr r4, r3 /* 80390ACC 0038DA2C 48 00 04 E0 */ b lbl_80390FAC lbl_80390AD0: /* 80390AD0 0038DA30 39 E0 04 00 */ li r15, 0x400 /* 80390AD4 0038DA34 48 00 04 D8 */ b lbl_80390FAC lbl_80390AD8: /* 80390AD8 0038DA38 3C 60 80 3F */ lis r3, lbl_803F2A20@ha /* 80390ADC 0038DA3C 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 80390AE0 0038DA40 38 63 2A 20 */ addi r3, r3, lbl_803F2A20@l /* 80390AE4 0038DA44 7C 03 00 AE */ lbzx r0, r3, r0 /* 80390AE8 0038DA48 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 80390AEC 0038DA4C 40 82 00 0C */ bne lbl_80390AF8 /* 80390AF0 0038DA50 39 E0 08 00 */ li r15, 0x800 /* 80390AF4 0038DA54 48 00 04 B8 */ b lbl_80390FAC lbl_80390AF8: /* 80390AF8 0038DA58 1C 1C 00 0A */ mulli r0, r28, 0xa /* 80390AFC 0038DA5C 7F 84 02 14 */ add r28, r4, r0 /* 80390B00 0038DA60 3B 9C FF D0 */ addi r28, r28, -48 /* 80390B04 0038DA64 2C 1C 7F FF */ cmpwi r28, 0x7fff /* 80390B08 0038DA68 40 81 00 0C */ ble lbl_80390B14 /* 80390B0C 0038DA6C 38 00 00 01 */ li r0, 1 /* 80390B10 0038DA70 90 12 00 00 */ stw r0, 0(r18) lbl_80390B14: /* 80390B14 0038DA74 7E 0C 83 78 */ mr r12, r16 /* 80390B18 0038DA78 7E 23 8B 78 */ mr r3, r17 /* 80390B1C 0038DA7C 38 80 00 00 */ li r4, 0 /* 80390B20 0038DA80 38 A0 00 00 */ li r5, 0 /* 80390B24 0038DA84 7D 89 03 A6 */ mtctr r12 /* 80390B28 0038DA88 3B DE 00 01 */ addi r30, r30, 1 /* 80390B2C 0038DA8C 4E 80 04 21 */ bctrl /* 80390B30 0038DA90 7C 64 1B 78 */ mr r4, r3 /* 80390B34 0038DA94 48 00 04 78 */ b lbl_80390FAC lbl_80390B38: /* 80390B38 0038DA98 2C 1F 00 10 */ cmpwi r31, 0x10 /* 80390B3C 0038DA9C 41 82 02 F4 */ beq lbl_80390E30 /* 80390B40 0038DAA0 40 80 00 34 */ bge lbl_80390B74 /* 80390B44 0038DAA4 2C 1F 00 04 */ cmpwi r31, 4 /* 80390B48 0038DAA8 41 82 00 D4 */ beq lbl_80390C1C /* 80390B4C 0038DAAC 40 80 00 1C */ bge lbl_80390B68 /* 80390B50 0038DAB0 2C 1F 00 02 */ cmpwi r31, 2 /* 80390B54 0038DAB4 41 82 00 94 */ beq lbl_80390BE8 /* 80390B58 0038DAB8 40 80 04 54 */ bge lbl_80390FAC /* 80390B5C 0038DABC 2C 1F 00 01 */ cmpwi r31, 1 /* 80390B60 0038DAC0 40 80 00 38 */ bge lbl_80390B98 /* 80390B64 0038DAC4 48 00 04 48 */ b lbl_80390FAC lbl_80390B68: /* 80390B68 0038DAC8 2C 1F 00 08 */ cmpwi r31, 8 /* 80390B6C 0038DACC 41 82 01 D4 */ beq lbl_80390D40 /* 80390B70 0038DAD0 48 00 04 3C */ b lbl_80390FAC lbl_80390B74: /* 80390B74 0038DAD4 2C 1F 00 40 */ cmpwi r31, 0x40 /* 80390B78 0038DAD8 41 82 03 74 */ beq lbl_80390EEC /* 80390B7C 0038DADC 40 80 00 10 */ bge lbl_80390B8C /* 80390B80 0038DAE0 2C 1F 00 20 */ cmpwi r31, 0x20 /* 80390B84 0038DAE4 41 82 03 08 */ beq lbl_80390E8C /* 80390B88 0038DAE8 48 00 04 24 */ b lbl_80390FAC lbl_80390B8C: /* 80390B8C 0038DAEC 2C 1F 01 00 */ cmpwi r31, 0x100 /* 80390B90 0038DAF0 41 82 03 B8 */ beq lbl_80390F48 /* 80390B94 0038DAF4 48 00 04 18 */ b lbl_80390FAC lbl_80390B98: /* 80390B98 0038DAF8 38 00 00 00 */ li r0, 0 /* 80390B9C 0038DAFC 7E 0C 83 78 */ mr r12, r16 /* 80390BA0 0038DB00 7E 23 8B 78 */ mr r3, r17 /* 80390BA4 0038DB04 98 01 00 18 */ stb r0, 0x18(r1) /* 80390BA8 0038DB08 3B 20 00 02 */ li r25, 2 /* 80390BAC 0038DB0C 3B E0 00 02 */ li r31, 2 /* 80390BB0 0038DB10 98 01 00 19 */ stb r0, 0x19(r1) /* 80390BB4 0038DB14 38 80 00 00 */ li r4, 0 /* 80390BB8 0038DB18 38 A0 00 00 */ li r5, 0 /* 80390BBC 0038DB1C 98 01 00 1A */ stb r0, 0x1a(r1) /* 80390BC0 0038DB20 98 01 00 1B */ stb r0, 0x1b(r1) /* 80390BC4 0038DB24 98 01 00 1C */ stb r0, 0x1c(r1) /* 80390BC8 0038DB28 98 01 00 1D */ stb r0, 0x1d(r1) /* 80390BCC 0038DB2C 98 01 00 1E */ stb r0, 0x1e(r1) /* 80390BD0 0038DB30 98 01 00 1F */ stb r0, 0x1f(r1) /* 80390BD4 0038DB34 7D 89 03 A6 */ mtctr r12 /* 80390BD8 0038DB38 3B DE 00 01 */ addi r30, r30, 1 /* 80390BDC 0038DB3C 4E 80 04 21 */ bctrl /* 80390BE0 0038DB40 7C 64 1B 78 */ mr r4, r3 /* 80390BE4 0038DB44 48 00 03 C8 */ b lbl_80390FAC lbl_80390BE8: /* 80390BE8 0038DB48 2C 04 00 30 */ cmpwi r4, 0x30 /* 80390BEC 0038DB4C 40 82 00 28 */ bne lbl_80390C14 /* 80390BF0 0038DB50 7E 0C 83 78 */ mr r12, r16 /* 80390BF4 0038DB54 7E 23 8B 78 */ mr r3, r17 /* 80390BF8 0038DB58 38 80 00 00 */ li r4, 0 /* 80390BFC 0038DB5C 38 A0 00 00 */ li r5, 0 /* 80390C00 0038DB60 7D 89 03 A6 */ mtctr r12 /* 80390C04 0038DB64 3B DE 00 01 */ addi r30, r30, 1 /* 80390C08 0038DB68 4E 80 04 21 */ bctrl /* 80390C0C 0038DB6C 7C 64 1B 78 */ mr r4, r3 /* 80390C10 0038DB70 48 00 03 9C */ b lbl_80390FAC lbl_80390C14: /* 80390C14 0038DB74 3B E0 00 04 */ li r31, 4 /* 80390C18 0038DB78 48 00 03 94 */ b lbl_80390FAC lbl_80390C1C: /* 80390C1C 0038DB7C 3C 60 80 3F */ lis r3, lbl_803F2A20@ha /* 80390C20 0038DB80 54 85 06 3E */ clrlwi r5, r4, 0x18 /* 80390C24 0038DB84 38 63 2A 20 */ addi r3, r3, lbl_803F2A20@l /* 80390C28 0038DB88 7C 03 28 AE */ lbzx r0, r3, r5 /* 80390C2C 0038DB8C 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a /* 80390C30 0038DB90 40 82 00 3C */ bne lbl_80390C6C /* 80390C34 0038DB94 7C 04 A8 00 */ cmpw r4, r21 /* 80390C38 0038DB98 40 82 00 2C */ bne lbl_80390C64 /* 80390C3C 0038DB9C 7E 0C 83 78 */ mr r12, r16 /* 80390C40 0038DBA0 7E 23 8B 78 */ mr r3, r17 /* 80390C44 0038DBA4 3B E0 00 08 */ li r31, 8 /* 80390C48 0038DBA8 38 80 00 00 */ li r4, 0 /* 80390C4C 0038DBAC 38 A0 00 00 */ li r5, 0 /* 80390C50 0038DBB0 7D 89 03 A6 */ mtctr r12 /* 80390C54 0038DBB4 3B DE 00 01 */ addi r30, r30, 1 /* 80390C58 0038DBB8 4E 80 04 21 */ bctrl /* 80390C5C 0038DBBC 7C 64 1B 78 */ mr r4, r3 /* 80390C60 0038DBC0 48 00 03 4C */ b lbl_80390FAC lbl_80390C64: /* 80390C64 0038DBC4 3B E0 00 10 */ li r31, 0x10 /* 80390C68 0038DBC8 48 00 03 44 */ b lbl_80390FAC lbl_80390C6C: /* 80390C6C 0038DBCC 2C 19 00 11 */ cmpwi r25, 0x11 /* 80390C70 0038DBD0 40 80 00 AC */ bge lbl_80390D1C /* 80390C74 0038DBD4 57 20 0F FE */ srwi r0, r25, 0x1f /* 80390C78 0038DBD8 2C 04 FF FF */ cmpwi r4, -1 /* 80390C7C 0038DBDC 7C 00 CA 14 */ add r0, r0, r25 /* 80390C80 0038DBE0 3A F7 00 01 */ addi r23, r23, 1 /* 80390C84 0038DBE4 7C 00 0E 70 */ srawi r0, r0, 1 /* 80390C88 0038DBE8 7C DA 00 AE */ lbzx r6, r26, r0 /* 80390C8C 0038DBEC 40 82 00 0C */ bne lbl_80390C98 /* 80390C90 0038DBF0 38 60 FF FF */ li r3, -1 /* 80390C94 0038DBF4 48 00 00 10 */ b lbl_80390CA4 lbl_80390C98: /* 80390C98 0038DBF8 3C 60 80 3F */ lis r3, lbl_803F2C20@ha /* 80390C9C 0038DBFC 38 63 2C 20 */ addi r3, r3, lbl_803F2C20@l /* 80390CA0 0038DC00 7C 63 28 AE */ lbzx r3, r3, r5 lbl_80390CA4: /* 80390CA4 0038DC04 2C 03 00 41 */ cmpwi r3, 0x41 /* 80390CA8 0038DC08 41 80 00 0C */ blt lbl_80390CB4 /* 80390CAC 0038DC0C 38 A3 FF C9 */ addi r5, r3, -55 /* 80390CB0 0038DC10 48 00 00 08 */ b lbl_80390CB8 lbl_80390CB4: /* 80390CB4 0038DC14 38 A3 FF D0 */ addi r5, r3, -48 lbl_80390CB8: /* 80390CB8 0038DC18 57 24 0F FE */ srwi r4, r25, 0x1f /* 80390CBC 0038DC1C 57 20 07 FE */ clrlwi r0, r25, 0x1f /* 80390CC0 0038DC20 7C 03 22 78 */ xor r3, r0, r4 /* 80390CC4 0038DC24 54 A0 25 36 */ rlwinm r0, r5, 4, 0x14, 0x1b /* 80390CC8 0038DC28 7C 64 18 51 */ subf. r3, r4, r3 /* 80390CCC 0038DC2C 54 A3 06 3E */ clrlwi r3, r5, 0x18 /* 80390CD0 0038DC30 7C C0 03 78 */ or r0, r6, r0 /* 80390CD4 0038DC34 54 05 06 3E */ clrlwi r5, r0, 0x18 /* 80390CD8 0038DC38 41 82 00 0C */ beq lbl_80390CE4 /* 80390CDC 0038DC3C 7C C0 1B 78 */ or r0, r6, r3 /* 80390CE0 0038DC40 54 05 06 3E */ clrlwi r5, r0, 0x18 lbl_80390CE4: /* 80390CE4 0038DC44 57 20 0F FE */ srwi r0, r25, 0x1f /* 80390CE8 0038DC48 7E 0C 83 78 */ mr r12, r16 /* 80390CEC 0038DC4C 7C 00 CA 14 */ add r0, r0, r25 /* 80390CF0 0038DC50 7E 23 8B 78 */ mr r3, r17 /* 80390CF4 0038DC54 7C 00 0E 70 */ srawi r0, r0, 1 /* 80390CF8 0038DC58 38 80 00 00 */ li r4, 0 /* 80390CFC 0038DC5C 7C BA 01 AE */ stbx r5, r26, r0 /* 80390D00 0038DC60 38 A0 00 00 */ li r5, 0 /* 80390D04 0038DC64 7D 89 03 A6 */ mtctr r12 /* 80390D08 0038DC68 3B 39 00 01 */ addi r25, r25, 1 /* 80390D0C 0038DC6C 3B DE 00 01 */ addi r30, r30, 1 /* 80390D10 0038DC70 4E 80 04 21 */ bctrl /* 80390D14 0038DC74 7C 64 1B 78 */ mr r4, r3 /* 80390D18 0038DC78 48 00 02 94 */ b lbl_80390FAC lbl_80390D1C: /* 80390D1C 0038DC7C 7E 0C 83 78 */ mr r12, r16 /* 80390D20 0038DC80 7E 23 8B 78 */ mr r3, r17 /* 80390D24 0038DC84 38 80 00 00 */ li r4, 0 /* 80390D28 0038DC88 38 A0 00 00 */ li r5, 0 /* 80390D2C 0038DC8C 7D 89 03 A6 */ mtctr r12 /* 80390D30 0038DC90 3B DE 00 01 */ addi r30, r30, 1 /* 80390D34 0038DC94 4E 80 04 21 */ bctrl /* 80390D38 0038DC98 7C 64 1B 78 */ mr r4, r3 /* 80390D3C 0038DC9C 48 00 02 70 */ b lbl_80390FAC lbl_80390D40: /* 80390D40 0038DCA0 3C 60 80 3F */ lis r3, lbl_803F2A20@ha /* 80390D44 0038DCA4 54 85 06 3E */ clrlwi r5, r4, 0x18 /* 80390D48 0038DCA8 38 63 2A 20 */ addi r3, r3, lbl_803F2A20@l /* 80390D4C 0038DCAC 7C 03 28 AE */ lbzx r0, r3, r5 /* 80390D50 0038DCB0 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a /* 80390D54 0038DCB4 40 82 00 0C */ bne lbl_80390D60 /* 80390D58 0038DCB8 3B E0 00 10 */ li r31, 0x10 /* 80390D5C 0038DCBC 48 00 02 50 */ b lbl_80390FAC lbl_80390D60: /* 80390D60 0038DCC0 2C 19 00 11 */ cmpwi r25, 0x11 /* 80390D64 0038DCC4 40 80 00 A8 */ bge lbl_80390E0C /* 80390D68 0038DCC8 57 20 0F FE */ srwi r0, r25, 0x1f /* 80390D6C 0038DCCC 2C 04 FF FF */ cmpwi r4, -1 /* 80390D70 0038DCD0 7C 00 CA 14 */ add r0, r0, r25 /* 80390D74 0038DCD4 7C 00 0E 70 */ srawi r0, r0, 1 /* 80390D78 0038DCD8 7C DA 00 AE */ lbzx r6, r26, r0 /* 80390D7C 0038DCDC 40 82 00 0C */ bne lbl_80390D88 /* 80390D80 0038DCE0 38 60 FF FF */ li r3, -1 /* 80390D84 0038DCE4 48 00 00 10 */ b lbl_80390D94 lbl_80390D88: /* 80390D88 0038DCE8 3C 60 80 3F */ lis r3, lbl_803F2C20@ha /* 80390D8C 0038DCEC 38 63 2C 20 */ addi r3, r3, lbl_803F2C20@l /* 80390D90 0038DCF0 7C 63 28 AE */ lbzx r3, r3, r5 lbl_80390D94: /* 80390D94 0038DCF4 2C 03 00 41 */ cmpwi r3, 0x41 /* 80390D98 0038DCF8 41 80 00 0C */ blt lbl_80390DA4 /* 80390D9C 0038DCFC 38 A3 FF C9 */ addi r5, r3, -55 /* 80390DA0 0038DD00 48 00 00 08 */ b lbl_80390DA8 lbl_80390DA4: /* 80390DA4 0038DD04 38 A3 FF D0 */ addi r5, r3, -48 lbl_80390DA8: /* 80390DA8 0038DD08 57 24 0F FE */ srwi r4, r25, 0x1f /* 80390DAC 0038DD0C 57 20 07 FE */ clrlwi r0, r25, 0x1f /* 80390DB0 0038DD10 7C 03 22 78 */ xor r3, r0, r4 /* 80390DB4 0038DD14 54 A0 25 36 */ rlwinm r0, r5, 4, 0x14, 0x1b /* 80390DB8 0038DD18 7C 64 18 51 */ subf. r3, r4, r3 /* 80390DBC 0038DD1C 54 A3 06 3E */ clrlwi r3, r5, 0x18 /* 80390DC0 0038DD20 7C C0 03 78 */ or r0, r6, r0 /* 80390DC4 0038DD24 54 05 06 3E */ clrlwi r5, r0, 0x18 /* 80390DC8 0038DD28 41 82 00 0C */ beq lbl_80390DD4 /* 80390DCC 0038DD2C 7C C0 1B 78 */ or r0, r6, r3 /* 80390DD0 0038DD30 54 05 06 3E */ clrlwi r5, r0, 0x18 lbl_80390DD4: /* 80390DD4 0038DD34 57 20 0F FE */ srwi r0, r25, 0x1f /* 80390DD8 0038DD38 7E 0C 83 78 */ mr r12, r16 /* 80390DDC 0038DD3C 7C 00 CA 14 */ add r0, r0, r25 /* 80390DE0 0038DD40 7E 23 8B 78 */ mr r3, r17 /* 80390DE4 0038DD44 7C 00 0E 70 */ srawi r0, r0, 1 /* 80390DE8 0038DD48 38 80 00 00 */ li r4, 0 /* 80390DEC 0038DD4C 7C BA 01 AE */ stbx r5, r26, r0 /* 80390DF0 0038DD50 38 A0 00 00 */ li r5, 0 /* 80390DF4 0038DD54 7D 89 03 A6 */ mtctr r12 /* 80390DF8 0038DD58 3B 39 00 01 */ addi r25, r25, 1 /* 80390DFC 0038DD5C 3B DE 00 01 */ addi r30, r30, 1 /* 80390E00 0038DD60 4E 80 04 21 */ bctrl /* 80390E04 0038DD64 7C 64 1B 78 */ mr r4, r3 /* 80390E08 0038DD68 48 00 01 A4 */ b lbl_80390FAC lbl_80390E0C: /* 80390E0C 0038DD6C 7E 0C 83 78 */ mr r12, r16 /* 80390E10 0038DD70 7E 23 8B 78 */ mr r3, r17 /* 80390E14 0038DD74 38 80 00 00 */ li r4, 0 /* 80390E18 0038DD78 38 A0 00 00 */ li r5, 0 /* 80390E1C 0038DD7C 7D 89 03 A6 */ mtctr r12 /* 80390E20 0038DD80 3B DE 00 01 */ addi r30, r30, 1 /* 80390E24 0038DD84 4E 80 04 21 */ bctrl /* 80390E28 0038DD88 7C 64 1B 78 */ mr r4, r3 /* 80390E2C 0038DD8C 48 00 01 80 */ b lbl_80390FAC lbl_80390E30: /* 80390E30 0038DD90 2C 04 FF FF */ cmpwi r4, -1 /* 80390E34 0038DD94 40 82 00 0C */ bne lbl_80390E40 /* 80390E38 0038DD98 38 00 FF FF */ li r0, -1 /* 80390E3C 0038DD9C 48 00 00 14 */ b lbl_80390E50 lbl_80390E40: /* 80390E40 0038DDA0 3C 60 80 3F */ lis r3, lbl_803F2C20@ha /* 80390E44 0038DDA4 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 80390E48 0038DDA8 38 63 2C 20 */ addi r3, r3, lbl_803F2C20@l /* 80390E4C 0038DDAC 7C 03 00 AE */ lbzx r0, r3, r0 lbl_80390E50: /* 80390E50 0038DDB0 2C 00 00 50 */ cmpwi r0, 0x50 /* 80390E54 0038DDB4 40 82 00 30 */ bne lbl_80390E84 /* 80390E58 0038DDB8 7E 0C 83 78 */ mr r12, r16 /* 80390E5C 0038DDBC 7E 23 8B 78 */ mr r3, r17 /* 80390E60 0038DDC0 3B E0 00 20 */ li r31, 0x20 /* 80390E64 0038DDC4 38 80 00 00 */ li r4, 0 /* 80390E68 0038DDC8 38 A0 00 00 */ li r5, 0 /* 80390E6C 0038DDCC 7D 89 03 A6 */ mtctr r12 /* 80390E70 0038DDD0 3B 18 00 01 */ addi r24, r24, 1 /* 80390E74 0038DDD4 3B DE 00 01 */ addi r30, r30, 1 /* 80390E78 0038DDD8 4E 80 04 21 */ bctrl /* 80390E7C 0038DDDC 7C 64 1B 78 */ mr r4, r3 /* 80390E80 0038DDE0 48 00 01 2C */ b lbl_80390FAC lbl_80390E84: /* 80390E84 0038DDE4 39 E0 08 00 */ li r15, 0x800 /* 80390E88 0038DDE8 48 00 01 24 */ b lbl_80390FAC lbl_80390E8C: /* 80390E8C 0038DDEC 2C 04 00 2D */ cmpwi r4, 0x2d /* 80390E90 0038DDF0 3B 18 00 01 */ addi r24, r24, 1 /* 80390E94 0038DDF4 40 82 00 10 */ bne lbl_80390EA4 /* 80390E98 0038DDF8 38 00 00 01 */ li r0, 1 /* 80390E9C 0038DDFC 90 01 00 58 */ stw r0, 0x58(r1) /* 80390EA0 0038DE00 48 00 00 24 */ b lbl_80390EC4 lbl_80390EA4: /* 80390EA4 0038DE04 2C 04 00 2B */ cmpwi r4, 0x2b /* 80390EA8 0038DE08 41 82 00 1C */ beq lbl_80390EC4 /* 80390EAC 0038DE0C 7E 0C 83 78 */ mr r12, r16 /* 80390EB0 0038DE10 7E 23 8B 78 */ mr r3, r17 /* 80390EB4 0038DE14 38 A0 00 01 */ li r5, 1 /* 80390EB8 0038DE18 7D 89 03 A6 */ mtctr r12 /* 80390EBC 0038DE1C 4E 80 04 21 */ bctrl /* 80390EC0 0038DE20 3B 18 FF FF */ addi r24, r24, -1 lbl_80390EC4: /* 80390EC4 0038DE24 7E 0C 83 78 */ mr r12, r16 /* 80390EC8 0038DE28 7E 23 8B 78 */ mr r3, r17 /* 80390ECC 0038DE2C 3B E0 00 40 */ li r31, 0x40 /* 80390ED0 0038DE30 38 80 00 00 */ li r4, 0 /* 80390ED4 0038DE34 38 A0 00 00 */ li r5, 0 /* 80390ED8 0038DE38 7D 89 03 A6 */ mtctr r12 /* 80390EDC 0038DE3C 3B DE 00 01 */ addi r30, r30, 1 /* 80390EE0 0038DE40 4E 80 04 21 */ bctrl /* 80390EE4 0038DE44 7C 64 1B 78 */ mr r4, r3 /* 80390EE8 0038DE48 48 00 00 C4 */ b lbl_80390FAC lbl_80390EEC: /* 80390EEC 0038DE4C 3C 60 80 3F */ lis r3, lbl_803F2A20@ha /* 80390EF0 0038DE50 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 80390EF4 0038DE54 38 63 2A 20 */ addi r3, r3, lbl_803F2A20@l /* 80390EF8 0038DE58 7C 03 00 AE */ lbzx r0, r3, r0 /* 80390EFC 0038DE5C 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 80390F00 0038DE60 40 82 00 0C */ bne lbl_80390F0C /* 80390F04 0038DE64 39 E0 10 00 */ li r15, 0x1000 /* 80390F08 0038DE68 48 00 00 A4 */ b lbl_80390FAC lbl_80390F0C: /* 80390F0C 0038DE6C 2C 04 00 30 */ cmpwi r4, 0x30 /* 80390F10 0038DE70 40 82 00 30 */ bne lbl_80390F40 /* 80390F14 0038DE74 7E 0C 83 78 */ mr r12, r16 /* 80390F18 0038DE78 7E 23 8B 78 */ mr r3, r17 /* 80390F1C 0038DE7C 3B E0 00 80 */ li r31, 0x80 /* 80390F20 0038DE80 38 80 00 00 */ li r4, 0 /* 80390F24 0038DE84 38 A0 00 00 */ li r5, 0 /* 80390F28 0038DE88 7D 89 03 A6 */ mtctr r12 /* 80390F2C 0038DE8C 3B 18 00 01 */ addi r24, r24, 1 /* 80390F30 0038DE90 3B DE 00 01 */ addi r30, r30, 1 /* 80390F34 0038DE94 4E 80 04 21 */ bctrl /* 80390F38 0038DE98 7C 64 1B 78 */ mr r4, r3 /* 80390F3C 0038DE9C 48 00 00 70 */ b lbl_80390FAC lbl_80390F40: /* 80390F40 0038DEA0 3B E0 01 00 */ li r31, 0x100 /* 80390F44 0038DEA4 48 00 00 68 */ b lbl_80390FAC lbl_80390F48: /* 80390F48 0038DEA8 3C 60 80 3F */ lis r3, lbl_803F2A20@ha /* 80390F4C 0038DEAC 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 80390F50 0038DEB0 38 63 2A 20 */ addi r3, r3, lbl_803F2A20@l /* 80390F54 0038DEB4 7C 03 00 AE */ lbzx r0, r3, r0 /* 80390F58 0038DEB8 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 80390F5C 0038DEBC 40 82 00 0C */ bne lbl_80390F68 /* 80390F60 0038DEC0 39 E0 08 00 */ li r15, 0x800 /* 80390F64 0038DEC4 48 00 00 48 */ b lbl_80390FAC lbl_80390F68: /* 80390F68 0038DEC8 1C 16 00 0A */ mulli r0, r22, 0xa /* 80390F6C 0038DECC 2C 1C 7F FF */ cmpwi r28, 0x7fff /* 80390F70 0038DED0 7C 64 02 14 */ add r3, r4, r0 /* 80390F74 0038DED4 38 03 FF D0 */ addi r0, r3, -48 /* 80390F78 0038DED8 7C 16 07 34 */ extsh r22, r0 /* 80390F7C 0038DEDC 40 81 00 0C */ ble lbl_80390F88 /* 80390F80 0038DEE0 38 00 00 01 */ li r0, 1 /* 80390F84 0038DEE4 90 12 00 00 */ stw r0, 0(r18) lbl_80390F88: /* 80390F88 0038DEE8 7E 0C 83 78 */ mr r12, r16 /* 80390F8C 0038DEEC 7E 23 8B 78 */ mr r3, r17 /* 80390F90 0038DEF0 38 80 00 00 */ li r4, 0 /* 80390F94 0038DEF4 38 A0 00 00 */ li r5, 0 /* 80390F98 0038DEF8 7D 89 03 A6 */ mtctr r12 /* 80390F9C 0038DEFC 3B 18 00 01 */ addi r24, r24, 1 /* 80390FA0 0038DF00 3B DE 00 01 */ addi r30, r30, 1 /* 80390FA4 0038DF04 4E 80 04 21 */ bctrl /* 80390FA8 0038DF08 7C 64 1B 78 */ mr r4, r3 lbl_80390FAC: /* 80390FAC 0038DF0C 80 01 00 08 */ lwz r0, 8(r1) /* 80390FB0 0038DF10 7C 1E 00 00 */ cmpw r30, r0 /* 80390FB4 0038DF14 41 81 00 14 */ bgt lbl_80390FC8 /* 80390FB8 0038DF18 2C 04 FF FF */ cmpwi r4, -1 /* 80390FBC 0038DF1C 41 82 00 0C */ beq lbl_80390FC8 /* 80390FC0 0038DF20 55 E0 04 E9 */ rlwinm. r0, r15, 0, 0x13, 0x14 /* 80390FC4 0038DF24 41 82 F3 A4 */ beq lbl_80390368 lbl_80390FC8: /* 80390FC8 0038DF28 71 EF 0E 2C */ andi. r15, r15, 0xe2c /* 80390FCC 0038DF2C 40 82 00 14 */ bne lbl_80390FE0 /* 80390FD0 0038DF30 80 61 00 0C */ lwz r3, 0xc(r1) /* 80390FD4 0038DF34 38 00 00 00 */ li r0, 0 /* 80390FD8 0038DF38 90 03 00 00 */ stw r0, 0(r3) /* 80390FDC 0038DF3C 48 00 00 14 */ b lbl_80390FF0 lbl_80390FE0: /* 80390FE0 0038DF40 7C 7E EA 14 */ add r3, r30, r29 /* 80390FE4 0038DF44 38 03 FF FF */ addi r0, r3, -1 /* 80390FE8 0038DF48 80 61 00 0C */ lwz r3, 0xc(r1) /* 80390FEC 0038DF4C 90 03 00 00 */ stw r0, 0(r3) lbl_80390FF0: /* 80390FF0 0038DF50 7E 0C 83 78 */ mr r12, r16 /* 80390FF4 0038DF54 7E 23 8B 78 */ mr r3, r17 /* 80390FF8 0038DF58 38 A0 00 01 */ li r5, 1 /* 80390FFC 0038DF5C 7D 89 03 A6 */ mtctr r12 /* 80391000 0038DF60 4E 80 04 21 */ bctrl /* 80391004 0038DF64 2C 1F 00 00 */ cmpwi r31, 0 /* 80391008 0038DF68 40 82 01 48 */ bne lbl_80391150 /* 8039100C 0038DF6C 80 01 00 60 */ lwz r0, 0x60(r1) /* 80391010 0038DF70 2C 00 00 00 */ cmpwi r0, 0 /* 80391014 0038DF74 41 82 00 08 */ beq lbl_8039101C /* 80391018 0038DF78 7F 9C 00 D0 */ neg r28, r28 lbl_8039101C: /* 8039101C 0038DF7C 88 61 00 30 */ lbz r3, 0x30(r1) /* 80391020 0038DF80 38 01 00 2C */ addi r0, r1, 0x2c /* 80391024 0038DF84 38 83 00 05 */ addi r4, r3, 5 /* 80391028 0038DF88 7C 80 22 14 */ add r4, r0, r4 /* 8039102C 0038DF8C 48 00 00 08 */ b lbl_80391034 lbl_80391030: /* 80391030 0038DF90 3B 7B 00 01 */ addi r27, r27, 1 lbl_80391034: /* 80391034 0038DF94 2C 03 00 00 */ cmpwi r3, 0 /* 80391038 0038DF98 38 63 FF FF */ addi r3, r3, -1 /* 8039103C 0038DF9C 41 82 00 10 */ beq lbl_8039104C /* 80391040 0038DFA0 8C 04 FF FF */ lbzu r0, -1(r4) /* 80391044 0038DFA4 28 00 00 30 */ cmplwi r0, 0x30 /* 80391048 0038DFA8 41 82 FF E8 */ beq lbl_80391030 lbl_8039104C: /* 8039104C 0038DFAC 38 03 00 01 */ addi r0, r3, 1 /* 80391050 0038DFB0 54 05 06 3F */ clrlwi. r5, r0, 0x18 /* 80391054 0038DFB4 98 01 00 30 */ stb r0, 0x30(r1) /* 80391058 0038DFB8 40 82 00 18 */ bne lbl_80391070 /* 8039105C 0038DFBC 38 05 00 01 */ addi r0, r5, 1 /* 80391060 0038DFC0 38 61 00 31 */ addi r3, r1, 0x31 /* 80391064 0038DFC4 38 80 00 30 */ li r4, 0x30 /* 80391068 0038DFC8 98 01 00 30 */ stb r0, 0x30(r1) /* 8039106C 0038DFCC 7C 83 29 AE */ stbx r4, r3, r5 lbl_80391070: /* 80391070 0038DFD0 7F 9C DA 14 */ add r28, r28, r27 /* 80391074 0038DFD4 2C 1C 80 00 */ cmpwi r28, -32768 /* 80391078 0038DFD8 41 80 00 0C */ blt lbl_80391084 /* 8039107C 0038DFDC 2C 1C 7F FF */ cmpwi r28, 0x7fff /* 80391080 0038DFE0 40 81 00 0C */ ble lbl_8039108C lbl_80391084: /* 80391084 0038DFE4 38 00 00 01 */ li r0, 1 /* 80391088 0038DFE8 90 12 00 00 */ stw r0, 0(r18) lbl_8039108C: /* 8039108C 0038DFEC 80 12 00 00 */ lwz r0, 0(r18) /* 80391090 0038DFF0 2C 00 00 00 */ cmpwi r0, 0 /* 80391094 0038DFF4 41 82 00 3C */ beq lbl_803910D0 /* 80391098 0038DFF8 80 01 00 60 */ lwz r0, 0x60(r1) /* 8039109C 0038DFFC 2C 00 00 00 */ cmpwi r0, 0 /* 803910A0 0038E000 41 82 00 0C */ beq lbl_803910AC /* 803910A4 0038E004 C8 22 CF 88 */ lfd f1, lbl_805AECA8@sda21(r2) /* 803910A8 0038E008 48 00 01 B8 */ b lbl_80391260 lbl_803910AC: /* 803910AC 0038E00C 2C 0E 00 00 */ cmpwi r14, 0 /* 803910B0 0038E010 41 82 00 14 */ beq lbl_803910C4 /* 803910B4 0038E014 3C 60 80 5B */ lis r3, lbl_805A8BB8@ha /* 803910B8 0038E018 C8 03 8B B8 */ lfd f0, lbl_805A8BB8@l(r3) /* 803910BC 0038E01C FC 20 00 50 */ fneg f1, f0 /* 803910C0 0038E020 48 00 01 A0 */ b lbl_80391260 lbl_803910C4: /* 803910C4 0038E024 3C 60 80 5B */ lis r3, lbl_805A8BB8@ha /* 803910C8 0038E028 C8 23 8B B8 */ lfd f1, lbl_805A8BB8@l(r3) /* 803910CC 0038E02C 48 00 01 94 */ b lbl_80391260 lbl_803910D0: /* 803910D0 0038E030 B3 81 00 2E */ sth r28, 0x2e(r1) /* 803910D4 0038E034 38 61 00 2C */ addi r3, r1, 0x2c /* 803910D8 0038E038 4B FF A0 D9 */ bl __dec2num /* 803910DC 0038E03C C8 02 CF 88 */ lfd f0, lbl_805AECA8@sda21(r2) /* 803910E0 0038E040 D8 21 00 18 */ stfd f1, 0x18(r1) /* 803910E4 0038E044 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 803910E8 0038E048 41 82 00 20 */ beq lbl_80391108 /* 803910EC 0038E04C 3C 60 80 5B */ lis r3, lbl_805A8BC0@ha /* 803910F0 0038E050 C8 03 8B C0 */ lfd f0, lbl_805A8BC0@l(r3) /* 803910F4 0038E054 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 803910F8 0038E058 40 80 00 10 */ bge lbl_80391108 /* 803910FC 0038E05C 38 00 00 01 */ li r0, 1 /* 80391100 0038E060 90 12 00 00 */ stw r0, 0(r18) /* 80391104 0038E064 48 00 00 28 */ b lbl_8039112C lbl_80391108: /* 80391108 0038E068 3C 60 80 5B */ lis r3, lbl_805A8BC8@ha /* 8039110C 0038E06C C8 03 8B C8 */ lfd f0, lbl_805A8BC8@l(r3) /* 80391110 0038E070 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80391114 0038E074 40 81 00 18 */ ble lbl_8039112C /* 80391118 0038E078 38 00 00 01 */ li r0, 1 /* 8039111C 0038E07C 3C 60 80 5B */ lis r3, lbl_805A8BB8@ha /* 80391120 0038E080 90 12 00 00 */ stw r0, 0(r18) /* 80391124 0038E084 C8 03 8B B8 */ lfd f0, lbl_805A8BB8@l(r3) /* 80391128 0038E088 D8 01 00 18 */ stfd f0, 0x18(r1) lbl_8039112C: /* 8039112C 0038E08C 2C 0E 00 00 */ cmpwi r14, 0 /* 80391130 0038E090 41 82 00 18 */ beq lbl_80391148 /* 80391134 0038E094 2C 0F 00 00 */ cmpwi r15, 0 /* 80391138 0038E098 41 82 00 10 */ beq lbl_80391148 /* 8039113C 0038E09C C8 01 00 18 */ lfd f0, 0x18(r1) /* 80391140 0038E0A0 FC 00 00 50 */ fneg f0, f0 /* 80391144 0038E0A4 D8 01 00 18 */ stfd f0, 0x18(r1) lbl_80391148: /* 80391148 0038E0A8 C8 21 00 18 */ lfd f1, 0x18(r1) /* 8039114C 0038E0AC 48 00 01 14 */ b lbl_80391260 lbl_80391150: /* 80391150 0038E0B0 C8 21 00 18 */ lfd f1, 0x18(r1) /* 80391154 0038E0B4 C8 02 CF 90 */ lfd f0, lbl_805AECB0@sda21(r2) /* 80391158 0038E0B8 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 8039115C 0038E0BC 41 82 00 F8 */ beq lbl_80391254 /* 80391160 0038E0C0 80 01 00 58 */ lwz r0, 0x58(r1) /* 80391164 0038E0C4 2C 00 00 00 */ cmpwi r0, 0 /* 80391168 0038E0C8 41 82 00 30 */ beq lbl_80391198 /* 8039116C 0038E0CC 7C 16 00 D0 */ neg r0, r22 /* 80391170 0038E0D0 7C 16 07 34 */ extsh r22, r0 /* 80391174 0038E0D4 48 00 00 24 */ b lbl_80391198 lbl_80391178: /* 80391178 0038E0D8 80 81 00 18 */ lwz r4, 0x18(r1) /* 8039117C 0038E0DC 3A D6 00 01 */ addi r22, r22, 1 /* 80391180 0038E0E0 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80391184 0038E0E4 54 80 F8 7E */ srwi r0, r4, 1 /* 80391188 0038E0E8 54 63 F8 3E */ rotlwi r3, r3, 0x1f /* 8039118C 0038E0EC 90 01 00 18 */ stw r0, 0x18(r1) /* 80391190 0038E0F0 50 83 F8 00 */ rlwimi r3, r4, 0x1f, 0, 0 /* 80391194 0038E0F4 90 61 00 1C */ stw r3, 0x1c(r1) lbl_80391198: /* 80391198 0038E0F8 A8 61 00 18 */ lha r3, 0x18(r1) /* 8039119C 0038E0FC 54 60 06 36 */ rlwinm r0, r3, 0, 0x18, 0x1b /* 803911A0 0038E100 2C 00 00 10 */ cmpwi r0, 0x10 /* 803911A4 0038E104 40 82 FF D4 */ bne lbl_80391178 /* 803911A8 0038E108 38 17 FF FF */ addi r0, r23, -1 /* 803911AC 0038E10C 54 64 07 3E */ clrlwi r4, r3, 0x1c /* 803911B0 0038E110 54 05 10 3A */ slwi r5, r0, 2 /* 803911B4 0038E114 80 01 00 5C */ lwz r0, 0x5c(r1) /* 803911B8 0038E118 B0 81 00 18 */ sth r4, 0x18(r1) /* 803911BC 0038E11C 7C 60 CA 14 */ add r3, r0, r25 /* 803911C0 0038E120 7C 16 2A 14 */ add r0, r22, r5 /* 803911C4 0038E124 7C 16 07 34 */ extsh r22, r0 /* 803911C8 0038E128 C8 22 CF 88 */ lfd f1, lbl_805AECA8@sda21(r2) /* 803911CC 0038E12C 38 03 00 01 */ addi r0, r3, 1 /* 803911D0 0038E130 38 76 03 FF */ addi r3, r22, 0x3ff /* 803911D4 0038E134 50 64 20 36 */ rlwimi r4, r3, 4, 0, 0x1b /* 803911D8 0038E138 7C 00 C2 14 */ add r0, r0, r24 /* 803911DC 0038E13C B0 81 00 18 */ sth r4, 0x18(r1) /* 803911E0 0038E140 7C 1D 02 14 */ add r0, r29, r0 /* 803911E4 0038E144 80 61 00 0C */ lwz r3, 0xc(r1) /* 803911E8 0038E148 C8 41 00 18 */ lfd f2, 0x18(r1) /* 803911EC 0038E14C 90 03 00 00 */ stw r0, 0(r3) /* 803911F0 0038E150 FC 01 10 00 */ fcmpu cr0, f1, f2 /* 803911F4 0038E154 41 82 00 24 */ beq lbl_80391218 /* 803911F8 0038E158 3C 60 80 5B */ lis r3, lbl_805A8BC0@ha /* 803911FC 0038E15C C8 03 8B C0 */ lfd f0, lbl_805A8BC0@l(r3) /* 80391200 0038E160 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80391204 0038E164 40 80 00 14 */ bge lbl_80391218 /* 80391208 0038E168 38 00 00 01 */ li r0, 1 /* 8039120C 0038E16C D8 21 00 18 */ stfd f1, 0x18(r1) /* 80391210 0038E170 90 12 00 00 */ stw r0, 0(r18) /* 80391214 0038E174 48 00 00 28 */ b lbl_8039123C lbl_80391218: /* 80391218 0038E178 3C 60 80 5B */ lis r3, lbl_805A8BC8@ha /* 8039121C 0038E17C C8 03 8B C8 */ lfd f0, lbl_805A8BC8@l(r3) /* 80391220 0038E180 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80391224 0038E184 40 81 00 18 */ ble lbl_8039123C /* 80391228 0038E188 38 00 00 01 */ li r0, 1 /* 8039122C 0038E18C 3C 60 80 5B */ lis r3, lbl_805A8BB8@ha /* 80391230 0038E190 90 12 00 00 */ stw r0, 0(r18) /* 80391234 0038E194 C8 03 8B B8 */ lfd f0, lbl_805A8BB8@l(r3) /* 80391238 0038E198 D8 01 00 18 */ stfd f0, 0x18(r1) lbl_8039123C: /* 8039123C 0038E19C 2C 0E 00 00 */ cmpwi r14, 0 /* 80391240 0038E1A0 41 82 00 1C */ beq lbl_8039125C /* 80391244 0038E1A4 A8 01 00 18 */ lha r0, 0x18(r1) /* 80391248 0038E1A8 60 00 80 00 */ ori r0, r0, 0x8000 /* 8039124C 0038E1AC B0 01 00 18 */ sth r0, 0x18(r1) /* 80391250 0038E1B0 48 00 00 0C */ b lbl_8039125C lbl_80391254: /* 80391254 0038E1B4 C8 02 CF 88 */ lfd f0, lbl_805AECA8@sda21(r2) /* 80391258 0038E1B8 D8 01 00 18 */ stfd f0, 0x18(r1) lbl_8039125C: /* 8039125C 0038E1BC C8 21 00 18 */ lfd f1, 0x18(r1) lbl_80391260: /* 80391260 0038E1C0 B9 C1 00 68 */ lmw r14, 0x68(r1) /* 80391264 0038E1C4 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 80391268 0038E1C8 7C 08 03 A6 */ mtlr r0 /* 8039126C 0038E1CC 38 21 00 B0 */ addi r1, r1, 0xb0 /* 80391270 0038E1D0 4E 80 00 20 */ blr