.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global PackArgs PackArgs: /* 8026BB40 002677A0 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8026BB44 002677A4 7C 08 02 A6 */ mflr r0 /* 8026BB48 002677A8 90 01 00 34 */ stw r0, 0x34(r1) /* 8026BB4C 002677AC 39 61 00 30 */ addi r11, r1, 0x30 /* 8026BB50 002677B0 4B F5 B5 D1 */ bl _savegpr_25 /* 8026BB54 002677B4 7C 99 23 78 */ mr r25, r4 /* 8026BB58 002677B8 7C BD 2B 78 */ mr r29, r5 /* 8026BB5C 002677BC 7C 7E 1B 78 */ mr r30, r3 /* 8026BB60 002677C0 38 80 00 00 */ li r4, 0 /* 8026BB64 002677C4 38 A0 20 00 */ li r5, 0x2000 /* 8026BB68 002677C8 4B D9 85 9D */ bl memset /* 8026BB6C 002677CC 2C 19 00 00 */ cmpwi r25, 0 /* 8026BB70 002677D0 40 82 00 10 */ bne lbl_8026BB80 /* 8026BB74 002677D4 38 00 00 00 */ li r0, 0 /* 8026BB78 002677D8 90 1E 00 08 */ stw r0, 8(r30) /* 8026BB7C 002677DC 48 00 01 28 */ b lbl_8026BCA4 lbl_8026BB80: /* 8026BB80 002677E0 57 20 10 3A */ slwi r0, r25, 2 /* 8026BB84 002677E4 7F 3F CB 78 */ mr r31, r25 /* 8026BB88 002677E8 3B 5E 20 00 */ addi r26, r30, 0x2000 /* 8026BB8C 002677EC 7F 9D 02 14 */ add r28, r29, r0 /* 8026BB90 002677F0 48 00 00 2C */ b lbl_8026BBBC lbl_8026BB94: /* 8026BB94 002677F4 83 7C 00 00 */ lwz r27, 0(r28) /* 8026BB98 002677F8 7F 63 DB 78 */ mr r3, r27 /* 8026BB9C 002677FC 4B F5 AF C9 */ bl strlen /* 8026BBA0 00267800 38 03 00 01 */ addi r0, r3, 1 /* 8026BBA4 00267804 7F 64 DB 78 */ mr r4, r27 /* 8026BBA8 00267808 7F 40 D0 50 */ subf r26, r0, r26 /* 8026BBAC 0026780C 7F 43 D3 78 */ mr r3, r26 /* 8026BBB0 00267810 4B F6 27 21 */ bl strcpy /* 8026BBB4 00267814 7C 1E D0 50 */ subf r0, r30, r26 /* 8026BBB8 00267818 90 1C 00 00 */ stw r0, 0(r28) lbl_8026BBBC: /* 8026BBBC 0026781C 37 39 FF FF */ addic. r25, r25, -1 /* 8026BBC0 00267820 3B 9C FF FC */ addi r28, r28, -4 /* 8026BBC4 00267824 40 80 FF D0 */ bge lbl_8026BB94 /* 8026BBC8 00267828 34 7F 00 01 */ addic. r3, r31, 1 /* 8026BBCC 0026782C 7C 1E D0 50 */ subf r0, r30, r26 /* 8026BBD0 00267830 54 04 00 3A */ rlwinm r4, r0, 0, 0, 0x1d /* 8026BBD4 00267834 38 E0 00 00 */ li r7, 0 /* 8026BBD8 00267838 7C DE 22 14 */ add r6, r30, r4 /* 8026BBDC 0026783C 54 60 10 3A */ slwi r0, r3, 2 /* 8026BBE0 00267840 7C C0 30 50 */ subf r6, r0, r6 /* 8026BBE4 00267844 41 82 00 B0 */ beq lbl_8026BC94 /* 8026BBE8 00267848 28 03 00 08 */ cmplwi r3, 8 /* 8026BBEC 0026784C 38 7F FF F9 */ addi r3, r31, -7 /* 8026BBF0 00267850 40 81 00 70 */ ble lbl_8026BC60 /* 8026BBF4 00267854 38 03 00 07 */ addi r0, r3, 7 /* 8026BBF8 00267858 7F A4 EB 78 */ mr r4, r29 /* 8026BBFC 0026785C 54 00 E8 FE */ srwi r0, r0, 3 /* 8026BC00 00267860 7C C5 33 78 */ mr r5, r6 /* 8026BC04 00267864 7C 09 03 A6 */ mtctr r0 /* 8026BC08 00267868 28 03 00 00 */ cmplwi r3, 0 /* 8026BC0C 0026786C 40 81 00 54 */ ble lbl_8026BC60 lbl_8026BC10: /* 8026BC10 00267870 80 04 00 00 */ lwz r0, 0(r4) /* 8026BC14 00267874 38 E7 00 08 */ addi r7, r7, 8 /* 8026BC18 00267878 90 05 00 00 */ stw r0, 0(r5) /* 8026BC1C 0026787C 80 04 00 04 */ lwz r0, 4(r4) /* 8026BC20 00267880 90 05 00 04 */ stw r0, 4(r5) /* 8026BC24 00267884 80 04 00 08 */ lwz r0, 8(r4) /* 8026BC28 00267888 90 05 00 08 */ stw r0, 8(r5) /* 8026BC2C 0026788C 80 04 00 0C */ lwz r0, 0xc(r4) /* 8026BC30 00267890 90 05 00 0C */ stw r0, 0xc(r5) /* 8026BC34 00267894 80 04 00 10 */ lwz r0, 0x10(r4) /* 8026BC38 00267898 90 05 00 10 */ stw r0, 0x10(r5) /* 8026BC3C 0026789C 80 04 00 14 */ lwz r0, 0x14(r4) /* 8026BC40 002678A0 90 05 00 14 */ stw r0, 0x14(r5) /* 8026BC44 002678A4 80 04 00 18 */ lwz r0, 0x18(r4) /* 8026BC48 002678A8 90 05 00 18 */ stw r0, 0x18(r5) /* 8026BC4C 002678AC 80 04 00 1C */ lwz r0, 0x1c(r4) /* 8026BC50 002678B0 38 84 00 20 */ addi r4, r4, 0x20 /* 8026BC54 002678B4 90 05 00 1C */ stw r0, 0x1c(r5) /* 8026BC58 002678B8 38 A5 00 20 */ addi r5, r5, 0x20 /* 8026BC5C 002678BC 42 00 FF B4 */ bdnz lbl_8026BC10 lbl_8026BC60: /* 8026BC60 002678C0 38 7F 00 01 */ addi r3, r31, 1 /* 8026BC64 002678C4 54 E5 10 3A */ slwi r5, r7, 2 /* 8026BC68 002678C8 7C 07 18 50 */ subf r0, r7, r3 /* 8026BC6C 002678CC 7C 9D 2A 14 */ add r4, r29, r5 /* 8026BC70 002678D0 7C A6 2A 14 */ add r5, r6, r5 /* 8026BC74 002678D4 7C 09 03 A6 */ mtctr r0 /* 8026BC78 002678D8 7C 07 18 40 */ cmplw r7, r3 /* 8026BC7C 002678DC 40 80 00 18 */ bge lbl_8026BC94 lbl_8026BC80: /* 8026BC80 002678E0 80 04 00 00 */ lwz r0, 0(r4) /* 8026BC84 002678E4 38 84 00 04 */ addi r4, r4, 4 /* 8026BC88 002678E8 90 05 00 00 */ stw r0, 0(r5) /* 8026BC8C 002678EC 38 A5 00 04 */ addi r5, r5, 4 /* 8026BC90 002678F0 42 00 FF F0 */ bdnz lbl_8026BC80 lbl_8026BC94: /* 8026BC94 002678F4 38 06 FF FC */ addi r0, r6, -4 /* 8026BC98 002678F8 93 E6 FF FC */ stw r31, -4(r6) /* 8026BC9C 002678FC 7C 1E 00 50 */ subf r0, r30, r0 /* 8026BCA0 00267900 90 1E 00 08 */ stw r0, 8(r30) lbl_8026BCA4: /* 8026BCA4 00267904 39 61 00 30 */ addi r11, r1, 0x30 /* 8026BCA8 00267908 38 60 00 01 */ li r3, 1 /* 8026BCAC 0026790C 4B F5 B4 C1 */ bl _restgpr_25 /* 8026BCB0 00267910 80 01 00 34 */ lwz r0, 0x34(r1) /* 8026BCB4 00267914 7C 08 03 A6 */ mtlr r0 /* 8026BCB8 00267918 38 21 00 30 */ addi r1, r1, 0x30 /* 8026BCBC 0026791C 4E 80 00 20 */ blr .global Run Run: /* 8026BCC0 00267920 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8026BCC4 00267924 7C 08 02 A6 */ mflr r0 /* 8026BCC8 00267928 90 01 00 14 */ stw r0, 0x14(r1) /* 8026BCCC 0026792C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8026BCD0 00267930 7C 7F 1B 78 */ mr r31, r3 /* 8026BCD4 00267934 4B FF EA 99 */ bl ICFlashInvalidate /* 8026BCD8 00267938 7C 00 04 AC */ sync 0 /* 8026BCDC 0026793C 4C 00 01 2C */ isync /* 8026BCE0 00267940 7F E9 03 A6 */ mtctr r31 /* 8026BCE4 00267944 4E 80 04 20 */ bctr /* 8026BCE8 00267948 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8026BCEC 0026794C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8026BCF0 00267950 7C 08 03 A6 */ mtlr r0 /* 8026BCF4 00267954 38 21 00 10 */ addi r1, r1, 0x10 /* 8026BCF8 00267958 4E 80 00 20 */ blr .global Callback Callback: /* 8026BCFC 0026795C 38 00 00 01 */ li r0, 1 /* 8026BD00 00267960 90 0D A7 E4 */ stw r0, lbl_8063FAA4-_SDA_BASE_(r13) /* 8026BD04 00267964 4E 80 00 20 */ blr .global __OSGetExecParams __OSGetExecParams: /* 8026BD08 00267968 3C A0 80 00 */ lis r5, 0x800030F0@ha /* 8026BD0C 0026796C 80 85 30 F0 */ lwz r4, 0x800030F0@l(r5) /* 8026BD10 00267970 7C 04 28 40 */ cmplw r4, r5 /* 8026BD14 00267974 41 80 00 0C */ blt lbl_8026BD20 /* 8026BD18 00267978 38 A0 00 1C */ li r5, 0x1c /* 8026BD1C 0026797C 4B D9 82 E4 */ b memcpy lbl_8026BD20: /* 8026BD20 00267980 38 00 00 00 */ li r0, 0 /* 8026BD24 00267984 90 03 00 00 */ stw r0, 0(r3) /* 8026BD28 00267988 4E 80 00 20 */ blr .global callback callback: /* 8026BD2C 0026798C 90 6D A7 CC */ stw r3, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BD30 00267990 4E 80 00 20 */ blr .global __OSReLaunchFirmware __OSReLaunchFirmware: /* 8026BD34 00267994 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8026BD38 00267998 7C 08 02 A6 */ mflr r0 /* 8026BD3C 0026799C 90 01 00 34 */ stw r0, 0x34(r1) /* 8026BD40 002679A0 39 61 00 30 */ addi r11, r1, 0x30 /* 8026BD44 002679A4 4B F5 B3 E5 */ bl _savegpr_27 /* 8026BD48 002679A8 88 E2 A0 18 */ lbz r7, lbl_80642618-_SDA2_BASE_(r2) /* 8026BD4C 002679AC 3D 40 80 50 */ lis r10, lbl_80503D40@ha /* 8026BD50 002679B0 88 C2 A0 19 */ lbz r6, lbl_80642619-_SDA2_BASE_(r2) /* 8026BD54 002679B4 39 20 00 01 */ li r9, 1 /* 8026BD58 002679B8 39 4A 3D 40 */ addi r10, r10, lbl_80503D40@l /* 8026BD5C 002679BC 88 A2 A0 1A */ lbz r5, lbl_8064261A-_SDA2_BASE_(r2) /* 8026BD60 002679C0 88 82 A0 1B */ lbz r4, lbl_8064261B-_SDA2_BASE_(r2) /* 8026BD64 002679C4 39 00 FF FF */ li r8, -1 /* 8026BD68 002679C8 38 00 00 00 */ li r0, 0 /* 8026BD6C 002679CC 3C 60 80 27 */ lis r3, callback@ha /* 8026BD70 002679D0 91 21 00 10 */ stw r9, 0x10(r1) /* 8026BD74 002679D4 3F EA 00 01 */ addis r31, r10, 1 /* 8026BD78 002679D8 3B CA 00 00 */ addi r30, r10, 0 /* 8026BD7C 002679DC 38 63 BD 2C */ addi r3, r3, callback@l /* 8026BD80 002679E0 91 01 00 0C */ stw r8, 0xc(r1) /* 8026BD84 002679E4 98 E1 00 08 */ stb r7, 8(r1) /* 8026BD88 002679E8 98 C1 00 09 */ stb r6, 9(r1) /* 8026BD8C 002679EC 98 A1 00 0A */ stb r5, 0xa(r1) /* 8026BD90 002679F0 98 81 00 0B */ stb r4, 0xb(r1) /* 8026BD94 002679F4 90 0D A7 CC */ stw r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BD98 002679F8 48 02 1B 49 */ bl DVDLowClosePartition lbl_8026BD9C: /* 8026BD9C 002679FC 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BDA0 00267A00 2C 00 00 00 */ cmpwi r0, 0 /* 8026BDA4 00267A04 41 82 FF F8 */ beq lbl_8026BD9C /* 8026BDA8 00267A08 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BDAC 00267A0C 28 00 00 01 */ cmplwi r0, 1 /* 8026BDB0 00267A10 41 82 00 1C */ beq lbl_8026BDCC /* 8026BDB4 00267A14 3C 60 80 42 */ lis r3, lbl_80427198@ha /* 8026BDB8 00267A18 80 8D A7 CC */ lwz r4, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BDBC 00267A1C 38 63 71 98 */ addi r3, r3, lbl_80427198@l /* 8026BDC0 00267A20 4C C6 31 82 */ crclr 6 /* 8026BDC4 00267A24 4B D9 BD 01 */ bl OSReport /* 8026BDC8 00267A28 48 00 45 5D */ bl __OSReturnToMenuForError lbl_8026BDCC: /* 8026BDCC 00267A2C 38 7F BD 00 */ addi r3, r31, -17152 /* 8026BDD0 00267A30 38 00 00 00 */ li r0, 0 /* 8026BDD4 00267A34 3C C0 80 27 */ lis r6, callback@ha /* 8026BDD8 00267A38 90 6D A7 E0 */ stw r3, lbl_8063FAA0-_SDA_BASE_(r13) /* 8026BDDC 00267A3C 38 80 00 20 */ li r4, 0x20 /* 8026BDE0 00267A40 3C A0 00 01 */ lis r5, 1 /* 8026BDE4 00267A44 90 0D A7 CC */ stw r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BDE8 00267A48 38 C6 BD 2C */ addi r6, r6, callback@l /* 8026BDEC 00267A4C 48 02 1C 59 */ bl DVDLowUnencryptedRead lbl_8026BDF0: /* 8026BDF0 00267A50 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BDF4 00267A54 2C 00 00 00 */ cmpwi r0, 0 /* 8026BDF8 00267A58 41 82 FF F8 */ beq lbl_8026BDF0 /* 8026BDFC 00267A5C 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BE00 00267A60 28 00 00 01 */ cmplwi r0, 1 /* 8026BE04 00267A64 41 82 00 1C */ beq lbl_8026BE20 /* 8026BE08 00267A68 3C 60 80 42 */ lis r3, lbl_80427198@ha /* 8026BE0C 00267A6C 80 8D A7 CC */ lwz r4, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BE10 00267A70 38 63 71 98 */ addi r3, r3, lbl_80427198@l /* 8026BE14 00267A74 4C C6 31 82 */ crclr 6 /* 8026BE18 00267A78 4B D9 BC AD */ bl OSReport /* 8026BE1C 00267A7C 48 00 45 09 */ bl __OSReturnToMenuForError lbl_8026BE20: /* 8026BE20 00267A80 38 7F BD 20 */ addi r3, r31, -17120 /* 8026BE24 00267A84 38 00 00 00 */ li r0, 0 /* 8026BE28 00267A88 90 6D A7 DC */ stw r3, lbl_8063FA9C-_SDA_BASE_(r13) /* 8026BE2C 00267A8C 3C C0 80 27 */ lis r6, callback@ha /* 8026BE30 00267A90 80 AD A7 E0 */ lwz r5, lbl_8063FAA0-_SDA_BASE_(r13) /* 8026BE34 00267A94 38 C6 BD 2C */ addi r6, r6, callback@l /* 8026BE38 00267A98 90 0D A7 CC */ stw r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BE3C 00267A9C 38 80 00 20 */ li r4, 0x20 /* 8026BE40 00267AA0 80 A5 00 04 */ lwz r5, 4(r5) /* 8026BE44 00267AA4 48 02 1C 01 */ bl DVDLowUnencryptedRead lbl_8026BE48: /* 8026BE48 00267AA8 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BE4C 00267AAC 2C 00 00 00 */ cmpwi r0, 0 /* 8026BE50 00267AB0 41 82 FF F8 */ beq lbl_8026BE48 /* 8026BE54 00267AB4 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BE58 00267AB8 28 00 00 01 */ cmplwi r0, 1 /* 8026BE5C 00267ABC 41 82 00 1C */ beq lbl_8026BE78 /* 8026BE60 00267AC0 3C 60 80 42 */ lis r3, lbl_80427198@ha /* 8026BE64 00267AC4 80 8D A7 CC */ lwz r4, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BE68 00267AC8 38 63 71 98 */ addi r3, r3, lbl_80427198@l /* 8026BE6C 00267ACC 4C C6 31 82 */ crclr 6 /* 8026BE70 00267AD0 4B D9 BC 55 */ bl OSReport /* 8026BE74 00267AD4 48 00 44 B1 */ bl __OSReturnToMenuForError lbl_8026BE78: /* 8026BE78 00267AD8 38 60 00 00 */ li r3, 0 /* 8026BE7C 00267ADC 80 CD A7 DC */ lwz r6, lbl_8063FA9C-_SDA_BASE_(r13) /* 8026BE80 00267AE0 90 6D A7 D8 */ stw r3, lbl_8063FA98-_SDA_BASE_(r13) /* 8026BE84 00267AE4 38 E0 00 00 */ li r7, 0 /* 8026BE88 00267AE8 80 8D A7 E0 */ lwz r4, lbl_8063FAA0-_SDA_BASE_(r13) /* 8026BE8C 00267AEC 48 00 00 24 */ b lbl_8026BEB0 lbl_8026BE90: /* 8026BE90 00267AF0 80 06 00 04 */ lwz r0, 4(r6) /* 8026BE94 00267AF4 2C 00 00 00 */ cmpwi r0, 0 /* 8026BE98 00267AF8 40 82 00 0C */ bne lbl_8026BEA4 /* 8026BE9C 00267AFC 7C C3 33 78 */ mr r3, r6 /* 8026BEA0 00267B00 90 CD A7 D8 */ stw r6, lbl_8063FA98-_SDA_BASE_(r13) lbl_8026BEA4: /* 8026BEA4 00267B04 38 C6 00 08 */ addi r6, r6, 8 /* 8026BEA8 00267B08 38 E7 00 01 */ addi r7, r7, 1 /* 8026BEAC 00267B0C 90 CD A7 DC */ stw r6, lbl_8063FA9C-_SDA_BASE_(r13) lbl_8026BEB0: /* 8026BEB0 00267B10 80 04 00 00 */ lwz r0, 0(r4) /* 8026BEB4 00267B14 54 E5 06 3E */ clrlwi r5, r7, 0x18 /* 8026BEB8 00267B18 7C 05 00 40 */ cmplw r5, r0 /* 8026BEBC 00267B1C 41 80 FF D4 */ blt lbl_8026BE90 /* 8026BEC0 00267B20 38 00 00 00 */ li r0, 0 /* 8026BEC4 00267B24 3D 00 80 27 */ lis r8, callback@ha /* 8026BEC8 00267B28 90 0D A7 CC */ stw r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BECC 00267B2C 38 FF BD 40 */ addi r7, r31, -17088 /* 8026BED0 00267B30 39 08 BD 2C */ addi r8, r8, callback@l /* 8026BED4 00267B34 38 80 00 00 */ li r4, 0 /* 8026BED8 00267B38 80 63 00 00 */ lwz r3, 0(r3) /* 8026BEDC 00267B3C 38 A0 00 00 */ li r5, 0 /* 8026BEE0 00267B40 38 C0 00 00 */ li r6, 0 /* 8026BEE4 00267B44 48 02 17 95 */ bl DVDLowOpenPartition lbl_8026BEE8: /* 8026BEE8 00267B48 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BEEC 00267B4C 2C 00 00 00 */ cmpwi r0, 0 /* 8026BEF0 00267B50 41 82 FF F8 */ beq lbl_8026BEE8 /* 8026BEF4 00267B54 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BEF8 00267B58 28 00 00 01 */ cmplwi r0, 1 /* 8026BEFC 00267B5C 41 82 00 1C */ beq lbl_8026BF18 /* 8026BF00 00267B60 3C 60 80 42 */ lis r3, lbl_80427198@ha /* 8026BF04 00267B64 80 8D A7 CC */ lwz r4, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BF08 00267B68 38 63 71 98 */ addi r3, r3, lbl_80427198@l /* 8026BF0C 00267B6C 4C C6 31 82 */ crclr 6 /* 8026BF10 00267B70 4B D9 BB B5 */ bl OSReport /* 8026BF14 00267B74 48 00 44 11 */ bl __OSReturnToMenuForError lbl_8026BF18: /* 8026BF18 00267B78 38 00 00 00 */ li r0, 0 /* 8026BF1C 00267B7C 3C 60 80 27 */ lis r3, callback@ha /* 8026BF20 00267B80 90 0D A7 CC */ stw r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BF24 00267B84 38 63 BD 2C */ addi r3, r3, callback@l /* 8026BF28 00267B88 48 02 19 B9 */ bl DVDLowClosePartition lbl_8026BF2C: /* 8026BF2C 00267B8C 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BF30 00267B90 2C 00 00 00 */ cmpwi r0, 0 /* 8026BF34 00267B94 41 82 FF F8 */ beq lbl_8026BF2C /* 8026BF38 00267B98 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BF3C 00267B9C 28 00 00 01 */ cmplwi r0, 1 /* 8026BF40 00267BA0 41 82 00 1C */ beq lbl_8026BF5C /* 8026BF44 00267BA4 3C 60 80 42 */ lis r3, lbl_80427198@ha /* 8026BF48 00267BA8 80 8D A7 CC */ lwz r4, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026BF4C 00267BAC 38 63 71 98 */ addi r3, r3, lbl_80427198@l /* 8026BF50 00267BB0 4C C6 31 82 */ crclr 6 /* 8026BF54 00267BB4 4B D9 BB 71 */ bl OSReport /* 8026BF58 00267BB8 48 00 43 CD */ bl __OSReturnToMenuForError lbl_8026BF5C: /* 8026BF5C 00267BBC 38 BF BD 40 */ addi r5, r31, -17088 /* 8026BF60 00267BC0 3B A0 00 00 */ li r29, 0 /* 8026BF64 00267BC4 90 AD A7 D4 */ stw r5, lbl_8063FA94-_SDA_BASE_(r13) /* 8026BF68 00267BC8 38 6D 87 C0 */ addi r3, r13, lbl_8063DA80-_SDA_BASE_ /* 8026BF6C 00267BCC 83 85 01 84 */ lwz r28, 0x184(r5) /* 8026BF70 00267BD0 38 80 00 00 */ li r4, 0 /* 8026BF74 00267BD4 83 65 01 88 */ lwz r27, 0x188(r5) /* 8026BF78 00267BD8 48 03 71 E1 */ bl IOS_Open /* 8026BF7C 00267BDC 2C 03 00 00 */ cmpwi r3, 0 /* 8026BF80 00267BE0 90 61 00 0C */ stw r3, 0xc(r1) /* 8026BF84 00267BE4 40 80 00 08 */ bge lbl_8026BF8C /* 8026BF88 00267BE8 7C 7D 1B 78 */ mr r29, r3 lbl_8026BF8C: /* 8026BF8C 00267BEC 2C 1D 00 00 */ cmpwi r29, 0 /* 8026BF90 00267BF0 41 82 00 1C */ beq lbl_8026BFAC /* 8026BF94 00267BF4 3C 60 80 42 */ lis r3, lbl_80427198@ha /* 8026BF98 00267BF8 7F A4 EB 78 */ mr r4, r29 /* 8026BF9C 00267BFC 38 63 71 98 */ addi r3, r3, lbl_80427198@l /* 8026BFA0 00267C00 4C C6 31 82 */ crclr 6 /* 8026BFA4 00267C04 4B D9 BB 21 */ bl OSReport /* 8026BFA8 00267C08 48 00 74 DD */ bl __OSHotReset lbl_8026BFAC: /* 8026BFAC 00267C0C 7F 66 DB 78 */ mr r6, r27 /* 8026BFB0 00267C10 7F 85 E3 78 */ mr r5, r28 /* 8026BFB4 00267C14 38 61 00 0C */ addi r3, r1, 0xc /* 8026BFB8 00267C18 39 01 00 10 */ addi r8, r1, 0x10 /* 8026BFBC 00267C1C 38 E0 00 00 */ li r7, 0 /* 8026BFC0 00267C20 48 00 0D 01 */ bl _ES_GetTicketViews /* 8026BFC4 00267C24 80 01 00 10 */ lwz r0, 0x10(r1) /* 8026BFC8 00267C28 7C 64 1B 78 */ mr r4, r3 /* 8026BFCC 00267C2C 28 00 00 01 */ cmplwi r0, 1 /* 8026BFD0 00267C30 40 82 00 0C */ bne lbl_8026BFDC /* 8026BFD4 00267C34 2C 03 00 00 */ cmpwi r3, 0 /* 8026BFD8 00267C38 41 82 00 18 */ beq lbl_8026BFF0 lbl_8026BFDC: /* 8026BFDC 00267C3C 3C 60 80 42 */ lis r3, lbl_80427198@ha /* 8026BFE0 00267C40 38 63 71 98 */ addi r3, r3, lbl_80427198@l /* 8026BFE4 00267C44 4C C6 31 82 */ crclr 6 /* 8026BFE8 00267C48 4B D9 BA DD */ bl OSReport /* 8026BFEC 00267C4C 48 00 74 99 */ bl __OSHotReset lbl_8026BFF0: /* 8026BFF0 00267C50 7F 66 DB 78 */ mr r6, r27 /* 8026BFF4 00267C54 7F 85 E3 78 */ mr r5, r28 /* 8026BFF8 00267C58 7F C7 F3 78 */ mr r7, r30 /* 8026BFFC 00267C5C 38 61 00 0C */ addi r3, r1, 0xc /* 8026C000 00267C60 39 01 00 10 */ addi r8, r1, 0x10 /* 8026C004 00267C64 48 00 0C BD */ bl _ES_GetTicketViews /* 8026C008 00267C68 2C 03 00 00 */ cmpwi r3, 0 /* 8026C00C 00267C6C 7C 64 1B 78 */ mr r4, r3 /* 8026C010 00267C70 41 82 00 18 */ beq lbl_8026C028 /* 8026C014 00267C74 3C 60 80 42 */ lis r3, lbl_80427198@ha /* 8026C018 00267C78 38 63 71 98 */ addi r3, r3, lbl_80427198@l /* 8026C01C 00267C7C 4C C6 31 82 */ crclr 6 /* 8026C020 00267C80 4B D9 BA A5 */ bl OSReport /* 8026C024 00267C84 48 00 74 61 */ bl __OSHotReset lbl_8026C028: /* 8026C028 00267C88 7F 66 DB 78 */ mr r6, r27 /* 8026C02C 00267C8C 7F 85 E3 78 */ mr r5, r28 /* 8026C030 00267C90 7F C7 F3 78 */ mr r7, r30 /* 8026C034 00267C94 38 61 00 0C */ addi r3, r1, 0xc /* 8026C038 00267C98 48 00 0D A9 */ bl _ES_LaunchTitle /* 8026C03C 00267C9C 2C 03 00 00 */ cmpwi r3, 0 /* 8026C040 00267CA0 7C 64 1B 78 */ mr r4, r3 /* 8026C044 00267CA4 41 82 00 18 */ beq lbl_8026C05C /* 8026C048 00267CA8 3C 60 80 42 */ lis r3, lbl_80427198@ha /* 8026C04C 00267CAC 38 63 71 98 */ addi r3, r3, lbl_80427198@l /* 8026C050 00267CB0 4C C6 31 82 */ crclr 6 /* 8026C054 00267CB4 4B D9 BA 71 */ bl OSReport /* 8026C058 00267CB8 48 00 74 2D */ bl __OSHotReset lbl_8026C05C: /* 8026C05C 00267CBC 80 61 00 0C */ lwz r3, 0xc(r1) /* 8026C060 00267CC0 2C 03 00 00 */ cmpwi r3, 0 /* 8026C064 00267CC4 41 80 00 18 */ blt lbl_8026C07C /* 8026C068 00267CC8 48 03 72 D1 */ bl IOS_Close /* 8026C06C 00267CCC 2C 03 00 00 */ cmpwi r3, 0 /* 8026C070 00267CD0 40 82 00 0C */ bne lbl_8026C07C /* 8026C074 00267CD4 38 00 FF FF */ li r0, -1 /* 8026C078 00267CD8 90 01 00 0C */ stw r0, 0xc(r1) lbl_8026C07C: /* 8026C07C 00267CDC 48 02 12 11 */ bl DVDLowInit /* 8026C080 00267CE0 38 00 00 00 */ li r0, 0 /* 8026C084 00267CE4 3C 80 80 27 */ lis r4, callback@ha /* 8026C088 00267CE8 90 0D A7 CC */ stw r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C08C 00267CEC 38 7F 07 40 */ addi r3, r31, 0x740 /* 8026C090 00267CF0 38 84 BD 2C */ addi r4, r4, callback@l /* 8026C094 00267CF4 48 02 14 5D */ bl DVDLowReadDiskID lbl_8026C098: /* 8026C098 00267CF8 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C09C 00267CFC 2C 00 00 00 */ cmpwi r0, 0 /* 8026C0A0 00267D00 41 82 FF F8 */ beq lbl_8026C098 /* 8026C0A4 00267D04 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C0A8 00267D08 28 00 00 01 */ cmplwi r0, 1 /* 8026C0AC 00267D0C 41 82 00 1C */ beq lbl_8026C0C8 /* 8026C0B0 00267D10 3C 60 80 42 */ lis r3, lbl_80427198@ha /* 8026C0B4 00267D14 80 8D A7 CC */ lwz r4, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C0B8 00267D18 38 63 71 98 */ addi r3, r3, lbl_80427198@l /* 8026C0BC 00267D1C 4C C6 31 82 */ crclr 6 /* 8026C0C0 00267D20 4B D9 BA 05 */ bl OSReport /* 8026C0C4 00267D24 48 00 42 61 */ bl __OSReturnToMenuForError lbl_8026C0C8: /* 8026C0C8 00267D28 38 7F BD 00 */ addi r3, r31, -17152 /* 8026C0CC 00267D2C 38 00 00 00 */ li r0, 0 /* 8026C0D0 00267D30 3C C0 80 27 */ lis r6, callback@ha /* 8026C0D4 00267D34 90 6D A7 E0 */ stw r3, lbl_8063FAA0-_SDA_BASE_(r13) /* 8026C0D8 00267D38 38 80 00 20 */ li r4, 0x20 /* 8026C0DC 00267D3C 3C A0 00 01 */ lis r5, 1 /* 8026C0E0 00267D40 90 0D A7 CC */ stw r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C0E4 00267D44 38 C6 BD 2C */ addi r6, r6, callback@l /* 8026C0E8 00267D48 48 02 19 5D */ bl DVDLowUnencryptedRead lbl_8026C0EC: /* 8026C0EC 00267D4C 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C0F0 00267D50 2C 00 00 00 */ cmpwi r0, 0 /* 8026C0F4 00267D54 41 82 FF F8 */ beq lbl_8026C0EC /* 8026C0F8 00267D58 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C0FC 00267D5C 28 00 00 01 */ cmplwi r0, 1 /* 8026C100 00267D60 41 82 00 1C */ beq lbl_8026C11C /* 8026C104 00267D64 3C 60 80 42 */ lis r3, lbl_80427198@ha /* 8026C108 00267D68 80 8D A7 CC */ lwz r4, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C10C 00267D6C 38 63 71 98 */ addi r3, r3, lbl_80427198@l /* 8026C110 00267D70 4C C6 31 82 */ crclr 6 /* 8026C114 00267D74 4B D9 B9 B1 */ bl OSReport /* 8026C118 00267D78 48 00 42 0D */ bl __OSReturnToMenuForError lbl_8026C11C: /* 8026C11C 00267D7C 38 7F BD 20 */ addi r3, r31, -17120 /* 8026C120 00267D80 38 00 00 00 */ li r0, 0 /* 8026C124 00267D84 90 6D A7 DC */ stw r3, lbl_8063FA9C-_SDA_BASE_(r13) /* 8026C128 00267D88 3C C0 80 27 */ lis r6, callback@ha /* 8026C12C 00267D8C 80 AD A7 E0 */ lwz r5, lbl_8063FAA0-_SDA_BASE_(r13) /* 8026C130 00267D90 38 C6 BD 2C */ addi r6, r6, callback@l /* 8026C134 00267D94 90 0D A7 CC */ stw r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C138 00267D98 38 80 00 20 */ li r4, 0x20 /* 8026C13C 00267D9C 80 A5 00 04 */ lwz r5, 4(r5) /* 8026C140 00267DA0 48 02 19 05 */ bl DVDLowUnencryptedRead lbl_8026C144: /* 8026C144 00267DA4 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C148 00267DA8 2C 00 00 00 */ cmpwi r0, 0 /* 8026C14C 00267DAC 41 82 FF F8 */ beq lbl_8026C144 /* 8026C150 00267DB0 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C154 00267DB4 28 00 00 01 */ cmplwi r0, 1 /* 8026C158 00267DB8 41 82 00 1C */ beq lbl_8026C174 /* 8026C15C 00267DBC 3C 60 80 42 */ lis r3, lbl_80427198@ha /* 8026C160 00267DC0 80 8D A7 CC */ lwz r4, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C164 00267DC4 38 63 71 98 */ addi r3, r3, lbl_80427198@l /* 8026C168 00267DC8 4C C6 31 82 */ crclr 6 /* 8026C16C 00267DCC 4B D9 B9 59 */ bl OSReport /* 8026C170 00267DD0 48 00 41 B5 */ bl __OSReturnToMenuForError lbl_8026C174: /* 8026C174 00267DD4 38 60 00 00 */ li r3, 0 /* 8026C178 00267DD8 80 CD A7 DC */ lwz r6, lbl_8063FA9C-_SDA_BASE_(r13) /* 8026C17C 00267DDC 90 6D A7 D8 */ stw r3, lbl_8063FA98-_SDA_BASE_(r13) /* 8026C180 00267DE0 38 E0 00 00 */ li r7, 0 /* 8026C184 00267DE4 80 8D A7 E0 */ lwz r4, lbl_8063FAA0-_SDA_BASE_(r13) /* 8026C188 00267DE8 48 00 00 24 */ b lbl_8026C1AC lbl_8026C18C: /* 8026C18C 00267DEC 80 06 00 04 */ lwz r0, 4(r6) /* 8026C190 00267DF0 2C 00 00 00 */ cmpwi r0, 0 /* 8026C194 00267DF4 40 82 00 0C */ bne lbl_8026C1A0 /* 8026C198 00267DF8 7C C3 33 78 */ mr r3, r6 /* 8026C19C 00267DFC 90 CD A7 D8 */ stw r6, lbl_8063FA98-_SDA_BASE_(r13) lbl_8026C1A0: /* 8026C1A0 00267E00 38 C6 00 08 */ addi r6, r6, 8 /* 8026C1A4 00267E04 38 E7 00 01 */ addi r7, r7, 1 /* 8026C1A8 00267E08 90 CD A7 DC */ stw r6, lbl_8063FA9C-_SDA_BASE_(r13) lbl_8026C1AC: /* 8026C1AC 00267E0C 80 04 00 00 */ lwz r0, 0(r4) /* 8026C1B0 00267E10 54 E5 06 3E */ clrlwi r5, r7, 0x18 /* 8026C1B4 00267E14 7C 05 00 40 */ cmplw r5, r0 /* 8026C1B8 00267E18 41 80 FF D4 */ blt lbl_8026C18C /* 8026C1BC 00267E1C 38 00 00 00 */ li r0, 0 /* 8026C1C0 00267E20 3D 00 80 27 */ lis r8, callback@ha /* 8026C1C4 00267E24 90 0D A7 CC */ stw r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C1C8 00267E28 38 FF BD 40 */ addi r7, r31, -17088 /* 8026C1CC 00267E2C 39 08 BD 2C */ addi r8, r8, callback@l /* 8026C1D0 00267E30 38 80 00 00 */ li r4, 0 /* 8026C1D4 00267E34 80 63 00 00 */ lwz r3, 0(r3) /* 8026C1D8 00267E38 38 A0 00 00 */ li r5, 0 /* 8026C1DC 00267E3C 38 C0 00 00 */ li r6, 0 /* 8026C1E0 00267E40 48 02 14 99 */ bl DVDLowOpenPartition lbl_8026C1E4: /* 8026C1E4 00267E44 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C1E8 00267E48 2C 00 00 00 */ cmpwi r0, 0 /* 8026C1EC 00267E4C 41 82 FF F8 */ beq lbl_8026C1E4 /* 8026C1F0 00267E50 80 0D A7 CC */ lwz r0, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C1F4 00267E54 28 00 00 01 */ cmplwi r0, 1 /* 8026C1F8 00267E58 41 82 00 1C */ beq lbl_8026C214 /* 8026C1FC 00267E5C 3C 60 80 42 */ lis r3, lbl_80427198@ha /* 8026C200 00267E60 80 8D A7 CC */ lwz r4, lbl_8063FA8C-_SDA_BASE_(r13) /* 8026C204 00267E64 38 63 71 98 */ addi r3, r3, lbl_80427198@l /* 8026C208 00267E68 4C C6 31 82 */ crclr 6 /* 8026C20C 00267E6C 4B D9 B8 B9 */ bl OSReport /* 8026C210 00267E70 48 00 41 15 */ bl __OSReturnToMenuForError lbl_8026C214: /* 8026C214 00267E74 39 61 00 30 */ addi r11, r1, 0x30 /* 8026C218 00267E78 4B F5 AF 5D */ bl _restgpr_27 /* 8026C21C 00267E7C 80 01 00 34 */ lwz r0, 0x34(r1) /* 8026C220 00267E80 7C 08 03 A6 */ mtlr r0 /* 8026C224 00267E84 38 21 00 30 */ addi r1, r1, 0x30 /* 8026C228 00267E88 4E 80 00 20 */ blr .global __OSLaunchMenu __OSLaunchMenu: /* 8026C22C 00267E8C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8026C230 00267E90 7C 08 02 A6 */ mflr r0 /* 8026C234 00267E94 38 60 00 01 */ li r3, 1 /* 8026C238 00267E98 39 00 FF FF */ li r8, -1 /* 8026C23C 00267E9C 90 01 00 24 */ stw r0, 0x24(r1) /* 8026C240 00267EA0 38 80 00 00 */ li r4, 0 /* 8026C244 00267EA4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8026C248 00267EA8 3B E0 00 00 */ li r31, 0 /* 8026C24C 00267EAC 93 C1 00 18 */ stw r30, 0x18(r1) /* 8026C250 00267EB0 3F C0 80 50 */ lis r30, lbl_80503D40@ha /* 8026C254 00267EB4 3B DE 3D 40 */ addi r30, r30, lbl_80503D40@l /* 8026C258 00267EB8 88 E2 A0 1C */ lbz r7, lbl_8064261C-_SDA2_BASE_(r2) /* 8026C25C 00267EBC 88 C2 A0 1D */ lbz r6, lbl_8064261D-_SDA2_BASE_(r2) /* 8026C260 00267EC0 88 A2 A0 1E */ lbz r5, lbl_8064261E-_SDA2_BASE_(r2) /* 8026C264 00267EC4 88 02 A0 1F */ lbz r0, lbl_8064261F-_SDA2_BASE_(r2) /* 8026C268 00267EC8 90 61 00 10 */ stw r3, 0x10(r1) /* 8026C26C 00267ECC 38 6D 87 C0 */ addi r3, r13, lbl_8063DA80-_SDA_BASE_ /* 8026C270 00267ED0 91 01 00 0C */ stw r8, 0xc(r1) /* 8026C274 00267ED4 98 E1 00 08 */ stb r7, 8(r1) /* 8026C278 00267ED8 98 C1 00 09 */ stb r6, 9(r1) /* 8026C27C 00267EDC 98 A1 00 0A */ stb r5, 0xa(r1) /* 8026C280 00267EE0 98 01 00 0B */ stb r0, 0xb(r1) /* 8026C284 00267EE4 48 03 6E D5 */ bl IOS_Open /* 8026C288 00267EE8 2C 03 00 00 */ cmpwi r3, 0 /* 8026C28C 00267EEC 90 61 00 0C */ stw r3, 0xc(r1) /* 8026C290 00267EF0 40 80 00 08 */ bge lbl_8026C298 /* 8026C294 00267EF4 7C 7F 1B 78 */ mr r31, r3 lbl_8026C298: /* 8026C298 00267EF8 2C 1F 00 00 */ cmpwi r31, 0 /* 8026C29C 00267EFC 40 82 00 74 */ bne lbl_8026C310 /* 8026C2A0 00267F00 38 61 00 0C */ addi r3, r1, 0xc /* 8026C2A4 00267F04 39 01 00 10 */ addi r8, r1, 0x10 /* 8026C2A8 00267F08 38 C0 00 02 */ li r6, 2 /* 8026C2AC 00267F0C 38 A0 00 01 */ li r5, 1 /* 8026C2B0 00267F10 38 E0 00 00 */ li r7, 0 /* 8026C2B4 00267F14 48 00 0A 0D */ bl _ES_GetTicketViews /* 8026C2B8 00267F18 80 01 00 10 */ lwz r0, 0x10(r1) /* 8026C2BC 00267F1C 28 00 00 01 */ cmplwi r0, 1 /* 8026C2C0 00267F20 40 82 00 50 */ bne lbl_8026C310 /* 8026C2C4 00267F24 2C 03 00 00 */ cmpwi r3, 0 /* 8026C2C8 00267F28 41 82 00 08 */ beq lbl_8026C2D0 /* 8026C2CC 00267F2C 48 00 00 44 */ b lbl_8026C310 lbl_8026C2D0: /* 8026C2D0 00267F30 7F C7 F3 78 */ mr r7, r30 /* 8026C2D4 00267F34 38 61 00 0C */ addi r3, r1, 0xc /* 8026C2D8 00267F38 39 01 00 10 */ addi r8, r1, 0x10 /* 8026C2DC 00267F3C 38 C0 00 02 */ li r6, 2 /* 8026C2E0 00267F40 38 A0 00 01 */ li r5, 1 /* 8026C2E4 00267F44 48 00 09 DD */ bl _ES_GetTicketViews /* 8026C2E8 00267F48 2C 03 00 00 */ cmpwi r3, 0 /* 8026C2EC 00267F4C 40 82 00 24 */ bne lbl_8026C310 /* 8026C2F0 00267F50 7F C7 F3 78 */ mr r7, r30 /* 8026C2F4 00267F54 38 61 00 0C */ addi r3, r1, 0xc /* 8026C2F8 00267F58 38 C0 00 02 */ li r6, 2 /* 8026C2FC 00267F5C 38 A0 00 01 */ li r5, 1 /* 8026C300 00267F60 48 00 0A E1 */ bl _ES_LaunchTitle /* 8026C304 00267F64 2C 03 00 00 */ cmpwi r3, 0 /* 8026C308 00267F68 40 82 00 08 */ bne lbl_8026C310 lbl_8026C30C: /* 8026C30C 00267F6C 48 00 00 00 */ b lbl_8026C30C lbl_8026C310: /* 8026C310 00267F70 80 01 00 24 */ lwz r0, 0x24(r1) /* 8026C314 00267F74 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8026C318 00267F78 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8026C31C 00267F7C 7C 08 03 A6 */ mtlr r0 /* 8026C320 00267F80 38 21 00 20 */ addi r1, r1, 0x20 /* 8026C324 00267F84 4E 80 00 20 */ blr #below func is either __OSRelaunchTitle __OSLaunchTitle LaunchCommon OSLaunchTitlev OSLaunchTitlel or OSReturnToLastTitle .global func_8026C328 func_8026C328: /* 8026C328 00267F88 54 2B 06 FE */ clrlwi r11, r1, 0x1b /* 8026C32C 00267F8C 7C 2C 0B 78 */ mr r12, r1 /* 8026C330 00267F90 21 6B FE 60 */ subfic r11, r11, -416 /* 8026C334 00267F94 7C 21 59 6E */ stwux r1, r1, r11 /* 8026C338 00267F98 7C 08 02 A6 */ mflr r0 /* 8026C33C 00267F9C 38 60 00 01 */ li r3, 1 /* 8026C340 00267FA0 38 80 00 00 */ li r4, 0 /* 8026C344 00267FA4 90 0C 00 04 */ stw r0, 4(r12) /* 8026C348 00267FA8 38 00 FF FF */ li r0, -1 /* 8026C34C 00267FAC 93 EC FF FC */ stw r31, -4(r12) /* 8026C350 00267FB0 3B E0 00 00 */ li r31, 0 /* 8026C354 00267FB4 90 61 00 24 */ stw r3, 0x24(r1) /* 8026C358 00267FB8 38 6D 87 C0 */ addi r3, r13, lbl_8063DA80-_SDA_BASE_ /* 8026C35C 00267FBC 90 01 00 20 */ stw r0, 0x20(r1) /* 8026C360 00267FC0 48 03 6D F9 */ bl IOS_Open /* 8026C364 00267FC4 2C 03 00 00 */ cmpwi r3, 0 /* 8026C368 00267FC8 90 61 00 20 */ stw r3, 0x20(r1) /* 8026C36C 00267FCC 7C 60 1B 78 */ mr r0, r3 /* 8026C370 00267FD0 40 80 00 08 */ bge lbl_8026C378 /* 8026C374 00267FD4 7C 7F 1B 78 */ mr r31, r3 lbl_8026C378: /* 8026C378 00267FD8 2C 1F 00 00 */ cmpwi r31, 0 /* 8026C37C 00267FDC 40 82 00 E0 */ bne lbl_8026C45C /* 8026C380 00267FE0 2C 03 00 00 */ cmpwi r3, 0 /* 8026C384 00267FE4 38 E1 00 60 */ addi r7, r1, 0x60 /* 8026C388 00267FE8 38 A1 00 80 */ addi r5, r1, 0x80 /* 8026C38C 00267FEC 41 80 00 14 */ blt lbl_8026C3A0 /* 8026C390 00267FF0 38 81 00 40 */ addi r4, r1, 0x40 /* 8026C394 00267FF4 38 60 00 00 */ li r3, 0 /* 8026C398 00267FF8 7C 04 18 40 */ cmplw r4, r3 /* 8026C39C 00267FFC 40 82 00 0C */ bne lbl_8026C3A8 lbl_8026C3A0: /* 8026C3A0 00268000 38 60 FC 07 */ li r3, -1017 /* 8026C3A4 00268004 48 00 00 3C */ b lbl_8026C3E0 lbl_8026C3A8: /* 8026C3A8 00268008 38 80 00 08 */ li r4, 8 /* 8026C3AC 0026800C 90 A1 00 60 */ stw r5, 0x60(r1) /* 8026C3B0 00268010 7C 03 03 78 */ mr r3, r0 /* 8026C3B4 00268014 38 A0 00 00 */ li r5, 0 /* 8026C3B8 00268018 90 81 00 64 */ stw r4, 0x64(r1) /* 8026C3BC 0026801C 38 80 00 20 */ li r4, 0x20 /* 8026C3C0 00268020 38 C0 00 01 */ li r6, 1 /* 8026C3C4 00268024 48 03 7A 7D */ bl IOS_Ioctlv /* 8026C3C8 00268028 2C 03 00 00 */ cmpwi r3, 0 /* 8026C3CC 0026802C 40 82 00 14 */ bne lbl_8026C3E0 /* 8026C3D0 00268030 80 01 00 80 */ lwz r0, 0x80(r1) /* 8026C3D4 00268034 80 81 00 84 */ lwz r4, 0x84(r1) /* 8026C3D8 00268038 90 01 00 40 */ stw r0, 0x40(r1) /* 8026C3DC 0026803C 90 81 00 44 */ stw r4, 0x44(r1) lbl_8026C3E0: /* 8026C3E0 00268040 2C 03 00 00 */ cmpwi r3, 0 /* 8026C3E4 00268044 40 82 00 78 */ bne lbl_8026C45C /* 8026C3E8 00268048 80 A1 00 40 */ lwz r5, 0x40(r1) /* 8026C3EC 0026804C 38 61 00 20 */ addi r3, r1, 0x20 /* 8026C3F0 00268050 80 C1 00 44 */ lwz r6, 0x44(r1) /* 8026C3F4 00268054 39 01 00 24 */ addi r8, r1, 0x24 /* 8026C3F8 00268058 38 E0 00 00 */ li r7, 0 /* 8026C3FC 0026805C 48 00 08 C5 */ bl _ES_GetTicketViews /* 8026C400 00268060 2C 03 00 00 */ cmpwi r3, 0 /* 8026C404 00268064 40 82 00 58 */ bne lbl_8026C45C /* 8026C408 00268068 80 01 00 24 */ lwz r0, 0x24(r1) /* 8026C40C 0026806C 38 80 00 20 */ li r4, 0x20 /* 8026C410 00268070 1C 60 00 D8 */ mulli r3, r0, 0xd8 /* 8026C414 00268074 4B FF DD 19 */ bl OSAllocFromMEM1ArenaLo /* 8026C418 00268078 7C 7F 1B 78 */ mr r31, r3 /* 8026C41C 0026807C 80 A1 00 40 */ lwz r5, 0x40(r1) /* 8026C420 00268080 80 C1 00 44 */ lwz r6, 0x44(r1) /* 8026C424 00268084 7F E7 FB 78 */ mr r7, r31 /* 8026C428 00268088 38 61 00 20 */ addi r3, r1, 0x20 /* 8026C42C 0026808C 39 01 00 24 */ addi r8, r1, 0x24 /* 8026C430 00268090 48 00 08 91 */ bl _ES_GetTicketViews /* 8026C434 00268094 2C 03 00 00 */ cmpwi r3, 0 /* 8026C438 00268098 40 82 00 24 */ bne lbl_8026C45C /* 8026C43C 0026809C 80 A1 00 40 */ lwz r5, 0x40(r1) /* 8026C440 002680A0 7F E7 FB 78 */ mr r7, r31 /* 8026C444 002680A4 80 C1 00 44 */ lwz r6, 0x44(r1) /* 8026C448 002680A8 38 61 00 20 */ addi r3, r1, 0x20 /* 8026C44C 002680AC 48 00 09 95 */ bl _ES_LaunchTitle /* 8026C450 002680B0 2C 03 00 00 */ cmpwi r3, 0 /* 8026C454 002680B4 40 82 00 08 */ bne lbl_8026C45C lbl_8026C458: /* 8026C458 002680B8 48 00 00 00 */ b lbl_8026C458 lbl_8026C45C: /* 8026C45C 002680BC 81 41 00 00 */ lwz r10, 0(r1) /* 8026C460 002680C0 80 0A 00 04 */ lwz r0, 4(r10) /* 8026C464 002680C4 83 EA FF FC */ lwz r31, -4(r10) /* 8026C468 002680C8 7C 08 03 A6 */ mtlr r0 /* 8026C46C 002680CC 7D 41 53 78 */ mr r1, r10 /* 8026C470 002680D0 4E 80 00 20 */ blr .global __OSBootDolSimple __OSBootDolSimple: /* 8026C474 002680D4 94 21 FE 40 */ stwu r1, -0x1c0(r1) /* 8026C478 002680D8 7C 08 02 A6 */ mflr r0 /* 8026C47C 002680DC 90 01 01 C4 */ stw r0, 0x1c4(r1) /* 8026C480 002680E0 39 61 01 C0 */ addi r11, r1, 0x1c0 /* 8026C484 002680E4 4B F5 AC 99 */ bl _savegpr_24 /* 8026C488 002680E8 7C 7B 1B 78 */ mr r27, r3 /* 8026C48C 002680EC 7C 98 23 78 */ mr r24, r4 /* 8026C490 002680F0 7C BC 2B 78 */ mr r28, r5 /* 8026C494 002680F4 7C DD 33 78 */ mr r29, r6 /* 8026C498 002680F8 7C F9 3B 78 */ mr r25, r7 /* 8026C49C 002680FC 7D 1F 43 78 */ mr r31, r8 /* 8026C4A0 00268100 7D 3A 4B 78 */ mr r26, r9 /* 8026C4A4 00268104 48 00 22 B9 */ bl OSDisableInterrupts /* 8026C4A8 00268108 38 60 00 1C */ li r3, 0x1c /* 8026C4AC 0026810C 38 80 00 01 */ li r4, 1 /* 8026C4B0 00268110 4B FF DC 7D */ bl OSAllocFromMEM1ArenaLo /* 8026C4B4 00268114 38 00 00 01 */ li r0, 1 /* 8026C4B8 00268118 2C 19 00 00 */ cmpwi r25, 0 /* 8026C4BC 0026811C 90 03 00 00 */ stw r0, 0(r3) /* 8026C4C0 00268120 7C 7E 1B 78 */ mr r30, r3 /* 8026C4C4 00268124 93 03 00 04 */ stw r24, 4(r3) /* 8026C4C8 00268128 93 83 00 0C */ stw r28, 0xc(r3) /* 8026C4CC 0026812C 93 A3 00 10 */ stw r29, 0x10(r3) /* 8026C4D0 00268130 93 23 00 14 */ stw r25, 0x14(r3) /* 8026C4D4 00268134 40 82 00 20 */ bne lbl_8026C4F4 /* 8026C4D8 00268138 38 60 20 00 */ li r3, 0x2000 /* 8026C4DC 0026813C 38 80 00 01 */ li r4, 1 /* 8026C4E0 00268140 4B FF DC 4D */ bl OSAllocFromMEM1ArenaLo /* 8026C4E4 00268144 90 7E 00 18 */ stw r3, 0x18(r30) /* 8026C4E8 00268148 7F E4 FB 78 */ mr r4, r31 /* 8026C4EC 0026814C 7F 45 D3 78 */ mr r5, r26 /* 8026C4F0 00268150 4B FF F6 51 */ bl PackArgs lbl_8026C4F4: /* 8026C4F4 00268154 48 01 BD 51 */ bl DVDInit /* 8026C4F8 00268158 38 60 00 01 */ li r3, 1 /* 8026C4FC 0026815C 48 01 FA 6D */ bl DVDSetAutoInvalidation /* 8026C500 00268160 48 01 FA 79 */ bl DVDResume /* 8026C504 00268164 38 00 00 00 */ li r0, 0 /* 8026C508 00268168 3C 60 80 27 */ lis r3, Callback@ha /* 8026C50C 0026816C 90 0D A7 E4 */ stw r0, lbl_8063FAA4-_SDA_BASE_(r13) /* 8026C510 00268170 38 63 BC FC */ addi r3, r3, Callback@l /* 8026C514 00268174 48 02 01 F1 */ bl __DVDPrepareResetAsync /* 8026C518 00268178 38 60 FF F0 */ li r3, -16 /* 8026C51C 0026817C 48 00 25 D1 */ bl __OSMaskInterrupts /* 8026C520 00268180 38 60 00 10 */ li r3, 0x10 /* 8026C524 00268184 48 00 26 49 */ bl __OSUnmaskInterrupts /* 8026C528 00268188 48 00 22 49 */ bl OSEnableInterrupts lbl_8026C52C: /* 8026C52C 0026818C 80 0D A7 E4 */ lwz r0, lbl_8063FAA4-_SDA_BASE_(r13) /* 8026C530 00268190 2C 00 00 01 */ cmpwi r0, 1 /* 8026C534 00268194 40 82 FF F8 */ bne lbl_8026C52C /* 8026C538 00268198 4B FF F7 FD */ bl __OSReLaunchFirmware /* 8026C53C 0026819C 38 60 00 20 */ li r3, 0x20 /* 8026C540 002681A0 38 80 00 20 */ li r4, 0x20 /* 8026C544 002681A4 4B FF DB E9 */ bl OSAllocFromMEM1ArenaLo /* 8026C548 002681A8 80 CD A7 C8 */ lwz r6, lbl_8063FA88-_SDA_BASE_(r13) /* 8026C54C 002681AC 7C 7F 1B 78 */ mr r31, r3 /* 8026C550 002681B0 2C 06 00 00 */ cmpwi r6, 0 /* 8026C554 002681B4 41 82 00 08 */ beq lbl_8026C55C /* 8026C558 002681B8 48 00 00 A0 */ b lbl_8026C5F8 lbl_8026C55C: /* 8026C55C 002681BC 3F 40 80 00 */ lis r26, 0x800030F4@ha /* 8026C560 002681C0 80 1A 30 F4 */ lwz r0, 0x800030F4@l(r26) /* 8026C564 002681C4 2C 00 00 00 */ cmpwi r0, 0 /* 8026C568 002681C8 41 82 00 88 */ beq lbl_8026C5F0 /* 8026C56C 002681CC 38 60 00 40 */ li r3, 0x40 /* 8026C570 002681D0 38 80 00 20 */ li r4, 0x20 /* 8026C574 002681D4 4B FF DB B9 */ bl OSAllocFromMEM1ArenaLo /* 8026C578 002681D8 80 1A 30 F4 */ lwz r0, 0x30f4(r26) /* 8026C57C 002681DC 7C 7A 1B 78 */ mr r26, r3 /* 8026C580 002681E0 38 61 00 E0 */ addi r3, r1, 0xe0 /* 8026C584 002681E4 38 A0 00 40 */ li r5, 0x40 /* 8026C588 002681E8 7F 44 D3 78 */ mr r4, r26 /* 8026C58C 002681EC 7C 06 16 70 */ srawi r6, r0, 2 /* 8026C590 002681F0 38 E0 00 00 */ li r7, 0 /* 8026C594 002681F4 39 00 00 00 */ li r8, 0 /* 8026C598 002681F8 48 01 F5 DD */ bl DVDReadAbsAsyncPrio /* 8026C59C 002681FC 48 00 00 28 */ b lbl_8026C5C4 lbl_8026C5A0: /* 8026C5A0 00268200 38 61 00 E0 */ addi r3, r1, 0xe0 /* 8026C5A4 00268204 48 01 F8 61 */ bl DVDGetCommandBlockStatus /* 8026C5A8 00268208 2C 03 00 02 */ cmpwi r3, 2 /* 8026C5AC 0026820C 41 81 00 14 */ bgt lbl_8026C5C0 /* 8026C5B0 00268210 38 61 00 E0 */ addi r3, r1, 0xe0 /* 8026C5B4 00268214 48 01 F8 51 */ bl DVDGetCommandBlockStatus /* 8026C5B8 00268218 2C 03 00 00 */ cmpwi r3, 0 /* 8026C5BC 0026821C 40 80 00 08 */ bge lbl_8026C5C4 lbl_8026C5C0: /* 8026C5C0 00268220 48 00 3D 65 */ bl __OSReturnToMenuForError lbl_8026C5C4: /* 8026C5C4 00268224 38 61 00 E0 */ addi r3, r1, 0xe0 /* 8026C5C8 00268228 48 01 F8 3D */ bl DVDGetCommandBlockStatus /* 8026C5CC 0026822C 2C 03 00 00 */ cmpwi r3, 0 /* 8026C5D0 00268230 40 82 FF D0 */ bne lbl_8026C5A0 /* 8026C5D4 00268234 3C 60 80 00 */ lis r3, 0x800030F4@ha /* 8026C5D8 00268238 80 1A 00 38 */ lwz r0, 0x38(r26) /* 8026C5DC 0026823C 80 63 30 F4 */ lwz r3, 0x800030F4@l(r3) /* 8026C5E0 00268240 7C 03 02 14 */ add r0, r3, r0 /* 8026C5E4 00268244 7C 06 16 70 */ srawi r6, r0, 2 /* 8026C5E8 00268248 90 CD A7 C8 */ stw r6, lbl_8063FA88-_SDA_BASE_(r13) /* 8026C5EC 0026824C 48 00 00 0C */ b lbl_8026C5F8 lbl_8026C5F0: /* 8026C5F0 00268250 38 C0 09 10 */ li r6, 0x910 /* 8026C5F4 00268254 90 CD A7 C8 */ stw r6, lbl_8063FA88-_SDA_BASE_(r13) lbl_8026C5F8: /* 8026C5F8 00268258 7F E4 FB 78 */ mr r4, r31 /* 8026C5FC 0026825C 38 61 01 10 */ addi r3, r1, 0x110 /* 8026C600 00268260 38 A0 00 20 */ li r5, 0x20 /* 8026C604 00268264 38 E0 00 00 */ li r7, 0 /* 8026C608 00268268 39 00 00 00 */ li r8, 0 /* 8026C60C 0026826C 48 01 F5 69 */ bl DVDReadAbsAsyncPrio /* 8026C610 00268270 48 00 00 28 */ b lbl_8026C638 lbl_8026C614: /* 8026C614 00268274 38 61 01 10 */ addi r3, r1, 0x110 /* 8026C618 00268278 48 01 F7 ED */ bl DVDGetCommandBlockStatus /* 8026C61C 0026827C 2C 03 00 02 */ cmpwi r3, 2 /* 8026C620 00268280 41 81 00 14 */ bgt lbl_8026C634 /* 8026C624 00268284 38 61 01 10 */ addi r3, r1, 0x110 /* 8026C628 00268288 48 01 F7 DD */ bl DVDGetCommandBlockStatus /* 8026C62C 0026828C 2C 03 00 00 */ cmpwi r3, 0 /* 8026C630 00268290 40 80 00 08 */ bge lbl_8026C638 lbl_8026C634: /* 8026C634 00268294 48 00 3C F1 */ bl __OSReturnToMenuForError lbl_8026C638: /* 8026C638 00268298 38 61 01 10 */ addi r3, r1, 0x110 /* 8026C63C 0026829C 48 01 F7 C9 */ bl DVDGetCommandBlockStatus /* 8026C640 002682A0 2C 03 00 00 */ cmpwi r3, 0 /* 8026C644 002682A4 40 82 FF D0 */ bne lbl_8026C614 /* 8026C648 002682A8 80 CD A7 C8 */ lwz r6, lbl_8063FA88-_SDA_BASE_(r13) /* 8026C64C 002682AC 2C 06 00 00 */ cmpwi r6, 0 /* 8026C650 002682B0 41 82 00 08 */ beq lbl_8026C658 /* 8026C654 002682B4 48 00 00 A0 */ b lbl_8026C6F4 lbl_8026C658: /* 8026C658 002682B8 3F 40 80 00 */ lis r26, 0x800030F4@ha /* 8026C65C 002682BC 80 1A 30 F4 */ lwz r0, 0x800030F4@l(r26) /* 8026C660 002682C0 2C 00 00 00 */ cmpwi r0, 0 /* 8026C664 002682C4 41 82 00 88 */ beq lbl_8026C6EC /* 8026C668 002682C8 38 60 00 40 */ li r3, 0x40 /* 8026C66C 002682CC 38 80 00 20 */ li r4, 0x20 /* 8026C670 002682D0 4B FF DA BD */ bl OSAllocFromMEM1ArenaLo /* 8026C674 002682D4 80 1A 30 F4 */ lwz r0, 0x30f4(r26) /* 8026C678 002682D8 7C 7A 1B 78 */ mr r26, r3 /* 8026C67C 002682DC 38 61 01 40 */ addi r3, r1, 0x140 /* 8026C680 002682E0 38 A0 00 40 */ li r5, 0x40 /* 8026C684 002682E4 7F 44 D3 78 */ mr r4, r26 /* 8026C688 002682E8 7C 06 16 70 */ srawi r6, r0, 2 /* 8026C68C 002682EC 38 E0 00 00 */ li r7, 0 /* 8026C690 002682F0 39 00 00 00 */ li r8, 0 /* 8026C694 002682F4 48 01 F4 E1 */ bl DVDReadAbsAsyncPrio /* 8026C698 002682F8 48 00 00 28 */ b lbl_8026C6C0 lbl_8026C69C: /* 8026C69C 002682FC 38 61 01 40 */ addi r3, r1, 0x140 /* 8026C6A0 00268300 48 01 F7 65 */ bl DVDGetCommandBlockStatus /* 8026C6A4 00268304 2C 03 00 02 */ cmpwi r3, 2 /* 8026C6A8 00268308 41 81 00 14 */ bgt lbl_8026C6BC /* 8026C6AC 0026830C 38 61 01 40 */ addi r3, r1, 0x140 /* 8026C6B0 00268310 48 01 F7 55 */ bl DVDGetCommandBlockStatus /* 8026C6B4 00268314 2C 03 00 00 */ cmpwi r3, 0 /* 8026C6B8 00268318 40 80 00 08 */ bge lbl_8026C6C0 lbl_8026C6BC: /* 8026C6BC 0026831C 48 00 3C 69 */ bl __OSReturnToMenuForError lbl_8026C6C0: /* 8026C6C0 00268320 38 61 01 40 */ addi r3, r1, 0x140 /* 8026C6C4 00268324 48 01 F7 41 */ bl DVDGetCommandBlockStatus /* 8026C6C8 00268328 2C 03 00 00 */ cmpwi r3, 0 /* 8026C6CC 0026832C 40 82 FF D0 */ bne lbl_8026C69C /* 8026C6D0 00268330 3C 60 80 00 */ lis r3, 0x800030F4@ha /* 8026C6D4 00268334 80 1A 00 38 */ lwz r0, 0x38(r26) /* 8026C6D8 00268338 80 63 30 F4 */ lwz r3, 0x800030F4@l(r3) /* 8026C6DC 0026833C 7C 03 02 14 */ add r0, r3, r0 /* 8026C6E0 00268340 7C 06 16 70 */ srawi r6, r0, 2 /* 8026C6E4 00268344 90 CD A7 C8 */ stw r6, lbl_8063FA88-_SDA_BASE_(r13) /* 8026C6E8 00268348 48 00 00 0C */ b lbl_8026C6F4 lbl_8026C6EC: /* 8026C6EC 0026834C 38 C0 09 10 */ li r6, 0x910 /* 8026C6F0 00268350 90 CD A7 C8 */ stw r6, lbl_8063FA88-_SDA_BASE_(r13) lbl_8026C6F4: /* 8026C6F4 00268354 80 BF 00 14 */ lwz r5, 0x14(r31) /* 8026C6F8 00268358 38 61 01 70 */ addi r3, r1, 0x170 /* 8026C6FC 0026835C 38 C6 00 08 */ addi r6, r6, 8 /* 8026C700 00268360 3C 80 81 20 */ lis r4, 0x8120 /* 8026C704 00268364 38 05 00 1F */ addi r0, r5, 0x1f /* 8026C708 00268368 38 E0 00 00 */ li r7, 0 /* 8026C70C 0026836C 54 05 00 34 */ rlwinm r5, r0, 0, 0, 0x1a /* 8026C710 00268370 39 00 00 00 */ li r8, 0 /* 8026C714 00268374 48 01 F4 61 */ bl DVDReadAbsAsyncPrio /* 8026C718 00268378 48 00 00 28 */ b lbl_8026C740 lbl_8026C71C: /* 8026C71C 0026837C 38 61 01 70 */ addi r3, r1, 0x170 /* 8026C720 00268380 48 01 F6 E5 */ bl DVDGetCommandBlockStatus /* 8026C724 00268384 2C 03 00 02 */ cmpwi r3, 2 /* 8026C728 00268388 41 81 00 14 */ bgt lbl_8026C73C /* 8026C72C 0026838C 38 61 01 70 */ addi r3, r1, 0x170 /* 8026C730 00268390 48 01 F6 D5 */ bl DVDGetCommandBlockStatus /* 8026C734 00268394 2C 03 00 00 */ cmpwi r3, 0 /* 8026C738 00268398 40 80 00 08 */ bge lbl_8026C740 lbl_8026C73C: /* 8026C73C 0026839C 48 00 3B E9 */ bl __OSReturnToMenuForError lbl_8026C740: /* 8026C740 002683A0 38 61 01 70 */ addi r3, r1, 0x170 /* 8026C744 002683A4 48 01 F6 C1 */ bl DVDGetCommandBlockStatus /* 8026C748 002683A8 2C 03 00 00 */ cmpwi r3, 0 /* 8026C74C 002683AC 40 82 FF D0 */ bne lbl_8026C71C /* 8026C750 002683B0 80 9F 00 14 */ lwz r4, 0x14(r31) /* 8026C754 002683B4 3C 60 81 20 */ lis r3, 0x8120 /* 8026C758 002683B8 38 04 00 1F */ addi r0, r4, 0x1f /* 8026C75C 002683BC 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a /* 8026C760 002683C0 4B FF DF D9 */ bl ICInvalidateRange /* 8026C764 002683C4 3C 80 80 42 */ lis r4, lbl_804271BC@ha /* 8026C768 002683C8 7F E3 FB 78 */ mr r3, r31 /* 8026C76C 002683CC 38 84 71 BC */ addi r4, r4, lbl_804271BC@l /* 8026C770 002683D0 38 A0 00 0A */ li r5, 0xa /* 8026C774 002683D4 4B F6 1D F5 */ bl strncmp /* 8026C778 002683D8 7C 03 00 D0 */ neg r0, r3 /* 8026C77C 002683DC 7C 00 18 78 */ andc r0, r0, r3 /* 8026C780 002683E0 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f /* 8026C784 002683E4 41 82 01 F8 */ beq lbl_8026C97C /* 8026C788 002683E8 3C 1B 00 01 */ addis r0, r27, 1 /* 8026C78C 002683EC 28 00 FF FF */ cmplwi r0, 0xffff /* 8026C790 002683F0 40 82 00 C0 */ bne lbl_8026C850 /* 8026C794 002683F4 80 CD A7 C8 */ lwz r6, lbl_8063FA88-_SDA_BASE_(r13) /* 8026C798 002683F8 2C 06 00 00 */ cmpwi r6, 0 /* 8026C79C 002683FC 41 82 00 08 */ beq lbl_8026C7A4 /* 8026C7A0 00268400 48 00 00 A0 */ b lbl_8026C840 lbl_8026C7A4: /* 8026C7A4 00268404 3F 60 80 00 */ lis r27, 0x800030F4@ha /* 8026C7A8 00268408 80 1B 30 F4 */ lwz r0, 0x800030F4@l(r27) /* 8026C7AC 0026840C 2C 00 00 00 */ cmpwi r0, 0 /* 8026C7B0 00268410 41 82 00 88 */ beq lbl_8026C838 /* 8026C7B4 00268414 38 60 00 40 */ li r3, 0x40 /* 8026C7B8 00268418 38 80 00 20 */ li r4, 0x20 /* 8026C7BC 0026841C 4B FF D9 71 */ bl OSAllocFromMEM1ArenaLo /* 8026C7C0 00268420 80 1B 30 F4 */ lwz r0, 0x30f4(r27) /* 8026C7C4 00268424 7C 7A 1B 78 */ mr r26, r3 /* 8026C7C8 00268428 38 61 00 B0 */ addi r3, r1, 0xb0 /* 8026C7CC 0026842C 38 A0 00 40 */ li r5, 0x40 /* 8026C7D0 00268430 7F 44 D3 78 */ mr r4, r26 /* 8026C7D4 00268434 7C 06 16 70 */ srawi r6, r0, 2 /* 8026C7D8 00268438 38 E0 00 00 */ li r7, 0 /* 8026C7DC 0026843C 39 00 00 00 */ li r8, 0 /* 8026C7E0 00268440 48 01 F3 95 */ bl DVDReadAbsAsyncPrio /* 8026C7E4 00268444 48 00 00 28 */ b lbl_8026C80C lbl_8026C7E8: /* 8026C7E8 00268448 38 61 00 B0 */ addi r3, r1, 0xb0 /* 8026C7EC 0026844C 48 01 F6 19 */ bl DVDGetCommandBlockStatus /* 8026C7F0 00268450 2C 03 00 02 */ cmpwi r3, 2 /* 8026C7F4 00268454 41 81 00 14 */ bgt lbl_8026C808 /* 8026C7F8 00268458 38 61 00 B0 */ addi r3, r1, 0xb0 /* 8026C7FC 0026845C 48 01 F6 09 */ bl DVDGetCommandBlockStatus /* 8026C800 00268460 2C 03 00 00 */ cmpwi r3, 0 /* 8026C804 00268464 40 80 00 08 */ bge lbl_8026C80C lbl_8026C808: /* 8026C808 00268468 48 00 3B 1D */ bl __OSReturnToMenuForError lbl_8026C80C: /* 8026C80C 0026846C 38 61 00 B0 */ addi r3, r1, 0xb0 /* 8026C810 00268470 48 01 F5 F5 */ bl DVDGetCommandBlockStatus /* 8026C814 00268474 2C 03 00 00 */ cmpwi r3, 0 /* 8026C818 00268478 40 82 FF D0 */ bne lbl_8026C7E8 /* 8026C81C 0026847C 3C 60 80 00 */ lis r3, 0x800030F4@ha /* 8026C820 00268480 80 1A 00 38 */ lwz r0, 0x38(r26) /* 8026C824 00268484 80 63 30 F4 */ lwz r3, 0x800030F4@l(r3) /* 8026C828 00268488 7C 03 02 14 */ add r0, r3, r0 /* 8026C82C 0026848C 7C 06 16 70 */ srawi r6, r0, 2 /* 8026C830 00268490 90 CD A7 C8 */ stw r6, lbl_8063FA88-_SDA_BASE_(r13) /* 8026C834 00268494 48 00 00 0C */ b lbl_8026C840 lbl_8026C838: /* 8026C838 00268498 38 C0 09 10 */ li r6, 0x910 /* 8026C83C 0026849C 90 CD A7 C8 */ stw r6, lbl_8063FA88-_SDA_BASE_(r13) lbl_8026C840: /* 8026C840 002684A0 80 7F 00 14 */ lwz r3, 0x14(r31) /* 8026C844 002684A4 38 03 00 20 */ addi r0, r3, 0x20 /* 8026C848 002684A8 54 00 F0 BE */ srwi r0, r0, 2 /* 8026C84C 002684AC 7F 60 32 14 */ add r27, r0, r6 lbl_8026C850: /* 8026C850 002684B0 93 7E 00 08 */ stw r27, 8(r30) /* 8026C854 002684B4 38 61 00 08 */ addi r3, r1, 8 /* 8026C858 002684B8 38 81 00 0C */ addi r4, r1, 0xc /* 8026C85C 002684BC 38 A1 00 10 */ addi r5, r1, 0x10 /* 8026C860 002684C0 81 9F 00 10 */ lwz r12, 0x10(r31) /* 8026C864 002684C4 7D 89 03 A6 */ mtctr r12 /* 8026C868 002684C8 4E 80 04 21 */ bctrl /* 8026C86C 002684CC 38 60 00 1C */ li r3, 0x1c /* 8026C870 002684D0 38 80 00 01 */ li r4, 1 /* 8026C874 002684D4 4B FF D8 B9 */ bl OSAllocFromMEM1ArenaLo /* 8026C878 002684D8 7C 7A 1B 78 */ mr r26, r3 /* 8026C87C 002684DC 7F C4 F3 78 */ mr r4, r30 /* 8026C880 002684E0 38 A0 00 1C */ li r5, 0x1c /* 8026C884 002684E4 4B D9 77 7D */ bl memcpy /* 8026C888 002684E8 3C 80 80 00 */ lis r4, 0x800030F0@ha /* 8026C88C 002684EC 3C 60 80 00 */ lis r3, OSReport@ha /* 8026C890 002684F0 93 44 30 F0 */ stw r26, 0x800030F0@l(r4) /* 8026C894 002684F4 38 63 7A C4 */ addi r3, r3, OSReport@l /* 8026C898 002684F8 81 81 00 08 */ lwz r12, 8(r1) /* 8026C89C 002684FC 7D 89 03 A6 */ mtctr r12 /* 8026C8A0 00268500 4E 80 04 21 */ bctrl /* 8026C8A4 00268504 7F 43 D3 78 */ mr r3, r26 /* 8026C8A8 00268508 4B FF D8 7D */ bl OSSetArenaLo /* 8026C8AC 0026850C 48 00 00 60 */ b lbl_8026C90C lbl_8026C8B0: /* 8026C8B0 00268510 80 C1 00 1C */ lwz r6, 0x1c(r1) /* 8026C8B4 00268514 38 61 00 80 */ addi r3, r1, 0x80 /* 8026C8B8 00268518 80 0D AA 48 */ lwz r0, lbl_8063FD08-_SDA_BASE_(r13) /* 8026C8BC 0026851C 38 E0 00 00 */ li r7, 0 /* 8026C8C0 00268520 80 A1 00 18 */ lwz r5, 0x18(r1) /* 8026C8C4 00268524 39 00 00 00 */ li r8, 0 /* 8026C8C8 00268528 80 81 00 14 */ lwz r4, 0x14(r1) /* 8026C8CC 0026852C 7C C6 04 30 */ srw r6, r6, r0 /* 8026C8D0 00268530 48 01 F2 A5 */ bl DVDReadAbsAsyncPrio /* 8026C8D4 00268534 48 00 00 28 */ b lbl_8026C8FC lbl_8026C8D8: /* 8026C8D8 00268538 38 61 00 80 */ addi r3, r1, 0x80 /* 8026C8DC 0026853C 48 01 F5 29 */ bl DVDGetCommandBlockStatus /* 8026C8E0 00268540 2C 03 00 02 */ cmpwi r3, 2 /* 8026C8E4 00268544 41 81 00 14 */ bgt lbl_8026C8F8 /* 8026C8E8 00268548 38 61 00 80 */ addi r3, r1, 0x80 /* 8026C8EC 0026854C 48 01 F5 19 */ bl DVDGetCommandBlockStatus /* 8026C8F0 00268550 2C 03 00 00 */ cmpwi r3, 0 /* 8026C8F4 00268554 40 80 00 08 */ bge lbl_8026C8FC lbl_8026C8F8: /* 8026C8F8 00268558 48 00 3A 2D */ bl __OSReturnToMenuForError lbl_8026C8FC: /* 8026C8FC 0026855C 38 61 00 80 */ addi r3, r1, 0x80 /* 8026C900 00268560 48 01 F5 05 */ bl DVDGetCommandBlockStatus /* 8026C904 00268564 2C 03 00 00 */ cmpwi r3, 0 /* 8026C908 00268568 40 82 FF D0 */ bne lbl_8026C8D8 lbl_8026C90C: /* 8026C90C 0026856C 81 81 00 0C */ lwz r12, 0xc(r1) /* 8026C910 00268570 38 61 00 14 */ addi r3, r1, 0x14 /* 8026C914 00268574 38 81 00 18 */ addi r4, r1, 0x18 /* 8026C918 00268578 38 A1 00 1C */ addi r5, r1, 0x1c /* 8026C91C 0026857C 7D 89 03 A6 */ mtctr r12 /* 8026C920 00268580 4E 80 04 21 */ bctrl /* 8026C924 00268584 2C 03 00 00 */ cmpwi r3, 0 /* 8026C928 00268588 40 82 FF 88 */ bne lbl_8026C8B0 /* 8026C92C 0026858C 81 81 00 10 */ lwz r12, 0x10(r1) /* 8026C930 00268590 7D 89 03 A6 */ mtctr r12 /* 8026C934 00268594 4E 80 04 21 */ bctrl /* 8026C938 00268598 7C 7A 1B 78 */ mr r26, r3 /* 8026C93C 0026859C 38 60 00 1C */ li r3, 0x1c /* 8026C940 002685A0 38 80 00 01 */ li r4, 1 /* 8026C944 002685A4 4B FF D7 E9 */ bl OSAllocFromMEM1ArenaLo /* 8026C948 002685A8 7C 7B 1B 78 */ mr r27, r3 /* 8026C94C 002685AC 7F C4 F3 78 */ mr r4, r30 /* 8026C950 002685B0 38 A0 00 1C */ li r5, 0x1c /* 8026C954 002685B4 4B D9 76 AD */ bl memcpy /* 8026C958 002685B8 3C 60 80 00 */ lis r3, 0x800030F0@ha /* 8026C95C 002685BC 38 00 00 07 */ li r0, 7 /* 8026C960 002685C0 93 63 30 F0 */ stw r27, 0x800030F0@l(r3) /* 8026C964 002685C4 3C 60 CC 00 */ lis r3, 0xCC003024@ha /* 8026C968 002685C8 90 03 30 24 */ stw r0, 0xCC003024@l(r3) /* 8026C96C 002685CC 48 00 1D F1 */ bl OSDisableInterrupts /* 8026C970 002685D0 7F 43 D3 78 */ mr r3, r26 /* 8026C974 002685D4 4B FF F3 4D */ bl Run /* 8026C978 002685D8 48 00 01 50 */ b lbl_8026CAC8 lbl_8026C97C: /* 8026C97C 002685DC 3C 60 81 30 */ lis r3, 0x812FDFF0@ha /* 8026C980 002685E0 80 CD A7 C8 */ lwz r6, lbl_8063FA88-_SDA_BASE_(r13) /* 8026C984 002685E4 93 83 DF F0 */ stw r28, 0x812FDFF0@l(r3) /* 8026C988 002685E8 38 00 00 01 */ li r0, 1 /* 8026C98C 002685EC 2C 06 00 00 */ cmpwi r6, 0 /* 8026C990 002685F0 3F 60 80 00 */ lis r27, 0x800030E2@ha /* 8026C994 002685F4 93 A3 DF EC */ stw r29, -0x2014(r3) /* 8026C998 002685F8 98 1B 30 E2 */ stb r0, 0x800030E2@l(r27) /* 8026C99C 002685FC 41 82 00 08 */ beq lbl_8026C9A4 /* 8026C9A0 00268600 48 00 00 9C */ b lbl_8026CA3C lbl_8026C9A4: /* 8026C9A4 00268604 80 1B 30 F4 */ lwz r0, 0x30f4(r27) /* 8026C9A8 00268608 2C 00 00 00 */ cmpwi r0, 0 /* 8026C9AC 0026860C 41 82 00 88 */ beq lbl_8026CA34 /* 8026C9B0 00268610 38 60 00 40 */ li r3, 0x40 /* 8026C9B4 00268614 38 80 00 20 */ li r4, 0x20 /* 8026C9B8 00268618 4B FF D7 75 */ bl OSAllocFromMEM1ArenaLo /* 8026C9BC 0026861C 80 1B 30 F4 */ lwz r0, 0x30f4(r27) /* 8026C9C0 00268620 7C 7A 1B 78 */ mr r26, r3 /* 8026C9C4 00268624 38 61 00 50 */ addi r3, r1, 0x50 /* 8026C9C8 00268628 38 A0 00 40 */ li r5, 0x40 /* 8026C9CC 0026862C 7F 44 D3 78 */ mr r4, r26 /* 8026C9D0 00268630 7C 06 16 70 */ srawi r6, r0, 2 /* 8026C9D4 00268634 38 E0 00 00 */ li r7, 0 /* 8026C9D8 00268638 39 00 00 00 */ li r8, 0 /* 8026C9DC 0026863C 48 01 F1 99 */ bl DVDReadAbsAsyncPrio /* 8026C9E0 00268640 48 00 00 28 */ b lbl_8026CA08 lbl_8026C9E4: /* 8026C9E4 00268644 38 61 00 50 */ addi r3, r1, 0x50 /* 8026C9E8 00268648 48 01 F4 1D */ bl DVDGetCommandBlockStatus /* 8026C9EC 0026864C 2C 03 00 02 */ cmpwi r3, 2 /* 8026C9F0 00268650 41 81 00 14 */ bgt lbl_8026CA04 /* 8026C9F4 00268654 38 61 00 50 */ addi r3, r1, 0x50 /* 8026C9F8 00268658 48 01 F4 0D */ bl DVDGetCommandBlockStatus /* 8026C9FC 0026865C 2C 03 00 00 */ cmpwi r3, 0 /* 8026CA00 00268660 40 80 00 08 */ bge lbl_8026CA08 lbl_8026CA04: /* 8026CA04 00268664 48 00 39 21 */ bl __OSReturnToMenuForError lbl_8026CA08: /* 8026CA08 00268668 38 61 00 50 */ addi r3, r1, 0x50 /* 8026CA0C 0026866C 48 01 F3 F9 */ bl DVDGetCommandBlockStatus /* 8026CA10 00268670 2C 03 00 00 */ cmpwi r3, 0 /* 8026CA14 00268674 40 82 FF D0 */ bne lbl_8026C9E4 /* 8026CA18 00268678 3C 60 80 00 */ lis r3, 0x800030F4@ha /* 8026CA1C 0026867C 80 1A 00 38 */ lwz r0, 0x38(r26) /* 8026CA20 00268680 80 63 30 F4 */ lwz r3, 0x800030F4@l(r3) /* 8026CA24 00268684 7C 03 02 14 */ add r0, r3, r0 /* 8026CA28 00268688 7C 06 16 70 */ srawi r6, r0, 2 /* 8026CA2C 0026868C 90 CD A7 C8 */ stw r6, lbl_8063FA88-_SDA_BASE_(r13) /* 8026CA30 00268690 48 00 00 0C */ b lbl_8026CA3C lbl_8026CA34: /* 8026CA34 00268694 38 C0 09 10 */ li r6, 0x910 /* 8026CA38 00268698 90 CD A7 C8 */ stw r6, lbl_8063FA88-_SDA_BASE_(r13) lbl_8026CA3C: /* 8026CA3C 0026869C 80 FF 00 14 */ lwz r7, 0x14(r31) /* 8026CA40 002686A0 38 61 00 20 */ addi r3, r1, 0x20 /* 8026CA44 002686A4 80 BF 00 18 */ lwz r5, 0x18(r31) /* 8026CA48 002686A8 3C 80 81 33 */ lis r4, 0x8133 /* 8026CA4C 002686AC 38 07 00 20 */ addi r0, r7, 0x20 /* 8026CA50 002686B0 38 E0 00 00 */ li r7, 0 /* 8026CA54 002686B4 54 08 F0 BE */ srwi r8, r0, 2 /* 8026CA58 002686B8 38 05 00 1F */ addi r0, r5, 0x1f /* 8026CA5C 002686BC 7C C8 32 14 */ add r6, r8, r6 /* 8026CA60 002686C0 39 00 00 00 */ li r8, 0 /* 8026CA64 002686C4 54 05 00 34 */ rlwinm r5, r0, 0, 0, 0x1a /* 8026CA68 002686C8 48 01 F1 0D */ bl DVDReadAbsAsyncPrio /* 8026CA6C 002686CC 48 00 00 28 */ b lbl_8026CA94 lbl_8026CA70: /* 8026CA70 002686D0 38 61 00 20 */ addi r3, r1, 0x20 /* 8026CA74 002686D4 48 01 F3 91 */ bl DVDGetCommandBlockStatus /* 8026CA78 002686D8 2C 03 00 02 */ cmpwi r3, 2 /* 8026CA7C 002686DC 41 81 00 14 */ bgt lbl_8026CA90 /* 8026CA80 002686E0 38 61 00 20 */ addi r3, r1, 0x20 /* 8026CA84 002686E4 48 01 F3 81 */ bl DVDGetCommandBlockStatus /* 8026CA88 002686E8 2C 03 00 00 */ cmpwi r3, 0 /* 8026CA8C 002686EC 40 80 00 08 */ bge lbl_8026CA94 lbl_8026CA90: /* 8026CA90 002686F0 48 00 38 95 */ bl __OSReturnToMenuForError lbl_8026CA94: /* 8026CA94 002686F4 38 61 00 20 */ addi r3, r1, 0x20 /* 8026CA98 002686F8 48 01 F3 6D */ bl DVDGetCommandBlockStatus /* 8026CA9C 002686FC 2C 03 00 00 */ cmpwi r3, 0 /* 8026CAA0 00268700 40 82 FF D0 */ bne lbl_8026CA70 /* 8026CAA4 00268704 80 9F 00 18 */ lwz r4, 0x18(r31) /* 8026CAA8 00268708 3C 60 81 33 */ lis r3, 0x8133 /* 8026CAAC 0026870C 38 04 00 1F */ addi r0, r4, 0x1f /* 8026CAB0 00268710 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a /* 8026CAB4 00268714 4B FF DC 85 */ bl ICInvalidateRange /* 8026CAB8 00268718 48 00 1C A5 */ bl OSDisableInterrupts /* 8026CABC 0026871C 4B FF DC B1 */ bl ICFlashInvalidate /* 8026CAC0 00268720 3C 60 81 33 */ lis r3, 0x8133 /* 8026CAC4 00268724 4B FF F1 FD */ bl Run lbl_8026CAC8: /* 8026CAC8 00268728 39 61 01 C0 */ addi r11, r1, 0x1c0 /* 8026CACC 0026872C 4B F5 A6 9D */ bl _restgpr_24 /* 8026CAD0 00268730 80 01 01 C4 */ lwz r0, 0x1c4(r1) /* 8026CAD4 00268734 7C 08 03 A6 */ mtlr r0 /* 8026CAD8 00268738 38 21 01 C0 */ addi r1, r1, 0x1c0 /* 8026CADC 0026873C 4E 80 00 20 */ blr .global __OSBootDol __OSBootDol: /* 8026CAE0 00268740 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8026CAE4 00268744 7C 08 02 A6 */ mflr r0 /* 8026CAE8 00268748 90 01 00 44 */ stw r0, 0x44(r1) /* 8026CAEC 0026874C 93 E1 00 3C */ stw r31, 0x3c(r1) /* 8026CAF0 00268750 7C 7F 1B 78 */ mr r31, r3 /* 8026CAF4 00268754 38 61 00 0C */ addi r3, r1, 0xc /* 8026CAF8 00268758 93 C1 00 38 */ stw r30, 0x38(r1) /* 8026CAFC 0026875C 7C BE 2B 78 */ mr r30, r5 /* 8026CB00 00268760 93 A1 00 34 */ stw r29, 0x34(r1) /* 8026CB04 00268764 7C 9D 23 78 */ mr r29, r4 /* 8026CB08 00268768 38 81 00 08 */ addi r4, r1, 8 /* 8026CB0C 0026876C 48 00 31 71 */ bl OSGetSaveRegion /* 8026CB10 00268770 7F E5 FB 78 */ mr r5, r31 /* 8026CB14 00268774 38 61 00 10 */ addi r3, r1, 0x10 /* 8026CB18 00268778 38 8D 87 C8 */ addi r4, r13, lbl_8063DA88-_SDA_BASE_ /* 8026CB1C 0026877C 4C C6 31 82 */ crclr 6 /* 8026CB20 00268780 4B F5 FF DD */ bl sprintf /* 8026CB24 00268784 2C 1E 00 00 */ cmpwi r30, 0 /* 8026CB28 00268788 3B E0 00 00 */ li r31, 0 /* 8026CB2C 0026878C 41 82 00 20 */ beq lbl_8026CB4C /* 8026CB30 00268790 7F C3 F3 78 */ mr r3, r30 /* 8026CB34 00268794 48 00 00 0C */ b lbl_8026CB40 lbl_8026CB38: /* 8026CB38 00268798 38 63 00 04 */ addi r3, r3, 4 /* 8026CB3C 0026879C 3B FF 00 01 */ addi r31, r31, 1 lbl_8026CB40: /* 8026CB40 002687A0 80 03 00 00 */ lwz r0, 0(r3) /* 8026CB44 002687A4 2C 00 00 00 */ cmpwi r0, 0 /* 8026CB48 002687A8 40 82 FF F0 */ bne lbl_8026CB38 lbl_8026CB4C: /* 8026CB4C 002687AC 38 1F 00 02 */ addi r0, r31, 2 /* 8026CB50 002687B0 38 80 00 01 */ li r4, 1 /* 8026CB54 002687B4 54 03 10 3A */ slwi r3, r0, 2 /* 8026CB58 002687B8 4B FF D5 D5 */ bl OSAllocFromMEM1ArenaLo /* 8026CB5C 002687BC 38 DF 00 01 */ addi r6, r31, 1 /* 8026CB60 002687C0 38 01 00 10 */ addi r0, r1, 0x10 /* 8026CB64 002687C4 2C 86 00 01 */ cmpwi cr1, r6, 1 /* 8026CB68 002687C8 90 03 00 00 */ stw r0, 0(r3) /* 8026CB6C 002687CC 38 80 00 01 */ li r4, 1 /* 8026CB70 002687D0 40 85 01 14 */ ble cr1, lbl_8026CC84 /* 8026CB74 002687D4 2C 1F 00 08 */ cmpwi r31, 8 /* 8026CB78 002687D8 38 FF FF F9 */ addi r7, r31, -7 /* 8026CB7C 002687DC 40 81 00 D4 */ ble lbl_8026CC50 /* 8026CB80 002687E0 39 00 00 00 */ li r8, 0 /* 8026CB84 002687E4 39 20 00 00 */ li r9, 0 /* 8026CB88 002687E8 41 84 00 18 */ blt cr1, lbl_8026CBA0 /* 8026CB8C 002687EC 3C A0 80 00 */ lis r5, 0x7FFFFFFE@ha /* 8026CB90 002687F0 38 05 FF FE */ addi r0, r5, 0x7FFFFFFE@l /* 8026CB94 002687F4 7C 06 00 00 */ cmpw r6, r0 /* 8026CB98 002687F8 41 81 00 08 */ bgt lbl_8026CBA0 /* 8026CB9C 002687FC 39 20 00 01 */ li r9, 1 lbl_8026CBA0: /* 8026CBA0 00268800 2C 09 00 00 */ cmpwi r9, 0 /* 8026CBA4 00268804 41 82 00 38 */ beq lbl_8026CBDC /* 8026CBA8 00268808 38 1F 00 01 */ addi r0, r31, 1 /* 8026CBAC 0026880C 38 A0 00 01 */ li r5, 1 /* 8026CBB0 00268810 54 06 00 00 */ rlwinm r6, r0, 0, 0, 0 /* 8026CBB4 00268814 3C 06 80 00 */ addis r0, r6, 0x8000 /* 8026CBB8 00268818 28 00 00 00 */ cmplwi r0, 0 /* 8026CBBC 0026881C 40 82 00 14 */ bne lbl_8026CBD0 /* 8026CBC0 00268820 57 E0 00 00 */ rlwinm r0, r31, 0, 0, 0 /* 8026CBC4 00268824 7C 06 00 00 */ cmpw r6, r0 /* 8026CBC8 00268828 41 82 00 08 */ beq lbl_8026CBD0 /* 8026CBCC 0026882C 38 A0 00 00 */ li r5, 0 lbl_8026CBD0: /* 8026CBD0 00268830 2C 05 00 00 */ cmpwi r5, 0 /* 8026CBD4 00268834 41 82 00 08 */ beq lbl_8026CBDC /* 8026CBD8 00268838 39 00 00 01 */ li r8, 1 lbl_8026CBDC: /* 8026CBDC 0026883C 2C 08 00 00 */ cmpwi r8, 0 /* 8026CBE0 00268840 41 82 00 70 */ beq lbl_8026CC50 /* 8026CBE4 00268844 38 07 00 06 */ addi r0, r7, 6 /* 8026CBE8 00268848 38 BE 00 04 */ addi r5, r30, 4 /* 8026CBEC 0026884C 54 00 E8 FE */ srwi r0, r0, 3 /* 8026CBF0 00268850 38 C3 00 04 */ addi r6, r3, 4 /* 8026CBF4 00268854 7C 09 03 A6 */ mtctr r0 /* 8026CBF8 00268858 2C 07 00 01 */ cmpwi r7, 1 /* 8026CBFC 0026885C 40 81 00 54 */ ble lbl_8026CC50 lbl_8026CC00: /* 8026CC00 00268860 80 05 FF FC */ lwz r0, -4(r5) /* 8026CC04 00268864 38 84 00 08 */ addi r4, r4, 8 /* 8026CC08 00268868 90 06 00 00 */ stw r0, 0(r6) /* 8026CC0C 0026886C 80 05 00 00 */ lwz r0, 0(r5) /* 8026CC10 00268870 90 06 00 04 */ stw r0, 4(r6) /* 8026CC14 00268874 80 05 00 04 */ lwz r0, 4(r5) /* 8026CC18 00268878 90 06 00 08 */ stw r0, 8(r6) /* 8026CC1C 0026887C 80 05 00 08 */ lwz r0, 8(r5) /* 8026CC20 00268880 90 06 00 0C */ stw r0, 0xc(r6) /* 8026CC24 00268884 80 05 00 0C */ lwz r0, 0xc(r5) /* 8026CC28 00268888 90 06 00 10 */ stw r0, 0x10(r6) /* 8026CC2C 0026888C 80 05 00 10 */ lwz r0, 0x10(r5) /* 8026CC30 00268890 90 06 00 14 */ stw r0, 0x14(r6) /* 8026CC34 00268894 80 05 00 14 */ lwz r0, 0x14(r5) /* 8026CC38 00268898 90 06 00 18 */ stw r0, 0x18(r6) /* 8026CC3C 0026889C 80 05 00 18 */ lwz r0, 0x18(r5) /* 8026CC40 002688A0 38 A5 00 20 */ addi r5, r5, 0x20 /* 8026CC44 002688A4 90 06 00 1C */ stw r0, 0x1c(r6) /* 8026CC48 002688A8 38 C6 00 20 */ addi r6, r6, 0x20 /* 8026CC4C 002688AC 42 00 FF B4 */ bdnz lbl_8026CC00 lbl_8026CC50: /* 8026CC50 002688B0 38 BF 00 01 */ addi r5, r31, 1 /* 8026CC54 002688B4 54 87 10 3A */ slwi r7, r4, 2 /* 8026CC58 002688B8 7C 04 28 50 */ subf r0, r4, r5 /* 8026CC5C 002688BC 7C DE 3A 14 */ add r6, r30, r7 /* 8026CC60 002688C0 7C E3 3A 14 */ add r7, r3, r7 /* 8026CC64 002688C4 7C 09 03 A6 */ mtctr r0 /* 8026CC68 002688C8 7C 04 28 00 */ cmpw r4, r5 /* 8026CC6C 002688CC 40 80 00 18 */ bge lbl_8026CC84 lbl_8026CC70: /* 8026CC70 002688D0 80 06 FF FC */ lwz r0, -4(r6) /* 8026CC74 002688D4 38 C6 00 04 */ addi r6, r6, 4 /* 8026CC78 002688D8 90 07 00 00 */ stw r0, 0(r7) /* 8026CC7C 002688DC 38 E7 00 04 */ addi r7, r7, 4 /* 8026CC80 002688E0 42 00 FF F0 */ bdnz lbl_8026CC70 lbl_8026CC84: /* 8026CC84 002688E4 80 A1 00 0C */ lwz r5, 0xc(r1) /* 8026CC88 002688E8 7C 69 1B 78 */ mr r9, r3 /* 8026CC8C 002688EC 80 C1 00 08 */ lwz r6, 8(r1) /* 8026CC90 002688F0 7F A4 EB 78 */ mr r4, r29 /* 8026CC94 002688F4 39 1F 00 01 */ addi r8, r31, 1 /* 8026CC98 002688F8 38 60 FF FF */ li r3, -1 /* 8026CC9C 002688FC 38 E0 00 00 */ li r7, 0 /* 8026CCA0 00268900 4B FF F7 D5 */ bl __OSBootDolSimple /* 8026CCA4 00268904 80 01 00 44 */ lwz r0, 0x44(r1) /* 8026CCA8 00268908 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 8026CCAC 0026890C 83 C1 00 38 */ lwz r30, 0x38(r1) /* 8026CCB0 00268910 83 A1 00 34 */ lwz r29, 0x34(r1) /* 8026CCB4 00268914 7C 08 03 A6 */ mtlr r0 /* 8026CCB8 00268918 38 21 00 40 */ addi r1, r1, 0x40 /* 8026CCBC 0026891C 4E 80 00 20 */ blr .global _ES_GetTicketViews _ES_GetTicketViews: /* 8026CCC0 00268920 54 2B 06 FE */ clrlwi r11, r1, 0x1b /* 8026CCC4 00268924 7C 2C 0B 78 */ mr r12, r1 /* 8026CCC8 00268928 21 6B FE A0 */ subfic r11, r11, -352 /* 8026CCCC 0026892C 7C 21 59 6E */ stwux r1, r1, r11 /* 8026CCD0 00268930 7C 08 02 A6 */ mflr r0 /* 8026CCD4 00268934 90 0C 00 04 */ stw r0, 4(r12) /* 8026CCD8 00268938 39 41 00 20 */ addi r10, r1, 0x20 /* 8026CCDC 0026893C 39 61 00 40 */ addi r11, r1, 0x40 /* 8026CCE0 00268940 93 EC FF FC */ stw r31, -4(r12) /* 8026CCE4 00268944 7D 1F 43 78 */ mr r31, r8 /* 8026CCE8 00268948 39 81 00 60 */ addi r12, r1, 0x60 /* 8026CCEC 0026894C 80 03 00 00 */ lwz r0, 0(r3) /* 8026CCF0 00268950 2C 00 00 00 */ cmpwi r0, 0 /* 8026CCF4 00268954 41 80 00 10 */ blt lbl_8026CD04 /* 8026CCF8 00268958 38 80 00 00 */ li r4, 0 /* 8026CCFC 0026895C 7C 08 20 40 */ cmplw r8, r4 /* 8026CD00 00268960 40 82 00 0C */ bne lbl_8026CD0C lbl_8026CD04: /* 8026CD04 00268964 38 60 FC 07 */ li r3, -1017 /* 8026CD08 00268968 48 00 00 C0 */ b lbl_8026CDC8 lbl_8026CD0C: /* 8026CD0C 0026896C 54 E0 06 FF */ clrlwi. r0, r7, 0x1b /* 8026CD10 00268970 41 82 00 0C */ beq lbl_8026CD1C /* 8026CD14 00268974 38 60 FC 07 */ li r3, -1017 /* 8026CD18 00268978 48 00 00 B0 */ b lbl_8026CDC8 lbl_8026CD1C: /* 8026CD1C 0026897C 7C 07 20 40 */ cmplw r7, r4 /* 8026CD20 00268980 90 C1 00 44 */ stw r6, 0x44(r1) /* 8026CD24 00268984 90 A1 00 40 */ stw r5, 0x40(r1) /* 8026CD28 00268988 40 82 00 48 */ bne lbl_8026CD70 /* 8026CD2C 0026898C 38 C0 00 08 */ li r6, 8 /* 8026CD30 00268990 38 00 00 04 */ li r0, 4 /* 8026CD34 00268994 90 C1 00 24 */ stw r6, 0x24(r1) /* 8026CD38 00268998 7D 47 53 78 */ mr r7, r10 /* 8026CD3C 0026899C 38 80 00 12 */ li r4, 0x12 /* 8026CD40 002689A0 38 A0 00 01 */ li r5, 1 /* 8026CD44 002689A4 91 61 00 20 */ stw r11, 0x20(r1) /* 8026CD48 002689A8 38 C0 00 01 */ li r6, 1 /* 8026CD4C 002689AC 91 81 00 28 */ stw r12, 0x28(r1) /* 8026CD50 002689B0 90 01 00 2C */ stw r0, 0x2c(r1) /* 8026CD54 002689B4 80 63 00 00 */ lwz r3, 0(r3) /* 8026CD58 002689B8 48 03 70 E9 */ bl IOS_Ioctlv /* 8026CD5C 002689BC 2C 03 00 00 */ cmpwi r3, 0 /* 8026CD60 002689C0 40 82 00 68 */ bne lbl_8026CDC8 /* 8026CD64 002689C4 80 01 00 60 */ lwz r0, 0x60(r1) /* 8026CD68 002689C8 90 1F 00 00 */ stw r0, 0(r31) /* 8026CD6C 002689CC 48 00 00 5C */ b lbl_8026CDC8 lbl_8026CD70: /* 8026CD70 002689D0 80 C8 00 00 */ lwz r6, 0(r8) /* 8026CD74 002689D4 2C 06 00 00 */ cmpwi r6, 0 /* 8026CD78 002689D8 40 82 00 0C */ bne lbl_8026CD84 /* 8026CD7C 002689DC 38 60 FC 07 */ li r3, -1017 /* 8026CD80 002689E0 48 00 00 48 */ b lbl_8026CDC8 lbl_8026CD84: /* 8026CD84 002689E4 39 20 00 08 */ li r9, 8 /* 8026CD88 002689E8 38 00 00 04 */ li r0, 4 /* 8026CD8C 002689EC 90 E1 00 30 */ stw r7, 0x30(r1) /* 8026CD90 002689F0 7D 47 53 78 */ mr r7, r10 /* 8026CD94 002689F4 38 80 00 13 */ li r4, 0x13 /* 8026CD98 002689F8 38 A0 00 02 */ li r5, 2 /* 8026CD9C 002689FC 90 C1 00 60 */ stw r6, 0x60(r1) /* 8026CDA0 00268A00 38 C0 00 01 */ li r6, 1 /* 8026CDA4 00268A04 91 61 00 20 */ stw r11, 0x20(r1) /* 8026CDA8 00268A08 91 21 00 24 */ stw r9, 0x24(r1) /* 8026CDAC 00268A0C 91 81 00 28 */ stw r12, 0x28(r1) /* 8026CDB0 00268A10 90 01 00 2C */ stw r0, 0x2c(r1) /* 8026CDB4 00268A14 80 08 00 00 */ lwz r0, 0(r8) /* 8026CDB8 00268A18 1C 00 00 D8 */ mulli r0, r0, 0xd8 /* 8026CDBC 00268A1C 90 01 00 34 */ stw r0, 0x34(r1) /* 8026CDC0 00268A20 80 63 00 00 */ lwz r3, 0(r3) /* 8026CDC4 00268A24 48 03 70 7D */ bl IOS_Ioctlv lbl_8026CDC8: /* 8026CDC8 00268A28 81 41 00 00 */ lwz r10, 0(r1) /* 8026CDCC 00268A2C 80 0A 00 04 */ lwz r0, 4(r10) /* 8026CDD0 00268A30 83 EA FF FC */ lwz r31, -4(r10) /* 8026CDD4 00268A34 7C 08 03 A6 */ mtlr r0 /* 8026CDD8 00268A38 7D 41 53 78 */ mr r1, r10 /* 8026CDDC 00268A3C 4E 80 00 20 */ blr .global _ES_LaunchTitle _ES_LaunchTitle: /* 8026CDE0 00268A40 54 2B 06 FE */ clrlwi r11, r1, 0x1b /* 8026CDE4 00268A44 7C 2C 0B 78 */ mr r12, r1 /* 8026CDE8 00268A48 21 6B FE C0 */ subfic r11, r11, -320 /* 8026CDEC 00268A4C 7C 21 59 6E */ stwux r1, r1, r11 /* 8026CDF0 00268A50 7C 08 02 A6 */ mflr r0 /* 8026CDF4 00268A54 90 0C 00 04 */ stw r0, 4(r12) /* 8026CDF8 00268A58 39 21 00 20 */ addi r9, r1, 0x20 /* 8026CDFC 00268A5C 39 41 00 40 */ addi r10, r1, 0x40 /* 8026CE00 00268A60 80 03 00 00 */ lwz r0, 0(r3) /* 8026CE04 00268A64 2C 00 00 00 */ cmpwi r0, 0 /* 8026CE08 00268A68 40 80 00 0C */ bge lbl_8026CE14 /* 8026CE0C 00268A6C 38 60 FC 07 */ li r3, -1017 /* 8026CE10 00268A70 48 00 00 4C */ b lbl_8026CE5C lbl_8026CE14: /* 8026CE14 00268A74 54 E0 06 FF */ clrlwi. r0, r7, 0x1b /* 8026CE18 00268A78 41 82 00 0C */ beq lbl_8026CE24 /* 8026CE1C 00268A7C 38 60 FC 07 */ li r3, -1017 /* 8026CE20 00268A80 48 00 00 3C */ b lbl_8026CE5C lbl_8026CE24: /* 8026CE24 00268A84 39 00 00 08 */ li r8, 8 /* 8026CE28 00268A88 38 00 00 D8 */ li r0, 0xd8 /* 8026CE2C 00268A8C 90 C1 00 44 */ stw r6, 0x44(r1) /* 8026CE30 00268A90 38 80 00 08 */ li r4, 8 /* 8026CE34 00268A94 38 C0 00 00 */ li r6, 0 /* 8026CE38 00268A98 90 A1 00 40 */ stw r5, 0x40(r1) /* 8026CE3C 00268A9C 38 A0 00 02 */ li r5, 2 /* 8026CE40 00268AA0 90 E1 00 28 */ stw r7, 0x28(r1) /* 8026CE44 00268AA4 7D 27 4B 78 */ mr r7, r9 /* 8026CE48 00268AA8 91 41 00 20 */ stw r10, 0x20(r1) /* 8026CE4C 00268AAC 91 01 00 24 */ stw r8, 0x24(r1) /* 8026CE50 00268AB0 90 01 00 2C */ stw r0, 0x2c(r1) /* 8026CE54 00268AB4 80 63 00 00 */ lwz r3, 0(r3) /* 8026CE58 00268AB8 48 03 70 C5 */ bl IOS_IoctlvReboot lbl_8026CE5C: /* 8026CE5C 00268ABC 81 41 00 00 */ lwz r10, 0(r1) /* 8026CE60 00268AC0 80 0A 00 04 */ lwz r0, 4(r10) /* 8026CE64 00268AC4 7C 08 03 A6 */ mtlr r0 /* 8026CE68 00268AC8 7D 41 53 78 */ mr r1, r10 /* 8026CE6C 00268ACC 4E 80 00 20 */ blr