.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global func_8023AF8C func_8023AF8C: /* 8023AF8C 00236BEC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023AF90 00236BF0 7C 08 02 A6 */ mflr r0 /* 8023AF94 00236BF4 3D 00 80 42 */ lis r8, lbl_80424718@ha /* 8023AF98 00236BF8 90 01 00 14 */ stw r0, 0x14(r1) /* 8023AF9C 00236BFC 38 00 00 00 */ li r0, 0 /* 8023AFA0 00236C00 39 08 47 18 */ addi r8, r8, lbl_80424718@l /* 8023AFA4 00236C04 93 E1 00 0C */ stw r31, 0xc(r1) /* 8023AFA8 00236C08 7C 7F 1B 78 */ mr r31, r3 /* 8023AFAC 00236C0C 90 83 00 00 */ stw r4, 0(r3) /* 8023AFB0 00236C10 91 03 00 1C */ stw r8, 0x1c(r3) /* 8023AFB4 00236C14 98 A3 00 04 */ stb r5, 4(r3) /* 8023AFB8 00236C18 98 C3 00 05 */ stb r6, 5(r3) /* 8023AFBC 00236C1C B0 03 00 06 */ sth r0, 6(r3) /* 8023AFC0 00236C20 90 E3 00 08 */ stw r7, 8(r3) /* 8023AFC4 00236C24 90 03 00 0C */ stw r0, 0xc(r3) /* 8023AFC8 00236C28 90 03 00 10 */ stw r0, 0x10(r3) /* 8023AFCC 00236C2C 90 03 00 14 */ stw r0, 0x14(r3) /* 8023AFD0 00236C30 90 03 00 18 */ stw r0, 0x18(r3) /* 8023AFD4 00236C34 48 00 00 B5 */ bl func_8023B088 /* 8023AFD8 00236C38 7F E3 FB 78 */ mr r3, r31 /* 8023AFDC 00236C3C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8023AFE0 00236C40 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023AFE4 00236C44 7C 08 03 A6 */ mtlr r0 /* 8023AFE8 00236C48 38 21 00 10 */ addi r1, r1, 0x10 /* 8023AFEC 00236C4C 4E 80 00 20 */ blr .global func_8023AFF0 func_8023AFF0: /* 8023AFF0 00236C50 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023AFF4 00236C54 7C 08 02 A6 */ mflr r0 /* 8023AFF8 00236C58 2C 03 00 00 */ cmpwi r3, 0 /* 8023AFFC 00236C5C 90 01 00 14 */ stw r0, 0x14(r1) /* 8023B000 00236C60 93 E1 00 0C */ stw r31, 0xc(r1) /* 8023B004 00236C64 7C 9F 23 78 */ mr r31, r4 /* 8023B008 00236C68 93 C1 00 08 */ stw r30, 8(r1) /* 8023B00C 00236C6C 7C 7E 1B 78 */ mr r30, r3 /* 8023B010 00236C70 41 82 00 2C */ beq lbl_8023B03C /* 8023B014 00236C74 3C 80 80 42 */ lis r4, lbl_80424718@ha /* 8023B018 00236C78 38 84 47 18 */ addi r4, r4, lbl_80424718@l /* 8023B01C 00236C7C 90 83 00 1C */ stw r4, 0x1c(r3) /* 8023B020 00236C80 48 00 02 D1 */ bl func_8023B2F0 /* 8023B024 00236C84 7F C3 F3 78 */ mr r3, r30 /* 8023B028 00236C88 48 00 00 89 */ bl func_8023B0B0 /* 8023B02C 00236C8C 2C 1F 00 00 */ cmpwi r31, 0 /* 8023B030 00236C90 40 81 00 0C */ ble lbl_8023B03C /* 8023B034 00236C94 7F C3 F3 78 */ mr r3, r30 /* 8023B038 00236C98 4B F9 FA 81 */ bl __dl__FPv lbl_8023B03C: /* 8023B03C 00236C9C 7F C3 F3 78 */ mr r3, r30 /* 8023B040 00236CA0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8023B044 00236CA4 83 C1 00 08 */ lwz r30, 8(r1) /* 8023B048 00236CA8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023B04C 00236CAC 7C 08 03 A6 */ mtlr r0 /* 8023B050 00236CB0 38 21 00 10 */ addi r1, r1, 0x10 /* 8023B054 00236CB4 4E 80 00 20 */ blr .global func_8023B058 func_8023B058: /* 8023B058 00236CB8 80 8D A4 68 */ lwz r4, lbl_8063F728-_SDA_BASE_(r13) /* 8023B05C 00236CBC 48 00 00 1C */ b lbl_8023B078 lbl_8023B060: /* 8023B060 00236CC0 80 04 00 00 */ lwz r0, 0(r4) /* 8023B064 00236CC4 7C 00 18 00 */ cmpw r0, r3 /* 8023B068 00236CC8 40 82 00 0C */ bne lbl_8023B074 /* 8023B06C 00236CCC 7C 83 23 78 */ mr r3, r4 /* 8023B070 00236CD0 4E 80 00 20 */ blr lbl_8023B074: /* 8023B074 00236CD4 80 84 00 18 */ lwz r4, 0x18(r4) lbl_8023B078: /* 8023B078 00236CD8 2C 04 00 00 */ cmpwi r4, 0 /* 8023B07C 00236CDC 40 82 FF E4 */ bne lbl_8023B060 /* 8023B080 00236CE0 38 60 00 00 */ li r3, 0 /* 8023B084 00236CE4 4E 80 00 20 */ blr .global func_8023B088 func_8023B088: /* 8023B088 00236CE8 80 0D A4 68 */ lwz r0, lbl_8063F728-_SDA_BASE_(r13) /* 8023B08C 00236CEC 2C 00 00 00 */ cmpwi r0, 0 /* 8023B090 00236CF0 40 82 00 08 */ bne lbl_8023B098 /* 8023B094 00236CF4 90 6D A4 68 */ stw r3, lbl_8063F728-_SDA_BASE_(r13) lbl_8023B098: /* 8023B098 00236CF8 80 8D A4 6C */ lwz r4, lbl_8063F72C-_SDA_BASE_(r13) /* 8023B09C 00236CFC 2C 04 00 00 */ cmpwi r4, 0 /* 8023B0A0 00236D00 41 82 00 08 */ beq lbl_8023B0A8 /* 8023B0A4 00236D04 90 64 00 18 */ stw r3, 0x18(r4) lbl_8023B0A8: /* 8023B0A8 00236D08 90 6D A4 6C */ stw r3, lbl_8063F72C-_SDA_BASE_(r13) /* 8023B0AC 00236D0C 4E 80 00 20 */ blr .global func_8023B0B0 func_8023B0B0: /* 8023B0B0 00236D10 80 8D A4 68 */ lwz r4, lbl_8063F728-_SDA_BASE_(r13) /* 8023B0B4 00236D14 7C 03 20 40 */ cmplw r3, r4 /* 8023B0B8 00236D18 40 82 00 38 */ bne lbl_8023B0F0 /* 8023B0BC 00236D1C 80 0D A4 6C */ lwz r0, lbl_8063F72C-_SDA_BASE_(r13) /* 8023B0C0 00236D20 80 83 00 18 */ lwz r4, 0x18(r3) /* 8023B0C4 00236D24 7C 00 18 40 */ cmplw r0, r3 /* 8023B0C8 00236D28 90 8D A4 68 */ stw r4, lbl_8063F728-_SDA_BASE_(r13) /* 8023B0CC 00236D2C 40 82 00 48 */ bne lbl_8023B114 /* 8023B0D0 00236D30 38 00 00 00 */ li r0, 0 /* 8023B0D4 00236D34 90 0D A4 6C */ stw r0, lbl_8063F72C-_SDA_BASE_(r13) /* 8023B0D8 00236D38 48 00 00 3C */ b lbl_8023B114 /* 8023B0DC 00236D3C 48 00 00 14 */ b lbl_8023B0F0 lbl_8023B0E0: /* 8023B0E0 00236D40 80 04 00 18 */ lwz r0, 0x18(r4) /* 8023B0E4 00236D44 7C 00 18 40 */ cmplw r0, r3 /* 8023B0E8 00236D48 41 82 00 10 */ beq lbl_8023B0F8 /* 8023B0EC 00236D4C 7C 04 03 78 */ mr r4, r0 lbl_8023B0F0: /* 8023B0F0 00236D50 2C 04 00 00 */ cmpwi r4, 0 /* 8023B0F4 00236D54 40 82 FF EC */ bne lbl_8023B0E0 lbl_8023B0F8: /* 8023B0F8 00236D58 80 03 00 18 */ lwz r0, 0x18(r3) /* 8023B0FC 00236D5C 90 04 00 18 */ stw r0, 0x18(r4) /* 8023B100 00236D60 80 0D A4 6C */ lwz r0, lbl_8063F72C-_SDA_BASE_(r13) /* 8023B104 00236D64 7C 00 18 40 */ cmplw r0, r3 /* 8023B108 00236D68 40 82 00 0C */ bne lbl_8023B114 /* 8023B10C 00236D6C 80 03 00 18 */ lwz r0, 0x18(r3) /* 8023B110 00236D70 90 0D A4 6C */ stw r0, lbl_8063F72C-_SDA_BASE_(r13) lbl_8023B114: /* 8023B114 00236D74 38 00 00 00 */ li r0, 0 /* 8023B118 00236D78 90 03 00 18 */ stw r0, 0x18(r3) /* 8023B11C 00236D7C 4E 80 00 20 */ blr .global func_8023B120 func_8023B120: /* 8023B120 00236D80 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8023B124 00236D84 7C 08 02 A6 */ mflr r0 /* 8023B128 00236D88 90 01 00 24 */ stw r0, 0x24(r1) /* 8023B12C 00236D8C 39 61 00 20 */ addi r11, r1, 0x20 /* 8023B130 00236D90 4B F8 BF F9 */ bl _savegpr_27 /* 8023B134 00236D94 83 E3 00 10 */ lwz r31, 0x10(r3) /* 8023B138 00236D98 7C 7B 1B 78 */ mr r27, r3 /* 8023B13C 00236D9C 7C 9C 23 78 */ mr r28, r4 /* 8023B140 00236DA0 7C BD 2B 78 */ mr r29, r5 /* 8023B144 00236DA4 3B C0 00 00 */ li r30, 0 /* 8023B148 00236DA8 48 00 00 60 */ b lbl_8023B1A8 lbl_8023B14C: /* 8023B14C 00236DAC 80 FF 00 00 */ lwz r7, 0(r31) /* 8023B150 00236DB0 7C 04 38 40 */ cmplw r4, r7 /* 8023B154 00236DB4 40 82 00 30 */ bne lbl_8023B184 /* 8023B158 00236DB8 80 1F 00 04 */ lwz r0, 4(r31) /* 8023B15C 00236DBC 7C 05 00 40 */ cmplw r5, r0 /* 8023B160 00236DC0 40 82 00 24 */ bne lbl_8023B184 /* 8023B164 00236DC4 80 03 00 00 */ lwz r0, 0(r3) /* 8023B168 00236DC8 80 64 00 00 */ lwz r3, 0(r4) /* 8023B16C 00236DCC 54 04 80 1E */ slwi r4, r0, 0x10 /* 8023B170 00236DD0 88 05 00 04 */ lbz r0, 4(r5) /* 8023B174 00236DD4 54 63 40 2E */ slwi r3, r3, 8 /* 8023B178 00236DD8 7C 83 1B 78 */ or r3, r4, r3 /* 8023B17C 00236DDC 7C 63 03 78 */ or r3, r3, r0 /* 8023B180 00236DE0 48 00 00 A8 */ b lbl_8023B228 lbl_8023B184: /* 8023B184 00236DE4 2C 06 00 00 */ cmpwi r6, 0 /* 8023B188 00236DE8 41 82 00 18 */ beq lbl_8023B1A0 /* 8023B18C 00236DEC 7C 04 38 40 */ cmplw r4, r7 /* 8023B190 00236DF0 40 80 00 10 */ bge lbl_8023B1A0 /* 8023B194 00236DF4 80 1F 00 04 */ lwz r0, 4(r31) /* 8023B198 00236DF8 7C 05 00 40 */ cmplw r5, r0 /* 8023B19C 00236DFC 41 80 00 14 */ blt lbl_8023B1B0 lbl_8023B1A0: /* 8023B1A0 00236E00 7F FE FB 78 */ mr r30, r31 /* 8023B1A4 00236E04 83 FF 00 10 */ lwz r31, 0x10(r31) lbl_8023B1A8: /* 8023B1A8 00236E08 2C 1F 00 00 */ cmpwi r31, 0 /* 8023B1AC 00236E0C 40 82 FF A0 */ bne lbl_8023B14C lbl_8023B1B0: /* 8023B1B0 00236E10 38 60 00 14 */ li r3, 0x14 /* 8023B1B4 00236E14 4B F9 F8 7D */ bl __nw__FUl /* 8023B1B8 00236E18 2C 03 00 00 */ cmpwi r3, 0 /* 8023B1BC 00236E1C 40 82 00 0C */ bne lbl_8023B1C8 /* 8023B1C0 00236E20 38 60 00 00 */ li r3, 0 /* 8023B1C4 00236E24 48 00 00 64 */ b lbl_8023B228 lbl_8023B1C8: /* 8023B1C8 00236E28 93 83 00 00 */ stw r28, 0(r3) /* 8023B1CC 00236E2C 38 80 00 00 */ li r4, 0 /* 8023B1D0 00236E30 38 00 00 01 */ li r0, 1 /* 8023B1D4 00236E34 2C 1E 00 00 */ cmpwi r30, 0 /* 8023B1D8 00236E38 93 A3 00 04 */ stw r29, 4(r3) /* 8023B1DC 00236E3C B0 83 00 08 */ sth r4, 8(r3) /* 8023B1E0 00236E40 98 03 00 0A */ stb r0, 0xa(r3) /* 8023B1E4 00236E44 98 83 00 0B */ stb r4, 0xb(r3) /* 8023B1E8 00236E48 90 83 00 0C */ stw r4, 0xc(r3) /* 8023B1EC 00236E4C 90 83 00 10 */ stw r4, 0x10(r3) /* 8023B1F0 00236E50 41 82 00 10 */ beq lbl_8023B200 /* 8023B1F4 00236E54 93 E3 00 10 */ stw r31, 0x10(r3) /* 8023B1F8 00236E58 90 7E 00 10 */ stw r3, 0x10(r30) /* 8023B1FC 00236E5C 48 00 00 10 */ b lbl_8023B20C lbl_8023B200: /* 8023B200 00236E60 80 1B 00 10 */ lwz r0, 0x10(r27) /* 8023B204 00236E64 90 03 00 10 */ stw r0, 0x10(r3) /* 8023B208 00236E68 90 7B 00 10 */ stw r3, 0x10(r27) lbl_8023B20C: /* 8023B20C 00236E6C 80 1B 00 00 */ lwz r0, 0(r27) /* 8023B210 00236E70 80 7C 00 00 */ lwz r3, 0(r28) /* 8023B214 00236E74 54 04 80 1E */ slwi r4, r0, 0x10 /* 8023B218 00236E78 88 1D 00 04 */ lbz r0, 4(r29) /* 8023B21C 00236E7C 54 63 40 2E */ slwi r3, r3, 8 /* 8023B220 00236E80 7C 83 1B 78 */ or r3, r4, r3 /* 8023B224 00236E84 7C 63 03 78 */ or r3, r3, r0 lbl_8023B228: /* 8023B228 00236E88 39 61 00 20 */ addi r11, r1, 0x20 /* 8023B22C 00236E8C 4B F8 BF 49 */ bl _restgpr_27 /* 8023B230 00236E90 80 01 00 24 */ lwz r0, 0x24(r1) /* 8023B234 00236E94 7C 08 03 A6 */ mtlr r0 /* 8023B238 00236E98 38 21 00 20 */ addi r1, r1, 0x20 /* 8023B23C 00236E9C 4E 80 00 20 */ blr .global func_8023B240 func_8023B240: /* 8023B240 00236EA0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023B244 00236EA4 7C 08 02 A6 */ mflr r0 /* 8023B248 00236EA8 90 01 00 14 */ stw r0, 0x14(r1) /* 8023B24C 00236EAC 93 E1 00 0C */ stw r31, 0xc(r1) /* 8023B250 00236EB0 93 C1 00 08 */ stw r30, 8(r1) /* 8023B254 00236EB4 7C 9E 23 78 */ mr r30, r4 /* 8023B258 00236EB8 80 63 00 10 */ lwz r3, 0x10(r3) /* 8023B25C 00236EBC 48 00 00 1C */ b lbl_8023B278 lbl_8023B260: /* 8023B260 00236EC0 80 03 00 00 */ lwz r0, 0(r3) /* 8023B264 00236EC4 83 E3 00 10 */ lwz r31, 0x10(r3) /* 8023B268 00236EC8 7C 00 F0 40 */ cmplw r0, r30 /* 8023B26C 00236ECC 40 82 00 08 */ bne lbl_8023B274 /* 8023B270 00236ED0 4B F9 F8 49 */ bl __dl__FPv lbl_8023B274: /* 8023B274 00236ED4 7F E3 FB 78 */ mr r3, r31 lbl_8023B278: /* 8023B278 00236ED8 2C 03 00 00 */ cmpwi r3, 0 /* 8023B27C 00236EDC 40 82 FF E4 */ bne lbl_8023B260 /* 8023B280 00236EE0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023B284 00236EE4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8023B288 00236EE8 83 C1 00 08 */ lwz r30, 8(r1) /* 8023B28C 00236EEC 7C 08 03 A6 */ mtlr r0 /* 8023B290 00236EF0 38 21 00 10 */ addi r1, r1, 0x10 /* 8023B294 00236EF4 4E 80 00 20 */ blr .global func_8023B298 func_8023B298: /* 8023B298 00236EF8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023B29C 00236EFC 7C 08 02 A6 */ mflr r0 /* 8023B2A0 00236F00 90 01 00 14 */ stw r0, 0x14(r1) /* 8023B2A4 00236F04 93 E1 00 0C */ stw r31, 0xc(r1) /* 8023B2A8 00236F08 93 C1 00 08 */ stw r30, 8(r1) /* 8023B2AC 00236F0C 7C 9E 23 78 */ mr r30, r4 /* 8023B2B0 00236F10 80 63 00 10 */ lwz r3, 0x10(r3) /* 8023B2B4 00236F14 48 00 00 1C */ b lbl_8023B2D0 lbl_8023B2B8: /* 8023B2B8 00236F18 80 03 00 04 */ lwz r0, 4(r3) /* 8023B2BC 00236F1C 83 E3 00 10 */ lwz r31, 0x10(r3) /* 8023B2C0 00236F20 7C 00 F0 40 */ cmplw r0, r30 /* 8023B2C4 00236F24 40 82 00 08 */ bne lbl_8023B2CC /* 8023B2C8 00236F28 4B F9 F7 F1 */ bl __dl__FPv lbl_8023B2CC: /* 8023B2CC 00236F2C 7F E3 FB 78 */ mr r3, r31 lbl_8023B2D0: /* 8023B2D0 00236F30 2C 03 00 00 */ cmpwi r3, 0 /* 8023B2D4 00236F34 40 82 FF E4 */ bne lbl_8023B2B8 /* 8023B2D8 00236F38 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023B2DC 00236F3C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8023B2E0 00236F40 83 C1 00 08 */ lwz r30, 8(r1) /* 8023B2E4 00236F44 7C 08 03 A6 */ mtlr r0 /* 8023B2E8 00236F48 38 21 00 10 */ addi r1, r1, 0x10 /* 8023B2EC 00236F4C 4E 80 00 20 */ blr .global func_8023B2F0 func_8023B2F0: /* 8023B2F0 00236F50 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023B2F4 00236F54 7C 08 02 A6 */ mflr r0 /* 8023B2F8 00236F58 90 01 00 14 */ stw r0, 0x14(r1) /* 8023B2FC 00236F5C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8023B300 00236F60 80 63 00 10 */ lwz r3, 0x10(r3) /* 8023B304 00236F64 48 00 00 10 */ b lbl_8023B314 lbl_8023B308: /* 8023B308 00236F68 83 E3 00 10 */ lwz r31, 0x10(r3) /* 8023B30C 00236F6C 4B F9 F7 AD */ bl __dl__FPv /* 8023B310 00236F70 7F E3 FB 78 */ mr r3, r31 lbl_8023B314: /* 8023B314 00236F74 2C 03 00 00 */ cmpwi r3, 0 /* 8023B318 00236F78 40 82 FF F0 */ bne lbl_8023B308 /* 8023B31C 00236F7C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023B320 00236F80 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8023B324 00236F84 7C 08 03 A6 */ mtlr r0 /* 8023B328 00236F88 38 21 00 10 */ addi r1, r1, 0x10 /* 8023B32C 00236F8C 4E 80 00 20 */ blr .global func_8023B330 func_8023B330: /* 8023B330 00236F90 80 03 00 00 */ lwz r0, 0(r3) /* 8023B334 00236F94 54 85 86 3E */ rlwinm r5, r4, 0x10, 0x18, 0x1f /* 8023B338 00236F98 7C 05 00 00 */ cmpw r5, r0 /* 8023B33C 00236F9C 41 82 00 0C */ beq lbl_8023B348 /* 8023B340 00236FA0 38 60 00 00 */ li r3, 0 /* 8023B344 00236FA4 4E 80 00 20 */ blr lbl_8023B348: /* 8023B348 00236FA8 54 85 C6 3F */ rlwinm. r5, r4, 0x18, 0x18, 0x1f /* 8023B34C 00236FAC 40 82 00 0C */ bne lbl_8023B358 /* 8023B350 00236FB0 38 60 00 00 */ li r3, 0 /* 8023B354 00236FB4 4E 80 00 20 */ blr lbl_8023B358: /* 8023B358 00236FB8 54 84 06 3F */ clrlwi. r4, r4, 0x18 /* 8023B35C 00236FBC 40 82 00 0C */ bne lbl_8023B368 /* 8023B360 00236FC0 38 60 00 00 */ li r3, 0 /* 8023B364 00236FC4 4E 80 00 20 */ blr lbl_8023B368: /* 8023B368 00236FC8 80 C3 00 10 */ lwz r6, 0x10(r3) /* 8023B36C 00236FCC 48 00 00 3C */ b lbl_8023B3A8 lbl_8023B370: /* 8023B370 00236FD0 80 66 00 00 */ lwz r3, 0(r6) /* 8023B374 00236FD4 80 03 00 00 */ lwz r0, 0(r3) /* 8023B378 00236FD8 7C 05 00 00 */ cmpw r5, r0 /* 8023B37C 00236FDC 40 82 00 28 */ bne lbl_8023B3A4 /* 8023B380 00236FE0 80 66 00 04 */ lwz r3, 4(r6) /* 8023B384 00236FE4 88 03 00 04 */ lbz r0, 4(r3) /* 8023B388 00236FE8 7C 04 00 40 */ cmplw r4, r0 /* 8023B38C 00236FEC 40 82 00 18 */ bne lbl_8023B3A4 /* 8023B390 00236FF0 A0 66 00 08 */ lhz r3, 8(r6) /* 8023B394 00236FF4 7C 03 00 D0 */ neg r0, r3 /* 8023B398 00236FF8 7C 00 1B 78 */ or r0, r0, r3 /* 8023B39C 00236FFC 54 03 0F FE */ srwi r3, r0, 0x1f /* 8023B3A0 00237000 4E 80 00 20 */ blr lbl_8023B3A4: /* 8023B3A4 00237004 80 C6 00 10 */ lwz r6, 0x10(r6) lbl_8023B3A8: /* 8023B3A8 00237008 2C 06 00 00 */ cmpwi r6, 0 /* 8023B3AC 0023700C 40 82 FF C4 */ bne lbl_8023B370 /* 8023B3B0 00237010 38 60 00 00 */ li r3, 0 /* 8023B3B4 00237014 4E 80 00 20 */ blr .global func_8023B3B8 func_8023B3B8: /* 8023B3B8 00237018 80 03 00 00 */ lwz r0, 0(r3) /* 8023B3BC 0023701C 54 85 86 3E */ rlwinm r5, r4, 0x10, 0x18, 0x1f /* 8023B3C0 00237020 7C 05 00 00 */ cmpw r5, r0 /* 8023B3C4 00237024 4C 82 00 20 */ bnelr /* 8023B3C8 00237028 54 85 C6 3F */ rlwinm. r5, r4, 0x18, 0x18, 0x1f /* 8023B3CC 0023702C 4D 82 00 20 */ beqlr /* 8023B3D0 00237030 54 84 06 3F */ clrlwi. r4, r4, 0x18 /* 8023B3D4 00237034 4D 82 00 20 */ beqlr /* 8023B3D8 00237038 80 C3 00 10 */ lwz r6, 0x10(r3) /* 8023B3DC 0023703C 48 00 00 38 */ b lbl_8023B414 lbl_8023B3E0: /* 8023B3E0 00237040 80 66 00 00 */ lwz r3, 0(r6) /* 8023B3E4 00237044 80 03 00 00 */ lwz r0, 0(r3) /* 8023B3E8 00237048 7C 05 00 00 */ cmpw r5, r0 /* 8023B3EC 0023704C 40 82 00 24 */ bne lbl_8023B410 /* 8023B3F0 00237050 80 66 00 04 */ lwz r3, 4(r6) /* 8023B3F4 00237054 88 03 00 04 */ lbz r0, 4(r3) /* 8023B3F8 00237058 7C 04 00 40 */ cmplw r4, r0 /* 8023B3FC 0023705C 40 82 00 14 */ bne lbl_8023B410 /* 8023B400 00237060 A0 66 00 08 */ lhz r3, 8(r6) /* 8023B404 00237064 38 03 00 01 */ addi r0, r3, 1 /* 8023B408 00237068 B0 06 00 08 */ sth r0, 8(r6) /* 8023B40C 0023706C 4E 80 00 20 */ blr lbl_8023B410: /* 8023B410 00237070 80 C6 00 10 */ lwz r6, 0x10(r6) lbl_8023B414: /* 8023B414 00237074 2C 06 00 00 */ cmpwi r6, 0 /* 8023B418 00237078 40 82 FF C8 */ bne lbl_8023B3E0 /* 8023B41C 0023707C 4E 80 00 20 */ blr .global func_8023B420 func_8023B420: /* 8023B420 00237080 80 03 00 00 */ lwz r0, 0(r3) /* 8023B424 00237084 54 85 86 3E */ rlwinm r5, r4, 0x10, 0x18, 0x1f /* 8023B428 00237088 7C 05 00 00 */ cmpw r5, r0 /* 8023B42C 0023708C 4C 82 00 20 */ bnelr /* 8023B430 00237090 54 85 C6 3F */ rlwinm. r5, r4, 0x18, 0x18, 0x1f /* 8023B434 00237094 4D 82 00 20 */ beqlr /* 8023B438 00237098 54 84 06 3F */ clrlwi. r4, r4, 0x18 /* 8023B43C 0023709C 4D 82 00 20 */ beqlr /* 8023B440 002370A0 80 C3 00 10 */ lwz r6, 0x10(r3) /* 8023B444 002370A4 48 00 00 40 */ b lbl_8023B484 lbl_8023B448: /* 8023B448 002370A8 80 66 00 00 */ lwz r3, 0(r6) /* 8023B44C 002370AC 80 03 00 00 */ lwz r0, 0(r3) /* 8023B450 002370B0 7C 05 00 00 */ cmpw r5, r0 /* 8023B454 002370B4 40 82 00 2C */ bne lbl_8023B480 /* 8023B458 002370B8 80 66 00 04 */ lwz r3, 4(r6) /* 8023B45C 002370BC 88 03 00 04 */ lbz r0, 4(r3) /* 8023B460 002370C0 7C 04 00 40 */ cmplw r4, r0 /* 8023B464 002370C4 40 82 00 1C */ bne lbl_8023B480 /* 8023B468 002370C8 A0 66 00 08 */ lhz r3, 8(r6) /* 8023B46C 002370CC 2C 03 00 00 */ cmpwi r3, 0 /* 8023B470 002370D0 4D 82 00 20 */ beqlr /* 8023B474 002370D4 38 03 FF FF */ addi r0, r3, -1 /* 8023B478 002370D8 B0 06 00 08 */ sth r0, 8(r6) /* 8023B47C 002370DC 4E 80 00 20 */ blr lbl_8023B480: /* 8023B480 002370E0 80 C6 00 10 */ lwz r6, 0x10(r6) lbl_8023B484: /* 8023B484 002370E4 2C 06 00 00 */ cmpwi r6, 0 /* 8023B488 002370E8 40 82 FF C0 */ bne lbl_8023B448 /* 8023B48C 002370EC 4E 80 00 20 */ blr .global func_8023B490 func_8023B490: /* 8023B490 002370F0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8023B494 002370F4 7C 08 02 A6 */ mflr r0 /* 8023B498 002370F8 90 01 00 24 */ stw r0, 0x24(r1) /* 8023B49C 002370FC 39 61 00 20 */ addi r11, r1, 0x20 /* 8023B4A0 00237100 4B F8 BC 85 */ bl _savegpr_26 /* 8023B4A4 00237104 80 0D A4 74 */ lwz r0, lbl_8063F734-_SDA_BASE_(r13) /* 8023B4A8 00237108 7C 7A 1B 78 */ mr r26, r3 /* 8023B4AC 0023710C 2C 00 00 00 */ cmpwi r0, 0 /* 8023B4B0 00237110 41 82 00 D4 */ beq lbl_8023B584 /* 8023B4B4 00237114 98 8D A4 4D */ stb r4, lbl_8063F70D-_SDA_BASE_(r13) /* 8023B4B8 00237118 7C 04 03 78 */ mr r4, r0 /* 8023B4BC 0023711C 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13) /* 8023B4C0 00237120 4B FF 7E 1D */ bl func_802332DC /* 8023B4C4 00237124 83 FA 00 10 */ lwz r31, 0x10(r26) /* 8023B4C8 00237128 3B C0 00 00 */ li r30, 0 /* 8023B4CC 0023712C 3B 60 00 00 */ li r27, 0 /* 8023B4D0 00237130 48 00 00 88 */ b lbl_8023B558 lbl_8023B4D4: /* 8023B4D4 00237134 93 FA 00 14 */ stw r31, 0x14(r26) /* 8023B4D8 00237138 7F E3 FB 78 */ mr r3, r31 /* 8023B4DC 0023713C A0 03 00 08 */ lhz r0, 8(r3) /* 8023B4E0 00237140 83 FF 00 10 */ lwz r31, 0x10(r31) /* 8023B4E4 00237144 2C 00 00 00 */ cmpwi r0, 0 /* 8023B4E8 00237148 41 82 00 70 */ beq lbl_8023B558 /* 8023B4EC 0023714C 88 03 00 0A */ lbz r0, 0xa(r3) /* 8023B4F0 00237150 2C 00 00 00 */ cmpwi r0, 0 /* 8023B4F4 00237154 41 82 00 64 */ beq lbl_8023B558 /* 8023B4F8 00237158 83 A3 00 00 */ lwz r29, 0(r3) /* 8023B4FC 0023715C 3B 60 00 01 */ li r27, 1 /* 8023B500 00237160 83 83 00 04 */ lwz r28, 4(r3) /* 8023B504 00237164 7C 1D F0 40 */ cmplw r29, r30 /* 8023B508 00237168 41 82 00 38 */ beq lbl_8023B540 /* 8023B50C 0023716C 2C 1E 00 00 */ cmpwi r30, 0 /* 8023B510 00237170 41 82 00 18 */ beq lbl_8023B528 /* 8023B514 00237174 81 9E 00 10 */ lwz r12, 0x10(r30) /* 8023B518 00237178 7F C3 F3 78 */ mr r3, r30 /* 8023B51C 0023717C 81 8C 00 0C */ lwz r12, 0xc(r12) /* 8023B520 00237180 7D 89 03 A6 */ mtctr r12 /* 8023B524 00237184 4E 80 04 21 */ bctrl lbl_8023B528: /* 8023B528 00237188 81 9D 00 10 */ lwz r12, 0x10(r29) /* 8023B52C 0023718C 7F A3 EB 78 */ mr r3, r29 /* 8023B530 00237190 81 8C 00 08 */ lwz r12, 8(r12) /* 8023B534 00237194 7D 89 03 A6 */ mtctr r12 /* 8023B538 00237198 4E 80 04 21 */ bctrl /* 8023B53C 0023719C 7F BE EB 78 */ mr r30, r29 lbl_8023B540: /* 8023B540 002371A0 81 9C 00 0C */ lwz r12, 0xc(r28) /* 8023B544 002371A4 7F 83 E3 78 */ mr r3, r28 /* 8023B548 002371A8 80 8D A4 74 */ lwz r4, lbl_8063F734-_SDA_BASE_(r13) /* 8023B54C 002371AC 81 8C 00 10 */ lwz r12, 0x10(r12) /* 8023B550 002371B0 7D 89 03 A6 */ mtctr r12 /* 8023B554 002371B4 4E 80 04 21 */ bctrl lbl_8023B558: /* 8023B558 002371B8 2C 1F 00 00 */ cmpwi r31, 0 /* 8023B55C 002371BC 40 82 FF 78 */ bne lbl_8023B4D4 /* 8023B560 002371C0 38 00 00 00 */ li r0, 0 /* 8023B564 002371C4 2C 1B 00 00 */ cmpwi r27, 0 /* 8023B568 002371C8 90 1A 00 14 */ stw r0, 0x14(r26) /* 8023B56C 002371CC 41 82 00 18 */ beq lbl_8023B584 /* 8023B570 002371D0 81 9E 00 10 */ lwz r12, 0x10(r30) /* 8023B574 002371D4 7F C3 F3 78 */ mr r3, r30 /* 8023B578 002371D8 81 8C 00 0C */ lwz r12, 0xc(r12) /* 8023B57C 002371DC 7D 89 03 A6 */ mtctr r12 /* 8023B580 002371E0 4E 80 04 21 */ bctrl lbl_8023B584: /* 8023B584 002371E4 39 61 00 20 */ addi r11, r1, 0x20 /* 8023B588 002371E8 4B F8 BB E9 */ bl _restgpr_26 /* 8023B58C 002371EC 80 01 00 24 */ lwz r0, 0x24(r1) /* 8023B590 002371F0 7C 08 03 A6 */ mtlr r0 /* 8023B594 002371F4 38 21 00 20 */ addi r1, r1, 0x20 /* 8023B598 002371F8 4E 80 00 20 */ blr /* 8023B59C 002371FC 4E 80 00 20 */ blr .global func_8023B5A0 func_8023B5A0: /* 8023B5A0 00237200 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023B5A4 00237204 7C 08 02 A6 */ mflr r0 /* 8023B5A8 00237208 90 01 00 14 */ stw r0, 0x14(r1) /* 8023B5AC 0023720C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8023B5B0 00237210 7C 7F 1B 78 */ mr r31, r3 /* 8023B5B4 00237214 80 03 00 0C */ lwz r0, 0xc(r3) /* 8023B5B8 00237218 2C 00 00 00 */ cmpwi r0, 0 /* 8023B5BC 0023721C 41 82 00 5C */ beq lbl_8023B618 /* 8023B5C0 00237220 A0 03 00 06 */ lhz r0, 6(r3) /* 8023B5C4 00237224 2C 00 00 00 */ cmpwi r0, 0 /* 8023B5C8 00237228 41 82 00 08 */ beq lbl_8023B5D0 /* 8023B5CC 0023722C 48 00 00 4C */ b lbl_8023B618 lbl_8023B5D0: /* 8023B5D0 00237230 90 6D A4 70 */ stw r3, lbl_8063F730-_SDA_BASE_(r13) /* 8023B5D4 00237234 38 80 00 00 */ li r4, 0 /* 8023B5D8 00237238 80 03 00 0C */ lwz r0, 0xc(r3) /* 8023B5DC 0023723C 90 0D A4 74 */ stw r0, lbl_8063F734-_SDA_BASE_(r13) /* 8023B5E0 00237240 4B FF FE B1 */ bl func_8023B490 /* 8023B5E4 00237244 88 9F 00 04 */ lbz r4, 4(r31) /* 8023B5E8 00237248 2C 04 00 00 */ cmpwi r4, 0 /* 8023B5EC 0023724C 40 82 00 10 */ bne lbl_8023B5FC /* 8023B5F0 00237250 88 1F 00 05 */ lbz r0, 5(r31) /* 8023B5F4 00237254 2C 00 00 00 */ cmpwi r0, 0 /* 8023B5F8 00237258 41 82 00 14 */ beq lbl_8023B60C lbl_8023B5FC: /* 8023B5FC 0023725C 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13) /* 8023B600 00237260 7C 85 23 78 */ mr r5, r4 /* 8023B604 00237264 88 DF 00 05 */ lbz r6, 5(r31) /* 8023B608 00237268 4B FF 92 15 */ bl func_8023481C lbl_8023B60C: /* 8023B60C 0023726C 38 00 00 00 */ li r0, 0 /* 8023B610 00237270 90 0D A4 70 */ stw r0, lbl_8063F730-_SDA_BASE_(r13) /* 8023B614 00237274 90 0D A4 74 */ stw r0, lbl_8063F734-_SDA_BASE_(r13) lbl_8023B618: /* 8023B618 00237278 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023B61C 0023727C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8023B620 00237280 7C 08 03 A6 */ mtlr r0 /* 8023B624 00237284 38 21 00 10 */ addi r1, r1, 0x10 /* 8023B628 00237288 4E 80 00 20 */ blr .global func_8023B62C func_8023B62C: /* 8023B62C 0023728C 38 A0 00 01 */ li r5, 1 /* 8023B630 00237290 38 6D A4 60 */ addi r3, r13, lbl_8063F720-_SDA_BASE_ /* 8023B634 00237294 38 80 00 04 */ li r4, 4 /* 8023B638 00237298 38 00 00 00 */ li r0, 0 /* 8023B63C 0023729C 98 AD A4 60 */ stb r5, lbl_8063F720-_SDA_BASE_(r13) /* 8023B640 002372A0 B0 83 00 02 */ sth r4, 2(r3) /* 8023B644 002372A4 98 03 00 04 */ stb r0, 4(r3) /* 8023B648 002372A8 4E 80 00 20 */ blr