.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global func_8016A25C func_8016A25C: /* 8016A25C 00165EBC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8016A260 00165EC0 7C 08 02 A6 */ mflr r0 /* 8016A264 00165EC4 38 60 00 00 */ li r3, 0 /* 8016A268 00165EC8 90 01 00 24 */ stw r0, 0x24(r1) /* 8016A26C 00165ECC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8016A270 00165ED0 93 C1 00 18 */ stw r30, 0x18(r1) /* 8016A274 00165ED4 93 A1 00 14 */ stw r29, 0x14(r1) /* 8016A278 00165ED8 48 24 25 A9 */ bl func_803AC820 /* 8016A27C 00165EDC 38 00 00 00 */ li r0, 0 /* 8016A280 00165EE0 38 60 00 08 */ li r3, 8 /* 8016A284 00165EE4 90 0D 9E A8 */ stw r0, lbl_8063F168-_SDA_BASE_(r13) /* 8016A288 00165EE8 48 07 07 A9 */ bl __nw__FUl /* 8016A28C 00165EEC 2C 03 00 00 */ cmpwi r3, 0 /* 8016A290 00165EF0 41 82 00 08 */ beq lbl_8016A298 /* 8016A294 00165EF4 48 00 C8 89 */ bl func_80176B1C lbl_8016A298: /* 8016A298 00165EF8 38 00 00 00 */ li r0, 0 /* 8016A29C 00165EFC 90 6D 9E AC */ stw r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016A2A0 00165F00 90 0D 9E B4 */ stw r0, lbl_8063F174-_SDA_BASE_(r13) /* 8016A2A4 00165F04 4B FB 26 D1 */ bl func_8011C974 /* 8016A2A8 00165F08 7C 7F 1B 78 */ mr r31, r3 /* 8016A2AC 00165F0C 38 60 00 39 */ li r3, 0x39 /* 8016A2B0 00165F10 4B FF 87 E1 */ bl func_80162A90 /* 8016A2B4 00165F14 2C 03 00 00 */ cmpwi r3, 0 /* 8016A2B8 00165F18 40 82 00 20 */ bne lbl_8016A2D8 /* 8016A2BC 00165F1C 80 1F 00 10 */ lwz r0, 0x10(r31) /* 8016A2C0 00165F20 28 00 03 F1 */ cmplwi r0, 0x3f1 /* 8016A2C4 00165F24 40 82 00 0C */ bne lbl_8016A2D0 /* 8016A2C8 00165F28 3B A0 00 02 */ li r29, 2 /* 8016A2CC 00165F2C 48 00 01 34 */ b lbl_8016A400 lbl_8016A2D0: /* 8016A2D0 00165F30 3B A0 00 00 */ li r29, 0 /* 8016A2D4 00165F34 48 00 01 2C */ b lbl_8016A400 lbl_8016A2D8: /* 8016A2D8 00165F38 80 7F 00 10 */ lwz r3, 0x10(r31) /* 8016A2DC 00165F3C 38 03 FC 18 */ addi r0, r3, -1000 /* 8016A2E0 00165F40 28 00 00 09 */ cmplwi r0, 9 /* 8016A2E4 00165F44 41 81 01 18 */ bgt lbl_8016A3FC /* 8016A2E8 00165F48 3C 60 80 42 */ lis r3, lbl_8041F7F8@ha /* 8016A2EC 00165F4C 54 00 10 3A */ slwi r0, r0, 2 /* 8016A2F0 00165F50 38 63 F7 F8 */ addi r3, r3, lbl_8041F7F8@l /* 8016A2F4 00165F54 7C 63 00 2E */ lwzx r3, r3, r0 /* 8016A2F8 00165F58 7C 69 03 A6 */ mtctr r3 /* 8016A2FC 00165F5C 4E 80 04 20 */ bctr /* 8016A300 00165F60 38 60 00 3E */ li r3, 0x3e /* 8016A304 00165F64 4B FF 87 8D */ bl func_80162A90 /* 8016A308 00165F68 54 7D 06 3E */ clrlwi r29, r3, 0x18 /* 8016A30C 00165F6C 48 00 00 F4 */ b lbl_8016A400 /* 8016A310 00165F70 38 60 00 40 */ li r3, 0x40 /* 8016A314 00165F74 4B FF 87 7D */ bl func_80162A90 /* 8016A318 00165F78 54 7D 06 3E */ clrlwi r29, r3, 0x18 /* 8016A31C 00165F7C 48 00 00 E4 */ b lbl_8016A400 /* 8016A320 00165F80 38 60 00 42 */ li r3, 0x42 /* 8016A324 00165F84 4B FF 87 6D */ bl func_80162A90 /* 8016A328 00165F88 54 7D 06 3E */ clrlwi r29, r3, 0x18 /* 8016A32C 00165F8C 48 00 00 D4 */ b lbl_8016A400 /* 8016A330 00165F90 38 60 00 44 */ li r3, 0x44 /* 8016A334 00165F94 4B FF 87 5D */ bl func_80162A90 /* 8016A338 00165F98 54 7D 06 3E */ clrlwi r29, r3, 0x18 /* 8016A33C 00165F9C 48 00 00 C4 */ b lbl_8016A400 /* 8016A340 00165FA0 38 60 00 46 */ li r3, 0x46 /* 8016A344 00165FA4 4B FF 87 4D */ bl func_80162A90 /* 8016A348 00165FA8 54 7D 06 3E */ clrlwi r29, r3, 0x18 /* 8016A34C 00165FAC 48 00 00 B4 */ b lbl_8016A400 /* 8016A350 00165FB0 38 60 00 48 */ li r3, 0x48 /* 8016A354 00165FB4 4B FF 87 3D */ bl func_80162A90 /* 8016A358 00165FB8 54 7D 06 3E */ clrlwi r29, r3, 0x18 /* 8016A35C 00165FBC 48 00 00 A4 */ b lbl_8016A400 /* 8016A360 00165FC0 38 60 00 4B */ li r3, 0x4b /* 8016A364 00165FC4 4B FF 87 2D */ bl func_80162A90 /* 8016A368 00165FC8 54 7D 06 3E */ clrlwi r29, r3, 0x18 /* 8016A36C 00165FCC 48 00 00 94 */ b lbl_8016A400 /* 8016A370 00165FD0 38 60 00 4D */ li r3, 0x4d /* 8016A374 00165FD4 4B FF 87 1D */ bl func_80162A90 /* 8016A378 00165FD8 54 7D 06 3E */ clrlwi r29, r3, 0x18 /* 8016A37C 00165FDC 48 00 00 84 */ b lbl_8016A400 /* 8016A380 00165FE0 38 60 00 4F */ li r3, 0x4f /* 8016A384 00165FE4 4B FF 87 0D */ bl func_80162A90 /* 8016A388 00165FE8 54 7D 06 3E */ clrlwi r29, r3, 0x18 /* 8016A38C 00165FEC 48 00 00 74 */ b lbl_8016A400 /* 8016A390 00165FF0 38 60 02 49 */ li r3, 0x249 /* 8016A394 00165FF4 4B FF 86 FD */ bl func_80162A90 /* 8016A398 00165FF8 2C 03 00 05 */ cmpwi r3, 5 /* 8016A39C 00165FFC 40 80 00 1C */ bge lbl_8016A3B8 /* 8016A3A0 00166000 2C 03 00 00 */ cmpwi r3, 0 /* 8016A3A4 00166004 41 82 00 28 */ beq lbl_8016A3CC /* 8016A3A8 00166008 41 80 00 4C */ blt lbl_8016A3F4 /* 8016A3AC 0016600C 2C 03 00 03 */ cmpwi r3, 3 /* 8016A3B0 00166010 40 80 00 2C */ bge lbl_8016A3DC /* 8016A3B4 00166014 48 00 00 20 */ b lbl_8016A3D4 lbl_8016A3B8: /* 8016A3B8 00166018 2C 03 00 09 */ cmpwi r3, 9 /* 8016A3BC 0016601C 40 80 00 38 */ bge lbl_8016A3F4 /* 8016A3C0 00166020 2C 03 00 07 */ cmpwi r3, 7 /* 8016A3C4 00166024 40 80 00 28 */ bge lbl_8016A3EC /* 8016A3C8 00166028 48 00 00 1C */ b lbl_8016A3E4 lbl_8016A3CC: /* 8016A3CC 0016602C 3B A0 00 03 */ li r29, 3 /* 8016A3D0 00166030 48 00 00 30 */ b lbl_8016A400 lbl_8016A3D4: /* 8016A3D4 00166034 3B A0 00 04 */ li r29, 4 /* 8016A3D8 00166038 48 00 00 28 */ b lbl_8016A400 lbl_8016A3DC: /* 8016A3DC 0016603C 3B A0 00 05 */ li r29, 5 /* 8016A3E0 00166040 48 00 00 20 */ b lbl_8016A400 lbl_8016A3E4: /* 8016A3E4 00166044 3B A0 00 06 */ li r29, 6 /* 8016A3E8 00166048 48 00 00 18 */ b lbl_8016A400 lbl_8016A3EC: /* 8016A3EC 0016604C 3B A0 00 07 */ li r29, 7 /* 8016A3F0 00166050 48 00 00 10 */ b lbl_8016A400 lbl_8016A3F4: /* 8016A3F4 00166054 3B A0 00 07 */ li r29, 7 /* 8016A3F8 00166058 48 00 00 08 */ b lbl_8016A400 lbl_8016A3FC: /* 8016A3FC 0016605C 3B A0 00 00 */ li r29, 0 lbl_8016A400: /* 8016A400 00166060 28 1D 00 07 */ cmplwi r29, 7 /* 8016A404 00166064 40 81 00 08 */ ble lbl_8016A40C /* 8016A408 00166068 3B A0 00 07 */ li r29, 7 lbl_8016A40C: /* 8016A40C 0016606C 80 1F 00 08 */ lwz r0, 8(r31) /* 8016A410 00166070 2C 00 00 01 */ cmpwi r0, 1 /* 8016A414 00166074 41 82 00 0C */ beq lbl_8016A420 /* 8016A418 00166078 2C 00 00 04 */ cmpwi r0, 4 /* 8016A41C 0016607C 40 82 00 0C */ bne lbl_8016A428 lbl_8016A420: /* 8016A420 00166080 3B C0 00 01 */ li r30, 1 /* 8016A424 00166084 48 00 00 08 */ b lbl_8016A42C lbl_8016A428: /* 8016A428 00166088 3B C0 00 00 */ li r30, 0 lbl_8016A42C: /* 8016A42C 0016608C 38 60 00 C8 */ li r3, 0xc8 /* 8016A430 00166090 48 0D F1 AD */ bl func_802495DC /* 8016A434 00166094 80 1F 00 0C */ lwz r0, 0xc(r31) /* 8016A438 00166098 2C 00 00 01 */ cmpwi r0, 1 /* 8016A43C 0016609C 40 82 00 10 */ bne lbl_8016A44C /* 8016A440 001660A0 3C 60 27 4C */ lis r3, 0x274C2E00@ha /* 8016A444 001660A4 38 63 2E 00 */ addi r3, r3, 0x274C2E00@l /* 8016A448 001660A8 48 00 00 58 */ b lbl_8016A4A0 lbl_8016A44C: /* 8016A44C 001660AC 2C 00 00 00 */ cmpwi r0, 0 /* 8016A450 001660B0 40 82 00 38 */ bne lbl_8016A488 /* 8016A454 001660B4 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8016A458 001660B8 88 9F 01 25 */ lbz r4, 0x125(r31) /* 8016A45C 001660BC 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 8016A460 001660C0 38 63 00 60 */ addi r3, r3, 0x60 /* 8016A464 001660C4 48 22 DE 21 */ bl func_80398284 /* 8016A468 001660C8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8016A46C 001660CC 41 82 00 1C */ beq lbl_8016A488 /* 8016A470 001660D0 80 1F 00 00 */ lwz r0, 0(r31) /* 8016A474 001660D4 54 00 2F FF */ rlwinm. r0, r0, 5, 0x1f, 0x1f /* 8016A478 001660D8 40 82 00 10 */ bne lbl_8016A488 /* 8016A47C 001660DC 3C 60 27 4C */ lis r3, 0x274C2E00@ha /* 8016A480 001660E0 38 63 2E 00 */ addi r3, r3, 0x274C2E00@l /* 8016A484 001660E4 48 00 00 1C */ b lbl_8016A4A0 lbl_8016A488: /* 8016A488 001660E8 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8016A48C 001660EC 88 9F 01 25 */ lbz r4, 0x125(r31) /* 8016A490 001660F0 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 8016A494 001660F4 88 BF 01 26 */ lbz r5, 0x126(r31) /* 8016A498 001660F8 38 63 00 60 */ addi r3, r3, 0x60 /* 8016A49C 001660FC 48 22 DD 39 */ bl func_803981D4 lbl_8016A4A0: /* 8016A4A0 00166100 80 1F 00 0C */ lwz r0, 0xc(r31) /* 8016A4A4 00166104 2C 00 00 01 */ cmpwi r0, 1 /* 8016A4A8 00166108 40 82 00 24 */ bne lbl_8016A4CC /* 8016A4AC 0016610C 2C 1E 00 00 */ cmpwi r30, 0 /* 8016A4B0 00166110 40 82 00 10 */ bne lbl_8016A4C0 /* 8016A4B4 00166114 38 1D 00 08 */ addi r0, r29, 8 /* 8016A4B8 00166118 54 1E 04 3E */ clrlwi r30, r0, 0x10 /* 8016A4BC 0016611C 48 00 00 1C */ b lbl_8016A4D8 lbl_8016A4C0: /* 8016A4C0 00166120 38 1D 00 28 */ addi r0, r29, 0x28 /* 8016A4C4 00166124 54 1E 04 3E */ clrlwi r30, r0, 0x10 /* 8016A4C8 00166128 48 00 00 10 */ b lbl_8016A4D8 lbl_8016A4CC: /* 8016A4CC 0016612C 57 C0 0D FC */ rlwinm r0, r30, 1, 0x17, 0x1e /* 8016A4D0 00166130 7C 9F 02 14 */ add r4, r31, r0 /* 8016A4D4 00166134 A3 C4 01 18 */ lhz r30, 0x118(r4) lbl_8016A4D8: /* 8016A4D8 00166138 7C 64 1B 78 */ mr r4, r3 /* 8016A4DC 0016613C 38 60 00 C8 */ li r3, 0xc8 /* 8016A4E0 00166140 48 07 0F DD */ bl func_801DB4BC /* 8016A4E4 00166144 2C 03 00 00 */ cmpwi r3, 0 /* 8016A4E8 00166148 7C 64 1B 78 */ mr r4, r3 /* 8016A4EC 0016614C 41 82 00 44 */ beq lbl_8016A530 /* 8016A4F0 00166150 80 03 00 08 */ lwz r0, 8(r3) /* 8016A4F4 00166154 2C 00 00 00 */ cmpwi r0, 0 /* 8016A4F8 00166158 41 82 00 38 */ beq lbl_8016A530 /* 8016A4FC 0016615C 7C 00 F0 40 */ cmplw r0, r30 /* 8016A500 00166160 41 80 00 30 */ blt lbl_8016A530 /* 8016A504 00166164 1C 1E 00 24 */ mulli r0, r30, 0x24 /* 8016A508 00166168 3F C0 80 49 */ lis r30, lbl_8048CD90@ha /* 8016A50C 0016616C 38 A0 00 24 */ li r5, 0x24 /* 8016A510 00166170 38 7E CD 90 */ addi r3, r30, lbl_8048CD90@l /* 8016A514 00166174 7C 84 02 14 */ add r4, r4, r0 /* 8016A518 00166178 38 84 00 10 */ addi r4, r4, 0x10 /* 8016A51C 0016617C 4B E9 9A E5 */ bl memcpy /* 8016A520 00166180 80 1E CD 90 */ lwz r0, -0x3270(r30) /* 8016A524 00166184 64 00 80 00 */ oris r0, r0, 0x8000 /* 8016A528 00166188 90 1E CD 90 */ stw r0, -0x3270(r30) /* 8016A52C 0016618C 48 00 00 24 */ b lbl_8016A550 lbl_8016A530: /* 8016A530 00166190 3F C0 80 49 */ lis r30, lbl_8048CD90@ha /* 8016A534 00166194 38 80 00 00 */ li r4, 0 /* 8016A538 00166198 38 7E CD 90 */ addi r3, r30, lbl_8048CD90@l /* 8016A53C 0016619C 38 A0 00 24 */ li r5, 0x24 /* 8016A540 001661A0 4B E9 9B C5 */ bl memset /* 8016A544 001661A4 80 1E CD 90 */ lwz r0, -0x3270(r30) /* 8016A548 001661A8 64 00 80 00 */ oris r0, r0, 0x8000 /* 8016A54C 001661AC 90 1E CD 90 */ stw r0, -0x3270(r30) lbl_8016A550: /* 8016A550 001661B0 38 60 00 C8 */ li r3, 0xc8 /* 8016A554 001661B4 48 07 11 21 */ bl func_801DB674 /* 8016A558 001661B8 38 60 00 C8 */ li r3, 0xc8 /* 8016A55C 001661BC 48 0D F3 35 */ bl func_80249890 /* 8016A560 001661C0 48 26 F7 BD */ bl func_803D9D1C /* 8016A564 001661C4 90 6D 9E C8 */ stw r3, lbl_8063F188-_SDA_BASE_(r13) /* 8016A568 001661C8 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha /* 8016A56C 001661CC 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l /* 8016A570 001661D0 38 80 00 00 */ li r4, 0 /* 8016A574 001661D4 38 A0 00 24 */ li r5, 0x24 /* 8016A578 001661D8 4B E9 9B 8D */ bl memset /* 8016A57C 001661DC 38 60 00 88 */ li r3, 0x88 /* 8016A580 001661E0 48 07 04 B1 */ bl __nw__FUl /* 8016A584 001661E4 2C 03 00 00 */ cmpwi r3, 0 /* 8016A588 001661E8 41 82 00 08 */ beq lbl_8016A590 /* 8016A58C 001661EC 48 00 3E FD */ bl func_8016E488 lbl_8016A590: /* 8016A590 001661F0 90 6D 9F 08 */ stw r3, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016A594 001661F4 48 00 4C 9D */ bl func_8016F230 /* 8016A598 001661F8 4B EC B8 05 */ bl func_80035D9C /* 8016A59C 001661FC 38 80 00 04 */ li r4, 4 /* 8016A5A0 00166200 4B EC B8 A1 */ bl func_80035E40 /* 8016A5A4 00166204 48 00 54 8D */ bl func_8016FA30 /* 8016A5A8 00166208 38 00 00 01 */ li r0, 1 /* 8016A5AC 0016620C 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016A5B0 00166210 98 0D 9E C4 */ stb r0, lbl_8063F184-_SDA_BASE_(r13) /* 8016A5B4 00166214 38 80 00 01 */ li r4, 1 /* 8016A5B8 00166218 48 00 C5 5D */ bl func_80176B14 /* 8016A5BC 0016621C 80 6D 9E C8 */ lwz r3, lbl_8063F188-_SDA_BASE_(r13) /* 8016A5C0 00166220 54 60 03 5A */ rlwinm r0, r3, 0, 0xd, 0xd /* 8016A5C4 00166224 50 60 04 A5 */ rlwimi. r0, r3, 0, 0x12, 0x12 /* 8016A5C8 00166228 41 82 00 08 */ beq lbl_8016A5D0 /* 8016A5CC 0016622C 48 01 0F 01 */ bl func_8017B4CC lbl_8016A5D0: /* 8016A5D0 00166230 38 80 00 00 */ li r4, 0 /* 8016A5D4 00166234 38 00 00 00 */ li r0, 0 /* 8016A5D8 00166238 90 8D 9E CC */ stw r4, lbl_8063F18C-_SDA_BASE_(r13) /* 8016A5DC 0016623C 90 8D 9E D0 */ stw r4, lbl_8063F190-_SDA_BASE_(r13) /* 8016A5E0 00166240 90 8D 9E DC */ stw r4, lbl_8063F19C-_SDA_BASE_(r13) /* 8016A5E4 00166244 90 8D 9E E4 */ stw r4, lbl_8063F1A4-_SDA_BASE_(r13) /* 8016A5E8 00166248 90 8D 9E E8 */ stw r4, lbl_8063F1A8-_SDA_BASE_(r13) /* 8016A5EC 0016624C 90 8D 9E EC */ stw r4, lbl_8063F1AC-_SDA_BASE_(r13) /* 8016A5F0 00166250 90 8D 9E F4 */ stw r4, lbl_8063F1B4-_SDA_BASE_(r13) /* 8016A5F4 00166254 90 8D 9E F8 */ stw r4, lbl_8063F1B8-_SDA_BASE_(r13) /* 8016A5F8 00166258 90 8D 9E FC */ stw r4, lbl_8063F1BC-_SDA_BASE_(r13) /* 8016A5FC 0016625C A0 7F 00 92 */ lhz r3, 0x92(r31) /* 8016A600 00166260 2C 03 00 00 */ cmpwi r3, 0 /* 8016A604 00166264 41 82 00 0C */ beq lbl_8016A610 /* 8016A608 00166268 60 80 00 01 */ ori r0, r4, 1 /* 8016A60C 0016626C 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) lbl_8016A610: /* 8016A610 00166270 A0 7F 00 94 */ lhz r3, 0x94(r31) /* 8016A614 00166274 2C 03 00 00 */ cmpwi r3, 0 /* 8016A618 00166278 41 82 00 0C */ beq lbl_8016A624 /* 8016A61C 0016627C 60 00 00 04 */ ori r0, r0, 4 /* 8016A620 00166280 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) lbl_8016A624: /* 8016A624 00166284 80 01 00 24 */ lwz r0, 0x24(r1) /* 8016A628 00166288 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8016A62C 0016628C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8016A630 00166290 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8016A634 00166294 7C 08 03 A6 */ mtlr r0 /* 8016A638 00166298 38 21 00 20 */ addi r1, r1, 0x20 /* 8016A63C 0016629C 4E 80 00 20 */ blr .global func_8016A640 func_8016A640: /* 8016A640 001662A0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8016A644 001662A4 7C 08 02 A6 */ mflr r0 /* 8016A648 001662A8 90 01 00 14 */ stw r0, 0x14(r1) /* 8016A64C 001662AC 48 24 1F A5 */ bl func_803AC5F0 /* 8016A650 001662B0 80 6D 9E C8 */ lwz r3, lbl_8063F188-_SDA_BASE_(r13) /* 8016A654 001662B4 54 60 03 5A */ rlwinm r0, r3, 0, 0xd, 0xd /* 8016A658 001662B8 50 60 04 A5 */ rlwimi. r0, r3, 0, 0x12, 0x12 /* 8016A65C 001662BC 41 82 00 08 */ beq lbl_8016A664 /* 8016A660 001662C0 48 01 0E B9 */ bl func_8017B518 lbl_8016A664: /* 8016A664 001662C4 48 00 4C B1 */ bl func_8016F314 /* 8016A668 001662C8 48 26 F7 15 */ bl func_803D9D7C /* 8016A66C 001662CC 4B ED AF 25 */ bl func_80045590 /* 8016A670 001662D0 2C 03 00 00 */ cmpwi r3, 0 /* 8016A674 001662D4 41 82 00 08 */ beq lbl_8016A67C /* 8016A678 001662D8 4B ED B0 45 */ bl func_800456BC lbl_8016A67C: /* 8016A67C 001662DC 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016A680 001662E0 2C 03 00 00 */ cmpwi r3, 0 /* 8016A684 001662E4 41 82 00 14 */ beq lbl_8016A698 /* 8016A688 001662E8 38 80 00 01 */ li r4, 1 /* 8016A68C 001662EC 48 00 C4 A9 */ bl func_80176B34 /* 8016A690 001662F0 38 00 00 00 */ li r0, 0 /* 8016A694 001662F4 90 0D 9E AC */ stw r0, lbl_8063F16C-_SDA_BASE_(r13) lbl_8016A698: /* 8016A698 001662F8 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016A69C 001662FC 2C 03 00 00 */ cmpwi r3, 0 /* 8016A6A0 00166300 41 82 00 0C */ beq lbl_8016A6AC /* 8016A6A4 00166304 38 80 00 01 */ li r4, 1 /* 8016A6A8 00166308 48 00 3F 19 */ bl func_8016E5C0 lbl_8016A6AC: /* 8016A6AC 0016630C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8016A6B0 00166310 7C 08 03 A6 */ mtlr r0 /* 8016A6B4 00166314 38 21 00 10 */ addi r1, r1, 0x10 /* 8016A6B8 00166318 4E 80 00 20 */ blr .global func_8016A6BC func_8016A6BC: /* 8016A6BC 0016631C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8016A6C0 00166320 7C 08 02 A6 */ mflr r0 /* 8016A6C4 00166324 90 01 00 24 */ stw r0, 0x24(r1) /* 8016A6C8 00166328 39 61 00 20 */ addi r11, r1, 0x20 /* 8016A6CC 0016632C 48 05 CA 5D */ bl _savegpr_27 /* 8016A6D0 00166330 7C 7B 1B 78 */ mr r27, r3 /* 8016A6D4 00166334 4B ED AE BD */ bl func_80045590 /* 8016A6D8 00166338 7C 7D 1B 78 */ mr r29, r3 /* 8016A6DC 0016633C 4B EC B6 C1 */ bl func_80035D9C /* 8016A6E0 00166340 7C 7F 1B 78 */ mr r31, r3 /* 8016A6E4 00166344 4B FB 22 91 */ bl func_8011C974 /* 8016A6E8 00166348 2C 1D 00 00 */ cmpwi r29, 0 /* 8016A6EC 0016634C 7C 7E 1B 78 */ mr r30, r3 /* 8016A6F0 00166350 41 82 00 D8 */ beq lbl_8016A7C8 /* 8016A6F4 00166354 2C 1F 00 00 */ cmpwi r31, 0 /* 8016A6F8 00166358 41 82 00 D0 */ beq lbl_8016A7C8 /* 8016A6FC 0016635C 2C 03 00 00 */ cmpwi r3, 0 /* 8016A700 00166360 40 82 00 08 */ bne lbl_8016A708 /* 8016A704 00166364 48 00 00 C4 */ b lbl_8016A7C8 lbl_8016A708: /* 8016A708 00166368 7F E3 FB 78 */ mr r3, r31 /* 8016A70C 0016636C 4B EC B7 4D */ bl func_80035E58 /* 8016A710 00166370 7F E3 FB 78 */ mr r3, r31 /* 8016A714 00166374 4B EC B7 55 */ bl func_80035E68 /* 8016A718 00166378 2C 03 00 02 */ cmpwi r3, 2 /* 8016A71C 0016637C 3B E0 00 04 */ li r31, 4 /* 8016A720 00166380 40 82 00 08 */ bne lbl_8016A728 /* 8016A724 00166384 3B E0 00 02 */ li r31, 2 lbl_8016A728: /* 8016A728 00166388 3B 80 00 00 */ li r28, 0 /* 8016A72C 0016638C 48 00 00 80 */ b lbl_8016A7AC lbl_8016A730: /* 8016A730 00166390 57 80 07 FF */ clrlwi. r0, r28, 0x1f /* 8016A734 00166394 41 82 00 18 */ beq lbl_8016A74C /* 8016A738 00166398 57 80 FF FE */ rlwinm r0, r28, 0x1f, 0x1f, 0x1f /* 8016A73C 0016639C 1C 00 06 EC */ mulli r0, r0, 0x6ec /* 8016A740 001663A0 7C 7E 02 14 */ add r3, r30, r0 /* 8016A744 001663A4 39 03 12 24 */ addi r8, r3, 0x1224 /* 8016A748 001663A8 48 00 00 14 */ b lbl_8016A75C lbl_8016A74C: /* 8016A74C 001663AC 57 80 FF FE */ rlwinm r0, r28, 0x1f, 0x1f, 0x1f /* 8016A750 001663B0 1C 00 06 EC */ mulli r0, r0, 0x6ec /* 8016A754 001663B4 7C 7E 02 14 */ add r3, r30, r0 /* 8016A758 001663B8 39 03 04 4C */ addi r8, r3, 0x44c lbl_8016A75C: /* 8016A75C 001663BC 88 08 05 45 */ lbz r0, 0x545(r8) /* 8016A760 001663C0 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 8016A764 001663C4 40 82 00 24 */ bne lbl_8016A788 /* 8016A768 001663C8 7F A3 EB 78 */ mr r3, r29 /* 8016A76C 001663CC 7F 84 E3 78 */ mr r4, r28 /* 8016A770 001663D0 7F 66 DB 78 */ mr r6, r27 /* 8016A774 001663D4 38 A0 00 01 */ li r5, 1 /* 8016A778 001663D8 38 E0 00 00 */ li r7, 0 /* 8016A77C 001663DC 39 00 00 00 */ li r8, 0 /* 8016A780 001663E0 4B ED AF FD */ bl func_8004577C /* 8016A784 001663E4 48 00 00 24 */ b lbl_8016A7A8 lbl_8016A788: /* 8016A788 001663E8 88 08 01 EE */ lbz r0, 0x1ee(r8) /* 8016A78C 001663EC 7F A3 EB 78 */ mr r3, r29 /* 8016A790 001663F0 A0 A8 00 20 */ lhz r5, 0x20(r8) /* 8016A794 001663F4 7F 84 E3 78 */ mr r4, r28 /* 8016A798 001663F8 7F 66 DB 78 */ mr r6, r27 /* 8016A79C 001663FC 7C 07 07 74 */ extsb r7, r0 /* 8016A7A0 00166400 39 08 00 22 */ addi r8, r8, 0x22 /* 8016A7A4 00166404 4B ED AF D9 */ bl func_8004577C lbl_8016A7A8: /* 8016A7A8 00166408 3B 9C 00 01 */ addi r28, r28, 1 lbl_8016A7AC: /* 8016A7AC 0016640C 7C 1C F8 00 */ cmpw r28, r31 /* 8016A7B0 00166410 41 80 FF 80 */ blt lbl_8016A730 /* 8016A7B4 00166414 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016A7B8 00166418 48 0B 9D D1 */ bl func_80224588 /* 8016A7BC 0016641C 7F A3 EB 78 */ mr r3, r29 /* 8016A7C0 00166420 38 80 00 01 */ li r4, 1 /* 8016A7C4 00166424 4B ED B5 39 */ bl func_80045CFC lbl_8016A7C8: /* 8016A7C8 00166428 39 61 00 20 */ addi r11, r1, 0x20 /* 8016A7CC 0016642C 48 05 C9 A9 */ bl _restgpr_27 /* 8016A7D0 00166430 80 01 00 24 */ lwz r0, 0x24(r1) /* 8016A7D4 00166434 7C 08 03 A6 */ mtlr r0 /* 8016A7D8 00166438 38 21 00 20 */ addi r1, r1, 0x20 /* 8016A7DC 0016643C 4E 80 00 20 */ blr .global lbl_8016A7E0 lbl_8016A7E0: /* 8016A7E0 00166440 94 21 FF A0 */ stwu r1, -0x60(r1) /* 8016A7E4 00166444 7C 08 02 A6 */ mflr r0 /* 8016A7E8 00166448 90 01 00 64 */ stw r0, 0x64(r1) /* 8016A7EC 0016644C 39 61 00 60 */ addi r11, r1, 0x60 /* 8016A7F0 00166450 48 05 C9 05 */ bl __save_gpr /* 8016A7F4 00166454 4B EC B5 A9 */ bl func_80035D9C /* 8016A7F8 00166458 90 61 00 08 */ stw r3, 8(r1) /* 8016A7FC 0016645C 38 60 00 04 */ li r3, 4 /* 8016A800 00166460 64 63 00 04 */ oris r3, r3, 4 /* 8016A804 00166464 7C 72 E3 A6 */ mtspr 0x392, r3 /* 8016A808 00166468 38 60 00 05 */ li r3, 5 /* 8016A80C 0016646C 64 63 00 05 */ oris r3, r3, 5 /* 8016A810 00166470 7C 73 E3 A6 */ mtspr 0x393, r3 /* 8016A814 00166474 38 60 00 06 */ li r3, 6 /* 8016A818 00166478 64 63 00 06 */ oris r3, r3, 6 /* 8016A81C 0016647C 7C 74 E3 A6 */ mtspr 0x394, r3 /* 8016A820 00166480 38 60 00 07 */ li r3, 7 /* 8016A824 00166484 64 63 00 07 */ oris r3, r3, 7 /* 8016A828 00166488 7C 75 E3 A6 */ mtspr 0x395, r3 /* 8016A82C 0016648C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016A830 00166490 3C 80 80 49 */ lis r4, lbl_8048CDB4@ha /* 8016A834 00166494 38 C0 00 05 */ li r6, 5 /* 8016A838 00166498 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 8016A83C 0016649C 38 A0 FF FF */ li r5, -1 /* 8016A840 001664A0 38 84 CD B4 */ addi r4, r4, lbl_8048CDB4@l /* 8016A844 001664A4 90 CD 9E B0 */ stw r6, lbl_8063F170-_SDA_BASE_(r13) /* 8016A848 001664A8 38 00 00 00 */ li r0, 0 /* 8016A84C 001664AC 90 AD 9E B8 */ stw r5, lbl_8063F178-_SDA_BASE_(r13) /* 8016A850 001664B0 98 04 00 1A */ stb r0, 0x1a(r4) /* 8016A854 001664B4 41 82 00 14 */ beq lbl_8016A868 /* 8016A858 001664B8 4B EE DC 91 */ bl func_800584E8 /* 8016A85C 001664BC 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016A860 001664C0 60 00 00 08 */ ori r0, r0, 8 /* 8016A864 001664C4 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) lbl_8016A868: /* 8016A868 001664C8 3C 80 80 49 */ lis r4, lbl_8048CDB4@ha /* 8016A86C 001664CC 39 E0 00 02 */ li r15, 2 /* 8016A870 001664D0 3B C0 00 10 */ li r30, 0x10 /* 8016A874 001664D4 3B E0 00 00 */ li r31, 0 /* 8016A878 001664D8 3B 44 CD B4 */ addi r26, r4, lbl_8048CDB4@l /* 8016A87C 001664DC 3B A0 00 FF */ li r29, 0xff /* 8016A880 001664E0 3B 00 00 01 */ li r24, 1 /* 8016A884 001664E4 3A C0 00 03 */ li r22, 3 /* 8016A888 001664E8 3E E0 00 01 */ lis r23, 1 /* 8016A88C 001664EC 3B 60 FD FD */ li r27, -515 /* 8016A890 001664F0 39 C0 00 08 */ li r14, 8 /* 8016A894 001664F4 3B 80 00 04 */ li r28, 4 /* 8016A898 001664F8 48 00 18 3C */ b lbl_8016C0D4 lbl_8016A89C: /* 8016A89C 001664FC 80 0D 9E A8 */ lwz r0, lbl_8063F168-_SDA_BASE_(r13) /* 8016A8A0 00166500 2C 00 00 00 */ cmpwi r0, 0 /* 8016A8A4 00166504 40 82 00 08 */ bne lbl_8016A8AC /* 8016A8A8 00166508 93 0D 9E A8 */ stw r24, lbl_8063F168-_SDA_BASE_(r13) lbl_8016A8AC: /* 8016A8AC 0016650C 3A 40 00 00 */ li r18, 0 /* 8016A8B0 00166510 48 00 00 34 */ b lbl_8016A8E4 lbl_8016A8B4: /* 8016A8B4 00166514 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13) /* 8016A8B8 00166518 54 80 03 5B */ rlwinm. r0, r4, 0, 0xd, 0xd /* 8016A8BC 0016651C 41 82 00 10 */ beq lbl_8016A8CC /* 8016A8C0 00166520 48 00 19 85 */ bl func_8016C244 /* 8016A8C4 00166524 7C 72 1B 78 */ mr r18, r3 /* 8016A8C8 00166528 48 00 00 1C */ b lbl_8016A8E4 lbl_8016A8CC: /* 8016A8CC 0016652C 54 80 04 A5 */ rlwinm. r0, r4, 0, 0x12, 0x12 /* 8016A8D0 00166530 41 82 00 0C */ beq lbl_8016A8DC /* 8016A8D4 00166534 48 00 18 A5 */ bl func_8016C178 /* 8016A8D8 00166538 48 00 00 08 */ b lbl_8016A8E0 lbl_8016A8DC: /* 8016A8DC 0016653C 48 00 18 25 */ bl func_8016C100 lbl_8016A8E0: /* 8016A8E0 00166540 7C 72 1B 78 */ mr r18, r3 lbl_8016A8E4: /* 8016A8E4 00166544 2C 12 00 00 */ cmpwi r18, 0 /* 8016A8E8 00166548 41 82 FF CC */ beq lbl_8016A8B4 /* 8016A8EC 0016654C 80 AD 9E DC */ lwz r5, lbl_8063F19C-_SDA_BASE_(r13) /* 8016A8F0 00166550 54 A0 07 BD */ rlwinm. r0, r5, 0, 0x1e, 0x1e /* 8016A8F4 00166554 41 82 00 E0 */ beq lbl_8016A9D4 /* 8016A8F8 00166558 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016A8FC 0016655C 54 04 03 18 */ rlwinm r4, r0, 0, 0xc, 0xc /* 8016A900 00166560 50 04 04 E6 */ rlwimi r4, r0, 0, 0x13, 0x13 /* 8016A904 00166564 3C 04 FF F8 */ addis r0, r4, 0xfff8 /* 8016A908 00166568 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016A90C 0016656C 41 82 00 C8 */ beq lbl_8016A9D4 /* 8016A910 00166570 2C 12 00 87 */ cmpwi r18, 0x87 /* 8016A914 00166574 41 82 00 C0 */ beq lbl_8016A9D4 /* 8016A918 00166578 2C 12 00 86 */ cmpwi r18, 0x86 /* 8016A91C 0016657C 41 82 00 B8 */ beq lbl_8016A9D4 /* 8016A920 00166580 70 A0 00 50 */ andi. r0, r5, 0x50 /* 8016A924 00166584 40 82 00 B0 */ bne lbl_8016A9D4 /* 8016A928 00166588 4B EE DD 39 */ bl func_80058660 /* 8016A92C 0016658C 2C 03 00 00 */ cmpwi r3, 0 /* 8016A930 00166590 41 82 00 A4 */ beq lbl_8016A9D4 /* 8016A934 00166594 4B EE DA C1 */ bl func_800583F4 /* 8016A938 00166598 4B EE DA D1 */ bl func_80058408 /* 8016A93C 0016659C 80 AD 9E C8 */ lwz r5, lbl_8063F188-_SDA_BASE_(r13) /* 8016A940 001665A0 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016A944 001665A4 54 A4 03 5A */ rlwinm r4, r5, 0, 0xd, 0xd /* 8016A948 001665A8 50 A4 04 A5 */ rlwimi. r4, r5, 0, 0x12, 0x12 /* 8016A94C 001665AC 60 04 00 F0 */ ori r4, r0, 0xf0 /* 8016A950 001665B0 41 82 00 08 */ beq lbl_8016A958 /* 8016A954 001665B4 60 04 00 50 */ ori r4, r0, 0x50 lbl_8016A958: /* 8016A958 001665B8 54 A0 03 5B */ rlwinm. r0, r5, 0, 0xd, 0xd /* 8016A95C 001665BC 90 8D 9E DC */ stw r4, lbl_8063F19C-_SDA_BASE_(r13) /* 8016A960 001665C0 41 82 00 28 */ beq lbl_8016A988 /* 8016A964 001665C4 38 60 00 84 */ li r3, 0x84 /* 8016A968 001665C8 48 01 1B 15 */ bl func_8017C47C /* 8016A96C 001665CC 48 00 1F A9 */ bl func_8016C914 /* 8016A970 001665D0 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13) /* 8016A974 001665D4 38 00 FF 0D */ li r0, -243 /* 8016A978 001665D8 93 AD 9E CC */ stw r29, lbl_8063F18C-_SDA_BASE_(r13) /* 8016A97C 001665DC 7C 80 00 38 */ and r0, r4, r0 /* 8016A980 001665E0 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016A984 001665E4 48 00 17 50 */ b lbl_8016C0D4 lbl_8016A988: /* 8016A988 001665E8 54 A0 04 A5 */ rlwinm. r0, r5, 0, 0x12, 0x12 /* 8016A98C 001665EC 41 82 00 18 */ beq lbl_8016A9A4 /* 8016A990 001665F0 38 60 00 83 */ li r3, 0x83 /* 8016A994 001665F4 38 80 00 00 */ li r4, 0 /* 8016A998 001665F8 38 A0 00 00 */ li r5, 0 /* 8016A99C 001665FC 48 00 32 75 */ bl func_8016DC10 /* 8016A9A0 00166600 48 00 1F 75 */ bl func_8016C914 lbl_8016A9A4: /* 8016A9A4 00166604 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016A9A8 00166608 54 00 05 29 */ rlwinm. r0, r0, 0, 0x14, 0x14 /* 8016A9AC 0016660C 41 82 00 28 */ beq lbl_8016A9D4 /* 8016A9B0 00166610 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016A9B4 00166614 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 8016A9B8 00166618 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016A9BC 0016661C 48 00 37 31 */ bl func_8016E0EC /* 8016A9C0 00166620 2C 03 00 00 */ cmpwi r3, 0 /* 8016A9C4 00166624 41 82 00 0C */ beq lbl_8016A9D0 /* 8016A9C8 00166628 3A 40 00 86 */ li r18, 0x86 /* 8016A9CC 0016662C 48 00 00 08 */ b lbl_8016A9D4 lbl_8016A9D0: /* 8016A9D0 00166630 48 00 32 BD */ bl func_8016DC8C lbl_8016A9D4: /* 8016A9D4 00166634 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016A9D8 00166638 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8016A9DC 0016663C 41 82 00 64 */ beq lbl_8016AA40 /* 8016A9E0 00166640 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016A9E4 00166644 54 04 03 18 */ rlwinm r4, r0, 0, 0xc, 0xc /* 8016A9E8 00166648 50 04 04 E6 */ rlwimi r4, r0, 0, 0x13, 0x13 /* 8016A9EC 0016664C 3C 04 FF F8 */ addis r0, r4, 0xfff8 /* 8016A9F0 00166650 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016A9F4 00166654 40 82 00 4C */ bne lbl_8016AA40 /* 8016A9F8 00166658 4B EE DC 69 */ bl func_80058660 /* 8016A9FC 0016665C 2C 03 00 00 */ cmpwi r3, 0 /* 8016AA00 00166660 41 82 00 40 */ beq lbl_8016AA40 /* 8016AA04 00166664 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016AA08 00166668 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 8016AA0C 0016666C 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016AA10 00166670 4B EE D9 E5 */ bl func_800583F4 /* 8016AA14 00166674 4B EE D9 F5 */ bl func_80058408 /* 8016AA18 00166678 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13) /* 8016AA1C 0016667C 54 80 05 AD */ rlwinm. r0, r4, 0, 0x16, 0x16 /* 8016AA20 00166680 41 82 00 14 */ beq lbl_8016AA34 /* 8016AA24 00166684 60 80 00 50 */ ori r0, r4, 0x50 /* 8016AA28 00166688 54 00 05 EA */ rlwinm r0, r0, 0, 0x17, 0x15 /* 8016AA2C 0016668C 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016AA30 00166690 48 00 00 10 */ b lbl_8016AA40 lbl_8016AA34: /* 8016AA34 00166694 60 80 00 A0 */ ori r0, r4, 0xa0 /* 8016AA38 00166698 54 00 05 A8 */ rlwinm r0, r0, 0, 0x16, 0x14 /* 8016AA3C 0016669C 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) lbl_8016AA40: /* 8016AA40 001666A0 2C 12 00 0C */ cmpwi r18, 0xc /* 8016AA44 001666A4 41 82 0A F8 */ beq lbl_8016B53C /* 8016AA48 001666A8 40 80 00 50 */ bge lbl_8016AA98 /* 8016AA4C 001666AC 2C 12 00 06 */ cmpwi r18, 6 /* 8016AA50 001666B0 41 82 00 94 */ beq lbl_8016AAE4 /* 8016AA54 001666B4 40 80 00 20 */ bge lbl_8016AA74 /* 8016AA58 001666B8 2C 12 00 03 */ cmpwi r18, 3 /* 8016AA5C 001666BC 41 82 01 B0 */ beq lbl_8016AC0C /* 8016AA60 001666C0 40 80 00 08 */ bge lbl_8016AA68 /* 8016AA64 001666C4 48 00 13 34 */ b lbl_8016BD98 lbl_8016AA68: /* 8016AA68 001666C8 2C 12 00 05 */ cmpwi r18, 5 /* 8016AA6C 001666CC 40 80 00 F8 */ bge lbl_8016AB64 /* 8016AA70 001666D0 48 00 13 28 */ b lbl_8016BD98 lbl_8016AA74: /* 8016AA74 001666D4 2C 12 00 09 */ cmpwi r18, 9 /* 8016AA78 001666D8 41 82 02 40 */ beq lbl_8016ACB8 /* 8016AA7C 001666DC 40 80 00 10 */ bge lbl_8016AA8C /* 8016AA80 001666E0 2C 12 00 08 */ cmpwi r18, 8 /* 8016AA84 001666E4 40 80 01 58 */ bge lbl_8016ABDC /* 8016AA88 001666E8 48 00 08 8C */ b lbl_8016B314 lbl_8016AA8C: /* 8016AA8C 001666EC 2C 12 00 0B */ cmpwi r18, 0xb /* 8016AA90 001666F0 40 80 09 00 */ bge lbl_8016B390 /* 8016AA94 001666F4 48 00 01 30 */ b lbl_8016ABC4 lbl_8016AA98: /* 8016AA98 001666F8 2C 12 00 82 */ cmpwi r18, 0x82 /* 8016AA9C 001666FC 41 82 12 68 */ beq lbl_8016BD04 /* 8016AAA0 00166700 40 80 00 28 */ bge lbl_8016AAC8 /* 8016AAA4 00166704 2C 12 00 0F */ cmpwi r18, 0xf /* 8016AAA8 00166708 41 82 0C 84 */ beq lbl_8016B72C /* 8016AAAC 0016670C 40 80 00 10 */ bge lbl_8016AABC /* 8016AAB0 00166710 2C 12 00 0E */ cmpwi r18, 0xe /* 8016AAB4 00166714 40 80 0E 28 */ bge lbl_8016B8DC /* 8016AAB8 00166718 48 00 0B B8 */ b lbl_8016B670 lbl_8016AABC: /* 8016AABC 0016671C 2C 12 00 81 */ cmpwi r18, 0x81 /* 8016AAC0 00166720 40 80 12 38 */ bge lbl_8016BCF8 /* 8016AAC4 00166724 48 00 12 D4 */ b lbl_8016BD98 lbl_8016AAC8: /* 8016AAC8 00166728 2C 12 00 87 */ cmpwi r18, 0x87 /* 8016AACC 0016672C 41 82 12 90 */ beq lbl_8016BD5C /* 8016AAD0 00166730 40 80 12 C8 */ bge lbl_8016BD98 /* 8016AAD4 00166734 2C 12 00 84 */ cmpwi r18, 0x84 /* 8016AAD8 00166738 41 82 12 C0 */ beq lbl_8016BD98 /* 8016AADC 0016673C 40 80 12 BC */ bge lbl_8016BD98 /* 8016AAE0 00166740 48 00 12 64 */ b lbl_8016BD44 lbl_8016AAE4: /* 8016AAE4 00166744 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016AAE8 00166748 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12 /* 8016AAEC 0016674C 41 82 00 30 */ beq lbl_8016AB1C /* 8016AAF0 00166750 48 24 1D 39 */ bl func_803AC828 /* 8016AAF4 00166754 48 24 31 E5 */ bl func_803ADCD8 /* 8016AAF8 00166758 54 60 07 BE */ clrlwi r0, r3, 0x1e /* 8016AAFC 0016675C 2C 00 00 03 */ cmpwi r0, 3 /* 8016AB00 00166760 41 82 00 0C */ beq lbl_8016AB0C /* 8016AB04 00166764 68 60 00 03 */ xori r0, r3, 3 /* 8016AB08 00166768 54 03 06 3E */ clrlwi r3, r0, 0x18 lbl_8016AB0C: /* 8016AB0C 0016676C 54 64 06 3E */ clrlwi r4, r3, 0x18 /* 8016AB10 00166770 38 60 00 06 */ li r3, 6 /* 8016AB14 00166774 38 A0 00 00 */ li r5, 0 /* 8016AB18 00166778 48 00 30 F9 */ bl func_8016DC10 lbl_8016AB1C: /* 8016AB1C 0016677C 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016AB20 00166780 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd /* 8016AB24 00166784 41 82 00 1C */ beq lbl_8016AB40 /* 8016AB28 00166788 38 60 00 00 */ li r3, 0 /* 8016AB2C 0016678C 48 01 09 F9 */ bl func_8017B524 /* 8016AB30 00166790 54 70 06 3E */ clrlwi r16, r3, 0x18 /* 8016AB34 00166794 48 24 1C F5 */ bl func_803AC828 /* 8016AB38 00166798 7E 04 83 78 */ mr r4, r16 /* 8016AB3C 0016679C 48 24 31 A5 */ bl func_803ADCE0 lbl_8016AB40: /* 8016AB40 001667A0 80 0D 9E F8 */ lwz r0, lbl_8063F1B8-_SDA_BASE_(r13) /* 8016AB44 001667A4 2C 00 00 00 */ cmpwi r0, 0 /* 8016AB48 001667A8 40 82 00 0C */ bne lbl_8016AB54 /* 8016AB4C 001667AC 38 60 00 00 */ li r3, 0 /* 8016AB50 001667B0 48 00 28 11 */ bl func_8016D360 lbl_8016AB54: /* 8016AB54 001667B4 80 61 00 08 */ lwz r3, 8(r1) /* 8016AB58 001667B8 38 80 00 05 */ li r4, 5 /* 8016AB5C 001667BC 4B EC B2 E5 */ bl func_80035E40 /* 8016AB60 001667C0 48 00 12 38 */ b lbl_8016BD98 lbl_8016AB64: /* 8016AB64 001667C4 88 1A 00 1A */ lbz r0, 0x1a(r26) /* 8016AB68 001667C8 38 60 00 00 */ li r3, 0 /* 8016AB6C 001667CC 54 00 06 3A */ rlwinm r0, r0, 0, 0x18, 0x1d /* 8016AB70 001667D0 98 1A 00 1A */ stb r0, 0x1a(r26) /* 8016AB74 001667D4 48 00 27 ED */ bl func_8016D360 /* 8016AB78 001667D8 4B EA 1C 71 */ bl func_8000C7E8 /* 8016AB7C 001667DC 38 80 00 02 */ li r4, 2 /* 8016AB80 001667E0 38 A0 00 00 */ li r5, 0 /* 8016AB84 001667E4 4B EB 6C 49 */ bl func_800217CC /* 8016AB88 001667E8 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016AB8C 001667EC 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c /* 8016AB90 001667F0 41 82 12 08 */ beq lbl_8016BD98 /* 8016AB94 001667F4 4B EE DA 7D */ bl func_80058610 /* 8016AB98 001667F8 2C 03 00 00 */ cmpwi r3, 0 /* 8016AB9C 001667FC 41 82 11 FC */ beq lbl_8016BD98 /* 8016ABA0 00166800 48 00 32 8D */ bl func_8016DE2C /* 8016ABA4 00166804 54 70 06 3E */ clrlwi r16, r3, 0x18 /* 8016ABA8 00166808 48 24 1C 81 */ bl func_803AC828 /* 8016ABAC 0016680C 7E 04 83 78 */ mr r4, r16 /* 8016ABB0 00166810 48 24 31 31 */ bl func_803ADCE0 /* 8016ABB4 00166814 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016ABB8 00166818 60 00 01 00 */ ori r0, r0, 0x100 /* 8016ABBC 0016681C 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016ABC0 00166820 48 00 11 D8 */ b lbl_8016BD98 lbl_8016ABC4: /* 8016ABC4 00166824 38 60 00 01 */ li r3, 1 /* 8016ABC8 00166828 48 00 27 99 */ bl func_8016D360 /* 8016ABCC 0016682C 88 1A 00 1A */ lbz r0, 0x1a(r26) /* 8016ABD0 00166830 60 00 00 02 */ ori r0, r0, 2 /* 8016ABD4 00166834 98 1A 00 1A */ stb r0, 0x1a(r26) /* 8016ABD8 00166838 48 00 11 C0 */ b lbl_8016BD98 lbl_8016ABDC: /* 8016ABDC 0016683C 88 1A 00 1A */ lbz r0, 0x1a(r26) /* 8016ABE0 00166840 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8016ABE4 00166844 40 82 00 1C */ bne lbl_8016AC00 /* 8016ABE8 00166848 48 25 E5 29 */ bl func_803C9110 /* 8016ABEC 0016684C 2C 03 00 00 */ cmpwi r3, 0 /* 8016ABF0 00166850 40 82 00 10 */ bne lbl_8016AC00 /* 8016ABF4 00166854 38 60 00 00 */ li r3, 0 /* 8016ABF8 00166858 48 00 27 69 */ bl func_8016D360 /* 8016ABFC 0016685C 48 00 11 9C */ b lbl_8016BD98 lbl_8016AC00: /* 8016AC00 00166860 38 60 00 01 */ li r3, 1 /* 8016AC04 00166864 48 00 27 5D */ bl func_8016D360 /* 8016AC08 00166868 48 00 11 90 */ b lbl_8016BD98 lbl_8016AC0C: /* 8016AC0C 0016686C 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016AC10 00166870 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12 /* 8016AC14 00166874 41 82 00 14 */ beq lbl_8016AC28 /* 8016AC18 00166878 38 60 00 81 */ li r3, 0x81 /* 8016AC1C 0016687C 38 80 00 00 */ li r4, 0 /* 8016AC20 00166880 38 A0 00 00 */ li r5, 0 /* 8016AC24 00166884 48 00 2F ED */ bl func_8016DC10 lbl_8016AC28: /* 8016AC28 00166888 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016AC2C 0016688C 54 04 03 18 */ rlwinm r4, r0, 0, 0xc, 0xc /* 8016AC30 00166890 50 04 04 E6 */ rlwimi r4, r0, 0, 0x13, 0x13 /* 8016AC34 00166894 3C 04 FF F8 */ addis r0, r4, 0xfff8 /* 8016AC38 00166898 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016AC3C 0016689C 40 82 00 10 */ bne lbl_8016AC4C /* 8016AC40 001668A0 80 0D 9E E8 */ lwz r0, lbl_8063F1A8-_SDA_BASE_(r13) /* 8016AC44 001668A4 2C 00 00 00 */ cmpwi r0, 0 /* 8016AC48 001668A8 40 82 11 50 */ bne lbl_8016BD98 lbl_8016AC4C: /* 8016AC4C 001668AC 38 60 00 00 */ li r3, 0 /* 8016AC50 001668B0 48 00 27 11 */ bl func_8016D360 /* 8016AC54 001668B4 3A 20 00 00 */ li r17, 0 /* 8016AC58 001668B8 3A 00 00 00 */ li r16, 0 lbl_8016AC5C: /* 8016AC5C 001668BC 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016AC60 001668C0 7C 80 82 14 */ add r4, r0, r16 /* 8016AC64 001668C4 80 04 00 10 */ lwz r0, 0x10(r4) /* 8016AC68 001668C8 2C 00 00 00 */ cmpwi r0, 0 /* 8016AC6C 001668CC 41 82 00 38 */ beq lbl_8016ACA4 /* 8016AC70 001668D0 2C 00 00 80 */ cmpwi r0, 0x80 /* 8016AC74 001668D4 40 80 00 30 */ bge lbl_8016ACA4 /* 8016AC78 001668D8 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13) /* 8016AC7C 001668DC 7F C0 88 30 */ slw r0, r30, r17 /* 8016AC80 001668E0 7C 80 00 39 */ and. r0, r4, r0 /* 8016AC84 001668E4 41 82 00 14 */ beq lbl_8016AC98 /* 8016AC88 001668E8 7E 43 93 78 */ mr r3, r18 /* 8016AC8C 001668EC 7E 24 8B 78 */ mr r4, r17 /* 8016AC90 001668F0 48 00 29 21 */ bl func_8016D5B0 /* 8016AC94 001668F4 48 00 00 10 */ b lbl_8016ACA4 lbl_8016AC98: /* 8016AC98 001668F8 92 CD 9E B0 */ stw r22, lbl_8063F170-_SDA_BASE_(r13) /* 8016AC9C 001668FC 56 23 06 3E */ clrlwi r3, r17, 0x18 /* 8016ACA0 00166900 48 00 1C E1 */ bl func_8016C980 lbl_8016ACA4: /* 8016ACA4 00166904 3A 31 00 01 */ addi r17, r17, 1 /* 8016ACA8 00166908 3A 10 00 04 */ addi r16, r16, 4 /* 8016ACAC 0016690C 2C 11 00 04 */ cmpwi r17, 4 /* 8016ACB0 00166910 41 80 FF AC */ blt lbl_8016AC5C /* 8016ACB4 00166914 48 00 10 E4 */ b lbl_8016BD98 lbl_8016ACB8: /* 8016ACB8 00166918 48 07 5B 31 */ bl func_801E07E8 /* 8016ACBC 0016691C 2C 03 00 00 */ cmpwi r3, 0 /* 8016ACC0 00166920 41 82 00 10 */ beq lbl_8016ACD0 /* 8016ACC4 00166924 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016ACC8 00166928 48 0B 98 C1 */ bl func_80224588 /* 8016ACCC 0016692C 4B FF FF EC */ b lbl_8016ACB8 lbl_8016ACD0: /* 8016ACD0 00166930 3A 60 00 00 */ li r19, 0 /* 8016ACD4 00166934 3A A0 00 00 */ li r21, 0 lbl_8016ACD8: /* 8016ACD8 00166938 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13) /* 8016ACDC 0016693C 7F C0 98 30 */ slw r0, r30, r19 /* 8016ACE0 00166940 7C 80 00 39 */ and. r0, r4, r0 /* 8016ACE4 00166944 41 82 00 14 */ beq lbl_8016ACF8 /* 8016ACE8 00166948 7E 43 93 78 */ mr r3, r18 /* 8016ACEC 0016694C 7E 64 9B 78 */ mr r4, r19 /* 8016ACF0 00166950 48 00 28 C1 */ bl func_8016D5B0 /* 8016ACF4 00166954 48 00 06 0C */ b lbl_8016B300 lbl_8016ACF8: /* 8016ACF8 00166958 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016ACFC 0016695C 3A 20 00 00 */ li r17, 0 /* 8016AD00 00166960 7C 80 AA 14 */ add r4, r0, r21 /* 8016AD04 00166964 80 04 00 10 */ lwz r0, 0x10(r4) /* 8016AD08 00166968 2C 00 00 FD */ cmpwi r0, 0xfd /* 8016AD0C 0016696C 40 82 00 B8 */ bne lbl_8016ADC4 /* 8016AD10 00166970 80 6D 9E C8 */ lwz r3, lbl_8063F188-_SDA_BASE_(r13) /* 8016AD14 00166974 54 60 05 29 */ rlwinm. r0, r3, 0, 0x14, 0x14 /* 8016AD18 00166978 41 82 00 74 */ beq lbl_8016AD8C /* 8016AD1C 0016697C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016AD20 00166980 48 0B 98 69 */ bl func_80224588 /* 8016AD24 00166984 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016AD28 00166988 56 64 07 FE */ clrlwi r4, r19, 0x1f /* 8016AD2C 0016698C 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c /* 8016AD30 00166990 41 82 00 08 */ beq lbl_8016AD38 /* 8016AD34 00166994 7E 64 9B 78 */ mr r4, r19 lbl_8016AD38: /* 8016AD38 00166998 54 83 06 3E */ clrlwi r3, r4, 0x18 /* 8016AD3C 0016699C 4B FF CF 11 */ bl func_80167C4C /* 8016AD40 001669A0 28 03 00 07 */ cmplwi r3, 7 /* 8016AD44 001669A4 7C 70 1B 78 */ mr r16, r3 /* 8016AD48 001669A8 40 82 00 10 */ bne lbl_8016AD58 /* 8016AD4C 001669AC 48 24 1A DD */ bl func_803AC828 /* 8016AD50 001669B0 38 80 00 07 */ li r4, 7 /* 8016AD54 001669B4 48 24 2F 8D */ bl func_803ADCE0 lbl_8016AD58: /* 8016AD58 001669B8 28 10 F5 FA */ cmplwi r16, 0xf5fa /* 8016AD5C 001669BC 40 82 05 A4 */ bne lbl_8016B300 /* 8016AD60 001669C0 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016AD64 001669C4 56 63 06 3E */ clrlwi r3, r19, 0x18 /* 8016AD68 001669C8 7C 80 AA 14 */ add r4, r0, r21 /* 8016AD6C 001669CC 80 04 00 20 */ lwz r0, 0x20(r4) /* 8016AD70 001669D0 90 04 00 10 */ stw r0, 0x10(r4) /* 8016AD74 001669D4 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016AD78 001669D8 7C 80 9A 14 */ add r4, r0, r19 /* 8016AD7C 001669DC 9B 04 00 74 */ stb r24, 0x74(r4) /* 8016AD80 001669E0 92 CD 9E B0 */ stw r22, lbl_8063F170-_SDA_BASE_(r13) /* 8016AD84 001669E4 48 00 1B FD */ bl func_8016C980 /* 8016AD88 001669E8 48 00 05 78 */ b lbl_8016B300 lbl_8016AD8C: /* 8016AD8C 001669EC 56 64 06 3E */ clrlwi r4, r19, 0x18 /* 8016AD90 001669F0 48 25 E5 39 */ bl func_803C92C8 /* 8016AD94 001669F4 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8016AD98 001669F8 48 00 1B 0D */ bl func_8016C8A4 /* 8016AD9C 001669FC 28 03 F5 FA */ cmplwi r3, 0xf5fa /* 8016ADA0 00166A00 40 82 05 60 */ bne lbl_8016B300 /* 8016ADA4 00166A04 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016ADA8 00166A08 56 63 06 3E */ clrlwi r3, r19, 0x18 /* 8016ADAC 00166A0C 7C 80 AA 14 */ add r4, r0, r21 /* 8016ADB0 00166A10 80 04 00 20 */ lwz r0, 0x20(r4) /* 8016ADB4 00166A14 90 04 00 10 */ stw r0, 0x10(r4) /* 8016ADB8 00166A18 92 CD 9E B0 */ stw r22, lbl_8063F170-_SDA_BASE_(r13) /* 8016ADBC 00166A1C 48 00 1B C5 */ bl func_8016C980 /* 8016ADC0 00166A20 48 00 05 40 */ b lbl_8016B300 lbl_8016ADC4: /* 8016ADC4 00166A24 2C 00 00 FE */ cmpwi r0, 0xfe /* 8016ADC8 00166A28 40 82 05 38 */ bne lbl_8016B300 /* 8016ADCC 00166A2C 80 6D 9E C8 */ lwz r3, lbl_8063F188-_SDA_BASE_(r13) /* 8016ADD0 00166A30 54 60 04 A5 */ rlwinm. r0, r3, 0, 0x12, 0x12 /* 8016ADD4 00166A34 41 82 00 A4 */ beq lbl_8016AE78 /* 8016ADD8 00166A38 56 60 07 FF */ clrlwi. r0, r19, 0x1f /* 8016ADDC 00166A3C 41 82 00 9C */ beq lbl_8016AE78 /* 8016ADE0 00166A40 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016ADE4 00166A44 48 0B 97 A5 */ bl func_80224588 /* 8016ADE8 00166A48 48 01 17 2D */ bl func_8017C514 /* 8016ADEC 00166A4C 2C 03 00 00 */ cmpwi r3, 0 /* 8016ADF0 00166A50 41 82 05 10 */ beq lbl_8016B300 /* 8016ADF4 00166A54 2C 03 00 84 */ cmpwi r3, 0x84 /* 8016ADF8 00166A58 41 82 00 08 */ beq lbl_8016AE00 /* 8016ADFC 00166A5C 48 00 00 14 */ b lbl_8016AE10 lbl_8016AE00: /* 8016AE00 00166A60 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016AE04 00166A64 60 00 00 A0 */ ori r0, r0, 0xa0 /* 8016AE08 00166A68 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016AE0C 00166A6C 48 00 04 F4 */ b lbl_8016B300 lbl_8016AE10: /* 8016AE10 00166A70 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016AE14 00166A74 7C 80 AA 14 */ add r4, r0, r21 /* 8016AE18 00166A78 80 04 00 10 */ lwz r0, 0x10(r4) /* 8016AE1C 00166A7C 2C 00 00 FF */ cmpwi r0, 0xff /* 8016AE20 00166A80 40 82 04 E0 */ bne lbl_8016B300 /* 8016AE24 00166A84 80 04 00 20 */ lwz r0, 0x20(r4) /* 8016AE28 00166A88 2C 00 00 04 */ cmpwi r0, 4 /* 8016AE2C 00166A8C 40 82 04 D4 */ bne lbl_8016B300 /* 8016AE30 00166A90 88 9A 00 1A */ lbz r4, 0x1a(r26) /* 8016AE34 00166A94 54 80 07 7B */ rlwinm. r0, r4, 0, 0x1d, 0x1d /* 8016AE38 00166A98 40 82 04 C8 */ bne lbl_8016B300 /* 8016AE3C 00166A9C 54 80 07 39 */ rlwinm. r0, r4, 0, 0x1c, 0x1c /* 8016AE40 00166AA0 41 82 04 C0 */ beq lbl_8016B300 /* 8016AE44 00166AA4 38 60 00 00 */ li r3, 0 /* 8016AE48 00166AA8 38 80 00 13 */ li r4, 0x13 /* 8016AE4C 00166AAC 38 A0 00 0F */ li r5, 0xf /* 8016AE50 00166AB0 38 C0 00 00 */ li r6, 0 /* 8016AE54 00166AB4 4B EF 29 39 */ bl func_8005D78C /* 8016AE58 00166AB8 88 1A 00 1A */ lbz r0, 0x1a(r26) /* 8016AE5C 00166ABC 38 60 00 85 */ li r3, 0x85 /* 8016AE60 00166AC0 38 80 00 00 */ li r4, 0 /* 8016AE64 00166AC4 38 A0 00 00 */ li r5, 0 /* 8016AE68 00166AC8 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b /* 8016AE6C 00166ACC 98 1A 00 1A */ stb r0, 0x1a(r26) /* 8016AE70 00166AD0 48 00 2D A1 */ bl func_8016DC10 /* 8016AE74 00166AD4 48 00 04 8C */ b lbl_8016B300 lbl_8016AE78: /* 8016AE78 00166AD8 56 64 06 3E */ clrlwi r4, r19, 0x18 /* 8016AE7C 00166ADC 48 25 E4 4D */ bl func_803C92C8 /* 8016AE80 00166AE0 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8016AE84 00166AE4 48 00 1A 21 */ bl func_8016C8A4 /* 8016AE88 00166AE8 28 03 00 07 */ cmplwi r3, 7 /* 8016AE8C 00166AEC 40 82 00 14 */ bne lbl_8016AEA0 /* 8016AE90 00166AF0 48 24 19 99 */ bl func_803AC828 /* 8016AE94 00166AF4 38 80 00 07 */ li r4, 7 /* 8016AE98 00166AF8 48 24 2E 49 */ bl func_803ADCE0 /* 8016AE9C 00166AFC 48 00 0E FC */ b lbl_8016BD98 lbl_8016AEA0: /* 8016AEA0 00166B00 34 03 00 01 */ addic. r0, r3, 1 /* 8016AEA4 00166B04 41 82 04 5C */ beq lbl_8016B300 /* 8016AEA8 00166B08 54 74 04 2E */ rlwinm r20, r3, 0, 0x10, 0x17 /* 8016AEAC 00166B0C 38 17 F2 00 */ addi r0, r23, -3584 /* 8016AEB0 00166B10 7C 14 00 00 */ cmpw r20, r0 /* 8016AEB4 00166B14 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8016AEB8 00166B18 41 82 00 D0 */ beq lbl_8016AF88 /* 8016AEBC 00166B1C 40 80 00 24 */ bge lbl_8016AEE0 /* 8016AEC0 00166B20 38 17 F1 00 */ addi r0, r23, -3840 /* 8016AEC4 00166B24 7C 14 00 00 */ cmpw r20, r0 /* 8016AEC8 00166B28 41 82 00 A8 */ beq lbl_8016AF70 /* 8016AECC 00166B2C 40 80 03 3C */ bge lbl_8016B208 /* 8016AED0 00166B30 38 17 F0 00 */ addi r0, r23, -4096 /* 8016AED4 00166B34 7C 14 00 00 */ cmpw r20, r0 /* 8016AED8 00166B38 41 82 00 28 */ beq lbl_8016AF00 /* 8016AEDC 00166B3C 48 00 03 2C */ b lbl_8016B208 lbl_8016AEE0: /* 8016AEE0 00166B40 38 17 F4 00 */ addi r0, r23, -3072 /* 8016AEE4 00166B44 7C 14 00 00 */ cmpw r20, r0 /* 8016AEE8 00166B48 41 82 03 20 */ beq lbl_8016B208 /* 8016AEEC 00166B4C 40 80 03 1C */ bge lbl_8016B208 /* 8016AEF0 00166B50 38 17 F3 00 */ addi r0, r23, -3328 /* 8016AEF4 00166B54 7C 14 00 00 */ cmpw r20, r0 /* 8016AEF8 00166B58 41 82 01 10 */ beq lbl_8016B008 /* 8016AEFC 00166B5C 48 00 03 0C */ b lbl_8016B208 lbl_8016AF00: /* 8016AF00 00166B60 2C 03 00 FD */ cmpwi r3, 0xfd /* 8016AF04 00166B64 41 82 00 34 */ beq lbl_8016AF38 /* 8016AF08 00166B68 40 80 00 14 */ bge lbl_8016AF1C /* 8016AF0C 00166B6C 2C 03 00 FB */ cmpwi r3, 0xfb /* 8016AF10 00166B70 41 82 00 18 */ beq lbl_8016AF28 /* 8016AF14 00166B74 40 80 00 1C */ bge lbl_8016AF30 /* 8016AF18 00166B78 48 00 02 F0 */ b lbl_8016B208 lbl_8016AF1C: /* 8016AF1C 00166B7C 2C 03 00 FF */ cmpwi r3, 0xff /* 8016AF20 00166B80 40 80 02 E8 */ bge lbl_8016B208 /* 8016AF24 00166B84 48 00 00 1C */ b lbl_8016AF40 lbl_8016AF28: /* 8016AF28 00166B88 3A 20 00 FF */ li r17, 0xff /* 8016AF2C 00166B8C 48 00 02 DC */ b lbl_8016B208 lbl_8016AF30: /* 8016AF30 00166B90 3A 20 00 01 */ li r17, 1 /* 8016AF34 00166B94 48 00 02 D4 */ b lbl_8016B208 lbl_8016AF38: /* 8016AF38 00166B98 3A 20 00 03 */ li r17, 3 /* 8016AF3C 00166B9C 48 00 02 CC */ b lbl_8016B208 lbl_8016AF40: /* 8016AF40 00166BA0 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016AF44 00166BA4 3A 20 00 04 */ li r17, 4 /* 8016AF48 00166BA8 54 04 03 18 */ rlwinm r4, r0, 0, 0xc, 0xc /* 8016AF4C 00166BAC 50 04 04 E6 */ rlwimi r4, r0, 0, 0x13, 0x13 /* 8016AF50 00166BB0 3C 04 FF F8 */ addis r0, r4, 0xfff8 /* 8016AF54 00166BB4 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016AF58 00166BB8 40 82 00 10 */ bne lbl_8016AF68 /* 8016AF5C 00166BBC 56 60 07 FF */ clrlwi. r0, r19, 0x1f /* 8016AF60 00166BC0 40 82 00 08 */ bne lbl_8016AF68 /* 8016AF64 00166BC4 93 0D 9E E4 */ stw r24, lbl_8063F1A4-_SDA_BASE_(r13) lbl_8016AF68: /* 8016AF68 00166BC8 93 0D 9E F8 */ stw r24, lbl_8063F1B8-_SDA_BASE_(r13) /* 8016AF6C 00166BCC 48 00 02 9C */ b lbl_8016B208 lbl_8016AF70: /* 8016AF70 00166BD0 28 03 00 FB */ cmplwi r3, 0xfb /* 8016AF74 00166BD4 40 82 00 0C */ bne lbl_8016AF80 /* 8016AF78 00166BD8 3A 20 00 FF */ li r17, 0xff /* 8016AF7C 00166BDC 48 00 02 8C */ b lbl_8016B208 lbl_8016AF80: /* 8016AF80 00166BE0 3A 23 00 01 */ addi r17, r3, 1 /* 8016AF84 00166BE4 48 00 02 84 */ b lbl_8016B208 lbl_8016AF88: /* 8016AF88 00166BE8 28 03 00 FB */ cmplwi r3, 0xfb /* 8016AF8C 00166BEC 40 82 00 0C */ bne lbl_8016AF98 /* 8016AF90 00166BF0 3A 20 00 FF */ li r17, 0xff /* 8016AF94 00166BF4 48 00 02 74 */ b lbl_8016B208 lbl_8016AF98: /* 8016AF98 00166BF8 3A 20 00 00 */ li r17, 0 /* 8016AF9C 00166BFC 7F 00 88 30 */ slw r0, r24, r17 /* 8016AFA0 00166C00 7C 60 00 39 */ and. r0, r3, r0 /* 8016AFA4 00166C04 40 82 00 38 */ bne lbl_8016AFDC /* 8016AFA8 00166C08 3A 20 00 01 */ li r17, 1 /* 8016AFAC 00166C0C 7F 00 88 30 */ slw r0, r24, r17 /* 8016AFB0 00166C10 7C 60 00 39 */ and. r0, r3, r0 /* 8016AFB4 00166C14 40 82 00 28 */ bne lbl_8016AFDC /* 8016AFB8 00166C18 3A 20 00 02 */ li r17, 2 /* 8016AFBC 00166C1C 7F 00 88 30 */ slw r0, r24, r17 /* 8016AFC0 00166C20 7C 60 00 39 */ and. r0, r3, r0 /* 8016AFC4 00166C24 40 82 00 18 */ bne lbl_8016AFDC /* 8016AFC8 00166C28 3A 20 00 03 */ li r17, 3 /* 8016AFCC 00166C2C 7F 00 88 30 */ slw r0, r24, r17 /* 8016AFD0 00166C30 7C 60 00 39 */ and. r0, r3, r0 /* 8016AFD4 00166C34 40 82 00 08 */ bne lbl_8016AFDC /* 8016AFD8 00166C38 3A 20 00 04 */ li r17, 4 lbl_8016AFDC: /* 8016AFDC 00166C3C 2C 11 00 04 */ cmpwi r17, 4 /* 8016AFE0 00166C40 41 80 00 08 */ blt lbl_8016AFE8 /* 8016AFE4 00166C44 3A 20 00 00 */ li r17, 0 lbl_8016AFE8: /* 8016AFE8 00166C48 56 60 07 FF */ clrlwi. r0, r19, 0x1f /* 8016AFEC 00166C4C 40 82 00 10 */ bne lbl_8016AFFC /* 8016AFF0 00166C50 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016AFF4 00166C54 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd /* 8016AFF8 00166C58 41 82 00 08 */ beq lbl_8016B000 lbl_8016AFFC: /* 8016AFFC 00166C5C 6A 31 00 01 */ xori r17, r17, 1 lbl_8016B000: /* 8016B000 00166C60 3A 31 00 01 */ addi r17, r17, 1 /* 8016B004 00166C64 48 00 02 04 */ b lbl_8016B208 lbl_8016B008: /* 8016B008 00166C68 28 03 00 FB */ cmplwi r3, 0xfb /* 8016B00C 00166C6C 40 82 00 0C */ bne lbl_8016B018 /* 8016B010 00166C70 3A 20 00 FF */ li r17, 0xff /* 8016B014 00166C74 48 00 01 F4 */ b lbl_8016B208 lbl_8016B018: /* 8016B018 00166C78 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016B01C 00166C7C 7C 71 1B 78 */ mr r17, r3 /* 8016B020 00166C80 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B024 00166C84 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd /* 8016B028 00166C88 7C 84 AA 14 */ add r4, r4, r21 /* 8016B02C 00166C8C 82 04 00 30 */ lwz r16, 0x30(r4) /* 8016B030 00166C90 41 82 00 14 */ beq lbl_8016B044 /* 8016B034 00166C94 7E 04 83 78 */ mr r4, r16 /* 8016B038 00166C98 48 00 2A 21 */ bl func_8016DA58 /* 8016B03C 00166C9C 7C 79 1B 78 */ mr r25, r3 /* 8016B040 00166CA0 48 00 00 10 */ b lbl_8016B050 lbl_8016B044: /* 8016B044 00166CA4 7E 04 83 78 */ mr r4, r16 /* 8016B048 00166CA8 48 00 29 01 */ bl func_8016D948 /* 8016B04C 00166CAC 7C 79 1B 78 */ mr r25, r3 lbl_8016B050: /* 8016B050 00166CB0 2C 19 00 00 */ cmpwi r25, 0 /* 8016B054 00166CB4 41 82 00 80 */ beq lbl_8016B0D4 /* 8016B058 00166CB8 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016B05C 00166CBC 54 00 05 29 */ rlwinm. r0, r0, 0, 0x14, 0x14 /* 8016B060 00166CC0 41 82 00 58 */ beq lbl_8016B0B8 /* 8016B064 00166CC4 2C 19 50 5A */ cmpwi r25, 0x505a /* 8016B068 00166CC8 38 C0 00 00 */ li r6, 0 /* 8016B06C 00166CCC 41 82 00 20 */ beq lbl_8016B08C /* 8016B070 00166CD0 88 10 00 0D */ lbz r0, 0xd(r16) /* 8016B074 00166CD4 7E 64 9B 78 */ mr r4, r19 /* 8016B078 00166CD8 80 70 00 04 */ lwz r3, 4(r16) /* 8016B07C 00166CDC 7C B0 02 14 */ add r5, r16, r0 /* 8016B080 00166CE0 88 A5 00 20 */ lbz r5, 0x20(r5) /* 8016B084 00166CE4 48 24 19 21 */ bl func_803AC9A4 /* 8016B088 00166CE8 7C 66 1B 78 */ mr r6, r3 lbl_8016B08C: /* 8016B08C 00166CEC 80 70 00 04 */ lwz r3, 4(r16) /* 8016B090 00166CF0 56 64 06 3E */ clrlwi r4, r19, 0x18 /* 8016B094 00166CF4 57 25 04 3E */ clrlwi r5, r25, 0x10 /* 8016B098 00166CF8 48 00 C9 C5 */ bl func_80177A5C /* 8016B09C 00166CFC 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016B0A0 00166D00 28 00 00 07 */ cmplwi r0, 7 /* 8016B0A4 00166D04 40 82 00 28 */ bne lbl_8016B0CC /* 8016B0A8 00166D08 48 24 17 81 */ bl func_803AC828 /* 8016B0AC 00166D0C 38 80 00 07 */ li r4, 7 /* 8016B0B0 00166D10 48 24 2C 31 */ bl func_803ADCE0 /* 8016B0B4 00166D14 48 00 00 18 */ b lbl_8016B0CC lbl_8016B0B8: /* 8016B0B8 00166D18 88 D0 00 0D */ lbz r6, 0xd(r16) /* 8016B0BC 00166D1C 56 63 07 FE */ clrlwi r3, r19, 0x1f /* 8016B0C0 00166D20 57 25 04 3E */ clrlwi r5, r25, 0x10 /* 8016B0C4 00166D24 38 80 00 09 */ li r4, 9 /* 8016B0C8 00166D28 4B EF 26 C5 */ bl func_8005D78C lbl_8016B0CC: /* 8016B0CC 00166D2C 3A 20 FF FF */ li r17, -1 /* 8016B0D0 00166D30 48 00 01 38 */ b lbl_8016B208 lbl_8016B0D4: /* 8016B0D4 00166D34 88 9A 00 1A */ lbz r4, 0x1a(r26) /* 8016B0D8 00166D38 54 80 07 7B */ rlwinm. r0, r4, 0, 0x1d, 0x1d /* 8016B0DC 00166D3C 40 82 00 5C */ bne lbl_8016B138 /* 8016B0E0 00166D40 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B0E4 00166D44 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8016B0E8 00166D48 41 82 00 50 */ beq lbl_8016B138 /* 8016B0EC 00166D4C 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016B0F0 00166D50 54 00 05 29 */ rlwinm. r0, r0, 0, 0x14, 0x14 /* 8016B0F4 00166D54 41 82 00 30 */ beq lbl_8016B124 /* 8016B0F8 00166D58 56 60 07 FE */ clrlwi r0, r19, 0x1f /* 8016B0FC 00166D5C 7D C0 00 30 */ slw r0, r14, r0 /* 8016B100 00166D60 7C 80 00 78 */ andc r0, r4, r0 /* 8016B104 00166D64 54 00 06 79 */ rlwinm. r0, r0, 0, 0x19, 0x1c /* 8016B108 00166D68 40 82 00 30 */ bne lbl_8016B138 /* 8016B10C 00166D6C 4B EE D2 E9 */ bl func_800583F4 /* 8016B110 00166D70 4B EE D2 F9 */ bl func_80058408 /* 8016B114 00166D74 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B118 00166D78 7C 00 D8 38 */ and r0, r0, r27 /* 8016B11C 00166D7C 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B120 00166D80 48 00 00 18 */ b lbl_8016B138 lbl_8016B124: /* 8016B124 00166D84 4B EE D2 D1 */ bl func_800583F4 /* 8016B128 00166D88 4B EE D2 E1 */ bl func_80058408 /* 8016B12C 00166D8C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B130 00166D90 7C 00 D8 38 */ and r0, r0, r27 /* 8016B134 00166D94 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) lbl_8016B138: /* 8016B138 00166D98 80 AD 9E C8 */ lwz r5, lbl_8063F188-_SDA_BASE_(r13) /* 8016B13C 00166D9C 54 A0 05 29 */ rlwinm. r0, r5, 0, 0x14, 0x14 /* 8016B140 00166DA0 41 82 00 5C */ beq lbl_8016B19C /* 8016B144 00166DA4 54 A0 07 39 */ rlwinm. r0, r5, 0, 0x1c, 0x1c /* 8016B148 00166DA8 56 70 07 FE */ clrlwi r16, r19, 0x1f /* 8016B14C 00166DAC 41 82 00 08 */ beq lbl_8016B154 /* 8016B150 00166DB0 7E 70 9B 78 */ mr r16, r19 lbl_8016B154: /* 8016B154 00166DB4 56 03 06 3E */ clrlwi r3, r16, 0x18 /* 8016B158 00166DB8 38 80 00 00 */ li r4, 0 /* 8016B15C 00166DBC 48 00 CA 79 */ bl func_80177BD4 /* 8016B160 00166DC0 88 1A 00 1A */ lbz r0, 0x1a(r26) /* 8016B164 00166DC4 54 00 06 79 */ rlwinm. r0, r0, 0, 0x19, 0x1c /* 8016B168 00166DC8 41 82 00 A0 */ beq lbl_8016B208 /* 8016B16C 00166DCC 7E 03 83 78 */ mr r3, r16 /* 8016B170 00166DD0 48 00 2A 65 */ bl func_8016DBD4 /* 8016B174 00166DD4 7E 03 83 78 */ mr r3, r16 /* 8016B178 00166DD8 38 80 00 09 */ li r4, 9 /* 8016B17C 00166DDC 48 00 CA 61 */ bl func_80177BDC /* 8016B180 00166DE0 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016B184 00166DE4 28 00 00 07 */ cmplwi r0, 7 /* 8016B188 00166DE8 40 82 00 80 */ bne lbl_8016B208 /* 8016B18C 00166DEC 48 24 16 9D */ bl func_803AC828 /* 8016B190 00166DF0 38 80 00 07 */ li r4, 7 /* 8016B194 00166DF4 48 24 2B 4D */ bl func_803ADCE0 /* 8016B198 00166DF8 48 00 00 70 */ b lbl_8016B208 lbl_8016B19C: /* 8016B19C 00166DFC 54 A4 03 18 */ rlwinm r4, r5, 0, 0xc, 0xc /* 8016B1A0 00166E00 50 A4 04 E6 */ rlwimi r4, r5, 0, 0x13, 0x13 /* 8016B1A4 00166E04 3C 04 FF F8 */ addis r0, r4, 0xfff8 /* 8016B1A8 00166E08 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016B1AC 00166E0C 40 82 00 2C */ bne lbl_8016B1D8 /* 8016B1B0 00166E10 88 1A 00 1A */ lbz r0, 0x1a(r26) /* 8016B1B4 00166E14 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 8016B1B8 00166E18 40 82 00 20 */ bne lbl_8016B1D8 /* 8016B1BC 00166E1C 48 00 17 59 */ bl func_8016C914 /* 8016B1C0 00166E20 80 0D 9E E8 */ lwz r0, lbl_8063F1A8-_SDA_BASE_(r13) /* 8016B1C4 00166E24 2C 00 00 00 */ cmpwi r0, 0 /* 8016B1C8 00166E28 41 82 00 40 */ beq lbl_8016B208 /* 8016B1CC 00166E2C 93 ED 9E E8 */ stw r31, lbl_8063F1A8-_SDA_BASE_(r13) /* 8016B1D0 00166E30 93 0D 9E EC */ stw r24, lbl_8063F1AC-_SDA_BASE_(r13) /* 8016B1D4 00166E34 48 00 00 34 */ b lbl_8016B208 lbl_8016B1D8: /* 8016B1D8 00166E38 56 70 07 FE */ clrlwi r16, r19, 0x1f /* 8016B1DC 00166E3C 38 80 00 0B */ li r4, 0xb /* 8016B1E0 00166E40 7E 03 83 78 */ mr r3, r16 /* 8016B1E4 00166E44 38 A0 00 0F */ li r5, 0xf /* 8016B1E8 00166E48 38 C0 00 00 */ li r6, 0 /* 8016B1EC 00166E4C 4B EF 25 A1 */ bl func_8005D78C lbl_8016B1F0: /* 8016B1F0 00166E50 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016B1F4 00166E54 48 0B 93 95 */ bl func_80224588 /* 8016B1F8 00166E58 7E 03 83 78 */ mr r3, r16 /* 8016B1FC 00166E5C 4B EF 3A 25 */ bl func_8005EC20 /* 8016B200 00166E60 28 03 F5 FA */ cmplwi r3, 0xf5fa /* 8016B204 00166E64 40 82 FF EC */ bne lbl_8016B1F0 lbl_8016B208: /* 8016B208 00166E68 2C 11 00 00 */ cmpwi r17, 0 /* 8016B20C 00166E6C 40 80 00 18 */ bge lbl_8016B224 /* 8016B210 00166E70 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B214 00166E74 7C 80 AA 14 */ add r4, r0, r21 /* 8016B218 00166E78 38 00 00 FD */ li r0, 0xfd /* 8016B21C 00166E7C 90 04 00 10 */ stw r0, 0x10(r4) /* 8016B220 00166E80 48 00 00 E0 */ b lbl_8016B300 lbl_8016B224: /* 8016B224 00166E84 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B228 00166E88 7E 24 A9 2E */ stwx r17, r4, r21 /* 8016B22C 00166E8C 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B230 00166E90 7C 80 AA 14 */ add r4, r0, r21 /* 8016B234 00166E94 93 A4 00 10 */ stw r29, 0x10(r4) /* 8016B238 00166E98 80 0D 9E E4 */ lwz r0, lbl_8063F1A4-_SDA_BASE_(r13) /* 8016B23C 00166E9C 2C 00 00 00 */ cmpwi r0, 0 /* 8016B240 00166EA0 41 82 00 38 */ beq lbl_8016B278 /* 8016B244 00166EA4 56 60 07 FF */ clrlwi. r0, r19, 0x1f /* 8016B248 00166EA8 40 82 00 30 */ bne lbl_8016B278 /* 8016B24C 00166EAC 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B250 00166EB0 93 84 00 04 */ stw r28, 4(r4) /* 8016B254 00166EB4 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B258 00166EB8 93 A4 00 14 */ stw r29, 0x14(r4) /* 8016B25C 00166EBC 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016B260 00166EC0 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8016B264 00166EC4 41 82 00 14 */ beq lbl_8016B278 /* 8016B268 00166EC8 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B26C 00166ECC 93 84 00 0C */ stw r28, 0xc(r4) /* 8016B270 00166ED0 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B274 00166ED4 93 A4 00 1C */ stw r29, 0x1c(r4) lbl_8016B278: /* 8016B278 00166ED8 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016B27C 00166EDC 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd /* 8016B280 00166EE0 41 82 00 44 */ beq lbl_8016B2C4 /* 8016B284 00166EE4 38 60 00 09 */ li r3, 9 /* 8016B288 00166EE8 48 01 11 F5 */ bl func_8017C47C /* 8016B28C 00166EEC 28 14 F2 00 */ cmplwi r20, 0xf200 /* 8016B290 00166EF0 93 ED 9E CC */ stw r31, lbl_8063F18C-_SDA_BASE_(r13) /* 8016B294 00166EF4 40 82 00 20 */ bne lbl_8016B2B4 /* 8016B298 00166EF8 2C 11 00 FF */ cmpwi r17, 0xff /* 8016B29C 00166EFC 41 82 00 18 */ beq lbl_8016B2B4 /* 8016B2A0 00166F00 38 60 00 00 */ li r3, 0 /* 8016B2A4 00166F04 38 80 00 11 */ li r4, 0x11 /* 8016B2A8 00166F08 38 A0 00 0F */ li r5, 0xf /* 8016B2AC 00166F0C 38 C0 00 00 */ li r6, 0 /* 8016B2B0 00166F10 4B EF 24 DD */ bl func_8005D78C lbl_8016B2B4: /* 8016B2B4 00166F14 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B2B8 00166F18 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8016B2BC 00166F1C 41 82 00 08 */ beq lbl_8016B2C4 /* 8016B2C0 00166F20 4B EE D2 01 */ bl func_800584C0 lbl_8016B2C4: /* 8016B2C4 00166F24 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016B2C8 00166F28 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12 /* 8016B2CC 00166F2C 41 82 00 34 */ beq lbl_8016B300 /* 8016B2D0 00166F30 28 14 F3 00 */ cmplwi r20, 0xf300 /* 8016B2D4 00166F34 40 82 00 2C */ bne lbl_8016B300 /* 8016B2D8 00166F38 88 1A 00 1A */ lbz r0, 0x1a(r26) /* 8016B2DC 00166F3C 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 8016B2E0 00166F40 41 82 00 20 */ beq lbl_8016B300 /* 8016B2E4 00166F44 38 60 00 83 */ li r3, 0x83 /* 8016B2E8 00166F48 38 80 00 00 */ li r4, 0 /* 8016B2EC 00166F4C 38 A0 00 00 */ li r5, 0 /* 8016B2F0 00166F50 48 00 29 21 */ bl func_8016DC10 /* 8016B2F4 00166F54 88 1A 00 1A */ lbz r0, 0x1a(r26) /* 8016B2F8 00166F58 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a /* 8016B2FC 00166F5C 98 1A 00 1A */ stb r0, 0x1a(r26) lbl_8016B300: /* 8016B300 00166F60 3A 73 00 01 */ addi r19, r19, 1 /* 8016B304 00166F64 3A B5 00 04 */ addi r21, r21, 4 /* 8016B308 00166F68 2C 13 00 04 */ cmpwi r19, 4 /* 8016B30C 00166F6C 41 80 F9 CC */ blt lbl_8016ACD8 /* 8016B310 00166F70 48 00 0A 88 */ b lbl_8016BD98 lbl_8016B314: /* 8016B314 00166F74 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016B318 00166F78 88 9A 00 1A */ lbz r4, 0x1a(r26) /* 8016B31C 00166F7C 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd /* 8016B320 00166F80 60 80 00 01 */ ori r0, r4, 1 /* 8016B324 00166F84 98 1A 00 1A */ stb r0, 0x1a(r26) /* 8016B328 00166F88 41 82 00 10 */ beq lbl_8016B338 /* 8016B32C 00166F8C 38 60 00 00 */ li r3, 0 /* 8016B330 00166F90 48 01 01 F5 */ bl func_8017B524 /* 8016B334 00166F94 48 00 2A A5 */ bl func_8016DDD8 lbl_8016B338: /* 8016B338 00166F98 48 25 DD D9 */ bl func_803C9110 /* 8016B33C 00166F9C 38 63 00 01 */ addi r3, r3, 1 /* 8016B340 00166FA0 48 00 47 05 */ bl func_8016FA44 /* 8016B344 00166FA4 48 00 15 D1 */ bl func_8016C914 /* 8016B348 00166FA8 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B34C 00166FAC 88 9A 00 1A */ lbz r4, 0x1a(r26) /* 8016B350 00166FB0 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8016B354 00166FB4 54 80 07 B8 */ rlwinm r0, r4, 0, 0x1e, 0x1c /* 8016B358 00166FB8 98 1A 00 1A */ stb r0, 0x1a(r26) /* 8016B35C 00166FBC 41 82 00 1C */ beq lbl_8016B378 /* 8016B360 00166FC0 4B EE D0 95 */ bl func_800583F4 /* 8016B364 00166FC4 4B EE D0 A5 */ bl func_80058408 /* 8016B368 00166FC8 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B36C 00166FCC 38 00 F9 FD */ li r0, -1539 /* 8016B370 00166FD0 7C 80 00 38 */ and r0, r4, r0 /* 8016B374 00166FD4 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) lbl_8016B378: /* 8016B378 00166FD8 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B37C 00166FDC 54 80 07 FF */ clrlwi. r0, r4, 0x1f /* 8016B380 00166FE0 41 82 0A 18 */ beq lbl_8016BD98 /* 8016B384 00166FE4 54 80 07 2E */ rlwinm r0, r4, 0, 0x1c, 0x17 /* 8016B388 00166FE8 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B38C 00166FEC 48 00 0A 0C */ b lbl_8016BD98 lbl_8016B390: /* 8016B390 00166FF0 3A 20 00 00 */ li r17, 0 /* 8016B394 00166FF4 3A 00 00 00 */ li r16, 0 lbl_8016B398: /* 8016B398 00166FF8 80 CD 9F 08 */ lwz r6, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B39C 00166FFC 7C 86 82 14 */ add r4, r6, r16 /* 8016B3A0 00167000 80 A4 00 60 */ lwz r5, 0x60(r4) /* 8016B3A4 00167004 88 05 00 00 */ lbz r0, 0(r5) /* 8016B3A8 00167008 2C 00 00 00 */ cmpwi r0, 0 /* 8016B3AC 0016700C 41 82 01 6C */ beq lbl_8016B518 /* 8016B3B0 00167010 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13) /* 8016B3B4 00167014 54 80 05 29 */ rlwinm. r0, r4, 0, 0x14, 0x14 /* 8016B3B8 00167018 41 82 00 5C */ beq lbl_8016B414 /* 8016B3BC 0016701C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B3C0 00167020 54 00 06 37 */ rlwinm. r0, r0, 0, 0x18, 0x1b /* 8016B3C4 00167024 40 82 01 54 */ bne lbl_8016B518 /* 8016B3C8 00167028 80 66 00 70 */ lwz r3, 0x70(r6) /* 8016B3CC 0016702C 38 85 00 28 */ addi r4, r5, 0x28 /* 8016B3D0 00167030 38 A0 01 04 */ li r5, 0x104 /* 8016B3D4 00167034 48 00 BC AD */ bl func_80177080 /* 8016B3D8 00167038 80 6D 9E C8 */ lwz r3, lbl_8063F188-_SDA_BASE_(r13) /* 8016B3DC 0016703C 56 24 06 3E */ clrlwi r4, r17, 0x18 /* 8016B3E0 00167040 48 25 DE E9 */ bl func_803C92C8 /* 8016B3E4 00167044 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B3E8 00167048 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8016B3EC 0016704C 38 A0 00 04 */ li r5, 4 /* 8016B3F0 00167050 80 84 00 70 */ lwz r4, 0x70(r4) /* 8016B3F4 00167054 48 00 C6 55 */ bl func_80177A48 /* 8016B3F8 00167058 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016B3FC 0016705C 28 00 00 07 */ cmplwi r0, 7 /* 8016B400 00167060 40 82 01 18 */ bne lbl_8016B518 /* 8016B404 00167064 48 24 14 25 */ bl func_803AC828 /* 8016B408 00167068 38 80 00 07 */ li r4, 7 /* 8016B40C 0016706C 48 24 28 D5 */ bl func_803ADCE0 /* 8016B410 00167070 48 00 01 08 */ b lbl_8016B518 lbl_8016B414: /* 8016B414 00167074 54 80 04 A5 */ rlwinm. r0, r4, 0, 0x12, 0x12 /* 8016B418 00167078 41 82 00 38 */ beq lbl_8016B450 /* 8016B41C 0016707C 56 20 07 FF */ clrlwi. r0, r17, 0x1f /* 8016B420 00167080 41 82 00 30 */ beq lbl_8016B450 /* 8016B424 00167084 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B428 00167088 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a /* 8016B42C 0016708C 40 82 00 14 */ bne lbl_8016B440 /* 8016B430 00167090 7E 43 93 78 */ mr r3, r18 /* 8016B434 00167094 7E 24 8B 78 */ mr r4, r17 /* 8016B438 00167098 38 A0 00 00 */ li r5, 0 /* 8016B43C 0016709C 48 00 27 D5 */ bl func_8016DC10 lbl_8016B440: /* 8016B440 001670A0 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B444 001670A4 7C 80 82 14 */ add r4, r0, r16 /* 8016B448 001670A8 93 A4 00 10 */ stw r29, 0x10(r4) /* 8016B44C 001670AC 48 00 00 CC */ b lbl_8016B518 lbl_8016B450: /* 8016B450 001670B0 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B454 001670B4 7F C0 88 30 */ slw r0, r30, r17 /* 8016B458 001670B8 7C 80 00 39 */ and. r0, r4, r0 /* 8016B45C 001670BC 41 82 00 24 */ beq lbl_8016B480 /* 8016B460 001670C0 7E 43 93 78 */ mr r3, r18 /* 8016B464 001670C4 7E 24 8B 78 */ mr r4, r17 /* 8016B468 001670C8 48 00 21 49 */ bl func_8016D5B0 /* 8016B46C 001670CC 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B470 001670D0 7C 80 82 14 */ add r4, r0, r16 /* 8016B474 001670D4 80 84 00 60 */ lwz r4, 0x60(r4) /* 8016B478 001670D8 9B E4 00 00 */ stb r31, 0(r4) /* 8016B47C 001670DC 48 00 00 AC */ b lbl_8016B528 lbl_8016B480: /* 8016B480 001670E0 80 66 00 70 */ lwz r3, 0x70(r6) /* 8016B484 001670E4 38 85 00 28 */ addi r4, r5, 0x28 /* 8016B488 001670E8 38 A0 01 04 */ li r5, 0x104 /* 8016B48C 001670EC 48 00 BB F5 */ bl func_80177080 /* 8016B490 001670F0 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B494 001670F4 56 23 07 FE */ clrlwi r3, r17, 0x1f /* 8016B498 001670F8 80 84 00 70 */ lwz r4, 0x70(r4) /* 8016B49C 001670FC 4B EF 23 19 */ bl func_8005D7B4 /* 8016B4A0 00167100 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B4A4 00167104 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8016B4A8 00167108 40 82 00 10 */ bne lbl_8016B4B8 /* 8016B4AC 0016710C 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016B4B0 00167110 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd /* 8016B4B4 00167114 41 82 00 1C */ beq lbl_8016B4D0 lbl_8016B4B8: /* 8016B4B8 00167118 3A 60 00 00 */ li r19, 0 lbl_8016B4BC: /* 8016B4BC 0016711C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016B4C0 00167120 48 0B 90 C9 */ bl func_80224588 /* 8016B4C4 00167124 3A 73 00 01 */ addi r19, r19, 1 /* 8016B4C8 00167128 2C 13 00 32 */ cmpwi r19, 0x32 /* 8016B4CC 0016712C 41 80 FF F0 */ blt lbl_8016B4BC lbl_8016B4D0: /* 8016B4D0 00167130 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016B4D4 00167134 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd /* 8016B4D8 00167138 41 82 00 40 */ beq lbl_8016B518 /* 8016B4DC 0016713C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B4E0 00167140 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8016B4E4 00167144 41 82 00 08 */ beq lbl_8016B4EC /* 8016B4E8 00167148 4B EE CF ED */ bl func_800584D4 lbl_8016B4EC: /* 8016B4EC 0016714C 80 0D 9E CC */ lwz r0, lbl_8063F18C-_SDA_BASE_(r13) /* 8016B4F0 00167150 2C 00 00 00 */ cmpwi r0, 0 /* 8016B4F4 00167154 40 82 00 14 */ bne lbl_8016B508 /* 8016B4F8 00167158 38 00 00 0C */ li r0, 0xc /* 8016B4FC 0016715C 93 ED 9E D0 */ stw r31, lbl_8063F190-_SDA_BASE_(r13) /* 8016B500 00167160 90 0D 9E CC */ stw r0, lbl_8063F18C-_SDA_BASE_(r13) /* 8016B504 00167164 92 2D 9E D4 */ stw r17, lbl_8063F194-_SDA_BASE_(r13) lbl_8016B508: /* 8016B508 00167168 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B50C 0016716C 7C 80 82 14 */ add r4, r0, r16 /* 8016B510 00167170 38 00 00 0B */ li r0, 0xb /* 8016B514 00167174 90 04 00 10 */ stw r0, 0x10(r4) lbl_8016B518: /* 8016B518 00167178 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B51C 0016717C 7C 80 82 14 */ add r4, r0, r16 /* 8016B520 00167180 80 84 00 60 */ lwz r4, 0x60(r4) /* 8016B524 00167184 9B E4 00 00 */ stb r31, 0(r4) lbl_8016B528: /* 8016B528 00167188 3A 31 00 01 */ addi r17, r17, 1 /* 8016B52C 0016718C 3A 10 00 04 */ addi r16, r16, 4 /* 8016B530 00167190 2C 11 00 04 */ cmpwi r17, 4 /* 8016B534 00167194 41 80 FE 64 */ blt lbl_8016B398 /* 8016B538 00167198 48 00 08 60 */ b lbl_8016BD98 lbl_8016B53C: /* 8016B53C 0016719C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016B540 001671A0 48 0B 90 49 */ bl func_80224588 /* 8016B544 001671A4 3A 20 00 00 */ li r17, 0 /* 8016B548 001671A8 3A 00 00 00 */ li r16, 0 lbl_8016B54C: /* 8016B54C 001671AC 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B550 001671B0 7C 80 82 14 */ add r4, r0, r16 /* 8016B554 001671B4 80 04 00 10 */ lwz r0, 0x10(r4) /* 8016B558 001671B8 2C 00 00 0B */ cmpwi r0, 0xb /* 8016B55C 001671BC 40 82 01 00 */ bne lbl_8016B65C /* 8016B560 001671C0 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B564 001671C4 7F C0 88 30 */ slw r0, r30, r17 /* 8016B568 001671C8 7C 80 00 39 */ and. r0, r4, r0 /* 8016B56C 001671CC 41 82 00 14 */ beq lbl_8016B580 /* 8016B570 001671D0 7E 43 93 78 */ mr r3, r18 /* 8016B574 001671D4 7E 24 8B 78 */ mr r4, r17 /* 8016B578 001671D8 48 00 20 39 */ bl func_8016D5B0 /* 8016B57C 001671DC 48 00 00 E0 */ b lbl_8016B65C lbl_8016B580: /* 8016B580 001671E0 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13) /* 8016B584 001671E4 54 80 05 29 */ rlwinm. r0, r4, 0, 0x14, 0x14 /* 8016B588 001671E8 41 82 00 4C */ beq lbl_8016B5D4 /* 8016B58C 001671EC 54 80 07 39 */ rlwinm. r0, r4, 0, 0x1c, 0x1c /* 8016B590 001671F0 56 20 07 FE */ clrlwi r0, r17, 0x1f /* 8016B594 001671F4 41 82 00 08 */ beq lbl_8016B59C /* 8016B598 001671F8 7E 20 8B 78 */ mr r0, r17 lbl_8016B59C: /* 8016B59C 001671FC 54 03 06 3E */ clrlwi r3, r0, 0x18 /* 8016B5A0 00167200 4B FF C6 AD */ bl func_80167C4C /* 8016B5A4 00167204 28 03 00 07 */ cmplwi r3, 7 /* 8016B5A8 00167208 7C 73 1B 78 */ mr r19, r3 /* 8016B5AC 0016720C 40 82 00 10 */ bne lbl_8016B5BC /* 8016B5B0 00167210 48 24 12 79 */ bl func_803AC828 /* 8016B5B4 00167214 38 80 00 07 */ li r4, 7 /* 8016B5B8 00167218 48 24 27 29 */ bl func_803ADCE0 lbl_8016B5BC: /* 8016B5BC 0016721C 28 13 F5 FA */ cmplwi r19, 0xf5fa /* 8016B5C0 00167220 40 82 00 9C */ bne lbl_8016B65C /* 8016B5C4 00167224 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B5C8 00167228 7C 80 82 14 */ add r4, r0, r16 /* 8016B5CC 0016722C 93 A4 00 10 */ stw r29, 0x10(r4) /* 8016B5D0 00167230 48 00 00 8C */ b lbl_8016B65C lbl_8016B5D4: /* 8016B5D4 00167234 56 23 07 FE */ clrlwi r3, r17, 0x1f /* 8016B5D8 00167238 4B EF 36 49 */ bl func_8005EC20 /* 8016B5DC 0016723C 28 03 F5 FA */ cmplwi r3, 0xf5fa /* 8016B5E0 00167240 40 82 00 7C */ bne lbl_8016B65C /* 8016B5E4 00167244 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016B5E8 00167248 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd /* 8016B5EC 0016724C 41 82 00 44 */ beq lbl_8016B630 /* 8016B5F0 00167250 80 0D 9E D0 */ lwz r0, lbl_8063F190-_SDA_BASE_(r13) /* 8016B5F4 00167254 2C 00 00 00 */ cmpwi r0, 0 /* 8016B5F8 00167258 90 0D 9E CC */ stw r0, lbl_8063F18C-_SDA_BASE_(r13) /* 8016B5FC 0016725C 93 ED 9E D0 */ stw r31, lbl_8063F190-_SDA_BASE_(r13) /* 8016B600 00167260 41 82 00 20 */ beq lbl_8016B620 /* 8016B604 00167264 80 0D 9E D4 */ lwz r0, lbl_8063F194-_SDA_BASE_(r13) /* 8016B608 00167268 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B60C 0016726C 54 00 10 3A */ slwi r0, r0, 2 /* 8016B610 00167270 80 AD 9E D8 */ lwz r5, lbl_8063F198-_SDA_BASE_(r13) /* 8016B614 00167274 7C 84 02 14 */ add r4, r4, r0 /* 8016B618 00167278 90 A4 00 10 */ stw r5, 0x10(r4) /* 8016B61C 0016727C 48 00 00 20 */ b lbl_8016B63C lbl_8016B620: /* 8016B620 00167280 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B624 00167284 7C 80 82 14 */ add r4, r0, r16 /* 8016B628 00167288 93 A4 00 10 */ stw r29, 0x10(r4) /* 8016B62C 0016728C 48 00 00 10 */ b lbl_8016B63C lbl_8016B630: /* 8016B630 00167290 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B634 00167294 7C 80 82 14 */ add r4, r0, r16 /* 8016B638 00167298 93 A4 00 10 */ stw r29, 0x10(r4) lbl_8016B63C: /* 8016B63C 0016729C 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016B640 001672A0 54 04 03 18 */ rlwinm r4, r0, 0, 0xc, 0xc /* 8016B644 001672A4 50 04 04 E6 */ rlwimi r4, r0, 0, 0x13, 0x13 /* 8016B648 001672A8 3C 04 FF F8 */ addis r0, r4, 0xfff8 /* 8016B64C 001672AC 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016B650 001672B0 40 82 00 0C */ bne lbl_8016B65C /* 8016B654 001672B4 38 11 00 01 */ addi r0, r17, 1 /* 8016B658 001672B8 90 0D 9E F4 */ stw r0, lbl_8063F1B4-_SDA_BASE_(r13) lbl_8016B65C: /* 8016B65C 001672BC 3A 31 00 01 */ addi r17, r17, 1 /* 8016B660 001672C0 3A 10 00 04 */ addi r16, r16, 4 /* 8016B664 001672C4 2C 11 00 04 */ cmpwi r17, 4 /* 8016B668 001672C8 41 80 FE E4 */ blt lbl_8016B54C /* 8016B66C 001672CC 48 00 07 2C */ b lbl_8016BD98 lbl_8016B670: /* 8016B670 001672D0 3A 20 00 00 */ li r17, 0 lbl_8016B674: /* 8016B674 001672D4 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B678 001672D8 7C 80 8A 14 */ add r4, r0, r17 /* 8016B67C 001672DC 88 04 00 78 */ lbz r0, 0x78(r4) /* 8016B680 001672E0 2C 00 00 00 */ cmpwi r0, 0 /* 8016B684 001672E4 41 82 00 98 */ beq lbl_8016B71C /* 8016B688 001672E8 80 AD 9E C8 */ lwz r5, lbl_8063F188-_SDA_BASE_(r13) /* 8016B68C 001672EC 54 A0 05 29 */ rlwinm. r0, r5, 0, 0x14, 0x14 /* 8016B690 001672F0 41 82 00 0C */ beq lbl_8016B69C /* 8016B694 001672F4 9B E4 00 78 */ stb r31, 0x78(r4) /* 8016B698 001672F8 48 00 00 84 */ b lbl_8016B71C lbl_8016B69C: /* 8016B69C 001672FC 56 30 07 FF */ clrlwi. r16, r17, 0x1f /* 8016B6A0 00167300 41 82 00 3C */ beq lbl_8016B6DC /* 8016B6A4 00167304 54 A0 04 A5 */ rlwinm. r0, r5, 0, 0x12, 0x12 /* 8016B6A8 00167308 41 82 00 34 */ beq lbl_8016B6DC /* 8016B6AC 0016730C 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B6B0 00167310 7F C0 88 30 */ slw r0, r30, r17 /* 8016B6B4 00167314 7C 80 00 39 */ and. r0, r4, r0 /* 8016B6B8 00167318 40 82 00 14 */ bne lbl_8016B6CC /* 8016B6BC 0016731C 7E 43 93 78 */ mr r3, r18 /* 8016B6C0 00167320 38 80 00 01 */ li r4, 1 /* 8016B6C4 00167324 38 A0 00 00 */ li r5, 0 /* 8016B6C8 00167328 48 00 25 49 */ bl func_8016DC10 lbl_8016B6CC: /* 8016B6CC 0016732C 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B6D0 00167330 7C 80 8A 14 */ add r4, r0, r17 /* 8016B6D4 00167334 9B E4 00 78 */ stb r31, 0x78(r4) /* 8016B6D8 00167338 48 00 00 44 */ b lbl_8016B71C lbl_8016B6DC: /* 8016B6DC 0016733C 9B E4 00 78 */ stb r31, 0x78(r4) /* 8016B6E0 00167340 7F C0 88 30 */ slw r0, r30, r17 /* 8016B6E4 00167344 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B6E8 00167348 7C 80 00 39 */ and. r0, r4, r0 /* 8016B6EC 0016734C 40 82 00 30 */ bne lbl_8016B71C /* 8016B6F0 00167350 7E 03 83 78 */ mr r3, r16 /* 8016B6F4 00167354 38 80 00 0A */ li r4, 0xa /* 8016B6F8 00167358 38 A0 00 0F */ li r5, 0xf /* 8016B6FC 0016735C 38 C0 00 00 */ li r6, 0 /* 8016B700 00167360 4B EF 20 8D */ bl func_8005D78C lbl_8016B704: /* 8016B704 00167364 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016B708 00167368 48 0B 8E 81 */ bl func_80224588 /* 8016B70C 0016736C 7E 03 83 78 */ mr r3, r16 /* 8016B710 00167370 4B EF 35 11 */ bl func_8005EC20 /* 8016B714 00167374 28 03 F5 FA */ cmplwi r3, 0xf5fa /* 8016B718 00167378 40 82 FF EC */ bne lbl_8016B704 lbl_8016B71C: /* 8016B71C 0016737C 3A 31 00 01 */ addi r17, r17, 1 /* 8016B720 00167380 2C 11 00 04 */ cmpwi r17, 4 /* 8016B724 00167384 41 80 FF 50 */ blt lbl_8016B674 /* 8016B728 00167388 48 00 06 70 */ b lbl_8016BD98 lbl_8016B72C: /* 8016B72C 0016738C 3A 00 00 00 */ li r16, 0 lbl_8016B730: /* 8016B730 00167390 38 60 50 8A */ li r3, 0x508a /* 8016B734 00167394 48 0E 4B B1 */ bl func_802502E4 /* 8016B738 00167398 2C 03 00 00 */ cmpwi r3, 0 /* 8016B73C 0016739C 41 82 00 18 */ beq lbl_8016B754 /* 8016B740 001673A0 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016B744 001673A4 48 0B 8E 45 */ bl func_80224588 /* 8016B748 001673A8 3A 10 00 01 */ addi r16, r16, 1 /* 8016B74C 001673AC 2C 10 00 64 */ cmpwi r16, 0x64 /* 8016B750 001673B0 41 80 FF E0 */ blt lbl_8016B730 lbl_8016B754: /* 8016B754 001673B4 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B758 001673B8 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c /* 8016B75C 001673BC 41 82 00 08 */ beq lbl_8016B764 /* 8016B760 001673C0 4B EE CC 45 */ bl func_800583A4 lbl_8016B764: /* 8016B764 001673C4 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016B768 001673C8 54 00 05 29 */ rlwinm. r0, r0, 0, 0x14, 0x14 /* 8016B76C 001673CC 41 82 00 7C */ beq lbl_8016B7E8 /* 8016B770 001673D0 48 24 10 B9 */ bl func_803AC828 /* 8016B774 001673D4 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016B778 001673D8 7C 71 1B 78 */ mr r17, r3 /* 8016B77C 001673DC 3A 00 00 02 */ li r16, 2 /* 8016B780 001673E0 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c /* 8016B784 001673E4 41 82 00 08 */ beq lbl_8016B78C /* 8016B788 001673E8 3A 00 00 04 */ li r16, 4 lbl_8016B78C: /* 8016B78C 001673EC 3A 60 00 00 */ li r19, 0 /* 8016B790 001673F0 48 00 00 3C */ b lbl_8016B7CC lbl_8016B794: /* 8016B794 001673F4 7E 23 8B 78 */ mr r3, r17 /* 8016B798 001673F8 56 64 06 3E */ clrlwi r4, r19, 0x18 /* 8016B79C 001673FC 38 A0 00 00 */ li r5, 0 /* 8016B7A0 00167400 38 C0 00 00 */ li r6, 0 /* 8016B7A4 00167404 38 E0 00 01 */ li r7, 1 /* 8016B7A8 00167408 48 00 BD D9 */ bl func_80177580 /* 8016B7AC 0016740C 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016B7B0 00167410 28 00 00 07 */ cmplwi r0, 7 /* 8016B7B4 00167414 40 82 00 14 */ bne lbl_8016B7C8 /* 8016B7B8 00167418 48 24 10 71 */ bl func_803AC828 /* 8016B7BC 0016741C 38 80 00 07 */ li r4, 7 /* 8016B7C0 00167420 48 24 25 21 */ bl func_803ADCE0 /* 8016B7C4 00167424 48 00 00 10 */ b lbl_8016B7D4 lbl_8016B7C8: /* 8016B7C8 00167428 3A 73 00 01 */ addi r19, r19, 1 lbl_8016B7CC: /* 8016B7CC 0016742C 7C 13 80 00 */ cmpw r19, r16 /* 8016B7D0 00167430 41 80 FF C4 */ blt lbl_8016B794 lbl_8016B7D4: /* 8016B7D4 00167434 38 60 00 00 */ li r3, 0 /* 8016B7D8 00167438 38 80 00 0D */ li r4, 0xd /* 8016B7DC 0016743C 38 A0 00 0F */ li r5, 0xf /* 8016B7E0 00167440 38 C0 00 00 */ li r6, 0 /* 8016B7E4 00167444 4B EF 1F A9 */ bl func_8005D78C lbl_8016B7E8: /* 8016B7E8 00167448 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13) /* 8016B7EC 0016744C 54 80 03 5A */ rlwinm r0, r4, 0, 0xd, 0xd /* 8016B7F0 00167450 50 80 04 A5 */ rlwimi. r0, r4, 0, 0x12, 0x12 /* 8016B7F4 00167454 41 82 00 18 */ beq lbl_8016B80C /* 8016B7F8 00167458 38 60 00 00 */ li r3, 0 /* 8016B7FC 0016745C 38 80 00 12 */ li r4, 0x12 /* 8016B800 00167460 38 A0 00 0F */ li r5, 0xf /* 8016B804 00167464 38 C0 00 00 */ li r6, 0 /* 8016B808 00167468 4B EF 1F 85 */ bl func_8005D78C lbl_8016B80C: /* 8016B80C 0016746C 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016B810 00167470 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12 /* 8016B814 00167474 41 82 00 14 */ beq lbl_8016B828 /* 8016B818 00167478 7E 43 93 78 */ mr r3, r18 /* 8016B81C 0016747C 38 80 00 01 */ li r4, 1 /* 8016B820 00167480 38 A0 00 00 */ li r5, 0 /* 8016B824 00167484 48 00 23 ED */ bl func_8016DC10 lbl_8016B828: /* 8016B828 00167488 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B82C 0016748C 88 9A 00 1A */ lbz r4, 0x1a(r26) /* 8016B830 00167490 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8016B834 00167494 60 80 00 04 */ ori r0, r4, 4 /* 8016B838 00167498 98 1A 00 1A */ stb r0, 0x1a(r26) /* 8016B83C 0016749C 41 82 00 3C */ beq lbl_8016B878 /* 8016B840 001674A0 4B EE CD 41 */ bl func_80058580 /* 8016B844 001674A4 4B EE CB 9D */ bl func_800583E0 /* 8016B848 001674A8 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016B84C 001674AC 80 AD 9E DC */ lwz r5, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B850 001674B0 54 04 03 18 */ rlwinm r4, r0, 0, 0xc, 0xc /* 8016B854 001674B4 50 04 04 E6 */ rlwimi r4, r0, 0, 0x13, 0x13 /* 8016B858 001674B8 60 A5 00 02 */ ori r5, r5, 2 /* 8016B85C 001674BC 3C 04 FF F8 */ addis r0, r4, 0xfff8 /* 8016B860 001674C0 54 A4 07 2E */ rlwinm r4, r5, 0, 0x1c, 0x17 /* 8016B864 001674C4 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016B868 001674C8 90 8D 9E DC */ stw r4, lbl_8063F19C-_SDA_BASE_(r13) /* 8016B86C 001674CC 40 82 00 0C */ bne lbl_8016B878 /* 8016B870 001674D0 60 80 02 00 */ ori r0, r4, 0x200 /* 8016B874 001674D4 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) lbl_8016B878: /* 8016B878 001674D8 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B87C 001674DC 9B E4 00 7C */ stb r31, 0x7c(r4) /* 8016B880 001674E0 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B884 001674E4 9B E4 00 80 */ stb r31, 0x80(r4) /* 8016B888 001674E8 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B88C 001674EC 9B E4 00 7D */ stb r31, 0x7d(r4) /* 8016B890 001674F0 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B894 001674F4 9B E4 00 81 */ stb r31, 0x81(r4) /* 8016B898 001674F8 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B89C 001674FC 9B E4 00 7E */ stb r31, 0x7e(r4) /* 8016B8A0 00167500 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B8A4 00167504 9B E4 00 82 */ stb r31, 0x82(r4) /* 8016B8A8 00167508 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B8AC 0016750C 9B E4 00 7F */ stb r31, 0x7f(r4) /* 8016B8B0 00167510 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B8B4 00167514 9B E4 00 83 */ stb r31, 0x83(r4) /* 8016B8B8 00167518 38 8D 9E E0 */ addi r4, r13, lbl_8063F1A0-_SDA_BASE_ /* 8016B8BC 0016751C 88 1A 00 1A */ lbz r0, 0x1a(r26) /* 8016B8C0 00167520 9B E4 00 01 */ stb r31, 1(r4) /* 8016B8C4 00167524 54 00 07 70 */ rlwinm r0, r0, 0, 0x1d, 0x18 /* 8016B8C8 00167528 98 1A 00 1A */ stb r0, 0x1a(r26) /* 8016B8CC 0016752C 9B ED 9E E0 */ stb r31, lbl_8063F1A0-_SDA_BASE_(r13) /* 8016B8D0 00167530 93 ED 9E F0 */ stw r31, lbl_8063F1B0-_SDA_BASE_(r13) /* 8016B8D4 00167534 93 ED 9E FC */ stw r31, lbl_8063F1BC-_SDA_BASE_(r13) /* 8016B8D8 00167538 48 00 04 C0 */ b lbl_8016BD98 lbl_8016B8DC: /* 8016B8DC 0016753C 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13) /* 8016B8E0 00167540 54 80 05 29 */ rlwinm. r0, r4, 0, 0x14, 0x14 /* 8016B8E4 00167544 41 82 01 0C */ beq lbl_8016B9F0 /* 8016B8E8 00167548 54 80 07 39 */ rlwinm. r0, r4, 0, 0x1c, 0x1c /* 8016B8EC 0016754C 41 82 00 74 */ beq lbl_8016B960 /* 8016B8F0 00167550 3A 00 00 00 */ li r16, 0 lbl_8016B8F4: /* 8016B8F4 00167554 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B8F8 00167558 7C 80 82 14 */ add r4, r0, r16 /* 8016B8FC 0016755C 88 04 00 7C */ lbz r0, 0x7c(r4) /* 8016B900 00167560 28 00 00 01 */ cmplwi r0, 1 /* 8016B904 00167564 40 82 00 4C */ bne lbl_8016B950 /* 8016B908 00167568 56 03 06 3E */ clrlwi r3, r16, 0x18 /* 8016B90C 0016756C 38 80 00 0E */ li r4, 0xe /* 8016B910 00167570 38 A0 00 00 */ li r5, 0 /* 8016B914 00167574 38 C0 00 00 */ li r6, 0 /* 8016B918 00167578 4B EF 1E 75 */ bl func_8005D78C /* 8016B91C 0016757C 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016B920 00167580 7E 03 83 78 */ mr r3, r16 /* 8016B924 00167584 38 80 00 09 */ li r4, 9 /* 8016B928 00167588 7C A0 82 14 */ add r5, r0, r16 /* 8016B92C 0016758C 99 E5 00 7C */ stb r15, 0x7c(r5) /* 8016B930 00167590 48 00 C2 AD */ bl func_80177BDC /* 8016B934 00167594 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016B938 00167598 28 00 00 07 */ cmplwi r0, 7 /* 8016B93C 0016759C 40 82 00 14 */ bne lbl_8016B950 /* 8016B940 001675A0 48 24 0E E9 */ bl func_803AC828 /* 8016B944 001675A4 38 80 00 07 */ li r4, 7 /* 8016B948 001675A8 48 24 23 99 */ bl func_803ADCE0 /* 8016B94C 001675AC 48 00 04 4C */ b lbl_8016BD98 lbl_8016B950: /* 8016B950 001675B0 3A 10 00 01 */ addi r16, r16, 1 /* 8016B954 001675B4 2C 10 00 04 */ cmpwi r16, 4 /* 8016B958 001675B8 41 80 FF 9C */ blt lbl_8016B8F4 /* 8016B95C 001675BC 48 00 04 3C */ b lbl_8016BD98 lbl_8016B960: /* 8016B960 001675C0 48 00 1E F1 */ bl func_8016D850 /* 8016B964 001675C4 54 60 07 FF */ clrlwi. r0, r3, 0x1f /* 8016B968 001675C8 7C 70 1B 78 */ mr r16, r3 /* 8016B96C 001675CC 41 82 00 40 */ beq lbl_8016B9AC /* 8016B970 001675D0 38 60 00 00 */ li r3, 0 /* 8016B974 001675D4 38 80 00 0E */ li r4, 0xe /* 8016B978 001675D8 38 A0 00 00 */ li r5, 0 /* 8016B97C 001675DC 38 C0 00 00 */ li r6, 0 /* 8016B980 001675E0 4B EF 1E 0D */ bl func_8005D78C /* 8016B984 001675E4 38 60 00 00 */ li r3, 0 /* 8016B988 001675E8 38 80 00 09 */ li r4, 9 /* 8016B98C 001675EC 48 00 C2 51 */ bl func_80177BDC /* 8016B990 001675F0 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016B994 001675F4 28 00 00 07 */ cmplwi r0, 7 /* 8016B998 001675F8 40 82 00 14 */ bne lbl_8016B9AC /* 8016B99C 001675FC 48 24 0E 8D */ bl func_803AC828 /* 8016B9A0 00167600 38 80 00 07 */ li r4, 7 /* 8016B9A4 00167604 48 24 23 3D */ bl func_803ADCE0 /* 8016B9A8 00167608 48 00 03 F0 */ b lbl_8016BD98 lbl_8016B9AC: /* 8016B9AC 0016760C 56 00 07 7B */ rlwinm. r0, r16, 0, 0x1d, 0x1d /* 8016B9B0 00167610 41 82 03 E8 */ beq lbl_8016BD98 /* 8016B9B4 00167614 38 60 00 01 */ li r3, 1 /* 8016B9B8 00167618 38 80 00 0E */ li r4, 0xe /* 8016B9BC 0016761C 38 A0 00 00 */ li r5, 0 /* 8016B9C0 00167620 38 C0 00 00 */ li r6, 0 /* 8016B9C4 00167624 4B EF 1D C9 */ bl func_8005D78C /* 8016B9C8 00167628 38 60 00 01 */ li r3, 1 /* 8016B9CC 0016762C 38 80 00 09 */ li r4, 9 /* 8016B9D0 00167630 48 00 C2 0D */ bl func_80177BDC /* 8016B9D4 00167634 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016B9D8 00167638 28 00 00 07 */ cmplwi r0, 7 /* 8016B9DC 0016763C 40 82 03 BC */ bne lbl_8016BD98 /* 8016B9E0 00167640 48 24 0E 49 */ bl func_803AC828 /* 8016B9E4 00167644 38 80 00 07 */ li r4, 7 /* 8016B9E8 00167648 48 24 22 F9 */ bl func_803ADCE0 /* 8016B9EC 0016764C 48 00 03 AC */ b lbl_8016BD98 lbl_8016B9F0: /* 8016B9F0 00167650 54 80 03 5A */ rlwinm r0, r4, 0, 0xd, 0xd /* 8016B9F4 00167654 50 80 04 A5 */ rlwimi. r0, r4, 0, 0x12, 0x12 /* 8016B9F8 00167658 41 82 00 AC */ beq lbl_8016BAA4 /* 8016B9FC 0016765C 48 00 1E 55 */ bl func_8016D850 /* 8016BA00 00167660 54 60 07 FF */ clrlwi. r0, r3, 0x1f /* 8016BA04 00167664 7C 70 1B 78 */ mr r16, r3 /* 8016BA08 00167668 41 82 00 70 */ beq lbl_8016BA78 /* 8016BA0C 0016766C 38 60 00 00 */ li r3, 0 /* 8016BA10 00167670 38 80 00 11 */ li r4, 0x11 /* 8016BA14 00167674 38 A0 00 0F */ li r5, 0xf /* 8016BA18 00167678 38 C0 00 00 */ li r6, 0 /* 8016BA1C 0016767C 4B EF 1D 71 */ bl func_8005D78C /* 8016BA20 00167680 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016BA24 00167684 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12 /* 8016BA28 00167688 41 82 00 34 */ beq lbl_8016BA5C /* 8016BA2C 0016768C 38 60 00 83 */ li r3, 0x83 /* 8016BA30 00167690 38 80 00 00 */ li r4, 0 /* 8016BA34 00167694 38 A0 00 00 */ li r5, 0 /* 8016BA38 00167698 48 00 21 D9 */ bl func_8016DC10 /* 8016BA3C 0016769C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BA40 001676A0 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8016BA44 001676A4 41 82 00 18 */ beq lbl_8016BA5C /* 8016BA48 001676A8 4B EE C9 AD */ bl func_800583F4 /* 8016BA4C 001676AC 4B EE C9 BD */ bl func_80058408 /* 8016BA50 001676B0 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BA54 001676B4 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 8016BA58 001676B8 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) lbl_8016BA5C: /* 8016BA5C 001676BC 80 0D 9E FC */ lwz r0, lbl_8063F1BC-_SDA_BASE_(r13) /* 8016BA60 001676C0 2C 00 00 00 */ cmpwi r0, 0 /* 8016BA64 001676C4 40 82 00 14 */ bne lbl_8016BA78 /* 8016BA68 001676C8 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016BA6C 001676CC 38 80 00 11 */ li r4, 0x11 /* 8016BA70 001676D0 38 A0 00 00 */ li r5, 0 /* 8016BA74 001676D4 48 00 AF 9D */ bl func_80176A10 lbl_8016BA78: /* 8016BA78 001676D8 56 00 07 7B */ rlwinm. r0, r16, 0, 0x1d, 0x1d /* 8016BA7C 001676DC 41 82 00 28 */ beq lbl_8016BAA4 /* 8016BA80 001676E0 38 60 00 00 */ li r3, 0 /* 8016BA84 001676E4 38 80 00 13 */ li r4, 0x13 /* 8016BA88 001676E8 38 A0 00 0F */ li r5, 0xf /* 8016BA8C 001676EC 38 C0 00 00 */ li r6, 0 /* 8016BA90 001676F0 4B EF 1C FD */ bl func_8005D78C /* 8016BA94 001676F4 38 60 00 87 */ li r3, 0x87 /* 8016BA98 001676F8 38 80 00 00 */ li r4, 0 /* 8016BA9C 001676FC 38 A0 00 00 */ li r5, 0 /* 8016BAA0 00167700 48 00 21 71 */ bl func_8016DC10 lbl_8016BAA4: /* 8016BAA4 00167704 80 AD 9E C8 */ lwz r5, lbl_8063F188-_SDA_BASE_(r13) /* 8016BAA8 00167708 54 A4 03 18 */ rlwinm r4, r5, 0, 0xc, 0xc /* 8016BAAC 0016770C 50 A4 04 E6 */ rlwimi r4, r5, 0, 0x13, 0x13 /* 8016BAB0 00167710 3C 04 FF F8 */ addis r0, r4, 0xfff8 /* 8016BAB4 00167714 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016BAB8 00167718 40 82 01 C8 */ bne lbl_8016BC80 /* 8016BABC 0016771C 80 0D 9E E4 */ lwz r0, lbl_8063F1A4-_SDA_BASE_(r13) /* 8016BAC0 00167720 2C 00 00 00 */ cmpwi r0, 0 /* 8016BAC4 00167724 40 82 01 BC */ bne lbl_8016BC80 /* 8016BAC8 00167728 54 A0 07 BD */ rlwinm. r0, r5, 0, 0x1e, 0x1e /* 8016BACC 0016772C 41 82 01 1C */ beq lbl_8016BBE8 /* 8016BAD0 00167730 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016BAD4 00167734 88 04 00 80 */ lbz r0, 0x80(r4) /* 8016BAD8 00167738 28 00 00 01 */ cmplwi r0, 1 /* 8016BADC 0016773C 40 82 00 24 */ bne lbl_8016BB00 /* 8016BAE0 00167740 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BAE4 00167744 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 8016BAE8 00167748 40 82 00 10 */ bne lbl_8016BAF8 /* 8016BAEC 0016774C 38 60 00 00 */ li r3, 0 /* 8016BAF0 00167750 38 80 00 00 */ li r4, 0 /* 8016BAF4 00167754 4B EF EC 8D */ bl func_8006A780 lbl_8016BAF8: /* 8016BAF8 00167758 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016BAFC 0016775C 99 E4 00 80 */ stb r15, 0x80(r4) lbl_8016BB00: /* 8016BB00 00167760 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016BB04 00167764 88 04 00 82 */ lbz r0, 0x82(r4) /* 8016BB08 00167768 28 00 00 01 */ cmplwi r0, 1 /* 8016BB0C 0016776C 40 82 00 80 */ bne lbl_8016BB8C /* 8016BB10 00167770 80 0D 9E F0 */ lwz r0, lbl_8063F1B0-_SDA_BASE_(r13) /* 8016BB14 00167774 2C 00 00 00 */ cmpwi r0, 0 /* 8016BB18 00167778 40 82 00 74 */ bne lbl_8016BB8C /* 8016BB1C 0016777C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BB20 00167780 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 8016BB24 00167784 40 82 00 10 */ bne lbl_8016BB34 /* 8016BB28 00167788 38 60 00 00 */ li r3, 0 /* 8016BB2C 0016778C 38 80 00 01 */ li r4, 1 /* 8016BB30 00167790 4B EF EC 51 */ bl func_8006A780 lbl_8016BB34: /* 8016BB34 00167794 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016BB38 00167798 99 E4 00 82 */ stb r15, 0x82(r4) /* 8016BB3C 0016779C 93 0D 9E F0 */ stw r24, lbl_8063F1B0-_SDA_BASE_(r13) /* 8016BB40 001677A0 80 AD 9F 08 */ lwz r5, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016BB44 001677A4 88 05 00 81 */ lbz r0, 0x81(r5) /* 8016BB48 001677A8 2C 00 00 00 */ cmpwi r0, 0 /* 8016BB4C 001677AC 40 82 00 1C */ bne lbl_8016BB68 /* 8016BB50 001677B0 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016BB54 001677B4 38 80 00 10 */ li r4, 0x10 /* 8016BB58 001677B8 80 A5 00 44 */ lwz r5, 0x44(r5) /* 8016BB5C 001677BC 48 00 AE B5 */ bl func_80176A10 /* 8016BB60 001677C0 93 0D 9E FC */ stw r24, lbl_8063F1BC-_SDA_BASE_(r13) /* 8016BB64 001677C4 48 00 00 24 */ b lbl_8016BB88 lbl_8016BB68: /* 8016BB68 001677C8 88 05 00 83 */ lbz r0, 0x83(r5) /* 8016BB6C 001677CC 2C 00 00 00 */ cmpwi r0, 0 /* 8016BB70 001677D0 40 82 00 18 */ bne lbl_8016BB88 /* 8016BB74 001677D4 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016BB78 001677D8 38 80 00 10 */ li r4, 0x10 /* 8016BB7C 001677DC 80 A5 00 4C */ lwz r5, 0x4c(r5) /* 8016BB80 001677E0 48 00 AE 91 */ bl func_80176A10 /* 8016BB84 001677E4 93 0D 9E FC */ stw r24, lbl_8063F1BC-_SDA_BASE_(r13) lbl_8016BB88: /* 8016BB88 001677E8 93 ED 9E F4 */ stw r31, lbl_8063F1B4-_SDA_BASE_(r13) lbl_8016BB8C: /* 8016BB8C 001677EC 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016BB90 001677F0 88 04 00 81 */ lbz r0, 0x81(r4) /* 8016BB94 001677F4 28 00 00 01 */ cmplwi r0, 1 /* 8016BB98 001677F8 40 82 00 20 */ bne lbl_8016BBB8 /* 8016BB9C 001677FC 99 E4 00 81 */ stb r15, 0x81(r4) /* 8016BBA0 00167800 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BBA4 00167804 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a /* 8016BBA8 00167808 40 82 00 10 */ bne lbl_8016BBB8 /* 8016BBAC 0016780C 38 60 00 01 */ li r3, 1 /* 8016BBB0 00167810 38 80 00 00 */ li r4, 0 /* 8016BBB4 00167814 4B EF EB CD */ bl func_8006A780 lbl_8016BBB8: /* 8016BBB8 00167818 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016BBBC 0016781C 88 04 00 83 */ lbz r0, 0x83(r4) /* 8016BBC0 00167820 28 00 00 01 */ cmplwi r0, 1 /* 8016BBC4 00167824 40 82 00 BC */ bne lbl_8016BC80 /* 8016BBC8 00167828 99 E4 00 83 */ stb r15, 0x83(r4) /* 8016BBCC 0016782C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BBD0 00167830 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a /* 8016BBD4 00167834 40 82 00 AC */ bne lbl_8016BC80 /* 8016BBD8 00167838 38 60 00 01 */ li r3, 1 /* 8016BBDC 0016783C 38 80 00 01 */ li r4, 1 /* 8016BBE0 00167840 4B EF EB A1 */ bl func_8006A780 /* 8016BBE4 00167844 48 00 00 9C */ b lbl_8016BC80 lbl_8016BBE8: /* 8016BBE8 00167848 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016BBEC 0016784C 88 04 00 80 */ lbz r0, 0x80(r4) /* 8016BBF0 00167850 28 00 00 01 */ cmplwi r0, 1 /* 8016BBF4 00167854 40 82 00 5C */ bne lbl_8016BC50 /* 8016BBF8 00167858 80 0D 9E F0 */ lwz r0, lbl_8063F1B0-_SDA_BASE_(r13) /* 8016BBFC 0016785C 2C 00 00 00 */ cmpwi r0, 0 /* 8016BC00 00167860 40 82 00 50 */ bne lbl_8016BC50 /* 8016BC04 00167864 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BC08 00167868 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 8016BC0C 0016786C 40 82 00 10 */ bne lbl_8016BC1C /* 8016BC10 00167870 38 60 00 00 */ li r3, 0 /* 8016BC14 00167874 38 80 00 01 */ li r4, 1 /* 8016BC18 00167878 4B EF EB 69 */ bl func_8006A780 lbl_8016BC1C: /* 8016BC1C 0016787C 93 0D 9E F0 */ stw r24, lbl_8063F1B0-_SDA_BASE_(r13) /* 8016BC20 00167880 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016BC24 00167884 99 E4 00 80 */ stb r15, 0x80(r4) /* 8016BC28 00167888 80 AD 9F 08 */ lwz r5, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016BC2C 0016788C 88 05 00 81 */ lbz r0, 0x81(r5) /* 8016BC30 00167890 2C 00 00 00 */ cmpwi r0, 0 /* 8016BC34 00167894 40 82 00 18 */ bne lbl_8016BC4C /* 8016BC38 00167898 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016BC3C 0016789C 38 80 00 10 */ li r4, 0x10 /* 8016BC40 001678A0 80 A5 00 44 */ lwz r5, 0x44(r5) /* 8016BC44 001678A4 48 00 AD CD */ bl func_80176A10 /* 8016BC48 001678A8 93 0D 9E FC */ stw r24, lbl_8063F1BC-_SDA_BASE_(r13) lbl_8016BC4C: /* 8016BC4C 001678AC 93 ED 9E F4 */ stw r31, lbl_8063F1B4-_SDA_BASE_(r13) lbl_8016BC50: /* 8016BC50 001678B0 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016BC54 001678B4 88 04 00 81 */ lbz r0, 0x81(r4) /* 8016BC58 001678B8 28 00 00 01 */ cmplwi r0, 1 /* 8016BC5C 001678BC 40 82 00 24 */ bne lbl_8016BC80 /* 8016BC60 001678C0 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BC64 001678C4 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a /* 8016BC68 001678C8 40 82 00 10 */ bne lbl_8016BC78 /* 8016BC6C 001678CC 38 60 00 01 */ li r3, 1 /* 8016BC70 001678D0 38 80 00 01 */ li r4, 1 /* 8016BC74 001678D4 4B EF EB 0D */ bl func_8006A780 lbl_8016BC78: /* 8016BC78 001678D8 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016BC7C 001678DC 99 E4 00 81 */ stb r15, 0x81(r4) lbl_8016BC80: /* 8016BC80 001678E0 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BC84 001678E4 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8016BC88 001678E8 41 82 01 10 */ beq lbl_8016BD98 /* 8016BC8C 001678EC 80 0D 9E E4 */ lwz r0, lbl_8063F1A4-_SDA_BASE_(r13) /* 8016BC90 001678F0 2C 00 00 00 */ cmpwi r0, 0 /* 8016BC94 001678F4 40 82 01 04 */ bne lbl_8016BD98 /* 8016BC98 001678F8 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016BC9C 001678FC 54 04 03 18 */ rlwinm r4, r0, 0, 0xc, 0xc /* 8016BCA0 00167900 50 04 04 E6 */ rlwimi r4, r0, 0, 0x13, 0x13 /* 8016BCA4 00167904 3C 04 FF F8 */ addis r0, r4, 0xfff8 /* 8016BCA8 00167908 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016BCAC 0016790C 40 82 00 EC */ bne lbl_8016BD98 /* 8016BCB0 00167910 48 00 1B A1 */ bl func_8016D850 /* 8016BCB4 00167914 54 60 07 FF */ clrlwi. r0, r3, 0x1f /* 8016BCB8 00167918 41 82 00 E0 */ beq lbl_8016BD98 /* 8016BCBC 0016791C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BCC0 00167920 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 8016BCC4 00167924 41 82 00 18 */ beq lbl_8016BCDC /* 8016BCC8 00167928 38 60 00 00 */ li r3, 0 /* 8016BCCC 0016792C 38 80 00 15 */ li r4, 0x15 /* 8016BCD0 00167930 38 A0 00 0F */ li r5, 0xf /* 8016BCD4 00167934 38 C0 00 00 */ li r6, 0 /* 8016BCD8 00167938 4B EF 1A B5 */ bl func_8005D78C lbl_8016BCDC: /* 8016BCDC 0016793C 4B EE C8 A5 */ bl func_80058580 /* 8016BCE0 00167940 4B EE C7 01 */ bl func_800583E0 /* 8016BCE4 00167944 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BCE8 00167948 60 00 04 02 */ ori r0, r0, 0x402 /* 8016BCEC 0016794C 54 00 05 EA */ rlwinm r0, r0, 0, 0x17, 0x15 /* 8016BCF0 00167950 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BCF4 00167954 48 00 00 A4 */ b lbl_8016BD98 lbl_8016BCF8: /* 8016BCF8 00167958 38 60 00 00 */ li r3, 0 /* 8016BCFC 0016795C 48 00 16 65 */ bl func_8016D360 /* 8016BD00 00167960 48 00 00 98 */ b lbl_8016BD98 lbl_8016BD04: /* 8016BD04 00167964 38 60 00 00 */ li r3, 0 /* 8016BD08 00167968 48 00 F8 1D */ bl func_8017B524 /* 8016BD0C 0016796C 54 65 07 BE */ clrlwi r5, r3, 0x1e /* 8016BD10 00167970 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016BD14 00167974 38 80 00 11 */ li r4, 0x11 /* 8016BD18 00167978 48 00 AC F9 */ bl func_80176A10 /* 8016BD1C 0016797C 38 60 00 01 */ li r3, 1 /* 8016BD20 00167980 48 00 F8 05 */ bl func_8017B524 /* 8016BD24 00167984 2C 03 00 00 */ cmpwi r3, 0 /* 8016BD28 00167988 41 82 00 70 */ beq lbl_8016BD98 /* 8016BD2C 0016798C 38 60 00 00 */ li r3, 0 /* 8016BD30 00167990 38 80 00 12 */ li r4, 0x12 /* 8016BD34 00167994 38 A0 00 0F */ li r5, 0xf /* 8016BD38 00167998 38 C0 00 00 */ li r6, 0 /* 8016BD3C 0016799C 4B EF 1A 51 */ bl func_8005D78C /* 8016BD40 001679A0 48 00 00 58 */ b lbl_8016BD98 lbl_8016BD44: /* 8016BD44 001679A4 38 60 00 00 */ li r3, 0 /* 8016BD48 001679A8 38 80 00 13 */ li r4, 0x13 /* 8016BD4C 001679AC 38 A0 00 0F */ li r5, 0xf /* 8016BD50 001679B0 38 C0 00 00 */ li r6, 0 /* 8016BD54 001679B4 4B EF 1A 39 */ bl func_8005D78C /* 8016BD58 001679B8 48 00 00 40 */ b lbl_8016BD98 lbl_8016BD5C: /* 8016BD5C 001679BC 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BD60 001679C0 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8016BD64 001679C4 41 82 00 18 */ beq lbl_8016BD7C /* 8016BD68 001679C8 4B EE C6 8D */ bl func_800583F4 /* 8016BD6C 001679CC 4B EE C6 9D */ bl func_80058408 /* 8016BD70 001679D0 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BD74 001679D4 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 8016BD78 001679D8 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) lbl_8016BD7C: /* 8016BD7C 001679DC 80 0D 9E FC */ lwz r0, lbl_8063F1BC-_SDA_BASE_(r13) /* 8016BD80 001679E0 2C 00 00 00 */ cmpwi r0, 0 /* 8016BD84 001679E4 40 82 00 14 */ bne lbl_8016BD98 /* 8016BD88 001679E8 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016BD8C 001679EC 38 80 00 11 */ li r4, 0x11 /* 8016BD90 001679F0 38 A0 00 00 */ li r5, 0 /* 8016BD94 001679F4 48 00 AC 7D */ bl func_80176A10 lbl_8016BD98: /* 8016BD98 001679F8 48 24 0A 91 */ bl func_803AC828 /* 8016BD9C 001679FC 48 24 1F 3D */ bl func_803ADCD8 /* 8016BDA0 00167A00 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016BDA4 00167A04 28 00 00 07 */ cmplwi r0, 7 /* 8016BDA8 00167A08 40 82 00 A4 */ bne lbl_8016BE4C /* 8016BDAC 00167A0C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BDB0 00167A10 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8016BDB4 00167A14 41 82 00 08 */ beq lbl_8016BDBC /* 8016BDB8 00167A18 4B EE C6 51 */ bl func_80058408 lbl_8016BDBC: /* 8016BDBC 00167A1C 3C 80 80 49 */ lis r4, lbl_8048CDB4@ha /* 8016BDC0 00167A20 38 84 CD B4 */ addi r4, r4, lbl_8048CDB4@l /* 8016BDC4 00167A24 88 04 00 1A */ lbz r0, 0x1a(r4) /* 8016BDC8 00167A28 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 8016BDCC 00167A2C 41 82 00 08 */ beq lbl_8016BDD4 /* 8016BDD0 00167A30 48 00 0B 45 */ bl func_8016C914 lbl_8016BDD4: /* 8016BDD4 00167A34 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016BDD8 00167A38 38 80 00 00 */ li r4, 0 /* 8016BDDC 00167A3C 48 00 AD 39 */ bl func_80176B14 /* 8016BDE0 00167A40 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016BDE4 00167A44 48 00 AE 21 */ bl func_80176C04 /* 8016BDE8 00167A48 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016BDEC 00167A4C 48 00 AD DD */ bl func_80176BC8 /* 8016BDF0 00167A50 48 00 00 0C */ b lbl_8016BDFC lbl_8016BDF4: /* 8016BDF4 00167A54 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016BDF8 00167A58 48 0B 87 91 */ bl func_80224588 lbl_8016BDFC: /* 8016BDFC 00167A5C 4B EB C0 D1 */ bl func_80027ECC /* 8016BE00 00167A60 2C 03 00 00 */ cmpwi r3, 0 /* 8016BE04 00167A64 40 82 FF F0 */ bne lbl_8016BDF4 /* 8016BE08 00167A68 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13) /* 8016BE0C 00167A6C 54 80 03 5A */ rlwinm r0, r4, 0, 0xd, 0xd /* 8016BE10 00167A70 50 80 04 A5 */ rlwimi. r0, r4, 0, 0x12, 0x12 /* 8016BE14 00167A74 41 82 00 1C */ beq lbl_8016BE30 /* 8016BE18 00167A78 38 60 00 00 */ li r3, 0 /* 8016BE1C 00167A7C 38 80 00 14 */ li r4, 0x14 /* 8016BE20 00167A80 38 A0 00 0F */ li r5, 0xf /* 8016BE24 00167A84 38 C0 00 00 */ li r6, 0 /* 8016BE28 00167A88 4B EF 19 65 */ bl func_8005D78C /* 8016BE2C 00167A8C 48 00 00 18 */ b lbl_8016BE44 lbl_8016BE30: /* 8016BE30 00167A90 38 60 00 00 */ li r3, 0 /* 8016BE34 00167A94 38 80 00 10 */ li r4, 0x10 /* 8016BE38 00167A98 38 A0 00 00 */ li r5, 0 /* 8016BE3C 00167A9C 38 C0 00 00 */ li r6, 0 /* 8016BE40 00167AA0 4B EF 19 4D */ bl func_8005D78C lbl_8016BE44: /* 8016BE44 00167AA4 38 60 00 00 */ li r3, 0 /* 8016BE48 00167AA8 48 00 02 A0 */ b lbl_8016C0E8 lbl_8016BE4C: /* 8016BE4C 00167AAC 80 61 00 08 */ lwz r3, 8(r1) /* 8016BE50 00167AB0 4B EC 9F E9 */ bl func_80035E38 /* 8016BE54 00167AB4 2C 03 00 05 */ cmpwi r3, 5 /* 8016BE58 00167AB8 40 82 02 7C */ bne lbl_8016C0D4 /* 8016BE5C 00167ABC 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BE60 00167AC0 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8016BE64 00167AC4 41 82 00 0C */ beq lbl_8016BE70 /* 8016BE68 00167AC8 4B EE C5 8D */ bl func_800583F4 /* 8016BE6C 00167ACC 4B EE C5 9D */ bl func_80058408 lbl_8016BE70: /* 8016BE70 00167AD0 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016BE74 00167AD4 38 80 00 00 */ li r4, 0 /* 8016BE78 00167AD8 48 00 AC 9D */ bl func_80176B14 /* 8016BE7C 00167ADC 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016BE80 00167AE0 48 00 AD 85 */ bl func_80176C04 /* 8016BE84 00167AE4 88 1A 00 1A */ lbz r0, 0x1a(r26) /* 8016BE88 00167AE8 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 8016BE8C 00167AEC 41 82 00 08 */ beq lbl_8016BE94 /* 8016BE90 00167AF0 48 00 0A 85 */ bl func_8016C914 lbl_8016BE94: /* 8016BE94 00167AF4 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016BE98 00167AF8 54 00 05 29 */ rlwinm. r0, r0, 0, 0x14, 0x14 /* 8016BE9C 00167AFC 41 82 00 50 */ beq lbl_8016BEEC /* 8016BEA0 00167B00 38 60 00 00 */ li r3, 0 /* 8016BEA4 00167B04 38 80 00 0F */ li r4, 0xf /* 8016BEA8 00167B08 38 A0 00 00 */ li r5, 0 /* 8016BEAC 00167B0C 4B FF BD 01 */ bl func_80167BAC /* 8016BEB0 00167B10 38 60 00 01 */ li r3, 1 /* 8016BEB4 00167B14 38 80 00 0F */ li r4, 0xf /* 8016BEB8 00167B18 38 A0 00 00 */ li r5, 0 /* 8016BEBC 00167B1C 4B FF BC F1 */ bl func_80167BAC /* 8016BEC0 00167B20 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016BEC4 00167B24 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c /* 8016BEC8 00167B28 41 82 00 24 */ beq lbl_8016BEEC /* 8016BECC 00167B2C 38 60 00 02 */ li r3, 2 /* 8016BED0 00167B30 38 80 00 0F */ li r4, 0xf /* 8016BED4 00167B34 38 A0 00 00 */ li r5, 0 /* 8016BED8 00167B38 4B FF BC D5 */ bl func_80167BAC /* 8016BEDC 00167B3C 38 60 00 03 */ li r3, 3 /* 8016BEE0 00167B40 38 80 00 0F */ li r4, 0xf /* 8016BEE4 00167B44 38 A0 00 00 */ li r5, 0 /* 8016BEE8 00167B48 4B FF BC C5 */ bl func_80167BAC lbl_8016BEEC: /* 8016BEEC 00167B4C 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13) /* 8016BEF0 00167B50 54 80 05 29 */ rlwinm. r0, r4, 0, 0x14, 0x14 /* 8016BEF4 00167B54 40 82 00 20 */ bne lbl_8016BF14 /* 8016BEF8 00167B58 54 80 03 5A */ rlwinm r0, r4, 0, 0xd, 0xd /* 8016BEFC 00167B5C 50 80 04 A5 */ rlwimi. r0, r4, 0, 0x12, 0x12 /* 8016BF00 00167B60 40 82 00 14 */ bne lbl_8016BF14 /* 8016BF04 00167B64 54 80 04 E7 */ rlwinm. r0, r4, 0, 0x13, 0x13 /* 8016BF08 00167B68 40 82 00 0C */ bne lbl_8016BF14 /* 8016BF0C 00167B6C 48 24 09 1D */ bl func_803AC828 /* 8016BF10 00167B70 48 01 0F 41 */ bl func_8017CE50 lbl_8016BF14: /* 8016BF14 00167B74 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BF18 00167B78 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c /* 8016BF1C 00167B7C 41 82 00 18 */ beq lbl_8016BF34 /* 8016BF20 00167B80 4B EE C4 99 */ bl func_800583B8 /* 8016BF24 00167B84 4B EE C4 A9 */ bl func_800583CC /* 8016BF28 00167B88 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BF2C 00167B8C 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b /* 8016BF30 00167B90 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) lbl_8016BF34: /* 8016BF34 00167B94 38 00 00 05 */ li r0, 5 /* 8016BF38 00167B98 3A 00 00 00 */ li r16, 0 /* 8016BF3C 00167B9C 90 0D 9E B0 */ stw r0, lbl_8063F170-_SDA_BASE_(r13) /* 8016BF40 00167BA0 48 24 08 E9 */ bl func_803AC828 /* 8016BF44 00167BA4 2C 03 00 00 */ cmpwi r3, 0 /* 8016BF48 00167BA8 41 82 00 0C */ beq lbl_8016BF54 /* 8016BF4C 00167BAC 48 24 1D 8D */ bl func_803ADCD8 /* 8016BF50 00167BB0 54 70 06 3E */ clrlwi r16, r3, 0x18 lbl_8016BF54: /* 8016BF54 00167BB4 56 00 06 BE */ clrlwi r0, r16, 0x1a /* 8016BF58 00167BB8 2C 00 00 04 */ cmpwi r0, 4 /* 8016BF5C 00167BBC 41 82 00 30 */ beq lbl_8016BF8C /* 8016BF60 00167BC0 40 80 00 1C */ bge lbl_8016BF7C /* 8016BF64 00167BC4 2C 00 00 02 */ cmpwi r0, 2 /* 8016BF68 00167BC8 41 82 00 2C */ beq lbl_8016BF94 /* 8016BF6C 00167BCC 40 80 00 30 */ bge lbl_8016BF9C /* 8016BF70 00167BD0 2C 00 00 01 */ cmpwi r0, 1 /* 8016BF74 00167BD4 40 80 00 18 */ bge lbl_8016BF8C /* 8016BF78 00167BD8 48 00 00 40 */ b lbl_8016BFB8 lbl_8016BF7C: /* 8016BF7C 00167BDC 2C 00 00 06 */ cmpwi r0, 6 /* 8016BF80 00167BE0 41 82 00 0C */ beq lbl_8016BF8C /* 8016BF84 00167BE4 40 80 00 34 */ bge lbl_8016BFB8 /* 8016BF88 00167BE8 48 00 00 0C */ b lbl_8016BF94 lbl_8016BF8C: /* 8016BF8C 00167BEC 3A 20 00 00 */ li r17, 0 /* 8016BF90 00167BF0 48 00 00 2C */ b lbl_8016BFBC lbl_8016BF94: /* 8016BF94 00167BF4 3A 20 00 01 */ li r17, 1 /* 8016BF98 00167BF8 48 00 00 24 */ b lbl_8016BFBC lbl_8016BF9C: /* 8016BF9C 00167BFC 80 0D 9E E4 */ lwz r0, lbl_8063F1A4-_SDA_BASE_(r13) /* 8016BFA0 00167C00 3A 20 00 02 */ li r17, 2 /* 8016BFA4 00167C04 2C 00 00 00 */ cmpwi r0, 0 /* 8016BFA8 00167C08 41 82 00 14 */ beq lbl_8016BFBC /* 8016BFAC 00167C0C 56 10 00 3C */ rlwinm r16, r16, 0, 0, 0x1e /* 8016BFB0 00167C10 3A 20 00 01 */ li r17, 1 /* 8016BFB4 00167C14 48 00 00 08 */ b lbl_8016BFBC lbl_8016BFB8: /* 8016BFB8 00167C18 3A 20 00 02 */ li r17, 2 lbl_8016BFBC: /* 8016BFBC 00167C1C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016BFC0 00167C20 54 00 05 EF */ rlwinm. r0, r0, 0, 0x17, 0x17 /* 8016BFC4 00167C24 41 82 00 1C */ beq lbl_8016BFE0 /* 8016BFC8 00167C28 4B F0 69 59 */ bl func_80072920 lbl_8016BFCC: /* 8016BFCC 00167C2C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016BFD0 00167C30 48 0B 85 B9 */ bl func_80224588 /* 8016BFD4 00167C34 4B F0 69 71 */ bl func_80072944 /* 8016BFD8 00167C38 2C 03 00 00 */ cmpwi r3, 0 /* 8016BFDC 00167C3C 41 82 FF F0 */ beq lbl_8016BFCC lbl_8016BFE0: /* 8016BFE0 00167C40 4B EA 08 09 */ bl func_8000C7E8 /* 8016BFE4 00167C44 56 00 40 2E */ slwi r0, r16, 8 /* 8016BFE8 00167C48 38 80 00 04 */ li r4, 4 /* 8016BFEC 00167C4C 7C 05 8B 78 */ or r5, r0, r17 /* 8016BFF0 00167C50 4B EB 57 DD */ bl func_800217CC /* 8016BFF4 00167C54 4B FB 09 81 */ bl func_8011C974 /* 8016BFF8 00167C58 88 C3 00 14 */ lbz r6, 0x14(r3) /* 8016BFFC 00167C5C 7C 70 1B 78 */ mr r16, r3 /* 8016C000 00167C60 28 06 00 03 */ cmplwi r6, 3 /* 8016C004 00167C64 40 82 00 88 */ bne lbl_8016C08C /* 8016C008 00167C68 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016C00C 00167C6C 7E 25 8B 78 */ mr r5, r17 /* 8016C010 00167C70 38 80 00 13 */ li r4, 0x13 /* 8016C014 00167C74 38 E0 00 00 */ li r7, 0 /* 8016C018 00167C78 48 00 A9 09 */ bl func_80176920 /* 8016C01C 00167C7C 7C 64 1B 78 */ mr r4, r3 /* 8016C020 00167C80 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016C024 00167C84 48 00 A9 7D */ bl func_801769A0 /* 8016C028 00167C88 4B F0 75 F1 */ bl func_80073618 /* 8016C02C 00167C8C 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016C030 00167C90 28 00 00 80 */ cmplwi r0, 0x80 /* 8016C034 00167C94 40 82 00 18 */ bne lbl_8016C04C /* 8016C038 00167C98 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016C03C 00167C9C 38 80 00 80 */ li r4, 0x80 /* 8016C040 00167CA0 38 A0 00 01 */ li r5, 1 /* 8016C044 00167CA4 48 00 AD E9 */ bl func_80176E2C /* 8016C048 00167CA8 48 00 00 9C */ b lbl_8016C0E4 lbl_8016C04C: /* 8016C04C 00167CAC 4B F0 75 CD */ bl func_80073618 /* 8016C050 00167CB0 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016C054 00167CB4 2C 00 00 01 */ cmpwi r0, 1 /* 8016C058 00167CB8 41 82 00 28 */ beq lbl_8016C080 /* 8016C05C 00167CBC 40 80 00 10 */ bge lbl_8016C06C /* 8016C060 00167CC0 2C 00 00 00 */ cmpwi r0, 0 /* 8016C064 00167CC4 40 80 00 14 */ bge lbl_8016C078 /* 8016C068 00167CC8 48 00 00 24 */ b lbl_8016C08C lbl_8016C06C: /* 8016C06C 00167CCC 2C 00 00 03 */ cmpwi r0, 3 /* 8016C070 00167CD0 40 80 00 1C */ bge lbl_8016C08C /* 8016C074 00167CD4 48 00 00 14 */ b lbl_8016C088 lbl_8016C078: /* 8016C078 00167CD8 3A 20 00 00 */ li r17, 0 /* 8016C07C 00167CDC 48 00 00 10 */ b lbl_8016C08C lbl_8016C080: /* 8016C080 00167CE0 3A 20 00 01 */ li r17, 1 /* 8016C084 00167CE4 48 00 00 08 */ b lbl_8016C08C lbl_8016C088: /* 8016C088 00167CE8 3A 20 00 02 */ li r17, 2 lbl_8016C08C: /* 8016C08C 00167CEC 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016C090 00167CF0 7E 24 8B 78 */ mr r4, r17 /* 8016C094 00167CF4 38 A0 00 01 */ li r5, 1 /* 8016C098 00167CF8 48 00 AD 2D */ bl func_80176DC4 /* 8016C09C 00167CFC 88 10 00 14 */ lbz r0, 0x14(r16) /* 8016C0A0 00167D00 28 00 00 03 */ cmplwi r0, 3 /* 8016C0A4 00167D04 40 82 00 20 */ bne lbl_8016C0C4 /* 8016C0A8 00167D08 48 00 00 0C */ b lbl_8016C0B4 lbl_8016C0AC: /* 8016C0AC 00167D0C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016C0B0 00167D10 48 0B 84 D9 */ bl func_80224588 lbl_8016C0B4: /* 8016C0B4 00167D14 4B F0 75 65 */ bl func_80073618 /* 8016C0B8 00167D18 54 71 06 3E */ clrlwi r17, r3, 0x18 /* 8016C0BC 00167D1C 2C 11 00 FF */ cmpwi r17, 0xff /* 8016C0C0 00167D20 41 82 FF EC */ beq lbl_8016C0AC lbl_8016C0C4: /* 8016C0C4 00167D24 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016C0C8 00167D28 7E 24 8B 78 */ mr r4, r17 /* 8016C0CC 00167D2C 38 A0 00 01 */ li r5, 1 /* 8016C0D0 00167D30 48 00 AD 5D */ bl func_80176E2C lbl_8016C0D4: /* 8016C0D4 00167D34 80 61 00 08 */ lwz r3, 8(r1) /* 8016C0D8 00167D38 4B EC 9D 61 */ bl func_80035E38 /* 8016C0DC 00167D3C 2C 03 00 04 */ cmpwi r3, 4 /* 8016C0E0 00167D40 41 82 E7 BC */ beq lbl_8016A89C lbl_8016C0E4: /* 8016C0E4 00167D44 38 60 00 00 */ li r3, 0 lbl_8016C0E8: /* 8016C0E8 00167D48 39 61 00 60 */ addi r11, r1, 0x60 /* 8016C0EC 00167D4C 48 05 B0 55 */ bl __restore_gpr /* 8016C0F0 00167D50 80 01 00 64 */ lwz r0, 0x64(r1) /* 8016C0F4 00167D54 7C 08 03 A6 */ mtlr r0 /* 8016C0F8 00167D58 38 21 00 60 */ addi r1, r1, 0x60 /* 8016C0FC 00167D5C 4E 80 00 20 */ blr .global func_8016C100 func_8016C100: /* 8016C100 00167D60 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8016C104 00167D64 7C 08 02 A6 */ mflr r0 /* 8016C108 00167D68 90 01 00 14 */ stw r0, 0x14(r1) /* 8016C10C 00167D6C 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016C110 00167D70 54 03 03 18 */ rlwinm r3, r0, 0, 0xc, 0xc /* 8016C114 00167D74 50 03 04 E6 */ rlwimi r3, r0, 0, 0x13, 0x13 /* 8016C118 00167D78 3C 03 FF F8 */ addis r0, r3, 0xfff8 /* 8016C11C 00167D7C 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016C120 00167D80 40 82 00 20 */ bne lbl_8016C140 /* 8016C124 00167D84 80 0D 9E EC */ lwz r0, lbl_8063F1AC-_SDA_BASE_(r13) /* 8016C128 00167D88 2C 00 00 00 */ cmpwi r0, 0 /* 8016C12C 00167D8C 41 82 00 14 */ beq lbl_8016C140 /* 8016C130 00167D90 38 00 00 00 */ li r0, 0 /* 8016C134 00167D94 38 60 00 03 */ li r3, 3 /* 8016C138 00167D98 90 0D 9E EC */ stw r0, lbl_8063F1AC-_SDA_BASE_(r13) /* 8016C13C 00167D9C 48 00 00 2C */ b lbl_8016C168 lbl_8016C140: /* 8016C140 00167DA0 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016C144 00167DA4 48 00 25 6D */ bl func_8016E6B0 /* 8016C148 00167DA8 2C 03 00 00 */ cmpwi r3, 0 /* 8016C14C 00167DAC 41 82 00 08 */ beq lbl_8016C154 /* 8016C150 00167DB0 48 00 00 18 */ b lbl_8016C168 lbl_8016C154: /* 8016C154 00167DB4 48 00 25 19 */ bl func_8016E66C /* 8016C158 00167DB8 2C 03 00 00 */ cmpwi r3, 0 /* 8016C15C 00167DBC 41 82 FF F8 */ beq lbl_8016C154 /* 8016C160 00167DC0 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016C164 00167DC4 48 00 25 4D */ bl func_8016E6B0 lbl_8016C168: /* 8016C168 00167DC8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8016C16C 00167DCC 7C 08 03 A6 */ mtlr r0 /* 8016C170 00167DD0 38 21 00 10 */ addi r1, r1, 0x10 /* 8016C174 00167DD4 4E 80 00 20 */ blr .global func_8016C178 func_8016C178: /* 8016C178 00167DD8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8016C17C 00167DDC 7C 08 02 A6 */ mflr r0 /* 8016C180 00167DE0 90 01 00 14 */ stw r0, 0x14(r1) /* 8016C184 00167DE4 93 E1 00 0C */ stw r31, 0xc(r1) /* 8016C188 00167DE8 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016C18C 00167DEC 48 00 25 25 */ bl func_8016E6B0 /* 8016C190 00167DF0 2C 03 00 00 */ cmpwi r3, 0 /* 8016C194 00167DF4 7C 7F 1B 78 */ mr r31, r3 /* 8016C198 00167DF8 40 82 00 1C */ bne lbl_8016C1B4 lbl_8016C19C: /* 8016C19C 00167DFC 48 00 24 D1 */ bl func_8016E66C /* 8016C1A0 00167E00 2C 03 00 00 */ cmpwi r3, 0 /* 8016C1A4 00167E04 41 82 FF F8 */ beq lbl_8016C19C /* 8016C1A8 00167E08 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016C1AC 00167E0C 48 00 25 05 */ bl func_8016E6B0 /* 8016C1B0 00167E10 7C 7F 1B 78 */ mr r31, r3 lbl_8016C1B4: /* 8016C1B4 00167E14 2C 1F 00 03 */ cmpwi r31, 3 /* 8016C1B8 00167E18 41 82 00 54 */ beq lbl_8016C20C /* 8016C1BC 00167E1C 2C 1F 00 0F */ cmpwi r31, 0xf /* 8016C1C0 00167E20 41 82 00 4C */ beq lbl_8016C20C /* 8016C1C4 00167E24 2C 1F 00 0B */ cmpwi r31, 0xb /* 8016C1C8 00167E28 41 82 00 44 */ beq lbl_8016C20C /* 8016C1CC 00167E2C 2C 1F 00 06 */ cmpwi r31, 6 /* 8016C1D0 00167E30 41 82 00 3C */ beq lbl_8016C20C /* 8016C1D4 00167E34 2C 1F 00 0D */ cmpwi r31, 0xd /* 8016C1D8 00167E38 41 82 00 34 */ beq lbl_8016C20C /* 8016C1DC 00167E3C 2C 1F 00 07 */ cmpwi r31, 7 /* 8016C1E0 00167E40 40 82 00 1C */ bne lbl_8016C1FC /* 8016C1E4 00167E44 48 25 CF 2D */ bl func_803C9110 /* 8016C1E8 00167E48 7C 64 1B 78 */ mr r4, r3 /* 8016C1EC 00167E4C 7F E3 FB 78 */ mr r3, r31 /* 8016C1F0 00167E50 38 A0 00 00 */ li r5, 0 /* 8016C1F4 00167E54 48 00 1A 1D */ bl func_8016DC10 /* 8016C1F8 00167E58 48 00 00 14 */ b lbl_8016C20C lbl_8016C1FC: /* 8016C1FC 00167E5C 7F E3 FB 78 */ mr r3, r31 /* 8016C200 00167E60 38 80 00 00 */ li r4, 0 /* 8016C204 00167E64 38 A0 00 00 */ li r5, 0 /* 8016C208 00167E68 48 00 1A 09 */ bl func_8016DC10 lbl_8016C20C: /* 8016C20C 00167E6C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016C210 00167E70 48 0B 83 79 */ bl func_80224588 /* 8016C214 00167E74 4B FF C5 C5 */ bl func_801687D8 /* 8016C218 00167E78 2C 03 00 00 */ cmpwi r3, 0 /* 8016C21C 00167E7C 40 82 00 10 */ bne lbl_8016C22C /* 8016C220 00167E80 48 24 06 09 */ bl func_803AC828 /* 8016C224 00167E84 38 80 00 07 */ li r4, 7 /* 8016C228 00167E88 48 24 1A B9 */ bl func_803ADCE0 lbl_8016C22C: /* 8016C22C 00167E8C 7F E3 FB 78 */ mr r3, r31 /* 8016C230 00167E90 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8016C234 00167E94 80 01 00 14 */ lwz r0, 0x14(r1) /* 8016C238 00167E98 7C 08 03 A6 */ mtlr r0 /* 8016C23C 00167E9C 38 21 00 10 */ addi r1, r1, 0x10 /* 8016C240 00167EA0 4E 80 00 20 */ blr .global func_8016C244 func_8016C244: /* 8016C244 00167EA4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8016C248 00167EA8 7C 08 02 A6 */ mflr r0 /* 8016C24C 00167EAC 90 01 00 14 */ stw r0, 0x14(r1) /* 8016C250 00167EB0 93 E1 00 0C */ stw r31, 0xc(r1) lbl_8016C254: /* 8016C254 00167EB4 48 00 24 19 */ bl func_8016E66C /* 8016C258 00167EB8 48 26 DB FD */ bl func_803D9E54 /* 8016C25C 00167EBC 2C 03 00 00 */ cmpwi r3, 0 /* 8016C260 00167EC0 41 82 FF F4 */ beq lbl_8016C254 /* 8016C264 00167EC4 80 6D 9E CC */ lwz r3, lbl_8063F18C-_SDA_BASE_(r13) /* 8016C268 00167EC8 28 03 00 03 */ cmplwi r3, 3 /* 8016C26C 00167ECC 40 82 00 10 */ bne lbl_8016C27C /* 8016C270 00167ED0 38 00 00 00 */ li r0, 0 /* 8016C274 00167ED4 90 0D 9E CC */ stw r0, lbl_8063F18C-_SDA_BASE_(r13) /* 8016C278 00167ED8 48 00 01 EC */ b lbl_8016C464 lbl_8016C27C: /* 8016C27C 00167EDC 28 03 00 FF */ cmplwi r3, 0xff /* 8016C280 00167EE0 40 82 00 6C */ bne lbl_8016C2EC /* 8016C284 00167EE4 38 00 00 00 */ li r0, 0 /* 8016C288 00167EE8 90 0D 9E CC */ stw r0, lbl_8063F18C-_SDA_BASE_(r13) lbl_8016C28C: /* 8016C28C 00167EEC 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016C290 00167EF0 48 0B 82 F9 */ bl func_80224588 /* 8016C294 00167EF4 4B FF C5 45 */ bl func_801687D8 /* 8016C298 00167EF8 2C 03 00 00 */ cmpwi r3, 0 /* 8016C29C 00167EFC 40 82 00 18 */ bne lbl_8016C2B4 /* 8016C2A0 00167F00 48 24 05 89 */ bl func_803AC828 /* 8016C2A4 00167F04 38 80 00 07 */ li r4, 7 /* 8016C2A8 00167F08 48 24 1A 39 */ bl func_803ADCE0 /* 8016C2AC 00167F0C 38 60 00 86 */ li r3, 0x86 /* 8016C2B0 00167F10 48 00 01 B4 */ b lbl_8016C464 lbl_8016C2B4: /* 8016C2B4 00167F14 48 01 00 C9 */ bl func_8017C37C /* 8016C2B8 00167F18 2C 03 00 85 */ cmpwi r3, 0x85 /* 8016C2BC 00167F1C 41 82 00 30 */ beq lbl_8016C2EC /* 8016C2C0 00167F20 2C 03 00 07 */ cmpwi r3, 7 /* 8016C2C4 00167F24 40 82 00 08 */ bne lbl_8016C2CC /* 8016C2C8 00167F28 48 00 01 9C */ b lbl_8016C464 lbl_8016C2CC: /* 8016C2CC 00167F2C 2C 03 00 83 */ cmpwi r3, 0x83 /* 8016C2D0 00167F30 40 82 FF BC */ bne lbl_8016C28C /* 8016C2D4 00167F34 38 60 00 00 */ li r3, 0 /* 8016C2D8 00167F38 38 80 00 13 */ li r4, 0x13 /* 8016C2DC 00167F3C 38 A0 00 0F */ li r5, 0xf /* 8016C2E0 00167F40 38 C0 00 00 */ li r6, 0 /* 8016C2E4 00167F44 4B EF 14 A9 */ bl func_8005D78C /* 8016C2E8 00167F48 4B FF FF A4 */ b lbl_8016C28C lbl_8016C2EC: /* 8016C2EC 00167F4C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016C2F0 00167F50 48 0B 82 99 */ bl func_80224588 /* 8016C2F4 00167F54 4B FF C4 E5 */ bl func_801687D8 /* 8016C2F8 00167F58 2C 03 00 00 */ cmpwi r3, 0 /* 8016C2FC 00167F5C 40 82 00 18 */ bne lbl_8016C314 /* 8016C300 00167F60 48 24 05 29 */ bl func_803AC828 /* 8016C304 00167F64 38 80 00 07 */ li r4, 7 /* 8016C308 00167F68 48 24 19 D9 */ bl func_803ADCE0 /* 8016C30C 00167F6C 38 60 00 86 */ li r3, 0x86 /* 8016C310 00167F70 48 00 01 54 */ b lbl_8016C464 lbl_8016C314: /* 8016C314 00167F74 80 0D 9E CC */ lwz r0, lbl_8063F18C-_SDA_BASE_(r13) /* 8016C318 00167F78 2C 00 00 00 */ cmpwi r0, 0 /* 8016C31C 00167F7C 41 82 01 34 */ beq lbl_8016C450 /* 8016C320 00167F80 28 00 00 0C */ cmplwi r0, 0xc /* 8016C324 00167F84 40 82 01 00 */ bne lbl_8016C424 /* 8016C328 00167F88 48 01 00 55 */ bl func_8017C37C /* 8016C32C 00167F8C 2C 03 00 00 */ cmpwi r3, 0 /* 8016C330 00167F90 7C 7F 1B 78 */ mr r31, r3 /* 8016C334 00167F94 41 82 00 E8 */ beq lbl_8016C41C /* 8016C338 00167F98 2C 03 00 07 */ cmpwi r3, 7 /* 8016C33C 00167F9C 41 82 00 C4 */ beq lbl_8016C400 /* 8016C340 00167FA0 40 80 00 1C */ bge lbl_8016C35C /* 8016C344 00167FA4 2C 03 00 03 */ cmpwi r3, 3 /* 8016C348 00167FA8 41 82 00 44 */ beq lbl_8016C38C /* 8016C34C 00167FAC 41 80 00 D0 */ blt lbl_8016C41C /* 8016C350 00167FB0 2C 03 00 06 */ cmpwi r3, 6 /* 8016C354 00167FB4 40 80 00 88 */ bge lbl_8016C3DC /* 8016C358 00167FB8 48 00 00 C4 */ b lbl_8016C41C lbl_8016C35C: /* 8016C35C 00167FBC 2C 03 00 87 */ cmpwi r3, 0x87 /* 8016C360 00167FC0 41 82 00 58 */ beq lbl_8016C3B8 /* 8016C364 00167FC4 40 80 00 B8 */ bge lbl_8016C41C /* 8016C368 00167FC8 2C 03 00 83 */ cmpwi r3, 0x83 /* 8016C36C 00167FCC 41 82 00 08 */ beq lbl_8016C374 /* 8016C370 00167FD0 48 00 00 AC */ b lbl_8016C41C lbl_8016C374: /* 8016C374 00167FD4 38 60 00 00 */ li r3, 0 /* 8016C378 00167FD8 38 80 00 13 */ li r4, 0x13 /* 8016C37C 00167FDC 38 A0 00 0F */ li r5, 0xf /* 8016C380 00167FE0 38 C0 00 00 */ li r6, 0 /* 8016C384 00167FE4 4B EF 14 09 */ bl func_8005D78C /* 8016C388 00167FE8 48 00 00 94 */ b lbl_8016C41C lbl_8016C38C: /* 8016C38C 00167FEC 80 6D 9E D4 */ lwz r3, lbl_8063F194-_SDA_BASE_(r13) /* 8016C390 00167FF0 38 A0 00 03 */ li r5, 3 /* 8016C394 00167FF4 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016C398 00167FF8 38 00 00 0B */ li r0, 0xb /* 8016C39C 00167FFC 54 63 10 3A */ slwi r3, r3, 2 /* 8016C3A0 00168000 90 AD 9E D0 */ stw r5, lbl_8063F190-_SDA_BASE_(r13) /* 8016C3A4 00168004 7C 84 1A 14 */ add r4, r4, r3 /* 8016C3A8 00168008 80 64 00 10 */ lwz r3, 0x10(r4) /* 8016C3AC 0016800C 90 6D 9E D8 */ stw r3, lbl_8063F198-_SDA_BASE_(r13) /* 8016C3B0 00168010 90 04 00 10 */ stw r0, 0x10(r4) /* 8016C3B4 00168014 48 00 00 68 */ b lbl_8016C41C lbl_8016C3B8: /* 8016C3B8 00168018 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016C3BC 0016801C 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8016C3C0 00168020 41 82 00 5C */ beq lbl_8016C41C /* 8016C3C4 00168024 4B EE C0 31 */ bl func_800583F4 /* 8016C3C8 00168028 4B EE C0 41 */ bl func_80058408 /* 8016C3CC 0016802C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016C3D0 00168030 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 8016C3D4 00168034 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016C3D8 00168038 48 00 00 44 */ b lbl_8016C41C lbl_8016C3DC: /* 8016C3DC 0016803C 48 00 05 39 */ bl func_8016C914 /* 8016C3E0 00168040 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016C3E4 00168044 38 80 00 00 */ li r4, 0 /* 8016C3E8 00168048 90 8D 9E CC */ stw r4, lbl_8063F18C-_SDA_BASE_(r13) /* 8016C3EC 0016804C 7F E3 FB 78 */ mr r3, r31 /* 8016C3F0 00168050 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 8016C3F4 00168054 90 8D 9E D0 */ stw r4, lbl_8063F190-_SDA_BASE_(r13) /* 8016C3F8 00168058 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016C3FC 0016805C 48 00 00 68 */ b lbl_8016C464 lbl_8016C400: /* 8016C400 00168060 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016C404 00168064 38 80 00 00 */ li r4, 0 /* 8016C408 00168068 90 8D 9E CC */ stw r4, lbl_8063F18C-_SDA_BASE_(r13) /* 8016C40C 0016806C 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 8016C410 00168070 90 8D 9E D0 */ stw r4, lbl_8063F190-_SDA_BASE_(r13) /* 8016C414 00168074 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016C418 00168078 48 00 00 4C */ b lbl_8016C464 lbl_8016C41C: /* 8016C41C 0016807C 80 6D 9E CC */ lwz r3, lbl_8063F18C-_SDA_BASE_(r13) /* 8016C420 00168080 48 00 00 44 */ b lbl_8016C464 lbl_8016C424: /* 8016C424 00168084 48 00 FF 59 */ bl func_8017C37C /* 8016C428 00168088 2C 03 00 83 */ cmpwi r3, 0x83 /* 8016C42C 0016808C 41 82 00 08 */ beq lbl_8016C434 /* 8016C430 00168090 48 00 00 18 */ b lbl_8016C448 lbl_8016C434: /* 8016C434 00168094 38 60 00 00 */ li r3, 0 /* 8016C438 00168098 38 80 00 13 */ li r4, 0x13 /* 8016C43C 0016809C 38 A0 00 0F */ li r5, 0xf /* 8016C440 001680A0 38 C0 00 00 */ li r6, 0 /* 8016C444 001680A4 4B EF 13 49 */ bl func_8005D78C lbl_8016C448: /* 8016C448 001680A8 80 6D 9E CC */ lwz r3, lbl_8063F18C-_SDA_BASE_(r13) /* 8016C44C 001680AC 48 00 00 18 */ b lbl_8016C464 lbl_8016C450: /* 8016C450 001680B0 48 00 FF 2D */ bl func_8017C37C /* 8016C454 001680B4 2C 03 00 00 */ cmpwi r3, 0 /* 8016C458 001680B8 41 82 FE 94 */ beq lbl_8016C2EC /* 8016C45C 001680BC 2C 03 00 80 */ cmpwi r3, 0x80 /* 8016C460 001680C0 41 82 FE 8C */ beq lbl_8016C2EC lbl_8016C464: /* 8016C464 001680C4 80 01 00 14 */ lwz r0, 0x14(r1) /* 8016C468 001680C8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8016C46C 001680CC 7C 08 03 A6 */ mtlr r0 /* 8016C470 001680D0 38 21 00 10 */ addi r1, r1, 0x10 /* 8016C474 001680D4 4E 80 00 20 */ blr .global func_8016C478 func_8016C478: /* 8016C478 001680D8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8016C47C 001680DC 7C 08 02 A6 */ mflr r0 /* 8016C480 001680E0 90 01 00 24 */ stw r0, 0x24(r1) /* 8016C484 001680E4 39 61 00 20 */ addi r11, r1, 0x20 /* 8016C488 001680E8 48 05 AC A1 */ bl _savegpr_27 /* 8016C48C 001680EC 7C 7B 1B 78 */ mr r27, r3 /* 8016C490 001680F0 80 6D 9E C8 */ lwz r3, lbl_8063F188-_SDA_BASE_(r13) /* 8016C494 001680F4 7C 9C 23 78 */ mr r28, r4 /* 8016C498 001680F8 7C BD 2B 78 */ mr r29, r5 /* 8016C49C 001680FC 7F 64 DB 78 */ mr r4, r27 /* 8016C4A0 00168100 48 25 CE 29 */ bl func_803C92C8 /* 8016C4A4 00168104 7C 7F 1B 78 */ mr r31, r3 /* 8016C4A8 00168108 4B FB 04 CD */ bl func_8011C974 /* 8016C4AC 0016810C 88 03 00 1B */ lbz r0, 0x1b(r3) /* 8016C4B0 00168110 28 00 00 01 */ cmplwi r0, 1 /* 8016C4B4 00168114 40 82 00 1C */ bne lbl_8016C4D0 /* 8016C4B8 00168118 57 E0 07 FF */ clrlwi. r0, r31, 0x1f /* 8016C4BC 0016811C 40 82 00 0C */ bne lbl_8016C4C8 /* 8016C4C0 00168120 57 E0 07 BF */ clrlwi. r0, r31, 0x1e /* 8016C4C4 00168124 41 82 00 0C */ beq lbl_8016C4D0 lbl_8016C4C8: /* 8016C4C8 00168128 38 60 00 FF */ li r3, 0xff /* 8016C4CC 0016812C 48 00 03 C0 */ b lbl_8016C88C lbl_8016C4D0: /* 8016C4D0 00168130 80 AD 9E C8 */ lwz r5, lbl_8063F188-_SDA_BASE_(r13) /* 8016C4D4 00168134 54 A0 07 39 */ rlwinm. r0, r5, 0, 0x1c, 0x1c /* 8016C4D8 00168138 41 82 00 4C */ beq lbl_8016C524 /* 8016C4DC 0016813C 2C 1C 00 02 */ cmpwi r28, 2 /* 8016C4E0 00168140 41 82 00 34 */ beq lbl_8016C514 /* 8016C4E4 00168144 40 80 00 14 */ bge lbl_8016C4F8 /* 8016C4E8 00168148 2C 1C 00 00 */ cmpwi r28, 0 /* 8016C4EC 0016814C 41 82 00 18 */ beq lbl_8016C504 /* 8016C4F0 00168150 40 80 00 1C */ bge lbl_8016C50C /* 8016C4F4 00168154 48 00 01 38 */ b lbl_8016C62C lbl_8016C4F8: /* 8016C4F8 00168158 2C 1C 00 05 */ cmpwi r28, 5 /* 8016C4FC 0016815C 40 80 01 30 */ bge lbl_8016C62C /* 8016C500 00168160 48 00 00 1C */ b lbl_8016C51C lbl_8016C504: /* 8016C504 00168164 3B C0 00 00 */ li r30, 0 /* 8016C508 00168168 48 00 01 24 */ b lbl_8016C62C lbl_8016C50C: /* 8016C50C 0016816C 3B C0 00 01 */ li r30, 1 /* 8016C510 00168170 48 00 01 1C */ b lbl_8016C62C lbl_8016C514: /* 8016C514 00168174 3B C0 00 02 */ li r30, 2 /* 8016C518 00168178 48 00 01 14 */ b lbl_8016C62C lbl_8016C51C: /* 8016C51C 0016817C 3B C0 00 03 */ li r30, 3 /* 8016C520 00168180 48 00 01 0C */ b lbl_8016C62C lbl_8016C524: /* 8016C524 00168184 28 1B 00 01 */ cmplwi r27, 1 /* 8016C528 00168188 41 81 00 74 */ bgt lbl_8016C59C /* 8016C52C 0016818C 2C 1C 00 02 */ cmpwi r28, 2 /* 8016C530 00168190 41 82 00 44 */ beq lbl_8016C574 /* 8016C534 00168194 40 80 00 14 */ bge lbl_8016C548 /* 8016C538 00168198 2C 1C 00 00 */ cmpwi r28, 0 /* 8016C53C 0016819C 41 82 00 18 */ beq lbl_8016C554 /* 8016C540 001681A0 40 80 00 2C */ bge lbl_8016C56C /* 8016C544 001681A4 48 00 00 E8 */ b lbl_8016C62C lbl_8016C548: /* 8016C548 001681A8 2C 1C 00 05 */ cmpwi r28, 5 /* 8016C54C 001681AC 40 80 00 E0 */ bge lbl_8016C62C /* 8016C550 001681B0 48 00 00 2C */ b lbl_8016C57C lbl_8016C554: /* 8016C554 001681B4 57 60 07 FE */ clrlwi r0, r27, 0x1f /* 8016C558 001681B8 38 80 00 01 */ li r4, 1 /* 8016C55C 001681BC 38 6D 9E E0 */ addi r3, r13, lbl_8063F1A0-_SDA_BASE_ /* 8016C560 001681C0 3B C0 00 00 */ li r30, 0 /* 8016C564 001681C4 7C 83 01 AE */ stbx r4, r3, r0 /* 8016C568 001681C8 48 00 00 C4 */ b lbl_8016C62C lbl_8016C56C: /* 8016C56C 001681CC 3B C0 00 01 */ li r30, 1 /* 8016C570 001681D0 48 00 00 BC */ b lbl_8016C62C lbl_8016C574: /* 8016C574 001681D4 3B C0 00 02 */ li r30, 2 /* 8016C578 001681D8 48 00 00 B4 */ b lbl_8016C62C lbl_8016C57C: /* 8016C57C 001681DC 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha /* 8016C580 001681E0 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l /* 8016C584 001681E4 88 03 00 1A */ lbz r0, 0x1a(r3) /* 8016C588 001681E8 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 8016C58C 001681EC 40 82 00 08 */ bne lbl_8016C594 /* 8016C590 001681F0 3B A0 00 01 */ li r29, 1 lbl_8016C594: /* 8016C594 001681F4 3B C0 00 03 */ li r30, 3 /* 8016C598 001681F8 48 00 00 94 */ b lbl_8016C62C lbl_8016C59C: /* 8016C59C 001681FC 38 1B 00 FE */ addi r0, r27, 0xfe /* 8016C5A0 00168200 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 8016C5A4 00168204 28 00 00 01 */ cmplwi r0, 1 /* 8016C5A8 00168208 41 81 00 84 */ bgt lbl_8016C62C /* 8016C5AC 0016820C 2C 1C 00 02 */ cmpwi r28, 2 /* 8016C5B0 00168210 41 82 00 58 */ beq lbl_8016C608 /* 8016C5B4 00168214 40 80 00 14 */ bge lbl_8016C5C8 /* 8016C5B8 00168218 2C 1C 00 00 */ cmpwi r28, 0 /* 8016C5BC 0016821C 41 82 00 18 */ beq lbl_8016C5D4 /* 8016C5C0 00168220 40 80 00 40 */ bge lbl_8016C600 /* 8016C5C4 00168224 48 00 00 68 */ b lbl_8016C62C lbl_8016C5C8: /* 8016C5C8 00168228 2C 1C 00 05 */ cmpwi r28, 5 /* 8016C5CC 0016822C 40 80 00 60 */ bge lbl_8016C62C /* 8016C5D0 00168230 48 00 00 40 */ b lbl_8016C610 lbl_8016C5D4: /* 8016C5D4 00168234 54 A0 05 29 */ rlwinm. r0, r5, 0, 0x14, 0x14 /* 8016C5D8 00168238 41 82 00 20 */ beq lbl_8016C5F8 /* 8016C5DC 0016823C 57 60 07 FE */ clrlwi r0, r27, 0x1f /* 8016C5E0 00168240 38 6D 9E E0 */ addi r3, r13, lbl_8063F1A0-_SDA_BASE_ /* 8016C5E4 00168244 7C 03 00 AE */ lbzx r0, r3, r0 /* 8016C5E8 00168248 2C 00 00 00 */ cmpwi r0, 0 /* 8016C5EC 0016824C 40 82 00 0C */ bne lbl_8016C5F8 /* 8016C5F0 00168250 3B C0 00 05 */ li r30, 5 /* 8016C5F4 00168254 48 00 00 38 */ b lbl_8016C62C lbl_8016C5F8: /* 8016C5F8 00168258 3B C0 00 04 */ li r30, 4 /* 8016C5FC 0016825C 48 00 00 30 */ b lbl_8016C62C lbl_8016C600: /* 8016C600 00168260 3B C0 00 06 */ li r30, 6 /* 8016C604 00168264 48 00 00 28 */ b lbl_8016C62C lbl_8016C608: /* 8016C608 00168268 3B C0 00 07 */ li r30, 7 /* 8016C60C 0016826C 48 00 00 20 */ b lbl_8016C62C lbl_8016C610: /* 8016C610 00168270 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha /* 8016C614 00168274 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l /* 8016C618 00168278 88 03 00 1A */ lbz r0, 0x1a(r3) /* 8016C61C 0016827C 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 8016C620 00168280 40 82 00 08 */ bne lbl_8016C628 /* 8016C624 00168284 3B A0 00 01 */ li r29, 1 lbl_8016C628: /* 8016C628 00168288 3B C0 00 08 */ li r30, 8 lbl_8016C62C: /* 8016C62C 0016828C 54 A0 05 29 */ rlwinm. r0, r5, 0, 0x14, 0x14 /* 8016C630 00168290 41 82 01 60 */ beq lbl_8016C790 /* 8016C634 00168294 48 24 01 F5 */ bl func_803AC828 /* 8016C638 00168298 2C 1C 00 02 */ cmpwi r28, 2 /* 8016C63C 0016829C 41 82 00 54 */ beq lbl_8016C690 /* 8016C640 001682A0 40 80 00 10 */ bge lbl_8016C650 /* 8016C644 001682A4 2C 1C 00 00 */ cmpwi r28, 0 /* 8016C648 001682A8 41 82 00 18 */ beq lbl_8016C660 /* 8016C64C 001682AC 48 00 00 A0 */ b lbl_8016C6EC lbl_8016C650: /* 8016C650 001682B0 2C 1C 00 04 */ cmpwi r28, 4 /* 8016C654 001682B4 41 82 00 98 */ beq lbl_8016C6EC /* 8016C658 001682B8 40 80 00 94 */ bge lbl_8016C6EC /* 8016C65C 001682BC 48 00 00 64 */ b lbl_8016C6C0 lbl_8016C660: /* 8016C660 001682C0 7F 65 DB 78 */ mr r5, r27 /* 8016C664 001682C4 57 E4 06 3E */ clrlwi r4, r31, 0x18 /* 8016C668 001682C8 38 C0 00 00 */ li r6, 0 /* 8016C66C 001682CC 38 E0 00 02 */ li r7, 2 /* 8016C670 001682D0 48 00 AF 11 */ bl func_80177580 /* 8016C674 001682D4 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016C678 001682D8 28 00 00 07 */ cmplwi r0, 7 /* 8016C67C 001682DC 40 82 00 70 */ bne lbl_8016C6EC /* 8016C680 001682E0 48 24 01 A9 */ bl func_803AC828 /* 8016C684 001682E4 38 80 00 07 */ li r4, 7 /* 8016C688 001682E8 48 24 16 59 */ bl func_803ADCE0 /* 8016C68C 001682EC 48 00 00 60 */ b lbl_8016C6EC lbl_8016C690: /* 8016C690 001682F0 7F 65 DB 78 */ mr r5, r27 /* 8016C694 001682F4 57 E4 06 3E */ clrlwi r4, r31, 0x18 /* 8016C698 001682F8 38 C0 00 00 */ li r6, 0 /* 8016C69C 001682FC 38 E0 00 05 */ li r7, 5 /* 8016C6A0 00168300 48 00 AE E1 */ bl func_80177580 /* 8016C6A4 00168304 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016C6A8 00168308 28 00 00 07 */ cmplwi r0, 7 /* 8016C6AC 0016830C 40 82 00 40 */ bne lbl_8016C6EC /* 8016C6B0 00168310 48 24 01 79 */ bl func_803AC828 /* 8016C6B4 00168314 38 80 00 07 */ li r4, 7 /* 8016C6B8 00168318 48 24 16 29 */ bl func_803ADCE0 /* 8016C6BC 0016831C 48 00 00 30 */ b lbl_8016C6EC lbl_8016C6C0: /* 8016C6C0 00168320 7F 65 DB 78 */ mr r5, r27 /* 8016C6C4 00168324 57 E4 06 3E */ clrlwi r4, r31, 0x18 /* 8016C6C8 00168328 38 C0 00 00 */ li r6, 0 /* 8016C6CC 0016832C 38 E0 00 01 */ li r7, 1 /* 8016C6D0 00168330 48 00 AE B1 */ bl func_80177580 /* 8016C6D4 00168334 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016C6D8 00168338 28 00 00 07 */ cmplwi r0, 7 /* 8016C6DC 0016833C 40 82 00 10 */ bne lbl_8016C6EC /* 8016C6E0 00168340 48 24 01 49 */ bl func_803AC828 /* 8016C6E4 00168344 38 80 00 07 */ li r4, 7 /* 8016C6E8 00168348 48 24 15 F9 */ bl func_803ADCE0 lbl_8016C6EC: /* 8016C6EC 0016834C 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha /* 8016C6F0 00168350 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l /* 8016C6F4 00168354 88 63 00 1A */ lbz r3, 0x1a(r3) /* 8016C6F8 00168358 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d /* 8016C6FC 0016835C 40 82 00 80 */ bne lbl_8016C77C /* 8016C700 00168360 54 60 06 79 */ rlwinm. r0, r3, 0, 0x19, 0x1c /* 8016C704 00168364 38 60 00 01 */ li r3, 1 /* 8016C708 00168368 57 E0 06 3E */ clrlwi r0, r31, 0x18 /* 8016C70C 0016836C 7C 60 00 30 */ slw r0, r3, r0 /* 8016C710 00168370 54 00 04 3E */ clrlwi r0, r0, 0x10 /* 8016C714 00168374 41 82 00 08 */ beq lbl_8016C71C /* 8016C718 00168378 60 00 00 10 */ ori r0, r0, 0x10 lbl_8016C71C: /* 8016C71C 0016837C 54 05 04 3E */ clrlwi r5, r0, 0x10 /* 8016C720 00168380 38 60 00 00 */ li r3, 0 /* 8016C724 00168384 38 80 00 0D */ li r4, 0xd /* 8016C728 00168388 38 C0 00 00 */ li r6, 0 /* 8016C72C 0016838C 4B EF 10 61 */ bl func_8005D78C /* 8016C730 00168390 3C A0 80 49 */ lis r5, lbl_8048CDB4@ha /* 8016C734 00168394 80 CD 9E DC */ lwz r6, lbl_8063F19C-_SDA_BASE_(r13) /* 8016C738 00168398 38 A5 CD B4 */ addi r5, r5, lbl_8048CDB4@l /* 8016C73C 0016839C 57 E0 06 3E */ clrlwi r0, r31, 0x18 /* 8016C740 001683A0 38 60 00 08 */ li r3, 8 /* 8016C744 001683A4 88 85 00 1A */ lbz r4, 0x1a(r5) /* 8016C748 001683A8 7C 63 00 30 */ slw r3, r3, r0 /* 8016C74C 001683AC 54 C0 07 FF */ clrlwi. r0, r6, 0x1f /* 8016C750 001683B0 7C 80 1B 78 */ or r0, r4, r3 /* 8016C754 001683B4 98 05 00 1A */ stb r0, 0x1a(r5) /* 8016C758 001683B8 41 82 00 24 */ beq lbl_8016C77C /* 8016C75C 001683BC 54 C0 07 BD */ rlwinm. r0, r6, 0, 0x1e, 0x1e /* 8016C760 001683C0 40 82 00 1C */ bne lbl_8016C77C /* 8016C764 001683C4 4B EE BE 1D */ bl func_80058580 /* 8016C768 001683C8 4B EE BC 79 */ bl func_800583E0 /* 8016C76C 001683CC 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016C770 001683D0 60 00 00 02 */ ori r0, r0, 2 /* 8016C774 001683D4 54 00 07 2E */ rlwinm r0, r0, 0, 0x1c, 0x17 /* 8016C778 001683D8 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) lbl_8016C77C: /* 8016C77C 001683DC 7F C4 F3 78 */ mr r4, r30 /* 8016C780 001683E0 7F A5 EB 78 */ mr r5, r29 /* 8016C784 001683E4 57 E3 06 3E */ clrlwi r3, r31, 0x18 /* 8016C788 001683E8 4B FF B4 25 */ bl func_80167BAC /* 8016C78C 001683EC 48 00 00 FC */ b lbl_8016C888 lbl_8016C790: /* 8016C790 001683F0 28 1E 00 04 */ cmplwi r30, 4 /* 8016C794 001683F4 40 82 00 50 */ bne lbl_8016C7E4 /* 8016C798 001683F8 54 A3 03 18 */ rlwinm r3, r5, 0, 0xc, 0xc /* 8016C79C 001683FC 50 A3 04 E6 */ rlwimi r3, r5, 0, 0x13, 0x13 /* 8016C7A0 00168400 3C 03 FF F8 */ addis r0, r3, 0xfff8 /* 8016C7A4 00168404 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016C7A8 00168408 40 82 00 28 */ bne lbl_8016C7D0 /* 8016C7AC 0016840C 57 E0 07 FE */ clrlwi r0, r31, 0x1f /* 8016C7B0 00168410 38 6D 9E E0 */ addi r3, r13, lbl_8063F1A0-_SDA_BASE_ /* 8016C7B4 00168414 7C 03 00 AE */ lbzx r0, r3, r0 /* 8016C7B8 00168418 2C 00 00 00 */ cmpwi r0, 0 /* 8016C7BC 0016841C 41 82 00 0C */ beq lbl_8016C7C8 /* 8016C7C0 00168420 3B A0 00 01 */ li r29, 1 /* 8016C7C4 00168424 48 00 00 20 */ b lbl_8016C7E4 lbl_8016C7C8: /* 8016C7C8 00168428 3B A0 00 00 */ li r29, 0 /* 8016C7CC 0016842C 48 00 00 18 */ b lbl_8016C7E4 lbl_8016C7D0: /* 8016C7D0 00168430 57 E0 07 FE */ clrlwi r0, r31, 0x1f /* 8016C7D4 00168434 38 6D 9E E0 */ addi r3, r13, lbl_8063F1A0-_SDA_BASE_ /* 8016C7D8 00168438 7C 03 00 AE */ lbzx r0, r3, r0 /* 8016C7DC 0016843C 7C 00 00 34 */ cntlzw r0, r0 /* 8016C7E0 00168440 54 1D D9 7E */ srwi r29, r0, 5 lbl_8016C7E4: /* 8016C7E4 00168444 7F C4 F3 78 */ mr r4, r30 /* 8016C7E8 00168448 57 E3 06 3E */ clrlwi r3, r31, 0x18 /* 8016C7EC 0016844C 57 A5 04 3E */ clrlwi r5, r29, 0x10 /* 8016C7F0 00168450 38 C0 00 00 */ li r6, 0 /* 8016C7F4 00168454 4B EF 0F 99 */ bl func_8005D78C /* 8016C7F8 00168458 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha /* 8016C7FC 0016845C 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l /* 8016C800 00168460 88 03 00 1A */ lbz r0, 0x1a(r3) /* 8016C804 00168464 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 8016C808 00168468 40 82 00 80 */ bne lbl_8016C888 /* 8016C80C 0016846C 80 6D 9E DC */ lwz r3, lbl_8063F19C-_SDA_BASE_(r13) /* 8016C810 00168470 54 60 07 FF */ clrlwi. r0, r3, 0x1f /* 8016C814 00168474 41 82 00 54 */ beq lbl_8016C868 /* 8016C818 00168478 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e /* 8016C81C 0016847C 40 82 00 1C */ bne lbl_8016C838 /* 8016C820 00168480 4B EE BD 61 */ bl func_80058580 /* 8016C824 00168484 4B EE BB BD */ bl func_800583E0 /* 8016C828 00168488 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016C82C 0016848C 60 00 00 02 */ ori r0, r0, 2 /* 8016C830 00168490 54 00 07 2E */ rlwinm r0, r0, 0, 0x1c, 0x17 /* 8016C834 00168494 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) lbl_8016C838: /* 8016C838 00168498 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016C83C 0016849C 54 03 03 18 */ rlwinm r3, r0, 0, 0xc, 0xc /* 8016C840 001684A0 50 03 04 E6 */ rlwimi r3, r0, 0, 0x13, 0x13 /* 8016C844 001684A4 3C 03 FF F8 */ addis r0, r3, 0xfff8 /* 8016C848 001684A8 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016C84C 001684AC 40 82 00 1C */ bne lbl_8016C868 /* 8016C850 001684B0 57 E0 07 FF */ clrlwi. r0, r31, 0x1f /* 8016C854 001684B4 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016C858 001684B8 60 03 02 00 */ ori r3, r0, 0x200 /* 8016C85C 001684BC 41 82 00 08 */ beq lbl_8016C864 /* 8016C860 001684C0 60 03 04 00 */ ori r3, r0, 0x400 lbl_8016C864: /* 8016C864 001684C4 90 6D 9E DC */ stw r3, lbl_8063F19C-_SDA_BASE_(r13) lbl_8016C868: /* 8016C868 001684C8 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016C86C 001684CC 54 03 03 18 */ rlwinm r3, r0, 0, 0xc, 0xc /* 8016C870 001684D0 50 03 04 E6 */ rlwimi r3, r0, 0, 0x13, 0x13 /* 8016C874 001684D4 3C 03 FF F8 */ addis r0, r3, 0xfff8 /* 8016C878 001684D8 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016C87C 001684DC 40 82 00 0C */ bne lbl_8016C888 /* 8016C880 001684E0 38 00 00 01 */ li r0, 1 /* 8016C884 001684E4 90 0D 9E E8 */ stw r0, lbl_8063F1A8-_SDA_BASE_(r13) lbl_8016C888: /* 8016C888 001684E8 38 60 00 FE */ li r3, 0xfe lbl_8016C88C: /* 8016C88C 001684EC 39 61 00 20 */ addi r11, r1, 0x20 /* 8016C890 001684F0 48 05 A8 E5 */ bl _restgpr_27 /* 8016C894 001684F4 80 01 00 24 */ lwz r0, 0x24(r1) /* 8016C898 001684F8 7C 08 03 A6 */ mtlr r0 /* 8016C89C 001684FC 38 21 00 20 */ addi r1, r1, 0x20 /* 8016C8A0 00168500 4E 80 00 20 */ blr .global func_8016C8A4 func_8016C8A4: /* 8016C8A4 00168504 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8016C8A8 00168508 7C 08 02 A6 */ mflr r0 /* 8016C8AC 0016850C 90 01 00 14 */ stw r0, 0x14(r1) /* 8016C8B0 00168510 93 E1 00 0C */ stw r31, 0xc(r1) /* 8016C8B4 00168514 7C 7F 1B 78 */ mr r31, r3 /* 8016C8B8 00168518 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016C8BC 0016851C 48 0B 7C CD */ bl func_80224588 /* 8016C8C0 00168520 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016C8C4 00168524 54 00 05 29 */ rlwinm. r0, r0, 0, 0x14, 0x14 /* 8016C8C8 00168528 41 82 00 28 */ beq lbl_8016C8F0 /* 8016C8CC 0016852C 7F E3 FB 78 */ mr r3, r31 /* 8016C8D0 00168530 4B FF B3 7D */ bl func_80167C4C /* 8016C8D4 00168534 28 03 00 07 */ cmplwi r3, 7 /* 8016C8D8 00168538 7C 7F 1B 78 */ mr r31, r3 /* 8016C8DC 0016853C 40 82 00 20 */ bne lbl_8016C8FC /* 8016C8E0 00168540 48 23 FF 49 */ bl func_803AC828 /* 8016C8E4 00168544 38 80 00 07 */ li r4, 7 /* 8016C8E8 00168548 48 24 13 F9 */ bl func_803ADCE0 /* 8016C8EC 0016854C 48 00 00 10 */ b lbl_8016C8FC lbl_8016C8F0: /* 8016C8F0 00168550 7F E3 FB 78 */ mr r3, r31 /* 8016C8F4 00168554 4B EF 23 2D */ bl func_8005EC20 /* 8016C8F8 00168558 7C 7F 1B 78 */ mr r31, r3 lbl_8016C8FC: /* 8016C8FC 0016855C 7F E3 FB 78 */ mr r3, r31 /* 8016C900 00168560 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8016C904 00168564 80 01 00 14 */ lwz r0, 0x14(r1) /* 8016C908 00168568 7C 08 03 A6 */ mtlr r0 /* 8016C90C 0016856C 38 21 00 10 */ addi r1, r1, 0x10 /* 8016C910 00168570 4E 80 00 20 */ blr .global func_8016C914 func_8016C914: /* 8016C914 00168574 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8016C918 00168578 7C 08 02 A6 */ mflr r0 /* 8016C91C 0016857C 90 01 00 14 */ stw r0, 0x14(r1) /* 8016C920 00168580 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016C924 00168584 54 00 05 29 */ rlwinm. r0, r0, 0, 0x14, 0x14 /* 8016C928 00168588 41 82 00 1C */ beq lbl_8016C944 /* 8016C92C 0016858C 38 60 00 00 */ li r3, 0 /* 8016C930 00168590 38 80 00 0F */ li r4, 0xf /* 8016C934 00168594 38 A0 00 00 */ li r5, 0 /* 8016C938 00168598 38 C0 00 00 */ li r6, 0 /* 8016C93C 0016859C 4B EF 0E 51 */ bl func_8005D78C /* 8016C940 001685A0 48 00 00 18 */ b lbl_8016C958 lbl_8016C944: /* 8016C944 001685A4 38 60 00 00 */ li r3, 0 /* 8016C948 001685A8 38 80 00 0C */ li r4, 0xc /* 8016C94C 001685AC 38 A0 00 0F */ li r5, 0xf /* 8016C950 001685B0 38 C0 00 00 */ li r6, 0 /* 8016C954 001685B4 4B EF 0E 39 */ bl func_8005D78C lbl_8016C958: /* 8016C958 001685B8 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016C95C 001685BC 48 0B 7C 2D */ bl func_80224588 /* 8016C960 001685C0 38 60 00 00 */ li r3, 0 /* 8016C964 001685C4 4B EF 22 BD */ bl func_8005EC20 /* 8016C968 001685C8 28 03 F4 FA */ cmplwi r3, 0xf4fa /* 8016C96C 001685CC 40 82 FF EC */ bne lbl_8016C958 /* 8016C970 001685D0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8016C974 001685D4 7C 08 03 A6 */ mtlr r0 /* 8016C978 001685D8 38 21 00 10 */ addi r1, r1, 0x10 /* 8016C97C 001685DC 4E 80 00 20 */ blr .global func_8016C980 func_8016C980: /* 8016C980 001685E0 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8016C984 001685E4 7C 08 02 A6 */ mflr r0 /* 8016C988 001685E8 90 01 00 34 */ stw r0, 0x34(r1) /* 8016C98C 001685EC 39 61 00 30 */ addi r11, r1, 0x30 /* 8016C990 001685F0 48 05 A7 95 */ bl _savegpr_26 /* 8016C994 001685F4 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016C998 001685F8 54 7E 15 BA */ rlwinm r30, r3, 2, 0x16, 0x1d /* 8016C99C 001685FC 7C 7B 1B 78 */ mr r27, r3 /* 8016C9A0 00168600 7C A0 F2 14 */ add r5, r0, r30 /* 8016C9A4 00168604 80 05 00 40 */ lwz r0, 0x40(r5) /* 8016C9A8 00168608 2C 00 00 FF */ cmpwi r0, 0xff /* 8016C9AC 0016860C 41 82 04 4C */ beq lbl_8016CDF8 /* 8016C9B0 00168610 80 CD 9E C8 */ lwz r6, lbl_8063F188-_SDA_BASE_(r13) /* 8016C9B4 00168614 54 C4 03 18 */ rlwinm r4, r6, 0, 0xc, 0xc /* 8016C9B8 00168618 50 C4 04 E6 */ rlwimi r4, r6, 0, 0x13, 0x13 /* 8016C9BC 0016861C 3C 04 FF F8 */ addis r0, r4, 0xfff8 /* 8016C9C0 00168620 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016C9C4 00168624 40 82 00 44 */ bne lbl_8016CA08 /* 8016C9C8 00168628 80 8D 9E F4 */ lwz r4, lbl_8063F1B4-_SDA_BASE_(r13) /* 8016C9CC 0016862C 2C 04 00 00 */ cmpwi r4, 0 /* 8016C9D0 00168630 41 82 00 38 */ beq lbl_8016CA08 /* 8016C9D4 00168634 38 04 FF FF */ addi r0, r4, -1 /* 8016C9D8 00168638 7C 03 00 00 */ cmpw r3, r0 /* 8016C9DC 0016863C 40 82 00 2C */ bne lbl_8016CA08 /* 8016C9E0 00168640 80 05 00 10 */ lwz r0, 0x10(r5) /* 8016C9E4 00168644 2C 00 00 02 */ cmpwi r0, 2 /* 8016C9E8 00168648 40 82 00 20 */ bne lbl_8016CA08 /* 8016C9EC 0016864C 38 80 00 FF */ li r4, 0xff /* 8016C9F0 00168650 38 00 00 00 */ li r0, 0 /* 8016C9F4 00168654 90 85 00 10 */ stw r4, 0x10(r5) /* 8016C9F8 00168658 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016C9FC 0016865C 7C 83 F1 2E */ stwx r4, r3, r30 /* 8016CA00 00168660 90 0D 9E F4 */ stw r0, lbl_8063F1B4-_SDA_BASE_(r13) /* 8016CA04 00168664 48 00 03 F4 */ b lbl_8016CDF8 lbl_8016CA08: /* 8016CA08 00168668 54 C0 04 A5 */ rlwinm. r0, r6, 0, 0x12, 0x12 /* 8016CA0C 0016866C 41 82 00 D8 */ beq lbl_8016CAE4 /* 8016CA10 00168670 54 64 07 FF */ clrlwi. r4, r3, 0x1f /* 8016CA14 00168674 41 82 00 D0 */ beq lbl_8016CAE4 /* 8016CA18 00168678 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha /* 8016CA1C 0016867C 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l /* 8016CA20 00168680 88 03 00 1A */ lbz r0, 0x1a(r3) /* 8016CA24 00168684 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 8016CA28 00168688 41 82 00 1C */ beq lbl_8016CA44 /* 8016CA2C 0016868C 38 60 00 03 */ li r3, 3 /* 8016CA30 00168690 38 80 00 00 */ li r4, 0 /* 8016CA34 00168694 38 A0 00 00 */ li r5, 0 /* 8016CA38 00168698 48 00 F5 39 */ bl func_8017BF70 /* 8016CA3C 0016869C 7C 7B 1B 78 */ mr r27, r3 /* 8016CA40 001686A0 48 00 00 14 */ b lbl_8016CA54 lbl_8016CA44: /* 8016CA44 001686A4 38 60 00 03 */ li r3, 3 /* 8016CA48 001686A8 38 A0 00 01 */ li r5, 1 /* 8016CA4C 001686AC 48 00 F5 25 */ bl func_8017BF70 /* 8016CA50 001686B0 7C 7B 1B 78 */ mr r27, r3 lbl_8016CA54: /* 8016CA54 001686B4 2C 1B 00 00 */ cmpwi r27, 0 /* 8016CA58 001686B8 40 82 00 74 */ bne lbl_8016CACC /* 8016CA5C 001686BC 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016CA60 001686C0 7C A0 F2 14 */ add r5, r0, r30 /* 8016CA64 001686C4 80 05 00 10 */ lwz r0, 0x10(r5) /* 8016CA68 001686C8 2C 00 00 04 */ cmpwi r0, 4 /* 8016CA6C 001686CC 40 82 00 50 */ bne lbl_8016CABC /* 8016CA70 001686D0 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016CA74 001686D4 38 80 00 11 */ li r4, 0x11 /* 8016CA78 001686D8 80 A5 00 40 */ lwz r5, 0x40(r5) /* 8016CA7C 001686DC 48 00 9F 95 */ bl func_80176A10 /* 8016CA80 001686E0 3F 40 80 49 */ lis r26, lbl_8048CDB4@ha /* 8016CA84 001686E4 3B 5A CD B4 */ addi r26, r26, lbl_8048CDB4@l /* 8016CA88 001686E8 88 7A 00 1A */ lbz r3, 0x1a(r26) /* 8016CA8C 001686EC 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d /* 8016CA90 001686F0 40 82 00 2C */ bne lbl_8016CABC /* 8016CA94 001686F4 54 60 07 39 */ rlwinm. r0, r3, 0, 0x1c, 0x1c /* 8016CA98 001686F8 40 82 00 24 */ bne lbl_8016CABC /* 8016CA9C 001686FC 38 60 00 00 */ li r3, 0 /* 8016CAA0 00168700 38 80 00 12 */ li r4, 0x12 /* 8016CAA4 00168704 38 A0 00 0F */ li r5, 0xf /* 8016CAA8 00168708 38 C0 00 00 */ li r6, 0 /* 8016CAAC 0016870C 4B EF 0C E1 */ bl func_8005D78C /* 8016CAB0 00168710 88 1A 00 1A */ lbz r0, 0x1a(r26) /* 8016CAB4 00168714 60 00 00 08 */ ori r0, r0, 8 /* 8016CAB8 00168718 98 1A 00 1A */ stb r0, 0x1a(r26) lbl_8016CABC: /* 8016CABC 0016871C 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016CAC0 00168720 38 80 00 FE */ li r4, 0xfe /* 8016CAC4 00168724 7C 60 F2 14 */ add r3, r0, r30 /* 8016CAC8 00168728 90 83 00 10 */ stw r4, 0x10(r3) lbl_8016CACC: /* 8016CACC 0016872C 2C 1B FF FE */ cmpwi r27, -2 /* 8016CAD0 00168730 40 82 03 28 */ bne lbl_8016CDF8 /* 8016CAD4 00168734 48 23 FD 55 */ bl func_803AC828 /* 8016CAD8 00168738 38 80 00 07 */ li r4, 7 /* 8016CADC 0016873C 48 24 12 05 */ bl func_803ADCE0 /* 8016CAE0 00168740 48 00 03 18 */ b lbl_8016CDF8 lbl_8016CAE4: /* 8016CAE4 00168744 54 C0 03 5B */ rlwinm. r0, r6, 0, 0xd, 0xd /* 8016CAE8 00168748 41 82 00 1C */ beq lbl_8016CB04 /* 8016CAEC 0016874C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016CAF0 00168750 38 60 00 09 */ li r3, 9 /* 8016CAF4 00168754 90 6D 9E CC */ stw r3, lbl_8063F18C-_SDA_BASE_(r13) /* 8016CAF8 00168758 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8016CAFC 0016875C 41 82 00 08 */ beq lbl_8016CB04 /* 8016CB00 00168760 4B EE B9 D5 */ bl func_800584D4 lbl_8016CB04: /* 8016CB04 00168764 4B EE 0D 09 */ bl func_8004D80C /* 8016CB08 00168768 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13) /* 8016CB0C 0016876C 3B A3 34 C0 */ addi r29, r3, 0x34c0 /* 8016CB10 00168770 3B 80 00 00 */ li r28, 0 /* 8016CB14 00168774 54 80 05 29 */ rlwinm. r0, r4, 0, 0x14, 0x14 /* 8016CB18 00168778 40 82 00 18 */ bne lbl_8016CB30 /* 8016CB1C 0016877C 54 83 03 18 */ rlwinm r3, r4, 0, 0xc, 0xc /* 8016CB20 00168780 50 83 04 E6 */ rlwimi r3, r4, 0, 0x13, 0x13 /* 8016CB24 00168784 3C 03 FF F8 */ addis r0, r3, 0xfff8 /* 8016CB28 00168788 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016CB2C 0016878C 40 82 00 08 */ bne lbl_8016CB34 lbl_8016CB30: /* 8016CB30 00168790 3B A0 00 00 */ li r29, 0 lbl_8016CB34: /* 8016CB34 00168794 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016CB38 00168798 7C 60 F2 14 */ add r3, r0, r30 /* 8016CB3C 0016879C 83 E3 00 10 */ lwz r31, 0x10(r3) /* 8016CB40 001687A0 4B E9 FC A9 */ bl func_8000C7E8 /* 8016CB44 001687A4 57 E5 04 3E */ clrlwi r5, r31, 0x10 /* 8016CB48 001687A8 38 80 00 05 */ li r4, 5 /* 8016CB4C 001687AC 53 65 82 1E */ rlwimi r5, r27, 0x10, 8, 0xf /* 8016CB50 001687B0 4B EB 4C 7D */ bl func_800217CC /* 8016CB54 001687B4 80 AD 9F 08 */ lwz r5, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016CB58 001687B8 38 85 00 10 */ addi r4, r5, 0x10 /* 8016CB5C 001687BC 7C 04 F0 2E */ lwzx r0, r4, r30 /* 8016CB60 001687C0 2C 00 00 03 */ cmpwi r0, 3 /* 8016CB64 001687C4 41 82 00 E4 */ beq lbl_8016CC48 /* 8016CB68 001687C8 40 80 00 14 */ bge lbl_8016CB7C /* 8016CB6C 001687CC 2C 00 00 01 */ cmpwi r0, 1 /* 8016CB70 001687D0 41 82 00 20 */ beq lbl_8016CB90 /* 8016CB74 001687D4 40 80 00 AC */ bge lbl_8016CC20 /* 8016CB78 001687D8 48 00 02 3C */ b lbl_8016CDB4 lbl_8016CB7C: /* 8016CB7C 001687DC 2C 00 00 07 */ cmpwi r0, 7 /* 8016CB80 001687E0 40 80 02 34 */ bge lbl_8016CDB4 /* 8016CB84 001687E4 2C 00 00 05 */ cmpwi r0, 5 /* 8016CB88 001687E8 40 80 02 30 */ bge lbl_8016CDB8 /* 8016CB8C 001687EC 48 00 00 F8 */ b lbl_8016CC84 lbl_8016CB90: /* 8016CB90 001687F0 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016CB94 001687F4 38 C0 00 01 */ li r6, 1 /* 8016CB98 001687F8 54 03 03 18 */ rlwinm r3, r0, 0, 0xc, 0xc /* 8016CB9C 001687FC 50 03 04 E6 */ rlwimi r3, r0, 0, 0x13, 0x13 /* 8016CBA0 00168800 3C 03 FF F8 */ addis r0, r3, 0xfff8 /* 8016CBA4 00168804 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016CBA8 00168808 40 82 00 28 */ bne lbl_8016CBD0 /* 8016CBAC 0016880C 57 60 07 FF */ clrlwi. r0, r27, 0x1f /* 8016CBB0 00168810 41 82 00 20 */ beq lbl_8016CBD0 /* 8016CBB4 00168814 80 04 00 00 */ lwz r0, 0(r4) /* 8016CBB8 00168818 2C 00 00 FE */ cmpwi r0, 0xfe /* 8016CBBC 0016881C 41 82 00 10 */ beq lbl_8016CBCC /* 8016CBC0 00168820 80 05 00 18 */ lwz r0, 0x18(r5) /* 8016CBC4 00168824 2C 00 00 FE */ cmpwi r0, 0xfe /* 8016CBC8 00168828 40 82 00 08 */ bne lbl_8016CBD0 lbl_8016CBCC: /* 8016CBCC 0016882C 38 C0 00 00 */ li r6, 0 lbl_8016CBD0: /* 8016CBD0 00168830 2C 06 00 00 */ cmpwi r6, 0 /* 8016CBD4 00168834 41 82 00 20 */ beq lbl_8016CBF4 /* 8016CBD8 00168838 7C 85 F2 14 */ add r4, r5, r30 /* 8016CBDC 0016883C 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016CBE0 00168840 80 A4 00 40 */ lwz r5, 0x40(r4) /* 8016CBE4 00168844 38 80 00 10 */ li r4, 0x10 /* 8016CBE8 00168848 48 00 9E 29 */ bl func_80176A10 /* 8016CBEC 0016884C 38 00 00 01 */ li r0, 1 /* 8016CBF0 00168850 90 0D 9E FC */ stw r0, lbl_8063F1BC-_SDA_BASE_(r13) lbl_8016CBF4: /* 8016CBF4 00168854 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016CBF8 00168858 38 80 00 00 */ li r4, 0 /* 8016CBFC 0016885C 38 A0 00 00 */ li r5, 0 /* 8016CC00 00168860 7C 60 F2 14 */ add r3, r0, r30 /* 8016CC04 00168864 80 03 00 40 */ lwz r0, 0x40(r3) /* 8016CC08 00168868 54 03 06 3E */ clrlwi r3, r0, 0x18 /* 8016CC0C 0016886C 4B FF F8 6D */ bl func_8016C478 /* 8016CC10 00168870 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016CC14 00168874 7C 80 F2 14 */ add r4, r0, r30 /* 8016CC18 00168878 90 64 00 10 */ stw r3, 0x10(r4) /* 8016CC1C 0016887C 48 00 01 9C */ b lbl_8016CDB8 lbl_8016CC20: /* 8016CC20 00168880 7C 65 F2 14 */ add r3, r5, r30 /* 8016CC24 00168884 38 80 00 01 */ li r4, 1 /* 8016CC28 00168888 80 03 00 40 */ lwz r0, 0x40(r3) /* 8016CC2C 0016888C 38 A0 00 00 */ li r5, 0 /* 8016CC30 00168890 54 03 06 3E */ clrlwi r3, r0, 0x18 /* 8016CC34 00168894 4B FF F8 45 */ bl func_8016C478 /* 8016CC38 00168898 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016CC3C 0016889C 7C 80 F2 14 */ add r4, r0, r30 /* 8016CC40 001688A0 90 64 00 10 */ stw r3, 0x10(r4) /* 8016CC44 001688A4 48 00 01 74 */ b lbl_8016CDB8 lbl_8016CC48: /* 8016CC48 001688A8 7C 85 F2 14 */ add r4, r5, r30 /* 8016CC4C 001688AC 80 64 00 40 */ lwz r3, 0x40(r4) /* 8016CC50 001688B0 80 84 00 30 */ lwz r4, 0x30(r4) /* 8016CC54 001688B4 48 00 01 BD */ bl func_8016CE10 /* 8016CC58 001688B8 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016CC5C 001688BC 54 65 06 3E */ clrlwi r5, r3, 0x18 /* 8016CC60 001688C0 38 80 00 02 */ li r4, 2 /* 8016CC64 001688C4 7C 60 F2 14 */ add r3, r0, r30 /* 8016CC68 001688C8 80 03 00 40 */ lwz r0, 0x40(r3) /* 8016CC6C 001688CC 54 03 06 3E */ clrlwi r3, r0, 0x18 /* 8016CC70 001688D0 4B FF F8 09 */ bl func_8016C478 /* 8016CC74 001688D4 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016CC78 001688D8 7C 80 F2 14 */ add r4, r0, r30 /* 8016CC7C 001688DC 90 64 00 10 */ stw r3, 0x10(r4) /* 8016CC80 001688E0 48 00 01 38 */ b lbl_8016CDB8 lbl_8016CC84: /* 8016CC84 001688E4 2C 1D 00 00 */ cmpwi r29, 0 /* 8016CC88 001688E8 41 82 00 30 */ beq lbl_8016CCB8 /* 8016CC8C 001688EC 38 C0 00 00 */ li r6, 0 /* 8016CC90 001688F0 38 00 00 80 */ li r0, 0x80 /* 8016CC94 001688F4 98 C1 00 08 */ stb r6, 8(r1) /* 8016CC98 001688F8 7F A3 EB 78 */ mr r3, r29 /* 8016CC9C 001688FC C0 22 90 68 */ lfs f1, lbl_80641668-_SDA2_BASE_(r2) /* 8016CCA0 00168900 38 81 00 08 */ addi r4, r1, 8 /* 8016CCA4 00168904 98 C1 00 09 */ stb r6, 9(r1) /* 8016CCA8 00168908 38 A0 00 00 */ li r5, 0 /* 8016CCAC 0016890C 98 C1 00 0A */ stb r6, 0xa(r1) /* 8016CCB0 00168910 98 01 00 0B */ stb r0, 0xb(r1) /* 8016CCB4 00168914 4B EE 1F 59 */ bl func_8004EC0C lbl_8016CCB8: /* 8016CCB8 00168918 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016CCBC 0016891C 54 03 03 18 */ rlwinm r3, r0, 0, 0xc, 0xc /* 8016CCC0 00168920 50 03 04 E6 */ rlwimi r3, r0, 0, 0x13, 0x13 /* 8016CCC4 00168924 3C 03 FF F8 */ addis r0, r3, 0xfff8 /* 8016CCC8 00168928 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016CCCC 0016892C 40 82 00 18 */ bne lbl_8016CCE4 /* 8016CCD0 00168930 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha /* 8016CCD4 00168934 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l /* 8016CCD8 00168938 88 03 00 1A */ lbz r0, 0x1a(r3) /* 8016CCDC 0016893C 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 8016CCE0 00168940 40 82 00 1C */ bne lbl_8016CCFC lbl_8016CCE4: /* 8016CCE4 00168944 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016CCE8 00168948 38 80 00 11 */ li r4, 0x11 /* 8016CCEC 0016894C 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016CCF0 00168950 7C A0 F2 14 */ add r5, r0, r30 /* 8016CCF4 00168954 80 A5 00 40 */ lwz r5, 0x40(r5) /* 8016CCF8 00168958 48 00 9D 19 */ bl func_80176A10 lbl_8016CCFC: /* 8016CCFC 0016895C 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016CD00 00168960 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12 /* 8016CD04 00168964 41 82 00 3C */ beq lbl_8016CD40 /* 8016CD08 00168968 3F 40 80 49 */ lis r26, lbl_8048CDB4@ha /* 8016CD0C 0016896C 3B 5A CD B4 */ addi r26, r26, lbl_8048CDB4@l /* 8016CD10 00168970 88 1A 00 1A */ lbz r0, 0x1a(r26) /* 8016CD14 00168974 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 8016CD18 00168978 40 82 00 28 */ bne lbl_8016CD40 /* 8016CD1C 0016897C 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016CD20 00168980 38 60 00 82 */ li r3, 0x82 /* 8016CD24 00168984 38 A0 00 01 */ li r5, 1 /* 8016CD28 00168988 7C 80 F2 14 */ add r4, r0, r30 /* 8016CD2C 0016898C 80 84 00 40 */ lwz r4, 0x40(r4) /* 8016CD30 00168990 48 00 0E E1 */ bl func_8016DC10 /* 8016CD34 00168994 88 1A 00 1A */ lbz r0, 0x1a(r26) /* 8016CD38 00168998 60 00 00 10 */ ori r0, r0, 0x10 /* 8016CD3C 0016899C 98 1A 00 1A */ stb r0, 0x1a(r26) lbl_8016CD40: /* 8016CD40 001689A0 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016CD44 001689A4 7C 64 DA 14 */ add r3, r4, r27 /* 8016CD48 001689A8 88 03 00 74 */ lbz r0, 0x74(r3) /* 8016CD4C 001689AC 2C 00 00 00 */ cmpwi r0, 0 /* 8016CD50 001689B0 41 82 00 3C */ beq lbl_8016CD8C /* 8016CD54 001689B4 7C 64 F2 14 */ add r3, r4, r30 /* 8016CD58 001689B8 38 80 00 04 */ li r4, 4 /* 8016CD5C 001689BC 80 03 00 40 */ lwz r0, 0x40(r3) /* 8016CD60 001689C0 38 A0 00 00 */ li r5, 0 /* 8016CD64 001689C4 54 03 06 3E */ clrlwi r3, r0, 0x18 /* 8016CD68 001689C8 4B FF F7 11 */ bl func_8016C478 /* 8016CD6C 001689CC 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016CD70 001689D0 38 80 00 00 */ li r4, 0 /* 8016CD74 001689D4 7C A0 F2 14 */ add r5, r0, r30 /* 8016CD78 001689D8 90 65 00 10 */ stw r3, 0x10(r5) /* 8016CD7C 001689DC 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016CD80 001689E0 7C 60 DA 14 */ add r3, r0, r27 /* 8016CD84 001689E4 98 83 00 74 */ stb r4, 0x74(r3) /* 8016CD88 001689E8 48 00 00 30 */ b lbl_8016CDB8 lbl_8016CD8C: /* 8016CD8C 001689EC 7C 64 F2 14 */ add r3, r4, r30 /* 8016CD90 001689F0 38 80 00 03 */ li r4, 3 /* 8016CD94 001689F4 80 03 00 40 */ lwz r0, 0x40(r3) /* 8016CD98 001689F8 38 A0 00 00 */ li r5, 0 /* 8016CD9C 001689FC 54 03 06 3E */ clrlwi r3, r0, 0x18 /* 8016CDA0 00168A00 4B FF F6 D9 */ bl func_8016C478 /* 8016CDA4 00168A04 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016CDA8 00168A08 7C 80 F2 14 */ add r4, r0, r30 /* 8016CDAC 00168A0C 90 64 00 10 */ stw r3, 0x10(r4) /* 8016CDB0 00168A10 48 00 00 08 */ b lbl_8016CDB8 lbl_8016CDB4: /* 8016CDB4 00168A14 3B 80 00 01 */ li r28, 1 lbl_8016CDB8: /* 8016CDB8 00168A18 2C 1F 00 04 */ cmpwi r31, 4 /* 8016CDBC 00168A1C 41 82 00 3C */ beq lbl_8016CDF8 /* 8016CDC0 00168A20 2C 1C 00 00 */ cmpwi r28, 0 /* 8016CDC4 00168A24 40 82 00 34 */ bne lbl_8016CDF8 /* 8016CDC8 00168A28 2C 1D 00 00 */ cmpwi r29, 0 /* 8016CDCC 00168A2C 41 82 00 2C */ beq lbl_8016CDF8 /* 8016CDD0 00168A30 38 00 00 00 */ li r0, 0 /* 8016CDD4 00168A34 C0 22 90 68 */ lfs f1, lbl_80641668-_SDA2_BASE_(r2) /* 8016CDD8 00168A38 98 01 00 08 */ stb r0, 8(r1) /* 8016CDDC 00168A3C 7F A3 EB 78 */ mr r3, r29 /* 8016CDE0 00168A40 38 81 00 08 */ addi r4, r1, 8 /* 8016CDE4 00168A44 38 A0 00 00 */ li r5, 0 /* 8016CDE8 00168A48 98 01 00 09 */ stb r0, 9(r1) /* 8016CDEC 00168A4C 98 01 00 0A */ stb r0, 0xa(r1) /* 8016CDF0 00168A50 98 01 00 0B */ stb r0, 0xb(r1) /* 8016CDF4 00168A54 4B EE 1E 19 */ bl func_8004EC0C lbl_8016CDF8: /* 8016CDF8 00168A58 39 61 00 30 */ addi r11, r1, 0x30 /* 8016CDFC 00168A5C 48 05 A3 75 */ bl _restgpr_26 /* 8016CE00 00168A60 80 01 00 34 */ lwz r0, 0x34(r1) /* 8016CE04 00168A64 7C 08 03 A6 */ mtlr r0 /* 8016CE08 00168A68 38 21 00 30 */ addi r1, r1, 0x30 /* 8016CE0C 00168A6C 4E 80 00 20 */ blr .global func_8016CE10 func_8016CE10: /* 8016CE10 00168A70 3C 60 80 42 */ lis r3, lbl_8041F820@ha /* 8016CE14 00168A74 88 04 00 08 */ lbz r0, 8(r4) /* 8016CE18 00168A78 38 63 F8 20 */ addi r3, r3, lbl_8041F820@l /* 8016CE1C 00168A7C 7C 63 00 AE */ lbzx r3, r3, r0 /* 8016CE20 00168A80 4E 80 00 20 */ blr .global func_8016CE24 func_8016CE24: /* 8016CE24 00168A84 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8016CE28 00168A88 7C 08 02 A6 */ mflr r0 /* 8016CE2C 00168A8C 90 01 00 14 */ stw r0, 0x14(r1) /* 8016CE30 00168A90 93 E1 00 0C */ stw r31, 0xc(r1) /* 8016CE34 00168A94 3F E0 80 42 */ lis r31, lbl_8041F7F8@ha /* 8016CE38 00168A98 3B FF F7 F8 */ addi r31, r31, lbl_8041F7F8@l /* 8016CE3C 00168A9C 80 0D 9F 18 */ lwz r0, lbl_8063F1D8-_SDA_BASE_(r13) /* 8016CE40 00168AA0 2C 00 00 00 */ cmpwi r0, 0 /* 8016CE44 00168AA4 40 82 00 1C */ bne lbl_8016CE60 /* 8016CE48 00168AA8 38 60 00 A4 */ li r3, 0xa4 /* 8016CE4C 00168AAC 48 06 DB E5 */ bl __nw__FUl /* 8016CE50 00168AB0 2C 03 00 00 */ cmpwi r3, 0 /* 8016CE54 00168AB4 41 82 00 08 */ beq lbl_8016CE5C /* 8016CE58 00168AB8 48 00 21 75 */ bl func_8016EFCC lbl_8016CE5C: /* 8016CE5C 00168ABC 90 6D 9F 18 */ stw r3, lbl_8063F1D8-_SDA_BASE_(r13) lbl_8016CE60: /* 8016CE60 00168AC0 80 6D 9F 18 */ lwz r3, lbl_8063F1D8-_SDA_BASE_(r13) /* 8016CE64 00168AC4 38 DF 00 34 */ addi r6, r31, 0x34 /* 8016CE68 00168AC8 38 80 00 02 */ li r4, 2 /* 8016CE6C 00168ACC 38 A2 90 70 */ addi r5, r2, lbl_80641670-_SDA2_BASE_ /* 8016CE70 00168AD0 48 00 21 69 */ bl func_8016EFD8 /* 8016CE74 00168AD4 80 6D 9F 18 */ lwz r3, lbl_8063F1D8-_SDA_BASE_(r13) /* 8016CE78 00168AD8 38 DF 00 48 */ addi r6, r31, 0x48 /* 8016CE7C 00168ADC 38 80 00 1F */ li r4, 0x1f /* 8016CE80 00168AE0 38 A2 90 70 */ addi r5, r2, lbl_80641670-_SDA2_BASE_ /* 8016CE84 00168AE4 48 00 21 55 */ bl func_8016EFD8 /* 8016CE88 00168AE8 80 6D 9F 18 */ lwz r3, lbl_8063F1D8-_SDA_BASE_(r13) /* 8016CE8C 00168AEC 38 DF 00 58 */ addi r6, r31, 0x58 /* 8016CE90 00168AF0 38 80 00 01 */ li r4, 1 /* 8016CE94 00168AF4 38 A2 90 70 */ addi r5, r2, lbl_80641670-_SDA2_BASE_ /* 8016CE98 00168AF8 48 00 21 41 */ bl func_8016EFD8 /* 8016CE9C 00168AFC 80 01 00 14 */ lwz r0, 0x14(r1) /* 8016CEA0 00168B00 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8016CEA4 00168B04 7C 08 03 A6 */ mtlr r0 /* 8016CEA8 00168B08 38 21 00 10 */ addi r1, r1, 0x10 /* 8016CEAC 00168B0C 4E 80 00 20 */ blr .global func_8016CEB0 func_8016CEB0: /* 8016CEB0 00168B10 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8016CEB4 00168B14 7C 08 02 A6 */ mflr r0 /* 8016CEB8 00168B18 90 01 00 54 */ stw r0, 0x54(r1) /* 8016CEBC 00168B1C 93 E1 00 4C */ stw r31, 0x4c(r1) /* 8016CEC0 00168B20 93 C1 00 48 */ stw r30, 0x48(r1) /* 8016CEC4 00168B24 7C 7E 1B 78 */ mr r30, r3 /* 8016CEC8 00168B28 4B EC 8E D5 */ bl func_80035D9C /* 8016CECC 00168B2C 2C 03 00 00 */ cmpwi r3, 0 /* 8016CED0 00168B30 7C 7F 1B 78 */ mr r31, r3 /* 8016CED4 00168B34 41 82 00 C4 */ beq lbl_8016CF98 /* 8016CED8 00168B38 38 61 00 08 */ addi r3, r1, 8 /* 8016CEDC 00168B3C 4B EC 8D D5 */ bl func_80035CB0 /* 8016CEE0 00168B40 A0 BE 00 04 */ lhz r5, 4(r30) /* 8016CEE4 00168B44 38 00 00 00 */ li r0, 0 /* 8016CEE8 00168B48 38 61 00 1A */ addi r3, r1, 0x1a /* 8016CEEC 00168B4C 38 9E 00 1C */ addi r4, r30, 0x1c /* 8016CEF0 00168B50 B0 A1 00 08 */ sth r5, 8(r1) /* 8016CEF4 00168B54 38 A0 00 10 */ li r5, 0x10 /* 8016CEF8 00168B58 88 DE 00 06 */ lbz r6, 6(r30) /* 8016CEFC 00168B5C B0 C1 00 0A */ sth r6, 0xa(r1) /* 8016CF00 00168B60 88 FE 00 03 */ lbz r7, 3(r30) /* 8016CF04 00168B64 7C C7 00 D0 */ neg r6, r7 /* 8016CF08 00168B68 7C C6 3B 78 */ or r6, r6, r7 /* 8016CF0C 00168B6C 54 C6 0F FE */ srwi r6, r6, 0x1f /* 8016CF10 00168B70 98 C1 00 0C */ stb r6, 0xc(r1) /* 8016CF14 00168B74 88 FE 00 0F */ lbz r7, 0xf(r30) /* 8016CF18 00168B78 7C C7 00 D0 */ neg r6, r7 /* 8016CF1C 00168B7C 7C C6 3B 78 */ or r6, r6, r7 /* 8016CF20 00168B80 54 C6 0F FE */ srwi r6, r6, 0x1f /* 8016CF24 00168B84 98 C1 00 0D */ stb r6, 0xd(r1) /* 8016CF28 00168B88 80 DE 00 08 */ lwz r6, 8(r30) /* 8016CF2C 00168B8C 90 C1 00 14 */ stw r6, 0x14(r1) /* 8016CF30 00168B90 88 DE 00 0E */ lbz r6, 0xe(r30) /* 8016CF34 00168B94 98 C1 00 11 */ stb r6, 0x11(r1) /* 8016CF38 00168B98 A0 DE 00 14 */ lhz r6, 0x14(r30) /* 8016CF3C 00168B9C 7C C6 00 34 */ cntlzw r6, r6 /* 8016CF40 00168BA0 98 01 00 0F */ stb r0, 0xf(r1) /* 8016CF44 00168BA4 54 C0 D9 7E */ srwi r0, r6, 5 /* 8016CF48 00168BA8 98 01 00 0E */ stb r0, 0xe(r1) /* 8016CF4C 00168BAC A0 1E 00 16 */ lhz r0, 0x16(r30) /* 8016CF50 00168BB0 98 01 00 10 */ stb r0, 0x10(r1) /* 8016CF54 00168BB4 80 1E 00 10 */ lwz r0, 0x10(r30) /* 8016CF58 00168BB8 B0 01 00 12 */ sth r0, 0x12(r1) /* 8016CF5C 00168BBC 88 1E 00 02 */ lbz r0, 2(r30) /* 8016CF60 00168BC0 98 01 00 18 */ stb r0, 0x18(r1) /* 8016CF64 00168BC4 A0 1E 00 0C */ lhz r0, 0xc(r30) /* 8016CF68 00168BC8 98 01 00 19 */ stb r0, 0x19(r1) /* 8016CF6C 00168BCC 48 00 A1 15 */ bl func_80177080 /* 8016CF70 00168BD0 88 9E 00 01 */ lbz r4, 1(r30) /* 8016CF74 00168BD4 7F E3 FB 78 */ mr r3, r31 /* 8016CF78 00168BD8 38 A1 00 08 */ addi r5, r1, 8 /* 8016CF7C 00168BDC 4B EC 9B 91 */ bl func_80036B0C /* 8016CF80 00168BE0 80 6D 9E B4 */ lwz r3, lbl_8063F174-_SDA_BASE_(r13) /* 8016CF84 00168BE4 38 80 00 01 */ li r4, 1 /* 8016CF88 00168BE8 38 03 00 01 */ addi r0, r3, 1 /* 8016CF8C 00168BEC 90 0D 9E B4 */ stw r0, lbl_8063F174-_SDA_BASE_(r13) /* 8016CF90 00168BF0 88 7E 00 01 */ lbz r3, 1(r30) /* 8016CF94 00168BF4 48 00 02 35 */ bl func_8016D1C8 lbl_8016CF98: /* 8016CF98 00168BF8 80 01 00 54 */ lwz r0, 0x54(r1) /* 8016CF9C 00168BFC 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 8016CFA0 00168C00 83 C1 00 48 */ lwz r30, 0x48(r1) /* 8016CFA4 00168C04 7C 08 03 A6 */ mtlr r0 /* 8016CFA8 00168C08 38 21 00 50 */ addi r1, r1, 0x50 /* 8016CFAC 00168C0C 4E 80 00 20 */ blr .global func_8016CFB0 func_8016CFB0: /* 8016CFB0 00168C10 94 21 FF 90 */ stwu r1, -0x70(r1) /* 8016CFB4 00168C14 7C 08 02 A6 */ mflr r0 /* 8016CFB8 00168C18 90 01 00 74 */ stw r0, 0x74(r1) /* 8016CFBC 00168C1C 93 E1 00 6C */ stw r31, 0x6c(r1) /* 8016CFC0 00168C20 7C 9F 23 78 */ mr r31, r4 /* 8016CFC4 00168C24 93 C1 00 68 */ stw r30, 0x68(r1) /* 8016CFC8 00168C28 7C 7E 1B 78 */ mr r30, r3 /* 8016CFCC 00168C2C 93 A1 00 64 */ stw r29, 0x64(r1) /* 8016CFD0 00168C30 93 81 00 60 */ stw r28, 0x60(r1) /* 8016CFD4 00168C34 80 0D 9E A8 */ lwz r0, lbl_8063F168-_SDA_BASE_(r13) /* 8016CFD8 00168C38 2C 00 00 01 */ cmpwi r0, 1 /* 8016CFDC 00168C3C 40 82 00 3C */ bne lbl_8016D018 /* 8016CFE0 00168C40 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016CFE4 00168C44 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12 /* 8016CFE8 00168C48 41 82 00 30 */ beq lbl_8016D018 /* 8016CFEC 00168C4C 3B A0 FF FF */ li r29, -1 /* 8016CFF0 00168C50 48 00 00 20 */ b lbl_8016D010 lbl_8016CFF4: /* 8016CFF4 00168C54 7F E4 FB 78 */ mr r4, r31 /* 8016CFF8 00168C58 38 60 00 80 */ li r3, 0x80 /* 8016CFFC 00168C5C 38 A0 00 00 */ li r5, 0 /* 8016D000 00168C60 48 00 EF 71 */ bl func_8017BF70 /* 8016D004 00168C64 7C 7D 1B 78 */ mr r29, r3 /* 8016D008 00168C68 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016D00C 00168C6C 48 0B 75 7D */ bl func_80224588 lbl_8016D010: /* 8016D010 00168C70 2C 1D FF FF */ cmpwi r29, -1 /* 8016D014 00168C74 41 82 FF E0 */ beq lbl_8016CFF4 lbl_8016D018: /* 8016D018 00168C78 4B EC 8D 85 */ bl func_80035D9C /* 8016D01C 00168C7C 2C 03 00 00 */ cmpwi r3, 0 /* 8016D020 00168C80 7C 7C 1B 78 */ mr r28, r3 /* 8016D024 00168C84 41 82 01 7C */ beq lbl_8016D1A0 /* 8016D028 00168C88 38 61 00 28 */ addi r3, r1, 0x28 /* 8016D02C 00168C8C 4B EC 8C 85 */ bl func_80035CB0 /* 8016D030 00168C90 7F C3 F3 78 */ mr r3, r30 /* 8016D034 00168C94 38 80 00 A2 */ li r4, 0xa2 /* 8016D038 00168C98 38 A0 00 00 */ li r5, 0 /* 8016D03C 00168C9C 48 27 09 A1 */ bl func_803DD9DC /* 8016D040 00168CA0 54 7D 04 3E */ clrlwi r29, r3, 0x10 /* 8016D044 00168CA4 7F C3 F3 78 */ mr r3, r30 /* 8016D048 00168CA8 38 80 00 05 */ li r4, 5 /* 8016D04C 00168CAC 38 A0 00 00 */ li r5, 0 /* 8016D050 00168CB0 48 27 09 8D */ bl func_803DD9DC /* 8016D054 00168CB4 B0 61 00 28 */ sth r3, 0x28(r1) /* 8016D058 00168CB8 7F C3 F3 78 */ mr r3, r30 /* 8016D05C 00168CBC 38 80 00 70 */ li r4, 0x70 /* 8016D060 00168CC0 38 A0 00 00 */ li r5, 0 /* 8016D064 00168CC4 48 27 09 79 */ bl func_803DD9DC /* 8016D068 00168CC8 B0 61 00 2A */ sth r3, 0x2a(r1) /* 8016D06C 00168CCC 7F C3 F3 78 */ mr r3, r30 /* 8016D070 00168CD0 48 26 F0 61 */ bl func_803DC0D0 /* 8016D074 00168CD4 54 65 06 3E */ clrlwi r5, r3, 0x18 /* 8016D078 00168CD8 7F C3 F3 78 */ mr r3, r30 /* 8016D07C 00168CDC 7C 05 00 D0 */ neg r0, r5 /* 8016D080 00168CE0 38 80 00 6F */ li r4, 0x6f /* 8016D084 00168CE4 7C 00 2B 78 */ or r0, r0, r5 /* 8016D088 00168CE8 38 A0 00 00 */ li r5, 0 /* 8016D08C 00168CEC 54 00 0F FE */ srwi r0, r0, 0x1f /* 8016D090 00168CF0 98 01 00 2C */ stb r0, 0x2c(r1) /* 8016D094 00168CF4 48 27 09 49 */ bl func_803DD9DC /* 8016D098 00168CF8 7C 03 00 D0 */ neg r0, r3 /* 8016D09C 00168CFC 38 80 00 00 */ li r4, 0 /* 8016D0A0 00168D00 7C 00 1B 78 */ or r0, r0, r3 /* 8016D0A4 00168D04 7F C3 F3 78 */ mr r3, r30 /* 8016D0A8 00168D08 54 00 0F FE */ srwi r0, r0, 0x1f /* 8016D0AC 00168D0C 38 A0 00 00 */ li r5, 0 /* 8016D0B0 00168D10 98 01 00 2D */ stb r0, 0x2d(r1) /* 8016D0B4 00168D14 48 27 09 29 */ bl func_803DD9DC /* 8016D0B8 00168D18 90 61 00 34 */ stw r3, 0x34(r1) /* 8016D0BC 00168D1C 7F C3 F3 78 */ mr r3, r30 /* 8016D0C0 00168D20 38 80 00 09 */ li r4, 9 /* 8016D0C4 00168D24 38 A0 00 00 */ li r5, 0 /* 8016D0C8 00168D28 48 27 09 15 */ bl func_803DD9DC /* 8016D0CC 00168D2C 7F A0 00 34 */ cntlzw r0, r29 /* 8016D0D0 00168D30 3B A0 00 00 */ li r29, 0 /* 8016D0D4 00168D34 54 00 D9 7E */ srwi r0, r0, 5 /* 8016D0D8 00168D38 98 61 00 31 */ stb r3, 0x31(r1) /* 8016D0DC 00168D3C 7F C3 F3 78 */ mr r3, r30 /* 8016D0E0 00168D40 38 80 00 9A */ li r4, 0x9a /* 8016D0E4 00168D44 98 01 00 2E */ stb r0, 0x2e(r1) /* 8016D0E8 00168D48 38 A0 00 00 */ li r5, 0 /* 8016D0EC 00168D4C 9B A1 00 2F */ stb r29, 0x2f(r1) /* 8016D0F0 00168D50 48 27 08 ED */ bl func_803DD9DC /* 8016D0F4 00168D54 98 61 00 30 */ stb r3, 0x30(r1) /* 8016D0F8 00168D58 7F C3 F3 78 */ mr r3, r30 /* 8016D0FC 00168D5C 38 80 00 9F */ li r4, 0x9f /* 8016D100 00168D60 38 A0 00 00 */ li r5, 0 /* 8016D104 00168D64 48 27 08 D9 */ bl func_803DD9DC /* 8016D108 00168D68 B0 61 00 32 */ sth r3, 0x32(r1) /* 8016D10C 00168D6C 9B A1 00 38 */ stb r29, 0x38(r1) /* 8016D110 00168D70 48 23 F7 19 */ bl func_803AC828 /* 8016D114 00168D74 2C 03 00 00 */ cmpwi r3, 0 /* 8016D118 00168D78 7C 7D 1B 78 */ mr r29, r3 /* 8016D11C 00168D7C 41 82 00 28 */ beq lbl_8016D144 /* 8016D120 00168D80 48 23 F7 29 */ bl func_803AC848 /* 8016D124 00168D84 2C 03 00 00 */ cmpwi r3, 0 /* 8016D128 00168D88 7C 64 1B 78 */ mr r4, r3 /* 8016D12C 00168D8C 41 82 00 18 */ beq lbl_8016D144 /* 8016D130 00168D90 7F A3 EB 78 */ mr r3, r29 /* 8016D134 00168D94 7F E6 FB 78 */ mr r6, r31 /* 8016D138 00168D98 38 A0 00 02 */ li r5, 2 /* 8016D13C 00168D9C 48 25 BB 0D */ bl func_803C8C48 /* 8016D140 00168DA0 98 61 00 38 */ stb r3, 0x38(r1) lbl_8016D144: /* 8016D144 00168DA4 7F C3 F3 78 */ mr r3, r30 /* 8016D148 00168DA8 38 80 00 0A */ li r4, 0xa /* 8016D14C 00168DAC 38 A0 00 00 */ li r5, 0 /* 8016D150 00168DB0 48 27 08 8D */ bl func_803DD9DC /* 8016D154 00168DB4 98 61 00 39 */ stb r3, 0x39(r1) /* 8016D158 00168DB8 7F C3 F3 78 */ mr r3, r30 /* 8016D15C 00168DBC 38 A1 00 08 */ addi r5, r1, 8 /* 8016D160 00168DC0 38 80 00 74 */ li r4, 0x74 /* 8016D164 00168DC4 48 27 08 79 */ bl func_803DD9DC /* 8016D168 00168DC8 38 61 00 3A */ addi r3, r1, 0x3a /* 8016D16C 00168DCC 38 81 00 08 */ addi r4, r1, 8 /* 8016D170 00168DD0 38 A0 00 10 */ li r5, 0x10 /* 8016D174 00168DD4 48 00 9F 0D */ bl func_80177080 /* 8016D178 00168DD8 7F 83 E3 78 */ mr r3, r28 /* 8016D17C 00168DDC 7F E4 FB 78 */ mr r4, r31 /* 8016D180 00168DE0 38 A1 00 28 */ addi r5, r1, 0x28 /* 8016D184 00168DE4 4B EC 99 89 */ bl func_80036B0C /* 8016D188 00168DE8 80 AD 9E B4 */ lwz r5, lbl_8063F174-_SDA_BASE_(r13) /* 8016D18C 00168DEC 57 E3 06 3E */ clrlwi r3, r31, 0x18 /* 8016D190 00168DF0 38 80 00 01 */ li r4, 1 /* 8016D194 00168DF4 38 05 00 01 */ addi r0, r5, 1 /* 8016D198 00168DF8 90 0D 9E B4 */ stw r0, lbl_8063F174-_SDA_BASE_(r13) /* 8016D19C 00168DFC 48 00 00 2D */ bl func_8016D1C8 lbl_8016D1A0: /* 8016D1A0 00168E00 80 01 00 74 */ lwz r0, 0x74(r1) /* 8016D1A4 00168E04 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 8016D1A8 00168E08 83 C1 00 68 */ lwz r30, 0x68(r1) /* 8016D1AC 00168E0C 83 A1 00 64 */ lwz r29, 0x64(r1) /* 8016D1B0 00168E10 83 81 00 60 */ lwz r28, 0x60(r1) /* 8016D1B4 00168E14 7C 08 03 A6 */ mtlr r0 /* 8016D1B8 00168E18 38 21 00 70 */ addi r1, r1, 0x70 /* 8016D1BC 00168E1C 4E 80 00 20 */ blr .global func_8016D1C0 func_8016D1C0: /* 8016D1C0 00168E20 98 6D 9F 00 */ stb r3, lbl_8063F1C0-_SDA_BASE_(r13) /* 8016D1C4 00168E24 4E 80 00 20 */ blr .global func_8016D1C8 func_8016D1C8: /* 8016D1C8 00168E28 38 AD 9F 04 */ addi r5, r13, lbl_8063F1C4-_SDA_BASE_ /* 8016D1CC 00168E2C 7C 85 19 AE */ stbx r4, r5, r3 /* 8016D1D0 00168E30 4E 80 00 20 */ blr .global func_8016D1D4 func_8016D1D4: /* 8016D1D4 00168E34 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8016D1D8 00168E38 7C 08 02 A6 */ mflr r0 /* 8016D1DC 00168E3C 90 01 00 24 */ stw r0, 0x24(r1) /* 8016D1E0 00168E40 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8016D1E4 00168E44 7C DF 33 78 */ mr r31, r6 /* 8016D1E8 00168E48 93 C1 00 18 */ stw r30, 0x18(r1) /* 8016D1EC 00168E4C 7C BE 2B 78 */ mr r30, r5 /* 8016D1F0 00168E50 93 A1 00 14 */ stw r29, 0x14(r1) /* 8016D1F4 00168E54 7C 9D 23 78 */ mr r29, r4 /* 8016D1F8 00168E58 93 81 00 10 */ stw r28, 0x10(r1) /* 8016D1FC 00168E5C 7C 7C 1B 78 */ mr r28, r3 /* 8016D200 00168E60 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016D204 00168E64 48 00 9A 01 */ bl func_80176C04 /* 8016D208 00168E68 57 E0 80 1E */ slwi r0, r31, 0x10 /* 8016D20C 00168E6C 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016D210 00168E70 7F 84 E3 78 */ mr r4, r28 /* 8016D214 00168E74 7F C6 F3 78 */ mr r6, r30 /* 8016D218 00168E78 7F A5 03 78 */ or r5, r29, r0 /* 8016D21C 00168E7C 38 E0 00 01 */ li r7, 1 /* 8016D220 00168E80 48 00 9B 39 */ bl func_80176D58 /* 8016D224 00168E84 4B E9 F5 C5 */ bl func_8000C7E8 /* 8016D228 00168E88 57 80 80 1E */ slwi r0, r28, 0x10 /* 8016D22C 00168E8C 38 80 00 03 */ li r4, 3 /* 8016D230 00168E90 7C 05 EB 78 */ or r5, r0, r29 /* 8016D234 00168E94 4B EB 45 99 */ bl func_800217CC /* 8016D238 00168E98 80 01 00 24 */ lwz r0, 0x24(r1) /* 8016D23C 00168E9C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8016D240 00168EA0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8016D244 00168EA4 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8016D248 00168EA8 83 81 00 10 */ lwz r28, 0x10(r1) /* 8016D24C 00168EAC 7C 08 03 A6 */ mtlr r0 /* 8016D250 00168EB0 38 21 00 20 */ addi r1, r1, 0x20 /* 8016D254 00168EB4 4E 80 00 20 */ blr .global func_8016D258 func_8016D258: /* 8016D258 00168EB8 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8016D25C 00168EBC 7C 08 02 A6 */ mflr r0 /* 8016D260 00168EC0 90 01 00 34 */ stw r0, 0x34(r1) /* 8016D264 00168EC4 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8016D268 00168EC8 93 C1 00 28 */ stw r30, 0x28(r1) /* 8016D26C 00168ECC 4B EC 8B 31 */ bl func_80035D9C /* 8016D270 00168ED0 2C 03 00 00 */ cmpwi r3, 0 /* 8016D274 00168ED4 7C 7E 1B 78 */ mr r30, r3 /* 8016D278 00168ED8 41 82 00 D0 */ beq lbl_8016D348 /* 8016D27C 00168EDC 38 00 00 04 */ li r0, 4 /* 8016D280 00168EE0 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016D284 00168EE4 90 0D 9E B0 */ stw r0, lbl_8063F170-_SDA_BASE_(r13) /* 8016D288 00168EE8 48 00 99 7D */ bl func_80176C04 /* 8016D28C 00168EEC 3F E0 80 49 */ lis r31, lbl_8048CDB4@ha /* 8016D290 00168EF0 80 6D 9E B8 */ lwz r3, lbl_8063F178-_SDA_BASE_(r13) /* 8016D294 00168EF4 3B FF CD B4 */ addi r31, r31, lbl_8048CDB4@l /* 8016D298 00168EF8 88 1F 00 1B */ lbz r0, 0x1b(r31) /* 8016D29C 00168EFC 7C 03 00 00 */ cmpw r3, r0 /* 8016D2A0 00168F00 41 82 00 2C */ beq lbl_8016D2CC /* 8016D2A4 00168F04 7F C3 F3 78 */ mr r3, r30 /* 8016D2A8 00168F08 4B EC 8C 31 */ bl func_80035ED8 /* 8016D2AC 00168F0C 7C 64 1B 78 */ mr r4, r3 /* 8016D2B0 00168F10 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016D2B4 00168F14 38 A0 00 00 */ li r5, 0 /* 8016D2B8 00168F18 38 C0 00 00 */ li r6, 0 /* 8016D2BC 00168F1C 38 E0 00 01 */ li r7, 1 /* 8016D2C0 00168F20 48 00 9A 2D */ bl func_80176CEC /* 8016D2C4 00168F24 88 1F 00 1B */ lbz r0, 0x1b(r31) /* 8016D2C8 00168F28 90 0D 9E B8 */ stw r0, lbl_8063F178-_SDA_BASE_(r13) lbl_8016D2CC: /* 8016D2CC 00168F2C 38 61 00 08 */ addi r3, r1, 8 /* 8016D2D0 00168F30 48 00 91 15 */ bl func_801763E4 /* 8016D2D4 00168F34 7F C3 F3 78 */ mr r3, r30 /* 8016D2D8 00168F38 4B EC 8B D1 */ bl func_80035EA8 /* 8016D2DC 00168F3C 2C 03 00 2D */ cmpwi r3, 0x2d /* 8016D2E0 00168F40 40 82 00 20 */ bne lbl_8016D300 /* 8016D2E4 00168F44 80 7E 09 70 */ lwz r3, 0x970(r30) /* 8016D2E8 00168F48 2C 03 00 00 */ cmpwi r3, 0 /* 8016D2EC 00168F4C 41 82 00 14 */ beq lbl_8016D300 /* 8016D2F0 00168F50 88 03 00 06 */ lbz r0, 6(r3) /* 8016D2F4 00168F54 2C 00 00 00 */ cmpwi r0, 0 /* 8016D2F8 00168F58 40 82 00 08 */ bne lbl_8016D300 /* 8016D2FC 00168F5C 4B EB 74 05 */ bl func_80024700 lbl_8016D300: /* 8016D300 00168F60 4B E9 F4 E9 */ bl func_8000C7E8 /* 8016D304 00168F64 38 80 00 06 */ li r4, 6 /* 8016D308 00168F68 38 A0 00 00 */ li r5, 0 /* 8016D30C 00168F6C 4B EB 44 C1 */ bl func_800217CC /* 8016D310 00168F70 38 61 00 08 */ addi r3, r1, 8 /* 8016D314 00168F74 48 00 91 F5 */ bl func_80176508 /* 8016D318 00168F78 4B E9 F4 D1 */ bl func_8000C7E8 /* 8016D31C 00168F7C 38 80 00 00 */ li r4, 0 /* 8016D320 00168F80 38 A0 00 00 */ li r5, 0 /* 8016D324 00168F84 4B EB 44 A9 */ bl func_800217CC /* 8016D328 00168F88 38 61 00 08 */ addi r3, r1, 8 /* 8016D32C 00168F8C 38 80 00 01 */ li r4, 1 /* 8016D330 00168F90 48 00 92 A1 */ bl func_801765D0 /* 8016D334 00168F94 38 00 00 05 */ li r0, 5 /* 8016D338 00168F98 38 61 00 08 */ addi r3, r1, 8 /* 8016D33C 00168F9C 90 0D 9E B0 */ stw r0, lbl_8063F170-_SDA_BASE_(r13) /* 8016D340 00168FA0 38 80 FF FF */ li r4, -1 /* 8016D344 00168FA4 48 00 90 E9 */ bl func_8017642C lbl_8016D348: /* 8016D348 00168FA8 80 01 00 34 */ lwz r0, 0x34(r1) /* 8016D34C 00168FAC 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8016D350 00168FB0 83 C1 00 28 */ lwz r30, 0x28(r1) /* 8016D354 00168FB4 7C 08 03 A6 */ mtlr r0 /* 8016D358 00168FB8 38 21 00 30 */ addi r1, r1, 0x30 /* 8016D35C 00168FBC 4E 80 00 20 */ blr .global func_8016D360 func_8016D360: /* 8016D360 00168FC0 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8016D364 00168FC4 7C 08 02 A6 */ mflr r0 /* 8016D368 00168FC8 90 01 00 34 */ stw r0, 0x34(r1) /* 8016D36C 00168FCC 39 61 00 30 */ addi r11, r1, 0x30 /* 8016D370 00168FD0 48 05 9D AD */ bl _savegpr_24 /* 8016D374 00168FD4 7C 78 1B 78 */ mr r24, r3 /* 8016D378 00168FD8 4B E9 F4 71 */ bl func_8000C7E8 /* 8016D37C 00168FDC 3F C0 80 49 */ lis r30, lbl_8048CDB4@ha /* 8016D380 00168FE0 57 05 E0 06 */ slwi r5, r24, 0x1c /* 8016D384 00168FE4 3B FE CD B4 */ addi r31, r30, lbl_8048CDB4@l /* 8016D388 00168FE8 38 80 00 01 */ li r4, 1 /* 8016D38C 00168FEC 80 1F 00 14 */ lwz r0, 0x14(r31) /* 8016D390 00168FF0 7C A5 03 78 */ or r5, r5, r0 /* 8016D394 00168FF4 4B EB 44 39 */ bl func_800217CC /* 8016D398 00168FF8 4B EC 8A 05 */ bl func_80035D9C /* 8016D39C 00168FFC 7C 7D 1B 78 */ mr r29, r3 /* 8016D3A0 00169000 38 7F 00 08 */ addi r3, r31, 8 /* 8016D3A4 00169004 48 00 20 59 */ bl func_8016F3FC /* 8016D3A8 00169008 80 1F 00 08 */ lwz r0, 8(r31) /* 8016D3AC 0016900C 90 7E CD B4 */ stw r3, -0x324c(r30) /* 8016D3B0 00169010 2C 00 00 00 */ cmpwi r0, 0 /* 8016D3B4 00169014 41 82 01 E4 */ beq lbl_8016D598 /* 8016D3B8 00169018 9B 1F 00 1F */ stb r24, 0x1f(r31) /* 8016D3BC 0016901C 3B 60 00 06 */ li r27, 6 /* 8016D3C0 00169020 3B 80 00 02 */ li r28, 2 lbl_8016D3C4: /* 8016D3C4 00169024 7F A4 EB 78 */ mr r4, r29 /* 8016D3C8 00169028 38 7E CD B4 */ addi r3, r30, -12876 /* 8016D3CC 0016902C 48 00 3B 1D */ bl func_80170EE8 /* 8016D3D0 00169030 80 1F 00 10 */ lwz r0, 0x10(r31) /* 8016D3D4 00169034 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18 /* 8016D3D8 00169038 41 82 00 E0 */ beq lbl_8016D4B8 /* 8016D3DC 0016903C 93 6D 9E B0 */ stw r27, lbl_8063F170-_SDA_BASE_(r13) /* 8016D3E0 00169040 88 7F 00 22 */ lbz r3, 0x22(r31) /* 8016D3E4 00169044 48 00 22 51 */ bl func_8016F634 /* 8016D3E8 00169048 7C 7A 1B 78 */ mr r26, r3 /* 8016D3EC 0016904C 4B FF FA C5 */ bl func_8016CEB0 /* 8016D3F0 00169050 9B 9A 00 00 */ stb r28, 0(r26) /* 8016D3F4 00169054 88 1A 00 07 */ lbz r0, 7(r26) /* 8016D3F8 00169058 2C 00 00 00 */ cmpwi r0, 0 /* 8016D3FC 0016905C 41 82 00 88 */ beq lbl_8016D484 /* 8016D400 00169060 A0 1F 00 18 */ lhz r0, 0x18(r31) /* 8016D404 00169064 3B 20 00 00 */ li r25, 0 /* 8016D408 00169068 A3 1A 00 04 */ lhz r24, 4(r26) /* 8016D40C 0016906C 2C 00 00 00 */ cmpwi r0, 0 /* 8016D410 00169070 41 82 00 4C */ beq lbl_8016D45C /* 8016D414 00169074 28 00 00 E4 */ cmplwi r0, 0xe4 /* 8016D418 00169078 41 82 00 44 */ beq lbl_8016D45C /* 8016D41C 0016907C 28 00 00 E2 */ cmplwi r0, 0xe2 /* 8016D420 00169080 40 82 00 34 */ bne lbl_8016D454 /* 8016D424 00169084 4B ED 81 6D */ bl func_80045590 /* 8016D428 00169088 88 9F 00 22 */ lbz r4, 0x22(r31) /* 8016D42C 0016908C 38 A0 00 00 */ li r5, 0 /* 8016D430 00169090 4B ED 86 D1 */ bl func_80045B00 /* 8016D434 00169094 2C 03 00 00 */ cmpwi r3, 0 /* 8016D438 00169098 41 82 00 14 */ beq lbl_8016D44C /* 8016D43C 0016909C A0 03 05 10 */ lhz r0, 0x510(r3) /* 8016D440 001690A0 28 00 02 59 */ cmplwi r0, 0x259 /* 8016D444 001690A4 40 82 00 08 */ bne lbl_8016D44C /* 8016D448 001690A8 3B 00 02 59 */ li r24, 0x259 lbl_8016D44C: /* 8016D44C 001690AC 63 39 00 04 */ ori r25, r25, 4 /* 8016D450 001690B0 48 00 00 18 */ b lbl_8016D468 lbl_8016D454: /* 8016D454 001690B4 63 39 00 0C */ ori r25, r25, 0xc /* 8016D458 001690B8 48 00 00 10 */ b lbl_8016D468 lbl_8016D45C: /* 8016D45C 001690BC 28 00 00 E4 */ cmplwi r0, 0xe4 /* 8016D460 001690C0 40 82 00 08 */ bne lbl_8016D468 /* 8016D464 001690C4 63 39 00 04 */ ori r25, r25, 4 lbl_8016D468: /* 8016D468 001690C8 88 1F 00 22 */ lbz r0, 0x22(r31) /* 8016D46C 001690CC 7F 04 C3 78 */ mr r4, r24 /* 8016D470 001690D0 80 BA 00 08 */ lwz r5, 8(r26) /* 8016D474 001690D4 88 DA 00 06 */ lbz r6, 6(r26) /* 8016D478 001690D8 7C 03 CB 78 */ or r3, r0, r25 /* 8016D47C 001690DC 4B FF FD 59 */ bl func_8016D1D4 /* 8016D480 001690E0 48 00 00 38 */ b lbl_8016D4B8 lbl_8016D484: /* 8016D484 001690E4 4B E9 F3 65 */ bl func_8000C7E8 /* 8016D488 001690E8 88 1F 00 22 */ lbz r0, 0x22(r31) /* 8016D48C 001690EC 38 80 00 03 */ li r4, 3 /* 8016D490 001690F0 A0 BA 00 04 */ lhz r5, 4(r26) /* 8016D494 001690F4 50 05 82 1E */ rlwimi r5, r0, 0x10, 8, 0xf /* 8016D498 001690F8 4B EB 43 35 */ bl func_800217CC /* 8016D49C 001690FC 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016D4A0 00169100 48 00 97 65 */ bl func_80176C04 /* 8016D4A4 00169104 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13) /* 8016D4A8 00169108 38 A0 00 00 */ li r5, 0 /* 8016D4AC 0016910C 88 9F 00 22 */ lbz r4, 0x22(r31) /* 8016D4B0 00169110 38 C0 00 01 */ li r6, 1 /* 8016D4B4 00169114 48 00 97 D1 */ bl func_80176C84 lbl_8016D4B8: /* 8016D4B8 00169118 80 1F 00 10 */ lwz r0, 0x10(r31) /* 8016D4BC 0016911C 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8016D4C0 00169120 41 82 00 08 */ beq lbl_8016D4C8 /* 8016D4C4 00169124 4B FF FD 95 */ bl func_8016D258 lbl_8016D4C8: /* 8016D4C8 00169128 80 7F 00 10 */ lwz r3, 0x10(r31) /* 8016D4CC 0016912C 54 60 06 73 */ rlwinm. r0, r3, 0, 0x19, 0x19 /* 8016D4D0 00169130 41 82 00 10 */ beq lbl_8016D4E0 /* 8016D4D4 00169134 88 1F 00 1F */ lbz r0, 0x1f(r31) /* 8016D4D8 00169138 28 00 00 01 */ cmplwi r0, 1 /* 8016D4DC 0016913C 41 82 00 BC */ beq lbl_8016D598 lbl_8016D4E0: /* 8016D4E0 00169140 54 60 06 F7 */ rlwinm. r0, r3, 0, 0x1b, 0x1b /* 8016D4E4 00169144 41 82 00 30 */ beq lbl_8016D514 /* 8016D4E8 00169148 48 00 1E 9D */ bl func_8016F384 /* 8016D4EC 0016914C 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha /* 8016D4F0 00169150 38 80 00 00 */ li r4, 0 /* 8016D4F4 00169154 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l /* 8016D4F8 00169158 38 A0 00 24 */ li r5, 0x24 /* 8016D4FC 0016915C 4B E9 6C 09 */ bl memset /* 8016D500 00169160 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016D504 00169164 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12 /* 8016D508 00169168 41 82 00 90 */ beq lbl_8016D598 /* 8016D50C 0016916C 48 00 DF AD */ bl func_8017B4B8 /* 8016D510 00169170 48 00 00 88 */ b lbl_8016D598 lbl_8016D514: /* 8016D514 00169174 54 60 06 B5 */ rlwinm. r0, r3, 0, 0x1a, 0x1a /* 8016D518 00169178 41 82 00 30 */ beq lbl_8016D548 /* 8016D51C 0016917C 48 00 1E 69 */ bl func_8016F384 /* 8016D520 00169180 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha /* 8016D524 00169184 38 80 00 00 */ li r4, 0 /* 8016D528 00169188 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l /* 8016D52C 0016918C 38 A0 00 24 */ li r5, 0x24 /* 8016D530 00169190 4B E9 6B D5 */ bl memset /* 8016D534 00169194 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016D538 00169198 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12 /* 8016D53C 0016919C 41 82 00 5C */ beq lbl_8016D598 /* 8016D540 001691A0 48 00 DF 79 */ bl func_8017B4B8 /* 8016D544 001691A4 48 00 00 54 */ b lbl_8016D598 lbl_8016D548: /* 8016D548 001691A8 80 7F 00 08 */ lwz r3, 8(r31) /* 8016D54C 001691AC 80 1F 00 0C */ lwz r0, 0xc(r31) /* 8016D550 001691B0 7C 03 00 40 */ cmplw r3, r0 /* 8016D554 001691B4 40 82 FE 70 */ bne lbl_8016D3C4 /* 8016D558 001691B8 80 6D 9E C8 */ lwz r3, lbl_8063F188-_SDA_BASE_(r13) /* 8016D55C 001691BC 54 60 03 5A */ rlwinm r0, r3, 0, 0xd, 0xd /* 8016D560 001691C0 50 60 04 A5 */ rlwimi. r0, r3, 0, 0x12, 0x12 /* 8016D564 001691C4 40 82 00 24 */ bne lbl_8016D588 /* 8016D568 001691C8 48 00 1E 1D */ bl func_8016F384 /* 8016D56C 001691CC 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016D570 001691D0 38 60 00 00 */ li r3, 0 /* 8016D574 001691D4 90 7F 00 08 */ stw r3, 8(r31) /* 8016D578 001691D8 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12 /* 8016D57C 001691DC 90 7F 00 0C */ stw r3, 0xc(r31) /* 8016D580 001691E0 41 82 00 08 */ beq lbl_8016D588 /* 8016D584 001691E4 48 00 DF 35 */ bl func_8017B4B8 lbl_8016D588: /* 8016D588 001691E8 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha /* 8016D58C 001691EC 38 00 00 00 */ li r0, 0 /* 8016D590 001691F0 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l /* 8016D594 001691F4 90 03 00 10 */ stw r0, 0x10(r3) lbl_8016D598: /* 8016D598 001691F8 39 61 00 30 */ addi r11, r1, 0x30 /* 8016D59C 001691FC 48 05 9B CD */ bl _restgpr_24 /* 8016D5A0 00169200 80 01 00 34 */ lwz r0, 0x34(r1) /* 8016D5A4 00169204 7C 08 03 A6 */ mtlr r0 /* 8016D5A8 00169208 38 21 00 30 */ addi r1, r1, 0x30 /* 8016D5AC 0016920C 4E 80 00 20 */ blr .global func_8016D5B0 func_8016D5B0: /* 8016D5B0 00169210 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8016D5B4 00169214 7C 08 02 A6 */ mflr r0 /* 8016D5B8 00169218 90 01 00 24 */ stw r0, 0x24(r1) /* 8016D5BC 0016921C 39 61 00 20 */ addi r11, r1, 0x20 /* 8016D5C0 00169220 48 05 9B 69 */ bl _savegpr_27 /* 8016D5C4 00169224 2C 03 00 09 */ cmpwi r3, 9 /* 8016D5C8 00169228 7C 9E 23 78 */ mr r30, r4 /* 8016D5CC 0016922C 41 82 00 28 */ beq lbl_8016D5F4 /* 8016D5D0 00169230 40 80 00 10 */ bge lbl_8016D5E0 /* 8016D5D4 00169234 2C 03 00 03 */ cmpwi r3, 3 /* 8016D5D8 00169238 41 82 00 1C */ beq lbl_8016D5F4 /* 8016D5DC 0016923C 48 00 02 5C */ b lbl_8016D838 lbl_8016D5E0: /* 8016D5E0 00169240 2C 03 00 0D */ cmpwi r3, 0xd /* 8016D5E4 00169244 40 80 02 54 */ bge lbl_8016D838 /* 8016D5E8 00169248 2C 03 00 0B */ cmpwi r3, 0xb /* 8016D5EC 0016924C 40 80 02 38 */ bge lbl_8016D824 /* 8016D5F0 00169250 48 00 02 48 */ b lbl_8016D838 lbl_8016D5F4: /* 8016D5F4 00169254 80 CD 9F 08 */ lwz r6, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016D5F8 00169258 54 9F 10 3A */ slwi r31, r4, 2 /* 8016D5FC 0016925C 7C A6 FA 14 */ add r5, r6, r31 /* 8016D600 00169260 80 05 00 40 */ lwz r0, 0x40(r5) /* 8016D604 00169264 2C 00 00 FF */ cmpwi r0, 0xff /* 8016D608 00169268 41 82 02 30 */ beq lbl_8016D838 /* 8016D60C 0016926C 80 05 00 10 */ lwz r0, 0x10(r5) /* 8016D610 00169270 2C 00 00 FF */ cmpwi r0, 0xff /* 8016D614 00169274 41 82 02 24 */ beq lbl_8016D838 /* 8016D618 00169278 80 05 00 20 */ lwz r0, 0x20(r5) /* 8016D61C 0016927C 2C 00 00 04 */ cmpwi r0, 4 /* 8016D620 00169280 40 82 01 E8 */ bne lbl_8016D808 /* 8016D624 00169284 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha /* 8016D628 00169288 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l /* 8016D62C 0016928C 88 03 00 1A */ lbz r0, 0x1a(r3) /* 8016D630 00169290 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 8016D634 00169294 41 82 00 20 */ beq lbl_8016D654 /* 8016D638 00169298 80 05 00 50 */ lwz r0, 0x50(r5) /* 8016D63C 0016929C 38 80 00 FF */ li r4, 0xff /* 8016D640 001692A0 7C 06 F9 2E */ stwx r0, r6, r31 /* 8016D644 001692A4 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016D648 001692A8 7C 60 FA 14 */ add r3, r0, r31 /* 8016D64C 001692AC 90 83 00 10 */ stw r4, 0x10(r3) /* 8016D650 001692B0 48 00 01 E8 */ b lbl_8016D838 lbl_8016D654: /* 8016D654 001692B4 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016D658 001692B8 54 84 07 FE */ clrlwi r4, r4, 0x1f /* 8016D65C 001692BC 83 85 00 30 */ lwz r28, 0x30(r5) /* 8016D660 001692C0 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c /* 8016D664 001692C4 80 7C 00 04 */ lwz r3, 4(r28) /* 8016D668 001692C8 41 82 00 08 */ beq lbl_8016D670 /* 8016D66C 001692CC 7F C4 F3 78 */ mr r4, r30 lbl_8016D670: /* 8016D670 001692D0 48 23 F2 91 */ bl func_803AC900 /* 8016D674 001692D4 7C 7D 1B 78 */ mr r29, r3 /* 8016D678 001692D8 3B 60 00 00 */ li r27, 0 /* 8016D67C 001692DC 48 00 00 38 */ b lbl_8016D6B4 lbl_8016D680: /* 8016D680 001692E0 7F 63 DB 78 */ mr r3, r27 /* 8016D684 001692E4 7F 84 E3 78 */ mr r4, r28 /* 8016D688 001692E8 48 00 02 C1 */ bl func_8016D948 /* 8016D68C 001692EC 2C 03 00 00 */ cmpwi r3, 0 /* 8016D690 001692F0 40 82 00 20 */ bne lbl_8016D6B0 /* 8016D694 001692F4 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016D698 001692F8 38 80 00 FF */ li r4, 0xff /* 8016D69C 001692FC 7F 63 F9 2E */ stwx r27, r3, r31 /* 8016D6A0 00169300 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016D6A4 00169304 7C 60 FA 14 */ add r3, r0, r31 /* 8016D6A8 00169308 90 83 00 10 */ stw r4, 0x10(r3) /* 8016D6AC 0016930C 48 00 00 10 */ b lbl_8016D6BC lbl_8016D6B0: /* 8016D6B0 00169310 3B 7B 00 01 */ addi r27, r27, 1 lbl_8016D6B4: /* 8016D6B4 00169314 7C 1B E8 00 */ cmpw r27, r29 /* 8016D6B8 00169318 41 80 FF C8 */ blt lbl_8016D680 lbl_8016D6BC: /* 8016D6BC 0016931C 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13) /* 8016D6C0 00169320 54 80 03 5A */ rlwinm r0, r4, 0, 0xd, 0xd /* 8016D6C4 00169324 50 80 04 A5 */ rlwimi. r0, r4, 0, 0x12, 0x12 /* 8016D6C8 00169328 41 82 00 AC */ beq lbl_8016D774 /* 8016D6CC 0016932C 57 C0 07 FF */ clrlwi. r0, r30, 0x1f /* 8016D6D0 00169330 41 82 00 5C */ beq lbl_8016D72C /* 8016D6D4 00169334 3F C0 80 49 */ lis r30, lbl_8048CDB4@ha /* 8016D6D8 00169338 3B DE CD B4 */ addi r30, r30, lbl_8048CDB4@l /* 8016D6DC 0016933C 88 1E 00 1A */ lbz r0, 0x1a(r30) /* 8016D6E0 00169340 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c /* 8016D6E4 00169344 41 82 00 24 */ beq lbl_8016D708 /* 8016D6E8 00169348 38 60 00 00 */ li r3, 0 /* 8016D6EC 0016934C 38 80 00 13 */ li r4, 0x13 /* 8016D6F0 00169350 38 A0 00 0F */ li r5, 0xf /* 8016D6F4 00169354 38 C0 00 00 */ li r6, 0 /* 8016D6F8 00169358 4B EF 00 95 */ bl func_8005D78C /* 8016D6FC 0016935C 88 1E 00 1A */ lbz r0, 0x1a(r30) /* 8016D700 00169360 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b /* 8016D704 00169364 98 1E 00 1A */ stb r0, 0x1a(r30) lbl_8016D708: /* 8016D708 00169368 38 60 00 85 */ li r3, 0x85 /* 8016D70C 0016936C 38 80 00 00 */ li r4, 0 /* 8016D710 00169370 38 A0 00 00 */ li r5, 0 /* 8016D714 00169374 48 00 04 FD */ bl func_8016DC10 /* 8016D718 00169378 80 6D 9E DC */ lwz r3, lbl_8063F19C-_SDA_BASE_(r13) /* 8016D71C 0016937C 38 00 FF 5F */ li r0, -161 /* 8016D720 00169380 7C 60 00 38 */ and r0, r3, r0 /* 8016D724 00169384 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016D728 00169388 48 00 01 10 */ b lbl_8016D838 lbl_8016D72C: /* 8016D72C 0016938C 4B FF F1 E9 */ bl func_8016C914 /* 8016D730 00169390 3F C0 80 49 */ lis r30, lbl_8048CDB4@ha /* 8016D734 00169394 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13) /* 8016D738 00169398 3B DE CD B4 */ addi r30, r30, lbl_8048CDB4@l /* 8016D73C 0016939C 38 60 FF AD */ li r3, -83 /* 8016D740 001693A0 88 1E 00 1A */ lbz r0, 0x1a(r30) /* 8016D744 001693A4 7C 83 18 38 */ and r3, r4, r3 /* 8016D748 001693A8 90 6D 9E DC */ stw r3, lbl_8063F19C-_SDA_BASE_(r13) /* 8016D74C 001693AC 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 8016D750 001693B0 41 82 00 E8 */ beq lbl_8016D838 /* 8016D754 001693B4 38 60 00 83 */ li r3, 0x83 /* 8016D758 001693B8 38 80 00 00 */ li r4, 0 /* 8016D75C 001693BC 38 A0 00 00 */ li r5, 0 /* 8016D760 001693C0 48 00 04 B1 */ bl func_8016DC10 /* 8016D764 001693C4 88 1E 00 1A */ lbz r0, 0x1a(r30) /* 8016D768 001693C8 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a /* 8016D76C 001693CC 98 1E 00 1A */ stb r0, 0x1a(r30) /* 8016D770 001693D0 48 00 00 C8 */ b lbl_8016D838 lbl_8016D774: /* 8016D774 001693D4 54 80 05 29 */ rlwinm. r0, r4, 0, 0x14, 0x14 /* 8016D778 001693D8 41 82 00 40 */ beq lbl_8016D7B8 /* 8016D77C 001693DC 57 DD 07 FE */ clrlwi r29, r30, 0x1f /* 8016D780 001693E0 7F A3 EB 78 */ mr r3, r29 /* 8016D784 001693E4 48 00 04 51 */ bl func_8016DBD4 /* 8016D788 001693E8 2C 1D 00 00 */ cmpwi r29, 0 /* 8016D78C 001693EC 41 82 00 18 */ beq lbl_8016D7A4 /* 8016D790 001693F0 80 6D 9E DC */ lwz r3, lbl_8063F19C-_SDA_BASE_(r13) /* 8016D794 001693F4 38 00 FF 5F */ li r0, -161 /* 8016D798 001693F8 7C 60 00 38 */ and r0, r3, r0 /* 8016D79C 001693FC 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016D7A0 00169400 48 00 00 98 */ b lbl_8016D838 lbl_8016D7A4: /* 8016D7A4 00169404 80 6D 9E DC */ lwz r3, lbl_8063F19C-_SDA_BASE_(r13) /* 8016D7A8 00169408 38 00 FF AF */ li r0, -81 /* 8016D7AC 0016940C 7C 60 00 38 */ and r0, r3, r0 /* 8016D7B0 00169410 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016D7B4 00169414 48 00 00 84 */ b lbl_8016D838 lbl_8016D7B8: /* 8016D7B8 00169418 54 83 03 18 */ rlwinm r3, r4, 0, 0xc, 0xc /* 8016D7BC 0016941C 50 83 04 E6 */ rlwimi r3, r4, 0, 0x13, 0x13 /* 8016D7C0 00169420 3C 03 FF F8 */ addis r0, r3, 0xfff8 /* 8016D7C4 00169424 28 00 10 00 */ cmplwi r0, 0x1000 /* 8016D7C8 00169428 40 82 00 38 */ bne lbl_8016D800 /* 8016D7CC 0016942C 4B FF F1 49 */ bl func_8016C914 /* 8016D7D0 00169430 80 0D 9E E8 */ lwz r0, lbl_8063F1A8-_SDA_BASE_(r13) /* 8016D7D4 00169434 38 60 F9 0D */ li r3, -1779 /* 8016D7D8 00169438 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13) /* 8016D7DC 0016943C 2C 00 00 00 */ cmpwi r0, 0 /* 8016D7E0 00169440 7C 80 18 38 */ and r0, r4, r3 /* 8016D7E4 00169444 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13) /* 8016D7E8 00169448 41 82 00 50 */ beq lbl_8016D838 /* 8016D7EC 0016944C 38 60 00 00 */ li r3, 0 /* 8016D7F0 00169450 38 00 00 01 */ li r0, 1 /* 8016D7F4 00169454 90 6D 9E E8 */ stw r3, lbl_8063F1A8-_SDA_BASE_(r13) /* 8016D7F8 00169458 90 0D 9E EC */ stw r0, lbl_8063F1AC-_SDA_BASE_(r13) /* 8016D7FC 0016945C 48 00 00 3C */ b lbl_8016D838 lbl_8016D800: /* 8016D800 00169460 4B FF F1 15 */ bl func_8016C914 /* 8016D804 00169464 48 00 00 34 */ b lbl_8016D838 lbl_8016D808: /* 8016D808 00169468 80 05 00 50 */ lwz r0, 0x50(r5) /* 8016D80C 0016946C 38 80 00 FF */ li r4, 0xff /* 8016D810 00169470 7C 06 F9 2E */ stwx r0, r6, r31 /* 8016D814 00169474 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016D818 00169478 7C 60 FA 14 */ add r3, r0, r31 /* 8016D81C 0016947C 90 83 00 10 */ stw r4, 0x10(r3) /* 8016D820 00169480 48 00 00 18 */ b lbl_8016D838 lbl_8016D824: /* 8016D824 00169484 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016D828 00169488 54 80 10 3A */ slwi r0, r4, 2 /* 8016D82C 0016948C 38 80 00 FF */ li r4, 0xff /* 8016D830 00169490 7C 63 02 14 */ add r3, r3, r0 /* 8016D834 00169494 90 83 00 10 */ stw r4, 0x10(r3) lbl_8016D838: /* 8016D838 00169498 39 61 00 20 */ addi r11, r1, 0x20 /* 8016D83C 0016949C 48 05 99 39 */ bl _restgpr_27 /* 8016D840 001694A0 80 01 00 24 */ lwz r0, 0x24(r1) /* 8016D844 001694A4 7C 08 03 A6 */ mtlr r0 /* 8016D848 001694A8 38 21 00 20 */ addi r1, r1, 0x20 /* 8016D84C 001694AC 4E 80 00 20 */ blr .global func_8016D850 func_8016D850: /* 8016D850 001694B0 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016D854 001694B4 38 60 00 00 */ li r3, 0 /* 8016D858 001694B8 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8016D85C 001694BC 41 82 00 98 */ beq lbl_8016D8F4 /* 8016D860 001694C0 80 AD 9F 08 */ lwz r5, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016D864 001694C4 88 85 00 7C */ lbz r4, 0x7c(r5) /* 8016D868 001694C8 28 04 00 02 */ cmplwi r4, 2 /* 8016D86C 001694CC 40 82 00 14 */ bne lbl_8016D880 /* 8016D870 001694D0 88 05 00 7E */ lbz r0, 0x7e(r5) /* 8016D874 001694D4 28 00 00 02 */ cmplwi r0, 2 /* 8016D878 001694D8 40 82 00 08 */ bne lbl_8016D880 /* 8016D87C 001694DC 60 63 00 02 */ ori r3, r3, 2 lbl_8016D880: /* 8016D880 001694E0 28 04 00 01 */ cmplwi r4, 1 /* 8016D884 001694E4 40 82 00 24 */ bne lbl_8016D8A8 /* 8016D888 001694E8 88 05 00 7E */ lbz r0, 0x7e(r5) /* 8016D88C 001694EC 28 00 00 01 */ cmplwi r0, 1 /* 8016D890 001694F0 40 82 00 18 */ bne lbl_8016D8A8 /* 8016D894 001694F4 38 00 00 02 */ li r0, 2 /* 8016D898 001694F8 60 63 00 01 */ ori r3, r3, 1 /* 8016D89C 001694FC 98 05 00 7C */ stb r0, 0x7c(r5) /* 8016D8A0 00169500 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016D8A4 00169504 98 04 00 7E */ stb r0, 0x7e(r4) lbl_8016D8A8: /* 8016D8A8 00169508 80 AD 9F 08 */ lwz r5, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016D8AC 0016950C 88 85 00 7D */ lbz r4, 0x7d(r5) /* 8016D8B0 00169510 28 04 00 02 */ cmplwi r4, 2 /* 8016D8B4 00169514 40 82 00 14 */ bne lbl_8016D8C8 /* 8016D8B8 00169518 88 05 00 7F */ lbz r0, 0x7f(r5) /* 8016D8BC 0016951C 28 00 00 02 */ cmplwi r0, 2 /* 8016D8C0 00169520 40 82 00 08 */ bne lbl_8016D8C8 /* 8016D8C4 00169524 60 63 00 08 */ ori r3, r3, 8 lbl_8016D8C8: /* 8016D8C8 00169528 28 04 00 01 */ cmplwi r4, 1 /* 8016D8CC 0016952C 4C 82 00 20 */ bnelr /* 8016D8D0 00169530 88 05 00 7F */ lbz r0, 0x7f(r5) /* 8016D8D4 00169534 28 00 00 01 */ cmplwi r0, 1 /* 8016D8D8 00169538 4C 82 00 20 */ bnelr /* 8016D8DC 0016953C 38 00 00 02 */ li r0, 2 /* 8016D8E0 00169540 60 63 00 04 */ ori r3, r3, 4 /* 8016D8E4 00169544 98 05 00 7D */ stb r0, 0x7d(r5) /* 8016D8E8 00169548 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016D8EC 0016954C 98 04 00 7F */ stb r0, 0x7f(r4) /* 8016D8F0 00169550 4E 80 00 20 */ blr lbl_8016D8F4: /* 8016D8F4 00169554 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016D8F8 00169558 88 04 00 7C */ lbz r0, 0x7c(r4) /* 8016D8FC 0016955C 28 00 00 02 */ cmplwi r0, 2 /* 8016D900 00169560 40 82 00 08 */ bne lbl_8016D908 /* 8016D904 00169564 60 63 00 02 */ ori r3, r3, 2 lbl_8016D908: /* 8016D908 00169568 28 00 00 01 */ cmplwi r0, 1 /* 8016D90C 0016956C 40 82 00 10 */ bne lbl_8016D91C /* 8016D910 00169570 38 00 00 02 */ li r0, 2 /* 8016D914 00169574 60 63 00 01 */ ori r3, r3, 1 /* 8016D918 00169578 98 04 00 7C */ stb r0, 0x7c(r4) lbl_8016D91C: /* 8016D91C 0016957C 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016D920 00169580 88 04 00 7D */ lbz r0, 0x7d(r4) /* 8016D924 00169584 28 00 00 02 */ cmplwi r0, 2 /* 8016D928 00169588 40 82 00 08 */ bne lbl_8016D930 /* 8016D92C 0016958C 60 63 00 08 */ ori r3, r3, 8 lbl_8016D930: /* 8016D930 00169590 28 00 00 01 */ cmplwi r0, 1 /* 8016D934 00169594 4C 82 00 20 */ bnelr /* 8016D938 00169598 38 00 00 02 */ li r0, 2 /* 8016D93C 0016959C 60 63 00 04 */ ori r3, r3, 4 /* 8016D940 001695A0 98 04 00 7D */ stb r0, 0x7d(r4) /* 8016D944 001695A4 4E 80 00 20 */ blr .global func_8016D948 func_8016D948: /* 8016D948 001695A8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8016D94C 001695AC 7C 08 02 A6 */ mflr r0 /* 8016D950 001695B0 90 01 00 14 */ stw r0, 0x14(r1) /* 8016D954 001695B4 93 E1 00 0C */ stw r31, 0xc(r1) /* 8016D958 001695B8 7C 9F 23 78 */ mr r31, r4 /* 8016D95C 001695BC 93 C1 00 08 */ stw r30, 8(r1) /* 8016D960 001695C0 7C 7E 1B 78 */ mr r30, r3 /* 8016D964 001695C4 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016D968 001695C8 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c /* 8016D96C 001695CC 41 82 00 3C */ beq lbl_8016D9A8 /* 8016D970 001695D0 80 64 00 04 */ lwz r3, 4(r4) /* 8016D974 001695D4 80 84 00 1C */ lwz r4, 0x1c(r4) /* 8016D978 001695D8 48 23 F3 5D */ bl func_803ACCD4 /* 8016D97C 001695DC 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016D980 001695E0 28 00 00 02 */ cmplwi r0, 2 /* 8016D984 001695E4 40 82 00 14 */ bne lbl_8016D998 /* 8016D988 001695E8 57 C0 07 FF */ clrlwi. r0, r30, 0x1f /* 8016D98C 001695EC 41 82 00 1C */ beq lbl_8016D9A8 /* 8016D990 001695F0 38 60 50 5A */ li r3, 0x505a /* 8016D994 001695F4 48 00 00 AC */ b lbl_8016DA40 lbl_8016D998: /* 8016D998 001695F8 57 C0 07 FF */ clrlwi. r0, r30, 0x1f /* 8016D99C 001695FC 40 82 00 0C */ bne lbl_8016D9A8 /* 8016D9A0 00169600 38 60 50 5A */ li r3, 0x505a /* 8016D9A4 00169604 48 00 00 9C */ b lbl_8016DA40 lbl_8016D9A8: /* 8016D9A8 00169608 80 7F 00 00 */ lwz r3, 0(r31) /* 8016D9AC 0016960C 7F C4 F3 78 */ mr r4, r30 /* 8016D9B0 00169610 48 27 0F 9D */ bl func_803DE94C /* 8016D9B4 00169614 38 80 00 A2 */ li r4, 0xa2 /* 8016D9B8 00169618 38 A0 00 00 */ li r5, 0 /* 8016D9BC 0016961C 48 27 00 21 */ bl func_803DD9DC /* 8016D9C0 00169620 2C 03 00 00 */ cmpwi r3, 0 /* 8016D9C4 00169624 40 82 00 10 */ bne lbl_8016D9D4 /* 8016D9C8 00169628 9B DF 00 0D */ stb r30, 0xd(r31) /* 8016D9CC 0016962C 38 60 2E D2 */ li r3, 0x2ed2 /* 8016D9D0 00169630 48 00 00 70 */ b lbl_8016DA40 lbl_8016D9D4: /* 8016D9D4 00169634 7C 7F F2 14 */ add r3, r31, r30 /* 8016D9D8 00169638 88 1F 00 0A */ lbz r0, 0xa(r31) /* 8016D9DC 0016963C 88 63 00 20 */ lbz r3, 0x20(r3) /* 8016D9E0 00169640 7C 00 18 40 */ cmplw r0, r3 /* 8016D9E4 00169644 41 82 00 10 */ beq lbl_8016D9F4 /* 8016D9E8 00169648 88 1F 00 0B */ lbz r0, 0xb(r31) /* 8016D9EC 0016964C 7C 00 18 40 */ cmplw r0, r3 /* 8016D9F0 00169650 40 82 00 10 */ bne lbl_8016DA00 lbl_8016D9F4: /* 8016D9F4 00169654 9B DF 00 0D */ stb r30, 0xd(r31) /* 8016D9F8 00169658 38 60 2E D1 */ li r3, 0x2ed1 /* 8016D9FC 0016965C 48 00 00 44 */ b lbl_8016DA40 lbl_8016DA00: /* 8016DA00 00169660 88 1F 00 09 */ lbz r0, 9(r31) /* 8016DA04 00169664 28 00 00 06 */ cmplwi r0, 6 /* 8016DA08 00169668 41 82 00 18 */ beq lbl_8016DA20 /* 8016DA0C 0016966C 7C 00 18 40 */ cmplw r0, r3 /* 8016DA10 00169670 40 82 00 10 */ bne lbl_8016DA20 /* 8016DA14 00169674 9B DF 00 0D */ stb r30, 0xd(r31) /* 8016DA18 00169678 38 60 2E D3 */ li r3, 0x2ed3 /* 8016DA1C 0016967C 48 00 00 24 */ b lbl_8016DA40 lbl_8016DA20: /* 8016DA20 00169680 A0 1F 00 1A */ lhz r0, 0x1a(r31) /* 8016DA24 00169684 2C 00 00 00 */ cmpwi r0, 0 /* 8016DA28 00169688 41 82 00 14 */ beq lbl_8016DA3C /* 8016DA2C 0016968C 88 1F 00 0C */ lbz r0, 0xc(r31) /* 8016DA30 00169690 38 60 30 BB */ li r3, 0x30bb /* 8016DA34 00169694 98 1F 00 0D */ stb r0, 0xd(r31) /* 8016DA38 00169698 48 00 00 08 */ b lbl_8016DA40 lbl_8016DA3C: /* 8016DA3C 0016969C 38 60 00 00 */ li r3, 0 lbl_8016DA40: /* 8016DA40 001696A0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8016DA44 001696A4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8016DA48 001696A8 83 C1 00 08 */ lwz r30, 8(r1) /* 8016DA4C 001696AC 7C 08 03 A6 */ mtlr r0 /* 8016DA50 001696B0 38 21 00 10 */ addi r1, r1, 0x10 /* 8016DA54 001696B4 4E 80 00 20 */ blr .global func_8016DA58 func_8016DA58: /* 8016DA58 001696B8 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8016DA5C 001696BC 7C 08 02 A6 */ mflr r0 /* 8016DA60 001696C0 90 01 00 54 */ stw r0, 0x54(r1) /* 8016DA64 001696C4 39 61 00 50 */ addi r11, r1, 0x50 /* 8016DA68 001696C8 48 05 96 BD */ bl _savegpr_26 /* 8016DA6C 001696CC 80 04 00 00 */ lwz r0, 0(r4) /* 8016DA70 001696D0 7C 7E 1B 78 */ mr r30, r3 /* 8016DA74 001696D4 7C 9F 23 78 */ mr r31, r4 /* 8016DA78 001696D8 90 01 00 08 */ stw r0, 8(r1) /* 8016DA7C 001696DC 80 04 00 04 */ lwz r0, 4(r4) /* 8016DA80 001696E0 90 01 00 0C */ stw r0, 0xc(r1) /* 8016DA84 001696E4 88 04 00 08 */ lbz r0, 8(r4) /* 8016DA88 001696E8 98 01 00 10 */ stb r0, 0x10(r1) /* 8016DA8C 001696EC 88 04 00 09 */ lbz r0, 9(r4) /* 8016DA90 001696F0 98 01 00 11 */ stb r0, 0x11(r1) /* 8016DA94 001696F4 88 04 00 0A */ lbz r0, 0xa(r4) /* 8016DA98 001696F8 98 01 00 12 */ stb r0, 0x12(r1) /* 8016DA9C 001696FC 88 04 00 0B */ lbz r0, 0xb(r4) /* 8016DAA0 00169700 98 01 00 13 */ stb r0, 0x13(r1) /* 8016DAA4 00169704 88 04 00 0C */ lbz r0, 0xc(r4) /* 8016DAA8 00169708 98 01 00 14 */ stb r0, 0x14(r1) /* 8016DAAC 0016970C 88 04 00 0D */ lbz r0, 0xd(r4) /* 8016DAB0 00169710 98 01 00 15 */ stb r0, 0x15(r1) /* 8016DAB4 00169714 88 04 00 0E */ lbz r0, 0xe(r4) /* 8016DAB8 00169718 98 01 00 16 */ stb r0, 0x16(r1) /* 8016DABC 0016971C 88 04 00 0F */ lbz r0, 0xf(r4) /* 8016DAC0 00169720 98 01 00 17 */ stb r0, 0x17(r1) /* 8016DAC4 00169724 80 64 00 10 */ lwz r3, 0x10(r4) /* 8016DAC8 00169728 80 04 00 14 */ lwz r0, 0x14(r4) /* 8016DACC 0016972C 90 61 00 18 */ stw r3, 0x18(r1) /* 8016DAD0 00169730 90 01 00 1C */ stw r0, 0x1c(r1) /* 8016DAD4 00169734 A0 04 00 18 */ lhz r0, 0x18(r4) /* 8016DAD8 00169738 B0 01 00 20 */ sth r0, 0x20(r1) /* 8016DADC 0016973C A0 04 00 1A */ lhz r0, 0x1a(r4) /* 8016DAE0 00169740 B0 01 00 22 */ sth r0, 0x22(r1) /* 8016DAE4 00169744 80 04 00 1C */ lwz r0, 0x1c(r4) /* 8016DAE8 00169748 90 01 00 24 */ stw r0, 0x24(r1) /* 8016DAEC 0016974C 88 04 00 20 */ lbz r0, 0x20(r4) /* 8016DAF0 00169750 98 01 00 28 */ stb r0, 0x28(r1) /* 8016DAF4 00169754 88 04 00 21 */ lbz r0, 0x21(r4) /* 8016DAF8 00169758 98 01 00 29 */ stb r0, 0x29(r1) /* 8016DAFC 0016975C 88 04 00 22 */ lbz r0, 0x22(r4) /* 8016DB00 00169760 98 01 00 2A */ stb r0, 0x2a(r1) /* 8016DB04 00169764 88 04 00 23 */ lbz r0, 0x23(r4) /* 8016DB08 00169768 98 01 00 2B */ stb r0, 0x2b(r1) /* 8016DB0C 0016976C 88 04 00 24 */ lbz r0, 0x24(r4) /* 8016DB10 00169770 98 01 00 2C */ stb r0, 0x2c(r1) /* 8016DB14 00169774 88 04 00 25 */ lbz r0, 0x25(r4) /* 8016DB18 00169778 98 01 00 2D */ stb r0, 0x2d(r1) /* 8016DB1C 0016977C 48 23 ED 0D */ bl func_803AC828 /* 8016DB20 00169780 80 01 00 24 */ lwz r0, 0x24(r1) /* 8016DB24 00169784 90 61 00 0C */ stw r3, 0xc(r1) /* 8016DB28 00169788 38 60 00 05 */ li r3, 5 /* 8016DB2C 0016978C 68 00 00 01 */ xori r0, r0, 1 /* 8016DB30 00169790 90 01 00 24 */ stw r0, 0x24(r1) /* 8016DB34 00169794 54 1B 07 FE */ clrlwi r27, r0, 0x1f /* 8016DB38 00169798 48 27 0C A9 */ bl func_803DE7E0 /* 8016DB3C 0016979C 90 61 00 08 */ stw r3, 8(r1) /* 8016DB40 001697A0 80 61 00 0C */ lwz r3, 0xc(r1) /* 8016DB44 001697A4 80 81 00 24 */ lwz r4, 0x24(r1) /* 8016DB48 001697A8 48 23 ED 21 */ bl func_803AC868 /* 8016DB4C 001697AC 7C 7A 1B 78 */ mr r26, r3 /* 8016DB50 001697B0 3B A1 00 08 */ addi r29, r1, 8 /* 8016DB54 001697B4 3B 80 00 00 */ li r28, 0 /* 8016DB58 001697B8 48 00 00 28 */ b lbl_8016DB80 lbl_8016DB5C: /* 8016DB5C 001697BC 80 61 00 0C */ lwz r3, 0xc(r1) /* 8016DB60 001697C0 7F 64 DB 78 */ mr r4, r27 /* 8016DB64 001697C4 88 BD 00 20 */ lbz r5, 0x20(r29) /* 8016DB68 001697C8 48 23 EE 3D */ bl func_803AC9A4 /* 8016DB6C 001697CC 7C 64 1B 78 */ mr r4, r3 /* 8016DB70 001697D0 80 61 00 08 */ lwz r3, 8(r1) /* 8016DB74 001697D4 48 27 0D 1D */ bl func_803DE890 /* 8016DB78 001697D8 3B BD 00 01 */ addi r29, r29, 1 /* 8016DB7C 001697DC 3B 9C 00 01 */ addi r28, r28, 1 lbl_8016DB80: /* 8016DB80 001697E0 7F 43 D3 78 */ mr r3, r26 /* 8016DB84 001697E4 48 27 0D C1 */ bl func_803DE944 /* 8016DB88 001697E8 7C 1C 18 00 */ cmpw r28, r3 /* 8016DB8C 001697EC 41 80 FF D0 */ blt lbl_8016DB5C /* 8016DB90 001697F0 7F C3 F3 78 */ mr r3, r30 /* 8016DB94 001697F4 38 81 00 08 */ addi r4, r1, 8 /* 8016DB98 001697F8 4B FF FD B1 */ bl func_8016D948 /* 8016DB9C 001697FC 2C 03 00 00 */ cmpwi r3, 0 /* 8016DBA0 00169800 7C 7D 1B 78 */ mr r29, r3 /* 8016DBA4 00169804 41 82 00 0C */ beq lbl_8016DBB0 /* 8016DBA8 00169808 88 01 00 15 */ lbz r0, 0x15(r1) /* 8016DBAC 0016980C 98 1F 00 0D */ stb r0, 0xd(r31) lbl_8016DBB0: /* 8016DBB0 00169810 80 61 00 08 */ lwz r3, 8(r1) /* 8016DBB4 00169814 48 00 04 ED */ bl func_8016E0A0 /* 8016DBB8 00169818 39 61 00 50 */ addi r11, r1, 0x50 /* 8016DBBC 0016981C 7F A3 EB 78 */ mr r3, r29 /* 8016DBC0 00169820 48 05 95 B1 */ bl _restgpr_26 /* 8016DBC4 00169824 80 01 00 54 */ lwz r0, 0x54(r1) /* 8016DBC8 00169828 7C 08 03 A6 */ mtlr r0 /* 8016DBCC 0016982C 38 21 00 50 */ addi r1, r1, 0x50 /* 8016DBD0 00169830 4E 80 00 20 */ blr .global func_8016DBD4 func_8016DBD4: /* 8016DBD4 00169834 3C A0 80 49 */ lis r5, lbl_8048CDB4@ha /* 8016DBD8 00169838 38 00 00 08 */ li r0, 8 /* 8016DBDC 0016983C 38 A5 CD B4 */ addi r5, r5, lbl_8048CDB4@l /* 8016DBE0 00169840 88 85 00 1A */ lbz r4, 0x1a(r5) /* 8016DBE4 00169844 7C 00 18 30 */ slw r0, r0, r3 /* 8016DBE8 00169848 7C 84 00 78 */ andc r4, r4, r0 /* 8016DBEC 0016984C 54 80 06 79 */ rlwinm. r0, r4, 0, 0x19, 0x1c /* 8016DBF0 00169850 98 85 00 1A */ stb r4, 0x1a(r5) /* 8016DBF4 00169854 41 82 00 18 */ beq lbl_8016DC0C /* 8016DBF8 00169858 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8016DBFC 0016985C 38 80 00 0E */ li r4, 0xe /* 8016DC00 00169860 38 A0 00 00 */ li r5, 0 /* 8016DC04 00169864 38 C0 00 00 */ li r6, 0 /* 8016DC08 00169868 4B EE FB 84 */ b func_8005D78C lbl_8016DC0C: /* 8016DC0C 0016986C 4B FF ED 08 */ b func_8016C914 .global func_8016DC10 func_8016DC10: /* 8016DC10 00169870 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8016DC14 00169874 7C 08 02 A6 */ mflr r0 /* 8016DC18 00169878 90 01 00 24 */ stw r0, 0x24(r1) /* 8016DC1C 0016987C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8016DC20 00169880 7C BF 2B 78 */ mr r31, r5 /* 8016DC24 00169884 93 C1 00 18 */ stw r30, 0x18(r1) /* 8016DC28 00169888 7C 9E 23 78 */ mr r30, r4 /* 8016DC2C 0016988C 93 A1 00 14 */ stw r29, 0x14(r1) /* 8016DC30 00169890 7C 7D 1B 78 */ mr r29, r3 /* 8016DC34 00169894 48 00 E3 3D */ bl func_8017BF70 /* 8016DC38 00169898 48 00 00 1C */ b lbl_8016DC54 lbl_8016DC3C: /* 8016DC3C 0016989C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016DC40 001698A0 48 0B 69 49 */ bl func_80224588 /* 8016DC44 001698A4 7F A3 EB 78 */ mr r3, r29 /* 8016DC48 001698A8 7F C4 F3 78 */ mr r4, r30 /* 8016DC4C 001698AC 7F E5 FB 78 */ mr r5, r31 /* 8016DC50 001698B0 48 00 E3 21 */ bl func_8017BF70 lbl_8016DC54: /* 8016DC54 001698B4 2C 03 FF FF */ cmpwi r3, -1 /* 8016DC58 001698B8 41 82 FF E4 */ beq lbl_8016DC3C /* 8016DC5C 001698BC 2C 03 FF FE */ cmpwi r3, -2 /* 8016DC60 001698C0 40 82 00 10 */ bne lbl_8016DC70 /* 8016DC64 001698C4 48 23 EB C5 */ bl func_803AC828 /* 8016DC68 001698C8 38 80 00 07 */ li r4, 7 /* 8016DC6C 001698CC 48 24 00 75 */ bl func_803ADCE0 lbl_8016DC70: /* 8016DC70 001698D0 80 01 00 24 */ lwz r0, 0x24(r1) /* 8016DC74 001698D4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8016DC78 001698D8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8016DC7C 001698DC 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8016DC80 001698E0 7C 08 03 A6 */ mtlr r0 /* 8016DC84 001698E4 38 21 00 20 */ addi r1, r1, 0x20 /* 8016DC88 001698E8 4E 80 00 20 */ blr .global func_8016DC8C func_8016DC8C: /* 8016DC8C 001698EC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8016DC90 001698F0 7C 08 02 A6 */ mflr r0 /* 8016DC94 001698F4 90 01 00 24 */ stw r0, 0x24(r1) /* 8016DC98 001698F8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8016DC9C 001698FC 93 C1 00 18 */ stw r30, 0x18(r1) /* 8016DCA0 00169900 93 A1 00 14 */ stw r29, 0x14(r1) /* 8016DCA4 00169904 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13) /* 8016DCA8 00169908 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c /* 8016DCAC 0016990C 41 82 00 54 */ beq lbl_8016DD00 /* 8016DCB0 00169910 3B C0 00 00 */ li r30, 0 lbl_8016DCB4: /* 8016DCB4 00169914 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016DCB8 00169918 7C 60 F2 14 */ add r3, r0, r30 /* 8016DCBC 0016991C 88 03 00 7C */ lbz r0, 0x7c(r3) /* 8016DCC0 00169920 2C 00 00 00 */ cmpwi r0, 0 /* 8016DCC4 00169924 40 82 00 2C */ bne lbl_8016DCF0 /* 8016DCC8 00169928 7F C3 F3 78 */ mr r3, r30 /* 8016DCCC 0016992C 38 80 00 0A */ li r4, 0xa /* 8016DCD0 00169930 48 00 9F 0D */ bl func_80177BDC /* 8016DCD4 00169934 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016DCD8 00169938 2C 00 00 07 */ cmpwi r0, 7 /* 8016DCDC 0016993C 40 82 00 14 */ bne lbl_8016DCF0 /* 8016DCE0 00169940 48 23 EB 49 */ bl func_803AC828 /* 8016DCE4 00169944 38 80 00 07 */ li r4, 7 /* 8016DCE8 00169948 48 23 FF F9 */ bl func_803ADCE0 /* 8016DCEC 0016994C 48 00 00 D0 */ b lbl_8016DDBC lbl_8016DCF0: /* 8016DCF0 00169950 3B DE 00 01 */ addi r30, r30, 1 /* 8016DCF4 00169954 2C 1E 00 04 */ cmpwi r30, 4 /* 8016DCF8 00169958 41 80 FF BC */ blt lbl_8016DCB4 /* 8016DCFC 0016995C 48 00 00 C0 */ b lbl_8016DDBC lbl_8016DD00: /* 8016DD00 00169960 4B FF FB 51 */ bl func_8016D850 /* 8016DD04 00169964 54 60 07 BF */ clrlwi. r0, r3, 0x1e /* 8016DD08 00169968 7C 7E 1B 78 */ mr r30, r3 /* 8016DD0C 0016996C 40 82 00 2C */ bne lbl_8016DD38 /* 8016DD10 00169970 38 60 00 00 */ li r3, 0 /* 8016DD14 00169974 38 80 00 0A */ li r4, 0xa /* 8016DD18 00169978 48 00 9E C5 */ bl func_80177BDC /* 8016DD1C 0016997C 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016DD20 00169980 2C 00 00 07 */ cmpwi r0, 7 /* 8016DD24 00169984 40 82 00 14 */ bne lbl_8016DD38 /* 8016DD28 00169988 48 23 EB 01 */ bl func_803AC828 /* 8016DD2C 0016998C 38 80 00 07 */ li r4, 7 /* 8016DD30 00169990 48 23 FF B1 */ bl func_803ADCE0 /* 8016DD34 00169994 48 00 00 88 */ b lbl_8016DDBC lbl_8016DD38: /* 8016DD38 00169998 57 C0 07 3B */ rlwinm. r0, r30, 0, 0x1c, 0x1d /* 8016DD3C 0016999C 40 82 00 2C */ bne lbl_8016DD68 /* 8016DD40 001699A0 38 60 00 01 */ li r3, 1 /* 8016DD44 001699A4 38 80 00 0A */ li r4, 0xa /* 8016DD48 001699A8 48 00 9E 95 */ bl func_80177BDC /* 8016DD4C 001699AC 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016DD50 001699B0 2C 00 00 07 */ cmpwi r0, 7 /* 8016DD54 001699B4 40 82 00 14 */ bne lbl_8016DD68 /* 8016DD58 001699B8 48 23 EA D1 */ bl func_803AC828 /* 8016DD5C 001699BC 38 80 00 07 */ li r4, 7 /* 8016DD60 001699C0 48 23 FF 81 */ bl func_803ADCE0 /* 8016DD64 001699C4 48 00 00 58 */ b lbl_8016DDBC lbl_8016DD68: /* 8016DD68 001699C8 3F C0 80 49 */ lis r30, lbl_8048CDB4@ha /* 8016DD6C 001699CC 3B A0 00 00 */ li r29, 0 /* 8016DD70 001699D0 3B DE CD B4 */ addi r30, r30, lbl_8048CDB4@l /* 8016DD74 001699D4 3B E0 00 08 */ li r31, 8 lbl_8016DD78: /* 8016DD78 001699D8 88 7E 00 1A */ lbz r3, 0x1a(r30) /* 8016DD7C 001699DC 7F E0 E8 30 */ slw r0, r31, r29 /* 8016DD80 001699E0 7C 60 00 39 */ and. r0, r3, r0 /* 8016DD84 001699E4 41 82 00 2C */ beq lbl_8016DDB0 /* 8016DD88 001699E8 7F A3 EB 78 */ mr r3, r29 /* 8016DD8C 001699EC 38 80 00 0A */ li r4, 0xa /* 8016DD90 001699F0 48 00 9E 4D */ bl func_80177BDC /* 8016DD94 001699F4 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8016DD98 001699F8 2C 00 00 07 */ cmpwi r0, 7 /* 8016DD9C 001699FC 40 82 00 14 */ bne lbl_8016DDB0 /* 8016DDA0 00169A00 48 23 EA 89 */ bl func_803AC828 /* 8016DDA4 00169A04 38 80 00 07 */ li r4, 7 /* 8016DDA8 00169A08 48 23 FF 39 */ bl func_803ADCE0 /* 8016DDAC 00169A0C 48 00 00 10 */ b lbl_8016DDBC lbl_8016DDB0: /* 8016DDB0 00169A10 3B BD 00 01 */ addi r29, r29, 1 /* 8016DDB4 00169A14 2C 1D 00 04 */ cmpwi r29, 4 /* 8016DDB8 00169A18 41 80 FF C0 */ blt lbl_8016DD78 lbl_8016DDBC: /* 8016DDBC 00169A1C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8016DDC0 00169A20 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8016DDC4 00169A24 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8016DDC8 00169A28 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8016DDCC 00169A2C 7C 08 03 A6 */ mtlr r0 /* 8016DDD0 00169A30 38 21 00 20 */ addi r1, r1, 0x20 /* 8016DDD4 00169A34 4E 80 00 20 */ blr .global func_8016DDD8 func_8016DDD8: /* 8016DDD8 00169A38 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8016DDDC 00169A3C 7C 08 02 A6 */ mflr r0 /* 8016DDE0 00169A40 90 01 00 14 */ stw r0, 0x14(r1) /* 8016DDE4 00169A44 93 E1 00 0C */ stw r31, 0xc(r1) /* 8016DDE8 00169A48 93 C1 00 08 */ stw r30, 8(r1) /* 8016DDEC 00169A4C 7C 7E 1B 78 */ mr r30, r3 /* 8016DDF0 00169A50 48 23 EA 39 */ bl func_803AC828 /* 8016DDF4 00169A54 7C 7F 1B 78 */ mr r31, r3 /* 8016DDF8 00169A58 48 23 EA 51 */ bl func_803AC848 /* 8016DDFC 00169A5C 7C 64 1B 78 */ mr r4, r3 /* 8016DE00 00169A60 7F E3 FB 78 */ mr r3, r31 /* 8016DE04 00169A64 7F C7 F3 78 */ mr r7, r30 /* 8016DE08 00169A68 38 A0 00 03 */ li r5, 3 /* 8016DE0C 00169A6C 38 C0 00 00 */ li r6, 0 /* 8016DE10 00169A70 48 25 AF 9D */ bl func_803C8DAC /* 8016DE14 00169A74 80 01 00 14 */ lwz r0, 0x14(r1) /* 8016DE18 00169A78 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8016DE1C 00169A7C 83 C1 00 08 */ lwz r30, 8(r1) /* 8016DE20 00169A80 7C 08 03 A6 */ mtlr r0 /* 8016DE24 00169A84 38 21 00 10 */ addi r1, r1, 0x10 /* 8016DE28 00169A88 4E 80 00 20 */ blr .global func_8016DE2C func_8016DE2C: /* 8016DE2C 00169A8C 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8016DE30 00169A90 7C 08 02 A6 */ mflr r0 /* 8016DE34 00169A94 90 01 00 44 */ stw r0, 0x44(r1) /* 8016DE38 00169A98 39 61 00 40 */ addi r11, r1, 0x40 /* 8016DE3C 00169A9C 48 05 92 DD */ bl _savegpr_23 /* 8016DE40 00169AA0 38 00 00 00 */ li r0, 0 /* 8016DE44 00169AA4 90 01 00 10 */ stw r0, 0x10(r1) /* 8016DE48 00169AA8 90 01 00 08 */ stw r0, 8(r1) /* 8016DE4C 00169AAC 90 01 00 14 */ stw r0, 0x14(r1) /* 8016DE50 00169AB0 90 01 00 0C */ stw r0, 0xc(r1) /* 8016DE54 00169AB4 48 23 E9 D5 */ bl func_803AC828 /* 8016DE58 00169AB8 7C 7A 1B 78 */ mr r26, r3 /* 8016DE5C 00169ABC 3B A1 00 10 */ addi r29, r1, 0x10 /* 8016DE60 00169AC0 3B 81 00 08 */ addi r28, r1, 8 /* 8016DE64 00169AC4 3B 60 00 00 */ li r27, 0 lbl_8016DE68: /* 8016DE68 00169AC8 7F 43 D3 78 */ mr r3, r26 /* 8016DE6C 00169ACC 7F 64 DB 78 */ mr r4, r27 /* 8016DE70 00169AD0 48 23 E9 F9 */ bl func_803AC868 /* 8016DE74 00169AD4 7C 79 1B 78 */ mr r25, r3 /* 8016DE78 00169AD8 48 27 0A CD */ bl func_803DE944 /* 8016DE7C 00169ADC 7C 7E 1B 78 */ mr r30, r3 /* 8016DE80 00169AE0 3B 00 00 00 */ li r24, 0 /* 8016DE84 00169AE4 48 00 00 70 */ b lbl_8016DEF4 lbl_8016DE88: /* 8016DE88 00169AE8 7F 23 CB 78 */ mr r3, r25 /* 8016DE8C 00169AEC 7F 04 C3 78 */ mr r4, r24 /* 8016DE90 00169AF0 48 27 0A BD */ bl func_803DE94C /* 8016DE94 00169AF4 7C 77 1B 78 */ mr r23, r3 /* 8016DE98 00169AF8 38 80 00 A2 */ li r4, 0xa2 /* 8016DE9C 00169AFC 38 A0 00 00 */ li r5, 0 /* 8016DEA0 00169B00 48 26 FB 3D */ bl func_803DD9DC /* 8016DEA4 00169B04 2C 03 00 00 */ cmpwi r3, 0 /* 8016DEA8 00169B08 7C 7F 1B 78 */ mr r31, r3 /* 8016DEAC 00169B0C 41 82 00 44 */ beq lbl_8016DEF0 /* 8016DEB0 00169B10 80 DD 00 00 */ lwz r6, 0(r29) /* 8016DEB4 00169B14 7E E3 BB 78 */ mr r3, r23 /* 8016DEB8 00169B18 38 80 00 A3 */ li r4, 0xa3 /* 8016DEBC 00169B1C 38 A0 00 00 */ li r5, 0 /* 8016DEC0 00169B20 38 06 00 01 */ addi r0, r6, 1 /* 8016DEC4 00169B24 90 1D 00 00 */ stw r0, 0(r29) /* 8016DEC8 00169B28 48 26 FB 15 */ bl func_803DD9DC /* 8016DECC 00169B2C 2C 03 00 00 */ cmpwi r3, 0 /* 8016DED0 00169B30 40 82 00 08 */ bne lbl_8016DED8 /* 8016DED4 00169B34 38 60 00 01 */ li r3, 1 lbl_8016DED8: /* 8016DED8 00169B38 1C 1F 00 64 */ mulli r0, r31, 0x64 /* 8016DEDC 00169B3C 80 9C 00 00 */ lwz r4, 0(r28) /* 8016DEE0 00169B40 54 00 40 2E */ slwi r0, r0, 8 /* 8016DEE4 00169B44 7C 00 1B 96 */ divwu r0, r0, r3 /* 8016DEE8 00169B48 7C 04 02 14 */ add r0, r4, r0 /* 8016DEEC 00169B4C 90 1C 00 00 */ stw r0, 0(r28) lbl_8016DEF0: /* 8016DEF0 00169B50 3B 18 00 01 */ addi r24, r24, 1 lbl_8016DEF4: /* 8016DEF4 00169B54 7C 18 F0 00 */ cmpw r24, r30 /* 8016DEF8 00169B58 41 80 FF 90 */ blt lbl_8016DE88 /* 8016DEFC 00169B5C 3B 7B 00 01 */ addi r27, r27, 1 /* 8016DF00 00169B60 3B 9C 00 04 */ addi r28, r28, 4 /* 8016DF04 00169B64 2C 1B 00 02 */ cmpwi r27, 2 /* 8016DF08 00169B68 3B BD 00 04 */ addi r29, r29, 4 /* 8016DF0C 00169B6C 41 80 FF 5C */ blt lbl_8016DE68 /* 8016DF10 00169B70 80 01 00 14 */ lwz r0, 0x14(r1) /* 8016DF14 00169B74 80 61 00 10 */ lwz r3, 0x10(r1) /* 8016DF18 00169B78 7C 03 00 00 */ cmpw r3, r0 /* 8016DF1C 00169B7C 40 81 00 0C */ ble lbl_8016DF28 /* 8016DF20 00169B80 38 60 00 01 */ li r3, 1 /* 8016DF24 00169B84 48 00 00 34 */ b lbl_8016DF58 lbl_8016DF28: /* 8016DF28 00169B88 40 80 00 0C */ bge lbl_8016DF34 /* 8016DF2C 00169B8C 38 60 00 02 */ li r3, 2 /* 8016DF30 00169B90 48 00 00 28 */ b lbl_8016DF58 lbl_8016DF34: /* 8016DF34 00169B94 80 01 00 0C */ lwz r0, 0xc(r1) /* 8016DF38 00169B98 80 61 00 08 */ lwz r3, 8(r1) /* 8016DF3C 00169B9C 7C 03 00 40 */ cmplw r3, r0 /* 8016DF40 00169BA0 40 81 00 0C */ ble lbl_8016DF4C /* 8016DF44 00169BA4 38 60 00 01 */ li r3, 1 /* 8016DF48 00169BA8 48 00 00 10 */ b lbl_8016DF58 lbl_8016DF4C: /* 8016DF4C 00169BAC 7C 00 18 10 */ subfc r0, r0, r3 /* 8016DF50 00169BB0 7C 60 01 10 */ subfe r3, r0, r0 /* 8016DF54 00169BB4 38 63 00 03 */ addi r3, r3, 3 lbl_8016DF58: /* 8016DF58 00169BB8 39 61 00 40 */ addi r11, r1, 0x40 /* 8016DF5C 00169BBC 48 05 92 09 */ bl _restgpr_23 /* 8016DF60 00169BC0 80 01 00 44 */ lwz r0, 0x44(r1) /* 8016DF64 00169BC4 7C 08 03 A6 */ mtlr r0 /* 8016DF68 00169BC8 38 21 00 40 */ addi r1, r1, 0x40 /* 8016DF6C 00169BCC 4E 80 00 20 */ blr .global func_8016DF70 func_8016DF70: /* 8016DF70 00169BD0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8016DF74 00169BD4 7C 08 02 A6 */ mflr r0 /* 8016DF78 00169BD8 90 01 00 24 */ stw r0, 0x24(r1) /* 8016DF7C 00169BDC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8016DF80 00169BE0 93 C1 00 18 */ stw r30, 0x18(r1) /* 8016DF84 00169BE4 7C 9E 23 78 */ mr r30, r4 /* 8016DF88 00169BE8 93 A1 00 14 */ stw r29, 0x14(r1) /* 8016DF8C 00169BEC 7C 7D 1B 78 */ mr r29, r3 /* 8016DF90 00169BF0 80 AD 9E BC */ lwz r5, lbl_8063F17C-_SDA_BASE_(r13) /* 8016DF94 00169BF4 80 0D 9E C0 */ lwz r0, lbl_8063F180-_SDA_BASE_(r13) /* 8016DF98 00169BF8 7C 85 22 14 */ add r4, r5, r4 /* 8016DF9C 00169BFC 7C 04 00 00 */ cmpw r4, r0 /* 8016DFA0 00169C00 90 8D 9E BC */ stw r4, lbl_8063F17C-_SDA_BASE_(r13) /* 8016DFA4 00169C04 40 81 00 08 */ ble lbl_8016DFAC /* 8016DFA8 00169C08 90 8D 9E C0 */ stw r4, lbl_8063F180-_SDA_BASE_(r13) lbl_8016DFAC: /* 8016DFAC 00169C0C 3C 03 00 01 */ addis r0, r3, 1 /* 8016DFB0 00169C10 28 00 FF FF */ cmplwi r0, 0xffff /* 8016DFB4 00169C14 41 82 00 10 */ beq lbl_8016DFC4 /* 8016DFB8 00169C18 38 60 00 64 */ li r3, 0x64 /* 8016DFBC 00169C1C 48 06 CC 89 */ bl func_801DAC44 /* 8016DFC0 00169C20 7C 7F 1B 78 */ mr r31, r3 lbl_8016DFC4: /* 8016DFC4 00169C24 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 8016DFC8 00169C28 7F C4 F3 78 */ mr r4, r30 /* 8016DFCC 00169C2C 48 06 CC C9 */ bl func_801DAC94 /* 8016DFD0 00169C30 3C 1D 00 01 */ addis r0, r29, 1 /* 8016DFD4 00169C34 7C 7E 1B 78 */ mr r30, r3 /* 8016DFD8 00169C38 28 00 FF FF */ cmplwi r0, 0xffff /* 8016DFDC 00169C3C 41 82 00 0C */ beq lbl_8016DFE8 /* 8016DFE0 00169C40 57 E3 04 3E */ clrlwi r3, r31, 0x10 /* 8016DFE4 00169C44 48 06 CC 61 */ bl func_801DAC44 lbl_8016DFE8: /* 8016DFE8 00169C48 7F C3 F3 78 */ mr r3, r30 /* 8016DFEC 00169C4C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8016DFF0 00169C50 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8016DFF4 00169C54 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8016DFF8 00169C58 80 01 00 24 */ lwz r0, 0x24(r1) /* 8016DFFC 00169C5C 7C 08 03 A6 */ mtlr r0 /* 8016E000 00169C60 38 21 00 20 */ addi r1, r1, 0x20 /* 8016E004 00169C64 4E 80 00 20 */ blr .global func_8016E008 func_8016E008: /* 8016E008 00169C68 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8016E00C 00169C6C 7C 08 02 A6 */ mflr r0 /* 8016E010 00169C70 90 01 00 24 */ stw r0, 0x24(r1) /* 8016E014 00169C74 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8016E018 00169C78 93 C1 00 18 */ stw r30, 0x18(r1) /* 8016E01C 00169C7C 7C 9E 23 78 */ mr r30, r4 /* 8016E020 00169C80 93 A1 00 14 */ stw r29, 0x14(r1) /* 8016E024 00169C84 7C 7D 1B 78 */ mr r29, r3 /* 8016E028 00169C88 80 AD 9E BC */ lwz r5, lbl_8063F17C-_SDA_BASE_(r13) /* 8016E02C 00169C8C 80 0D 9E C0 */ lwz r0, lbl_8063F180-_SDA_BASE_(r13) /* 8016E030 00169C90 7C 85 22 14 */ add r4, r5, r4 /* 8016E034 00169C94 7C 04 00 00 */ cmpw r4, r0 /* 8016E038 00169C98 90 8D 9E BC */ stw r4, lbl_8063F17C-_SDA_BASE_(r13) /* 8016E03C 00169C9C 40 81 00 08 */ ble lbl_8016E044 /* 8016E040 00169CA0 90 8D 9E C0 */ stw r4, lbl_8063F180-_SDA_BASE_(r13) lbl_8016E044: /* 8016E044 00169CA4 3C 03 00 01 */ addis r0, r3, 1 /* 8016E048 00169CA8 28 00 FF FF */ cmplwi r0, 0xffff /* 8016E04C 00169CAC 41 82 00 10 */ beq lbl_8016E05C /* 8016E050 00169CB0 38 60 00 64 */ li r3, 0x64 /* 8016E054 00169CB4 48 06 CB F1 */ bl func_801DAC44 /* 8016E058 00169CB8 7C 7F 1B 78 */ mr r31, r3 lbl_8016E05C: /* 8016E05C 00169CBC 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 8016E060 00169CC0 7F C4 F3 78 */ mr r4, r30 /* 8016E064 00169CC4 48 06 CC 31 */ bl func_801DAC94 /* 8016E068 00169CC8 3C 1D 00 01 */ addis r0, r29, 1 /* 8016E06C 00169CCC 7C 7E 1B 78 */ mr r30, r3 /* 8016E070 00169CD0 28 00 FF FF */ cmplwi r0, 0xffff /* 8016E074 00169CD4 41 82 00 0C */ beq lbl_8016E080 /* 8016E078 00169CD8 57 E3 04 3E */ clrlwi r3, r31, 0x10 /* 8016E07C 00169CDC 48 06 CB C9 */ bl func_801DAC44 lbl_8016E080: /* 8016E080 00169CE0 7F C3 F3 78 */ mr r3, r30 /* 8016E084 00169CE4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8016E088 00169CE8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8016E08C 00169CEC 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8016E090 00169CF0 80 01 00 24 */ lwz r0, 0x24(r1) /* 8016E094 00169CF4 7C 08 03 A6 */ mtlr r0 /* 8016E098 00169CF8 38 21 00 20 */ addi r1, r1, 0x20 /* 8016E09C 00169CFC 4E 80 00 20 */ blr .global func_8016E0A0 func_8016E0A0: /* 8016E0A0 00169D00 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8016E0A4 00169D04 7C 08 02 A6 */ mflr r0 /* 8016E0A8 00169D08 90 01 00 14 */ stw r0, 0x14(r1) /* 8016E0AC 00169D0C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8016E0B0 00169D10 7C 7F 1B 78 */ mr r31, r3 /* 8016E0B4 00169D14 7F E4 FB 78 */ mr r4, r31 /* 8016E0B8 00169D18 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 8016E0BC 00169D1C 48 06 CC 9D */ bl func_801DAD58 /* 8016E0C0 00169D20 80 0D 9E BC */ lwz r0, lbl_8063F17C-_SDA_BASE_(r13) /* 8016E0C4 00169D24 7F E4 FB 78 */ mr r4, r31 /* 8016E0C8 00169D28 7C 03 00 50 */ subf r0, r3, r0 /* 8016E0CC 00169D2C 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 8016E0D0 00169D30 90 0D 9E BC */ stw r0, lbl_8063F17C-_SDA_BASE_(r13) /* 8016E0D4 00169D34 48 06 CC 75 */ bl func_801DAD48 /* 8016E0D8 00169D38 80 01 00 14 */ lwz r0, 0x14(r1) /* 8016E0DC 00169D3C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8016E0E0 00169D40 7C 08 03 A6 */ mtlr r0 /* 8016E0E4 00169D44 38 21 00 10 */ addi r1, r1, 0x10 /* 8016E0E8 00169D48 4E 80 00 20 */ blr .global func_8016E0EC func_8016E0EC: /* 8016E0EC 00169D4C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8016E0F0 00169D50 7C 08 02 A6 */ mflr r0 /* 8016E0F4 00169D54 90 01 00 24 */ stw r0, 0x24(r1) /* 8016E0F8 00169D58 39 61 00 20 */ addi r11, r1, 0x20 /* 8016E0FC 00169D5C 48 05 90 2D */ bl _savegpr_27 /* 8016E100 00169D60 3B E0 00 00 */ li r31, 0 /* 8016E104 00169D64 3B A0 00 00 */ li r29, 0 /* 8016E108 00169D68 3B C0 00 FF */ li r30, 0xff lbl_8016E10C: /* 8016E10C 00169D6C 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E110 00169D70 7C 60 EA 14 */ add r3, r0, r29 /* 8016E114 00169D74 80 83 00 10 */ lwz r4, 0x10(r3) /* 8016E118 00169D78 2C 04 00 0B */ cmpwi r4, 0xb /* 8016E11C 00169D7C 40 82 00 AC */ bne lbl_8016E1C8 /* 8016E120 00169D80 80 63 00 60 */ lwz r3, 0x60(r3) /* 8016E124 00169D84 88 03 00 00 */ lbz r0, 0(r3) /* 8016E128 00169D88 2C 00 00 00 */ cmpwi r0, 0 /* 8016E12C 00169D8C 40 82 00 9C */ bne lbl_8016E1C8 /* 8016E130 00169D90 57 FC 07 FE */ clrlwi r28, r31, 0x1f /* 8016E134 00169D94 3B 60 00 00 */ li r27, 0 lbl_8016E138: /* 8016E138 00169D98 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016E13C 00169D9C 48 0B 64 4D */ bl func_80224588 /* 8016E140 00169DA0 7F 83 E3 78 */ mr r3, r28 /* 8016E144 00169DA4 4B FF 9B 09 */ bl func_80167C4C /* 8016E148 00169DA8 28 03 00 07 */ cmplwi r3, 7 /* 8016E14C 00169DAC 40 82 00 18 */ bne lbl_8016E164 /* 8016E150 00169DB0 48 23 E6 D9 */ bl func_803AC828 /* 8016E154 00169DB4 38 80 00 07 */ li r4, 7 /* 8016E158 00169DB8 48 23 FB 89 */ bl func_803ADCE0 /* 8016E15C 00169DBC 38 60 00 01 */ li r3, 1 /* 8016E160 00169DC0 48 00 01 20 */ b lbl_8016E280 lbl_8016E164: /* 8016E164 00169DC4 28 03 F5 FA */ cmplwi r3, 0xf5fa /* 8016E168 00169DC8 40 82 00 14 */ bne lbl_8016E17C /* 8016E16C 00169DCC 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E170 00169DD0 7C 60 EA 14 */ add r3, r0, r29 /* 8016E174 00169DD4 93 C3 00 10 */ stw r30, 0x10(r3) /* 8016E178 00169DD8 48 00 00 10 */ b lbl_8016E188 lbl_8016E17C: /* 8016E17C 00169DDC 3B 7B 00 01 */ addi r27, r27, 1 /* 8016E180 00169DE0 2C 1B 0A 28 */ cmpwi r27, 0xa28 /* 8016E184 00169DE4 41 80 FF B4 */ blt lbl_8016E138 lbl_8016E188: /* 8016E188 00169DE8 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E18C 00169DEC 7C 60 EA 14 */ add r3, r0, r29 /* 8016E190 00169DF0 80 83 00 10 */ lwz r4, 0x10(r3) /* 8016E194 00169DF4 2C 04 00 FF */ cmpwi r4, 0xff /* 8016E198 00169DF8 41 82 00 30 */ beq lbl_8016E1C8 /* 8016E19C 00169DFC 7F 83 E3 78 */ mr r3, r28 /* 8016E1A0 00169E00 4B FF 98 91 */ bl func_80167A30 /* 8016E1A4 00169E04 4B FF 6A C9 */ bl func_80164C6C /* 8016E1A8 00169E08 2C 03 00 00 */ cmpwi r3, 0 /* 8016E1AC 00169E0C 41 82 00 08 */ beq lbl_8016E1B4 /* 8016E1B0 00169E10 4B FF 88 F1 */ bl func_80166AA0 lbl_8016E1B4: /* 8016E1B4 00169E14 48 23 E6 75 */ bl func_803AC828 /* 8016E1B8 00169E18 38 80 00 07 */ li r4, 7 /* 8016E1BC 00169E1C 48 23 FB 25 */ bl func_803ADCE0 /* 8016E1C0 00169E20 38 60 00 01 */ li r3, 1 /* 8016E1C4 00169E24 48 00 00 BC */ b lbl_8016E280 lbl_8016E1C8: /* 8016E1C8 00169E28 2C 04 00 FD */ cmpwi r4, 0xfd /* 8016E1CC 00169E2C 40 82 00 A0 */ bne lbl_8016E26C /* 8016E1D0 00169E30 57 FC 07 FE */ clrlwi r28, r31, 0x1f /* 8016E1D4 00169E34 3B 60 00 00 */ li r27, 0 lbl_8016E1D8: /* 8016E1D8 00169E38 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8016E1DC 00169E3C 48 0B 63 AD */ bl func_80224588 /* 8016E1E0 00169E40 7F 83 E3 78 */ mr r3, r28 /* 8016E1E4 00169E44 4B FF 9A 69 */ bl func_80167C4C /* 8016E1E8 00169E48 28 03 00 07 */ cmplwi r3, 7 /* 8016E1EC 00169E4C 40 82 00 18 */ bne lbl_8016E204 /* 8016E1F0 00169E50 48 23 E6 39 */ bl func_803AC828 /* 8016E1F4 00169E54 38 80 00 07 */ li r4, 7 /* 8016E1F8 00169E58 48 23 FA E9 */ bl func_803ADCE0 /* 8016E1FC 00169E5C 38 60 00 01 */ li r3, 1 /* 8016E200 00169E60 48 00 00 80 */ b lbl_8016E280 lbl_8016E204: /* 8016E204 00169E64 28 03 F5 FA */ cmplwi r3, 0xf5fa /* 8016E208 00169E68 40 82 00 18 */ bne lbl_8016E220 /* 8016E20C 00169E6C 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E210 00169E70 7C 60 EA 14 */ add r3, r0, r29 /* 8016E214 00169E74 80 03 00 20 */ lwz r0, 0x20(r3) /* 8016E218 00169E78 90 03 00 10 */ stw r0, 0x10(r3) /* 8016E21C 00169E7C 48 00 00 10 */ b lbl_8016E22C lbl_8016E220: /* 8016E220 00169E80 3B 7B 00 01 */ addi r27, r27, 1 /* 8016E224 00169E84 2C 1B 0A 28 */ cmpwi r27, 0xa28 /* 8016E228 00169E88 41 80 FF B0 */ blt lbl_8016E1D8 lbl_8016E22C: /* 8016E22C 00169E8C 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13) /* 8016E230 00169E90 7C 60 EA 14 */ add r3, r0, r29 /* 8016E234 00169E94 80 03 00 10 */ lwz r0, 0x10(r3) /* 8016E238 00169E98 2C 00 00 FD */ cmpwi r0, 0xfd /* 8016E23C 00169E9C 40 82 00 30 */ bne lbl_8016E26C /* 8016E240 00169EA0 7F 83 E3 78 */ mr r3, r28 /* 8016E244 00169EA4 4B FF 97 ED */ bl func_80167A30 /* 8016E248 00169EA8 4B FF 6A 25 */ bl func_80164C6C /* 8016E24C 00169EAC 2C 03 00 00 */ cmpwi r3, 0 /* 8016E250 00169EB0 41 82 00 08 */ beq lbl_8016E258 /* 8016E254 00169EB4 4B FF 88 4D */ bl func_80166AA0 lbl_8016E258: /* 8016E258 00169EB8 48 23 E5 D1 */ bl func_803AC828 /* 8016E25C 00169EBC 38 80 00 07 */ li r4, 7 /* 8016E260 00169EC0 48 23 FA 81 */ bl func_803ADCE0 /* 8016E264 00169EC4 38 60 00 01 */ li r3, 1 /* 8016E268 00169EC8 48 00 00 18 */ b lbl_8016E280 lbl_8016E26C: /* 8016E26C 00169ECC 3B FF 00 01 */ addi r31, r31, 1 /* 8016E270 00169ED0 3B BD 00 04 */ addi r29, r29, 4 /* 8016E274 00169ED4 2C 1F 00 04 */ cmpwi r31, 4 /* 8016E278 00169ED8 41 80 FE 94 */ blt lbl_8016E10C /* 8016E27C 00169EDC 38 60 00 00 */ li r3, 0 lbl_8016E280: /* 8016E280 00169EE0 39 61 00 20 */ addi r11, r1, 0x20 /* 8016E284 00169EE4 48 05 8E F1 */ bl _restgpr_27 /* 8016E288 00169EE8 80 01 00 24 */ lwz r0, 0x24(r1) /* 8016E28C 00169EEC 7C 08 03 A6 */ mtlr r0 /* 8016E290 00169EF0 38 21 00 20 */ addi r1, r1, 0x20 /* 8016E294 00169EF4 4E 80 00 20 */ blr .global func_8016E298 func_8016E298: /* 8016E298 00169EF8 38 A0 00 01 */ li r5, 1 /* 8016E29C 00169EFC 38 6D 9E A0 */ addi r3, r13, lbl_8063F160-_SDA_BASE_ /* 8016E2A0 00169F00 38 80 00 04 */ li r4, 4 /* 8016E2A4 00169F04 38 00 00 00 */ li r0, 0 /* 8016E2A8 00169F08 98 AD 9E A0 */ stb r5, lbl_8063F160-_SDA_BASE_(r13) /* 8016E2AC 00169F0C B0 83 00 02 */ sth r4, 2(r3) /* 8016E2B0 00169F10 98 03 00 04 */ stb r0, 4(r3) /* 8016E2B4 00169F14 4E 80 00 20 */ blr