donut-decomp/asm/os/OSExec_8001dfb0.s

1937 lines
90 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax" # 0x80006A00 - 0x80406260 ; 0x003FF860
.global PackArgs
PackArgs:
/* 8001DFB0 00019DF0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8001DFB4 00019DF4 7C 08 02 A6 */ mflr r0
/* 8001DFB8 00019DF8 90 01 00 34 */ stw r0, 0x34(r1)
/* 8001DFBC 00019DFC 39 61 00 30 */ addi r11, r1, 0x30
/* 8001DFC0 00019E00 4B FE 93 75 */ bl lbl_80007334
/* 8001DFC4 00019E04 7C 99 23 78 */ mr r25, r4
/* 8001DFC8 00019E08 7C BD 2B 78 */ mr r29, r5
/* 8001DFCC 00019E0C 7C 7E 1B 78 */ mr r30, r3
/* 8001DFD0 00019E10 38 80 00 00 */ li r4, 0x0
/* 8001DFD4 00019E14 38 A0 20 00 */ li r5, 0x2000
/* 8001DFD8 00019E18 4B FE 63 79 */ bl memset
/* 8001DFDC 00019E1C 2C 19 00 00 */ cmpwi r25, 0x0
/* 8001DFE0 00019E20 40 82 00 10 */ bne lbl_8001DFF0
/* 8001DFE4 00019E24 38 00 00 00 */ li r0, 0x0
/* 8001DFE8 00019E28 90 1E 00 08 */ stw r0, 0x8(r30)
/* 8001DFEC 00019E2C 48 00 01 28 */ b lbl_8001E114
.global lbl_8001DFF0
lbl_8001DFF0:
/* 8001DFF0 00019E30 57 20 10 3A */ slwi r0, r25, 2
/* 8001DFF4 00019E34 7F 3F CB 78 */ mr r31, r25
/* 8001DFF8 00019E38 3B 5E 20 00 */ addi r26, r30, 0x2000
/* 8001DFFC 00019E3C 7F 9D 02 14 */ add r28, r29, r0
/* 8001E000 00019E40 48 00 00 2C */ b lbl_8001E02C
.global lbl_8001E004
lbl_8001E004:
/* 8001E004 00019E44 83 7C 00 00 */ lwz r27, 0x0(r28)
/* 8001E008 00019E48 7F 63 DB 78 */ mr r3, r27
/* 8001E00C 00019E4C 4B FE 8A 81 */ bl strlen
/* 8001E010 00019E50 38 03 00 01 */ addi r0, r3, 0x1
/* 8001E014 00019E54 7F 64 DB 78 */ mr r4, r27
/* 8001E018 00019E58 7F 40 D0 50 */ subf r26, r0, r26
/* 8001E01C 00019E5C 7F 43 D3 78 */ mr r3, r26
/* 8001E020 00019E60 4B FE F9 A1 */ bl strcpy
/* 8001E024 00019E64 7C 1E D0 50 */ subf r0, r30, r26
/* 8001E028 00019E68 90 1C 00 00 */ stw r0, 0x0(r28)
.global lbl_8001E02C
lbl_8001E02C:
/* 8001E02C 00019E6C 37 39 FF FF */ addic. r25, r25, -0x1
/* 8001E030 00019E70 3B 9C FF FC */ addi r28, r28, -0x4
/* 8001E034 00019E74 40 80 FF D0 */ bge lbl_8001E004
/* 8001E038 00019E78 34 7F 00 01 */ addic. r3, r31, 0x1
/* 8001E03C 00019E7C 7C 1E D0 50 */ subf r0, r30, r26
/* 8001E040 00019E80 54 04 00 3A */ clrrwi r4, r0, 2
/* 8001E044 00019E84 38 E0 00 00 */ li r7, 0x0
/* 8001E048 00019E88 7C DE 22 14 */ add r6, r30, r4
/* 8001E04C 00019E8C 54 60 10 3A */ slwi r0, r3, 2
/* 8001E050 00019E90 7C C0 30 50 */ subf r6, r0, r6
/* 8001E054 00019E94 41 82 00 B0 */ beq lbl_8001E104
/* 8001E058 00019E98 28 03 00 08 */ cmplwi r3, 0x8
/* 8001E05C 00019E9C 38 7F FF F9 */ addi r3, r31, -0x7
/* 8001E060 00019EA0 40 81 00 70 */ ble lbl_8001E0D0
/* 8001E064 00019EA4 38 03 00 07 */ addi r0, r3, 0x7
/* 8001E068 00019EA8 7F A4 EB 78 */ mr r4, r29
/* 8001E06C 00019EAC 54 00 E8 FE */ srwi r0, r0, 3
/* 8001E070 00019EB0 7C C5 33 78 */ mr r5, r6
/* 8001E074 00019EB4 7C 09 03 A6 */ mtctr r0
/* 8001E078 00019EB8 28 03 00 00 */ cmplwi r3, 0x0
/* 8001E07C 00019EBC 40 81 00 54 */ ble lbl_8001E0D0
.global lbl_8001E080
lbl_8001E080:
/* 8001E080 00019EC0 80 04 00 00 */ lwz r0, 0x0(r4)
/* 8001E084 00019EC4 38 E7 00 08 */ addi r7, r7, 0x8
/* 8001E088 00019EC8 90 05 00 00 */ stw r0, 0x0(r5)
/* 8001E08C 00019ECC 80 04 00 04 */ lwz r0, 0x4(r4)
/* 8001E090 00019ED0 90 05 00 04 */ stw r0, 0x4(r5)
/* 8001E094 00019ED4 80 04 00 08 */ lwz r0, 0x8(r4)
/* 8001E098 00019ED8 90 05 00 08 */ stw r0, 0x8(r5)
/* 8001E09C 00019EDC 80 04 00 0C */ lwz r0, 0xc(r4)
/* 8001E0A0 00019EE0 90 05 00 0C */ stw r0, 0xc(r5)
/* 8001E0A4 00019EE4 80 04 00 10 */ lwz r0, 0x10(r4)
/* 8001E0A8 00019EE8 90 05 00 10 */ stw r0, 0x10(r5)
/* 8001E0AC 00019EEC 80 04 00 14 */ lwz r0, 0x14(r4)
/* 8001E0B0 00019EF0 90 05 00 14 */ stw r0, 0x14(r5)
/* 8001E0B4 00019EF4 80 04 00 18 */ lwz r0, 0x18(r4)
/* 8001E0B8 00019EF8 90 05 00 18 */ stw r0, 0x18(r5)
/* 8001E0BC 00019EFC 80 04 00 1C */ lwz r0, 0x1c(r4)
/* 8001E0C0 00019F00 38 84 00 20 */ addi r4, r4, 0x20
/* 8001E0C4 00019F04 90 05 00 1C */ stw r0, 0x1c(r5)
/* 8001E0C8 00019F08 38 A5 00 20 */ addi r5, r5, 0x20
/* 8001E0CC 00019F0C 42 00 FF B4 */ bdnz lbl_8001E080
.global lbl_8001E0D0
lbl_8001E0D0:
/* 8001E0D0 00019F10 38 7F 00 01 */ addi r3, r31, 0x1
/* 8001E0D4 00019F14 54 E5 10 3A */ slwi r5, r7, 2
/* 8001E0D8 00019F18 7C 07 18 50 */ subf r0, r7, r3
/* 8001E0DC 00019F1C 7C 9D 2A 14 */ add r4, r29, r5
/* 8001E0E0 00019F20 7C A6 2A 14 */ add r5, r6, r5
/* 8001E0E4 00019F24 7C 09 03 A6 */ mtctr r0
/* 8001E0E8 00019F28 7C 07 18 40 */ cmplw r7, r3
/* 8001E0EC 00019F2C 40 80 00 18 */ bge lbl_8001E104
.global lbl_8001E0F0
lbl_8001E0F0:
/* 8001E0F0 00019F30 80 04 00 00 */ lwz r0, 0x0(r4)
/* 8001E0F4 00019F34 38 84 00 04 */ addi r4, r4, 0x4
/* 8001E0F8 00019F38 90 05 00 00 */ stw r0, 0x0(r5)
/* 8001E0FC 00019F3C 38 A5 00 04 */ addi r5, r5, 0x4
/* 8001E100 00019F40 42 00 FF F0 */ bdnz lbl_8001E0F0
.global lbl_8001E104
lbl_8001E104:
/* 8001E104 00019F44 93 E6 FF FC */ stw r31, -0x4(r6)
/* 8001E108 00019F48 38 06 FF FC */ addi r0, r6, -0x4
/* 8001E10C 00019F4C 7C 1E 00 50 */ subf r0, r30, r0
/* 8001E110 00019F50 90 1E 00 08 */ stw r0, 0x8(r30)
.global lbl_8001E114
lbl_8001E114:
/* 8001E114 00019F54 39 61 00 30 */ addi r11, r1, 0x30
/* 8001E118 00019F58 38 60 00 01 */ li r3, 0x1
/* 8001E11C 00019F5C 4B FE 92 65 */ bl lbl_80007380
/* 8001E120 00019F60 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8001E124 00019F64 7C 08 03 A6 */ mtlr r0
/* 8001E128 00019F68 38 21 00 30 */ addi r1, r1, 0x30
/* 8001E12C 00019F6C 4E 80 00 20 */ blr
.global Utf16ToArg
Utf16ToArg:
/* 8001E130 00019F70 2C 04 00 00 */ cmpwi r4, 0x0
/* 8001E134 00019F74 41 82 01 4C */ beq lbl_8001E280
/* 8001E138 00019F78 38 C0 00 04 */ li r6, 0x4
/* 8001E13C 00019F7C 38 00 00 02 */ li r0, 0x2
/* 8001E140 00019F80 48 00 01 18 */ b lbl_8001E258
/* 8001E144 00019F84 60 00 00 00 */ nop
.global lbl_8001E148
lbl_8001E148:
/* 8001E148 00019F88 39 40 00 00 */ li r10, 0x0
/* 8001E14C 00019F8C 7C 09 03 A6 */ mtctr r0
.global lbl_8001E150
lbl_8001E150:
/* 8001E150 00019F90 55 49 07 FF */ clrlwi. r9, r10, 31
/* 8001E154 00019F94 39 00 00 F0 */ li r8, 0xf0
/* 8001E158 00019F98 41 82 00 08 */ beq lbl_8001E160
/* 8001E15C 00019F9C 39 00 00 0F */ li r8, 0xf
.global lbl_8001E160
lbl_8001E160:
/* 8001E160 00019FA0 7C A9 00 D0 */ neg r5, r9
/* 8001E164 00019FA4 88 E4 00 00 */ lbz r7, 0x0(r4)
/* 8001E168 00019FA8 7C A5 4B 78 */ or r5, r5, r9
/* 8001E16C 00019FAC 7C A5 FE 70 */ srawi r5, r5, 31
/* 8001E170 00019FB0 7C E7 07 74 */ extsb r7, r7
/* 8001E174 00019FB4 7C C5 28 78 */ andc r5, r6, r5
/* 8001E178 00019FB8 7C E7 40 38 */ and r7, r7, r8
/* 8001E17C 00019FBC 54 A5 06 3E */ clrlwi r5, r5, 24
/* 8001E180 00019FC0 7C E5 2E 31 */ sraw. r5, r7, r5
/* 8001E184 00019FC4 41 80 00 18 */ blt lbl_8001E19C
/* 8001E188 00019FC8 2C 05 00 0A */ cmpwi r5, 0xa
/* 8001E18C 00019FCC 40 80 00 10 */ bge lbl_8001E19C
/* 8001E190 00019FD0 38 A5 00 30 */ addi r5, r5, 0x30
/* 8001E194 00019FD4 98 A3 00 00 */ stb r5, 0x0(r3)
/* 8001E198 00019FD8 48 00 00 28 */ b lbl_8001E1C0
.global lbl_8001E19C
lbl_8001E19C:
/* 8001E19C 00019FDC 2C 05 00 0A */ cmpwi r5, 0xa
/* 8001E1A0 00019FE0 41 80 00 18 */ blt lbl_8001E1B8
/* 8001E1A4 00019FE4 2C 05 00 10 */ cmpwi r5, 0x10
/* 8001E1A8 00019FE8 40 80 00 10 */ bge lbl_8001E1B8
/* 8001E1AC 00019FEC 38 A5 00 57 */ addi r5, r5, 0x57
/* 8001E1B0 00019FF0 98 A3 00 00 */ stb r5, 0x0(r3)
/* 8001E1B4 00019FF4 48 00 00 0C */ b lbl_8001E1C0
.global lbl_8001E1B8
lbl_8001E1B8:
/* 8001E1B8 00019FF8 38 60 00 00 */ li r3, 0x0
/* 8001E1BC 00019FFC 4E 80 00 20 */ blr
.global lbl_8001E1C0
lbl_8001E1C0:
/* 8001E1C0 0001A000 2C 09 00 00 */ cmpwi r9, 0x0
/* 8001E1C4 0001A004 41 82 00 08 */ beq lbl_8001E1CC
/* 8001E1C8 0001A008 38 84 00 01 */ addi r4, r4, 0x1
.global lbl_8001E1CC
lbl_8001E1CC:
/* 8001E1CC 0001A00C 39 4A 00 01 */ addi r10, r10, 0x1
/* 8001E1D0 0001A010 39 00 00 F0 */ li r8, 0xf0
/* 8001E1D4 0001A014 55 49 07 FF */ clrlwi. r9, r10, 31
/* 8001E1D8 0001A018 41 82 00 08 */ beq lbl_8001E1E0
/* 8001E1DC 0001A01C 39 00 00 0F */ li r8, 0xf
.global lbl_8001E1E0
lbl_8001E1E0:
/* 8001E1E0 0001A020 7C A9 00 D0 */ neg r5, r9
/* 8001E1E4 0001A024 88 E4 00 00 */ lbz r7, 0x0(r4)
/* 8001E1E8 0001A028 7C A5 4B 78 */ or r5, r5, r9
/* 8001E1EC 0001A02C 7C A5 FE 70 */ srawi r5, r5, 31
/* 8001E1F0 0001A030 7C E7 07 74 */ extsb r7, r7
/* 8001E1F4 0001A034 7C C5 28 78 */ andc r5, r6, r5
/* 8001E1F8 0001A038 7C E7 40 38 */ and r7, r7, r8
/* 8001E1FC 0001A03C 54 A5 06 3E */ clrlwi r5, r5, 24
/* 8001E200 0001A040 7C E5 2E 31 */ sraw. r5, r7, r5
/* 8001E204 0001A044 41 80 00 18 */ blt lbl_8001E21C
/* 8001E208 0001A048 2C 05 00 0A */ cmpwi r5, 0xa
/* 8001E20C 0001A04C 40 80 00 10 */ bge lbl_8001E21C
/* 8001E210 0001A050 38 A5 00 30 */ addi r5, r5, 0x30
/* 8001E214 0001A054 98 A3 00 01 */ stb r5, 0x1(r3)
/* 8001E218 0001A058 48 00 00 28 */ b lbl_8001E240
.global lbl_8001E21C
lbl_8001E21C:
/* 8001E21C 0001A05C 2C 05 00 0A */ cmpwi r5, 0xa
/* 8001E220 0001A060 41 80 00 18 */ blt lbl_8001E238
/* 8001E224 0001A064 2C 05 00 10 */ cmpwi r5, 0x10
/* 8001E228 0001A068 40 80 00 10 */ bge lbl_8001E238
/* 8001E22C 0001A06C 38 A5 00 57 */ addi r5, r5, 0x57
/* 8001E230 0001A070 98 A3 00 01 */ stb r5, 0x1(r3)
/* 8001E234 0001A074 48 00 00 0C */ b lbl_8001E240
.global lbl_8001E238
lbl_8001E238:
/* 8001E238 0001A078 38 60 00 00 */ li r3, 0x0
/* 8001E23C 0001A07C 4E 80 00 20 */ blr
.global lbl_8001E240
lbl_8001E240:
/* 8001E240 0001A080 2C 09 00 00 */ cmpwi r9, 0x0
/* 8001E244 0001A084 38 63 00 02 */ addi r3, r3, 0x2
/* 8001E248 0001A088 41 82 00 08 */ beq lbl_8001E250
/* 8001E24C 0001A08C 38 84 00 01 */ addi r4, r4, 0x1
.global lbl_8001E250
lbl_8001E250:
/* 8001E250 0001A090 39 4A 00 01 */ addi r10, r10, 0x1
/* 8001E254 0001A094 42 00 FE FC */ bdnz lbl_8001E150
.global lbl_8001E258
lbl_8001E258:
/* 8001E258 0001A098 88 A4 00 00 */ lbz r5, 0x0(r4)
/* 8001E25C 0001A09C 7C A5 07 75 */ extsb. r5, r5
/* 8001E260 0001A0A0 40 82 FE E8 */ bne lbl_8001E148
/* 8001E264 0001A0A4 88 A4 00 01 */ lbz r5, 0x1(r4)
/* 8001E268 0001A0A8 7C A5 07 75 */ extsb. r5, r5
/* 8001E26C 0001A0AC 40 82 FE DC */ bne lbl_8001E148
/* 8001E270 0001A0B0 38 00 00 00 */ li r0, 0x0
/* 8001E274 0001A0B4 98 03 00 00 */ stb r0, 0x0(r3)
/* 8001E278 0001A0B8 38 60 00 01 */ li r3, 0x1
/* 8001E27C 0001A0BC 4E 80 00 20 */ blr
.global lbl_8001E280
lbl_8001E280:
/* 8001E280 0001A0C0 38 60 00 00 */ li r3, 0x0
/* 8001E284 0001A0C4 4E 80 00 20 */ blr
/* 8001E288 0001A0C8 00 00 00 00 */ .4byte 0x00000000
/* 8001E28C 0001A0CC 00 00 00 00 */ .4byte 0x00000000
.global PackInstallerArgs
PackInstallerArgs:
/* 8001E290 0001A0D0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8001E294 0001A0D4 7C 08 02 A6 */ mflr r0
/* 8001E298 0001A0D8 90 01 00 34 */ stw r0, 0x34(r1)
/* 8001E29C 0001A0DC 39 61 00 30 */ addi r11, r1, 0x30
/* 8001E2A0 0001A0E0 4B FE 90 95 */ bl lbl_80007334
/* 8001E2A4 0001A0E4 7C 9B 23 78 */ mr r27, r4
/* 8001E2A8 0001A0E8 7C BC 2B 78 */ mr r28, r5
/* 8001E2AC 0001A0EC 7C 7E 1B 78 */ mr r30, r3
/* 8001E2B0 0001A0F0 38 80 00 00 */ li r4, 0x0
/* 8001E2B4 0001A0F4 38 A0 20 00 */ li r5, 0x2000
/* 8001E2B8 0001A0F8 4B FE 60 99 */ bl memset
/* 8001E2BC 0001A0FC 2C 1B 00 00 */ cmpwi r27, 0x0
/* 8001E2C0 0001A100 40 82 00 10 */ bne lbl_8001E2D0
/* 8001E2C4 0001A104 38 00 00 00 */ li r0, 0x0
/* 8001E2C8 0001A108 90 1E 00 08 */ stw r0, 0x8(r30)
/* 8001E2CC 0001A10C 48 00 01 74 */ b lbl_8001E440
.global lbl_8001E2D0
lbl_8001E2D0:
/* 8001E2D0 0001A110 57 60 10 3A */ slwi r0, r27, 2
/* 8001E2D4 0001A114 7F 7F DB 78 */ mr r31, r27
/* 8001E2D8 0001A118 3B BE 20 00 */ addi r29, r30, 0x2000
/* 8001E2DC 0001A11C 7F 5C 02 14 */ add r26, r28, r0
/* 8001E2E0 0001A120 48 00 00 78 */ b lbl_8001E358
.global lbl_8001E2E4
lbl_8001E2E4:
/* 8001E2E4 0001A124 2C 1B 00 02 */ cmpwi r27, 0x2
/* 8001E2E8 0001A128 41 80 00 18 */ blt lbl_8001E300
/* 8001E2EC 0001A12C 57 63 0F FE */ srwi r3, r27, 31
/* 8001E2F0 0001A130 57 60 07 FE */ clrlwi r0, r27, 31
/* 8001E2F4 0001A134 7C 00 1A 78 */ xor r0, r0, r3
/* 8001E2F8 0001A138 7C 03 00 51 */ subf. r0, r3, r0
/* 8001E2FC 0001A13C 41 82 00 30 */ beq lbl_8001E32C
.global lbl_8001E300
lbl_8001E300:
/* 8001E300 0001A140 83 3A 00 00 */ lwz r25, 0x0(r26)
/* 8001E304 0001A144 7F 23 CB 78 */ mr r3, r25
/* 8001E308 0001A148 4B FE 87 85 */ bl strlen
/* 8001E30C 0001A14C 38 03 00 01 */ addi r0, r3, 0x1
/* 8001E310 0001A150 7F 24 CB 78 */ mr r4, r25
/* 8001E314 0001A154 7F A0 E8 50 */ subf r29, r0, r29
/* 8001E318 0001A158 7F A3 EB 78 */ mr r3, r29
/* 8001E31C 0001A15C 4B FE F6 A5 */ bl strcpy
/* 8001E320 0001A160 7C 1E E8 50 */ subf r0, r30, r29
/* 8001E324 0001A164 90 1A 00 00 */ stw r0, 0x0(r26)
/* 8001E328 0001A168 48 00 00 30 */ b lbl_8001E358
.global lbl_8001E32C
lbl_8001E32C:
/* 8001E32C 0001A16C 83 3A 00 00 */ lwz r25, 0x0(r26)
/* 8001E330 0001A170 7F 23 CB 78 */ mr r3, r25
/* 8001E334 0001A174 4B FF 20 01 */ bl wcslen
/* 8001E338 0001A178 54 63 10 3A */ slwi r3, r3, 2
/* 8001E33C 0001A17C 7F 24 CB 78 */ mr r4, r25
/* 8001E340 0001A180 38 03 00 01 */ addi r0, r3, 0x1
/* 8001E344 0001A184 7F A0 E8 50 */ subf r29, r0, r29
/* 8001E348 0001A188 7F A3 EB 78 */ mr r3, r29
/* 8001E34C 0001A18C 4B FF FD E5 */ bl Utf16ToArg
/* 8001E350 0001A190 7C 1E E8 50 */ subf r0, r30, r29
/* 8001E354 0001A194 90 1A 00 00 */ stw r0, 0x0(r26)
.global lbl_8001E358
lbl_8001E358:
/* 8001E358 0001A198 37 7B FF FF */ addic. r27, r27, -0x1
/* 8001E35C 0001A19C 3B 5A FF FC */ addi r26, r26, -0x4
/* 8001E360 0001A1A0 40 80 FF 84 */ bge lbl_8001E2E4
/* 8001E364 0001A1A4 34 7F 00 01 */ addic. r3, r31, 0x1
/* 8001E368 0001A1A8 7C 1E E8 50 */ subf r0, r30, r29
/* 8001E36C 0001A1AC 54 04 00 3A */ clrrwi r4, r0, 2
/* 8001E370 0001A1B0 38 E0 00 00 */ li r7, 0x0
/* 8001E374 0001A1B4 7C DE 22 14 */ add r6, r30, r4
/* 8001E378 0001A1B8 54 60 10 3A */ slwi r0, r3, 2
/* 8001E37C 0001A1BC 7C C0 30 50 */ subf r6, r0, r6
/* 8001E380 0001A1C0 41 82 00 B0 */ beq lbl_8001E430
/* 8001E384 0001A1C4 28 03 00 08 */ cmplwi r3, 0x8
/* 8001E388 0001A1C8 38 7F FF F9 */ addi r3, r31, -0x7
/* 8001E38C 0001A1CC 40 81 00 70 */ ble lbl_8001E3FC
/* 8001E390 0001A1D0 38 03 00 07 */ addi r0, r3, 0x7
/* 8001E394 0001A1D4 7F 84 E3 78 */ mr r4, r28
/* 8001E398 0001A1D8 54 00 E8 FE */ srwi r0, r0, 3
/* 8001E39C 0001A1DC 7C C5 33 78 */ mr r5, r6
/* 8001E3A0 0001A1E0 7C 09 03 A6 */ mtctr r0
/* 8001E3A4 0001A1E4 28 03 00 00 */ cmplwi r3, 0x0
/* 8001E3A8 0001A1E8 40 81 00 54 */ ble lbl_8001E3FC
.global lbl_8001E3AC
lbl_8001E3AC:
/* 8001E3AC 0001A1EC 80 04 00 00 */ lwz r0, 0x0(r4)
/* 8001E3B0 0001A1F0 38 E7 00 08 */ addi r7, r7, 0x8
/* 8001E3B4 0001A1F4 90 05 00 00 */ stw r0, 0x0(r5)
/* 8001E3B8 0001A1F8 80 04 00 04 */ lwz r0, 0x4(r4)
/* 8001E3BC 0001A1FC 90 05 00 04 */ stw r0, 0x4(r5)
/* 8001E3C0 0001A200 80 04 00 08 */ lwz r0, 0x8(r4)
/* 8001E3C4 0001A204 90 05 00 08 */ stw r0, 0x8(r5)
/* 8001E3C8 0001A208 80 04 00 0C */ lwz r0, 0xc(r4)
/* 8001E3CC 0001A20C 90 05 00 0C */ stw r0, 0xc(r5)
/* 8001E3D0 0001A210 80 04 00 10 */ lwz r0, 0x10(r4)
/* 8001E3D4 0001A214 90 05 00 10 */ stw r0, 0x10(r5)
/* 8001E3D8 0001A218 80 04 00 14 */ lwz r0, 0x14(r4)
/* 8001E3DC 0001A21C 90 05 00 14 */ stw r0, 0x14(r5)
/* 8001E3E0 0001A220 80 04 00 18 */ lwz r0, 0x18(r4)
/* 8001E3E4 0001A224 90 05 00 18 */ stw r0, 0x18(r5)
/* 8001E3E8 0001A228 80 04 00 1C */ lwz r0, 0x1c(r4)
/* 8001E3EC 0001A22C 38 84 00 20 */ addi r4, r4, 0x20
/* 8001E3F0 0001A230 90 05 00 1C */ stw r0, 0x1c(r5)
/* 8001E3F4 0001A234 38 A5 00 20 */ addi r5, r5, 0x20
/* 8001E3F8 0001A238 42 00 FF B4 */ bdnz lbl_8001E3AC
.global lbl_8001E3FC
lbl_8001E3FC:
/* 8001E3FC 0001A23C 38 7F 00 01 */ addi r3, r31, 0x1
/* 8001E400 0001A240 54 E5 10 3A */ slwi r5, r7, 2
/* 8001E404 0001A244 7C 07 18 50 */ subf r0, r7, r3
/* 8001E408 0001A248 7C 9C 2A 14 */ add r4, r28, r5
/* 8001E40C 0001A24C 7C A6 2A 14 */ add r5, r6, r5
/* 8001E410 0001A250 7C 09 03 A6 */ mtctr r0
/* 8001E414 0001A254 7C 07 18 40 */ cmplw r7, r3
/* 8001E418 0001A258 40 80 00 18 */ bge lbl_8001E430
.global lbl_8001E41C
lbl_8001E41C:
/* 8001E41C 0001A25C 80 04 00 00 */ lwz r0, 0x0(r4)
/* 8001E420 0001A260 38 84 00 04 */ addi r4, r4, 0x4
/* 8001E424 0001A264 90 05 00 00 */ stw r0, 0x0(r5)
/* 8001E428 0001A268 38 A5 00 04 */ addi r5, r5, 0x4
/* 8001E42C 0001A26C 42 00 FF F0 */ bdnz lbl_8001E41C
.global lbl_8001E430
lbl_8001E430:
/* 8001E430 0001A270 93 E6 FF FC */ stw r31, -0x4(r6)
/* 8001E434 0001A274 38 06 FF FC */ addi r0, r6, -0x4
/* 8001E438 0001A278 7C 1E 00 50 */ subf r0, r30, r0
/* 8001E43C 0001A27C 90 1E 00 08 */ stw r0, 0x8(r30)
.global lbl_8001E440
lbl_8001E440:
/* 8001E440 0001A280 39 61 00 30 */ addi r11, r1, 0x30
/* 8001E444 0001A284 38 60 00 01 */ li r3, 0x1
/* 8001E448 0001A288 4B FE 8F 39 */ bl lbl_80007380
/* 8001E44C 0001A28C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8001E450 0001A290 7C 08 03 A6 */ mtlr r0
/* 8001E454 0001A294 38 21 00 30 */ addi r1, r1, 0x30
/* 8001E458 0001A298 4E 80 00 20 */ blr
/* 8001E45C 0001A29C 00 00 00 00 */ .4byte 0x00000000
.global Run
Run:
/* 8001E460 0001A2A0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8001E464 0001A2A4 7C 08 02 A6 */ mflr r0
/* 8001E468 0001A2A8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8001E46C 0001A2AC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8001E470 0001A2B0 7C 7F 1B 78 */ mr r31, r3
/* 8001E474 0001A2B4 4B FF E6 3D */ bl ICFlashInvalidate
/* 8001E478 0001A2B8 7C 00 04 AC */ sync
/* 8001E47C 0001A2BC 4C 00 01 2C */ isync
/* 8001E480 0001A2C0 7F E9 03 A6 */ mtctr r31
/* 8001E484 0001A2C4 4E 80 04 20 */ bctr
/* 8001E488 0001A2C8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8001E48C 0001A2CC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8001E490 0001A2D0 7C 08 03 A6 */ mtlr r0
/* 8001E494 0001A2D4 38 21 00 10 */ addi r1, r1, 0x10
/* 8001E498 0001A2D8 4E 80 00 20 */ blr
/* 8001E49C 0001A2DC 00 00 00 00 */ .4byte 0x00000000
.global Callback_8001E4A0
Callback_8001E4A0:
/* 8001E4A0 0001A2E0 38 00 00 01 */ li r0, 0x1
/* 8001E4A4 0001A2E4 90 0D E3 D0 */ stw r0, Prepared_8055C7F0@sda21(r13)
/* 8001E4A8 0001A2E8 4E 80 00 20 */ blr
/* 8001E4AC 0001A2EC 00 00 00 00 */ .4byte 0x00000000
.global __OSGetExecParams
__OSGetExecParams:
/* 8001E4B0 0001A2F0 3C A0 80 00 */ lis r5, 0x800030F0@ha
/* 8001E4B4 0001A2F4 80 85 30 F0 */ lwz r4, 0x800030F0@l(r5)
/* 8001E4B8 0001A2F8 7C 04 28 40 */ cmplw r4, r5
/* 8001E4BC 0001A2FC 41 80 00 0C */ blt lbl_8001E4C8
/* 8001E4C0 0001A300 38 A0 00 1C */ li r5, 0x1c
/* 8001E4C4 0001A304 4B FE 5B 3C */ b memcpy
.global lbl_8001E4C8
lbl_8001E4C8:
/* 8001E4C8 0001A308 38 00 00 00 */ li r0, 0x0
/* 8001E4CC 0001A30C 90 03 00 00 */ stw r0, 0x0(r3)
/* 8001E4D0 0001A310 4E 80 00 20 */ blr
/* 8001E4D4 0001A314 00 00 00 00 */ .4byte 0x00000000
/* 8001E4D8 0001A318 00 00 00 00 */ .4byte 0x00000000
/* 8001E4DC 0001A31C 00 00 00 00 */ .4byte 0x00000000
.global callback
callback:
/* 8001E4E0 0001A320 90 6D E3 C8 */ stw r3, DVDLowIntType@sda21(r13)
/* 8001E4E4 0001A324 4E 80 00 20 */ blr
/* 8001E4E8 0001A328 00 00 00 00 */ .4byte 0x00000000
/* 8001E4EC 0001A32C 00 00 00 00 */ .4byte 0x00000000
.global __OSLaunchNextFirmware
__OSLaunchNextFirmware:
/* 8001E4F0 0001A330 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 8001E4F4 0001A334 7C 08 02 A6 */ mflr r0
/* 8001E4F8 0001A338 90 01 00 44 */ stw r0, 0x44(r1)
/* 8001E4FC 0001A33C 39 61 00 40 */ addi r11, r1, 0x40
/* 8001E500 0001A340 4B FE 8E 29 */ bl lbl_80007328
/* 8001E504 0001A344 3F C0 80 42 */ lis r30, "@3219"@ha
/* 8001E508 0001A348 38 60 00 01 */ li r3, 0x1
/* 8001E50C 0001A34C 38 00 00 00 */ li r0, 0x0
/* 8001E510 0001A350 90 61 00 14 */ stw r3, 0x14(r1)
/* 8001E514 0001A354 3B DE 28 98 */ addi r30, r30, "@3219"@l
/* 8001E518 0001A358 3B E0 FF FF */ li r31, -0x1
/* 8001E51C 0001A35C 90 01 00 10 */ stw r0, 0x10(r1)
/* 8001E520 0001A360 38 60 00 20 */ li r3, 0x20
/* 8001E524 0001A364 38 80 00 20 */ li r4, 0x20
/* 8001E528 0001A368 4B FF DE C9 */ bl OSAllocFromMEM1ArenaLo
/* 8001E52C 0001A36C 7C 7B 1B 78 */ mr r27, r3
/* 8001E530 0001A370 38 60 08 00 */ li r3, 0x800
/* 8001E534 0001A374 38 80 00 20 */ li r4, 0x20
/* 8001E538 0001A378 4B FF DE B9 */ bl OSAllocFromMEM1ArenaLo
/* 8001E53C 0001A37C 7C 7C 1B 78 */ mr r28, r3
/* 8001E540 0001A380 38 60 4A 00 */ li r3, 0x4a00
/* 8001E544 0001A384 38 80 00 40 */ li r4, 0x40
/* 8001E548 0001A388 4B FF DE A9 */ bl OSAllocFromMEM1ArenaLo
/* 8001E54C 0001A38C 7C 79 1B 78 */ mr r25, r3
/* 8001E550 0001A390 38 60 00 E0 */ li r3, 0xe0
/* 8001E554 0001A394 38 80 00 20 */ li r4, 0x20
/* 8001E558 0001A398 4B FF DE 99 */ bl OSAllocFromMEM1ArenaLo
/* 8001E55C 0001A39C 3C 80 80 00 */ lis r4, 0x80003194@ha
/* 8001E560 0001A3A0 80 AD E3 C0 */ lwz r5, __OSNextPartitionType@sda21(r13)
/* 8001E564 0001A3A4 80 04 31 94 */ lwz r0, 0x80003194@l(r4)
/* 8001E568 0001A3A8 7C 7D 1B 78 */ mr r29, r3
/* 8001E56C 0001A3AC 7C 05 00 40 */ cmplw r5, r0
/* 8001E570 0001A3B0 40 82 00 A4 */ bne lbl_8001E614
/* 8001E574 0001A3B4 80 04 31 98 */ lwz r0, 0x3198(r4)
/* 8001E578 0001A3B8 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001E57C 0001A3BC 41 82 00 98 */ beq lbl_8001E614
/* 8001E580 0001A3C0 48 08 3A A1 */ bl ESP_InitLib
/* 8001E584 0001A3C4 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001E588 0001A3C8 7C 7F 1B 78 */ mr r31, r3
/* 8001E58C 0001A3CC 40 82 00 14 */ bne lbl_8001E5A0
/* 8001E590 0001A3D0 7F A4 EB 78 */ mr r4, r29
/* 8001E594 0001A3D4 38 60 00 00 */ li r3, 0x0
/* 8001E598 0001A3D8 48 08 3C F9 */ bl ESP_DiGetTicketView
/* 8001E59C 0001A3DC 7C 7F 1B 78 */ mr r31, r3
.global lbl_8001E5A0
lbl_8001E5A0:
/* 8001E5A0 0001A3E0 2C 1F 00 00 */ cmpwi r31, 0x0
/* 8001E5A4 0001A3E4 40 82 00 14 */ bne lbl_8001E5B8
/* 8001E5A8 0001A3E8 38 81 00 10 */ addi r4, r1, 0x10
/* 8001E5AC 0001A3EC 38 60 00 00 */ li r3, 0x0
/* 8001E5B0 0001A3F0 48 08 3D 91 */ bl ESP_DiGetTmd
/* 8001E5B4 0001A3F4 7C 7F 1B 78 */ mr r31, r3
.global lbl_8001E5B8
lbl_8001E5B8:
/* 8001E5B8 0001A3F8 2C 1F 00 00 */ cmpwi r31, 0x0
/* 8001E5BC 0001A3FC 40 82 00 14 */ bne lbl_8001E5D0
/* 8001E5C0 0001A400 7F 23 CB 78 */ mr r3, r25
/* 8001E5C4 0001A404 38 81 00 10 */ addi r4, r1, 0x10
/* 8001E5C8 0001A408 48 08 3D 79 */ bl ESP_DiGetTmd
/* 8001E5CC 0001A40C 7C 7F 1B 78 */ mr r31, r3
.global lbl_8001E5D0
lbl_8001E5D0:
/* 8001E5D0 0001A410 48 08 3A B1 */ bl ESP_CloseLib
/* 8001E5D4 0001A414 48 00 94 2D */ bl OSPlayTimeIsLimited
/* 8001E5D8 0001A418 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001E5DC 0001A41C 41 82 00 38 */ beq lbl_8001E614
/* 8001E5E0 0001A420 38 60 00 00 */ li r3, 0x0
/* 8001E5E4 0001A424 38 00 FF FF */ li r0, -0x1
/* 8001E5E8 0001A428 90 61 00 0C */ stw r3, 0xc(r1)
/* 8001E5EC 0001A42C 7F A3 EB 78 */ mr r3, r29
/* 8001E5F0 0001A430 38 81 00 0C */ addi r4, r1, 0xc
/* 8001E5F4 0001A434 38 A1 00 08 */ addi r5, r1, 0x8
/* 8001E5F8 0001A438 90 01 00 08 */ stw r0, 0x8(r1)
/* 8001E5FC 0001A43C 48 00 98 B5 */ bl __OSGetPlayTime
/* 8001E600 0001A440 80 01 00 08 */ lwz r0, 0x8(r1)
/* 8001E604 0001A444 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001E608 0001A448 40 82 00 0C */ bne lbl_8001E614
/* 8001E60C 0001A44C 48 00 95 D5 */ bl __OSWriteExpiredFlag
/* 8001E610 0001A450 48 00 50 D1 */ bl __OSReturnToMenuForError
.global lbl_8001E614
lbl_8001E614:
/* 8001E614 0001A454 2C 1F 00 00 */ cmpwi r31, 0x0
/* 8001E618 0001A458 40 82 00 20 */ bne lbl_8001E638
/* 8001E61C 0001A45C 3C 60 80 00 */ lis r3, 0x80003194@ha
/* 8001E620 0001A460 7F 9A E3 78 */ mr r26, r28
/* 8001E624 0001A464 80 03 31 94 */ lwz r0, 0x80003194@l(r3)
/* 8001E628 0001A468 90 1C 00 04 */ stw r0, 0x4(r28)
/* 8001E62C 0001A46C 80 03 31 98 */ lwz r0, 0x3198(r3)
/* 8001E630 0001A470 90 1C 00 00 */ stw r0, 0x0(r28)
/* 8001E634 0001A474 48 00 03 98 */ b lbl_8001E9CC
.global lbl_8001E638
lbl_8001E638:
/* 8001E638 0001A478 38 00 00 00 */ li r0, 0x0
/* 8001E63C 0001A47C 3C 60 80 02 */ lis r3, callback@ha
/* 8001E640 0001A480 90 0D E3 C8 */ stw r0, DVDLowIntType@sda21(r13)
/* 8001E644 0001A484 38 63 E4 E0 */ addi r3, r3, callback@l
/* 8001E648 0001A488 48 02 2A F9 */ bl DVDLowClosePartition
/* 8001E64C 0001A48C 60 00 00 00 */ nop
.global lbl_8001E650
lbl_8001E650:
/* 8001E650 0001A490 80 0D E3 C8 */ lwz r0, DVDLowIntType@sda21(r13)
/* 8001E654 0001A494 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001E658 0001A498 41 82 FF F8 */ beq lbl_8001E650
/* 8001E65C 0001A49C 80 0D E3 C8 */ lwz r0, DVDLowIntType@sda21(r13)
/* 8001E660 0001A4A0 2C 00 00 02 */ cmpwi r0, 0x2
/* 8001E664 0001A4A4 41 82 00 20 */ beq lbl_8001E684
/* 8001E668 0001A4A8 40 80 00 10 */ bge lbl_8001E678
/* 8001E66C 0001A4AC 2C 00 00 01 */ cmpwi r0, 0x1
/* 8001E670 0001A4B0 40 80 00 4C */ bge lbl_8001E6BC
/* 8001E674 0001A4B4 48 00 00 38 */ b lbl_8001E6AC
.global lbl_8001E678
lbl_8001E678:
/* 8001E678 0001A4B8 2C 00 00 10 */ cmpwi r0, 0x10
/* 8001E67C 0001A4BC 41 82 00 1C */ beq lbl_8001E698
/* 8001E680 0001A4C0 48 00 00 2C */ b lbl_8001E6AC
.global lbl_8001E684
lbl_8001E684:
/* 8001E684 0001A4C4 38 7E 00 00 */ addi r3, r30, 0x0
/* 8001E688 0001A4C8 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001E68C 0001A4CC 4B FF F3 05 */ bl OSReport
/* 8001E690 0001A4D0 48 00 50 51 */ bl __OSReturnToMenuForError
/* 8001E694 0001A4D4 48 00 00 28 */ b lbl_8001E6BC
.global lbl_8001E698
lbl_8001E698:
/* 8001E698 0001A4D8 38 7E 00 18 */ addi r3, r30, 0x18
/* 8001E69C 0001A4DC 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001E6A0 0001A4E0 4B FF F2 F1 */ bl OSReport
/* 8001E6A4 0001A4E4 48 00 50 3D */ bl __OSReturnToMenuForError
/* 8001E6A8 0001A4E8 48 00 00 14 */ b lbl_8001E6BC
.global lbl_8001E6AC
lbl_8001E6AC:
/* 8001E6AC 0001A4EC 38 7E 00 34 */ addi r3, r30, 0x34
/* 8001E6B0 0001A4F0 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001E6B4 0001A4F4 4B FF F2 DD */ bl OSReport
/* 8001E6B8 0001A4F8 48 00 50 29 */ bl __OSReturnToMenuForError
.global lbl_8001E6BC
lbl_8001E6BC:
/* 8001E6BC 0001A4FC 38 00 00 00 */ li r0, 0x0
/* 8001E6C0 0001A500 3C C0 80 02 */ lis r6, callback@ha
/* 8001E6C4 0001A504 90 0D E3 C8 */ stw r0, DVDLowIntType@sda21(r13)
/* 8001E6C8 0001A508 7F 63 DB 78 */ mr r3, r27
/* 8001E6CC 0001A50C 38 C6 E4 E0 */ addi r6, r6, callback@l
/* 8001E6D0 0001A510 38 80 00 20 */ li r4, 0x20
/* 8001E6D4 0001A514 3C A0 00 01 */ lis r5, 0x1
/* 8001E6D8 0001A518 48 02 2B D9 */ bl DVDLowUnencryptedRead
/* 8001E6DC 0001A51C 60 00 00 00 */ nop
.global lbl_8001E6E0
lbl_8001E6E0:
/* 8001E6E0 0001A520 80 0D E3 C8 */ lwz r0, DVDLowIntType@sda21(r13)
/* 8001E6E4 0001A524 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001E6E8 0001A528 41 82 FF F8 */ beq lbl_8001E6E0
/* 8001E6EC 0001A52C 80 0D E3 C8 */ lwz r0, DVDLowIntType@sda21(r13)
/* 8001E6F0 0001A530 2C 00 00 02 */ cmpwi r0, 0x2
/* 8001E6F4 0001A534 41 82 00 20 */ beq lbl_8001E714
/* 8001E6F8 0001A538 40 80 00 10 */ bge lbl_8001E708
/* 8001E6FC 0001A53C 2C 00 00 01 */ cmpwi r0, 0x1
/* 8001E700 0001A540 40 80 00 4C */ bge lbl_8001E74C
/* 8001E704 0001A544 48 00 00 38 */ b lbl_8001E73C
.global lbl_8001E708
lbl_8001E708:
/* 8001E708 0001A548 2C 00 00 10 */ cmpwi r0, 0x10
/* 8001E70C 0001A54C 41 82 00 1C */ beq lbl_8001E728
/* 8001E710 0001A550 48 00 00 2C */ b lbl_8001E73C
.global lbl_8001E714
lbl_8001E714:
/* 8001E714 0001A554 38 7E 00 00 */ addi r3, r30, 0x0
/* 8001E718 0001A558 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001E71C 0001A55C 4B FF F2 75 */ bl OSReport
/* 8001E720 0001A560 48 00 4F C1 */ bl __OSReturnToMenuForError
/* 8001E724 0001A564 48 00 00 28 */ b lbl_8001E74C
.global lbl_8001E728
lbl_8001E728:
/* 8001E728 0001A568 38 7E 00 18 */ addi r3, r30, 0x18
/* 8001E72C 0001A56C 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001E730 0001A570 4B FF F2 61 */ bl OSReport
/* 8001E734 0001A574 48 00 4F AD */ bl __OSReturnToMenuForError
/* 8001E738 0001A578 48 00 00 14 */ b lbl_8001E74C
.global lbl_8001E73C
lbl_8001E73C:
/* 8001E73C 0001A57C 38 7E 00 34 */ addi r3, r30, 0x34
/* 8001E740 0001A580 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001E744 0001A584 4B FF F2 4D */ bl OSReport
/* 8001E748 0001A588 48 00 4F 99 */ bl __OSReturnToMenuForError
.global lbl_8001E74C
lbl_8001E74C:
/* 8001E74C 0001A58C 38 00 00 00 */ li r0, 0x0
/* 8001E750 0001A590 90 0D E3 C8 */ stw r0, DVDLowIntType@sda21(r13)
/* 8001E754 0001A594 3C C0 80 02 */ lis r6, callback@ha
/* 8001E758 0001A598 7F 83 E3 78 */ mr r3, r28
/* 8001E75C 0001A59C 80 BB 00 04 */ lwz r5, 0x4(r27)
/* 8001E760 0001A5A0 38 C6 E4 E0 */ addi r6, r6, callback@l
/* 8001E764 0001A5A4 38 80 08 00 */ li r4, 0x800
/* 8001E768 0001A5A8 48 02 2B 49 */ bl DVDLowUnencryptedRead
/* 8001E76C 0001A5AC 60 00 00 00 */ nop
.global lbl_8001E770
lbl_8001E770:
/* 8001E770 0001A5B0 80 0D E3 C8 */ lwz r0, DVDLowIntType@sda21(r13)
/* 8001E774 0001A5B4 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001E778 0001A5B8 41 82 FF F8 */ beq lbl_8001E770
/* 8001E77C 0001A5BC 80 0D E3 C8 */ lwz r0, DVDLowIntType@sda21(r13)
/* 8001E780 0001A5C0 2C 00 00 02 */ cmpwi r0, 0x2
/* 8001E784 0001A5C4 41 82 00 20 */ beq lbl_8001E7A4
/* 8001E788 0001A5C8 40 80 00 10 */ bge lbl_8001E798
/* 8001E78C 0001A5CC 2C 00 00 01 */ cmpwi r0, 0x1
/* 8001E790 0001A5D0 40 80 00 4C */ bge lbl_8001E7DC
/* 8001E794 0001A5D4 48 00 00 38 */ b lbl_8001E7CC
.global lbl_8001E798
lbl_8001E798:
/* 8001E798 0001A5D8 2C 00 00 10 */ cmpwi r0, 0x10
/* 8001E79C 0001A5DC 41 82 00 1C */ beq lbl_8001E7B8
/* 8001E7A0 0001A5E0 48 00 00 2C */ b lbl_8001E7CC
.global lbl_8001E7A4
lbl_8001E7A4:
/* 8001E7A4 0001A5E4 38 7E 00 00 */ addi r3, r30, 0x0
/* 8001E7A8 0001A5E8 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001E7AC 0001A5EC 4B FF F1 E5 */ bl OSReport
/* 8001E7B0 0001A5F0 48 00 4F 31 */ bl __OSReturnToMenuForError
/* 8001E7B4 0001A5F4 48 00 00 28 */ b lbl_8001E7DC
.global lbl_8001E7B8
lbl_8001E7B8:
/* 8001E7B8 0001A5F8 38 7E 00 18 */ addi r3, r30, 0x18
/* 8001E7BC 0001A5FC 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001E7C0 0001A600 4B FF F1 D1 */ bl OSReport
/* 8001E7C4 0001A604 48 00 4F 1D */ bl __OSReturnToMenuForError
/* 8001E7C8 0001A608 48 00 00 14 */ b lbl_8001E7DC
.global lbl_8001E7CC
lbl_8001E7CC:
/* 8001E7CC 0001A60C 38 7E 00 34 */ addi r3, r30, 0x34
/* 8001E7D0 0001A610 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001E7D4 0001A614 4B FF F1 BD */ bl OSReport
/* 8001E7D8 0001A618 48 00 4F 09 */ bl __OSReturnToMenuForError
.global lbl_8001E7DC
lbl_8001E7DC:
/* 8001E7DC 0001A61C 80 8D E3 C0 */ lwz r4, __OSNextPartitionType@sda21(r13)
/* 8001E7E0 0001A620 7F 86 E3 78 */ mr r6, r28
/* 8001E7E4 0001A624 3B 40 00 00 */ li r26, 0x0
/* 8001E7E8 0001A628 38 A0 00 00 */ li r5, 0x0
/* 8001E7EC 0001A62C 48 00 00 1C */ b lbl_8001E808
.global lbl_8001E7F0
lbl_8001E7F0:
/* 8001E7F0 0001A630 80 06 00 04 */ lwz r0, 0x4(r6)
/* 8001E7F4 0001A634 7C 00 20 40 */ cmplw r0, r4
/* 8001E7F8 0001A638 40 82 00 08 */ bne lbl_8001E800
/* 8001E7FC 0001A63C 7C DA 33 78 */ mr r26, r6
.global lbl_8001E800
lbl_8001E800:
/* 8001E800 0001A640 38 C6 00 08 */ addi r6, r6, 0x8
/* 8001E804 0001A644 38 A5 00 01 */ addi r5, r5, 0x1
.global lbl_8001E808
lbl_8001E808:
/* 8001E808 0001A648 80 1B 00 00 */ lwz r0, 0x0(r27)
/* 8001E80C 0001A64C 54 A3 06 3E */ clrlwi r3, r5, 24
/* 8001E810 0001A650 7C 03 00 40 */ cmplw r3, r0
/* 8001E814 0001A654 41 80 FF DC */ blt lbl_8001E7F0
/* 8001E818 0001A658 2C 1A 00 00 */ cmpwi r26, 0x0
/* 8001E81C 0001A65C 40 82 00 3C */ bne lbl_8001E858
/* 8001E820 0001A660 80 8D E3 C0 */ lwz r4, __OSNextPartitionType@sda21(r13)
/* 8001E824 0001A664 38 DC 00 20 */ addi r6, r28, 0x20
/* 8001E828 0001A668 38 A0 00 00 */ li r5, 0x0
/* 8001E82C 0001A66C 48 00 00 1C */ b lbl_8001E848
.global lbl_8001E830
lbl_8001E830:
/* 8001E830 0001A670 80 06 00 04 */ lwz r0, 0x4(r6)
/* 8001E834 0001A674 7C 00 20 40 */ cmplw r0, r4
/* 8001E838 0001A678 40 82 00 08 */ bne lbl_8001E840
/* 8001E83C 0001A67C 7C DA 33 78 */ mr r26, r6
.global lbl_8001E840
lbl_8001E840:
/* 8001E840 0001A680 38 C6 00 08 */ addi r6, r6, 0x8
/* 8001E844 0001A684 38 A5 00 01 */ addi r5, r5, 0x1
.global lbl_8001E848
lbl_8001E848:
/* 8001E848 0001A688 80 1B 00 08 */ lwz r0, 0x8(r27)
/* 8001E84C 0001A68C 54 A3 06 3E */ clrlwi r3, r5, 24
/* 8001E850 0001A690 7C 03 00 40 */ cmplw r3, r0
/* 8001E854 0001A694 41 80 FF DC */ blt lbl_8001E830
.global lbl_8001E858
lbl_8001E858:
/* 8001E858 0001A698 2C 1A 00 00 */ cmpwi r26, 0x0
/* 8001E85C 0001A69C 40 82 00 14 */ bne lbl_8001E870
/* 8001E860 0001A6A0 38 7E 00 54 */ addi r3, r30, 0x54
/* 8001E864 0001A6A4 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001E868 0001A6A8 4B FF F1 29 */ bl OSReport
/* 8001E86C 0001A6AC 48 00 4E 75 */ bl __OSReturnToMenuForError
.global lbl_8001E870
lbl_8001E870:
/* 8001E870 0001A6B0 3C 80 80 00 */ lis r4, 0x80003194@ha
/* 8001E874 0001A6B4 80 1A 00 04 */ lwz r0, 0x4(r26)
/* 8001E878 0001A6B8 90 04 31 94 */ stw r0, 0x80003194@l(r4)
/* 8001E87C 0001A6BC 38 00 00 00 */ li r0, 0x0
/* 8001E880 0001A6C0 80 7A 00 00 */ lwz r3, 0x0(r26)
/* 8001E884 0001A6C4 90 64 31 98 */ stw r3, 0x3198(r4)
/* 8001E888 0001A6C8 90 0D E3 C8 */ stw r0, DVDLowIntType@sda21(r13)
/* 8001E88C 0001A6CC 88 04 31 87 */ lbz r0, 0x3187(r4)
/* 8001E890 0001A6D0 28 00 00 80 */ cmplwi r0, 0x80
/* 8001E894 0001A6D4 40 82 00 2C */ bne lbl_8001E8C0
/* 8001E898 0001A6D8 3D 20 80 02 */ lis r9, callback@ha
/* 8001E89C 0001A6DC 80 7A 00 00 */ lwz r3, 0x0(r26)
/* 8001E8A0 0001A6E0 80 A1 00 10 */ lwz r5, 0x10(r1)
/* 8001E8A4 0001A6E4 7F A4 EB 78 */ mr r4, r29
/* 8001E8A8 0001A6E8 7F 26 CB 78 */ mr r6, r25
/* 8001E8AC 0001A6EC 39 29 E4 E0 */ addi r9, r9, callback@l
/* 8001E8B0 0001A6F0 38 E0 00 00 */ li r7, 0x0
/* 8001E8B4 0001A6F4 39 00 00 00 */ li r8, 0x0
/* 8001E8B8 0001A6F8 48 02 21 69 */ bl DVDLowOpenPartitionWithTmdAndTicketView
/* 8001E8BC 0001A6FC 48 00 00 24 */ b lbl_8001E8E0
.global lbl_8001E8C0
lbl_8001E8C0:
/* 8001E8C0 0001A700 3D 00 80 02 */ lis r8, callback@ha
/* 8001E8C4 0001A704 80 7A 00 00 */ lwz r3, 0x0(r26)
/* 8001E8C8 0001A708 7F 27 CB 78 */ mr r7, r25
/* 8001E8CC 0001A70C 38 80 00 00 */ li r4, 0x0
/* 8001E8D0 0001A710 39 08 E4 E0 */ addi r8, r8, callback@l
/* 8001E8D4 0001A714 38 A0 00 00 */ li r5, 0x0
/* 8001E8D8 0001A718 38 C0 00 00 */ li r6, 0x0
/* 8001E8DC 0001A71C 48 02 1E D5 */ bl DVDLowOpenPartition
.global lbl_8001E8E0
lbl_8001E8E0:
/* 8001E8E0 0001A720 80 0D E3 C8 */ lwz r0, DVDLowIntType@sda21(r13)
/* 8001E8E4 0001A724 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001E8E8 0001A728 41 82 FF F8 */ beq lbl_8001E8E0
/* 8001E8EC 0001A72C 80 0D E3 C8 */ lwz r0, DVDLowIntType@sda21(r13)
/* 8001E8F0 0001A730 2C 00 00 02 */ cmpwi r0, 0x2
/* 8001E8F4 0001A734 41 82 00 20 */ beq lbl_8001E914
/* 8001E8F8 0001A738 40 80 00 10 */ bge lbl_8001E908
/* 8001E8FC 0001A73C 2C 00 00 01 */ cmpwi r0, 0x1
/* 8001E900 0001A740 40 80 00 4C */ bge lbl_8001E94C
/* 8001E904 0001A744 48 00 00 38 */ b lbl_8001E93C
.global lbl_8001E908
lbl_8001E908:
/* 8001E908 0001A748 2C 00 00 10 */ cmpwi r0, 0x10
/* 8001E90C 0001A74C 41 82 00 1C */ beq lbl_8001E928
/* 8001E910 0001A750 48 00 00 2C */ b lbl_8001E93C
.global lbl_8001E914
lbl_8001E914:
/* 8001E914 0001A754 38 7E 00 00 */ addi r3, r30, 0x0
/* 8001E918 0001A758 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001E91C 0001A75C 4B FF F0 75 */ bl OSReport
/* 8001E920 0001A760 48 00 4D C1 */ bl __OSReturnToMenuForError
/* 8001E924 0001A764 48 00 00 28 */ b lbl_8001E94C
.global lbl_8001E928
lbl_8001E928:
/* 8001E928 0001A768 38 7E 00 18 */ addi r3, r30, 0x18
/* 8001E92C 0001A76C 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001E930 0001A770 4B FF F0 61 */ bl OSReport
/* 8001E934 0001A774 48 00 4D AD */ bl __OSReturnToMenuForError
/* 8001E938 0001A778 48 00 00 14 */ b lbl_8001E94C
.global lbl_8001E93C
lbl_8001E93C:
/* 8001E93C 0001A77C 38 7E 00 34 */ addi r3, r30, 0x34
/* 8001E940 0001A780 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001E944 0001A784 4B FF F0 4D */ bl OSReport
/* 8001E948 0001A788 48 00 4D 99 */ bl __OSReturnToMenuForError
.global lbl_8001E94C
lbl_8001E94C:
/* 8001E94C 0001A78C 38 00 00 00 */ li r0, 0x0
/* 8001E950 0001A790 3C 60 80 02 */ lis r3, callback@ha
/* 8001E954 0001A794 90 0D E3 C8 */ stw r0, DVDLowIntType@sda21(r13)
/* 8001E958 0001A798 38 63 E4 E0 */ addi r3, r3, callback@l
/* 8001E95C 0001A79C 48 02 27 E5 */ bl DVDLowClosePartition
.global lbl_8001E960
lbl_8001E960:
/* 8001E960 0001A7A0 80 0D E3 C8 */ lwz r0, DVDLowIntType@sda21(r13)
/* 8001E964 0001A7A4 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001E968 0001A7A8 41 82 FF F8 */ beq lbl_8001E960
/* 8001E96C 0001A7AC 80 0D E3 C8 */ lwz r0, DVDLowIntType@sda21(r13)
/* 8001E970 0001A7B0 2C 00 00 02 */ cmpwi r0, 0x2
/* 8001E974 0001A7B4 41 82 00 20 */ beq lbl_8001E994
/* 8001E978 0001A7B8 40 80 00 10 */ bge lbl_8001E988
/* 8001E97C 0001A7BC 2C 00 00 01 */ cmpwi r0, 0x1
/* 8001E980 0001A7C0 40 80 00 4C */ bge lbl_8001E9CC
/* 8001E984 0001A7C4 48 00 00 38 */ b lbl_8001E9BC
.global lbl_8001E988
lbl_8001E988:
/* 8001E988 0001A7C8 2C 00 00 10 */ cmpwi r0, 0x10
/* 8001E98C 0001A7CC 41 82 00 1C */ beq lbl_8001E9A8
/* 8001E990 0001A7D0 48 00 00 2C */ b lbl_8001E9BC
.global lbl_8001E994
lbl_8001E994:
/* 8001E994 0001A7D4 38 7E 00 00 */ addi r3, r30, 0x0
/* 8001E998 0001A7D8 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001E99C 0001A7DC 4B FF EF F5 */ bl OSReport
/* 8001E9A0 0001A7E0 48 00 4D 41 */ bl __OSReturnToMenuForError
/* 8001E9A4 0001A7E4 48 00 00 28 */ b lbl_8001E9CC
.global lbl_8001E9A8
lbl_8001E9A8:
/* 8001E9A8 0001A7E8 38 7E 00 18 */ addi r3, r30, 0x18
/* 8001E9AC 0001A7EC 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001E9B0 0001A7F0 4B FF EF E1 */ bl OSReport
/* 8001E9B4 0001A7F4 48 00 4D 2D */ bl __OSReturnToMenuForError
/* 8001E9B8 0001A7F8 48 00 00 14 */ b lbl_8001E9CC
.global lbl_8001E9BC
lbl_8001E9BC:
/* 8001E9BC 0001A7FC 38 7E 00 34 */ addi r3, r30, 0x34
/* 8001E9C0 0001A800 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001E9C4 0001A804 4B FF EF CD */ bl OSReport
/* 8001E9C8 0001A808 48 00 4D 19 */ bl __OSReturnToMenuForError
.global lbl_8001E9CC
lbl_8001E9CC:
/* 8001E9CC 0001A80C 82 F9 01 84 */ lwz r23, 0x184(r25)
/* 8001E9D0 0001A810 82 D9 01 88 */ lwz r22, 0x188(r25)
/* 8001E9D4 0001A814 48 08 36 4D */ bl ESP_InitLib
/* 8001E9D8 0001A818 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001E9DC 0001A81C 7C 7F 1B 78 */ mr r31, r3
/* 8001E9E0 0001A820 41 82 00 1C */ beq lbl_8001E9FC
/* 8001E9E4 0001A824 7F E4 FB 78 */ mr r4, r31
/* 8001E9E8 0001A828 38 7E 00 84 */ addi r3, r30, 0x84
/* 8001E9EC 0001A82C 38 A0 04 0D */ li r5, 0x40d
/* 8001E9F0 0001A830 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001E9F4 0001A834 4B FF EF 9D */ bl OSReport
/* 8001E9F8 0001A838 48 00 4D 99 */ bl __OSHotResetForError
.global lbl_8001E9FC
lbl_8001E9FC:
/* 8001E9FC 0001A83C 7E C4 B3 78 */ mr r4, r22
/* 8001EA00 0001A840 7E E3 BB 78 */ mr r3, r23
/* 8001EA04 0001A844 38 C1 00 14 */ addi r6, r1, 0x14
/* 8001EA08 0001A848 38 A0 00 00 */ li r5, 0x0
/* 8001EA0C 0001A84C 48 08 37 65 */ bl ESP_GetTicketViews
/* 8001EA10 0001A850 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8001EA14 0001A854 7C 7F 1B 78 */ mr r31, r3
/* 8001EA18 0001A858 28 00 00 01 */ cmplwi r0, 0x1
/* 8001EA1C 0001A85C 40 82 00 0C */ bne lbl_8001EA28
/* 8001EA20 0001A860 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001EA24 0001A864 41 82 00 1C */ beq lbl_8001EA40
.global lbl_8001EA28
lbl_8001EA28:
/* 8001EA28 0001A868 7F E4 FB 78 */ mr r4, r31
/* 8001EA2C 0001A86C 38 7E 00 84 */ addi r3, r30, 0x84
/* 8001EA30 0001A870 38 A0 04 16 */ li r5, 0x416
/* 8001EA34 0001A874 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001EA38 0001A878 4B FF EF 59 */ bl OSReport
/* 8001EA3C 0001A87C 48 00 4D 55 */ bl __OSHotResetForError
.global lbl_8001EA40
lbl_8001EA40:
/* 8001EA40 0001A880 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8001EA44 0001A884 38 80 00 20 */ li r4, 0x20
/* 8001EA48 0001A888 1C 60 00 D8 */ mulli r3, r0, 0xd8
/* 8001EA4C 0001A88C 38 03 00 1F */ addi r0, r3, 0x1f
/* 8001EA50 0001A890 54 03 00 34 */ clrrwi r3, r0, 5
/* 8001EA54 0001A894 4B FF D9 9D */ bl OSAllocFromMEM1ArenaLo
/* 8001EA58 0001A898 7C 78 1B 78 */ mr r24, r3
/* 8001EA5C 0001A89C 7E C4 B3 78 */ mr r4, r22
/* 8001EA60 0001A8A0 7E E3 BB 78 */ mr r3, r23
/* 8001EA64 0001A8A4 38 C1 00 14 */ addi r6, r1, 0x14
/* 8001EA68 0001A8A8 7F 05 C3 78 */ mr r5, r24
/* 8001EA6C 0001A8AC 48 08 37 05 */ bl ESP_GetTicketViews
/* 8001EA70 0001A8B0 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001EA74 0001A8B4 7C 7F 1B 78 */ mr r31, r3
/* 8001EA78 0001A8B8 41 82 00 1C */ beq lbl_8001EA94
/* 8001EA7C 0001A8BC 7F E4 FB 78 */ mr r4, r31
/* 8001EA80 0001A8C0 38 7E 00 84 */ addi r3, r30, 0x84
/* 8001EA84 0001A8C4 38 A0 04 1F */ li r5, 0x41f
/* 8001EA88 0001A8C8 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001EA8C 0001A8CC 4B FF EF 05 */ bl OSReport
/* 8001EA90 0001A8D0 48 00 4D 01 */ bl __OSHotResetForError
.global lbl_8001EA94
lbl_8001EA94:
/* 8001EA94 0001A8D4 48 02 18 CD */ bl DVDLowFinalize
/* 8001EA98 0001A8D8 3C A0 80 00 */ lis r5, 0x8000311C@ha
/* 8001EA9C 0001A8DC 38 80 01 00 */ li r4, 0x100
/* 8001EAA0 0001A8E0 83 85 31 1C */ lwz r28, 0x8000311C@l(r5)
/* 8001EAA4 0001A8E4 38 65 31 00 */ addi r3, r5, 0x3100
/* 8001EAA8 0001A8E8 83 65 31 20 */ lwz r27, 0x3120(r5)
/* 8001EAAC 0001A8EC 4B FF DF 05 */ bl DCStoreRange
/* 8001EAB0 0001A8F0 7E C4 B3 78 */ mr r4, r22
/* 8001EAB4 0001A8F4 7E E3 BB 78 */ mr r3, r23
/* 8001EAB8 0001A8F8 7F 05 C3 78 */ mr r5, r24
/* 8001EABC 0001A8FC 48 08 36 15 */ bl ESP_LaunchTitle
/* 8001EAC0 0001A900 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001EAC4 0001A904 7C 7F 1B 78 */ mr r31, r3
/* 8001EAC8 0001A908 41 82 00 1C */ beq lbl_8001EAE4
/* 8001EACC 0001A90C 7F E4 FB 78 */ mr r4, r31
/* 8001EAD0 0001A910 38 7E 00 84 */ addi r3, r30, 0x84
/* 8001EAD4 0001A914 38 A0 04 2F */ li r5, 0x42f
/* 8001EAD8 0001A918 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001EADC 0001A91C 4B FF EE B5 */ bl OSReport
/* 8001EAE0 0001A920 48 00 4C B1 */ bl __OSHotResetForError
.global lbl_8001EAE4
lbl_8001EAE4:
/* 8001EAE4 0001A924 48 08 35 9D */ bl ESP_CloseLib
/* 8001EAE8 0001A928 3F E0 80 00 */ lis r31, 0x80003100@ha
/* 8001EAEC 0001A92C 38 80 01 00 */ li r4, 0x100
/* 8001EAF0 0001A930 38 7F 31 00 */ addi r3, r31, 0x80003100@l
/* 8001EAF4 0001A934 4B FF DE 5D */ bl DCInvalidateRange
/* 8001EAF8 0001A938 80 7F 31 1C */ lwz r3, 0x311c(r31)
/* 8001EAFC 0001A93C 7C 1C 18 40 */ cmplw r28, r3
/* 8001EB00 0001A940 40 80 00 54 */ bge lbl_8001EB54
/* 8001EB04 0001A944 80 1F 31 20 */ lwz r0, 0x3120(r31)
/* 8001EB08 0001A948 7C 00 18 50 */ subf r0, r0, r3
/* 8001EB0C 0001A94C 7C 00 E0 50 */ subf r0, r0, r28
/* 8001EB10 0001A950 90 1F 31 20 */ stw r0, 0x3120(r31)
/* 8001EB14 0001A954 80 7F 31 28 */ lwz r3, 0x3128(r31)
/* 8001EB18 0001A958 80 1F 31 1C */ lwz r0, 0x311c(r31)
/* 8001EB1C 0001A95C 7C 03 00 50 */ subf r0, r3, r0
/* 8001EB20 0001A960 7C 00 E0 50 */ subf r0, r0, r28
/* 8001EB24 0001A964 90 1F 31 28 */ stw r0, 0x3128(r31)
/* 8001EB28 0001A968 80 7F 31 30 */ lwz r3, 0x3130(r31)
/* 8001EB2C 0001A96C 80 1F 31 1C */ lwz r0, 0x311c(r31)
/* 8001EB30 0001A970 7C 03 00 50 */ subf r0, r3, r0
/* 8001EB34 0001A974 7C 00 E0 50 */ subf r0, r0, r28
/* 8001EB38 0001A978 90 1F 31 30 */ stw r0, 0x3130(r31)
/* 8001EB3C 0001A97C 80 7F 31 34 */ lwz r3, 0x3134(r31)
/* 8001EB40 0001A980 80 1F 31 1C */ lwz r0, 0x311c(r31)
/* 8001EB44 0001A984 7C 03 00 50 */ subf r0, r3, r0
/* 8001EB48 0001A988 7C 00 E0 50 */ subf r0, r0, r28
/* 8001EB4C 0001A98C 90 1F 31 34 */ stw r0, 0x3134(r31)
/* 8001EB50 0001A990 93 9F 31 1C */ stw r28, 0x311c(r31)
.global lbl_8001EB54
lbl_8001EB54:
/* 8001EB54 0001A994 3C 60 80 00 */ lis r3, 0x80003120@ha
/* 8001EB58 0001A998 80 03 31 20 */ lwz r0, 0x80003120@l(r3)
/* 8001EB5C 0001A99C 7C 1B 00 40 */ cmplw r27, r0
/* 8001EB60 0001A9A0 40 80 00 08 */ bge lbl_8001EB68
/* 8001EB64 0001A9A4 48 00 3F 2D */ bl __OSInitMemoryProtection
.global lbl_8001EB68
lbl_8001EB68:
/* 8001EB68 0001A9A8 48 00 76 79 */ bl __OSInitIPCBuffer
/* 8001EB6C 0001A9AC 48 02 FC 15 */ bl IPCReInit
/* 8001EB70 0001A9B0 48 03 01 C1 */ bl IPCCltReInit
/* 8001EB74 0001A9B4 48 02 18 3D */ bl DVDLowInit
/* 8001EB78 0001A9B8 38 00 00 00 */ li r0, 0x0
/* 8001EB7C 0001A9BC 3C 60 80 4A */ lis r3, id@ha
/* 8001EB80 0001A9C0 3C 80 80 02 */ lis r4, callback@ha
/* 8001EB84 0001A9C4 90 0D E3 C8 */ stw r0, DVDLowIntType@sda21(r13)
/* 8001EB88 0001A9C8 38 63 91 60 */ addi r3, r3, id@l
/* 8001EB8C 0001A9CC 38 84 E4 E0 */ addi r4, r4, callback@l
/* 8001EB90 0001A9D0 48 02 1A 91 */ bl DVDLowReadDiskID
/* 8001EB94 0001A9D4 60 00 00 00 */ nop
.global lbl_8001EB98
lbl_8001EB98:
/* 8001EB98 0001A9D8 80 0D E3 C8 */ lwz r0, DVDLowIntType@sda21(r13)
/* 8001EB9C 0001A9DC 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001EBA0 0001A9E0 41 82 FF F8 */ beq lbl_8001EB98
/* 8001EBA4 0001A9E4 80 0D E3 C8 */ lwz r0, DVDLowIntType@sda21(r13)
/* 8001EBA8 0001A9E8 2C 00 00 02 */ cmpwi r0, 0x2
/* 8001EBAC 0001A9EC 41 82 00 20 */ beq lbl_8001EBCC
/* 8001EBB0 0001A9F0 40 80 00 10 */ bge lbl_8001EBC0
/* 8001EBB4 0001A9F4 2C 00 00 01 */ cmpwi r0, 0x1
/* 8001EBB8 0001A9F8 40 80 00 4C */ bge lbl_8001EC04
/* 8001EBBC 0001A9FC 48 00 00 38 */ b lbl_8001EBF4
.global lbl_8001EBC0
lbl_8001EBC0:
/* 8001EBC0 0001AA00 2C 00 00 10 */ cmpwi r0, 0x10
/* 8001EBC4 0001AA04 41 82 00 1C */ beq lbl_8001EBE0
/* 8001EBC8 0001AA08 48 00 00 2C */ b lbl_8001EBF4
.global lbl_8001EBCC
lbl_8001EBCC:
/* 8001EBCC 0001AA0C 38 7E 00 00 */ addi r3, r30, 0x0
/* 8001EBD0 0001AA10 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001EBD4 0001AA14 4B FF ED BD */ bl OSReport
/* 8001EBD8 0001AA18 48 00 4B 09 */ bl __OSReturnToMenuForError
/* 8001EBDC 0001AA1C 48 00 00 28 */ b lbl_8001EC04
.global lbl_8001EBE0
lbl_8001EBE0:
/* 8001EBE0 0001AA20 38 7E 00 18 */ addi r3, r30, 0x18
/* 8001EBE4 0001AA24 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001EBE8 0001AA28 4B FF ED A9 */ bl OSReport
/* 8001EBEC 0001AA2C 48 00 4A F5 */ bl __OSReturnToMenuForError
/* 8001EBF0 0001AA30 48 00 00 14 */ b lbl_8001EC04
.global lbl_8001EBF4
lbl_8001EBF4:
/* 8001EBF4 0001AA34 38 7E 00 34 */ addi r3, r30, 0x34
/* 8001EBF8 0001AA38 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001EBFC 0001AA3C 4B FF ED 95 */ bl OSReport
/* 8001EC00 0001AA40 48 00 4A E1 */ bl __OSReturnToMenuForError
.global lbl_8001EC04
lbl_8001EC04:
/* 8001EC04 0001AA44 38 00 00 00 */ li r0, 0x0
/* 8001EC08 0001AA48 90 0D E3 C8 */ stw r0, DVDLowIntType@sda21(r13)
/* 8001EC0C 0001AA4C 3C 60 80 00 */ lis r3, 0x80003187@ha
/* 8001EC10 0001AA50 88 03 31 87 */ lbz r0, 0x80003187@l(r3)
/* 8001EC14 0001AA54 28 00 00 80 */ cmplwi r0, 0x80
/* 8001EC18 0001AA58 40 82 00 2C */ bne lbl_8001EC44
/* 8001EC1C 0001AA5C 3D 20 80 02 */ lis r9, callback@ha
/* 8001EC20 0001AA60 80 7A 00 00 */ lwz r3, 0x0(r26)
/* 8001EC24 0001AA64 80 A1 00 10 */ lwz r5, 0x10(r1)
/* 8001EC28 0001AA68 7F A4 EB 78 */ mr r4, r29
/* 8001EC2C 0001AA6C 7F 26 CB 78 */ mr r6, r25
/* 8001EC30 0001AA70 39 29 E4 E0 */ addi r9, r9, callback@l
/* 8001EC34 0001AA74 38 E0 00 00 */ li r7, 0x0
/* 8001EC38 0001AA78 39 00 00 00 */ li r8, 0x0
/* 8001EC3C 0001AA7C 48 02 1D E5 */ bl DVDLowOpenPartitionWithTmdAndTicketView
/* 8001EC40 0001AA80 48 00 00 28 */ b lbl_8001EC68
.global lbl_8001EC44
lbl_8001EC44:
/* 8001EC44 0001AA84 3D 00 80 02 */ lis r8, callback@ha
/* 8001EC48 0001AA88 80 7A 00 00 */ lwz r3, 0x0(r26)
/* 8001EC4C 0001AA8C 7F 27 CB 78 */ mr r7, r25
/* 8001EC50 0001AA90 38 80 00 00 */ li r4, 0x0
/* 8001EC54 0001AA94 39 08 E4 E0 */ addi r8, r8, callback@l
/* 8001EC58 0001AA98 38 A0 00 00 */ li r5, 0x0
/* 8001EC5C 0001AA9C 38 C0 00 00 */ li r6, 0x0
/* 8001EC60 0001AAA0 48 02 1B 51 */ bl DVDLowOpenPartition
/* 8001EC64 0001AAA4 60 00 00 00 */ nop
.global lbl_8001EC68
lbl_8001EC68:
/* 8001EC68 0001AAA8 80 0D E3 C8 */ lwz r0, DVDLowIntType@sda21(r13)
/* 8001EC6C 0001AAAC 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001EC70 0001AAB0 41 82 FF F8 */ beq lbl_8001EC68
/* 8001EC74 0001AAB4 80 0D E3 C8 */ lwz r0, DVDLowIntType@sda21(r13)
/* 8001EC78 0001AAB8 2C 00 00 02 */ cmpwi r0, 0x2
/* 8001EC7C 0001AABC 41 82 00 20 */ beq lbl_8001EC9C
/* 8001EC80 0001AAC0 40 80 00 10 */ bge lbl_8001EC90
/* 8001EC84 0001AAC4 2C 00 00 01 */ cmpwi r0, 0x1
/* 8001EC88 0001AAC8 40 80 00 4C */ bge lbl_8001ECD4
/* 8001EC8C 0001AACC 48 00 00 38 */ b lbl_8001ECC4
.global lbl_8001EC90
lbl_8001EC90:
/* 8001EC90 0001AAD0 2C 00 00 10 */ cmpwi r0, 0x10
/* 8001EC94 0001AAD4 41 82 00 1C */ beq lbl_8001ECB0
/* 8001EC98 0001AAD8 48 00 00 2C */ b lbl_8001ECC4
.global lbl_8001EC9C
lbl_8001EC9C:
/* 8001EC9C 0001AADC 38 7E 00 00 */ addi r3, r30, 0x0
/* 8001ECA0 0001AAE0 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001ECA4 0001AAE4 4B FF EC ED */ bl OSReport
/* 8001ECA8 0001AAE8 48 00 4A 39 */ bl __OSReturnToMenuForError
/* 8001ECAC 0001AAEC 48 00 00 28 */ b lbl_8001ECD4
.global lbl_8001ECB0
lbl_8001ECB0:
/* 8001ECB0 0001AAF0 38 7E 00 18 */ addi r3, r30, 0x18
/* 8001ECB4 0001AAF4 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001ECB8 0001AAF8 4B FF EC D9 */ bl OSReport
/* 8001ECBC 0001AAFC 48 00 4A 25 */ bl __OSReturnToMenuForError
/* 8001ECC0 0001AB00 48 00 00 14 */ b lbl_8001ECD4
.global lbl_8001ECC4
lbl_8001ECC4:
/* 8001ECC4 0001AB04 38 7E 00 34 */ addi r3, r30, 0x34
/* 8001ECC8 0001AB08 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001ECCC 0001AB0C 4B FF EC C5 */ bl OSReport
/* 8001ECD0 0001AB10 48 00 4A 11 */ bl __OSReturnToMenuForError
.global lbl_8001ECD4
lbl_8001ECD4:
/* 8001ECD4 0001AB14 39 61 00 40 */ addi r11, r1, 0x40
/* 8001ECD8 0001AB18 4B FE 86 9D */ bl lbl_80007374
/* 8001ECDC 0001AB1C 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8001ECE0 0001AB20 7C 08 03 A6 */ mtlr r0
/* 8001ECE4 0001AB24 38 21 00 40 */ addi r1, r1, 0x40
/* 8001ECE8 0001AB28 4E 80 00 20 */ blr
/* 8001ECEC 0001AB2C 00 00 00 00 */ .4byte 0x00000000
.global __OSLaunchMenu
__OSLaunchMenu:
/* 8001ECF0 0001AB30 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8001ECF4 0001AB34 7C 08 02 A6 */ mflr r0
/* 8001ECF8 0001AB38 3C 60 81 28 */ lis r3, 0x8128
/* 8001ECFC 0001AB3C 90 01 00 24 */ stw r0, 0x24(r1)
/* 8001ED00 0001AB40 38 00 00 01 */ li r0, 0x1
/* 8001ED04 0001AB44 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8001ED08 0001AB48 90 01 00 08 */ stw r0, 0x8(r1)
/* 8001ED0C 0001AB4C 4B FF D6 C5 */ bl OSSetMEM1ArenaLo
/* 8001ED10 0001AB50 3C 60 81 2F */ lis r3, 0x812f
/* 8001ED14 0001AB54 4B FF D6 9D */ bl OSSetMEM1ArenaHi
/* 8001ED18 0001AB58 48 08 33 09 */ bl ESP_InitLib
/* 8001ED1C 0001AB5C 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001ED20 0001AB60 40 82 00 84 */ bne lbl_8001EDA4
/* 8001ED24 0001AB64 38 C1 00 08 */ addi r6, r1, 0x8
/* 8001ED28 0001AB68 38 80 00 02 */ li r4, 0x2
/* 8001ED2C 0001AB6C 38 60 00 01 */ li r3, 0x1
/* 8001ED30 0001AB70 38 A0 00 00 */ li r5, 0x0
/* 8001ED34 0001AB74 48 08 34 3D */ bl ESP_GetTicketViews
/* 8001ED38 0001AB78 80 01 00 08 */ lwz r0, 0x8(r1)
/* 8001ED3C 0001AB7C 28 00 00 01 */ cmplwi r0, 0x1
/* 8001ED40 0001AB80 40 82 00 64 */ bne lbl_8001EDA4
/* 8001ED44 0001AB84 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001ED48 0001AB88 41 82 00 08 */ beq lbl_8001ED50
/* 8001ED4C 0001AB8C 48 00 00 58 */ b lbl_8001EDA4
.global lbl_8001ED50
lbl_8001ED50:
/* 8001ED50 0001AB90 1C 60 00 D8 */ mulli r3, r0, 0xd8
/* 8001ED54 0001AB94 38 80 00 20 */ li r4, 0x20
/* 8001ED58 0001AB98 38 03 00 1F */ addi r0, r3, 0x1f
/* 8001ED5C 0001AB9C 54 03 00 34 */ clrrwi r3, r0, 5
/* 8001ED60 0001ABA0 4B FF D6 91 */ bl OSAllocFromMEM1ArenaLo
/* 8001ED64 0001ABA4 7C 7F 1B 78 */ mr r31, r3
/* 8001ED68 0001ABA8 38 C1 00 08 */ addi r6, r1, 0x8
/* 8001ED6C 0001ABAC 7F E5 FB 78 */ mr r5, r31
/* 8001ED70 0001ABB0 38 80 00 02 */ li r4, 0x2
/* 8001ED74 0001ABB4 38 60 00 01 */ li r3, 0x1
/* 8001ED78 0001ABB8 48 08 33 F9 */ bl ESP_GetTicketViews
/* 8001ED7C 0001ABBC 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001ED80 0001ABC0 40 82 00 24 */ bne lbl_8001EDA4
/* 8001ED84 0001ABC4 7F E5 FB 78 */ mr r5, r31
/* 8001ED88 0001ABC8 38 80 00 02 */ li r4, 0x2
/* 8001ED8C 0001ABCC 38 60 00 01 */ li r3, 0x1
/* 8001ED90 0001ABD0 48 08 33 41 */ bl ESP_LaunchTitle
/* 8001ED94 0001ABD4 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001ED98 0001ABD8 40 82 00 0C */ bne lbl_8001EDA4
/* 8001ED9C 0001ABDC 60 00 00 00 */ nop
.global lbl_8001EDA0
lbl_8001EDA0:
/* 8001EDA0 0001ABE0 48 00 00 00 */ b lbl_8001EDA0
.global lbl_8001EDA4
lbl_8001EDA4:
/* 8001EDA4 0001ABE4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8001EDA8 0001ABE8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8001EDAC 0001ABEC 7C 08 03 A6 */ mtlr r0
/* 8001EDB0 0001ABF0 38 21 00 20 */ addi r1, r1, 0x20
/* 8001EDB4 0001ABF4 4E 80 00 20 */ blr
/* 8001EDB8 0001ABF8 00 00 00 00 */ .4byte 0x00000000
/* 8001EDBC 0001ABFC 00 00 00 00 */ .4byte 0x00000000
.global __OSBootDolSimple
__OSBootDolSimple:
/* 8001EDC0 0001AC00 54 2B 06 FE */ clrlwi r11, r1, 27
/* 8001EDC4 0001AC04 7C 2C 0B 78 */ mr r12, r1
/* 8001EDC8 0001AC08 21 6B FE 00 */ subfic r11, r11, -0x200
/* 8001EDCC 0001AC0C 7C 21 59 6E */ stwux r1, r1, r11
/* 8001EDD0 0001AC10 7C 08 02 A6 */ mflr r0
/* 8001EDD4 0001AC14 7D 8B 63 78 */ mr r11, r12
/* 8001EDD8 0001AC18 90 0C 00 04 */ stw r0, 0x4(r12)
/* 8001EDDC 0001AC1C 4B FE 85 55 */ bl lbl_80007330
/* 8001EDE0 0001AC20 7C 7B 1B 78 */ mr r27, r3
/* 8001EDE4 0001AC24 7C 98 23 78 */ mr r24, r4
/* 8001EDE8 0001AC28 7C BC 2B 78 */ mr r28, r5
/* 8001EDEC 0001AC2C 7C DD 33 78 */ mr r29, r6
/* 8001EDF0 0001AC30 7C F9 3B 78 */ mr r25, r7
/* 8001EDF4 0001AC34 7D 1F 43 78 */ mr r31, r8
/* 8001EDF8 0001AC38 7D 3A 4B 78 */ mr r26, r9
/* 8001EDFC 0001AC3C 48 00 2A 25 */ bl OSDisableInterrupts
/* 8001EE00 0001AC40 80 0D E3 CC */ lwz r0, __OSInReboot@sda21(r13)
/* 8001EE04 0001AC44 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001EE08 0001AC48 41 82 00 10 */ beq lbl_8001EE18
/* 8001EE0C 0001AC4C 3C 60 80 00 */ lis r3, 0x80003194@ha
/* 8001EE10 0001AC50 80 03 31 94 */ lwz r0, 0x80003194@l(r3)
/* 8001EE14 0001AC54 90 0D E3 C0 */ stw r0, __OSNextPartitionType@sda21(r13)
.global lbl_8001EE18
lbl_8001EE18:
/* 8001EE18 0001AC58 3C 60 00 0C */ lis r3, 0xc
/* 8001EE1C 0001AC5C 38 63 A2 CF */ addi r3, r3, -0x5d31
/* 8001EE20 0001AC60 48 00 3C 21 */ bl __OSRestoreCodeExecOnMEM1
/* 8001EE24 0001AC64 38 60 00 1C */ li r3, 0x1c
/* 8001EE28 0001AC68 38 80 00 01 */ li r4, 0x1
/* 8001EE2C 0001AC6C 4B FF D5 C5 */ bl OSAllocFromMEM1ArenaLo
/* 8001EE30 0001AC70 38 00 00 01 */ li r0, 0x1
/* 8001EE34 0001AC74 90 03 00 00 */ stw r0, 0x0(r3)
/* 8001EE38 0001AC78 2C 19 00 00 */ cmpwi r25, 0x0
/* 8001EE3C 0001AC7C 7C 7E 1B 78 */ mr r30, r3
/* 8001EE40 0001AC80 93 03 00 04 */ stw r24, 0x4(r3)
/* 8001EE44 0001AC84 93 83 00 0C */ stw r28, 0xc(r3)
/* 8001EE48 0001AC88 93 A3 00 10 */ stw r29, 0x10(r3)
/* 8001EE4C 0001AC8C 93 23 00 14 */ stw r25, 0x14(r3)
/* 8001EE50 0001AC90 40 82 00 50 */ bne lbl_8001EEA0
/* 8001EE54 0001AC94 38 60 20 00 */ li r3, 0x2000
/* 8001EE58 0001AC98 38 80 00 01 */ li r4, 0x1
/* 8001EE5C 0001AC9C 4B FF D5 95 */ bl OSAllocFromMEM1ArenaLo
/* 8001EE60 0001ACA0 90 7E 00 18 */ stw r3, 0x18(r30)
/* 8001EE64 0001ACA4 80 0D E3 C0 */ lwz r0, __OSNextPartitionType@sda21(r13)
/* 8001EE68 0001ACA8 28 00 00 02 */ cmplwi r0, 0x2
/* 8001EE6C 0001ACAC 40 82 00 24 */ bne lbl_8001EE90
/* 8001EE70 0001ACB0 80 0D E3 CC */ lwz r0, __OSInReboot@sda21(r13)
/* 8001EE74 0001ACB4 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001EE78 0001ACB8 40 82 00 18 */ bne lbl_8001EE90
/* 8001EE7C 0001ACBC 80 7E 00 18 */ lwz r3, 0x18(r30)
/* 8001EE80 0001ACC0 7F E4 FB 78 */ mr r4, r31
/* 8001EE84 0001ACC4 7F 45 D3 78 */ mr r5, r26
/* 8001EE88 0001ACC8 4B FF F4 09 */ bl PackInstallerArgs
/* 8001EE8C 0001ACCC 48 00 00 14 */ b lbl_8001EEA0
.global lbl_8001EE90
lbl_8001EE90:
/* 8001EE90 0001ACD0 80 7E 00 18 */ lwz r3, 0x18(r30)
/* 8001EE94 0001ACD4 7F E4 FB 78 */ mr r4, r31
/* 8001EE98 0001ACD8 7F 45 D3 78 */ mr r5, r26
/* 8001EE9C 0001ACDC 4B FF F1 15 */ bl PackArgs
.global lbl_8001EEA0
lbl_8001EEA0:
/* 8001EEA0 0001ACE0 48 01 B3 71 */ bl DVDInit
/* 8001EEA4 0001ACE4 38 60 00 01 */ li r3, 0x1
/* 8001EEA8 0001ACE8 48 01 F6 39 */ bl DVDSetAutoInvalidation
/* 8001EEAC 0001ACEC 48 01 F6 45 */ bl DVDResume
/* 8001EEB0 0001ACF0 38 00 00 00 */ li r0, 0x0
/* 8001EEB4 0001ACF4 3C 60 80 02 */ lis r3, Callback_8001E4A0@ha
/* 8001EEB8 0001ACF8 90 0D E3 D0 */ stw r0, Prepared_8055C7F0@sda21(r13)
/* 8001EEBC 0001ACFC 38 63 E4 A0 */ addi r3, r3, Callback_8001E4A0@l
/* 8001EEC0 0001AD00 48 01 FF 01 */ bl __DVDPrepareResetAsync
/* 8001EEC4 0001AD04 38 60 FF F0 */ li r3, -0x10
/* 8001EEC8 0001AD08 48 00 2D 29 */ bl __OSMaskInterrupts
/* 8001EECC 0001AD0C 38 60 00 10 */ li r3, 0x10
/* 8001EED0 0001AD10 48 00 2D A1 */ bl __OSUnmaskInterrupts
/* 8001EED4 0001AD14 48 00 29 6D */ bl OSEnableInterrupts
.global lbl_8001EED8
lbl_8001EED8:
/* 8001EED8 0001AD18 80 0D E3 D0 */ lwz r0, Prepared_8055C7F0@sda21(r13)
/* 8001EEDC 0001AD1C 2C 00 00 01 */ cmpwi r0, 0x1
/* 8001EEE0 0001AD20 40 82 FF F8 */ bne lbl_8001EED8
/* 8001EEE4 0001AD24 4B FF F6 0D */ bl __OSLaunchNextFirmware
/* 8001EEE8 0001AD28 3C 18 60 00 */ addis r0, r24, 0x6000
/* 8001EEEC 0001AD2C 28 00 00 00 */ cmplwi r0, 0x0
/* 8001EEF0 0001AD30 40 82 00 5C */ bne lbl_8001EF4C
/* 8001EEF4 0001AD34 80 0D E3 CC */ lwz r0, __OSInReboot@sda21(r13)
/* 8001EEF8 0001AD38 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001EEFC 0001AD3C 40 82 00 50 */ bne lbl_8001EF4C
/* 8001EF00 0001AD40 48 08 31 21 */ bl ESP_InitLib
/* 8001EF04 0001AD44 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001EF08 0001AD48 40 82 05 F0 */ bne lbl_8001F4F8
/* 8001EF0C 0001AD4C 38 61 00 40 */ addi r3, r1, 0x40
/* 8001EF10 0001AD50 48 08 35 C1 */ bl ESP_GetTitleId
/* 8001EF14 0001AD54 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001EF18 0001AD58 40 82 05 E0 */ bne lbl_8001F4F8
/* 8001EF1C 0001AD5C 48 08 31 65 */ bl ESP_CloseLib
/* 8001EF20 0001AD60 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001EF24 0001AD64 40 82 05 D4 */ bne lbl_8001F4F8
/* 8001EF28 0001AD68 80 7E 00 18 */ lwz r3, 0x18(r30)
/* 8001EF2C 0001AD6C 38 80 00 11 */ li r4, 0x11
/* 8001EF30 0001AD70 80 1A 00 04 */ lwz r0, 0x4(r26)
/* 8001EF34 0001AD74 38 AD 80 B0 */ addi r5, r13, "@3377_805564D0"@sda21
/* 8001EF38 0001AD78 80 E1 00 40 */ lwz r7, 0x40(r1)
/* 8001EF3C 0001AD7C 81 01 00 44 */ lwz r8, 0x44(r1)
/* 8001EF40 0001AD80 7C 63 02 14 */ add r3, r3, r0
/* 8001EF44 0001AD84 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001EF48 0001AD88 4B FE E7 81 */ bl snprintf
.global lbl_8001EF4C
lbl_8001EF4C:
/* 8001EF4C 0001AD8C 38 60 00 20 */ li r3, 0x20
/* 8001EF50 0001AD90 38 80 00 20 */ li r4, 0x20
/* 8001EF54 0001AD94 4B FF D4 9D */ bl OSAllocFromMEM1ArenaLo
/* 8001EF58 0001AD98 80 CD E3 C4 */ lwz r6, "@LOCAL@GetApploaderPosition__Fv@apploaderPosition"@sda21(r13)
/* 8001EF5C 0001AD9C 7C 7F 1B 78 */ mr r31, r3
/* 8001EF60 0001ADA0 2C 06 00 00 */ cmpwi r6, 0x0
/* 8001EF64 0001ADA4 41 82 00 08 */ beq lbl_8001EF6C
/* 8001EF68 0001ADA8 48 00 00 A0 */ b lbl_8001F008
.global lbl_8001EF6C
lbl_8001EF6C:
/* 8001EF6C 0001ADAC 3F 40 80 00 */ lis r26, 0x800030F4@ha
/* 8001EF70 0001ADB0 80 1A 30 F4 */ lwz r0, 0x800030F4@l(r26)
/* 8001EF74 0001ADB4 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001EF78 0001ADB8 41 82 00 88 */ beq lbl_8001F000
/* 8001EF7C 0001ADBC 38 60 00 40 */ li r3, 0x40
/* 8001EF80 0001ADC0 38 80 00 20 */ li r4, 0x20
/* 8001EF84 0001ADC4 4B FF D4 6D */ bl OSAllocFromMEM1ArenaLo
/* 8001EF88 0001ADC8 80 1A 30 F4 */ lwz r0, 0x30f4(r26)
/* 8001EF8C 0001ADCC 7C 7A 1B 78 */ mr r26, r3
/* 8001EF90 0001ADD0 38 61 01 20 */ addi r3, r1, 0x120
/* 8001EF94 0001ADD4 38 A0 00 40 */ li r5, 0x40
/* 8001EF98 0001ADD8 7F 44 D3 78 */ mr r4, r26
/* 8001EF9C 0001ADDC 7C 06 16 70 */ srawi r6, r0, 2
/* 8001EFA0 0001ADE0 38 E0 00 00 */ li r7, 0x0
/* 8001EFA4 0001ADE4 39 00 00 00 */ li r8, 0x0
/* 8001EFA8 0001ADE8 48 01 F1 F9 */ bl DVDReadAbsAsyncPrio
/* 8001EFAC 0001ADEC 48 00 00 28 */ b lbl_8001EFD4
.global lbl_8001EFB0
lbl_8001EFB0:
/* 8001EFB0 0001ADF0 38 61 01 20 */ addi r3, r1, 0x120
/* 8001EFB4 0001ADF4 48 01 F3 BD */ bl DVDGetCommandBlockStatus
/* 8001EFB8 0001ADF8 2C 03 00 02 */ cmpwi r3, 0x2
/* 8001EFBC 0001ADFC 41 81 00 14 */ bgt lbl_8001EFD0
/* 8001EFC0 0001AE00 38 61 01 20 */ addi r3, r1, 0x120
/* 8001EFC4 0001AE04 48 01 F3 AD */ bl DVDGetCommandBlockStatus
/* 8001EFC8 0001AE08 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001EFCC 0001AE0C 40 80 00 08 */ bge lbl_8001EFD4
.global lbl_8001EFD0
lbl_8001EFD0:
/* 8001EFD0 0001AE10 48 00 47 11 */ bl __OSReturnToMenuForError
.global lbl_8001EFD4
lbl_8001EFD4:
/* 8001EFD4 0001AE14 38 61 01 20 */ addi r3, r1, 0x120
/* 8001EFD8 0001AE18 48 01 F3 99 */ bl DVDGetCommandBlockStatus
/* 8001EFDC 0001AE1C 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001EFE0 0001AE20 40 82 FF D0 */ bne lbl_8001EFB0
/* 8001EFE4 0001AE24 3C 60 80 00 */ lis r3, 0x800030F4@ha
/* 8001EFE8 0001AE28 80 9A 00 38 */ lwz r4, 0x38(r26)
/* 8001EFEC 0001AE2C 80 03 30 F4 */ lwz r0, 0x800030F4@l(r3)
/* 8001EFF0 0001AE30 7C 00 22 14 */ add r0, r0, r4
/* 8001EFF4 0001AE34 7C 06 16 70 */ srawi r6, r0, 2
/* 8001EFF8 0001AE38 90 CD E3 C4 */ stw r6, "@LOCAL@GetApploaderPosition__Fv@apploaderPosition"@sda21(r13)
/* 8001EFFC 0001AE3C 48 00 00 0C */ b lbl_8001F008
.global lbl_8001F000
lbl_8001F000:
/* 8001F000 0001AE40 38 C0 09 10 */ li r6, 0x910
/* 8001F004 0001AE44 90 CD E3 C4 */ stw r6, "@LOCAL@GetApploaderPosition__Fv@apploaderPosition"@sda21(r13)
.global lbl_8001F008
lbl_8001F008:
/* 8001F008 0001AE48 7F E4 FB 78 */ mr r4, r31
/* 8001F00C 0001AE4C 38 61 01 50 */ addi r3, r1, 0x150
/* 8001F010 0001AE50 38 A0 00 20 */ li r5, 0x20
/* 8001F014 0001AE54 38 E0 00 00 */ li r7, 0x0
/* 8001F018 0001AE58 39 00 00 00 */ li r8, 0x0
/* 8001F01C 0001AE5C 48 01 F1 85 */ bl DVDReadAbsAsyncPrio
/* 8001F020 0001AE60 48 00 00 28 */ b lbl_8001F048
.global lbl_8001F024
lbl_8001F024:
/* 8001F024 0001AE64 38 61 01 50 */ addi r3, r1, 0x150
/* 8001F028 0001AE68 48 01 F3 49 */ bl DVDGetCommandBlockStatus
/* 8001F02C 0001AE6C 2C 03 00 02 */ cmpwi r3, 0x2
/* 8001F030 0001AE70 41 81 00 14 */ bgt lbl_8001F044
/* 8001F034 0001AE74 38 61 01 50 */ addi r3, r1, 0x150
/* 8001F038 0001AE78 48 01 F3 39 */ bl DVDGetCommandBlockStatus
/* 8001F03C 0001AE7C 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001F040 0001AE80 40 80 00 08 */ bge lbl_8001F048
.global lbl_8001F044
lbl_8001F044:
/* 8001F044 0001AE84 48 00 46 9D */ bl __OSReturnToMenuForError
.global lbl_8001F048
lbl_8001F048:
/* 8001F048 0001AE88 38 61 01 50 */ addi r3, r1, 0x150
/* 8001F04C 0001AE8C 48 01 F3 25 */ bl DVDGetCommandBlockStatus
/* 8001F050 0001AE90 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001F054 0001AE94 40 82 FF D0 */ bne lbl_8001F024
/* 8001F058 0001AE98 80 CD E3 C4 */ lwz r6, "@LOCAL@GetApploaderPosition__Fv@apploaderPosition"@sda21(r13)
/* 8001F05C 0001AE9C 2C 06 00 00 */ cmpwi r6, 0x0
/* 8001F060 0001AEA0 41 82 00 08 */ beq lbl_8001F068
/* 8001F064 0001AEA4 48 00 00 A0 */ b lbl_8001F104
.global lbl_8001F068
lbl_8001F068:
/* 8001F068 0001AEA8 3F 40 80 00 */ lis r26, 0x800030F4@ha
/* 8001F06C 0001AEAC 80 1A 30 F4 */ lwz r0, 0x800030F4@l(r26)
/* 8001F070 0001AEB0 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001F074 0001AEB4 41 82 00 88 */ beq lbl_8001F0FC
/* 8001F078 0001AEB8 38 60 00 40 */ li r3, 0x40
/* 8001F07C 0001AEBC 38 80 00 20 */ li r4, 0x20
/* 8001F080 0001AEC0 4B FF D3 71 */ bl OSAllocFromMEM1ArenaLo
/* 8001F084 0001AEC4 80 1A 30 F4 */ lwz r0, 0x30f4(r26)
/* 8001F088 0001AEC8 7C 7A 1B 78 */ mr r26, r3
/* 8001F08C 0001AECC 38 61 01 80 */ addi r3, r1, 0x180
/* 8001F090 0001AED0 38 A0 00 40 */ li r5, 0x40
/* 8001F094 0001AED4 7F 44 D3 78 */ mr r4, r26
/* 8001F098 0001AED8 7C 06 16 70 */ srawi r6, r0, 2
/* 8001F09C 0001AEDC 38 E0 00 00 */ li r7, 0x0
/* 8001F0A0 0001AEE0 39 00 00 00 */ li r8, 0x0
/* 8001F0A4 0001AEE4 48 01 F0 FD */ bl DVDReadAbsAsyncPrio
/* 8001F0A8 0001AEE8 48 00 00 28 */ b lbl_8001F0D0
.global lbl_8001F0AC
lbl_8001F0AC:
/* 8001F0AC 0001AEEC 38 61 01 80 */ addi r3, r1, 0x180
/* 8001F0B0 0001AEF0 48 01 F2 C1 */ bl DVDGetCommandBlockStatus
/* 8001F0B4 0001AEF4 2C 03 00 02 */ cmpwi r3, 0x2
/* 8001F0B8 0001AEF8 41 81 00 14 */ bgt lbl_8001F0CC
/* 8001F0BC 0001AEFC 38 61 01 80 */ addi r3, r1, 0x180
/* 8001F0C0 0001AF00 48 01 F2 B1 */ bl DVDGetCommandBlockStatus
/* 8001F0C4 0001AF04 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001F0C8 0001AF08 40 80 00 08 */ bge lbl_8001F0D0
.global lbl_8001F0CC
lbl_8001F0CC:
/* 8001F0CC 0001AF0C 48 00 46 15 */ bl __OSReturnToMenuForError
.global lbl_8001F0D0
lbl_8001F0D0:
/* 8001F0D0 0001AF10 38 61 01 80 */ addi r3, r1, 0x180
/* 8001F0D4 0001AF14 48 01 F2 9D */ bl DVDGetCommandBlockStatus
/* 8001F0D8 0001AF18 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001F0DC 0001AF1C 40 82 FF D0 */ bne lbl_8001F0AC
/* 8001F0E0 0001AF20 3C 60 80 00 */ lis r3, 0x800030F4@ha
/* 8001F0E4 0001AF24 80 9A 00 38 */ lwz r4, 0x38(r26)
/* 8001F0E8 0001AF28 80 03 30 F4 */ lwz r0, 0x800030F4@l(r3)
/* 8001F0EC 0001AF2C 7C 00 22 14 */ add r0, r0, r4
/* 8001F0F0 0001AF30 7C 06 16 70 */ srawi r6, r0, 2
/* 8001F0F4 0001AF34 90 CD E3 C4 */ stw r6, "@LOCAL@GetApploaderPosition__Fv@apploaderPosition"@sda21(r13)
/* 8001F0F8 0001AF38 48 00 00 0C */ b lbl_8001F104
.global lbl_8001F0FC
lbl_8001F0FC:
/* 8001F0FC 0001AF3C 38 C0 09 10 */ li r6, 0x910
/* 8001F100 0001AF40 90 CD E3 C4 */ stw r6, "@LOCAL@GetApploaderPosition__Fv@apploaderPosition"@sda21(r13)
.global lbl_8001F104
lbl_8001F104:
/* 8001F104 0001AF44 80 BF 00 14 */ lwz r5, 0x14(r31)
/* 8001F108 0001AF48 38 61 01 B0 */ addi r3, r1, 0x1b0
/* 8001F10C 0001AF4C 38 C6 00 08 */ addi r6, r6, 0x8
/* 8001F110 0001AF50 3C 80 81 20 */ lis r4, 0x8120
/* 8001F114 0001AF54 38 05 00 1F */ addi r0, r5, 0x1f
/* 8001F118 0001AF58 38 E0 00 00 */ li r7, 0x0
/* 8001F11C 0001AF5C 54 05 00 34 */ clrrwi r5, r0, 5
/* 8001F120 0001AF60 39 00 00 00 */ li r8, 0x0
/* 8001F124 0001AF64 48 01 F0 7D */ bl DVDReadAbsAsyncPrio
/* 8001F128 0001AF68 48 00 00 28 */ b lbl_8001F150
.global lbl_8001F12C
lbl_8001F12C:
/* 8001F12C 0001AF6C 38 61 01 B0 */ addi r3, r1, 0x1b0
/* 8001F130 0001AF70 48 01 F2 41 */ bl DVDGetCommandBlockStatus
/* 8001F134 0001AF74 2C 03 00 02 */ cmpwi r3, 0x2
/* 8001F138 0001AF78 41 81 00 14 */ bgt lbl_8001F14C
/* 8001F13C 0001AF7C 38 61 01 B0 */ addi r3, r1, 0x1b0
/* 8001F140 0001AF80 48 01 F2 31 */ bl DVDGetCommandBlockStatus
/* 8001F144 0001AF84 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001F148 0001AF88 40 80 00 08 */ bge lbl_8001F150
.global lbl_8001F14C
lbl_8001F14C:
/* 8001F14C 0001AF8C 48 00 45 95 */ bl __OSReturnToMenuForError
.global lbl_8001F150
lbl_8001F150:
/* 8001F150 0001AF90 38 61 01 B0 */ addi r3, r1, 0x1b0
/* 8001F154 0001AF94 48 01 F2 1D */ bl DVDGetCommandBlockStatus
/* 8001F158 0001AF98 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001F15C 0001AF9C 40 82 FF D0 */ bne lbl_8001F12C
/* 8001F160 0001AFA0 80 9F 00 14 */ lwz r4, 0x14(r31)
/* 8001F164 0001AFA4 3C 60 81 20 */ lis r3, 0x8120
/* 8001F168 0001AFA8 38 04 00 1F */ addi r0, r4, 0x1f
/* 8001F16C 0001AFAC 54 04 00 34 */ clrrwi r4, r0, 5
/* 8001F170 0001AFB0 4B FF D9 01 */ bl ICInvalidateRange
/* 8001F174 0001AFB4 3C 80 80 42 */ lis r4, "@3378"@ha
/* 8001F178 0001AFB8 7F E3 FB 78 */ mr r3, r31
/* 8001F17C 0001AFBC 38 84 2A 40 */ addi r4, r4, "@3378"@l
/* 8001F180 0001AFC0 38 A0 00 0A */ li r5, 0xa
/* 8001F184 0001AFC4 4B FE EA D5 */ bl strncmp
/* 8001F188 0001AFC8 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001F18C 0001AFCC 40 81 00 0C */ ble lbl_8001F198
/* 8001F190 0001AFD0 38 00 00 01 */ li r0, 0x1
/* 8001F194 0001AFD4 48 00 00 08 */ b lbl_8001F19C
.global lbl_8001F198
lbl_8001F198:
/* 8001F198 0001AFD8 38 00 00 00 */ li r0, 0x0
.global lbl_8001F19C
lbl_8001F19C:
/* 8001F19C 0001AFDC 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001F1A0 0001AFE0 41 82 02 0C */ beq lbl_8001F3AC
/* 8001F1A4 0001AFE4 3C 1B 00 01 */ addis r0, r27, 0x1
/* 8001F1A8 0001AFE8 28 00 FF FF */ cmplwi r0, 0xffff
/* 8001F1AC 0001AFEC 40 82 00 C0 */ bne lbl_8001F26C
/* 8001F1B0 0001AFF0 80 CD E3 C4 */ lwz r6, "@LOCAL@GetApploaderPosition__Fv@apploaderPosition"@sda21(r13)
/* 8001F1B4 0001AFF4 2C 06 00 00 */ cmpwi r6, 0x0
/* 8001F1B8 0001AFF8 41 82 00 08 */ beq lbl_8001F1C0
/* 8001F1BC 0001AFFC 48 00 00 A0 */ b lbl_8001F25C
.global lbl_8001F1C0
lbl_8001F1C0:
/* 8001F1C0 0001B000 3F 60 80 00 */ lis r27, 0x800030F4@ha
/* 8001F1C4 0001B004 80 1B 30 F4 */ lwz r0, 0x800030F4@l(r27)
/* 8001F1C8 0001B008 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001F1CC 0001B00C 41 82 00 88 */ beq lbl_8001F254
/* 8001F1D0 0001B010 38 60 00 40 */ li r3, 0x40
/* 8001F1D4 0001B014 38 80 00 20 */ li r4, 0x20
/* 8001F1D8 0001B018 4B FF D2 19 */ bl OSAllocFromMEM1ArenaLo
/* 8001F1DC 0001B01C 80 1B 30 F4 */ lwz r0, 0x30f4(r27)
/* 8001F1E0 0001B020 7C 7A 1B 78 */ mr r26, r3
/* 8001F1E4 0001B024 38 61 00 F0 */ addi r3, r1, 0xf0
/* 8001F1E8 0001B028 38 A0 00 40 */ li r5, 0x40
/* 8001F1EC 0001B02C 7F 44 D3 78 */ mr r4, r26
/* 8001F1F0 0001B030 7C 06 16 70 */ srawi r6, r0, 2
/* 8001F1F4 0001B034 38 E0 00 00 */ li r7, 0x0
/* 8001F1F8 0001B038 39 00 00 00 */ li r8, 0x0
/* 8001F1FC 0001B03C 48 01 EF A5 */ bl DVDReadAbsAsyncPrio
/* 8001F200 0001B040 48 00 00 28 */ b lbl_8001F228
.global lbl_8001F204
lbl_8001F204:
/* 8001F204 0001B044 38 61 00 F0 */ addi r3, r1, 0xf0
/* 8001F208 0001B048 48 01 F1 69 */ bl DVDGetCommandBlockStatus
/* 8001F20C 0001B04C 2C 03 00 02 */ cmpwi r3, 0x2
/* 8001F210 0001B050 41 81 00 14 */ bgt lbl_8001F224
/* 8001F214 0001B054 38 61 00 F0 */ addi r3, r1, 0xf0
/* 8001F218 0001B058 48 01 F1 59 */ bl DVDGetCommandBlockStatus
/* 8001F21C 0001B05C 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001F220 0001B060 40 80 00 08 */ bge lbl_8001F228
.global lbl_8001F224
lbl_8001F224:
/* 8001F224 0001B064 48 00 44 BD */ bl __OSReturnToMenuForError
.global lbl_8001F228
lbl_8001F228:
/* 8001F228 0001B068 38 61 00 F0 */ addi r3, r1, 0xf0
/* 8001F22C 0001B06C 48 01 F1 45 */ bl DVDGetCommandBlockStatus
/* 8001F230 0001B070 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001F234 0001B074 40 82 FF D0 */ bne lbl_8001F204
/* 8001F238 0001B078 3C 60 80 00 */ lis r3, 0x800030F4@ha
/* 8001F23C 0001B07C 80 9A 00 38 */ lwz r4, 0x38(r26)
/* 8001F240 0001B080 80 03 30 F4 */ lwz r0, 0x800030F4@l(r3)
/* 8001F244 0001B084 7C 00 22 14 */ add r0, r0, r4
/* 8001F248 0001B088 7C 06 16 70 */ srawi r6, r0, 2
/* 8001F24C 0001B08C 90 CD E3 C4 */ stw r6, "@LOCAL@GetApploaderPosition__Fv@apploaderPosition"@sda21(r13)
/* 8001F250 0001B090 48 00 00 0C */ b lbl_8001F25C
.global lbl_8001F254
lbl_8001F254:
/* 8001F254 0001B094 38 C0 09 10 */ li r6, 0x910
/* 8001F258 0001B098 90 CD E3 C4 */ stw r6, "@LOCAL@GetApploaderPosition__Fv@apploaderPosition"@sda21(r13)
.global lbl_8001F25C
lbl_8001F25C:
/* 8001F25C 0001B09C 80 7F 00 14 */ lwz r3, 0x14(r31)
/* 8001F260 0001B0A0 38 03 00 20 */ addi r0, r3, 0x20
/* 8001F264 0001B0A4 54 00 F0 BE */ srwi r0, r0, 2
/* 8001F268 0001B0A8 7F 60 32 14 */ add r27, r0, r6
.global lbl_8001F26C
lbl_8001F26C:
/* 8001F26C 0001B0AC 93 7E 00 08 */ stw r27, 0x8(r30)
/* 8001F270 0001B0B0 38 61 00 20 */ addi r3, r1, 0x20
/* 8001F274 0001B0B4 38 81 00 24 */ addi r4, r1, 0x24
/* 8001F278 0001B0B8 38 A1 00 28 */ addi r5, r1, 0x28
/* 8001F27C 0001B0BC 81 9F 00 10 */ lwz r12, 0x10(r31)
/* 8001F280 0001B0C0 7D 89 03 A6 */ mtctr r12
/* 8001F284 0001B0C4 4E 80 04 21 */ bctrl
/* 8001F288 0001B0C8 38 60 00 1C */ li r3, 0x1c
/* 8001F28C 0001B0CC 38 80 00 01 */ li r4, 0x1
/* 8001F290 0001B0D0 4B FF D1 61 */ bl OSAllocFromMEM1ArenaLo
/* 8001F294 0001B0D4 7C 7A 1B 78 */ mr r26, r3
/* 8001F298 0001B0D8 7F C4 F3 78 */ mr r4, r30
/* 8001F29C 0001B0DC 38 A0 00 1C */ li r5, 0x1c
/* 8001F2A0 0001B0E0 4B FE 4D 61 */ bl memcpy
/* 8001F2A4 0001B0E4 3C 80 80 00 */ lis r4, 0x800030F0@ha
/* 8001F2A8 0001B0E8 3C 60 80 02 */ lis r3, OSReport@ha
/* 8001F2AC 0001B0EC 93 44 30 F0 */ stw r26, 0x800030F0@l(r4)
/* 8001F2B0 0001B0F0 38 63 D9 90 */ addi r3, r3, OSReport@l
/* 8001F2B4 0001B0F4 81 81 00 20 */ lwz r12, 0x20(r1)
/* 8001F2B8 0001B0F8 7D 89 03 A6 */ mtctr r12
/* 8001F2BC 0001B0FC 4E 80 04 21 */ bctrl
/* 8001F2C0 0001B100 7F 43 D3 78 */ mr r3, r26
/* 8001F2C4 0001B104 4B FF D1 0D */ bl OSSetMEM1ArenaLo
/* 8001F2C8 0001B108 48 00 00 60 */ b lbl_8001F328
.global lbl_8001F2CC
lbl_8001F2CC:
/* 8001F2CC 0001B10C 80 C1 00 34 */ lwz r6, 0x34(r1)
/* 8001F2D0 0001B110 38 61 00 C0 */ addi r3, r1, 0xc0
/* 8001F2D4 0001B114 80 0D E6 78 */ lwz r0, __DVDLayoutFormat@sda21(r13)
/* 8001F2D8 0001B118 38 E0 00 00 */ li r7, 0x0
/* 8001F2DC 0001B11C 80 A1 00 30 */ lwz r5, 0x30(r1)
/* 8001F2E0 0001B120 39 00 00 00 */ li r8, 0x0
/* 8001F2E4 0001B124 80 81 00 2C */ lwz r4, 0x2c(r1)
/* 8001F2E8 0001B128 7C C6 04 30 */ srw r6, r6, r0
/* 8001F2EC 0001B12C 48 01 EE B5 */ bl DVDReadAbsAsyncPrio
/* 8001F2F0 0001B130 48 00 00 28 */ b lbl_8001F318
.global lbl_8001F2F4
lbl_8001F2F4:
/* 8001F2F4 0001B134 38 61 00 C0 */ addi r3, r1, 0xc0
/* 8001F2F8 0001B138 48 01 F0 79 */ bl DVDGetCommandBlockStatus
/* 8001F2FC 0001B13C 2C 03 00 02 */ cmpwi r3, 0x2
/* 8001F300 0001B140 41 81 00 14 */ bgt lbl_8001F314
/* 8001F304 0001B144 38 61 00 C0 */ addi r3, r1, 0xc0
/* 8001F308 0001B148 48 01 F0 69 */ bl DVDGetCommandBlockStatus
/* 8001F30C 0001B14C 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001F310 0001B150 40 80 00 08 */ bge lbl_8001F318
.global lbl_8001F314
lbl_8001F314:
/* 8001F314 0001B154 48 00 43 CD */ bl __OSReturnToMenuForError
.global lbl_8001F318
lbl_8001F318:
/* 8001F318 0001B158 38 61 00 C0 */ addi r3, r1, 0xc0
/* 8001F31C 0001B15C 48 01 F0 55 */ bl DVDGetCommandBlockStatus
/* 8001F320 0001B160 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001F324 0001B164 40 82 FF D0 */ bne lbl_8001F2F4
.global lbl_8001F328
lbl_8001F328:
/* 8001F328 0001B168 81 81 00 24 */ lwz r12, 0x24(r1)
/* 8001F32C 0001B16C 38 61 00 2C */ addi r3, r1, 0x2c
/* 8001F330 0001B170 38 81 00 30 */ addi r4, r1, 0x30
/* 8001F334 0001B174 38 A1 00 34 */ addi r5, r1, 0x34
/* 8001F338 0001B178 7D 89 03 A6 */ mtctr r12
/* 8001F33C 0001B17C 4E 80 04 21 */ bctrl
/* 8001F340 0001B180 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001F344 0001B184 40 82 FF 88 */ bne lbl_8001F2CC
/* 8001F348 0001B188 81 81 00 28 */ lwz r12, 0x28(r1)
/* 8001F34C 0001B18C 7D 89 03 A6 */ mtctr r12
/* 8001F350 0001B190 4E 80 04 21 */ bctrl
/* 8001F354 0001B194 3C A0 80 00 */ lis r5, 0x80000000@ha
/* 8001F358 0001B198 7C 7B 1B 78 */ mr r27, r3
/* 8001F35C 0001B19C 80 65 00 00 */ lwz r3, 0x80000000@l(r5)
/* 8001F360 0001B1A0 38 00 00 80 */ li r0, 0x80
/* 8001F364 0001B1A4 90 65 31 80 */ stw r3, 0x3180(r5)
/* 8001F368 0001B1A8 38 60 00 1C */ li r3, 0x1c
/* 8001F36C 0001B1AC 38 80 00 01 */ li r4, 0x1
/* 8001F370 0001B1B0 98 05 31 84 */ stb r0, 0x3184(r5)
/* 8001F374 0001B1B4 4B FF D0 7D */ bl OSAllocFromMEM1ArenaLo
/* 8001F378 0001B1B8 7C 7A 1B 78 */ mr r26, r3
/* 8001F37C 0001B1BC 7F C4 F3 78 */ mr r4, r30
/* 8001F380 0001B1C0 38 A0 00 1C */ li r5, 0x1c
/* 8001F384 0001B1C4 4B FE 4C 7D */ bl memcpy
/* 8001F388 0001B1C8 3C 80 80 00 */ lis r4, 0x800030F0@ha
/* 8001F38C 0001B1CC 3C 60 CC 00 */ lis r3, 0xCC003024@ha
/* 8001F390 0001B1D0 93 44 30 F0 */ stw r26, 0x800030F0@l(r4)
/* 8001F394 0001B1D4 38 00 00 07 */ li r0, 0x7
/* 8001F398 0001B1D8 90 03 30 24 */ stw r0, 0xCC003024@l(r3)
/* 8001F39C 0001B1DC 48 00 24 85 */ bl OSDisableInterrupts
/* 8001F3A0 0001B1E0 7F 63 DB 78 */ mr r3, r27
/* 8001F3A4 0001B1E4 4B FF F0 BD */ bl Run
/* 8001F3A8 0001B1E8 48 00 01 50 */ b lbl_8001F4F8
.global lbl_8001F3AC
lbl_8001F3AC:
/* 8001F3AC 0001B1EC 3C 60 81 30 */ lis r3, 0x812FDFF0@ha
/* 8001F3B0 0001B1F0 3F 60 80 00 */ lis r27, 0x800030E2@ha
/* 8001F3B4 0001B1F4 93 83 DF F0 */ stw r28, 0x812FDFF0@l(r3)
/* 8001F3B8 0001B1F8 38 00 00 01 */ li r0, 0x1
/* 8001F3BC 0001B1FC 93 A3 DF EC */ stw r29, -0x2014(r3)
/* 8001F3C0 0001B200 98 1B 30 E2 */ stb r0, 0x800030E2@l(r27)
/* 8001F3C4 0001B204 80 CD E3 C4 */ lwz r6, "@LOCAL@GetApploaderPosition__Fv@apploaderPosition"@sda21(r13)
/* 8001F3C8 0001B208 2C 06 00 00 */ cmpwi r6, 0x0
/* 8001F3CC 0001B20C 41 82 00 08 */ beq lbl_8001F3D4
/* 8001F3D0 0001B210 48 00 00 9C */ b lbl_8001F46C
.global lbl_8001F3D4
lbl_8001F3D4:
/* 8001F3D4 0001B214 80 1B 30 F4 */ lwz r0, 0x30f4(r27)
/* 8001F3D8 0001B218 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001F3DC 0001B21C 41 82 00 88 */ beq lbl_8001F464
/* 8001F3E0 0001B220 38 60 00 40 */ li r3, 0x40
/* 8001F3E4 0001B224 38 80 00 20 */ li r4, 0x20
/* 8001F3E8 0001B228 4B FF D0 09 */ bl OSAllocFromMEM1ArenaLo
/* 8001F3EC 0001B22C 80 1B 30 F4 */ lwz r0, 0x30f4(r27)
/* 8001F3F0 0001B230 7C 7A 1B 78 */ mr r26, r3
/* 8001F3F4 0001B234 38 61 00 90 */ addi r3, r1, 0x90
/* 8001F3F8 0001B238 38 A0 00 40 */ li r5, 0x40
/* 8001F3FC 0001B23C 7F 44 D3 78 */ mr r4, r26
/* 8001F400 0001B240 7C 06 16 70 */ srawi r6, r0, 2
/* 8001F404 0001B244 38 E0 00 00 */ li r7, 0x0
/* 8001F408 0001B248 39 00 00 00 */ li r8, 0x0
/* 8001F40C 0001B24C 48 01 ED 95 */ bl DVDReadAbsAsyncPrio
/* 8001F410 0001B250 48 00 00 28 */ b lbl_8001F438
.global lbl_8001F414
lbl_8001F414:
/* 8001F414 0001B254 38 61 00 90 */ addi r3, r1, 0x90
/* 8001F418 0001B258 48 01 EF 59 */ bl DVDGetCommandBlockStatus
/* 8001F41C 0001B25C 2C 03 00 02 */ cmpwi r3, 0x2
/* 8001F420 0001B260 41 81 00 14 */ bgt lbl_8001F434
/* 8001F424 0001B264 38 61 00 90 */ addi r3, r1, 0x90
/* 8001F428 0001B268 48 01 EF 49 */ bl DVDGetCommandBlockStatus
/* 8001F42C 0001B26C 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001F430 0001B270 40 80 00 08 */ bge lbl_8001F438
.global lbl_8001F434
lbl_8001F434:
/* 8001F434 0001B274 48 00 42 AD */ bl __OSReturnToMenuForError
.global lbl_8001F438
lbl_8001F438:
/* 8001F438 0001B278 38 61 00 90 */ addi r3, r1, 0x90
/* 8001F43C 0001B27C 48 01 EF 35 */ bl DVDGetCommandBlockStatus
/* 8001F440 0001B280 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001F444 0001B284 40 82 FF D0 */ bne lbl_8001F414
/* 8001F448 0001B288 3C 60 80 00 */ lis r3, 0x800030F4@ha
/* 8001F44C 0001B28C 80 9A 00 38 */ lwz r4, 0x38(r26)
/* 8001F450 0001B290 80 03 30 F4 */ lwz r0, 0x800030F4@l(r3)
/* 8001F454 0001B294 7C 00 22 14 */ add r0, r0, r4
/* 8001F458 0001B298 7C 06 16 70 */ srawi r6, r0, 2
/* 8001F45C 0001B29C 90 CD E3 C4 */ stw r6, "@LOCAL@GetApploaderPosition__Fv@apploaderPosition"@sda21(r13)
/* 8001F460 0001B2A0 48 00 00 0C */ b lbl_8001F46C
.global lbl_8001F464
lbl_8001F464:
/* 8001F464 0001B2A4 38 C0 09 10 */ li r6, 0x910
/* 8001F468 0001B2A8 90 CD E3 C4 */ stw r6, "@LOCAL@GetApploaderPosition__Fv@apploaderPosition"@sda21(r13)
.global lbl_8001F46C
lbl_8001F46C:
/* 8001F46C 0001B2AC 80 FF 00 14 */ lwz r7, 0x14(r31)
/* 8001F470 0001B2B0 38 61 00 60 */ addi r3, r1, 0x60
/* 8001F474 0001B2B4 80 BF 00 18 */ lwz r5, 0x18(r31)
/* 8001F478 0001B2B8 3C 80 81 33 */ lis r4, 0x8133
/* 8001F47C 0001B2BC 38 07 00 20 */ addi r0, r7, 0x20
/* 8001F480 0001B2C0 38 E0 00 00 */ li r7, 0x0
/* 8001F484 0001B2C4 54 08 F0 BE */ srwi r8, r0, 2
/* 8001F488 0001B2C8 38 05 00 1F */ addi r0, r5, 0x1f
/* 8001F48C 0001B2CC 7C C8 32 14 */ add r6, r8, r6
/* 8001F490 0001B2D0 39 00 00 00 */ li r8, 0x0
/* 8001F494 0001B2D4 54 05 00 34 */ clrrwi r5, r0, 5
/* 8001F498 0001B2D8 48 01 ED 09 */ bl DVDReadAbsAsyncPrio
/* 8001F49C 0001B2DC 48 00 00 28 */ b lbl_8001F4C4
.global lbl_8001F4A0
lbl_8001F4A0:
/* 8001F4A0 0001B2E0 38 61 00 60 */ addi r3, r1, 0x60
/* 8001F4A4 0001B2E4 48 01 EE CD */ bl DVDGetCommandBlockStatus
/* 8001F4A8 0001B2E8 2C 03 00 02 */ cmpwi r3, 0x2
/* 8001F4AC 0001B2EC 41 81 00 14 */ bgt lbl_8001F4C0
/* 8001F4B0 0001B2F0 38 61 00 60 */ addi r3, r1, 0x60
/* 8001F4B4 0001B2F4 48 01 EE BD */ bl DVDGetCommandBlockStatus
/* 8001F4B8 0001B2F8 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001F4BC 0001B2FC 40 80 00 08 */ bge lbl_8001F4C4
.global lbl_8001F4C0
lbl_8001F4C0:
/* 8001F4C0 0001B300 48 00 42 21 */ bl __OSReturnToMenuForError
.global lbl_8001F4C4
lbl_8001F4C4:
/* 8001F4C4 0001B304 38 61 00 60 */ addi r3, r1, 0x60
/* 8001F4C8 0001B308 48 01 EE A9 */ bl DVDGetCommandBlockStatus
/* 8001F4CC 0001B30C 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001F4D0 0001B310 40 82 FF D0 */ bne lbl_8001F4A0
/* 8001F4D4 0001B314 80 9F 00 18 */ lwz r4, 0x18(r31)
/* 8001F4D8 0001B318 3C 60 81 33 */ lis r3, 0x8133
/* 8001F4DC 0001B31C 38 04 00 1F */ addi r0, r4, 0x1f
/* 8001F4E0 0001B320 54 04 00 34 */ clrrwi r4, r0, 5
/* 8001F4E4 0001B324 4B FF D5 8D */ bl ICInvalidateRange
/* 8001F4E8 0001B328 48 00 23 39 */ bl OSDisableInterrupts
/* 8001F4EC 0001B32C 4B FF D5 C5 */ bl ICFlashInvalidate
/* 8001F4F0 0001B330 3C 60 81 33 */ lis r3, 0x8133
/* 8001F4F4 0001B334 4B FF EF 6D */ bl Run
.global lbl_8001F4F8
lbl_8001F4F8:
/* 8001F4F8 0001B338 81 41 00 00 */ lwz r10, 0x0(r1)
/* 8001F4FC 0001B33C 7D 4B 53 78 */ mr r11, r10
/* 8001F500 0001B340 4B FE 7E 7D */ bl lbl_8000737C
/* 8001F504 0001B344 80 0A 00 04 */ lwz r0, 0x4(r10)
/* 8001F508 0001B348 7C 08 03 A6 */ mtlr r0
/* 8001F50C 0001B34C 7D 41 53 78 */ mr r1, r10
/* 8001F510 0001B350 4E 80 00 20 */ blr
/* 8001F514 0001B354 00 00 00 00 */ .4byte 0x00000000
/* 8001F518 0001B358 00 00 00 00 */ .4byte 0x00000000
/* 8001F51C 0001B35C 00 00 00 00 */ .4byte 0x00000000
.global __OSBootDol
__OSBootDol:
/* 8001F520 0001B360 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 8001F524 0001B364 7C 08 02 A6 */ mflr r0
/* 8001F528 0001B368 90 01 00 44 */ stw r0, 0x44(r1)
/* 8001F52C 0001B36C 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 8001F530 0001B370 7C 7F 1B 78 */ mr r31, r3
/* 8001F534 0001B374 38 61 00 0C */ addi r3, r1, 0xc
/* 8001F538 0001B378 93 C1 00 38 */ stw r30, 0x38(r1)
/* 8001F53C 0001B37C 7C BE 2B 78 */ mr r30, r5
/* 8001F540 0001B380 93 A1 00 34 */ stw r29, 0x34(r1)
/* 8001F544 0001B384 7C 9D 23 78 */ mr r29, r4
/* 8001F548 0001B388 38 81 00 08 */ addi r4, r1, 0x8
/* 8001F54C 0001B38C 48 00 39 A5 */ bl OSGetSaveRegion
/* 8001F550 0001B390 7F E5 FB 78 */ mr r5, r31
/* 8001F554 0001B394 38 61 00 10 */ addi r3, r1, 0x10
/* 8001F558 0001B398 38 8D 80 B8 */ addi r4, r13, "@3424"@sda21
/* 8001F55C 0001B39C 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001F560 0001B3A0 4B FE E2 5D */ bl sprintf
/* 8001F564 0001B3A4 2C 1E 00 00 */ cmpwi r30, 0x0
/* 8001F568 0001B3A8 3B E0 00 00 */ li r31, 0x0
/* 8001F56C 0001B3AC 41 82 00 20 */ beq lbl_8001F58C
/* 8001F570 0001B3B0 7F C3 F3 78 */ mr r3, r30
/* 8001F574 0001B3B4 48 00 00 0C */ b lbl_8001F580
.global lbl_8001F578
lbl_8001F578:
/* 8001F578 0001B3B8 38 63 00 04 */ addi r3, r3, 0x4
/* 8001F57C 0001B3BC 3B FF 00 01 */ addi r31, r31, 0x1
.global lbl_8001F580
lbl_8001F580:
/* 8001F580 0001B3C0 80 03 00 00 */ lwz r0, 0x0(r3)
/* 8001F584 0001B3C4 2C 00 00 00 */ cmpwi r0, 0x0
/* 8001F588 0001B3C8 40 82 FF F0 */ bne lbl_8001F578
.global lbl_8001F58C
lbl_8001F58C:
/* 8001F58C 0001B3CC 38 1F 00 02 */ addi r0, r31, 0x2
/* 8001F590 0001B3D0 38 80 00 01 */ li r4, 0x1
/* 8001F594 0001B3D4 54 03 10 3A */ slwi r3, r0, 2
/* 8001F598 0001B3D8 4B FF CE 59 */ bl OSAllocFromMEM1ArenaLo
/* 8001F59C 0001B3DC 38 DF 00 01 */ addi r6, r31, 0x1
/* 8001F5A0 0001B3E0 38 01 00 10 */ addi r0, r1, 0x10
/* 8001F5A4 0001B3E4 2C 86 00 01 */ cmpwi cr1, r6, 0x1
/* 8001F5A8 0001B3E8 90 03 00 00 */ stw r0, 0x0(r3)
/* 8001F5AC 0001B3EC 38 80 00 01 */ li r4, 0x1
/* 8001F5B0 0001B3F0 40 85 01 14 */ ble cr1, lbl_8001F6C4
/* 8001F5B4 0001B3F4 2C 1F 00 08 */ cmpwi r31, 0x8
/* 8001F5B8 0001B3F8 38 FF FF F9 */ addi r7, r31, -0x7
/* 8001F5BC 0001B3FC 40 81 00 D4 */ ble lbl_8001F690
/* 8001F5C0 0001B400 39 00 00 00 */ li r8, 0x0
/* 8001F5C4 0001B404 39 20 00 00 */ li r9, 0x0
/* 8001F5C8 0001B408 41 84 00 18 */ blt cr1, lbl_8001F5E0
/* 8001F5CC 0001B40C 3C A0 80 00 */ lis r5, 0x8000
/* 8001F5D0 0001B410 38 05 FF FE */ addi r0, r5, -0x2
/* 8001F5D4 0001B414 7C 06 00 00 */ cmpw r6, r0
/* 8001F5D8 0001B418 41 81 00 08 */ bgt lbl_8001F5E0
/* 8001F5DC 0001B41C 39 20 00 01 */ li r9, 0x1
.global lbl_8001F5E0
lbl_8001F5E0:
/* 8001F5E0 0001B420 2C 09 00 00 */ cmpwi r9, 0x0
/* 8001F5E4 0001B424 41 82 00 38 */ beq lbl_8001F61C
/* 8001F5E8 0001B428 38 1F 00 01 */ addi r0, r31, 0x1
/* 8001F5EC 0001B42C 38 A0 00 01 */ li r5, 0x1
/* 8001F5F0 0001B430 54 06 00 00 */ clrrwi r6, r0, 31
/* 8001F5F4 0001B434 3C 06 80 00 */ addis r0, r6, 0x8000
/* 8001F5F8 0001B438 28 00 00 00 */ cmplwi r0, 0x0
/* 8001F5FC 0001B43C 40 82 00 14 */ bne lbl_8001F610
/* 8001F600 0001B440 57 E0 00 00 */ clrrwi r0, r31, 31
/* 8001F604 0001B444 7C 06 00 00 */ cmpw r6, r0
/* 8001F608 0001B448 41 82 00 08 */ beq lbl_8001F610
/* 8001F60C 0001B44C 38 A0 00 00 */ li r5, 0x0
.global lbl_8001F610
lbl_8001F610:
/* 8001F610 0001B450 2C 05 00 00 */ cmpwi r5, 0x0
/* 8001F614 0001B454 41 82 00 08 */ beq lbl_8001F61C
/* 8001F618 0001B458 39 00 00 01 */ li r8, 0x1
.global lbl_8001F61C
lbl_8001F61C:
/* 8001F61C 0001B45C 2C 08 00 00 */ cmpwi r8, 0x0
/* 8001F620 0001B460 41 82 00 70 */ beq lbl_8001F690
/* 8001F624 0001B464 38 07 00 06 */ addi r0, r7, 0x6
/* 8001F628 0001B468 38 BE 00 04 */ addi r5, r30, 0x4
/* 8001F62C 0001B46C 54 00 E8 FE */ srwi r0, r0, 3
/* 8001F630 0001B470 38 C3 00 04 */ addi r6, r3, 0x4
/* 8001F634 0001B474 7C 09 03 A6 */ mtctr r0
/* 8001F638 0001B478 2C 07 00 01 */ cmpwi r7, 0x1
/* 8001F63C 0001B47C 40 81 00 54 */ ble lbl_8001F690
.global lbl_8001F640
lbl_8001F640:
/* 8001F640 0001B480 80 05 FF FC */ lwz r0, -0x4(r5)
/* 8001F644 0001B484 38 84 00 08 */ addi r4, r4, 0x8
/* 8001F648 0001B488 90 06 00 00 */ stw r0, 0x0(r6)
/* 8001F64C 0001B48C 80 05 00 00 */ lwz r0, 0x0(r5)
/* 8001F650 0001B490 90 06 00 04 */ stw r0, 0x4(r6)
/* 8001F654 0001B494 80 05 00 04 */ lwz r0, 0x4(r5)
/* 8001F658 0001B498 90 06 00 08 */ stw r0, 0x8(r6)
/* 8001F65C 0001B49C 80 05 00 08 */ lwz r0, 0x8(r5)
/* 8001F660 0001B4A0 90 06 00 0C */ stw r0, 0xc(r6)
/* 8001F664 0001B4A4 80 05 00 0C */ lwz r0, 0xc(r5)
/* 8001F668 0001B4A8 90 06 00 10 */ stw r0, 0x10(r6)
/* 8001F66C 0001B4AC 80 05 00 10 */ lwz r0, 0x10(r5)
/* 8001F670 0001B4B0 90 06 00 14 */ stw r0, 0x14(r6)
/* 8001F674 0001B4B4 80 05 00 14 */ lwz r0, 0x14(r5)
/* 8001F678 0001B4B8 90 06 00 18 */ stw r0, 0x18(r6)
/* 8001F67C 0001B4BC 80 05 00 18 */ lwz r0, 0x18(r5)
/* 8001F680 0001B4C0 38 A5 00 20 */ addi r5, r5, 0x20
/* 8001F684 0001B4C4 90 06 00 1C */ stw r0, 0x1c(r6)
/* 8001F688 0001B4C8 38 C6 00 20 */ addi r6, r6, 0x20
/* 8001F68C 0001B4CC 42 00 FF B4 */ bdnz lbl_8001F640
.global lbl_8001F690
lbl_8001F690:
/* 8001F690 0001B4D0 38 BF 00 01 */ addi r5, r31, 0x1
/* 8001F694 0001B4D4 54 87 10 3A */ slwi r7, r4, 2
/* 8001F698 0001B4D8 7C 04 28 50 */ subf r0, r4, r5
/* 8001F69C 0001B4DC 7C DE 3A 14 */ add r6, r30, r7
/* 8001F6A0 0001B4E0 7C E3 3A 14 */ add r7, r3, r7
/* 8001F6A4 0001B4E4 7C 09 03 A6 */ mtctr r0
/* 8001F6A8 0001B4E8 7C 04 28 00 */ cmpw r4, r5
/* 8001F6AC 0001B4EC 40 80 00 18 */ bge lbl_8001F6C4
.global lbl_8001F6B0
lbl_8001F6B0:
/* 8001F6B0 0001B4F0 80 06 FF FC */ lwz r0, -0x4(r6)
/* 8001F6B4 0001B4F4 38 C6 00 04 */ addi r6, r6, 0x4
/* 8001F6B8 0001B4F8 90 07 00 00 */ stw r0, 0x0(r7)
/* 8001F6BC 0001B4FC 38 E7 00 04 */ addi r7, r7, 0x4
/* 8001F6C0 0001B500 42 00 FF F0 */ bdnz lbl_8001F6B0
.global lbl_8001F6C4
lbl_8001F6C4:
/* 8001F6C4 0001B504 80 A1 00 0C */ lwz r5, 0xc(r1)
/* 8001F6C8 0001B508 7C 69 1B 78 */ mr r9, r3
/* 8001F6CC 0001B50C 80 C1 00 08 */ lwz r6, 0x8(r1)
/* 8001F6D0 0001B510 7F A4 EB 78 */ mr r4, r29
/* 8001F6D4 0001B514 39 1F 00 01 */ addi r8, r31, 0x1
/* 8001F6D8 0001B518 38 60 FF FF */ li r3, -0x1
/* 8001F6DC 0001B51C 38 E0 00 00 */ li r7, 0x0
/* 8001F6E0 0001B520 4B FF F6 E1 */ bl __OSBootDolSimple
/* 8001F6E4 0001B524 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8001F6E8 0001B528 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 8001F6EC 0001B52C 83 C1 00 38 */ lwz r30, 0x38(r1)
/* 8001F6F0 0001B530 83 A1 00 34 */ lwz r29, 0x34(r1)
/* 8001F6F4 0001B534 7C 08 03 A6 */ mtlr r0
/* 8001F6F8 0001B538 38 21 00 40 */ addi r1, r1, 0x40
/* 8001F6FC 0001B53C 4E 80 00 20 */ blr
.global OSExecl
OSExecl:
/* 8001F700 0001B540 94 21 FF 40 */ stwu r1, -0xc0(r1)
/* 8001F704 0001B544 7C 08 02 A6 */ mflr r0
/* 8001F708 0001B548 90 01 00 C4 */ stw r0, 0xc4(r1)
/* 8001F70C 0001B54C 93 E1 00 BC */ stw r31, 0xbc(r1)
/* 8001F710 0001B550 93 C1 00 B8 */ stw r30, 0xb8(r1)
/* 8001F714 0001B554 93 A1 00 B4 */ stw r29, 0xb4(r1)
/* 8001F718 0001B558 7C 9D 23 78 */ mr r29, r4
/* 8001F71C 0001B55C 93 81 00 B0 */ stw r28, 0xb0(r1)
/* 8001F720 0001B560 7C 7C 1B 78 */ mr r28, r3
/* 8001F724 0001B564 40 86 00 24 */ bne cr1, lbl_8001F748
/* 8001F728 0001B568 D8 21 00 28 */ stfd f1, 0x28(r1)
/* 8001F72C 0001B56C D8 41 00 30 */ stfd f2, 0x30(r1)
/* 8001F730 0001B570 D8 61 00 38 */ stfd f3, 0x38(r1)
/* 8001F734 0001B574 D8 81 00 40 */ stfd f4, 0x40(r1)
/* 8001F738 0001B578 D8 A1 00 48 */ stfd f5, 0x48(r1)
/* 8001F73C 0001B57C D8 C1 00 50 */ stfd f6, 0x50(r1)
/* 8001F740 0001B580 D8 E1 00 58 */ stfd f7, 0x58(r1)
/* 8001F744 0001B584 D9 01 00 60 */ stfd f8, 0x60(r1)
.global lbl_8001F748
lbl_8001F748:
/* 8001F748 0001B588 90 61 00 08 */ stw r3, 0x8(r1)
/* 8001F74C 0001B58C 90 81 00 0C */ stw r4, 0xc(r1)
/* 8001F750 0001B590 90 A1 00 10 */ stw r5, 0x10(r1)
/* 8001F754 0001B594 90 C1 00 14 */ stw r6, 0x14(r1)
/* 8001F758 0001B598 90 E1 00 18 */ stw r7, 0x18(r1)
/* 8001F75C 0001B59C 91 01 00 1C */ stw r8, 0x1c(r1)
/* 8001F760 0001B5A0 91 21 00 20 */ stw r9, 0x20(r1)
/* 8001F764 0001B5A4 91 41 00 24 */ stw r10, 0x24(r1)
/* 8001F768 0001B5A8 48 00 76 D9 */ bl __OSStopPlayRecord
/* 8001F76C 0001B5AC 48 00 6F 95 */ bl __OSUnRegisterStateEvent
/* 8001F770 0001B5B0 48 00 50 21 */ bl OSDisableScheduler
/* 8001F774 0001B5B4 38 60 00 06 */ li r3, 0x6
/* 8001F778 0001B5B8 48 00 38 D9 */ bl __OSShutdownDevices
/* 8001F77C 0001B5BC 48 00 50 55 */ bl OSEnableScheduler
/* 8001F780 0001B5C0 3C 60 81 28 */ lis r3, 0x8128
/* 8001F784 0001B5C4 4B FF CC 4D */ bl OSSetMEM1ArenaLo
/* 8001F788 0001B5C8 3C 60 81 2F */ lis r3, 0x812f
/* 8001F78C 0001B5CC 4B FF CC 25 */ bl OSSetMEM1ArenaHi
/* 8001F790 0001B5D0 38 60 00 04 */ li r3, 0x4
/* 8001F794 0001B5D4 38 80 10 00 */ li r4, 0x1000
/* 8001F798 0001B5D8 4B FF CC 59 */ bl OSAllocFromMEM1ArenaLo
/* 8001F79C 0001B5DC 38 81 00 C8 */ addi r4, r1, 0xc8
/* 8001F7A0 0001B5E0 38 01 00 08 */ addi r0, r1, 0x8
/* 8001F7A4 0001B5E4 3C A0 02 00 */ lis r5, 0x200
/* 8001F7A8 0001B5E8 90 A1 00 68 */ stw r5, 0x68(r1)
/* 8001F7AC 0001B5EC 7C 7E 1B 78 */ mr r30, r3
/* 8001F7B0 0001B5F0 3B E0 00 00 */ li r31, 0x0
/* 8001F7B4 0001B5F4 90 81 00 6C */ stw r4, 0x6c(r1)
/* 8001F7B8 0001B5F8 90 01 00 70 */ stw r0, 0x70(r1)
/* 8001F7BC 0001B5FC 48 00 00 14 */ b lbl_8001F7D0
.global lbl_8001F7C0
lbl_8001F7C0:
/* 8001F7C0 0001B600 38 61 00 68 */ addi r3, r1, 0x68
/* 8001F7C4 0001B604 38 80 00 01 */ li r4, 0x1
/* 8001F7C8 0001B608 4B FE 72 E1 */ bl __va_arg
/* 8001F7CC 0001B60C 83 A3 00 00 */ lwz r29, 0x0(r3)
.global lbl_8001F7D0
lbl_8001F7D0:
/* 8001F7D0 0001B610 2C 1D 00 00 */ cmpwi r29, 0x0
/* 8001F7D4 0001B614 7F BE F9 2E */ stwx r29, r30, r31
/* 8001F7D8 0001B618 3B FF 00 04 */ addi r31, r31, 0x4
/* 8001F7DC 0001B61C 40 82 FF E4 */ bne lbl_8001F7C0
/* 8001F7E0 0001B620 88 1C 00 00 */ lbz r0, 0x0(r28)
/* 8001F7E4 0001B624 7C 00 07 75 */ extsb. r0, r0
/* 8001F7E8 0001B628 40 82 00 0C */ bne lbl_8001F7F4
/* 8001F7EC 0001B62C 38 60 00 00 */ li r3, 0x0
/* 8001F7F0 0001B630 48 00 00 3C */ b lbl_8001F82C
.global lbl_8001F7F4
lbl_8001F7F4:
/* 8001F7F4 0001B634 7F 83 E3 78 */ mr r3, r28
/* 8001F7F8 0001B638 38 81 00 74 */ addi r4, r1, 0x74
/* 8001F7FC 0001B63C 48 01 A4 A5 */ bl DVDOpen
/* 8001F800 0001B640 2C 03 00 00 */ cmpwi r3, 0x0
/* 8001F804 0001B644 41 82 00 14 */ beq lbl_8001F818
/* 8001F808 0001B648 80 61 00 A4 */ lwz r3, 0xa4(r1)
/* 8001F80C 0001B64C 38 00 FF FF */ li r0, -0x1
/* 8001F810 0001B650 7C 63 00 38 */ and r3, r3, r0
/* 8001F814 0001B654 48 00 00 18 */ b lbl_8001F82C
.global lbl_8001F818
lbl_8001F818:
/* 8001F818 0001B658 3C 60 80 42 */ lis r3, "@3432"@ha
/* 8001F81C 0001B65C 38 63 2A 4C */ addi r3, r3, "@3432"@l
/* 8001F820 0001B660 4C C6 31 82 */ crclr 4*cr1+eq
/* 8001F824 0001B664 4B FF E1 6D */ bl OSReport
/* 8001F828 0001B668 48 00 00 10 */ b lbl_8001F838
.global lbl_8001F82C
lbl_8001F82C:
/* 8001F82C 0001B66C 7F C5 F3 78 */ mr r5, r30
/* 8001F830 0001B670 3C 80 C0 00 */ lis r4, 0xBFFFFFD0@ha
/* 8001F834 0001B674 4B FF FC ED */ bl __OSBootDol
.global lbl_8001F838
lbl_8001F838:
/* 8001F838 0001B678 80 01 00 C4 */ lwz r0, 0xc4(r1)
/* 8001F83C 0001B67C 83 E1 00 BC */ lwz r31, 0xbc(r1)
/* 8001F840 0001B680 83 C1 00 B8 */ lwz r30, 0xb8(r1)
/* 8001F844 0001B684 83 A1 00 B4 */ lwz r29, 0xb4(r1)
/* 8001F848 0001B688 83 81 00 B0 */ lwz r28, 0xb0(r1)
/* 8001F84C 0001B68C 7C 08 03 A6 */ mtlr r0
/* 8001F850 0001B690 38 21 00 C0 */ addi r1, r1, 0xc0
/* 8001F854 0001B694 4E 80 00 20 */ blr
/* 8001F858 0001B698 00 00 00 00 */ .4byte 0x00000000
/* 8001F85C 0001B69C 00 00 00 00 */ .4byte 0x00000000