.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global lbl_8016E2B8 lbl_8016E2B8: /* 8016E2B8 00169F18 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E2BC 00169F1C 7C 65 1B 78 */ mr r5, r3 /* 8016E2C0 00169F20 2C 00 00 00 */ cmpwi r0, 0 /* 8016E2C4 00169F24 4D 82 00 20 */ beqlr /* 8016E2C8 00169F28 7C 03 03 78 */ mr r3, r0 /* 8016E2CC 00169F2C 38 80 00 03 */ li r4, 3 /* 8016E2D0 00169F30 4C C6 31 82 */ crclr 6 /* 8016E2D4 00169F34 48 00 03 48 */ b lbl_8016E61C /* 8016E2D8 00169F38 4E 80 00 20 */ blr .global func_8016E2DC func_8016E2DC: /* 8016E2DC 00169F3C 38 60 00 01 */ li r3, 1 /* 8016E2E0 00169F40 48 00 00 04 */ b func_8016E2E4 .global func_8016E2E4 func_8016E2E4: /* 8016E2E4 00169F44 80 0D 9F 0C */ lwz r0, lbl_8063F1CC-_SDA_BASE_(r13) /* 8016E2E8 00169F48 3C 80 80 49 */ lis r4, lbl_8048CDD8@ha /* 8016E2EC 00169F4C 38 84 CD D8 */ addi r4, r4, lbl_8048CDD8@l /* 8016E2F0 00169F50 7C 09 03 A6 */ mtctr r0 /* 8016E2F4 00169F54 2C 00 00 00 */ cmpwi r0, 0 /* 8016E2F8 00169F58 40 81 00 18 */ ble lbl_8016E310 lbl_8016E2FC: /* 8016E2FC 00169F5C 80 04 00 00 */ lwz r0, 0(r4) /* 8016E300 00169F60 7C 03 00 00 */ cmpw r3, r0 /* 8016E304 00169F64 4D 82 00 20 */ beqlr /* 8016E308 00169F68 38 84 00 04 */ addi r4, r4, 4 /* 8016E30C 00169F6C 42 00 FF F0 */ bdnz lbl_8016E2FC lbl_8016E310: /* 8016E310 00169F70 80 AD 9F 0C */ lwz r5, lbl_8063F1CC-_SDA_BASE_(r13) /* 8016E314 00169F74 3C 80 80 49 */ lis r4, lbl_8048CDD8@ha /* 8016E318 00169F78 38 84 CD D8 */ addi r4, r4, lbl_8048CDD8@l /* 8016E31C 00169F7C 54 A0 10 3A */ slwi r0, r5, 2 /* 8016E320 00169F80 38 A5 00 01 */ addi r5, r5, 1 /* 8016E324 00169F84 7C 64 01 2E */ stwx r3, r4, r0 /* 8016E328 00169F88 90 AD 9F 0C */ stw r5, lbl_8063F1CC-_SDA_BASE_(r13) /* 8016E32C 00169F8C 4E 80 00 20 */ blr .global func_8016E330 func_8016E330: /* 8016E330 00169F90 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E334 00169F94 54 89 10 3A */ slwi r9, r4, 2 /* 8016E338 00169F98 3C E0 00 01 */ lis r7, 0x0000FFFF@ha /* 8016E33C 00169F9C 2C 03 00 07 */ cmpwi r3, 7 /* 8016E340 00169FA0 7D 00 4A 14 */ add r8, r0, r9 /* 8016E344 00169FA4 90 68 00 10 */ stw r3, 0x10(r8) /* 8016E348 00169FA8 38 07 FF FF */ addi r0, r7, 0x0000FFFF@l /* 8016E34C 00169FAC 80 ED 9F 08 */ lwz r7, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E350 00169FB0 7C E7 4A 14 */ add r7, r7, r9 /* 8016E354 00169FB4 90 67 00 20 */ stw r3, 0x20(r7) /* 8016E358 00169FB8 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E35C 00169FBC 7C 63 4A 14 */ add r3, r3, r9 /* 8016E360 00169FC0 90 83 00 40 */ stw r4, 0x40(r3) /* 8016E364 00169FC4 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E368 00169FC8 7C 63 4A 14 */ add r3, r3, r9 /* 8016E36C 00169FCC 90 A3 00 50 */ stw r5, 0x50(r3) /* 8016E370 00169FD0 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E374 00169FD4 7C 63 4A 14 */ add r3, r3, r9 /* 8016E378 00169FD8 90 C3 00 30 */ stw r6, 0x30(r3) /* 8016E37C 00169FDC 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E380 00169FE0 7C 03 49 2E */ stwx r0, r3, r9 /* 8016E384 00169FE4 4D 82 00 20 */ beqlr /* 8016E388 00169FE8 38 60 00 03 */ li r3, 3 /* 8016E38C 00169FEC 4B FF FF 58 */ b func_8016E2E4 /* 8016E390 00169FF0 4E 80 00 20 */ blr .global func_8016E394 func_8016E394: /* 8016E394 00169FF4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8016E398 00169FF8 7C 08 02 A6 */ mflr r0 /* 8016E39C 00169FFC 54 68 10 3A */ slwi r8, r3, 2 /* 8016E3A0 0016A000 38 E0 00 0B */ li r7, 0xb /* 8016E3A4 0016A004 90 01 00 24 */ stw r0, 0x24(r1) /* 8016E3A8 0016A008 38 60 00 01 */ li r3, 1 /* 8016E3AC 0016A00C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8016E3B0 0016A010 93 C1 00 18 */ stw r30, 0x18(r1) /* 8016E3B4 0016A014 7C DE 33 78 */ mr r30, r6 /* 8016E3B8 0016A018 93 A1 00 14 */ stw r29, 0x14(r1) /* 8016E3BC 0016A01C 7C BD 2B 78 */ mr r29, r5 /* 8016E3C0 0016A020 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E3C4 0016A024 7C A0 42 14 */ add r5, r0, r8 /* 8016E3C8 0016A028 38 00 00 00 */ li r0, 0 /* 8016E3CC 0016A02C 90 E5 00 10 */ stw r7, 0x10(r5) /* 8016E3D0 0016A030 38 A0 00 24 */ li r5, 0x24 /* 8016E3D4 0016A034 80 CD 9F 08 */ lwz r6, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E3D8 0016A038 7C C6 42 14 */ add r6, r6, r8 /* 8016E3DC 0016A03C 83 E6 00 60 */ lwz r31, 0x60(r6) /* 8016E3E0 0016A040 98 7F 00 00 */ stb r3, 0(r31) /* 8016E3E4 0016A044 98 1F 00 01 */ stb r0, 1(r31) /* 8016E3E8 0016A048 98 1F 00 02 */ stb r0, 2(r31) /* 8016E3EC 0016A04C 98 1F 00 03 */ stb r0, 3(r31) /* 8016E3F0 0016A050 3B FF 00 04 */ addi r31, r31, 4 /* 8016E3F4 0016A054 7F E3 FB 78 */ mr r3, r31 /* 8016E3F8 0016A058 4B E9 5C 09 */ bl memcpy /* 8016E3FC 0016A05C 7F A4 EB 78 */ mr r4, r29 /* 8016E400 0016A060 7F C5 F3 78 */ mr r5, r30 /* 8016E404 0016A064 38 7F 00 24 */ addi r3, r31, 0x24 /* 8016E408 0016A068 4B E9 5B F9 */ bl memcpy /* 8016E40C 0016A06C 38 60 00 0B */ li r3, 0xb /* 8016E410 0016A070 4B FF FE D5 */ bl func_8016E2E4 /* 8016E414 0016A074 80 01 00 24 */ lwz r0, 0x24(r1) /* 8016E418 0016A078 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8016E41C 0016A07C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8016E420 0016A080 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8016E424 0016A084 7C 08 03 A6 */ mtlr r0 /* 8016E428 0016A088 38 21 00 20 */ addi r1, r1, 0x20 /* 8016E42C 0016A08C 4E 80 00 20 */ blr .global func_8016E430 func_8016E430: /* 8016E430 0016A090 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E434 0016A094 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 8016E438 0016A098 7C 64 02 14 */ add r3, r4, r0 /* 8016E43C 0016A09C 80 63 00 10 */ lwz r3, 0x10(r3) /* 8016E440 0016A0A0 4E 80 00 20 */ blr .global func_8016E444 func_8016E444: /* 8016E444 0016A0A4 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E448 0016A0A8 38 80 00 01 */ li r4, 1 /* 8016E44C 0016A0AC 7C 60 1A 14 */ add r3, r0, r3 /* 8016E450 0016A0B0 98 83 00 78 */ stb r4, 0x78(r3) /* 8016E454 0016A0B4 4E 80 00 20 */ blr .global func_8016E458 func_8016E458: /* 8016E458 0016A0B8 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E45C 0016A0BC 38 A0 00 01 */ li r5, 1 /* 8016E460 0016A0C0 7C 80 1A 14 */ add r4, r0, r3 /* 8016E464 0016A0C4 98 A4 00 7C */ stb r5, 0x7c(r4) /* 8016E468 0016A0C8 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E46C 0016A0CC 7C 60 1A 14 */ add r3, r0, r3 /* 8016E470 0016A0D0 98 A3 00 80 */ stb r5, 0x80(r3) /* 8016E474 0016A0D4 4E 80 00 20 */ blr .global VMBASEGetVirtualAddrFromPageInMRAM VMBASEGetVirtualAddrFromPageInMRAM: /* 8016E478 0016A0D8 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E47C 0016A0DC 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 8016E480 0016A0E0 7C 64 00 2E */ lwzx r3, r4, r0 /* 8016E484 0016A0E4 4E 80 00 20 */ blr .global func_8016E488 func_8016E488: /* 8016E488 0016A0E8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8016E48C 0016A0EC 7C 08 02 A6 */ mflr r0 /* 8016E490 0016A0F0 38 80 05 14 */ li r4, 0x514 /* 8016E494 0016A0F4 90 01 00 14 */ stw r0, 0x14(r1) /* 8016E498 0016A0F8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8016E49C 0016A0FC 93 C1 00 08 */ stw r30, 8(r1) /* 8016E4A0 0016A100 7C 7E 1B 78 */ mr r30, r3 /* 8016E4A4 0016A104 90 6D 9F 08 */ stw r3, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E4A8 0016A108 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 8016E4AC 0016A10C 48 06 C7 E9 */ bl func_801DAC94 /* 8016E4B0 0016A110 7C 7F 1B 78 */ mr r31, r3 /* 8016E4B4 0016A114 38 80 00 00 */ li r4, 0 /* 8016E4B8 0016A118 38 A0 05 14 */ li r5, 0x514 /* 8016E4BC 0016A11C 4B E9 5C 49 */ bl memset /* 8016E4C0 0016A120 38 80 00 00 */ li r4, 0 /* 8016E4C4 0016A124 38 00 00 FF */ li r0, 0xff /* 8016E4C8 0016A128 90 9E 00 00 */ stw r4, 0(r30) /* 8016E4CC 0016A12C 3C A0 80 49 */ lis r5, lbl_8048CDD8@ha /* 8016E4D0 0016A130 7F C3 F3 78 */ mr r3, r30 /* 8016E4D4 0016A134 90 9E 00 10 */ stw r4, 0x10(r30) /* 8016E4D8 0016A138 90 9E 00 20 */ stw r4, 0x20(r30) /* 8016E4DC 0016A13C 90 9E 00 30 */ stw r4, 0x30(r30) /* 8016E4E0 0016A140 90 1E 00 40 */ stw r0, 0x40(r30) /* 8016E4E4 0016A144 90 9E 00 50 */ stw r4, 0x50(r30) /* 8016E4E8 0016A148 94 85 CD D8 */ stwu r4, lbl_8048CDD8@l(r5) /* 8016E4EC 0016A14C 98 9E 00 74 */ stb r4, 0x74(r30) /* 8016E4F0 0016A150 98 9E 00 78 */ stb r4, 0x78(r30) /* 8016E4F4 0016A154 98 9E 00 7C */ stb r4, 0x7c(r30) /* 8016E4F8 0016A158 98 9E 00 80 */ stb r4, 0x80(r30) /* 8016E4FC 0016A15C 93 FE 00 60 */ stw r31, 0x60(r30) /* 8016E500 0016A160 3B FF 01 04 */ addi r31, r31, 0x104 /* 8016E504 0016A164 90 9E 00 04 */ stw r4, 4(r30) /* 8016E508 0016A168 90 9E 00 14 */ stw r4, 0x14(r30) /* 8016E50C 0016A16C 90 9E 00 24 */ stw r4, 0x24(r30) /* 8016E510 0016A170 90 9E 00 34 */ stw r4, 0x34(r30) /* 8016E514 0016A174 90 1E 00 44 */ stw r0, 0x44(r30) /* 8016E518 0016A178 90 9E 00 54 */ stw r4, 0x54(r30) /* 8016E51C 0016A17C 90 85 00 04 */ stw r4, 4(r5) /* 8016E520 0016A180 98 9E 00 75 */ stb r4, 0x75(r30) /* 8016E524 0016A184 98 9E 00 79 */ stb r4, 0x79(r30) /* 8016E528 0016A188 98 9E 00 7D */ stb r4, 0x7d(r30) /* 8016E52C 0016A18C 98 9E 00 81 */ stb r4, 0x81(r30) /* 8016E530 0016A190 93 FE 00 64 */ stw r31, 0x64(r30) /* 8016E534 0016A194 3B FF 01 04 */ addi r31, r31, 0x104 /* 8016E538 0016A198 90 9E 00 08 */ stw r4, 8(r30) /* 8016E53C 0016A19C 90 9E 00 18 */ stw r4, 0x18(r30) /* 8016E540 0016A1A0 90 9E 00 28 */ stw r4, 0x28(r30) /* 8016E544 0016A1A4 90 9E 00 38 */ stw r4, 0x38(r30) /* 8016E548 0016A1A8 90 1E 00 48 */ stw r0, 0x48(r30) /* 8016E54C 0016A1AC 90 9E 00 58 */ stw r4, 0x58(r30) /* 8016E550 0016A1B0 90 85 00 08 */ stw r4, 8(r5) /* 8016E554 0016A1B4 98 9E 00 76 */ stb r4, 0x76(r30) /* 8016E558 0016A1B8 98 9E 00 7A */ stb r4, 0x7a(r30) /* 8016E55C 0016A1BC 98 9E 00 7E */ stb r4, 0x7e(r30) /* 8016E560 0016A1C0 98 9E 00 82 */ stb r4, 0x82(r30) /* 8016E564 0016A1C4 93 FE 00 68 */ stw r31, 0x68(r30) /* 8016E568 0016A1C8 3B FF 01 04 */ addi r31, r31, 0x104 /* 8016E56C 0016A1CC 90 9E 00 0C */ stw r4, 0xc(r30) /* 8016E570 0016A1D0 90 9E 00 1C */ stw r4, 0x1c(r30) /* 8016E574 0016A1D4 90 9E 00 2C */ stw r4, 0x2c(r30) /* 8016E578 0016A1D8 90 9E 00 3C */ stw r4, 0x3c(r30) /* 8016E57C 0016A1DC 90 1E 00 4C */ stw r0, 0x4c(r30) /* 8016E580 0016A1E0 90 9E 00 5C */ stw r4, 0x5c(r30) /* 8016E584 0016A1E4 90 85 00 0C */ stw r4, 0xc(r5) /* 8016E588 0016A1E8 98 9E 00 77 */ stb r4, 0x77(r30) /* 8016E58C 0016A1EC 98 9E 00 7B */ stb r4, 0x7b(r30) /* 8016E590 0016A1F0 98 9E 00 7F */ stb r4, 0x7f(r30) /* 8016E594 0016A1F4 98 9E 00 83 */ stb r4, 0x83(r30) /* 8016E598 0016A1F8 93 FE 00 6C */ stw r31, 0x6c(r30) /* 8016E59C 0016A1FC 3B FF 01 04 */ addi r31, r31, 0x104 /* 8016E5A0 0016A200 93 FE 00 70 */ stw r31, 0x70(r30) /* 8016E5A4 0016A204 90 8D 9F 0C */ stw r4, lbl_8063F1CC-_SDA_BASE_(r13) /* 8016E5A8 0016A208 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8016E5AC 0016A20C 83 C1 00 08 */ lwz r30, 8(r1) /* 8016E5B0 0016A210 80 01 00 14 */ lwz r0, 0x14(r1) /* 8016E5B4 0016A214 7C 08 03 A6 */ mtlr r0 /* 8016E5B8 0016A218 38 21 00 10 */ addi r1, r1, 0x10 /* 8016E5BC 0016A21C 4E 80 00 20 */ blr .global func_8016E5C0 func_8016E5C0: /* 8016E5C0 0016A220 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8016E5C4 0016A224 7C 08 02 A6 */ mflr r0 /* 8016E5C8 0016A228 2C 03 00 00 */ cmpwi r3, 0 /* 8016E5CC 0016A22C 90 01 00 14 */ stw r0, 0x14(r1) /* 8016E5D0 0016A230 93 E1 00 0C */ stw r31, 0xc(r1) /* 8016E5D4 0016A234 7C 9F 23 78 */ mr r31, r4 /* 8016E5D8 0016A238 93 C1 00 08 */ stw r30, 8(r1) /* 8016E5DC 0016A23C 7C 7E 1B 78 */ mr r30, r3 /* 8016E5E0 0016A240 41 82 00 20 */ beq lbl_8016E600 /* 8016E5E4 0016A244 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 8016E5E8 0016A248 80 9E 00 60 */ lwz r4, 0x60(r30) /* 8016E5EC 0016A24C 48 06 C7 5D */ bl func_801DAD48 /* 8016E5F0 0016A250 2C 1F 00 00 */ cmpwi r31, 0 /* 8016E5F4 0016A254 40 81 00 0C */ ble lbl_8016E600 /* 8016E5F8 0016A258 7F C3 F3 78 */ mr r3, r30 /* 8016E5FC 0016A25C 48 06 C4 BD */ bl __dl__FPv lbl_8016E600: /* 8016E600 0016A260 7F C3 F3 78 */ mr r3, r30 /* 8016E604 0016A264 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8016E608 0016A268 83 C1 00 08 */ lwz r30, 8(r1) /* 8016E60C 0016A26C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8016E610 0016A270 7C 08 03 A6 */ mtlr r0 /* 8016E614 0016A274 38 21 00 10 */ addi r1, r1, 0x10 /* 8016E618 0016A278 4E 80 00 20 */ blr lbl_8016E61C: #__blank? /* 8016E61C 0016A27C 94 21 FF 90 */ stwu r1, -0x70(r1) /* 8016E620 0016A280 40 86 00 24 */ bne cr1, lbl_8016E644 /* 8016E624 0016A284 D8 21 00 28 */ stfd f1, 0x28(r1) /* 8016E628 0016A288 D8 41 00 30 */ stfd f2, 0x30(r1) /* 8016E62C 0016A28C D8 61 00 38 */ stfd f3, 0x38(r1) /* 8016E630 0016A290 D8 81 00 40 */ stfd f4, 0x40(r1) /* 8016E634 0016A294 D8 A1 00 48 */ stfd f5, 0x48(r1) /* 8016E638 0016A298 D8 C1 00 50 */ stfd f6, 0x50(r1) /* 8016E63C 0016A29C D8 E1 00 58 */ stfd f7, 0x58(r1) /* 8016E640 0016A2A0 D9 01 00 60 */ stfd f8, 0x60(r1) lbl_8016E644: /* 8016E644 0016A2A4 90 61 00 08 */ stw r3, 8(r1) /* 8016E648 0016A2A8 90 81 00 0C */ stw r4, 0xc(r1) /* 8016E64C 0016A2AC 90 A1 00 10 */ stw r5, 0x10(r1) /* 8016E650 0016A2B0 90 C1 00 14 */ stw r6, 0x14(r1) /* 8016E654 0016A2B4 90 E1 00 18 */ stw r7, 0x18(r1) /* 8016E658 0016A2B8 91 01 00 1C */ stw r8, 0x1c(r1) /* 8016E65C 0016A2BC 91 21 00 20 */ stw r9, 0x20(r1) /* 8016E660 0016A2C0 91 41 00 24 */ stw r10, 0x24(r1) /* 8016E664 0016A2C4 38 21 00 70 */ addi r1, r1, 0x70 /* 8016E668 0016A2C8 4E 80 00 20 */ blr .global func_8016E66C func_8016E66C: /* 8016E66C 0016A2CC 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E670 0016A2D0 48 00 00 04 */ b lbl_8016E674 lbl_8016E674: /* 8016E674 0016A2D4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8016E678 0016A2D8 7C 08 02 A6 */ mflr r0 /* 8016E67C 0016A2DC 90 01 00 14 */ stw r0, 0x14(r1) /* 8016E680 0016A2E0 48 26 B7 89 */ bl func_803D9E08 /* 8016E684 0016A2E4 2C 03 00 00 */ cmpwi r3, 0 /* 8016E688 0016A2E8 41 82 00 14 */ beq lbl_8016E69C /* 8016E68C 0016A2EC 38 60 00 06 */ li r3, 6 /* 8016E690 0016A2F0 4B FF FC 55 */ bl func_8016E2E4 /* 8016E694 0016A2F4 38 60 00 06 */ li r3, 6 /* 8016E698 0016A2F8 48 00 00 08 */ b lbl_8016E6A0 lbl_8016E69C: /* 8016E69C 0016A2FC 80 6D 9F 0C */ lwz r3, lbl_8063F1CC-_SDA_BASE_(r13) lbl_8016E6A0: /* 8016E6A0 0016A300 80 01 00 14 */ lwz r0, 0x14(r1) /* 8016E6A4 0016A304 7C 08 03 A6 */ mtlr r0 /* 8016E6A8 0016A308 38 21 00 10 */ addi r1, r1, 0x10 /* 8016E6AC 0016A30C 4E 80 00 20 */ blr .global func_8016E6B0 func_8016E6B0: /* 8016E6B0 0016A310 80 0D 9F 0C */ lwz r0, lbl_8063F1CC-_SDA_BASE_(r13) /* 8016E6B4 0016A314 2C 00 00 00 */ cmpwi r0, 0 /* 8016E6B8 0016A318 41 82 00 4C */ beq lbl_8016E704 /* 8016E6BC 0016A31C 34 00 FF FF */ addic. r0, r0, -1 /* 8016E6C0 0016A320 3D 00 80 49 */ lis r8, lbl_8048CDD8@ha /* 8016E6C4 0016A324 80 68 CD D8 */ lwz r3, lbl_8048CDD8@l(r8) /* 8016E6C8 0016A328 90 0D 9F 0C */ stw r0, lbl_8063F1CC-_SDA_BASE_(r13) /* 8016E6CC 0016A32C 41 82 00 2C */ beq lbl_8016E6F8 /* 8016E6D0 0016A330 38 E8 CD D8 */ addi r7, r8, -12840 /* 8016E6D4 0016A334 38 00 00 00 */ li r0, 0 /* 8016E6D8 0016A338 80 C7 00 04 */ lwz r6, 4(r7) /* 8016E6DC 0016A33C 80 A7 00 08 */ lwz r5, 8(r7) /* 8016E6E0 0016A340 80 87 00 0C */ lwz r4, 0xc(r7) /* 8016E6E4 0016A344 90 C8 CD D8 */ stw r6, -0x3228(r8) /* 8016E6E8 0016A348 90 A7 00 04 */ stw r5, 4(r7) /* 8016E6EC 0016A34C 90 87 00 08 */ stw r4, 8(r7) /* 8016E6F0 0016A350 90 07 00 0C */ stw r0, 0xc(r7) /* 8016E6F4 0016A354 4E 80 00 20 */ blr lbl_8016E6F8: /* 8016E6F8 0016A358 38 00 00 00 */ li r0, 0 /* 8016E6FC 0016A35C 90 08 CD D8 */ stw r0, -0x3228(r8) /* 8016E700 0016A360 4E 80 00 20 */ blr lbl_8016E704: /* 8016E704 0016A364 38 60 00 00 */ li r3, 0 /* 8016E708 0016A368 4E 80 00 20 */ blr .global cPlayer_PostPhysicsUpdate cPlayer_PostPhysicsUpdate: /* 8016E70C 0016A36C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8016E710 0016A370 7C 08 02 A6 */ mflr r0 /* 8016E714 0016A374 90 01 00 14 */ stw r0, 0x14(r1) /* 8016E718 0016A378 48 00 00 15 */ bl func_8016E72C /* 8016E71C 0016A37C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8016E720 0016A380 7C 08 03 A6 */ mtlr r0 /* 8016E724 0016A384 38 21 00 10 */ addi r1, r1, 0x10 /* 8016E728 0016A388 4E 80 00 20 */ blr .global func_8016E72C func_8016E72C: /* 8016E72C 0016A38C 94 21 FF 90 */ stwu r1, -0x70(r1) /* 8016E730 0016A390 7C 08 02 A6 */ mflr r0 /* 8016E734 0016A394 90 01 00 74 */ stw r0, 0x74(r1) /* 8016E738 0016A398 39 61 00 70 */ addi r11, r1, 0x70 /* 8016E73C 0016A39C 48 05 89 B9 */ bl __save_gpr /* 8016E740 0016A3A0 7C 6F 1B 78 */ mr r15, r3 /* 8016E744 0016A3A4 4B EC 76 59 */ bl func_80035D9C /* 8016E748 0016A3A8 4B ED 6E 49 */ bl func_80045590 /* 8016E74C 0016A3AC 7C 7C 1B 78 */ mr r28, r3 /* 8016E750 0016A3B0 4B E9 C3 ED */ bl func_8000AB3C /* 8016E754 0016A3B4 7C 6E 1B 78 */ mr r14, r3 /* 8016E758 0016A3B8 4B FA E2 1D */ bl func_8011C974 /* 8016E75C 0016A3BC 80 03 00 10 */ lwz r0, 0x10(r3) /* 8016E760 0016A3C0 7C 7D 1B 78 */ mr r29, r3 /* 8016E764 0016A3C4 3A 00 00 00 */ li r16, 0 /* 8016E768 0016A3C8 28 00 03 EF */ cmplwi r0, 0x3ef /* 8016E76C 0016A3CC 40 82 00 34 */ bne lbl_8016E7A0 /* 8016E770 0016A3D0 48 0B 50 C1 */ bl func_80223830 /* 8016E774 0016A3D4 3C 80 00 03 */ lis r4, 0x000343FD@ha /* 8016E778 0016A3D8 80 A3 00 00 */ lwz r5, 0(r3) /* 8016E77C 0016A3DC 38 04 43 FD */ addi r0, r4, 0x000343FD@l /* 8016E780 0016A3E0 7C 85 01 D6 */ mullw r4, r5, r0 /* 8016E784 0016A3E4 3C 84 00 27 */ addis r4, r4, 0x27 /* 8016E788 0016A3E8 38 84 9E C3 */ addi r4, r4, -24893 /* 8016E78C 0016A3EC 54 80 87 3E */ rlwinm r0, r4, 0x10, 0x1c, 0x1f /* 8016E790 0016A3F0 90 83 00 00 */ stw r4, 0(r3) /* 8016E794 0016A3F4 2C 00 00 04 */ cmpwi r0, 4 /* 8016E798 0016A3F8 40 80 00 08 */ bge lbl_8016E7A0 /* 8016E79C 0016A3FC 3A 00 00 0E */ li r16, 0xe lbl_8016E7A0: /* 8016E7A0 0016A400 7D C3 73 78 */ mr r3, r14 /* 8016E7A4 0016A404 4B E9 C3 8D */ bl func_8000AB30 /* 8016E7A8 0016A408 54 6E 06 3E */ clrlwi r14, r3, 0x18 /* 8016E7AC 0016A40C 38 7D 00 8A */ addi r3, r29, 0x8a /* 8016E7B0 0016A410 48 00 07 A1 */ bl func_8016EF50 /* 8016E7B4 0016A414 80 8F 00 00 */ lwz r4, 0(r15) /* 8016E7B8 0016A418 7C 66 1B 78 */ mr r6, r3 /* 8016E7BC 0016A41C 7E 05 83 78 */ mr r5, r16 /* 8016E7C0 0016A420 7D C7 73 78 */ mr r7, r14 /* 8016E7C4 0016A424 38 60 00 00 */ li r3, 0 /* 8016E7C8 0016A428 48 26 B9 AD */ bl func_803DA174 /* 8016E7CC 0016A42C 90 6F 00 04 */ stw r3, 4(r15) /* 8016E7D0 0016A430 3B C0 00 02 */ li r30, 2 /* 8016E7D4 0016A434 80 1D 00 08 */ lwz r0, 8(r29) /* 8016E7D8 0016A438 2C 00 00 04 */ cmpwi r0, 4 /* 8016E7DC 0016A43C 40 82 00 08 */ bne lbl_8016E7E4 /* 8016E7E0 0016A440 3B C0 00 04 */ li r30, 4 lbl_8016E7E4: /* 8016E7E4 0016A444 88 1D 09 91 */ lbz r0, 0x991(r29) /* 8016E7E8 0016A448 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 8016E7EC 0016A44C 40 82 00 0C */ bne lbl_8016E7F8 /* 8016E7F0 0016A450 38 60 00 00 */ li r3, 0 /* 8016E7F4 0016A454 48 00 04 B4 */ b lbl_8016ECA8 lbl_8016E7F8: /* 8016E7F8 0016A458 3E E0 80 49 */ lis r23, lbl_8048DFC8@ha /* 8016E7FC 0016A45C 3A 60 00 00 */ li r19, 0 /* 8016E800 0016A460 3A F7 DF C8 */ addi r23, r23, lbl_8048DFC8@l /* 8016E804 0016A464 3B 20 00 00 */ li r25, 0 /* 8016E808 0016A468 3B 00 00 00 */ li r24, 0 /* 8016E80C 0016A46C 39 C0 00 00 */ li r14, 0 /* 8016E810 0016A470 48 00 02 F4 */ b lbl_8016EB04 lbl_8016E814: /* 8016E814 0016A474 56 64 07 FF */ clrlwi. r4, r19, 0x1f /* 8016E818 0016A478 41 82 00 18 */ beq lbl_8016E830 /* 8016E81C 0016A47C 56 60 FF FE */ rlwinm r0, r19, 0x1f, 0x1f, 0x1f /* 8016E820 0016A480 1C 00 06 EC */ mulli r0, r0, 0x6ec /* 8016E824 0016A484 7C 7D 02 14 */ add r3, r29, r0 /* 8016E828 0016A488 3B 63 12 24 */ addi r27, r3, 0x1224 /* 8016E82C 0016A48C 48 00 00 14 */ b lbl_8016E840 lbl_8016E830: /* 8016E830 0016A490 56 60 FF FE */ rlwinm r0, r19, 0x1f, 0x1f, 0x1f /* 8016E834 0016A494 1C 00 06 EC */ mulli r0, r0, 0x6ec /* 8016E838 0016A498 7C 7D 02 14 */ add r3, r29, r0 /* 8016E83C 0016A49C 3B 63 04 4C */ addi r27, r3, 0x44c lbl_8016E840: /* 8016E840 0016A4A0 2C 04 00 00 */ cmpwi r4, 0 /* 8016E844 0016A4A4 41 82 00 10 */ beq lbl_8016E854 /* 8016E848 0016A4A8 7C 7D 02 14 */ add r3, r29, r0 /* 8016E84C 0016A4AC 3B 43 2D D4 */ addi r26, r3, 0x2dd4 /* 8016E850 0016A4B0 48 00 00 0C */ b lbl_8016E85C lbl_8016E854: /* 8016E854 0016A4B4 7C 7D 02 14 */ add r3, r29, r0 /* 8016E858 0016A4B8 3B 43 1F FC */ addi r26, r3, 0x1ffc lbl_8016E85C: /* 8016E85C 0016A4BC 8A 9D 00 19 */ lbz r20, 0x19(r29) /* 8016E860 0016A4C0 2C 14 00 00 */ cmpwi r20, 0 /* 8016E864 0016A4C4 40 82 00 08 */ bne lbl_8016E86C /* 8016E868 0016A4C8 3A 80 00 06 */ li r20, 6 lbl_8016E86C: /* 8016E86C 0016A4CC 38 61 00 08 */ addi r3, r1, 8 /* 8016E870 0016A4D0 38 9B 00 04 */ addi r4, r27, 4 /* 8016E874 0016A4D4 38 A0 00 0C */ li r5, 0xc /* 8016E878 0016A4D8 48 00 86 3D */ bl func_80176EB4 /* 8016E87C 0016A4DC A0 1B 00 04 */ lhz r0, 4(r27) /* 8016E880 0016A4E0 2C 00 00 00 */ cmpwi r0, 0 /* 8016E884 0016A4E4 40 82 00 18 */ bne lbl_8016E89C /* 8016E888 0016A4E8 38 61 00 08 */ addi r3, r1, 8 /* 8016E88C 0016A4EC 38 8D 83 68 */ addi r4, r13, lbl_8063D628-_SDA_BASE_ /* 8016E890 0016A4F0 38 A0 00 0C */ li r5, 0xc /* 8016E894 0016A4F4 48 00 86 21 */ bl func_80176EB4 /* 8016E898 0016A4F8 48 00 00 14 */ b lbl_8016E8AC lbl_8016E89C: /* 8016E89C 0016A4FC 38 61 00 08 */ addi r3, r1, 8 /* 8016E8A0 0016A500 38 9B 00 04 */ addi r4, r27, 4 /* 8016E8A4 0016A504 38 A0 00 0C */ li r5, 0xc /* 8016E8A8 0016A508 48 00 86 0D */ bl func_80176EB4 lbl_8016E8AC: /* 8016E8AC 0016A50C 80 0F 00 04 */ lwz r0, 4(r15) /* 8016E8B0 0016A510 38 81 00 08 */ addi r4, r1, 8 /* 8016E8B4 0016A514 7C 60 CA 14 */ add r3, r0, r25 /* 8016E8B8 0016A518 80 63 00 D8 */ lwz r3, 0xd8(r3) /* 8016E8BC 0016A51C 48 26 B7 B9 */ bl func_803DA074 /* 8016E8C0 0016A520 80 0F 00 04 */ lwz r0, 4(r15) /* 8016E8C4 0016A524 38 81 00 08 */ addi r4, r1, 8 /* 8016E8C8 0016A528 7C 60 C2 14 */ add r3, r0, r24 /* 8016E8CC 0016A52C 38 63 00 3C */ addi r3, r3, 0x3c /* 8016E8D0 0016A530 48 27 03 55 */ bl func_803DEC24 /* 8016E8D4 0016A534 99 D7 00 00 */ stb r14, 0(r23) /* 8016E8D8 0016A538 38 00 00 01 */ li r0, 1 /* 8016E8DC 0016A53C 3A 40 00 00 */ li r18, 0 /* 8016E8E0 0016A540 98 17 00 01 */ stb r0, 1(r23) /* 8016E8E4 0016A544 38 00 00 02 */ li r0, 2 /* 8016E8E8 0016A548 98 17 00 02 */ stb r0, 2(r23) /* 8016E8EC 0016A54C 38 00 00 03 */ li r0, 3 /* 8016E8F0 0016A550 98 17 00 03 */ stb r0, 3(r23) /* 8016E8F4 0016A554 38 00 00 04 */ li r0, 4 /* 8016E8F8 0016A558 98 17 00 04 */ stb r0, 4(r23) /* 8016E8FC 0016A55C 38 00 00 05 */ li r0, 5 /* 8016E900 0016A560 98 17 00 05 */ stb r0, 5(r23) /* 8016E904 0016A564 88 1D 00 1B */ lbz r0, 0x1b(r29) /* 8016E908 0016A568 28 00 00 01 */ cmplwi r0, 1 /* 8016E90C 0016A56C 40 82 00 B8 */ bne lbl_8016E9C4 /* 8016E910 0016A570 2C 13 00 01 */ cmpwi r19, 1 /* 8016E914 0016A574 41 82 00 0C */ beq lbl_8016E920 /* 8016E918 0016A578 2C 13 00 03 */ cmpwi r19, 3 /* 8016E91C 0016A57C 40 82 00 A8 */ bne lbl_8016E9C4 lbl_8016E920: /* 8016E920 0016A580 80 1D 00 10 */ lwz r0, 0x10(r29) /* 8016E924 0016A584 7E 92 A3 78 */ mr r18, r20 /* 8016E928 0016A588 28 00 03 EF */ cmplwi r0, 0x3ef /* 8016E92C 0016A58C 40 82 00 6C */ bne lbl_8016E998 /* 8016E930 0016A590 88 1D 00 14 */ lbz r0, 0x14(r29) /* 8016E934 0016A594 28 00 00 0B */ cmplwi r0, 0xb /* 8016E938 0016A598 40 82 00 60 */ bne lbl_8016E998 /* 8016E93C 0016A59C A0 7D 00 16 */ lhz r3, 0x16(r29) /* 8016E940 0016A5A0 28 03 00 0A */ cmplwi r3, 0xa /* 8016E944 0016A5A4 40 80 00 0C */ bge lbl_8016E950 /* 8016E948 0016A5A8 3A 40 00 01 */ li r18, 1 /* 8016E94C 0016A5AC 48 00 00 24 */ b lbl_8016E970 lbl_8016E950: /* 8016E950 0016A5B0 28 03 00 1E */ cmplwi r3, 0x1e /* 8016E954 0016A5B4 40 80 00 0C */ bge lbl_8016E960 /* 8016E958 0016A5B8 3A 40 00 02 */ li r18, 2 /* 8016E95C 0016A5BC 48 00 00 14 */ b lbl_8016E970 lbl_8016E960: /* 8016E960 0016A5C0 38 00 00 28 */ li r0, 0x28 /* 8016E964 0016A5C4 7C 00 18 10 */ subfc r0, r0, r3 /* 8016E968 0016A5C8 7C 60 01 10 */ subfe r3, r0, r0 /* 8016E96C 0016A5CC 3A 43 00 04 */ addi r18, r3, 4 lbl_8016E970: /* 8016E970 0016A5D0 56 40 06 3E */ clrlwi r0, r18, 0x18 /* 8016E974 0016A5D4 28 00 00 04 */ cmplwi r0, 4 /* 8016E978 0016A5D8 40 81 00 08 */ ble lbl_8016E980 /* 8016E97C 0016A5DC 3A 40 00 04 */ li r18, 4 lbl_8016E980: /* 8016E980 0016A5E0 80 1D 00 08 */ lwz r0, 8(r29) /* 8016E984 0016A5E4 2C 00 00 01 */ cmpwi r0, 1 /* 8016E988 0016A5E8 40 82 00 10 */ bne lbl_8016E998 /* 8016E98C 0016A5EC 56 43 06 3E */ clrlwi r3, r18, 0x18 /* 8016E990 0016A5F0 38 03 00 01 */ addi r0, r3, 1 /* 8016E994 0016A5F4 54 12 06 3E */ clrlwi r18, r0, 0x18 lbl_8016E998: /* 8016E998 0016A5F8 48 05 2D 51 */ bl func_801C16E8 /* 8016E99C 0016A5FC 2C 03 00 00 */ cmpwi r3, 0 /* 8016E9A0 0016A600 40 82 00 24 */ bne lbl_8016E9C4 /* 8016E9A4 0016A604 88 1D 00 14 */ lbz r0, 0x14(r29) /* 8016E9A8 0016A608 28 00 00 04 */ cmplwi r0, 4 /* 8016E9AC 0016A60C 41 82 00 18 */ beq lbl_8016E9C4 /* 8016E9B0 0016A610 80 DD 00 08 */ lwz r6, 8(r29) /* 8016E9B4 0016A614 7F 63 DB 78 */ mr r3, r27 /* 8016E9B8 0016A618 7E E4 BB 78 */ mr r4, r23 /* 8016E9BC 0016A61C 56 45 06 3E */ clrlwi r5, r18, 0x18 /* 8016E9C0 0016A620 48 00 FB 2D */ bl func_8017E4EC lbl_8016E9C4: /* 8016E9C4 0016A624 88 1D 00 14 */ lbz r0, 0x14(r29) /* 8016E9C8 0016A628 28 00 00 03 */ cmplwi r0, 3 /* 8016E9CC 0016A62C 40 82 00 A4 */ bne lbl_8016EA70 /* 8016E9D0 0016A630 88 1D 00 18 */ lbz r0, 0x18(r29) /* 8016E9D4 0016A634 28 00 00 01 */ cmplwi r0, 1 /* 8016E9D8 0016A638 40 82 00 98 */ bne lbl_8016EA70 /* 8016E9DC 0016A63C 1E B4 00 8C */ mulli r21, r20, 0x8c /* 8016E9E0 0016A640 7E A3 AB 78 */ mr r3, r21 /* 8016E9E4 0016A644 48 06 C3 81 */ bl func_801DAD64 /* 8016E9E8 0016A648 7C 71 1B 78 */ mr r17, r3 /* 8016E9EC 0016A64C 7E FF BB 78 */ mr r31, r23 /* 8016E9F0 0016A650 7E 36 8B 78 */ mr r22, r17 /* 8016E9F4 0016A654 3A 00 00 00 */ li r16, 0 /* 8016E9F8 0016A658 48 00 00 34 */ b lbl_8016EA2C lbl_8016E9FC: /* 8016E9FC 0016A65C 88 1F 00 00 */ lbz r0, 0(r31) /* 8016EA00 0016A660 28 00 00 FF */ cmplwi r0, 0xff /* 8016EA04 0016A664 41 82 00 1C */ beq lbl_8016EA20 /* 8016EA08 0016A668 1C 00 00 8C */ mulli r0, r0, 0x8c /* 8016EA0C 0016A66C 7E C3 B3 78 */ mr r3, r22 /* 8016EA10 0016A670 38 A0 00 8C */ li r5, 0x8c /* 8016EA14 0016A674 7C 9B 02 14 */ add r4, r27, r0 /* 8016EA18 0016A678 38 84 01 FC */ addi r4, r4, 0x1fc /* 8016EA1C 0016A67C 4B E9 55 E5 */ bl memcpy lbl_8016EA20: /* 8016EA20 0016A680 3A D6 00 8C */ addi r22, r22, 0x8c /* 8016EA24 0016A684 3A 10 00 01 */ addi r16, r16, 1 /* 8016EA28 0016A688 3B FF 00 01 */ addi r31, r31, 1 lbl_8016EA2C: /* 8016EA2C 0016A68C 7C 10 A0 00 */ cmpw r16, r20 /* 8016EA30 0016A690 41 80 FF CC */ blt lbl_8016E9FC /* 8016EA34 0016A694 7E 24 8B 78 */ mr r4, r17 /* 8016EA38 0016A698 7E A5 AB 78 */ mr r5, r21 /* 8016EA3C 0016A69C 38 7A 01 FC */ addi r3, r26, 0x1fc /* 8016EA40 0016A6A0 4B E9 55 C1 */ bl memcpy /* 8016EA44 0016A6A4 7E 23 8B 78 */ mr r3, r17 /* 8016EA48 0016A6A8 48 06 C4 5D */ bl func_801DAEA4 /* 8016EA4C 0016A6AC 80 1D 00 08 */ lwz r0, 8(r29) /* 8016EA50 0016A6B0 2C 00 00 01 */ cmpwi r0, 1 /* 8016EA54 0016A6B4 41 82 00 0C */ beq lbl_8016EA60 /* 8016EA58 0016A6B8 2C 00 00 04 */ cmpwi r0, 4 /* 8016EA5C 0016A6BC 40 82 00 08 */ bne lbl_8016EA64 lbl_8016EA60: /* 8016EA60 0016A6C0 3A 80 00 02 */ li r20, 2 lbl_8016EA64: /* 8016EA64 0016A6C4 2C 00 00 02 */ cmpwi r0, 2 /* 8016EA68 0016A6C8 40 82 00 08 */ bne lbl_8016EA70 /* 8016EA6C 0016A6CC 3A 80 00 01 */ li r20, 1 lbl_8016EA70: /* 8016EA70 0016A6D0 7E F1 BB 78 */ mr r17, r23 /* 8016EA74 0016A6D4 3A 00 00 00 */ li r16, 0 /* 8016EA78 0016A6D8 48 00 00 74 */ b lbl_8016EAEC lbl_8016EA7C: /* 8016EA7C 0016A6DC 88 11 00 00 */ lbz r0, 0(r17) /* 8016EA80 0016A6E0 28 00 00 FF */ cmplwi r0, 0xff /* 8016EA84 0016A6E4 41 82 00 60 */ beq lbl_8016EAE4 /* 8016EA88 0016A6E8 1C 00 00 8C */ mulli r0, r0, 0x8c /* 8016EA8C 0016A6EC 7C 7B 02 14 */ add r3, r27, r0 /* 8016EA90 0016A6F0 38 63 01 FC */ addi r3, r3, 0x1fc /* 8016EA94 0016A6F4 88 03 00 8A */ lbz r0, 0x8a(r3) /* 8016EA98 0016A6F8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8016EA9C 0016A6FC 41 82 00 48 */ beq lbl_8016EAE4 /* 8016EAA0 0016A700 56 40 06 3F */ clrlwi. r0, r18, 0x18 /* 8016EAA4 0016A704 41 82 00 0C */ beq lbl_8016EAB0 /* 8016EAA8 0016A708 7C 10 00 00 */ cmpw r16, r0 /* 8016EAAC 0016A70C 40 80 00 38 */ bge lbl_8016EAE4 lbl_8016EAB0: /* 8016EAB0 0016A710 80 8F 00 08 */ lwz r4, 8(r15) /* 8016EAB4 0016A714 48 26 DC 95 */ bl func_803DC748 /* 8016EAB8 0016A718 80 6F 00 08 */ lwz r3, 8(r15) /* 8016EABC 0016A71C 38 80 00 05 */ li r4, 5 /* 8016EAC0 0016A720 38 A0 00 00 */ li r5, 0 /* 8016EAC4 0016A724 48 26 EF 19 */ bl func_803DD9DC /* 8016EAC8 0016A728 2C 03 00 00 */ cmpwi r3, 0 /* 8016EACC 0016A72C 41 82 00 18 */ beq lbl_8016EAE4 /* 8016EAD0 0016A730 80 0F 00 04 */ lwz r0, 4(r15) /* 8016EAD4 0016A734 80 8F 00 08 */ lwz r4, 8(r15) /* 8016EAD8 0016A738 7C 79 02 14 */ add r3, r25, r0 /* 8016EADC 0016A73C 80 63 00 04 */ lwz r3, 4(r3) /* 8016EAE0 0016A740 48 26 FD B1 */ bl func_803DE890 lbl_8016EAE4: /* 8016EAE4 0016A744 3A 10 00 01 */ addi r16, r16, 1 /* 8016EAE8 0016A748 3A 31 00 01 */ addi r17, r17, 1 lbl_8016EAEC: /* 8016EAEC 0016A74C 7C 10 A0 00 */ cmpw r16, r20 /* 8016EAF0 0016A750 41 80 FF 8C */ blt lbl_8016EA7C /* 8016EAF4 0016A754 3B 39 00 04 */ addi r25, r25, 4 /* 8016EAF8 0016A758 3B 18 00 2C */ addi r24, r24, 0x2c /* 8016EAFC 0016A75C 3A F7 00 06 */ addi r23, r23, 6 /* 8016EB00 0016A760 3A 73 00 01 */ addi r19, r19, 1 lbl_8016EB04: /* 8016EB04 0016A764 7C 13 F0 00 */ cmpw r19, r30 /* 8016EB08 0016A768 41 80 FD 0C */ blt lbl_8016E814 /* 8016EB0C 0016A76C 88 1D 00 14 */ lbz r0, 0x14(r29) /* 8016EB10 0016A770 28 00 00 0B */ cmplwi r0, 0xb /* 8016EB14 0016A774 40 82 00 1C */ bne lbl_8016EB30 /* 8016EB18 0016A778 A0 1D 00 16 */ lhz r0, 0x16(r29) /* 8016EB1C 0016A77C 28 00 00 01 */ cmplwi r0, 1 /* 8016EB20 0016A780 41 82 00 10 */ beq lbl_8016EB30 /* 8016EB24 0016A784 80 6F 00 04 */ lwz r3, 4(r15) /* 8016EB28 0016A788 80 63 00 04 */ lwz r3, 4(r3) /* 8016EB2C 0016A78C 4B FE 1D E5 */ bl func_80150910 lbl_8016EB30: /* 8016EB30 0016A790 80 1D 00 08 */ lwz r0, 8(r29) /* 8016EB34 0016A794 2C 00 00 03 */ cmpwi r0, 3 /* 8016EB38 0016A798 41 82 00 68 */ beq lbl_8016EBA0 /* 8016EB3C 0016A79C 40 80 00 14 */ bge lbl_8016EB50 /* 8016EB40 0016A7A0 2C 00 00 01 */ cmpwi r0, 1 /* 8016EB44 0016A7A4 41 82 00 18 */ beq lbl_8016EB5C /* 8016EB48 0016A7A8 40 80 00 2C */ bge lbl_8016EB74 /* 8016EB4C 0016A7AC 48 00 00 54 */ b lbl_8016EBA0 lbl_8016EB50: /* 8016EB50 0016A7B0 2C 00 00 05 */ cmpwi r0, 5 /* 8016EB54 0016A7B4 40 80 00 4C */ bge lbl_8016EBA0 /* 8016EB58 0016A7B8 48 00 00 34 */ b lbl_8016EB8C lbl_8016EB5C: /* 8016EB5C 0016A7BC 80 6F 00 00 */ lwz r3, 0(r15) /* 8016EB60 0016A7C0 38 00 00 01 */ li r0, 1 /* 8016EB64 0016A7C4 60 63 00 03 */ ori r3, r3, 3 /* 8016EB68 0016A7C8 90 6F 00 00 */ stw r3, 0(r15) /* 8016EB6C 0016A7CC 90 1C 00 00 */ stw r0, 0(r28) /* 8016EB70 0016A7D0 48 00 00 30 */ b lbl_8016EBA0 lbl_8016EB74: /* 8016EB74 0016A7D4 80 6F 00 00 */ lwz r3, 0(r15) /* 8016EB78 0016A7D8 38 00 00 00 */ li r0, 0 /* 8016EB7C 0016A7DC 60 63 00 01 */ ori r3, r3, 1 /* 8016EB80 0016A7E0 90 6F 00 00 */ stw r3, 0(r15) /* 8016EB84 0016A7E4 90 1C 00 00 */ stw r0, 0(r28) /* 8016EB88 0016A7E8 48 00 00 18 */ b lbl_8016EBA0 lbl_8016EB8C: /* 8016EB8C 0016A7EC 80 6F 00 00 */ lwz r3, 0(r15) /* 8016EB90 0016A7F0 38 00 00 02 */ li r0, 2 /* 8016EB94 0016A7F4 60 63 00 0B */ ori r3, r3, 0xb /* 8016EB98 0016A7F8 90 6F 00 00 */ stw r3, 0(r15) /* 8016EB9C 0016A7FC 90 1C 00 00 */ stw r0, 0(r28) lbl_8016EBA0: /* 8016EBA0 0016A800 80 1D 00 0C */ lwz r0, 0xc(r29) /* 8016EBA4 0016A804 2C 00 00 02 */ cmpwi r0, 2 /* 8016EBA8 0016A808 41 82 00 20 */ beq lbl_8016EBC8 /* 8016EBAC 0016A80C 40 80 00 10 */ bge lbl_8016EBBC /* 8016EBB0 0016A810 2C 00 00 01 */ cmpwi r0, 1 /* 8016EBB4 0016A814 40 80 00 60 */ bge lbl_8016EC14 /* 8016EBB8 0016A818 48 00 00 7C */ b lbl_8016EC34 lbl_8016EBBC: /* 8016EBBC 0016A81C 2C 00 00 04 */ cmpwi r0, 4 /* 8016EBC0 0016A820 40 80 00 74 */ bge lbl_8016EC34 /* 8016EBC4 0016A824 48 00 00 18 */ b lbl_8016EBDC lbl_8016EBC8: /* 8016EBC8 0016A828 80 0F 00 00 */ lwz r0, 0(r15) /* 8016EBCC 0016A82C 60 00 08 00 */ ori r0, r0, 0x800 /* 8016EBD0 0016A830 64 00 00 08 */ oris r0, r0, 8 /* 8016EBD4 0016A834 90 0F 00 00 */ stw r0, 0(r15) /* 8016EBD8 0016A838 48 00 00 5C */ b lbl_8016EC34 lbl_8016EBDC: /* 8016EBDC 0016A83C 4B FF 9F 39 */ bl func_80168B14 /* 8016EBE0 0016A840 2C 03 00 00 */ cmpwi r3, 0 /* 8016EBE4 0016A844 41 82 00 14 */ beq lbl_8016EBF8 /* 8016EBE8 0016A848 80 0F 00 00 */ lwz r0, 0(r15) /* 8016EBEC 0016A84C 60 00 20 00 */ ori r0, r0, 0x2000 /* 8016EBF0 0016A850 90 0F 00 00 */ stw r0, 0(r15) /* 8016EBF4 0016A854 48 00 00 40 */ b lbl_8016EC34 lbl_8016EBF8: /* 8016EBF8 0016A858 4B FF 9F 31 */ bl func_80168B28 /* 8016EBFC 0016A85C 2C 03 00 00 */ cmpwi r3, 0 /* 8016EC00 0016A860 41 82 00 34 */ beq lbl_8016EC34 /* 8016EC04 0016A864 80 0F 00 00 */ lwz r0, 0(r15) /* 8016EC08 0016A868 64 00 00 04 */ oris r0, r0, 4 /* 8016EC0C 0016A86C 90 0F 00 00 */ stw r0, 0(r15) /* 8016EC10 0016A870 48 00 00 24 */ b lbl_8016EC34 lbl_8016EC14: /* 8016EC14 0016A874 80 0F 00 00 */ lwz r0, 0(r15) /* 8016EC18 0016A878 60 03 10 00 */ ori r3, r0, 0x1000 /* 8016EC1C 0016A87C 90 6F 00 00 */ stw r3, 0(r15) /* 8016EC20 0016A880 88 1D 00 1B */ lbz r0, 0x1b(r29) /* 8016EC24 0016A884 28 00 00 02 */ cmplwi r0, 2 /* 8016EC28 0016A888 40 82 00 0C */ bne lbl_8016EC34 /* 8016EC2C 0016A88C 64 60 00 08 */ oris r0, r3, 8 /* 8016EC30 0016A890 90 0F 00 00 */ stw r0, 0(r15) lbl_8016EC34: /* 8016EC34 0016A894 88 1D 00 1B */ lbz r0, 0x1b(r29) /* 8016EC38 0016A898 2C 00 00 04 */ cmpwi r0, 4 /* 8016EC3C 0016A89C 41 82 00 4C */ beq lbl_8016EC88 /* 8016EC40 0016A8A0 40 80 00 1C */ bge lbl_8016EC5C /* 8016EC44 0016A8A4 2C 00 00 02 */ cmpwi r0, 2 /* 8016EC48 0016A8A8 41 82 00 30 */ beq lbl_8016EC78 /* 8016EC4C 0016A8AC 40 80 00 58 */ bge lbl_8016ECA4 /* 8016EC50 0016A8B0 2C 00 00 01 */ cmpwi r0, 1 /* 8016EC54 0016A8B4 40 80 00 14 */ bge lbl_8016EC68 /* 8016EC58 0016A8B8 48 00 00 4C */ b lbl_8016ECA4 lbl_8016EC5C: /* 8016EC5C 0016A8BC 2C 00 00 08 */ cmpwi r0, 8 /* 8016EC60 0016A8C0 41 82 00 38 */ beq lbl_8016EC98 /* 8016EC64 0016A8C4 48 00 00 40 */ b lbl_8016ECA4 lbl_8016EC68: /* 8016EC68 0016A8C8 80 0F 00 00 */ lwz r0, 0(r15) /* 8016EC6C 0016A8CC 60 00 40 00 */ ori r0, r0, 0x4000 /* 8016EC70 0016A8D0 90 0F 00 00 */ stw r0, 0(r15) /* 8016EC74 0016A8D4 48 00 00 30 */ b lbl_8016ECA4 lbl_8016EC78: /* 8016EC78 0016A8D8 80 0F 00 00 */ lwz r0, 0(r15) /* 8016EC7C 0016A8DC 60 00 80 00 */ ori r0, r0, 0x8000 /* 8016EC80 0016A8E0 90 0F 00 00 */ stw r0, 0(r15) /* 8016EC84 0016A8E4 48 00 00 20 */ b lbl_8016ECA4 lbl_8016EC88: /* 8016EC88 0016A8E8 80 0F 00 00 */ lwz r0, 0(r15) /* 8016EC8C 0016A8EC 64 00 00 01 */ oris r0, r0, 1 /* 8016EC90 0016A8F0 90 0F 00 00 */ stw r0, 0(r15) /* 8016EC94 0016A8F4 48 00 00 10 */ b lbl_8016ECA4 lbl_8016EC98: /* 8016EC98 0016A8F8 80 0F 00 00 */ lwz r0, 0(r15) /* 8016EC9C 0016A8FC 60 00 40 00 */ ori r0, r0, 0x4000 /* 8016ECA0 0016A900 90 0F 00 00 */ stw r0, 0(r15) lbl_8016ECA4: /* 8016ECA4 0016A904 38 60 00 01 */ li r3, 1 lbl_8016ECA8: /* 8016ECA8 0016A908 39 61 00 70 */ addi r11, r1, 0x70 /* 8016ECAC 0016A90C 48 05 84 95 */ bl __restore_gpr /* 8016ECB0 0016A910 80 01 00 74 */ lwz r0, 0x74(r1) /* 8016ECB4 0016A914 7C 08 03 A6 */ mtlr r0 /* 8016ECB8 0016A918 38 21 00 70 */ addi r1, r1, 0x70 /* 8016ECBC 0016A91C 4E 80 00 20 */ blr .global func_8016ECC0 func_8016ECC0: /* 8016ECC0 0016A920 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8016ECC4 0016A924 7C 08 02 A6 */ mflr r0 /* 8016ECC8 0016A928 90 01 00 34 */ stw r0, 0x34(r1) /* 8016ECCC 0016A92C 39 61 00 30 */ addi r11, r1, 0x30 /* 8016ECD0 0016A930 48 05 84 45 */ bl _savegpr_22 /* 8016ECD4 0016A934 80 03 00 00 */ lwz r0, 0(r3) /* 8016ECD8 0016A938 7C 7D 1B 78 */ mr r29, r3 /* 8016ECDC 0016A93C 54 03 07 39 */ rlwinm. r3, r0, 0, 0x1c, 0x1c /* 8016ECE0 0016A940 54 04 FF FE */ rlwinm r4, r0, 0x1f, 0x1f, 0x1f /* 8016ECE4 0016A944 54 03 EF FE */ rlwinm r3, r0, 0x1d, 0x1f, 0x1f /* 8016ECE8 0016A948 3B E4 00 01 */ addi r31, r4, 1 /* 8016ECEC 0016A94C 38 03 00 01 */ addi r0, r3, 1 /* 8016ECF0 0016A950 41 82 00 74 */ beq lbl_8016ED64 /* 8016ECF4 0016A954 54 1B 0D FC */ rlwinm r27, r0, 1, 0x17, 0x1e /* 8016ECF8 0016A958 3A C0 00 00 */ li r22, 0 /* 8016ECFC 0016A95C 48 00 00 58 */ b lbl_8016ED54 lbl_8016ED00: /* 8016ED00 0016A960 56 DC 15 BA */ rlwinm r28, r22, 2, 0x16, 0x1d /* 8016ED04 0016A964 3A E0 00 00 */ li r23, 0 lbl_8016ED08: /* 8016ED08 0016A968 80 1D 00 04 */ lwz r0, 4(r29) /* 8016ED0C 0016A96C 56 E4 06 3E */ clrlwi r4, r23, 0x18 /* 8016ED10 0016A970 7C 7C 02 14 */ add r3, r28, r0 /* 8016ED14 0016A974 80 63 00 04 */ lwz r3, 4(r3) /* 8016ED18 0016A978 48 26 FC 35 */ bl func_803DE94C /* 8016ED1C 0016A97C 7C 78 1B 78 */ mr r24, r3 /* 8016ED20 0016A980 38 80 00 A2 */ li r4, 0xa2 /* 8016ED24 0016A984 38 A0 00 00 */ li r5, 0 /* 8016ED28 0016A988 48 26 EC B5 */ bl func_803DD9DC /* 8016ED2C 0016A98C 2C 03 00 00 */ cmpwi r3, 0 /* 8016ED30 0016A990 41 82 00 14 */ beq lbl_8016ED44 /* 8016ED34 0016A994 7F 03 C3 78 */ mr r3, r24 /* 8016ED38 0016A998 56 C4 06 3E */ clrlwi r4, r22, 0x18 /* 8016ED3C 0016A99C 4B FF E2 75 */ bl func_8016CFB0 /* 8016ED40 0016A9A0 48 00 00 10 */ b lbl_8016ED50 lbl_8016ED44: /* 8016ED44 0016A9A4 3A F7 00 01 */ addi r23, r23, 1 /* 8016ED48 0016A9A8 28 17 00 06 */ cmplwi r23, 6 /* 8016ED4C 0016A9AC 41 80 FF BC */ blt lbl_8016ED08 lbl_8016ED50: /* 8016ED50 0016A9B0 3A D6 00 01 */ addi r22, r22, 1 lbl_8016ED54: /* 8016ED54 0016A9B4 56 C0 06 3E */ clrlwi r0, r22, 0x18 /* 8016ED58 0016A9B8 7C 00 D8 00 */ cmpw r0, r27 /* 8016ED5C 0016A9BC 41 80 FF A4 */ blt lbl_8016ED00 /* 8016ED60 0016A9C0 48 00 01 50 */ b lbl_8016EEB0 lbl_8016ED64: /* 8016ED64 0016A9C4 54 1E 0D FC */ rlwinm r30, r0, 1, 0x17, 0x1e /* 8016ED68 0016A9C8 3B 20 00 00 */ li r25, 0 /* 8016ED6C 0016A9CC 48 00 00 94 */ b lbl_8016EE00 lbl_8016ED70: /* 8016ED70 0016A9D0 57 20 07 FF */ clrlwi. r0, r25, 0x1f /* 8016ED74 0016A9D4 40 82 00 88 */ bne lbl_8016EDFC /* 8016ED78 0016A9D8 57 3B 15 BA */ rlwinm r27, r25, 2, 0x16, 0x1d /* 8016ED7C 0016A9DC 57 FC 06 3E */ clrlwi r28, r31, 0x18 /* 8016ED80 0016A9E0 3B 40 00 00 */ li r26, 0 /* 8016ED84 0016A9E4 3A C0 00 00 */ li r22, 0 /* 8016ED88 0016A9E8 48 00 00 68 */ b lbl_8016EDF0 lbl_8016ED8C: /* 8016ED8C 0016A9EC 7F 58 D3 78 */ mr r24, r26 /* 8016ED90 0016A9F0 48 00 00 50 */ b lbl_8016EDE0 lbl_8016ED94: /* 8016ED94 0016A9F4 80 1D 00 04 */ lwz r0, 4(r29) /* 8016ED98 0016A9F8 57 04 06 3E */ clrlwi r4, r24, 0x18 /* 8016ED9C 0016A9FC 3B 5A 00 01 */ addi r26, r26, 1 /* 8016EDA0 0016AA00 7C 7B 02 14 */ add r3, r27, r0 /* 8016EDA4 0016AA04 80 63 00 04 */ lwz r3, 4(r3) /* 8016EDA8 0016AA08 48 26 FB A5 */ bl func_803DE94C /* 8016EDAC 0016AA0C 7C 77 1B 78 */ mr r23, r3 /* 8016EDB0 0016AA10 38 80 00 A2 */ li r4, 0xa2 /* 8016EDB4 0016AA14 38 A0 00 00 */ li r5, 0 /* 8016EDB8 0016AA18 48 26 EC 25 */ bl func_803DD9DC /* 8016EDBC 0016AA1C 2C 03 00 00 */ cmpwi r3, 0 /* 8016EDC0 0016AA20 41 82 00 1C */ beq lbl_8016EDDC /* 8016EDC4 0016AA24 57 24 06 3E */ clrlwi r4, r25, 0x18 /* 8016EDC8 0016AA28 56 C0 0D FC */ rlwinm r0, r22, 1, 0x17, 0x1e /* 8016EDCC 0016AA2C 7E E3 BB 78 */ mr r3, r23 /* 8016EDD0 0016AA30 7C 84 02 14 */ add r4, r4, r0 /* 8016EDD4 0016AA34 4B FF E1 DD */ bl func_8016CFB0 /* 8016EDD8 0016AA38 48 00 00 14 */ b lbl_8016EDEC lbl_8016EDDC: /* 8016EDDC 0016AA3C 3B 18 00 01 */ addi r24, r24, 1 lbl_8016EDE0: /* 8016EDE0 0016AA40 57 00 06 3E */ clrlwi r0, r24, 0x18 /* 8016EDE4 0016AA44 28 00 00 06 */ cmplwi r0, 6 /* 8016EDE8 0016AA48 41 80 FF AC */ blt lbl_8016ED94 lbl_8016EDEC: /* 8016EDEC 0016AA4C 3A D6 00 01 */ addi r22, r22, 1 lbl_8016EDF0: /* 8016EDF0 0016AA50 56 C0 06 3E */ clrlwi r0, r22, 0x18 /* 8016EDF4 0016AA54 7C 00 E0 40 */ cmplw r0, r28 /* 8016EDF8 0016AA58 41 80 FF 94 */ blt lbl_8016ED8C lbl_8016EDFC: /* 8016EDFC 0016AA5C 3B 39 00 01 */ addi r25, r25, 1 lbl_8016EE00: /* 8016EE00 0016AA60 57 20 06 3E */ clrlwi r0, r25, 0x18 /* 8016EE04 0016AA64 7C 00 F0 00 */ cmpw r0, r30 /* 8016EE08 0016AA68 41 80 FF 68 */ blt lbl_8016ED70 /* 8016EE0C 0016AA6C 3B 20 00 00 */ li r25, 0 /* 8016EE10 0016AA70 48 00 00 94 */ b lbl_8016EEA4 lbl_8016EE14: /* 8016EE14 0016AA74 57 20 07 FF */ clrlwi. r0, r25, 0x1f /* 8016EE18 0016AA78 41 82 00 88 */ beq lbl_8016EEA0 /* 8016EE1C 0016AA7C 57 3B 15 BA */ rlwinm r27, r25, 2, 0x16, 0x1d /* 8016EE20 0016AA80 57 FC 06 3E */ clrlwi r28, r31, 0x18 /* 8016EE24 0016AA84 3B 40 00 00 */ li r26, 0 /* 8016EE28 0016AA88 3A C0 00 00 */ li r22, 0 /* 8016EE2C 0016AA8C 48 00 00 68 */ b lbl_8016EE94 lbl_8016EE30: /* 8016EE30 0016AA90 7F 58 D3 78 */ mr r24, r26 /* 8016EE34 0016AA94 48 00 00 50 */ b lbl_8016EE84 lbl_8016EE38: /* 8016EE38 0016AA98 80 1D 00 04 */ lwz r0, 4(r29) /* 8016EE3C 0016AA9C 57 04 06 3E */ clrlwi r4, r24, 0x18 /* 8016EE40 0016AAA0 3B 5A 00 01 */ addi r26, r26, 1 /* 8016EE44 0016AAA4 7C 7B 02 14 */ add r3, r27, r0 /* 8016EE48 0016AAA8 80 63 00 04 */ lwz r3, 4(r3) /* 8016EE4C 0016AAAC 48 26 FB 01 */ bl func_803DE94C /* 8016EE50 0016AAB0 7C 77 1B 78 */ mr r23, r3 /* 8016EE54 0016AAB4 38 80 00 A2 */ li r4, 0xa2 /* 8016EE58 0016AAB8 38 A0 00 00 */ li r5, 0 /* 8016EE5C 0016AABC 48 26 EB 81 */ bl func_803DD9DC /* 8016EE60 0016AAC0 2C 03 00 00 */ cmpwi r3, 0 /* 8016EE64 0016AAC4 41 82 00 1C */ beq lbl_8016EE80 /* 8016EE68 0016AAC8 57 24 06 3E */ clrlwi r4, r25, 0x18 /* 8016EE6C 0016AACC 56 C0 0D FC */ rlwinm r0, r22, 1, 0x17, 0x1e /* 8016EE70 0016AAD0 7E E3 BB 78 */ mr r3, r23 /* 8016EE74 0016AAD4 7C 84 02 14 */ add r4, r4, r0 /* 8016EE78 0016AAD8 4B FF E1 39 */ bl func_8016CFB0 /* 8016EE7C 0016AADC 48 00 00 14 */ b lbl_8016EE90 lbl_8016EE80: /* 8016EE80 0016AAE0 3B 18 00 01 */ addi r24, r24, 1 lbl_8016EE84: /* 8016EE84 0016AAE4 57 00 06 3E */ clrlwi r0, r24, 0x18 /* 8016EE88 0016AAE8 28 00 00 06 */ cmplwi r0, 6 /* 8016EE8C 0016AAEC 41 80 FF AC */ blt lbl_8016EE38 lbl_8016EE90: /* 8016EE90 0016AAF0 3A D6 00 01 */ addi r22, r22, 1 lbl_8016EE94: /* 8016EE94 0016AAF4 56 C0 06 3E */ clrlwi r0, r22, 0x18 /* 8016EE98 0016AAF8 7C 00 E0 40 */ cmplw r0, r28 /* 8016EE9C 0016AAFC 41 80 FF 94 */ blt lbl_8016EE30 lbl_8016EEA0: /* 8016EEA0 0016AB00 3B 39 00 01 */ addi r25, r25, 1 lbl_8016EEA4: /* 8016EEA4 0016AB04 57 20 06 3E */ clrlwi r0, r25, 0x18 /* 8016EEA8 0016AB08 7C 00 F0 00 */ cmpw r0, r30 /* 8016EEAC 0016AB0C 41 80 FF 68 */ blt lbl_8016EE14 lbl_8016EEB0: /* 8016EEB0 0016AB10 39 61 00 30 */ addi r11, r1, 0x30 /* 8016EEB4 0016AB14 48 05 82 AD */ bl _restgpr_22 /* 8016EEB8 0016AB18 80 01 00 34 */ lwz r0, 0x34(r1) /* 8016EEBC 0016AB1C 7C 08 03 A6 */ mtlr r0 /* 8016EEC0 0016AB20 38 21 00 30 */ addi r1, r1, 0x30 /* 8016EEC4 0016AB24 4E 80 00 20 */ blr .global func_8016EEC8 func_8016EEC8: /* 8016EEC8 0016AB28 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8016EECC 0016AB2C 7C 08 02 A6 */ mflr r0 /* 8016EED0 0016AB30 90 01 00 14 */ stw r0, 0x14(r1) /* 8016EED4 0016AB34 93 E1 00 0C */ stw r31, 0xc(r1) /* 8016EED8 0016AB38 3B E0 00 00 */ li r31, 0 /* 8016EEDC 0016AB3C 93 C1 00 08 */ stw r30, 8(r1) /* 8016EEE0 0016AB40 7C 7E 1B 78 */ mr r30, r3 lbl_8016EEE4: /* 8016EEE4 0016AB44 80 7E 00 00 */ lwz r3, 0(r30) /* 8016EEE8 0016AB48 57 E4 06 3E */ clrlwi r4, r31, 0x18 /* 8016EEEC 0016AB4C 48 25 A3 DD */ bl func_803C92C8 /* 8016EEF0 0016AB50 54 64 06 3E */ clrlwi r4, r3, 0x18 /* 8016EEF4 0016AB54 28 04 00 FF */ cmplwi r4, 0xff /* 8016EEF8 0016AB58 41 82 00 34 */ beq lbl_8016EF2C /* 8016EEFC 0016AB5C 80 BE 00 04 */ lwz r5, 4(r30) /* 8016EF00 0016AB60 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 8016EF04 0016AB64 80 7E 00 00 */ lwz r3, 0(r30) /* 8016EF08 0016AB68 7C A5 02 14 */ add r5, r5, r0 /* 8016EF0C 0016AB6C 80 A5 00 04 */ lwz r5, 4(r5) /* 8016EF10 0016AB70 48 00 85 49 */ bl func_80177458 /* 8016EF14 0016AB74 80 1E 00 00 */ lwz r0, 0(r30) /* 8016EF18 0016AB78 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c /* 8016EF1C 0016AB7C 40 82 00 10 */ bne lbl_8016EF2C /* 8016EF20 0016AB80 57 E0 06 3E */ clrlwi r0, r31, 0x18 /* 8016EF24 0016AB84 28 00 00 01 */ cmplwi r0, 1 /* 8016EF28 0016AB88 40 80 00 10 */ bge lbl_8016EF38 lbl_8016EF2C: /* 8016EF2C 0016AB8C 3B FF 00 01 */ addi r31, r31, 1 /* 8016EF30 0016AB90 28 1F 00 04 */ cmplwi r31, 4 /* 8016EF34 0016AB94 41 80 FF B0 */ blt lbl_8016EEE4 lbl_8016EF38: /* 8016EF38 0016AB98 80 01 00 14 */ lwz r0, 0x14(r1) /* 8016EF3C 0016AB9C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8016EF40 0016ABA0 83 C1 00 08 */ lwz r30, 8(r1) /* 8016EF44 0016ABA4 7C 08 03 A6 */ mtlr r0 /* 8016EF48 0016ABA8 38 21 00 10 */ addi r1, r1, 0x10 /* 8016EF4C 0016ABAC 4E 80 00 20 */ blr .global func_8016EF50 func_8016EF50: /* 8016EF50 0016ABB0 A0 03 00 0C */ lhz r0, 0xc(r3) /* 8016EF54 0016ABB4 38 80 00 00 */ li r4, 0 /* 8016EF58 0016ABB8 54 00 9F FF */ rlwinm. r0, r0, 0x13, 0x1f, 0x1f /* 8016EF5C 0016ABBC 40 82 00 08 */ bne lbl_8016EF64 /* 8016EF60 0016ABC0 60 84 00 02 */ ori r4, r4, 2 lbl_8016EF64: /* 8016EF64 0016ABC4 A0 03 00 0C */ lhz r0, 0xc(r3) /* 8016EF68 0016ABC8 54 00 A7 FF */ rlwinm. r0, r0, 0x14, 0x1f, 0x1f /* 8016EF6C 0016ABCC 40 82 00 08 */ bne lbl_8016EF74 /* 8016EF70 0016ABD0 60 84 00 04 */ ori r4, r4, 4 lbl_8016EF74: /* 8016EF74 0016ABD4 A0 03 00 0C */ lhz r0, 0xc(r3) /* 8016EF78 0016ABD8 54 00 AF FF */ rlwinm. r0, r0, 0x15, 0x1f, 0x1f /* 8016EF7C 0016ABDC 41 82 00 08 */ beq lbl_8016EF84 /* 8016EF80 0016ABE0 60 84 00 08 */ ori r4, r4, 8 lbl_8016EF84: /* 8016EF84 0016ABE4 A0 03 00 0C */ lhz r0, 0xc(r3) /* 8016EF88 0016ABE8 54 00 B7 FF */ rlwinm. r0, r0, 0x16, 0x1f, 0x1f /* 8016EF8C 0016ABEC 41 82 00 08 */ beq lbl_8016EF94 /* 8016EF90 0016ABF0 60 84 00 10 */ ori r4, r4, 0x10 lbl_8016EF94: /* 8016EF94 0016ABF4 A0 03 00 0C */ lhz r0, 0xc(r3) /* 8016EF98 0016ABF8 54 00 BF FF */ rlwinm. r0, r0, 0x17, 0x1f, 0x1f /* 8016EF9C 0016ABFC 41 82 00 08 */ beq lbl_8016EFA4 /* 8016EFA0 0016AC00 60 84 00 01 */ ori r4, r4, 1 lbl_8016EFA4: /* 8016EFA4 0016AC04 7C 83 23 78 */ mr r3, r4 /* 8016EFA8 0016AC08 4E 80 00 20 */ blr .global func_8016EFAC func_8016EFAC: /* 8016EFAC 0016AC0C 38 A0 00 01 */ li r5, 1 /* 8016EFB0 0016AC10 38 6D 9F 10 */ addi r3, r13, lbl_8063F1D0-_SDA_BASE_ /* 8016EFB4 0016AC14 38 80 00 04 */ li r4, 4 /* 8016EFB8 0016AC18 38 00 00 00 */ li r0, 0 /* 8016EFBC 0016AC1C 98 AD 9F 10 */ stb r5, lbl_8063F1D0-_SDA_BASE_(r13) /* 8016EFC0 0016AC20 B0 83 00 02 */ sth r4, 2(r3) /* 8016EFC4 0016AC24 98 03 00 04 */ stb r0, 4(r3) /* 8016EFC8 0016AC28 4E 80 00 20 */ blr