Files
ph/asm/ov00/Map/Course.s
T
2024-05-17 17:15:07 +02:00

1460 lines
33 KiB
ArmAsm

.include "ov00/Map/Course.inc"
.include "macros/function.inc"
.text
.global _ZN6Course18GetDungeonProgressEP14CourseProgress
arm_func_start _ZN6Course18GetDungeonProgressEP14CourseProgress
_ZN6Course18GetDungeonProgressEP14CourseProgress: ; 0x0207ca00
ldr r2, [r0, #0x268]
str r2, [r1]
ldr r2, [r0, #4]
cmp r2, #3
bxeq lr
ldr r2, [r0, #0x260]
strb r2, [r1, #4]
ldrb r0, [r0, #0x25d]
strb r0, [r1, #5]
bx lr
arm_func_end _ZN6Course18GetDungeonProgressEP14CourseProgress
.global _ZN6Course18func_ov00_0207ca28Eiii
arm_func_start _ZN6Course18func_ov00_0207ca28Eiii
_ZN6Course18func_ov00_0207ca28Eiii: ; 0x0207ca28
stmdb sp!, {r3, lr}
ldr ip, [r0, #4]
add r0, r0, r1, lsl #2
cmp ip, #3
ldr r0, [r0, #0xcc]
bne _0207ca54
mov r1, r2
mov r2, r3
mov r3, #1
bl func_ov00_020972e4
ldmia sp!, {r3, pc}
_0207ca54:
mov r1, r2
mov r2, r3
mov r3, #0
bl func_ov00_020972e4
ldmia sp!, {r3, pc}
arm_func_end _ZN6Course18func_ov00_0207ca28Eiii
.global _ZN6Course13SetCourseNameEPc
arm_func_start _ZN6Course13SetCourseNameEPc
_ZN6Course13SetCourseNameEPc: ; 0x0207ca68
ldr ip, _0207ca74 ; =strcpy
add r0, r0, #0xc
bx ip
.align 2, 0
_0207ca74: .word strcpy
arm_func_end _ZN6Course13SetCourseNameEPc
.global _ZN6Course18func_ov00_0207ca78Eici
arm_func_start _ZN6Course18func_ov00_0207ca78Eici
_ZN6Course18func_ov00_0207ca78Eici: ; 0x0207ca78
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r2
bl _ZN6Course11FindMapDataEj
movs r1, r0
ldmeqia sp!, {r3, r4, r5, pc}
strb r4, [r1]
ldr r0, [r5, #0xc8]
ldr r1, [r1, #8]
mov r2, #1
bl func_ov00_020a3510
ldmia sp!, {r3, r4, r5, pc}
arm_func_end _ZN6Course18func_ov00_0207ca78Eici
.global _ZN6Course18func_ov00_0207caa8EiPiPc
arm_func_start _ZN6Course18func_ov00_0207caa8EiPiPc
_ZN6Course18func_ov00_0207caa8EiPiPc: ; 0x0207caa8
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x10
cmp r1, #0
mov r5, r2
mov r4, r3
addeq sp, sp, #0x10
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
mov r3, #0x47
mov r2, #0
strb r2, [sp, #0xc]
str r3, [sp]
ldr r0, [r0, #0xc8]
add r2, sp, #0
bl func_ov00_020a3710
cmp r0, #0
addeq sp, sp, #0x10
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r1, [sp]
mov r0, #1
str r1, [r5]
ldrb r1, [sp, #4]
strb r1, [r4]
ldrb r1, [sp, #5]
strb r1, [r4, #1]
ldrh r1, [sp, #6]
strh r1, [r4, #2]
ldrh r1, [sp, #8]
strh r1, [r4, #4]
ldrh r1, [sp, #0xa]
strh r1, [r4, #6]
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, pc}
arm_func_end _ZN6Course18func_ov00_0207caa8EiPiPc
.global _ZN6Course18func_ov00_0207cb30Ei
arm_func_start _ZN6Course18func_ov00_0207cb30Ei
_ZN6Course18func_ov00_0207cb30Ei: ; 0x0207cb30
stmdb sp!, {r3, lr}
sub sp, sp, #0x10
cmp r1, #0
addeq sp, sp, #0x10
ldreq r0, _0207cb78 ; =0x0000ffff
ldmeqia sp!, {r3, pc}
mov r3, #0x47
mov r2, #0
strb r2, [sp, #0xc]
str r3, [sp]
ldr r0, [r0, #0xc8]
add r2, sp, #0
bl func_ov00_020a3710
cmp r0, #0
ldrneh r0, [sp, #0xa]
ldreq r0, _0207cb78 ; =0x0000ffff
add sp, sp, #0x10
ldmia sp!, {r3, pc}
.align 2, 0
_0207cb78: .word 0x0000ffff
arm_func_end _ZN6Course18func_ov00_0207cb30Ei
.global _ZN6Course14FindMapGridPosEP5Vec2bPS_j
arm_func_start _ZN6Course14FindMapGridPosEP5Vec2bPS_j
_ZN6Course14FindMapGridPosEP5Vec2bPS_j: ; 0x0207cb7c
stmdb sp!, {r3, r4, r5, lr}
mov lr, #0
mov r5, r1
mov ip, lr
_0207cb8c:
mov r4, ip
_0207cb90:
add r3, r5, r4
ldrb r3, [r3, #0x20]
cmp r2, r3
streqb lr, [r0]
streqb r4, [r0, #1]
ldmeqia sp!, {r3, r4, r5, pc}
add r4, r4, #1
cmp r4, #0xa
blt _0207cb90
add lr, lr, #1
cmp lr, #0xa
add r5, r5, #0xa
blt _0207cb8c
ldrb r2, [r1, #0x1d]
ldrb r1, [r1, #0x1c]
strb r1, [r0]
strb r2, [r0, #1]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end _ZN6Course14FindMapGridPosEP5Vec2bPS_j
.global _ZN6Course13FindMapCenterEi
arm_func_start _ZN6Course13FindMapCenterEi
_ZN6Course13FindMapCenterEi: ; 0x0207cbd8
stmdb sp!, {r3, lr}
bl _ZN6Course11FindMapDataEj
add r0, r0, #0x14
ldmia sp!, {r3, pc}
arm_func_end _ZN6Course13FindMapCenterEi
.global _ZN6Course18func_ov00_0207cbe8Ei
arm_func_start _ZN6Course18func_ov00_0207cbe8Ei
_ZN6Course18func_ov00_0207cbe8Ei: ; 0x0207cbe8
stmdb sp!, {r3, lr}
sub sp, sp, #0x10
cmp r1, #0
addeq sp, sp, #0x10
moveq r0, #0
ldmeqia sp!, {r3, pc}
mov r3, #0x47
mov r2, #0
strb r2, [sp, #0xc]
str r3, [sp]
ldr r0, [r0, #0xc8]
add r2, sp, #0
bl func_ov00_020a3710
add sp, sp, #0x10
ldmia sp!, {r3, pc}
arm_func_end _ZN6Course18func_ov00_0207cbe8Ei
.global _ZN6Course18func_ov00_0207cc24Ei
arm_func_start _ZN6Course18func_ov00_0207cc24Ei
_ZN6Course18func_ov00_0207cc24Ei: ; 0x0207cc24
stmdb sp!, {r3, lr}
sub sp, sp, #0x10
cmp r1, #0
addeq sp, sp, #0x10
moveq r0, #0
ldmeqia sp!, {r3, pc}
mov r3, #0x47
mov r2, #0
strb r2, [sp, #0xc]
str r3, [sp]
ldr r0, [r0, #0xc8]
add r2, sp, #0
bl func_ov00_020a3710
cmp r0, #0
ldrneb r0, [sp, #0xc]
moveq r0, #0
add sp, sp, #0x10
ldmia sp!, {r3, pc}
arm_func_end _ZN6Course18func_ov00_0207cc24Ei
.global _ZN6Course18FindMapData_Unk_08Ei
arm_func_start _ZN6Course18FindMapData_Unk_08Ei
_ZN6Course18FindMapData_Unk_08Ei: ; 0x0207cc6c
stmdb sp!, {r3, lr}
bl _ZN6Course11FindMapDataEj
cmp r0, #0
moveq r0, #0
ldrne r0, [r0, #8]
ldmia sp!, {r3, pc}
arm_func_end _ZN6Course18FindMapData_Unk_08Ei
.global _ZN6Course14GetMCSFilePathEiii
arm_func_start _ZN6Course14GetMCSFilePathEiii
_ZN6Course14GetMCSFilePathEiii: ; 0x0207cc84
stmdb sp!, {r3, lr}
mov lr, r0
mov ip, r2
cmp r3, #3
addls pc, pc, r3, lsl #2
b _0207cd3c
_0207cc9c: ; jump table
b _0207cd3c ; case 0
b _0207ccac ; case 1
b _0207cce8 ; case 2
b _0207cd24 ; case 3
_0207ccac:
cmp ip, #0
bne _0207cccc
ldr r2, _0207cd58 ; =data_ov00_020e2508
mov r0, r1
ldr r2, [r2]
ldr r1, _0207cd5c ; =data_ov00_020e2058
bl func_0200c8d0
ldmia sp!, {r3, pc}
_0207cccc:
ldr r2, _0207cd58 ; =data_ov00_020e2508
mov r0, r1
ldr r2, [r2]
ldr r1, _0207cd60 ; =data_ov00_020e2070
mov r3, ip
bl func_0200c8d0
ldmia sp!, {r3, pc}
_0207cce8:
cmp ip, #0
bne _0207cd08
ldr r2, _0207cd58 ; =data_ov00_020e2508
mov r0, r1
ldr r2, [r2]
ldr r1, _0207cd64 ; =data_ov00_020e208c
bl func_0200c8d0
ldmia sp!, {r3, pc}
_0207cd08:
ldr r2, _0207cd58 ; =data_ov00_020e2508
mov r0, r1
ldr r2, [r2]
ldr r1, _0207cd68 ; =data_ov00_020e20a4
mov r3, ip
bl func_0200c8d0
ldmia sp!, {r3, pc}
_0207cd24:
ldr r2, _0207cd58 ; =data_ov00_020e2508
mov r0, r1
ldr r2, [r2]
ldr r1, _0207cd6c ; =data_ov00_020e20c0
bl func_0200c8d0
ldmia sp!, {r3, pc}
_0207cd3c:
ldr r2, _0207cd58 ; =data_ov00_020e2508
mov r0, r1
ldr r2, [r2]
ldr r1, _0207cd70 ; =data_ov00_020e20d8
add r3, lr, #0xc
bl func_0200c8d0
ldmia sp!, {r3, pc}
.align 2, 0
_0207cd58: .word data_ov00_020e2508
_0207cd5c: .word data_ov00_020e2058
_0207cd60: .word data_ov00_020e2070
_0207cd64: .word data_ov00_020e208c
_0207cd68: .word data_ov00_020e20a4
_0207cd6c: .word data_ov00_020e20c0
_0207cd70: .word data_ov00_020e20d8
arm_func_end _ZN6Course14GetMCSFilePathEiii
.global _ZN6Course14GetMRCFilePathEiii
arm_func_start _ZN6Course14GetMRCFilePathEiii
_ZN6Course14GetMRCFilePathEiii: ; 0x0207cd74
stmdb sp!, {r4, lr}
mov r4, r2
cmp r3, #3
addls pc, pc, r3, lsl #2
b _0207cde0
_0207cd88: ; jump table
b _0207cde0 ; case 0
b _0207cd98 ; case 1
b _0207cdb0 ; case 2
b _0207cdc8 ; case 3
_0207cd98:
ldr r0, _0207ce08 ; =data_ov00_020e250c
ldr r1, _0207ce0c ; =data_ov00_020e20ec
ldr r2, [r0]
mov r0, r4
bl func_0200c8d0
ldmia sp!, {r4, pc}
_0207cdb0:
ldr r0, _0207ce08 ; =data_ov00_020e250c
ldr r1, _0207ce10 ; =data_ov00_020e2104
ldr r2, [r0]
mov r0, r4
bl func_0200c8d0
ldmia sp!, {r4, pc}
_0207cdc8:
ldr r0, _0207ce08 ; =data_ov00_020e250c
ldr r1, _0207ce14 ; =data_ov00_020e211c
ldr r2, [r0]
mov r0, r4
bl func_0200c8d0
ldmia sp!, {r4, pc}
_0207cde0:
ldr r0, _0207ce18 ; =data_027e0f7c
ldr r0, [r0]
bl func_ov00_0209d71c
ldr r1, _0207ce08 ; =data_ov00_020e250c
mov r3, r0
ldr r2, [r1]
ldr r1, _0207ce1c ; =data_ov00_020e2134
mov r0, r4
bl func_0200c8d0
ldmia sp!, {r4, pc}
.align 2, 0
_0207ce08: .word data_ov00_020e250c
_0207ce0c: .word data_ov00_020e20ec
_0207ce10: .word data_ov00_020e2104
_0207ce14: .word data_ov00_020e211c
_0207ce18: .word data_027e0f7c
_0207ce1c: .word data_ov00_020e2134
arm_func_end _ZN6Course14GetMRCFilePathEiii
.global _ZN6Course18func_ov00_0207ce20EiiPci
arm_func_start _ZN6Course18func_ov00_0207ce20EiiPci
_ZN6Course18func_ov00_0207ce20EiiPci: ; 0x0207ce20
stmdb sp!, {r3, lr}
sub sp, sp, #8
ldr ip, [sp, #0x10]
stmia sp, {r3, ip}
mov ip, r1
mov r3, r2
ldr r1, [r0]
mov r2, ip
bl _ZN6Course18func_ov00_0207ce4cEiiiPci
add sp, sp, #8
ldmia sp!, {r3, pc}
arm_func_end _ZN6Course18func_ov00_0207ce20EiiPci
.global _ZN6Course18func_ov00_0207ce4cEiiiPci
arm_func_start _ZN6Course18func_ov00_0207ce4cEiiiPci
_ZN6Course18func_ov00_0207ce4cEiiiPci: ; 0x0207ce4c
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #8
ldr r4, _0207d3ac ; =data_027e0f7c
mov r8, r0
ldr r0, [r4]
mov r7, r1
mov r6, r2
mov r5, r3
ldr r4, [sp, #0x20]
bl func_ov00_0209d71c
ldr r1, [sp, #0x24]
mov r3, r0
cmp r1, #7
addls pc, pc, r1, lsl #2
b _0207d364
_0207ce88: ; jump table
b _0207d364 ; case 0
b _0207cef0 ; case 1
b _0207cea8 ; case 2
b _0207cf38 ; case 3
b _0207d07c ; case 4
b _0207d294 ; case 5
b _0207d2d8 ; case 6
b _0207d31c ; case 7
_0207cea8:
ldr r2, _0207d3b0 ; =0x66666667
mov r1, r6, lsr #0x1f
smull r0, r5, r2, r6
smull r0, r7, r2, r6
add r7, r1, r7, asr #2
add r5, r1, r5, asr #2
mov r2, #0xa
smull r0, r1, r2, r5
sub r5, r6, r0
str r7, [sp]
ldr r0, _0207d3b4 ; =data_ov00_020e233c
str r5, [sp, #4]
ldr r2, [r0]
ldr r1, _0207d3b8 ; =data_ov00_020e2148
mov r0, r4
bl func_0200c8d0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207cef0:
ldr r2, _0207d3b0 ; =0x66666667
mov r1, r6, lsr #0x1f
smull r0, r5, r2, r6
smull r0, r7, r2, r6
add r7, r1, r7, asr #2
add r5, r1, r5, asr #2
mov r2, #0xa
smull r0, r1, r2, r5
sub r5, r6, r0
str r7, [sp]
ldr r0, _0207d3b4 ; =data_ov00_020e233c
str r5, [sp, #4]
ldr r2, [r0]
ldr r1, _0207d3bc ; =data_ov00_020e2160
mov r0, r4
bl func_0200c8d0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207cf38:
ldr r1, [r8, #8]
mvn r0, #1
cmp r1, r0
bne _0207cf98
ldr r0, _0207d3c0 ; =data_027e0d38
ldr r0, [r0]
ldr r0, [r0, #0x28]
add r0, r0, #0x44
bl func_ov00_020a5e9c
ldr r2, _0207d3c0 ; =data_027e0d38
mov r1, r0
ldr r0, [r2]
mov r3, r5
ldr r0, [r0, #0x28]
ldrb r2, [r0, #0x56]
mov r0, r8
cmp r2, #0xff
str r4, [sp]
mov r4, #4
moveq r2, #0
str r4, [sp, #4]
bl _ZN6Course18func_ov00_0207ce4cEiiiPci
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207cf98:
ldr r0, [r8, #4]
cmp r0, #2
bne _0207cfc8
mov r7, #4
mov r0, r8
mov r1, r6
mov r2, r5
mov r3, r4
str r7, [sp]
bl _ZN6Course18func_ov00_0207ce20EiiPci
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207cfc8:
cmp r6, #0xff
beq _0207cfdc
ldrb r0, [r8, #0x25c]
cmp r0, #0
beq _0207d03c
_0207cfdc:
cmp r7, #0x1b
bne _0207cffc
ldr r1, _0207d3c4 ; =data_ov00_020e2174
mov r0, r4
mov r2, r3
bl func_0200c8d0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207cffc:
ldr r1, _0207d3b0 ; =0x66666667
mov r2, r3
smull r0, r8, r1, r6
smull r0, r3, r1, r6
mov r7, r6, lsr #0x1f
add r8, r7, r8, asr #2
mov r5, #0xa
smull r0, r1, r5, r8
sub r8, r6, r0
ldr r1, _0207d3c8 ; =data_ov00_020e2188
mov r0, r4
add r3, r7, r3, asr #2
str r8, [sp]
bl func_0200c8d0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207d03c:
ldr r1, _0207d3b0 ; =0x66666667
mov r2, r3
smull r0, r8, r1, r6
smull r0, r3, r1, r6
mov r7, r6, lsr #0x1f
add r8, r7, r8, asr #2
mov r5, #0xa
smull r0, r1, r5, r8
sub r8, r6, r0
ldr r1, _0207d3cc ; =data_ov00_020e219c
mov r0, r4
add r3, r7, r3, asr #2
str r8, [sp]
bl func_0200c8d0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207d07c:
ldr r0, [r8]
cmp r0, #0x32
bgt _0207d0b4
bge _0207d19c
cmp r0, #3
bgt _0207d1d4
cmp r0, #1
blt _0207d1d4
beq _0207d0f4
cmp r0, #2
beq _0207d12c
cmp r0, #3
beq _0207d164
b _0207d1d4
_0207d0b4:
cmp r0, #0x38
bne _0207d1d4
ldr r1, _0207d3b0 ; =0x66666667
mov r5, r6, lsr #0x1f
smull r0, r3, r1, r6
smull r0, r2, r1, r6
add r3, r5, r3, asr #2
mov r1, #0xa
smull r3, r0, r1, r3
ldr r1, _0207d3d0 ; =data_ov00_020e21b4
mov r0, r4
add r2, r5, r2, asr #2
sub r3, r6, r3
bl func_0200c8d0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207d0f4:
ldr r1, _0207d3b0 ; =0x66666667
mov r5, r6, lsr #0x1f
smull r0, r3, r1, r6
smull r0, r2, r1, r6
add r3, r5, r3, asr #2
mov r1, #0xa
smull r3, r0, r1, r3
ldr r1, _0207d3d4 ; =data_ov00_020e21d0
mov r0, r4
add r2, r5, r2, asr #2
sub r3, r6, r3
bl func_0200c8d0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207d12c:
ldr r1, _0207d3b0 ; =0x66666667
mov r5, r6, lsr #0x1f
smull r0, r3, r1, r6
smull r0, r2, r1, r6
add r3, r5, r3, asr #2
mov r1, #0xa
smull r3, r0, r1, r3
ldr r1, _0207d3d8 ; =data_ov00_020e21f0
mov r0, r4
add r2, r5, r2, asr #2
sub r3, r6, r3
bl func_0200c8d0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207d164:
ldr r1, _0207d3b0 ; =0x66666667
mov r5, r6, lsr #0x1f
smull r0, r3, r1, r6
smull r0, r2, r1, r6
add r3, r5, r3, asr #2
mov r1, #0xa
smull r3, r0, r1, r3
ldr r1, _0207d3dc ; =data_ov00_020e2210
mov r0, r4
add r2, r5, r2, asr #2
sub r3, r6, r3
bl func_0200c8d0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207d19c:
ldr r1, _0207d3b0 ; =0x66666667
mov r5, r6, lsr #0x1f
smull r0, r3, r1, r6
smull r0, r2, r1, r6
add r3, r5, r3, asr #2
mov r1, #0xa
smull r3, r0, r1, r3
ldr r1, _0207d3e0 ; =data_ov00_020e2230
mov r0, r4
add r2, r5, r2, asr #2
sub r3, r6, r3
bl func_0200c8d0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207d1d4:
cmp r6, #3
bne _0207d25c
ldr r0, _0207d3e4 ; =gAdventureFlags
mov r1, #0x32
ldr r0, [r0]
bl _ZN14AdventureFlags3GetEj
cmp r0, #0
ldr r1, _0207d3b0 ; =0x66666667
mov r5, r6, lsr #0x1f
beq _0207d22c
smull r0, r3, r1, r6
smull r0, r2, r1, r6
add r3, r5, r3, asr #2
mov r1, #0xa
smull r3, r0, r1, r3
ldr r1, _0207d3e8 ; =data_ov00_020e2250
mov r0, r4
add r2, r5, r2, asr #2
sub r3, r6, r3
bl func_0200c8d0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207d22c:
smull r0, r3, r1, r6
smull r0, r2, r1, r6
add r3, r5, r3, asr #2
mov r1, #0xa
smull r3, r0, r1, r3
ldr r1, _0207d3ec ; =data_ov00_020e226c
mov r0, r4
add r2, r5, r2, asr #2
sub r3, r6, r3
bl func_0200c8d0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207d25c:
ldr r1, _0207d3b0 ; =0x66666667
mov r5, r6, lsr #0x1f
smull r0, r3, r1, r6
smull r0, r2, r1, r6
add r3, r5, r3, asr #2
mov r1, #0xa
smull r3, r0, r1, r3
ldr r1, _0207d3f0 ; =data_ov00_020e2284
mov r0, r4
add r2, r5, r2, asr #2
sub r3, r6, r3
bl func_0200c8d0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207d294:
ldr r8, _0207d3b0 ; =0x66666667
mov r7, r6, lsr #0x1f
smull r0, r1, r8, r6
add r1, r7, r1, asr #2
mov r2, #0xa
smull r0, r1, r2, r1
sub r1, r6, r0
smull r0, r3, r8, r6
stmia sp, {r1, r5}
ldr r0, _0207d3b4 ; =data_ov00_020e233c
ldr r1, _0207d3f4 ; =data_ov00_020e229c
ldr r2, [r0]
mov r0, r4
add r3, r7, r3, asr #2
bl func_0200c8d0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207d2d8:
ldr r8, _0207d3b0 ; =0x66666667
mov r7, r6, lsr #0x1f
smull r0, r1, r8, r6
add r1, r7, r1, asr #2
mov r2, #0xa
smull r0, r1, r2, r1
sub r1, r6, r0
smull r0, r3, r8, r6
stmia sp, {r1, r5}
ldr r0, _0207d3b4 ; =data_ov00_020e233c
ldr r1, _0207d3f8 ; =data_ov00_020e22b8
ldr r2, [r0]
mov r0, r4
add r3, r7, r3, asr #2
bl func_0200c8d0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207d31c:
ldr r2, _0207d3b0 ; =0x66666667
mov r1, r6, lsr #0x1f
smull r0, r5, r2, r6
smull r0, r7, r2, r6
add r7, r1, r7, asr #2
add r5, r1, r5, asr #2
mov r2, #0xa
smull r0, r1, r2, r5
sub r5, r6, r0
str r7, [sp]
ldr r0, _0207d3b4 ; =data_ov00_020e233c
str r5, [sp, #4]
ldr r2, [r0]
ldr r1, _0207d3fc ; =data_ov00_020e22d4
mov r0, r4
bl func_0200c8d0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0207d364:
ldr r2, _0207d3b0 ; =0x66666667
mov r1, r6, lsr #0x1f
smull r0, r5, r2, r6
smull r0, r7, r2, r6
add r7, r1, r7, asr #2
add r5, r1, r5, asr #2
mov r2, #0xa
smull r0, r1, r2, r5
str r7, [sp]
sub r5, r6, r0
ldr r0, _0207d3b4 ; =data_ov00_020e233c
str r5, [sp, #4]
ldr r2, [r0]
ldr r1, _0207d400 ; =data_ov00_020e22e8
mov r0, r4
bl func_0200c8d0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
_0207d3ac: .word data_027e0f7c
_0207d3b0: .word 0x66666667
_0207d3b4: .word data_ov00_020e233c
_0207d3b8: .word data_ov00_020e2148
_0207d3bc: .word data_ov00_020e2160
_0207d3c0: .word data_027e0d38
_0207d3c4: .word data_ov00_020e2174
_0207d3c8: .word data_ov00_020e2188
_0207d3cc: .word data_ov00_020e219c
_0207d3d0: .word data_ov00_020e21b4
_0207d3d4: .word data_ov00_020e21d0
_0207d3d8: .word data_ov00_020e21f0
_0207d3dc: .word data_ov00_020e2210
_0207d3e0: .word data_ov00_020e2230
_0207d3e4: .word gAdventureFlags
_0207d3e8: .word data_ov00_020e2250
_0207d3ec: .word data_ov00_020e226c
_0207d3f0: .word data_ov00_020e2284
_0207d3f4: .word data_ov00_020e229c
_0207d3f8: .word data_ov00_020e22b8
_0207d3fc: .word data_ov00_020e22d4
_0207d400: .word data_ov00_020e22e8
arm_func_end _ZN6Course18func_ov00_0207ce4cEiiiPci
.global _ZN6Course18func_ov00_0207d404Eiii
arm_func_start _ZN6Course18func_ov00_0207d404Eiii
_ZN6Course18func_ov00_0207d404Eiii: ; 0x0207d404
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #0x18
mov r6, r0
cmp r1, #0
mov r5, r2
mov r4, r3
addeq sp, sp, #0x18
mov r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
mov r2, #0x47
str r2, [sp, #8]
strb r0, [sp, #0x14]
ldr r0, [r6, #0xc8]
add r2, sp, #8
bl func_ov00_020a3710
cmp r0, #0
addeq sp, sp, #0x18
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
ldr r0, [sp, #0x28]
str r4, [sp]
str r0, [sp, #4]
ldrb r2, [sp, #0xc]
ldr r1, [sp, #8]
mov r0, r6
mov r3, r5
bl _ZN6Course18func_ov00_0207ce4cEiiiPci
mov r0, #1
add sp, sp, #0x18
ldmia sp!, {r4, r5, r6, pc}
arm_func_end _ZN6Course18func_ov00_0207d404Eiii
.global _ZN6Course22IsCurrentMapInMainGridEv
arm_func_start _ZN6Course22IsCurrentMapInMainGridEv
_ZN6Course22IsCurrentMapInMainGridEv: ; 0x0207d47c
ldr ip, _0207d48c ; =_ZN6Course12IsInMainGridEii
ldrb r1, [r0, #0x1c]
ldrb r2, [r0, #0x1d]
bx ip
.align 2, 0
_0207d48c: .word _ZN6Course12IsInMainGridEii
arm_func_end _ZN6Course22IsCurrentMapInMainGridEv
.global _ZN6Course12IsInMainGridEii
arm_func_start _ZN6Course12IsInMainGridEii
_ZN6Course12IsInMainGridEii: ; 0x0207d490
ldrb r3, [r0, #0x25c]
cmp r3, #0
moveq r0, #1
bxeq lr
ldrb ip, [r0, #0x84]
cmp ip, r1
bgt _0207d4dc
ldrb r3, [r0, #0x86]
add r3, ip, r3
cmp r1, r3
bge _0207d4dc
ldrb r1, [r0, #0x85]
cmp r1, r2
bgt _0207d4dc
ldrb r0, [r0, #0x87]
add r0, r1, r0
cmp r2, r0
movlt r0, #1
bxlt lr
_0207d4dc:
mov r0, #0
bx lr
arm_func_end _ZN6Course12IsInMainGridEii
.global _ZN6Course15IsMapInMainGridEj
arm_func_start _ZN6Course15IsMapInMainGridEj
_ZN6Course15IsMapInMainGridEj: ; 0x0207d4e4
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
mov r4, r0
mov r2, r1
add r0, sp, #0
mov r1, r4
bl _ZN6Course14FindMapGridPosEP5Vec2bPS_j
ldrb r1, [sp]
ldrb r2, [sp, #1]
mov r0, r4
bl _ZN6Course12IsInMainGridEii
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
arm_func_end _ZN6Course15IsMapInMainGridEj
.global _ZN6Course15GetMapScreenPosEiPiS0_
arm_func_start _ZN6Course15GetMapScreenPosEiPiS0_
_ZN6Course15GetMapScreenPosEiPiS0_: ; 0x0207d518
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r4, r1
mov r7, r0
cmp r4, #0xff
mov r6, r2
mov r5, r3
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
add r0, sp, #0
mov r1, r7
mov r2, r4
bl _ZN6Course14FindMapGridPosEP5Vec2bPS_j
ldrb r1, [sp]
ldrb r2, [sp, #1]
mov r0, r7
bl _ZN6Course12IsInMainGridEii
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldrb r4, [r7, #0x86]
ldrb r0, [r7, #0x87]
cmp r0, r4
movhi r4, r0
mov r1, r4
mov r0, #0x100
bl func_02002c14
ldrb r3, [sp]
ldrb r2, [r7, #0x84]
ldr ip, [r7, #0x88]
mov r1, r4
sub r2, r3, r2
mla r2, r0, r2, ip
str r2, [r6]
mov r0, #0xc0
bl func_02002c14
ldrb r2, [sp, #1]
ldrb r1, [r7, #0x85]
ldr r3, [r7, #0x8c]
sub r1, r2, r1
mla r1, r0, r1, r3
str r1, [r5]
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end _ZN6Course15GetMapScreenPosEiPiS0_
.global _ZN6Course21GetScreenMapCellSizeXEv
arm_func_start _ZN6Course21GetScreenMapCellSizeXEv
_ZN6Course21GetScreenMapCellSizeXEv: ; 0x0207d5c4
stmdb sp!, {r3, lr}
ldrb r1, [r0, #0x86]
ldrb r0, [r0, #0x87]
cmp r0, r1
movhi r1, r0
mov r1, r1, lsl #0xc
mov r0, #0x100000
bl Divide
mov r1, #0x40000
bl Divide
ldmia sp!, {r3, pc}
arm_func_end _ZN6Course21GetScreenMapCellSizeXEv
.global _ZN6Course21GetScreenMapCellSizeYEv
arm_func_start _ZN6Course21GetScreenMapCellSizeYEv
_ZN6Course21GetScreenMapCellSizeYEv: ; 0x0207d5f0
stmdb sp!, {r3, lr}
ldrb r1, [r0, #0x87]
ldrb r0, [r0, #0x86]
cmp r0, r1
movhi r1, r0
mov r1, r1, lsl #0xc
mov r0, #0xc0000
bl Divide
mov r1, #0x30000
bl Divide
ldmia sp!, {r3, pc}
arm_func_end _ZN6Course21GetScreenMapCellSizeYEv
.global _ZN6Course13Get_Unk_c8_00Ev
arm_func_start _ZN6Course13Get_Unk_c8_00Ev
_ZN6Course13Get_Unk_c8_00Ev: ; 0x0207d61c
ldr r0, [r0, #0xc8]
ldr r0, [r0]
bx lr
arm_func_end _ZN6Course13Get_Unk_c8_00Ev
.global _ZN6Course13Get_Unk_c8_04Ev
arm_func_start _ZN6Course13Get_Unk_c8_04Ev
_ZN6Course13Get_Unk_c8_04Ev: ; 0x0207d628
ldr r0, [r0, #0xc8]
ldr r0, [r0, #4]
bx lr
arm_func_end _ZN6Course13Get_Unk_c8_04Ev
.global _ZN6Course23IsAdjacentMapOnMainGridEi
arm_func_start _ZN6Course23IsAdjacentMapOnMainGridEi
_ZN6Course23IsAdjacentMapOnMainGridEi: ; 0x0207d634
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
ldrb r4, [r6, #0x1c]
ldrb r5, [r6, #0x1d]
cmp r1, #3
addls pc, pc, r1, lsl #2
b _0207d67c
_0207d650: ; jump table
b _0207d660 ; case 0
b _0207d668 ; case 1
b _0207d670 ; case 2
b _0207d678 ; case 3
_0207d660:
add r4, r4, #1
b _0207d67c
_0207d668:
sub r4, r4, #1
b _0207d67c
_0207d670:
add r5, r5, #1
b _0207d67c
_0207d678:
sub r5, r5, #1
_0207d67c:
mov r0, r6
mov r1, r4
mov r2, r5
bl _ZN6Course12IsInMainGridEii
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
mov r0, r6
mov r1, r4
mov r2, r5
bl _ZN6Course10HasGridMapEii
ldmia sp!, {r4, r5, r6, pc}
arm_func_end _ZN6Course23IsAdjacentMapOnMainGridEi
.global _ZN6Course10HasGridMapEii
arm_func_start _ZN6Course10HasGridMapEii
_ZN6Course10HasGridMapEii: ; 0x0207d6ac
cmp r1, #0
cmpge r2, #0
blt _0207d6c4
cmp r1, #0xa
cmplt r2, #0xa
blt _0207d6cc
_0207d6c4:
mov r0, #0
bx lr
_0207d6cc:
mov r3, #0xa
mla r0, r1, r3, r0
add r0, r0, r2
ldrb r0, [r0, #0x20]
cmp r0, #0xff
movne r0, #1
moveq r0, #0
bx lr
arm_func_end _ZN6Course10HasGridMapEii
.global _ZN6Course14GetAdjacentMapEi
arm_func_start _ZN6Course14GetAdjacentMapEi
_ZN6Course14GetAdjacentMapEi: ; 0x0207d6ec
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
bl _ZN6Course23IsAdjacentMapOnMainGridEi
cmp r0, #0
moveq r0, #0xff
ldmeqia sp!, {r4, r5, r6, pc}
mov r0, r6
mov r1, r5
bl _ZN6Course15GetAdjacentMapYEi
mov r4, r0
mov r0, r6
mov r1, r5
bl _ZN6Course15GetAdjacentMapXEi
mov r1, #0xa
mla r1, r0, r1, r6
add r0, r1, r4
ldrb r0, [r0, #0x20]
ldmia sp!, {r4, r5, r6, pc}
arm_func_end _ZN6Course14GetAdjacentMapEi
.global _ZN6Course15GetAdjacentMapXEi
arm_func_start _ZN6Course15GetAdjacentMapXEi
_ZN6Course15GetAdjacentMapXEi: ; 0x0207d738
cmp r1, #0
ldrb r0, [r0, #0x1c]
beq _0207d750
cmp r1, #1
subeq r0, r0, #1
bx lr
_0207d750:
add r0, r0, #1
bx lr
arm_func_end _ZN6Course15GetAdjacentMapXEi
.global _ZN6Course15GetAdjacentMapYEi
arm_func_start _ZN6Course15GetAdjacentMapYEi
_ZN6Course15GetAdjacentMapYEi: ; 0x0207d758
cmp r1, #2
ldrb r0, [r0, #0x1d]
beq _0207d770
cmp r1, #3
subeq r0, r0, #1
bx lr
_0207d770:
add r0, r0, #1
bx lr
arm_func_end _ZN6Course15GetAdjacentMapYEi
.global _ZN6Course25FindCurrentMapData_Unk_04Ev
arm_func_start _ZN6Course25FindCurrentMapData_Unk_04Ev
_ZN6Course25FindCurrentMapData_Unk_04Ev: ; 0x0207d778
stmdb sp!, {r3, lr}
bl _ZN6Course18FindCurrentMapDataEv
ldrh r0, [r0, #4]
ldmia sp!, {r3, pc}
arm_func_end _ZN6Course25FindCurrentMapData_Unk_04Ev
.global _ZN6Course18FindMapData_Unk_04Ei
arm_func_start _ZN6Course18FindMapData_Unk_04Ei
_ZN6Course18FindMapData_Unk_04Ei: ; 0x0207d788
stmdb sp!, {r3, lr}
bl _ZN6Course11FindMapDataEj
cmp r0, #0
ldreq r0, _0207d7a0 ; =0x0000ffff
ldrneh r0, [r0, #4]
ldmia sp!, {r3, pc}
.align 2, 0
_0207d7a0: .word 0x0000ffff
arm_func_end _ZN6Course18FindMapData_Unk_04Ei
.global _ZN6Course18FindMapData_Unk_0cEi
arm_func_start _ZN6Course18FindMapData_Unk_0cEi
_ZN6Course18FindMapData_Unk_0cEi: ; 0x0207d7a4
stmdb sp!, {r3, lr}
bl _ZN6Course11FindMapDataEj
cmp r0, #0
moveq r0, #0
ldrne r0, [r0, #0xc]
ldmia sp!, {r3, pc}
arm_func_end _ZN6Course18FindMapData_Unk_0cEi
.global _ZN6Course18func_ov00_0207d7bcEv
arm_func_start _ZN6Course18func_ov00_0207d7bcEv
_ZN6Course18func_ov00_0207d7bcEv: ; 0x0207d7bc
stmdb sp!, {r3, lr}
bl _ZN6Course18FindCurrentMapDataEv
ldr r2, _0207d7d8 ; =data_027e103c
ldrh r1, [r0, #4]
ldr r0, [r2]
bl func_ov00_020cf414
ldmia sp!, {r3, pc}
.align 2, 0
_0207d7d8: .word data_027e103c
arm_func_end _ZN6Course18func_ov00_0207d7bcEv
.global _ZN6Course8SetFlag0Ejb
arm_func_start _ZN6Course8SetFlag0Ejb
_ZN6Course8SetFlag0Ejb: ; 0x0207d7dc
cmp r2, #0
beq _0207d804
add ip, r0, #0x264
mov r3, r1, lsr #0x5
and r0, r1, #0x1f
ldr r2, [ip, r3, lsl #2]
mov r1, #1
orr r0, r2, r1, lsl r0
str r0, [ip, r3, lsl #2]
bx lr
_0207d804:
add r3, r0, #0x264
mov r2, r1, lsr #0x5
and r0, r1, #0x1f
mov r1, #1
mvn r0, r1, lsl r0
ldr r1, [r3, r2, lsl #2]
and r0, r1, r0
str r0, [r3, r2, lsl #2]
bx lr
arm_func_end _ZN6Course8SetFlag0Ejb
.global _ZN6Course8GetFlag0Ej
arm_func_start _ZN6Course8GetFlag0Ej
_ZN6Course8GetFlag0Ej: ; 0x0207d828
mov r2, r1, lsr #0x5
add r0, r0, r2, lsl #2
ldr r2, [r0, #0x264]
and r1, r1, #0x1f
mov r0, #1
tst r2, r0, lsl r1
moveq r0, #0
bx lr
arm_func_end _ZN6Course8GetFlag0Ej
.global _ZN6Course8SetFlag1Ejb
arm_func_start _ZN6Course8SetFlag1Ejb
_ZN6Course8SetFlag1Ejb: ; 0x0207d848
cmp r2, #0
beq _0207d870
add ip, r0, #0x268
mov r3, r1, lsr #0x5
and r0, r1, #0x1f
ldr r2, [ip, r3, lsl #2]
mov r1, #1
orr r0, r2, r1, lsl r0
str r0, [ip, r3, lsl #2]
bx lr
_0207d870:
add r3, r0, #0x268
mov r2, r1, lsr #0x5
and r0, r1, #0x1f
mov r1, #1
mvn r0, r1, lsl r0
ldr r1, [r3, r2, lsl #2]
and r0, r1, r0
str r0, [r3, r2, lsl #2]
bx lr
arm_func_end _ZN6Course8SetFlag1Ejb
.global _ZN6Course8SetFlag1Ej
arm_func_start _ZN6Course8SetFlag1Ej
_ZN6Course8SetFlag1Ej: ; 0x0207d894
mov r2, r1, lsr #0x5
add r0, r0, r2, lsl #2
ldr r2, [r0, #0x268]
and r1, r1, #0x1f
mov r0, #1
tst r2, r0, lsl r1
moveq r0, #0
bx lr
arm_func_end _ZN6Course8SetFlag1Ej
.global _ZN6Course15SetMapDataFlag0Eib
arm_func_start _ZN6Course15SetMapDataFlag0Eib
_ZN6Course15SetMapDataFlag0Eib: ; 0x0207d8b4
stmdb sp!, {r3, r4, r5, lr}
mov r5, r1
mov r4, r2
bl _ZN6Course18FindCurrentMapDataEv
mov r1, r5
mov r2, r4
bl func_ov00_0209740c
ldmia sp!, {r3, r4, r5, pc}
arm_func_end _ZN6Course15SetMapDataFlag0Eib
.global _ZN6Course15GetMapDataFlag0Ei
arm_func_start _ZN6Course15GetMapDataFlag0Ei
_ZN6Course15GetMapDataFlag0Ei: ; 0x0207d8d4
stmdb sp!, {r4, lr}
mov r4, r1
bl _ZN6Course18FindCurrentMapDataEv
mov r1, r4
bl func_ov00_02097458
ldmia sp!, {r4, pc}
arm_func_end _ZN6Course15GetMapDataFlag0Ei
.global _ZN6Course15SetMapDataFlag1Eib
arm_func_start _ZN6Course15SetMapDataFlag1Eib
_ZN6Course15SetMapDataFlag1Eib: ; 0x0207d8ec
stmdb sp!, {r3, r4, r5, lr}
mov r5, r1
mov r4, r2
bl _ZN6Course18FindCurrentMapDataEv
mov r1, r5
mov r2, r4
bl func_ov00_02097478
ldmia sp!, {r3, r4, r5, pc}
arm_func_end _ZN6Course15SetMapDataFlag1Eib
.global _ZN6Course15GetMapDataFlag1Ei
arm_func_start _ZN6Course15GetMapDataFlag1Ei
_ZN6Course15GetMapDataFlag1Ei: ; 0x0207d90c
stmdb sp!, {r4, lr}
mov r4, r1
bl _ZN6Course18FindCurrentMapDataEv
mov r1, r4
bl func_ov00_020974c4
ldmia sp!, {r4, pc}
arm_func_end _ZN6Course15GetMapDataFlag1Ei
.global _ZN6Course15SetMapDataFlag2Eib
arm_func_start _ZN6Course15SetMapDataFlag2Eib
_ZN6Course15SetMapDataFlag2Eib: ; 0x0207d924
stmdb sp!, {r3, r4, r5, lr}
mov r5, r1
mov r4, r2
bl _ZN6Course18FindCurrentMapDataEv
mov r1, r5
mov r2, r4
bl func_ov00_020974e4
ldmia sp!, {r3, r4, r5, pc}
arm_func_end _ZN6Course15SetMapDataFlag2Eib
.global _ZN6Course15GetMapDataFlag2Ei
arm_func_start _ZN6Course15GetMapDataFlag2Ei
_ZN6Course15GetMapDataFlag2Ei: ; 0x0207d944
stmdb sp!, {r4, lr}
mov r4, r1
bl _ZN6Course18FindCurrentMapDataEv
mov r1, r4
bl func_ov00_02097530
ldmia sp!, {r4, pc}
arm_func_end _ZN6Course15GetMapDataFlag2Ei
.global _ZN6Course15SetMapDataFlag3Eib
arm_func_start _ZN6Course15SetMapDataFlag3Eib
_ZN6Course15SetMapDataFlag3Eib: ; 0x0207d95c
stmdb sp!, {r3, r4, r5, lr}
mov r5, r1
mov r4, r2
bl _ZN6Course18FindCurrentMapDataEv
mov r1, r5
mov r2, r4
bl func_ov00_02097550
ldmia sp!, {r3, r4, r5, pc}
arm_func_end _ZN6Course15SetMapDataFlag3Eib
.global _ZN6Course15GetMapDataFlag3Ei
arm_func_start _ZN6Course15GetMapDataFlag3Ei
_ZN6Course15GetMapDataFlag3Ei: ; 0x0207d97c
stmdb sp!, {r4, lr}
mov r4, r1
bl _ZN6Course18FindCurrentMapDataEv
mov r1, r4
bl func_ov00_0209759c
ldmia sp!, {r4, pc}
arm_func_end _ZN6Course15GetMapDataFlag3Ei
.global _ZN6Course15SetMapDataFlag4Eii
arm_func_start _ZN6Course15SetMapDataFlag4Eii
_ZN6Course15SetMapDataFlag4Eii: ; 0x0207d994
stmdb sp!, {r3, r4, r5, lr}
mov r5, r1
mov r4, r2
bl _ZN6Course18FindCurrentMapDataEv
mov r1, r5
mov r2, r4
bl func_ov00_020975bc
ldmia sp!, {r3, r4, r5, pc}
arm_func_end _ZN6Course15SetMapDataFlag4Eii
.global _ZN6Course15GetMapDataFlag4Ei
arm_func_start _ZN6Course15GetMapDataFlag4Ei
_ZN6Course15GetMapDataFlag4Ei: ; 0x0207d9b4
stmdb sp!, {r4, lr}
mov r4, r1
bl _ZN6Course18FindCurrentMapDataEv
mov r1, r4
bl func_ov00_02097608
ldmia sp!, {r4, pc}
arm_func_end _ZN6Course15GetMapDataFlag4Ei
.global _ZN6Course11FindMapDataEj
arm_func_start _ZN6Course11FindMapDataEj
_ZN6Course11FindMapDataEj: ; 0x0207d9cc
ldrb r2, [r0, #0xb0]
mov ip, #0
cmp r2, #0
ble _0207da0c
_0207d9dc:
add r2, r0, ip, lsl #2
ldr r3, [r2, #0xcc]
cmp r3, #0
beq _0207d9fc
ldrb r2, [r3, #1]
cmp r1, r2
moveq r0, r3
bxeq lr
_0207d9fc:
ldrb r2, [r0, #0xb0]
add ip, ip, #1
cmp ip, r2
blt _0207d9dc
_0207da0c:
mov r0, #0
bx lr
arm_func_end _ZN6Course11FindMapDataEj
.global _ZN6Course18FindCurrentMapDataEv
arm_func_start _ZN6Course18FindCurrentMapDataEv
_ZN6Course18FindCurrentMapDataEv: ; 0x0207da14
ldrb r3, [r0, #0x1c]
mov r1, #0xa
ldrb r2, [r0, #0x1d]
mla r1, r3, r1, r0
add r1, r1, r2
ldr ip, _0207da34 ; =_ZN6Course11FindMapDataEj
ldrb r1, [r1, #0x20]
bx ip
.align 2, 0
_0207da34: .word _ZN6Course11FindMapDataEj
arm_func_end _ZN6Course18FindCurrentMapDataEv
.data
.global data_ov00_020e2058
data_ov00_020e2058: ; 0x020e2058
.ascii "%s:objlist/motype.zob"
.byte 0x00, 0x00, 0x00
.global data_ov00_020e2070
data_ov00_020e2070: ; 0x020e2070
.ascii "%s:objlist/motype_%d.zob"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov00_020e208c
data_ov00_020e208c: ; 0x020e208c
.ascii "%s:objlist/npctype.zob"
.byte 0x00, 0x00
.global data_ov00_020e20a4
data_ov00_020e20a4: ; 0x020e20a4
.ascii "%s:objlist/npctype_%d.zob"
.byte 0x00, 0x00, 0x00
.global data_ov00_020e20c0
data_ov00_020e20c0: ; 0x020e20c0
.ascii "%s:tex/mapModel.nsbtx"
.byte 0x00, 0x00, 0x00
.global data_ov00_020e20d8
data_ov00_020e20d8: ; 0x020e20d8
.ascii "%s:arrange/%s.zab"
.byte 0x00, 0x00, 0x00
.global data_ov00_020e20ec
data_ov00_020e20ec: ; 0x020e20ec
.ascii "%s:objlist/motype.zob"
.byte 0x00, 0x00, 0x00
.global data_ov00_020e2104
data_ov00_020e2104: ; 0x020e2104
.ascii "%s:objlist/npctype.zob"
.byte 0x00, 0x00
.global data_ov00_020e211c
data_ov00_020e211c: ; 0x020e211c
.ascii "%s:tex/mapModel.nsbtx"
.byte 0x00, 0x00, 0x00
.global data_ov00_020e2134
data_ov00_020e2134: ; 0x020e2134
.ascii "%s:arrange/%s.zab"
.byte 0x00, 0x00, 0x00
.global data_ov00_020e2148
data_ov00_020e2148: ; 0x020e2148
.ascii "%s:nsbmd/%s_%d%d.nsbmd"
.byte 0x00, 0x00
.global data_ov00_020e2160
data_ov00_020e2160: ; 0x020e2160
.ascii "%s:zcb/%s_%d%d.zcb"
.byte 0x00, 0x00
.global data_ov00_020e2174
data_ov00_020e2174: ; 0x020e2174
.ascii "Map2D/%s/map00.bin"
.byte 0x00, 0x00
.global data_ov00_020e2188
data_ov00_020e2188: ; 0x020e2188
.ascii "Map2D/%s/mapwd.bin"
.byte 0x00, 0x00
.global data_ov00_020e219c
data_ov00_020e219c: ; 0x020e219c
.ascii "Map2D/%s/map%d%d.bin"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov00_020e21b4
data_ov00_020e21b4: ; 0x020e21b4
.ascii "Map2D/seatest/map%d%d.bin"
.byte 0x00, 0x00, 0x00
.global data_ov00_020e21d0
data_ov00_020e21d0: ; 0x020e21d0
.ascii "Map2D/sea_minigame/map%d%d.bin"
.byte 0x00, 0x00
.global data_ov00_020e21f0
data_ov00_020e21f0: ; 0x020e21f0
.ascii "Map2D/sea_fishing/map%d%d.bin"
.byte 0x00, 0x00, 0x00
.global data_ov00_020e2210
data_ov00_020e2210: ; 0x020e2210
.ascii "Map2D/sea_salvage/map%d%d.bin"
.byte 0x00, 0x00, 0x00
.global data_ov00_020e2230
data_ov00_020e2230: ; 0x020e2230
.ascii "Map2D/boss_last2/map%d%d.bin"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov00_020e2250
data_ov00_020e2250: ; 0x020e2250
.ascii "Map2D/sea/map%d%d_02.bin"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov00_020e226c
data_ov00_020e226c: ; 0x020e226c
.ascii "Map2D/sea/map%d%d.bin"
.byte 0x00, 0x00, 0x00
.global data_ov00_020e2284
data_ov00_020e2284: ; 0x020e2284
.ascii "Map2D/sea/map%d%d.bin"
.byte 0x00, 0x00, 0x00
.global data_ov00_020e229c
data_ov00_020e229c: ; 0x020e229c
.ascii "%s:zob/motype_%d%d_%d.zob"
.byte 0x00, 0x00, 0x00
.global data_ov00_020e22b8
data_ov00_020e22b8: ; 0x020e22b8
.ascii "%s:zob/npctype_%d%d_%d.zob"
.byte 0x00, 0x00
.global data_ov00_020e22d4
data_ov00_020e22d4: ; 0x020e22d4
.ascii "%s:mcb/%s_%d%d.mcb"
.byte 0x00, 0x00
.global data_ov00_020e22e8
data_ov00_020e22e8: ; 0x020e22e8
.ascii "%s:zmb/%s_%d%d.zmb"
.byte 0x00, 0x00