.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global func_8025B164 func_8025B164: /* 8025B164 00256DC4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8025B168 00256DC8 7C 08 02 A6 */ mflr r0 /* 8025B16C 00256DCC 3C 80 01 F3 */ lis r4, 0x01F34C7C@ha /* 8025B170 00256DD0 3C A0 80 26 */ lis r5, lbl_8025B25C@ha /* 8025B174 00256DD4 90 01 00 14 */ stw r0, 0x14(r1) /* 8025B178 00256DD8 38 84 4C 7C */ addi r4, r4, 0x01F34C7C@l /* 8025B17C 00256DDC 38 A5 B2 5C */ addi r5, r5, lbl_8025B25C@l /* 8025B180 00256DE0 93 E1 00 0C */ stw r31, 0xc(r1) /* 8025B184 00256DE4 7C 7F 1B 78 */ mr r31, r3 /* 8025B188 00256DE8 80 03 01 98 */ lwz r0, 0x198(r3) /* 8025B18C 00256DEC 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8025B190 00256DF0 2C 00 00 00 */ cmpwi r0, 0 /* 8025B194 00256DF4 41 82 00 0C */ beq lbl_8025B1A0 /* 8025B198 00256DF8 3C A0 80 26 */ lis r5, lbl_8025B368@ha /* 8025B19C 00256DFC 38 A5 B3 68 */ addi r5, r5, lbl_8025B368@l lbl_8025B1A0: /* 8025B1A0 00256E00 7F E6 FB 78 */ mr r6, r31 /* 8025B1A4 00256E04 38 E0 10 00 */ li r7, 0x1000 /* 8025B1A8 00256E08 39 00 00 0B */ li r8, 0xb /* 8025B1AC 00256E0C 39 20 00 01 */ li r9, 1 /* 8025B1B0 00256E10 4B FC 90 65 */ bl func_80224214 /* 8025B1B4 00256E14 2C 03 00 00 */ cmpwi r3, 0 /* 8025B1B8 00256E18 90 7F 02 04 */ stw r3, 0x204(r31) /* 8025B1BC 00256E1C 40 82 00 0C */ bne lbl_8025B1C8 /* 8025B1C0 00256E20 38 60 00 00 */ li r3, 0 /* 8025B1C4 00256E24 48 00 00 28 */ b lbl_8025B1EC lbl_8025B1C8: /* 8025B1C8 00256E28 38 7F 03 10 */ addi r3, r31, 0x310 /* 8025B1CC 00256E2C 38 9F 03 30 */ addi r4, r31, 0x330 /* 8025B1D0 00256E30 38 A0 00 03 */ li r5, 3 /* 8025B1D4 00256E34 48 01 3D 25 */ bl OSInitMessageQueue /* 8025B1D8 00256E38 38 7F 03 3C */ addi r3, r31, 0x33c /* 8025B1DC 00256E3C 38 9F 03 5C */ addi r4, r31, 0x35c /* 8025B1E0 00256E40 38 A0 00 03 */ li r5, 3 /* 8025B1E4 00256E44 48 01 3D 15 */ bl OSInitMessageQueue /* 8025B1E8 00256E48 38 60 00 01 */ li r3, 1 lbl_8025B1EC: /* 8025B1EC 00256E4C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8025B1F0 00256E50 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8025B1F4 00256E54 7C 08 03 A6 */ mtlr r0 /* 8025B1F8 00256E58 38 21 00 10 */ addi r1, r1, 0x10 /* 8025B1FC 00256E5C 4E 80 00 20 */ blr .global func_8025B200 func_8025B200: /* 8025B200 00256E60 80 63 02 04 */ lwz r3, 0x204(r3) /* 8025B204 00256E64 2C 03 00 00 */ cmpwi r3, 0 /* 8025B208 00256E68 4D 82 00 20 */ beqlr /* 8025B20C 00256E6C 4B FC 94 8C */ b func_80224698 /* 8025B210 00256E70 4E 80 00 20 */ blr .global func_8025B214 func_8025B214: /* 8025B214 00256E74 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8025B218 00256E78 7C 08 02 A6 */ mflr r0 /* 8025B21C 00256E7C 90 01 00 14 */ stw r0, 0x14(r1) /* 8025B220 00256E80 93 E1 00 0C */ stw r31, 0xc(r1) /* 8025B224 00256E84 7C 7F 1B 78 */ mr r31, r3 /* 8025B228 00256E88 80 03 02 04 */ lwz r0, 0x204(r3) /* 8025B22C 00256E8C 2C 00 00 00 */ cmpwi r0, 0 /* 8025B230 00256E90 41 82 00 18 */ beq lbl_8025B248 /* 8025B234 00256E94 7C 03 03 78 */ mr r3, r0 /* 8025B238 00256E98 38 80 00 00 */ li r4, 0 /* 8025B23C 00256E9C 4B FC 94 71 */ bl func_802246AC /* 8025B240 00256EA0 38 00 00 00 */ li r0, 0 /* 8025B244 00256EA4 90 1F 02 04 */ stw r0, 0x204(r31) lbl_8025B248: /* 8025B248 00256EA8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8025B24C 00256EAC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8025B250 00256EB0 7C 08 03 A6 */ mtlr r0 /* 8025B254 00256EB4 38 21 00 10 */ addi r1, r1, 0x10 /* 8025B258 00256EB8 4E 80 00 20 */ blr lbl_8025B25C: /* 8025B25C 00256EBC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8025B260 00256EC0 7C 08 02 A6 */ mflr r0 /* 8025B264 00256EC4 90 01 00 14 */ stw r0, 0x14(r1) /* 8025B268 00256EC8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8025B26C 00256ECC 7C 7F 1B 78 */ mr r31, r3 /* 8025B270 00256ED0 93 C1 00 08 */ stw r30, 8(r1) lbl_8025B274: /* 8025B274 00256ED4 80 AD A3 D8 */ lwz r5, render_context_ptr-_SDA_BASE_(r13) /* 8025B278 00256ED8 38 60 00 01 */ li r3, 1 /* 8025B27C 00256EDC 88 85 00 82 */ lbz r4, 0x82(r5) /* 8025B280 00256EE0 2C 04 00 00 */ cmpwi r4, 0 /* 8025B284 00256EE4 40 82 00 14 */ bne lbl_8025B298 /* 8025B288 00256EE8 88 05 00 83 */ lbz r0, 0x83(r5) /* 8025B28C 00256EEC 2C 00 00 00 */ cmpwi r0, 0 /* 8025B290 00256EF0 40 82 00 08 */ bne lbl_8025B298 /* 8025B294 00256EF4 38 60 00 00 */ li r3, 0 lbl_8025B298: /* 8025B298 00256EF8 2C 03 00 00 */ cmpwi r3, 0 /* 8025B29C 00256EFC 40 82 00 C0 */ bne lbl_8025B35C /* 8025B2A0 00256F00 2C 04 00 00 */ cmpwi r4, 0 /* 8025B2A4 00256F04 40 82 00 B8 */ bne lbl_8025B35C /* 8025B2A8 00256F08 88 1F 00 6B */ lbz r0, 0x6b(r31) /* 8025B2AC 00256F0C 2C 00 00 00 */ cmpwi r0, 0 /* 8025B2B0 00256F10 41 82 00 84 */ beq lbl_8025B334 /* 8025B2B4 00256F14 48 00 00 74 */ b lbl_8025B328 lbl_8025B2B8: /* 8025B2B8 00256F18 7F E3 FB 78 */ mr r3, r31 /* 8025B2BC 00256F1C 4B FF FA 6D */ bl func_8025AD28 /* 8025B2C0 00256F20 80 83 00 04 */ lwz r4, 4(r3) /* 8025B2C4 00256F24 7C 7E 1B 78 */ mr r30, r3 /* 8025B2C8 00256F28 80 1F 00 90 */ lwz r0, 0x90(r31) /* 8025B2CC 00256F2C 80 BF 00 18 */ lwz r5, 0x18(r31) /* 8025B2D0 00256F30 7C 84 02 14 */ add r4, r4, r0 /* 8025B2D4 00256F34 7C 64 2B 96 */ divwu r3, r4, r5 /* 8025B2D8 00256F38 38 05 FF FF */ addi r0, r5, -1 /* 8025B2DC 00256F3C 7C 63 29 D6 */ mullw r3, r3, r5 /* 8025B2E0 00256F40 7C 63 20 50 */ subf r3, r3, r4 /* 8025B2E4 00256F44 7C 03 00 40 */ cmplw r3, r0 /* 8025B2E8 00256F48 40 82 00 1C */ bne lbl_8025B304 /* 8025B2EC 00256F4C 88 1F 00 6E */ lbz r0, 0x6e(r31) /* 8025B2F0 00256F50 2C 00 00 00 */ cmpwi r0, 0 /* 8025B2F4 00256F54 40 82 00 10 */ bne lbl_8025B304 /* 8025B2F8 00256F58 7F E3 FB 78 */ mr r3, r31 /* 8025B2FC 00256F5C 7F C4 F3 78 */ mr r4, r30 /* 8025B300 00256F60 48 00 01 E1 */ bl func_8025B4E0 lbl_8025B304: /* 8025B304 00256F64 7F E3 FB 78 */ mr r3, r31 /* 8025B308 00256F68 7F C4 F3 78 */ mr r4, r30 /* 8025B30C 00256F6C 4B FF F9 D5 */ bl func_8025ACE0 /* 8025B310 00256F70 80 9F 00 A0 */ lwz r4, 0xa0(r31) /* 8025B314 00256F74 80 7F 00 B8 */ lwz r3, 0xb8(r31) /* 8025B318 00256F78 38 84 FF FF */ addi r4, r4, -1 /* 8025B31C 00256F7C 38 03 00 01 */ addi r0, r3, 1 /* 8025B320 00256F80 90 9F 00 A0 */ stw r4, 0xa0(r31) /* 8025B324 00256F84 90 1F 00 B8 */ stw r0, 0xb8(r31) lbl_8025B328: /* 8025B328 00256F88 80 1F 00 A0 */ lwz r0, 0xa0(r31) /* 8025B32C 00256F8C 2C 00 00 00 */ cmpwi r0, 0 /* 8025B330 00256F90 40 82 FF 88 */ bne lbl_8025B2B8 lbl_8025B334: /* 8025B334 00256F94 7F E3 FB 78 */ mr r3, r31 /* 8025B338 00256F98 4B FF F9 F1 */ bl func_8025AD28 /* 8025B33C 00256F9C 7C 7E 1B 78 */ mr r30, r3 /* 8025B340 00256FA0 7F E3 FB 78 */ mr r3, r31 /* 8025B344 00256FA4 7F C4 F3 78 */ mr r4, r30 /* 8025B348 00256FA8 48 00 01 99 */ bl func_8025B4E0 /* 8025B34C 00256FAC 90 7F 00 A0 */ stw r3, 0xa0(r31) /* 8025B350 00256FB0 7F E3 FB 78 */ mr r3, r31 /* 8025B354 00256FB4 7F C4 F3 78 */ mr r4, r30 /* 8025B358 00256FB8 4B FF F9 89 */ bl func_8025ACE0 lbl_8025B35C: /* 8025B35C 00256FBC 80 7F 02 04 */ lwz r3, 0x204(r31) /* 8025B360 00256FC0 4B FC 92 DD */ bl func_8022463C /* 8025B364 00256FC4 4B FF FF 10 */ b lbl_8025B274 lbl_8025B368: /* 8025B368 00256FC8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8025B36C 00256FCC 7C 08 02 A6 */ mflr r0 /* 8025B370 00256FD0 90 01 00 24 */ stw r0, 0x24(r1) /* 8025B374 00256FD4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8025B378 00256FD8 7C 7F 1B 78 */ mr r31, r3 /* 8025B37C 00256FDC 93 C1 00 18 */ stw r30, 0x18(r1) /* 8025B380 00256FE0 93 A1 00 14 */ stw r29, 0x14(r1) /* 8025B384 00256FE4 3B A0 00 00 */ li r29, 0 /* 8025B388 00256FE8 93 81 00 10 */ stw r28, 0x10(r1) /* 8025B38C 00256FEC 3B 80 00 00 */ li r28, 0 /* 8025B390 00256FF0 83 C3 00 8C */ lwz r30, 0x8c(r3) /* 8025B394 00256FF4 80 03 01 98 */ lwz r0, 0x198(r3) /* 8025B398 00256FF8 90 01 00 08 */ stw r0, 8(r1) lbl_8025B39C: /* 8025B39C 00256FFC 80 AD A3 D8 */ lwz r5, render_context_ptr-_SDA_BASE_(r13) /* 8025B3A0 00257000 38 60 00 01 */ li r3, 1 /* 8025B3A4 00257004 88 85 00 82 */ lbz r4, 0x82(r5) /* 8025B3A8 00257008 2C 04 00 00 */ cmpwi r4, 0 /* 8025B3AC 0025700C 40 82 00 14 */ bne lbl_8025B3C0 /* 8025B3B0 00257010 88 05 00 83 */ lbz r0, 0x83(r5) /* 8025B3B4 00257014 2C 00 00 00 */ cmpwi r0, 0 /* 8025B3B8 00257018 40 82 00 08 */ bne lbl_8025B3C0 /* 8025B3BC 0025701C 38 60 00 00 */ li r3, 0 lbl_8025B3C0: /* 8025B3C0 00257020 2C 03 00 00 */ cmpwi r3, 0 /* 8025B3C4 00257024 40 82 01 10 */ bne lbl_8025B4D4 /* 8025B3C8 00257028 2C 04 00 00 */ cmpwi r4, 0 /* 8025B3CC 0025702C 40 82 01 08 */ bne lbl_8025B4D4 /* 8025B3D0 00257030 88 1F 00 6B */ lbz r0, 0x6b(r31) /* 8025B3D4 00257034 2C 00 00 00 */ cmpwi r0, 0 /* 8025B3D8 00257038 41 82 00 80 */ beq lbl_8025B458 /* 8025B3DC 0025703C 7F 89 03 A6 */ mtctr r28 /* 8025B3E0 00257040 2C 1C 00 00 */ cmpwi r28, 0 /* 8025B3E4 00257044 41 82 00 74 */ beq lbl_8025B458 lbl_8025B3E8: /* 8025B3E8 00257048 80 1F 00 90 */ lwz r0, 0x90(r31) /* 8025B3EC 0025704C 3B 9C FF FF */ addi r28, r28, -1 /* 8025B3F0 00257050 80 DF 00 18 */ lwz r6, 0x18(r31) /* 8025B3F4 00257054 7C 9D 02 14 */ add r4, r29, r0 /* 8025B3F8 00257058 80 BF 00 B8 */ lwz r5, 0xb8(r31) /* 8025B3FC 0025705C 7C 64 33 96 */ divwu r3, r4, r6 /* 8025B400 00257060 38 06 FF FF */ addi r0, r6, -1 /* 8025B404 00257064 38 A5 00 01 */ addi r5, r5, 1 /* 8025B408 00257068 90 BF 00 B8 */ stw r5, 0xb8(r31) /* 8025B40C 0025706C 7C 63 31 D6 */ mullw r3, r3, r6 /* 8025B410 00257070 7C 63 20 50 */ subf r3, r3, r4 /* 8025B414 00257074 7C 03 00 40 */ cmplw r3, r0 /* 8025B418 00257078 40 82 00 24 */ bne lbl_8025B43C /* 8025B41C 0025707C 88 1F 00 6E */ lbz r0, 0x6e(r31) /* 8025B420 00257080 2C 00 00 00 */ cmpwi r0, 0 /* 8025B424 00257084 41 82 00 34 */ beq lbl_8025B458 /* 8025B428 00257088 80 61 00 08 */ lwz r3, 8(r1) /* 8025B42C 0025708C 80 1F 00 78 */ lwz r0, 0x78(r31) /* 8025B430 00257090 83 C3 00 00 */ lwz r30, 0(r3) /* 8025B434 00257094 90 01 00 08 */ stw r0, 8(r1) /* 8025B438 00257098 48 00 00 18 */ b lbl_8025B450 lbl_8025B43C: /* 8025B43C 0025709C 80 61 00 08 */ lwz r3, 8(r1) /* 8025B440 002570A0 80 83 00 00 */ lwz r4, 0(r3) /* 8025B444 002570A4 7C 03 F2 14 */ add r0, r3, r30 /* 8025B448 002570A8 90 01 00 08 */ stw r0, 8(r1) /* 8025B44C 002570AC 7C 9E 23 78 */ mr r30, r4 lbl_8025B450: /* 8025B450 002570B0 3B BD 00 01 */ addi r29, r29, 1 /* 8025B454 002570B4 42 00 FF 94 */ bdnz lbl_8025B3E8 lbl_8025B458: /* 8025B458 002570B8 93 A1 00 0C */ stw r29, 0xc(r1) /* 8025B45C 002570BC 7F E3 FB 78 */ mr r3, r31 /* 8025B460 002570C0 38 81 00 08 */ addi r4, r1, 8 /* 8025B464 002570C4 48 00 00 7D */ bl func_8025B4E0 /* 8025B468 002570C8 80 1F 00 90 */ lwz r0, 0x90(r31) /* 8025B46C 002570CC 7C 7C 1B 78 */ mr r28, r3 /* 8025B470 002570D0 80 BF 00 18 */ lwz r5, 0x18(r31) /* 8025B474 002570D4 7C 9D 02 14 */ add r4, r29, r0 /* 8025B478 002570D8 7C 64 2B 96 */ divwu r3, r4, r5 /* 8025B47C 002570DC 38 05 FF FF */ addi r0, r5, -1 /* 8025B480 002570E0 7C 63 29 D6 */ mullw r3, r3, r5 /* 8025B484 002570E4 7C 63 20 50 */ subf r3, r3, r4 /* 8025B488 002570E8 7C 03 00 40 */ cmplw r3, r0 /* 8025B48C 002570EC 40 82 00 30 */ bne lbl_8025B4BC /* 8025B490 002570F0 88 1F 00 6E */ lbz r0, 0x6e(r31) /* 8025B494 002570F4 2C 00 00 00 */ cmpwi r0, 0 /* 8025B498 002570F8 41 82 00 18 */ beq lbl_8025B4B0 /* 8025B49C 002570FC 80 61 00 08 */ lwz r3, 8(r1) /* 8025B4A0 00257100 80 1F 00 78 */ lwz r0, 0x78(r31) /* 8025B4A4 00257104 83 C3 00 00 */ lwz r30, 0(r3) /* 8025B4A8 00257108 90 01 00 08 */ stw r0, 8(r1) /* 8025B4AC 0025710C 48 00 00 24 */ b lbl_8025B4D0 lbl_8025B4B0: /* 8025B4B0 00257110 80 7F 02 04 */ lwz r3, 0x204(r31) /* 8025B4B4 00257114 4B FC 92 79 */ bl func_8022472C /* 8025B4B8 00257118 48 00 00 18 */ b lbl_8025B4D0 lbl_8025B4BC: /* 8025B4BC 0025711C 80 61 00 08 */ lwz r3, 8(r1) /* 8025B4C0 00257120 80 83 00 00 */ lwz r4, 0(r3) /* 8025B4C4 00257124 7C 03 F2 14 */ add r0, r3, r30 /* 8025B4C8 00257128 90 01 00 08 */ stw r0, 8(r1) /* 8025B4CC 0025712C 7C 9E 23 78 */ mr r30, r4 lbl_8025B4D0: /* 8025B4D0 00257130 3B BD 00 01 */ addi r29, r29, 1 lbl_8025B4D4: /* 8025B4D4 00257134 80 7F 02 04 */ lwz r3, 0x204(r31) /* 8025B4D8 00257138 4B FC 91 65 */ bl func_8022463C /* 8025B4DC 0025713C 4B FF FE C0 */ b lbl_8025B39C .global func_8025B4E0 func_8025B4E0: /* 8025B4E0 00257140 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8025B4E4 00257144 7C 08 02 A6 */ mflr r0 /* 8025B4E8 00257148 90 01 00 34 */ stw r0, 0x34(r1) /* 8025B4EC 0025714C 39 61 00 30 */ addi r11, r1, 0x30 /* 8025B4F0 00257150 4B F6 BC 31 */ bl _savegpr_25 /* 8025B4F4 00257154 80 A4 00 00 */ lwz r5, 0(r4) /* 8025B4F8 00257158 7C 7A 1B 78 */ mr r26, r3 /* 8025B4FC 0025715C 80 03 00 34 */ lwz r0, 0x34(r3) /* 8025B500 00257160 7C 9B 23 78 */ mr r27, r4 /* 8025B504 00257164 3B A5 00 08 */ addi r29, r5, 8 /* 8025B508 00257168 3B 20 00 00 */ li r25, 0 /* 8025B50C 0025716C 54 00 10 3A */ slwi r0, r0, 2 /* 8025B510 00257170 7F 9D 02 14 */ add r28, r29, r0 /* 8025B514 00257174 48 00 00 C9 */ bl func_8025B5DC /* 8025B518 00257178 7C 7F 1B 78 */ mr r31, r3 /* 8025B51C 0025717C 3B C0 00 00 */ li r30, 0 /* 8025B520 00257180 48 00 00 94 */ b lbl_8025B5B4 lbl_8025B524: /* 8025B524 00257184 7C 7A F2 14 */ add r3, r26, r30 /* 8025B528 00257188 88 03 00 38 */ lbz r0, 0x38(r3) /* 8025B52C 0025718C 2C 00 00 00 */ cmpwi r0, 0 /* 8025B530 00257190 41 82 00 08 */ beq lbl_8025B538 /* 8025B534 00257194 48 00 00 70 */ b lbl_8025B5A4 lbl_8025B538: /* 8025B538 00257198 80 9F 00 00 */ lwz r4, 0(r31) /* 8025B53C 0025719C 7F 83 E3 78 */ mr r3, r28 /* 8025B540 002571A0 80 BF 00 04 */ lwz r5, 4(r31) /* 8025B544 002571A4 80 DF 00 08 */ lwz r6, 8(r31) /* 8025B548 002571A8 80 FA 00 64 */ lwz r7, 0x64(r26) /* 8025B54C 002571AC 48 04 05 E1 */ bl THPVideoDecode /* 8025B550 002571B0 7C 60 07 35 */ extsh. r0, r3 /* 8025B554 002571B4 B0 7A 00 76 */ sth r3, 0x76(r26) /* 8025B558 002571B8 41 82 00 0C */ beq lbl_8025B564 /* 8025B55C 002571BC 80 7A 02 04 */ lwz r3, 0x204(r26) /* 8025B560 002571C0 4B FC 91 CD */ bl func_8022472C lbl_8025B564: /* 8025B564 002571C4 80 1B 00 04 */ lwz r0, 4(r27) /* 8025B568 002571C8 7F 43 D3 78 */ mr r3, r26 /* 8025B56C 002571CC 7F E4 FB 78 */ mr r4, r31 /* 8025B570 002571D0 90 1F 00 0C */ stw r0, 0xc(r31) /* 8025B574 002571D4 48 00 01 0D */ bl func_8025B680 /* 8025B578 002571D8 80 7A 00 C0 */ lwz r3, 0xc0(r26) /* 8025B57C 002571DC 80 BA 00 B8 */ lwz r5, 0xb8(r26) /* 8025B580 002571E0 38 C3 00 01 */ addi r6, r3, 1 /* 8025B584 002571E4 38 05 00 01 */ addi r0, r5, 1 /* 8025B588 002571E8 54 A3 0F FE */ srwi r3, r5, 0x1f /* 8025B58C 002571EC 7C 86 28 10 */ subfc r4, r6, r5 /* 8025B590 002571F0 90 1A 00 B8 */ stw r0, 0xb8(r26) /* 8025B594 002571F4 54 C4 0F FE */ srwi r4, r6, 0x1f /* 8025B598 002571F8 7C 05 30 50 */ subf r0, r5, r6 /* 8025B59C 002571FC 7C 63 21 10 */ subfe r3, r3, r4 /* 8025B5A0 00257200 7C 19 18 38 */ and r25, r0, r3 lbl_8025B5A4: /* 8025B5A4 00257204 80 1D 00 00 */ lwz r0, 0(r29) /* 8025B5A8 00257208 3B BD 00 04 */ addi r29, r29, 4 /* 8025B5AC 0025720C 3B DE 00 01 */ addi r30, r30, 1 /* 8025B5B0 00257210 7F 9C 02 14 */ add r28, r28, r0 lbl_8025B5B4: /* 8025B5B4 00257214 80 1A 00 34 */ lwz r0, 0x34(r26) /* 8025B5B8 00257218 7C 1E 00 40 */ cmplw r30, r0 /* 8025B5BC 0025721C 41 80 FF 68 */ blt lbl_8025B524 /* 8025B5C0 00257220 39 61 00 30 */ addi r11, r1, 0x30 /* 8025B5C4 00257224 7F 23 CB 78 */ mr r3, r25 /* 8025B5C8 00257228 4B F6 BB A5 */ bl _restgpr_25 /* 8025B5CC 0025722C 80 01 00 34 */ lwz r0, 0x34(r1) /* 8025B5D0 00257230 7C 08 03 A6 */ mtlr r0 /* 8025B5D4 00257234 38 21 00 30 */ addi r1, r1, 0x30 /* 8025B5D8 00257238 4E 80 00 20 */ blr .global func_8025B5DC func_8025B5DC: /* 8025B5DC 0025723C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8025B5E0 00257240 7C 08 02 A6 */ mflr r0 /* 8025B5E4 00257244 38 A0 00 01 */ li r5, 1 /* 8025B5E8 00257248 38 63 03 10 */ addi r3, r3, 0x310 /* 8025B5EC 0025724C 90 01 00 14 */ stw r0, 0x14(r1) /* 8025B5F0 00257250 38 81 00 08 */ addi r4, r1, 8 /* 8025B5F4 00257254 48 01 3A 2D */ bl OSReceiveMessage /* 8025B5F8 00257258 80 01 00 14 */ lwz r0, 0x14(r1) /* 8025B5FC 0025725C 80 61 00 08 */ lwz r3, 8(r1) /* 8025B600 00257260 7C 08 03 A6 */ mtlr r0 /* 8025B604 00257264 38 21 00 10 */ addi r1, r1, 0x10 /* 8025B608 00257268 4E 80 00 20 */ blr .global func_8025B60C func_8025B60C: /* 8025B60C 0025726C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8025B610 00257270 7C 08 02 A6 */ mflr r0 /* 8025B614 00257274 38 A0 00 00 */ li r5, 0 /* 8025B618 00257278 38 63 03 10 */ addi r3, r3, 0x310 /* 8025B61C 0025727C 90 01 00 14 */ stw r0, 0x14(r1) /* 8025B620 00257280 48 01 39 39 */ bl OSSendMessage /* 8025B624 00257284 7C 03 00 D0 */ neg r0, r3 /* 8025B628 00257288 7C 00 1B 78 */ or r0, r0, r3 /* 8025B62C 0025728C 54 03 0F FE */ srwi r3, r0, 0x1f /* 8025B630 00257290 80 01 00 14 */ lwz r0, 0x14(r1) /* 8025B634 00257294 7C 08 03 A6 */ mtlr r0 /* 8025B638 00257298 38 21 00 10 */ addi r1, r1, 0x10 /* 8025B63C 0025729C 4E 80 00 20 */ blr .global func_8025B640 func_8025B640: /* 8025B640 002572A0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8025B644 002572A4 7C 08 02 A6 */ mflr r0 /* 8025B648 002572A8 38 A0 00 00 */ li r5, 0 /* 8025B64C 002572AC 38 63 03 3C */ addi r3, r3, 0x33c /* 8025B650 002572B0 90 01 00 14 */ stw r0, 0x14(r1) /* 8025B654 002572B4 38 81 00 08 */ addi r4, r1, 8 /* 8025B658 002572B8 48 01 39 C9 */ bl OSReceiveMessage /* 8025B65C 002572BC 2C 03 00 00 */ cmpwi r3, 0 /* 8025B660 002572C0 41 82 00 0C */ beq lbl_8025B66C /* 8025B664 002572C4 80 61 00 08 */ lwz r3, 8(r1) /* 8025B668 002572C8 48 00 00 08 */ b lbl_8025B670 lbl_8025B66C: /* 8025B66C 002572CC 38 60 00 00 */ li r3, 0 lbl_8025B670: /* 8025B670 002572D0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8025B674 002572D4 7C 08 03 A6 */ mtlr r0 /* 8025B678 002572D8 38 21 00 10 */ addi r1, r1, 0x10 /* 8025B67C 002572DC 4E 80 00 20 */ blr .global func_8025B680 func_8025B680: /* 8025B680 002572E0 38 A0 00 01 */ li r5, 1 /* 8025B684 002572E4 38 63 03 3C */ addi r3, r3, 0x33c /* 8025B688 002572E8 48 01 38 D0 */ b OSSendMessage .global func_8025B68C func_8025B68C: /* 8025B68C 002572EC 38 A0 00 01 */ li r5, 1 /* 8025B690 002572F0 38 6D A6 88 */ addi r3, r13, lbl_8063F948-_SDA_BASE_ /* 8025B694 002572F4 38 80 00 04 */ li r4, 4 /* 8025B698 002572F8 38 00 00 00 */ li r0, 0 /* 8025B69C 002572FC 98 AD A6 88 */ stb r5, lbl_8063F948-_SDA_BASE_(r13) /* 8025B6A0 00257300 B0 83 00 02 */ sth r4, 2(r3) /* 8025B6A4 00257304 98 03 00 04 */ stb r0, 4(r3) /* 8025B6A8 00257308 4E 80 00 20 */ blr