mirror of
https://github.com/zeldaret/ph
synced 2026-05-24 07:10:52 -04:00
13636 lines
285 KiB
ArmAsm
13636 lines
285 KiB
ArmAsm
.include "macros/function.inc"
|
|
.include "global.inc"
|
|
|
|
.text
|
|
|
|
.global func_ov36_0217bd80
|
|
arm_func_start func_ov36_0217bd80
|
|
func_ov36_0217bd80: ; 0x0217bd80
|
|
stmdb sp!, {r3, lr}
|
|
ldr r1, _0217bdac ; =data_027e0fe0
|
|
ldr r0, _0217bdb0 ; =0x00001b10
|
|
ldr r1, [r1]
|
|
mov r2, #4
|
|
ldr r1, [r1]
|
|
bl func_0202e9dc
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
bl func_ov36_0217ccd8
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217bd80
|
|
_0217bdac: .word data_027e0fe0
|
|
_0217bdb0: .word 0x00001b10
|
|
|
|
.global func_ov36_0217bdb4
|
|
arm_func_start func_ov36_0217bdb4
|
|
func_ov36_0217bdb4: ; 0x0217bdb4
|
|
stmdb sp!, {r4, lr}
|
|
ldrh r2, [r1]
|
|
ldr r3, _0217be2c ; =data_02050f54
|
|
mov r1, #0x800
|
|
mov r2, r2, asr #0x4
|
|
mov r4, r2, lsl #0x1
|
|
mov r2, r4, lsl #0x1
|
|
ldrsh ip, [r3, r2]
|
|
add r2, r4, #1
|
|
mov r2, r2, lsl #0x1
|
|
ldrsh r3, [r3, r2]
|
|
mov r2, ip, asr #0x1f
|
|
mov lr, r2, lsl #0xc
|
|
adds r4, r1, ip, lsl #12
|
|
orr lr, lr, ip, lsr #20
|
|
mov r2, r3, asr #0x1f
|
|
adc ip, lr, #0
|
|
mov r4, r4, lsr #0xc
|
|
mov r2, r2, lsl #0xc
|
|
orr r4, r4, ip, lsl #20
|
|
adds ip, r1, r3, lsl #12
|
|
orr r2, r2, r3, lsr #20
|
|
strh r4, [r0, #0x50]
|
|
mov r3, #0
|
|
adc r1, r2, #0
|
|
mov r2, ip, lsr #0xc
|
|
strh r3, [r0, #0x52]
|
|
orr r2, r2, r1, lsl #20
|
|
strh r2, [r0, #0x54]
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217bdb4
|
|
_0217be2c: .word data_02050f54
|
|
|
|
.global func_ov36_0217be30
|
|
arm_func_start func_ov36_0217be30
|
|
func_ov36_0217be30: ; 0x0217be30
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
sub sp, sp, #0x10
|
|
mov r4, r0
|
|
bl func_ov00_020c6114
|
|
ldr r3, _0217bf40 ; =data_ov36_02186e6c
|
|
add r0, r4, #0xfc
|
|
add r1, r4, #0x120
|
|
mov r2, #0
|
|
str r3, [r4]
|
|
blx func_ov00_020c0c08
|
|
ldr r1, _0217bf44 ; =data_ov36_02186e80
|
|
ldr r0, _0217bf48 ; =0x000014cd
|
|
str r1, [r4, #0xfc]
|
|
str r0, [r4, #0x17c]
|
|
mov r1, #0
|
|
strb r1, [r4, #0x188]
|
|
ldr r2, _0217bf4c ; =data_ov36_02186b04
|
|
mov r0, r4
|
|
mov r1, #0x54
|
|
bl func_ov00_020c5c98
|
|
ldr r0, [r4, #4]
|
|
ldr r1, _0217bf50 ; =data_ov36_02186b1c
|
|
str r0, [r4, #0x104]
|
|
ldr r2, [r4, #4]
|
|
ldr r0, [r2, #8]
|
|
add r0, r2, r0
|
|
add r0, r0, #4
|
|
bl func_0201e388
|
|
str r0, [r4, #0x180]
|
|
ldr r2, [r4, #4]
|
|
ldr r1, _0217bf54 ; =data_ov36_02186b30
|
|
ldr r0, [r2, #8]
|
|
add r0, r2, r0
|
|
add r0, r0, #4
|
|
bl func_0201e388
|
|
str r0, [r4, #0x184]
|
|
ldr r0, _0217bf58 ; =data_ov36_02186ea0
|
|
blx func_02016fe8
|
|
mov r5, r0
|
|
ldr r1, _0217bf5c ; =data_ov36_02186eb8
|
|
add r0, sp, #0
|
|
mov r2, #0x10
|
|
bl func_020470ec
|
|
mov r0, r5
|
|
add r1, sp, #0
|
|
bl func_0201e544
|
|
mov r1, r0
|
|
add r0, r4, #0xfc
|
|
bl func_ov00_020c0c9c
|
|
add r1, r4, #0x108
|
|
mov r0, #0x1000
|
|
str r0, [r1, #4]
|
|
mov r0, #0
|
|
strh r0, [r1]
|
|
add r0, r4, #0x20
|
|
ldr r2, [r0]
|
|
add r1, r4, #0xfc
|
|
ldr r2, [r2, #0x24]
|
|
blx r2
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r2, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
mov r0, r4
|
|
str r1, [r2, #0x10]
|
|
add sp, sp, #0x10
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217be30
|
|
_0217bf40: .word data_ov36_02186e6c
|
|
_0217bf44: .word data_ov36_02186e80
|
|
_0217bf48: .word 0x000014cd
|
|
_0217bf4c: .word data_ov36_02186b04
|
|
_0217bf50: .word data_ov36_02186b1c
|
|
_0217bf54: .word data_ov36_02186b30
|
|
_0217bf58: .word data_ov36_02186ea0
|
|
_0217bf5c: .word data_ov36_02186eb8
|
|
|
|
.global func_ov36_0217bf60
|
|
arm_func_start func_ov36_0217bf60
|
|
func_ov36_0217bf60: ; 0x0217bf60
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #4
|
|
mov r4, r0
|
|
ldrb r0, [r4, #0x189]
|
|
cmp r0, #0
|
|
beq _0217bfa0
|
|
ldr r0, _0217c004 ; =0x000014cd
|
|
str r0, [r4, #0x17c]
|
|
ldrb r0, [r4, #0x188]
|
|
add r1, r0, #8
|
|
and r0, r1, #0xff
|
|
cmp r0, #0x14
|
|
strb r1, [r4, #0x188]
|
|
movhi r0, #0x14
|
|
strhib r0, [r4, #0x188]
|
|
b _0217bfbc
|
|
_0217bfa0:
|
|
ldr r2, _0217c008 ; =0x00000385
|
|
add r0, r4, #0x17c
|
|
mov r1, #0
|
|
bl func_0202b0f4
|
|
cmp r0, #0
|
|
movne r0, #0
|
|
strneb r0, [r4, #0x188]
|
|
_0217bfbc:
|
|
mov r0, #0
|
|
strb r0, [r4, #0x189]
|
|
ldrb r0, [r4, #0x188]
|
|
cmp r0, #0
|
|
addeq sp, sp, #4
|
|
ldmeqia sp!, {r3, r4, pc}
|
|
add r0, r4, #0xfc
|
|
bl func_ov00_020c0e04
|
|
ldr r2, [r4, #0x1c]
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
ldr r3, [r2, #8]
|
|
ldr r0, _0217c00c ; =data_027e0ffc
|
|
ldr r1, _0217c010 ; =0x000002cf
|
|
add r2, r2, #0x48
|
|
bl func_ov00_020cec60
|
|
add sp, sp, #4
|
|
ldmia sp!, {r3, r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217bf60
|
|
_0217c004: .word 0x000014cd
|
|
_0217c008: .word 0x00000385
|
|
_0217c00c: .word data_027e0ffc
|
|
_0217c010: .word 0x000002cf
|
|
|
|
.global func_ov36_0217c014
|
|
arm_func_start func_ov36_0217c014
|
|
func_ov36_0217c014: ; 0x0217c014
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r5, r0
|
|
ldr r0, _0217c06c ; =data_ov00_020e9360
|
|
ldr r4, [r5, #4]
|
|
mov r1, #2
|
|
bl func_ov00_02079e68
|
|
mov r2, r0
|
|
ldr r1, [r5, #0x180]
|
|
mov r0, r4
|
|
bl func_02019534
|
|
ldr r0, _0217c06c ; =data_ov00_020e9360
|
|
ldr r4, [r5, #4]
|
|
mov r1, #2
|
|
bl func_ov00_02079e68
|
|
mov r2, r0
|
|
ldr r1, [r5, #0x184]
|
|
mov r0, r4
|
|
bl func_02019534
|
|
ldrb r1, [r5, #0x188]
|
|
ldr r0, [r5, #4]
|
|
bl func_020197fc
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217c014
|
|
_0217c06c: .word data_ov00_020e9360
|
|
|
|
.global func_ov36_0217c070
|
|
arm_func_start func_ov36_0217c070
|
|
func_ov36_0217c070: ; 0x0217c070
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
sub sp, sp, #0x48
|
|
ldr r3, _0217c114 ; =0xfffffc39
|
|
ldr r2, _0217c118 ; =0x00000ccd
|
|
mov ip, #0
|
|
mov r4, r0
|
|
str ip, [sp, #0x24]
|
|
str r3, [sp, #0x28]
|
|
str r2, [sp, #0x2c]
|
|
ldr r0, [r4, #0x1c]
|
|
mov r5, r1
|
|
ldrsh r1, [r0, #0x78]
|
|
add r0, sp, #0x24
|
|
bl func_ov00_020a61ac
|
|
add r1, sp, #0x24
|
|
add r2, sp, #0x30
|
|
mov r0, r5
|
|
bl func_01ff9bc4
|
|
ldr r0, [r4, #0x1c]
|
|
ldr r3, _0217c11c ; =data_02050f54
|
|
ldrh r1, [r0, #0x78]
|
|
add r0, sp, #0
|
|
mov r1, r1, asr #0x4
|
|
mov r2, r1, lsl #0x1
|
|
mov r1, r2, lsl #0x1
|
|
add r2, r2, #1
|
|
mov r2, r2, lsl #0x1
|
|
ldrsh r1, [r3, r1]
|
|
ldrsh r2, [r3, r2]
|
|
blx func_01ff8214
|
|
ldr r1, [r4, #0x17c]
|
|
mov r0, r4
|
|
str r1, [sp, #0x3c]
|
|
str r1, [sp, #0x40]
|
|
str r1, [sp, #0x44]
|
|
add r1, sp, #0x3c
|
|
add r2, sp, #0
|
|
add r3, sp, #0x30
|
|
bl func_ov00_020c5f80
|
|
add sp, sp, #0x48
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217c070
|
|
_0217c114: .word 0xfffffc39
|
|
_0217c118: .word 0x00000ccd
|
|
_0217c11c: .word data_02050f54
|
|
|
|
.global func_ov36_0217c120
|
|
arm_func_start func_ov36_0217c120
|
|
func_ov36_0217c120: ; 0x0217c120
|
|
stmdb sp!, {r4, lr}
|
|
ldr r3, _0217c144 ; =data_ov36_02186adc
|
|
mov r2, #0xdc
|
|
mov r4, r0
|
|
bl func_ov00_020c607c
|
|
ldr r1, _0217c148 ; =data_ov36_02186e58
|
|
mov r0, r4
|
|
str r1, [r4]
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217c120
|
|
_0217c144: .word data_ov36_02186adc
|
|
_0217c148: .word data_ov36_02186e58
|
|
|
|
.global func_ov36_0217c14c
|
|
arm_func_start func_ov36_0217c14c
|
|
func_ov36_0217c14c: ; 0x0217c14c
|
|
ldr r2, _0217c15c ; =data_ov36_02186d0c
|
|
str r2, [r0]
|
|
strh r1, [r0, #4]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217c14c
|
|
_0217c15c: .word data_ov36_02186d0c
|
|
|
|
.global func_ov36_0217c160
|
|
arm_func_start func_ov36_0217c160
|
|
func_ov36_0217c160: ; 0x0217c160
|
|
ldr r3, [r1, #4]
|
|
ldr r2, _0217c198 ; =0x47524d47
|
|
cmp r3, r2
|
|
bne _0217c190
|
|
ldrb r2, [r1, #0x11a]
|
|
cmp r2, #0
|
|
beq _0217c190
|
|
ldrh r2, [r0, #4]
|
|
ldrh r0, [r1, #0x22]
|
|
cmp r2, r0
|
|
moveq r0, #1
|
|
bxeq lr
|
|
_0217c190:
|
|
mov r0, #0
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217c160
|
|
_0217c198: .word 0x47524d47
|
|
|
|
.global func_ov36_0217c19c
|
|
arm_func_start func_ov36_0217c19c
|
|
func_ov36_0217c19c: ; 0x0217c19c
|
|
cmp r2, #9
|
|
moveq r0, #1
|
|
movne r0, #0
|
|
bx lr
|
|
arm_func_end func_ov36_0217c19c
|
|
|
|
.global func_ov36_0217c1ac
|
|
arm_func_start func_ov36_0217c1ac
|
|
func_ov36_0217c1ac: ; 0x0217c1ac
|
|
mov r0, #0
|
|
bx lr
|
|
arm_func_end func_ov36_0217c1ac
|
|
|
|
.global func_ov36_0217c1b4
|
|
arm_func_start func_ov36_0217c1b4
|
|
func_ov36_0217c1b4: ; 0x0217c1b4
|
|
stmdb sp!, {r4, lr}
|
|
mov r1, #0
|
|
mov r4, r0
|
|
blx func_ov00_020a956c
|
|
ldr r0, _0217c1fc ; =data_ov36_02186e10
|
|
mov r1, #0
|
|
str r0, [r4]
|
|
strh r1, [r4, #0xec]
|
|
sub r0, r1, #1
|
|
str r0, [r4, #0x100]
|
|
strb r1, [r4, #0x104]
|
|
str r1, [r4, #0x5c]
|
|
str r1, [r4, #0x60]
|
|
add r0, r4, #0x8c
|
|
str r1, [r4, #0x64]
|
|
bl func_01ff892c
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217c1b4
|
|
_0217c1fc: .word data_ov36_02186e10
|
|
|
|
.global func_ov36_0217c200
|
|
arm_func_start func_ov36_0217c200
|
|
func_ov36_0217c200: ; 0x0217c200
|
|
ldr ip, _0217c210 ; =func_ov00_020a9998
|
|
mov r1, #6
|
|
mov r2, #2
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217c200
|
|
_0217c210: .word func_ov00_020a9998
|
|
|
|
.global func_ov36_0217c214
|
|
arm_func_start func_ov36_0217c214
|
|
func_ov36_0217c214: ; 0x0217c214
|
|
mov r1, r0
|
|
ldr r0, [r1, #4]
|
|
ldr ip, _0217c22c ; =func_ov36_0217c274
|
|
ldr r0, [r0, #0x2c]
|
|
add r0, r0, #0x178
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217c214
|
|
_0217c22c: .word func_ov36_0217c274
|
|
|
|
.global func_ov36_0217c230
|
|
arm_func_start func_ov36_0217c230
|
|
func_ov36_0217c230: ; 0x0217c230
|
|
mov r1, r0
|
|
ldr r0, [r1, #4]
|
|
ldr ip, _0217c248 ; =func_ov36_0217c51c
|
|
ldr r0, [r0, #0x2c]
|
|
add r0, r0, #0x178
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217c230
|
|
_0217c248: .word func_ov36_0217c51c
|
|
|
|
.global func_ov36_0217c24c
|
|
arm_func_start func_ov36_0217c24c
|
|
func_ov36_0217c24c: ; 0x0217c24c
|
|
ldr r1, _0217c26c ; =func_ov36_0217c214
|
|
mov r2, #2
|
|
str r1, [r0, #0x24]
|
|
ldr r1, _0217c270 ; =func_ov36_0217c230
|
|
strb r2, [r0, #0x92]
|
|
str r1, [r0, #0x1c]
|
|
strb r2, [r0, #0x90]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217c24c
|
|
_0217c26c: .word func_ov36_0217c214
|
|
_0217c270: .word func_ov36_0217c230
|
|
|
|
.global func_ov36_0217c274
|
|
arm_func_start func_ov36_0217c274
|
|
func_ov36_0217c274: ; 0x0217c274
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
|
|
sub sp, sp, #0xb4
|
|
mov r8, r0
|
|
ldrb r0, [r8, #0x104]
|
|
mov r7, r1
|
|
cmp r0, #0
|
|
bne _0217c2f8
|
|
mov r0, #1
|
|
strb r0, [r8, #0x104]
|
|
ldr r0, [r7, #4]
|
|
ldr r1, _0217c508 ; =data_ov36_02186b44
|
|
ldr r0, [r0, #4]
|
|
add r0, r0, #0x40
|
|
bl func_0201e388
|
|
str r0, [r8, #0xf4]
|
|
ldr r0, [r7, #4]
|
|
ldr r1, _0217c50c ; =data_ov36_02186b58
|
|
ldr r0, [r0, #4]
|
|
add r0, r0, #0x40
|
|
bl func_0201e388
|
|
str r0, [r8, #0xf8]
|
|
ldr r0, [r7, #4]
|
|
ldr r1, _0217c510 ; =data_ov36_02186b6c
|
|
ldr r0, [r0, #4]
|
|
add r0, r0, #0x40
|
|
bl func_0201e388
|
|
str r0, [r8, #0xf0]
|
|
ldr r0, [r7, #4]
|
|
ldr r1, _0217c514 ; =data_ov36_02186b80
|
|
ldr r0, [r0, #4]
|
|
add r0, r0, #0x40
|
|
bl func_0201e388
|
|
str r0, [r8, #0xfc]
|
|
_0217c2f8:
|
|
ldr r0, [r7, #8]
|
|
ldr r4, [r7, #4]
|
|
tst r0, #0x10
|
|
ldrneb r6, [r7, #0xae]
|
|
ldr r0, [r8, #0xf4]
|
|
mvneq r6, #0
|
|
cmp r6, r0
|
|
bne _0217c370
|
|
ldrb r0, [r4, #0x25]
|
|
cmp r0, #2
|
|
bne _0217c334
|
|
mov r0, #3
|
|
strb r0, [r7, #0x92]
|
|
strb r0, [r4, #0x25]
|
|
b _0217c494
|
|
_0217c334:
|
|
cmp r0, #3
|
|
bne _0217c494
|
|
add r0, sp, #0x84
|
|
mov r1, #0
|
|
bl func_0201b1bc
|
|
ldr r3, [sp, #0xb0]
|
|
ldr r2, [sp, #0xac]
|
|
ldr r1, [sp, #0xa8]
|
|
mov r0, #2
|
|
str r1, [r8, #0x5c]
|
|
str r2, [r8, #0x60]
|
|
str r3, [r8, #0x64]
|
|
strb r0, [r7, #0x92]
|
|
strb r0, [r4, #0x25]
|
|
b _0217c494
|
|
_0217c370:
|
|
ldr r0, [r8, #0xf0]
|
|
cmp r6, r0
|
|
bne _0217c420
|
|
ldrb r0, [r4, #0x25]
|
|
cmp r0, #2
|
|
bne _0217c3e4
|
|
ldr r5, [r7, #0xb4]
|
|
ldr r3, _0217c518 ; =data_02050f54
|
|
ldr r1, [r5]
|
|
add r0, sp, #0x60
|
|
bic r1, r1, #2
|
|
str r1, [r5]
|
|
ldrh r1, [r8, #0xec]
|
|
mov r1, r1, asr #0x4
|
|
mov r1, r1, lsl #0x1
|
|
add r2, r1, #1
|
|
mov r2, r2, lsl #0x1
|
|
mov r1, r1, lsl #0x1
|
|
ldrsh r2, [r3, r2]
|
|
ldrsh r1, [r3, r1]
|
|
blx func_01ff8214
|
|
add r1, r5, #0x28
|
|
add r0, sp, #0x60
|
|
mov r2, r1
|
|
bl func_0202e030
|
|
mov r0, #3
|
|
strb r0, [r7, #0x92]
|
|
strb r0, [r4, #0x25]
|
|
b _0217c494
|
|
_0217c3e4:
|
|
cmp r0, #3
|
|
bne _0217c494
|
|
add r0, sp, #0x30
|
|
mov r1, #0
|
|
bl func_0201b1bc
|
|
ldr r3, [sp, #0x5c]
|
|
ldr r2, [sp, #0x58]
|
|
ldr r1, [sp, #0x54]
|
|
mov r0, #2
|
|
str r1, [r8, #0x68]
|
|
str r2, [r8, #0x6c]
|
|
str r3, [r8, #0x70]
|
|
strb r0, [r7, #0x92]
|
|
strb r0, [r4, #0x25]
|
|
b _0217c494
|
|
_0217c420:
|
|
ldr r0, [r8, #0xfc]
|
|
cmp r6, r0
|
|
bne _0217c494
|
|
ldrb r0, [r4, #0x25]
|
|
cmp r0, #2
|
|
bne _0217c448
|
|
mov r0, #3
|
|
strb r0, [r7, #0x92]
|
|
strb r0, [r4, #0x25]
|
|
b _0217c494
|
|
_0217c448:
|
|
cmp r0, #3
|
|
bne _0217c494
|
|
mov r0, #0
|
|
strb r0, [r8, #0x105]
|
|
bl func_02018450
|
|
mov ip, r0
|
|
add r5, r8, #0x8c
|
|
ldmia ip!, {r0, r1, r2, r3}
|
|
stmia r5!, {r0, r1, r2, r3}
|
|
ldmia ip!, {r0, r1, r2, r3}
|
|
stmia r5!, {r0, r1, r2, r3}
|
|
ldmia ip, {r0, r1, r2, r3}
|
|
stmia r5, {r0, r1, r2, r3}
|
|
add r0, r8, #0xbc
|
|
mov r1, #0
|
|
bl func_0201b1bc
|
|
mov r0, #2
|
|
strb r0, [r7, #0x92]
|
|
strb r0, [r4, #0x25]
|
|
_0217c494:
|
|
ldr r0, [r8, #0xf8]
|
|
cmp r6, r0
|
|
addne sp, sp, #0xb4
|
|
ldmneia sp!, {r3, r4, r5, r6, r7, r8, pc}
|
|
ldrb r0, [r4, #0x25]
|
|
cmp r0, #2
|
|
bne _0217c4c4
|
|
mov r0, #3
|
|
strb r0, [r7, #0x92]
|
|
add sp, sp, #0xb4
|
|
strb r0, [r4, #0x25]
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
|
|
_0217c4c4:
|
|
cmp r0, #3
|
|
addne sp, sp, #0xb4
|
|
ldmneia sp!, {r3, r4, r5, r6, r7, r8, pc}
|
|
add r0, sp, #0
|
|
mov r1, #0
|
|
bl func_0201b1bc
|
|
ldr r3, [sp, #0x2c]
|
|
ldr r2, [sp, #0x28]
|
|
ldr r1, [sp, #0x24]
|
|
mov r0, #2
|
|
str r1, [r8, #0x74]
|
|
str r2, [r8, #0x78]
|
|
str r3, [r8, #0x7c]
|
|
strb r0, [r7, #0x92]
|
|
strb r0, [r4, #0x25]
|
|
add sp, sp, #0xb4
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217c274
|
|
_0217c508: .word data_ov36_02186b44
|
|
_0217c50c: .word data_ov36_02186b58
|
|
_0217c510: .word data_ov36_02186b6c
|
|
_0217c514: .word data_ov36_02186b80
|
|
_0217c518: .word data_02050f54
|
|
|
|
.global func_ov36_0217c51c
|
|
arm_func_start func_ov36_0217c51c
|
|
func_ov36_0217c51c: ; 0x0217c51c
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r5, r0
|
|
ldr r2, [r5, #0x100]
|
|
mvn r0, #0
|
|
mov r4, r1
|
|
cmp r2, r0
|
|
bne _0217c558
|
|
ldr r0, [r4, #4]
|
|
ldr r1, _0217c59c ; =data_ov36_02186b94
|
|
ldr r2, [r0, #4]
|
|
ldr r0, [r2, #8]
|
|
add r0, r2, r0
|
|
add r0, r0, #4
|
|
bl func_0201e388
|
|
str r0, [r5, #0x100]
|
|
_0217c558:
|
|
ldr r0, [r4, #8]
|
|
tst r0, #8
|
|
ldrneb r1, [r4, #0xad]
|
|
ldr r0, [r5, #0x100]
|
|
mvneq r1, #0
|
|
cmp r0, r1
|
|
ldmneia sp!, {r3, r4, r5, pc}
|
|
ldr r0, [r4, #4]
|
|
ldr r0, [r0, #0x2c]
|
|
bl func_ov36_02185428
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
ldr r1, [r4, #0xb0]
|
|
ldr r0, [r1, #0xc]
|
|
bic r0, r0, #0x1f0000
|
|
str r0, [r1, #0xc]
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217c51c
|
|
_0217c59c: .word data_ov36_02186b94
|
|
|
|
.global func_ov36_0217c5a0
|
|
arm_func_start func_ov36_0217c5a0
|
|
func_ov36_0217c5a0: ; 0x0217c5a0
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #0xc
|
|
mov r4, r0
|
|
add r0, r1, #0x5c
|
|
add r2, sp, #0
|
|
add r1, r1, #0x8c
|
|
bl func_01ff9158
|
|
add r0, sp, #0
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r4, {r0, r1, r2}
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, pc}
|
|
arm_func_end func_ov36_0217c5a0
|
|
|
|
.global func_ov36_0217c5d0
|
|
arm_func_start func_ov36_0217c5d0
|
|
func_ov36_0217c5d0: ; 0x0217c5d0
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #0xc
|
|
mov r4, r0
|
|
add r0, r1, #0x68
|
|
add r2, sp, #0
|
|
add r1, r1, #0x8c
|
|
bl func_01ff9158
|
|
add r0, sp, #0
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r4, {r0, r1, r2}
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, pc}
|
|
arm_func_end func_ov36_0217c5d0
|
|
|
|
.global func_ov36_0217c600
|
|
arm_func_start func_ov36_0217c600
|
|
func_ov36_0217c600: ; 0x0217c600
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #0xc
|
|
mov r4, r0
|
|
add r0, r1, #0x74
|
|
add r2, sp, #0
|
|
add r1, r1, #0x8c
|
|
bl func_01ff9158
|
|
add r0, sp, #0
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r4, {r0, r1, r2}
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, pc}
|
|
arm_func_end func_ov36_0217c600
|
|
|
|
.global func_ov36_0217c630
|
|
arm_func_start func_ov36_0217c630
|
|
func_ov36_0217c630: ; 0x0217c630
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
sub sp, sp, #0x60
|
|
mov r4, r1
|
|
ldrb r1, [r4, #0x105]
|
|
mov r5, r0
|
|
mov r6, r2
|
|
cmp r1, #0
|
|
bne _0217c6e8
|
|
add r2, sp, #0x30
|
|
add r0, r4, #0xbc
|
|
add r1, r4, #0x8c
|
|
bl func_01ff8e84
|
|
add r0, sp, #0x30
|
|
add r1, sp, #0xc
|
|
bl func_020079d8
|
|
cmp r6, #0
|
|
ldr r2, _0217c6fc ; =0x00000266
|
|
mov r0, #0
|
|
beq _0217c690
|
|
ldr r1, _0217c700 ; =0x000004cd
|
|
str r2, [sp]
|
|
str r1, [sp, #4]
|
|
str r0, [sp, #8]
|
|
b _0217c6a0
|
|
_0217c690:
|
|
rsb r1, r2, #0xc00
|
|
str r2, [sp]
|
|
str r1, [sp, #4]
|
|
str r0, [sp, #8]
|
|
_0217c6a0:
|
|
add r0, sp, #0
|
|
add r1, sp, #0xc
|
|
mov r2, r0
|
|
bl func_01ff88b0
|
|
ldr r1, [sp]
|
|
ldr r0, [sp, #0x54]
|
|
ldr lr, [sp, #8]
|
|
ldr ip, [sp, #0x5c]
|
|
ldr r3, [sp, #4]
|
|
ldr r2, [sp, #0x58]
|
|
add r0, r1, r0
|
|
str r0, [r4, #0x80]
|
|
add r0, r3, r2
|
|
str r0, [r4, #0x84]
|
|
add r0, lr, ip
|
|
str r0, [r4, #0x88]
|
|
mov r0, #1
|
|
strb r0, [r4, #0x105]
|
|
_0217c6e8:
|
|
add r0, r4, #0x80
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r5, {r0, r1, r2}
|
|
add sp, sp, #0x60
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217c630
|
|
_0217c6fc: .word 0x00000266
|
|
_0217c700: .word 0x000004cd
|
|
|
|
.global func_ov36_0217c704
|
|
arm_func_start func_ov36_0217c704
|
|
func_ov36_0217c704: ; 0x0217c704
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
sub sp, sp, #0x10
|
|
ldr r2, _0217c7d0 ; =data_ov36_02186848
|
|
mov r4, r0
|
|
mov r1, #0xdb
|
|
bl func_ov00_020c5c98
|
|
add r0, r4, #0x20
|
|
bl func_ov36_0217c200
|
|
add r0, r4, #0x20
|
|
ldr r1, [r0]
|
|
ldr r1, [r1, #8]
|
|
blx r1
|
|
str r0, [r4, #0x19c]
|
|
ldr r1, _0217c7d4 ; =0x00000333
|
|
add r0, r4, #0x20
|
|
str r1, [r4, #0x210]
|
|
ldr r1, [r0]
|
|
ldr r1, [r1, #8]
|
|
blx r1
|
|
str r0, [r4, #0x21c]
|
|
ldr r1, _0217c7d8 ; =data_027e0fec
|
|
ldr r0, _0217c7dc ; =data_ov36_02186ec8
|
|
ldr r1, [r1]
|
|
add r1, r1, #0x2000
|
|
ldr r6, [r1, #0xff0]
|
|
blx func_02016fe8
|
|
mov r5, r0
|
|
ldr r1, _0217c7e0 ; =data_ov36_02186edc
|
|
add r0, sp, #0
|
|
mov r2, #0x10
|
|
bl func_020470ec
|
|
mov r0, r5
|
|
add r1, sp, #0
|
|
bl func_0201e544
|
|
mov r1, r0
|
|
mov r2, r6
|
|
add r0, r4, #0x214
|
|
mov r3, #1
|
|
bl func_ov00_020c0cc8
|
|
add r0, r4, #0x20
|
|
ldr r2, [r0]
|
|
add r1, r4, #0x214
|
|
ldr r2, [r2, #0x24]
|
|
blx r2
|
|
mov r0, #0
|
|
str r0, [r4, #0x224]
|
|
ldr r1, _0217c7e4 ; =data_ov36_02186c80
|
|
mov r0, r4
|
|
bl func_ov36_0217c7e8
|
|
add sp, sp, #0x10
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217c704
|
|
_0217c7d0: .word data_ov36_02186848
|
|
_0217c7d4: .word 0x00000333
|
|
_0217c7d8: .word data_027e0fec
|
|
_0217c7dc: .word data_ov36_02186ec8
|
|
_0217c7e0: .word data_ov36_02186edc
|
|
_0217c7e4: .word data_ov36_02186c80
|
|
|
|
.global func_ov36_0217c7e8
|
|
arm_func_start func_ov36_0217c7e8
|
|
func_ov36_0217c7e8: ; 0x0217c7e8
|
|
ldr r1, [r1]
|
|
ldr ip, _0217c7fc ; =func_ov00_020c0e04
|
|
str r1, [r0, #0x228]
|
|
add r0, r0, #0x214
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217c7e8
|
|
_0217c7fc: .word func_ov00_020c0e04
|
|
|
|
.global func_ov36_0217c800
|
|
arm_func_start func_ov36_0217c800
|
|
func_ov36_0217c800: ; 0x0217c800
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r4, r0
|
|
ldr r1, [r4, #0x208]
|
|
add r2, r4, #0x128
|
|
mov r0, #0x6c
|
|
mla r0, r1, r0, r2
|
|
bl func_ov00_020c0e04
|
|
mov r0, r4
|
|
bl func_ov36_0217cc84
|
|
cmp r0, #0
|
|
bne _0217c8b8
|
|
ldr r1, [r4, #0x20c]
|
|
ldr r0, [r4, #0x210]
|
|
add r5, r1, r0
|
|
str r5, [r4, #0x20c]
|
|
cmp r5, #0x1000
|
|
ble _0217c850
|
|
mov r0, r4
|
|
bl func_ov36_0217cc18
|
|
b _0217c8c0
|
|
_0217c850:
|
|
ldr r1, [r4, #0x208]
|
|
add r2, r4, #0x128
|
|
mov r0, #0x6c
|
|
mla r0, r1, r0, r2
|
|
bl func_ov00_020c0d4c
|
|
str r5, [r0, #4]
|
|
ldr r0, [r4, #0x208]
|
|
add r1, r4, #0x128
|
|
cmp r0, #0
|
|
moveq r2, #1
|
|
movne r2, #0
|
|
mov r0, #0x6c
|
|
mla r0, r2, r0, r1
|
|
bl func_ov00_020c0e04
|
|
ldr r0, [r4, #0x208]
|
|
add r1, r4, #0x128
|
|
cmp r0, #0
|
|
moveq r2, #1
|
|
movne r2, #0
|
|
mov r0, #0x6c
|
|
mla r0, r2, r0, r1
|
|
bl func_ov00_020c0d4c
|
|
ldr r1, [r4, #0x20c]
|
|
rsb r1, r1, #0x1000
|
|
str r1, [r0, #4]
|
|
b _0217c8c0
|
|
_0217c8b8:
|
|
ldr r0, _0217c918 ; =0x00000333
|
|
str r0, [r4, #0x210]
|
|
_0217c8c0:
|
|
ldr r1, [r4, #0x208]
|
|
mov r2, #0
|
|
add r0, r4, r1, lsl #2
|
|
ldr r0, [r0, #0x200]
|
|
cmp r0, #0x1e
|
|
bne _0217c900
|
|
mov r0, #0x6c
|
|
mla r0, r1, r0, r4
|
|
ldr r0, [r0, #0x13c]
|
|
mov r1, r2
|
|
cmp r0, #0x10000
|
|
blt _0217c8f8
|
|
cmp r0, #0x51000
|
|
movle r1, #1
|
|
_0217c8f8:
|
|
cmp r1, #0
|
|
movne r2, #1
|
|
_0217c900:
|
|
cmp r2, #0
|
|
movne r0, #1
|
|
strneb r0, [r4, #0x409]
|
|
add r0, r4, #0x280
|
|
bl func_ov00_020c5e20
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217c800
|
|
_0217c918: .word 0x00000333
|
|
|
|
.global func_ov36_0217c91c
|
|
arm_func_start func_ov36_0217c91c
|
|
func_ov36_0217c91c: ; 0x0217c91c
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #0xc
|
|
mov r4, r0
|
|
ldrb r0, [r4, #0x408]
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xc
|
|
ldmeqia sp!, {r3, r4, pc}
|
|
add r0, sp, #0
|
|
add r1, r4, #0x20
|
|
bl func_ov36_0217c5a0
|
|
add r1, sp, #0
|
|
add r0, r4, #0x280
|
|
bl func_ov36_0217c070
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, pc}
|
|
arm_func_end func_ov36_0217c91c
|
|
|
|
.global func_ov36_0217c958
|
|
arm_func_start func_ov36_0217c958
|
|
func_ov36_0217c958: ; 0x0217c958
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
sub sp, sp, #8
|
|
mov r5, r0
|
|
ldr r0, [r5, #0x208]
|
|
mov r4, r1
|
|
add r0, r5, r0, lsl #2
|
|
ldr r0, [r0, #0x200]
|
|
cmp r4, r0
|
|
bne _0217c998
|
|
ldr r1, [r5, #0x18]
|
|
mov r0, #0x14
|
|
mla r0, r4, r0, r1
|
|
ldr r0, [r0, #0x10]
|
|
cmp r0, #0
|
|
addeq sp, sp, #8
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
_0217c998:
|
|
mov r1, #0
|
|
str r1, [sp, #4]
|
|
mov r0, r5
|
|
ldr ip, [r0]
|
|
add r2, sp, #4
|
|
ldr ip, [ip]
|
|
add r3, sp, #0
|
|
mov r1, r4
|
|
blx ip
|
|
ldr r1, [sp, #4]
|
|
cmp r1, #0
|
|
addeq sp, sp, #8
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
ldr r2, [r5, #0x208]
|
|
add r3, r5, #0x128
|
|
mov r0, #0x6c
|
|
mla r0, r2, r0, r3
|
|
ldr r3, [sp]
|
|
mov r2, #0
|
|
bl func_ov00_020c0cc8
|
|
ldr r0, [r5, #0xc]
|
|
ldr r1, [r0]
|
|
ldr r1, [r1, #0x2c]
|
|
blx r1
|
|
ldr r0, [r5, #0xc]
|
|
ldr r3, [r5, #0x208]
|
|
ldr r2, [r0]
|
|
add ip, r5, #0x128
|
|
mov r1, #0x6c
|
|
mla r1, r3, r1, ip
|
|
ldr r2, [r2, #0x24]
|
|
blx r2
|
|
ldr r1, [r5, #0x208]
|
|
mov r0, #0x1000
|
|
add r1, r5, r1, lsl #2
|
|
str r4, [r1, #0x200]
|
|
str r0, [r5, #0x20c]
|
|
add sp, sp, #8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov36_0217c958
|
|
|
|
.global func_ov36_0217ca34
|
|
arm_func_start func_ov36_0217ca34
|
|
func_ov36_0217ca34: ; 0x0217ca34
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
sub sp, sp, #8
|
|
mov r5, r0
|
|
ldr r2, [r5, #0x208]
|
|
mov r4, r1
|
|
add r2, r5, r2, lsl #2
|
|
ldr r3, [r2, #0x200]
|
|
cmp r4, r3
|
|
addeq sp, sp, #8
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
mvn r2, #0
|
|
cmp r3, r2
|
|
bne _0217ca74
|
|
bl func_ov36_0217c958
|
|
add sp, sp, #8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217ca74:
|
|
mov r2, #0
|
|
str r2, [sp, #4]
|
|
ldr ip, [r0]
|
|
add r2, sp, #4
|
|
ldr ip, [ip]
|
|
add r3, sp, #0
|
|
blx ip
|
|
ldr r0, [sp, #4]
|
|
cmp r0, #0
|
|
addeq sp, sp, #8
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
ldr r0, [r5, #0x20c]
|
|
cmp r0, #0x800
|
|
ble _0217cafc
|
|
ldr r0, [r5, #0x208]
|
|
add ip, r5, #0x128
|
|
cmp r0, #0
|
|
moveq r2, #1
|
|
movne r2, #0
|
|
mov r0, #0x6c
|
|
mla r1, r2, r0, ip
|
|
str r2, [r5, #0x208]
|
|
str r1, [r5, #0x10]
|
|
ldr r1, [r5, #0x208]
|
|
mov r2, #0
|
|
add r1, r5, r1, lsl #2
|
|
str r4, [r1, #0x200]
|
|
str r2, [r5, #0x20c]
|
|
ldr r3, [r5, #0x208]
|
|
ldr r1, [sp, #4]
|
|
mla r0, r3, r0, ip
|
|
ldr r3, [sp]
|
|
bl func_ov00_020c0cc8
|
|
b _0217cb6c
|
|
_0217cafc:
|
|
ldr r1, [r5, #0x208]
|
|
cmp r1, #0
|
|
moveq r2, #1
|
|
movne r2, #0
|
|
add r0, r5, r2, lsl #2
|
|
ldr r0, [r0, #0x200]
|
|
cmp r4, r0
|
|
bne _0217cb40
|
|
add r1, r5, #0x128
|
|
mov r0, #0x6c
|
|
mla r0, r2, r0, r1
|
|
str r2, [r5, #0x208]
|
|
str r0, [r5, #0x10]
|
|
ldr r0, [r5, #0x20c]
|
|
rsb r0, r0, #0x1000
|
|
str r0, [r5, #0x20c]
|
|
b _0217cb6c
|
|
_0217cb40:
|
|
add r0, r5, r1, lsl #2
|
|
str r4, [r0, #0x200]
|
|
mov r2, #0
|
|
str r2, [r5, #0x20c]
|
|
ldr r1, [r5, #0x208]
|
|
add r3, r5, #0x128
|
|
mov r0, #0x6c
|
|
mla r0, r1, r0, r3
|
|
ldr r1, [sp, #4]
|
|
ldr r3, [sp]
|
|
bl func_ov00_020c0cc8
|
|
_0217cb6c:
|
|
ldr r0, [r5, #0xc]
|
|
ldr r1, [r0]
|
|
ldr r1, [r1, #0x2c]
|
|
blx r1
|
|
ldr r0, [r5, #0xc]
|
|
ldr r3, [r5, #0x208]
|
|
ldr r2, [r0]
|
|
add r4, r5, #0x128
|
|
mov r1, #0x6c
|
|
mla r1, r3, r1, r4
|
|
ldr r2, [r2, #0x24]
|
|
blx r2
|
|
ldr r0, [r5, #0x208]
|
|
add r2, r5, #0x128
|
|
cmp r0, #0
|
|
moveq r3, #1
|
|
movne r3, #0
|
|
mov r1, #0x6c
|
|
ldr r0, [r5, #0xc]
|
|
mla r1, r3, r1, r2
|
|
ldr r2, [r0]
|
|
ldr r2, [r2, #0x24]
|
|
blx r2
|
|
ldr r1, [r5, #0x208]
|
|
add r2, r5, #0x128
|
|
mov r0, #0x6c
|
|
mla r0, r1, r0, r2
|
|
bl func_ov00_020c0d4c
|
|
ldr r1, [r5, #0x20c]
|
|
str r1, [r0, #4]
|
|
ldr r0, [r5, #0x208]
|
|
add r1, r5, #0x128
|
|
cmp r0, #0
|
|
moveq r2, #1
|
|
movne r2, #0
|
|
mov r0, #0x6c
|
|
mla r0, r2, r0, r1
|
|
bl func_ov00_020c0d4c
|
|
ldr r1, [r5, #0x20c]
|
|
rsb r1, r1, #0x1000
|
|
str r1, [r0, #4]
|
|
add sp, sp, #8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov36_0217ca34
|
|
|
|
.global func_ov36_0217cc18
|
|
arm_func_start func_ov36_0217cc18
|
|
func_ov36_0217cc18: ; 0x0217cc18
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldr r0, [r4, #0x20c]
|
|
cmp r0, #0x1000
|
|
ldmeqia sp!, {r4, pc}
|
|
mov r0, #0x1000
|
|
str r0, [r4, #0x20c]
|
|
ldr r0, [r4, #0xc]
|
|
ldr r1, [r0]
|
|
ldr r1, [r1, #0x2c]
|
|
blx r1
|
|
ldr r0, [r4, #0xc]
|
|
ldr r3, [r4, #0x208]
|
|
ldr r2, [r0]
|
|
add ip, r4, #0x128
|
|
mov r1, #0x6c
|
|
mla r1, r3, r1, ip
|
|
ldr r2, [r2, #0x24]
|
|
blx r2
|
|
ldr r1, [r4, #0x208]
|
|
add r2, r4, #0x128
|
|
mov r0, #0x6c
|
|
mla r0, r1, r0, r2
|
|
bl func_ov00_020c0d4c
|
|
mov r1, #0x1000
|
|
str r1, [r0, #4]
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov36_0217cc18
|
|
|
|
.global func_ov36_0217cc84
|
|
arm_func_start func_ov36_0217cc84
|
|
func_ov36_0217cc84: ; 0x0217cc84
|
|
ldr r0, [r0, #0x20c]
|
|
cmp r0, #0x1000
|
|
moveq r0, #1
|
|
movne r0, #0
|
|
bx lr
|
|
arm_func_end func_ov36_0217cc84
|
|
|
|
.global func_ov36_0217cc98
|
|
arm_func_start func_ov36_0217cc98
|
|
func_ov36_0217cc98: ; 0x0217cc98
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov ip, #0x14
|
|
mul r4, r1, ip
|
|
mov r7, r0
|
|
ldr r1, [r7, #0x18]
|
|
ldr r0, [r7, #8]
|
|
mov r6, r2
|
|
add r1, r1, r4
|
|
mov r5, r3
|
|
bl func_0201e544
|
|
str r0, [r6]
|
|
ldr r0, [r7, #0x18]
|
|
add r0, r0, r4
|
|
ldr r0, [r0, #0x10]
|
|
str r0, [r5]
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
arm_func_end func_ov36_0217cc98
|
|
|
|
.global func_ov36_0217ccd8
|
|
arm_func_start func_ov36_0217ccd8
|
|
func_ov36_0217ccd8: ; 0x0217ccd8
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c1554
|
|
ldr r5, _0217cf94 ; =data_ov36_02186d18
|
|
mov r1, r4
|
|
add r0, r4, #0x158
|
|
add r2, r4, #0x178
|
|
add r3, r4, #0x280
|
|
str r5, [r4]
|
|
bl func_ov00_020c5c2c
|
|
ldr r1, _0217cf98 ; =data_ov36_02186dec
|
|
add r0, r4, #0x178
|
|
str r1, [r4, #0x158]
|
|
bl func_ov36_0217c1b4
|
|
ldr r1, _0217cf9c ; =func_ov00_020a9b4c
|
|
add r0, r4, #0x280
|
|
str r1, [sp]
|
|
mov r1, #2
|
|
mov r2, #0x6c
|
|
ldr r3, _0217cfa0 ; =func_ov36_0217d01c
|
|
bl func_0204f614
|
|
mov r2, #0
|
|
str r2, [r4, #0x360]
|
|
mov r0, #0x1000
|
|
str r0, [r4, #0x364]
|
|
add r0, r4, #0x36c
|
|
add r1, r4, #0x390
|
|
blx func_ov00_020c0c08
|
|
ldr r1, _0217cfa4 ; =data_ov36_02186e00
|
|
add r0, r4, #0x3d8
|
|
str r1, [r4, #0x36c]
|
|
mov r1, r4
|
|
bl func_ov36_0217be30
|
|
mov r0, #0
|
|
str r0, [r4, #0x564]
|
|
str r0, [r4, #0x568]
|
|
str r0, [r4, #0x56c]
|
|
sub r0, r0, #1
|
|
str r0, [r4, #0x358]
|
|
str r0, [r4, #0x35c]
|
|
add r0, r4, #0x570
|
|
mov r1, r4
|
|
bl func_ov36_0217c120
|
|
mvn r0, #0
|
|
str r0, [r4, #0x66c]
|
|
ldr r1, _0217cfa8 ; =func_ov36_0217cfec
|
|
add r0, r4, #0x670
|
|
str r1, [sp]
|
|
mov r1, #4
|
|
mov r2, #0xc
|
|
ldr r3, _0217cfac ; =func_ov36_0217d008
|
|
bl func_0204f614
|
|
mov r1, #0
|
|
str r1, [r4, #0x6a0]
|
|
sub r0, r1, #1
|
|
str r0, [r4, #0x6a4]
|
|
str r1, [r4, #0x6a8]
|
|
ldr r1, _0217cfb0 ; =func_ov00_020b7d74
|
|
add r0, r4, #0x2ac
|
|
str r1, [sp]
|
|
add r0, r0, #0x400
|
|
mov r1, #2
|
|
mov r2, #4
|
|
ldr r3, _0217cfb4 ; =func_ov36_0217d294
|
|
bl func_0204f614
|
|
mov r1, #0
|
|
str r1, [r4, #0x6b4]
|
|
add r0, r4, #0x6c0
|
|
str r1, [r4, #0x6b8]
|
|
blx func_0202ab78
|
|
add r0, r4, #0x3b4
|
|
add r0, r0, #0x400
|
|
mov r1, #0x1000000
|
|
bl func_ov00_020d18f4
|
|
mvn r0, #0
|
|
str r0, [r4, #0x810]
|
|
str r0, [r4, #0x814]
|
|
str r0, [r4, #0x818]
|
|
add r1, r4, #0x78
|
|
str r0, [r4, #0x81c]
|
|
mov r0, #0
|
|
str r0, [r4, #0x85c]
|
|
str r0, [r4, #0x864]
|
|
str r0, [r4, #0x868]
|
|
add r1, r1, #0x800
|
|
mov r2, #4
|
|
str r0, [r4, #0x870]
|
|
bl func_020078f4
|
|
add lr, r4, #0x800
|
|
mov r0, #0
|
|
strh r0, [lr, #0x7c]
|
|
strh r0, [lr, #0x7e]
|
|
strh r0, [lr, #0x86]
|
|
strh r0, [lr, #0x88]
|
|
strh r0, [lr, #0x8a]
|
|
strh r0, [lr, #0x8c]
|
|
strh r0, [lr, #0x92]
|
|
strh r0, [lr, #0x94]
|
|
strh r0, [lr, #0x96]
|
|
strh r0, [lr, #0x98]
|
|
strh r0, [lr, #0xa0]
|
|
strh r0, [lr, #0xa2]
|
|
strb r0, [r4, #0x8a4]
|
|
strb r0, [r4, #0x8a5]
|
|
strb r0, [r4, #0x8a6]
|
|
mov r1, #2
|
|
strb r1, [r4, #0x8a7]
|
|
strb r0, [r4, #0x8a8]
|
|
strb r0, [r4, #0x8a9]
|
|
mov r1, #1
|
|
strb r1, [r4, #0x8ab]
|
|
ldr r2, _0217cfb8 ; =data_ov00_020e2f04
|
|
strb r0, [r4, #0x8ac]
|
|
str r2, [r4, #0x8b0]
|
|
strb r1, [r4, #0x8b4]
|
|
strb r0, [r4, #0x8b5]
|
|
str r0, [r4, #0x8b8]
|
|
str r0, [r4, #0x8bc]
|
|
ldr r2, _0217cfbc ; =data_ov00_020e2e3c
|
|
str r0, [r4, #0x8c0]
|
|
str r2, [r4, #0x8b0]
|
|
str r0, [r4, #0x8d0]
|
|
str r0, [r4, #0x8c4]
|
|
str r0, [r4, #0x8c8]
|
|
str r0, [r4, #0x8cc]
|
|
ldr r3, _0217cfc0 ; =data_ov36_02186dd4
|
|
add r2, r4, #0x108
|
|
str r3, [r4, #0x8d8]
|
|
strb r0, [r4, #0x8dc]
|
|
str r0, [r4, #0x8e0]
|
|
str r0, [r4, #0x8e4]
|
|
str r0, [r4, #0x8e8]
|
|
add r3, r4, #0x178
|
|
str r0, [r4, #0x8ec]
|
|
add r2, r2, #0x800
|
|
str r2, [r4, #0x8f4]
|
|
add r2, r3, #0x1000
|
|
str r2, [r4, #0x8f8]
|
|
mov r2, #0x870
|
|
str r2, [r4, #0x8fc]
|
|
add r2, r4, #0xa10
|
|
str r0, [r4, #0x904]
|
|
add ip, r4, #0x1000
|
|
str r0, [ip, #0x9e8]
|
|
str r0, [ip, #0x9ec]
|
|
str r0, [ip, #0x9f0]
|
|
add r3, r4, #0xa90
|
|
str r0, [ip, #0x9f4]
|
|
add r2, r2, #0x1000
|
|
str r2, [ip, #0x9fc]
|
|
add r2, r3, #0x1000
|
|
mov r5, #0x80
|
|
str r2, [ip, #0xa00]
|
|
str r5, [ip, #0xa04]
|
|
str r0, [ip, #0xa0c]
|
|
sub r3, r5, #0x81
|
|
str r3, [r4, #0x810]
|
|
str r3, [r4, #0x814]
|
|
str r3, [r4, #0x818]
|
|
str r3, [r4, #0x81c]
|
|
strb r1, [r4, #0x128]
|
|
rsb r1, r1, #0x10000
|
|
strh r1, [r4, #0x7a]
|
|
strh r0, [lr, #0x80]
|
|
add r2, r4, #0x78
|
|
strh r3, [lr, #0x82]
|
|
add r1, r2, #0x800
|
|
strh r3, [lr, #0x84]
|
|
mov r2, #4
|
|
bl func_020078f4
|
|
ldr r1, [r4, #0x878]
|
|
mov r0, r4
|
|
orr r1, r1, #0x2080
|
|
str r1, [r4, #0x878]
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217ccd8
|
|
_0217cf94: .word data_ov36_02186d18
|
|
_0217cf98: .word data_ov36_02186dec
|
|
_0217cf9c: .word func_ov00_020a9b4c + 1
|
|
_0217cfa0: .word func_ov36_0217d01c
|
|
_0217cfa4: .word data_ov36_02186e00
|
|
_0217cfa8: .word func_ov36_0217cfec
|
|
_0217cfac: .word func_ov36_0217d008
|
|
_0217cfb0: .word func_ov00_020b7d74
|
|
_0217cfb4: .word func_ov36_0217d294
|
|
_0217cfb8: .word data_ov00_020e2f04
|
|
_0217cfbc: .word data_ov00_020e2e3c
|
|
_0217cfc0: .word data_ov36_02186dd4
|
|
|
|
.global func_ov36_0217cfc4
|
|
arm_func_start func_ov36_0217cfc4
|
|
func_ov36_0217cfc4: ; 0x0217cfc4
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_02081f6c
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov36_0217cfc4
|
|
|
|
.global func_ov36_0217cfd8
|
|
arm_func_start func_ov36_0217cfd8
|
|
func_ov36_0217cfd8: ; 0x0217cfd8
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
blx func_ov00_020a95ec
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov36_0217cfd8
|
|
|
|
.global func_ov36_0217cfec
|
|
arm_func_start func_ov36_0217cfec
|
|
func_ov36_0217cfec: ; 0x0217cfec
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020b7e6c
|
|
mov r0, r4
|
|
bl func_ov00_020b7df0
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov36_0217cfec
|
|
|
|
.global func_ov36_0217d008
|
|
arm_func_start func_ov36_0217d008
|
|
func_ov36_0217d008: ; 0x0217d008
|
|
mov r2, #0
|
|
str r2, [r0]
|
|
sub r1, r2, #1
|
|
stmib r0, {r1, r2}
|
|
bx lr
|
|
arm_func_end func_ov36_0217d008
|
|
|
|
.global func_ov36_0217d01c
|
|
arm_func_start func_ov36_0217d01c
|
|
func_ov36_0217d01c: ; 0x0217d01c
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
add r1, r4, #0x24
|
|
mov r2, #0
|
|
blx func_ov00_020c0c08
|
|
ldr r1, _0217d040 ; =data_ov36_02186e00
|
|
mov r0, r4
|
|
str r1, [r4]
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217d01c
|
|
_0217d040: .word data_ov36_02186e00
|
|
|
|
.global func_ov36_0217d044
|
|
arm_func_start func_ov36_0217d044
|
|
func_ov36_0217d044: ; 0x0217d044
|
|
stmdb sp!, {r4, lr}
|
|
ldr r1, _0217d154 ; =data_ov36_02186d18
|
|
mov r4, r0
|
|
ldr r0, _0217d158 ; =data_027e0f6c
|
|
str r1, [r4]
|
|
ldr r0, [r0]
|
|
add r1, r4, #0x8b0
|
|
bl func_ov00_02093af0
|
|
add r0, r4, #0xd8
|
|
add r0, r0, #0x800
|
|
bl func_ov00_02081f6c
|
|
add r0, r4, #0x8b0
|
|
bl func_ov00_02094824
|
|
add r0, r4, #0x3b4
|
|
add r0, r0, #0x400
|
|
bl func_ov00_020d1980
|
|
add r0, r4, #0x6c0
|
|
blx func_0202ab64
|
|
add r0, r4, #0x2ac
|
|
add r0, r0, #0x400
|
|
mov r1, #2
|
|
mov r2, #4
|
|
ldr r3, _0217d15c ; =func_ov00_020b7d74
|
|
bl func_0204f754
|
|
add r0, r4, #0x6a0
|
|
bl func_ov00_020b7e6c
|
|
add r0, r4, #0x6a0
|
|
bl func_ov00_020b7df0
|
|
add r0, r4, #0x670
|
|
mov r1, #4
|
|
mov r2, #0xc
|
|
ldr r3, _0217d160 ; =func_ov36_0217cfec
|
|
bl func_0204f754
|
|
add r0, r4, #0x1ec
|
|
add r0, r0, #0x400
|
|
blx func_ov00_020a9b6c
|
|
add r0, r4, #0x590
|
|
blx func_ov00_020a95a4
|
|
add r0, r4, #0x16c
|
|
add r0, r0, #0x400
|
|
bl func_ov00_020b7d74
|
|
add r0, r4, #0x168
|
|
add r0, r0, #0x400
|
|
bl func_ov00_020b7d74
|
|
add r0, r4, #0x164
|
|
add r0, r0, #0x400
|
|
bl func_ov00_020b7d74
|
|
add r0, r4, #0xd4
|
|
add r0, r0, #0x400
|
|
blx func_ov00_020a9b6c
|
|
add r0, r4, #0x54
|
|
add r0, r0, #0x400
|
|
blx func_ov00_020a9b6c
|
|
add r0, r4, #0x3f8
|
|
blx func_ov00_020a95a4
|
|
add r0, r4, #0x36c
|
|
blx func_ov00_020a9b4c
|
|
add r0, r4, #0x280
|
|
mov r1, #2
|
|
mov r2, #0x6c
|
|
ldr r3, _0217d164 ; =func_ov00_020a9b4c
|
|
bl func_0204f754
|
|
add r0, r4, #0x178
|
|
blx func_ov00_020a95ec
|
|
mov r0, r4
|
|
bl func_ov00_020c1730
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217d044
|
|
_0217d154: .word data_ov36_02186d18
|
|
_0217d158: .word data_027e0f6c
|
|
_0217d15c: .word func_ov00_020b7d74
|
|
_0217d160: .word func_ov36_0217cfec
|
|
_0217d164: .word func_ov00_020a9b4c + 1
|
|
|
|
.global func_ov36_0217d168
|
|
arm_func_start func_ov36_0217d168
|
|
func_ov36_0217d168: ; 0x0217d168
|
|
stmdb sp!, {r4, lr}
|
|
ldr r1, _0217d280 ; =data_ov36_02186d18
|
|
mov r4, r0
|
|
ldr r0, _0217d284 ; =data_027e0f6c
|
|
str r1, [r4]
|
|
ldr r0, [r0]
|
|
add r1, r4, #0x8b0
|
|
bl func_ov00_02093af0
|
|
add r0, r4, #0xd8
|
|
add r0, r0, #0x800
|
|
bl func_ov00_02081f6c
|
|
add r0, r4, #0x8b0
|
|
bl func_ov00_02094824
|
|
add r0, r4, #0x3b4
|
|
add r0, r0, #0x400
|
|
bl func_ov00_020d1980
|
|
add r0, r4, #0x6c0
|
|
blx func_0202ab64
|
|
add r0, r4, #0x2ac
|
|
add r0, r0, #0x400
|
|
mov r1, #2
|
|
mov r2, #4
|
|
ldr r3, _0217d288 ; =func_ov00_020b7d74
|
|
bl func_0204f754
|
|
add r0, r4, #0x6a0
|
|
bl func_ov00_020b7e6c
|
|
add r0, r4, #0x6a0
|
|
bl func_ov00_020b7df0
|
|
add r0, r4, #0x670
|
|
mov r1, #4
|
|
mov r2, #0xc
|
|
ldr r3, _0217d28c ; =func_ov36_0217cfec
|
|
bl func_0204f754
|
|
add r0, r4, #0x1ec
|
|
add r0, r0, #0x400
|
|
blx func_ov00_020a9b6c
|
|
add r0, r4, #0x590
|
|
blx func_ov00_020a95a4
|
|
add r0, r4, #0x16c
|
|
add r0, r0, #0x400
|
|
bl func_ov00_020b7d74
|
|
add r0, r4, #0x168
|
|
add r0, r0, #0x400
|
|
bl func_ov00_020b7d74
|
|
add r0, r4, #0x164
|
|
add r0, r0, #0x400
|
|
bl func_ov00_020b7d74
|
|
add r0, r4, #0xd4
|
|
add r0, r0, #0x400
|
|
blx func_ov00_020a9b6c
|
|
add r0, r4, #0x54
|
|
add r0, r0, #0x400
|
|
blx func_ov00_020a9b6c
|
|
add r0, r4, #0x3f8
|
|
blx func_ov00_020a95a4
|
|
add r0, r4, #0x36c
|
|
blx func_ov00_020a9b4c
|
|
add r0, r4, #0x280
|
|
mov r1, #2
|
|
mov r2, #0x6c
|
|
ldr r3, _0217d290 ; =func_ov00_020a9b4c
|
|
bl func_0204f754
|
|
add r0, r4, #0x178
|
|
blx func_ov00_020a95ec
|
|
mov r0, r4
|
|
bl func_ov00_020c1730
|
|
mov r0, r4
|
|
bl func_0202ea0c
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217d168
|
|
_0217d280: .word data_ov36_02186d18
|
|
_0217d284: .word data_027e0f6c
|
|
_0217d288: .word func_ov00_020b7d74
|
|
_0217d28c: .word func_ov36_0217cfec
|
|
_0217d290: .word func_ov00_020a9b4c + 1
|
|
|
|
.global func_ov36_0217d294
|
|
arm_func_start func_ov36_0217d294
|
|
func_ov36_0217d294: ; 0x0217d294
|
|
mov r1, #0
|
|
str r1, [r0]
|
|
bx lr
|
|
arm_func_end func_ov36_0217d294
|
|
|
|
.global func_ov36_0217d2a0
|
|
arm_func_start func_ov36_0217d2a0
|
|
func_ov36_0217d2a0: ; 0x0217d2a0
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
sub sp, sp, #0x70
|
|
ldr r1, _0217d680 ; =data_027e0f74
|
|
mov r5, r0
|
|
ldr r0, [r1]
|
|
mov r1, #0x7e
|
|
bl func_ov00_02097760
|
|
cmp r0, #0
|
|
addne sp, sp, #0x70
|
|
movne r0, #0
|
|
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
|
|
ldr r0, _0217d680 ; =data_027e0f74
|
|
mov r1, #0xe
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097c18
|
|
cmp r0, #0
|
|
addne sp, sp, #0x70
|
|
movne r0, #0
|
|
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
|
|
add r0, sp, #0x44
|
|
bl func_ov00_020c1500
|
|
mvn r1, #0
|
|
add r0, sp, #0x44
|
|
str r1, [sp, #0x60]
|
|
str r1, [sp, #0x64]
|
|
bl func_ov00_020c3348
|
|
mvn r0, #0
|
|
str r0, [sp, #0xc]
|
|
str r0, [sp, #0x10]
|
|
ldr r0, [r5, #8]
|
|
add r1, sp, #0xc
|
|
str r0, [sp, #0x60]
|
|
ldr r2, [r5, #0xc]
|
|
ldr r0, _0217d684 ; =data_027e0fe8
|
|
str r2, [sp, #0x64]
|
|
str r1, [sp]
|
|
ldr r0, [r0]
|
|
ldr r1, _0217d688 ; =0x4c4f4e44
|
|
add r3, sp, #0x44
|
|
add r2, r5, #0x48
|
|
bl func_ov00_020c4048
|
|
ldr r1, [sp, #0xc]
|
|
mvn r0, #0
|
|
cmp r1, r0
|
|
beq _0217d368
|
|
ldr r0, _0217d68c ; =data_027e0fe4
|
|
add r1, sp, #0xc
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c3674
|
|
str r0, [r5, #0x6b8]
|
|
_0217d368:
|
|
ldr r7, [r5, #0x6b8]
|
|
cmp r7, #0
|
|
addeq sp, sp, #0x70
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
ldr r0, _0217d690 ; =data_027e0d0c
|
|
mvn r3, #0
|
|
ldmia r0, {r4, lr}
|
|
ldr ip, [r0, #8]
|
|
mov r2, #0
|
|
str r2, [r7, #0x12c]
|
|
str r4, [r7, #0x7c]
|
|
str lr, [r7, #0x80]
|
|
str ip, [r7, #0x84]
|
|
str r3, [r7, #0x88]
|
|
ldr r0, [r7, #0x7c]
|
|
ldr r6, _0217d694 ; =0x00000b33
|
|
str r0, [r7, #0xa8]
|
|
ldr r0, [r7, #0x80]
|
|
ldr r1, _0217d698 ; =0x0000199a
|
|
str r0, [r7, #0xac]
|
|
ldr r0, [r7, #0x84]
|
|
str r4, [sp, #0x34]
|
|
str r0, [r7, #0xb0]
|
|
str r3, [r7, #0xb4]
|
|
str r2, [r5, #0x7c]
|
|
str r6, [r5, #0x80]
|
|
str r2, [r5, #0x84]
|
|
str r3, [r5, #0x88]
|
|
str r2, [r5, #0x8c]
|
|
str r1, [r5, #0x90]
|
|
str r2, [r5, #0x94]
|
|
str r1, [r5, #0x98]
|
|
str r2, [r5, #0xa8]
|
|
add r0, r1, #0x800
|
|
str r0, [r5, #0xac]
|
|
add r0, r1, #0x1800
|
|
str r2, [r5, #0xb0]
|
|
str r0, [r5, #0xb4]
|
|
add r1, r6, #0x800
|
|
str r1, [r5, #0x860]
|
|
ldr r0, _0217d680 ; =data_027e0f74
|
|
mov r1, #0xeb
|
|
ldr r0, [r0]
|
|
str lr, [sp, #0x38]
|
|
str ip, [sp, #0x3c]
|
|
str r3, [sp, #0x40]
|
|
bl func_ov00_0209779c
|
|
ldr r0, _0217d680 ; =data_027e0f74
|
|
mov r1, #0xec
|
|
ldr r0, [r0]
|
|
mov r2, #0
|
|
bl func_ov00_0209779c
|
|
ldr r0, _0217d680 ; =data_027e0f74
|
|
mov r1, #0xed
|
|
ldr r0, [r0]
|
|
mov r2, #0
|
|
bl func_ov00_0209779c
|
|
add r0, r5, #0x158
|
|
bl func_ov36_0217c704
|
|
ldr r1, _0217d69c ; =func_ov36_0217c24c
|
|
add r0, r5, #0x17c
|
|
str r5, [r5, #0x1a8]
|
|
bl func_02018cb8
|
|
add r0, r5, #0x158
|
|
mov r1, #1
|
|
bl func_ov36_0217c958
|
|
add r0, r5, #0x570
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r5, #0x580]
|
|
mov r4, #0
|
|
mov r1, #2
|
|
str r4, [r0, #0x10]
|
|
str r1, [r5, #0x12c]
|
|
strb r1, [r5, #0x124]
|
|
mov r0, #3
|
|
strb r1, [r5, #0x125]
|
|
add r1, r5, #0x100
|
|
strh r0, [r1, #0x20]
|
|
ldr r1, [r5, #8]
|
|
add r2, r5, #0xd8
|
|
str r1, [r5, #0x7d4]
|
|
ldr r3, [r5, #0xc]
|
|
bic r1, r4, #0x6000
|
|
str r3, [r5, #0x7d8]
|
|
strb r4, [r5, #0x808]
|
|
strb r4, [r5, #0x11a]
|
|
ldr r3, [r5, #0x48]
|
|
bic r1, r1, #0x1f
|
|
str r3, [r5, #0x82c]
|
|
ldr r4, [r5, #0x4c]
|
|
orr r3, r1, #7
|
|
str r4, [r5, #0x830]
|
|
ldr r4, [r5, #0x50]
|
|
add r1, r5, #0x2c
|
|
str r4, [r5, #0x834]
|
|
ldr r4, [r5, #0x82c]
|
|
add ip, r0, #0xb30
|
|
str r4, [r5, #0x838]
|
|
ldr lr, [r1, #0x804]
|
|
rsb r4, r0, #0xcd0
|
|
str lr, [r5, #0x83c]
|
|
ldr r0, [r1, #0x808]
|
|
add r2, r2, #0x800
|
|
str r0, [r5, #0x840]
|
|
ldr r1, [r5, #0x48]
|
|
add r0, r5, #0x8b0
|
|
str r1, [sp, #0x14]
|
|
ldr lr, [r5, #0x4c]
|
|
add r1, sp, #0x14
|
|
str lr, [sp, #0x18]
|
|
ldr lr, [r5, #0x50]
|
|
str r3, [sp, #8]
|
|
str lr, [sp, #0x1c]
|
|
str ip, [sp, #0x20]
|
|
str r4, [sp, #0x24]
|
|
str r2, [sp]
|
|
ldr r4, [r0]
|
|
ldr r2, [r5, #8]
|
|
ldr r4, [r4, #0x10]
|
|
blx r4
|
|
mov r0, #1
|
|
strb r0, [r5, #0x8b4]
|
|
ldr r2, _0217d6a0 ; =data_ov36_0218683e
|
|
mov r4, r5
|
|
strb r0, [r5, #0x8dc]
|
|
mov r3, #0
|
|
mov r1, #2
|
|
_0217d56c:
|
|
mov r0, r3, lsl #0x1
|
|
ldrh r0, [r2, r0]
|
|
add r3, r3, #1
|
|
cmp r3, #4
|
|
str r0, [r4, #0x674]
|
|
str r1, [r4, #0x678]
|
|
add r4, r4, #0xc
|
|
blt _0217d56c
|
|
mov r0, #0xe
|
|
str r0, [r5, #0x6a4]
|
|
ldr r0, _0217d6a4 ; =0x00000333
|
|
str r1, [r5, #0x6a8]
|
|
ldr r1, _0217d6a8 ; =0x00001610
|
|
str r0, [sp]
|
|
ldr r0, _0217d6ac ; =data_027e0fec
|
|
str r1, [sp, #4]
|
|
ldr r0, [r0]
|
|
mov r2, #0x800
|
|
add r0, r0, #0x2000
|
|
ldr r1, [r0, #0xff0]
|
|
mov r3, r2
|
|
add r0, r5, #0x8e0
|
|
bl func_ov17_02168660
|
|
ldr r1, _0217d6a4 ; =0x00000333
|
|
add r0, r5, #0x1e8
|
|
mov r2, #0x800
|
|
ldr r3, _0217d6a8 ; =0x00001610
|
|
str r1, [sp]
|
|
ldr r1, _0217d6ac ; =data_027e0fec
|
|
str r3, [sp, #4]
|
|
ldr r1, [r1]
|
|
mov r3, r2
|
|
add r1, r1, #0x3000
|
|
ldr r1, [r1, #0x28]
|
|
add r0, r0, #0x1800
|
|
bl func_ov17_02168660
|
|
ldr r0, _0217d6b0 ; =data_027e0e60
|
|
mov r1, #3
|
|
ldr r0, [r0]
|
|
mov r2, r1
|
|
mov r3, #0
|
|
bl func_ov00_02084b38
|
|
ldr r0, _0217d6b0 ; =data_027e0e60
|
|
mov r1, #4
|
|
ldr r0, [r0]
|
|
mov r2, #3
|
|
mov r3, #0
|
|
bl func_ov00_02084b38
|
|
ldr r0, _0217d680 ; =data_027e0f74
|
|
mov r1, #0xeb
|
|
ldr r0, [r0]
|
|
mov r2, #0
|
|
bl func_ov00_0209779c
|
|
ldr r0, _0217d680 ; =data_027e0f74
|
|
ldr r1, _0217d6b4 ; =0x0000011e
|
|
ldr r0, [r0]
|
|
mov r2, #0
|
|
bl func_ov00_0209779c
|
|
ldr r0, _0217d680 ; =data_027e0f74
|
|
ldr r1, _0217d6b8 ; =0x0000011f
|
|
ldr r0, [r0]
|
|
mov r2, #0
|
|
bl func_ov00_0209779c
|
|
mov r0, r5
|
|
mov r1, #0
|
|
bl func_ov36_0217d6bc
|
|
mov r0, #1
|
|
add sp, sp, #0x70
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217d2a0
|
|
_0217d680: .word data_027e0f74
|
|
_0217d684: .word data_027e0fe8
|
|
_0217d688: .word 0x4c4f4e44
|
|
_0217d68c: .word data_027e0fe4
|
|
_0217d690: .word data_027e0d0c
|
|
_0217d694: .word 0x00000b33
|
|
_0217d698: .word 0x0000199a
|
|
_0217d69c: .word func_ov36_0217c24c
|
|
_0217d6a0: .word data_ov36_0218683e
|
|
_0217d6a4: .word 0x00000333
|
|
_0217d6a8: .word 0x00001610
|
|
_0217d6ac: .word data_027e0fec
|
|
_0217d6b0: .word data_027e0e60
|
|
_0217d6b4: .word 0x0000011e
|
|
_0217d6b8: .word 0x0000011f
|
|
|
|
.global func_ov36_0217d6bc
|
|
arm_func_start func_ov36_0217d6bc
|
|
func_ov36_0217d6bc: ; 0x0217d6bc
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r4, r1
|
|
mov r5, r0
|
|
add r1, sp, #0
|
|
mov r0, #0
|
|
mov r2, #4
|
|
bl func_020078f4
|
|
add r0, r5, #0x78
|
|
add r1, sp, #0
|
|
add r0, r0, #0x800
|
|
mov r2, #4
|
|
bl func_02007908
|
|
ldr r0, [r5, #0x878]
|
|
bic r2, r0, #0x20
|
|
bic r0, r2, #4
|
|
bic r1, r0, #1
|
|
bic r0, r1, #0x1000
|
|
str r0, [r5, #0x878]
|
|
tst r0, #0x100000
|
|
ldrne r0, _0217d7c4 ; =0x00001ccd
|
|
ldr r1, _0217d7c8 ; =0x0000219a
|
|
ldreq r0, _0217d7cc ; =0x00001333
|
|
str r0, [r5, #0x860]
|
|
str r1, [r5, #0x88]
|
|
mov r1, #2
|
|
str r1, [r5, #0x12c]
|
|
strb r1, [r5, #0x125]
|
|
ldr r0, _0217d7d0 ; =data_ov36_02186698
|
|
strb r1, [r5, #0x124]
|
|
add r1, r0, r4, lsl #3
|
|
ldr r0, [r1, #4]
|
|
tst r0, #1
|
|
add r0, r5, r0, asr #1
|
|
ldreq r1, [r1]
|
|
beq _0217d754
|
|
ldr r2, [r0]
|
|
ldr r1, [r1]
|
|
ldr r1, [r2, r1]
|
|
_0217d754:
|
|
blx r1
|
|
cmp r0, #0
|
|
bne _0217d7b4
|
|
ldr r0, [sp]
|
|
tst r0, #0x20
|
|
ldrne r0, [r5, #0x878]
|
|
orrne r0, r0, #0x20
|
|
strne r0, [r5, #0x878]
|
|
ldr r0, [sp]
|
|
tst r0, #4
|
|
ldrne r0, [r5, #0x878]
|
|
orrne r0, r0, #4
|
|
strne r0, [r5, #0x878]
|
|
ldr r0, [sp]
|
|
tst r0, #1
|
|
ldrne r0, [r5, #0x878]
|
|
orrne r0, r0, #1
|
|
strne r0, [r5, #0x878]
|
|
ldr r0, [sp]
|
|
tst r0, #0x1000
|
|
ldrne r0, [r5, #0x878]
|
|
orrne r0, r0, #0x1000
|
|
strne r0, [r5, #0x878]
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217d7b4:
|
|
mov r0, #0
|
|
str r0, [r5, #0x138]
|
|
str r4, [r5, #0x130]
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217d6bc
|
|
_0217d7c4: .word 0x00001ccd
|
|
_0217d7c8: .word 0x0000219a
|
|
_0217d7cc: .word 0x00001333
|
|
_0217d7d0: .word data_ov36_02186698
|
|
|
|
.global func_ov36_0217d7d4
|
|
arm_func_start func_ov36_0217d7d4
|
|
func_ov36_0217d7d4: ; 0x0217d7d4
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r5, r0
|
|
mov r4, r1
|
|
bl func_ov00_020c313c
|
|
cmp r0, #0
|
|
beq _0217d7f4
|
|
mov r0, r5
|
|
bl func_ov36_0217da6c
|
|
_0217d7f4:
|
|
mov r0, r5
|
|
bl func_ov36_02185588
|
|
mov r1, r4
|
|
add r0, r5, #0xa4
|
|
add r2, r5, #0x48
|
|
bl func_ov00_0207a1c8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov36_0217d7d4
|
|
|
|
.global func_ov36_0217d810
|
|
arm_func_start func_ov36_0217d810
|
|
func_ov36_0217d810: ; 0x0217d810
|
|
stmdb sp!, {r4, r5, r6, r7, r8, lr}
|
|
sub sp, sp, #0x18
|
|
mov r5, r0
|
|
mov r4, r1
|
|
bl func_ov00_020c313c
|
|
cmp r0, #0
|
|
beq _0217d9d8
|
|
mov r0, r5
|
|
bl func_ov36_0217da08
|
|
cmp r0, #0
|
|
beq _0217d844
|
|
mov r0, r5
|
|
bl func_ov36_0217da6c
|
|
_0217d844:
|
|
ldr r0, [r5, #0x878]
|
|
tst r0, #0x20
|
|
beq _0217d9c8
|
|
ldr r0, _0217d9f8 ; =data_027e077c
|
|
ldr r0, [r0]
|
|
cmp r0, #0xd
|
|
bne _0217d9c8
|
|
add r0, r5, #0x48
|
|
add r3, sp, #0xc
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
ldrh r0, [r5, #0x78]
|
|
ldr r2, _0217d9fc ; =data_02050f54
|
|
ldr r1, [sp, #0x10]
|
|
mov r0, r0, asr #0x4
|
|
mov r0, r0, lsl #0x1
|
|
mov r3, r0, lsl #0x1
|
|
add r0, r0, #1
|
|
mov r0, r0, lsl #0x1
|
|
ldrsh r6, [r2, r3]
|
|
ldrsh r3, [r2, r0]
|
|
mov r0, #0x800
|
|
mov r2, r6, asr #0x1f
|
|
mov r7, r2, lsl #0xd
|
|
mov r2, r3, asr #0x1f
|
|
mov r2, r2, lsl #0xd
|
|
str r1, [sp, #4]
|
|
orr r7, r7, r6, lsr #19
|
|
adds r8, r0, r6, lsl #13
|
|
adc r7, r7, #0
|
|
adds r6, r0, r3, lsl #13
|
|
orr r2, r2, r3, lsr #19
|
|
mov r3, r8, lsr #0xc
|
|
adc r0, r2, #0
|
|
mov r2, r6, lsr #0xc
|
|
ldr r6, [sp, #0xc]
|
|
orr r3, r3, r7, lsl #20
|
|
add r6, r6, r3
|
|
ldr r3, [sp, #0x14]
|
|
orr r2, r2, r0, lsl #20
|
|
add r0, r3, r2
|
|
str r6, [sp, #0xc]
|
|
str r0, [sp, #0x14]
|
|
str r0, [sp, #8]
|
|
str r6, [sp]
|
|
add r0, r5, #0x8b0
|
|
ldr r2, [r0]
|
|
add r1, sp, #0
|
|
ldr r2, [r2, #0x30]
|
|
blx r2
|
|
ldr r0, _0217da00 ; =data_027e0f6c
|
|
add r1, r5, #0x8b0
|
|
ldr r0, [r0]
|
|
bl func_ov00_02093a5c
|
|
ldr r0, [r5, #0x48]
|
|
ldr r6, _0217d9fc ; =data_02050f54
|
|
str r0, [sp, #0xc]
|
|
ldr r1, [r5, #0x4c]
|
|
ldr r2, _0217da04 ; =0x0000199a
|
|
str r1, [sp, #0x10]
|
|
ldr r1, [r5, #0x50]
|
|
mov r3, #0
|
|
str r1, [sp, #0x14]
|
|
ldrh r7, [r5, #0x78]
|
|
mov r7, r7, asr #0x4
|
|
mov r8, r7, lsl #0x1
|
|
mov r7, r8, lsl #0x1
|
|
add ip, r8, #1
|
|
mov ip, ip, lsl #0x1
|
|
ldrsh r7, [r6, r7]
|
|
ldrsh lr, [r6, ip]
|
|
umull r8, ip, r7, r2
|
|
mla ip, r7, r3, ip
|
|
mov r6, r7, asr #0x1f
|
|
adds r7, r8, #0x800
|
|
mla ip, r6, r2, ip
|
|
adc r6, ip, #0
|
|
mov r7, r7, lsr #0xc
|
|
orr r7, r7, r6, lsl #20
|
|
add r0, r0, r7
|
|
umull r7, r6, lr, r2
|
|
mla r6, lr, r3, r6
|
|
mov ip, lr, asr #0x1f
|
|
adds r3, r7, #0x800
|
|
mla r6, ip, r2, r6
|
|
adc r2, r6, #0
|
|
mov r3, r3, lsr #0xc
|
|
orr r3, r3, r2, lsl #20
|
|
add r1, r1, r3
|
|
str r0, [sp, #0xc]
|
|
str r1, [sp, #0x14]
|
|
str r0, [r5, #0x820]
|
|
ldr r0, [sp, #0x10]
|
|
str r0, [r5, #0x824]
|
|
ldr r0, [sp, #0x14]
|
|
str r0, [r5, #0x828]
|
|
b _0217d9d8
|
|
_0217d9c8:
|
|
ldr r0, _0217da00 ; =data_027e0f6c
|
|
add r1, r5, #0x8b0
|
|
ldr r0, [r0]
|
|
bl func_ov00_02093af0
|
|
_0217d9d8:
|
|
mov r0, r5
|
|
bl func_ov36_02185588
|
|
mov r1, r4
|
|
add r0, r5, #0xa4
|
|
add r2, r5, #0x48
|
|
bl func_ov00_0207a1c8
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217d810
|
|
_0217d9f8: .word data_027e077c
|
|
_0217d9fc: .word data_02050f54
|
|
_0217da00: .word data_027e0f6c
|
|
_0217da04: .word 0x0000199a
|
|
|
|
.global func_ov36_0217da08
|
|
arm_func_start func_ov36_0217da08
|
|
func_ov36_0217da08: ; 0x0217da08
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldr r0, [r4, #0x878]
|
|
tst r0, #0x800
|
|
movne r0, #0
|
|
ldmneia sp!, {r4, pc}
|
|
tst r0, #1
|
|
bne _0217da58
|
|
ldr r0, _0217da68 ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097b9c
|
|
cmp r0, #0
|
|
bne _0217da58
|
|
mov r0, #0x10000
|
|
ldr r1, [r4, #0x7cc]
|
|
rsb r0, r0, #0
|
|
and r0, r1, r0
|
|
cmp r0, #0x1000000
|
|
beq _0217da60
|
|
_0217da58:
|
|
mov r0, #1
|
|
ldmia sp!, {r4, pc}
|
|
_0217da60:
|
|
mov r0, #0
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217da08
|
|
_0217da68: .word data_027e0f74
|
|
|
|
.global func_ov36_0217da6c
|
|
arm_func_start func_ov36_0217da6c
|
|
func_ov36_0217da6c: ; 0x0217da6c
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0x60
|
|
mov r4, r0
|
|
bl func_ov36_02184e10
|
|
mov r0, r4
|
|
bl func_ov00_020c2bf4
|
|
mov r0, r4
|
|
bl func_ov36_021852fc
|
|
ldr r0, [r4, #0x130]
|
|
cmp r0, #2
|
|
blt _0217dafc
|
|
cmp r0, #0x15
|
|
bgt _0217dafc
|
|
ldr r0, _0217dd64 ; =data_027e0fc8
|
|
ldr r0, [r0]
|
|
bl func_ov00_020bc46c
|
|
cmp r0, #1
|
|
beq _0217dac0
|
|
ldr r0, [r4, #0x878]
|
|
tst r0, #0x100000
|
|
beq _0217dafc
|
|
_0217dac0:
|
|
add r0, sp, #0x1c
|
|
add r1, r4, #0x178
|
|
ldr r5, [r4, #0x840]
|
|
bl func_ov36_0217c5a0
|
|
ldr r2, [r4, #0x838]
|
|
ldr r1, [sp, #0x20]
|
|
ldr r0, _0217dd68 ; =data_027e0f64
|
|
add r1, r1, #0x4000
|
|
str r1, [sp, #0x58]
|
|
ldr r0, [r0]
|
|
str r2, [sp, #0x54]
|
|
str r5, [sp, #0x5c]
|
|
ldr r0, [r0, #4]
|
|
add r1, sp, #0x54
|
|
bl func_ov00_02088010
|
|
_0217dafc:
|
|
ldr r0, [r4, #0x130]
|
|
ldr r1, _0217dd6c ; =data_ov36_02186768
|
|
add r1, r1, r0, lsl #3
|
|
ldr r0, [r1, #4]
|
|
tst r0, #1
|
|
add r0, r4, r0, asr #1
|
|
ldreq r1, [r1]
|
|
beq _0217db28
|
|
ldr r2, [r0]
|
|
ldr r1, [r1]
|
|
ldr r1, [r2, r1]
|
|
_0217db28:
|
|
blx r1
|
|
ldr r1, [r4, #0x48]
|
|
add r0, r4, #0x48
|
|
str r1, [r4, #0x54]
|
|
ldr r2, [r4, #0x4c]
|
|
add r1, r4, #0x60
|
|
str r2, [r4, #0x58]
|
|
ldr r3, [r4, #0x50]
|
|
mov r2, r0
|
|
str r3, [r4, #0x5c]
|
|
bl func_01ff9bc4
|
|
mov r0, r4
|
|
bl func_ov36_0218543c
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_01fffd04
|
|
mov r0, r4
|
|
bl func_ov36_021858f0
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c800
|
|
add r0, r4, #0x570
|
|
bl func_ov00_020c5e20
|
|
ldr r0, [r4, #0x584]
|
|
cmp r0, #0
|
|
bne _0217dbac
|
|
ldr r0, [r4, #0x580]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
beq _0217dbac
|
|
add r0, r4, #0x570
|
|
mov r1, #1
|
|
bl func_ov00_020c5d74
|
|
_0217dbac:
|
|
ldr r0, [r4, #0x878]
|
|
tst r0, #4
|
|
addeq r0, r4, #0x800
|
|
moveq r1, #0
|
|
streqh r1, [r0, #0x90]
|
|
add r0, r4, #0x200
|
|
ldrsh r2, [r0, #0x64]
|
|
add r1, r4, #0x800
|
|
add r0, sp, #0xc
|
|
strh r2, [sp, #0xc]
|
|
ldrsh r1, [r1, #0x90]
|
|
mov r2, #0x16c
|
|
bl func_0202b154
|
|
ldrsh r2, [sp, #0xc]
|
|
add r1, r4, #0x200
|
|
mov r0, r4
|
|
strh r2, [r1, #0x64]
|
|
bl func_ov36_021850c8
|
|
add r3, r4, #0x38
|
|
add r0, r4, #0x2c
|
|
add r0, r0, #0x800
|
|
ldrh r5, [r4, #0x78]
|
|
add sl, r3, #0x800
|
|
ldmia r0, {r0, r1, r2}
|
|
mov r3, r5, asr #0x4
|
|
mov r5, r3, lsl #0x1
|
|
add r3, sp, #0x48
|
|
stmia r3, {r0, r1, r2}
|
|
add r0, r5, #1
|
|
mov r2, r5, lsl #0x1
|
|
ldr r1, _0217dd70 ; =data_02050f54
|
|
mov r0, r0, lsl #0x1
|
|
ldrsh r7, [r1, r0]
|
|
mov r0, #4
|
|
add sb, sp, #0x3c
|
|
ldrsh r8, [r1, r2]
|
|
sub lr, r0, #5
|
|
ldmia sl, {r0, r1, r2}
|
|
stmia sb, {r0, r1, r2}
|
|
mov r2, sb
|
|
ldr sb, [r4, #0x864]
|
|
ldr r1, [r4, #0x860]
|
|
mov r6, #0
|
|
mov r5, #0x5000
|
|
str r1, [sp, #0x34]
|
|
ldr ip, _0217dd74 ; =0x0000099a
|
|
str r5, [sp, #0x38]
|
|
umull sl, r5, sb, ip
|
|
mla r5, sb, r6, r5
|
|
mov r0, sb, asr #0x1f
|
|
str r6, [sp, #0x2c]
|
|
mla r5, r0, ip, r5
|
|
adds r6, sl, #0x800
|
|
adc r0, r5, #0
|
|
mov r5, r6, lsr #0xc
|
|
orr r5, r5, r0, lsl #20
|
|
smull sb, r6, r8, r5
|
|
smull r5, r0, r7, r5
|
|
adds r8, sb, #0x800
|
|
adc r7, r6, #0
|
|
adds r5, r5, #0x800
|
|
mov r6, r8, lsr #0xc
|
|
orr r6, r6, r7, lsl #20
|
|
adc r0, r0, #0
|
|
mov r5, r5, lsr #0xc
|
|
orr r5, r5, r0, lsl #20
|
|
add fp, sp, #0x28
|
|
str r6, [sp, #0x28]
|
|
str r5, [sp, #0x30]
|
|
str fp, [sp]
|
|
mov r0, #4
|
|
stmib sp, {r0, lr}
|
|
ldr r0, _0217dd78 ; =data_027e0ff8
|
|
add r1, r4, #8
|
|
ldr r0, [r0]
|
|
bl func_ov05_021082e4
|
|
rsb r0, r6, #0
|
|
str r0, [sp, #0x28]
|
|
rsb r0, r5, #0
|
|
str r0, [sp, #0x30]
|
|
mov r0, #0
|
|
str r0, [sp, #0x2c]
|
|
mov r1, fp
|
|
mov r0, #4
|
|
str r1, [sp]
|
|
str r0, [sp, #4]
|
|
sub r0, r0, #5
|
|
str r0, [sp, #8]
|
|
ldr r0, _0217dd78 ; =data_027e0ff8
|
|
ldr r1, [r4, #0x6b8]
|
|
ldr r0, [r0]
|
|
add r1, r1, #8
|
|
add r2, sp, #0x3c
|
|
add r3, sp, #0x48
|
|
bl func_ov05_021082e4
|
|
mov r0, r4
|
|
bl func_ov36_021854e8
|
|
ldr r0, [r4, #0x130]
|
|
cmp r0, #1
|
|
addlt sp, sp, #0x60
|
|
ldmltia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
cmp r0, #0x16
|
|
addge sp, sp, #0x60
|
|
ldmgeia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
ldr r0, _0217dd64 ; =data_027e0fc8
|
|
add r1, r4, #0x48
|
|
ldr r0, [r0]
|
|
bl func_ov00_020bb6d4
|
|
add sp, sp, #0x60
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217da6c
|
|
_0217dd64: .word data_027e0fc8
|
|
_0217dd68: .word data_027e0f64
|
|
_0217dd6c: .word data_ov36_02186768
|
|
_0217dd70: .word data_02050f54
|
|
_0217dd74: .word 0x0000099a
|
|
_0217dd78: .word data_027e0ff8
|
|
|
|
.global func_ov36_0217dd7c
|
|
arm_func_start func_ov36_0217dd7c
|
|
func_ov36_0217dd7c: ; 0x0217dd7c
|
|
ldr r2, [r0, #0x878]
|
|
mvn r1, #0
|
|
orr r2, r2, #1
|
|
str r2, [r0, #0x878]
|
|
str r1, [r0, #0x88]
|
|
mov r0, #1
|
|
bx lr
|
|
arm_func_end func_ov36_0217dd7c
|
|
|
|
.global func_ov36_0217dd98
|
|
arm_func_start func_ov36_0217dd98
|
|
func_ov36_0217dd98: ; 0x0217dd98
|
|
stmdb sp!, {r4, lr}
|
|
mov r1, #0
|
|
mov r4, r0
|
|
bl func_ov00_020c1bfc
|
|
cmp r0, #0
|
|
moveq r0, #0
|
|
streq r0, [r4, #0x138]
|
|
ldmeqia sp!, {r4, pc}
|
|
ldr r0, _0217ddfc ; =data_027e0e60
|
|
ldrh r1, [r4, #0x20]
|
|
ldr r0, [r0]
|
|
mov r2, #0
|
|
bl func_ov00_020836dc
|
|
cmp r0, #0
|
|
beq _0217ddf0
|
|
ldr r0, [r4, #0x138]
|
|
cmp r0, #0x34
|
|
ldmleia sp!, {r4, pc}
|
|
mov r0, r4
|
|
mov r1, #1
|
|
bl func_ov36_0217d6bc
|
|
ldmia sp!, {r4, pc}
|
|
_0217ddf0:
|
|
mov r0, #0
|
|
str r0, [r4, #0x138]
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217dd98
|
|
_0217ddfc: .word data_027e0e60
|
|
|
|
.global func_ov36_0217de00
|
|
arm_func_start func_ov36_0217de00
|
|
func_ov36_0217de00: ; 0x0217de00
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c198c
|
|
cmp r0, #0
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, pc}
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov36_02184a64
|
|
cmp r0, #0
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, pc}
|
|
add r1, r4, #0x3b4
|
|
ldr r2, [r4, #0x30]
|
|
ldr r0, _0217dec0 ; =data_027e0c68
|
|
add r1, r1, #0x400
|
|
bl func_02036ce4
|
|
ldr r1, [r4, #0x50]
|
|
mov r0, r4
|
|
sub r1, r1, #0x8000
|
|
str r1, [r4, #0x50]
|
|
mvn r2, #0
|
|
mov r1, #1
|
|
str r2, [r4, #0x98]
|
|
bl func_ov00_020c1908
|
|
mov r1, #1
|
|
add r0, r4, #0x158
|
|
strb r1, [r4, #0x11a]
|
|
bl func_ov36_0217c958
|
|
ldr r1, _0217dec4 ; =data_ov36_02186c84
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
ldr r0, [r4, #0x878]
|
|
mov r2, #0
|
|
orr r0, r0, #1
|
|
bic r0, r0, #0x10000
|
|
bic r0, r0, #0x20000
|
|
bic r0, r0, #0x40000
|
|
bic r0, r0, #0x80000
|
|
str r0, [r4, #0x878]
|
|
add r0, r4, #0x800
|
|
strh r2, [r0, #0x90]
|
|
ldr r0, _0217dec8 ; =data_ov00_020eec68
|
|
mov r1, #0xca
|
|
mov r3, #0x7f
|
|
bl func_ov00_020d70a4
|
|
mov r0, #1
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217de00
|
|
_0217dec0: .word data_027e0c68
|
|
_0217dec4: .word data_ov36_02186c84
|
|
_0217dec8: .word data_ov00_020eec68
|
|
|
|
.global func_ov36_0217decc
|
|
arm_func_start func_ov36_0217decc
|
|
func_ov36_0217decc: ; 0x0217decc
|
|
stmdb sp!, {r3, r4, r5, r6, lr}
|
|
sub sp, sp, #0x44
|
|
mov r5, r0
|
|
ldr r1, [r5, #0x878]
|
|
tst r1, #0x10000
|
|
bne _0217df28
|
|
ldr r0, [r5, #0x138]
|
|
cmp r0, #0x5a
|
|
addlt sp, sp, #0x44
|
|
ldmltia sp!, {r3, r4, r5, r6, pc}
|
|
add r0, r5, #0x158
|
|
mov r1, #0
|
|
bl func_ov36_0217ca34
|
|
ldr r0, [r5, #0x168]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
mov r0, #0
|
|
str r0, [r5, #0x138]
|
|
ldr r0, [r5, #0x878]
|
|
add sp, sp, #0x44
|
|
orr r0, r0, #0x10000
|
|
str r0, [r5, #0x878]
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217df28:
|
|
tst r1, #0x20000
|
|
bne _0217df94
|
|
ldr r0, [r5, #0x138]
|
|
cmp r0, #0xc
|
|
bne _0217df50
|
|
ldr r0, _0217e3a4 ; =data_027e0fc8
|
|
ldr r0, [r0]
|
|
ldr r1, [r0]
|
|
ldr r1, [r1, #0x80]
|
|
blx r1
|
|
_0217df50:
|
|
ldr r0, [r5, #0x138]
|
|
cmp r0, #0x3c
|
|
addlt sp, sp, #0x44
|
|
ldmltia sp!, {r3, r4, r5, r6, pc}
|
|
add r0, r5, #0x158
|
|
mov r1, #0
|
|
bl func_ov36_0217ca34
|
|
ldr r0, [r5, #0x168]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
mov r0, #0
|
|
str r0, [r5, #0x138]
|
|
ldr r0, [r5, #0x878]
|
|
add sp, sp, #0x44
|
|
orr r0, r0, #0x20000
|
|
str r0, [r5, #0x878]
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217df94:
|
|
tst r1, #0x40000
|
|
bne _0217e170
|
|
bl func_ov36_02185c84
|
|
ldr r1, [r5, #0x1c]
|
|
ldr r0, _0217e3a8 ; =0xffffe99a
|
|
ldr r2, [r5, #0x50]
|
|
add r0, r1, r0
|
|
cmp r2, r0
|
|
blt _0217e028
|
|
add r0, r5, #0x68
|
|
mov r1, #0
|
|
mov r2, #0x52
|
|
bl func_0202b0f4
|
|
cmp r0, #0
|
|
beq _0217e030
|
|
ldr r0, _0217e3ac ; =data_027e103c
|
|
ldr r1, _0217e3b0 ; =0x000c014f
|
|
ldr r0, [r0]
|
|
bl func_ov00_020cfc70
|
|
add r0, r5, #0x158
|
|
mov r1, #0x20
|
|
bl func_ov36_0217ca34
|
|
ldr r0, [r5, #0x168]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
mov r1, #0
|
|
ldr r0, _0217e3a4 ; =data_027e0fc8
|
|
str r1, [r5, #0x138]
|
|
ldr r0, [r0]
|
|
bl func_ov00_020bd0a8
|
|
add r0, r5, #0x800
|
|
mov r1, #0
|
|
strh r1, [r0, #0x7c]
|
|
ldr r0, [r5, #0x878]
|
|
orr r0, r0, #0x40000
|
|
str r0, [r5, #0x878]
|
|
b _0217e030
|
|
_0217e028:
|
|
ldr r0, _0217e3b4 ; =0x00000266
|
|
str r0, [r5, #0x68]
|
|
_0217e030:
|
|
ldr r0, [r5, #0x878]
|
|
tst r0, #0x40000
|
|
addne sp, sp, #0x44
|
|
ldmneia sp!, {r3, r4, r5, r6, pc}
|
|
ldr r0, [r5, #0x138]
|
|
rsb r0, r0, #0x1e
|
|
mov r4, r0, lsl #0xc
|
|
cmp r4, #0x1000
|
|
ldr r0, _0217e3b8 ; =0x0000038e
|
|
ble _0217e070
|
|
ldr r2, [r5, #0x6f0]
|
|
mov r1, r4
|
|
sub r0, r0, r2
|
|
bl func_01ff98e0
|
|
ldr r1, [r5, #0x6f0]
|
|
add r0, r1, r0
|
|
_0217e070:
|
|
str r0, [r5, #0x6f0]
|
|
cmp r4, #0x1000
|
|
ldr r0, _0217e3bc ; =0x00000f42
|
|
ble _0217e098
|
|
ldr r2, [r5, #0x6f4]
|
|
mov r1, r4
|
|
sub r0, r0, r2
|
|
bl func_01ff98e0
|
|
ldr r1, [r5, #0x6f4]
|
|
add r0, r1, r0
|
|
_0217e098:
|
|
str r0, [r5, #0x6f4]
|
|
cmp r4, #0x1000
|
|
movle r0, #0x19000
|
|
ble _0217e0c0
|
|
ldr r0, [r5, #0x6fc]
|
|
mov r1, r4
|
|
rsb r0, r0, #0x19000
|
|
bl func_01ff98e0
|
|
ldr r1, [r5, #0x6fc]
|
|
add r0, r1, r0
|
|
_0217e0c0:
|
|
str r0, [r5, #0x6fc]
|
|
mov r0, r5
|
|
add r1, r5, #0x820
|
|
bl func_ov00_020c288c
|
|
cmp r0, #0x800
|
|
ldrlt r6, [r5, #0x68]
|
|
mov r3, #0x1000
|
|
add r0, sp, #0x38
|
|
mov r4, #0
|
|
movge r6, #0x1000
|
|
mov r2, r0
|
|
add r1, r5, #0x48
|
|
str r4, [sp, #0x38]
|
|
str r3, [sp, #0x3c]
|
|
str r3, [sp, #0x40]
|
|
bl func_01ff9bc4
|
|
add r1, sp, #0x38
|
|
mov r2, r6
|
|
add r0, r5, #0x820
|
|
bl func_0202b2e8
|
|
ldr r0, [r5, #0x820]
|
|
mov r1, r4
|
|
str r0, [sp, #0x20]
|
|
ldr r0, [r5, #0x824]
|
|
add r2, r5, #0x2e4
|
|
str r0, [sp, #0x24]
|
|
ldr r3, [r5, #0x828]
|
|
ldr r0, _0217e3c0 ; =data_027e0f64
|
|
str r3, [sp, #0x28]
|
|
str r1, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r0, [r0]
|
|
add r3, r2, #0x400
|
|
ldr r0, [r0, #4]
|
|
add r1, sp, #0x20
|
|
mov r2, #2
|
|
bl func_ov00_02089318
|
|
ldr r0, [r5, #0x68]
|
|
ldr r1, _0217e3c4 ; =0x00000112
|
|
bl func_01ff98e0
|
|
ldr r1, [r5, #0x168]
|
|
add sp, sp, #0x44
|
|
str r0, [r1, #0x10]
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217e170:
|
|
tst r1, #0x80000
|
|
bne _0217e260
|
|
ldr r1, [r5, #0x168]
|
|
add r0, r5, #0x158
|
|
ldr r4, [r1, #0x14]
|
|
bl func_ov36_0217cc84
|
|
cmp r0, #0
|
|
beq _0217e1c8
|
|
ldr r0, [r5, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
beq _0217e1c8
|
|
add r0, r5, #0x158
|
|
mov r1, #1
|
|
bl func_ov36_0217c958
|
|
mov r0, #0
|
|
str r0, [r5, #0x138]
|
|
ldr r0, [r5, #0x878]
|
|
orr r0, r0, #0x80000
|
|
str r0, [r5, #0x878]
|
|
b _0217e20c
|
|
_0217e1c8:
|
|
cmp r4, #0x2a000
|
|
bne _0217e20c
|
|
ldr r0, _0217e3c8 ; =data_027e0ffc
|
|
ldr r1, _0217e3cc ; =0x000002c2
|
|
add r2, r5, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
ldr r0, _0217e3c0 ; =data_027e0f64
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02088000
|
|
mov r0, r5
|
|
add r1, r5, #0x800
|
|
mov r2, #5
|
|
strh r2, [r1, #0x7c]
|
|
bl func_ov36_02185eb8
|
|
_0217e20c:
|
|
cmp r4, #0x2a000
|
|
addle sp, sp, #0x44
|
|
ldmleia sp!, {r3, r4, r5, r6, pc}
|
|
cmp r4, #0x77000
|
|
addge sp, sp, #0x44
|
|
ldmgeia sp!, {r3, r4, r5, r6, pc}
|
|
add r0, r5, #0x800
|
|
ldrsh r0, [r0, #0x7c]
|
|
cmp r0, #0
|
|
addne sp, sp, #0x44
|
|
ldmneia sp!, {r3, r4, r5, r6, pc}
|
|
ldr r0, _0217e3c0 ; =data_027e0f64
|
|
mov r1, #0xd
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02088000
|
|
add r0, r5, #0x800
|
|
mov r1, #5
|
|
strh r1, [r0, #0x7c]
|
|
add sp, sp, #0x44
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217e260:
|
|
mov r0, #0x10000
|
|
ldr r1, [r5, #0x7cc]
|
|
rsb r0, r0, #0
|
|
and r0, r1, r0
|
|
cmp r0, #0x1000000
|
|
addne sp, sp, #0x44
|
|
ldmneia sp!, {r3, r4, r5, r6, pc}
|
|
ldr r0, _0217e3d0 ; =data_027e0f74
|
|
ldr r1, [r5, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097b9c
|
|
cmp r0, #0
|
|
beq _0217e2a4
|
|
ldr r0, _0217e3d0 ; =data_027e0f74
|
|
ldr r1, [r5, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097bcc
|
|
_0217e2a4:
|
|
mvn r1, #0
|
|
ldr r0, _0217e3a4 ; =data_027e0fc8
|
|
str r1, [r5, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_020bc46c
|
|
cmp r0, #0
|
|
bne _0217e2dc
|
|
ldr r0, _0217e3a4 ; =data_027e0fc8
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
mov r2, r1
|
|
ldr r3, [r0]
|
|
ldr r3, [r3, #0x7c]
|
|
blx r3
|
|
_0217e2dc:
|
|
ldr r1, _0217e3d4 ; =data_027e0fe4
|
|
ldr r2, _0217e3d8 ; =0x504c444d
|
|
ldr r1, [r1]
|
|
add r0, sp, #0x18
|
|
bl func_ov00_020c3894
|
|
ldr r1, [sp, #0x18]
|
|
mvn r0, #0
|
|
cmp r1, r0
|
|
beq _0217e314
|
|
ldr r0, _0217e3d4 ; =data_027e0fe4
|
|
add r1, sp, #0x18
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c3674
|
|
str r0, [r5, #0x6b4]
|
|
_0217e314:
|
|
mvn r3, #0
|
|
add r2, sp, #0x10
|
|
mov r0, #0
|
|
mov r1, #1
|
|
str r0, [sp, #0x34]
|
|
str r3, [sp, #0x10]
|
|
str r3, [sp, #0x14]
|
|
str r2, [sp, #0x2c]
|
|
str r1, [sp, #0x30]
|
|
ldrh r1, [r5, #0x24]
|
|
add r0, sp, #8
|
|
bl func_ov36_0217c14c
|
|
ldr r0, _0217e3d4 ; =data_027e0fe4
|
|
add r1, sp, #8
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x2c
|
|
bl func_ov00_020c37ec
|
|
cmp r0, #0
|
|
beq _0217e37c
|
|
ldr r0, _0217e3d4 ; =data_027e0fe4
|
|
ldr r1, [sp, #0x2c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c3674
|
|
cmp r0, #0
|
|
movne r1, #0
|
|
strneb r1, [r0, #0x11a]
|
|
_0217e37c:
|
|
add r0, r5, #0x800
|
|
mov r1, #0x1e
|
|
ldr r2, _0217e3dc ; =0x0000199a
|
|
strh r1, [r0, #0x7e]
|
|
mov r0, r5
|
|
mov r1, #2
|
|
str r2, [r5, #0x98]
|
|
bl func_ov36_0217d6bc
|
|
add sp, sp, #0x44
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217decc
|
|
_0217e3a4: .word data_027e0fc8
|
|
_0217e3a8: .word 0xffffe99a
|
|
_0217e3ac: .word data_027e103c
|
|
_0217e3b0: .word 0x000c014f
|
|
_0217e3b4: .word 0x00000266
|
|
_0217e3b8: .word 0x0000038e
|
|
_0217e3bc: .word 0x00000f42
|
|
_0217e3c0: .word data_027e0f64
|
|
_0217e3c4: .word 0x00000112
|
|
_0217e3c8: .word data_027e0ffc
|
|
_0217e3cc: .word 0x000002c2
|
|
_0217e3d0: .word data_027e0f74
|
|
_0217e3d4: .word data_027e0fe4
|
|
_0217e3d8: .word 0x504c444d
|
|
_0217e3dc: .word 0x0000199a
|
|
|
|
.global func_ov36_0217e3e0
|
|
arm_func_start func_ov36_0217e3e0
|
|
func_ov36_0217e3e0: ; 0x0217e3e0
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov r4, r0
|
|
ldr r1, [r4, #0x878]
|
|
add r0, r4, #0x158
|
|
orr r2, r1, #4
|
|
mov r1, #0
|
|
str r2, [r4, #0x878]
|
|
bl func_ov36_0217ca34
|
|
ldr r1, _0217e4e4 ; =data_ov36_02186c88
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
ldr r1, _0217e4e8 ; =data_027e0764
|
|
mov r0, #0
|
|
ldr r3, [r1]
|
|
ldmib r1, {r2, r5}
|
|
umull r7, r6, r5, r3
|
|
mla r6, r5, r2, r6
|
|
ldr r5, [r1, #0xc]
|
|
mov r2, r0, lsl #0x4
|
|
ldr r0, [r1, #0x10]
|
|
mla r6, r5, r3, r6
|
|
adds r7, r0, r7
|
|
ldr ip, [r1, #0x14]
|
|
add r0, r4, #0x800
|
|
adc r3, ip, r6
|
|
str r7, [r1]
|
|
orr r2, r2, r3, lsr #28
|
|
str r3, [r1, #4]
|
|
add r1, r2, #0xf
|
|
strh r1, [r0, #0x7c]
|
|
ldrsh r1, [r4, #0x78]
|
|
mov r0, r4
|
|
mov r2, #0x2000
|
|
bl func_ov36_02183070
|
|
ldrh r0, [r4, #0x78]
|
|
ldr r1, _0217e4ec ; =data_02050f54
|
|
mov r2, #0
|
|
mov r0, r0, asr #0x4
|
|
mov r3, r0, lsl #0x1
|
|
mov r0, r3, lsl #0x1
|
|
ldrsh lr, [r1, r0]
|
|
add r0, r3, #1
|
|
mov r0, r0, lsl #0x1
|
|
ldrsh ip, [r1, r0]
|
|
ldr r1, _0217e4f0 ; =0x00000112
|
|
mov r5, lr, asr #0x1f
|
|
umull r7, r6, lr, r1
|
|
mla r6, lr, r2, r6
|
|
mla r6, r5, r1, r6
|
|
adds r7, r7, #0x800
|
|
adc r5, r6, #0
|
|
mov r6, r7, lsr #0xc
|
|
orr r6, r6, r5, lsl #20
|
|
umull r5, lr, ip, r1
|
|
mla lr, ip, r2, lr
|
|
mov r3, ip, asr #0x1f
|
|
adds r2, r5, #0x800
|
|
mla lr, r3, r1, lr
|
|
adc r1, lr, #0
|
|
mov r2, r2, lsr #0xc
|
|
str r6, [r4, #0x60]
|
|
orr r2, r2, r1, lsl #20
|
|
mov r0, #1
|
|
str r2, [r4, #0x68]
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217e3e0
|
|
_0217e4e4: .word data_ov36_02186c88
|
|
_0217e4e8: .word data_027e0764
|
|
_0217e4ec: .word data_02050f54
|
|
_0217e4f0: .word 0x00000112
|
|
|
|
.global func_ov36_0217e4f4
|
|
arm_func_start func_ov36_0217e4f4
|
|
func_ov36_0217e4f4: ; 0x0217e4f4
|
|
stmdb sp!, {r3, r4, r5, r6, lr}
|
|
sub sp, sp, #4
|
|
add r1, sp, #0
|
|
mov r4, r0
|
|
bl func_ov36_02184f44
|
|
cmp r0, #0
|
|
beq _0217e524
|
|
cmp r0, #1
|
|
beq _0217e594
|
|
cmp r0, #2
|
|
beq _0217e59c
|
|
b _0217e5ac
|
|
_0217e524:
|
|
add r0, r4, #0x800
|
|
ldrsh r1, [r0, #0x7c]
|
|
cmp r1, #0
|
|
bne _0217e58c
|
|
ldr r1, _0217e6ac ; =data_027e0764
|
|
mov r2, #0
|
|
ldr r5, [r1]
|
|
ldmib r1, {r3, r6}
|
|
umull lr, ip, r6, r5
|
|
mla ip, r6, r3, ip
|
|
ldr r3, [r1, #0xc]
|
|
ldr r6, [r1, #0x10]
|
|
mla ip, r3, r5, ip
|
|
ldr r3, [r1, #0x14]
|
|
adds r5, r6, lr
|
|
adc r3, r3, ip
|
|
mov r2, r2, lsl #0x4
|
|
str r5, [r1]
|
|
orr r2, r2, r3, lsr #28
|
|
str r3, [r1, #4]
|
|
add r1, r2, #0xf
|
|
strh r1, [r0, #0x7c]
|
|
ldrsh r1, [r4, #0x78]
|
|
mov r0, r4
|
|
mov r2, #0x2000
|
|
bl func_ov36_02183070
|
|
_0217e58c:
|
|
mov r5, #0x258
|
|
b _0217e5ac
|
|
_0217e594:
|
|
mov r5, #0x384
|
|
b _0217e5ac
|
|
_0217e59c:
|
|
ldrb r0, [sp]
|
|
add sp, sp, #4
|
|
strb r0, [r4, #0x8ab]
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217e5ac:
|
|
add r0, r4, #0x800
|
|
ldrsh r1, [r0, #0x8e]
|
|
mov r2, r5
|
|
add r0, r4, #0x78
|
|
bl func_0202b154
|
|
ldrh r1, [r4, #0x78]
|
|
ldr r2, _0217e6b0 ; =data_02050f54
|
|
ldr r0, _0217e6b4 ; =0x00000112
|
|
mov r1, r1, asr #0x4
|
|
mov r3, r1, lsl #0x1
|
|
mov r1, r3, lsl #0x1
|
|
ldrsh lr, [r2, r1]
|
|
add r1, r3, #1
|
|
mov r1, r1, lsl #0x1
|
|
ldrsh r2, [r2, r1]
|
|
umull r6, r5, lr, r0
|
|
mov r1, #0
|
|
mla r5, lr, r1, r5
|
|
umull ip, r3, r2, r0
|
|
mla r3, r2, r1, r3
|
|
mov lr, lr, asr #0x1f
|
|
mov r1, r2, asr #0x1f
|
|
adds r6, r6, #0x800
|
|
mla r5, lr, r0, r5
|
|
adc r5, r5, #0
|
|
mov r6, r6, lsr #0xc
|
|
orr r6, r6, r5, lsl #20
|
|
mla r3, r1, r0, r3
|
|
adds ip, ip, #0x800
|
|
adc r0, r3, #0
|
|
mov r1, ip, lsr #0xc
|
|
str r6, [r4, #0x60]
|
|
orr r1, r1, r0, lsl #20
|
|
str r1, [r4, #0x68]
|
|
ldrb r0, [r4, #0x110]
|
|
cmp r0, #0
|
|
ldreqb r0, [r4, #0x112]
|
|
cmpeq r0, #0
|
|
ldreqb r0, [r4, #0x113]
|
|
cmpeq r0, #0
|
|
bne _0217e668
|
|
ldrb r1, [r4, #0x8ab]
|
|
cmp r1, #0
|
|
beq _0217e678
|
|
ldrb r0, [sp]
|
|
cmp r0, #0
|
|
bne _0217e678
|
|
_0217e668:
|
|
mov r0, r4
|
|
mov r1, #6
|
|
bl func_ov36_0217d6bc
|
|
b _0217e694
|
|
_0217e678:
|
|
cmp r1, #0
|
|
bne _0217e694
|
|
mov r0, r4
|
|
add r1, r4, #0x14
|
|
bl func_ov00_020c2938
|
|
add r1, r4, #0x800
|
|
strh r0, [r1, #0x8e]
|
|
_0217e694:
|
|
ldrb r1, [sp]
|
|
mov r0, r4
|
|
strb r1, [r4, #0x8ab]
|
|
bl func_ov36_02183204
|
|
add sp, sp, #4
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217e4f4
|
|
_0217e6ac: .word data_027e0764
|
|
_0217e6b0: .word data_02050f54
|
|
_0217e6b4: .word 0x00000112
|
|
|
|
.global func_ov36_0217e6b8
|
|
arm_func_start func_ov36_0217e6b8
|
|
func_ov36_0217e6b8: ; 0x0217e6b8
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldrb r0, [r4, #0x8a7]
|
|
cmp r0, #5
|
|
blo _0217e6e0
|
|
mov r0, #0
|
|
strb r0, [r4, #0x8a7]
|
|
ldr r0, [r4, #0x878]
|
|
bic r0, r0, #0x80
|
|
str r0, [r4, #0x878]
|
|
_0217e6e0:
|
|
ldr r0, _0217e73c ; =data_027e0ffc
|
|
ldr r1, _0217e740 ; =0x000002c2
|
|
add r2, r4, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
ldr r1, [r4, #0x878]
|
|
add r0, r4, #0x158
|
|
orr r2, r1, #0x1000
|
|
mov r1, #0x18
|
|
str r2, [r4, #0x878]
|
|
bl func_ov36_0217ca34
|
|
ldr r1, _0217e744 ; =data_ov36_02186c8c
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
ldr r1, _0217e748 ; =data_027e0d0c
|
|
mov r0, #1
|
|
ldr r2, [r1]
|
|
str r2, [r4, #0x60]
|
|
ldr r2, [r1, #4]
|
|
str r2, [r4, #0x64]
|
|
ldr r1, [r1, #8]
|
|
str r1, [r4, #0x68]
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217e6b8
|
|
_0217e73c: .word data_027e0ffc
|
|
_0217e740: .word 0x000002c2
|
|
_0217e744: .word data_ov36_02186c8c
|
|
_0217e748: .word data_027e0d0c
|
|
|
|
.global func_ov36_0217e74c
|
|
arm_func_start func_ov36_0217e74c
|
|
func_ov36_0217e74c: ; 0x0217e74c
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov36_02185050
|
|
mov r1, r0
|
|
add r0, r4, #0x78
|
|
mov r2, #0x384
|
|
bl func_0202b154
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217cc84
|
|
cmp r0, #0
|
|
beq _0217e798
|
|
ldr r0, [r4, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
beq _0217e798
|
|
mov r0, r4
|
|
mov r1, #4
|
|
bl func_ov36_0217d6bc
|
|
_0217e798:
|
|
mov r0, r4
|
|
bl func_ov36_02183204
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov36_0217e74c
|
|
|
|
.global func_ov36_0217e7a4
|
|
arm_func_start func_ov36_0217e7a4
|
|
func_ov36_0217e7a4: ; 0x0217e7a4
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
mov r2, #4
|
|
strb r2, [r4, #0x125]
|
|
add r0, r4, #0x158
|
|
mov r1, #0
|
|
strb r2, [r4, #0x124]
|
|
bl func_ov36_0217c958
|
|
ldr r1, _0217e80c ; =data_ov36_02186c90
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
ldr r1, _0217e810 ; =data_027e0d0c
|
|
ldr r2, _0217e814 ; =0x00000b33
|
|
ldr r3, [r1]
|
|
mov r0, #1
|
|
str r3, [r4, #0x60]
|
|
ldr r3, [r1, #4]
|
|
str r3, [r4, #0x64]
|
|
ldr r1, [r1, #8]
|
|
str r1, [r4, #0x68]
|
|
str r2, [r4, #0x94]
|
|
ldr r1, [r4, #0x878]
|
|
bic r1, r1, #0x100
|
|
orr r1, r1, #0x1000
|
|
str r1, [r4, #0x878]
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217e7a4
|
|
_0217e80c: .word data_ov36_02186c90
|
|
_0217e810: .word data_027e0d0c
|
|
_0217e814: .word 0x00000b33
|
|
|
|
.global func_ov36_0217e818
|
|
arm_func_start func_ov36_0217e818
|
|
func_ov36_0217e818: ; 0x0217e818
|
|
stmdb sp!, {r3, r4, r5, r6, lr}
|
|
sub sp, sp, #0x3c
|
|
mov r6, r0
|
|
bl func_ov36_02185050
|
|
add r1, r6, #0x100
|
|
ldrsh r1, [r1, #0x20]
|
|
mov r5, r0
|
|
cmp r1, #3
|
|
moveq r4, #0
|
|
beq _0217e84c
|
|
cmp r1, #2
|
|
moveq r4, #0x1e
|
|
movne r4, #0x5a
|
|
_0217e84c:
|
|
ldr r0, [r6, #0x138]
|
|
cmp r0, r4
|
|
bge _0217e868
|
|
mov r1, r5
|
|
add r0, r6, #0x78
|
|
mov r2, #0x384
|
|
bl func_0202b154
|
|
_0217e868:
|
|
ldr r0, _0217eb34 ; =0x00000337
|
|
ldr r1, _0217eb38 ; =0x00000112
|
|
bl func_01ff98e0
|
|
ldr r1, [r6, #0x168]
|
|
str r0, [r1, #0x10]
|
|
ldrsh r0, [r6, #0x78]
|
|
sub r0, r0, r5
|
|
strh r0, [sp]
|
|
ldrsh r0, [sp]
|
|
cmp r0, #0
|
|
rsblt r0, r0, #0
|
|
cmp r0, #0x4000
|
|
bge _0217e978
|
|
mov r3, #0x2000
|
|
add r0, sp, #0x18
|
|
add r2, sp, #0
|
|
mov r1, r6
|
|
str r3, [r6, #0x88]
|
|
bl func_ov36_021851dc
|
|
ldr r2, [sp, #0x18]
|
|
ldr r1, [sp, #0x1c]
|
|
ldr r0, [sp, #0x20]
|
|
str r2, [sp, #0x30]
|
|
str r1, [sp, #0x34]
|
|
str r0, [sp, #0x38]
|
|
ldr r0, [r6, #0x878]
|
|
tst r0, #0x100
|
|
bne _0217e934
|
|
add r2, sp, #0x30
|
|
mov r0, r6
|
|
mov r1, #9
|
|
bl func_ov00_020c1e2c
|
|
cmp r0, #0
|
|
beq _0217e934
|
|
ldr r1, [r6, #0x878]
|
|
ldr r0, _0217eb3c ; =data_027e0fc8
|
|
orr r1, r1, #0x100
|
|
str r1, [r6, #0x878]
|
|
str r4, [r6, #0x138]
|
|
ldr r0, [r0]
|
|
bl func_ov00_020bc46c
|
|
cmp r0, #1
|
|
bne _0217e934
|
|
ldr r0, _0217eb3c ; =data_027e0fc8
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
bl func_ov00_020bb5f0
|
|
ldr r2, [r0]
|
|
mvn r1, #1
|
|
ldr r2, [r2]
|
|
blx r2
|
|
_0217e934:
|
|
add r0, sp, #4
|
|
mov r1, r6
|
|
bl func_ov00_020c23c4
|
|
ldr r1, [sp, #4]
|
|
mvn r0, #0
|
|
cmp r1, r0
|
|
beq _0217e970
|
|
ldr r0, _0217eb40 ; =data_027e0fe4
|
|
add r1, sp, #4
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c3674
|
|
ldr r1, [r0, #4]
|
|
ldr r0, _0217eb44 ; =0x504c444d
|
|
cmp r1, r0
|
|
streq r4, [r6, #0x138]
|
|
_0217e970:
|
|
ldr r0, _0217eb48 ; =0x0000219a
|
|
str r0, [r6, #0x88]
|
|
_0217e978:
|
|
ldr r1, [r6, #0x48]
|
|
ldr r0, _0217eb4c ; =data_027e0e60
|
|
str r1, [sp, #0xc]
|
|
ldr r1, [r6, #0x4c]
|
|
ldr r0, [r0]
|
|
str r1, [sp, #0x10]
|
|
ldr r1, [r6, #0x50]
|
|
add r2, sp, #0xc
|
|
str r1, [sp, #0x14]
|
|
ldrh r1, [r6, #0x22]
|
|
ldr r4, _0217eb34 ; =0x00000337
|
|
bl func_ov00_02083770
|
|
ldrh r2, [r6, #0x78]
|
|
ldr r5, _0217eb50 ; =data_02050f54
|
|
mov r1, #0x3800
|
|
mov r2, r2, asr #0x4
|
|
mov ip, r2, lsl #0x1
|
|
add r2, ip, #1
|
|
mov r3, r2, lsl #0x1
|
|
mov r2, ip, lsl #0x1
|
|
ldrsh r3, [r5, r3]
|
|
ldrsh r2, [r5, r2]
|
|
ldr r5, [r6, #0x50]
|
|
smulbb r3, r3, r1
|
|
smulbb r1, r2, r1
|
|
add r3, r3, #0x800
|
|
add lr, r5, r3, asr #12
|
|
ldr r2, [r6, #0x48]
|
|
ldr ip, [r6, #0x4c]
|
|
add r1, r1, #0x800
|
|
add r3, r2, r1, asr #12
|
|
ldr r1, _0217eb54 ; =data_027e0e58
|
|
mov r5, r0
|
|
ldr r0, [r1]
|
|
add r2, sp, #0x24
|
|
str r3, [sp, #0x24]
|
|
str ip, [sp, #0x28]
|
|
str lr, [sp, #0x2c]
|
|
add r1, r6, #0x6a0
|
|
bl func_ov00_0207c474
|
|
ldrsh r0, [r6, #0x78]
|
|
ldr r1, [r6, #0x6a0]
|
|
ldr r3, _0217eb50 ; =data_02050f54
|
|
add r0, r0, #0x8000
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, lsr #0x10
|
|
mov r0, r0, asr #0x4
|
|
mov ip, r0, lsl #0x1
|
|
add r0, ip, #1
|
|
mov r2, r0, lsl #0x1
|
|
mov r0, ip, lsl #0x1
|
|
cmp r1, #0
|
|
ldrsh r2, [r3, r2]
|
|
ldrsh r0, [r3, r0]
|
|
beq _0217ea64
|
|
strh r0, [r1, #0x50]
|
|
mov r0, #0
|
|
strh r0, [r1, #0x52]
|
|
strh r2, [r1, #0x54]
|
|
_0217ea64:
|
|
mov r0, r6
|
|
bl func_ov36_02185c84
|
|
ldrb r0, [r6, #0x110]
|
|
cmp r0, #0
|
|
ldreqb r0, [r6, #0x112]
|
|
cmpeq r0, #0
|
|
ldreqb r0, [r6, #0x113]
|
|
cmpeq r0, #0
|
|
beq _0217eacc
|
|
ldr r0, [r6, #0xc4]
|
|
ldr r1, [r6, #0xcc]
|
|
bl func_01ffa0f4
|
|
ldrsh r1, [r6, #0x78]
|
|
mov r0, r0, lsl #0x10
|
|
rsb r0, r1, r0, asr #16
|
|
mov r0, r0, lsl #0x10
|
|
movs r0, r0, asr #0x10
|
|
rsbmi r0, r0, #0
|
|
cmp r0, #0x4000
|
|
blt _0217eacc
|
|
add r0, r6, #0x6a0
|
|
bl func_ov00_020b7e6c
|
|
mov r0, r6
|
|
mov r1, #5
|
|
bl func_ov36_0217d6bc
|
|
mov r4, #0
|
|
_0217eacc:
|
|
strb r5, [r6, #0x8ab]
|
|
ldrh r1, [r6, #0x78]
|
|
ldr r3, _0217eb50 ; =data_02050f54
|
|
mov r0, r6
|
|
mov r1, r1, asr #0x4
|
|
mov r1, r1, lsl #0x1
|
|
mov r2, r1, lsl #0x1
|
|
add r1, r1, #1
|
|
mov r1, r1, lsl #0x1
|
|
ldrsh r2, [r3, r2]
|
|
ldrsh r1, [r3, r1]
|
|
smull r3, r5, r2, r4
|
|
adds ip, r3, #0x800
|
|
smull r3, r2, r1, r4
|
|
adc r1, r5, #0
|
|
adds r3, r3, #0x800
|
|
mov r4, ip, lsr #0xc
|
|
orr r4, r4, r1, lsl #20
|
|
adc r1, r2, #0
|
|
mov r2, r3, lsr #0xc
|
|
str r4, [r6, #0x60]
|
|
orr r2, r2, r1, lsl #20
|
|
str r2, [r6, #0x68]
|
|
bl func_ov36_02183204
|
|
add sp, sp, #0x3c
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217e818
|
|
_0217eb34: .word 0x00000337
|
|
_0217eb38: .word 0x00000112
|
|
_0217eb3c: .word data_027e0fc8
|
|
_0217eb40: .word data_027e0fe4
|
|
_0217eb44: .word 0x504c444d
|
|
_0217eb48: .word 0x0000219a
|
|
_0217eb4c: .word data_027e0e60
|
|
_0217eb50: .word data_02050f54
|
|
_0217eb54: .word data_027e0e58
|
|
|
|
.global func_ov36_0217eb58
|
|
arm_func_start func_ov36_0217eb58
|
|
func_ov36_0217eb58: ; 0x0217eb58
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
sub sp, sp, #0x18
|
|
mov r4, r0
|
|
ldrsh r0, [r4, #0x78]
|
|
ldr ip, _0217ecb8 ; =data_02050f54
|
|
ldr r3, _0217ecbc ; =0x000024cd
|
|
strh r0, [sp, #8]
|
|
ldrh r1, [sp, #8]
|
|
ldr lr, [r4, #0x4c]
|
|
ldr r0, [r4, #0x50]
|
|
mov r2, r1, asr #0x4
|
|
mov r6, r2, lsl #0x1
|
|
add r2, r6, #1
|
|
mov r5, r2, lsl #0x1
|
|
ldrsh r5, [ip, r5]
|
|
mov r2, r6, lsl #0x1
|
|
ldrsh ip, [ip, r2]
|
|
smulbb r5, r5, r3
|
|
smulbb r3, ip, r3
|
|
add r2, lr, #0x33
|
|
add r5, r5, #0x800
|
|
add r5, r0, r5, asr #12
|
|
ldr ip, [r4, #0x48]
|
|
add lr, r2, #0xb00
|
|
add r3, r3, #0x800
|
|
add r2, ip, r3, asr #12
|
|
add r1, r1, #0x8000
|
|
str r2, [sp, #0xc]
|
|
strh r1, [sp, #8]
|
|
add r0, sp, #8
|
|
str lr, [sp, #0x10]
|
|
str r5, [sp, #0x14]
|
|
str r0, [sp]
|
|
ldr r1, _0217ecc0 ; =func_ov36_0217bdb4
|
|
ldr r0, _0217ecc4 ; =data_027e0e58
|
|
str r1, [sp, #4]
|
|
ldr r0, [r0]
|
|
ldr r1, _0217ecc8 ; =0x00001009
|
|
add r2, sp, #0xc
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
add r0, sp, #8
|
|
str r0, [sp]
|
|
ldr r1, _0217ecc0 ; =func_ov36_0217bdb4
|
|
ldr r0, _0217ecc4 ; =data_027e0e58
|
|
str r1, [sp, #4]
|
|
ldr r0, [r0]
|
|
ldr r1, _0217eccc ; =0x0000100a
|
|
add r2, sp, #0xc
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
add r0, r4, #0x800
|
|
mov r2, #0
|
|
strh r2, [r0, #0xa0]
|
|
add r0, r4, #0x158
|
|
mov r1, #0x12
|
|
str r2, [r4, #0x94]
|
|
bl func_ov36_0217c958
|
|
ldr r1, _0217ecd0 ; =data_ov36_02186c94
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
ldr r2, _0217ecd4 ; =data_027e0d0c
|
|
ldr r0, _0217ecd8 ; =data_027e0f64
|
|
ldr r3, [r2]
|
|
mov r1, #5
|
|
str r3, [r4, #0x60]
|
|
ldr r3, [r2, #4]
|
|
str r3, [r4, #0x64]
|
|
ldr r2, [r2, #8]
|
|
str r2, [r4, #0x68]
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02088000
|
|
ldr r0, _0217ecdc ; =data_027e0ffc
|
|
ldr r1, _0217ece0 ; =0x000002ce
|
|
add r2, r4, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
ldr r0, _0217ece4 ; =data_027e1038
|
|
add r1, r4, #0x48
|
|
ldr r0, [r0]
|
|
bl func_ov00_020cef10
|
|
ldr r1, [r4, #0x878]
|
|
mov r0, #1
|
|
bic r1, r1, #0x100
|
|
str r1, [r4, #0x878]
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217eb58
|
|
_0217ecb8: .word data_02050f54
|
|
_0217ecbc: .word 0x000024cd
|
|
_0217ecc0: .word func_ov36_0217bdb4
|
|
_0217ecc4: .word data_027e0e58
|
|
_0217ecc8: .word 0x00001009
|
|
_0217eccc: .word 0x0000100a
|
|
_0217ecd0: .word data_ov36_02186c94
|
|
_0217ecd4: .word data_027e0d0c
|
|
_0217ecd8: .word data_027e0f64
|
|
_0217ecdc: .word data_027e0ffc
|
|
_0217ece0: .word 0x000002ce
|
|
_0217ece4: .word data_027e1038
|
|
|
|
.global func_ov36_0217ece8
|
|
arm_func_start func_ov36_0217ece8
|
|
func_ov36_0217ece8: ; 0x0217ece8
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldr r0, [r4, #0x138]
|
|
cmp r0, #0x19
|
|
bne _0217ed08
|
|
ldr r1, _0217ed4c ; =data_ov36_02186c98
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
_0217ed08:
|
|
ldr r0, [r4, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
beq _0217ed40
|
|
ldr r1, [r4, #0x878]
|
|
mov r0, r4
|
|
orr r2, r1, #0x200
|
|
mov r1, #6
|
|
str r2, [r4, #0x878]
|
|
bl func_ov36_0217d6bc
|
|
add r0, r4, #0x800
|
|
mov r1, #0
|
|
strh r1, [r0, #0x7e]
|
|
_0217ed40:
|
|
mov r0, r4
|
|
bl func_ov36_02183204
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217ece8
|
|
_0217ed4c: .word data_ov36_02186c98
|
|
|
|
.global func_ov36_0217ed50
|
|
arm_func_start func_ov36_0217ed50
|
|
func_ov36_0217ed50: ; 0x0217ed50
|
|
stmdb sp!, {r4, r5, r6, r7, lr}
|
|
sub sp, sp, #0xc
|
|
mov r4, r0
|
|
ldr r1, [r4, #0x878]
|
|
add r0, r4, #0x158
|
|
orr r1, r1, #4
|
|
str r1, [r4, #0x878]
|
|
mov r1, #0x16
|
|
bl func_ov36_0217ca34
|
|
ldr r2, [r4, #0x168]
|
|
mov r3, #0x1800
|
|
ldr r1, _0217ef04 ; =data_ov36_02186c9c
|
|
add r0, r4, #0x158
|
|
str r3, [r2, #0x10]
|
|
bl func_ov36_0217c7e8
|
|
ldr r0, _0217ef08 ; =data_027e0d0c
|
|
ldr r1, [r0]
|
|
str r1, [r4, #0x60]
|
|
ldr r1, [r0, #4]
|
|
str r1, [r4, #0x64]
|
|
ldr r0, [r0, #8]
|
|
str r0, [r4, #0x68]
|
|
ldrb r0, [r4, #0x110]
|
|
cmp r0, #0
|
|
ldreqb r0, [r4, #0x112]
|
|
cmpeq r0, #0
|
|
ldreqb r0, [r4, #0x113]
|
|
cmpeq r0, #0
|
|
beq _0217ede8
|
|
ldr r0, [r4, #0xc4]
|
|
ldr r1, [r4, #0xcc]
|
|
bl func_01ffa0f4
|
|
mov r1, r0, lsl #0x10
|
|
mov r0, r4
|
|
mov r1, r1, asr #0x10
|
|
mov r2, #0x2000
|
|
bl func_ov36_02183070
|
|
b _0217eef8
|
|
_0217ede8:
|
|
ldr r1, [r4, #0x48]
|
|
ldr r0, _0217ef0c ; =data_027e0e60
|
|
str r1, [sp]
|
|
ldr r1, [r4, #0x4c]
|
|
ldr r0, [r0]
|
|
str r1, [sp, #4]
|
|
ldr r1, [r4, #0x50]
|
|
add r2, sp, #0
|
|
str r1, [sp, #8]
|
|
ldrh r1, [r4, #0x22]
|
|
bl func_ov00_02083770
|
|
cmp r0, #0
|
|
moveq r0, #1
|
|
movne r0, #0
|
|
cmp r0, #0
|
|
beq _0217eee8
|
|
ldr r0, _0217ef0c ; =data_027e0e60
|
|
ldr r1, [r4, #0x54]
|
|
ldr r0, [r0]
|
|
bl func_ov00_020839d4
|
|
ldr r1, _0217ef0c ; =data_027e0e60
|
|
mov r6, r0
|
|
ldr r0, [r1]
|
|
ldr r1, [r4, #0x5c]
|
|
bl func_ov00_020839f8
|
|
ldr r1, _0217ef0c ; =data_027e0e60
|
|
mov r7, r0
|
|
ldr r0, [r1]
|
|
ldr r1, [r4, #0x48]
|
|
bl func_ov00_020839d4
|
|
ldr r1, _0217ef0c ; =data_027e0e60
|
|
mov r5, r0
|
|
ldr r0, [r1]
|
|
ldr r1, [r4, #0x50]
|
|
bl func_ov00_020839f8
|
|
cmp r6, r5
|
|
mov r2, #0
|
|
beq _0217ee8c
|
|
cmp r6, r5
|
|
sublt r2, r2, #0x4000
|
|
movge r2, #0x4000
|
|
_0217ee8c:
|
|
cmp r7, r0
|
|
beq _0217eec4
|
|
bge _0217eeb8
|
|
cmp r2, #0
|
|
moveq r2, #0x8000
|
|
rsbeq r2, r2, #0
|
|
beq _0217eec4
|
|
sub r0, r2, #0x8000
|
|
mov r0, r0, lsl #0xf
|
|
mov r2, r0, asr #0x10
|
|
b _0217eec4
|
|
_0217eeb8:
|
|
cmp r2, #0
|
|
moveq r2, #0
|
|
movne r2, r2, asr #0x1
|
|
_0217eec4:
|
|
ldr r1, [r4, #0x54]
|
|
add r0, r4, #0x800
|
|
str r1, [r4, #0x48]
|
|
ldr r1, [r4, #0x58]
|
|
str r1, [r4, #0x4c]
|
|
ldr r1, [r4, #0x5c]
|
|
str r1, [r4, #0x50]
|
|
strh r2, [r0, #0x8e]
|
|
b _0217eef8
|
|
_0217eee8:
|
|
mov r0, r4
|
|
mov r1, #0
|
|
mov r2, #0x8000
|
|
bl func_ov36_02183070
|
|
_0217eef8:
|
|
mov r0, #1
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217ed50
|
|
_0217ef04: .word data_ov36_02186c9c
|
|
_0217ef08: .word data_027e0d0c
|
|
_0217ef0c: .word data_027e0e60
|
|
|
|
.global func_ov36_0217ef10
|
|
arm_func_start func_ov36_0217ef10
|
|
func_ov36_0217ef10: ; 0x0217ef10
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
add r1, sp, #0
|
|
mov r5, r0
|
|
bl func_ov36_02184f44
|
|
cmp r0, #0
|
|
beq _0217ef3c
|
|
cmp r0, #1
|
|
beq _0217ef44
|
|
cmp r0, #2
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
b _0217ef48
|
|
_0217ef3c:
|
|
mov r4, #0x258
|
|
b _0217ef48
|
|
_0217ef44:
|
|
mov r4, #0x384
|
|
_0217ef48:
|
|
add r0, r5, #0x800
|
|
ldrsh r1, [r0, #0x8e]
|
|
mov r2, r4
|
|
add r0, r5, #0x78
|
|
bl func_0202b154
|
|
cmp r0, #0
|
|
beq _0217ef70
|
|
mov r0, r5
|
|
mov r1, #2
|
|
bl func_ov36_0217d6bc
|
|
_0217ef70:
|
|
mov r0, r5
|
|
bl func_ov36_02183204
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov36_0217ef10
|
|
|
|
.global func_ov36_0217ef7c
|
|
arm_func_start func_ov36_0217ef7c
|
|
func_ov36_0217ef7c: ; 0x0217ef7c
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldr r1, [r4, #0x878]
|
|
add r0, r4, #0x158
|
|
orr r1, r1, #4
|
|
str r1, [r4, #0x878]
|
|
mov r1, #0x16
|
|
bl func_ov36_0217ca34
|
|
ldr r2, [r4, #0x168]
|
|
mov r3, #0x2000
|
|
ldr r1, _0217efbc ; =data_ov36_02186ca0
|
|
add r0, r4, #0x158
|
|
str r3, [r2, #0x10]
|
|
bl func_ov36_0217c7e8
|
|
mov r0, #1
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217ef7c
|
|
_0217efbc: .word data_ov36_02186ca0
|
|
|
|
.global func_ov36_0217efc0
|
|
arm_func_start func_ov36_0217efc0
|
|
func_ov36_0217efc0: ; 0x0217efc0
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
ldr r1, _0217f0b4 ; =data_027e0fc8
|
|
mov r6, r0
|
|
ldr r0, [r1]
|
|
bl func_ov00_020bc46c
|
|
cmp r0, #1
|
|
mov r0, r6
|
|
bne _0217f0a0
|
|
bl func_ov00_020c2974
|
|
ldrsh r2, [r6, #0x78]
|
|
mov r4, r0
|
|
ldr r1, _0217f0b8 ; =0x00001555
|
|
sub r0, r4, r2
|
|
mov r0, r0, lsl #0x10
|
|
cmp r1, r0, asr #16
|
|
mov r5, r0, asr #0x10
|
|
addle r0, r6, #0x800
|
|
strleh r1, [r0, #0x90]
|
|
ble _0217f02c
|
|
rsb r0, r1, #0
|
|
cmp r5, r0
|
|
addgt r0, r6, #0x800
|
|
strgth r5, [r0, #0x90]
|
|
bgt _0217f02c
|
|
rsb r1, r1, #0
|
|
add r0, r6, #0x800
|
|
strh r1, [r0, #0x90]
|
|
_0217f02c:
|
|
ldr r0, [r6, #0x138]
|
|
cmp r0, #0x78
|
|
blt _0217f078
|
|
mov r0, r6
|
|
bl func_ov00_020c28ec
|
|
cmp r0, #0x5000
|
|
bge _0217f05c
|
|
ldr r0, _0217f0bc ; =0x00002aab
|
|
cmp r5, #0
|
|
rsblt r5, r5, #0
|
|
cmp r5, r0
|
|
ble _0217f078
|
|
_0217f05c:
|
|
mov r0, r6
|
|
add r2, r6, #0x800
|
|
mov r3, #0
|
|
mov r1, #8
|
|
strh r3, [r2, #0x90]
|
|
bl func_ov36_0217d6bc
|
|
b _0217f0a8
|
|
_0217f078:
|
|
mov r1, r4
|
|
add r0, r6, #0x78
|
|
mov r2, #0x384
|
|
bl func_0202b154
|
|
cmp r0, #0
|
|
beq _0217f0a8
|
|
mov r0, r6
|
|
mov r1, #2
|
|
bl func_ov36_0217d6bc
|
|
b _0217f0a8
|
|
_0217f0a0:
|
|
mov r1, #2
|
|
bl func_ov36_0217d6bc
|
|
_0217f0a8:
|
|
mov r0, r6
|
|
bl func_ov36_02183204
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217efc0
|
|
_0217f0b4: .word data_027e0fc8
|
|
_0217f0b8: .word 0x00001555
|
|
_0217f0bc: .word 0x00002aab
|
|
|
|
.global func_ov36_0217f0c0
|
|
arm_func_start func_ov36_0217f0c0
|
|
func_ov36_0217f0c0: ; 0x0217f0c0
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
add r0, r4, #0x158
|
|
mov r1, #0x17
|
|
bl func_ov36_0217ca34
|
|
ldr r1, _0217f104 ; =data_ov36_02186ca4
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
ldr r1, _0217f108 ; =data_027e0d0c
|
|
mov r0, #1
|
|
ldr r2, [r1]
|
|
str r2, [r4, #0x60]
|
|
ldr r2, [r1, #4]
|
|
str r2, [r4, #0x64]
|
|
ldr r1, [r1, #8]
|
|
str r1, [r4, #0x68]
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217f0c0
|
|
_0217f104: .word data_ov36_02186ca4
|
|
_0217f108: .word data_027e0d0c
|
|
|
|
.global func_ov36_0217f10c
|
|
arm_func_start func_ov36_0217f10c
|
|
func_ov36_0217f10c: ; 0x0217f10c
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #4
|
|
add r1, sp, #0
|
|
mov r4, r0
|
|
bl func_ov36_02184f44
|
|
cmp r0, #0
|
|
cmpne r0, #1
|
|
beq _0217f138
|
|
cmp r0, #2
|
|
addeq sp, sp, #4
|
|
ldmeqia sp!, {r3, r4, pc}
|
|
_0217f138:
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217cc84
|
|
cmp r0, #0
|
|
beq _0217f168
|
|
ldr r0, [r4, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
beq _0217f168
|
|
mov r0, r4
|
|
mov r1, #2
|
|
bl func_ov36_0217d6bc
|
|
_0217f168:
|
|
mov r0, r4
|
|
bl func_ov36_02183204
|
|
add sp, sp, #4
|
|
ldmia sp!, {r3, r4, pc}
|
|
arm_func_end func_ov36_0217f10c
|
|
|
|
.global func_ov36_0217f178
|
|
arm_func_start func_ov36_0217f178
|
|
func_ov36_0217f178: ; 0x0217f178
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldrb r0, [r4, #0x8a7]
|
|
cmp r0, #5
|
|
blo _0217f1a0
|
|
mov r0, #0
|
|
strb r0, [r4, #0x8a7]
|
|
ldr r0, [r4, #0x878]
|
|
bic r0, r0, #0x80
|
|
str r0, [r4, #0x878]
|
|
_0217f1a0:
|
|
ldr r1, [r4, #0x878]
|
|
add r0, r4, #0x158
|
|
orr r2, r1, #0x1000
|
|
mov r1, #0x13
|
|
str r2, [r4, #0x878]
|
|
bl func_ov36_0217ca34
|
|
ldr r1, _0217f20c ; =data_027e0d0c
|
|
mov r0, r4
|
|
ldr r2, [r1]
|
|
str r2, [r4, #0x60]
|
|
ldr r2, [r1, #4]
|
|
str r2, [r4, #0x64]
|
|
ldr r1, [r1, #8]
|
|
str r1, [r4, #0x68]
|
|
bl func_ov36_02185050
|
|
add r1, r4, #0x800
|
|
strh r0, [r1, #0x8e]
|
|
ldr r1, _0217f210 ; =data_ov36_02186ca8
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
ldr r0, _0217f214 ; =data_027e0ffc
|
|
add r2, r4, #0x48
|
|
ldr r1, _0217f218 ; =0x000002c3
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
mov r0, #1
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217f178
|
|
_0217f20c: .word data_027e0d0c
|
|
_0217f210: .word data_ov36_02186ca8
|
|
_0217f214: .word data_027e0ffc
|
|
_0217f218: .word 0x000002c3
|
|
|
|
.global func_ov36_0217f21c
|
|
arm_func_start func_ov36_0217f21c
|
|
func_ov36_0217f21c: ; 0x0217f21c
|
|
stmdb sp!, {r4, lr}
|
|
sub sp, sp, #0x48
|
|
mov r4, r0
|
|
ldr r1, [r4, #0x138]
|
|
cmp r1, #0x1e
|
|
bgt _0217f26c
|
|
ldr r1, [r4, #0x878]
|
|
tst r1, #0x100000
|
|
beq _0217f258
|
|
bl func_ov00_020c2974
|
|
mov r1, r0
|
|
add r0, r4, #0x78
|
|
mov r2, #0x4b0
|
|
bl func_0202b154
|
|
b _0217f26c
|
|
_0217f258:
|
|
bl func_ov36_02185050
|
|
mov r1, r0
|
|
add r0, r4, #0x78
|
|
mov r2, #0x4b0
|
|
bl func_0202b154
|
|
_0217f26c:
|
|
mov r0, r4
|
|
bl func_ov36_02183204
|
|
cmp r0, #0
|
|
addne sp, sp, #0x48
|
|
ldmneia sp!, {r4, pc}
|
|
ldr r0, [r4, #0x168]
|
|
ldr r0, [r0, #0x14]
|
|
cmp r0, #0x1a000
|
|
bgt _0217f3a4
|
|
addne sp, sp, #0x48
|
|
ldmneia sp!, {r4, pc}
|
|
ldrb r1, [r4, #0x8a7]
|
|
add r0, sp, #0x1c
|
|
add r1, r1, #1
|
|
strb r1, [r4, #0x8a7]
|
|
bl func_ov00_020c1500
|
|
mvn r1, #0
|
|
add r0, sp, #0x1c
|
|
str r1, [sp, #0x38]
|
|
str r1, [sp, #0x3c]
|
|
bl func_ov00_020c3348
|
|
ldr r1, [r4, #8]
|
|
add r0, sp, #4
|
|
str r1, [sp, #0x38]
|
|
ldr r2, [r4, #0xc]
|
|
add r1, r4, #0x178
|
|
str r2, [sp, #0x3c]
|
|
ldrsh r3, [r4, #0x78]
|
|
mov r2, #0
|
|
strh r3, [sp, #0x30]
|
|
strh r2, [sp, #0x1c]
|
|
bl func_ov36_0217c5a0
|
|
add r0, sp, #4
|
|
add r3, sp, #0x10
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
ldr r0, _0217f3f0 ; =data_027e0fe8
|
|
mov r2, r3
|
|
ldr r1, _0217f3f4 ; =0x50424652
|
|
ldr r0, [r0]
|
|
add r3, sp, #0x1c
|
|
bl func_ov00_020c4048
|
|
ldrsh r0, [r4, #0x78]
|
|
mov r2, #0
|
|
ldr r1, _0217f3f0 ; =data_027e0fe8
|
|
add r0, r0, #0x55
|
|
add r0, r0, #0x1500
|
|
strh r0, [sp, #0x30]
|
|
str r2, [sp]
|
|
ldr r0, [r1]
|
|
ldr r1, _0217f3f4 ; =0x50424652
|
|
add r2, sp, #0x10
|
|
add r3, sp, #0x1c
|
|
bl func_ov00_020c4048
|
|
ldrsh r2, [r4, #0x78]
|
|
ldr r0, _0217f3f8 ; =0xffffeaab
|
|
mov r1, #0
|
|
add r0, r2, r0
|
|
strh r0, [sp, #0x30]
|
|
str r1, [sp]
|
|
ldr r0, _0217f3f0 ; =data_027e0fe8
|
|
ldr r1, _0217f3f4 ; =0x50424652
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x10
|
|
add r3, sp, #0x1c
|
|
bl func_ov00_020c4048
|
|
ldr r1, [r4, #0x878]
|
|
ldr r0, _0217f3fc ; =data_027e0ffc
|
|
bic r1, r1, #0x1000
|
|
str r1, [r4, #0x878]
|
|
add r2, r4, #0x48
|
|
mov r1, #0x2c4
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
add sp, sp, #0x48
|
|
ldmia sp!, {r4, pc}
|
|
_0217f3a4:
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217cc84
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x48
|
|
ldmeqia sp!, {r4, pc}
|
|
ldr r0, [r4, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x48
|
|
ldmeqia sp!, {r4, pc}
|
|
mov r0, r4
|
|
add r2, r4, #0x800
|
|
mov r3, #0x1e
|
|
mov r1, #2
|
|
strh r3, [r2, #0x7e]
|
|
bl func_ov36_0217d6bc
|
|
add sp, sp, #0x48
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217f21c
|
|
_0217f3f0: .word data_027e0fe8
|
|
_0217f3f4: .word 0x50424652
|
|
_0217f3f8: .word 0xffffeaab
|
|
_0217f3fc: .word data_027e0ffc
|
|
|
|
.global func_ov36_0217f400
|
|
arm_func_start func_ov36_0217f400
|
|
func_ov36_0217f400: ; 0x0217f400
|
|
ldr r2, _0217f410 ; =data_ov36_02186d00
|
|
str r2, [r0]
|
|
str r1, [r0, #4]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217f400
|
|
_0217f410: .word data_ov36_02186d00
|
|
|
|
.global func_ov36_0217f414
|
|
arm_func_start func_ov36_0217f414
|
|
func_ov36_0217f414: ; 0x0217f414
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r4, r1
|
|
ldr r2, [r4, #4]
|
|
ldr r1, _0217f474 ; =0x424f4d42
|
|
mov r5, r0
|
|
cmp r2, r1
|
|
bne _0217f46c
|
|
ldr r0, [r5, #4]
|
|
add r1, r4, #0x48
|
|
bl func_ov36_0217f478
|
|
cmp r0, #0
|
|
beq _0217f46c
|
|
mov r0, r4
|
|
bl func_ov14_02122e7c
|
|
cmp r0, #0
|
|
beq _0217f46c
|
|
ldr r0, [r5, #4]
|
|
ldr r1, [r4, #0x4c]
|
|
ldr r0, [r0, #0x4c]
|
|
cmp r1, r0
|
|
movne r0, #1
|
|
ldmneia sp!, {r3, r4, r5, pc}
|
|
_0217f46c:
|
|
mov r0, #0
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217f414
|
|
_0217f474: .word 0x424f4d42
|
|
|
|
.global func_ov36_0217f478
|
|
arm_func_start func_ov36_0217f478
|
|
func_ov36_0217f478: ; 0x0217f478
|
|
stmdb sp!, {r3, lr}
|
|
str r1, [sp]
|
|
ldrsh r1, [r0, #0x78]
|
|
ldr r3, _0217f498 ; =0x00001770
|
|
add r0, r0, #0x48
|
|
mov r2, #0x5000
|
|
bl func_ov00_020c54a0
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217f478
|
|
_0217f498: .word 0x00001770
|
|
|
|
.global func_ov36_0217f49c
|
|
arm_func_start func_ov36_0217f49c
|
|
func_ov36_0217f49c: ; 0x0217f49c
|
|
stmdb sp!, {r4, lr}
|
|
ldr r2, _0217f4f0 ; =data_027e0d0c
|
|
mov r4, r0
|
|
ldr r1, [r2]
|
|
add r0, r4, #0x158
|
|
str r1, [r4, #0x60]
|
|
ldr r3, [r2, #4]
|
|
mov r1, #0x1e
|
|
str r3, [r4, #0x64]
|
|
ldr r2, [r2, #8]
|
|
str r2, [r4, #0x68]
|
|
bl func_ov36_0217ca34
|
|
mov r2, #0
|
|
str r2, [r4, #0x6bc]
|
|
add r0, r4, #0x800
|
|
mov r1, #0xb4
|
|
strh r1, [r0, #0xa2]
|
|
str r2, [r4, #0x874]
|
|
strb r2, [r4, #0x8a7]
|
|
mov r0, #1
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217f49c
|
|
_0217f4f0: .word data_027e0d0c
|
|
|
|
.global func_ov36_0217f4f4
|
|
arm_func_start func_ov36_0217f4f4
|
|
func_ov36_0217f4f4: ; 0x0217f4f4
|
|
stmdb sp!, {r4, r5, r6, r7, lr}
|
|
sub sp, sp, #0x7c
|
|
mov r5, r0
|
|
bl func_ov00_020c2974
|
|
mov r1, r0
|
|
add r0, r5, #0x78
|
|
mov r2, #0x3e8
|
|
bl func_0202b154
|
|
ldrb r0, [r5, #0x560]
|
|
cmp r0, #0
|
|
beq _0217f608
|
|
mvn r6, #0
|
|
add r4, sp, #0xc
|
|
mov r3, #1
|
|
mov r2, #0
|
|
add r0, sp, #4
|
|
mov r1, r5
|
|
str r6, [sp, #0xc]
|
|
str r6, [sp, #0x10]
|
|
str r4, [sp, #0x70]
|
|
str r3, [sp, #0x74]
|
|
str r2, [sp, #0x78]
|
|
bl func_ov36_0217f400
|
|
ldr r0, _0217f96c ; =data_027e0fe4
|
|
add r1, sp, #4
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x70
|
|
bl func_ov00_020c37ec
|
|
ldr r1, [sp, #0xc]
|
|
mov r0, r6
|
|
cmp r1, r0
|
|
beq _0217f608
|
|
ldr r0, _0217f96c ; =data_027e0fe4
|
|
mov r1, r4
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c3674
|
|
str r0, [r5, #0x6bc]
|
|
ldrb r0, [r5, #0xa4]
|
|
cmp r0, #0
|
|
ldreqb r0, [r5, #0xa5]
|
|
cmpeq r0, #0
|
|
beq _0217f5c4
|
|
add r0, sp, #0x20
|
|
add r1, r5, #0x178
|
|
bl func_ov36_0217c5a0
|
|
ldr r2, [sp, #0x20]
|
|
ldr r1, [sp, #0x24]
|
|
ldr r0, [sp, #0x28]
|
|
str r2, [sp, #0x64]
|
|
str r1, [sp, #0x68]
|
|
str r0, [sp, #0x6c]
|
|
b _0217f5e8
|
|
_0217f5c4:
|
|
ldr r0, [r5, #0x48]
|
|
str r0, [sp, #0x64]
|
|
ldr r0, [r5, #0x4c]
|
|
str r0, [sp, #0x68]
|
|
add r0, r0, #0x33
|
|
ldr r1, [r5, #0x50]
|
|
add r0, r0, #0xb00
|
|
str r1, [sp, #0x6c]
|
|
str r0, [sp, #0x68]
|
|
_0217f5e8:
|
|
ldr r0, [r5, #0x6bc]
|
|
add r1, sp, #0x64
|
|
bl func_ov14_02122e48
|
|
mov r0, r5
|
|
mov r1, #0xb
|
|
bl func_ov36_0217d6bc
|
|
add sp, sp, #0x7c
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
_0217f608:
|
|
ldr r0, [r5, #0x168]
|
|
mov r1, #0x66000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
beq _0217f650
|
|
ldr r0, _0217f970 ; =data_027e0f64
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02088000
|
|
ldr r0, _0217f974 ; =data_027e0ffc
|
|
ldr r1, _0217f978 ; =0x000002cd
|
|
add r2, r5, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
mov r0, r5
|
|
bl func_ov36_02185eb8
|
|
_0217f650:
|
|
ldr r0, [r5, #0x168]
|
|
ldr r4, [r0, #0x14]
|
|
cmp r4, #0xc000
|
|
blt _0217f710
|
|
cmp r4, #0x10000
|
|
bgt _0217f710
|
|
rsb r1, r4, #0x10000
|
|
cmp r1, #0x1000
|
|
movle r0, #0x1000
|
|
ble _0217f68c
|
|
ldr r0, [r5, #0x868]
|
|
rsb r0, r0, #0x1000
|
|
bl func_01ff98e0
|
|
ldr r1, [r5, #0x868]
|
|
add r0, r1, r0
|
|
_0217f68c:
|
|
str r0, [r5, #0x868]
|
|
ldrh r1, [r5, #0x78]
|
|
ldr r2, _0217f97c ; =data_02050f54
|
|
ldr r0, _0217f980 ; =0xfffffccd
|
|
mov r1, r1, asr #0x4
|
|
mov r3, r1, lsl #0x1
|
|
mov r1, r3, lsl #0x1
|
|
ldrsh r7, [r2, r1]
|
|
add r1, r3, #1
|
|
mov r1, r1, lsl #0x1
|
|
ldrsh r2, [r2, r1]
|
|
umull lr, ip, r7, r0
|
|
mvn r1, #0
|
|
mla ip, r7, r1, ip
|
|
umull r6, r3, r2, r0
|
|
mla r3, r2, r1, r3
|
|
mov r1, r2, asr #0x1f
|
|
mov r7, r7, asr #0x1f
|
|
mla ip, r7, r0, ip
|
|
adds lr, lr, #0x800
|
|
adc r7, ip, #0
|
|
mov ip, lr, lsr #0xc
|
|
orr ip, ip, r7, lsl #20
|
|
mla r3, r1, r0, r3
|
|
adds r6, r6, #0x800
|
|
str ip, [r5, #0x60]
|
|
mov r2, #0
|
|
adc r0, r3, #0
|
|
mov r1, r6, lsr #0xc
|
|
str r2, [r5, #0x64]
|
|
orr r1, r1, r0, lsl #20
|
|
str r1, [r5, #0x68]
|
|
b _0217f7d4
|
|
_0217f710:
|
|
cmp r4, #0x61000
|
|
blt _0217f7c4
|
|
cmp r4, #0x66000
|
|
bgt _0217f7c4
|
|
rsb r1, r4, #0x66000
|
|
cmp r1, #0x1000
|
|
movle r0, #0
|
|
ble _0217f744
|
|
ldr r0, [r5, #0x868]
|
|
rsb r0, r0, #0
|
|
bl func_01ff98e0
|
|
ldr r1, [r5, #0x868]
|
|
add r0, r1, r0
|
|
_0217f744:
|
|
str r0, [r5, #0x868]
|
|
ldrh r1, [r5, #0x78]
|
|
ldr r2, _0217f97c ; =data_02050f54
|
|
ldr r0, _0217f984 ; =0x0000028f
|
|
mov r1, r1, asr #0x4
|
|
mov r3, r1, lsl #0x1
|
|
mov r1, r3, lsl #0x1
|
|
ldrsh lr, [r2, r1]
|
|
add r1, r3, #1
|
|
mov r1, r1, lsl #0x1
|
|
ldrsh r1, [r2, r1]
|
|
umull r7, r6, lr, r0
|
|
mov ip, #0
|
|
mla r6, lr, ip, r6
|
|
umull r3, r2, r1, r0
|
|
mla r2, r1, ip, r2
|
|
mov lr, lr, asr #0x1f
|
|
mov r1, r1, asr #0x1f
|
|
adds r7, r7, #0x800
|
|
mla r6, lr, r0, r6
|
|
adc r6, r6, #0
|
|
mov r7, r7, lsr #0xc
|
|
orr r7, r7, r6, lsl #20
|
|
str r7, [r5, #0x60]
|
|
mla r2, r1, r0, r2
|
|
adds r3, r3, #0x800
|
|
adc r0, r2, #0
|
|
mov r1, r3, lsr #0xc
|
|
str ip, [r5, #0x64]
|
|
orr r1, r1, r0, lsl #20
|
|
str r1, [r5, #0x68]
|
|
b _0217f7d4
|
|
_0217f7c4:
|
|
mov r0, #0
|
|
str r0, [r5, #0x60]
|
|
str r0, [r5, #0x64]
|
|
str r0, [r5, #0x68]
|
|
_0217f7d4:
|
|
cmp r4, #0x70000
|
|
blt _0217f940
|
|
bne _0217f7fc
|
|
mov r0, r5
|
|
add r1, r5, #0x800
|
|
mov r2, #0
|
|
strh r2, [r1, #0x90]
|
|
bl func_ov00_020c2974
|
|
add r1, r5, #0x800
|
|
strh r0, [r1, #0x8e]
|
|
_0217f7fc:
|
|
mov r0, r5
|
|
bl func_ov00_020c2974
|
|
mov r1, r0
|
|
add r0, r5, #0x78
|
|
mov r2, #0x190
|
|
bl func_0202b154
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
ldr r3, [r5, #8]
|
|
ldr r0, _0217f974 ; =data_027e0ffc
|
|
ldr r1, _0217f988 ; =0x000002c5
|
|
add r2, r5, #0x48
|
|
bl func_ov00_020cec60
|
|
mov r0, #0x30000
|
|
mov r1, #0xb4000
|
|
bl func_01ff98e0
|
|
ldr r2, [r5, #0x874]
|
|
ldr r1, _0217f97c ; =data_02050f54
|
|
mul r0, r2, r0
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, lsr #0x10
|
|
mov r0, r0, asr #0x4
|
|
mov r0, r0, lsl #0x2
|
|
ldrsh r3, [r1, r0]
|
|
ldr r0, _0217f98c ; =0x009c4000
|
|
add r1, r2, #1
|
|
str r1, [r5, #0x874]
|
|
umull r1, r4, r3, r0
|
|
adds r1, r1, #0x800
|
|
mov ip, r1, lsr #0xc
|
|
mov r2, r3, asr #0x1f
|
|
mov r1, #0
|
|
mla r4, r3, r1, r4
|
|
mla r4, r2, r0, r4
|
|
adc r0, r4, #0
|
|
orr ip, ip, r0, lsl #20
|
|
mov r0, ip, lsl #0x4
|
|
mov r4, r0, asr #0x10
|
|
ldr r0, [r5, #0x878]
|
|
add r1, r5, #0x800
|
|
orr r0, r0, #4
|
|
str r0, [r5, #0x878]
|
|
strh r4, [r1, #0x90]
|
|
add r0, r5, #0x200
|
|
strh r4, [r0, #0x64]
|
|
ldrsh r0, [r1, #0x7c]
|
|
cmp r0, #0
|
|
bne _0217f940
|
|
mov r2, #6
|
|
add r0, sp, #0x38
|
|
strh r2, [r1, #0x7c]
|
|
bl func_ov00_020c1500
|
|
mvn r1, #0
|
|
add r0, sp, #0x38
|
|
str r1, [sp, #0x54]
|
|
str r1, [sp, #0x58]
|
|
bl func_ov00_020c3348
|
|
ldr r1, [r5, #8]
|
|
add r0, sp, #0x14
|
|
str r1, [sp, #0x54]
|
|
ldr r2, [r5, #0xc]
|
|
add r1, r5, #0x178
|
|
str r2, [sp, #0x58]
|
|
ldrsh r3, [r5, #0x78]
|
|
mov r2, #1
|
|
add r3, r3, r4
|
|
strh r3, [sp, #0x4c]
|
|
strh r2, [sp, #0x38]
|
|
bl func_ov36_0217c5a0
|
|
add r0, sp, #0x14
|
|
add r3, sp, #0x2c
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
ldr r0, _0217f990 ; =data_027e0fe8
|
|
mov r2, r3
|
|
ldr r1, _0217f994 ; =0x50424652
|
|
ldr r0, [r0]
|
|
add r3, sp, #0x38
|
|
bl func_ov00_020c4048
|
|
_0217f940:
|
|
ldr r0, [r5, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x7c
|
|
ldmeqia sp!, {r4, r5, r6, r7, pc}
|
|
mov r0, r5
|
|
mov r1, #0xc
|
|
bl func_ov36_0217d6bc
|
|
add sp, sp, #0x7c
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217f4f4
|
|
_0217f96c: .word data_027e0fe4
|
|
_0217f970: .word data_027e0f64
|
|
_0217f974: .word data_027e0ffc
|
|
_0217f978: .word 0x000002cd
|
|
_0217f97c: .word data_02050f54
|
|
_0217f980: .word 0xfffffccd
|
|
_0217f984: .word 0x0000028f
|
|
_0217f988: .word 0x000002c5
|
|
_0217f98c: .word 0x009c4000
|
|
_0217f990: .word data_027e0fe8
|
|
_0217f994: .word 0x50424652
|
|
|
|
.global func_ov36_0217f998
|
|
arm_func_start func_ov36_0217f998
|
|
func_ov36_0217f998: ; 0x0217f998
|
|
stmdb sp!, {r4, lr}
|
|
ldr r2, _0217f9e8 ; =data_027e0d0c
|
|
mov r4, r0
|
|
ldr r1, [r2]
|
|
add r0, r4, #0x158
|
|
str r1, [r4, #0x60]
|
|
ldr r3, [r2, #4]
|
|
mov r1, #0x1d
|
|
str r3, [r4, #0x64]
|
|
ldr r2, [r2, #8]
|
|
str r2, [r4, #0x68]
|
|
bl func_ov36_0217ca34
|
|
ldr r1, _0217f9ec ; =data_ov36_02186cac
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
ldr r1, [r4, #0x878]
|
|
mov r0, #1
|
|
bic r1, r1, #0x40
|
|
str r1, [r4, #0x878]
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217f998
|
|
_0217f9e8: .word data_027e0d0c
|
|
_0217f9ec: .word data_ov36_02186cac
|
|
|
|
.global func_ov36_0217f9f0
|
|
arm_func_start func_ov36_0217f9f0
|
|
func_ov36_0217f9f0: ; 0x0217f9f0
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
sub sp, sp, #0x38
|
|
mov r5, r0
|
|
ldr r0, [r5, #0x6bc]
|
|
cmp r0, #0
|
|
beq _0217fb90
|
|
ldrb r0, [r5, #0xa4]
|
|
cmp r0, #0
|
|
ldreqb r0, [r5, #0xa5]
|
|
cmpeq r0, #0
|
|
beq _0217fa44
|
|
add r0, sp, #8
|
|
add r1, r5, #0x178
|
|
bl func_ov36_0217c5a0
|
|
ldr r2, [sp, #8]
|
|
ldr r1, [sp, #0xc]
|
|
ldr r0, [sp, #0x10]
|
|
str r2, [sp, #0x2c]
|
|
str r1, [sp, #0x30]
|
|
str r0, [sp, #0x34]
|
|
b _0217fa68
|
|
_0217fa44:
|
|
ldr r0, [r5, #0x48]
|
|
str r0, [sp, #0x2c]
|
|
ldr r0, [r5, #0x4c]
|
|
str r0, [sp, #0x30]
|
|
add r0, r0, #0x33
|
|
ldr r1, [r5, #0x50]
|
|
add r0, r0, #0xb00
|
|
str r1, [sp, #0x34]
|
|
str r0, [sp, #0x30]
|
|
_0217fa68:
|
|
ldr r0, [r5, #0x6bc]
|
|
add r1, sp, #0x2c
|
|
bl func_ov14_02122e48
|
|
ldr r0, [r5, #0x168]
|
|
ldr r0, [r0, #0x14]
|
|
cmp r0, #0x37000
|
|
blt _0217fb90
|
|
ldr r0, _0217fdb8 ; =data_027e0f64
|
|
mov r1, #2
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02088000
|
|
ldr r0, [r5, #0x6bc]
|
|
mov r3, #0
|
|
strb r3, [r0, #0x118]
|
|
add r0, r5, #0x48
|
|
add ip, sp, #0x20
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia ip, {r0, r1, r2}
|
|
ldr r1, [sp, #0x24]
|
|
ldr r0, _0217fdbc ; =data_027e0ffc
|
|
add r4, r1, #0x2800
|
|
ldr r1, _0217fdc0 ; =0x000001ad
|
|
mov r2, ip
|
|
str r4, [sp, #0x24]
|
|
bl func_ov00_020ceacc
|
|
ldr r0, _0217fdc4 ; =data_027e1038
|
|
add r1, sp, #0x20
|
|
ldr r0, [r0]
|
|
bl func_ov00_020cef10
|
|
ldr r0, _0217fdc8 ; =data_027e0e58
|
|
mov r2, #0
|
|
ldr r4, [r0]
|
|
ldr r1, _0217fdcc ; =0x00000203
|
|
str r2, [sp]
|
|
str r2, [sp, #4]
|
|
mov r0, r4
|
|
add r2, sp, #0x20
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
mov r0, r4
|
|
mov r1, #0x204
|
|
add r2, sp, #0x20
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r1, _0217fdd0 ; =0x00000205
|
|
mov r0, r4
|
|
add r2, sp, #0x20
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r1, _0217fdd4 ; =0x00000206
|
|
mov r0, r4
|
|
add r2, sp, #0x20
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r1, _0217fdd8 ; =0x00000207
|
|
mov r0, r4
|
|
add r2, sp, #0x20
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r0, #0
|
|
str r0, [r5, #0x6bc]
|
|
_0217fb90:
|
|
ldr r0, [r5, #0x138]
|
|
cmp r0, #6
|
|
bne _0217fbb0
|
|
ldr r0, _0217fdbc ; =data_027e0ffc
|
|
add r2, r5, #0x48
|
|
mov r1, #0x2d0
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
_0217fbb0:
|
|
ldr r0, [r5, #0x168]
|
|
mov r1, #0x36000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
beq _0217fbd8
|
|
ldr r1, _0217fddc ; =data_ov36_02186cb0
|
|
add r0, r5, #0x158
|
|
bl func_ov36_0217c7e8
|
|
b _0217fc04
|
|
_0217fbd8:
|
|
ldr r0, [r5, #0x168]
|
|
mov r1, #0x3b000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
beq _0217fc04
|
|
ldr r0, _0217fdbc ; =data_027e0ffc
|
|
ldr r1, _0217fde0 ; =0x000002cb
|
|
add r2, r5, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
_0217fc04:
|
|
ldr r0, [r5, #0x168]
|
|
ldr r4, [r0, #0x14]
|
|
cmp r4, #0x45000
|
|
blt _0217fcb0
|
|
cmp r4, #0x4f000
|
|
bgt _0217fcb0
|
|
rsb r1, r4, #0x4f000
|
|
cmp r1, #0x1000
|
|
movle r0, #0
|
|
ble _0217fc40
|
|
ldr r0, [r5, #0x868]
|
|
rsb r0, r0, #0
|
|
bl func_01ff98e0
|
|
ldr r1, [r5, #0x868]
|
|
add r0, r1, r0
|
|
_0217fc40:
|
|
str r0, [r5, #0x868]
|
|
ldrh r6, [r5, #0x78]
|
|
ldr r0, _0217fde4 ; =0x00000ccd
|
|
mov r1, #0xb000
|
|
bl func_01ff98e0
|
|
mov r1, r6, asr #0x4
|
|
mov r2, r1, lsl #0x1
|
|
add r1, r2, #1
|
|
ldr r3, _0217fde8 ; =data_02050f54
|
|
mov r2, r2, lsl #0x1
|
|
mov r1, r1, lsl #0x1
|
|
ldrsh r2, [r3, r2]
|
|
ldrsh r1, [r3, r1]
|
|
smull ip, r3, r2, r0
|
|
adds ip, ip, #0x800
|
|
smull r2, r0, r1, r0
|
|
adc r3, r3, #0
|
|
adds r1, r2, #0x800
|
|
mov r2, ip, lsr #0xc
|
|
orr r2, r2, r3, lsl #20
|
|
str r2, [r5, #0x60]
|
|
mov r2, #0
|
|
adc r0, r0, #0
|
|
mov r1, r1, lsr #0xc
|
|
str r2, [r5, #0x64]
|
|
orr r1, r1, r0, lsl #20
|
|
str r1, [r5, #0x68]
|
|
b _0217fcc0
|
|
_0217fcb0:
|
|
mov r0, #0
|
|
str r0, [r5, #0x60]
|
|
str r0, [r5, #0x64]
|
|
str r0, [r5, #0x68]
|
|
_0217fcc0:
|
|
cmp r4, #0x40000
|
|
blt _0217fd08
|
|
cmp r4, #0x68000
|
|
bgt _0217fd08
|
|
rsb r1, r4, #0x68000
|
|
cmp r1, #0x1000
|
|
movle r0, #0x4000
|
|
strleh r0, [r5, #0x78]
|
|
ble _0217fd08
|
|
ldrsh r0, [r5, #0x78]
|
|
rsb r0, r0, #0x4000
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x4
|
|
bl func_01ff98e0
|
|
ldrsh r1, [r5, #0x78]
|
|
add r0, r0, #0x800
|
|
add r0, r1, r0, asr #12
|
|
strh r0, [r5, #0x78]
|
|
_0217fd08:
|
|
ldr r0, [r5, #0x168]
|
|
mov r1, #0x6b000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
beq _0217fd8c
|
|
ldr r0, [r5, #0x4c]
|
|
ldr r2, [r5, #0x50]
|
|
ldr r1, [r5, #0x48]
|
|
add r0, r0, #0xcd
|
|
add r0, r0, #0x400
|
|
str r1, [sp, #0x14]
|
|
str r0, [sp, #0x18]
|
|
str r2, [sp, #0x1c]
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r0, _0217fdc8 ; =data_027e0e58
|
|
add r2, sp, #0x14
|
|
ldr r0, [r0]
|
|
mov r1, #0x11
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
ldr r0, _0217fdb8 ; =data_027e0f64
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02088000
|
|
ldr r0, _0217fdbc ; =data_027e0ffc
|
|
ldr r1, _0217fdec ; =0x000002c7
|
|
add r2, r5, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
_0217fd8c:
|
|
ldr r0, [r5, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x38
|
|
ldmeqia sp!, {r4, r5, r6, pc}
|
|
mov r0, r5
|
|
mov r1, #0x13
|
|
bl func_ov36_0217d6bc
|
|
add sp, sp, #0x38
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217f9f0
|
|
_0217fdb8: .word data_027e0f64
|
|
_0217fdbc: .word data_027e0ffc
|
|
_0217fdc0: .word 0x000001ad
|
|
_0217fdc4: .word data_027e1038
|
|
_0217fdc8: .word data_027e0e58
|
|
_0217fdcc: .word 0x00000203
|
|
_0217fdd0: .word 0x00000205
|
|
_0217fdd4: .word 0x00000206
|
|
_0217fdd8: .word 0x00000207
|
|
_0217fddc: .word data_ov36_02186cb0
|
|
_0217fde0: .word 0x000002cb
|
|
_0217fde4: .word 0x00000ccd
|
|
_0217fde8: .word data_02050f54
|
|
_0217fdec: .word 0x000002c7
|
|
|
|
.global func_ov36_0217fdf0
|
|
arm_func_start func_ov36_0217fdf0
|
|
func_ov36_0217fdf0: ; 0x0217fdf0
|
|
stmdb sp!, {r4, lr}
|
|
ldr r2, _0217fe34 ; =data_027e0d0c
|
|
mov r4, r0
|
|
ldr r1, [r2]
|
|
add r0, r4, #0x158
|
|
str r1, [r4, #0x60]
|
|
ldr r3, [r2, #4]
|
|
mov r1, #0x15
|
|
str r3, [r4, #0x64]
|
|
ldr r2, [r2, #8]
|
|
str r2, [r4, #0x68]
|
|
bl func_ov36_0217ca34
|
|
ldr r1, _0217fe38 ; =data_ov36_02186cb4
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
mov r0, #1
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217fdf0
|
|
_0217fe34: .word data_027e0d0c
|
|
_0217fe38: .word data_ov36_02186cb4
|
|
|
|
.global func_ov36_0217fe3c
|
|
arm_func_start func_ov36_0217fe3c
|
|
func_ov36_0217fe3c: ; 0x0217fe3c
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
sub sp, sp, #0x48
|
|
mov r5, r0
|
|
bl func_ov00_020c2974
|
|
mov r1, r0
|
|
add r0, r5, #0x78
|
|
mov r2, #0x190
|
|
bl func_0202b154
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
ldr r3, [r5, #8]
|
|
ldr r0, _0217ffc4 ; =data_027e0ffc
|
|
ldr r1, _0217ffc8 ; =0x000002c5
|
|
add r2, r5, #0x48
|
|
bl func_ov00_020cec60
|
|
mov r0, #0x30000
|
|
mov r1, #0xb4000
|
|
bl func_01ff98e0
|
|
ldr r2, [r5, #0x874]
|
|
ldr r1, _0217ffcc ; =data_02050f54
|
|
mul r0, r2, r0
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, lsr #0x10
|
|
mov r0, r0, asr #0x4
|
|
mov r0, r0, lsl #0x2
|
|
ldrsh r3, [r1, r0]
|
|
ldr r0, _0217ffd0 ; =0x009c4000
|
|
add r1, r2, #1
|
|
str r1, [r5, #0x874]
|
|
umull r1, r4, r3, r0
|
|
adds r1, r1, #0x800
|
|
mov ip, r1, lsr #0xc
|
|
mov r2, r3, asr #0x1f
|
|
mov r1, #0
|
|
mla r4, r3, r1, r4
|
|
mla r4, r2, r0, r4
|
|
adc r0, r4, #0
|
|
orr ip, ip, r0, lsl #20
|
|
mov r0, ip, lsl #0x4
|
|
mov r4, r0, asr #0x10
|
|
ldr r0, [r5, #0x878]
|
|
add r1, r5, #0x800
|
|
orr r0, r0, #4
|
|
str r0, [r5, #0x878]
|
|
strh r4, [r1, #0x90]
|
|
add r0, r5, #0x200
|
|
strh r4, [r0, #0x64]
|
|
ldrsh r0, [r1, #0x7c]
|
|
cmp r0, #0
|
|
bne _0217ff88
|
|
mov r2, #6
|
|
add r0, sp, #0x1c
|
|
strh r2, [r1, #0x7c]
|
|
bl func_ov00_020c1500
|
|
mvn r1, #0
|
|
add r0, sp, #0x1c
|
|
str r1, [sp, #0x38]
|
|
str r1, [sp, #0x3c]
|
|
bl func_ov00_020c3348
|
|
ldr r1, [r5, #8]
|
|
add r0, sp, #4
|
|
str r1, [sp, #0x38]
|
|
ldr r2, [r5, #0xc]
|
|
add r1, r5, #0x178
|
|
str r2, [sp, #0x3c]
|
|
ldrsh r3, [r5, #0x78]
|
|
mov r2, #1
|
|
add r3, r3, r4
|
|
strh r3, [sp, #0x30]
|
|
strh r2, [sp, #0x1c]
|
|
bl func_ov36_0217c5a0
|
|
add r0, sp, #4
|
|
add r3, sp, #0x10
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
ldr r0, _0217ffd4 ; =data_027e0fe8
|
|
mov r2, r3
|
|
ldr r1, _0217ffd8 ; =0x50424652
|
|
ldr r0, [r0]
|
|
add r3, sp, #0x1c
|
|
bl func_ov00_020c4048
|
|
_0217ff88:
|
|
add r2, r5, #0x800
|
|
ldrsh r0, [r2, #0xa2]
|
|
ldr r1, [r5, #0x138]
|
|
cmp r1, r0
|
|
addlt sp, sp, #0x48
|
|
ldmltia sp!, {r3, r4, r5, pc}
|
|
mov r1, #0
|
|
mov r0, r5
|
|
strh r1, [r2, #0xa2]
|
|
mov r3, #0x1e
|
|
mov r1, #2
|
|
strh r3, [r2, #0x7e]
|
|
bl func_ov36_0217d6bc
|
|
add sp, sp, #0x48
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217fe3c
|
|
_0217ffc4: .word data_027e0ffc
|
|
_0217ffc8: .word 0x000002c5
|
|
_0217ffcc: .word data_02050f54
|
|
_0217ffd0: .word 0x009c4000
|
|
_0217ffd4: .word data_027e0fe8
|
|
_0217ffd8: .word 0x50424652
|
|
|
|
.global func_ov36_0217ffdc
|
|
arm_func_start func_ov36_0217ffdc
|
|
func_ov36_0217ffdc: ; 0x0217ffdc
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldr r1, [r4, #0x130]
|
|
cmp r1, #0xd
|
|
bne _02180018
|
|
ldrb r1, [r4, #0x8a9]
|
|
add r2, r1, #1
|
|
and r1, r2, #0xff
|
|
strb r2, [r4, #0x8a9]
|
|
cmp r1, #5
|
|
blo _02180018
|
|
mov r1, #9
|
|
bl func_ov36_0217d6bc
|
|
mov r0, #0
|
|
ldmia sp!, {r4, pc}
|
|
_02180018:
|
|
add r0, r4, #0x800
|
|
mov r1, #0
|
|
strh r1, [r0, #0x92]
|
|
strb r1, [r4, #0x8a4]
|
|
ldr r0, _02180064 ; =0x00000333
|
|
mov r1, #0x14
|
|
str r0, [r4, #0x858]
|
|
ldr r0, [r4, #0x130]
|
|
cmp r0, #0xd
|
|
add r0, r4, #0x158
|
|
bne _0218004c
|
|
bl func_ov36_0217c958
|
|
b _02180050
|
|
_0218004c:
|
|
bl func_ov36_0217ca34
|
|
_02180050:
|
|
ldr r1, _02180068 ; =data_ov36_02186cb8
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
mov r0, #1
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0217ffdc
|
|
_02180064: .word 0x00000333
|
|
_02180068: .word data_ov36_02186cb8
|
|
|
|
.global func_ov36_0218006c
|
|
arm_func_start func_ov36_0218006c
|
|
func_ov36_0218006c: ; 0x0218006c
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #4
|
|
mov r4, r0
|
|
ldr r2, [r4, #0x138]
|
|
add r1, sp, #0
|
|
rsb r2, r2, #7
|
|
mov r3, r2, lsl #0xc
|
|
mov r2, #0
|
|
str r3, [sp]
|
|
bl func_ov36_021855ec
|
|
mov r0, r4
|
|
bl func_ov36_02185274
|
|
ldr r0, [r4, #0x360]
|
|
add r0, r4, r0, lsl #2
|
|
ldr r0, [r0, #0x358]
|
|
cmp r0, #0x14
|
|
bne _021800d0
|
|
ldr r0, [r4, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
beq _021800d0
|
|
add r0, r4, #0x158
|
|
mov r1, #1
|
|
bl func_ov36_0217c958
|
|
_021800d0:
|
|
ldr r0, [r4, #0x858]
|
|
cmp r0, #0
|
|
bne _021800fc
|
|
ldr r0, [r4, #0x360]
|
|
add r0, r4, r0, lsl #2
|
|
ldr r0, [r0, #0x358]
|
|
cmp r0, #0x14
|
|
beq _021800fc
|
|
mov r0, r4
|
|
mov r1, #7
|
|
bl func_ov36_0217d6bc
|
|
_021800fc:
|
|
mov r0, r4
|
|
bl func_ov36_02183204
|
|
ldr r0, [r4, #0x130]
|
|
cmp r0, #0xd
|
|
movne r0, #0
|
|
strneb r0, [r4, #0x8a9]
|
|
add sp, sp, #4
|
|
ldmia sp!, {r3, r4, pc}
|
|
arm_func_end func_ov36_0218006c
|
|
|
|
.global func_ov36_0218011c
|
|
arm_func_start func_ov36_0218011c
|
|
func_ov36_0218011c: ; 0x0218011c
|
|
stmdb sp!, {r4, lr}
|
|
ldr r2, _02180160 ; =data_027e0d0c
|
|
mov r4, r0
|
|
ldr r1, [r2]
|
|
add r0, r4, #0x158
|
|
str r1, [r4, #0x60]
|
|
ldr r3, [r2, #4]
|
|
mov r1, #0x12
|
|
str r3, [r4, #0x64]
|
|
ldr r2, [r2, #8]
|
|
str r2, [r4, #0x68]
|
|
bl func_ov36_0217ca34
|
|
ldr r1, _02180164 ; =data_ov36_02186cbc
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
mov r0, #1
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0218011c
|
|
_02180160: .word data_027e0d0c
|
|
_02180164: .word data_ov36_02186cbc
|
|
|
|
.global func_ov36_02180168
|
|
arm_func_start func_ov36_02180168
|
|
func_ov36_02180168: ; 0x02180168
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldr r0, [r4, #0x138]
|
|
cmp r0, #0x19
|
|
bne _02180188
|
|
ldr r1, _021801c4 ; =data_ov36_02186cc0
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
_02180188:
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217cc84
|
|
cmp r0, #0
|
|
beq _021801b8
|
|
ldr r0, [r4, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
beq _021801b8
|
|
mov r0, r4
|
|
mov r1, #2
|
|
bl func_ov36_0217d6bc
|
|
_021801b8:
|
|
mov r0, r4
|
|
bl func_ov36_02183204
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02180168
|
|
_021801c4: .word data_ov36_02186cc0
|
|
|
|
.global func_ov36_021801c8
|
|
arm_func_start func_ov36_021801c8
|
|
func_ov36_021801c8: ; 0x021801c8
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r5, r0
|
|
add r0, r5, #0x800
|
|
ldrsh r1, [r5, #0x78]
|
|
ldrsh r0, [r0, #0x9a]
|
|
sub r2, r0, r1
|
|
mov r2, r2, lsl #0x10
|
|
movs r3, r2, asr #0x10
|
|
mov r2, #0x4000
|
|
rsb r2, r2, #0
|
|
bpl _021802d8
|
|
sub r2, r2, r3
|
|
mov r2, r2, lsl #0x10
|
|
movs r4, r2, asr #0x10
|
|
ldr r2, _0218048c ; =0x00000dac
|
|
rsbmi r4, r4, #0
|
|
cmp r4, r2
|
|
bge _02180220
|
|
add r1, r0, #0x4000
|
|
add r0, r5, #0x800
|
|
strh r1, [r0, #0x9c]
|
|
b _02180254
|
|
_02180220:
|
|
mov r0, #0x4000
|
|
rsb r0, r0, #0
|
|
cmp r3, r0
|
|
bge _02180244
|
|
rsb r0, r2, #0
|
|
add r1, r1, r0
|
|
add r0, r5, #0x800
|
|
strh r1, [r0, #0x9c]
|
|
b _02180254
|
|
_02180244:
|
|
add r0, r1, #0x1ac
|
|
add r1, r0, #0xc00
|
|
add r0, r5, #0x800
|
|
strh r1, [r0, #0x9c]
|
|
_02180254:
|
|
add r0, r5, #0x800
|
|
ldrsh r2, [r0, #0x9c]
|
|
ldrsh r0, [r5, #0x78]
|
|
mov r1, #0x7000
|
|
sub r0, r2, r0
|
|
mov r0, r0, lsl #0xc
|
|
bl func_01ff98e0
|
|
mov r1, r0, asr #0xc
|
|
add r0, r5, #0x800
|
|
strh r1, [r0, #0x9e]
|
|
ldr r0, [r5, #0x130]
|
|
cmp r0, #0xf
|
|
bne _021802c4
|
|
ldr r0, [r5, #0x878]
|
|
tst r0, #0x40
|
|
beq _021802c4
|
|
ldr r1, [r5, #0x878]
|
|
mov r0, r5
|
|
bic r1, r1, #0x40
|
|
str r1, [r5, #0x878]
|
|
mov r2, #1
|
|
mov r1, #0xf
|
|
strb r2, [r5, #0x8a4]
|
|
bl func_ov36_0217d6bc
|
|
add r1, r5, #0x800
|
|
mov r0, #0
|
|
strh r0, [r1, #0x92]
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_021802c4:
|
|
ldr r0, [r5, #0x878]
|
|
mov r4, #2
|
|
bic r0, r0, #0x40
|
|
str r0, [r5, #0x878]
|
|
b _021803b0
|
|
_021802d8:
|
|
sub r2, r2, r3
|
|
mov r2, r2, lsl #0x10
|
|
movs r4, r2, asr #0x10
|
|
ldr r2, _0218048c ; =0x00000dac
|
|
rsbmi r4, r4, #0
|
|
cmp r4, r2
|
|
bge _02180304
|
|
sub r1, r0, #0x4000
|
|
add r0, r5, #0x800
|
|
strh r1, [r0, #0x9c]
|
|
b _02180330
|
|
_02180304:
|
|
cmp r3, #0x4000
|
|
ble _02180320
|
|
add r0, r1, #0x1ac
|
|
add r1, r0, #0xc00
|
|
add r0, r5, #0x800
|
|
strh r1, [r0, #0x9c]
|
|
b _02180330
|
|
_02180320:
|
|
rsb r0, r2, #0
|
|
add r1, r1, r0
|
|
add r0, r5, #0x800
|
|
strh r1, [r0, #0x9c]
|
|
_02180330:
|
|
add r0, r5, #0x800
|
|
ldrsh r2, [r0, #0x9c]
|
|
ldrsh r0, [r5, #0x78]
|
|
mov r1, #0x7000
|
|
sub r0, r2, r0
|
|
mov r0, r0, lsl #0xc
|
|
bl func_01ff98e0
|
|
mov r1, r0, asr #0xc
|
|
add r0, r5, #0x800
|
|
strh r1, [r0, #0x9e]
|
|
ldr r0, [r5, #0x130]
|
|
cmp r0, #0xf
|
|
bne _021803a0
|
|
ldr r0, [r5, #0x878]
|
|
tst r0, #0x40
|
|
bne _021803a0
|
|
ldr r1, [r5, #0x878]
|
|
mov r0, r5
|
|
orr r1, r1, #0x40
|
|
str r1, [r5, #0x878]
|
|
mov r2, #1
|
|
mov r1, #0xf
|
|
strb r2, [r5, #0x8a4]
|
|
bl func_ov36_0217d6bc
|
|
add r1, r5, #0x800
|
|
mov r0, #0
|
|
strh r0, [r1, #0x92]
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_021803a0:
|
|
ldr r0, [r5, #0x878]
|
|
mov r4, #3
|
|
orr r0, r0, #0x40
|
|
str r0, [r5, #0x878]
|
|
_021803b0:
|
|
ldr r0, _02180490 ; =data_027e0ffc
|
|
ldr r1, _02180494 ; =0x000002c9
|
|
add r2, r5, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
ldr r0, _02180498 ; =data_027e0f64
|
|
mov r1, #0xb
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02088000
|
|
ldr r0, _0218049c ; =0x00000333
|
|
str r0, [r5, #0x858]
|
|
ldr r0, [r5, #0x130]
|
|
cmp r0, #0xf
|
|
ldr r0, [r5, #0x360]
|
|
beq _02180428
|
|
add r0, r5, r0, lsl #2
|
|
ldr r0, [r0, #0x358]
|
|
cmp r4, r0
|
|
bne _02180418
|
|
add r0, r5, #0x158
|
|
bl func_ov36_0217cc18
|
|
mov r1, r4
|
|
add r0, r5, #0x158
|
|
bl func_ov36_0217c958
|
|
b _02180458
|
|
_02180418:
|
|
mov r1, r4
|
|
add r0, r5, #0x158
|
|
bl func_ov36_0217ca34
|
|
b _02180458
|
|
_02180428:
|
|
add r0, r5, r0, lsl #2
|
|
ldr r0, [r0, #0x358]
|
|
add r1, r4, #2
|
|
cmp r1, r0
|
|
add r0, r5, #0x158
|
|
bne _02180454
|
|
bl func_ov36_0217cc18
|
|
add r0, r5, #0x158
|
|
add r1, r4, #2
|
|
bl func_ov36_0217c958
|
|
b _02180458
|
|
_02180454:
|
|
bl func_ov36_0217ca34
|
|
_02180458:
|
|
ldr r2, _021804a0 ; =0x00000e66
|
|
ldr r1, _021804a4 ; =data_ov36_02186cc4
|
|
add r0, r5, #0x158
|
|
str r2, [r5, #0x860]
|
|
bl func_ov36_0217c7e8
|
|
add r0, r5, #0x800
|
|
mov r1, #0x3c
|
|
strh r1, [r0, #0x86]
|
|
ldr r1, [r5, #0x878]
|
|
mov r0, #1
|
|
bic r1, r1, #0x200000
|
|
str r1, [r5, #0x878]
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_021801c8
|
|
_0218048c: .word 0x00000dac
|
|
_02180490: .word data_027e0ffc
|
|
_02180494: .word 0x000002c9
|
|
_02180498: .word data_027e0f64
|
|
_0218049c: .word 0x00000333
|
|
_021804a0: .word 0x00000e66
|
|
_021804a4: .word data_ov36_02186cc4
|
|
|
|
.global func_ov36_021804a8
|
|
arm_func_start func_ov36_021804a8
|
|
func_ov36_021804a8: ; 0x021804a8
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov36_02185274
|
|
ldr r1, _0218056c ; =data_ov36_02186cc8
|
|
mov r0, r4
|
|
mov r2, #1
|
|
bl func_ov36_021855ec
|
|
ldr r0, [r4, #0x878]
|
|
tst r0, #0x200000
|
|
bne _02180544
|
|
mov r0, r4
|
|
bl func_ov36_02183204
|
|
add r0, r4, #0x800
|
|
ldrsh r1, [r0, #0x9c]
|
|
ldrsh r2, [r0, #0x9e]
|
|
add r0, r4, #0x78
|
|
bl func_0202b154
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217cc84
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r4, pc}
|
|
ldr r0, [r4, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r4, pc}
|
|
ldr r0, [r4, #0x878]
|
|
tst r0, #0x40
|
|
add r0, r4, #0x158
|
|
beq _0218052c
|
|
mov r1, #7
|
|
bl func_ov36_0217c958
|
|
b _02180534
|
|
_0218052c:
|
|
mov r1, #6
|
|
bl func_ov36_0217c958
|
|
_02180534:
|
|
ldr r0, [r4, #0x878]
|
|
orr r0, r0, #0x200000
|
|
str r0, [r4, #0x878]
|
|
ldmia sp!, {r4, pc}
|
|
_02180544:
|
|
add r0, r4, #0x800
|
|
ldrsh r0, [r0, #0x86]
|
|
cmp r0, #0
|
|
mov r0, r4
|
|
bne _02180564
|
|
mov r1, #0x10
|
|
bl func_ov36_0217d6bc
|
|
ldmia sp!, {r4, pc}
|
|
_02180564:
|
|
bl func_ov36_02183204
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_021804a8
|
|
_0218056c: .word data_ov36_02186cc8
|
|
|
|
.global func_ov36_02180570
|
|
arm_func_start func_ov36_02180570
|
|
func_ov36_02180570: ; 0x02180570
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldr r0, [r4, #0x878]
|
|
orr r0, r0, #0x1000
|
|
str r0, [r4, #0x878]
|
|
tst r0, #0x40
|
|
add r0, r4, #0x158
|
|
beq _0218059c
|
|
mov r1, #9
|
|
bl func_ov36_0217ca34
|
|
b _021805a4
|
|
_0218059c:
|
|
mov r1, #8
|
|
bl func_ov36_0217ca34
|
|
_021805a4:
|
|
mov r3, #0
|
|
ldr r1, _021805c8 ; =data_ov36_02186ccc
|
|
strb r3, [r4, #0x8a4]
|
|
add r2, r4, #0x800
|
|
add r0, r4, #0x158
|
|
strh r3, [r2, #0x92]
|
|
bl func_ov36_0217c7e8
|
|
mov r0, #1
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02180570
|
|
_021805c8: .word data_ov36_02186ccc
|
|
|
|
.global func_ov36_021805cc
|
|
arm_func_start func_ov36_021805cc
|
|
func_ov36_021805cc: ; 0x021805cc
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #4
|
|
mov r4, r0
|
|
ldr r2, [r4, #0x138]
|
|
add r1, sp, #0
|
|
rsb r2, r2, #7
|
|
mov r3, r2, lsl #0xc
|
|
mov r2, #0
|
|
str r3, [sp]
|
|
bl func_ov36_021855ec
|
|
mov r0, r4
|
|
bl func_ov36_02185274
|
|
ldr r0, [r4, #0x138]
|
|
cmp r0, #0x12
|
|
bne _02180614
|
|
ldr r1, _02180654 ; =data_ov36_02186cd0
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
_02180614:
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217cc84
|
|
cmp r0, #0
|
|
beq _02180644
|
|
ldr r0, [r4, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
beq _02180644
|
|
mov r0, r4
|
|
mov r1, #7
|
|
bl func_ov36_0217d6bc
|
|
_02180644:
|
|
mov r0, r4
|
|
bl func_ov36_02183204
|
|
add sp, sp, #4
|
|
ldmia sp!, {r3, r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_021805cc
|
|
_02180654: .word data_ov36_02186cd0
|
|
|
|
.global func_ov36_02180658
|
|
arm_func_start func_ov36_02180658
|
|
func_ov36_02180658: ; 0x02180658
|
|
mov r0, #1
|
|
bx lr
|
|
arm_func_end func_ov36_02180658
|
|
|
|
.global func_ov36_02180660
|
|
arm_func_start func_ov36_02180660
|
|
func_ov36_02180660: ; 0x02180660
|
|
bx lr
|
|
arm_func_end func_ov36_02180660
|
|
|
|
.global func_ov36_02180664
|
|
arm_func_start func_ov36_02180664
|
|
func_ov36_02180664: ; 0x02180664
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0xd4
|
|
mov r7, r0
|
|
ldr r0, [r7, #0x878]
|
|
mov r2, #0
|
|
orr r0, r0, #0x400
|
|
str r0, [r7, #0x878]
|
|
ldr r1, _02180980 ; =data_027e0d0c
|
|
str r2, [r7, #0x12c]
|
|
add r0, r7, #0x800
|
|
strh r2, [r0, #0x92]
|
|
ldr r0, [r1]
|
|
str r0, [r7, #0x60]
|
|
ldr r0, [r1, #4]
|
|
str r0, [r7, #0x64]
|
|
ldr r0, [r1, #8]
|
|
str r0, [r7, #0x68]
|
|
ldr r0, [r7, #0x878]
|
|
tst r0, #0x40
|
|
add r0, r7, #0x158
|
|
beq _021806c4
|
|
mov r1, #0xb
|
|
bl func_ov36_0217ca34
|
|
b _021806cc
|
|
_021806c4:
|
|
mov r1, #0xa
|
|
bl func_ov36_0217ca34
|
|
_021806cc:
|
|
ldr r1, _02180984 ; =data_ov36_02186cd4
|
|
add r0, r7, #0x158
|
|
bl func_ov36_0217c7e8
|
|
add r0, r7, #0x100
|
|
ldrsh r2, [r0, #0x20]
|
|
ldr r1, _02180988 ; =data_ov36_02186838
|
|
add r0, r7, #0x800
|
|
rsb r2, r2, #3
|
|
mov r2, r2, lsl #0x1
|
|
ldrsh r1, [r1, r2]
|
|
mov r4, #0
|
|
strh r1, [r0, #0x86]
|
|
ldr r1, [r7, #0x878]
|
|
tst r1, #2
|
|
bne _02180730
|
|
ldr r1, [r7, #0x878]
|
|
orr r1, r1, #2
|
|
str r1, [r7, #0x878]
|
|
strh r4, [r0, #0x9c]
|
|
ldrsh r0, [r7, #0x78]
|
|
cmp r0, #0
|
|
rsblt r0, r0, #0
|
|
mov r0, r0, lsl #0x10
|
|
mov r4, r0, lsr #0x10
|
|
b _02180860
|
|
_02180730:
|
|
ldrsh r1, [r7, #0x78]
|
|
ldr sl, _0218098c ; =data_02050f54
|
|
mov sb, #5
|
|
strh r1, [r0, #0x9c]
|
|
add r0, r1, #0x2000
|
|
and r0, r0, #0xc000
|
|
mov r0, r0, lsl #0x10
|
|
ldrsh r1, [r7, #0x78]
|
|
mov r6, r0, asr #0x10
|
|
mov fp, #0
|
|
sub r0, r1, r0, asr #16
|
|
mov r0, r0, lsl #0x10
|
|
movs r0, r0, asr #0x10
|
|
movpl r5, #0x4000
|
|
add r0, r7, #0x9c
|
|
submi r5, r4, #0x4000
|
|
add r8, r0, #0x800
|
|
_02180774:
|
|
mov r0, r6, lsl #0x10
|
|
mov r0, r0, lsr #0x10
|
|
ldr r2, [r7, #0x48]
|
|
ldr r3, [r7, #0x4c]
|
|
ldr r1, [r7, #0x50]
|
|
mov r0, r0, asr #0x4
|
|
str r3, [sp, #0x1c]
|
|
mov r3, r0, lsl #0x1
|
|
mov r0, r3, lsl #0x1
|
|
ldrsh lr, [sl, r0]
|
|
add r0, sl, r3, lsl #1
|
|
ldrsh ip, [r0, #2]
|
|
mov r0, lr, asr #0x1f
|
|
mov r0, r0, lsl #0xe
|
|
mov r3, #0x800
|
|
orr r0, r0, lr, lsr #18
|
|
adds lr, r3, lr, lsl #14
|
|
adc r0, r0, #0
|
|
mov r3, lr, lsr #0xc
|
|
orr r3, r3, r0, lsl #20
|
|
add r0, r2, r3
|
|
str r0, [sp, #0x18]
|
|
mov r0, ip, asr #0x1f
|
|
mov r2, r0, lsl #0xe
|
|
mov r0, #0x800
|
|
adds r3, r0, ip, lsl #14
|
|
orr r2, r2, ip, lsr #18
|
|
mov r0, #0
|
|
adc r0, r2, r0
|
|
mov r2, r3, lsr #0xc
|
|
orr r2, r2, r0, lsl #20
|
|
add r0, r1, r2
|
|
str r0, [sp, #0x20]
|
|
ldr r0, [r7, #0x48]
|
|
ldr r3, _02180990 ; =0x000004cd
|
|
str r0, [sp, #0xc]
|
|
ldr r0, [r7, #0x4c]
|
|
add r1, sp, #0x18
|
|
str r0, [sp, #0x10]
|
|
ldr r0, [r7, #0x50]
|
|
add r2, sp, #0xc
|
|
str r0, [sp, #0x14]
|
|
ldr r0, [r7, #8]
|
|
stmia sp, {r0, sb, fp}
|
|
ldr r0, _02180994 ; =data_027e0e60
|
|
ldr r0, [r0]
|
|
bl func_01ffe1cc
|
|
cmp r0, #0
|
|
beq _02180860
|
|
ldrsh r1, [r8]
|
|
add r0, r6, r5
|
|
mov r0, r0, lsl #0x10
|
|
add r1, r1, r5
|
|
strh r1, [r8]
|
|
mov r6, r0, asr #0x10
|
|
add r0, r4, #0x4000
|
|
mov r0, r0, lsl #0x10
|
|
mov r4, r0, lsr #0x10
|
|
b _02180774
|
|
_02180860:
|
|
mov r0, r4, lsl #0xc
|
|
mov r1, #0xf000
|
|
bl func_01ff98e0
|
|
mov r1, r0, asr #0xc
|
|
add r0, r7, #0x800
|
|
strh r1, [r0, #0x9e]
|
|
ldr r0, [r7, #0x878]
|
|
tst r0, #8
|
|
bne _0218091c
|
|
mov r0, r7
|
|
bl func_ov00_020c198c
|
|
cmp r0, #0
|
|
beq _0218091c
|
|
add r0, sp, #0x24
|
|
bl func_ov00_0209a4f4
|
|
ldr r0, _02180998 ; =data_027e0f64
|
|
mvn r4, #0
|
|
mov r3, #0x32
|
|
mov r2, #3
|
|
add r1, r7, #0x2e4
|
|
ldr r0, [r0]
|
|
str r4, [sp, #0x28]
|
|
strb r3, [sp, #0x2d]
|
|
strb r2, [sp, #0x2f]
|
|
ldr r0, [r0, #4]
|
|
add r1, r1, #0x400
|
|
bl func_ov00_02087d34
|
|
ldr r1, _02180998 ; =data_027e0f64
|
|
mov r2, #2
|
|
strb r2, [sp, #0x2e]
|
|
ldr r1, [r1]
|
|
ldr r0, _0218099c ; =data_027e0f74
|
|
ldr r4, [r1, #4]
|
|
ldr r0, [r0]
|
|
ldr r1, [r4, #0x26c]
|
|
mov r2, #1
|
|
str r1, [sp, #0x44]
|
|
ldr r3, [r4, #0x270]
|
|
add r1, sp, #0x24
|
|
str r3, [sp, #0x48]
|
|
ldr r3, [r4, #0x274]
|
|
str r3, [sp, #0x4c]
|
|
strb r2, [sp, #0x3a]
|
|
bl func_ov00_02097810
|
|
str r0, [r7, #0x66c]
|
|
add r0, sp, #0x24
|
|
bl func_ov00_0209a508
|
|
_0218091c:
|
|
add r1, r7, #0x3b4
|
|
ldr r0, _021809a0 ; =data_027e0c68
|
|
ldr r2, _021809a4 ; =0x0069032e
|
|
add r1, r1, #0x400
|
|
bl func_02036ce4
|
|
mov r0, r7
|
|
mov r1, #1
|
|
bl func_ov00_020c1908
|
|
add r1, r7, #0x3b4
|
|
ldr r0, _021809a0 ; =data_027e0c68
|
|
add r1, r1, #0x400
|
|
bl func_020368f4
|
|
ldr r1, [r7, #0x878]
|
|
ldr r0, _021809a8 ; =data_027e0ffc
|
|
bic r1, r1, #0x200000
|
|
str r1, [r7, #0x878]
|
|
ldr r1, _021809ac ; =0x000002ca
|
|
add r2, r7, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
mov r0, #0
|
|
strb r0, [r7, #0x8a6]
|
|
mov r0, #1
|
|
add sp, sp, #0xd4
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02180664
|
|
_02180980: .word data_027e0d0c
|
|
_02180984: .word data_ov36_02186cd4
|
|
_02180988: .word data_ov36_02186838
|
|
_0218098c: .word data_02050f54
|
|
_02180990: .word 0x000004cd
|
|
_02180994: .word data_027e0e60
|
|
_02180998: .word data_027e0f64
|
|
_0218099c: .word data_027e0f74
|
|
_021809a0: .word data_027e0c68
|
|
_021809a4: .word 0x0069032e
|
|
_021809a8: .word data_027e0ffc
|
|
_021809ac: .word 0x000002ca
|
|
|
|
.global func_ov36_021809b0
|
|
arm_func_start func_ov36_021809b0
|
|
func_ov36_021809b0: ; 0x021809b0
|
|
stmdb sp!, {r3, r4, r5, r6, lr}
|
|
sub sp, sp, #0x3c
|
|
mov r4, r0
|
|
add r0, r4, #0x800
|
|
ldrsh r1, [r0, #0x9c]
|
|
ldrsh r2, [r0, #0x9e]
|
|
add r0, r4, #0x78
|
|
bl func_0202b154
|
|
ldr r0, [r4, #0x878]
|
|
bic r0, r0, #0x20
|
|
str r0, [r4, #0x878]
|
|
tst r0, #0x200000
|
|
bne _02180ba8
|
|
ldr r0, [r4, #0x138]
|
|
add r1, sp, #8
|
|
rsb r0, r0, #0x14
|
|
mov r2, r0, lsl #0xc
|
|
str r2, [sp, #8]
|
|
mov r0, r4
|
|
mov r2, #0
|
|
bl func_ov36_021855ec
|
|
ldr r0, [r4, #0x168]
|
|
ldr r0, [r0, #0x14]
|
|
cmp r0, #0x2000
|
|
bne _02180a80
|
|
ldr r0, [r4, #0x4c]
|
|
ldr r2, [r4, #0x50]
|
|
ldr r1, [r4, #0x48]
|
|
add r0, r0, #0xcd
|
|
add r0, r0, #0x400
|
|
str r1, [sp, #0x30]
|
|
str r0, [sp, #0x34]
|
|
str r2, [sp, #0x38]
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r0, _02180d00 ; =data_027e0e58
|
|
add r2, sp, #0x30
|
|
ldr r0, [r0]
|
|
mov r1, #0x11
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
ldr r0, _02180d04 ; =data_027e0f64
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02088000
|
|
ldr r0, _02180d08 ; =data_027e0ffc
|
|
ldr r1, _02180d0c ; =0x000002c7
|
|
add r2, r4, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
_02180a80:
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217cc84
|
|
cmp r0, #0
|
|
beq _02180bd0
|
|
ldr r0, [r4, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
beq _02180bd0
|
|
ldr r0, [r4, #0x878]
|
|
tst r0, #0x40
|
|
add r0, r4, #0x158
|
|
beq _02180ac0
|
|
mov r1, #0xd
|
|
bl func_ov36_0217c958
|
|
b _02180ac8
|
|
_02180ac0:
|
|
mov r1, #0xc
|
|
bl func_ov36_0217c958
|
|
_02180ac8:
|
|
ldr r1, [r4, #0x878]
|
|
add r0, sp, #0x18
|
|
orr r2, r1, #0x200000
|
|
add r1, r4, #0x178
|
|
str r2, [r4, #0x878]
|
|
bl func_ov36_0217c5a0
|
|
add r0, sp, #0x18
|
|
str r0, [sp]
|
|
mov r2, #2
|
|
str r2, [sp, #4]
|
|
ldr r0, _02180d00 ; =data_027e0e58
|
|
add r1, r4, #0x2ac
|
|
ldr r0, [r0]
|
|
add r1, r1, #0x400
|
|
mov r2, #0x7a
|
|
mov r3, #0x7b
|
|
bl func_ov00_0207c2e8
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
ldr r3, [r4, #8]
|
|
ldr r0, _02180d08 ; =data_027e0ffc
|
|
ldr r1, _02180d10 ; =0x000002c1
|
|
add r2, r4, #0x48
|
|
bl func_ov00_020cec60
|
|
ldr r0, [r4, #0x878]
|
|
orr r0, r0, #0x20
|
|
str r0, [r4, #0x878]
|
|
tst r0, #8
|
|
bne _02180bd0
|
|
mov r0, #0x18000
|
|
str r0, [r4, #0x6fc]
|
|
add r0, r4, #0x48
|
|
add r3, sp, #0x24
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
ldr r0, [sp, #0x2c]
|
|
ldr r1, [sp, #0x24]
|
|
add r0, r0, #0x33
|
|
add r3, r0, #0x1b00
|
|
ldr r0, [sp, #0x28]
|
|
str r1, [sp, #0xc]
|
|
str r0, [sp, #0x10]
|
|
str r3, [sp, #0x2c]
|
|
str r3, [sp, #0x14]
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r0, _02180d04 ; =data_027e0f64
|
|
add r2, r4, #0x2e4
|
|
ldr r0, [r0]
|
|
add r3, r2, #0x400
|
|
ldr r0, [r0, #4]
|
|
add r1, sp, #0xc
|
|
mov r2, #3
|
|
bl func_ov00_02089318
|
|
b _02180bd0
|
|
_02180ba8:
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
ldr r3, [r4, #8]
|
|
ldr r0, _02180d08 ; =data_027e0ffc
|
|
ldr r1, _02180d10 ; =0x000002c1
|
|
add r2, r4, #0x48
|
|
bl func_ov00_020cec60
|
|
ldr r0, [r4, #0x878]
|
|
orr r0, r0, #0x20
|
|
str r0, [r4, #0x878]
|
|
_02180bd0:
|
|
mov r0, #0x10000
|
|
ldr r1, [r4, #0x7cc]
|
|
rsb r0, r0, #0
|
|
and r0, r1, r0
|
|
cmp r0, #0x1000000
|
|
beq _02180c90
|
|
add r0, r4, #0x3b4
|
|
add r0, r0, #0x400
|
|
ldr r1, [r0]
|
|
ldr r1, [r1, #0x10]
|
|
blx r1
|
|
mov r0, #0x10000
|
|
ldr r1, [r4, #0x7cc]
|
|
rsb r0, r0, #0
|
|
and r0, r1, r0
|
|
cmp r0, #0x1000000
|
|
addne sp, sp, #0x3c
|
|
ldmneia sp!, {r3, r4, r5, r6, pc}
|
|
ldr r1, [r4, #0x878]
|
|
ldr r0, _02180d14 ; =data_027e0fc8
|
|
orr r1, r1, #8
|
|
bic r1, r1, #1
|
|
str r1, [r4, #0x878]
|
|
ldr r0, [r0]
|
|
bl func_ov00_020bc46c
|
|
cmp r0, #1
|
|
bne _02180c58
|
|
ldr r0, _02180d14 ; =data_027e0fc8
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
mov r2, #1
|
|
ldr r3, [r0]
|
|
ldr r3, [r3, #0x7c]
|
|
blx r3
|
|
_02180c58:
|
|
ldr r0, _02180d18 ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097b9c
|
|
cmp r0, #0
|
|
beq _02180c80
|
|
ldr r0, _02180d18 ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097bcc
|
|
_02180c80:
|
|
mvn r0, #0
|
|
add sp, sp, #0x3c
|
|
str r0, [r4, #0x66c]
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_02180c90:
|
|
add r0, r4, #0x800
|
|
ldrsh r0, [r0, #0x86]
|
|
cmp r0, #0
|
|
bne _02180ce0
|
|
add r0, r4, #0x2ac
|
|
add r1, r4, #0x2b4
|
|
add r6, r0, #0x400
|
|
add r5, r1, #0x400
|
|
cmp r6, r5
|
|
beq _02180ccc
|
|
_02180cb8:
|
|
mov r0, r6
|
|
bl func_ov00_020b7e6c
|
|
add r6, r6, #4
|
|
cmp r6, r5
|
|
bne _02180cb8
|
|
_02180ccc:
|
|
mov r0, r4
|
|
mov r1, #0x15
|
|
bl func_ov36_0217d6bc
|
|
add sp, sp, #0x3c
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_02180ce0:
|
|
ldr r0, [r4, #0x878]
|
|
tst r0, #0x20
|
|
addeq sp, sp, #0x3c
|
|
ldmeqia sp!, {r3, r4, r5, r6, pc}
|
|
mov r0, r4
|
|
bl func_ov36_02183504
|
|
add sp, sp, #0x3c
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_021809b0
|
|
_02180d00: .word data_027e0e58
|
|
_02180d04: .word data_027e0f64
|
|
_02180d08: .word data_027e0ffc
|
|
_02180d0c: .word 0x000002c7
|
|
_02180d10: .word 0x000002c1
|
|
_02180d14: .word data_027e0fc8
|
|
_02180d18: .word data_027e0f74
|
|
|
|
.global func_ov36_02180d1c
|
|
arm_func_start func_ov36_02180d1c
|
|
func_ov36_02180d1c: ; 0x02180d1c
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #0x3c
|
|
mov r4, r0
|
|
mov r2, #0
|
|
str r2, [r4, #0x60]
|
|
str r2, [r4, #0x64]
|
|
add r0, r4, #0x158
|
|
mov r1, #0xc
|
|
str r2, [r4, #0x68]
|
|
bl func_ov36_0217ca34
|
|
mov r2, #0
|
|
add r0, sp, #0x14
|
|
add r1, r4, #0x178
|
|
strb r2, [r4, #0x8a6]
|
|
bl func_ov36_0217c5a0
|
|
add r0, sp, #0x14
|
|
str r0, [sp]
|
|
mov r2, #2
|
|
str r2, [sp, #4]
|
|
ldr r0, _02180e1c ; =data_027e0e58
|
|
add r1, r4, #0x2ac
|
|
ldr r0, [r0]
|
|
add r1, r1, #0x400
|
|
mov r2, #0x7a
|
|
mov r3, #0x7b
|
|
bl func_ov00_0207c2e8
|
|
add r0, sp, #8
|
|
add r1, r4, #0x178
|
|
mov r2, #0
|
|
bl func_ov36_0217c630
|
|
add r0, sp, #8
|
|
add r3, sp, #0x20
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
mov r0, r3
|
|
add r1, r4, #0x48
|
|
add r2, sp, #0x2c
|
|
bl func_01ff9bf8
|
|
ldr r1, _02180e20 ; =0x00000ccd
|
|
mov r0, #2
|
|
str r1, [sp, #0x38]
|
|
ldr ip, [r4, #0x6b8]
|
|
add r1, r4, #0x800
|
|
str r0, [ip, #0x12c]
|
|
ldr r0, [sp, #0x2c]
|
|
mov r2, #0xc8
|
|
str r0, [ip, #0x7c]
|
|
ldr r3, [sp, #0x30]
|
|
mov r0, #1
|
|
str r3, [ip, #0x80]
|
|
ldr r3, [sp, #0x34]
|
|
str r3, [ip, #0x84]
|
|
ldr r4, [sp, #0x38]
|
|
str r4, [ip, #0x88]
|
|
ldr r3, [ip, #0x7c]
|
|
str r3, [ip, #0xa8]
|
|
ldr r3, [ip, #0x80]
|
|
str r3, [ip, #0xac]
|
|
ldr r3, [ip, #0x84]
|
|
str r3, [ip, #0xb0]
|
|
str r4, [ip, #0xb4]
|
|
strh r2, [r1, #0x86]
|
|
add sp, sp, #0x3c
|
|
ldmia sp!, {r3, r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02180d1c
|
|
_02180e1c: .word data_027e0e58
|
|
_02180e20: .word 0x00000ccd
|
|
|
|
.global func_ov36_02180e24
|
|
arm_func_start func_ov36_02180e24
|
|
func_ov36_02180e24: ; 0x02180e24
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
sub sp, sp, #0x48
|
|
mov r5, r0
|
|
add r0, sp, #0x1c
|
|
add r1, r5, #0x178
|
|
mov r2, #0
|
|
bl func_ov36_0217c630
|
|
ldr ip, [sp, #0x1c]
|
|
ldr r4, [sp, #0x20]
|
|
ldr r3, [sp, #0x24]
|
|
add r0, sp, #0x28
|
|
add r2, sp, #0x38
|
|
add r1, r5, #0x48
|
|
str ip, [sp, #0x28]
|
|
str r4, [sp, #0x2c]
|
|
str r3, [sp, #0x30]
|
|
bl func_01ff9bf8
|
|
ldr r1, _02181020 ; =0x00000ccd
|
|
ldr r0, [sp, #0x28]
|
|
str r1, [sp, #0x44]
|
|
str r1, [sp, #0x34]
|
|
ldr r4, [r5, #0x6b8]
|
|
mov r3, #0
|
|
str r0, [r4, #0x48]
|
|
ldr r1, [sp, #0x2c]
|
|
ldr r0, _02181024 ; =data_027e0ffc
|
|
str r1, [r4, #0x4c]
|
|
ldr r2, [sp, #0x30]
|
|
ldr r1, _02181028 ; =0x000002c1
|
|
str r2, [r4, #0x50]
|
|
ldr ip, [r5, #0x6b8]
|
|
ldr r4, [sp, #0x38]
|
|
add r2, r5, #0x48
|
|
str r4, [ip, #0x7c]
|
|
ldr r4, [sp, #0x3c]
|
|
str r4, [ip, #0x80]
|
|
ldr r4, [sp, #0x40]
|
|
str r4, [ip, #0x84]
|
|
ldr r4, [sp, #0x44]
|
|
str r4, [ip, #0x88]
|
|
str r3, [sp]
|
|
ldr r3, [r5, #8]
|
|
bl func_ov00_020cec60
|
|
ldr r0, [r5, #0x360]
|
|
add r0, r5, r0, lsl #2
|
|
ldr r0, [r0, #0x358]
|
|
cmp r0, #0x1b
|
|
bne _02180f04
|
|
ldr r0, [r5, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
beq _02180f04
|
|
add r0, r5, #0x158
|
|
mov r1, #0xc
|
|
bl func_ov36_0217ca34
|
|
_02180f04:
|
|
add r0, r5, #0x800
|
|
ldrsh r0, [r0, #0x86]
|
|
cmp r0, #0
|
|
addne sp, sp, #0x48
|
|
ldmneia sp!, {r4, r5, r6, pc}
|
|
add r0, r5, #0x2ac
|
|
add r1, r5, #0x2b4
|
|
add r6, r0, #0x400
|
|
add r4, r1, #0x400
|
|
cmp r6, r4
|
|
beq _02180f44
|
|
_02180f30:
|
|
mov r0, r6
|
|
bl func_ov00_020b7e6c
|
|
add r6, r6, #4
|
|
cmp r6, r4
|
|
bne _02180f30
|
|
_02180f44:
|
|
ldr r1, [r5, #0x818]
|
|
mvn r0, #0
|
|
cmp r1, r0
|
|
beq _02181000
|
|
ldr r0, _0218102c ; =data_027e0fe4
|
|
add r1, r5, #0x18
|
|
ldr r0, [r0]
|
|
add r1, r1, #0x800
|
|
bl func_ov00_020c3674
|
|
movs r4, r0
|
|
beq _02181000
|
|
ldrh r1, [r4, #0x78]
|
|
ldr r2, _02181030 ; =data_02050f54
|
|
mov r0, #0x800
|
|
mov r1, r1, asr #0x4
|
|
mov ip, r1, lsl #0x1
|
|
mov r1, ip, lsl #0x1
|
|
ldrsh r3, [r2, r1]
|
|
add r1, ip, #1
|
|
mov r1, r1, lsl #0x1
|
|
ldrsh r2, [r2, r1]
|
|
mov r1, r3, asr #0x1f
|
|
mov ip, r1, lsl #0xb
|
|
mov r1, r2, asr #0x1f
|
|
mov r1, r1, lsl #0xb
|
|
adds lr, r0, r3, lsl #11
|
|
orr ip, ip, r3, lsr #21
|
|
adc r3, ip, #0
|
|
mov ip, lr, lsr #0xc
|
|
orr ip, ip, r3, lsl #20
|
|
adds r0, r0, r2, lsl #11
|
|
orr r1, r1, r2, lsr #21
|
|
mov r3, r0, lsr #0xc
|
|
adc r1, r1, #0
|
|
orr r3, r3, r1, lsl #20
|
|
str ip, [r4, #0x60]
|
|
mov r2, #0
|
|
str r2, [r4, #0x64]
|
|
add r0, sp, #4
|
|
add r1, r5, #0x178
|
|
str r3, [r4, #0x68]
|
|
bl func_ov36_0217c630
|
|
add r1, sp, #4
|
|
mov r0, r4
|
|
bl func_ov14_02120c98
|
|
mov r0, #1
|
|
strb r0, [r4, #0x1b5]
|
|
_02181000:
|
|
mvn r2, #0
|
|
str r2, [r5, #0x818]
|
|
mov r0, r5
|
|
mov r1, #0x15
|
|
str r2, [r5, #0x81c]
|
|
bl func_ov36_0217d6bc
|
|
add sp, sp, #0x48
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02180e24
|
|
_02181020: .word 0x00000ccd
|
|
_02181024: .word data_027e0ffc
|
|
_02181028: .word 0x000002c1
|
|
_0218102c: .word data_027e0fe4
|
|
_02181030: .word data_02050f54
|
|
|
|
.global func_ov36_02181034
|
|
arm_func_start func_ov36_02181034
|
|
func_ov36_02181034: ; 0x02181034
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
mov r4, r0
|
|
add r0, r4, #0x2ac
|
|
add r1, r4, #0x2b4
|
|
add r6, r0, #0x400
|
|
add r5, r1, #0x400
|
|
cmp r6, r5
|
|
beq _02181068
|
|
_02181054:
|
|
mov r0, r6
|
|
bl func_ov00_020b7e6c
|
|
add r6, r6, #4
|
|
cmp r6, r5
|
|
bne _02181054
|
|
_02181068:
|
|
ldr r1, [r4, #0x878]
|
|
mov r0, #0
|
|
orr r1, r1, #0x8000
|
|
bic r1, r1, #0x200000
|
|
str r1, [r4, #0x878]
|
|
str r0, [r4, #0x12c]
|
|
strb r0, [r4, #0x8a4]
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
arm_func_end func_ov36_02181034
|
|
|
|
.global func_ov36_0218108c
|
|
arm_func_start func_ov36_0218108c
|
|
func_ov36_0218108c: ; 0x0218108c
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0x118
|
|
mov r4, r0
|
|
ldr r2, [r4, #0x878]
|
|
tst r2, #0x200000
|
|
beq _02181138
|
|
ldr r1, [r4, #0x168]
|
|
ldr r1, [r1, #0x14]
|
|
cmp r1, #0x4000
|
|
bne _021810d0
|
|
tst r2, #0x40
|
|
beq _021810c8
|
|
mov r1, #0
|
|
bl func_ov36_02185b7c
|
|
b _021810d0
|
|
_021810c8:
|
|
mov r1, #1
|
|
bl func_ov36_02185b7c
|
|
_021810d0:
|
|
ldr r0, [r4, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
beq _02181128
|
|
ldr r0, _02181540 ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097b9c
|
|
cmp r0, #0
|
|
beq _0218110c
|
|
ldr r0, _02181540 ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097bcc
|
|
_0218110c:
|
|
mvn r2, #0
|
|
mov r0, r4
|
|
mov r1, #0x15
|
|
str r2, [r4, #0x66c]
|
|
bl func_ov36_0217d6bc
|
|
add sp, sp, #0x118
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02181128:
|
|
mov r0, #0
|
|
add sp, sp, #0x118
|
|
str r0, [r4, #0x138]
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02181138:
|
|
ldr r1, [r4, #0x138]
|
|
cmp r1, #0x1e
|
|
addlt sp, sp, #0x118
|
|
ldmltia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
bl func_ov00_020c198c
|
|
cmp r0, #0
|
|
beq _0218116c
|
|
ldr r0, _02181544 ; =data_027e0fb4
|
|
ldr r0, [r0]
|
|
ldr r0, [r0]
|
|
sub r0, r0, #9
|
|
cmp r0, #1
|
|
bhi _021811a4
|
|
_0218116c:
|
|
ldr r0, _02181540 ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097b9c
|
|
cmp r0, #0
|
|
beq _02181194
|
|
ldr r0, _02181540 ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097bcc
|
|
_02181194:
|
|
mvn r0, #0
|
|
add sp, sp, #0x118
|
|
str r0, [r4, #0x66c]
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_021811a4:
|
|
ldr r1, [r4, #0x66c]
|
|
mvn r0, #0
|
|
cmp r1, r0
|
|
bne _02181454
|
|
add r0, r4, #0x100
|
|
ldrsh r0, [r0, #0x20]
|
|
cmp r0, #1
|
|
ble _02181454
|
|
add r0, sp, #0x68
|
|
bl func_ov00_0209a4f4
|
|
mvn r5, #0
|
|
mov r3, #0x32
|
|
mov r2, #2
|
|
mov r1, #3
|
|
ldr r0, _02181548 ; =data_027e0f64
|
|
str r5, [sp, #0x6c]
|
|
strb r3, [sp, #0x71]
|
|
strb r2, [sp, #0x72]
|
|
strb r1, [sp, #0x73]
|
|
ldr r1, [r4, #0x48]
|
|
ldr r0, [r0]
|
|
str r1, [sp, #0x88]
|
|
ldr r2, [r4, #0x4c]
|
|
add r1, sp, #0
|
|
str r2, [sp, #0x8c]
|
|
ldr r2, [r4, #0x50]
|
|
str r2, [sp, #0x90]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02087d34
|
|
mov sl, #0
|
|
ldr r3, _0218154c ; =0x000004cd
|
|
ldr r2, _02181550 ; =0x00001e84
|
|
ldr r1, _02181554 ; =0x0000038e
|
|
mov r5, #0x19000
|
|
ldr r0, [sp]
|
|
str r5, [sp, #0x18]
|
|
str sl, [sp, #0x24]
|
|
str r3, [sp, #0x20]
|
|
str sl, [sp, #0x1c]
|
|
str r2, [sp, #0x10]
|
|
str sl, [sp, #0x14]
|
|
str r1, [sp, #0xc]
|
|
str r0, [r4, #0x6e4]
|
|
ldr r0, [sp, #4]
|
|
str r0, [r4, #0x6e8]
|
|
ldr r0, [sp, #8]
|
|
str r0, [r4, #0x6ec]
|
|
ldr r0, [sp, #0xc]
|
|
str r0, [r4, #0x6f0]
|
|
ldr r0, [sp, #0x10]
|
|
str r0, [r4, #0x6f4]
|
|
ldr r0, [sp, #0x14]
|
|
str r0, [r4, #0x6f8]
|
|
ldr r0, [sp, #0x18]
|
|
str r0, [r4, #0x6fc]
|
|
ldr r0, [sp, #0x1c]
|
|
str r0, [r4, #0x700]
|
|
ldr r0, [sp, #0x20]
|
|
str r0, [r4, #0x704]
|
|
ldr r0, [sp, #0x24]
|
|
str r0, [r4, #0x708]
|
|
ldr r0, [sp, #0x28]
|
|
str r0, [r4, #0x70c]
|
|
ldr r0, [sp, #0x2c]
|
|
str r0, [r4, #0x710]
|
|
ldr r0, [sp, #0x30]
|
|
str r0, [r4, #0x714]
|
|
ldr r0, [sp, #0x34]
|
|
str r0, [r4, #0x718]
|
|
ldr r0, [sp, #0x38]
|
|
str r0, [r4, #0x71c]
|
|
ldr r0, [sp, #0x3c]
|
|
str r0, [r4, #0x720]
|
|
ldr r0, [sp, #0x40]
|
|
str r0, [r4, #0x724]
|
|
ldr r0, [sp, #0x44]
|
|
str r0, [r4, #0x728]
|
|
ldr r0, [sp, #0x48]
|
|
str r0, [r4, #0x72c]
|
|
ldr r0, [sp, #0x4c]
|
|
str r0, [r4, #0x730]
|
|
ldr r0, [sp, #0x50]
|
|
str r0, [r4, #0x734]
|
|
ldr r0, [sp, #0x54]
|
|
str r0, [r4, #0x738]
|
|
ldr r0, [sp, #0x58]
|
|
str r0, [r4, #0x73c]
|
|
ldr r0, [sp, #0x5c]
|
|
str r0, [r4, #0x740]
|
|
ldrb r0, [sp, #0x60]
|
|
strb r0, [r4, #0x744]
|
|
ldrb r0, [sp, #0x61]
|
|
strb r0, [r4, #0x745]
|
|
ldrb r0, [sp, #0x62]
|
|
strb r0, [r4, #0x746]
|
|
ldrb r0, [sp, #0x63]
|
|
strb r0, [r4, #0x747]
|
|
ldrb r0, [sp, #0x64]
|
|
strb r0, [r4, #0x748]
|
|
ldr r2, [sp]
|
|
ldr r1, [sp, #4]
|
|
ldr r0, [sp, #8]
|
|
str r2, [sp, #0x94]
|
|
str r1, [sp, #0x98]
|
|
str r0, [sp, #0x9c]
|
|
ldr r0, [sp, #0x1c]
|
|
ldr r8, [sp, #0xc]
|
|
ldr r7, [sp, #0x10]
|
|
ldr r6, [sp, #0x14]
|
|
str r0, [sp, #0xb0]
|
|
ldr r0, [sp, #0x34]
|
|
ldr r1, [sp, #0x18]
|
|
ldr sb, [sp, #0x20]
|
|
str r8, [sp, #0xa0]
|
|
ldr r8, [sp, #0x24]
|
|
str r7, [sp, #0xa4]
|
|
ldr r7, [sp, #0x28]
|
|
str r6, [sp, #0xa8]
|
|
ldr r6, [sp, #0x2c]
|
|
str r0, [sp, #0xc8]
|
|
ldr r0, [sp, #0x4c]
|
|
str r1, [sp, #0xac]
|
|
ldr r1, [sp, #0x30]
|
|
str sb, [sp, #0xb4]
|
|
ldr sb, [sp, #0x38]
|
|
str r8, [sp, #0xb8]
|
|
ldr r8, [sp, #0x3c]
|
|
str r7, [sp, #0xbc]
|
|
ldr r7, [sp, #0x40]
|
|
str r6, [sp, #0xc0]
|
|
ldr r6, [sp, #0x44]
|
|
ldrb r5, [sp, #0x60]
|
|
ldrb lr, [sp, #0x61]
|
|
ldrb ip, [sp, #0x62]
|
|
ldrb r3, [sp, #0x63]
|
|
ldrb r2, [sp, #0x64]
|
|
str r0, [sp, #0xe0]
|
|
ldr r0, _02181540 ; =data_027e0f74
|
|
str r1, [sp, #0xc4]
|
|
ldr r1, [sp, #0x48]
|
|
str sb, [sp, #0xcc]
|
|
ldr sb, [sp, #0x50]
|
|
str r8, [sp, #0xd0]
|
|
ldr r8, [sp, #0x54]
|
|
str r7, [sp, #0xd4]
|
|
ldr r7, [sp, #0x58]
|
|
str r6, [sp, #0xd8]
|
|
ldr r6, [sp, #0x5c]
|
|
mov fp, #1
|
|
str r1, [sp, #0xdc]
|
|
ldr r0, [r0]
|
|
add r1, sp, #0x68
|
|
str sb, [sp, #0xe4]
|
|
str r8, [sp, #0xe8]
|
|
str r7, [sp, #0xec]
|
|
str r6, [sp, #0xf0]
|
|
strb r5, [sp, #0xf4]
|
|
strb lr, [sp, #0xf5]
|
|
strb ip, [sp, #0xf6]
|
|
strb r3, [sp, #0xf7]
|
|
strb r2, [sp, #0xf8]
|
|
strb fp, [sp, #0x7c]
|
|
strb sl, [sp, #0x7e]
|
|
bl func_ov00_02097810
|
|
str r0, [r4, #0x66c]
|
|
cmp r0, #0
|
|
add r0, sp, #0x68
|
|
bge _02181450
|
|
bl func_ov00_0209a508
|
|
add sp, sp, #0x118
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02181450:
|
|
bl func_ov00_0209a508
|
|
_02181454:
|
|
ldr r0, [r4, #0x878]
|
|
tst r0, #0x40
|
|
add r0, r4, #0x158
|
|
beq _02181470
|
|
mov r1, #0xf
|
|
bl func_ov36_0217c958
|
|
b _02181478
|
|
_02181470:
|
|
mov r1, #0xe
|
|
bl func_ov36_0217c958
|
|
_02181478:
|
|
ldr r0, [r4, #0x878]
|
|
ldr r1, _02181558 ; =data_ov36_02186cd8
|
|
orr r2, r0, #0x200000
|
|
add r0, r4, #0x158
|
|
str r2, [r4, #0x878]
|
|
bl func_ov36_0217c7e8
|
|
mov r2, #0
|
|
str r2, [r4, #0x138]
|
|
add r0, r4, #0x100
|
|
ldrsh r1, [r0, #0x20]
|
|
sub r1, r1, #1
|
|
strh r1, [r0, #0x20]
|
|
ldrsh r0, [r0, #0x20]
|
|
cmp r0, #2
|
|
addeq r0, r4, #0x800
|
|
streqh r2, [r0, #0x82]
|
|
beq _021814c8
|
|
cmp r0, #1
|
|
addeq r0, r4, #0x800
|
|
streqh r2, [r0, #0x84]
|
|
_021814c8:
|
|
add r0, r4, #0x100
|
|
ldrsh r0, [r0, #0x20]
|
|
cmp r0, #0
|
|
bgt _021814ec
|
|
mov r0, r4
|
|
mov r1, #0x16
|
|
bl func_ov36_0217d6bc
|
|
add sp, sp, #0x118
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_021814ec:
|
|
ldr r0, _0218155c ; =data_027e0ffc
|
|
ldr r1, _02181560 ; =0x000002cb
|
|
add r2, r4, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
ldr r0, _0218155c ; =data_027e0ffc
|
|
ldr r1, _02181564 ; =0x000001ad
|
|
add r2, r4, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
ldr r0, _02181568 ; =data_027e1038
|
|
add r1, r4, #0x48
|
|
ldr r0, [r0]
|
|
bl func_ov00_020cef10
|
|
ldr r0, _02181548 ; =data_027e0f64
|
|
mov r1, #2
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02088000
|
|
add sp, sp, #0x118
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0218108c
|
|
_02181540: .word data_027e0f74
|
|
_02181544: .word data_027e0fb4
|
|
_02181548: .word data_027e0f64
|
|
_0218154c: .word 0x000004cd
|
|
_02181550: .word 0x00001e84
|
|
_02181554: .word 0x0000038e
|
|
_02181558: .word data_ov36_02186cd8
|
|
_0218155c: .word data_027e0ffc
|
|
_02181560: .word 0x000002cb
|
|
_02181564: .word 0x000001ad
|
|
_02181568: .word data_027e1038
|
|
|
|
.global func_ov36_0218156c
|
|
arm_func_start func_ov36_0218156c
|
|
func_ov36_0218156c: ; 0x0218156c
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0x118
|
|
mov r4, r0
|
|
bl func_ov00_020c198c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x118
|
|
mov r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
str r0, [r4, #0x12c]
|
|
strb r0, [r4, #0x8a7]
|
|
ldr r0, [r4, #0x878]
|
|
bic r1, r0, #0x80
|
|
bic r0, r1, #0x2000
|
|
str r0, [r4, #0x878]
|
|
tst r0, #0x40
|
|
add r0, r4, #0x158
|
|
beq _021815bc
|
|
mov r1, #0x11
|
|
bl func_ov36_0217c958
|
|
b _021815c4
|
|
_021815bc:
|
|
mov r1, #0x10
|
|
bl func_ov36_0217c958
|
|
_021815c4:
|
|
ldr r1, _02181784 ; =data_ov36_02186cdc
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
mov r1, #0
|
|
add r0, sp, #0x68
|
|
strb r1, [r4, #0x8a4]
|
|
bl func_ov00_0209a4f4
|
|
mov r1, #3
|
|
ldr r0, _02181788 ; =data_027e0f64
|
|
mvn r3, #0
|
|
mov r2, #0x32
|
|
ldr r0, [r0]
|
|
str r3, [sp, #0x6c]
|
|
strb r2, [sp, #0x71]
|
|
strb r1, [sp, #0x72]
|
|
strb r1, [sp, #0x73]
|
|
ldr r0, [r0, #4]
|
|
add r1, sp, #0
|
|
bl func_ov00_02087d34
|
|
ldr r0, [r4, #0x130]
|
|
cmp r0, #0x14
|
|
bne _0218164c
|
|
ldr r0, _02181788 ; =data_027e0f64
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
ldr r2, [r0, #4]
|
|
ldr r0, [r2, #0x26c]
|
|
str r0, [sp, #0x88]
|
|
ldr r0, [r2, #0x270]
|
|
str r0, [sp, #0x8c]
|
|
ldr r0, [r2, #0x274]
|
|
str r0, [sp, #0x90]
|
|
strb r1, [sp, #0x7e]
|
|
b _0218166c
|
|
_0218164c:
|
|
ldr r1, [r4, #0x48]
|
|
mov r0, #1
|
|
str r1, [sp, #0x88]
|
|
ldr r1, [r4, #0x4c]
|
|
str r1, [sp, #0x8c]
|
|
ldr r1, [r4, #0x50]
|
|
str r1, [sp, #0x90]
|
|
strb r0, [sp, #0x7e]
|
|
_0218166c:
|
|
ldr r0, [sp, #0x10]
|
|
ldr r8, [sp]
|
|
ldr r7, [sp, #4]
|
|
ldr r6, [sp, #8]
|
|
str r0, [sp, #0xa4]
|
|
ldr r0, [sp, #0x2c]
|
|
ldr r1, [sp, #0xc]
|
|
ldr sl, [sp, #0x14]
|
|
ldr sb, [sp, #0x18]
|
|
str r8, [sp, #0x94]
|
|
ldr r8, [sp, #0x1c]
|
|
str r7, [sp, #0x98]
|
|
ldr r7, [sp, #0x20]
|
|
str r6, [sp, #0x9c]
|
|
ldr r6, [sp, #0x24]
|
|
str r0, [sp, #0xc0]
|
|
ldr r0, [sp, #0x48]
|
|
str r1, [sp, #0xa0]
|
|
ldr r1, [sp, #0x28]
|
|
str sl, [sp, #0xa8]
|
|
ldr sl, [sp, #0x30]
|
|
str sb, [sp, #0xac]
|
|
ldr sb, [sp, #0x34]
|
|
str r8, [sp, #0xb0]
|
|
ldr r8, [sp, #0x38]
|
|
str r7, [sp, #0xb4]
|
|
ldr r7, [sp, #0x3c]
|
|
str r6, [sp, #0xb8]
|
|
ldr r6, [sp, #0x40]
|
|
ldrb r5, [sp, #0x60]
|
|
ldrb lr, [sp, #0x61]
|
|
ldrb ip, [sp, #0x62]
|
|
ldrb r3, [sp, #0x63]
|
|
ldrb r2, [sp, #0x64]
|
|
str r0, [sp, #0xdc]
|
|
ldr r0, _0218178c ; =data_027e0f74
|
|
str r1, [sp, #0xbc]
|
|
ldr r1, [sp, #0x44]
|
|
str sl, [sp, #0xc4]
|
|
ldr sl, [sp, #0x4c]
|
|
str sb, [sp, #0xc8]
|
|
ldr sb, [sp, #0x50]
|
|
str r8, [sp, #0xcc]
|
|
ldr r8, [sp, #0x54]
|
|
str r7, [sp, #0xd0]
|
|
ldr r7, [sp, #0x58]
|
|
str r6, [sp, #0xd4]
|
|
ldr r6, [sp, #0x5c]
|
|
mov fp, #1
|
|
str r1, [sp, #0xd8]
|
|
ldr r0, [r0]
|
|
add r1, sp, #0x68
|
|
str sl, [sp, #0xe0]
|
|
str sb, [sp, #0xe4]
|
|
str r8, [sp, #0xe8]
|
|
str r7, [sp, #0xec]
|
|
str r6, [sp, #0xf0]
|
|
strb r5, [sp, #0xf4]
|
|
strb lr, [sp, #0xf5]
|
|
strb ip, [sp, #0xf6]
|
|
strb r3, [sp, #0xf7]
|
|
strb r2, [sp, #0xf8]
|
|
strb fp, [sp, #0x7c]
|
|
bl func_ov00_02097810
|
|
str r0, [r4, #0x66c]
|
|
add r0, sp, #0x68
|
|
bl func_ov00_0209a508
|
|
mov r0, fp
|
|
add sp, sp, #0x118
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0218156c
|
|
_02181784: .word data_ov36_02186cdc
|
|
_02181788: .word data_027e0f64
|
|
_0218178c: .word data_027e0f74
|
|
|
|
.global func_ov36_02181790
|
|
arm_func_start func_ov36_02181790
|
|
func_ov36_02181790: ; 0x02181790
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldr r0, [r4, #0x138]
|
|
cmp r0, #0x1e
|
|
bne _021817b0
|
|
ldr r1, _021818a0 ; =data_ov36_02186ce0
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
_021817b0:
|
|
ldr r0, _021818a4 ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097b9c
|
|
cmp r0, #0
|
|
beq _02181848
|
|
ldr r0, [r4, #0x168]
|
|
mov r1, #0x31000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
beq _021817f4
|
|
ldr r0, _021818a8 ; =data_027e0ffc
|
|
ldr r1, _021818ac ; =0x000002c6
|
|
add r2, r4, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
_021817f4:
|
|
ldr r0, [r4, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r4, pc}
|
|
ldr r0, _021818a4 ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097b9c
|
|
cmp r0, #0
|
|
beq _02181830
|
|
ldr r0, _021818a4 ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097bcc
|
|
_02181830:
|
|
mvn r2, #0
|
|
add r0, r4, #0x158
|
|
mov r1, #1
|
|
str r2, [r4, #0x66c]
|
|
bl func_ov36_0217c958
|
|
ldmia sp!, {r4, pc}
|
|
_02181848:
|
|
ldr r0, _021818b0 ; =data_027e0f64
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02089a2c
|
|
cmp r0, #0
|
|
ldmneia sp!, {r4, pc}
|
|
add r1, r4, #0x800
|
|
mov r2, #0x1e
|
|
strh r2, [r1, #0x7e]
|
|
mov r0, r4
|
|
mov r1, #2
|
|
bl func_ov36_0217d6bc
|
|
ldr r0, [r4, #0x878]
|
|
tst r0, #0x8000
|
|
ldmeqia sp!, {r4, pc}
|
|
add r0, r4, #0x800
|
|
mov r1, #0x3c
|
|
strh r1, [r0, #0x8c]
|
|
ldr r0, [r4, #0x878]
|
|
bic r0, r0, #0x8000
|
|
str r0, [r4, #0x878]
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02181790
|
|
_021818a0: .word data_ov36_02186ce0
|
|
_021818a4: .word data_027e0f74
|
|
_021818a8: .word data_027e0ffc
|
|
_021818ac: .word 0x000002c6
|
|
_021818b0: .word data_027e0f64
|
|
|
|
.global func_ov36_021818b4
|
|
arm_func_start func_ov36_021818b4
|
|
func_ov36_021818b4: ; 0x021818b4
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0x118
|
|
ldr r1, _02181b80 ; =data_027e103c
|
|
mov r4, r0
|
|
ldr r0, [r1]
|
|
mov r1, #0
|
|
bl func_ov00_020cfde4
|
|
add r0, r4, #0x2ac
|
|
add r1, r4, #0x2b4
|
|
add r6, r0, #0x400
|
|
add r5, r1, #0x400
|
|
cmp r6, r5
|
|
beq _021818fc
|
|
_021818e8:
|
|
mov r0, r6
|
|
bl func_ov00_020b7e6c
|
|
add r6, r6, #4
|
|
cmp r6, r5
|
|
bne _021818e8
|
|
_021818fc:
|
|
mov r2, #0
|
|
ldr r1, _02181b84 ; =data_027e0d0c
|
|
str r2, [r4, #0x12c]
|
|
add r0, r4, #0x800
|
|
strh r2, [r0, #0x92]
|
|
ldr r0, [r1]
|
|
str r0, [r4, #0x60]
|
|
ldr r0, [r1, #4]
|
|
str r0, [r4, #0x64]
|
|
ldr r0, [r1, #8]
|
|
str r0, [r4, #0x68]
|
|
ldr r0, [r4, #0x878]
|
|
bic r0, r0, #0x200000
|
|
tst r0, #0x40
|
|
movne r1, #0x1a
|
|
str r0, [r4, #0x878]
|
|
moveq r1, #0x19
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217ca34
|
|
ldr r0, _02181b88 ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097bcc
|
|
ldr r0, _02181b8c ; =data_ov00_020eec68
|
|
mov r1, #5
|
|
bl func_ov00_020d716c
|
|
add r0, sp, #0x68
|
|
bl func_ov00_0209a4f4
|
|
mov r0, #2
|
|
mov r1, #3
|
|
mvn r3, #0
|
|
mov r2, #0x32
|
|
strb r2, [sp, #0x71]
|
|
str r3, [sp, #0x6c]
|
|
strb r0, [sp, #0x74]
|
|
strb r0, [sp, #0x75]
|
|
strb r1, [sp, #0x72]
|
|
strb r1, [sp, #0x73]
|
|
ldr r1, [r4, #0x14]
|
|
ldr r0, _02181b90 ; =data_027e0f64
|
|
str r1, [r4, #0x48]
|
|
ldr r1, [r4, #0x18]
|
|
mov r2, #1
|
|
str r1, [r4, #0x4c]
|
|
ldr r3, [r4, #0x1c]
|
|
add r1, sp, #0
|
|
str r3, [r4, #0x50]
|
|
ldrsh r3, [r4, #0x12]
|
|
strh r3, [r4, #0x78]
|
|
ldr r3, [r4, #0x48]
|
|
ldr r0, [r0]
|
|
str r3, [sp, #0x88]
|
|
ldr r3, [r4, #0x4c]
|
|
str r3, [sp, #0x8c]
|
|
ldr r3, [r4, #0x50]
|
|
str r3, [sp, #0x90]
|
|
strb r2, [sp, #0x7e]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02087d34
|
|
mov r0, #0
|
|
mov r1, #0x1800
|
|
sub r6, r1, #0x2800
|
|
ldr r5, _02181b94 ; =0x0000038e
|
|
ldr r3, _02181b98 ; =0x00000dac
|
|
ldr r2, [sp, #4]
|
|
str r1, [sp, #0x20]
|
|
str r1, [sp, #0xb4]
|
|
mov r1, #0x26000
|
|
str r2, [sp, #0x98]
|
|
ldr r2, [sp, #0x28]
|
|
str r1, [sp, #0x18]
|
|
str r1, [sp, #0xac]
|
|
ldr r1, [sp]
|
|
str r2, [sp, #0xbc]
|
|
str r1, [sp, #0x94]
|
|
ldr r1, [sp, #8]
|
|
ldr r2, [sp, #0x30]
|
|
str r1, [sp, #0x9c]
|
|
ldr r1, [sp, #0x2c]
|
|
str r2, [sp, #0xc4]
|
|
str r1, [sp, #0xc0]
|
|
ldr r1, [sp, #0x34]
|
|
ldr r2, [sp, #0x38]
|
|
str r1, [sp, #0xc8]
|
|
ldr r1, [sp, #0x3c]
|
|
str r0, [sp, #0x24]
|
|
str r6, [sp, #0x1c]
|
|
str r6, [sp, #0xb0]
|
|
str r2, [sp, #0xcc]
|
|
str r5, [sp, #0xc]
|
|
str r3, [sp, #0x10]
|
|
str r0, [sp, #0x14]
|
|
str r5, [sp, #0xa0]
|
|
str r3, [sp, #0xa4]
|
|
str r0, [sp, #0xa8]
|
|
str r0, [sp, #0xb8]
|
|
str r1, [sp, #0xd0]
|
|
ldr r0, [sp, #0x48]
|
|
ldr r6, [sp, #0x40]
|
|
ldrb r5, [sp, #0x60]
|
|
ldrb lr, [sp, #0x61]
|
|
ldrb ip, [sp, #0x62]
|
|
ldrb r3, [sp, #0x63]
|
|
ldrb r2, [sp, #0x64]
|
|
str r0, [sp, #0xdc]
|
|
ldr r0, _02181b88 ; =data_027e0f74
|
|
ldr r1, [sp, #0x44]
|
|
ldr sl, [sp, #0x4c]
|
|
ldr sb, [sp, #0x50]
|
|
ldr r8, [sp, #0x54]
|
|
ldr r7, [sp, #0x58]
|
|
str r6, [sp, #0xd4]
|
|
ldr r6, [sp, #0x5c]
|
|
mov fp, #1
|
|
str r1, [sp, #0xd8]
|
|
ldr r0, [r0]
|
|
add r1, sp, #0x68
|
|
str sl, [sp, #0xe0]
|
|
str sb, [sp, #0xe4]
|
|
str r8, [sp, #0xe8]
|
|
str r7, [sp, #0xec]
|
|
str r6, [sp, #0xf0]
|
|
strb r5, [sp, #0xf4]
|
|
strb lr, [sp, #0xf5]
|
|
strb ip, [sp, #0xf6]
|
|
strb r3, [sp, #0xf7]
|
|
strb r2, [sp, #0xf8]
|
|
strb fp, [sp, #0x7c]
|
|
bl func_ov00_02097810
|
|
str r0, [r4, #0x66c]
|
|
ldr r1, [r4, #0x168]
|
|
mov r2, #0
|
|
ldr r0, _02181b9c ; =data_027e0fc8
|
|
str r2, [r1, #0x10]
|
|
ldr r0, [r0]
|
|
bl func_ov00_020bc46c
|
|
cmp r0, #1
|
|
bne _02181b40
|
|
ldr r0, _02181b9c ; =data_027e0fc8
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
mov r2, fp
|
|
ldr r3, [r0]
|
|
ldr r3, [r3, #0x7c]
|
|
blx r3
|
|
_02181b40:
|
|
ldr r0, _02181ba0 ; =data_027e0f90
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
bl func_ov00_020a7b10
|
|
ldr r1, [r4, #0x6b4]
|
|
mov r2, #0
|
|
strb r2, [r1, #0x11a]
|
|
ldr r0, _02181ba4 ; =data_027e0e58
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
bl func_ov00_0207c5d4
|
|
add r0, sp, #0x68
|
|
bl func_ov00_0209a508
|
|
mov r0, #1
|
|
add sp, sp, #0x118
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_021818b4
|
|
_02181b80: .word data_027e103c
|
|
_02181b84: .word data_027e0d0c
|
|
_02181b88: .word data_027e0f74
|
|
_02181b8c: .word data_ov00_020eec68
|
|
_02181b90: .word data_027e0f64
|
|
_02181b94: .word 0x0000038e
|
|
_02181b98: .word 0x00000dac
|
|
_02181b9c: .word data_027e0fc8
|
|
_02181ba0: .word data_027e0f90
|
|
_02181ba4: .word data_027e0e58
|
|
|
|
.global func_ov36_02181ba8
|
|
arm_func_start func_ov36_02181ba8
|
|
func_ov36_02181ba8: ; 0x02181ba8
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #0x14
|
|
mov r4, r0
|
|
ldr r0, [r4, #0x878]
|
|
tst r0, #0x200000
|
|
bne _02181dc8
|
|
ldr r1, [r4, #0x168]
|
|
ldr r0, [r1, #0x10]
|
|
cmp r0, #0
|
|
bne _02181c58
|
|
ldr r0, _02181f08 ; =data_027e0f74
|
|
ldr r0, [r0]
|
|
bl func_ov00_0209809c
|
|
cmp r0, #0
|
|
addne sp, sp, #0x14
|
|
ldmneia sp!, {r3, r4, pc}
|
|
ldr r0, [r4, #0x168]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
ldr lr, [r4, #0x168]
|
|
ldr r0, _02181f0c ; =data_027e0ffc
|
|
ldrh r3, [lr, #0xe]
|
|
ldr r1, _02181f10 ; =0x000002cb
|
|
add r2, r4, #0x48
|
|
bic ip, r3, #0xc
|
|
mov r3, #0
|
|
strh ip, [lr, #0xe]
|
|
bl func_ov00_020ceacc
|
|
ldr r0, _02181f0c ; =data_027e0ffc
|
|
ldr r1, _02181f14 ; =0x000001ad
|
|
add r2, r4, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
ldr r0, _02181f18 ; =data_027e1038
|
|
add r1, r4, #0x48
|
|
ldr r0, [r0]
|
|
bl func_ov00_020cef10
|
|
ldr r0, _02181f1c ; =data_027e0f64
|
|
mov r1, #2
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02088000
|
|
add sp, sp, #0x14
|
|
ldmia sp!, {r3, r4, pc}
|
|
_02181c58:
|
|
add r0, r1, #0xc
|
|
mov r1, #0x4000
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
beq _02181c94
|
|
ldr r0, [r4, #0x878]
|
|
tst r0, #0x40
|
|
mov r0, r4
|
|
beq _02181c88
|
|
mov r1, #0
|
|
bl func_ov36_02185b7c
|
|
b _02181d40
|
|
_02181c88:
|
|
mov r1, #1
|
|
bl func_ov36_02185b7c
|
|
b _02181d40
|
|
_02181c94:
|
|
ldr r0, [r4, #0x168]
|
|
mov r1, #0x37000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
beq _02181cbc
|
|
ldr r1, _02181f20 ; =data_ov36_02186ce4
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
b _02181d40
|
|
_02181cbc:
|
|
ldr r0, [r4, #0x168]
|
|
mov r1, #0x3f000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
beq _02181d40
|
|
ldr r0, [r4, #0x4c]
|
|
ldr r2, [r4, #0x50]
|
|
ldr r1, [r4, #0x48]
|
|
add r0, r0, #0xcd
|
|
add r0, r0, #0x400
|
|
str r1, [sp, #8]
|
|
str r0, [sp, #0xc]
|
|
str r2, [sp, #0x10]
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r0, _02181f24 ; =data_027e0e58
|
|
add r2, sp, #8
|
|
ldr r0, [r0]
|
|
mov r1, #0x11
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
ldr r0, _02181f1c ; =data_027e0f64
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02088000
|
|
ldr r0, _02181f0c ; =data_027e0ffc
|
|
ldr r1, _02181f28 ; =0x000002c7
|
|
add r2, r4, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
_02181d40:
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217cc84
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x14
|
|
ldmeqia sp!, {r3, r4, pc}
|
|
ldr r0, [r4, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x14
|
|
ldmeqia sp!, {r3, r4, pc}
|
|
ldr r1, [r4, #0x878]
|
|
add r0, r4, #0x6c0
|
|
orr r1, r1, #0x200000
|
|
str r1, [r4, #0x878]
|
|
blx func_0202ab54
|
|
mov r0, #1
|
|
mov r1, #0x1e
|
|
str r0, [r4, #0x6c0]
|
|
mov r0, #0
|
|
str r0, [r4, #0x6c8]
|
|
mov ip, #2
|
|
mov r3, r1
|
|
add r0, r4, #0x6c0
|
|
mov r2, #0xa
|
|
str ip, [sp]
|
|
blx func_0202ac0c
|
|
ldr r0, _02181f2c ; =data_027e071c
|
|
add r1, r4, #0x6c0
|
|
bl func_0202d77c
|
|
mov r0, #0
|
|
add sp, sp, #0x14
|
|
str r0, [r4, #0x138]
|
|
ldmia sp!, {r3, r4, pc}
|
|
_02181dc8:
|
|
ldr r0, _02181f2c ; =data_027e071c
|
|
bl func_0202d7ac
|
|
cmp r0, #0
|
|
bne _02181e34
|
|
ldr r0, _02181f30 ; =data_027e0e60
|
|
mov r1, #2
|
|
ldr r0, [r0]
|
|
mov r2, #1
|
|
bl func_ov00_02084be0
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x14
|
|
ldmeqia sp!, {r3, r4, pc}
|
|
ldr r0, _02181f24 ; =data_027e0e58
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
mov r2, r1
|
|
bl func_ov00_0207c5d4
|
|
mov r0, r4
|
|
bl func_ov00_020c198c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x14
|
|
ldmeqia sp!, {r3, r4, pc}
|
|
mov r0, r4
|
|
mov r1, #0x17
|
|
bl func_ov36_0217d6bc
|
|
add sp, sp, #0x14
|
|
ldmia sp!, {r3, r4, pc}
|
|
_02181e34:
|
|
ldr r0, _02181f08 ; =data_027e0f74
|
|
ldr r1, _02181f34 ; =0x0000011e
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097760
|
|
cmp r0, #0
|
|
ldreq r0, [r4, #0x6c0]
|
|
cmpeq r0, #0
|
|
addne sp, sp, #0x14
|
|
ldmneia sp!, {r3, r4, pc}
|
|
ldr r0, _02181f38 ; =data_027e0f90
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
bl func_ov00_020a7b10
|
|
ldr r0, _02181f24 ; =data_027e0e58
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
mov r2, #0
|
|
bl func_ov00_0207c5d4
|
|
ldr r0, _02181f08 ; =data_027e0f74
|
|
ldr r1, _02181f34 ; =0x0000011e
|
|
ldr r0, [r0]
|
|
mov r2, #1
|
|
bl func_ov00_0209779c
|
|
ldr r0, _02181f08 ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097bcc
|
|
mvn r0, #0
|
|
str r0, [r4, #0x66c]
|
|
ldr r0, _02181f34 ; =0x0000011e
|
|
bl func_ov19_0216e7b0
|
|
ldr r0, _02181f30 ; =data_027e0e60
|
|
mov r1, #3
|
|
ldr r0, [r0]
|
|
mov r2, r1
|
|
bl func_ov00_02084be0
|
|
cmp r0, #0
|
|
addne sp, sp, #0x14
|
|
ldmneia sp!, {r3, r4, pc}
|
|
ldr r0, _02181f30 ; =data_027e0e60
|
|
mov r1, #3
|
|
ldr r0, [r0]
|
|
mov r2, r1
|
|
mov r3, #1
|
|
bl func_ov00_02084b38
|
|
ldr r0, _02181f30 ; =data_027e0e60
|
|
mov r1, #4
|
|
ldr r0, [r0]
|
|
mov r2, #3
|
|
mov r3, #1
|
|
bl func_ov00_02084b38
|
|
add sp, sp, #0x14
|
|
ldmia sp!, {r3, r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02181ba8
|
|
_02181f08: .word data_027e0f74
|
|
_02181f0c: .word data_027e0ffc
|
|
_02181f10: .word 0x000002cb
|
|
_02181f14: .word 0x000001ad
|
|
_02181f18: .word data_027e1038
|
|
_02181f1c: .word data_027e0f64
|
|
_02181f20: .word data_ov36_02186ce4
|
|
_02181f24: .word data_027e0e58
|
|
_02181f28: .word 0x000002c7
|
|
_02181f2c: .word data_027e071c
|
|
_02181f30: .word data_027e0e60
|
|
_02181f34: .word 0x0000011e
|
|
_02181f38: .word data_027e0f90
|
|
|
|
.global func_ov36_02181f3c
|
|
arm_func_start func_ov36_02181f3c
|
|
func_ov36_02181f3c: ; 0x02181f3c
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldr r0, [r4, #0x878]
|
|
mov r1, #3
|
|
orr r2, r0, #0x100000
|
|
str r2, [r4, #0x878]
|
|
ldr r0, _02181fc8 ; =data_027e0e60
|
|
mov r2, r1
|
|
ldr r0, [r0]
|
|
mov r3, #0
|
|
bl func_ov00_02084b38
|
|
ldr r0, _02181fc8 ; =data_027e0e60
|
|
mov r1, #4
|
|
ldr r0, [r0]
|
|
mov r2, #3
|
|
mov r3, #0
|
|
bl func_ov00_02084b38
|
|
mov r2, #0
|
|
ldr r1, _02181fcc ; =data_027e0f64
|
|
strb r2, [r4, #0x8aa]
|
|
ldr r2, [r1]
|
|
add r0, r4, #0x2e4
|
|
add r1, r0, #0x400
|
|
ldr r0, [r2, #4]
|
|
bl func_ov00_02087d34
|
|
mov r0, #0
|
|
str r0, [r4, #0x700]
|
|
str r0, [r4, #0x704]
|
|
str r0, [r4, #0x708]
|
|
mov r0, #3
|
|
strb r0, [r4, #0x8a7]
|
|
mov r0, #4
|
|
strb r0, [r4, #0x8a8]
|
|
mov r0, #1
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02181f3c
|
|
_02181fc8: .word data_027e0e60
|
|
_02181fcc: .word data_027e0f64
|
|
|
|
.global func_ov36_02181fd0
|
|
arm_func_start func_ov36_02181fd0
|
|
func_ov36_02181fd0: ; 0x02181fd0
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
|
|
sub sp, sp, #0x228
|
|
mov r4, r0
|
|
ldrb r0, [r4, #0x8aa]
|
|
cmp r0, #3
|
|
addls pc, pc, r0, lsl #2
|
|
b _02182940
|
|
_02181fec: ; jump table
|
|
b _02181ffc ; case 0
|
|
b _021822b4 ; case 1
|
|
b _021823d4 ; case 2
|
|
b _021825f8 ; case 3
|
|
_02181ffc:
|
|
ldr r0, [r4, #0x138]
|
|
cmp r0, #1
|
|
bne _02182270
|
|
add r0, sp, #0x178
|
|
bl func_ov00_0209a4f4
|
|
mov r0, #2
|
|
mvn r2, #0
|
|
mov r1, #0x32
|
|
str r2, [sp, #0x17c]
|
|
strb r1, [sp, #0x181]
|
|
strb r0, [sp, #0x182]
|
|
strb r0, [sp, #0x183]
|
|
ldr r2, [r4, #0x50]
|
|
ldr r1, [r4, #0x4c]
|
|
ldr r0, [r4, #0x48]
|
|
add r2, r2, #0x2000
|
|
str r0, [r4, #0x844]
|
|
str r1, [r4, #0x848]
|
|
str r2, [r4, #0x84c]
|
|
ldr r0, [r4, #0x844]
|
|
mov r2, #1
|
|
str r0, [sp, #0x198]
|
|
ldr r0, [r4, #0x848]
|
|
mov r3, #0x3e8
|
|
str r0, [sp, #0x19c]
|
|
ldr r0, [r4, #0x84c]
|
|
add r1, r3, #0xfa0
|
|
str r0, [sp, #0x1a0]
|
|
strb r2, [sp, #0x18e]
|
|
ldr r5, [r4, #0x6e4]
|
|
mov r0, #0xf000
|
|
str r5, [r4, #0x74c]
|
|
ldr r5, [r4, #0x6e8]
|
|
str r5, [r4, #0x750]
|
|
ldr r5, [r4, #0x6ec]
|
|
str r5, [r4, #0x754]
|
|
ldr r5, [r4, #0x6f0]
|
|
str r5, [r4, #0x758]
|
|
ldr r5, [r4, #0x6f4]
|
|
str r5, [r4, #0x75c]
|
|
ldr r5, [r4, #0x6f8]
|
|
str r5, [r4, #0x760]
|
|
ldr r5, [r4, #0x6fc]
|
|
str r5, [r4, #0x764]
|
|
ldr r5, [r4, #0x700]
|
|
str r5, [r4, #0x768]
|
|
ldr r5, [r4, #0x704]
|
|
str r5, [r4, #0x76c]
|
|
ldr r5, [r4, #0x708]
|
|
str r5, [r4, #0x770]
|
|
ldr r5, [r4, #0x70c]
|
|
str r5, [r4, #0x774]
|
|
ldr r5, [r4, #0x710]
|
|
str r5, [r4, #0x778]
|
|
ldr r5, [r4, #0x714]
|
|
str r5, [r4, #0x77c]
|
|
ldr r5, [r4, #0x718]
|
|
str r5, [r4, #0x780]
|
|
ldr r5, [r4, #0x71c]
|
|
str r5, [r4, #0x784]
|
|
ldr r5, [r4, #0x720]
|
|
str r5, [r4, #0x788]
|
|
ldr r5, [r4, #0x724]
|
|
str r5, [r4, #0x78c]
|
|
ldr r5, [r4, #0x728]
|
|
str r5, [r4, #0x790]
|
|
ldr r5, [r4, #0x72c]
|
|
str r5, [r4, #0x794]
|
|
ldr r5, [r4, #0x730]
|
|
str r5, [r4, #0x798]
|
|
ldr r5, [r4, #0x734]
|
|
str r5, [r4, #0x79c]
|
|
ldr r5, [r4, #0x738]
|
|
str r5, [r4, #0x7a0]
|
|
ldr r5, [r4, #0x73c]
|
|
str r5, [r4, #0x7a4]
|
|
ldr r5, [r4, #0x740]
|
|
str r5, [r4, #0x7a8]
|
|
ldrb r5, [r4, #0x744]
|
|
strb r5, [r4, #0x7ac]
|
|
ldrb r5, [r4, #0x745]
|
|
strb r5, [r4, #0x7ad]
|
|
ldrb r5, [r4, #0x746]
|
|
strb r5, [r4, #0x7ae]
|
|
ldrb r5, [r4, #0x747]
|
|
strb r5, [r4, #0x7af]
|
|
ldrb r5, [r4, #0x748]
|
|
strb r5, [r4, #0x7b0]
|
|
str r3, [r4, #0x758]
|
|
str r1, [r4, #0x75c]
|
|
str r0, [r4, #0x764]
|
|
ldr r0, [r4, #0x74c]
|
|
str r0, [sp, #0x1a4]
|
|
ldr r0, [r4, #0x750]
|
|
str r0, [sp, #0x1a8]
|
|
ldr r0, [r4, #0x754]
|
|
str r0, [sp, #0x1ac]
|
|
ldr r0, [r4, #0x758]
|
|
str r0, [sp, #0x1b0]
|
|
ldr r1, [r4, #0x75c]
|
|
ldr r0, _02182948 ; =data_027e0f74
|
|
str r1, [sp, #0x1b4]
|
|
ldr r1, [r4, #0x760]
|
|
ldr r0, [r0]
|
|
str r1, [sp, #0x1b8]
|
|
ldr r3, [r4, #0x764]
|
|
add r1, sp, #0x178
|
|
str r3, [sp, #0x1bc]
|
|
ldr r3, [r4, #0x768]
|
|
str r3, [sp, #0x1c0]
|
|
ldr r3, [r4, #0x76c]
|
|
str r3, [sp, #0x1c4]
|
|
ldr r3, [r4, #0x770]
|
|
str r3, [sp, #0x1c8]
|
|
ldr r3, [r4, #0x774]
|
|
str r3, [sp, #0x1cc]
|
|
ldr r3, [r4, #0x778]
|
|
str r3, [sp, #0x1d0]
|
|
ldr r3, [r4, #0x77c]
|
|
str r3, [sp, #0x1d4]
|
|
ldr r3, [r4, #0x780]
|
|
str r3, [sp, #0x1d8]
|
|
ldr r3, [r4, #0x784]
|
|
str r3, [sp, #0x1dc]
|
|
ldr r3, [r4, #0x788]
|
|
str r3, [sp, #0x1e0]
|
|
ldr r3, [r4, #0x78c]
|
|
str r3, [sp, #0x1e4]
|
|
ldr r3, [r4, #0x790]
|
|
str r3, [sp, #0x1e8]
|
|
ldr r3, [r4, #0x794]
|
|
str r3, [sp, #0x1ec]
|
|
ldr r3, [r4, #0x798]
|
|
str r3, [sp, #0x1f0]
|
|
ldr r3, [r4, #0x79c]
|
|
str r3, [sp, #0x1f4]
|
|
ldr r3, [r4, #0x7a0]
|
|
str r3, [sp, #0x1f8]
|
|
ldr r3, [r4, #0x7a4]
|
|
str r3, [sp, #0x1fc]
|
|
ldr r3, [r4, #0x7a8]
|
|
str r3, [sp, #0x200]
|
|
ldrb r3, [r4, #0x7ac]
|
|
strb r3, [sp, #0x204]
|
|
ldrb r3, [r4, #0x7ad]
|
|
strb r3, [sp, #0x205]
|
|
ldrb r3, [r4, #0x7ae]
|
|
strb r3, [sp, #0x206]
|
|
ldrb r3, [r4, #0x7af]
|
|
strb r3, [sp, #0x207]
|
|
ldrb r3, [r4, #0x7b0]
|
|
strb r3, [sp, #0x208]
|
|
strb r2, [sp, #0x18c]
|
|
bl func_ov00_02097810
|
|
str r0, [r4, #0x66c]
|
|
add r0, sp, #0x178
|
|
bl func_ov00_0209a508
|
|
_02182270:
|
|
ldr r0, _02182948 ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097b9c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x228
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
ldr r0, _0218294c ; =data_027e0f90
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
bl func_ov00_020a7b10
|
|
mov r0, #1
|
|
strb r0, [r4, #0x8aa]
|
|
mov r0, #0
|
|
add sp, sp, #0x228
|
|
str r0, [r4, #0x138]
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
_021822b4:
|
|
ldr r0, [r4, #0x138]
|
|
ldr r1, [r4, #0x50]
|
|
rsb r0, r0, #0x3c
|
|
mov r5, r0, lsl #0xc
|
|
add r0, r4, #0x44
|
|
sub r7, r1, #0x800
|
|
ldr r6, [r4, #0x4c]
|
|
ldr r3, [r4, #0x48]
|
|
add r1, sp, #0x54
|
|
mov r2, r5
|
|
add r0, r0, #0x800
|
|
str r3, [sp, #0x54]
|
|
str r6, [sp, #0x58]
|
|
str r7, [sp, #0x5c]
|
|
bl func_0202b308
|
|
cmp r5, #0x1000
|
|
movle r0, #0x3e8
|
|
ble _02182314
|
|
ldr r0, [r4, #0x758]
|
|
mov r1, r5
|
|
rsb r0, r0, #0x3e8
|
|
bl func_01ff98e0
|
|
ldr r1, [r4, #0x758]
|
|
add r0, r1, r0
|
|
_02182314:
|
|
str r0, [r4, #0x758]
|
|
cmp r5, #0x1000
|
|
ldr r0, _02182950 ; =0x00000bb8
|
|
ble _0218233c
|
|
ldr r2, [r4, #0x75c]
|
|
mov r1, r5
|
|
sub r0, r0, r2
|
|
bl func_01ff98e0
|
|
ldr r1, [r4, #0x75c]
|
|
add r0, r1, r0
|
|
_0218233c:
|
|
str r0, [r4, #0x75c]
|
|
cmp r5, #0x1000
|
|
movle r0, #0xa000
|
|
ble _02182364
|
|
ldr r0, [r4, #0x764]
|
|
mov r1, r5
|
|
rsb r0, r0, #0xa000
|
|
bl func_01ff98e0
|
|
ldr r1, [r4, #0x764]
|
|
add r0, r1, r0
|
|
_02182364:
|
|
str r0, [r4, #0x764]
|
|
ldr r0, [r4, #0x844]
|
|
mov r1, #0
|
|
str r0, [sp, #0x20]
|
|
ldr r0, [r4, #0x848]
|
|
add r2, r4, #0x34c
|
|
str r0, [sp, #0x24]
|
|
ldr r3, [r4, #0x84c]
|
|
ldr r0, _02182954 ; =data_027e0f64
|
|
str r3, [sp, #0x28]
|
|
str r1, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r0, [r0]
|
|
add r3, r2, #0x400
|
|
ldr r0, [r0, #4]
|
|
add r1, sp, #0x20
|
|
mov r2, #2
|
|
bl func_ov00_02089318
|
|
ldr r0, [r4, #0x138]
|
|
cmp r0, #0x3c
|
|
addlt sp, sp, #0x228
|
|
ldmltia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
mov r0, #2
|
|
strb r0, [r4, #0x8aa]
|
|
mov r0, #0
|
|
add sp, sp, #0x228
|
|
str r0, [r4, #0x138]
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
_021823d4:
|
|
ldr r0, [r4, #0x138]
|
|
cmp r0, #0xf
|
|
bne _021823ec
|
|
ldr r1, _02182958 ; =data_ov36_02186ce8
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c7e8
|
|
_021823ec:
|
|
ldr r0, [r4, #0x138]
|
|
cmp r0, #0x1e
|
|
addlt sp, sp, #0x228
|
|
ldmltia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
ldr r0, _0218295c ; =data_ov00_020eec68
|
|
mov r1, #0xca
|
|
mov r2, #0
|
|
mov r3, #0x7f
|
|
bl func_ov00_020d70a4
|
|
mov r0, #3
|
|
strb r0, [r4, #0x8aa]
|
|
mov r0, #0
|
|
str r0, [r4, #0x138]
|
|
ldr r0, _02182948 ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097bcc
|
|
add r0, sp, #0xc8
|
|
bl func_ov00_0209a4f4
|
|
mov r1, #2
|
|
mvn r3, #0
|
|
mov r2, #0x32
|
|
add r0, r4, #0x2e4
|
|
str r3, [sp, #0xcc]
|
|
strb r2, [sp, #0xd1]
|
|
strb r1, [sp, #0xd2]
|
|
strb r1, [sp, #0xd3]
|
|
ldr r3, [r4, #0x50]
|
|
ldr r1, [r4, #0x4c]
|
|
ldr r2, [r4, #0x48]
|
|
add r5, r3, #0x800
|
|
add r3, r1, #0x1000
|
|
mov r1, #1
|
|
str r5, [sp, #0xf0]
|
|
add r6, sp, #0x60
|
|
str r2, [sp, #0xe8]
|
|
str r3, [sp, #0xec]
|
|
strb r1, [sp, #0xde]
|
|
add r7, r0, #0x400
|
|
mov r5, #6
|
|
_0218248c:
|
|
ldmia r7!, {r0, r1, r2, r3}
|
|
stmia r6!, {r0, r1, r2, r3}
|
|
subs r5, r5, #1
|
|
bne _0218248c
|
|
ldmia r7, {r0, r1}
|
|
stmia r6, {r0, r1}
|
|
ldrb r1, [sp, #0xc0]
|
|
ldr r5, [sp, #0x60]
|
|
mov lr, #0x3e8
|
|
strb r1, [sp, #0x154]
|
|
ldr r1, [sp, #0x64]
|
|
str r5, [sp, #0xf4]
|
|
ldr r5, [sp, #0x68]
|
|
str r1, [sp, #0xf8]
|
|
ldr r1, [sp, #0x7c]
|
|
str r5, [sp, #0xfc]
|
|
ldr r5, [sp, #0x80]
|
|
str r1, [sp, #0x110]
|
|
ldr r1, [sp, #0x84]
|
|
str r5, [sp, #0x114]
|
|
ldr r5, [sp, #0x88]
|
|
str r1, [sp, #0x118]
|
|
ldr r1, [sp, #0x8c]
|
|
str r5, [sp, #0x11c]
|
|
mov ip, #0xfa0
|
|
mov r3, #0
|
|
mov r2, #0x19000
|
|
ldr r5, [sp, #0x90]
|
|
str r1, [sp, #0x120]
|
|
ldr r1, [sp, #0x94]
|
|
str r5, [sp, #0x124]
|
|
ldr r5, [sp, #0x98]
|
|
str r1, [sp, #0x128]
|
|
ldr r1, [sp, #0x9c]
|
|
str r5, [sp, #0x12c]
|
|
ldr r5, [sp, #0xa0]
|
|
str r1, [sp, #0x130]
|
|
ldr r1, [sp, #0xa4]
|
|
str r5, [sp, #0x134]
|
|
ldr r5, [sp, #0xa8]
|
|
str r1, [sp, #0x138]
|
|
ldr r1, [sp, #0xac]
|
|
str r5, [sp, #0x13c]
|
|
ldr r5, [sp, #0xb0]
|
|
str r1, [sp, #0x140]
|
|
ldr r1, [sp, #0xb4]
|
|
ldrb sb, [sp, #0xc1]
|
|
ldrb r8, [sp, #0xc2]
|
|
ldrb r7, [sp, #0xc3]
|
|
ldrb r6, [sp, #0xc4]
|
|
ldr r0, _02182948 ; =data_027e0f74
|
|
str r5, [sp, #0x144]
|
|
ldr r5, [sp, #0xb8]
|
|
str r1, [sp, #0x148]
|
|
ldr r1, [sp, #0xbc]
|
|
str r5, [sp, #0x14c]
|
|
mov r5, #1
|
|
str r1, [sp, #0x150]
|
|
ldr r0, [r0]
|
|
add r1, sp, #0xc8
|
|
strb sb, [sp, #0x155]
|
|
str lr, [sp, #0x6c]
|
|
str ip, [sp, #0x70]
|
|
str r3, [sp, #0x74]
|
|
str r2, [sp, #0x78]
|
|
str lr, [sp, #0x100]
|
|
str ip, [sp, #0x104]
|
|
str r3, [sp, #0x108]
|
|
str r2, [sp, #0x10c]
|
|
strb r8, [sp, #0x156]
|
|
strb r7, [sp, #0x157]
|
|
strb r6, [sp, #0x158]
|
|
strb r5, [sp, #0xdc]
|
|
bl func_ov00_02097810
|
|
str r0, [r4, #0x66c]
|
|
ldr r0, [r4, #0x878]
|
|
tst r0, #0x40
|
|
add r0, r4, #0x158
|
|
beq _021825d4
|
|
mov r1, #0x11
|
|
bl func_ov36_0217ca34
|
|
b _021825dc
|
|
_021825d4:
|
|
mov r1, #0x10
|
|
bl func_ov36_0217ca34
|
|
_021825dc:
|
|
ldr r1, [r4, #0x878]
|
|
add r0, sp, #0xc8
|
|
bic r1, r1, #0x200000
|
|
str r1, [r4, #0x878]
|
|
bl func_ov00_0209a508
|
|
add sp, sp, #0x228
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
_021825f8:
|
|
ldr r0, [r4, #0x878]
|
|
tst r0, #0x200000
|
|
ldr r0, [r4, #0x168]
|
|
bne _02182654
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x228
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
add r0, r4, #0x158
|
|
mov r1, #0x1f
|
|
bl func_ov36_0217c958
|
|
ldr r0, [r4, #0x580]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
ldr r1, [r4, #0x878]
|
|
add r0, r4, #0x800
|
|
orr r1, r1, #0x200000
|
|
str r1, [r4, #0x878]
|
|
mov r1, #5
|
|
strh r1, [r0, #0x7c]
|
|
add sp, sp, #0x228
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
_02182654:
|
|
mov r1, #0x6f000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
beq _0218278c
|
|
ldr r0, [r4, #0x878]
|
|
ldr r2, _02182960 ; =0x00000333
|
|
orr r0, r0, #0x400000
|
|
str r0, [r4, #0x878]
|
|
sub r0, r2, #0x800
|
|
rsb r1, r2, #0x2000
|
|
str r0, [sp, #0x50]
|
|
str r2, [sp, #0x48]
|
|
str r1, [sp, #0x4c]
|
|
ldrsh r1, [r4, #0x78]
|
|
add r0, sp, #0x48
|
|
bl func_ov00_020a61ac
|
|
ldr r1, [r4, #0x48]
|
|
add r0, sp, #0x48
|
|
str r1, [sp, #0x14]
|
|
ldr r2, [r4, #0x4c]
|
|
add r1, sp, #0x14
|
|
str r2, [sp, #0x18]
|
|
ldr r3, [r4, #0x50]
|
|
mov r2, r0
|
|
str r3, [sp, #0x1c]
|
|
bl func_01ff9bc4
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r0, _02182964 ; =data_027e0e58
|
|
ldr r1, _02182968 ; =0x00001001
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x48
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r0, _02182964 ; =data_027e0e58
|
|
ldr r1, _0218296c ; =0x00001002
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x48
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
ldr r0, _02182970 ; =data_027e0ffc
|
|
ldr r1, _02182974 ; =0x000002d1
|
|
add r2, sp, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
mov r0, #0
|
|
str r0, [sp, #0x48]
|
|
ldr r0, _02182978 ; =0xfffffb33
|
|
ldr r1, _0218297c ; =0x0000199a
|
|
str r0, [sp, #0x50]
|
|
str r1, [sp, #0x4c]
|
|
ldrsh r1, [r4, #0x78]
|
|
add r0, sp, #0x48
|
|
bl func_ov00_020a61ac
|
|
ldr r1, [r4, #0x48]
|
|
add r0, sp, #0x48
|
|
str r1, [sp, #8]
|
|
ldr r2, [r4, #0x4c]
|
|
add r1, sp, #8
|
|
str r2, [sp, #0xc]
|
|
ldr r3, [r4, #0x50]
|
|
mov r2, r0
|
|
str r3, [sp, #0x10]
|
|
bl func_01ff9bc4
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r0, _02182964 ; =data_027e0e58
|
|
ldr r1, _02182980 ; =0x00001003
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x48
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
_0218278c:
|
|
ldr r0, [r4, #0x168]
|
|
mov r1, #0x70000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
beq _021827bc
|
|
ldr r0, _02182954 ; =data_027e0f64
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02088000
|
|
b _021827e8
|
|
_021827bc:
|
|
ldr r0, [r4, #0x168]
|
|
mov r1, #0x92000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
beq _021827e8
|
|
ldr r0, _02182970 ; =data_027e0ffc
|
|
ldr r1, _02182984 ; =0x000002c2
|
|
add r2, r4, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
_021827e8:
|
|
ldr r0, [r4, #0x168]
|
|
ldr r0, [r0, #0x14]
|
|
cmp r0, #0x70000
|
|
blt _02182808
|
|
cmp r0, #0x93000
|
|
ble _02182834
|
|
cmp r0, #0xe3000
|
|
bge _02182834
|
|
_02182808:
|
|
add r0, r4, #0x800
|
|
ldrsh r1, [r0, #0x7c]
|
|
cmp r1, #0
|
|
bne _02182834
|
|
mov r2, #5
|
|
ldr r1, _02182954 ; =data_027e0f64
|
|
strh r2, [r0, #0x7c]
|
|
ldr r0, [r1]
|
|
mov r1, #0xd
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02088000
|
|
_02182834:
|
|
ldr r0, [r4, #0x168]
|
|
mov r1, #0xe3000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
beq _0218287c
|
|
ldr r0, _02182954 ; =data_027e0f64
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02088000
|
|
ldr r0, _02182970 ; =data_027e0ffc
|
|
ldr r1, _02182988 ; =0x000002cd
|
|
add r2, r4, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
mov r0, r4
|
|
bl func_ov36_02185eb8
|
|
_0218287c:
|
|
ldr r0, [r4, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x228
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
ldr r0, _02182948 ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097bcc
|
|
mvn r1, #0
|
|
str r1, [r4, #0x66c]
|
|
ldr r0, _0218294c ; =data_027e0f90
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
bl func_ov00_020a7b10
|
|
mov r3, #0
|
|
mov r0, #0xff
|
|
add r2, sp, #0x2c
|
|
str r3, [sp, #0x2c]
|
|
strb r0, [sp, #0x30]
|
|
strh r3, [sp, #0x40]
|
|
strh r3, [sp, #0x42]
|
|
mov r1, r3
|
|
_021828dc:
|
|
add r0, r2, r3, lsl #1
|
|
add r3, r3, #1
|
|
strh r1, [r0, #0x18]
|
|
cmp r3, #2
|
|
blo _021828dc
|
|
ldr r0, _0218298c ; =data_027e0e60
|
|
add r2, sp, #0x2c
|
|
ldr r0, [r0]
|
|
mov r1, #0x5b
|
|
bl func_ov00_02083918
|
|
cmp r0, #0
|
|
beq _02182934
|
|
ldr r0, _0218298c ; =data_027e0e60
|
|
ldrb r1, [sp, #0x30]
|
|
ldr r0, [r0]
|
|
mov r2, #0
|
|
bl func_ov00_02083948
|
|
ldr r0, _02182954 ; =data_027e0f64
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_0208726c
|
|
_02182934:
|
|
mov r0, r4
|
|
mov r1, #2
|
|
bl func_ov36_0217d6bc
|
|
_02182940:
|
|
add sp, sp, #0x228
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02181fd0
|
|
_02182948: .word data_027e0f74
|
|
_0218294c: .word data_027e0f90
|
|
_02182950: .word 0x00000bb8
|
|
_02182954: .word data_027e0f64
|
|
_02182958: .word data_ov36_02186ce8
|
|
_0218295c: .word data_ov00_020eec68
|
|
_02182960: .word 0x00000333
|
|
_02182964: .word data_027e0e58
|
|
_02182968: .word 0x00001001
|
|
_0218296c: .word 0x00001002
|
|
_02182970: .word data_027e0ffc
|
|
_02182974: .word 0x000002d1
|
|
_02182978: .word 0xfffffb33
|
|
_0218297c: .word 0x0000199a
|
|
_02182980: .word 0x00001003
|
|
_02182984: .word 0x000002c2
|
|
_02182988: .word 0x000002cd
|
|
_0218298c: .word data_027e0e60
|
|
|
|
.global func_ov36_02182990
|
|
arm_func_start func_ov36_02182990
|
|
func_ov36_02182990: ; 0x02182990
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, lr}
|
|
sub sp, sp, #0x124
|
|
ldr r1, _02182c64 ; =data_027e0e60
|
|
mov r4, r0
|
|
ldr r0, [r1]
|
|
mov r1, #0
|
|
bl func_ov00_02083958
|
|
ldr r0, _02182c68 ; =data_027e0f64
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_0208726c
|
|
add r0, r4, #0x2ac
|
|
add r1, r4, #0x2b4
|
|
add r6, r0, #0x400
|
|
add r5, r1, #0x400
|
|
cmp r6, r5
|
|
beq _021829ec
|
|
_021829d8:
|
|
mov r0, r6
|
|
bl func_ov00_020b7e6c
|
|
add r6, r6, #4
|
|
cmp r6, r5
|
|
bne _021829d8
|
|
_021829ec:
|
|
ldr r0, _02182c6c ; =data_027e0ffc
|
|
add r2, r4, #0x48
|
|
mov r1, #0x2cc
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
ldr r0, _02182c70 ; =data_027e0fc8
|
|
ldr r0, [r0]
|
|
ldr r1, [r0]
|
|
ldr r1, [r1, #0x84]
|
|
blx r1
|
|
ldr r0, _02182c74 ; =data_ov00_020eec68
|
|
mov r1, #5
|
|
bl func_ov00_020d716c
|
|
ldr r2, _02182c78 ; =data_027e0d0c
|
|
add r0, r4, #0x158
|
|
ldr r3, [r2]
|
|
mov r1, #0x1c
|
|
str r3, [r4, #0x60]
|
|
ldr r3, [r2, #4]
|
|
str r3, [r4, #0x64]
|
|
ldr r2, [r2, #8]
|
|
str r2, [r4, #0x68]
|
|
ldr r2, [r4, #0x878]
|
|
bic r2, r2, #0x200000
|
|
str r2, [r4, #0x878]
|
|
bl func_ov36_0217ca34
|
|
ldr r0, _02182c7c ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097b9c
|
|
cmp r0, #0
|
|
beq _02182a7c
|
|
ldr r0, _02182c7c ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097bcc
|
|
_02182a7c:
|
|
mvn r1, #0
|
|
add r0, sp, #0x74
|
|
str r1, [r4, #0x66c]
|
|
bl func_ov00_0209a4f4
|
|
mov r1, #3
|
|
mov r0, #2
|
|
mvn r3, #0
|
|
mov r2, #0x32
|
|
str r3, [sp, #0x78]
|
|
strb r2, [sp, #0x7d]
|
|
strb r1, [sp, #0x7e]
|
|
strb r1, [sp, #0x7f]
|
|
strb r0, [sp, #0x80]
|
|
strb r0, [sp, #0x81]
|
|
ldr r0, [r4, #0x14]
|
|
add r6, sp, #0
|
|
str r0, [r4, #0x48]
|
|
ldr r1, [r4, #0x18]
|
|
add r0, r4, #0x48
|
|
str r1, [r4, #0x4c]
|
|
ldr r1, [r4, #0x1c]
|
|
ldr r3, _02182c68 ; =data_027e0f64
|
|
str r1, [r4, #0x50]
|
|
ldrsh r1, [r4, #0x12]
|
|
mov r5, #1
|
|
strh r1, [r4, #0x78]
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r6, {r0, r1, r2}
|
|
ldr r6, [sp]
|
|
ldr r2, [sp, #4]
|
|
ldr r1, [sp, #8]
|
|
ldr r0, [r3]
|
|
str r1, [sp, #0x9c]
|
|
str r6, [sp, #0x94]
|
|
str r2, [sp, #0x98]
|
|
strb r5, [sp, #0x8a]
|
|
ldr r0, [r0, #4]
|
|
add r1, sp, #0xc
|
|
bl func_ov00_02087d34
|
|
mov r5, #0
|
|
mov r3, #0x1800
|
|
ldr r1, _02182c80 ; =0x0000038e
|
|
ldr r0, _02182c84 ; =0x00000dac
|
|
sub r2, r3, #0x2800
|
|
mov r6, #0x26000
|
|
ldr r7, [sp, #0xc]
|
|
ldr r8, [sp, #0x10]
|
|
str r7, [sp, #0xa0]
|
|
ldr r7, [sp, #0x14]
|
|
str r8, [sp, #0xa4]
|
|
ldr r8, [sp, #0x34]
|
|
str r7, [sp, #0xa8]
|
|
ldr r7, [sp, #0x38]
|
|
str r8, [sp, #0xc8]
|
|
ldr r8, [sp, #0x3c]
|
|
str r7, [sp, #0xcc]
|
|
ldr r7, [sp, #0x40]
|
|
str r8, [sp, #0xd0]
|
|
ldr r8, [sp, #0x44]
|
|
str r7, [sp, #0xd4]
|
|
ldr r7, [sp, #0x48]
|
|
str r8, [sp, #0xd8]
|
|
ldr r8, [sp, #0x4c]
|
|
str r7, [sp, #0xdc]
|
|
ldr r7, [sp, #0x50]
|
|
str r8, [sp, #0xe0]
|
|
ldr r8, [sp, #0x54]
|
|
str r7, [sp, #0xe4]
|
|
ldr r7, [sp, #0x58]
|
|
str r8, [sp, #0xe8]
|
|
str r6, [sp, #0x24]
|
|
str r5, [sp, #0x30]
|
|
str r3, [sp, #0x2c]
|
|
str r2, [sp, #0x28]
|
|
str r1, [sp, #0x18]
|
|
str r0, [sp, #0x1c]
|
|
str r5, [sp, #0x20]
|
|
str r1, [sp, #0xac]
|
|
str r0, [sp, #0xb0]
|
|
str r5, [sp, #0xb4]
|
|
str r6, [sp, #0xb8]
|
|
str r2, [sp, #0xbc]
|
|
str r3, [sp, #0xc0]
|
|
str r5, [sp, #0xc4]
|
|
str r7, [sp, #0xec]
|
|
ldrb r6, [sp, #0x6c]
|
|
ldrb r5, [sp, #0x6d]
|
|
ldrb lr, [sp, #0x6e]
|
|
ldrb ip, [sp, #0x6f]
|
|
ldrb r3, [sp, #0x70]
|
|
ldr r0, _02182c7c ; =data_027e0f74
|
|
ldr sl, [sp, #0x5c]
|
|
ldr sb, [sp, #0x60]
|
|
ldr r8, [sp, #0x64]
|
|
ldr r7, [sp, #0x68]
|
|
mov r2, #1
|
|
ldr r0, [r0]
|
|
add r1, sp, #0x74
|
|
str sl, [sp, #0xf0]
|
|
str sb, [sp, #0xf4]
|
|
str r8, [sp, #0xf8]
|
|
str r7, [sp, #0xfc]
|
|
strb r6, [sp, #0x100]
|
|
strb r5, [sp, #0x101]
|
|
strb lr, [sp, #0x102]
|
|
strb ip, [sp, #0x103]
|
|
strb r3, [sp, #0x104]
|
|
strb r2, [sp, #0x88]
|
|
bl func_ov00_02097810
|
|
str r0, [r4, #0x66c]
|
|
mov r0, r4
|
|
bl func_ov00_020c1b18
|
|
mvn r1, #0
|
|
str r1, [r4, #0x88]
|
|
add r0, sp, #0x74
|
|
add r1, r4, #0x100
|
|
mov r2, #0
|
|
strh r2, [r1, #0x20]
|
|
bl func_ov00_0209a508
|
|
mov r0, #1
|
|
add sp, sp, #0x124
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02182990
|
|
_02182c64: .word data_027e0e60
|
|
_02182c68: .word data_027e0f64
|
|
_02182c6c: .word data_027e0ffc
|
|
_02182c70: .word data_027e0fc8
|
|
_02182c74: .word data_ov00_020eec68
|
|
_02182c78: .word data_027e0d0c
|
|
_02182c7c: .word data_027e0f74
|
|
_02182c80: .word 0x0000038e
|
|
_02182c84: .word 0x00000dac
|
|
|
|
.global func_ov36_02182c88
|
|
arm_func_start func_ov36_02182c88
|
|
func_ov36_02182c88: ; 0x02182c88
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #0x14
|
|
ldr r1, _02182df4 ; =data_027e0f90
|
|
mov r4, r0
|
|
ldr r0, [r1]
|
|
mov r1, #0
|
|
bl func_ov00_020a7b10
|
|
ldr r0, [r4, #0x168]
|
|
ldr r0, [r0, #0x14]
|
|
cmp r0, #0xa8000
|
|
bne _02182d20
|
|
ldr r0, [r4, #0x4c]
|
|
ldr r2, [r4, #0x50]
|
|
ldr r1, [r4, #0x48]
|
|
add r0, r0, #0xcd
|
|
add r0, r0, #0x400
|
|
str r1, [sp, #8]
|
|
str r0, [sp, #0xc]
|
|
str r2, [sp, #0x10]
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r0, _02182df8 ; =data_027e0e58
|
|
add r2, sp, #8
|
|
ldr r0, [r0]
|
|
mov r1, #0x11
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
ldr r0, _02182dfc ; =data_027e0f64
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02088000
|
|
ldr r0, _02182e00 ; =data_027e0ffc
|
|
ldr r1, _02182e04 ; =0x000002c7
|
|
add r2, r4, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
_02182d20:
|
|
ldr r0, [r4, #0x168]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
beq _02182de4
|
|
ldr r0, [r4, #0x580]
|
|
mov r1, #0
|
|
str r1, [r0, #0x10]
|
|
str r1, [sp]
|
|
ldr r3, [r4, #8]
|
|
ldr r0, _02182e00 ; =data_027e0ffc
|
|
add r2, r4, #0x48
|
|
mov r1, #0x30c
|
|
bl func_ov00_020cec60
|
|
ldr r0, [r4, #0x138]
|
|
cmp r0, #0x3c
|
|
bgt _02182d94
|
|
mov r0, r0, lsl #0xc
|
|
rsb r0, r0, #0x3c000
|
|
mov r1, #0x3c000
|
|
bl func_01ff98e0
|
|
rsb r2, r0, #0x1000
|
|
mov r0, r4
|
|
str r2, [r4, #0x8e4]
|
|
add r1, r4, #0x1000
|
|
str r2, [r1, #0x9ec]
|
|
bl func_ov36_02185b18
|
|
add sp, sp, #0x14
|
|
ldmia sp!, {r3, r4, pc}
|
|
_02182d94:
|
|
cmp r0, #0x78
|
|
bgt _02182dbc
|
|
ldr r2, _02182e08 ; =0x0000019a
|
|
mov r0, r4
|
|
str r2, [r4, #0x8ec]
|
|
add r1, r4, #0x1000
|
|
str r2, [r1, #0x9f4]
|
|
bl func_ov36_02185b18
|
|
add sp, sp, #0x14
|
|
ldmia sp!, {r3, r4, pc}
|
|
_02182dbc:
|
|
ldr r0, _02182e0c ; =data_027e0fc8
|
|
ldr r0, [r0]
|
|
ldr r1, [r0]
|
|
ldr r1, [r1, #0x84]
|
|
blx r1
|
|
mov r0, r4
|
|
mov r1, #0x19
|
|
bl func_ov36_0217d6bc
|
|
add sp, sp, #0x14
|
|
ldmia sp!, {r3, r4, pc}
|
|
_02182de4:
|
|
mov r0, #0
|
|
str r0, [r4, #0x138]
|
|
add sp, sp, #0x14
|
|
ldmia sp!, {r3, r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02182c88
|
|
_02182df4: .word data_027e0f90
|
|
_02182df8: .word data_027e0e58
|
|
_02182dfc: .word data_027e0f64
|
|
_02182e00: .word data_027e0ffc
|
|
_02182e04: .word 0x000002c7
|
|
_02182e08: .word 0x0000019a
|
|
_02182e0c: .word data_027e0fc8
|
|
|
|
.global func_ov36_02182e10
|
|
arm_func_start func_ov36_02182e10
|
|
func_ov36_02182e10: ; 0x02182e10
|
|
stmdb sp!, {r4, r5, r6, r7, lr}
|
|
sub sp, sp, #0x14
|
|
mov r4, r0
|
|
ldr r0, [r4, #0x4c]
|
|
ldr r2, [r4, #0x50]
|
|
ldr r1, [r4, #0x48]
|
|
add r0, r0, #0xcd
|
|
add r0, r0, #0xc00
|
|
str r1, [sp, #8]
|
|
str r0, [sp, #0xc]
|
|
str r2, [sp, #0x10]
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r0, _02182f64 ; =data_027e0e58
|
|
ldr r1, _02182f68 ; =0x0000100f
|
|
ldr r0, [r0]
|
|
add r2, sp, #8
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r0, _02182f64 ; =data_027e0e58
|
|
ldr r1, _02182f6c ; =0x00001010
|
|
ldr r0, [r0]
|
|
add r2, sp, #8
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r0, _02182f64 ; =data_027e0e58
|
|
ldr r1, _02182f70 ; =0x0000100e
|
|
ldr r0, [r0]
|
|
add r2, sp, #8
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r0, _02182f64 ; =data_027e0e58
|
|
ldr r1, _02182f74 ; =0x00001011
|
|
ldr r0, [r0]
|
|
add r2, sp, #8
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r0, _02182f64 ; =data_027e0e58
|
|
ldr r1, _02182f78 ; =0x00001012
|
|
ldr r0, [r0]
|
|
add r2, sp, #8
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r0, _02182f64 ; =data_027e0e58
|
|
ldr r1, _02182f7c ; =0x00001013
|
|
ldr r0, [r0]
|
|
add r2, sp, #8
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
ldr r5, _02182f64 ; =data_027e0e58
|
|
mov r6, #0
|
|
add r7, r4, #0x670
|
|
_02182f20:
|
|
ldr r0, [r5]
|
|
mov r1, r7
|
|
bl func_ov00_0207c444
|
|
add r6, r6, #1
|
|
cmp r6, #3
|
|
add r7, r7, #0xc
|
|
blt _02182f20
|
|
ldr r0, _02182f80 ; =data_027e0ffc
|
|
ldr r1, _02182f84 ; =0x0000030d
|
|
add r2, r4, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
mov r0, #0
|
|
strb r0, [r4, #0x11a]
|
|
mov r0, #1
|
|
add sp, sp, #0x14
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02182e10
|
|
_02182f64: .word data_027e0e58
|
|
_02182f68: .word 0x0000100f
|
|
_02182f6c: .word 0x00001010
|
|
_02182f70: .word 0x0000100e
|
|
_02182f74: .word 0x00001011
|
|
_02182f78: .word 0x00001012
|
|
_02182f7c: .word 0x00001013
|
|
_02182f80: .word data_027e0ffc
|
|
_02182f84: .word 0x0000030d
|
|
|
|
.global func_ov36_02182f88
|
|
arm_func_start func_ov36_02182f88
|
|
func_ov36_02182f88: ; 0x02182f88
|
|
stmdb sp!, {r4, lr}
|
|
sub sp, sp, #0x18
|
|
ldr r2, _02183064 ; =0x0000099a
|
|
mov r3, #0
|
|
sub r1, r2, #0x1000
|
|
mov r4, r0
|
|
str r3, [sp, #0xc]
|
|
str r2, [sp, #0x10]
|
|
str r1, [sp, #0x14]
|
|
ldrsh r1, [r4, #0x78]
|
|
add r0, sp, #0xc
|
|
bl func_ov00_020a61ac
|
|
ldr r1, [r4, #0x48]
|
|
add r0, sp, #0xc
|
|
str r1, [sp]
|
|
ldr r2, [r4, #0x4c]
|
|
add r1, sp, #0
|
|
str r2, [sp, #4]
|
|
ldr r3, [r4, #0x50]
|
|
mov r2, r0
|
|
str r3, [sp, #8]
|
|
bl func_01ff9bc4
|
|
ldr r0, _02183068 ; =data_027e0e58
|
|
add r1, r4, #0x294
|
|
ldr r0, [r0]
|
|
add r2, sp, #0xc
|
|
add r1, r1, #0x400
|
|
bl func_ov00_0207c474
|
|
ldr r0, [r4, #0x138]
|
|
cmp r0, #0x3c
|
|
addlt sp, sp, #0x18
|
|
ldmltia sp!, {r4, pc}
|
|
ldr r0, _0218306c ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097b9c
|
|
cmp r0, #0
|
|
beq _02183030
|
|
ldr r0, _0218306c ; =data_027e0f74
|
|
ldr r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097bcc
|
|
_02183030:
|
|
mvn r1, #0
|
|
ldr r0, _0218306c ; =data_027e0f74
|
|
str r1, [r4, #0x66c]
|
|
ldr r0, [r0]
|
|
mov r1, #0xe
|
|
bl func_ov00_02097968
|
|
ldr r1, [r4, #0x6b8]
|
|
mov r2, #0
|
|
mov r0, r4
|
|
strb r2, [r1, #0x118]
|
|
bl func_ov00_020c3180
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02182f88
|
|
_02183064: .word 0x0000099a
|
|
_02183068: .word data_027e0e58
|
|
_0218306c: .word data_027e0f74
|
|
|
|
.global func_ov36_02183070
|
|
arm_func_start func_ov36_02183070
|
|
func_ov36_02183070: ; 0x02183070
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov r3, r2, lsl #0x9
|
|
cmp r3, #0
|
|
movle r6, #0
|
|
ble _021830d0
|
|
ldr ip, _021830e4 ; =data_027e0764
|
|
ldr lr, [ip]
|
|
ldmib ip, {r4, r5}
|
|
umull r7, r6, r5, lr
|
|
mla r6, r5, r4, r6
|
|
ldr r4, [ip, #0xc]
|
|
ldr r5, [ip, #0x10]
|
|
mla r6, r4, lr, r6
|
|
ldr r4, [ip, #0x14]
|
|
adds r5, r5, r7
|
|
adc r6, r4, r6
|
|
stmia ip, {r5, r6}
|
|
cmp r3, #0
|
|
beq _021830d0
|
|
mov r4, #0
|
|
umull lr, ip, r6, r3
|
|
mla ip, r6, r4, ip
|
|
mla ip, r4, r3, ip
|
|
mov r6, ip
|
|
_021830d0:
|
|
rsb r2, r2, r6, asr #8
|
|
add r1, r1, r2
|
|
add r0, r0, #0x800
|
|
strh r1, [r0, #0x8e]
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02183070
|
|
_021830e4: .word data_027e0764
|
|
|
|
.global func_ov36_021830e8
|
|
arm_func_start func_ov36_021830e8
|
|
func_ov36_021830e8: ; 0x021830e8
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r5, r0
|
|
ldr r0, [r5, #0x878]
|
|
tst r0, #0x100000
|
|
ldr r0, _021831fc ; =data_027e0fc8
|
|
moveq r4, #1
|
|
ldr r0, [r0]
|
|
movne r4, #0
|
|
bl func_ov00_020bc46c
|
|
cmp r4, r0
|
|
bne _021831f4
|
|
mov r0, r5
|
|
bl func_ov00_020c28ec
|
|
mov r4, r0
|
|
cmp r4, #0x14000
|
|
bge _021831f4
|
|
ldr r0, [r5, #0x878]
|
|
tst r0, #0x100000
|
|
bne _0218314c
|
|
cmp r4, #0xa000
|
|
ble _0218314c
|
|
add r0, r5, #0x800
|
|
ldrsh r1, [r0, #0xa0]
|
|
add r1, r1, #1
|
|
strh r1, [r0, #0xa0]
|
|
_0218314c:
|
|
mov r0, r5
|
|
bl func_ov00_020c2974
|
|
ldrsh r2, [r5, #0x78]
|
|
ldr r1, _02183200 ; =0x00001555
|
|
sub r0, r0, r2
|
|
mov r0, r0, lsl #0x10
|
|
cmp r1, r0, asr #16
|
|
mov r2, r0, asr #0x10
|
|
addle r0, r5, #0x800
|
|
strleh r1, [r0, #0x90]
|
|
ble _02183198
|
|
rsb r0, r1, #0
|
|
cmp r2, r0
|
|
addgt r0, r5, #0x800
|
|
strgth r2, [r0, #0x90]
|
|
bgt _02183198
|
|
rsb r1, r1, #0
|
|
add r0, r5, #0x800
|
|
strh r1, [r0, #0x90]
|
|
_02183198:
|
|
cmp r2, #0
|
|
rsblt r2, r2, #0
|
|
cmp r2, #0x1f40
|
|
bge _021831dc
|
|
add r0, r5, #0x800
|
|
ldrsh r1, [r0, #0xa0]
|
|
mov r0, #3
|
|
cmp r1, #0x5a
|
|
movge r0, #2
|
|
bge _021831c8
|
|
cmp r4, #0xa000
|
|
movlt r0, #1
|
|
_021831c8:
|
|
add r1, r5, #0x800
|
|
ldrsh r1, [r1, #0x7e]
|
|
cmp r1, #0
|
|
movne r0, #3
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_021831dc:
|
|
cmp r4, #0xa000
|
|
movlt r0, #3
|
|
ldmltia sp!, {r3, r4, r5, pc}
|
|
add r0, r5, #0x800
|
|
mov r1, #0
|
|
strh r1, [r0, #0x90]
|
|
_021831f4:
|
|
mov r0, #0
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_021830e8
|
|
_021831fc: .word data_027e0fc8
|
|
_02183200: .word 0x00001555
|
|
|
|
.global func_ov36_02183204
|
|
arm_func_start func_ov36_02183204
|
|
func_ov36_02183204: ; 0x02183204
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r5, r0
|
|
ldr r1, [r5, #0x878]
|
|
tst r1, #0x100000
|
|
movne r0, #0
|
|
ldmneia sp!, {r3, r4, r5, pc}
|
|
add r1, r5, #0x800
|
|
ldrsh r1, [r1, #0x88]
|
|
cmp r1, #0
|
|
movne r0, #0
|
|
ldmneia sp!, {r3, r4, r5, pc}
|
|
mov r1, #8
|
|
bl func_ov00_020c1fc8
|
|
cmp r0, #0
|
|
beq _021834e8
|
|
mov r0, r5
|
|
bl func_ov00_020c2974
|
|
mov r4, r0
|
|
add r1, r4, #0x8000
|
|
add r0, r5, #0x800
|
|
strh r1, [r0, #0x9a]
|
|
ldrsh r0, [r5, #0x78]
|
|
ldr r1, [r5, #0x130]
|
|
sub r0, r4, r0
|
|
mov r0, r0, lsl #0x10
|
|
cmp r1, #0xf
|
|
mov r0, r0, asr #0x10
|
|
beq _02183360
|
|
cmp r0, #0
|
|
rsblt r0, r0, #0
|
|
cmp r0, #0x1f40
|
|
bge _02183360
|
|
ldr r0, _021834f0 ; =data_027e0fc8
|
|
ldr r0, [r0]
|
|
bl func_ov00_020bcc78
|
|
cmp r0, #0
|
|
beq _021832f4
|
|
strh r4, [r5, #0x78]
|
|
ldr r0, [r5, #0x878]
|
|
tst r0, #0x1000
|
|
addeq r0, r5, #0x800
|
|
ldreqsh r0, [r0, #0x8c]
|
|
cmpeq r0, #0
|
|
bne _021832c4
|
|
mov r0, r5
|
|
mov r1, #0xd
|
|
bl func_ov36_0217d6bc
|
|
b _021832e0
|
|
_021832c4:
|
|
ldr r0, [r5, #0x85c]
|
|
cmp r0, #0
|
|
bne _021832e0
|
|
ldr r0, [r5, #0x130]
|
|
cmp r0, #4
|
|
ldrne r0, _021834f4 ; =0x00000333
|
|
strne r0, [r5, #0x85c]
|
|
_021832e0:
|
|
mov r0, r5
|
|
mov r1, #1
|
|
mov r2, #0
|
|
bl func_ov36_021856cc
|
|
b _02183338
|
|
_021832f4:
|
|
ldr r0, [r5, #0x878]
|
|
tst r0, #0x1000
|
|
addeq r0, r5, #0x800
|
|
ldreqsh r0, [r0, #0x8c]
|
|
cmpeq r0, #0
|
|
bne _02183328
|
|
ldr r0, [r5, #0x130]
|
|
cmp r0, #0xd
|
|
beq _02183328
|
|
mov r0, r5
|
|
mov r1, #0xd
|
|
strh r4, [r5, #0x78]
|
|
bl func_ov36_0217d6bc
|
|
_02183328:
|
|
mov r1, #0
|
|
mov r0, r5
|
|
mov r2, r1
|
|
bl func_ov36_021856cc
|
|
_02183338:
|
|
ldr r0, _021834f8 ; =data_027e0ffc
|
|
add r2, r5, #0x48
|
|
mov r1, #0x2c8
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
add r0, r5, #0x800
|
|
mov r1, #0xa
|
|
strh r1, [r0, #0x88]
|
|
mov r0, #1
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_02183360:
|
|
ldr r1, _021834fc ; =data_027e0fa0
|
|
ldr r0, [r1]
|
|
ldr r1, [r1, #8]
|
|
bl func_01ffa0f4
|
|
add r1, r5, #0x800
|
|
ldrsh r1, [r1, #0x9a]
|
|
mov r0, r0, lsl #0x10
|
|
sub r0, r1, r0, asr #16
|
|
mov r0, r0, lsl #0x10
|
|
movs r1, r0, asr #0x10
|
|
ldr r0, _02183500 ; =0x00002aab
|
|
rsbmi r1, r1, #0
|
|
cmp r1, r0
|
|
ble _021833c4
|
|
mov r1, #0
|
|
mov r0, r5
|
|
mov r2, r1
|
|
bl func_ov36_021856cc
|
|
ldr r0, _021834f8 ; =data_027e0ffc
|
|
add r2, r5, #0x48
|
|
mov r1, #0x2c8
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
mov r0, #0
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_021833c4:
|
|
ldr r0, _021834f0 ; =data_027e0fc8
|
|
ldr r0, [r0]
|
|
bl func_ov00_020bcc78
|
|
cmp r0, #0
|
|
bne _02183420
|
|
ldr r0, [r5, #0x130]
|
|
cmp r0, #0xf
|
|
beq _021833f4
|
|
ldr r0, [r5, #0x85c]
|
|
cmp r0, #0
|
|
ldreq r0, _021834f4 ; =0x00000333
|
|
streq r0, [r5, #0x85c]
|
|
_021833f4:
|
|
mov r1, #0
|
|
mov r0, r5
|
|
mov r2, r1
|
|
bl func_ov36_021856cc
|
|
ldr r0, _021834f8 ; =data_027e0ffc
|
|
add r2, r5, #0x48
|
|
mov r1, #0x2c8
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
mov r0, #0
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_02183420:
|
|
ldr r0, [r5, #0x878]
|
|
mov r1, #1
|
|
tst r0, #0x1000
|
|
addeq r3, r5, #0x800
|
|
ldreqsh r0, [r3, #0x8c]
|
|
cmpeq r0, #0
|
|
beq _02183474
|
|
ldr r0, [r5, #0x85c]
|
|
mov r2, #0
|
|
cmp r0, #0
|
|
ldreq r0, _021834f4 ; =0x00000333
|
|
streq r0, [r5, #0x85c]
|
|
mov r0, r5
|
|
bl func_ov36_021856cc
|
|
ldr r0, _021834f8 ; =data_027e0ffc
|
|
add r2, r5, #0x48
|
|
mov r1, #0x2c8
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
mov r0, #0
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_02183474:
|
|
ldrb r2, [r5, #0x8a4]
|
|
mov r0, r5
|
|
mov r4, r2, lsl #0xd
|
|
mov r2, r4, asr #0x1
|
|
add r2, r4, r2, lsr #30
|
|
mov r4, r2, asr #0x2
|
|
mov r2, r1
|
|
strh r4, [r3, #0x92]
|
|
bl func_ov36_021856cc
|
|
ldrb r2, [r5, #0x8a4]
|
|
add r0, r5, #0x800
|
|
mov r1, #0
|
|
add r2, r2, #1
|
|
strb r2, [r5, #0x8a4]
|
|
strh r1, [r0, #0xa2]
|
|
ldrb r0, [r5, #0x8a4]
|
|
cmp r0, #5
|
|
mov r0, r5
|
|
bhs _021834cc
|
|
mov r1, #0xf
|
|
bl func_ov36_0217d6bc
|
|
b _021834d4
|
|
_021834cc:
|
|
mov r1, #0x12
|
|
bl func_ov36_0217d6bc
|
|
_021834d4:
|
|
add r0, r5, #0x800
|
|
mov r1, #0xa
|
|
strh r1, [r0, #0x88]
|
|
mov r0, #1
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_021834e8:
|
|
mov r0, #0
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02183204
|
|
_021834f0: .word data_027e0fc8
|
|
_021834f4: .word 0x00000333
|
|
_021834f8: .word data_027e0ffc
|
|
_021834fc: .word data_027e0fa0
|
|
_02183500: .word 0x00002aab
|
|
|
|
.global func_ov36_02183504
|
|
arm_func_start func_ov36_02183504
|
|
func_ov36_02183504: ; 0x02183504
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0x14c
|
|
mov r5, r0
|
|
ldr r1, [r5, #0x810]
|
|
mvn r0, #0
|
|
cmp r1, r0
|
|
bne _0218354c
|
|
ldr r1, _02183a08 ; =data_027e0fe4
|
|
ldr r2, _02183a0c ; =0x424d5459
|
|
ldr r1, [r1]
|
|
add r0, sp, #8
|
|
bl func_ov00_020c3894
|
|
ldr r0, [sp, #8]
|
|
str r0, [r5, #0x810]
|
|
ldr r0, [sp, #0xc]
|
|
add sp, sp, #0x14c
|
|
str r0, [r5, #0x814]
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_0218354c:
|
|
ldr r0, _02183a08 ; =data_027e0fe4
|
|
add r1, r5, #0x810
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c3674
|
|
movs r4, r0
|
|
beq _021839f4
|
|
add r0, r5, #0x48
|
|
add r3, sp, #0x28
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
ldrh r1, [r5, #0x78]
|
|
ldr r2, _02183a10 ; =data_02050f54
|
|
mov r0, #0x800
|
|
mov r1, r1, asr #0x4
|
|
mov r6, r1, lsl #0x1
|
|
mov r1, r6, lsl #0x1
|
|
ldrsh r3, [r2, r1]
|
|
add r1, r6, #1
|
|
mov r1, r1, lsl #0x1
|
|
ldrsh r2, [r2, r1]
|
|
mov r1, r3, asr #0x1f
|
|
mov r6, r1, lsl #0xd
|
|
mov r1, r2, asr #0x1f
|
|
mov r1, r1, lsl #0xd
|
|
orr r6, r6, r3, lsr #19
|
|
adds r7, r0, r3, lsl #13
|
|
adc r6, r6, #0
|
|
adds r3, r0, r2, lsl #13
|
|
orr r1, r1, r2, lsr #19
|
|
mov r2, r7, lsr #0xc
|
|
adc r0, r1, #0
|
|
mov r1, r3, lsr #0xc
|
|
orr r2, r2, r6, lsl #20
|
|
ldr r3, [sp, #0x28]
|
|
orr r1, r1, r0, lsl #20
|
|
add r3, r3, r2
|
|
ldr r2, [sp, #0x30]
|
|
str r3, [sp, #0x28]
|
|
add r0, r2, r1
|
|
str r0, [sp, #0x30]
|
|
ldrb r0, [r5, #0x8a6]
|
|
mov r6, #0
|
|
cmp r0, #0
|
|
beq _02183614
|
|
cmp r0, #1
|
|
beq _021838fc
|
|
cmp r0, #2
|
|
beq _0218397c
|
|
add sp, sp, #0x14c
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02183614:
|
|
mov r0, r4
|
|
bl func_ov14_02125038
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x14c
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
add r0, sp, #0x28
|
|
add r1, r4, #0x48
|
|
bl func_ov00_020ce2f0
|
|
cmp r0, #0x1000
|
|
addge sp, sp, #0x14c
|
|
ldmgeia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
mov r0, r5
|
|
bl func_ov00_020c198c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x14c
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
add r0, sp, #0x9c
|
|
bl func_ov00_0209a4f4
|
|
mvn r6, #0
|
|
mov r3, #0x32
|
|
mov r2, #2
|
|
mov r1, #3
|
|
ldr r0, _02183a14 ; =data_027e0f64
|
|
str r6, [sp, #0xa0]
|
|
strb r3, [sp, #0xa5]
|
|
strb r2, [sp, #0xa6]
|
|
strb r1, [sp, #0xa7]
|
|
ldr r1, [r4, #0x48]
|
|
ldr r0, [r0]
|
|
str r1, [sp, #0xbc]
|
|
ldr r2, [r4, #0x4c]
|
|
add r1, sp, #0x34
|
|
str r2, [sp, #0xc0]
|
|
ldr r2, [r4, #0x50]
|
|
str r2, [sp, #0xc4]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02087d34
|
|
mov sl, #0
|
|
ldr r3, _02183a18 ; =0x000004cd
|
|
ldr r2, _02183a1c ; =0x00001e84
|
|
ldr r1, _02183a20 ; =0x0000038e
|
|
mov r6, #0x19000
|
|
ldr r0, [sp, #0x34]
|
|
str r6, [sp, #0x4c]
|
|
str sl, [sp, #0x58]
|
|
str r3, [sp, #0x54]
|
|
str sl, [sp, #0x50]
|
|
str r2, [sp, #0x44]
|
|
str sl, [sp, #0x48]
|
|
str r1, [sp, #0x40]
|
|
str r0, [r5, #0x6e4]
|
|
ldr r0, [sp, #0x38]
|
|
str r0, [r5, #0x6e8]
|
|
ldr r0, [sp, #0x3c]
|
|
str r0, [r5, #0x6ec]
|
|
ldr r0, [sp, #0x40]
|
|
str r0, [r5, #0x6f0]
|
|
ldr r0, [sp, #0x44]
|
|
str r0, [r5, #0x6f4]
|
|
ldr r0, [sp, #0x48]
|
|
str r0, [r5, #0x6f8]
|
|
ldr r0, [sp, #0x4c]
|
|
str r0, [r5, #0x6fc]
|
|
ldr r0, [sp, #0x50]
|
|
str r0, [r5, #0x700]
|
|
ldr r0, [sp, #0x54]
|
|
str r0, [r5, #0x704]
|
|
ldr r0, [sp, #0x58]
|
|
str r0, [r5, #0x708]
|
|
ldr r0, [sp, #0x5c]
|
|
str r0, [r5, #0x70c]
|
|
ldr r0, [sp, #0x60]
|
|
str r0, [r5, #0x710]
|
|
ldr r0, [sp, #0x64]
|
|
str r0, [r5, #0x714]
|
|
ldr r0, [sp, #0x68]
|
|
str r0, [r5, #0x718]
|
|
ldr r0, [sp, #0x6c]
|
|
str r0, [r5, #0x71c]
|
|
ldr r0, [sp, #0x70]
|
|
str r0, [r5, #0x720]
|
|
ldr r0, [sp, #0x74]
|
|
str r0, [r5, #0x724]
|
|
ldr r0, [sp, #0x78]
|
|
str r0, [r5, #0x728]
|
|
ldr r0, [sp, #0x7c]
|
|
str r0, [r5, #0x72c]
|
|
ldr r0, [sp, #0x80]
|
|
str r0, [r5, #0x730]
|
|
ldr r0, [sp, #0x84]
|
|
str r0, [r5, #0x734]
|
|
ldr r0, [sp, #0x88]
|
|
str r0, [r5, #0x738]
|
|
ldr r0, [sp, #0x8c]
|
|
str r0, [r5, #0x73c]
|
|
ldr r0, [sp, #0x90]
|
|
str r0, [r5, #0x740]
|
|
ldrb r0, [sp, #0x94]
|
|
strb r0, [r5, #0x744]
|
|
ldrb r0, [sp, #0x95]
|
|
strb r0, [r5, #0x745]
|
|
ldrb r0, [sp, #0x96]
|
|
strb r0, [r5, #0x746]
|
|
ldrb r0, [sp, #0x97]
|
|
strb r0, [r5, #0x747]
|
|
ldrb r0, [sp, #0x98]
|
|
strb r0, [r5, #0x748]
|
|
ldr r1, [sp, #0x34]
|
|
ldr r0, [sp, #0x38]
|
|
str r1, [sp, #0xc8]
|
|
str r0, [sp, #0xcc]
|
|
ldr r0, [sp, #0x48]
|
|
ldr r8, [sp, #0x3c]
|
|
ldr r7, [sp, #0x40]
|
|
str r0, [sp, #0xdc]
|
|
ldr r0, [sp, #0x5c]
|
|
ldr r1, [sp, #0x44]
|
|
ldr sb, [sp, #0x4c]
|
|
str r8, [sp, #0xd0]
|
|
ldr r8, [sp, #0x50]
|
|
str r7, [sp, #0xd4]
|
|
ldr r7, [sp, #0x54]
|
|
str r0, [sp, #0xf0]
|
|
ldr r0, [sp, #0x70]
|
|
str r1, [sp, #0xd8]
|
|
ldr r1, [sp, #0x58]
|
|
str sb, [sp, #0xe0]
|
|
ldr sb, [sp, #0x60]
|
|
str r8, [sp, #0xe4]
|
|
ldr r8, [sp, #0x64]
|
|
str r7, [sp, #0xe8]
|
|
ldr r7, [sp, #0x68]
|
|
str r0, [sp, #0x104]
|
|
ldr r0, [sp, #0x84]
|
|
str r1, [sp, #0xec]
|
|
ldr r1, [sp, #0x6c]
|
|
str sb, [sp, #0xf4]
|
|
ldr sb, [sp, #0x74]
|
|
str r8, [sp, #0xf8]
|
|
ldr r8, [sp, #0x78]
|
|
str r7, [sp, #0xfc]
|
|
ldr r7, [sp, #0x7c]
|
|
ldrb r6, [sp, #0x94]
|
|
ldrb lr, [sp, #0x95]
|
|
ldrb ip, [sp, #0x96]
|
|
ldrb r3, [sp, #0x97]
|
|
ldrb r2, [sp, #0x98]
|
|
str r0, [sp, #0x118]
|
|
ldr r0, _02183a24 ; =data_027e0f74
|
|
str r1, [sp, #0x100]
|
|
ldr r1, [sp, #0x80]
|
|
str sb, [sp, #0x108]
|
|
ldr sb, [sp, #0x88]
|
|
str r8, [sp, #0x10c]
|
|
ldr r8, [sp, #0x8c]
|
|
str r7, [sp, #0x110]
|
|
ldr r7, [sp, #0x90]
|
|
mov fp, #1
|
|
str r1, [sp, #0x114]
|
|
ldr r0, [r0]
|
|
add r1, sp, #0x9c
|
|
str sb, [sp, #0x11c]
|
|
str r8, [sp, #0x120]
|
|
str r7, [sp, #0x124]
|
|
strb r6, [sp, #0x128]
|
|
strb lr, [sp, #0x129]
|
|
strb ip, [sp, #0x12a]
|
|
strb r3, [sp, #0x12b]
|
|
strb r2, [sp, #0x12c]
|
|
strb fp, [sp, #0xb0]
|
|
strb sl, [sp, #0xb2]
|
|
bl func_ov00_02097810
|
|
str r0, [r5, #0x66c]
|
|
cmp r0, #0
|
|
blt _021838ec
|
|
add r2, r5, #0x26c
|
|
mov r3, fp
|
|
add r1, sp, #0x28
|
|
mov r0, r4
|
|
add r2, r2, #0x400
|
|
strb r3, [r5, #0x8a6]
|
|
bl func_ov14_0212500c
|
|
_021838ec:
|
|
add r0, sp, #0x9c
|
|
bl func_ov00_0209a508
|
|
add sp, sp, #0x14c
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_021838fc:
|
|
ldr r1, [r4, #0x48]
|
|
ldr r2, _02183a14 ; =data_027e0f64
|
|
str r1, [sp, #0x1c]
|
|
ldr r1, [r4, #0x4c]
|
|
add r0, r5, #0x2e4
|
|
str r1, [sp, #0x20]
|
|
ldr r3, [r4, #0x50]
|
|
add r1, sp, #0x1c
|
|
str r3, [sp, #0x24]
|
|
str r6, [sp]
|
|
str r6, [sp, #4]
|
|
ldr r2, [r2]
|
|
add r3, r0, #0x400
|
|
ldr r0, [r2, #4]
|
|
mov r2, #2
|
|
bl func_ov00_02089318
|
|
add r0, sp, #0x28
|
|
add r1, r4, #0x48
|
|
bl func_ov00_020ce2f0
|
|
ldr r1, _02183a28 ; =0x00000333
|
|
cmp r0, r1
|
|
addge sp, sp, #0x14c
|
|
ldmgeia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
add r2, r5, #0x26c
|
|
mov r0, r4
|
|
add r1, r5, #0x48
|
|
add r2, r2, #0x400
|
|
bl func_ov14_0212500c
|
|
mov r0, #2
|
|
add sp, sp, #0x14c
|
|
strb r0, [r5, #0x8a6]
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_0218397c:
|
|
ldr r1, [r4, #0x48]
|
|
ldr r2, _02183a14 ; =data_027e0f64
|
|
str r1, [sp, #0x10]
|
|
ldr r1, [r4, #0x4c]
|
|
add r0, r5, #0x2e4
|
|
str r1, [sp, #0x14]
|
|
ldr r3, [r4, #0x50]
|
|
add r1, sp, #0x10
|
|
str r3, [sp, #0x18]
|
|
str r6, [sp]
|
|
str r6, [sp, #4]
|
|
ldr r2, [r2]
|
|
add r3, r0, #0x400
|
|
ldr r0, [r2, #4]
|
|
mov r2, #2
|
|
bl func_ov00_02089318
|
|
add r0, r5, #0x48
|
|
add r1, r4, #0x48
|
|
bl func_ov00_020ce2f0
|
|
cmp r0, #0x1000
|
|
addge sp, sp, #0x14c
|
|
ldmgeia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
mov r2, r6
|
|
strb r2, [r4, #0x118]
|
|
mov r0, r5
|
|
mov r1, #0x14
|
|
strb r2, [r5, #0x8a6]
|
|
bl func_ov36_0217d6bc
|
|
add sp, sp, #0x14c
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_021839f4:
|
|
mvn r0, #0
|
|
str r0, [r5, #0x810]
|
|
str r0, [r5, #0x814]
|
|
add sp, sp, #0x14c
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02183504
|
|
_02183a08: .word data_027e0fe4
|
|
_02183a0c: .word 0x424d5459
|
|
_02183a10: .word data_02050f54
|
|
_02183a14: .word data_027e0f64
|
|
_02183a18: .word 0x000004cd
|
|
_02183a1c: .word 0x00001e84
|
|
_02183a20: .word 0x0000038e
|
|
_02183a24: .word data_027e0f74
|
|
_02183a28: .word 0x00000333
|
|
|
|
.global func_ov36_02183a2c
|
|
arm_func_start func_ov36_02183a2c
|
|
func_ov36_02183a2c: ; 0x02183a2c
|
|
ldrb r3, [r0, #0x8a5]
|
|
mvn r2, #0
|
|
add r3, r3, #1
|
|
strb r3, [r0, #0x8a5]
|
|
ldrh r1, [r1]
|
|
add r0, r0, r1, lsl #1
|
|
add r0, r0, #0x800
|
|
strh r2, [r0, #0x80]
|
|
bx lr
|
|
arm_func_end func_ov36_02183a2c
|
|
|
|
.global func_ov36_02183a50
|
|
arm_func_start func_ov36_02183a50
|
|
func_ov36_02183a50: ; 0x02183a50
|
|
ldrb r3, [r0, #0x8a5]
|
|
mov r2, #0xb4
|
|
sub r3, r3, #1
|
|
strb r3, [r0, #0x8a5]
|
|
ldrh r1, [r1]
|
|
add r0, r0, r1, lsl #1
|
|
add r0, r0, #0x800
|
|
strh r2, [r0, #0x80]
|
|
bx lr
|
|
arm_func_end func_ov36_02183a50
|
|
|
|
.global func_ov36_02183a74
|
|
arm_func_start func_ov36_02183a74
|
|
func_ov36_02183a74: ; 0x02183a74
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
ldr r3, [r0, #0x878]
|
|
ands r4, r3, #0x100000
|
|
bne _02183a94
|
|
add r3, r0, #0x100
|
|
ldrsh r3, [r3, #0x20]
|
|
cmp r3, #0
|
|
ble _02183aa8
|
|
_02183a94:
|
|
cmp r4, #0
|
|
beq _02183ab0
|
|
ldr r3, [r0, #0x130]
|
|
cmp r3, #0x16
|
|
blt _02183ab0
|
|
_02183aa8:
|
|
mov r0, #0
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_02183ab0:
|
|
ldrh r3, [r1]
|
|
cmp r3, #2
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
ldrb r3, [r0, #0x8ac]
|
|
cmp r3, #0
|
|
cmpeq r2, #0
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
cmp r4, #0
|
|
addeq r3, r0, #0x100
|
|
ldreqsh r3, [r3, #0x20]
|
|
movne r5, #1
|
|
mov r4, #0
|
|
rsbeq r5, r3, #4
|
|
cmp r5, #0
|
|
ble _02183b18
|
|
_02183af4:
|
|
add r3, r0, r4, lsl #1
|
|
add r3, r3, #0x800
|
|
ldrsh r3, [r3, #0x80]
|
|
cmp r3, #0
|
|
streqh r4, [r1]
|
|
beq _02183b18
|
|
add r4, r4, #1
|
|
cmp r4, r5
|
|
blt _02183af4
|
|
_02183b18:
|
|
cmp r4, r5
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
ldr r1, _02183b78 ; =data_027e0764
|
|
ldr ip, [r1]
|
|
ldmib r1, {r3, lr}
|
|
umull r5, r4, lr, ip
|
|
mla r4, lr, r3, r4
|
|
ldr r3, [r1, #0xc]
|
|
ldr lr, [r1, #0x10]
|
|
mla r4, r3, ip, r4
|
|
ldr r3, [r1, #0x14]
|
|
adds r5, lr, r5
|
|
adc r3, r3, r4
|
|
str r5, [r1]
|
|
tst r3, #0x80000000
|
|
cmpeq r2, #0
|
|
str r3, [r1, #4]
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
mov r1, #1
|
|
strb r1, [r0, #0x8ac]
|
|
mov r0, r1
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02183a74
|
|
_02183b78: .word data_027e0764
|
|
|
|
.global func_ov36_02183b7c
|
|
arm_func_start func_ov36_02183b7c
|
|
func_ov36_02183b7c: ; 0x02183b7c
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0x58
|
|
mov r6, r0
|
|
ldrb r2, [r6, #0x8ad]
|
|
mov r5, r1
|
|
cmp r2, #0
|
|
beq _02183ba4
|
|
bl func_ov36_021840c4
|
|
add sp, sp, #0x58
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02183ba4:
|
|
ldrb r0, [r6, #0x8a6]
|
|
cmp r0, #0
|
|
ldrne r0, [r5, #0x14]
|
|
cmpne r0, #0
|
|
beq _02183bd0
|
|
ldr r1, [r0, #4]
|
|
ldr r0, _0218408c ; =0x424d5459
|
|
cmp r1, r0
|
|
addeq sp, sp, #0x58
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02183bd0:
|
|
ldr r0, [r6, #0x870]
|
|
cmp r0, #0
|
|
addne sp, sp, #0x58
|
|
movne r0, #0
|
|
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
ldr r0, [r5, #0x14]
|
|
cmp r0, #0
|
|
beq _02183c18
|
|
ldr r2, [r0, #0x4c]
|
|
ldr r1, [r0, #0x50]
|
|
ldr r0, [r0, #0x48]
|
|
str r0, [sp, #0x48]
|
|
str r2, [sp, #0x4c]
|
|
str r1, [sp, #0x50]
|
|
ldr r0, [r5, #0x14]
|
|
ldr r0, [r0, #0x88]
|
|
str r0, [sp, #0x54]
|
|
b _02183ce8
|
|
_02183c18:
|
|
ldr r0, [r5, #0x10]
|
|
cmp r0, #9
|
|
addls pc, pc, r0, lsl #2
|
|
b _02183cbc
|
|
_02183c28: ; jump table
|
|
b _02183c50 ; case 0
|
|
b _02183cbc ; case 1
|
|
b _02183c98 ; case 2
|
|
b _02183c98 ; case 3
|
|
b _02183c74 ; case 4
|
|
b _02183cbc ; case 5
|
|
b _02183cbc ; case 6
|
|
b _02183cbc ; case 7
|
|
b _02183cbc ; case 8
|
|
b _02183cbc ; case 9
|
|
_02183c50:
|
|
ldr r0, _02184090 ; =data_027e0fb4
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
bl func_ov00_020ad714
|
|
ldr r2, [r0]
|
|
add r1, sp, #0x48
|
|
ldr r2, [r2, #0x3c]
|
|
blx r2
|
|
b _02183ce8
|
|
_02183c74:
|
|
ldr r0, _02184090 ; =data_027e0fb4
|
|
mov r1, #8
|
|
ldr r0, [r0]
|
|
bl func_ov00_020ad714
|
|
ldr r2, [r0]
|
|
add r1, sp, #0x48
|
|
ldr r2, [r2, #0x3c]
|
|
blx r2
|
|
b _02183ce8
|
|
_02183c98:
|
|
ldr r0, _02184090 ; =data_027e0fb4
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
bl func_ov00_020ad714
|
|
ldr r2, [r0]
|
|
add r1, sp, #0x48
|
|
ldr r2, [r2, #0x3c]
|
|
blx r2
|
|
b _02183ce8
|
|
_02183cbc:
|
|
ldr r1, _02184094 ; =data_027e0f94
|
|
ldr r0, _02184098 ; =data_027e0fd4
|
|
ldr r3, [r1]
|
|
ldr r2, [r1, #4]
|
|
str r3, [sp, #0x48]
|
|
str r2, [sp, #0x4c]
|
|
ldr r1, [r1, #8]
|
|
ldr r0, [r0]
|
|
str r1, [sp, #0x50]
|
|
ldr r0, [r0, #0x2c]
|
|
str r0, [sp, #0x54]
|
|
_02183ce8:
|
|
add r0, r6, #0x38
|
|
add r0, r0, #0x800
|
|
add r3, sp, #0x3c
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
add r1, sp, #0x48
|
|
mov r0, r3
|
|
bl func_ov00_020ce2f0
|
|
mov sl, r0
|
|
add r0, sp, #0x48
|
|
add r1, sp, #0x3c
|
|
add r2, sp, #0x30
|
|
bl func_01ff9bf8
|
|
ldr r0, [sp, #0x30]
|
|
ldr r1, [sp, #0x38]
|
|
bl func_01ffa0f4
|
|
mov r0, r0, lsl #0x10
|
|
ldr ip, [r6, #0x864]
|
|
ldrsh r2, [r6, #0x78]
|
|
mov r4, r0, asr #0x10
|
|
mov fp, #0
|
|
rsb r0, r2, r0, asr #16
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, lsr #0x10
|
|
mov r0, r0, asr #0x4
|
|
mov r2, r0, lsl #0x1
|
|
add r0, r2, #1
|
|
ldr r1, _0218409c ; =data_02050f54
|
|
mov r0, r0, lsl #0x1
|
|
ldrsh r3, [r1, r0]
|
|
mov r0, r2, lsl #0x1
|
|
ldrsh r8, [r1, r0]
|
|
ldr r1, _021840a0 ; =0x0000219a
|
|
ldr r0, _021840a0 ; =0x0000219a
|
|
umull r2, r1, ip, r1
|
|
adds r2, r2, #0x800
|
|
rsb lr, r0, #0x3800
|
|
mla r1, ip, fp, r1
|
|
mov sb, ip, asr #0x1f
|
|
ldr ip, _021840a0 ; =0x0000219a
|
|
mov r2, r2, lsr #0xc
|
|
mla r1, sb, ip, r1
|
|
adc r1, r1, #0
|
|
orr r2, r2, r1, lsl #20
|
|
smull r2, r1, r3, r2
|
|
adds r2, r2, #0x800
|
|
adc r1, r1, #0
|
|
mov r2, r2, lsr #0xc
|
|
orr r2, r2, r1, lsl #20
|
|
str r2, [sp, #0x2c]
|
|
umull r2, r1, r8, lr
|
|
adds r2, r2, #0x800
|
|
mla r1, r8, fp, r1
|
|
mov r7, r8, asr #0x1f
|
|
mla r1, r7, lr, r1
|
|
adc r1, r1, #0
|
|
mov r2, r2, lsr #0xc
|
|
orr r2, r2, r1, lsl #20
|
|
add r0, sp, #0x24
|
|
str fp, [sp, #0x28]
|
|
str r2, [sp, #0x24]
|
|
bl func_01ff9cec
|
|
ldr r1, [sp, #0x54]
|
|
add r0, r1, r0
|
|
cmp r0, sl
|
|
addlt sp, sp, #0x58
|
|
movlt r0, fp
|
|
ldmltia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
ldr r0, [r5, #0x14]
|
|
cmp r0, #0
|
|
beq _02183f44
|
|
ldr r2, [r0, #4]
|
|
ldr r1, _0218408c ; =0x424d5459
|
|
cmp r2, r1
|
|
bne _02183f44
|
|
bl func_ov14_02125038
|
|
cmp r0, #0
|
|
beq _02183f44
|
|
ldr r1, [r6, #0x130]
|
|
sub r0, r1, #0xd
|
|
cmp r0, #0xa
|
|
addls pc, pc, r0, lsl #2
|
|
b _02183ef8
|
|
_02183e34: ; jump table
|
|
b _02183f38 ; case 0
|
|
b _02183f38 ; case 1
|
|
b _02183e60 ; case 2
|
|
b _02183ef8 ; case 3
|
|
b _02183ef8 ; case 4
|
|
b _02183f38 ; case 5
|
|
b _02183f38 ; case 6
|
|
b _02183f38 ; case 7
|
|
b _02183f38 ; case 8
|
|
b _02183f38 ; case 9
|
|
b _02183f38 ; case 10
|
|
_02183e60:
|
|
ldrsh r0, [r6, #0x78]
|
|
sub r0, r4, r0
|
|
mov r0, r0, lsl #0x10
|
|
movs r0, r0, asr #0x10
|
|
rsbmi r0, r0, #0
|
|
cmp r0, #0x1f40
|
|
bge _02183e8c
|
|
mov r0, r6
|
|
mov r1, #0xd
|
|
bl func_ov36_0217d6bc
|
|
b _02183ee8
|
|
_02183e8c:
|
|
add r0, r4, #0x8000
|
|
add r1, r6, #0x800
|
|
strh r0, [r1, #0x9a]
|
|
ldrb r0, [r6, #0x8a4]
|
|
mov r2, #0
|
|
mov r3, r0, lsl #0xd
|
|
mov r0, r3, asr #0x1
|
|
add r0, r3, r0, lsr #30
|
|
mov r0, r0, asr #0x2
|
|
strh r0, [r1, #0x92]
|
|
ldrb r0, [r6, #0x8a4]
|
|
add r0, r0, #1
|
|
strb r0, [r6, #0x8a4]
|
|
strh r2, [r1, #0xa2]
|
|
ldrb r0, [r6, #0x8a4]
|
|
cmp r0, #5
|
|
mov r0, r6
|
|
bhs _02183ee0
|
|
mov r1, #0xf
|
|
bl func_ov36_0217d6bc
|
|
b _02183ee8
|
|
_02183ee0:
|
|
mov r1, #0x12
|
|
bl func_ov36_0217d6bc
|
|
_02183ee8:
|
|
add r0, r6, #0x800
|
|
mov r1, #0xa
|
|
strh r1, [r0, #0x88]
|
|
b _02183f38
|
|
_02183ef8:
|
|
ldr r0, [r6, #0x878]
|
|
tst r0, #0x100000
|
|
bne _02183f38
|
|
cmp r1, #0x16
|
|
bge _02183f38
|
|
tst r0, #0x1000
|
|
addeq r0, r6, #0x800
|
|
ldreqsh r0, [r0, #0x8c]
|
|
cmpeq r0, #0
|
|
bne _02183f2c
|
|
mov r0, r6
|
|
mov r1, #0xe
|
|
bl func_ov36_0217d6bc
|
|
_02183f2c:
|
|
add r0, r6, #0x800
|
|
mov r1, #0xa
|
|
strh r1, [r0, #0x88]
|
|
_02183f38:
|
|
add sp, sp, #0x58
|
|
mov r0, #1
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02183f44:
|
|
ldr r0, [r5, #0x10]
|
|
cmp r0, #8
|
|
addls pc, pc, r0, lsl #2
|
|
b _02184078
|
|
_02183f54: ; jump table
|
|
b _02184050 ; case 0
|
|
b _02183f78 ; case 1
|
|
b _02184078 ; case 2
|
|
b _02184078 ; case 3
|
|
b _02184064 ; case 4
|
|
b _02183fb0 ; case 5
|
|
b _02184078 ; case 6
|
|
b _02183fd0 ; case 7
|
|
b _02184018 ; case 8
|
|
_02183f78:
|
|
ldr r0, [r5, #0x14]
|
|
cmp r0, #0
|
|
beq _02184078
|
|
ldr r2, [r0, #4]
|
|
ldr r1, _021840a4 ; =0x5342454d
|
|
cmp r2, r1
|
|
bne _02184078
|
|
bl func_ov14_02146634
|
|
ldr r0, _021840a8 ; =data_027e0ffc
|
|
add r2, r6, #0x48
|
|
mov r1, #0xf6
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
b _02184078
|
|
_02183fb0:
|
|
ldr r0, [r5, #0x14]
|
|
bl func_ov14_021231d4
|
|
ldr r0, _021840a8 ; =data_027e0ffc
|
|
ldr r1, _021840ac ; =0x0000019d
|
|
add r2, r6, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
b _02184078
|
|
_02183fd0:
|
|
ldr r0, [r5, #0x14]
|
|
add r3, sp, #0x18
|
|
add r0, r0, #0x48
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
ldr r3, [sp, #0x18]
|
|
ldr r0, [r6, #0x48]
|
|
ldr r2, [sp, #0x20]
|
|
ldr r1, [r6, #0x50]
|
|
sub r0, r3, r0
|
|
sub r1, r2, r1
|
|
bl func_01ffa0f4
|
|
mov r1, r0, lsl #0x10
|
|
ldr r0, [r5, #0x14]
|
|
mov r1, r1, asr #0x10
|
|
mov r2, #1
|
|
bl func_ov14_02120ac4
|
|
b _02184078
|
|
_02184018:
|
|
ldr r0, [r5, #0x14]
|
|
cmp r0, #0
|
|
beq _02184078
|
|
ldr r2, [r0, #4]
|
|
ldr r1, _021840b0 ; =0x524f5045
|
|
cmp r2, r1
|
|
bne _02184078
|
|
bl func_ov14_02123904
|
|
ldr r0, _021840a8 ; =data_027e0ffc
|
|
add r2, r6, #0x48
|
|
mov r1, #0xf6
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
b _02184078
|
|
_02184050:
|
|
bl func_ov36_021840b4
|
|
mov r1, #0xf6
|
|
mov r2, #0
|
|
bl func_ov00_020bf008
|
|
b _02184078
|
|
_02184064:
|
|
ldr r0, _021840a8 ; =data_027e0ffc
|
|
add r2, r6, #0x48
|
|
mov r1, #0xf6
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
_02184078:
|
|
mov r0, #0xa
|
|
str r0, [r6, #0x870]
|
|
mov r0, #1
|
|
add sp, sp, #0x58
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02183b7c
|
|
_0218408c: .word 0x424d5459
|
|
_02184090: .word data_027e0fb4
|
|
_02184094: .word data_027e0f94
|
|
_02184098: .word data_027e0fd4
|
|
_0218409c: .word data_02050f54
|
|
_021840a0: .word 0x0000219a
|
|
_021840a4: .word 0x5342454d
|
|
_021840a8: .word data_027e0ffc
|
|
_021840ac: .word 0x0000019d
|
|
_021840b0: .word 0x524f5045
|
|
|
|
.global func_ov36_021840b4
|
|
arm_func_start func_ov36_021840b4
|
|
func_ov36_021840b4: ; 0x021840b4
|
|
ldr ip, _021840c0 ; =func_01fffcec
|
|
mov r0, #0
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov36_021840b4
|
|
_021840c0: .word func_01fffcec
|
|
|
|
.global func_ov36_021840c4
|
|
arm_func_start func_ov36_021840c4
|
|
func_ov36_021840c4: ; 0x021840c4
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0x30
|
|
mov r5, r1
|
|
ldr r1, [r5, #0x10]
|
|
mov r6, r0
|
|
cmp r1, #5
|
|
beq _021840ec
|
|
cmp r1, #8
|
|
beq _02184114
|
|
b _02184160
|
|
_021840ec:
|
|
ldr r0, [r5, #0x14]
|
|
bl func_ov14_021231d4
|
|
ldr r0, _02184408 ; =data_027e0ffc
|
|
ldr r1, _0218440c ; =0x0000019d
|
|
add r2, r6, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
add sp, sp, #0x30
|
|
mov r0, #1
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02184114:
|
|
ldr r0, [r5, #0x14]
|
|
cmp r0, #0
|
|
beq _02184154
|
|
ldr r2, [r0, #4]
|
|
ldr r1, _02184410 ; =0x524f5045
|
|
cmp r2, r1
|
|
bne _02184154
|
|
bl func_ov14_02123904
|
|
ldr r0, _02184408 ; =data_027e0ffc
|
|
add r2, r6, #0x48
|
|
mov r1, #0xf6
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
add sp, sp, #0x30
|
|
mov r0, #1
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02184154:
|
|
add sp, sp, #0x30
|
|
mov r0, #0
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02184160:
|
|
ldr r0, [r6, #0x870]
|
|
cmp r0, #0
|
|
addne sp, sp, #0x30
|
|
movne r0, #0
|
|
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
ldrb r0, [r5]
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x30
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
ldr r0, [r6, #0x130]
|
|
cmp r0, #0x13
|
|
cmpne r0, #0x11
|
|
addne sp, sp, #0x30
|
|
movne r0, #0
|
|
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
ldr r3, [r5, #0x14]
|
|
mov r4, #0
|
|
cmp r3, #0
|
|
beq _021842d4
|
|
ldr r0, [r6, #0x50]
|
|
ldr r1, [r3, #0x50]
|
|
add r0, r0, #0x9a
|
|
add r0, r0, #0x100
|
|
cmp r1, r0
|
|
addlt sp, sp, #0x30
|
|
movlt r0, r4
|
|
ldmltia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
ldr r1, [r3, #4]
|
|
ldr r0, _02184414 ; =0x41525257
|
|
cmp r1, r0
|
|
bne _0218432c
|
|
ldr r0, [r3, #8]
|
|
add r2, sp, #0x24
|
|
str r0, [r6, #0x818]
|
|
ldr r1, [r3, #0xc]
|
|
add r0, r3, #0x54
|
|
str r1, [r6, #0x81c]
|
|
add r1, r6, #0x48
|
|
mov r4, r3
|
|
bl func_01ff9bf8
|
|
ldr r0, [sp, #0x24]
|
|
ldr r1, [sp, #0x2c]
|
|
bl func_01ffa0f4
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x10
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, lsr #0x10
|
|
mov r0, r0, asr #0x4
|
|
mov r2, r0, lsl #0x1
|
|
add r0, r2, #1
|
|
ldr r1, _02184418 ; =data_02050f54
|
|
mov r0, r0, lsl #0x1
|
|
ldrsh r7, [r1, r0]
|
|
mov r0, r2, lsl #0x1
|
|
ldrsh r2, [r1, r0]
|
|
ldr r0, _0218441c ; =0x00000ccd
|
|
mov fp, #0
|
|
umull sb, r8, r7, r0
|
|
mla r8, r7, fp, r8
|
|
mov lr, r7, asr #0x1f
|
|
mla r8, lr, r0, r8
|
|
adds sb, sb, #0x800
|
|
adc r7, r8, #0
|
|
mov r8, sb, lsr #0xc
|
|
ldr sl, [r6, #0x50]
|
|
orr r8, r8, r7, lsl #20
|
|
ldr r3, [r6, #0x4c]
|
|
ldr ip, [r6, #0x48]
|
|
add r7, sl, r8
|
|
str r7, [sp, #0x2c]
|
|
umull r8, r7, r2, r0
|
|
str r3, [sp, #0x28]
|
|
mla r7, r2, fp, r7
|
|
mov r1, r2, asr #0x1f
|
|
mla r7, r1, r0, r7
|
|
adds r1, r8, #0x800
|
|
adc r0, r7, #0
|
|
mov r1, r1, lsr #0xc
|
|
orr r1, r1, r0, lsl #20
|
|
add r0, ip, r1
|
|
str r0, [sp, #0x24]
|
|
ldrsh r0, [r4, #0x78]
|
|
sub r3, sp, #8
|
|
str r0, [sp, #4]
|
|
add r0, sp, #0x24
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
mov r0, r4
|
|
add r1, r6, #8
|
|
ldmia r3, {r2, r3}
|
|
bl func_ov14_02120998
|
|
b _0218432c
|
|
_021842d4:
|
|
cmp r1, #0
|
|
bne _02184320
|
|
ldr r0, _02184420 ; =data_027e0fb4
|
|
mov r1, r4
|
|
ldr r0, [r0]
|
|
bl func_ov00_020ad714
|
|
ldr r2, [r0]
|
|
add r1, sp, #0x14
|
|
ldr r2, [r2, #0x3c]
|
|
blx r2
|
|
ldr r0, [r6, #0x50]
|
|
ldr r1, [sp, #0x1c]
|
|
add r0, r0, #0x9a
|
|
add r0, r0, #0x100
|
|
cmp r1, r0
|
|
bge _0218432c
|
|
add sp, sp, #0x30
|
|
mov r0, r4
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02184320:
|
|
add sp, sp, #0x30
|
|
mov r0, r4
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_0218432c:
|
|
ldr r0, [r6, #0x50]
|
|
ldr r2, [r6, #0x4c]
|
|
ldr r1, [r6, #0x48]
|
|
add r0, r0, #0xcd
|
|
add r3, r0, #0x400
|
|
add r0, sp, #8
|
|
str r1, [sp, #8]
|
|
str r2, [sp, #0xc]
|
|
str r3, [sp, #0x10]
|
|
bl func_ov00_020c71fc
|
|
add r0, r6, #0x100
|
|
ldrsh r7, [r0, #0x20]
|
|
ldrb r3, [r5]
|
|
ldr r2, _02184424 ; =data_027e0f64
|
|
mov r1, #0xb
|
|
add r3, r7, r3
|
|
strh r3, [r0, #0x20]
|
|
ldr r0, [r2]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02088000
|
|
ldr r0, _02184408 ; =data_027e0ffc
|
|
add r2, r6, #0x48
|
|
mov r1, #0x190
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
ldr r0, _02184408 ; =data_027e0ffc
|
|
ldr r1, _02184428 ; =0x000002cb
|
|
add r2, r6, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
add r0, r6, #0x100
|
|
ldrsh r0, [r0, #0x20]
|
|
cmp r0, #0x96
|
|
blt _021843e8
|
|
cmp r4, #0
|
|
beq _021843d8
|
|
ldrsh r1, [r4, #0x78]
|
|
mov r0, r4
|
|
mov r2, #1
|
|
bl func_ov14_02120ac4
|
|
mvn r0, #0
|
|
str r0, [r6, #0x818]
|
|
str r0, [r6, #0x81c]
|
|
_021843d8:
|
|
mov r0, r6
|
|
mov r1, #0x18
|
|
bl func_ov36_0217d6bc
|
|
b _021843fc
|
|
_021843e8:
|
|
add r0, r6, #0x158
|
|
mov r1, #0x1b
|
|
bl func_ov36_0217c958
|
|
mov r0, #0xf
|
|
str r0, [r6, #0x870]
|
|
_021843fc:
|
|
mov r0, #1
|
|
add sp, sp, #0x30
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_021840c4
|
|
_02184408: .word data_027e0ffc
|
|
_0218440c: .word 0x0000019d
|
|
_02184410: .word 0x524f5045
|
|
_02184414: .word 0x41525257
|
|
_02184418: .word data_02050f54
|
|
_0218441c: .word 0x00000ccd
|
|
_02184420: .word data_027e0fb4
|
|
_02184424: .word data_027e0f64
|
|
_02184428: .word 0x000002cb
|
|
|
|
.global func_ov36_0218442c
|
|
arm_func_start func_ov36_0218442c
|
|
func_ov36_0218442c: ; 0x0218442c
|
|
stmdb sp!, {r3, r4, r5, r6, lr}
|
|
sub sp, sp, #0x54
|
|
mov r5, r0
|
|
ldrb r0, [r5, #0x129]
|
|
ldrh r4, [r5, #0x7a]
|
|
cmp r0, #0
|
|
ldr r0, _0218460c ; =0x0000ffff
|
|
movne r4, #4
|
|
cmp r4, r0
|
|
addeq sp, sp, #0x54
|
|
ldmeqia sp!, {r3, r4, r5, r6, pc}
|
|
ldrh r0, [r1]
|
|
tst r0, #4
|
|
bne _02184470
|
|
tst r0, #8
|
|
addeq sp, sp, #0x54
|
|
ldmeqia sp!, {r3, r4, r5, r6, pc}
|
|
_02184470:
|
|
add r0, r5, #0x48
|
|
add r3, sp, #0x48
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
add r1, sp, #0x14
|
|
str r1, [sp]
|
|
mov r2, #0
|
|
add r0, sp, #0x10
|
|
stmib sp, {r0, r2}
|
|
mov r1, r3
|
|
ldr r0, _02184610 ; =data_027e0d3c
|
|
str r2, [sp, #0xc]
|
|
ldr r0, [r0]
|
|
mov r3, r2
|
|
bl func_ov00_02079470
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x54
|
|
ldmeqia sp!, {r3, r4, r5, r6, pc}
|
|
add r0, sp, #0x28
|
|
bl func_01ffbe34
|
|
mov r1, #0
|
|
add r0, sp, #0x28
|
|
str r1, [sp, #0x2c]
|
|
str r0, [sp]
|
|
ldr r1, [sp, #0x14]
|
|
ldr r2, [sp, #0x10]
|
|
ldr r0, _02184614 ; =data_02063e4c
|
|
mov r3, r4
|
|
bl func_020313c8
|
|
ldr r0, _02184618 ; =data_027e0c68
|
|
ldr r0, [r0, #0x38]
|
|
cmp r0, #0
|
|
beq _02184508
|
|
add r0, r0, #0x100
|
|
ldrsh r0, [r0, #0x5c]
|
|
cmp r0, #0
|
|
addgt sp, sp, #0x54
|
|
ldmgtia sp!, {r3, r4, r5, r6, pc}
|
|
_02184508:
|
|
mov r0, #2
|
|
str r0, [sp, #0x2c]
|
|
ldrh r1, [r5, #0x78]
|
|
ldr r2, _0218461c ; =data_02050f54
|
|
add r0, sp, #0x18
|
|
mov r1, r1, asr #0x4
|
|
mov r4, r1, lsl #0x1
|
|
add r1, r4, #1
|
|
mov r3, r1, lsl #0x1
|
|
mov r1, r4, lsl #0x1
|
|
ldrsh r4, [r2, r1]
|
|
ldrsh r5, [r2, r3]
|
|
mov r1, r4
|
|
rsb r2, r5, #0
|
|
blx func_01ff8018
|
|
mov r0, #0x1800
|
|
umull lr, ip, r4, r0
|
|
mov r2, #0
|
|
mla ip, r4, r2, ip
|
|
umull r1, r3, r5, r0
|
|
mov r4, r4, asr #0x1f
|
|
adds lr, lr, #0x800
|
|
mla ip, r4, r0, ip
|
|
adc ip, ip, #0
|
|
adds r4, r1, #0x800
|
|
mov lr, lr, lsr #0xc
|
|
add r6, sp, #0x18
|
|
mla r3, r5, r2, r3
|
|
mov r1, r5, asr #0x1f
|
|
mla r3, r1, r0, r3
|
|
adc r0, r3, #0
|
|
ldr r1, [sp, #0x48]
|
|
orr lr, lr, ip, lsl #20
|
|
add r5, r1, lr
|
|
mov r1, r4, lsr #0xc
|
|
ldr r3, [sp, #0x50]
|
|
orr r1, r1, r0, lsl #20
|
|
add r0, r3, r1
|
|
str r0, [sp, #0x50]
|
|
str r6, [sp, #0x28]
|
|
str r5, [sp, #0x48]
|
|
add r1, sp, #0x14
|
|
str r1, [sp]
|
|
add r0, sp, #0x10
|
|
stmib sp, {r0, r2}
|
|
ldr r0, _02184610 ; =data_027e0d3c
|
|
str r2, [sp, #0xc]
|
|
ldr r0, [r0]
|
|
add r1, sp, #0x48
|
|
mov r3, r2
|
|
bl func_ov00_02079470
|
|
add r1, sp, #0x28
|
|
str r1, [sp]
|
|
ldr r0, _02184614 ; =data_02063e4c
|
|
ldr r1, [sp, #0x14]
|
|
ldr r2, [sp, #0x10]
|
|
mov r3, #0x25
|
|
bl func_020313c8
|
|
ldr r0, _02184620 ; =data_027e0c38
|
|
mov r1, #2
|
|
mov r2, #7
|
|
mov r3, #1
|
|
bl func_02033e70
|
|
add sp, sp, #0x54
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0218442c
|
|
_0218460c: .word 0x0000ffff
|
|
_02184610: .word data_027e0d3c
|
|
_02184614: .word data_02063e4c
|
|
_02184618: .word data_027e0c68
|
|
_0218461c: .word data_02050f54
|
|
_02184620: .word data_027e0c38
|
|
|
|
.global func_ov36_02184624
|
|
arm_func_start func_ov36_02184624
|
|
func_ov36_02184624: ; 0x02184624
|
|
stmdb sp!, {r4, r5, lr}
|
|
sub sp, sp, #0xcc
|
|
mov r4, r0
|
|
cmp r1, #0
|
|
ldrneb r0, [r4, #0xa5]
|
|
ldreqb r0, [r4, #0xa4]
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xcc
|
|
ldmeqia sp!, {r4, r5, pc}
|
|
add r0, r4, #0x8e0
|
|
bl func_ov17_021687f0
|
|
add r0, r4, #0x1e8
|
|
add r0, r0, #0x1800
|
|
bl func_ov17_021687f0
|
|
ldr r0, [r4, #0x878]
|
|
tst r0, #0x40
|
|
add r0, r4, #0x800
|
|
ldreqsh r1, [r0, #0x94]
|
|
ldreqsh r0, [r0, #0x96]
|
|
addeq r0, r1, r0
|
|
beq _02184684
|
|
ldrsh r1, [r0, #0x96]
|
|
ldrsh r0, [r0, #0x94]
|
|
sub r0, r1, r0
|
|
_02184684:
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, lsr #0x10
|
|
cmp r0, #0
|
|
bne _021846c4
|
|
ldrh r1, [r4, #0x78]
|
|
ldr r3, _021848e4 ; =data_02050f54
|
|
add r0, sp, #0xa8
|
|
mov r1, r1, asr #0x4
|
|
mov r2, r1, lsl #0x1
|
|
add r1, r2, #1
|
|
mov r5, r2, lsl #0x1
|
|
mov r2, r1, lsl #0x1
|
|
ldrsh r1, [r3, r5]
|
|
ldrsh r2, [r3, r2]
|
|
blx func_01ff8214
|
|
b _02184728
|
|
_021846c4:
|
|
mov r0, r0, asr #0x4
|
|
mov r1, r0, lsl #0x1
|
|
add r0, r1, #1
|
|
ldr r2, _021848e4 ; =data_02050f54
|
|
mov r1, r1, lsl #0x1
|
|
mov r0, r0, lsl #0x1
|
|
ldrsh r1, [r2, r1]
|
|
ldrsh r2, [r2, r0]
|
|
add r0, sp, #0xa8
|
|
blx func_01ff8230
|
|
ldrh r1, [r4, #0x78]
|
|
ldr r3, _021848e4 ; =data_02050f54
|
|
add r0, sp, #0x84
|
|
mov r1, r1, asr #0x4
|
|
mov r2, r1, lsl #0x1
|
|
add r1, r2, #1
|
|
mov r5, r2, lsl #0x1
|
|
mov r2, r1, lsl #0x1
|
|
ldrsh r1, [r3, r5]
|
|
ldrsh r2, [r3, r2]
|
|
blx func_01ff8214
|
|
add r0, sp, #0xa8
|
|
add r1, sp, #0x84
|
|
mov r2, r0
|
|
bl func_0202e030
|
|
_02184728:
|
|
ldr r1, [r4, #0x868]
|
|
mov r0, #0
|
|
str r0, [sp, #0x78]
|
|
str r0, [sp, #0x7c]
|
|
str r1, [sp, #0x80]
|
|
ldrsh r1, [r4, #0x78]
|
|
add r0, sp, #0x78
|
|
bl func_ov00_020a61ac
|
|
ldr r1, [r4, #0x48]
|
|
add r0, sp, #0x78
|
|
str r1, [sp, #0x60]
|
|
ldr r2, [r4, #0x4c]
|
|
add r1, sp, #0x60
|
|
str r2, [sp, #0x64]
|
|
ldr r3, [r4, #0x50]
|
|
mov r2, r0
|
|
str r3, [sp, #0x68]
|
|
bl func_01ff9bc4
|
|
add r1, sp, #0xa8
|
|
add r2, sp, #0x78
|
|
add r0, r4, #0x158
|
|
bl func_ov00_020c5e88
|
|
ldr r0, [r4, #0x878]
|
|
tst r0, #0x400000
|
|
beq _021847bc
|
|
add lr, sp, #0x30
|
|
add r5, r4, #0x234
|
|
mov ip, lr
|
|
ldmia r5!, {r0, r1, r2, r3}
|
|
stmia lr!, {r0, r1, r2, r3}
|
|
ldmia r5!, {r0, r1, r2, r3}
|
|
stmia lr!, {r0, r1, r2, r3}
|
|
ldmia r5, {r0, r1, r2, r3}
|
|
stmia lr, {r0, r1, r2, r3}
|
|
mov r1, ip
|
|
add r0, r4, #0x570
|
|
bl func_ov00_020c6024
|
|
_021847bc:
|
|
ldr r1, [r4, #0x838]
|
|
add r0, sp, #0x24
|
|
str r1, [r4, #0x82c]
|
|
ldr r2, [r4, #0x83c]
|
|
add r1, r4, #0x178
|
|
str r2, [r4, #0x830]
|
|
ldr r2, [r4, #0x840]
|
|
str r2, [r4, #0x834]
|
|
bl func_ov36_0217c5d0
|
|
ldr r1, [sp, #0x24]
|
|
add r0, sp, #0x18
|
|
str r1, [r4, #0x838]
|
|
ldr r2, [sp, #0x28]
|
|
add r1, r4, #0x178
|
|
str r2, [r4, #0x83c]
|
|
ldr r2, [sp, #0x2c]
|
|
str r2, [r4, #0x840]
|
|
bl func_ov36_0217c600
|
|
add r0, sp, #0x18
|
|
add r3, sp, #0x6c
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
add r1, r4, #0x38
|
|
ldr r2, [r4, #0x4c]
|
|
mov r0, r3
|
|
add r1, r1, #0x800
|
|
str r2, [r4, #0x83c]
|
|
bl func_ov00_020ce2f0
|
|
ldr r2, _021848e8 ; =0x00000333
|
|
ldr r1, _021848ec ; =0x0000219a
|
|
cmp r0, r2
|
|
bge _0218484c
|
|
mov r0, #0
|
|
str r0, [r4, #0x864]
|
|
rsb r1, r1, #0x3800
|
|
b _02184898
|
|
_0218484c:
|
|
cmp r0, #0x1800
|
|
bgt _02184898
|
|
rsb r1, r2, #0
|
|
add r0, r0, r1
|
|
rsb r1, r2, #0x1800
|
|
bl func_01ff98e0
|
|
ldr r1, _021848f0 ; =0x00000b34
|
|
mov r2, #0
|
|
umull ip, r3, r0, r1
|
|
mla r3, r0, r2, r3
|
|
mov r2, r0, asr #0x1f
|
|
mla r3, r2, r1, r3
|
|
adds ip, ip, #0x800
|
|
adc r1, r3, #0
|
|
mov r2, ip, lsr #0xc
|
|
orr r2, r2, r1, lsl #20
|
|
add r1, r2, #0x66
|
|
str r0, [r4, #0x864]
|
|
add r1, r1, #0x1600
|
|
_02184898:
|
|
str r1, [sp]
|
|
ldrsh r2, [r4, #0x78]
|
|
add r1, r4, #0x38
|
|
mov r0, #0x1f
|
|
str r2, [sp, #4]
|
|
str r0, [sp, #8]
|
|
mov ip, #1
|
|
str ip, [sp, #0xc]
|
|
str ip, [sp, #0x10]
|
|
ldr r0, _021848f4 ; =data_ov00_020e9370
|
|
ldr r3, _021848f8 ; =0x00001666
|
|
add r2, r1, #0x800
|
|
mov r1, #0
|
|
str ip, [sp, #0x14]
|
|
bl func_ov05_02102c2c
|
|
add r0, r4, #0x158
|
|
bl func_ov36_0217c91c
|
|
add sp, sp, #0xcc
|
|
ldmia sp!, {r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02184624
|
|
_021848e4: .word data_02050f54
|
|
_021848e8: .word 0x00000333
|
|
_021848ec: .word 0x0000219a
|
|
_021848f0: .word 0x00000b34
|
|
_021848f4: .word data_ov00_020e9370
|
|
_021848f8: .word 0x00001666
|
|
|
|
.global func_ov36_021848fc
|
|
arm_func_start func_ov36_021848fc
|
|
func_ov36_021848fc: ; 0x021848fc
|
|
ldr r2, _0218490c ; =data_ov36_02186cf4
|
|
str r2, [r0]
|
|
strb r1, [r0, #4]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov36_021848fc
|
|
_0218490c: .word data_ov36_02186cf4
|
|
|
|
.global func_ov36_02184910
|
|
arm_func_start func_ov36_02184910
|
|
func_ov36_02184910: ; 0x02184910
|
|
ldr r3, [r1, #4]
|
|
ldr r2, _02184934 ; =0x47524d47
|
|
cmp r3, r2
|
|
ldreqb r2, [r0, #4]
|
|
ldreqb r0, [r1, #0x2a]
|
|
cmpeq r2, r0
|
|
moveq r0, #1
|
|
movne r0, #0
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02184910
|
|
_02184934: .word 0x47524d47
|
|
|
|
.global func_ov36_02184938
|
|
arm_func_start func_ov36_02184938
|
|
func_ov36_02184938: ; 0x02184938
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #0x1c
|
|
mov r4, r0
|
|
cmp r1, #0
|
|
bne _021849c4
|
|
ldr r1, _021849dc ; =data_027e0fe4
|
|
ldr r2, _021849e0 ; =0x4e415649
|
|
ldr r1, [r1]
|
|
add r0, sp, #8
|
|
bl func_ov00_020c3894
|
|
ldr r0, [sp, #8]
|
|
add r3, sp, #8
|
|
str r0, [r4, #0x7dc]
|
|
ldr r1, [sp, #0xc]
|
|
add r0, sp, #0
|
|
str r1, [r4, #0x7e0]
|
|
mov r1, #1
|
|
mov r2, #0
|
|
str r3, [sp, #0x10]
|
|
str r1, [sp, #0x14]
|
|
str r2, [sp, #0x18]
|
|
bl func_ov36_021848fc
|
|
ldr r0, _021849dc ; =data_027e0fe4
|
|
add r1, sp, #0
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x10
|
|
bl func_ov00_020c37ec
|
|
cmp r0, #0
|
|
beq _021849d0
|
|
ldr r1, [sp, #0x10]
|
|
ldr r0, [r1]
|
|
str r0, [r4, #0x7e4]
|
|
ldr r0, [r1, #4]
|
|
str r0, [r4, #0x7e8]
|
|
b _021849d0
|
|
_021849c4:
|
|
add sp, sp, #0x1c
|
|
mov r0, #0
|
|
ldmia sp!, {r3, r4, pc}
|
|
_021849d0:
|
|
mov r0, #1
|
|
add sp, sp, #0x1c
|
|
ldmia sp!, {r3, r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02184938
|
|
_021849dc: .word data_027e0fe4
|
|
_021849e0: .word 0x4e415649
|
|
|
|
.global func_ov36_021849e4
|
|
arm_func_start func_ov36_021849e4
|
|
func_ov36_021849e4: ; 0x021849e4
|
|
stmdb sp!, {r3, lr}
|
|
cmp r1, #1
|
|
beq _02184a04
|
|
cmp r1, #2
|
|
beq _02184a30
|
|
cmp r1, #3
|
|
beq _02184a48
|
|
b _02184a5c
|
|
_02184a04:
|
|
ldr r1, [r0, #0x878]
|
|
tst r1, #0x80000
|
|
beq _02184a28
|
|
ldr r1, [r0, #0x138]
|
|
cmp r1, #0x1e
|
|
blt _02184a28
|
|
mov r1, #1
|
|
bl func_ov36_02184a64
|
|
ldmia sp!, {r3, pc}
|
|
_02184a28:
|
|
mov r0, #0
|
|
ldmia sp!, {r3, pc}
|
|
_02184a30:
|
|
mov r1, #2
|
|
bl func_ov36_02184a64
|
|
cmp r0, #0
|
|
bne _02184a5c
|
|
mov r0, #0
|
|
ldmia sp!, {r3, pc}
|
|
_02184a48:
|
|
mov r1, #1
|
|
bl func_ov36_02184a64
|
|
cmp r0, #0
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
_02184a5c:
|
|
mov r0, #1
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end func_ov36_021849e4
|
|
|
|
.global func_ov36_02184a64
|
|
arm_func_start func_ov36_02184a64
|
|
func_ov36_02184a64: ; 0x02184a64
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0x118
|
|
ldr r2, _02184dd8 ; =data_027e0f74
|
|
mov r5, r0
|
|
mov r6, r1
|
|
ldr r0, [r2]
|
|
ldr r1, [r5, #0x66c]
|
|
bl func_ov00_02097b9c
|
|
cmp r0, #0
|
|
beq _02184a9c
|
|
ldr r0, _02184dd8 ; =data_027e0f74
|
|
ldr r1, [r5, #0x66c]
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097bcc
|
|
_02184a9c:
|
|
add r0, sp, #0x68
|
|
bl func_ov00_0209a4f4
|
|
mov r1, #3
|
|
ldr r0, _02184ddc ; =data_027e0f64
|
|
mvn r3, #0
|
|
mov r2, #0x32
|
|
ldr r0, [r0]
|
|
str r3, [sp, #0x6c]
|
|
strb r2, [sp, #0x71]
|
|
strb r1, [sp, #0x72]
|
|
strb r1, [sp, #0x73]
|
|
ldr r0, [r0, #4]
|
|
add r1, sp, #0
|
|
bl func_ov00_02087d34
|
|
mov r1, #0
|
|
ldr r0, _02184de0 ; =data_027e0e60
|
|
str r1, [sp, #0x1c]
|
|
ldr r0, [r0]
|
|
str r1, [sp, #0x20]
|
|
str r1, [sp, #0x24]
|
|
bl func_ov00_02083400
|
|
ldr r1, _02184de0 ; =data_027e0e60
|
|
mov r4, r0
|
|
ldr r0, [r1]
|
|
bl func_ov00_020833f4
|
|
mov r2, #0
|
|
mov r1, r2
|
|
cmp r6, #0
|
|
beq _02184b24
|
|
cmp r6, #1
|
|
beq _02184c40
|
|
cmp r6, #2
|
|
beq _02184c68
|
|
b _02184c94
|
|
_02184b24:
|
|
mov r1, #0x2000
|
|
ldr r7, _02184de4 ; =0x0000038e
|
|
sub r6, r1, #0x17c
|
|
mov r3, #0x16800
|
|
str r7, [sp, #0xc]
|
|
str r6, [sp, #0x10]
|
|
str r2, [sp, #0x14]
|
|
str r3, [sp, #0x18]
|
|
str r0, [r5, #0x820]
|
|
str r1, [r5, #0x824]
|
|
add r4, r4, #0xa000
|
|
str r4, [r5, #0x828]
|
|
ldr r2, [sp]
|
|
str r2, [r5, #0x6e4]
|
|
ldr r2, [sp, #4]
|
|
str r2, [r5, #0x6e8]
|
|
ldr r2, [sp, #8]
|
|
str r2, [r5, #0x6ec]
|
|
ldr r2, [sp, #0xc]
|
|
str r2, [r5, #0x6f0]
|
|
ldr r2, [sp, #0x10]
|
|
str r2, [r5, #0x6f4]
|
|
ldr r2, [sp, #0x14]
|
|
str r2, [r5, #0x6f8]
|
|
ldr r2, [sp, #0x18]
|
|
str r2, [r5, #0x6fc]
|
|
ldr r2, [sp, #0x1c]
|
|
str r2, [r5, #0x700]
|
|
ldr r2, [sp, #0x20]
|
|
str r2, [r5, #0x704]
|
|
ldr r2, [sp, #0x24]
|
|
str r2, [r5, #0x708]
|
|
ldr r2, [sp, #0x28]
|
|
str r2, [r5, #0x70c]
|
|
ldr r2, [sp, #0x2c]
|
|
str r2, [r5, #0x710]
|
|
ldr r2, [sp, #0x30]
|
|
str r2, [r5, #0x714]
|
|
ldr r2, [sp, #0x34]
|
|
str r2, [r5, #0x718]
|
|
ldr r2, [sp, #0x38]
|
|
str r2, [r5, #0x71c]
|
|
ldr r2, [sp, #0x3c]
|
|
str r2, [r5, #0x720]
|
|
ldr r2, [sp, #0x40]
|
|
str r2, [r5, #0x724]
|
|
ldr r2, [sp, #0x44]
|
|
str r2, [r5, #0x728]
|
|
ldr r2, [sp, #0x48]
|
|
str r2, [r5, #0x72c]
|
|
ldr r2, [sp, #0x4c]
|
|
str r2, [r5, #0x730]
|
|
ldr r2, [sp, #0x50]
|
|
str r2, [r5, #0x734]
|
|
ldr r2, [sp, #0x54]
|
|
str r2, [r5, #0x738]
|
|
ldr r2, [sp, #0x58]
|
|
str r2, [r5, #0x73c]
|
|
ldr r2, [sp, #0x5c]
|
|
str r2, [r5, #0x740]
|
|
ldrb r2, [sp, #0x60]
|
|
strb r2, [r5, #0x744]
|
|
ldrb r2, [sp, #0x61]
|
|
strb r2, [r5, #0x745]
|
|
ldrb r2, [sp, #0x62]
|
|
strb r2, [r5, #0x746]
|
|
ldrb r2, [sp, #0x63]
|
|
strb r2, [r5, #0x747]
|
|
ldrb r2, [sp, #0x64]
|
|
strb r2, [r5, #0x748]
|
|
b _02184c94
|
|
_02184c40:
|
|
mov r1, #0x2000
|
|
ldr r7, _02184de4 ; =0x0000038e
|
|
sub r6, r1, #0x17c
|
|
mov r3, #0x16800
|
|
str r7, [sp, #0xc]
|
|
str r6, [sp, #0x10]
|
|
str r2, [sp, #0x14]
|
|
str r3, [sp, #0x18]
|
|
add r4, r4, #0xa000
|
|
b _02184c94
|
|
_02184c68:
|
|
ldr r8, _02184de4 ; =0x0000038e
|
|
ldr r7, _02184de8 ; =0x00001e84
|
|
mov r6, #0x1b800
|
|
mov r3, #2
|
|
str r8, [sp, #0xc]
|
|
str r7, [sp, #0x10]
|
|
str r2, [sp, #0x14]
|
|
str r6, [sp, #0x18]
|
|
strb r3, [sp, #0x73]
|
|
add r0, r0, #0x4800
|
|
sub r4, r4, #0xa800
|
|
_02184c94:
|
|
str r0, [sp, #0x88]
|
|
ldr sb, [sp]
|
|
ldr r8, [sp, #4]
|
|
ldr r0, [sp, #0x10]
|
|
str r1, [sp, #0x8c]
|
|
ldr r1, [sp, #0xc]
|
|
str r4, [sp, #0x90]
|
|
str sb, [sp, #0x94]
|
|
ldr sb, [sp, #0x14]
|
|
mov r2, #1
|
|
str r8, [sp, #0x98]
|
|
ldr r8, [sp, #0x18]
|
|
ldr r4, [sp, #0x1c]
|
|
str r0, [sp, #0xa4]
|
|
ldr r0, [sp, #0x24]
|
|
str r1, [sp, #0xa0]
|
|
ldr r1, [sp, #0x20]
|
|
str sb, [sp, #0xa8]
|
|
ldr sb, [sp, #0x28]
|
|
str r8, [sp, #0xac]
|
|
ldr r8, [sp, #0x2c]
|
|
str r4, [sp, #0xb0]
|
|
ldr r4, [sp, #0x30]
|
|
str r0, [sp, #0xb8]
|
|
ldr r0, [sp, #0x38]
|
|
str r1, [sp, #0xb4]
|
|
ldr r1, [sp, #0x34]
|
|
ldr sl, [sp, #8]
|
|
str sb, [sp, #0xbc]
|
|
ldr sb, [sp, #0x3c]
|
|
str r8, [sp, #0xc0]
|
|
ldr r8, [sp, #0x40]
|
|
str r4, [sp, #0xc4]
|
|
ldr r4, [sp, #0x44]
|
|
str r0, [sp, #0xcc]
|
|
ldr r0, [sp, #0x4c]
|
|
ldrb r7, [sp, #0x60]
|
|
ldrb r6, [sp, #0x61]
|
|
ldrb lr, [sp, #0x62]
|
|
ldrb ip, [sp, #0x63]
|
|
ldrb r3, [sp, #0x64]
|
|
str r1, [sp, #0xc8]
|
|
ldr r1, [sp, #0x48]
|
|
str sl, [sp, #0x9c]
|
|
str sb, [sp, #0xd0]
|
|
ldr sl, [sp, #0x50]
|
|
str r8, [sp, #0xd4]
|
|
ldr sb, [sp, #0x54]
|
|
str r4, [sp, #0xd8]
|
|
ldr r8, [sp, #0x58]
|
|
ldr r4, [sp, #0x5c]
|
|
str r1, [sp, #0xdc]
|
|
ldr fp, _02184dd8 ; =data_027e0f74
|
|
str r0, [sp, #0xe0]
|
|
ldr r0, [fp]
|
|
add r1, sp, #0x68
|
|
str sl, [sp, #0xe4]
|
|
str sb, [sp, #0xe8]
|
|
str r8, [sp, #0xec]
|
|
str r4, [sp, #0xf0]
|
|
strb r7, [sp, #0xf4]
|
|
strb r6, [sp, #0xf5]
|
|
strb lr, [sp, #0xf6]
|
|
strb ip, [sp, #0xf7]
|
|
strb r3, [sp, #0xf8]
|
|
strb r2, [sp, #0x7c]
|
|
strb r2, [sp, #0x7e]
|
|
bl func_ov00_02097810
|
|
mvn r1, #0
|
|
str r0, [r5, #0x66c]
|
|
cmp r0, r1
|
|
add r0, sp, #0x68
|
|
bne _02184dc8
|
|
bl func_ov00_0209a508
|
|
add sp, sp, #0x118
|
|
mov r0, #0
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02184dc8:
|
|
bl func_ov00_0209a508
|
|
mov r0, #1
|
|
add sp, sp, #0x118
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02184a64
|
|
_02184dd8: .word data_027e0f74
|
|
_02184ddc: .word data_027e0f64
|
|
_02184de0: .word data_027e0e60
|
|
_02184de4: .word 0x0000038e
|
|
_02184de8: .word 0x00001e84
|
|
|
|
.global func_ov36_02184dec
|
|
arm_func_start func_ov36_02184dec
|
|
func_ov36_02184dec: ; 0x02184dec
|
|
ldr r3, [r1]
|
|
ldr r1, [r0, #0x850]
|
|
cmp r3, r1
|
|
strlt r3, [r0, #0x850]
|
|
ldr r2, [r2]
|
|
ldr r1, [r0, #0x854]
|
|
cmp r2, r1
|
|
strlt r2, [r0, #0x854]
|
|
bx lr
|
|
arm_func_end func_ov36_02184dec
|
|
|
|
.global func_ov36_02184e10
|
|
arm_func_start func_ov36_02184e10
|
|
func_ov36_02184e10: ; 0x02184e10
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r5, r0
|
|
ldrb r0, [r5, #0x8a8]
|
|
cmp r0, #0
|
|
moveq r4, #0x4000
|
|
ldr r0, [r5, #0x130]
|
|
movne r4, #0x6000
|
|
cmp r0, #0x18
|
|
blt _02184e60
|
|
ldr r0, [r5, #0x878]
|
|
tst r0, #0x10
|
|
beq _02184f2c
|
|
ldr r1, [r5, #0x878]
|
|
ldr r0, _02184f3c ; =data_027e103c
|
|
bic r1, r1, #0x10
|
|
str r1, [r5, #0x878]
|
|
ldr r0, [r0]
|
|
mov r1, #0
|
|
bl func_ov00_020cfe10
|
|
b _02184f2c
|
|
_02184e60:
|
|
ldr r0, _02184f40 ; =data_027e0fc8
|
|
ldr r0, [r0]
|
|
bl func_ov00_020bc46c
|
|
cmp r0, #1
|
|
ldr r0, [r5, #0x878]
|
|
bne _02184ed4
|
|
tst r0, #0x10
|
|
ldr r0, [r5, #0x850]
|
|
beq _02184eac
|
|
cmp r0, r4
|
|
blt _02184f2c
|
|
ldr r0, _02184f3c ; =data_027e103c
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
bl func_ov00_020cfe10
|
|
ldr r0, [r5, #0x878]
|
|
bic r0, r0, #0x10
|
|
str r0, [r5, #0x878]
|
|
b _02184f2c
|
|
_02184eac:
|
|
cmp r0, r4
|
|
bge _02184f2c
|
|
ldr r0, _02184f3c ; =data_027e103c
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
bl func_ov00_020cfe10
|
|
ldr r0, [r5, #0x878]
|
|
orr r0, r0, #0x10
|
|
str r0, [r5, #0x878]
|
|
b _02184f2c
|
|
_02184ed4:
|
|
tst r0, #0x10
|
|
ldr r0, [r5, #0x854]
|
|
beq _02184f08
|
|
cmp r0, r4
|
|
blt _02184f2c
|
|
ldr r0, _02184f3c ; =data_027e103c
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
bl func_ov00_020cfe10
|
|
ldr r0, [r5, #0x878]
|
|
bic r0, r0, #0x10
|
|
str r0, [r5, #0x878]
|
|
b _02184f2c
|
|
_02184f08:
|
|
cmp r0, r4
|
|
bge _02184f2c
|
|
ldr r0, _02184f3c ; =data_027e103c
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
bl func_ov00_020cfe10
|
|
ldr r0, [r5, #0x878]
|
|
orr r0, r0, #0x10
|
|
str r0, [r5, #0x878]
|
|
_02184f2c:
|
|
mvn r0, #0x80000000
|
|
str r0, [r5, #0x850]
|
|
str r0, [r5, #0x854]
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02184e10
|
|
_02184f3c: .word data_027e103c
|
|
_02184f40: .word data_027e0fc8
|
|
|
|
.global func_ov36_02184f44
|
|
arm_func_start func_ov36_02184f44
|
|
func_ov36_02184f44: ; 0x02184f44
|
|
stmdb sp!, {r3, r4, r5, r6, lr}
|
|
sub sp, sp, #0xc
|
|
mov r6, r0
|
|
ldrb r2, [r6, #0x8ab]
|
|
mov r5, r1
|
|
mov r4, #0
|
|
cmp r2, #0
|
|
beq _02184f6c
|
|
bl func_ov36_021830e8
|
|
mov r4, r0
|
|
_02184f6c:
|
|
ldr r1, [r6, #0x48]
|
|
ldr r0, _0218504c ; =data_027e0e60
|
|
str r1, [sp]
|
|
ldr r1, [r6, #0x4c]
|
|
ldr r0, [r0]
|
|
str r1, [sp, #4]
|
|
ldr r1, [r6, #0x50]
|
|
add r2, sp, #0
|
|
str r1, [sp, #8]
|
|
ldrh r1, [r6, #0x22]
|
|
bl func_ov00_02083770
|
|
strb r0, [r5]
|
|
cmp r4, #0
|
|
beq _02185040
|
|
cmp r4, #1
|
|
bne _02185008
|
|
ldr r0, [r6, #0x878]
|
|
tst r0, #0x100000
|
|
bne _02184fd8
|
|
mov r0, r6
|
|
bl func_ov36_02185864
|
|
cmp r0, #0
|
|
bne _02184ffc
|
|
mov r0, r6
|
|
mov r1, #9
|
|
bl func_ov36_0217d6bc
|
|
b _02184ffc
|
|
_02184fd8:
|
|
ldrb r0, [r6, #0x8a7]
|
|
cmp r0, #3
|
|
mov r0, r6
|
|
bne _02184ff4
|
|
mov r1, #0xa
|
|
bl func_ov36_0217d6bc
|
|
b _02184ffc
|
|
_02184ff4:
|
|
mov r1, #9
|
|
bl func_ov36_0217d6bc
|
|
_02184ffc:
|
|
add sp, sp, #0xc
|
|
mov r0, #2
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_02185008:
|
|
cmp r4, #2
|
|
mov r0, r6
|
|
bne _02185028
|
|
mov r1, #3
|
|
bl func_ov36_0217d6bc
|
|
add sp, sp, #0xc
|
|
mov r0, #2
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_02185028:
|
|
bl func_ov00_020c2974
|
|
add r1, r6, #0x800
|
|
strh r0, [r1, #0x8e]
|
|
add sp, sp, #0xc
|
|
mov r0, #1
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_02185040:
|
|
mov r0, #0
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02184f44
|
|
_0218504c: .word data_027e0e60
|
|
|
|
.global func_ov36_02185050
|
|
arm_func_start func_ov36_02185050
|
|
func_ov36_02185050: ; 0x02185050
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #0xc
|
|
ldr r1, _021850c0 ; =data_027e0fc8
|
|
mov r4, r0
|
|
ldr r0, [r1]
|
|
bl func_ov00_020bc46c
|
|
cmp r0, #1
|
|
bne _02185090
|
|
ldr r0, _021850c4 ; =data_027e0f94
|
|
ldr r2, [r0]
|
|
ldr r1, [r0, #4]
|
|
str r2, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r0, [r0, #8]
|
|
str r0, [sp, #8]
|
|
b _021850ac
|
|
_02185090:
|
|
ldr r1, [r4, #0x6b4]
|
|
ldr r0, [r1, #0x48]
|
|
str r0, [sp]
|
|
ldr r0, [r1, #0x4c]
|
|
str r0, [sp, #4]
|
|
ldr r0, [r1, #0x50]
|
|
str r0, [sp, #8]
|
|
_021850ac:
|
|
add r1, sp, #0
|
|
mov r0, r4
|
|
bl func_ov00_020c2938
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02185050
|
|
_021850c0: .word data_027e0fc8
|
|
_021850c4: .word data_027e0f94
|
|
|
|
.global func_ov36_021850c8
|
|
arm_func_start func_ov36_021850c8
|
|
func_ov36_021850c8: ; 0x021850c8
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldr r0, [r4, #0x360]
|
|
add r0, r4, r0, lsl #2
|
|
ldr r0, [r0, #0x358]
|
|
cmp r0, #0
|
|
beq _021850f0
|
|
cmp r0, #0x16
|
|
beq _0218515c
|
|
ldmia sp!, {r4, pc}
|
|
_021850f0:
|
|
ldr r0, [r4, #0x168]
|
|
mov r1, #0x6000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
bne _02185120
|
|
ldr r0, [r4, #0x168]
|
|
mov r1, #0x1d000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r4, pc}
|
|
_02185120:
|
|
ldr r0, _021851d4 ; =data_027e0ffc
|
|
add r2, r4, #0x48
|
|
mov r1, #0x2c0
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
ldr r0, [r4, #0x130]
|
|
cmp r0, #4
|
|
cmpne r0, #1
|
|
ldmneia sp!, {r4, pc}
|
|
ldr r0, _021851d8 ; =data_027e0f64
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_02088000
|
|
ldmia sp!, {r4, pc}
|
|
_0218515c:
|
|
ldr r0, [r4, #0x168]
|
|
mov r1, #0x7000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
bne _021851bc
|
|
ldr r0, [r4, #0x168]
|
|
mov r1, #0xe000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
bne _021851bc
|
|
ldr r0, [r4, #0x168]
|
|
mov r1, #0x17000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
bne _021851bc
|
|
ldr r0, [r4, #0x168]
|
|
mov r1, #0x1e000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r4, pc}
|
|
_021851bc:
|
|
ldr r0, _021851d4 ; =data_027e0ffc
|
|
add r2, r4, #0x48
|
|
mov r1, #0x2c0
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_021850c8
|
|
_021851d4: .word data_027e0ffc
|
|
_021851d8: .word data_027e0f64
|
|
|
|
.global func_ov36_021851dc
|
|
arm_func_start func_ov36_021851dc
|
|
func_ov36_021851dc: ; 0x021851dc
|
|
stmdb sp!, {r4, r5, lr}
|
|
sub sp, sp, #0xc
|
|
ldr ip, _02185270 ; =0x00000666
|
|
mov lr, #0
|
|
mov r3, #0x214
|
|
str lr, [sp]
|
|
str ip, [sp, #4]
|
|
str r3, [sp, #8]
|
|
mov r5, r0
|
|
cmp r2, #0
|
|
mov r4, r1
|
|
ldrnesh r0, [r2]
|
|
bne _02185228
|
|
mov r0, r4
|
|
bl func_ov36_02185050
|
|
ldrsh r1, [r4, #0x78]
|
|
sub r0, r1, r0
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x10
|
|
_02185228:
|
|
cmp r0, #0
|
|
ldrsh r1, [r4, #0x78]
|
|
add r0, sp, #0
|
|
ble _0218524c
|
|
sub r1, r1, #0x4000
|
|
mov r1, r1, lsl #0x10
|
|
mov r1, r1, asr #0x10
|
|
bl func_ov00_020a61ac
|
|
b _0218525c
|
|
_0218524c:
|
|
add r1, r1, #0x4000
|
|
mov r1, r1, lsl #0x10
|
|
mov r1, r1, asr #0x10
|
|
bl func_ov00_020a61ac
|
|
_0218525c:
|
|
add r0, sp, #0
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r5, {r0, r1, r2}
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_021851dc
|
|
_02185270: .word 0x00000666
|
|
|
|
.global func_ov36_02185274
|
|
arm_func_start func_ov36_02185274
|
|
func_ov36_02185274: ; 0x02185274
|
|
stmdb sp!, {r3, lr}
|
|
ldr r1, [r0, #0x858]
|
|
cmp r1, #0
|
|
beq _02185294
|
|
subs r1, r1, #0x148
|
|
str r1, [r0, #0x858]
|
|
movmi r1, #0
|
|
strmi r1, [r0, #0x858]
|
|
_02185294:
|
|
add r1, r0, #0x800
|
|
ldrh r1, [r1, #0x9a]
|
|
ldr ip, _021852f8 ; =data_02050f54
|
|
ldr r2, [r0, #0x858]
|
|
mov r1, r1, asr #0x4
|
|
mov lr, r1, lsl #0x1
|
|
mov r1, lr, lsl #0x1
|
|
ldrsh r3, [ip, r1]
|
|
add r1, lr, #1
|
|
mov r1, r1, lsl #0x1
|
|
smull lr, r2, r3, r2
|
|
adds r3, lr, #0x800
|
|
adc r2, r2, #0
|
|
mov r3, r3, lsr #0xc
|
|
orr r3, r3, r2, lsl #20
|
|
str r3, [r0, #0x60]
|
|
ldrsh r2, [ip, r1]
|
|
ldr r1, [r0, #0x858]
|
|
smull r3, r1, r2, r1
|
|
adds r2, r3, #0x800
|
|
adc r1, r1, #0
|
|
mov r2, r2, lsr #0xc
|
|
orr r2, r2, r1, lsl #20
|
|
str r2, [r0, #0x68]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02185274
|
|
_021852f8: .word data_02050f54
|
|
|
|
.global func_ov36_021852fc
|
|
arm_func_start func_ov36_021852fc
|
|
func_ov36_021852fc: ; 0x021852fc
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldr r0, [r4, #0x870]
|
|
cmp r0, #0
|
|
subne r0, r0, #1
|
|
strne r0, [r4, #0x870]
|
|
add r0, r4, #0x800
|
|
ldrsh r1, [r0, #0x7c]
|
|
cmp r1, #0
|
|
subne r1, r1, #1
|
|
strneh r1, [r0, #0x7c]
|
|
add r0, r4, #0x800
|
|
ldrsh r1, [r0, #0x7e]
|
|
cmp r1, #0
|
|
subne r1, r1, #1
|
|
strneh r1, [r0, #0x7e]
|
|
add r0, r4, #0x800
|
|
ldrsh r2, [r0, #0x88]
|
|
cmp r2, #0
|
|
beq _021853a4
|
|
ldr r1, [r4, #0x878]
|
|
tst r1, #0x100000
|
|
beq _02185368
|
|
cmp r2, #0
|
|
subne r1, r2, #1
|
|
strneh r1, [r0, #0x88]
|
|
b _021853a4
|
|
_02185368:
|
|
tst r1, #0x4000
|
|
subeq r1, r2, #1
|
|
streqh r1, [r0, #0x88]
|
|
beq _021853a4
|
|
ldr r0, _0218540c ; =data_027e0fc8
|
|
ldr r0, [r0]
|
|
bl func_ov00_020bcc78
|
|
cmp r0, #0
|
|
bne _021853a4
|
|
add r0, r4, #0x800
|
|
mov r1, #0
|
|
strh r1, [r0, #0x88]
|
|
ldr r0, [r4, #0x878]
|
|
bic r0, r0, #0x4000
|
|
str r0, [r4, #0x878]
|
|
_021853a4:
|
|
ldrb r0, [r4, #0x11c]
|
|
cmp r0, #0
|
|
ldreqb r0, [r4, #0x8a6]
|
|
cmpeq r0, #0
|
|
bne _021853cc
|
|
add r0, r4, #0x800
|
|
ldrsh r1, [r0, #0x86]
|
|
cmp r1, #0
|
|
subne r1, r1, #1
|
|
strneh r1, [r0, #0x86]
|
|
_021853cc:
|
|
mov r2, #0
|
|
_021853d0:
|
|
add r0, r4, r2, lsl #1
|
|
add r0, r0, #0x800
|
|
ldrsh r1, [r0, #0x80]
|
|
add r2, r2, #1
|
|
cmp r1, #0
|
|
subgt r1, r1, #1
|
|
strgth r1, [r0, #0x80]
|
|
cmp r2, #3
|
|
blt _021853d0
|
|
add r0, r4, #0x800
|
|
ldrsh r1, [r0, #0x8c]
|
|
cmp r1, #0
|
|
subne r1, r1, #1
|
|
strneh r1, [r0, #0x8c]
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_021852fc
|
|
_0218540c: .word data_027e0fc8
|
|
|
|
.global func_ov36_02185410
|
|
arm_func_start func_ov36_02185410
|
|
func_ov36_02185410: ; 0x02185410
|
|
add r0, r0, #0x800
|
|
ldrsh r1, [r0, #0x7e]
|
|
cmp r1, #0x1e
|
|
movlt r1, #0x1e
|
|
strlth r1, [r0, #0x7e]
|
|
bx lr
|
|
arm_func_end func_ov36_02185410
|
|
|
|
.global func_ov36_02185428
|
|
arm_func_start func_ov36_02185428
|
|
func_ov36_02185428: ; 0x02185428
|
|
ldr r0, [r0, #0x878]
|
|
tst r0, #0x400000
|
|
movne r0, #1
|
|
moveq r0, #0
|
|
bx lr
|
|
arm_func_end func_ov36_02185428
|
|
|
|
.global func_ov36_0218543c
|
|
arm_func_start func_ov36_0218543c
|
|
func_ov36_0218543c: ; 0x0218543c
|
|
stmdb sp!, {r3, r4, r5, r6, lr}
|
|
sub sp, sp, #0xc
|
|
mov r4, r0
|
|
ldr r0, [r4, #0x85c]
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xc
|
|
ldmeqia sp!, {r3, r4, r5, r6, pc}
|
|
add r1, r4, #0x800
|
|
ldrh r1, [r1, #0x9a]
|
|
mov ip, #0
|
|
ldr r2, _021854e4 ; =data_02050f54
|
|
mov r1, r1, asr #0x4
|
|
mov r3, r1, lsl #0x1
|
|
add r1, r3, #1
|
|
mov r3, r3, lsl #0x1
|
|
ldrsh r3, [r2, r3]
|
|
mov r1, r1, lsl #0x1
|
|
ldrsh r2, [r2, r1]
|
|
smull r5, lr, r3, r0
|
|
adds r6, r5, #0x800
|
|
smull r3, r0, r2, r0
|
|
adc r5, lr, #0
|
|
adds r2, r3, #0x800
|
|
mov r3, r6, lsr #0xc
|
|
orr r3, r3, r5, lsl #20
|
|
adc r0, r0, #0
|
|
mov r2, r2, lsr #0xc
|
|
orr r2, r2, r0, lsl #20
|
|
add r0, r4, #0x48
|
|
str r2, [sp, #8]
|
|
add r1, sp, #0
|
|
str r3, [sp]
|
|
str ip, [sp, #4]
|
|
mov r2, r0
|
|
bl func_01ff9bc4
|
|
ldr r0, [r4, #0x85c]
|
|
subs r0, r0, #0x148
|
|
str r0, [r4, #0x85c]
|
|
movmi r0, #0
|
|
strmi r0, [r4, #0x85c]
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0218543c
|
|
_021854e4: .word data_02050f54
|
|
|
|
.global func_ov36_021854e8
|
|
arm_func_start func_ov36_021854e8
|
|
func_ov36_021854e8: ; 0x021854e8
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldr r0, [r4, #0x878]
|
|
tst r0, #0x400
|
|
ldmneia sp!, {r4, pc}
|
|
tst r0, #0x200
|
|
ldmeqia sp!, {r4, pc}
|
|
add r0, r4, #0x800
|
|
ldrsh r1, [r0, #0x8a]
|
|
add r1, r1, #1
|
|
strh r1, [r0, #0x8a]
|
|
ldrsh r0, [r0, #0x8a]
|
|
cmp r0, #0x384
|
|
ldmltia sp!, {r4, pc}
|
|
mov r0, #0x10000
|
|
ldr r1, [r4, #0x7cc]
|
|
rsb r0, r0, #0
|
|
and r0, r1, r0
|
|
cmp r0, #0x1000000
|
|
ldmneia sp!, {r4, pc}
|
|
ldr r0, _0218557c ; =data_027e0fc8
|
|
ldr r0, [r0]
|
|
bl func_ov00_020bc46c
|
|
cmp r0, #1
|
|
ldmneia sp!, {r4, pc}
|
|
add r1, r4, #0x3b4
|
|
ldr r0, _02185580 ; =data_027e0c68
|
|
ldr r2, _02185584 ; =0x00690332
|
|
add r1, r1, #0x400
|
|
bl func_02036ce4
|
|
mov r0, r4
|
|
mov r1, #1
|
|
bl func_ov00_020c1908
|
|
ldr r0, [r4, #0x878]
|
|
orr r0, r0, #0xc00
|
|
str r0, [r4, #0x878]
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_021854e8
|
|
_0218557c: .word data_027e0fc8
|
|
_02185580: .word data_027e0c68
|
|
_02185584: .word 0x00690332
|
|
|
|
.global func_ov36_02185588
|
|
arm_func_start func_ov36_02185588
|
|
func_ov36_02185588: ; 0x02185588
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldr r0, [r4, #0x130]
|
|
cmp r0, #0x12
|
|
ldmeqia sp!, {r4, pc}
|
|
mov r0, #0x10000
|
|
ldr r1, [r4, #0x7cc]
|
|
rsb r0, r0, #0
|
|
and r0, r1, r0
|
|
cmp r0, #0x1000000
|
|
ldmeqia sp!, {r4, pc}
|
|
add r0, r4, #0x3b4
|
|
add r0, r0, #0x400
|
|
ldr r1, [r0]
|
|
ldr r1, [r1, #0x10]
|
|
blx r1
|
|
mov r0, #0x10000
|
|
ldr r1, [r4, #0x7cc]
|
|
rsb r0, r0, #0
|
|
and r0, r1, r0
|
|
cmp r0, #0x1000000
|
|
ldreq r0, [r4, #0x878]
|
|
biceq r0, r0, #0x800
|
|
streq r0, [r4, #0x878]
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov36_02185588
|
|
|
|
.global func_ov36_021855ec
|
|
arm_func_start func_ov36_021855ec
|
|
func_ov36_021855ec: ; 0x021855ec
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
mov r6, r0
|
|
add r0, r6, #0x800
|
|
mov r5, r1
|
|
mov r4, r2
|
|
ldr r1, [r5]
|
|
ldrsh r2, [r0, #0x92]
|
|
cmp r1, #0x1000
|
|
strleh r2, [r0, #0x94]
|
|
ble _0218563c
|
|
ldrsh r0, [r0, #0x94]
|
|
sub r0, r2, r0
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x4
|
|
bl func_01ff98e0
|
|
add r1, r6, #0x800
|
|
ldrsh r2, [r1, #0x94]
|
|
add r0, r0, #0x800
|
|
add r0, r2, r0, asr #12
|
|
strh r0, [r1, #0x94]
|
|
_0218563c:
|
|
cmp r4, #0
|
|
bne _0218568c
|
|
add r0, r6, #0x800
|
|
mov r2, #0
|
|
strh r2, [r0, #0x98]
|
|
ldr r1, [r5]
|
|
cmp r1, #0x1000
|
|
strleh r2, [r0, #0x96]
|
|
ldmleia sp!, {r4, r5, r6, pc}
|
|
ldrsh r0, [r0, #0x96]
|
|
rsb r0, r0, #0
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x4
|
|
bl func_01ff98e0
|
|
add r1, r6, #0x800
|
|
ldrsh r2, [r1, #0x96]
|
|
add r0, r0, #0x800
|
|
add r0, r2, r0, asr #12
|
|
strh r0, [r1, #0x96]
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_0218568c:
|
|
add r1, r6, #0x800
|
|
ldrh r3, [r1, #0x98]
|
|
ldr r2, _021856c8 ; =data_02050f54
|
|
mov r0, #0x1f4
|
|
mov r3, r3, asr #0x4
|
|
mov r3, r3, lsl #0x2
|
|
ldrsh r2, [r2, r3]
|
|
smulbb r0, r2, r0
|
|
mov r0, r0, asr #0xc
|
|
strh r0, [r1, #0x96]
|
|
ldrsh r0, [r1, #0x98]
|
|
add r0, r0, #0x1ac
|
|
add r0, r0, #0xc00
|
|
strh r0, [r1, #0x98]
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_021855ec
|
|
_021856c8: .word data_02050f54
|
|
|
|
.global func_ov36_021856cc
|
|
arm_func_start func_ov36_021856cc
|
|
func_ov36_021856cc: ; 0x021856cc
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
sub sp, sp, #0x18
|
|
mov r7, r0
|
|
mov r6, r2
|
|
cmp r1, #0
|
|
beq _021857a8
|
|
ldr r1, _02185854 ; =data_027e0fa0
|
|
ldr r0, _02185858 ; =data_027e0fcc
|
|
ldmia r1, {r2, r5}
|
|
str r5, [sp, #0x10]
|
|
str r2, [sp, #0xc]
|
|
ldr r2, [r1, #8]
|
|
ldr r1, _0218585c ; =data_027e0f94
|
|
str r2, [sp, #0x14]
|
|
ldr r0, [r0]
|
|
ldr r1, [r1, #4]
|
|
ldr r2, [r0, #8]
|
|
ldr r3, [r7, #0x4c]
|
|
mov r0, r5
|
|
mov r4, #0
|
|
_0218571c:
|
|
add r1, r1, r0
|
|
cmp r1, r3
|
|
sub r0, r0, r2
|
|
add r4, r4, #0x1000
|
|
bgt _0218571c
|
|
add r0, sp, #0xc
|
|
mov r2, #0
|
|
mov r1, r0
|
|
str r2, [sp, #0x10]
|
|
bl func_01ff9d4c
|
|
cmp r4, #0x8000
|
|
mov r0, #0x2000
|
|
blt _02185768
|
|
mov r1, r4
|
|
bl func_01ff98e0
|
|
mov r1, r0
|
|
add r0, sp, #0xc
|
|
bl func_01fffbec
|
|
b _0218577c
|
|
_02185768:
|
|
mov r1, #0x8000
|
|
bl func_01ff98e0
|
|
mov r1, r0
|
|
add r0, sp, #0xc
|
|
bl func_01fffbec
|
|
_0218577c:
|
|
ldr r1, [sp, #0xc]
|
|
ldr r0, [sp, #0x14]
|
|
rsb r1, r1, #0
|
|
rsb r0, r0, #0
|
|
str r5, [sp, #0x10]
|
|
str r1, [sp, #0xc]
|
|
str r0, [sp, #0x14]
|
|
ldr r0, [r7, #0x878]
|
|
orr r0, r0, #0x4000
|
|
str r0, [r7, #0x878]
|
|
b _0218581c
|
|
_021857a8:
|
|
bl func_ov00_020c2974
|
|
ldr r1, _02185854 ; =data_027e0fa0
|
|
mov r4, r0, lsl #0x10
|
|
ldr r0, [r1]
|
|
ldr r1, [r1, #8]
|
|
bl func_01ffa0f4
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x10
|
|
add r0, r0, #0x8000
|
|
mov r2, #0
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x10
|
|
rsb r0, r0, r4, lsr #16
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x10
|
|
add r0, r0, r4, lsr #16
|
|
mov r1, r0, lsl #0x10
|
|
mov r3, #0x1000
|
|
add r0, sp, #0xc
|
|
mov r1, r1, asr #0x10
|
|
str r2, [sp, #0xc]
|
|
str r2, [sp, #0x10]
|
|
str r3, [sp, #0x14]
|
|
bl func_ov00_020a61ac
|
|
add r0, sp, #0xc
|
|
mov r1, #0x400
|
|
bl func_01fffbec
|
|
mov r0, #0
|
|
str r0, [sp, #0x10]
|
|
_0218581c:
|
|
ldr r0, _02185860 ; =data_027e0fc8
|
|
add r1, sp, #0xc
|
|
ldr r0, [r0]
|
|
mov r2, r6
|
|
ldr r3, [r0]
|
|
ldr r3, [r3, #0x6c]
|
|
blx r3
|
|
mov r0, r7
|
|
bl func_ov00_020c2840
|
|
add r0, r7, #0x800
|
|
mov r1, #0xa
|
|
strh r1, [r0, #0x88]
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_021856cc
|
|
_02185854: .word data_027e0fa0
|
|
_02185858: .word data_027e0fcc
|
|
_0218585c: .word data_027e0f94
|
|
_02185860: .word data_027e0fc8
|
|
|
|
.global func_ov36_02185864
|
|
arm_func_start func_ov36_02185864
|
|
func_ov36_02185864: ; 0x02185864
|
|
stmdb sp!, {r4, lr}
|
|
ldrb r1, [r0, #0x8a7]
|
|
cmp r1, #5
|
|
beq _021858b0
|
|
ldr r1, _021858ec ; =data_027e0764
|
|
ldr r3, [r1]
|
|
ldmib r1, {r2, ip}
|
|
umull r4, lr, ip, r3
|
|
mla lr, ip, r2, lr
|
|
ldr r2, [r1, #0xc]
|
|
ldr ip, [r1, #0x10]
|
|
mla lr, r2, r3, lr
|
|
ldr r2, [r1, #0x14]
|
|
adds r3, ip, r4
|
|
adc r2, r2, lr
|
|
str r3, [r1]
|
|
str r2, [r1, #4]
|
|
tst r2, #0x80000000
|
|
beq _021858e4
|
|
_021858b0:
|
|
ldr r1, [r0, #0x878]
|
|
tst r1, #0x80
|
|
bne _021858d4
|
|
ldr r2, [r0, #0x878]
|
|
mov r1, #3
|
|
orr r2, r2, #0x80
|
|
str r2, [r0, #0x878]
|
|
bl func_ov36_0217d6bc
|
|
b _021858dc
|
|
_021858d4:
|
|
mov r0, #0
|
|
ldmia sp!, {r4, pc}
|
|
_021858dc:
|
|
mov r0, #1
|
|
ldmia sp!, {r4, pc}
|
|
_021858e4:
|
|
mov r0, #0
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02185864
|
|
_021858ec: .word data_027e0764
|
|
|
|
.global func_ov36_021858f0
|
|
arm_func_start func_ov36_021858f0
|
|
func_ov36_021858f0: ; 0x021858f0
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #0x34
|
|
mov r4, r0
|
|
mov r1, #0
|
|
strb r1, [r4, #0x8ad]
|
|
ldr r1, [r4, #0x878]
|
|
tst r1, #0x100000
|
|
beq _02185af4
|
|
add r0, r4, #0x48
|
|
ldmia r0, {r0, r1, r2}
|
|
add lr, sp, #0x28
|
|
stmia lr, {r0, r1, r2}
|
|
add ip, r4, #0x7c
|
|
add r3, sp, #0x18
|
|
ldmia ip, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
ldr r0, [r4, #0x88]
|
|
mov r2, #1
|
|
str r0, [sp, #0x24]
|
|
ldr ip, [r4, #0x6b8]
|
|
add r0, sp, #0xc
|
|
ldr r3, [ip, #0x48]
|
|
add r1, r4, #0x178
|
|
str r3, [r4, #0x48]
|
|
ldr r3, [ip, #0x4c]
|
|
str r3, [r4, #0x4c]
|
|
ldr r3, [ip, #0x50]
|
|
str r3, [r4, #0x50]
|
|
ldr ip, [r4, #0x6b8]
|
|
ldr r3, [ip, #0x7c]
|
|
str r3, [r4, #0x7c]
|
|
ldr r3, [ip, #0x80]
|
|
str r3, [r4, #0x80]
|
|
ldr r3, [ip, #0x84]
|
|
str r3, [r4, #0x84]
|
|
ldr r3, [ip, #0x88]
|
|
str r3, [r4, #0x88]
|
|
strb r2, [r4, #0x8ad]
|
|
bl func_ov36_0217c630
|
|
ldr r0, [sp, #0xc]
|
|
mov r1, #0
|
|
str r0, [r4, #0x48]
|
|
ldr r2, [sp, #0x10]
|
|
mov r0, r4
|
|
str r2, [r4, #0x4c]
|
|
ldr r3, [sp, #0x14]
|
|
mov r2, #0x1800
|
|
str r3, [r4, #0x50]
|
|
str r1, [r4, #0x7c]
|
|
str r1, [r4, #0x80]
|
|
str r1, [r4, #0x84]
|
|
mov r1, #2
|
|
str r2, [r4, #0x88]
|
|
bl func_ov00_020c1fc8
|
|
cmp r0, #0
|
|
beq _02185a24
|
|
_021859d0:
|
|
ldr r0, [r4, #0x130]
|
|
cmp r0, #0x18
|
|
beq _021859f4
|
|
ldr r0, [sp, #0x28]
|
|
str r0, [r4, #0x48]
|
|
ldr r0, [sp, #0x2c]
|
|
str r0, [r4, #0x4c]
|
|
ldr r0, [sp, #0x30]
|
|
str r0, [r4, #0x50]
|
|
_021859f4:
|
|
ldr r1, [sp, #0x18]
|
|
mov r0, #0
|
|
str r1, [r4, #0x7c]
|
|
ldr r1, [sp, #0x1c]
|
|
str r1, [r4, #0x80]
|
|
ldr r1, [sp, #0x20]
|
|
str r1, [r4, #0x84]
|
|
ldr r1, [sp, #0x24]
|
|
add sp, sp, #0x34
|
|
str r1, [r4, #0x88]
|
|
strb r0, [r4, #0x8ad]
|
|
ldmia sp!, {r3, r4, pc}
|
|
_02185a24:
|
|
add r0, sp, #0
|
|
add r1, r4, #0x178
|
|
mov r2, #1
|
|
bl func_ov36_0217c630
|
|
ldr r0, [sp]
|
|
mov r1, #0
|
|
str r0, [r4, #0x48]
|
|
ldr r0, [sp, #4]
|
|
ldr r2, _02185b14 ; =0x00000ccd
|
|
str r0, [r4, #0x4c]
|
|
ldr r3, [sp, #8]
|
|
mov r0, r4
|
|
str r3, [r4, #0x50]
|
|
str r1, [r4, #0x7c]
|
|
str r1, [r4, #0x80]
|
|
str r1, [r4, #0x84]
|
|
mov r1, #0x18
|
|
str r2, [r4, #0x88]
|
|
bl func_ov00_020c1fc8
|
|
cmp r0, #0
|
|
bne _021859d0
|
|
mov r1, #0
|
|
mov r0, r4
|
|
mov r2, r1
|
|
bl func_ov00_020c243c
|
|
cmp r0, #0
|
|
bne _021859d0
|
|
ldr r1, [sp, #0x28]
|
|
mov r0, r4
|
|
str r1, [r4, #0x48]
|
|
ldr r1, [sp, #0x2c]
|
|
mov r2, #0
|
|
str r1, [r4, #0x4c]
|
|
ldr r3, [sp, #0x30]
|
|
mov r1, #0x1a
|
|
str r3, [r4, #0x50]
|
|
ldr r3, [sp, #0x18]
|
|
str r3, [r4, #0x7c]
|
|
ldr r3, [sp, #0x1c]
|
|
str r3, [r4, #0x80]
|
|
ldr r3, [sp, #0x20]
|
|
str r3, [r4, #0x84]
|
|
ldr r3, [sp, #0x24]
|
|
str r3, [r4, #0x88]
|
|
strb r2, [r4, #0x8ad]
|
|
bl func_ov00_020c1fc8
|
|
mov r1, #0
|
|
mov r0, r4
|
|
mov r2, r1
|
|
bl func_ov00_020c243c
|
|
add sp, sp, #0x34
|
|
ldmia sp!, {r3, r4, pc}
|
|
_02185af4:
|
|
mov r1, #0x10
|
|
bl func_ov00_020c1fc8
|
|
mov r1, #0
|
|
mov r0, r4
|
|
mov r2, r1
|
|
bl func_ov00_020c243c
|
|
add sp, sp, #0x34
|
|
ldmia sp!, {r3, r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_021858f0
|
|
_02185b14: .word 0x00000ccd
|
|
|
|
.global func_ov36_02185b18
|
|
arm_func_start func_ov36_02185b18
|
|
func_ov36_02185b18: ; 0x02185b18
|
|
stmdb sp!, {r4, r5, r6, r7, lr}
|
|
sub sp, sp, #0xc
|
|
ldr r1, [r0, #0x4c]
|
|
ldr r3, [r0, #0x50]
|
|
ldr r2, [r0, #0x48]
|
|
add r1, r1, #0xcd
|
|
add r1, r1, #0xc00
|
|
ldr r4, _02185b78 ; =data_027e0e58
|
|
str r2, [sp]
|
|
str r1, [sp, #4]
|
|
str r3, [sp, #8]
|
|
add r7, r0, #0x670
|
|
mov r6, #0
|
|
add r5, sp, #0
|
|
_02185b50:
|
|
ldr r0, [r4]
|
|
mov r1, r7
|
|
mov r2, r5
|
|
bl func_ov00_0207c474
|
|
add r6, r6, #1
|
|
cmp r6, #3
|
|
add r7, r7, #0xc
|
|
blt _02185b50
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02185b18
|
|
_02185b78: .word data_027e0e58
|
|
|
|
.global func_ov36_02185b7c
|
|
arm_func_start func_ov36_02185b7c
|
|
func_ov36_02185b7c: ; 0x02185b7c
|
|
stmdb sp!, {r4, lr}
|
|
sub sp, sp, #0x20
|
|
mov r4, r0
|
|
cmp r1, #0
|
|
mov r0, #0x1800
|
|
beq _02185bac
|
|
ldr r2, _02185c74 ; =0xffffe99a
|
|
str r0, [sp, #0x1c]
|
|
add r1, r2, #0x2000
|
|
str r2, [sp, #0x14]
|
|
str r1, [sp, #0x18]
|
|
b _02185bc0
|
|
_02185bac:
|
|
ldr r2, _02185c78 ; =0x00001666
|
|
str r0, [sp, #0x1c]
|
|
rsb r1, r2, #0x2000
|
|
str r2, [sp, #0x14]
|
|
str r1, [sp, #0x18]
|
|
_02185bc0:
|
|
ldrsh r1, [r4, #0x78]
|
|
add r0, sp, #0x14
|
|
bl func_ov00_020a61ac
|
|
ldr r1, [r4, #0x48]
|
|
add r0, sp, #0x14
|
|
str r1, [sp, #8]
|
|
ldr r2, [r4, #0x4c]
|
|
add r1, sp, #8
|
|
str r2, [sp, #0xc]
|
|
ldr r3, [r4, #0x50]
|
|
mov r2, r0
|
|
str r3, [sp, #0x10]
|
|
bl func_01ff9bc4
|
|
add r0, r4, #0x78
|
|
str r0, [sp]
|
|
ldr r1, _02185c7c ; =func_ov36_0217bdb4
|
|
ldr r0, _02185c80 ; =data_027e0e58
|
|
str r1, [sp, #4]
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x14
|
|
mov r1, #0xb
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
add r0, r4, #0x78
|
|
str r0, [sp]
|
|
ldr r1, _02185c7c ; =func_ov36_0217bdb4
|
|
ldr r0, _02185c80 ; =data_027e0e58
|
|
str r1, [sp, #4]
|
|
ldr r0, [r0]
|
|
mov r1, #0xc
|
|
add r2, sp, #0x14
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
add r0, r4, #0x78
|
|
str r0, [sp]
|
|
ldr r1, _02185c7c ; =func_ov36_0217bdb4
|
|
ldr r0, _02185c80 ; =data_027e0e58
|
|
str r1, [sp, #4]
|
|
ldr r0, [r0]
|
|
mov r1, #0xd
|
|
add r2, sp, #0x14
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
add sp, sp, #0x20
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02185b7c
|
|
_02185c74: .word 0xffffe99a
|
|
_02185c78: .word 0x00001666
|
|
_02185c7c: .word func_ov36_0217bdb4
|
|
_02185c80: .word data_027e0e58
|
|
|
|
.global func_ov36_02185c84
|
|
arm_func_start func_ov36_02185c84
|
|
func_ov36_02185c84: ; 0x02185c84
|
|
stmdb sp!, {r4, lr}
|
|
sub sp, sp, #0x68
|
|
mov r4, r0
|
|
ldr r0, [r4, #0x360]
|
|
add r0, r4, r0, lsl #2
|
|
ldr r0, [r0, #0x358]
|
|
cmp r0, #0
|
|
addne sp, sp, #0x68
|
|
ldmneia sp!, {r4, pc}
|
|
ldr r0, [r4, #0x168]
|
|
mov r1, #0x3000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
beq _02185da4
|
|
ldr r2, _02185ea4 ; =0x00001333
|
|
ldr r3, _02185ea8 ; =0x00000266
|
|
ldr ip, _02185eac ; =0xfffff19a
|
|
sub r0, r2, #0x1800
|
|
add r1, r3, #0xc00
|
|
str r0, [sp, #0x58]
|
|
str ip, [sp, #0x5c]
|
|
str r3, [sp, #0x60]
|
|
str r2, [sp, #0x64]
|
|
str r3, [sp, #0x54]
|
|
str r1, [sp, #0x50]
|
|
ldrsh r1, [r4, #0x78]
|
|
add r0, sp, #0x5c
|
|
bl func_ov00_020a61ac
|
|
ldrsh r1, [r4, #0x78]
|
|
add r0, sp, #0x50
|
|
bl func_ov00_020a61ac
|
|
ldr r1, [r4, #0x48]
|
|
add r0, sp, #0x5c
|
|
str r1, [sp, #0x2c]
|
|
ldr r2, [r4, #0x4c]
|
|
add r1, sp, #0x2c
|
|
str r2, [sp, #0x30]
|
|
ldr r3, [r4, #0x50]
|
|
mov r2, r0
|
|
str r3, [sp, #0x34]
|
|
bl func_01ff9bc4
|
|
ldr r1, [r4, #0x48]
|
|
add r0, sp, #0x50
|
|
str r1, [sp, #0x20]
|
|
ldr r2, [r4, #0x4c]
|
|
add r1, sp, #0x20
|
|
str r2, [sp, #0x24]
|
|
ldr r3, [r4, #0x50]
|
|
mov r2, r0
|
|
str r3, [sp, #0x28]
|
|
bl func_01ff9bc4
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r0, _02185eb0 ; =data_027e0e58
|
|
mov r1, #0x10
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x5c
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r0, _02185eb0 ; =data_027e0e58
|
|
mov r1, #0xf
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x50
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r4, pc}
|
|
_02185da4:
|
|
ldr r0, [r4, #0x168]
|
|
mov r1, #0x1b000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x68
|
|
ldmeqia sp!, {r4, pc}
|
|
ldr ip, _02185eb4 ; =0x00000e66
|
|
ldr r2, _02185ea4 ; =0x00001333
|
|
sub r3, ip, #0xc00
|
|
sub r0, r2, #0x1800
|
|
rsb r1, ip, #0
|
|
str r0, [sp, #0x40]
|
|
str ip, [sp, #0x44]
|
|
str r3, [sp, #0x48]
|
|
str r2, [sp, #0x4c]
|
|
str r3, [sp, #0x3c]
|
|
str r1, [sp, #0x38]
|
|
ldrsh r1, [r4, #0x78]
|
|
add r0, sp, #0x44
|
|
bl func_ov00_020a61ac
|
|
ldrsh r1, [r4, #0x78]
|
|
add r0, sp, #0x38
|
|
bl func_ov00_020a61ac
|
|
ldr r1, [r4, #0x48]
|
|
add r0, sp, #0x44
|
|
str r1, [sp, #0x14]
|
|
ldr r2, [r4, #0x4c]
|
|
add r1, sp, #0x14
|
|
str r2, [sp, #0x18]
|
|
ldr r3, [r4, #0x50]
|
|
mov r2, r0
|
|
str r3, [sp, #0x1c]
|
|
bl func_01ff9bc4
|
|
ldr r1, [r4, #0x48]
|
|
add r0, sp, #0x38
|
|
str r1, [sp, #8]
|
|
ldr r2, [r4, #0x4c]
|
|
add r1, sp, #8
|
|
str r2, [sp, #0xc]
|
|
ldr r3, [r4, #0x50]
|
|
mov r2, r0
|
|
str r3, [sp, #0x10]
|
|
bl func_01ff9bc4
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r0, _02185eb0 ; =data_027e0e58
|
|
mov r1, #0x10
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x44
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r0, _02185eb0 ; =data_027e0e58
|
|
mov r1, #0xf
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x38
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02185c84
|
|
_02185ea4: .word 0x00001333
|
|
_02185ea8: .word 0x00000266
|
|
_02185eac: .word 0xfffff19a
|
|
_02185eb0: .word data_027e0e58
|
|
_02185eb4: .word 0x00000e66
|
|
|
|
.global func_ov36_02185eb8
|
|
arm_func_start func_ov36_02185eb8
|
|
func_ov36_02185eb8: ; 0x02185eb8
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #0x2c
|
|
ldr r3, _02185fac ; =0xfffff19a
|
|
ldr r2, _02185fb0 ; =0x00000266
|
|
ldr r1, _02185fb4 ; =0x00001333
|
|
mov r4, r0
|
|
str r3, [sp, #0x20]
|
|
str r2, [sp, #0x24]
|
|
str r1, [sp, #0x28]
|
|
ldrsh r1, [r4, #0x78]
|
|
add r0, sp, #0x20
|
|
bl func_ov00_020a61ac
|
|
ldr r1, [r4, #0x48]
|
|
add r0, sp, #0x20
|
|
str r1, [sp, #0x14]
|
|
ldr r2, [r4, #0x4c]
|
|
add r1, sp, #0x14
|
|
str r2, [sp, #0x18]
|
|
ldr r3, [r4, #0x50]
|
|
mov r2, r0
|
|
str r3, [sp, #0x1c]
|
|
bl func_01ff9bc4
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r0, _02185fb8 ; =data_027e0e58
|
|
add r2, sp, #0x20
|
|
ldr r0, [r0]
|
|
mov r1, #0x1000
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
ldr r1, _02185fbc ; =0x00000e66
|
|
ldr r0, _02185fb4 ; =0x00001333
|
|
str r1, [sp, #0x20]
|
|
str r0, [sp, #0x28]
|
|
sub r0, r1, #0xc00
|
|
str r0, [sp, #0x24]
|
|
ldrsh r1, [r4, #0x78]
|
|
add r0, sp, #0x20
|
|
bl func_ov00_020a61ac
|
|
ldr r1, [r4, #0x48]
|
|
add r0, sp, #0x20
|
|
str r1, [sp, #8]
|
|
ldr r2, [r4, #0x4c]
|
|
add r1, sp, #8
|
|
str r2, [sp, #0xc]
|
|
ldr r3, [r4, #0x50]
|
|
mov r2, r0
|
|
str r3, [sp, #0x10]
|
|
bl func_01ff9bc4
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r0, _02185fb8 ; =data_027e0e58
|
|
mov r1, #0x1000
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x20
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
add sp, sp, #0x2c
|
|
ldmia sp!, {r3, r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02185eb8
|
|
_02185fac: .word 0xfffff19a
|
|
_02185fb0: .word 0x00000266
|
|
_02185fb4: .word 0x00001333
|
|
_02185fb8: .word data_027e0e58
|
|
_02185fbc: .word 0x00000e66
|
|
|
|
.global func_ov36_02185fc0
|
|
arm_func_start func_ov36_02185fc0
|
|
func_ov36_02185fc0: ; 0x02185fc0
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
blx func_ov00_020a95ec
|
|
mov r0, r4
|
|
bl func_0202ea0c
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov36_02185fc0
|
|
|
|
.global func_ov36_02185fdc
|
|
arm_func_start func_ov36_02185fdc
|
|
func_ov36_02185fdc: ; 0x02185fdc
|
|
bx lr
|
|
arm_func_end func_ov36_02185fdc
|
|
|
|
.global func_ov36_02185fe0
|
|
arm_func_start func_ov36_02185fe0
|
|
func_ov36_02185fe0: ; 0x02185fe0
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_02081f6c
|
|
mov r0, r4
|
|
bl func_0202ea0c
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov36_02185fe0
|
|
|
|
.global func_ov36_02185ffc
|
|
arm_func_start func_ov36_02185ffc
|
|
func_ov36_02185ffc: ; 0x02185ffc
|
|
stmdb sp!, {r3, lr}
|
|
ldr r1, _02186028 ; =data_027e0fe0
|
|
mov r0, #0x180
|
|
ldr r1, [r1]
|
|
mov r2, #4
|
|
ldr r1, [r1]
|
|
bl func_0202e9dc
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
bl func_ov36_0218602c
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02185ffc
|
|
_02186028: .word data_027e0fe0
|
|
|
|
.global func_ov36_0218602c
|
|
arm_func_start func_ov36_0218602c
|
|
func_ov36_0218602c: ; 0x0218602c
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c1554
|
|
ldr r0, _02186074 ; =data_ov36_02186eec
|
|
mov r1, #0
|
|
str r0, [r4]
|
|
str r1, [r4, #0x158]
|
|
sub r0, r1, #1
|
|
str r0, [r4, #0x15c]
|
|
str r1, [r4, #0x160]
|
|
str r1, [r4, #0x164]
|
|
str r0, [r4, #0x168]
|
|
str r1, [r4, #0x16c]
|
|
str r1, [r4, #0x170]
|
|
str r0, [r4, #0x174]
|
|
mov r0, r4
|
|
str r1, [r4, #0x178]
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_0218602c
|
|
_02186074: .word data_ov36_02186eec
|
|
|
|
.global func_ov36_02186078
|
|
arm_func_start func_ov36_02186078
|
|
func_ov36_02186078: ; 0x02186078
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
add r0, r4, #0x170
|
|
bl func_ov00_020b7e6c
|
|
add r0, r4, #0x170
|
|
bl func_ov00_020b7df0
|
|
add r0, r4, #0x164
|
|
bl func_ov00_020b7e6c
|
|
add r0, r4, #0x164
|
|
bl func_ov00_020b7df0
|
|
add r0, r4, #0x158
|
|
bl func_ov00_020b7e6c
|
|
add r0, r4, #0x158
|
|
bl func_ov00_020b7df0
|
|
mov r0, r4
|
|
bl func_ov00_020c1730
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov36_02186078
|
|
|
|
.global func_ov36_021860c0
|
|
arm_func_start func_ov36_021860c0
|
|
func_ov36_021860c0: ; 0x021860c0
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
add r0, r4, #0x170
|
|
bl func_ov00_020b7e6c
|
|
add r0, r4, #0x170
|
|
bl func_ov00_020b7df0
|
|
add r0, r4, #0x164
|
|
bl func_ov00_020b7e6c
|
|
add r0, r4, #0x164
|
|
bl func_ov00_020b7df0
|
|
add r0, r4, #0x158
|
|
bl func_ov00_020b7e6c
|
|
add r0, r4, #0x158
|
|
bl func_ov00_020b7df0
|
|
mov r0, r4
|
|
bl func_ov00_020c1730
|
|
mov r0, r4
|
|
bl func_0202ea0c
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov36_021860c0
|
|
|
|
.global func_ov36_02186110
|
|
arm_func_start func_ov36_02186110
|
|
func_ov36_02186110: ; 0x02186110
|
|
stmdb sp!, {r4, r5, r6, r7, r8, lr}
|
|
mov r5, #0
|
|
str r5, [r0, #0x130]
|
|
str r5, [r0, #0x138]
|
|
ldrh r1, [r0, #0x20]
|
|
cmp r1, #0
|
|
bne _02186180
|
|
ldr r2, _021862a8 ; =0x00001004
|
|
mov r3, #2
|
|
strb r3, [r0, #0x124]
|
|
str r2, [r0, #0x15c]
|
|
str r3, [r0, #0x160]
|
|
add r1, r2, #1
|
|
str r1, [r0, #0x168]
|
|
str r3, [r0, #0x16c]
|
|
add r1, r2, #2
|
|
str r1, [r0, #0x174]
|
|
ldr r1, _021862ac ; =data_027e0d0c
|
|
str r3, [r0, #0x178]
|
|
ldr r3, [r1]
|
|
mov r2, #0x800
|
|
str r3, [r0, #0x7c]
|
|
ldr r3, [r1, #4]
|
|
str r3, [r0, #0x80]
|
|
ldr r1, [r1, #8]
|
|
str r1, [r0, #0x84]
|
|
str r2, [r0, #0x88]
|
|
b _021861c8
|
|
_02186180:
|
|
mov r1, #4
|
|
ldr r3, _021862b0 ; =0x00001007
|
|
strb r1, [r0, #0x124]
|
|
str r3, [r0, #0x15c]
|
|
mov r4, #2
|
|
mov r2, #0x800
|
|
str r4, [r0, #0x160]
|
|
add r3, r3, #1
|
|
str r3, [r0, #0x168]
|
|
str r4, [r0, #0x16c]
|
|
str r2, [r0, #0x17c]
|
|
mov r1, r2, lsl #0xb
|
|
str r5, [r0, #0x7c]
|
|
add r1, r1, #0x800
|
|
str r5, [r0, #0x80]
|
|
str r5, [r0, #0x84]
|
|
mov r1, r1, asr #0xc
|
|
str r1, [r0, #0x88]
|
|
_021861c8:
|
|
ldr r1, [r0, #0x7c]
|
|
mov r2, #2
|
|
str r1, [r0, #0x8c]
|
|
ldr r1, [r0, #0x80]
|
|
mov r3, #0
|
|
str r1, [r0, #0x90]
|
|
ldr r4, [r0, #0x84]
|
|
ldr r1, _021862ac ; =data_027e0d0c
|
|
str r4, [r0, #0x94]
|
|
ldr r4, [r0, #0x88]
|
|
mov r5, #7
|
|
str r4, [r0, #0x98]
|
|
ldr r6, [r0, #0x88]
|
|
ldr r4, [r1]
|
|
add r7, r6, #0x1000
|
|
str r4, [r0, #0xa8]
|
|
ldr r6, [r1, #4]
|
|
ldr r4, _021862b4 ; =data_02050f54
|
|
str r6, [r0, #0xac]
|
|
ldr r6, [r1, #8]
|
|
add r1, r2, #0x264
|
|
str r6, [r0, #0xb0]
|
|
str r7, [r0, #0xb4]
|
|
strh r5, [r0, #0x9c]
|
|
strb r2, [r0, #0x125]
|
|
ldrh r5, [r0, #0x78]
|
|
add r2, r2, #0x264
|
|
sub ip, r3, #0x3d
|
|
mov r5, r5, asr #0x4
|
|
mov r7, r5, lsl #0x1
|
|
mov r5, r7, lsl #0x1
|
|
ldrsh r6, [r4, r5]
|
|
add lr, r7, #1
|
|
mov lr, lr, lsl #0x1
|
|
ldrsh lr, [r4, lr]
|
|
umull r8, r7, r6, r1
|
|
umull r5, r4, lr, r2
|
|
adds r8, r8, #0x800
|
|
mla r7, r6, r3, r7
|
|
mov r6, r6, asr #0x1f
|
|
mla r7, r6, r1, r7
|
|
adc r1, r7, #0
|
|
mov r6, r8, lsr #0xc
|
|
adds r5, r5, #0x800
|
|
orr r6, r6, r1, lsl #20
|
|
mla r4, lr, r3, r4
|
|
mov r1, lr, asr #0x1f
|
|
mla r4, r1, r2, r4
|
|
adc r1, r4, #0
|
|
mov r2, r5, lsr #0xc
|
|
str r6, [r0, #0x60]
|
|
orr r2, r2, r1, lsl #20
|
|
str r2, [r0, #0x68]
|
|
str ip, [r0, #0x64]
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02186110
|
|
_021862a8: .word 0x00001004
|
|
_021862ac: .word data_027e0d0c
|
|
_021862b0: .word 0x00001007
|
|
_021862b4: .word data_02050f54
|
|
|
|
.global func_ov36_021862b8
|
|
arm_func_start func_ov36_021862b8
|
|
func_ov36_021862b8: ; 0x021862b8
|
|
stmdb sp!, {r4, r5, lr}
|
|
sub sp, sp, #0x14
|
|
mov r5, r0
|
|
mov r4, r1
|
|
bl func_ov00_020c313c
|
|
cmp r0, #0
|
|
beq _02186620
|
|
mov r0, r5
|
|
bl func_ov00_020c2bf4
|
|
ldr r0, [r5, #0x130]
|
|
cmp r0, #0
|
|
bne _021864cc
|
|
add r0, r5, #0x48
|
|
add r1, r5, #0x60
|
|
mov r2, r0
|
|
bl func_01ff9bc4
|
|
ldrh r0, [r5, #0x20]
|
|
cmp r0, #0
|
|
beq _0218633c
|
|
ldr r0, [r5, #0x17c]
|
|
cmp r0, #0x1000
|
|
bge _02186324
|
|
add r0, r0, #0x33
|
|
str r0, [r5, #0x17c]
|
|
cmp r0, #0x1000
|
|
movgt r0, #0x1000
|
|
strgt r0, [r5, #0x17c]
|
|
_02186324:
|
|
ldr r0, [r5, #0x17c]
|
|
mov r0, r0, lsl #0xb
|
|
add r0, r0, #0x800
|
|
mov r0, r0, asr #0xc
|
|
str r0, [r5, #0x98]
|
|
str r0, [r5, #0x88]
|
|
_0218633c:
|
|
ldrb r0, [r5, #0xa4]
|
|
cmp r0, #0
|
|
ldreqb r0, [r5, #0xa5]
|
|
cmpeq r0, #0
|
|
beq _02186470
|
|
ldrh r0, [r5, #0x20]
|
|
cmp r0, #0
|
|
beq _02186430
|
|
add r0, r5, #0x48
|
|
add r3, sp, #8
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
ldr r0, [r5, #0x17c]
|
|
mov r1, #0x800
|
|
sub r0, r0, #0x800
|
|
bl func_01ff98e0
|
|
mov r1, r0, asr #0x1f
|
|
mov r2, r1, lsl #0xb
|
|
mov r1, #0x800
|
|
adds r3, r1, r0, lsl #11
|
|
orr r2, r2, r0, lsr #21
|
|
ldr r0, _02186638 ; =data_027e0e58
|
|
adc r1, r2, #0
|
|
mov r2, r3, lsr #0xc
|
|
orr r2, r2, r1, lsl #20
|
|
ldr r3, [sp, #0xc]
|
|
ldr r0, [r0]
|
|
add r3, r3, r2
|
|
add r2, sp, #8
|
|
add r1, r5, #0x158
|
|
str r3, [sp, #0xc]
|
|
bl func_ov00_0207c474
|
|
ldr r0, _02186638 ; =data_027e0e58
|
|
add r1, r5, #0x164
|
|
ldr r0, [r0]
|
|
add r2, sp, #8
|
|
bl func_ov00_0207c474
|
|
ldr r0, [r5, #0x17c]
|
|
ldr r1, [r5, #0x158]
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x10
|
|
cmp r1, #0
|
|
strne r0, [r1, #0x70]
|
|
ldr r0, [r5, #0x17c]
|
|
ldr r1, [r5, #0x164]
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x10
|
|
cmp r1, #0
|
|
strne r0, [r1, #0x70]
|
|
ldr r1, [r5, #0x164]
|
|
ldr r2, [r5, #0x17c]
|
|
ldr r0, _0218663c ; =0x00000333
|
|
cmp r1, #0
|
|
mul r0, r2, r0
|
|
add r0, r0, #0x800
|
|
mov r0, r0, asr #0xc
|
|
beq _02186488
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x10
|
|
str r0, [r1, #0x6c]
|
|
b _02186488
|
|
_02186430:
|
|
ldr r0, _02186638 ; =data_027e0e58
|
|
add r1, r5, #0x158
|
|
ldr r0, [r0]
|
|
add r2, r5, #0x48
|
|
bl func_ov00_0207c474
|
|
ldr r0, _02186638 ; =data_027e0e58
|
|
add r1, r5, #0x164
|
|
ldr r0, [r0]
|
|
add r2, r5, #0x48
|
|
bl func_ov00_0207c474
|
|
ldr r0, _02186638 ; =data_027e0e58
|
|
add r1, r5, #0x170
|
|
ldr r0, [r0]
|
|
add r2, r5, #0x48
|
|
bl func_ov00_0207c474
|
|
b _02186488
|
|
_02186470:
|
|
add r0, r5, #0x158
|
|
bl func_ov00_020b7e6c
|
|
add r0, r5, #0x164
|
|
bl func_ov00_020b7e6c
|
|
add r0, r5, #0x170
|
|
bl func_ov00_020b7e6c
|
|
_02186488:
|
|
mov r0, r5
|
|
mov r1, #0
|
|
bl func_01fffd04
|
|
ldrb r0, [r5, #0x111]
|
|
cmp r0, #0
|
|
ldreqb r0, [r5, #0x110]
|
|
cmpeq r0, #0
|
|
ldreqb r0, [r5, #0x112]
|
|
cmpeq r0, #0
|
|
ldreqb r0, [r5, #0x113]
|
|
cmpeq r0, #0
|
|
beq _021865f4
|
|
mov r0, #1
|
|
str r0, [r5, #0x130]
|
|
mov r0, #0
|
|
str r0, [r5, #0x138]
|
|
b _021865f4
|
|
_021864cc:
|
|
ldrb r0, [r5, #0xa4]
|
|
cmp r0, #0
|
|
ldreqb r0, [r5, #0xa5]
|
|
cmpeq r0, #0
|
|
beq _0218658c
|
|
ldr r0, _02186638 ; =data_027e0e58
|
|
add r1, r5, #0x158
|
|
ldr r0, [r0]
|
|
add r2, r5, #0x48
|
|
bl func_ov00_0207c474
|
|
ldr r0, _02186638 ; =data_027e0e58
|
|
add r1, r5, #0x164
|
|
ldr r0, [r0]
|
|
add r2, r5, #0x48
|
|
bl func_ov00_0207c474
|
|
ldrh r0, [r5, #0x20]
|
|
cmp r0, #0
|
|
beq _02186574
|
|
ldr r0, [r5, #0x17c]
|
|
ldr r1, [r5, #0x158]
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x10
|
|
cmp r1, #0
|
|
strne r0, [r1, #0x70]
|
|
ldr r0, [r5, #0x17c]
|
|
ldr r1, [r5, #0x164]
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x10
|
|
cmp r1, #0
|
|
strne r0, [r1, #0x70]
|
|
ldr r2, [r5, #0x17c]
|
|
ldr r0, _0218663c ; =0x00000333
|
|
ldr r1, [r5, #0x164]
|
|
mul r0, r2, r0
|
|
add r0, r0, #0x800
|
|
cmp r1, #0
|
|
mov r0, r0, asr #0xc
|
|
beq _021865a4
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x10
|
|
str r0, [r1, #0x6c]
|
|
b _021865a4
|
|
_02186574:
|
|
ldr r0, _02186638 ; =data_027e0e58
|
|
add r1, r5, #0x170
|
|
ldr r0, [r0]
|
|
add r2, r5, #0x48
|
|
bl func_ov00_0207c474
|
|
b _021865a4
|
|
_0218658c:
|
|
add r0, r5, #0x158
|
|
bl func_ov00_020b7e6c
|
|
add r0, r5, #0x164
|
|
bl func_ov00_020b7e6c
|
|
add r0, r5, #0x170
|
|
bl func_ov00_020b7e6c
|
|
_021865a4:
|
|
ldr r0, [r5, #0x138]
|
|
cmp r0, #0xf
|
|
ble _021865f4
|
|
add r0, r5, #0x158
|
|
bl func_ov00_020b7e6c
|
|
add r0, r5, #0x164
|
|
bl func_ov00_020b7e6c
|
|
add r0, r5, #0x170
|
|
bl func_ov00_020b7e6c
|
|
ldr r0, _02186640 ; =data_027e0fe4
|
|
add r1, r5, #0x34
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c3674
|
|
cmp r0, #0
|
|
beq _021865e4
|
|
bl func_ov36_02185410
|
|
_021865e4:
|
|
mov r0, #0
|
|
add sp, sp, #0x14
|
|
strb r0, [r5, #0x118]
|
|
ldmia sp!, {r4, r5, pc}
|
|
_021865f4:
|
|
mov r0, r5
|
|
mov r1, #1
|
|
mov r2, #0
|
|
bl func_ov00_020c1e2c
|
|
add r0, sp, #0
|
|
mov r1, r5
|
|
bl func_ov00_020c23c4
|
|
ldr r1, _02186644 ; =data_ov36_02186ba8
|
|
mov r0, r5
|
|
mov r2, #0
|
|
bl func_ov00_020c243c
|
|
_02186620:
|
|
mov r1, r4
|
|
add r0, r5, #0xa4
|
|
add r2, r5, #0x48
|
|
bl func_ov00_0207a1c8
|
|
add sp, sp, #0x14
|
|
ldmia sp!, {r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_021862b8
|
|
_02186638: .word data_027e0e58
|
|
_0218663c: .word 0x00000333
|
|
_02186640: .word data_027e0fe4
|
|
_02186644: .word data_ov36_02186ba8
|
|
|
|
.global func_ov36_02186648
|
|
arm_func_start func_ov36_02186648
|
|
func_ov36_02186648: ; 0x02186648
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, [r1, #0x14]
|
|
cmp r0, #0
|
|
beq _02186688
|
|
ldr r2, [r0, #4]
|
|
ldr r1, _02186690 ; =0x424f4d42
|
|
cmp r2, r1
|
|
bne _02186670
|
|
bl func_ov14_02122e98
|
|
b _02186680
|
|
_02186670:
|
|
ldr r1, _02186694 ; =0x424d5459
|
|
cmp r2, r1
|
|
moveq r1, #1
|
|
streqb r1, [r0, #0x180]
|
|
_02186680:
|
|
mov r0, #1
|
|
ldmia sp!, {r3, pc}
|
|
_02186688:
|
|
mov r0, #0
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02186648
|
|
_02186690: .word 0x424f4d42
|
|
_02186694: .word 0x424d5459
|
|
|
|
.rodata
|
|
.global data_ov36_02186698
|
|
data_ov36_02186698: ; 0x02186698
|
|
.byte 0x7c, 0xdd, 0x17, 0x02
|
|
.global data_ov36_0218669c
|
|
data_ov36_0218669c: ; 0x0218669c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021866a0
|
|
data_ov36_021866a0: ; 0x021866a0
|
|
.byte 0x00, 0xde, 0x17, 0x02
|
|
.global data_ov36_021866a4
|
|
data_ov36_021866a4: ; 0x021866a4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021866a8
|
|
data_ov36_021866a8: ; 0x021866a8
|
|
.byte 0xe0, 0xe3, 0x17, 0x02
|
|
.global data_ov36_021866ac
|
|
data_ov36_021866ac: ; 0x021866ac
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021866b0
|
|
data_ov36_021866b0: ; 0x021866b0
|
|
.byte 0xb8, 0xe6, 0x17, 0x02
|
|
.global data_ov36_021866b4
|
|
data_ov36_021866b4: ; 0x021866b4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021866b8
|
|
data_ov36_021866b8: ; 0x021866b8
|
|
.byte 0xa4, 0xe7, 0x17, 0x02
|
|
.global data_ov36_021866bc
|
|
data_ov36_021866bc: ; 0x021866bc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021866c0
|
|
data_ov36_021866c0: ; 0x021866c0
|
|
.byte 0x58, 0xeb, 0x17, 0x02
|
|
.global data_ov36_021866c4
|
|
data_ov36_021866c4: ; 0x021866c4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021866c8
|
|
data_ov36_021866c8: ; 0x021866c8
|
|
.byte 0x50, 0xed, 0x17, 0x02
|
|
.global data_ov36_021866cc
|
|
data_ov36_021866cc: ; 0x021866cc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021866d0
|
|
data_ov36_021866d0: ; 0x021866d0
|
|
.byte 0x7c, 0xef, 0x17, 0x02
|
|
.global data_ov36_021866d4
|
|
data_ov36_021866d4: ; 0x021866d4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021866d8
|
|
data_ov36_021866d8: ; 0x021866d8
|
|
.byte 0xc0, 0xf0, 0x17, 0x02
|
|
.global data_ov36_021866dc
|
|
data_ov36_021866dc: ; 0x021866dc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021866e0
|
|
data_ov36_021866e0: ; 0x021866e0
|
|
.byte 0x78, 0xf1, 0x17, 0x02
|
|
.global data_ov36_021866e4
|
|
data_ov36_021866e4: ; 0x021866e4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021866e8
|
|
data_ov36_021866e8: ; 0x021866e8
|
|
.byte 0x9c, 0xf4, 0x17, 0x02
|
|
.global data_ov36_021866ec
|
|
data_ov36_021866ec: ; 0x021866ec
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021866f0
|
|
data_ov36_021866f0: ; 0x021866f0
|
|
.byte 0x98, 0xf9, 0x17, 0x02
|
|
.global data_ov36_021866f4
|
|
data_ov36_021866f4: ; 0x021866f4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021866f8
|
|
data_ov36_021866f8: ; 0x021866f8
|
|
.byte 0xf0, 0xfd, 0x17, 0x02
|
|
.global data_ov36_021866fc
|
|
data_ov36_021866fc: ; 0x021866fc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186700
|
|
data_ov36_02186700: ; 0x02186700
|
|
.byte 0xdc, 0xff, 0x17, 0x02
|
|
.global data_ov36_02186704
|
|
data_ov36_02186704: ; 0x02186704
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186708
|
|
data_ov36_02186708: ; 0x02186708
|
|
.byte 0x1c, 0x01, 0x18, 0x02
|
|
.global data_ov36_0218670c
|
|
data_ov36_0218670c: ; 0x0218670c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186710
|
|
data_ov36_02186710: ; 0x02186710
|
|
.byte 0xc8, 0x01, 0x18, 0x02
|
|
.global data_ov36_02186714
|
|
data_ov36_02186714: ; 0x02186714
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186718
|
|
data_ov36_02186718: ; 0x02186718
|
|
.byte 0x70, 0x05, 0x18, 0x02
|
|
.global data_ov36_0218671c
|
|
data_ov36_0218671c: ; 0x0218671c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186720
|
|
data_ov36_02186720: ; 0x02186720
|
|
.byte 0x58, 0x06, 0x18, 0x02
|
|
.global data_ov36_02186724
|
|
data_ov36_02186724: ; 0x02186724
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186728
|
|
data_ov36_02186728: ; 0x02186728
|
|
.byte 0x64, 0x06, 0x18, 0x02
|
|
.global data_ov36_0218672c
|
|
data_ov36_0218672c: ; 0x0218672c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186730
|
|
data_ov36_02186730: ; 0x02186730
|
|
.byte 0x1c, 0x0d, 0x18, 0x02
|
|
.global data_ov36_02186734
|
|
data_ov36_02186734: ; 0x02186734
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186738
|
|
data_ov36_02186738: ; 0x02186738
|
|
.byte 0x34, 0x10, 0x18, 0x02
|
|
.global data_ov36_0218673c
|
|
data_ov36_0218673c: ; 0x0218673c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186740
|
|
data_ov36_02186740: ; 0x02186740
|
|
.byte 0x6c, 0x15, 0x18, 0x02
|
|
.global data_ov36_02186744
|
|
data_ov36_02186744: ; 0x02186744
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186748
|
|
data_ov36_02186748: ; 0x02186748
|
|
.byte 0xb4, 0x18, 0x18, 0x02
|
|
.global data_ov36_0218674c
|
|
data_ov36_0218674c: ; 0x0218674c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186750
|
|
data_ov36_02186750: ; 0x02186750
|
|
.byte 0x3c, 0x1f, 0x18, 0x02
|
|
.global data_ov36_02186754
|
|
data_ov36_02186754: ; 0x02186754
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186758
|
|
data_ov36_02186758: ; 0x02186758
|
|
.byte 0x90, 0x29, 0x18, 0x02
|
|
.global data_ov36_0218675c
|
|
data_ov36_0218675c: ; 0x0218675c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186760
|
|
data_ov36_02186760: ; 0x02186760
|
|
.byte 0x10, 0x2e, 0x18, 0x02
|
|
.global data_ov36_02186764
|
|
data_ov36_02186764: ; 0x02186764
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186768
|
|
data_ov36_02186768: ; 0x02186768
|
|
.byte 0x98, 0xdd, 0x17, 0x02
|
|
.global data_ov36_0218676c
|
|
data_ov36_0218676c: ; 0x0218676c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186770
|
|
data_ov36_02186770: ; 0x02186770
|
|
.byte 0xcc, 0xde, 0x17, 0x02
|
|
.global data_ov36_02186774
|
|
data_ov36_02186774: ; 0x02186774
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186778
|
|
data_ov36_02186778: ; 0x02186778
|
|
.byte 0xf4, 0xe4, 0x17, 0x02
|
|
.global data_ov36_0218677c
|
|
data_ov36_0218677c: ; 0x0218677c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186780
|
|
data_ov36_02186780: ; 0x02186780
|
|
.byte 0x4c, 0xe7, 0x17, 0x02
|
|
.global data_ov36_02186784
|
|
data_ov36_02186784: ; 0x02186784
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186788
|
|
data_ov36_02186788: ; 0x02186788
|
|
.byte 0x18, 0xe8, 0x17, 0x02
|
|
.global data_ov36_0218678c
|
|
data_ov36_0218678c: ; 0x0218678c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186790
|
|
data_ov36_02186790: ; 0x02186790
|
|
.byte 0xe8, 0xec, 0x17, 0x02
|
|
.global data_ov36_02186794
|
|
data_ov36_02186794: ; 0x02186794
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186798
|
|
data_ov36_02186798: ; 0x02186798
|
|
.byte 0x10, 0xef, 0x17, 0x02
|
|
.global data_ov36_0218679c
|
|
data_ov36_0218679c: ; 0x0218679c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021867a0
|
|
data_ov36_021867a0: ; 0x021867a0
|
|
.byte 0xc0, 0xef, 0x17, 0x02
|
|
.global data_ov36_021867a4
|
|
data_ov36_021867a4: ; 0x021867a4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021867a8
|
|
data_ov36_021867a8: ; 0x021867a8
|
|
.byte 0x0c, 0xf1, 0x17, 0x02
|
|
.global data_ov36_021867ac
|
|
data_ov36_021867ac: ; 0x021867ac
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021867b0
|
|
data_ov36_021867b0: ; 0x021867b0
|
|
.byte 0x1c, 0xf2, 0x17, 0x02
|
|
.global data_ov36_021867b4
|
|
data_ov36_021867b4: ; 0x021867b4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021867b8
|
|
data_ov36_021867b8: ; 0x021867b8
|
|
.byte 0xf4, 0xf4, 0x17, 0x02
|
|
.global data_ov36_021867bc
|
|
data_ov36_021867bc: ; 0x021867bc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021867c0
|
|
data_ov36_021867c0: ; 0x021867c0
|
|
.byte 0xf0, 0xf9, 0x17, 0x02
|
|
.global data_ov36_021867c4
|
|
data_ov36_021867c4: ; 0x021867c4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021867c8
|
|
data_ov36_021867c8: ; 0x021867c8
|
|
.byte 0x3c, 0xfe, 0x17, 0x02
|
|
.global data_ov36_021867cc
|
|
data_ov36_021867cc: ; 0x021867cc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021867d0
|
|
data_ov36_021867d0: ; 0x021867d0
|
|
.byte 0x6c, 0x00, 0x18, 0x02
|
|
.global data_ov36_021867d4
|
|
data_ov36_021867d4: ; 0x021867d4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021867d8
|
|
data_ov36_021867d8: ; 0x021867d8
|
|
.byte 0x68, 0x01, 0x18, 0x02
|
|
.global data_ov36_021867dc
|
|
data_ov36_021867dc: ; 0x021867dc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021867e0
|
|
data_ov36_021867e0: ; 0x021867e0
|
|
.byte 0xa8, 0x04, 0x18, 0x02
|
|
.global data_ov36_021867e4
|
|
data_ov36_021867e4: ; 0x021867e4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021867e8
|
|
data_ov36_021867e8: ; 0x021867e8
|
|
.byte 0xcc, 0x05, 0x18, 0x02
|
|
.global data_ov36_021867ec
|
|
data_ov36_021867ec: ; 0x021867ec
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021867f0
|
|
data_ov36_021867f0: ; 0x021867f0
|
|
.byte 0x60, 0x06, 0x18, 0x02
|
|
.global data_ov36_021867f4
|
|
data_ov36_021867f4: ; 0x021867f4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021867f8
|
|
data_ov36_021867f8: ; 0x021867f8
|
|
.byte 0xb0, 0x09, 0x18, 0x02
|
|
.global data_ov36_021867fc
|
|
data_ov36_021867fc: ; 0x021867fc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186800
|
|
data_ov36_02186800: ; 0x02186800
|
|
.byte 0x24, 0x0e, 0x18, 0x02
|
|
.global data_ov36_02186804
|
|
data_ov36_02186804: ; 0x02186804
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186808
|
|
data_ov36_02186808: ; 0x02186808
|
|
.byte 0x8c, 0x10, 0x18, 0x02
|
|
.global data_ov36_0218680c
|
|
data_ov36_0218680c: ; 0x0218680c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186810
|
|
data_ov36_02186810: ; 0x02186810
|
|
.byte 0x90, 0x17, 0x18, 0x02
|
|
.global data_ov36_02186814
|
|
data_ov36_02186814: ; 0x02186814
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186818
|
|
data_ov36_02186818: ; 0x02186818
|
|
.byte 0xa8, 0x1b, 0x18, 0x02
|
|
.global data_ov36_0218681c
|
|
data_ov36_0218681c: ; 0x0218681c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186820
|
|
data_ov36_02186820: ; 0x02186820
|
|
.byte 0xd0, 0x1f, 0x18, 0x02
|
|
.global data_ov36_02186824
|
|
data_ov36_02186824: ; 0x02186824
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186828
|
|
data_ov36_02186828: ; 0x02186828
|
|
.byte 0x88, 0x2c, 0x18, 0x02
|
|
.global data_ov36_0218682c
|
|
data_ov36_0218682c: ; 0x0218682c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186830
|
|
data_ov36_02186830: ; 0x02186830
|
|
.byte 0x88, 0x2f, 0x18, 0x02
|
|
.global data_ov36_02186834
|
|
data_ov36_02186834: ; 0x02186834
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186838
|
|
data_ov36_02186838: ; 0x02186838
|
|
.byte 0xa4, 0x01
|
|
.global data_ov36_0218683a
|
|
data_ov36_0218683a: ; 0x0218683a
|
|
.byte 0x68, 0x01
|
|
.global data_ov36_0218683c
|
|
data_ov36_0218683c: ; 0x0218683c
|
|
.byte 0x2c, 0x01
|
|
.global data_ov36_0218683e
|
|
data_ov36_0218683e: ; 0x0218683e
|
|
.byte 0x0b, 0x10
|
|
.global data_ov36_02186840
|
|
data_ov36_02186840: ; 0x02186840
|
|
.byte 0x0c, 0x10
|
|
.global data_ov36_02186842
|
|
data_ov36_02186842: ; 0x02186842
|
|
.byte 0x0d, 0x10
|
|
.global data_ov36_02186844
|
|
data_ov36_02186844: ; 0x02186844
|
|
.byte 0x14, 0x10
|
|
.global data_ov36_02186846
|
|
data_ov36_02186846: ; 0x02186846
|
|
.byte 0x00, 0x00
|
|
.global data_ov36_02186848
|
|
data_ov36_02186848: ; 0x02186848
|
|
.ascii "walk"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186850
|
|
data_ov36_02186850: ; 0x02186850
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186854
|
|
data_ov36_02186854: ; 0x02186854
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186858
|
|
data_ov36_02186858: ; 0x02186858
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_0218685c
|
|
data_ov36_0218685c: ; 0x0218685c
|
|
.ascii "wait"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186864
|
|
data_ov36_02186864: ; 0x02186864
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186868
|
|
data_ov36_02186868: ; 0x02186868
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_0218686c
|
|
data_ov36_0218686c: ; 0x0218686c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186870
|
|
data_ov36_02186870: ; 0x02186870
|
|
.ascii "stagger"
|
|
.byte 0x00
|
|
.global data_ov36_02186878
|
|
data_ov36_02186878: ; 0x02186878
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_0218687c
|
|
data_ov36_0218687c: ; 0x0218687c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186880
|
|
data_ov36_02186880: ; 0x02186880
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186884
|
|
data_ov36_02186884: ; 0x02186884
|
|
.ascii "stagger_L"
|
|
.byte 0x00, 0x00, 0x00
|
|
.global data_ov36_02186890
|
|
data_ov36_02186890: ; 0x02186890
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186894
|
|
data_ov36_02186894: ; 0x02186894
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186898
|
|
data_ov36_02186898: ; 0x02186898
|
|
.ascii "stagger_d"
|
|
.byte 0x00, 0x00, 0x00
|
|
.global data_ov36_021868a4
|
|
data_ov36_021868a4: ; 0x021868a4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021868a8
|
|
data_ov36_021868a8: ; 0x021868a8
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_021868ac
|
|
data_ov36_021868ac: ; 0x021868ac
|
|
.ascii "stagger_d_L"
|
|
.byte 0x00
|
|
.global data_ov36_021868b8
|
|
data_ov36_021868b8: ; 0x021868b8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021868bc
|
|
data_ov36_021868bc: ; 0x021868bc
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_021868c0
|
|
data_ov36_021868c0: ; 0x021868c0
|
|
.ascii "stagger_wait"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021868d0
|
|
data_ov36_021868d0: ; 0x021868d0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021868d4
|
|
data_ov36_021868d4: ; 0x021868d4
|
|
.ascii "stagger_wait_L"
|
|
.byte 0x00, 0x00
|
|
.global data_ov36_021868e4
|
|
data_ov36_021868e4: ; 0x021868e4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021868e8
|
|
data_ov36_021868e8: ; 0x021868e8
|
|
.ascii "stagger_ed"
|
|
.byte 0x00, 0x00
|
|
.global data_ov36_021868f4
|
|
data_ov36_021868f4: ; 0x021868f4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021868f8
|
|
data_ov36_021868f8: ; 0x021868f8
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_021868fc
|
|
data_ov36_021868fc: ; 0x021868fc
|
|
.ascii "stagger_ed_L"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_0218690c
|
|
data_ov36_0218690c: ; 0x0218690c
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186910
|
|
data_ov36_02186910: ; 0x02186910
|
|
.ascii "fall"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186918
|
|
data_ov36_02186918: ; 0x02186918
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_0218691c
|
|
data_ov36_0218691c: ; 0x0218691c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186920
|
|
data_ov36_02186920: ; 0x02186920
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186924
|
|
data_ov36_02186924: ; 0x02186924
|
|
.ascii "fall_L"
|
|
.byte 0x00, 0x00
|
|
.global data_ov36_0218692c
|
|
data_ov36_0218692c: ; 0x0218692c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186930
|
|
data_ov36_02186930: ; 0x02186930
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186934
|
|
data_ov36_02186934: ; 0x02186934
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186938
|
|
data_ov36_02186938: ; 0x02186938
|
|
.ascii "fall_wait"
|
|
.byte 0x00, 0x00, 0x00
|
|
.global data_ov36_02186944
|
|
data_ov36_02186944: ; 0x02186944
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186948
|
|
data_ov36_02186948: ; 0x02186948
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_0218694c
|
|
data_ov36_0218694c: ; 0x0218694c
|
|
.ascii "fall_wait_L"
|
|
.byte 0x00
|
|
.global data_ov36_02186958
|
|
data_ov36_02186958: ; 0x02186958
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_0218695c
|
|
data_ov36_0218695c: ; 0x0218695c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186960
|
|
data_ov36_02186960: ; 0x02186960
|
|
.ascii "damage"
|
|
.byte 0x00, 0x00
|
|
.global data_ov36_02186968
|
|
data_ov36_02186968: ; 0x02186968
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_0218696c
|
|
data_ov36_0218696c: ; 0x0218696c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186970
|
|
data_ov36_02186970: ; 0x02186970
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186974
|
|
data_ov36_02186974: ; 0x02186974
|
|
.ascii "damage_L"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186980
|
|
data_ov36_02186980: ; 0x02186980
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186984
|
|
data_ov36_02186984: ; 0x02186984
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186988
|
|
data_ov36_02186988: ; 0x02186988
|
|
.ascii "return"
|
|
.byte 0x00, 0x00
|
|
.global data_ov36_02186990
|
|
data_ov36_02186990: ; 0x02186990
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186994
|
|
data_ov36_02186994: ; 0x02186994
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186998
|
|
data_ov36_02186998: ; 0x02186998
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_0218699c
|
|
data_ov36_0218699c: ; 0x0218699c
|
|
.ascii "return_L"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021869a8
|
|
data_ov36_021869a8: ; 0x021869a8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021869ac
|
|
data_ov36_021869ac: ; 0x021869ac
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_021869b0
|
|
data_ov36_021869b0: ; 0x021869b0
|
|
.ascii "return2"
|
|
.byte 0x00
|
|
.global data_ov36_021869b8
|
|
data_ov36_021869b8: ; 0x021869b8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021869bc
|
|
data_ov36_021869bc: ; 0x021869bc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021869c0
|
|
data_ov36_021869c0: ; 0x021869c0
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_021869c4
|
|
data_ov36_021869c4: ; 0x021869c4
|
|
.ascii "fire"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021869cc
|
|
data_ov36_021869cc: ; 0x021869cc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021869d0
|
|
data_ov36_021869d0: ; 0x021869d0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021869d4
|
|
data_ov36_021869d4: ; 0x021869d4
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_021869d8
|
|
data_ov36_021869d8: ; 0x021869d8
|
|
.ascii "protect"
|
|
.byte 0x00
|
|
.global data_ov36_021869e0
|
|
data_ov36_021869e0: ; 0x021869e0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021869e4
|
|
data_ov36_021869e4: ; 0x021869e4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021869e8
|
|
data_ov36_021869e8: ; 0x021869e8
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_021869ec
|
|
data_ov36_021869ec: ; 0x021869ec
|
|
.ascii "blazing"
|
|
.byte 0x00
|
|
.global data_ov36_021869f4
|
|
data_ov36_021869f4: ; 0x021869f4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021869f8
|
|
data_ov36_021869f8: ; 0x021869f8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_021869fc
|
|
data_ov36_021869fc: ; 0x021869fc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a00
|
|
data_ov36_02186a00: ; 0x02186a00
|
|
.ascii "stepping"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a0c
|
|
data_ov36_02186a0c: ; 0x02186a0c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a10
|
|
data_ov36_02186a10: ; 0x02186a10
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a14
|
|
data_ov36_02186a14: ; 0x02186a14
|
|
.ascii "seek"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a1c
|
|
data_ov36_02186a1c: ; 0x02186a1c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a20
|
|
data_ov36_02186a20: ; 0x02186a20
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a24
|
|
data_ov36_02186a24: ; 0x02186a24
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a28
|
|
data_ov36_02186a28: ; 0x02186a28
|
|
.ascii "roar"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a30
|
|
data_ov36_02186a30: ; 0x02186a30
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a34
|
|
data_ov36_02186a34: ; 0x02186a34
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a38
|
|
data_ov36_02186a38: ; 0x02186a38
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a3c
|
|
data_ov36_02186a3c: ; 0x02186a3c
|
|
.ascii "dead"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a44
|
|
data_ov36_02186a44: ; 0x02186a44
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a48
|
|
data_ov36_02186a48: ; 0x02186a48
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a4c
|
|
data_ov36_02186a4c: ; 0x02186a4c
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a50
|
|
data_ov36_02186a50: ; 0x02186a50
|
|
.ascii "dead_L"
|
|
.byte 0x00, 0x00
|
|
.global data_ov36_02186a58
|
|
data_ov36_02186a58: ; 0x02186a58
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a5c
|
|
data_ov36_02186a5c: ; 0x02186a5c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a60
|
|
data_ov36_02186a60: ; 0x02186a60
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a64
|
|
data_ov36_02186a64: ; 0x02186a64
|
|
.ascii "damage2"
|
|
.byte 0x00
|
|
.global data_ov36_02186a6c
|
|
data_ov36_02186a6c: ; 0x02186a6c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a70
|
|
data_ov36_02186a70: ; 0x02186a70
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a74
|
|
data_ov36_02186a74: ; 0x02186a74
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a78
|
|
data_ov36_02186a78: ; 0x02186a78
|
|
.ascii "dead2"
|
|
.byte 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a80
|
|
data_ov36_02186a80: ; 0x02186a80
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a84
|
|
data_ov36_02186a84: ; 0x02186a84
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a88
|
|
data_ov36_02186a88: ; 0x02186a88
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a8c
|
|
data_ov36_02186a8c: ; 0x02186a8c
|
|
.ascii "down"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a94
|
|
data_ov36_02186a94: ; 0x02186a94
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a98
|
|
data_ov36_02186a98: ; 0x02186a98
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186a9c
|
|
data_ov36_02186a9c: ; 0x02186a9c
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186aa0
|
|
data_ov36_02186aa0: ; 0x02186aa0
|
|
.ascii "inhale"
|
|
.byte 0x00, 0x00
|
|
.global data_ov36_02186aa8
|
|
data_ov36_02186aa8: ; 0x02186aa8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186aac
|
|
data_ov36_02186aac: ; 0x02186aac
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186ab0
|
|
data_ov36_02186ab0: ; 0x02186ab0
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186ab4
|
|
data_ov36_02186ab4: ; 0x02186ab4
|
|
.ascii "revive"
|
|
.byte 0x00, 0x00
|
|
.global data_ov36_02186abc
|
|
data_ov36_02186abc: ; 0x02186abc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186ac0
|
|
data_ov36_02186ac0: ; 0x02186ac0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186ac4
|
|
data_ov36_02186ac4: ; 0x02186ac4
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186ac8
|
|
data_ov36_02186ac8: ; 0x02186ac8
|
|
.ascii "appear"
|
|
.byte 0x00, 0x00
|
|
.global data_ov36_02186ad0
|
|
data_ov36_02186ad0: ; 0x02186ad0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186ad4
|
|
data_ov36_02186ad4: ; 0x02186ad4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186ad8
|
|
data_ov36_02186ad8: ; 0x02186ad8
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186adc
|
|
data_ov36_02186adc: ; 0x02186adc
|
|
.ascii "appear"
|
|
.byte 0x00, 0x00
|
|
.global data_ov36_02186ae4
|
|
data_ov36_02186ae4: ; 0x02186ae4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186ae8
|
|
data_ov36_02186ae8: ; 0x02186ae8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186aec
|
|
data_ov36_02186aec: ; 0x02186aec
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186af0
|
|
data_ov36_02186af0: ; 0x02186af0
|
|
.ascii "wait"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186af8
|
|
data_ov36_02186af8: ; 0x02186af8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186afc
|
|
data_ov36_02186afc: ; 0x02186afc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b00
|
|
data_ov36_02186b00: ; 0x02186b00
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b04
|
|
data_ov36_02186b04: ; 0x02186b04
|
|
.ascii "inhale_wboss"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b14
|
|
data_ov36_02186b14: ; 0x02186b14
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b18
|
|
data_ov36_02186b18: ; 0x02186b18
|
|
.byte 0x00, 0x70, 0x03, 0x00
|
|
.global data_ov36_02186b1c
|
|
data_ov36_02186b1c: ; 0x02186b1c
|
|
.ascii "inhale_tex01"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b2c
|
|
data_ov36_02186b2c: ; 0x02186b2c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b30
|
|
data_ov36_02186b30: ; 0x02186b30
|
|
.ascii "inhale_tex02"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b40
|
|
data_ov36_02186b40: ; 0x02186b40
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b44
|
|
data_ov36_02186b44: ; 0x02186b44
|
|
.ascii "chin"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b4c
|
|
data_ov36_02186b4c: ; 0x02186b4c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b50
|
|
data_ov36_02186b50: ; 0x02186b50
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b54
|
|
data_ov36_02186b54: ; 0x02186b54
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b58
|
|
data_ov36_02186b58: ; 0x02186b58
|
|
.ascii "tail"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b60
|
|
data_ov36_02186b60: ; 0x02186b60
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b64
|
|
data_ov36_02186b64: ; 0x02186b64
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b68
|
|
data_ov36_02186b68: ; 0x02186b68
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b6c
|
|
data_ov36_02186b6c: ; 0x02186b6c
|
|
.ascii "chest"
|
|
.byte 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b74
|
|
data_ov36_02186b74: ; 0x02186b74
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b78
|
|
data_ov36_02186b78: ; 0x02186b78
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b7c
|
|
data_ov36_02186b7c: ; 0x02186b7c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b80
|
|
data_ov36_02186b80: ; 0x02186b80
|
|
.ascii "skl_root"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b8c
|
|
data_ov36_02186b8c: ; 0x02186b8c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b90
|
|
data_ov36_02186b90: ; 0x02186b90
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186b94
|
|
data_ov36_02186b94: ; 0x02186b94
|
|
.ascii "mt_bp_jwl2"
|
|
.byte 0x00, 0x00
|
|
.global data_ov36_02186ba0
|
|
data_ov36_02186ba0: ; 0x02186ba0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186ba4
|
|
data_ov36_02186ba4: ; 0x02186ba4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186ba8
|
|
data_ov36_02186ba8: ; 0x02186ba8
|
|
.ascii "BMOB"
|
|
.global data_ov36_02186bac
|
|
data_ov36_02186bac: ; 0x02186bac
|
|
.ascii "YTMB"
|
|
.global data_ov36_02186bb0
|
|
data_ov36_02186bb0: ; 0x02186bb0
|
|
.ascii "LLUN"
|
|
|
|
.section .init, 4, 1, 4
|
|
.global func_ov36_02186bb4
|
|
arm_func_start func_ov36_02186bb4
|
|
func_ov36_02186bb4: ; 0x02186bb4
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _02186be0 ; =data_ov36_02186fac
|
|
ldr r1, _02186be4 ; =0x50574253
|
|
ldr r2, _02186be8 ; =func_ov36_0217bd80
|
|
mov r3, #0
|
|
bl func_0203e784
|
|
ldr r0, _02186be0 ; =data_ov36_02186fac
|
|
ldr r1, _02186bec ; =func_0203e7b4
|
|
ldr r2, _02186bf0 ; =data_ov36_02186fa0
|
|
bl func_0204f8d4
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02186bb4
|
|
_02186be0: .word data_ov36_02186fac
|
|
_02186be4: .word 0x50574253
|
|
_02186be8: .word func_ov36_0217bd80
|
|
_02186bec: .word func_0203e7b4
|
|
_02186bf0: .word data_ov36_02186fa0
|
|
|
|
.global func_ov36_02186bf4
|
|
arm_func_start func_ov36_02186bf4
|
|
func_ov36_02186bf4: ; 0x02186bf4
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _02186c20 ; =data_ov36_02186fcc
|
|
ldr r1, _02186c24 ; =0x50424652
|
|
ldr r2, _02186c28 ; =func_ov36_02185ffc
|
|
mov r3, #0
|
|
bl func_0203e784
|
|
ldr r0, _02186c20 ; =data_ov36_02186fcc
|
|
ldr r1, _02186c2c ; =func_0203e7b4
|
|
ldr r2, _02186c30 ; =data_ov36_02186fc0
|
|
bl func_0204f8d4
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov36_02186bf4
|
|
_02186c20: .word data_ov36_02186fcc
|
|
_02186c24: .word 0x50424652
|
|
_02186c28: .word func_ov36_02185ffc
|
|
_02186c2c: .word func_0203e7b4
|
|
_02186c30: .word data_ov36_02186fc0
|
|
|
|
.section .sinit, 4, 1, 4
|
|
.global data_ov36_02186c34
|
|
data_ov36_02186c34: ; 0x02186c34
|
|
.byte 0xb4, 0x6b, 0x18, 0x02
|
|
.global data_ov36_02186c38
|
|
data_ov36_02186c38: ; 0x02186c38
|
|
.byte 0xf4, 0x6b, 0x18, 0x02
|
|
|
|
.data
|
|
.global data_ov36_02186c40
|
|
data_ov36_02186c40: ; 0x02186c40
|
|
.ascii "brg"
|
|
.byte 0x00
|
|
.global data_ov36_02186c44
|
|
data_ov36_02186c44: ; 0x02186c44
|
|
.ascii "fnl"
|
|
.byte 0x00
|
|
.global data_ov36_02186c48
|
|
data_ov36_02186c48: ; 0x02186c48
|
|
.ascii "pdl"
|
|
.byte 0x00
|
|
.global data_ov36_02186c4c
|
|
data_ov36_02186c4c: ; 0x02186c4c
|
|
.ascii "dco"
|
|
.byte 0x00
|
|
.global data_ov36_02186c50
|
|
data_ov36_02186c50: ; 0x02186c50
|
|
.ascii "can"
|
|
.byte 0x00
|
|
.global data_ov36_02186c54
|
|
data_ov36_02186c54: ; 0x02186c54
|
|
.ascii "hul"
|
|
.byte 0x00
|
|
.global data_ov36_02186c58
|
|
data_ov36_02186c58: ; 0x02186c58
|
|
.ascii "bow"
|
|
.byte 0x00
|
|
.global data_ov36_02186c5c
|
|
data_ov36_02186c5c: ; 0x02186c5c
|
|
.ascii "anc"
|
|
.byte 0x00
|
|
.global data_ov36_02186c60
|
|
data_ov36_02186c60: ; 0x02186c60
|
|
.byte 0x5c, 0x6c, 0x18, 0x02
|
|
.global data_ov36_02186c64
|
|
data_ov36_02186c64: ; 0x02186c64
|
|
.byte 0x58, 0x6c, 0x18, 0x02
|
|
.global data_ov36_02186c68
|
|
data_ov36_02186c68: ; 0x02186c68
|
|
.byte 0x54, 0x6c, 0x18, 0x02
|
|
.global data_ov36_02186c6c
|
|
data_ov36_02186c6c: ; 0x02186c6c
|
|
.byte 0x50, 0x6c, 0x18, 0x02
|
|
.global data_ov36_02186c70
|
|
data_ov36_02186c70: ; 0x02186c70
|
|
.byte 0x4c, 0x6c, 0x18, 0x02
|
|
.global data_ov36_02186c74
|
|
data_ov36_02186c74: ; 0x02186c74
|
|
.byte 0x48, 0x6c, 0x18, 0x02
|
|
.global data_ov36_02186c78
|
|
data_ov36_02186c78: ; 0x02186c78
|
|
.byte 0x44, 0x6c, 0x18, 0x02
|
|
.global data_ov36_02186c7c
|
|
data_ov36_02186c7c: ; 0x02186c7c
|
|
.byte 0x40, 0x6c, 0x18, 0x02
|
|
.global data_ov36_02186c80
|
|
data_ov36_02186c80: ; 0x02186c80
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov36_02186c84
|
|
data_ov36_02186c84: ; 0x02186c84
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov36_02186c88
|
|
data_ov36_02186c88: ; 0x02186c88
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov36_02186c8c
|
|
data_ov36_02186c8c: ; 0x02186c8c
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov36_02186c90
|
|
data_ov36_02186c90: ; 0x02186c90
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov36_02186c94
|
|
data_ov36_02186c94: ; 0x02186c94
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186c98
|
|
data_ov36_02186c98: ; 0x02186c98
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov36_02186c9c
|
|
data_ov36_02186c9c: ; 0x02186c9c
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov36_02186ca0
|
|
data_ov36_02186ca0: ; 0x02186ca0
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov36_02186ca4
|
|
data_ov36_02186ca4: ; 0x02186ca4
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov36_02186ca8
|
|
data_ov36_02186ca8: ; 0x02186ca8
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov36_02186cac
|
|
data_ov36_02186cac: ; 0x02186cac
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov36_02186cb0
|
|
data_ov36_02186cb0: ; 0x02186cb0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186cb4
|
|
data_ov36_02186cb4: ; 0x02186cb4
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov36_02186cb8
|
|
data_ov36_02186cb8: ; 0x02186cb8
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov36_02186cbc
|
|
data_ov36_02186cbc: ; 0x02186cbc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186cc0
|
|
data_ov36_02186cc0: ; 0x02186cc0
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov36_02186cc4
|
|
data_ov36_02186cc4: ; 0x02186cc4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186cc8
|
|
data_ov36_02186cc8: ; 0x02186cc8
|
|
.byte 0x00, 0x50, 0x00, 0x00
|
|
.global data_ov36_02186ccc
|
|
data_ov36_02186ccc: ; 0x02186ccc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186cd0
|
|
data_ov36_02186cd0: ; 0x02186cd0
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov36_02186cd4
|
|
data_ov36_02186cd4: ; 0x02186cd4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186cd8
|
|
data_ov36_02186cd8: ; 0x02186cd8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186cdc
|
|
data_ov36_02186cdc: ; 0x02186cdc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186ce0
|
|
data_ov36_02186ce0: ; 0x02186ce0
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov36_02186ce4
|
|
data_ov36_02186ce4: ; 0x02186ce4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186ce8
|
|
data_ov36_02186ce8: ; 0x02186ce8
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov36_02186cec
|
|
data_ov36_02186cec: ; 0x02186cec
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186cf0
|
|
data_ov36_02186cf0: ; 0x02186cf0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186cf4
|
|
data_ov36_02186cf4: ; 0x02186cf4
|
|
.byte 0x10, 0x49, 0x18, 0x02
|
|
.global data_ov36_02186cf8
|
|
data_ov36_02186cf8: ; 0x02186cf8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186cfc
|
|
data_ov36_02186cfc: ; 0x02186cfc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186d00
|
|
data_ov36_02186d00: ; 0x02186d00
|
|
.byte 0x14, 0xf4, 0x17, 0x02
|
|
.global data_ov36_02186d04
|
|
data_ov36_02186d04: ; 0x02186d04
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186d08
|
|
data_ov36_02186d08: ; 0x02186d08
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186d0c
|
|
data_ov36_02186d0c: ; 0x02186d0c
|
|
.byte 0x60, 0xc1, 0x17, 0x02
|
|
.global data_ov36_02186d10
|
|
data_ov36_02186d10: ; 0x02186d10
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186d14
|
|
data_ov36_02186d14: ; 0x02186d14
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186d18
|
|
data_ov36_02186d18: ; 0x02186d18
|
|
.byte 0x44, 0xd0, 0x17, 0x02
|
|
.global data_ov36_02186d1c
|
|
data_ov36_02186d1c: ; 0x02186d1c
|
|
.byte 0x68, 0xd1, 0x17, 0x02
|
|
.global data_ov36_02186d20
|
|
data_ov36_02186d20: ; 0x02186d20
|
|
.byte 0xa0, 0xd2, 0x17, 0x02
|
|
.global data_ov36_02186d24
|
|
data_ov36_02186d24: ; 0x02186d24
|
|
.byte 0x3c, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186d28
|
|
data_ov36_02186d28: ; 0x02186d28
|
|
.byte 0x40, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186d2c
|
|
data_ov36_02186d2c: ; 0x02186d2c
|
|
.byte 0xd4, 0xd7, 0x17, 0x02
|
|
.global data_ov36_02186d30
|
|
data_ov36_02186d30: ; 0x02186d30
|
|
.byte 0x10, 0xd8, 0x17, 0x02
|
|
.global data_ov36_02186d34
|
|
data_ov36_02186d34: ; 0x02186d34
|
|
.byte 0x2c, 0x44, 0x18, 0x02
|
|
.global data_ov36_02186d38
|
|
data_ov36_02186d38: ; 0x02186d38
|
|
.byte 0x24, 0x46, 0x18, 0x02
|
|
.global data_ov36_02186d3c
|
|
data_ov36_02186d3c: ; 0x02186d3c
|
|
.byte 0x44, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186d40
|
|
data_ov36_02186d40: ; 0x02186d40
|
|
.byte 0x48, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186d44
|
|
data_ov36_02186d44: ; 0x02186d44
|
|
.byte 0xa8, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186d48
|
|
data_ov36_02186d48: ; 0x02186d48
|
|
.byte 0xb0, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186d4c
|
|
data_ov36_02186d4c: ; 0x02186d4c
|
|
.byte 0x4c, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186d50
|
|
data_ov36_02186d50: ; 0x02186d50
|
|
.byte 0x7c, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186d54
|
|
data_ov36_02186d54: ; 0x02186d54
|
|
.byte 0xe4, 0x27, 0x0c, 0x02
|
|
.global data_ov36_02186d58
|
|
data_ov36_02186d58: ; 0x02186d58
|
|
.byte 0x04, 0x30, 0x0c, 0x02
|
|
.global data_ov36_02186d5c
|
|
data_ov36_02186d5c: ; 0x02186d5c
|
|
.byte 0x44, 0x27, 0x0c, 0x02
|
|
.global data_ov36_02186d60
|
|
data_ov36_02186d60: ; 0x02186d60
|
|
.byte 0x7c, 0x3b, 0x18, 0x02
|
|
.global data_ov36_02186d64
|
|
data_ov36_02186d64: ; 0x02186d64
|
|
.byte 0x50, 0x1c, 0x0c, 0x02
|
|
.global data_ov36_02186d68
|
|
data_ov36_02186d68: ; 0x02186d68
|
|
.byte 0x0c, 0x31, 0x0c, 0x02
|
|
.global data_ov36_02186d6c
|
|
data_ov36_02186d6c: ; 0x02186d6c
|
|
.byte 0x14, 0x31, 0x0c, 0x02
|
|
.global data_ov36_02186d70
|
|
data_ov36_02186d70: ; 0x02186d70
|
|
.byte 0xa8, 0x18, 0x0c, 0x02
|
|
.global data_ov36_02186d74
|
|
data_ov36_02186d74: ; 0x02186d74
|
|
.byte 0xc4, 0x18, 0x0c, 0x02
|
|
.global data_ov36_02186d78
|
|
data_ov36_02186d78: ; 0x02186d78
|
|
.byte 0xfc, 0x18, 0x0c, 0x02
|
|
.global data_ov36_02186d7c
|
|
data_ov36_02186d7c: ; 0x02186d7c
|
|
.byte 0x04, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186d80
|
|
data_ov36_02186d80: ; 0x02186d80
|
|
.byte 0x10, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186d84
|
|
data_ov36_02186d84: ; 0x02186d84
|
|
.byte 0xe4, 0x49, 0x18, 0x02
|
|
.global data_ov36_02186d88
|
|
data_ov36_02186d88: ; 0x02186d88
|
|
.byte 0x1c, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186d8c
|
|
data_ov36_02186d8c: ; 0x02186d8c
|
|
.byte 0x24, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186d90
|
|
data_ov36_02186d90: ; 0x02186d90
|
|
.byte 0x38, 0x49, 0x18, 0x02
|
|
.global data_ov36_02186d94
|
|
data_ov36_02186d94: ; 0x02186d94
|
|
.byte 0x28, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186d98
|
|
data_ov36_02186d98: ; 0x02186d98
|
|
.byte 0x34, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186d9c
|
|
data_ov36_02186d9c: ; 0x02186d9c
|
|
.byte 0x38, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186da0
|
|
data_ov36_02186da0: ; 0x02186da0
|
|
.byte 0x3c, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186da4
|
|
data_ov36_02186da4: ; 0x02186da4
|
|
.byte 0x40, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186da8
|
|
data_ov36_02186da8: ; 0x02186da8
|
|
.byte 0x48, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186dac
|
|
data_ov36_02186dac: ; 0x02186dac
|
|
.byte 0x50, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186db0
|
|
data_ov36_02186db0: ; 0x02186db0
|
|
.byte 0x54, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186db4
|
|
data_ov36_02186db4: ; 0x02186db4
|
|
.byte 0x58, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186db8
|
|
data_ov36_02186db8: ; 0x02186db8
|
|
.byte 0x6c, 0x1b, 0x0c, 0x02
|
|
.global data_ov36_02186dbc
|
|
data_ov36_02186dbc: ; 0x02186dbc
|
|
.byte 0xb4, 0x1b, 0x0c, 0x02
|
|
.global data_ov36_02186dc0
|
|
data_ov36_02186dc0: ; 0x02186dc0
|
|
.byte 0xf8, 0x1b, 0x0c, 0x02
|
|
.global data_ov36_02186dc4
|
|
data_ov36_02186dc4: ; 0x02186dc4
|
|
.byte 0xfc, 0x31, 0x0c, 0x02
|
|
.global data_ov36_02186dc8
|
|
data_ov36_02186dc8: ; 0x02186dc8
|
|
.byte 0x2c, 0x32, 0x0c, 0x02
|
|
.global data_ov36_02186dcc
|
|
data_ov36_02186dcc: ; 0x02186dcc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186dd0
|
|
data_ov36_02186dd0: ; 0x02186dd0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186dd4
|
|
data_ov36_02186dd4: ; 0x02186dd4
|
|
.byte 0xc4, 0xcf, 0x17, 0x02
|
|
.global data_ov36_02186dd8
|
|
data_ov36_02186dd8: ; 0x02186dd8
|
|
.byte 0xe0, 0x5f, 0x18, 0x02
|
|
.global data_ov36_02186ddc
|
|
data_ov36_02186ddc: ; 0x02186ddc
|
|
.byte 0x9c, 0xc1, 0x17, 0x02
|
|
.global data_ov36_02186de0
|
|
data_ov36_02186de0: ; 0x02186de0
|
|
.byte 0xac, 0xc1, 0x17, 0x02
|
|
.global data_ov36_02186de4
|
|
data_ov36_02186de4: ; 0x02186de4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186de8
|
|
data_ov36_02186de8: ; 0x02186de8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186dec
|
|
data_ov36_02186dec: ; 0x02186dec
|
|
.byte 0x98, 0xcc, 0x17, 0x02
|
|
.global data_ov36_02186df0
|
|
data_ov36_02186df0: ; 0x02186df0
|
|
.byte 0xdc, 0x5f, 0x18, 0x02
|
|
.global data_ov36_02186df4
|
|
data_ov36_02186df4: ; 0x02186df4
|
|
.byte 0x58, 0x5e, 0x0c, 0x02
|
|
.global data_ov36_02186df8
|
|
data_ov36_02186df8: ; 0x02186df8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186dfc
|
|
data_ov36_02186dfc: ; 0x02186dfc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186e00
|
|
data_ov36_02186e00: ; 0x02186e00
|
|
.byte 0x4d, 0x9b, 0x0a, 0x02
|
|
.global data_ov36_02186e04
|
|
data_ov36_02186e04: ; 0x02186e04
|
|
.byte 0x59, 0x9b, 0x0a, 0x02
|
|
.global data_ov36_02186e08
|
|
data_ov36_02186e08: ; 0x02186e08
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186e0c
|
|
data_ov36_02186e0c: ; 0x02186e0c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186e10
|
|
data_ov36_02186e10: ; 0x02186e10
|
|
.byte 0xd8, 0xcf, 0x17, 0x02
|
|
.global data_ov36_02186e14
|
|
data_ov36_02186e14: ; 0x02186e14
|
|
.byte 0xc0, 0x5f, 0x18, 0x02
|
|
.global data_ov36_02186e18
|
|
data_ov36_02186e18: ; 0x02186e18
|
|
.byte 0x0c, 0x96, 0x0a, 0x02
|
|
.global data_ov36_02186e1c
|
|
data_ov36_02186e1c: ; 0x02186e1c
|
|
.byte 0x14, 0x96, 0x0a, 0x02
|
|
.global data_ov36_02186e20
|
|
data_ov36_02186e20: ; 0x02186e20
|
|
.byte 0x50, 0x96, 0x0a, 0x02
|
|
.global data_ov36_02186e24
|
|
data_ov36_02186e24: ; 0x02186e24
|
|
.byte 0xd4, 0x96, 0x0a, 0x02
|
|
.global data_ov36_02186e28
|
|
data_ov36_02186e28: ; 0x02186e28
|
|
.byte 0x40, 0x97, 0x0a, 0x02
|
|
.global data_ov36_02186e2c
|
|
data_ov36_02186e2c: ; 0x02186e2c
|
|
.byte 0x64, 0x97, 0x0a, 0x02
|
|
.global data_ov36_02186e30
|
|
data_ov36_02186e30: ; 0x02186e30
|
|
.byte 0xd0, 0x97, 0x0a, 0x02
|
|
.global data_ov36_02186e34
|
|
data_ov36_02186e34: ; 0x02186e34
|
|
.byte 0xe0, 0x97, 0x0a, 0x02
|
|
.global data_ov36_02186e38
|
|
data_ov36_02186e38: ; 0x02186e38
|
|
.byte 0xf8, 0x97, 0x0a, 0x02
|
|
.global data_ov36_02186e3c
|
|
data_ov36_02186e3c: ; 0x02186e3c
|
|
.byte 0x64, 0x98, 0x0a, 0x02
|
|
.global data_ov36_02186e40
|
|
data_ov36_02186e40: ; 0x02186e40
|
|
.byte 0xbc, 0x98, 0x0a, 0x02
|
|
.global data_ov36_02186e44
|
|
data_ov36_02186e44: ; 0x02186e44
|
|
.byte 0x90, 0x98, 0x0a, 0x02
|
|
.global data_ov36_02186e48
|
|
data_ov36_02186e48: ; 0x02186e48
|
|
.byte 0x68, 0x99, 0x0a, 0x02
|
|
.global data_ov36_02186e4c
|
|
data_ov36_02186e4c: ; 0x02186e4c
|
|
.byte 0x94, 0x99, 0x0a, 0x02
|
|
.global data_ov36_02186e50
|
|
data_ov36_02186e50: ; 0x02186e50
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186e54
|
|
data_ov36_02186e54: ; 0x02186e54
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186e58
|
|
data_ov36_02186e58: ; 0x02186e58
|
|
.byte 0x34, 0x5d, 0x0c, 0x02
|
|
.global data_ov36_02186e5c
|
|
data_ov36_02186e5c: ; 0x02186e5c
|
|
.byte 0xdc, 0x5f, 0x18, 0x02
|
|
.global data_ov36_02186e60
|
|
data_ov36_02186e60: ; 0x02186e60
|
|
.byte 0x58, 0x5e, 0x0c, 0x02
|
|
.global data_ov36_02186e64
|
|
data_ov36_02186e64: ; 0x02186e64
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186e68
|
|
data_ov36_02186e68: ; 0x02186e68
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186e6c
|
|
data_ov36_02186e6c: ; 0x02186e6c
|
|
.byte 0x34, 0x5d, 0x0c, 0x02
|
|
.global data_ov36_02186e70
|
|
data_ov36_02186e70: ; 0x02186e70
|
|
.byte 0x60, 0xbf, 0x17, 0x02
|
|
.global data_ov36_02186e74
|
|
data_ov36_02186e74: ; 0x02186e74
|
|
.byte 0x14, 0xc0, 0x17, 0x02
|
|
.global data_ov36_02186e78
|
|
data_ov36_02186e78: ; 0x02186e78
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186e7c
|
|
data_ov36_02186e7c: ; 0x02186e7c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186e80
|
|
data_ov36_02186e80: ; 0x02186e80
|
|
.byte 0x6d, 0x9b, 0x0a, 0x02
|
|
.global data_ov36_02186e84
|
|
data_ov36_02186e84: ; 0x02186e84
|
|
.byte 0x79, 0x9b, 0x0a, 0x02
|
|
.global data_ov36_02186e88
|
|
data_ov36_02186e88: ; 0x02186e88
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186e8c
|
|
data_ov36_02186e8c: ; 0x02186e8c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186e90
|
|
data_ov36_02186e90: ; 0x02186e90
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186e94
|
|
data_ov36_02186e94: ; 0x02186e94
|
|
.byte 0x58, 0x1f, 0x08, 0x02
|
|
.global data_ov36_02186e98
|
|
data_ov36_02186e98: ; 0x02186e98
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186e9c
|
|
data_ov36_02186e9c: ; 0x02186e9c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186ea0
|
|
data_ov36_02186ea0: ; 0x02186ea0
|
|
.ascii "WBI:/inhale_wboss.nsbta"
|
|
.byte 0x00
|
|
.global data_ov36_02186eb8
|
|
data_ov36_02186eb8: ; 0x02186eb8
|
|
.ascii "inhale_wboss"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186ec8
|
|
data_ov36_02186ec8: ; 0x02186ec8
|
|
.ascii "PWB:/boss_p.nsbtp"
|
|
.byte 0x00, 0x00, 0x00
|
|
.global data_ov36_02186edc
|
|
data_ov36_02186edc: ; 0x02186edc
|
|
.ascii "boss_p"
|
|
.byte 0x00, 0x00
|
|
.global data_ov36_02186ee4
|
|
data_ov36_02186ee4: ; 0x02186ee4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186ee8
|
|
data_ov36_02186ee8: ; 0x02186ee8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov36_02186eec
|
|
data_ov36_02186eec: ; 0x02186eec
|
|
.byte 0x78, 0x60, 0x18, 0x02
|
|
.global data_ov36_02186ef0
|
|
data_ov36_02186ef0: ; 0x02186ef0
|
|
.byte 0xc0, 0x60, 0x18, 0x02
|
|
.global data_ov36_02186ef4
|
|
data_ov36_02186ef4: ; 0x02186ef4
|
|
.byte 0x10, 0x61, 0x18, 0x02
|
|
.global data_ov36_02186ef8
|
|
data_ov36_02186ef8: ; 0x02186ef8
|
|
.byte 0x3c, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186efc
|
|
data_ov36_02186efc: ; 0x02186efc
|
|
.byte 0x40, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186f00
|
|
data_ov36_02186f00: ; 0x02186f00
|
|
.byte 0xb8, 0x62, 0x18, 0x02
|
|
.global data_ov36_02186f04
|
|
data_ov36_02186f04: ; 0x02186f04
|
|
.byte 0xbc, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186f08
|
|
data_ov36_02186f08: ; 0x02186f08
|
|
.byte 0xd4, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186f0c
|
|
data_ov36_02186f0c: ; 0x02186f0c
|
|
.byte 0x94, 0x18, 0x0c, 0x02
|
|
.global data_ov36_02186f10
|
|
data_ov36_02186f10: ; 0x02186f10
|
|
.byte 0x44, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186f14
|
|
data_ov36_02186f14: ; 0x02186f14
|
|
.byte 0x48, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186f18
|
|
data_ov36_02186f18: ; 0x02186f18
|
|
.byte 0xa8, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186f1c
|
|
data_ov36_02186f1c: ; 0x02186f1c
|
|
.byte 0xb0, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186f20
|
|
data_ov36_02186f20: ; 0x02186f20
|
|
.byte 0x4c, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186f24
|
|
data_ov36_02186f24: ; 0x02186f24
|
|
.byte 0x7c, 0x17, 0x0c, 0x02
|
|
.global data_ov36_02186f28
|
|
data_ov36_02186f28: ; 0x02186f28
|
|
.byte 0xe4, 0x27, 0x0c, 0x02
|
|
.global data_ov36_02186f2c
|
|
data_ov36_02186f2c: ; 0x02186f2c
|
|
.byte 0x04, 0x30, 0x0c, 0x02
|
|
.global data_ov36_02186f30
|
|
data_ov36_02186f30: ; 0x02186f30
|
|
.byte 0x44, 0x27, 0x0c, 0x02
|
|
.global data_ov36_02186f34
|
|
data_ov36_02186f34: ; 0x02186f34
|
|
.byte 0x48, 0x66, 0x18, 0x02
|
|
.global data_ov36_02186f38
|
|
data_ov36_02186f38: ; 0x02186f38
|
|
.byte 0x50, 0x1c, 0x0c, 0x02
|
|
.global data_ov36_02186f3c
|
|
data_ov36_02186f3c: ; 0x02186f3c
|
|
.byte 0x0c, 0x31, 0x0c, 0x02
|
|
.global data_ov36_02186f40
|
|
data_ov36_02186f40: ; 0x02186f40
|
|
.byte 0x14, 0x31, 0x0c, 0x02
|
|
.global data_ov36_02186f44
|
|
data_ov36_02186f44: ; 0x02186f44
|
|
.byte 0xa8, 0x18, 0x0c, 0x02
|
|
.global data_ov36_02186f48
|
|
data_ov36_02186f48: ; 0x02186f48
|
|
.byte 0xc4, 0x18, 0x0c, 0x02
|
|
.global data_ov36_02186f4c
|
|
data_ov36_02186f4c: ; 0x02186f4c
|
|
.byte 0xfc, 0x18, 0x0c, 0x02
|
|
.global data_ov36_02186f50
|
|
data_ov36_02186f50: ; 0x02186f50
|
|
.byte 0x04, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186f54
|
|
data_ov36_02186f54: ; 0x02186f54
|
|
.byte 0x10, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186f58
|
|
data_ov36_02186f58: ; 0x02186f58
|
|
.byte 0x14, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186f5c
|
|
data_ov36_02186f5c: ; 0x02186f5c
|
|
.byte 0x1c, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186f60
|
|
data_ov36_02186f60: ; 0x02186f60
|
|
.byte 0x24, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186f64
|
|
data_ov36_02186f64: ; 0x02186f64
|
|
.byte 0x2c, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186f68
|
|
data_ov36_02186f68: ; 0x02186f68
|
|
.byte 0x28, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186f6c
|
|
data_ov36_02186f6c: ; 0x02186f6c
|
|
.byte 0x34, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186f70
|
|
data_ov36_02186f70: ; 0x02186f70
|
|
.byte 0x38, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186f74
|
|
data_ov36_02186f74: ; 0x02186f74
|
|
.byte 0x3c, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186f78
|
|
data_ov36_02186f78: ; 0x02186f78
|
|
.byte 0x40, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186f7c
|
|
data_ov36_02186f7c: ; 0x02186f7c
|
|
.byte 0x48, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186f80
|
|
data_ov36_02186f80: ; 0x02186f80
|
|
.byte 0x50, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186f84
|
|
data_ov36_02186f84: ; 0x02186f84
|
|
.byte 0x54, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186f88
|
|
data_ov36_02186f88: ; 0x02186f88
|
|
.byte 0x58, 0x19, 0x0c, 0x02
|
|
.global data_ov36_02186f8c
|
|
data_ov36_02186f8c: ; 0x02186f8c
|
|
.byte 0x6c, 0x1b, 0x0c, 0x02
|
|
.global data_ov36_02186f90
|
|
data_ov36_02186f90: ; 0x02186f90
|
|
.byte 0xb4, 0x1b, 0x0c, 0x02
|
|
.global data_ov36_02186f94
|
|
data_ov36_02186f94: ; 0x02186f94
|
|
.byte 0xf8, 0x1b, 0x0c, 0x02
|
|
.global data_ov36_02186f98
|
|
data_ov36_02186f98: ; 0x02186f98
|
|
.byte 0xfc, 0x31, 0x0c, 0x02
|
|
.global data_ov36_02186f9c
|
|
data_ov36_02186f9c: ; 0x02186f9c
|
|
.byte 0x2c, 0x32, 0x0c, 0x02
|
|
; 0x02186fa0
|
|
|
|
.bss
|
|
.global data_ov36_02186fa0
|
|
data_ov36_02186fa0:
|
|
.space 0x4
|
|
.global data_ov36_02186fa4
|
|
data_ov36_02186fa4:
|
|
.space 0x4
|
|
.global data_ov36_02186fa8
|
|
data_ov36_02186fa8:
|
|
.space 0x4
|
|
.global data_ov36_02186fac
|
|
data_ov36_02186fac:
|
|
.space 0x4
|
|
.global data_ov36_02186fb0
|
|
data_ov36_02186fb0:
|
|
.space 0x4
|
|
.global data_ov36_02186fb4
|
|
data_ov36_02186fb4:
|
|
.space 0x4
|
|
.global data_ov36_02186fb8
|
|
data_ov36_02186fb8:
|
|
.space 0x4
|
|
.global data_ov36_02186fbc
|
|
data_ov36_02186fbc:
|
|
.space 0x4
|
|
.global data_ov36_02186fc0
|
|
data_ov36_02186fc0:
|
|
.space 0x4
|
|
.global data_ov36_02186fc4
|
|
data_ov36_02186fc4:
|
|
.space 0x4
|
|
.global data_ov36_02186fc8
|
|
data_ov36_02186fc8:
|
|
.space 0x4
|
|
.global data_ov36_02186fcc
|
|
data_ov36_02186fcc:
|
|
.space 0x4
|
|
.global data_ov36_02186fd0
|
|
data_ov36_02186fd0:
|
|
.space 0x4
|
|
.global data_ov36_02186fd4
|
|
data_ov36_02186fd4:
|
|
.space 0x4
|
|
.global data_ov36_02186fd8
|
|
data_ov36_02186fd8:
|
|
.space 0x4
|
|
.global data_ov36_02186fdc
|
|
data_ov36_02186fdc:
|
|
.space 0x4
|