prime/asm/Kyoto/DolphinCDvdFile.s

977 lines
46 KiB
ArmAsm

.include "macros.inc"
.section .sdata
.balign 8
.global lbl_805A89B0
lbl_805A89B0:
# ROM: 0x3F6350
.4byte 0x00010000
.global lbl_805A89B4
lbl_805A89B4:
# ROM: 0x3F6354
.4byte 0x00010000
.global lbl_805A89B8
lbl_805A89B8:
# ROM: 0x3F6358
.4byte 0x00010000
.section .sbss, "wa"
.balign 8
.global sFirstARAM
sFirstARAM:
.skip 0x4
.section .text, "ax"
.global UpdateFilePos__8CDvdFileFi
UpdateFilePos__8CDvdFileFi:
/* 8034F8D0 0034C830 38 04 00 1F */ addi r0, r4, 0x1f
/* 8034F8D4 0034C834 80 83 00 10 */ lwz r4, 0x10(r3)
/* 8034F8D8 0034C838 54 00 00 34 */ rlwinm r0, r0, 0, 0, 0x1a
/* 8034F8DC 0034C83C 7C 04 02 14 */ add r0, r4, r0
/* 8034F8E0 0034C840 90 03 00 10 */ stw r0, 0x10(r3)
/* 8034F8E4 0034C844 80 83 00 14 */ lwz r4, 0x14(r3)
/* 8034F8E8 0034C848 80 03 00 10 */ lwz r0, 0x10(r3)
/* 8034F8EC 0034C84C 7C 00 20 00 */ cmpw r0, r4
/* 8034F8F0 0034C850 4C 81 00 20 */ blelr
/* 8034F8F4 0034C854 90 83 00 10 */ stw r4, 0x10(r3)
/* 8034F8F8 0034C858 4E 80 00 20 */ blr
.global CalcFileOffset__8CDvdFileFi11ESeekOrigin
CalcFileOffset__8CDvdFileFi11ESeekOrigin:
/* 8034F8FC 0034C85C 2C 05 00 01 */ cmpwi r5, 1
/* 8034F900 0034C860 41 82 00 28 */ beq lbl_8034F928
/* 8034F904 0034C864 40 80 00 10 */ bge lbl_8034F914
/* 8034F908 0034C868 2C 05 00 00 */ cmpwi r5, 0
/* 8034F90C 0034C86C 40 80 00 14 */ bge lbl_8034F920
/* 8034F910 0034C870 4E 80 00 20 */ blr
lbl_8034F914:
/* 8034F914 0034C874 2C 05 00 03 */ cmpwi r5, 3
/* 8034F918 0034C878 4C 80 00 20 */ bgelr
/* 8034F91C 0034C87C 48 00 00 1C */ b lbl_8034F938
lbl_8034F920:
/* 8034F920 0034C880 90 83 00 10 */ stw r4, 0x10(r3)
/* 8034F924 0034C884 4E 80 00 20 */ blr
lbl_8034F928:
/* 8034F928 0034C888 80 03 00 10 */ lwz r0, 0x10(r3)
/* 8034F92C 0034C88C 7C 00 22 14 */ add r0, r0, r4
/* 8034F930 0034C890 90 03 00 10 */ stw r0, 0x10(r3)
/* 8034F934 0034C894 4E 80 00 20 */ blr
lbl_8034F938:
/* 8034F938 0034C898 80 03 00 14 */ lwz r0, 0x14(r3)
/* 8034F93C 0034C89C 7C 04 02 14 */ add r0, r4, r0
/* 8034F940 0034C8A0 90 03 00 10 */ stw r0, 0x10(r3)
/* 8034F944 0034C8A4 4E 80 00 20 */ blr
.if version >= 1
.global internalCallback__8CDvdFileFlP11DVDFileInfo
internalCallback__8CDvdFileFlP11DVDFileInfo:
/* 8034FA28 0034C988 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8034FA2C 0034C98C 7C 08 02 A6 */ mflr r0
/* 8034FA30 0034C990 90 01 00 14 */ stw r0, 0x14(r1)
/* 8034FA34 0034C994 80 64 00 18 */ lwz r3, 0x18(r4)
/* 8034FA38 0034C998 80 84 00 14 */ lwz r4, 0x14(r4)
/* 8034FA3C 0034C99C 48 02 F2 25 */ bl DCInvalidateRange
/* 8034FA40 0034C9A0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8034FA44 0034C9A4 7C 08 03 A6 */ mtlr r0
/* 8034FA48 0034C9A8 38 21 00 10 */ addi r1, r1, 0x10
/* 8034FA4C 0034C9AC 4E 80 00 20 */ blr
.else
.global internalCallback__8CDvdFileFlP11DVDFileInfo
internalCallback__8CDvdFileFlP11DVDFileInfo:
/* 8034F948 0034C8A8 4E 80 00 20 */ blr
.endif
.global FileExists__8CDvdFileFPCc
FileExists__8CDvdFileFPCc:
/* 8034F94C 0034C8AC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8034F950 0034C8B0 7C 08 02 A6 */ mflr r0
/* 8034F954 0034C8B4 90 01 00 14 */ stw r0, 0x14(r1)
/* 8034F958 0034C8B8 48 00 0B 99 */ bl DecodeARAMFile__FPCc
/* 8034F95C 0034C8BC 48 02 19 C1 */ bl DVDConvertPathToEntrynum
/* 8034F960 0034C8C0 20 83 FF FF */ subfic r4, r3, -1
/* 8034F964 0034C8C4 38 03 00 01 */ addi r0, r3, 1
/* 8034F968 0034C8C8 7C 80 03 78 */ or r0, r4, r0
/* 8034F96C 0034C8CC 54 03 0F FE */ srwi r3, r0, 0x1f
/* 8034F970 0034C8D0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8034F974 0034C8D4 7C 08 03 A6 */ mtlr r0
/* 8034F978 0034C8D8 38 21 00 10 */ addi r1, r1, 0x10
/* 8034F97C 0034C8DC 4E 80 00 20 */ blr
.global CloseFile__8CDvdFileFv
CloseFile__8CDvdFileFv:
/* 8034F980 0034C8E0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8034F984 0034C8E4 7C 08 02 A6 */ mflr r0
/* 8034F988 0034C8E8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8034F98C 0034C8EC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8034F990 0034C8F0 7C 7F 1B 78 */ mr r31, r3
/* 8034F994 0034C8F4 88 03 00 08 */ lbz r0, 8(r3)
/* 8034F998 0034C8F8 28 00 00 00 */ cmplwi r0, 0
/* 8034F99C 0034C8FC 41 82 00 10 */ beq lbl_8034F9AC
/* 8034F9A0 0034C900 48 00 03 ED */ bl StallForARAMFile__8CDvdFileFv
/* 8034F9A4 0034C904 80 7F 00 04 */ lwz r3, 4(r31)
/* 8034F9A8 0034C908 4B FF 51 15 */ bl Free__12CARAMManagerFPCv
lbl_8034F9AC:
/* 8034F9AC 0034C90C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8034F9B0 0034C910 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8034F9B4 0034C914 7C 08 03 A6 */ mtlr r0
/* 8034F9B8 0034C918 38 21 00 10 */ addi r1, r1, 0x10
/* 8034F9BC 0034C91C 4E 80 00 20 */ blr
.global AsyncSeekRead__8CDvdFileFPvUi11ESeekOrigini
AsyncSeekRead__8CDvdFileFPvUi11ESeekOrigini:
/* 8034F9C0 0034C920 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8034F9C4 0034C924 7C 08 02 A6 */ mflr r0
/* 8034F9C8 0034C928 90 01 00 24 */ stw r0, 0x24(r1)
/* 8034F9CC 0034C92C BF 61 00 0C */ stmw r27, 0xc(r1)
/* 8034F9D0 0034C930 7C 7D 1B 78 */ mr r29, r3
/* 8034F9D4 0034C934 7C 9E 23 78 */ mr r30, r4
/* 8034F9D8 0034C938 7C BF 2B 78 */ mr r31, r5
/* 8034F9DC 0034C93C 7C DC 33 78 */ mr r28, r6
/* 8034F9E0 0034C940 7C FB 3B 78 */ mr r27, r7
/* 8034F9E4 0034C944 48 00 03 A9 */ bl StallForARAMFile__8CDvdFileFv
/* 8034F9E8 0034C948 7F A3 EB 78 */ mr r3, r29
/* 8034F9EC 0034C94C 7F 64 DB 78 */ mr r4, r27
/* 8034F9F0 0034C950 7F 85 E3 78 */ mr r5, r28
/* 8034F9F4 0034C954 4B FF FF 09 */ bl CalcFileOffset__8CDvdFileFi11ESeekOrigin
/* 8034F9F8 0034C958 88 1D 00 08 */ lbz r0, 8(r29)
/* 8034F9FC 0034C95C 28 00 00 00 */ cmplwi r0, 0
/* 8034FA00 0034C960 41 82 00 74 */ beq lbl_8034FA74
/* 8034FA04 0034C964 38 1F 00 1F */ addi r0, r31, 0x1f
/* 8034FA08 0034C968 7F C3 F3 78 */ mr r3, r30
/* 8034FA0C 0034C96C 54 1B 00 34 */ rlwinm r27, r0, 0, 0, 0x1a
/* 8034FA10 0034C970 7F 64 DB 78 */ mr r4, r27
/* 8034FA14 0034C974 48 02 F0 9D */ bl DCFlushRange
/* 8034FA18 0034C978 3C 80 80 3E */ lis r4, "@stringBase0"@ha
/* 8034FA1C 0034C97C 38 60 00 08 */ li r3, 8
/* 8034FA20 0034C980 38 84 82 30 */ addi r4, r4, "@stringBase0"@l
/* 8034FA24 0034C984 38 A0 00 00 */ li r5, 0
/* 8034FA28 0034C988 4B FC 5E 45 */ bl __nw__FUlPCcPCc
/* 8034FA2C 0034C98C 7C 7C 1B 79 */ or. r28, r3, r3
/* 8034FA30 0034C990 41 82 00 3C */ beq lbl_8034FA6C
/* 8034FA34 0034C994 80 7D 00 04 */ lwz r3, 4(r29)
/* 8034FA38 0034C998 7F C4 F3 78 */ mr r4, r30
/* 8034FA3C 0034C99C 80 1D 00 10 */ lwz r0, 0x10(r29)
/* 8034FA40 0034C9A0 7F 65 DB 78 */ mr r5, r27
/* 8034FA44 0034C9A4 38 C0 00 01 */ li r6, 1
/* 8034FA48 0034C9A8 7C 63 02 14 */ add r3, r3, r0
/* 8034FA4C 0034C9AC 4B FF 4E 05 */ bl DMAToMRAM__12CARAMManagerFPvPvUiQ212CARAMManager12EDMAPriority
/* 8034FA50 0034C9B0 3C A0 80 3E */ lis r5, __vt__11CDvdRequest@ha
/* 8034FA54 0034C9B4 3C 80 80 3F */ lis r4, __vt__15CARAMDvdRequest@ha
/* 8034FA58 0034C9B8 38 05 9F F8 */ addi r0, r5, __vt__11CDvdRequest@l
/* 8034FA5C 0034C9BC 90 1C 00 00 */ stw r0, 0(r28)
/* 8034FA60 0034C9C0 38 04 D5 78 */ addi r0, r4, __vt__15CARAMDvdRequest@l
/* 8034FA64 0034C9C4 90 1C 00 00 */ stw r0, 0(r28)
/* 8034FA68 0034C9C8 90 7C 00 04 */ stw r3, 4(r28)
lbl_8034FA6C:
/* 8034FA6C 0034C9CC 7F 9B E3 78 */ mr r27, r28
/* 8034FA70 0034C9D0 48 00 00 70 */ b lbl_8034FAE0
lbl_8034FA74:
/* 8034FA74 0034C9D4 3C 80 80 3E */ lis r4, "@stringBase0"@ha
/* 8034FA78 0034C9D8 38 60 00 40 */ li r3, 0x40
/* 8034FA7C 0034C9DC 38 84 82 30 */ addi r4, r4, "@stringBase0"@l
/* 8034FA80 0034C9E0 38 A0 00 00 */ li r5, 0
/* 8034FA84 0034C9E4 4B FC 5D E9 */ bl __nw__FUlPCcPCc
/* 8034FA88 0034C9E8 7C 7C 1B 79 */ or. r28, r3, r3
/* 8034FA8C 0034C9EC 41 82 00 1C */ beq lbl_8034FAA8
/* 8034FA90 0034C9F0 3C 80 80 3E */ lis r4, __vt__11CDvdRequest@ha
/* 8034FA94 0034C9F4 3C 60 80 3F */ lis r3, __vt__15CRealDvdRequest@ha
/* 8034FA98 0034C9F8 38 04 9F F8 */ addi r0, r4, __vt__11CDvdRequest@l
/* 8034FA9C 0034C9FC 90 1C 00 00 */ stw r0, 0(r28)
/* 8034FAA0 0034CA00 38 03 D5 94 */ addi r0, r3, __vt__15CRealDvdRequest@l
/* 8034FAA4 0034CA04 90 1C 00 00 */ stw r0, 0(r28)
lbl_8034FAA8:
/* 8034FAA8 0034CA08 3B 7C 00 04 */ addi r27, r28, 4
/* 8034FAAC 0034CA0C 80 7D 00 00 */ lwz r3, 0(r29)
/* 8034FAB0 0034CA10 7F 64 DB 78 */ mr r4, r27
/* 8034FAB4 0034CA14 48 02 1B 5D */ bl DVDFastOpen
/* 8034FAB8 0034CA18 3C 60 80 35 */ lis r3, internalCallback__8CDvdFileFlP11DVDFileInfo@ha
/* 8034FABC 0034CA1C 38 1F 00 1F */ addi r0, r31, 0x1f
/* 8034FAC0 0034CA20 38 E3 F9 48 */ addi r7, r3, internalCallback__8CDvdFileFlP11DVDFileInfo@l
/* 8034FAC4 0034CA24 80 DD 00 10 */ lwz r6, 0x10(r29)
/* 8034FAC8 0034CA28 7F 63 DB 78 */ mr r3, r27
/* 8034FACC 0034CA2C 7F C4 F3 78 */ mr r4, r30
/* 8034FAD0 0034CA30 54 05 00 34 */ rlwinm r5, r0, 0, 0, 0x1a
/* 8034FAD4 0034CA34 39 00 00 02 */ li r8, 2
/* 8034FAD8 0034CA38 48 02 1E BD */ bl DVDReadAsyncPrio
/* 8034FADC 0034CA3C 7F 9B E3 78 */ mr r27, r28
lbl_8034FAE0:
/* 8034FAE0 0034CA40 7F A3 EB 78 */ mr r3, r29
/* 8034FAE4 0034CA44 7F E4 FB 78 */ mr r4, r31
/* 8034FAE8 0034CA48 4B FF FD E9 */ bl UpdateFilePos__8CDvdFileFi
/* 8034FAEC 0034CA4C 7F 63 DB 78 */ mr r3, r27
/* 8034FAF0 0034CA50 BB 61 00 0C */ lmw r27, 0xc(r1)
/* 8034FAF4 0034CA54 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8034FAF8 0034CA58 7C 08 03 A6 */ mtlr r0
/* 8034FAFC 0034CA5C 38 21 00 20 */ addi r1, r1, 0x20
/* 8034FB00 0034CA60 4E 80 00 20 */ blr
.global SyncSeekRead__8CDvdFileFPvUi11ESeekOrigini
SyncSeekRead__8CDvdFileFPvUi11ESeekOrigini:
/* 8034FB04 0034CA64 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 8034FB08 0034CA68 7C 08 02 A6 */ mflr r0
/* 8034FB0C 0034CA6C 90 01 00 64 */ stw r0, 0x64(r1)
/* 8034FB10 0034CA70 BF 61 00 4C */ stmw r27, 0x4c(r1)
/* 8034FB14 0034CA74 7C 7B 1B 78 */ mr r27, r3
/* 8034FB18 0034CA78 7C 9C 23 78 */ mr r28, r4
/* 8034FB1C 0034CA7C 7C BD 2B 78 */ mr r29, r5
/* 8034FB20 0034CA80 7C DE 33 78 */ mr r30, r6
/* 8034FB24 0034CA84 7C FF 3B 78 */ mr r31, r7
/* 8034FB28 0034CA88 48 00 02 65 */ bl StallForARAMFile__8CDvdFileFv
/* 8034FB2C 0034CA8C 7F 63 DB 78 */ mr r3, r27
/* 8034FB30 0034CA90 7F E4 FB 78 */ mr r4, r31
/* 8034FB34 0034CA94 7F C5 F3 78 */ mr r5, r30
/* 8034FB38 0034CA98 4B FF FD C5 */ bl CalcFileOffset__8CDvdFileFi11ESeekOrigin
/* 8034FB3C 0034CA9C 88 1B 00 08 */ lbz r0, 8(r27)
/* 8034FB40 0034CAA0 28 00 00 00 */ cmplwi r0, 0
/* 8034FB44 0034CAA4 41 82 00 3C */ beq lbl_8034FB80
/* 8034FB48 0034CAA8 38 1D 00 1F */ addi r0, r29, 0x1f
/* 8034FB4C 0034CAAC 7F 83 E3 78 */ mr r3, r28
/* 8034FB50 0034CAB0 54 1F 00 34 */ rlwinm r31, r0, 0, 0, 0x1a
/* 8034FB54 0034CAB4 7F E4 FB 78 */ mr r4, r31
/* 8034FB58 0034CAB8 48 02 EF 59 */ bl DCFlushRange
/* 8034FB5C 0034CABC 80 7B 00 04 */ lwz r3, 4(r27)
/* 8034FB60 0034CAC0 7F 84 E3 78 */ mr r4, r28
/* 8034FB64 0034CAC4 80 1B 00 10 */ lwz r0, 0x10(r27)
/* 8034FB68 0034CAC8 7F E5 FB 78 */ mr r5, r31
/* 8034FB6C 0034CACC 38 C0 00 01 */ li r6, 1
/* 8034FB70 0034CAD0 7C 63 02 14 */ add r3, r3, r0
/* 8034FB74 0034CAD4 4B FF 4C DD */ bl DMAToMRAM__12CARAMManagerFPvPvUiQ212CARAMManager12EDMAPriority
/* 8034FB78 0034CAD8 4B FF 4B D1 */ bl WaitForDMACompletion__12CARAMManagerFUi
/* 8034FB7C 0034CADC 48 00 00 4C */ b lbl_8034FBC8
lbl_8034FB80:
/* 8034FB80 0034CAE0 80 7B 00 00 */ lwz r3, 0(r27)
/* 8034FB84 0034CAE4 38 81 00 08 */ addi r4, r1, 8
/* 8034FB88 0034CAE8 48 02 1A 89 */ bl DVDFastOpen
/* 8034FB8C 0034CAEC 3C 60 80 35 */ lis r3, internalCallback__8CDvdFileFlP11DVDFileInfo@ha
/* 8034FB90 0034CAF0 38 1D 00 1F */ addi r0, r29, 0x1f
/* 8034FB94 0034CAF4 38 E3 F9 48 */ addi r7, r3, internalCallback__8CDvdFileFlP11DVDFileInfo@l
/* 8034FB98 0034CAF8 80 DB 00 10 */ lwz r6, 0x10(r27)
/* 8034FB9C 0034CAFC 7F 84 E3 78 */ mr r4, r28
/* 8034FBA0 0034CB00 38 61 00 08 */ addi r3, r1, 8
/* 8034FBA4 0034CB04 54 05 00 34 */ rlwinm r5, r0, 0, 0, 0x1a
/* 8034FBA8 0034CB08 39 00 00 02 */ li r8, 2
/* 8034FBAC 0034CB0C 48 02 1D E9 */ bl DVDReadAsyncPrio
lbl_8034FBB0:
/* 8034FBB0 0034CB10 38 61 00 08 */ addi r3, r1, 8
/* 8034FBB4 0034CB14 48 02 45 51 */ bl DVDGetCommandBlockStatus
/* 8034FBB8 0034CB18 2C 03 00 00 */ cmpwi r3, 0
/* 8034FBBC 0034CB1C 40 82 FF F4 */ bne lbl_8034FBB0
/* 8034FBC0 0034CB20 38 61 00 08 */ addi r3, r1, 8
/* 8034FBC4 0034CB24 48 02 1B 89 */ bl DVDClose
lbl_8034FBC8:
/* 8034FBC8 0034CB28 7F 63 DB 78 */ mr r3, r27
/* 8034FBCC 0034CB2C 7F A4 EB 78 */ mr r4, r29
/* 8034FBD0 0034CB30 4B FF FD 01 */ bl UpdateFilePos__8CDvdFileFi
/* 8034FBD4 0034CB34 BB 61 00 4C */ lmw r27, 0x4c(r1)
/* 8034FBD8 0034CB38 80 01 00 64 */ lwz r0, 0x64(r1)
/* 8034FBDC 0034CB3C 7C 08 03 A6 */ mtlr r0
/* 8034FBE0 0034CB40 38 21 00 60 */ addi r1, r1, 0x60
/* 8034FBE4 0034CB44 4E 80 00 20 */ blr
.global SyncRead__8CDvdFileFPvUi
SyncRead__8CDvdFileFPvUi:
/* 8034FBE8 0034CB48 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8034FBEC 0034CB4C 7C 08 02 A6 */ mflr r0
/* 8034FBF0 0034CB50 38 C0 00 01 */ li r6, 1
/* 8034FBF4 0034CB54 38 E0 00 00 */ li r7, 0
/* 8034FBF8 0034CB58 90 01 00 14 */ stw r0, 0x14(r1)
/* 8034FBFC 0034CB5C 4B FF FD C5 */ bl AsyncSeekRead__8CDvdFileFPvUi11ESeekOrigini
/* 8034FC00 0034CB60 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8034FC04 0034CB64 7C 08 03 A6 */ mtlr r0
/* 8034FC08 0034CB68 38 21 00 10 */ addi r1, r1, 0x10
/* 8034FC0C 0034CB6C 4E 80 00 20 */ blr
.global __dt__8CDvdFileFv
__dt__8CDvdFileFv:
/* 8034FC10 0034CB70 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8034FC14 0034CB74 7C 08 02 A6 */ mflr r0
/* 8034FC18 0034CB78 90 01 00 24 */ stw r0, 0x24(r1)
/* 8034FC1C 0034CB7C BF 61 00 0C */ stmw r27, 0xc(r1)
/* 8034FC20 0034CB80 7C 7B 1B 79 */ or. r27, r3, r3
/* 8034FC24 0034CB84 7C 9C 23 78 */ mr r28, r4
/* 8034FC28 0034CB88 41 82 00 90 */ beq lbl_8034FCB8
/* 8034FC2C 0034CB8C 4B FF FD 55 */ bl CloseFile__8CDvdFileFv
/* 8034FC30 0034CB90 34 1B 00 18 */ addic. r0, r27, 0x18
/* 8034FC34 0034CB94 41 82 00 0C */ beq lbl_8034FC40
/* 8034FC38 0034CB98 38 7B 00 18 */ addi r3, r27, 0x18
/* 8034FC3C 0034CB9C 4B FE DE A5 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
lbl_8034FC40:
/* 8034FC40 0034CBA0 34 1B 00 0C */ addic. r0, r27, 0xc
/* 8034FC44 0034CBA4 41 82 00 64 */ beq lbl_8034FCA8
/* 8034FC48 0034CBA8 83 FB 00 0C */ lwz r31, 0xc(r27)
/* 8034FC4C 0034CBAC 28 1F 00 00 */ cmplwi r31, 0
/* 8034FC50 0034CBB0 41 82 00 58 */ beq lbl_8034FCA8
/* 8034FC54 0034CBB4 34 1F 00 64 */ addic. r0, r31, 0x64
/* 8034FC58 0034CBB8 41 82 00 48 */ beq lbl_8034FCA0
/* 8034FC5C 0034CBBC 3B BF 00 68 */ addi r29, r31, 0x68
/* 8034FC60 0034CBC0 3B C0 00 00 */ li r30, 0
/* 8034FC64 0034CBC4 48 00 00 28 */ b lbl_8034FC8C
lbl_8034FC68:
/* 8034FC68 0034CBC8 28 1D 00 00 */ cmplwi r29, 0
/* 8034FC6C 0034CBCC 41 82 00 18 */ beq lbl_8034FC84
/* 8034FC70 0034CBD0 88 1D 00 00 */ lbz r0, 0(r29)
/* 8034FC74 0034CBD4 28 00 00 00 */ cmplwi r0, 0
/* 8034FC78 0034CBD8 41 82 00 0C */ beq lbl_8034FC84
/* 8034FC7C 0034CBDC 80 7D 00 04 */ lwz r3, 4(r29)
/* 8034FC80 0034CBE0 4B FC 5C B1 */ bl Free__7CMemoryFPCv
lbl_8034FC84:
/* 8034FC84 0034CBE4 3B BD 00 08 */ addi r29, r29, 8
/* 8034FC88 0034CBE8 3B DE 00 01 */ addi r30, r30, 1
lbl_8034FC8C:
/* 8034FC8C 0034CBEC 80 1F 00 64 */ lwz r0, 0x64(r31)
/* 8034FC90 0034CBF0 7C 1E 00 00 */ cmpw r30, r0
/* 8034FC94 0034CBF4 41 80 FF D4 */ blt lbl_8034FC68
/* 8034FC98 0034CBF8 38 00 00 00 */ li r0, 0
/* 8034FC9C 0034CBFC 90 1F 00 64 */ stw r0, 0x64(r31)
lbl_8034FCA0:
/* 8034FCA0 0034CC00 7F E3 FB 78 */ mr r3, r31
/* 8034FCA4 0034CC04 4B FC 5C 8D */ bl Free__7CMemoryFPCv
lbl_8034FCA8:
/* 8034FCA8 0034CC08 7F 80 07 35 */ extsh. r0, r28
/* 8034FCAC 0034CC0C 40 81 00 0C */ ble lbl_8034FCB8
/* 8034FCB0 0034CC10 7F 63 DB 78 */ mr r3, r27
/* 8034FCB4 0034CC14 4B FC 5C 7D */ bl Free__7CMemoryFPCv
lbl_8034FCB8:
/* 8034FCB8 0034CC18 7F 63 DB 78 */ mr r3, r27
/* 8034FCBC 0034CC1C BB 61 00 0C */ lmw r27, 0xc(r1)
/* 8034FCC0 0034CC20 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8034FCC4 0034CC24 7C 08 03 A6 */ mtlr r0
/* 8034FCC8 0034CC28 38 21 00 20 */ addi r1, r1, 0x20
/* 8034FCCC 0034CC2C 4E 80 00 20 */ blr
.global __ct__8CDvdFileFPCc
__ct__8CDvdFileFPCc:
/* 8034FCD0 0034CC30 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 8034FCD4 0034CC34 7C 08 02 A6 */ mflr r0
/* 8034FCD8 0034CC38 38 A0 FF FF */ li r5, -1
/* 8034FCDC 0034CC3C 90 01 00 64 */ stw r0, 0x64(r1)
/* 8034FCE0 0034CC40 38 00 FF FF */ li r0, -1
/* 8034FCE4 0034CC44 38 C1 00 08 */ addi r6, r1, 8
/* 8034FCE8 0034CC48 93 E1 00 5C */ stw r31, 0x5c(r1)
/* 8034FCEC 0034CC4C 93 C1 00 58 */ stw r30, 0x58(r1)
/* 8034FCF0 0034CC50 7C 9E 23 78 */ mr r30, r4
/* 8034FCF4 0034CC54 93 A1 00 54 */ stw r29, 0x54(r1)
/* 8034FCF8 0034CC58 7C 7D 1B 78 */ mr r29, r3
/* 8034FCFC 0034CC5C 90 03 00 00 */ stw r0, 0(r3)
/* 8034FD00 0034CC60 38 00 00 00 */ li r0, 0
/* 8034FD04 0034CC64 38 7D 00 18 */ addi r3, r29, 0x18
/* 8034FD08 0034CC68 90 1D 00 04 */ stw r0, 4(r29)
/* 8034FD0C 0034CC6C 98 1D 00 08 */ stb r0, 8(r29)
/* 8034FD10 0034CC70 98 1D 00 09 */ stb r0, 9(r29)
/* 8034FD14 0034CC74 90 1D 00 0C */ stw r0, 0xc(r29)
/* 8034FD18 0034CC78 90 1D 00 10 */ stw r0, 0x10(r29)
/* 8034FD1C 0034CC7C 90 1D 00 14 */ stw r0, 0x14(r29)
/* 8034FD20 0034CC80 4B FE E4 75 */ bl "__ct__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator"
/* 8034FD24 0034CC84 7F C3 F3 78 */ mr r3, r30
/* 8034FD28 0034CC88 48 00 07 C9 */ bl DecodeARAMFile__FPCc
/* 8034FD2C 0034CC8C 7C 7F 1B 78 */ mr r31, r3
/* 8034FD30 0034CC90 48 02 15 ED */ bl DVDConvertPathToEntrynum
/* 8034FD34 0034CC94 90 7D 00 00 */ stw r3, 0(r29)
/* 8034FD38 0034CC98 80 7D 00 00 */ lwz r3, 0(r29)
/* 8034FD3C 0034CC9C 2C 03 FF FF */ cmpwi r3, -1
/* 8034FD40 0034CCA0 41 82 00 0C */ beq lbl_8034FD4C
/* 8034FD44 0034CCA4 38 81 00 0C */ addi r4, r1, 0xc
/* 8034FD48 0034CCA8 48 02 18 C9 */ bl DVDFastOpen
lbl_8034FD4C:
/* 8034FD4C 0034CCAC 80 01 00 40 */ lwz r0, 0x40(r1)
/* 8034FD50 0034CCB0 38 61 00 0C */ addi r3, r1, 0xc
/* 8034FD54 0034CCB4 90 1D 00 14 */ stw r0, 0x14(r29)
/* 8034FD58 0034CCB8 48 02 19 F5 */ bl DVDClose
/* 8034FD5C 0034CCBC 7C 1E F8 40 */ cmplw r30, r31
/* 8034FD60 0034CCC0 41 82 00 0C */ beq lbl_8034FD6C
/* 8034FD64 0034CCC4 7F A3 EB 78 */ mr r3, r29
/* 8034FD68 0034CCC8 48 00 03 D5 */ bl TryARAMFile__8CDvdFileFv
lbl_8034FD6C:
/* 8034FD6C 0034CCCC 80 01 00 64 */ lwz r0, 0x64(r1)
/* 8034FD70 0034CCD0 7F A3 EB 78 */ mr r3, r29
/* 8034FD74 0034CCD4 83 E1 00 5C */ lwz r31, 0x5c(r1)
/* 8034FD78 0034CCD8 83 C1 00 58 */ lwz r30, 0x58(r1)
/* 8034FD7C 0034CCDC 83 A1 00 54 */ lwz r29, 0x54(r1)
/* 8034FD80 0034CCE0 7C 08 03 A6 */ mtlr r0
/* 8034FD84 0034CCE4 38 21 00 60 */ addi r1, r1, 0x60
/* 8034FD88 0034CCE8 4E 80 00 20 */ blr
.global StallForARAMFile__8CDvdFileFv
StallForARAMFile__8CDvdFileFv:
/* 8034FD8C 0034CCEC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8034FD90 0034CCF0 7C 08 02 A6 */ mflr r0
/* 8034FD94 0034CCF4 90 01 00 14 */ stw r0, 0x14(r1)
/* 8034FD98 0034CCF8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8034FD9C 0034CCFC 7C 7F 1B 78 */ mr r31, r3
/* 8034FDA0 0034CD00 48 00 00 08 */ b lbl_8034FDA8
lbl_8034FDA4:
/* 8034FDA4 0034CD04 48 03 4D 79 */ bl OSYieldThread
lbl_8034FDA8:
/* 8034FDA8 0034CD08 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 8034FDAC 0034CD0C 28 00 00 00 */ cmplwi r0, 0
/* 8034FDB0 0034CD10 40 82 FF F4 */ bne lbl_8034FDA4
/* 8034FDB4 0034CD14 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8034FDB8 0034CD18 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8034FDBC 0034CD1C 7C 08 03 A6 */ mtlr r0
/* 8034FDC0 0034CD20 38 21 00 10 */ addi r1, r1, 0x10
/* 8034FDC4 0034CD24 4E 80 00 20 */ blr
.global StartARAMFileLoad__8CDvdFileFv
StartARAMFileLoad__8CDvdFileFv:
/* 8034FDC8 0034CD28 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 8034FDCC 0034CD2C 7C 08 02 A6 */ mflr r0
/* 8034FDD0 0034CD30 3C 80 80 3D */ lis r4, kUnknownType__10CCallStack@ha
/* 8034FDD4 0034CD34 90 01 00 44 */ stw r0, 0x44(r1)
/* 8034FDD8 0034CD38 38 C4 6A A8 */ addi r6, r4, kUnknownType__10CCallStack@l
/* 8034FDDC 0034CD3C 38 80 FF FF */ li r4, -1
/* 8034FDE0 0034CD40 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 8034FDE4 0034CD44 93 C1 00 38 */ stw r30, 0x38(r1)
/* 8034FDE8 0034CD48 93 A1 00 34 */ stw r29, 0x34(r1)
/* 8034FDEC 0034CD4C 7C 7D 1B 78 */ mr r29, r3
/* 8034FDF0 0034CD50 3C 60 80 3E */ lis r3, "@stringBase0"@ha
/* 8034FDF4 0034CD54 93 81 00 30 */ stw r28, 0x30(r1)
/* 8034FDF8 0034CD58 38 A3 82 30 */ addi r5, r3, "@stringBase0"@l
/* 8034FDFC 0034CD5C 38 61 00 20 */ addi r3, r1, 0x20
/* 8034FE00 0034CD60 83 FD 00 0C */ lwz r31, 0xc(r29)
/* 8034FE04 0034CD64 4B F8 65 D1 */ bl __ct__10CCallStackFUiPCcPCc
/* 8034FE08 0034CD68 7C 67 1B 78 */ mr r7, r3
/* 8034FE0C 0034CD6C 3C 60 00 01 */ lis r3, 1
/* 8034FE10 0034CD70 38 80 00 02 */ li r4, 2
/* 8034FE14 0034CD74 38 A0 00 01 */ li r5, 1
/* 8034FE18 0034CD78 38 C0 00 00 */ li r6, 0
/* 8034FE1C 0034CD7C 4B FC 5B 79 */ bl Alloc__7CMemoryFUlQ210IAllocator5EHintQ210IAllocator6EScopeQ210IAllocator5ETypeRC10CCallStack
/* 8034FE20 0034CD80 80 1F 00 64 */ lwz r0, 0x64(r31)
/* 8034FE24 0034CD84 7C 83 00 D0 */ neg r4, r3
/* 8034FE28 0034CD88 7C 84 1B 78 */ or r4, r4, r3
/* 8034FE2C 0034CD8C 3B DF 00 68 */ addi r30, r31, 0x68
/* 8034FE30 0034CD90 54 00 18 38 */ slwi r0, r0, 3
/* 8034FE34 0034CD94 90 61 00 1C */ stw r3, 0x1c(r1)
/* 8034FE38 0034CD98 54 84 0F FE */ srwi r4, r4, 0x1f
/* 8034FE3C 0034CD9C 7C BE 02 15 */ add. r5, r30, r0
/* 8034FE40 0034CDA0 98 81 00 18 */ stb r4, 0x18(r1)
/* 8034FE44 0034CDA4 41 82 00 14 */ beq lbl_8034FE58
/* 8034FE48 0034CDA8 98 85 00 00 */ stb r4, 0(r5)
/* 8034FE4C 0034CDAC 38 00 00 00 */ li r0, 0
/* 8034FE50 0034CDB0 90 65 00 04 */ stw r3, 4(r5)
/* 8034FE54 0034CDB4 98 01 00 18 */ stb r0, 0x18(r1)
lbl_8034FE58:
/* 8034FE58 0034CDB8 80 7F 00 64 */ lwz r3, 0x64(r31)
/* 8034FE5C 0034CDBC 88 01 00 18 */ lbz r0, 0x18(r1)
/* 8034FE60 0034CDC0 38 63 00 01 */ addi r3, r3, 1
/* 8034FE64 0034CDC4 28 00 00 00 */ cmplwi r0, 0
/* 8034FE68 0034CDC8 90 7F 00 64 */ stw r3, 0x64(r31)
/* 8034FE6C 0034CDCC 41 82 00 0C */ beq lbl_8034FE78
/* 8034FE70 0034CDD0 80 61 00 1C */ lwz r3, 0x1c(r1)
/* 8034FE74 0034CDD4 4B FC 5A BD */ bl Free__7CMemoryFPCv
lbl_8034FE78:
/* 8034FE78 0034CDD8 3C 60 80 3E */ lis r3, "@stringBase0"@ha
/* 8034FE7C 0034CDDC 3C 80 80 3D */ lis r4, kUnknownType__10CCallStack@ha
/* 8034FE80 0034CDE0 38 A3 82 30 */ addi r5, r3, "@stringBase0"@l
/* 8034FE84 0034CDE4 38 C4 6A A8 */ addi r6, r4, kUnknownType__10CCallStack@l
/* 8034FE88 0034CDE8 38 61 00 10 */ addi r3, r1, 0x10
/* 8034FE8C 0034CDEC 38 80 FF FF */ li r4, -1
/* 8034FE90 0034CDF0 4B F8 65 45 */ bl __ct__10CCallStackFUiPCcPCc
/* 8034FE94 0034CDF4 7C 67 1B 78 */ mr r7, r3
/* 8034FE98 0034CDF8 3C 60 00 01 */ lis r3, 1
/* 8034FE9C 0034CDFC 38 80 00 02 */ li r4, 2
/* 8034FEA0 0034CE00 38 A0 00 01 */ li r5, 1
/* 8034FEA4 0034CE04 38 C0 00 00 */ li r6, 0
/* 8034FEA8 0034CE08 4B FC 5A ED */ bl Alloc__7CMemoryFUlQ210IAllocator5EHintQ210IAllocator6EScopeQ210IAllocator5ETypeRC10CCallStack
/* 8034FEAC 0034CE0C 80 1F 00 64 */ lwz r0, 0x64(r31)
/* 8034FEB0 0034CE10 7C 83 00 D0 */ neg r4, r3
/* 8034FEB4 0034CE14 7C 84 1B 78 */ or r4, r4, r3
/* 8034FEB8 0034CE18 90 61 00 0C */ stw r3, 0xc(r1)
/* 8034FEBC 0034CE1C 54 00 18 38 */ slwi r0, r0, 3
/* 8034FEC0 0034CE20 54 84 0F FE */ srwi r4, r4, 0x1f
/* 8034FEC4 0034CE24 7C BE 02 15 */ add. r5, r30, r0
/* 8034FEC8 0034CE28 98 81 00 08 */ stb r4, 8(r1)
/* 8034FECC 0034CE2C 41 82 00 14 */ beq lbl_8034FEE0
/* 8034FED0 0034CE30 98 85 00 00 */ stb r4, 0(r5)
/* 8034FED4 0034CE34 38 00 00 00 */ li r0, 0
/* 8034FED8 0034CE38 90 65 00 04 */ stw r3, 4(r5)
/* 8034FEDC 0034CE3C 98 01 00 08 */ stb r0, 8(r1)
lbl_8034FEE0:
/* 8034FEE0 0034CE40 80 7F 00 64 */ lwz r3, 0x64(r31)
/* 8034FEE4 0034CE44 88 01 00 08 */ lbz r0, 8(r1)
/* 8034FEE8 0034CE48 38 63 00 01 */ addi r3, r3, 1
/* 8034FEEC 0034CE4C 28 00 00 00 */ cmplwi r0, 0
/* 8034FEF0 0034CE50 90 7F 00 64 */ stw r3, 0x64(r31)
/* 8034FEF4 0034CE54 41 82 00 0C */ beq lbl_8034FF00
/* 8034FEF8 0034CE58 80 61 00 0C */ lwz r3, 0xc(r1)
/* 8034FEFC 0034CE5C 4B FC 5A 35 */ bl Free__7CMemoryFPCv
lbl_8034FF00:
/* 8034FF00 0034CE60 80 6D 9D F8 */ lwz r3, lbl_805A89B8@sda21(r13)
/* 8034FF04 0034CE64 80 1D 00 14 */ lwz r0, 0x14(r29)
/* 8034FF08 0034CE68 7C 03 00 00 */ cmpw r3, r0
/* 8034FF0C 0034CE6C 40 80 00 0C */ bge lbl_8034FF18
/* 8034FF10 0034CE70 38 6D 9D F8 */ addi r3, r13, lbl_805A89B8@sda21
/* 8034FF14 0034CE74 48 00 00 08 */ b lbl_8034FF1C
lbl_8034FF18:
/* 8034FF18 0034CE78 38 7D 00 14 */ addi r3, r29, 0x14
lbl_8034FF1C:
/* 8034FF1C 0034CE7C 83 83 00 00 */ lwz r28, 0(r3)
/* 8034FF20 0034CE80 38 9F 00 20 */ addi r4, r31, 0x20
/* 8034FF24 0034CE84 80 1F 00 84 */ lwz r0, 0x84(r31)
/* 8034FF28 0034CE88 7C 1C 00 50 */ subf r0, r28, r0
/* 8034FF2C 0034CE8C 90 1F 00 84 */ stw r0, 0x84(r31)
/* 8034FF30 0034CE90 93 9F 00 80 */ stw r28, 0x80(r31)
/* 8034FF34 0034CE94 80 7D 00 00 */ lwz r3, 0(r29)
/* 8034FF38 0034CE98 48 02 16 D9 */ bl DVDFastOpen
/* 8034FF3C 0034CE9C 3C 60 80 35 */ lis r3, DVDARAMXferCallback__8CDvdFileFlP11DVDFileInfo@ha
/* 8034FF40 0034CEA0 80 9E 00 04 */ lwz r4, 4(r30)
/* 8034FF44 0034CEA4 38 E3 04 B8 */ addi r7, r3, DVDARAMXferCallback__8CDvdFileFlP11DVDFileInfo@l
/* 8034FF48 0034CEA8 7F 85 E3 78 */ mr r5, r28
/* 8034FF4C 0034CEAC 38 7F 00 20 */ addi r3, r31, 0x20
/* 8034FF50 0034CEB0 38 C0 00 00 */ li r6, 0
/* 8034FF54 0034CEB4 39 00 00 02 */ li r8, 2
/* 8034FF58 0034CEB8 48 02 1A 3D */ bl DVDReadAsyncPrio
/* 8034FF5C 0034CEBC 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8034FF60 0034CEC0 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 8034FF64 0034CEC4 83 C1 00 38 */ lwz r30, 0x38(r1)
/* 8034FF68 0034CEC8 83 A1 00 34 */ lwz r29, 0x34(r1)
/* 8034FF6C 0034CECC 83 81 00 30 */ lwz r28, 0x30(r1)
/* 8034FF70 0034CED0 7C 08 03 A6 */ mtlr r0
/* 8034FF74 0034CED4 38 21 00 40 */ addi r1, r1, 0x40
/* 8034FF78 0034CED8 4E 80 00 20 */ blr
.global IsARAMFileLoaded__8CDvdFileFv
IsARAMFileLoaded__8CDvdFileFv:
/* 8034FF7C 0034CEDC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8034FF80 0034CEE0 7C 08 02 A6 */ mflr r0
/* 8034FF84 0034CEE4 90 01 00 24 */ stw r0, 0x24(r1)
/* 8034FF88 0034CEE8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8034FF8C 0034CEEC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8034FF90 0034CEF0 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8034FF94 0034CEF4 93 81 00 10 */ stw r28, 0x10(r1)
/* 8034FF98 0034CEF8 7C 7C 1B 78 */ mr r28, r3
/* 8034FF9C 0034CEFC 88 03 00 08 */ lbz r0, 8(r3)
/* 8034FFA0 0034CF00 28 00 00 00 */ cmplwi r0, 0
/* 8034FFA4 0034CF04 40 82 00 0C */ bne lbl_8034FFB0
/* 8034FFA8 0034CF08 38 60 00 01 */ li r3, 1
/* 8034FFAC 0034CF0C 48 00 00 84 */ b lbl_80350030
lbl_8034FFB0:
/* 8034FFB0 0034CF10 88 1C 00 09 */ lbz r0, 9(r28)
/* 8034FFB4 0034CF14 28 00 00 00 */ cmplwi r0, 0
/* 8034FFB8 0034CF18 40 82 00 0C */ bne lbl_8034FFC4
/* 8034FFBC 0034CF1C 38 60 00 00 */ li r3, 0
/* 8034FFC0 0034CF20 48 00 00 70 */ b lbl_80350030
lbl_8034FFC4:
/* 8034FFC4 0034CF24 83 FC 00 0C */ lwz r31, 0xc(r28)
/* 8034FFC8 0034CF28 28 1F 00 00 */ cmplwi r31, 0
/* 8034FFCC 0034CF2C 41 82 00 58 */ beq lbl_80350024
/* 8034FFD0 0034CF30 34 1F 00 64 */ addic. r0, r31, 0x64
/* 8034FFD4 0034CF34 41 82 00 48 */ beq lbl_8035001C
/* 8034FFD8 0034CF38 3B BF 00 68 */ addi r29, r31, 0x68
/* 8034FFDC 0034CF3C 3B C0 00 00 */ li r30, 0
/* 8034FFE0 0034CF40 48 00 00 28 */ b lbl_80350008
lbl_8034FFE4:
/* 8034FFE4 0034CF44 28 1D 00 00 */ cmplwi r29, 0
/* 8034FFE8 0034CF48 41 82 00 18 */ beq lbl_80350000
/* 8034FFEC 0034CF4C 88 1D 00 00 */ lbz r0, 0(r29)
/* 8034FFF0 0034CF50 28 00 00 00 */ cmplwi r0, 0
/* 8034FFF4 0034CF54 41 82 00 0C */ beq lbl_80350000
/* 8034FFF8 0034CF58 80 7D 00 04 */ lwz r3, 4(r29)
/* 8034FFFC 0034CF5C 4B FC 59 35 */ bl Free__7CMemoryFPCv
lbl_80350000:
/* 80350000 0034CF60 3B BD 00 08 */ addi r29, r29, 8
/* 80350004 0034CF64 3B DE 00 01 */ addi r30, r30, 1
lbl_80350008:
/* 80350008 0034CF68 80 1F 00 64 */ lwz r0, 0x64(r31)
/* 8035000C 0034CF6C 7C 1E 00 00 */ cmpw r30, r0
/* 80350010 0034CF70 41 80 FF D4 */ blt lbl_8034FFE4
/* 80350014 0034CF74 38 00 00 00 */ li r0, 0
/* 80350018 0034CF78 90 1F 00 64 */ stw r0, 0x64(r31)
lbl_8035001C:
/* 8035001C 0034CF7C 7F E3 FB 78 */ mr r3, r31
/* 80350020 0034CF80 4B FC 59 11 */ bl Free__7CMemoryFPCv
lbl_80350024:
/* 80350024 0034CF84 38 00 00 00 */ li r0, 0
/* 80350028 0034CF88 38 60 00 01 */ li r3, 1
/* 8035002C 0034CF8C 90 1C 00 0C */ stw r0, 0xc(r28)
lbl_80350030:
/* 80350030 0034CF90 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80350034 0034CF94 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80350038 0034CF98 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8035003C 0034CF9C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80350040 0034CFA0 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80350044 0034CFA4 7C 08 03 A6 */ mtlr r0
/* 80350048 0034CFA8 38 21 00 20 */ addi r1, r1, 0x20
/* 8035004C 0034CFAC 4E 80 00 20 */ blr
.global PopARAMFileLoad__8CDvdFileFv
PopARAMFileLoad__8CDvdFileFv:
/* 80350050 0034CFB0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80350054 0034CFB4 7C 08 02 A6 */ mflr r0
/* 80350058 0034CFB8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8035005C 0034CFBC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80350060 0034CFC0 93 C1 00 08 */ stw r30, 8(r1)
/* 80350064 0034CFC4 7C 7E 1B 78 */ mr r30, r3
/* 80350068 0034CFC8 48 03 15 F9 */ bl OSDisableInterrupts
/* 8035006C 0034CFCC 80 9E 00 0C */ lwz r4, 0xc(r30)
/* 80350070 0034CFD0 38 00 00 01 */ li r0, 1
/* 80350074 0034CFD4 7C 7F 1B 78 */ mr r31, r3
/* 80350078 0034CFD8 80 84 00 60 */ lwz r4, 0x60(r4)
/* 8035007C 0034CFDC 98 1E 00 09 */ stb r0, 9(r30)
/* 80350080 0034CFE0 28 04 00 00 */ cmplwi r4, 0
/* 80350084 0034CFE4 90 8D AA 10 */ stw r4, sFirstARAM@sda21(r13)
/* 80350088 0034CFE8 41 82 00 0C */ beq lbl_80350094
/* 8035008C 0034CFEC 7C 83 23 78 */ mr r3, r4
/* 80350090 0034CFF0 4B FF FD 39 */ bl StartARAMFileLoad__8CDvdFileFv
lbl_80350094:
/* 80350094 0034CFF4 7F E3 FB 78 */ mr r3, r31
/* 80350098 0034CFF8 48 03 15 F1 */ bl OSRestoreInterrupts
/* 8035009C 0034CFFC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 803500A0 0034D000 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 803500A4 0034D004 83 C1 00 08 */ lwz r30, 8(r1)
/* 803500A8 0034D008 7C 08 03 A6 */ mtlr r0
/* 803500AC 0034D00C 38 21 00 10 */ addi r1, r1, 0x10
/* 803500B0 0034D010 4E 80 00 20 */ blr
.global PushARAMFileLoad__8CDvdFileFv
PushARAMFileLoad__8CDvdFileFv:
/* 803500B4 0034D014 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803500B8 0034D018 7C 08 02 A6 */ mflr r0
/* 803500BC 0034D01C 90 01 00 14 */ stw r0, 0x14(r1)
/* 803500C0 0034D020 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803500C4 0034D024 93 C1 00 08 */ stw r30, 8(r1)
/* 803500C8 0034D028 7C 7E 1B 78 */ mr r30, r3
/* 803500CC 0034D02C 48 03 15 95 */ bl OSDisableInterrupts
/* 803500D0 0034D030 80 0D AA 10 */ lwz r0, sFirstARAM@sda21(r13)
/* 803500D4 0034D034 7C 7F 1B 78 */ mr r31, r3
/* 803500D8 0034D038 28 00 00 00 */ cmplwi r0, 0
/* 803500DC 0034D03C 40 82 00 14 */ bne lbl_803500F0
/* 803500E0 0034D040 93 CD AA 10 */ stw r30, sFirstARAM@sda21(r13)
/* 803500E4 0034D044 7F C3 F3 78 */ mr r3, r30
/* 803500E8 0034D048 4B FF FC E1 */ bl StartARAMFileLoad__8CDvdFileFv
/* 803500EC 0034D04C 48 00 00 30 */ b lbl_8035011C
lbl_803500F0:
/* 803500F0 0034D050 7C 03 03 78 */ mr r3, r0
/* 803500F4 0034D054 48 00 00 20 */ b lbl_80350114
lbl_803500F8:
/* 803500F8 0034D058 80 63 00 0C */ lwz r3, 0xc(r3)
/* 803500FC 0034D05C 80 03 00 60 */ lwz r0, 0x60(r3)
/* 80350100 0034D060 28 00 00 00 */ cmplwi r0, 0
/* 80350104 0034D064 40 82 00 0C */ bne lbl_80350110
/* 80350108 0034D068 93 C3 00 60 */ stw r30, 0x60(r3)
/* 8035010C 0034D06C 48 00 00 10 */ b lbl_8035011C
lbl_80350110:
/* 80350110 0034D070 7C 03 03 78 */ mr r3, r0
lbl_80350114:
/* 80350114 0034D074 28 03 00 00 */ cmplwi r3, 0
/* 80350118 0034D078 40 82 FF E0 */ bne lbl_803500F8
lbl_8035011C:
/* 8035011C 0034D07C 7F E3 FB 78 */ mr r3, r31
/* 80350120 0034D080 48 03 15 69 */ bl OSRestoreInterrupts
/* 80350124 0034D084 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80350128 0034D088 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8035012C 0034D08C 83 C1 00 08 */ lwz r30, 8(r1)
/* 80350130 0034D090 7C 08 03 A6 */ mtlr r0
/* 80350134 0034D094 38 21 00 10 */ addi r1, r1, 0x10
/* 80350138 0034D098 4E 80 00 20 */ blr
.global TryARAMFile__8CDvdFileFv
TryARAMFile__8CDvdFileFv:
/* 8035013C 0034D09C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80350140 0034D0A0 7C 08 02 A6 */ mflr r0
/* 80350144 0034D0A4 90 01 00 24 */ stw r0, 0x24(r1)
/* 80350148 0034D0A8 BF 61 00 0C */ stmw r27, 0xc(r1)
/* 8035014C 0034D0AC 7C 7B 1B 78 */ mr r27, r3
/* 80350150 0034D0B0 80 63 00 14 */ lwz r3, 0x14(r3)
/* 80350154 0034D0B4 4B FF 4A D5 */ bl Alloc__12CARAMManagerFUi
/* 80350158 0034D0B8 90 7B 00 04 */ stw r3, 4(r27)
/* 8035015C 0034D0BC 80 62 CB A8 */ lwz r3, kInvalidAlloc__12CARAMManager@sda21(r2)
/* 80350160 0034D0C0 80 1B 00 04 */ lwz r0, 4(r27)
/* 80350164 0034D0C4 7C 03 00 40 */ cmplw r3, r0
/* 80350168 0034D0C8 41 82 00 E0 */ beq lbl_80350248
/* 8035016C 0034D0CC 3C 80 80 3E */ lis r4, "@stringBase0"@ha
/* 80350170 0034D0D0 38 60 00 94 */ li r3, 0x94
/* 80350174 0034D0D4 38 84 82 30 */ addi r4, r4, "@stringBase0"@l
/* 80350178 0034D0D8 38 A0 00 00 */ li r5, 0
/* 8035017C 0034D0DC 4B FC 56 F1 */ bl __nw__FUlPCcPCc
/* 80350180 0034D0E0 7C 7F 1B 79 */ or. r31, r3, r3
/* 80350184 0034D0E4 41 82 00 34 */ beq lbl_803501B8
/* 80350188 0034D0E8 38 00 00 00 */ li r0, 0
/* 8035018C 0034D0EC 90 1F 00 5C */ stw r0, 0x5c(r31)
/* 80350190 0034D0F0 90 1F 00 60 */ stw r0, 0x60(r31)
/* 80350194 0034D0F4 90 1F 00 64 */ stw r0, 0x64(r31)
/* 80350198 0034D0F8 98 1F 00 78 */ stb r0, 0x78(r31)
/* 8035019C 0034D0FC 98 1F 00 79 */ stb r0, 0x79(r31)
/* 803501A0 0034D100 90 1F 00 7C */ stw r0, 0x7c(r31)
/* 803501A4 0034D104 90 1F 00 80 */ stw r0, 0x80(r31)
/* 803501A8 0034D108 90 1F 00 84 */ stw r0, 0x84(r31)
/* 803501AC 0034D10C 90 1F 00 88 */ stw r0, 0x88(r31)
/* 803501B0 0034D110 90 1F 00 8C */ stw r0, 0x8c(r31)
/* 803501B4 0034D114 90 1F 00 90 */ stw r0, 0x90(r31)
lbl_803501B8:
/* 803501B8 0034D118 83 DB 00 0C */ lwz r30, 0xc(r27)
/* 803501BC 0034D11C 28 1E 00 00 */ cmplwi r30, 0
/* 803501C0 0034D120 41 82 00 58 */ beq lbl_80350218
/* 803501C4 0034D124 34 1E 00 64 */ addic. r0, r30, 0x64
/* 803501C8 0034D128 41 82 00 48 */ beq lbl_80350210
/* 803501CC 0034D12C 3B 9E 00 68 */ addi r28, r30, 0x68
/* 803501D0 0034D130 3B A0 00 00 */ li r29, 0
/* 803501D4 0034D134 48 00 00 28 */ b lbl_803501FC
lbl_803501D8:
/* 803501D8 0034D138 28 1C 00 00 */ cmplwi r28, 0
/* 803501DC 0034D13C 41 82 00 18 */ beq lbl_803501F4
/* 803501E0 0034D140 88 1C 00 00 */ lbz r0, 0(r28)
/* 803501E4 0034D144 28 00 00 00 */ cmplwi r0, 0
/* 803501E8 0034D148 41 82 00 0C */ beq lbl_803501F4
/* 803501EC 0034D14C 80 7C 00 04 */ lwz r3, 4(r28)
/* 803501F0 0034D150 4B FC 57 41 */ bl Free__7CMemoryFPCv
lbl_803501F4:
/* 803501F4 0034D154 3B 9C 00 08 */ addi r28, r28, 8
/* 803501F8 0034D158 3B BD 00 01 */ addi r29, r29, 1
lbl_803501FC:
/* 803501FC 0034D15C 80 1E 00 64 */ lwz r0, 0x64(r30)
/* 80350200 0034D160 7C 1D 00 00 */ cmpw r29, r0
/* 80350204 0034D164 41 80 FF D4 */ blt lbl_803501D8
/* 80350208 0034D168 38 00 00 00 */ li r0, 0
/* 8035020C 0034D16C 90 1E 00 64 */ stw r0, 0x64(r30)
lbl_80350210:
/* 80350210 0034D170 7F C3 F3 78 */ mr r3, r30
/* 80350214 0034D174 4B FC 57 1D */ bl Free__7CMemoryFPCv
lbl_80350218:
/* 80350218 0034D178 93 FB 00 0C */ stw r31, 0xc(r27)
/* 8035021C 0034D17C 38 80 00 01 */ li r4, 1
/* 80350220 0034D180 7F 63 DB 78 */ mr r3, r27
/* 80350224 0034D184 80 BB 00 0C */ lwz r5, 0xc(r27)
/* 80350228 0034D188 93 65 00 5C */ stw r27, 0x5c(r5)
/* 8035022C 0034D18C 98 85 00 78 */ stb r4, 0x78(r5)
/* 80350230 0034D190 80 1B 00 14 */ lwz r0, 0x14(r27)
/* 80350234 0034D194 90 05 00 8C */ stw r0, 0x8c(r5)
/* 80350238 0034D198 90 05 00 84 */ stw r0, 0x84(r5)
/* 8035023C 0034D19C 90 05 00 7C */ stw r0, 0x7c(r5)
/* 80350240 0034D1A0 98 9B 00 08 */ stb r4, 8(r27)
/* 80350244 0034D1A4 4B FF FE 71 */ bl PushARAMFileLoad__8CDvdFileFv
lbl_80350248:
/* 80350248 0034D1A8 BB 61 00 0C */ lmw r27, 0xc(r1)
/* 8035024C 0034D1AC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80350250 0034D1B0 7C 08 03 A6 */ mtlr r0
/* 80350254 0034D1B4 38 21 00 20 */ addi r1, r1, 0x20
/* 80350258 0034D1B8 4E 80 00 20 */ blr
.global PingARAMTransfer__8CDvdFileFv
PingARAMTransfer__8CDvdFileFv:
/* 8035025C 0034D1BC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80350260 0034D1C0 7C 08 02 A6 */ mflr r0
/* 80350264 0034D1C4 90 01 00 24 */ stw r0, 0x24(r1)
/* 80350268 0034D1C8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8035026C 0034D1CC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80350270 0034D1D0 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80350274 0034D1D4 7C 7D 1B 78 */ mr r29, r3
/* 80350278 0034D1D8 93 81 00 10 */ stw r28, 0x10(r1)
/* 8035027C 0034D1DC 83 E3 00 0C */ lwz r31, 0xc(r3)
/* 80350280 0034D1E0 80 9F 00 8C */ lwz r4, 0x8c(r31)
/* 80350284 0034D1E4 2C 04 00 00 */ cmpwi r4, 0
/* 80350288 0034D1E8 40 82 00 0C */ bne lbl_80350294
/* 8035028C 0034D1EC 4B FF FD C5 */ bl PopARAMFileLoad__8CDvdFileFv
/* 80350290 0034D1F0 48 00 01 0C */ b lbl_8035039C
lbl_80350294:
/* 80350294 0034D1F4 80 0D 9D F0 */ lwz r0, lbl_805A89B0@sda21(r13)
/* 80350298 0034D1F8 7C 04 00 00 */ cmpw r4, r0
/* 8035029C 0034D1FC 40 80 00 0C */ bge lbl_803502A8
/* 803502A0 0034D200 38 9F 00 8C */ addi r4, r31, 0x8c
/* 803502A4 0034D204 48 00 00 08 */ b lbl_803502AC
lbl_803502A8:
/* 803502A8 0034D208 38 8D 9D F0 */ addi r4, r13, lbl_805A89B0@sda21
lbl_803502AC:
/* 803502AC 0034D20C 80 1F 00 90 */ lwz r0, 0x90(r31)
/* 803502B0 0034D210 3C 60 80 35 */ lis r3, ARAMARAMXferCallback__8CDvdFileFUl@ha
/* 803502B4 0034D214 83 84 00 00 */ lwz r28, 0(r4)
/* 803502B8 0034D218 39 43 04 94 */ addi r10, r3, ARAMARAMXferCallback__8CDvdFileFUl@l
/* 803502BC 0034D21C 3B DF 00 68 */ addi r30, r31, 0x68
/* 803502C0 0034D220 54 00 18 38 */ slwi r0, r0, 3
/* 803502C4 0034D224 7C BE 02 14 */ add r5, r30, r0
/* 803502C8 0034D228 80 9D 00 04 */ lwz r4, 4(r29)
/* 803502CC 0034D22C 80 1F 00 88 */ lwz r0, 0x88(r31)
/* 803502D0 0034D230 7F E3 FB 78 */ mr r3, r31
/* 803502D4 0034D234 80 E5 00 04 */ lwz r7, 4(r5)
/* 803502D8 0034D238 7F 89 E3 78 */ mr r9, r28
/* 803502DC 0034D23C 7D 04 02 14 */ add r8, r4, r0
/* 803502E0 0034D240 38 80 00 00 */ li r4, 0
/* 803502E4 0034D244 38 A0 00 00 */ li r5, 0
/* 803502E8 0034D248 38 C0 00 01 */ li r6, 1
/* 803502EC 0034D24C 48 01 F3 85 */ bl ARQPostRequest
/* 803502F0 0034D250 80 7F 00 8C */ lwz r3, 0x8c(r31)
/* 803502F4 0034D254 38 00 00 00 */ li r0, 0
/* 803502F8 0034D258 7C 7C 18 50 */ subf r3, r28, r3
/* 803502FC 0034D25C 90 7F 00 8C */ stw r3, 0x8c(r31)
/* 80350300 0034D260 80 7F 00 88 */ lwz r3, 0x88(r31)
/* 80350304 0034D264 7C 63 E2 14 */ add r3, r3, r28
/* 80350308 0034D268 90 7F 00 88 */ stw r3, 0x88(r31)
/* 8035030C 0034D26C 98 1F 00 78 */ stb r0, 0x78(r31)
/* 80350310 0034D270 80 1F 00 90 */ lwz r0, 0x90(r31)
/* 80350314 0034D274 68 00 00 01 */ xori r0, r0, 1
/* 80350318 0034D278 90 1F 00 90 */ stw r0, 0x90(r31)
/* 8035031C 0034D27C 80 7F 00 84 */ lwz r3, 0x84(r31)
/* 80350320 0034D280 2C 03 00 00 */ cmpwi r3, 0
/* 80350324 0034D284 41 82 00 78 */ beq lbl_8035039C
/* 80350328 0034D288 80 0D 9D F4 */ lwz r0, lbl_805A89B4@sda21(r13)
/* 8035032C 0034D28C 7C 03 00 00 */ cmpw r3, r0
/* 80350330 0034D290 40 80 00 0C */ bge lbl_8035033C
/* 80350334 0034D294 38 7F 00 84 */ addi r3, r31, 0x84
/* 80350338 0034D298 48 00 00 08 */ b lbl_80350340
lbl_8035033C:
/* 8035033C 0034D29C 38 6D 9D F4 */ addi r3, r13, lbl_805A89B4@sda21
lbl_80350340:
/* 80350340 0034D2A0 83 83 00 00 */ lwz r28, 0(r3)
/* 80350344 0034D2A4 38 9F 00 20 */ addi r4, r31, 0x20
/* 80350348 0034D2A8 80 7D 00 00 */ lwz r3, 0(r29)
/* 8035034C 0034D2AC 48 02 12 C5 */ bl DVDFastOpen
/* 80350350 0034D2B0 80 1F 00 90 */ lwz r0, 0x90(r31)
/* 80350354 0034D2B4 3C 60 80 35 */ lis r3, DVDARAMXferCallback__8CDvdFileFlP11DVDFileInfo@ha
/* 80350358 0034D2B8 38 E3 04 B8 */ addi r7, r3, DVDARAMXferCallback__8CDvdFileFlP11DVDFileInfo@l
/* 8035035C 0034D2BC 80 DF 00 80 */ lwz r6, 0x80(r31)
/* 80350360 0034D2C0 54 03 18 38 */ slwi r3, r0, 3
/* 80350364 0034D2C4 7F 85 E3 78 */ mr r5, r28
/* 80350368 0034D2C8 38 03 00 04 */ addi r0, r3, 4
/* 8035036C 0034D2CC 39 00 00 02 */ li r8, 2
/* 80350370 0034D2D0 7C 9E 00 2E */ lwzx r4, r30, r0
/* 80350374 0034D2D4 38 7F 00 20 */ addi r3, r31, 0x20
/* 80350378 0034D2D8 48 02 16 1D */ bl DVDReadAsyncPrio
/* 8035037C 0034D2DC 80 7F 00 80 */ lwz r3, 0x80(r31)
/* 80350380 0034D2E0 38 00 00 00 */ li r0, 0
/* 80350384 0034D2E4 7C 63 E2 14 */ add r3, r3, r28
/* 80350388 0034D2E8 90 7F 00 80 */ stw r3, 0x80(r31)
/* 8035038C 0034D2EC 80 7F 00 84 */ lwz r3, 0x84(r31)
/* 80350390 0034D2F0 7C 7C 18 50 */ subf r3, r28, r3
/* 80350394 0034D2F4 90 7F 00 84 */ stw r3, 0x84(r31)
/* 80350398 0034D2F8 98 1F 00 79 */ stb r0, 0x79(r31)
lbl_8035039C:
/* 8035039C 0034D2FC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803503A0 0034D300 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 803503A4 0034D304 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 803503A8 0034D308 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 803503AC 0034D30C 83 81 00 10 */ lwz r28, 0x10(r1)
/* 803503B0 0034D310 7C 08 03 A6 */ mtlr r0
/* 803503B4 0034D314 38 21 00 20 */ addi r1, r1, 0x20
/* 803503B8 0034D318 4E 80 00 20 */ blr
.global HandleDVDInterrupt__8CDvdFileFv
HandleDVDInterrupt__8CDvdFileFv:
/* 803503BC 0034D31C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803503C0 0034D320 7C 08 02 A6 */ mflr r0
/* 803503C4 0034D324 90 01 00 14 */ stw r0, 0x14(r1)
/* 803503C8 0034D328 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803503CC 0034D32C 93 C1 00 08 */ stw r30, 8(r1)
/* 803503D0 0034D330 7C 7E 1B 78 */ mr r30, r3
/* 803503D4 0034D334 48 03 12 8D */ bl OSDisableInterrupts
/* 803503D8 0034D338 80 9E 00 0C */ lwz r4, 0xc(r30)
/* 803503DC 0034D33C 38 00 00 01 */ li r0, 1
/* 803503E0 0034D340 7C 7F 1B 78 */ mr r31, r3
/* 803503E4 0034D344 98 04 00 79 */ stb r0, 0x79(r4)
/* 803503E8 0034D348 88 04 00 78 */ lbz r0, 0x78(r4)
/* 803503EC 0034D34C 28 00 00 00 */ cmplwi r0, 0
/* 803503F0 0034D350 41 82 00 18 */ beq lbl_80350408
/* 803503F4 0034D354 88 04 00 79 */ lbz r0, 0x79(r4)
/* 803503F8 0034D358 28 00 00 00 */ cmplwi r0, 0
/* 803503FC 0034D35C 41 82 00 0C */ beq lbl_80350408
/* 80350400 0034D360 7F C3 F3 78 */ mr r3, r30
/* 80350404 0034D364 4B FF FE 59 */ bl PingARAMTransfer__8CDvdFileFv
lbl_80350408:
/* 80350408 0034D368 7F E3 FB 78 */ mr r3, r31
/* 8035040C 0034D36C 48 03 12 7D */ bl OSRestoreInterrupts
/* 80350410 0034D370 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80350414 0034D374 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80350418 0034D378 83 C1 00 08 */ lwz r30, 8(r1)
/* 8035041C 0034D37C 7C 08 03 A6 */ mtlr r0
/* 80350420 0034D380 38 21 00 10 */ addi r1, r1, 0x10
/* 80350424 0034D384 4E 80 00 20 */ blr
.global HandleARAMInterrupt__8CDvdFileFv
HandleARAMInterrupt__8CDvdFileFv:
/* 80350428 0034D388 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8035042C 0034D38C 7C 08 02 A6 */ mflr r0
/* 80350430 0034D390 90 01 00 14 */ stw r0, 0x14(r1)
/* 80350434 0034D394 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80350438 0034D398 93 C1 00 08 */ stw r30, 8(r1)
/* 8035043C 0034D39C 7C 7E 1B 78 */ mr r30, r3
/* 80350440 0034D3A0 48 03 12 21 */ bl OSDisableInterrupts
/* 80350444 0034D3A4 80 9E 00 0C */ lwz r4, 0xc(r30)
/* 80350448 0034D3A8 38 00 00 01 */ li r0, 1
/* 8035044C 0034D3AC 7C 7F 1B 78 */ mr r31, r3
/* 80350450 0034D3B0 98 04 00 78 */ stb r0, 0x78(r4)
/* 80350454 0034D3B4 88 04 00 78 */ lbz r0, 0x78(r4)
/* 80350458 0034D3B8 28 00 00 00 */ cmplwi r0, 0
/* 8035045C 0034D3BC 41 82 00 18 */ beq lbl_80350474
/* 80350460 0034D3C0 88 04 00 79 */ lbz r0, 0x79(r4)
/* 80350464 0034D3C4 28 00 00 00 */ cmplwi r0, 0
/* 80350468 0034D3C8 41 82 00 0C */ beq lbl_80350474
/* 8035046C 0034D3CC 7F C3 F3 78 */ mr r3, r30
/* 80350470 0034D3D0 4B FF FD ED */ bl PingARAMTransfer__8CDvdFileFv
lbl_80350474:
/* 80350474 0034D3D4 7F E3 FB 78 */ mr r3, r31
/* 80350478 0034D3D8 48 03 12 11 */ bl OSRestoreInterrupts
/* 8035047C 0034D3DC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80350480 0034D3E0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80350484 0034D3E4 83 C1 00 08 */ lwz r30, 8(r1)
/* 80350488 0034D3E8 7C 08 03 A6 */ mtlr r0
/* 8035048C 0034D3EC 38 21 00 10 */ addi r1, r1, 0x10
/* 80350490 0034D3F0 4E 80 00 20 */ blr
.global ARAMARAMXferCallback__8CDvdFileFUl
ARAMARAMXferCallback__8CDvdFileFUl:
/* 80350494 0034D3F4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80350498 0034D3F8 7C 08 02 A6 */ mflr r0
/* 8035049C 0034D3FC 90 01 00 14 */ stw r0, 0x14(r1)
/* 803504A0 0034D400 80 63 00 5C */ lwz r3, 0x5c(r3)
/* 803504A4 0034D404 4B FF FF 85 */ bl HandleARAMInterrupt__8CDvdFileFv
/* 803504A8 0034D408 80 01 00 14 */ lwz r0, 0x14(r1)
/* 803504AC 0034D40C 7C 08 03 A6 */ mtlr r0
/* 803504B0 0034D410 38 21 00 10 */ addi r1, r1, 0x10
/* 803504B4 0034D414 4E 80 00 20 */ blr
.global DVDARAMXferCallback__8CDvdFileFlP11DVDFileInfo
DVDARAMXferCallback__8CDvdFileFlP11DVDFileInfo:
/* 803504B8 0034D418 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803504BC 0034D41C 7C 08 02 A6 */ mflr r0
/* 803504C0 0034D420 90 01 00 14 */ stw r0, 0x14(r1)
/* 803504C4 0034D424 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803504C8 0034D428 7C 9F 23 78 */ mr r31, r4
/* 803504CC 0034D42C 7F E3 FB 78 */ mr r3, r31
/* 803504D0 0034D430 48 02 12 7D */ bl DVDClose
/* 803504D4 0034D434 80 7F 00 3C */ lwz r3, 0x3c(r31)
/* 803504D8 0034D438 4B FF FE E5 */ bl HandleDVDInterrupt__8CDvdFileFv
/* 803504DC 0034D43C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 803504E0 0034D440 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 803504E4 0034D444 7C 08 03 A6 */ mtlr r0
/* 803504E8 0034D448 38 21 00 10 */ addi r1, r1, 0x10
/* 803504EC 0034D44C 4E 80 00 20 */ blr
.global DecodeARAMFile__FPCc
DecodeARAMFile__FPCc:
/* 803504F0 0034D450 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803504F4 0034D454 7C 08 02 A6 */ mflr r0
/* 803504F8 0034D458 3C 80 80 3E */ lis r4, "@stringBase0"@ha
/* 803504FC 0034D45C 38 A0 00 05 */ li r5, 5
/* 80350500 0034D460 90 01 00 14 */ stw r0, 0x14(r1)
/* 80350504 0034D464 38 84 82 30 */ addi r4, r4, "@stringBase0"@l
/* 80350508 0034D468 38 84 00 07 */ addi r4, r4, 7
/* 8035050C 0034D46C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80350510 0034D470 7C 7F 1B 78 */ mr r31, r3
/* 80350514 0034D474 48 03 FA 49 */ bl strncmp
/* 80350518 0034D478 2C 03 00 00 */ cmpwi r3, 0
/* 8035051C 0034D47C 41 82 00 0C */ beq lbl_80350528
/* 80350520 0034D480 7F E3 FB 78 */ mr r3, r31
/* 80350524 0034D484 48 00 00 08 */ b lbl_8035052C
lbl_80350528:
/* 80350528 0034D488 38 7F 00 05 */ addi r3, r31, 5
lbl_8035052C:
/* 8035052C 0034D48C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80350530 0034D490 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80350534 0034D494 7C 08 03 A6 */ mtlr r0
/* 80350538 0034D498 38 21 00 10 */ addi r1, r1, 0x10
/* 8035053C 0034D49C 4E 80 00 20 */ blr
.section .rodata
.balign 8
"@stringBase0":
# ROM: 0x3D5230
.asciz "??(??)"
.asciz "aram:"