mirror of
https://github.com/zeldaret/ph
synced 2026-05-24 07:10:52 -04:00
18384 lines
374 KiB
ArmAsm
18384 lines
374 KiB
ArmAsm
.include "macros/function.inc"
|
|
.include "global.inc"
|
|
|
|
.text
|
|
|
|
.global func_ov30_0217bd80
|
|
arm_func_start func_ov30_0217bd80
|
|
func_ov30_0217bd80: ; 0x0217bd80
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, lr}
|
|
sub sp, sp, #0x2c
|
|
mov r2, #0
|
|
mov r7, r0
|
|
add r0, sp, #0x28
|
|
strh r2, [sp, #0x28]
|
|
strh r2, [sp, #0x2a]
|
|
bl func_ov30_021872c4
|
|
ldr r0, [r7, #0x200]
|
|
cmp r0, #0
|
|
bne _0217bdf8
|
|
ldr r2, [r7, #0x200]
|
|
ldr r0, [r7, #0x208]
|
|
cmp r2, r0
|
|
addge sp, sp, #0x2c
|
|
movge r0, #0
|
|
ldmgeia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
ldrh r1, [sp, #0x28]
|
|
ldrh r0, [sp, #0x2a]
|
|
ldr r4, [r7, #0x204]
|
|
mov r3, r2, lsl #0x2
|
|
add r2, r4, r2, lsl #2
|
|
strh r1, [r4, r3]
|
|
strh r0, [r2, #2]
|
|
ldr r1, [r7, #0x200]
|
|
add sp, sp, #0x2c
|
|
add r1, r1, #1
|
|
mov r0, #1
|
|
str r1, [r7, #0x200]
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
_0217bdf8:
|
|
ldr r0, [r7, #0x200]
|
|
mov r1, #0
|
|
strh r1, [sp, #0x24]
|
|
strh r1, [sp, #0x26]
|
|
subs r4, r0, #1
|
|
bmi _0217be38
|
|
ldr r1, [r7, #0x208]
|
|
cmp r4, r1
|
|
bge _0217be38
|
|
ldr r3, [r7, #0x204]
|
|
mov r2, r4, lsl #0x2
|
|
add r1, r3, r4, lsl #2
|
|
ldrh r2, [r3, r2]
|
|
ldrh r1, [r1, #2]
|
|
strh r2, [sp, #0x24]
|
|
strh r1, [sp, #0x26]
|
|
_0217be38:
|
|
ldrh r6, [sp, #0x24]
|
|
ldrh r4, [sp, #0x28]
|
|
ldrh r5, [sp, #0x26]
|
|
ldrh r3, [sp, #0x2a]
|
|
strh r6, [sp, #8]
|
|
strh r4, [sp, #0xc]
|
|
ldrsh r2, [sp, #0xc]
|
|
ldrsh r1, [sp, #8]
|
|
strh r5, [sp, #0xa]
|
|
strh r3, [sp, #0xe]
|
|
cmp r2, r1
|
|
ldreqsh r2, [sp, #0xe]
|
|
ldreqsh r1, [sp, #0xa]
|
|
strh r6, [sp, #0x18]
|
|
strh r5, [sp, #0x1a]
|
|
cmpeq r2, r1
|
|
strh r4, [sp, #0x1c]
|
|
strh r3, [sp, #0x1e]
|
|
addeq sp, sp, #0x2c
|
|
moveq r0, #1
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
sub r5, r0, #1
|
|
cmp r5, #0
|
|
mov r6, #0
|
|
ble _0217bf94
|
|
add sb, sp, #0x20
|
|
add r8, sp, #0x28
|
|
mov r4, r6
|
|
_0217bea8:
|
|
strh r4, [sp, #0x20]
|
|
strh r4, [sp, #0x22]
|
|
ldr r1, [r7, #0x204]
|
|
ldrh r3, [sp, #0x28]
|
|
mov r0, r6, lsl #0x2
|
|
ldrh lr, [r1, r0]
|
|
ldrh r2, [sp, #0x2a]
|
|
add r0, r1, r6, lsl #2
|
|
ldrh ip, [r0, #2]
|
|
strh r3, [sp]
|
|
strh lr, [sp, #4]
|
|
ldrsh r1, [sp, #4]
|
|
ldrsh r0, [sp]
|
|
strh r2, [sp, #2]
|
|
strh ip, [sp, #6]
|
|
cmp r1, r0
|
|
ldreqsh r1, [sp, #6]
|
|
ldreqsh r0, [sp, #2]
|
|
strh lr, [sp, #0x20]
|
|
strh ip, [sp, #0x22]
|
|
strh r3, [sp, #0x10]
|
|
strh r2, [sp, #0x12]
|
|
strh lr, [sp, #0x14]
|
|
strh ip, [sp, #0x16]
|
|
cmpeq r1, r0
|
|
bne _0217bf24
|
|
add r0, r6, #1
|
|
str r0, [r7, #0x200]
|
|
add sp, sp, #0x2c
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
_0217bf24:
|
|
mov r0, sb
|
|
mov r1, r8
|
|
bl func_ov30_021873bc
|
|
cmp r0, #0
|
|
beq _0217bf88
|
|
add r2, r6, #1
|
|
str r2, [r7, #0x200]
|
|
ldr r0, [r7, #0x208]
|
|
cmp r2, r0
|
|
addge sp, sp, #0x2c
|
|
movge r0, #0
|
|
ldmgeia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
ldrh r1, [sp, #0x28]
|
|
ldrh r0, [sp, #0x2a]
|
|
ldr r4, [r7, #0x204]
|
|
mov r3, r2, lsl #0x2
|
|
add r2, r4, r2, lsl #2
|
|
strh r1, [r4, r3]
|
|
strh r0, [r2, #2]
|
|
ldr r1, [r7, #0x200]
|
|
add sp, sp, #0x2c
|
|
add r1, r1, #1
|
|
mov r0, #1
|
|
str r1, [r7, #0x200]
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
_0217bf88:
|
|
add r6, r6, #1
|
|
cmp r6, r5
|
|
blt _0217bea8
|
|
_0217bf94:
|
|
ldr r2, [r7, #0x200]
|
|
ldr r0, [r7, #0x208]
|
|
cmp r2, r0
|
|
addge sp, sp, #0x2c
|
|
movge r0, #0
|
|
ldmgeia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
ldrh r1, [sp, #0x28]
|
|
ldrh r0, [sp, #0x2a]
|
|
ldr r4, [r7, #0x204]
|
|
mov r3, r2, lsl #0x2
|
|
add r2, r4, r2, lsl #2
|
|
strh r1, [r4, r3]
|
|
strh r0, [r2, #2]
|
|
ldr r1, [r7, #0x200]
|
|
mov r0, #1
|
|
add r1, r1, #1
|
|
str r1, [r7, #0x200]
|
|
add sp, sp, #0x2c
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
arm_func_end func_ov30_0217bd80
|
|
|
|
.global func_ov30_0217bfe0
|
|
arm_func_start func_ov30_0217bfe0
|
|
func_ov30_0217bfe0: ; 0x0217bfe0
|
|
stmdb sp!, {r3, lr}
|
|
mov r3, #0
|
|
strh r3, [sp]
|
|
strh r3, [sp, #2]
|
|
ldr ip, [r0, #0x204]
|
|
mov r3, r1, lsl #0x2
|
|
add r0, ip, r1, lsl #2
|
|
ldrh ip, [ip, r3]
|
|
ldrh r3, [r0, #2]
|
|
add r0, sp, #0
|
|
mov r1, r2
|
|
strh ip, [sp]
|
|
strh r3, [sp, #2]
|
|
bl func_ov30_02187304
|
|
mov r0, #1
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end func_ov30_0217bfe0
|
|
|
|
.global func_ov30_0217c020
|
|
arm_func_start func_ov30_0217c020
|
|
func_ov30_0217c020: ; 0x0217c020
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0x3c
|
|
mov sb, r0
|
|
ldr r0, [sb, #0x200]
|
|
ldr r5, [sp, #0x60]
|
|
subs r4, r0, #1
|
|
mov r8, r1
|
|
mov r7, r2
|
|
mov r6, r3
|
|
addmi sp, sp, #0x3c
|
|
ldmmiia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
add fp, sp, #0x24
|
|
_0217c050:
|
|
mov r0, sb
|
|
mov r1, r4
|
|
add r2, sp, #0x30
|
|
bl func_ov30_0217bfe0
|
|
cmp r0, #0
|
|
beq _0217c0f4
|
|
ldr r0, [sp, #0x34]
|
|
ldr lr, [sp, #0x30]
|
|
add sl, r0, r7
|
|
str sl, [sp, #0x34]
|
|
ldmia r8, {r0, r1, r2}
|
|
stmia fp, {r0, r1, r2}
|
|
ldr ip, [sp, #0x38]
|
|
ldr r1, [sp, #0x24]
|
|
ldr r0, [sp, #0x2c]
|
|
str r1, [sp, #0xc]
|
|
str r0, [sp, #0x14]
|
|
str lr, [sp, #0x18]
|
|
str ip, [sp, #0x20]
|
|
str sl, [sp, #0x28]
|
|
str sl, [sp, #0x1c]
|
|
str sl, [sp, #0x10]
|
|
mov r0, #6
|
|
stmia sp, {r0, r6}
|
|
mov r0, #0
|
|
str r0, [sp, #8]
|
|
ldr r0, _0217c104 ; =data_027e0e60
|
|
mov r3, r7
|
|
ldr r0, [r0]
|
|
add r1, sp, #0x18
|
|
add r2, sp, #0xc
|
|
bl func_01ffe1cc
|
|
cmp r0, #0
|
|
addne sp, sp, #0x3c
|
|
ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
ldr r0, [sp, #0x30]
|
|
str r0, [r5]
|
|
ldr r0, [sp, #0x34]
|
|
str r0, [r5, #4]
|
|
ldr r0, [sp, #0x38]
|
|
str r0, [r5, #8]
|
|
_0217c0f4:
|
|
subs r4, r4, #1
|
|
bpl _0217c050
|
|
add sp, sp, #0x3c
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217c020
|
|
_0217c104: .word data_027e0e60
|
|
|
|
.global func_ov30_0217c108
|
|
arm_func_start func_ov30_0217c108
|
|
func_ov30_0217c108: ; 0x0217c108
|
|
ldr r2, _0217c11c ; =data_ov30_02188a48
|
|
mov r1, #0
|
|
str r2, [r0]
|
|
strb r1, [r0, #4]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217c108
|
|
_0217c11c: .word data_ov30_02188a48
|
|
|
|
.global func_ov30_0217c120
|
|
arm_func_start func_ov30_0217c120
|
|
func_ov30_0217c120: ; 0x0217c120
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r4, r1
|
|
mov r5, r0
|
|
mov r1, #0
|
|
mov r0, r4
|
|
strb r1, [r5, #4]
|
|
ldr r1, [r0]
|
|
ldr r1, [r1, #0x1c]
|
|
blx r1
|
|
cmp r0, #3
|
|
cmpne r0, #0x1c
|
|
bne _0217c164
|
|
add r0, r4, #0x18
|
|
bl func_ov00_020c5288
|
|
cmp r0, #0
|
|
moveq r0, #1
|
|
streqb r0, [r5, #4]
|
|
_0217c164:
|
|
mov r0, #1
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov30_0217c120
|
|
|
|
.global func_ov30_0217c16c
|
|
arm_func_start func_ov30_0217c16c
|
|
func_ov30_0217c16c: ; 0x0217c16c
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_02081f4c
|
|
mov r0, r4
|
|
bl func_0202ea0c
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217c16c
|
|
|
|
.global func_ov30_0217c188
|
|
arm_func_start func_ov30_0217c188
|
|
func_ov30_0217c188: ; 0x0217c188
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_02081f4c
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217c188
|
|
|
|
.global func_ov30_0217c19c
|
|
arm_func_start func_ov30_0217c19c
|
|
func_ov30_0217c19c: ; 0x0217c19c
|
|
mov r0, #0
|
|
bx lr
|
|
arm_func_end func_ov30_0217c19c
|
|
|
|
.global func_ov30_0217c1a4
|
|
arm_func_start func_ov30_0217c1a4
|
|
func_ov30_0217c1a4: ; 0x0217c1a4
|
|
mov r0, #0
|
|
bx lr
|
|
arm_func_end func_ov30_0217c1a4
|
|
|
|
.global func_ov30_0217c1ac
|
|
arm_func_start func_ov30_0217c1ac
|
|
func_ov30_0217c1ac: ; 0x0217c1ac
|
|
ldr r2, [r1]
|
|
ldr ip, _0217c1c4 ; =func_ov30_0217c44c
|
|
str r2, [r0, #0x38]
|
|
ldr r1, [r1, #4]
|
|
str r1, [r0, #0x3c]
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217c1ac
|
|
_0217c1c4: .word func_ov30_0217c44c
|
|
|
|
.global func_ov30_0217c1c8
|
|
arm_func_start func_ov30_0217c1c8
|
|
func_ov30_0217c1c8: ; 0x0217c1c8
|
|
stmdb sp!, {r4, lr}
|
|
sub sp, sp, #0x10
|
|
mov r4, r0
|
|
bl func_ov30_0217c44c
|
|
add r1, sp, #4
|
|
add r0, r4, #0x38
|
|
bl func_ov00_020c53e8
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x10
|
|
ldmeqia sp!, {r4, pc}
|
|
mov r2, #0
|
|
add r0, sp, #0
|
|
add r1, sp, #4
|
|
strh r2, [sp]
|
|
strh r2, [sp, #2]
|
|
bl func_ov30_021872c4
|
|
add r1, sp, #0
|
|
mov r0, r4
|
|
bl func_ov30_0217c45c
|
|
add sp, sp, #0x10
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217c1c8
|
|
|
|
.global func_ov30_0217c21c
|
|
arm_func_start func_ov30_0217c21c
|
|
func_ov30_0217c21c: ; 0x0217c21c
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
sub sp, sp, #0x30
|
|
mov r6, r0
|
|
ldr r0, [r6, #0x30]
|
|
cmp r0, #0xc
|
|
addge sp, sp, #0x30
|
|
movge r0, #0
|
|
ldmgeia sp!, {r3, r4, r5, r6, r7, pc}
|
|
add r1, sp, #0x24
|
|
add r0, r6, #0x38
|
|
bl func_ov00_020c53e8
|
|
cmp r0, #0
|
|
beq _0217c3b4
|
|
mov r2, #0
|
|
add r0, sp, #0x20
|
|
add r1, sp, #0x24
|
|
strh r2, [sp, #0x20]
|
|
strh r2, [sp, #0x22]
|
|
bl func_ov30_021872c4
|
|
ldr r0, [r6, #0x30]
|
|
cmp r0, #0
|
|
bne _0217c288
|
|
add r1, sp, #0x20
|
|
mov r0, r6
|
|
bl func_ov30_0217c45c
|
|
add sp, sp, #0x30
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_0217c288:
|
|
sub r1, r0, #1
|
|
mov r2, r1, lsl #0x2
|
|
ldrh r7, [r6, r2]
|
|
ldrh r4, [sp, #0x20]
|
|
add r1, r6, r1, lsl #2
|
|
ldrh r3, [sp, #0x22]
|
|
ldrh r5, [r1, #2]
|
|
strh r7, [sp, #8]
|
|
strh r4, [sp, #0xc]
|
|
ldrsh r2, [sp, #0xc]
|
|
ldrsh r1, [sp, #8]
|
|
strh r5, [sp, #0xa]
|
|
strh r3, [sp, #0xe]
|
|
cmp r2, r1
|
|
ldreqsh r2, [sp, #0xe]
|
|
ldreqsh r1, [sp, #0xa]
|
|
strh r7, [sp, #0x18]
|
|
strh r5, [sp, #0x1a]
|
|
cmpeq r2, r1
|
|
strh r4, [sp, #0x1c]
|
|
strh r3, [sp, #0x1e]
|
|
addeq sp, sp, #0x30
|
|
moveq r0, #1
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
ldr r4, [r6, #0x34]
|
|
cmp r4, r0
|
|
bge _0217c3a0
|
|
add r5, r6, r4, lsl #2
|
|
add r7, sp, #0x20
|
|
_0217c2fc:
|
|
ldrh lr, [sp, #0x20]
|
|
ldrh r3, [r5]
|
|
ldrh ip, [sp, #0x22]
|
|
ldrh r2, [r5, #2]
|
|
strh lr, [sp]
|
|
strh r3, [sp, #4]
|
|
ldrsh r1, [sp, #4]
|
|
ldrsh r0, [sp]
|
|
strh ip, [sp, #2]
|
|
strh r2, [sp, #6]
|
|
cmp r1, r0
|
|
ldreqsh r1, [sp, #6]
|
|
ldreqsh r0, [sp, #2]
|
|
strh lr, [sp, #0x10]
|
|
strh ip, [sp, #0x12]
|
|
strh r3, [sp, #0x14]
|
|
strh r2, [sp, #0x16]
|
|
cmpeq r1, r0
|
|
bne _0217c35c
|
|
add r0, r4, #1
|
|
str r0, [r6, #0x30]
|
|
add sp, sp, #0x30
|
|
mov r0, #1
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_0217c35c:
|
|
mov r0, r5
|
|
mov r1, r7
|
|
bl func_ov30_021873bc
|
|
cmp r0, #0
|
|
beq _0217c38c
|
|
add r2, r4, #1
|
|
add r1, sp, #0x20
|
|
mov r0, r6
|
|
str r2, [r6, #0x30]
|
|
bl func_ov30_0217c45c
|
|
add sp, sp, #0x30
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_0217c38c:
|
|
ldr r0, [r6, #0x30]
|
|
add r4, r4, #1
|
|
cmp r4, r0
|
|
add r5, r5, #4
|
|
blt _0217c2fc
|
|
_0217c3a0:
|
|
add r1, sp, #0x20
|
|
mov r0, r6
|
|
bl func_ov30_0217c45c
|
|
add sp, sp, #0x30
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_0217c3b4:
|
|
mov r0, #0
|
|
add sp, sp, #0x30
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
arm_func_end func_ov30_0217c21c
|
|
|
|
.global func_ov30_0217c3c0
|
|
arm_func_start func_ov30_0217c3c0
|
|
func_ov30_0217c3c0: ; 0x0217c3c0
|
|
stmdb sp!, {r3, lr}
|
|
ldr r3, [r0, #0x34]
|
|
ldr r2, [r0, #0x30]
|
|
cmp r3, r2
|
|
movge r0, #0
|
|
ldmgeia sp!, {r3, pc}
|
|
add r0, r0, r3, lsl #2
|
|
bl func_ov30_02187304
|
|
mov r0, #1
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end func_ov30_0217c3c0
|
|
|
|
.global func_ov30_0217c3e8
|
|
arm_func_start func_ov30_0217c3e8
|
|
func_ov30_0217c3e8: ; 0x0217c3e8
|
|
ldr ip, [r0, #0x34]
|
|
ldr r2, [r0, #0x30]
|
|
cmp ip, r2
|
|
movge r0, #0
|
|
bxge lr
|
|
mov r3, ip, lsl #0x2
|
|
add r2, r0, ip, lsl #2
|
|
ldrh r3, [r0, r3]
|
|
ldrh r2, [r2, #2]
|
|
mov r0, #1
|
|
strh r3, [r1]
|
|
strh r2, [r1, #2]
|
|
bx lr
|
|
arm_func_end func_ov30_0217c3e8
|
|
|
|
.global func_ov30_0217c41c
|
|
arm_func_start func_ov30_0217c41c
|
|
func_ov30_0217c41c: ; 0x0217c41c
|
|
ldr r2, [r0, #0x34]
|
|
ldr r1, [r0, #0x30]
|
|
cmp r2, r1
|
|
addlt r1, r2, #1
|
|
strlt r1, [r0, #0x34]
|
|
bx lr
|
|
arm_func_end func_ov30_0217c41c
|
|
|
|
.global func_ov30_0217c434
|
|
arm_func_start func_ov30_0217c434
|
|
func_ov30_0217c434: ; 0x0217c434
|
|
ldr r1, [r0, #0x34]
|
|
ldr r0, [r0, #0x30]
|
|
cmp r1, r0
|
|
movge r0, #1
|
|
movlt r0, #0
|
|
bx lr
|
|
arm_func_end func_ov30_0217c434
|
|
|
|
.global func_ov30_0217c44c
|
|
arm_func_start func_ov30_0217c44c
|
|
func_ov30_0217c44c: ; 0x0217c44c
|
|
mov r1, #0
|
|
str r1, [r0, #0x30]
|
|
str r1, [r0, #0x34]
|
|
bx lr
|
|
arm_func_end func_ov30_0217c44c
|
|
|
|
.global func_ov30_0217c45c
|
|
arm_func_start func_ov30_0217c45c
|
|
func_ov30_0217c45c: ; 0x0217c45c
|
|
ldr r3, [r0, #0x30]
|
|
cmp r3, #0xc
|
|
movge r0, #0
|
|
bxge lr
|
|
ldrh r2, [r1]
|
|
ldrh r1, [r1, #2]
|
|
mov ip, r3, lsl #0x2
|
|
add r3, r0, r3, lsl #2
|
|
strh r2, [r0, ip]
|
|
strh r1, [r3, #2]
|
|
ldr r1, [r0, #0x30]
|
|
add r1, r1, #1
|
|
str r1, [r0, #0x30]
|
|
mov r0, #1
|
|
bx lr
|
|
arm_func_end func_ov30_0217c45c
|
|
|
|
.global func_ov30_0217c498
|
|
arm_func_start func_ov30_0217c498
|
|
func_ov30_0217c498: ; 0x0217c498
|
|
stmdb sp!, {r4, lr}
|
|
mov r1, #0
|
|
mov r4, r0
|
|
blx func_ov00_020a956c
|
|
ldr r1, _0217c4b8 ; =data_ov30_02188a7c
|
|
mov r0, r4
|
|
str r1, [r4]
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217c498
|
|
_0217c4b8: .word data_ov30_02188a7c
|
|
|
|
.global func_ov30_0217c4bc
|
|
arm_func_start func_ov30_0217c4bc
|
|
func_ov30_0217c4bc: ; 0x0217c4bc
|
|
ldr ip, _0217c4cc ; =func_ov00_020a9998
|
|
mov r1, #6
|
|
mov r2, #3
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217c4bc
|
|
_0217c4cc: .word func_ov00_020a9998
|
|
|
|
.global func_ov30_0217c4d0
|
|
arm_func_start func_ov30_0217c4d0
|
|
func_ov30_0217c4d0: ; 0x0217c4d0
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
mov r4, r1
|
|
ldr r2, [r4, #4]
|
|
ldr r1, _0217c580 ; =data_ov30_021885d4
|
|
ldr r2, [r2, #4]
|
|
mov r5, r0
|
|
add r0, r2, #0x40
|
|
bl func_0201e388
|
|
ldr r2, [r4, #4]
|
|
ldr r1, _0217c584 ; =data_ov30_021885e8
|
|
ldr r2, [r2, #4]
|
|
mov r6, r0
|
|
add r0, r2, #0x40
|
|
bl func_0201e388
|
|
ldr r1, [r4, #8]
|
|
tst r1, #0x10
|
|
ldrneb r1, [r4, #0xae]
|
|
mvneq r1, #0
|
|
cmp r6, r1
|
|
bne _0217c544
|
|
add r0, r5, #0x5c
|
|
mov r1, #0
|
|
bl func_0201b1bc
|
|
bl func_02018450
|
|
mov r1, r0
|
|
add r0, r5, #0x5c
|
|
mov r2, r0
|
|
bl func_01ff8e84
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_0217c544:
|
|
ldr r1, [r4, #8]
|
|
tst r1, #0x10
|
|
ldrneb r1, [r4, #0xae]
|
|
mvneq r1, #0
|
|
cmp r0, r1
|
|
ldmneia sp!, {r4, r5, r6, pc}
|
|
add r0, r5, #0x8c
|
|
mov r1, #0
|
|
bl func_0201b1bc
|
|
bl func_02018450
|
|
mov r1, r0
|
|
add r0, r5, #0x8c
|
|
mov r2, r0
|
|
bl func_01ff8e84
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217c4d0
|
|
_0217c580: .word data_ov30_021885d4
|
|
_0217c584: .word data_ov30_021885e8
|
|
|
|
.global func_ov30_0217c588
|
|
arm_func_start func_ov30_0217c588
|
|
func_ov30_0217c588: ; 0x0217c588
|
|
ldr r3, [r0, #0x7c]
|
|
ldr r2, [r0, #0x78]
|
|
ldr r0, [r0, #0x74]
|
|
stmia r1, {r0, r2, r3}
|
|
bx lr
|
|
arm_func_end func_ov30_0217c588
|
|
|
|
.global func_ov30_0217c59c
|
|
arm_func_start func_ov30_0217c59c
|
|
func_ov30_0217c59c: ; 0x0217c59c
|
|
stmdb sp!, {lr}
|
|
sub sp, sp, #0xc
|
|
ldr r2, _0217c5d4 ; =data_ov30_021885fc
|
|
add r3, sp, #0
|
|
mov lr, r0
|
|
mov ip, r1
|
|
ldmia r2, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
mov r0, r3
|
|
mov r2, ip
|
|
add r1, lr, #0x5c
|
|
bl func_01ff9158
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217c59c
|
|
_0217c5d4: .word data_ov30_021885fc
|
|
|
|
.global func_ov30_0217c5d8
|
|
arm_func_start func_ov30_0217c5d8
|
|
func_ov30_0217c5d8: ; 0x0217c5d8
|
|
stmdb sp!, {lr}
|
|
sub sp, sp, #0xc
|
|
ldr r2, _0217c610 ; =data_ov30_02188608
|
|
add r3, sp, #0
|
|
mov lr, r0
|
|
mov ip, r1
|
|
ldmia r2, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
mov r0, r3
|
|
mov r2, ip
|
|
add r1, lr, #0x5c
|
|
bl func_01ff9158
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217c5d8
|
|
_0217c610: .word data_ov30_02188608
|
|
|
|
.global func_ov30_0217c614
|
|
arm_func_start func_ov30_0217c614
|
|
func_ov30_0217c614: ; 0x0217c614
|
|
stmdb sp!, {lr}
|
|
sub sp, sp, #0xc
|
|
ldr r2, _0217c64c ; =data_ov30_02188614
|
|
add r3, sp, #0
|
|
mov lr, r0
|
|
mov ip, r1
|
|
ldmia r2, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
mov r0, r3
|
|
mov r2, ip
|
|
add r1, lr, #0x8c
|
|
bl func_01ff9158
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217c614
|
|
_0217c64c: .word data_ov30_02188614
|
|
|
|
.global func_ov30_0217c650
|
|
arm_func_start func_ov30_0217c650
|
|
func_ov30_0217c650: ; 0x0217c650
|
|
stmdb sp!, {lr}
|
|
sub sp, sp, #0xc
|
|
ldr r2, _0217c688 ; =data_ov30_02188620
|
|
add r3, sp, #0
|
|
mov lr, r0
|
|
mov ip, r1
|
|
ldmia r2, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
mov r0, r3
|
|
mov r2, ip
|
|
add r1, lr, #0x8c
|
|
bl func_01ff9158
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217c650
|
|
_0217c688: .word data_ov30_02188620
|
|
|
|
.global func_ov30_0217c68c
|
|
arm_func_start func_ov30_0217c68c
|
|
func_ov30_0217c68c: ; 0x0217c68c
|
|
stmdb sp!, {lr}
|
|
sub sp, sp, #0xc
|
|
ldr r2, _0217c6c4 ; =data_ov30_0218862c
|
|
add r3, sp, #0
|
|
mov lr, r0
|
|
mov ip, r1
|
|
ldmia r2, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
mov r0, r3
|
|
mov r2, ip
|
|
add r1, lr, #0x8c
|
|
bl func_01ff9158
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217c68c
|
|
_0217c6c4: .word data_ov30_0218862c
|
|
|
|
.global func_ov30_0217c6c8
|
|
arm_func_start func_ov30_0217c6c8
|
|
func_ov30_0217c6c8: ; 0x0217c6c8
|
|
stmdb sp!, {lr}
|
|
sub sp, sp, #0xc
|
|
ldr r2, _0217c700 ; =data_ov30_02188638
|
|
add r3, sp, #0
|
|
mov lr, r0
|
|
mov ip, r1
|
|
ldmia r2, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
mov r0, r3
|
|
mov r2, ip
|
|
add r1, lr, #0x8c
|
|
bl func_01ff9158
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217c6c8
|
|
_0217c700: .word data_ov30_02188638
|
|
|
|
.global func_ov30_0217c704
|
|
arm_func_start func_ov30_0217c704
|
|
func_ov30_0217c704: ; 0x0217c704
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r4, r0
|
|
add r2, r4, #0x20
|
|
add r3, r4, #0xdc
|
|
mov r5, r1
|
|
bl func_ov00_020c5c2c
|
|
ldr r1, _0217c788 ; =data_ov30_02188a68
|
|
add r0, r4, #0x20
|
|
str r1, [r4]
|
|
bl func_ov30_0217c498
|
|
add r0, r4, #0xdc
|
|
add r1, r4, #0x100
|
|
mov r2, #0
|
|
blx func_ov00_020c0c08
|
|
ldr r1, _0217c78c ; =data_ov30_02188ad8
|
|
add r0, r4, #0x200
|
|
str r1, [r4, #0xdc]
|
|
mov r1, #0x10
|
|
strh r1, [r0, #0xe0]
|
|
mov r2, #0
|
|
strh r2, [r0, #0xe2]
|
|
strh r2, [r0, #0xe4]
|
|
str r2, [r4, #0x304]
|
|
mov r1, r5
|
|
str r2, [r4, #0x308]
|
|
mov r2, #1
|
|
add r0, r4, #0x310
|
|
strb r2, [r4, #0x30c]
|
|
bl func_ov30_0217cdb0
|
|
mov r1, #0
|
|
mov r0, r4
|
|
strb r1, [r4, #0x40c]
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217c704
|
|
_0217c788: .word data_ov30_02188a68
|
|
_0217c78c: .word data_ov30_02188ad8
|
|
|
|
.global func_ov30_0217c790
|
|
arm_func_start func_ov30_0217c790
|
|
func_ov30_0217c790: ; 0x0217c790
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
blx func_ov00_020a95ec
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217c790
|
|
|
|
.global func_ov30_0217c7a4
|
|
arm_func_start func_ov30_0217c7a4
|
|
func_ov30_0217c7a4: ; 0x0217c7a4
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov r5, r0
|
|
str r1, [r5, #0x15c]
|
|
cmp r1, #3
|
|
addls pc, pc, r1, lsl #2
|
|
b _0217c7f8
|
|
_0217c7bc: ; jump table
|
|
b _0217c7cc ; case 0
|
|
b _0217c7d8 ; case 1
|
|
b _0217c7e4 ; case 2
|
|
b _0217c7f0 ; case 3
|
|
_0217c7cc:
|
|
mov r2, #0xe
|
|
mov r4, #0x12
|
|
b _0217c7f8
|
|
_0217c7d8:
|
|
mov r2, #0xf
|
|
mov r4, #0x12
|
|
b _0217c7f8
|
|
_0217c7e4:
|
|
mov r2, #0x10
|
|
mov r4, #0x12
|
|
b _0217c7f8
|
|
_0217c7f0:
|
|
mov r2, #0x11
|
|
mov r4, r2
|
|
_0217c7f8:
|
|
ldr r1, _0217c878 ; =data_027e0fec
|
|
mov r0, #0x38
|
|
ldr r7, [r1]
|
|
mla r0, r2, r0, r7
|
|
bl func_ov00_020c4588
|
|
mov r1, #0x38
|
|
mov r6, r0
|
|
mla r0, r4, r1, r7
|
|
bl func_ov00_020c45b0
|
|
mov r2, r0
|
|
ldr r3, _0217c87c ; =data_ov30_02188644
|
|
mov r0, r5
|
|
mov r1, r6
|
|
bl func_ov00_020c5c64
|
|
add r0, r5, #0x20
|
|
bl func_ov30_0217c4bc
|
|
add r0, r5, #0x160
|
|
mov r1, #0xa
|
|
bl func_ov00_020c0ec0
|
|
mov r1, #0
|
|
add r0, r5, #0x200
|
|
strh r1, [r0, #0xe4]
|
|
strh r1, [r0, #0xe2]
|
|
mov r3, #2
|
|
str r3, [sp]
|
|
add r0, r5, #0x160
|
|
mov r1, #0x4f
|
|
mov r2, #6
|
|
bl func_ov00_020c0ecc
|
|
mov r0, #0
|
|
strb r0, [r5, #0x300]
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217c7a4
|
|
_0217c878: .word data_027e0fec
|
|
_0217c87c: .word data_ov30_02188644
|
|
|
|
.global func_ov30_0217c880
|
|
arm_func_start func_ov30_0217c880
|
|
func_ov30_0217c880: ; 0x0217c880
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r5, r0
|
|
ldr r1, [r5, #0x10]
|
|
ldr r0, [r5, #0x14]
|
|
ldr r4, [r1, #0x14]
|
|
cmp r0, #7
|
|
bgt _0217c8bc
|
|
cmp r0, #1
|
|
blt _0217cac8
|
|
beq _0217c924
|
|
cmp r0, #2
|
|
beq _0217ca44
|
|
cmp r0, #7
|
|
beq _0217c8c8
|
|
b _0217cac8
|
|
_0217c8bc:
|
|
cmp r0, #0xc
|
|
beq _0217ca9c
|
|
b _0217cac8
|
|
_0217c8c8:
|
|
add r0, r5, #0xe8
|
|
mov r1, #0x1000
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
ldrneb r0, [r5, #0x30c]
|
|
cmpne r0, #0
|
|
beq _0217c8ec
|
|
mov r0, r5
|
|
bl func_ov30_0217cc4c
|
|
_0217c8ec:
|
|
add r0, r5, #0xe8
|
|
mov r1, #0xd000
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
beq _0217c908
|
|
mov r0, r5
|
|
bl func_ov30_0217cd94
|
|
_0217c908:
|
|
cmp r4, #0x1000
|
|
blt _0217cac8
|
|
cmp r4, #0xd000
|
|
bgt _0217cac8
|
|
mov r0, r5
|
|
bl func_ov30_0217ccbc
|
|
b _0217cac8
|
|
_0217c924:
|
|
ldr r0, [r5, #0x15c]
|
|
cmp r0, #3
|
|
ldr r0, [r5, #0x1c]
|
|
ldr r2, [r0, #0x68]
|
|
bne _0217c9b4
|
|
ldr ip, [r0, #0x60]
|
|
smull r1, r0, r2, r2
|
|
smull r3, r2, ip, ip
|
|
adds r3, r3, #0x800
|
|
adc r2, r2, #0
|
|
adds r1, r1, #0x800
|
|
mov r3, r3, lsr #0xc
|
|
adc r0, r0, #0
|
|
mov r1, r1, lsr #0xc
|
|
orr r3, r3, r2, lsl #20
|
|
orr r1, r1, r0, lsl #20
|
|
add r0, r3, r1
|
|
bl func_01ff9958
|
|
sub r0, r0, #0xcd
|
|
mov r1, #0xcd
|
|
bl func_01ff98e0
|
|
cmp r0, #0x1000
|
|
movgt r0, #0x1000
|
|
bgt _0217c98c
|
|
cmp r0, #0
|
|
movlt r0, #0
|
|
_0217c98c:
|
|
mov r1, r0, asr #0x1f
|
|
mov r2, r1, lsl #0xd
|
|
mov r1, #0x800
|
|
adds r1, r1, r0, lsl #13
|
|
orr r2, r2, r0, lsr #19
|
|
adc r0, r2, #0
|
|
mov r1, r1, lsr #0xc
|
|
orr r1, r1, r0, lsl #20
|
|
add r0, r1, #0x1000
|
|
b _0217c9f0
|
|
_0217c9b4:
|
|
ldr ip, [r0, #0x60]
|
|
smull r1, r0, r2, r2
|
|
smull r3, r2, ip, ip
|
|
adds r3, r3, #0x800
|
|
adc r2, r2, #0
|
|
adds r1, r1, #0x800
|
|
mov r3, r3, lsr #0xc
|
|
adc r0, r0, #0
|
|
mov r1, r1, lsr #0xc
|
|
orr r3, r3, r2, lsl #20
|
|
orr r1, r1, r0, lsl #20
|
|
add r0, r3, r1
|
|
bl func_01ff9958
|
|
mov r1, #0x52
|
|
bl func_01ff98e0
|
|
_0217c9f0:
|
|
str r0, [r5, #0xec]
|
|
ldr r0, [r5, #0x15c]
|
|
cmp r0, #3
|
|
beq _0217cac8
|
|
add r0, r5, #0xe8
|
|
mov r1, #0x1000
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
bne _0217ca28
|
|
add r0, r5, #0xe8
|
|
mov r1, #0x2c000
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
beq _0217cac8
|
|
_0217ca28:
|
|
ldr r2, [r5, #0x1c]
|
|
ldr r0, _0217cb54 ; =data_027e0ffc
|
|
ldr r1, _0217cb58 ; =0x000001bb
|
|
add r2, r2, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
b _0217cac8
|
|
_0217ca44:
|
|
add r0, r5, #0xe8
|
|
mov r1, #0x1000
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
beq _0217ca70
|
|
ldr r1, [r5, #0x1c]
|
|
ldr r0, _0217cb54 ; =data_027e0ffc
|
|
add r2, r1, #0x48
|
|
mov r1, #0x1bc
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
_0217ca70:
|
|
cmp r4, #0xa000
|
|
blt _0217cac8
|
|
cmp r4, #0xe000
|
|
bgt _0217cac8
|
|
ldr r0, [r5, #0x1c]
|
|
mov r1, r5
|
|
ldr r3, [r0]
|
|
mov r2, #0
|
|
ldr r3, [r3, #0xb0]
|
|
blx r3
|
|
b _0217cac8
|
|
_0217ca9c:
|
|
add r0, r5, #0xe8
|
|
mov r1, #0x32000
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
beq _0217cac8
|
|
ldr r2, [r5, #0x1c]
|
|
ldr r0, _0217cb54 ; =data_027e0ffc
|
|
ldr r1, _0217cb5c ; =0x000001bf
|
|
add r2, r2, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
_0217cac8:
|
|
ldr r0, [r5, #0x14]
|
|
cmp r0, #7
|
|
beq _0217cadc
|
|
mov r0, r5
|
|
bl func_ov30_0217cd94
|
|
_0217cadc:
|
|
ldr r0, [r5, #0x15c]
|
|
mov r2, #0xc
|
|
cmp r0, #3
|
|
ldr r0, [r5, #0x14]
|
|
moveq r2, #0xd
|
|
mov r1, #8
|
|
cmp r0, #2
|
|
bne _0217cb34
|
|
cmp r4, r1, lsl #12
|
|
bge _0217cb18
|
|
add r0, r5, #0x200
|
|
mov r1, #0
|
|
strh r1, [r0, #0xe4]
|
|
strh r1, [r0, #0xe2]
|
|
b _0217cb3c
|
|
_0217cb18:
|
|
cmp r4, r2, lsl #12
|
|
movle r0, #1
|
|
strleb r0, [r5, #0x300]
|
|
ble _0217cb3c
|
|
add r0, r5, #0x160
|
|
bl func_ov00_020c10a0
|
|
b _0217cb3c
|
|
_0217cb34:
|
|
add r0, r5, #0x160
|
|
bl func_ov00_020c10a0
|
|
_0217cb3c:
|
|
ldrb r0, [r5, #0x40c]
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
add r0, r5, #0x310
|
|
bl func_ov00_020c5e20
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217c880
|
|
_0217cb54: .word data_027e0ffc
|
|
_0217cb58: .word 0x000001bb
|
|
_0217cb5c: .word 0x000001bf
|
|
|
|
.global func_ov30_0217cb60
|
|
arm_func_start func_ov30_0217cb60
|
|
func_ov30_0217cb60: ; 0x0217cb60
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
mov r0, #1
|
|
strb r0, [r4, #0x40c]
|
|
add r0, r4, #0x310
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x320]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217cb60
|
|
|
|
.global func_ov30_0217cb8c
|
|
arm_func_start func_ov30_0217cb8c
|
|
func_ov30_0217cb8c: ; 0x0217cb8c
|
|
ldr r0, [r0, #0x320]
|
|
ldr ip, _0217cb9c ; =func_0202e58c
|
|
add r0, r0, #0xc
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217cb8c
|
|
_0217cb9c: .word func_0202e58c
|
|
|
|
.global func_ov30_0217cba0
|
|
arm_func_start func_ov30_0217cba0
|
|
func_ov30_0217cba0: ; 0x0217cba0
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldrb r1, [r4, #0x40c]
|
|
cmp r1, #0
|
|
bne _0217cbc4
|
|
bl func_ov00_020c5f1c
|
|
mov r0, r4
|
|
bl func_ov30_0217cbd0
|
|
ldmia sp!, {r4, pc}
|
|
_0217cbc4:
|
|
add r0, r4, #0x310
|
|
bl func_ov00_020c5f1c
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217cba0
|
|
|
|
.global func_ov30_0217cbd0
|
|
arm_func_start func_ov30_0217cbd0
|
|
func_ov30_0217cbd0: ; 0x0217cbd0
|
|
stmdb sp!, {r4, lr}
|
|
sub sp, sp, #0x18
|
|
mov r4, r0
|
|
ldrb r0, [r4, #0x300]
|
|
cmp r0, #0
|
|
beq _0217cc38
|
|
ldr r0, [r4, #0x15c]
|
|
add r1, sp, #0xc
|
|
cmp r0, #3
|
|
add r0, r4, #0x20
|
|
beq _0217cc10
|
|
bl func_ov30_0217c614
|
|
add r1, sp, #0
|
|
add r0, r4, #0x20
|
|
bl func_ov30_0217c650
|
|
b _0217cc20
|
|
_0217cc10:
|
|
bl func_ov30_0217c68c
|
|
add r1, sp, #0
|
|
add r0, r4, #0x20
|
|
bl func_ov30_0217c6c8
|
|
_0217cc20:
|
|
add r1, sp, #0
|
|
add r2, sp, #0xc
|
|
add r0, r4, #0x160
|
|
bl func_ov00_020c0ffc
|
|
mov r0, #0
|
|
strb r0, [r4, #0x300]
|
|
_0217cc38:
|
|
add r0, r4, #0x160
|
|
mov r1, #0x1f
|
|
bl func_ov00_020c10d4
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217cbd0
|
|
|
|
.global func_ov30_0217cc4c
|
|
arm_func_start func_ov30_0217cc4c
|
|
func_ov30_0217cc4c: ; 0x0217cc4c
|
|
stmdb sp!, {r4, lr}
|
|
sub sp, sp, #0x10
|
|
mov r4, r0
|
|
add r1, sp, #4
|
|
add r0, r4, #0x20
|
|
bl func_ov30_0217c59c
|
|
mov r1, #2
|
|
str r1, [sp]
|
|
ldr r0, _0217ccb8 ; =data_027e0e58
|
|
add r3, sp, #4
|
|
ldr r0, [r0]
|
|
add r1, r4, #0x304
|
|
mov r2, #0x66
|
|
bl func_ov00_0207c1f8
|
|
add r1, sp, #4
|
|
add r0, r4, #0x20
|
|
bl func_ov30_0217c5d8
|
|
mov r0, #2
|
|
str r0, [sp]
|
|
ldr r0, _0217ccb8 ; =data_027e0e58
|
|
add r1, r4, #0x308
|
|
ldr r0, [r0]
|
|
mov r2, #0x66
|
|
add r3, sp, #4
|
|
bl func_ov00_0207c1f8
|
|
add sp, sp, #0x10
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217cc4c
|
|
_0217ccb8: .word data_027e0e58
|
|
|
|
.global func_ov30_0217ccbc
|
|
arm_func_start func_ov30_0217ccbc
|
|
func_ov30_0217ccbc: ; 0x0217ccbc
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #0xc
|
|
mov r4, r0
|
|
add r1, sp, #0
|
|
add r0, r4, #0x20
|
|
bl func_ov30_0217c59c
|
|
ldr r0, [r4, #0x304]
|
|
cmp r0, #0
|
|
beq _0217cd28
|
|
ldr r1, [r0, #0x20]
|
|
ldr r2, [sp]
|
|
ldr r1, [r1]
|
|
ldr r1, [r1, #4]
|
|
add r1, r2, r1
|
|
str r1, [r0, #0x28]
|
|
ldr r1, [r0, #0x20]
|
|
ldr r2, [sp, #4]
|
|
ldr r1, [r1]
|
|
ldr r1, [r1, #8]
|
|
add r1, r2, r1
|
|
str r1, [r0, #0x2c]
|
|
ldr r1, [r0, #0x20]
|
|
ldr r2, [sp, #8]
|
|
ldr r1, [r1]
|
|
ldr r1, [r1, #0xc]
|
|
add r1, r2, r1
|
|
str r1, [r0, #0x30]
|
|
_0217cd28:
|
|
add r1, sp, #0
|
|
add r0, r4, #0x20
|
|
bl func_ov30_0217c5d8
|
|
ldr r0, [r4, #0x308]
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xc
|
|
ldmeqia sp!, {r3, r4, pc}
|
|
ldr r1, [r0, #0x20]
|
|
ldr r2, [sp]
|
|
ldr r1, [r1]
|
|
ldr r1, [r1, #4]
|
|
add r1, r2, r1
|
|
str r1, [r0, #0x28]
|
|
ldr r1, [r0, #0x20]
|
|
ldr r2, [sp, #4]
|
|
ldr r1, [r1]
|
|
ldr r1, [r1, #8]
|
|
add r1, r2, r1
|
|
str r1, [r0, #0x2c]
|
|
ldr r1, [r0, #0x20]
|
|
ldr r2, [sp, #8]
|
|
ldr r1, [r1]
|
|
ldr r1, [r1, #0xc]
|
|
add r1, r2, r1
|
|
str r1, [r0, #0x30]
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, pc}
|
|
arm_func_end func_ov30_0217ccbc
|
|
|
|
.global func_ov30_0217cd94
|
|
arm_func_start func_ov30_0217cd94
|
|
func_ov30_0217cd94: ; 0x0217cd94
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
add r0, r4, #0x304
|
|
bl func_ov00_020b7e6c
|
|
add r0, r4, #0x308
|
|
bl func_ov00_020b7e6c
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217cd94
|
|
|
|
.global func_ov30_0217cdb0
|
|
arm_func_start func_ov30_0217cdb0
|
|
func_ov30_0217cdb0: ; 0x0217cdb0
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c6114
|
|
ldr r3, _0217cddc ; =data_ov30_02188ac4
|
|
ldr r2, _0217cde0 ; =data_ov30_02188748
|
|
mov r0, r4
|
|
mov r1, #0x13
|
|
str r3, [r4]
|
|
bl func_ov00_020c5c98
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217cdb0
|
|
_0217cddc: .word data_ov30_02188ac4
|
|
_0217cde0: .word data_ov30_02188748
|
|
|
|
.global func_ov30_0217cde4
|
|
arm_func_start func_ov30_0217cde4
|
|
func_ov30_0217cde4: ; 0x0217cde4
|
|
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_ov30_0217cde4
|
|
|
|
.global func_ov30_0217ce00
|
|
arm_func_start func_ov30_0217ce00
|
|
func_ov30_0217ce00: ; 0x0217ce00
|
|
bx lr
|
|
arm_func_end func_ov30_0217ce00
|
|
|
|
.global func_ov30_0217ce04
|
|
arm_func_start func_ov30_0217ce04
|
|
func_ov30_0217ce04: ; 0x0217ce04
|
|
stmdb sp!, {r3, lr}
|
|
ldr ip, [r1, #4]
|
|
ldr r3, _0217ce94 ; =0x43485352
|
|
cmp ip, r3
|
|
subne r2, r3, #0x20
|
|
cmpne ip, r2
|
|
subne r2, r3, #0x1e
|
|
cmpne ip, r2
|
|
subne r2, r3, #0x1c
|
|
cmpne ip, r2
|
|
movne r0, #0
|
|
ldmneia sp!, {r3, pc}
|
|
ldr lr, [r0, #4]
|
|
cmp lr, #0
|
|
beq _0217ce7c
|
|
mov ip, #0
|
|
ldr r2, [lr]
|
|
sub r0, ip, #1
|
|
cmp r2, r0
|
|
beq _0217ce7c
|
|
mvn r0, #0
|
|
_0217ce58:
|
|
ldr r3, [lr, ip, lsl #3]
|
|
ldr r2, [r1, #8]
|
|
cmp r3, r2
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
add ip, ip, #1
|
|
ldr r2, [lr, ip, lsl #3]
|
|
cmp r2, r0
|
|
bne _0217ce58
|
|
_0217ce7c:
|
|
mov r0, r1
|
|
bl func_ov30_021823f8
|
|
cmp r0, #0
|
|
movne r0, #1
|
|
moveq r0, #0
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217ce04
|
|
_0217ce94: .word 0x43485352
|
|
|
|
.global func_ov30_0217ce98
|
|
arm_func_start func_ov30_0217ce98
|
|
func_ov30_0217ce98: ; 0x0217ce98
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0217cecc ; =data_027e0f6c
|
|
ldrh r2, [r1]
|
|
ldr r1, [r0]
|
|
add r0, sp, #0
|
|
bl func_ov00_02093a1c
|
|
ldr r0, [sp]
|
|
mov r0, r0, lsr #0x16
|
|
and r0, r0, #1
|
|
cmp r0, #1
|
|
moveq r0, #0
|
|
movne r0, #1
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217ce98
|
|
_0217cecc: .word data_027e0f6c
|
|
|
|
.global func_ov30_0217ced0
|
|
arm_func_start func_ov30_0217ced0
|
|
func_ov30_0217ced0: ; 0x0217ced0
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0217cf04 ; =data_027e0f6c
|
|
ldrh r2, [r1]
|
|
ldr r1, [r0]
|
|
add r0, sp, #0
|
|
bl func_ov00_02093a1c
|
|
ldr r0, [sp]
|
|
mov r0, r0, lsr #0x16
|
|
and r0, r0, #1
|
|
cmp r0, #1
|
|
moveq r0, #0
|
|
movne r0, #1
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217ced0
|
|
_0217cf04: .word data_027e0f6c
|
|
|
|
.global func_ov30_0217cf08
|
|
arm_func_start func_ov30_0217cf08
|
|
func_ov30_0217cf08: ; 0x0217cf08
|
|
stmdb sp!, {r3, lr}
|
|
mov r0, r1
|
|
ldr r1, [r0]
|
|
ldr r1, [r1, #0x1c]
|
|
blx r1
|
|
cmp r0, #0x58
|
|
bgt _0217d000
|
|
bge _0217d044
|
|
cmp r0, #0x41
|
|
bgt _0217cfe4
|
|
bge _0217d044
|
|
cmp r0, #0x24
|
|
bgt _0217cfdc
|
|
cmp r0, #0
|
|
addge pc, pc, r0, lsl #2
|
|
b _0217d04c
|
|
_0217cf48: ; jump table
|
|
b _0217d04c ; case 0
|
|
b _0217d04c ; case 1
|
|
b _0217d04c ; case 2
|
|
b _0217d044 ; case 3
|
|
b _0217d044 ; case 4
|
|
b _0217d044 ; case 5
|
|
b _0217d04c ; case 6
|
|
b _0217d04c ; case 7
|
|
b _0217d04c ; case 8
|
|
b _0217d04c ; case 9
|
|
b _0217d044 ; case 10
|
|
b _0217d044 ; case 11
|
|
b _0217d044 ; case 12
|
|
b _0217d04c ; case 13
|
|
b _0217d044 ; case 14
|
|
b _0217d04c ; case 15
|
|
b _0217d044 ; case 16
|
|
b _0217d044 ; case 17
|
|
b _0217d04c ; case 18
|
|
b _0217d04c ; case 19
|
|
b _0217d044 ; case 20
|
|
b _0217d04c ; case 21
|
|
b _0217d04c ; case 22
|
|
b _0217d044 ; case 23
|
|
b _0217d04c ; case 24
|
|
b _0217d044 ; case 25
|
|
b _0217d04c ; case 26
|
|
b _0217d04c ; case 27
|
|
b _0217d044 ; case 28
|
|
b _0217d044 ; case 29
|
|
b _0217d044 ; case 30
|
|
b _0217d044 ; case 31
|
|
b _0217d04c ; case 32
|
|
b _0217d04c ; case 33
|
|
b _0217d04c ; case 34
|
|
b _0217d04c ; case 35
|
|
b _0217d044 ; case 36
|
|
_0217cfdc:
|
|
cmp r0, #0x35
|
|
b _0217d04c
|
|
_0217cfe4:
|
|
cmp r0, #0x45
|
|
bgt _0217cff4
|
|
beq _0217d044
|
|
b _0217d04c
|
|
_0217cff4:
|
|
cmp r0, #0x46
|
|
beq _0217d044
|
|
b _0217d04c
|
|
_0217d000:
|
|
cmp r0, #0x7d
|
|
bgt _0217d024
|
|
bge _0217d044
|
|
cmp r0, #0x59
|
|
bgt _0217d01c
|
|
beq _0217d044
|
|
b _0217d04c
|
|
_0217d01c:
|
|
cmp r0, #0x67
|
|
b _0217d04c
|
|
_0217d024:
|
|
cmp r0, #0x81
|
|
bgt _0217d03c
|
|
bge _0217d044
|
|
cmp r0, #0x7e
|
|
beq _0217d044
|
|
b _0217d04c
|
|
_0217d03c:
|
|
cmp r0, #0x90
|
|
bne _0217d04c
|
|
_0217d044:
|
|
mov r0, #0
|
|
ldmia sp!, {r3, pc}
|
|
_0217d04c:
|
|
mov r0, #1
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end func_ov30_0217cf08
|
|
|
|
.global func_ov30_0217d054
|
|
arm_func_start func_ov30_0217d054
|
|
func_ov30_0217d054: ; 0x0217d054
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0217d094 ; =data_027e0fe4
|
|
mov r1, r2
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c35d8
|
|
cmp r0, #0
|
|
moveq r0, #1
|
|
ldmeqia sp!, {r3, pc}
|
|
ldr r1, [r0, #4]
|
|
ldr r0, _0217d098 ; =0x43525053
|
|
cmp r1, r0
|
|
bne _0217d08c
|
|
mov r0, #0
|
|
ldmia sp!, {r3, pc}
|
|
_0217d08c:
|
|
mov r0, #1
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217d054
|
|
_0217d094: .word data_027e0fe4
|
|
_0217d098: .word 0x43525053
|
|
|
|
.global func_ov30_0217d09c
|
|
arm_func_start func_ov30_0217d09c
|
|
func_ov30_0217d09c: ; 0x0217d09c
|
|
stmdb sp!, {r4, r5, r6, r7, r8, lr}
|
|
sub sp, sp, #0x58
|
|
ldr r3, _0217d388 ; =data_027e0f90
|
|
mov r7, r0
|
|
ldr r0, [r3]
|
|
mov r6, r1
|
|
ldr r1, [r0]
|
|
ldr r4, _0217d38c ; =data_027e0f94
|
|
ldr r1, [r1, #4]
|
|
mov r5, r2
|
|
blx r1
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x58
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
|
|
ldr r0, _0217d390 ; =data_027e0e60
|
|
ldr lr, [r4]
|
|
ldr ip, [r4, #4]
|
|
ldr r3, [r4, #8]
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x28
|
|
mov r1, #0xff
|
|
str lr, [sp, #0x28]
|
|
str ip, [sp, #0x2c]
|
|
str r3, [sp, #0x30]
|
|
bl func_ov00_02083770
|
|
cmp r0, #0
|
|
addne sp, sp, #0x58
|
|
movne r0, #0
|
|
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
|
|
add r2, sp, #0x4c
|
|
mov r0, r4
|
|
add r1, r7, #0x48
|
|
bl func_01ff9bf8
|
|
mov r1, r4
|
|
add r0, r7, #0x48
|
|
bl func_ov00_020c5464
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x58
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
|
|
cmp r5, #0
|
|
bne _0217d1b0
|
|
mov r2, r4
|
|
add r0, r7, #0x48
|
|
mov r1, #0x5000
|
|
bl func_ov00_020ce284
|
|
cmp r0, #0
|
|
beq _0217d1b0
|
|
add r0, r7, #0x800
|
|
ldrsh r8, [r0, #0x40]
|
|
ldr r0, [sp, #0x4c]
|
|
ldr r1, [sp, #0x54]
|
|
bl func_01ffa0f4
|
|
mov r0, r0, lsl #0x10
|
|
rsb r0, r8, r0, asr #16
|
|
mov r0, r0, lsl #0x10
|
|
ldr r1, _0217d394 ; =0xffff8001
|
|
mov r2, r0, asr #0x10
|
|
cmp r1, r0, asr #16
|
|
movgt r2, r1, lsr #0x11
|
|
bgt _0217d1a4
|
|
cmp r2, #0
|
|
rsblt r0, r2, #0
|
|
movlt r0, r0, lsl #0x10
|
|
movlt r2, r0, asr #0x10
|
|
_0217d1a4:
|
|
ldr r0, _0217d398 ; =0x00002aaa
|
|
cmp r2, r0
|
|
ble _0217d290
|
|
_0217d1b0:
|
|
cmp r5, #1
|
|
bne _0217d220
|
|
mov r2, r4
|
|
add r0, r7, #0x48
|
|
mov r1, #0x5000
|
|
bl func_ov00_020ce284
|
|
cmp r0, #0
|
|
beq _0217d220
|
|
add r0, r7, #0x800
|
|
ldrsh r5, [r0, #0x40]
|
|
ldr r0, [sp, #0x4c]
|
|
ldr r1, [sp, #0x54]
|
|
bl func_01ffa0f4
|
|
mov r0, r0, lsl #0x10
|
|
rsb r0, r5, r0, asr #16
|
|
mov r0, r0, lsl #0x10
|
|
ldr r1, _0217d394 ; =0xffff8001
|
|
mov r2, r0, asr #0x10
|
|
cmp r1, r0, asr #16
|
|
movgt r2, r1, lsr #0x11
|
|
bgt _0217d214
|
|
cmp r2, #0
|
|
rsblt r0, r2, #0
|
|
movlt r0, r0, lsl #0x10
|
|
movlt r2, r0, asr #0x10
|
|
_0217d214:
|
|
ldr r0, _0217d39c ; =0x00005555
|
|
cmp r2, r0
|
|
ble _0217d290
|
|
_0217d220:
|
|
mov r2, r4
|
|
add r0, r7, #0x48
|
|
mov r1, #0xa000
|
|
bl func_ov00_020ce284
|
|
cmp r0, #0
|
|
beq _0217d284
|
|
add r0, r7, #0x800
|
|
ldrsh r5, [r0, #0x40]
|
|
ldr r0, [sp, #0x4c]
|
|
ldr r1, [sp, #0x54]
|
|
bl func_01ffa0f4
|
|
mov r0, r0, lsl #0x10
|
|
rsb r0, r5, r0, asr #16
|
|
mov r0, r0, lsl #0x10
|
|
ldr r1, _0217d394 ; =0xffff8001
|
|
mov r2, r0, asr #0x10
|
|
cmp r1, r0, asr #16
|
|
movgt r2, r1, lsr #0x11
|
|
bgt _0217d27c
|
|
cmp r2, #0
|
|
rsblt r0, r2, #0
|
|
movlt r0, r0, lsl #0x10
|
|
movlt r2, r0, asr #0x10
|
|
_0217d27c:
|
|
cmp r2, #0x1000
|
|
ble _0217d290
|
|
_0217d284:
|
|
add sp, sp, #0x58
|
|
mov r0, #0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_0217d290:
|
|
cmp r6, #0
|
|
beq _0217d37c
|
|
cmp r6, #1
|
|
beq _0217d2ac
|
|
cmp r6, #2
|
|
beq _0217d2cc
|
|
b _0217d37c
|
|
_0217d2ac:
|
|
mov r0, r7
|
|
mov r1, r4
|
|
bl func_ov00_020cca68
|
|
cmp r0, #0
|
|
beq _0217d37c
|
|
add sp, sp, #0x58
|
|
mov r0, #0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_0217d2cc:
|
|
add r0, r7, #0x48
|
|
add r3, sp, #0x40
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
ldr r0, [sp, #0x44]
|
|
ldr r6, [sp, #0x40]
|
|
add r0, r0, #0x9a
|
|
add ip, r0, #0x100
|
|
ldr r5, [sp, #0x48]
|
|
ldr r7, _0217d3a0 ; =data_ov30_02188ae8
|
|
add lr, sp, #0x34
|
|
ldmia r4, {r0, r1, r2}
|
|
stmia lr, {r0, r1, r2}
|
|
ldr r1, [sp, #0x34]
|
|
ldr r0, [sp, #0x3c]
|
|
str r1, [sp, #0x1c]
|
|
str r0, [sp, #0x24]
|
|
mov r3, #6
|
|
str ip, [sp, #0x44]
|
|
str ip, [sp, #0x38]
|
|
str r7, [sp, #0xc]
|
|
str ip, [sp, #0x20]
|
|
str r6, [sp, #0x10]
|
|
str ip, [sp, #0x14]
|
|
str r5, [sp, #0x18]
|
|
str r3, [sp]
|
|
mov r0, #0x8f
|
|
str r0, [sp, #4]
|
|
add r1, sp, #0xc
|
|
str r1, [sp, #8]
|
|
ldr r0, _0217d390 ; =data_027e0e60
|
|
add r1, sp, #0x1c
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x10
|
|
add r3, r3, #0x194
|
|
bl func_01ffe1cc
|
|
cmp r0, #0
|
|
add r0, sp, #0xc
|
|
beq _0217d378
|
|
bl func_ov00_02081f4c
|
|
add sp, sp, #0x58
|
|
mov r0, #0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_0217d378:
|
|
bl func_ov00_02081f4c
|
|
_0217d37c:
|
|
mov r0, #1
|
|
add sp, sp, #0x58
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217d09c
|
|
_0217d388: .word data_027e0f90
|
|
_0217d38c: .word data_027e0f94
|
|
_0217d390: .word data_027e0e60
|
|
_0217d394: .word 0xffff8001
|
|
_0217d398: .word 0x00002aaa
|
|
_0217d39c: .word 0x00005555
|
|
_0217d3a0: .word data_ov30_02188ae8
|
|
|
|
.global func_ov30_0217d3a4
|
|
arm_func_start func_ov30_0217d3a4
|
|
func_ov30_0217d3a4: ; 0x0217d3a4
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_02081f4c
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217d3a4
|
|
|
|
.global func_ov30_0217d3b8
|
|
arm_func_start func_ov30_0217d3b8
|
|
func_ov30_0217d3b8: ; 0x0217d3b8
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
sub sp, sp, #0x20
|
|
ldr r1, _0217d4d8 ; =data_027e0f90
|
|
mov r5, r0
|
|
ldr r0, [r1]
|
|
ldr r4, _0217d4dc ; =data_027e0f94
|
|
ldr r1, [r0]
|
|
ldr r1, [r1, #4]
|
|
blx r1
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x20
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
ldr r0, _0217d4e0 ; =data_027e0e60
|
|
ldr lr, [r4]
|
|
ldr ip, [r4, #4]
|
|
ldr r3, [r4, #8]
|
|
ldr r0, [r0]
|
|
add r2, sp, #4
|
|
mov r1, #0xff
|
|
str lr, [sp, #4]
|
|
str ip, [sp, #8]
|
|
str r3, [sp, #0xc]
|
|
bl func_ov00_02083770
|
|
cmp r0, #0
|
|
addne sp, sp, #0x20
|
|
movne r0, #0
|
|
ldmneia sp!, {r3, r4, r5, pc}
|
|
ldr r0, [r5, #0x2a0]
|
|
mov r2, #0x5000
|
|
str r4, [sp]
|
|
ldrsh r1, [r5, #0x78]
|
|
sub r0, r0, #6
|
|
cmp r0, #1
|
|
movls r2, #0xa000
|
|
add r0, r5, #0x48
|
|
mov r3, #0x1000
|
|
bl func_ov00_020c54a0
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x20
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
add r0, r5, #0x8c
|
|
add r3, sp, #0x10
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
ldr r1, [r5, #0x98]
|
|
mov r0, #0
|
|
str r1, [sp, #0x1c]
|
|
ldr r2, _0217d4e4 ; =0x0000019a
|
|
str r0, [r5, #0x8c]
|
|
str r2, [r5, #0x90]
|
|
str r0, [r5, #0x94]
|
|
mov r0, r5
|
|
mov r1, r4
|
|
str r2, [r5, #0x98]
|
|
bl func_ov00_020cca68
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x20
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
ldr r1, [sp, #0x10]
|
|
mov r0, #1
|
|
str r1, [r5, #0x8c]
|
|
ldr r1, [sp, #0x14]
|
|
str r1, [r5, #0x90]
|
|
ldr r1, [sp, #0x18]
|
|
str r1, [r5, #0x94]
|
|
ldr r1, [sp, #0x1c]
|
|
str r1, [r5, #0x98]
|
|
add sp, sp, #0x20
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217d3b8
|
|
_0217d4d8: .word data_027e0f90
|
|
_0217d4dc: .word data_027e0f94
|
|
_0217d4e0: .word data_027e0e60
|
|
_0217d4e4: .word 0x0000019a
|
|
|
|
.global func_ov30_0217d4e8
|
|
arm_func_start func_ov30_0217d4e8
|
|
func_ov30_0217d4e8: ; 0x0217d4e8
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
sub sp, sp, #0x18
|
|
mov r4, r1
|
|
mov r5, r0
|
|
mov r0, r4
|
|
bl func_ov00_020c5288
|
|
cmp r0, #0
|
|
addne sp, sp, #0x18
|
|
movne r0, #0
|
|
ldmneia sp!, {r4, r5, r6, pc}
|
|
ldr r1, [r4]
|
|
ldr r0, _0217d684 ; =data_027e0e60
|
|
str r1, [sp]
|
|
ldr r1, [r4, #4]
|
|
ldr r0, [r0]
|
|
str r1, [sp, #4]
|
|
ldr r3, [r4, #8]
|
|
add r2, sp, #0
|
|
mov r1, #0xff
|
|
str r3, [sp, #8]
|
|
bl func_ov00_02083770
|
|
cmp r0, #0
|
|
addne sp, sp, #0x18
|
|
movne r0, #0
|
|
ldmneia sp!, {r4, r5, r6, pc}
|
|
add r2, sp, #0xc
|
|
mov r0, r4
|
|
add r1, r5, #0x48
|
|
bl func_01ff9bf8
|
|
mov r1, r4
|
|
add r0, r5, #0x48
|
|
bl func_ov00_020c5464
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x18
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, r5, r6, pc}
|
|
mov r2, r4
|
|
add r0, r5, #0x48
|
|
mov r1, #0x5000
|
|
bl func_ov00_020ce284
|
|
cmp r0, #0
|
|
beq _0217d5e0
|
|
add r0, r5, #0x800
|
|
ldrsh r6, [r0, #0x40]
|
|
ldr r0, [sp, #0xc]
|
|
ldr r1, [sp, #0x14]
|
|
bl func_01ffa0f4
|
|
mov r0, r0, lsl #0x10
|
|
rsb r0, r6, r0, asr #16
|
|
mov r0, r0, lsl #0x10
|
|
ldr r1, _0217d688 ; =0xffff8001
|
|
mov r2, r0, asr #0x10
|
|
cmp r1, r0, asr #16
|
|
movgt r2, r1, lsr #0x11
|
|
bgt _0217d5d4
|
|
cmp r2, #0
|
|
rsblt r0, r2, #0
|
|
movlt r0, r0, lsl #0x10
|
|
movlt r2, r0, asr #0x10
|
|
_0217d5d4:
|
|
ldr r0, _0217d68c ; =0x00002aaa
|
|
cmp r2, r0
|
|
ble _0217d664
|
|
_0217d5e0:
|
|
mov r2, r4
|
|
add r0, r5, #0x48
|
|
mov r1, #0xa000
|
|
bl func_ov00_020ce284
|
|
cmp r0, #0
|
|
beq _0217d644
|
|
add r0, r5, #0x800
|
|
ldrsh r6, [r0, #0x40]
|
|
ldr r0, [sp, #0xc]
|
|
ldr r1, [sp, #0x14]
|
|
bl func_01ffa0f4
|
|
mov r0, r0, lsl #0x10
|
|
rsb r0, r6, r0, asr #16
|
|
mov r0, r0, lsl #0x10
|
|
ldr r1, _0217d688 ; =0xffff8001
|
|
mov r2, r0, asr #0x10
|
|
cmp r1, r0, asr #16
|
|
movgt r2, r1, lsr #0x11
|
|
bgt _0217d63c
|
|
cmp r2, #0
|
|
rsblt r0, r2, #0
|
|
movlt r0, r0, lsl #0x10
|
|
movlt r2, r0, asr #0x10
|
|
_0217d63c:
|
|
cmp r2, #0x1000
|
|
ble _0217d664
|
|
_0217d644:
|
|
mov r2, r4
|
|
add r0, r5, #0x48
|
|
mov r1, #0x1800
|
|
bl func_ov00_020ce284
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x18
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, r5, r6, pc}
|
|
_0217d664:
|
|
mov r0, r5
|
|
mov r1, r4
|
|
bl func_ov00_020cca68
|
|
cmp r0, #0
|
|
moveq r0, #1
|
|
movne r0, #0
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217d4e8
|
|
_0217d684: .word data_027e0e60
|
|
_0217d688: .word 0xffff8001
|
|
_0217d68c: .word 0x00002aaa
|
|
|
|
.global func_ov30_0217d690
|
|
arm_func_start func_ov30_0217d690
|
|
func_ov30_0217d690: ; 0x0217d690
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
sub sp, sp, #0x48
|
|
ldr r4, _0217d7cc ; =data_027e0f94
|
|
mov r5, r0
|
|
mov r0, r4
|
|
bl func_ov00_020c5288
|
|
cmp r0, #0
|
|
addne sp, sp, #0x48
|
|
movne r0, #0
|
|
ldmneia sp!, {r4, r5, r6, pc}
|
|
ldr r0, _0217d7d0 ; =data_027e0e60
|
|
ldr ip, [r4]
|
|
ldr r6, [r4, #4]
|
|
ldr r3, [r4, #8]
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x24
|
|
mov r1, #0xff
|
|
str ip, [sp, #0x24]
|
|
str r6, [sp, #0x28]
|
|
str r3, [sp, #0x2c]
|
|
bl func_ov00_02083770
|
|
cmp r0, #0
|
|
addne sp, sp, #0x48
|
|
movne r0, #0
|
|
ldmneia sp!, {r4, r5, r6, pc}
|
|
mov r1, r4
|
|
add r0, r5, #0x48
|
|
bl func_ov00_020c5464
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x48
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, r5, r6, pc}
|
|
mov r2, r4
|
|
add r0, r5, #0x48
|
|
mov r1, #0x1800
|
|
bl func_ov00_020ce284
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x48
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, r5, r6, pc}
|
|
add r0, r5, #0x48
|
|
add r3, sp, #0x3c
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
ldr r0, [sp, #0x40]
|
|
ldr ip, [sp, #0x3c]
|
|
add r0, r0, #0x33
|
|
add lr, r0, #0x300
|
|
ldr r3, [sp, #0x44]
|
|
add r6, sp, #0x30
|
|
ldmia r4, {r0, r1, r2}
|
|
stmia r6, {r0, r1, r2}
|
|
ldr r1, [sp, #0x30]
|
|
ldr r0, [sp, #0x38]
|
|
str r1, [sp, #0x18]
|
|
str r0, [sp, #0x20]
|
|
str lr, [sp, #0x40]
|
|
str lr, [sp, #0x34]
|
|
str lr, [sp, #0x1c]
|
|
str ip, [sp, #0xc]
|
|
str lr, [sp, #0x10]
|
|
str r3, [sp, #0x14]
|
|
mov r0, #6
|
|
str r0, [sp]
|
|
ldrh r2, [r5, #0x9c]
|
|
ldr r0, _0217d7d0 ; =data_027e0e60
|
|
add r1, sp, #0x18
|
|
str r2, [sp, #4]
|
|
ldr r3, [r5, #0xa0]
|
|
add r2, sp, #0xc
|
|
str r3, [sp, #8]
|
|
ldr r0, [r0]
|
|
ldr r3, _0217d7d4 ; =0x00000333
|
|
bl func_01ffe1cc
|
|
cmp r0, #0
|
|
moveq r0, #1
|
|
movne r0, #0
|
|
add sp, sp, #0x48
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217d690
|
|
_0217d7cc: .word data_027e0f94
|
|
_0217d7d0: .word data_027e0e60
|
|
_0217d7d4: .word 0x00000333
|
|
|
|
.global func_ov30_0217d7d8
|
|
arm_func_start func_ov30_0217d7d8
|
|
func_ov30_0217d7d8: ; 0x0217d7d8
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0x30
|
|
ldr r3, _0217d988 ; =data_027e0f94
|
|
mov fp, #0
|
|
ldr r5, [r3]
|
|
ldr r4, [r3, #4]
|
|
ldr r2, _0217d98c ; =data_027e0e60
|
|
mov sl, r0
|
|
ldr r0, [r2]
|
|
str r1, [sp]
|
|
strh fp, [sp, #0x14]
|
|
strh fp, [sp, #0x16]
|
|
str r5, [sp, #0x18]
|
|
str r4, [sp, #0x1c]
|
|
ldr r3, [r3, #8]
|
|
add r1, sp, #0x18
|
|
add r2, sp, #0x14
|
|
str r3, [sp, #0x20]
|
|
bl func_ov00_0208433c
|
|
mov r0, fp
|
|
ldrsh r2, [sp, #0x16]
|
|
ldrsh r1, [sp, #0x14]
|
|
str r0, [sp, #8]
|
|
strh r0, [sp, #0x10]
|
|
sub r0, r1, #3
|
|
mov r1, r0, lsl #0x10
|
|
ldr r0, [sp, #8]
|
|
sub r2, r2, #3
|
|
strh r0, [sp, #0x12]
|
|
sub sb, r0, #0x80000001
|
|
mov r0, r1, asr #0x10
|
|
str r0, [sp, #4]
|
|
mov r4, r2, lsl #0x10
|
|
_0217d85c:
|
|
ldr r0, [sp, #4]
|
|
ldr r5, _0217d98c ; =data_027e0e60
|
|
mov r0, r0, lsl #0x10
|
|
mov r8, #0
|
|
mov r7, r0, asr #0x10
|
|
add r6, sp, #0xc
|
|
_0217d874:
|
|
strh r7, [sp, #0xc]
|
|
add r0, r8, r4, asr #16
|
|
strh r0, [sp, #0xe]
|
|
ldr r0, [r5]
|
|
mov r1, r6
|
|
bl func_ov00_02084324
|
|
cmp r0, #0
|
|
beq _0217d934
|
|
ldrsh r1, [sp, #0x16]
|
|
ldrsh r0, [sp, #0xe]
|
|
subs r2, r1, r0
|
|
ldrsh r1, [sp, #0x14]
|
|
ldrsh r0, [sp, #0xc]
|
|
rsbmi r2, r2, #0
|
|
subs r0, r1, r0
|
|
rsbmi r0, r0, #0
|
|
add r0, r0, r2
|
|
cmp r0, #2
|
|
ble _0217d934
|
|
ldr r0, [r5]
|
|
mov r1, r6
|
|
add r2, sp, #0x24
|
|
bl func_ov00_0208439c
|
|
ldr r1, [sl, #8]
|
|
ldr r0, [sp, #0x2c]
|
|
ldr r3, [sl]
|
|
sub r2, r1, r0
|
|
smull r1, r0, r2, r2
|
|
ldr r2, [sp, #0x24]
|
|
sub r3, r3, r2
|
|
smull ip, r2, r3, r3
|
|
adds r3, ip, #0x800
|
|
adc ip, r2, #0
|
|
mov r2, r3, lsr #0xc
|
|
adds r3, r1, #0x800
|
|
adc r0, r0, #0
|
|
mov r1, r3, lsr #0xc
|
|
orr r2, r2, ip, lsl #20
|
|
orr r1, r1, r0, lsl #20
|
|
add r0, r2, r1
|
|
cmp sb, r0
|
|
ble _0217d934
|
|
mov sb, r0
|
|
ldrsh r1, [sp, #0xc]
|
|
ldrsh r0, [sp, #0xe]
|
|
mov fp, #1
|
|
strh r1, [sp, #0x10]
|
|
strh r0, [sp, #0x12]
|
|
_0217d934:
|
|
add r8, r8, #1
|
|
cmp r8, #7
|
|
blt _0217d874
|
|
ldr r0, [sp, #8]
|
|
add r0, r0, #1
|
|
str r0, [sp, #8]
|
|
cmp r0, #7
|
|
ldr r0, [sp, #4]
|
|
add r0, r0, #1
|
|
str r0, [sp, #4]
|
|
blt _0217d85c
|
|
cmp fp, #0
|
|
beq _0217d97c
|
|
ldr r0, _0217d98c ; =data_027e0e60
|
|
ldr r2, [sp]
|
|
ldr r0, [r0]
|
|
add r1, sp, #0x10
|
|
bl func_ov00_0208439c
|
|
_0217d97c:
|
|
mov r0, fp
|
|
add sp, sp, #0x30
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217d7d8
|
|
_0217d988: .word data_027e0f94
|
|
_0217d98c: .word data_027e0e60
|
|
|
|
.global func_ov30_0217d990
|
|
arm_func_start func_ov30_0217d990
|
|
func_ov30_0217d990: ; 0x0217d990
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_02081f4c
|
|
mov r0, r4
|
|
bl func_0202ea0c
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217d990
|
|
|
|
.global func_ov30_0217d9ac
|
|
arm_func_start func_ov30_0217d9ac
|
|
func_ov30_0217d9ac: ; 0x0217d9ac
|
|
stmdb sp!, {r4, lr}
|
|
sub sp, sp, #8
|
|
mov r2, #0
|
|
str r2, [sp]
|
|
ldr r1, _0217da98 ; =data_027e0e58
|
|
mov r4, r0
|
|
str r2, [sp, #4]
|
|
ldr r0, [r1]
|
|
mov r2, r4
|
|
mov r1, #0x5d
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
ldr r0, _0217da98 ; =data_027e0e58
|
|
str r1, [sp, #4]
|
|
ldr r0, [r0]
|
|
mov r2, r4
|
|
mov r1, #0x5e
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
ldr r0, _0217da98 ; =data_027e0e58
|
|
str r1, [sp, #4]
|
|
ldr r0, [r0]
|
|
mov r2, r4
|
|
mov r1, #0x5f
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r0, _0217da98 ; =data_027e0e58
|
|
mov r1, #0x60
|
|
ldr r0, [r0]
|
|
mov r2, r4
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r0, _0217da98 ; =data_027e0e58
|
|
mov r1, #0x61
|
|
ldr r0, [r0]
|
|
mov r2, r4
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r2, r4
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r0, _0217da98 ; =data_027e0e58
|
|
mov r1, #0x62
|
|
ldr r0, [r0]
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
add sp, sp, #8
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217d9ac
|
|
_0217da98: .word data_027e0e58
|
|
|
|
.global func_ov30_0217da9c
|
|
arm_func_start func_ov30_0217da9c
|
|
func_ov30_0217da9c: ; 0x0217da9c
|
|
stmdb sp!, {r4, lr}
|
|
sub sp, sp, #8
|
|
mov r2, #0
|
|
str r2, [sp]
|
|
ldr r1, _0217daf8 ; =data_027e0e58
|
|
mov r4, r0
|
|
str r2, [sp, #4]
|
|
ldr r0, [r1]
|
|
mov r2, r4
|
|
mov r1, #0x64
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
ldr r0, _0217daf8 ; =data_027e0e58
|
|
str r1, [sp, #4]
|
|
ldr r0, [r0]
|
|
mov r2, r4
|
|
mov r1, #0x65
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
add sp, sp, #8
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217da9c
|
|
_0217daf8: .word data_027e0e58
|
|
|
|
.global func_ov30_0217dafc
|
|
arm_func_start func_ov30_0217dafc
|
|
func_ov30_0217dafc: ; 0x0217dafc
|
|
stmdb sp!, {r3, lr}
|
|
bl func_ov00_020c5118
|
|
mov r1, #0
|
|
bl func_ov30_02183e50
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end func_ov30_0217dafc
|
|
|
|
.global func_ov30_0217db10
|
|
arm_func_start func_ov30_0217db10
|
|
func_ov30_0217db10: ; 0x0217db10
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c5118
|
|
bl func_ov30_02183db8
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r4, pc}
|
|
mov r0, r4
|
|
mov r1, #1
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217db10
|
|
|
|
.global func_ov30_0217db3c
|
|
arm_func_start func_ov30_0217db3c
|
|
func_ov30_0217db3c: ; 0x0217db3c
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r4, r1
|
|
mov r5, r0
|
|
bl func_ov00_020c5118
|
|
cmp r4, #4
|
|
addls pc, pc, r4, lsl #2
|
|
b _0217db70
|
|
_0217db58: ; jump table
|
|
b _0217db70 ; case 0
|
|
b _0217db70 ; case 1
|
|
b _0217db70 ; case 2
|
|
b _0217db70 ; case 3
|
|
b _0217db6c ; case 4
|
|
_0217db6c:
|
|
bl func_ov00_020cc960
|
|
_0217db70:
|
|
mov r0, r5
|
|
str r4, [r5, #8]
|
|
bl func_ov00_020c50fc
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov30_0217db3c
|
|
|
|
.global func_ov30_0217db80
|
|
arm_func_start func_ov30_0217db80
|
|
func_ov30_0217db80: ; 0x0217db80
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r5, r0
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
bl func_ov30_02181088
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r2, [r4, #0x10]
|
|
mov r3, #0x1000
|
|
mov r0, r5
|
|
mov r1, #0
|
|
str r3, [r2, #0x10]
|
|
bl func_ov30_0217db3c
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov30_0217db80
|
|
|
|
.global func_ov30_0217dbc8
|
|
arm_func_start func_ov30_0217dbc8
|
|
func_ov30_0217dbc8: ; 0x0217dbc8
|
|
stmdb sp!, {r3, r4, r5, r6, lr}
|
|
sub sp, sp, #0xbc
|
|
mov r5, r0
|
|
bl func_ov00_020c5118
|
|
ldr r1, [r5, #8]
|
|
mov r4, r0
|
|
cmp r1, #4
|
|
addls pc, pc, r1, lsl #2
|
|
b _0217df40
|
|
_0217dbec: ; jump table
|
|
b _0217dc00 ; case 0
|
|
b _0217dccc ; case 1
|
|
b _0217dd18 ; case 2
|
|
b _0217de24 ; case 3
|
|
b _0217df20 ; case 4
|
|
_0217dc00:
|
|
bl func_ov00_020cc928
|
|
cmp r0, #0
|
|
mov r0, r4
|
|
bne _0217dca8
|
|
bl func_ov00_020cc8dc
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xbc
|
|
ldmeqia sp!, {r3, r4, r5, r6, pc}
|
|
add r0, sp, #0xc
|
|
bl func_ov00_0209a4f4
|
|
mov r0, #0x64
|
|
mvn r1, #0
|
|
strb r0, [sp, #0x15]
|
|
add r5, sp, #0
|
|
add r0, r4, #0x48
|
|
str r1, [sp, #0x10]
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r5, {r0, r1, r2}
|
|
ldr r0, [sp, #4]
|
|
ldr r5, [sp]
|
|
add r6, r0, #0x800
|
|
ldr r3, _0217df48 ; =data_027e0f64
|
|
ldr r2, [sp, #8]
|
|
mov r1, #1
|
|
strb r1, [sp, #0x20]
|
|
ldr r0, [r3]
|
|
str r6, [sp, #4]
|
|
str r5, [sp, #0x2c]
|
|
str r6, [sp, #0x30]
|
|
str r2, [sp, #0x34]
|
|
ldr r0, [r0, #4]
|
|
add r1, sp, #0x38
|
|
bl func_ov00_02087d34
|
|
mov r2, #0x19000
|
|
add r1, sp, #0xc
|
|
mov r0, r4
|
|
str r2, [sp, #0x50]
|
|
bl func_ov00_020cc908
|
|
add r0, sp, #0xc
|
|
bl func_ov00_0209a508
|
|
add sp, sp, #0xbc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217dca8:
|
|
bl func_ov00_020cc940
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xbc
|
|
ldmeqia sp!, {r3, r4, r5, r6, pc}
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov30_0217db3c
|
|
add sp, sp, #0xbc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217dccc:
|
|
ldr r0, _0217df4c ; =data_027e0f74
|
|
ldr r0, [r0]
|
|
bl func_ov00_02098058
|
|
cmp r0, #0x2d
|
|
addne sp, sp, #0xbc
|
|
ldmneia sp!, {r3, r4, r5, r6, pc}
|
|
ldr r1, [r4, #4]
|
|
ldr r0, _0217df50 ; =0x43485334
|
|
cmp r1, r0
|
|
mov r0, r5
|
|
bne _0217dd08
|
|
mov r1, #3
|
|
bl func_ov30_0217db3c
|
|
add sp, sp, #0xbc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217dd08:
|
|
mov r1, #2
|
|
bl func_ov30_0217db3c
|
|
add sp, sp, #0xbc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217dd18:
|
|
mov r0, r5
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #1
|
|
bne _0217dd4c
|
|
add r0, r4, #0x48
|
|
bl func_ov30_0217d9ac
|
|
ldr r0, _0217df54 ; =data_027e0ffc
|
|
add r2, r4, #0x48
|
|
mov r1, #0x4f
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
add sp, sp, #0xbc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217dd4c:
|
|
cmp r0, #0x33
|
|
bne _0217dd8c
|
|
mov r0, r4
|
|
mov r1, #1
|
|
bl func_ov30_02183e50
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #8
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
add sp, sp, #0xbc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217dd8c:
|
|
addle sp, sp, #0xbc
|
|
ldmleia sp!, {r3, r4, r5, r6, pc}
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xbc
|
|
ldmeqia sp!, {r3, r4, r5, r6, pc}
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r6, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r6, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02183e30
|
|
ldr r0, _0217df4c ; =data_027e0f74
|
|
mov r1, #0x46
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097760
|
|
cmp r0, #0
|
|
bne _0217de10
|
|
ldr r0, _0217df4c ; =data_027e0f74
|
|
mov r1, #0x46
|
|
ldr r0, [r0]
|
|
mov r2, #1
|
|
bl func_ov00_0209779c
|
|
_0217de10:
|
|
mov r0, r5
|
|
mov r1, #4
|
|
bl func_ov30_0217db3c
|
|
add sp, sp, #0xbc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217de24:
|
|
mov r0, r5
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #1
|
|
bne _0217de88
|
|
add r0, r4, #0x48
|
|
bl func_ov30_0217da9c
|
|
ldr r0, _0217df54 ; =data_027e0ffc
|
|
add r2, r4, #0x48
|
|
mov r1, #0x50
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
mov r0, r4
|
|
mov r1, #1
|
|
bl func_ov30_02183e50
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #8
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
add sp, sp, #0xbc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217de88:
|
|
addle sp, sp, #0xbc
|
|
ldmleia sp!, {r3, r4, r5, r6, pc}
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xbc
|
|
ldmeqia sp!, {r3, r4, r5, r6, pc}
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r6, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r6, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02183e30
|
|
ldr r0, _0217df4c ; =data_027e0f74
|
|
mov r1, #0x46
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097760
|
|
cmp r0, #0
|
|
bne _0217df0c
|
|
ldr r0, _0217df4c ; =data_027e0f74
|
|
mov r1, #0x46
|
|
ldr r0, [r0]
|
|
mov r2, #1
|
|
bl func_ov00_0209779c
|
|
_0217df0c:
|
|
mov r0, r5
|
|
mov r1, #4
|
|
bl func_ov30_0217db3c
|
|
add sp, sp, #0xbc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217df20:
|
|
bl func_ov00_020cc980
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xbc
|
|
ldmeqia sp!, {r3, r4, r5, r6, pc}
|
|
mov r0, r5
|
|
mov r1, #3
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
_0217df40:
|
|
add sp, sp, #0xbc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217dbc8
|
|
_0217df48: .word data_027e0f64
|
|
_0217df4c: .word data_027e0f74
|
|
_0217df50: .word 0x43485334
|
|
_0217df54: .word data_027e0ffc
|
|
|
|
.global func_ov30_0217df58
|
|
arm_func_start func_ov30_0217df58
|
|
func_ov30_0217df58: ; 0x0217df58
|
|
stmdb sp!, {r4, r5, r6, r7, lr}
|
|
sub sp, sp, #0xc
|
|
mov r5, r1
|
|
mov r6, r0
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
cmp r5, #7
|
|
addls pc, pc, r5, lsl #2
|
|
b _0217e07c
|
|
_0217df7c: ; jump table
|
|
b _0217df9c ; case 0
|
|
b _0217e07c ; case 1
|
|
b _0217dfc0 ; case 2
|
|
b _0217e040 ; case 3
|
|
b _0217e058 ; case 4
|
|
b _0217e07c ; case 5
|
|
b _0217e070 ; case 6
|
|
b _0217e078 ; case 7
|
|
_0217df9c:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
b _0217e07c
|
|
_0217dfc0:
|
|
mov r1, #1
|
|
bl func_ov30_021823cc
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #9
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r7, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
ldr r2, _0217e090 ; =data_027e0f94
|
|
add r1, sp, #0
|
|
ldr r0, [r2]
|
|
str r0, [r6, #0xc]
|
|
ldr r3, [r2, #4]
|
|
add r0, r4, #0x48
|
|
str r3, [r6, #0x10]
|
|
ldr r2, [r2, #8]
|
|
str r2, [r6, #0x14]
|
|
bl func_ov30_0217d7d8
|
|
cmp r0, #0
|
|
beq _0217e034
|
|
ldr r0, [sp]
|
|
str r0, [r6, #0xc]
|
|
ldr r0, [sp, #4]
|
|
str r0, [r6, #0x10]
|
|
ldr r0, [sp, #8]
|
|
str r0, [r6, #0x14]
|
|
_0217e034:
|
|
mov r0, #0x1f
|
|
strb r0, [r4, #0xab7]
|
|
b _0217e07c
|
|
_0217e040:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
mov r1, #0
|
|
str r1, [r0, #0x10]
|
|
b _0217e07c
|
|
_0217e058:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
b _0217e07c
|
|
_0217e070:
|
|
bl func_ov00_020cc960
|
|
b _0217e07c
|
|
_0217e078:
|
|
bl func_ov30_02182da8
|
|
_0217e07c:
|
|
mov r0, r6
|
|
str r5, [r6, #8]
|
|
bl func_ov00_020c50fc
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217df58
|
|
_0217e090: .word data_027e0f94
|
|
|
|
.global func_ov30_0217e094
|
|
arm_func_start func_ov30_0217e094
|
|
func_ov30_0217e094: ; 0x0217e094
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c5118
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov30_0217df58
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217e094
|
|
|
|
.global func_ov30_0217e0b0
|
|
arm_func_start func_ov30_0217e0b0
|
|
func_ov30_0217e0b0: ; 0x0217e0b0
|
|
stmdb sp!, {r4, r5, r6, r7, lr}
|
|
sub sp, sp, #0xcc
|
|
mov r6, r0
|
|
bl func_ov00_020c5118
|
|
ldr r1, [r6, #8]
|
|
mov r4, r0
|
|
cmp r1, #7
|
|
addls pc, pc, r1, lsl #2
|
|
b _0217e3b8
|
|
_0217e0d4: ; jump table
|
|
b _0217e0f4 ; case 0
|
|
b _0217e184 ; case 1
|
|
b _0217e1b0 ; case 2
|
|
b _0217e20c ; case 3
|
|
b _0217e280 ; case 4
|
|
b _0217e33c ; case 5
|
|
b _0217e364 ; case 6
|
|
b _0217e388 ; case 7
|
|
_0217e0f4:
|
|
bl func_ov00_020cc928
|
|
cmp r0, #0
|
|
mov r0, r4
|
|
bne _0217e160
|
|
bl func_ov00_020cc8dc
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xcc
|
|
ldmeqia sp!, {r4, r5, r6, r7, pc}
|
|
add r0, sp, #0x1c
|
|
bl func_ov00_0209a4f4
|
|
mvn r1, #0
|
|
mov r0, #0x64
|
|
str r1, [sp, #0x20]
|
|
strb r0, [sp, #0x25]
|
|
ldr r0, [r4, #0x48]
|
|
add r1, sp, #0x1c
|
|
str r0, [sp, #0x3c]
|
|
ldr r2, [r4, #0x4c]
|
|
mov r0, r4
|
|
str r2, [sp, #0x40]
|
|
ldr r2, [r4, #0x50]
|
|
str r2, [sp, #0x44]
|
|
bl func_ov00_020cc908
|
|
add r0, sp, #0x1c
|
|
bl func_ov00_0209a508
|
|
add sp, sp, #0xcc
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
_0217e160:
|
|
bl func_ov00_020cc940
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xcc
|
|
ldmeqia sp!, {r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #1
|
|
bl func_ov30_0217df58
|
|
add sp, sp, #0xcc
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
_0217e184:
|
|
ldr r0, _0217e3c0 ; =data_027e0f74
|
|
ldr r0, [r0]
|
|
bl func_ov00_02098058
|
|
cmp r0, #0x2d
|
|
addne sp, sp, #0xcc
|
|
ldmneia sp!, {r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #2
|
|
bl func_ov30_0217df58
|
|
add sp, sp, #0xcc
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
_0217e1b0:
|
|
mov r0, r6
|
|
ldrb r5, [r4, #0xab7]
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #8
|
|
blt _0217e1d0
|
|
cmp r5, #0x10
|
|
subhi r0, r5, #1
|
|
strhib r0, [r4, #0xab7]
|
|
_0217e1d0:
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
mov r1, #0x1e000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xcc
|
|
ldmeqia sp!, {r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #3
|
|
bl func_ov30_0217df58
|
|
add sp, sp, #0xcc
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
_0217e20c:
|
|
add r1, r6, #0xc
|
|
bl func_ov30_02182f0c
|
|
ldr r0, [r4, #0x48]
|
|
mov r3, #1
|
|
str r0, [sp, #0x10]
|
|
ldr r0, [r4, #0x4c]
|
|
mov r1, #0
|
|
str r0, [sp, #0x14]
|
|
ldr r2, [r4, #0x50]
|
|
ldr r0, _0217e3c4 ; =data_027e0f64
|
|
str r2, [sp, #0x18]
|
|
stmia sp, {r1, r3}
|
|
str r1, [sp, #8]
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x10
|
|
ldr r0, [r0, #4]
|
|
sub r3, r3, #2
|
|
bl func_ov00_020884b4
|
|
mov r0, r4
|
|
add r1, r6, #0xc
|
|
bl func_ov30_02182c68
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xcc
|
|
ldmeqia sp!, {r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #4
|
|
bl func_ov30_0217df58
|
|
add sp, sp, #0xcc
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
_0217e280:
|
|
ldrb r5, [r4, #0xab7]
|
|
mov r1, #0
|
|
cmp r5, #0x1f
|
|
addlo r0, r5, #1
|
|
andlo r5, r0, #0xff
|
|
strlob r5, [r4, #0xab7]
|
|
mov r0, r4
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x14]
|
|
cmp r0, #9
|
|
bne _0217e2f0
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
beq _0217e2f0
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r7, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
_0217e2f0:
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x14]
|
|
cmp r0, #9
|
|
addeq sp, sp, #0xcc
|
|
ldmeqia sp!, {r4, r5, r6, r7, pc}
|
|
cmp r5, #0x1f
|
|
addne sp, sp, #0xcc
|
|
ldmneia sp!, {r4, r5, r6, r7, pc}
|
|
ldr r0, _0217e3c8 ; =data_027e0c68
|
|
ldr r1, _0217e3cc ; =0x000e0055
|
|
mvn r2, #0
|
|
bl func_02036edc
|
|
mov r0, r6
|
|
mov r1, #5
|
|
bl func_ov30_0217df58
|
|
add sp, sp, #0xcc
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
_0217e33c:
|
|
ldr r0, _0217e3c8 ; =data_027e0c68
|
|
bl func_020367ec
|
|
cmp r0, #0
|
|
addne sp, sp, #0xcc
|
|
ldmneia sp!, {r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #6
|
|
bl func_ov30_0217df58
|
|
add sp, sp, #0xcc
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
_0217e364:
|
|
bl func_ov00_020cc980
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xcc
|
|
ldmeqia sp!, {r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #7
|
|
bl func_ov30_0217df58
|
|
add sp, sp, #0xcc
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
_0217e388:
|
|
bl func_ov30_02182dd4
|
|
mov r0, r6
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #0x1e
|
|
addle sp, sp, #0xcc
|
|
ldmleia sp!, {r4, r5, r6, r7, pc}
|
|
mov r3, #2
|
|
add r2, sp, #0xc
|
|
mov r0, r6
|
|
mov r1, #7
|
|
str r3, [sp, #0xc]
|
|
bl func_ov00_020c50d4
|
|
_0217e3b8:
|
|
add sp, sp, #0xcc
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217e0b0
|
|
_0217e3c0: .word data_027e0f74
|
|
_0217e3c4: .word data_027e0f64
|
|
_0217e3c8: .word data_027e0c68
|
|
_0217e3cc: .word 0x000e0055
|
|
|
|
.global func_ov30_0217e3d0
|
|
arm_func_start func_ov30_0217e3d0
|
|
func_ov30_0217e3d0: ; 0x0217e3d0
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
bl func_ov00_020c5118
|
|
mov r5, r0
|
|
mov r1, #1
|
|
bl func_ov30_02183e50
|
|
mov r0, r5
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #5
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r4, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r5
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov30_0217e3d0
|
|
|
|
.global func_ov30_0217e414
|
|
arm_func_start func_ov30_0217e414
|
|
func_ov30_0217e414: ; 0x0217e414
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r5, r0
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
bl func_ov30_02182dc0
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
ldr r0, [r4, #0x844]
|
|
cmp r0, #0
|
|
beq _0217e468
|
|
mov r0, r5
|
|
mov r1, #4
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217e468:
|
|
ldr r0, _0217e4ac ; =data_027e10b4
|
|
ldr r0, [r0]
|
|
bl func_ov30_02183fa0
|
|
cmp r0, #0
|
|
beq _0217e490
|
|
mov r0, r5
|
|
mov r1, #6
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217e490:
|
|
mov r3, #1
|
|
add r2, sp, #0
|
|
mov r0, r5
|
|
mov r1, #5
|
|
strb r3, [sp]
|
|
bl func_ov00_020c50d4
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217e414
|
|
_0217e4ac: .word data_027e10b4
|
|
|
|
.global func_ov30_0217e4b0
|
|
arm_func_start func_ov30_0217e4b0
|
|
func_ov30_0217e4b0: ; 0x0217e4b0
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov r5, r1
|
|
mov r6, r0
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
cmp r5, #0
|
|
beq _0217e4d8
|
|
cmp r5, #1
|
|
beq _0217e504
|
|
b _0217e52c
|
|
_0217e4d8:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
b _0217e52c
|
|
_0217e504:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #1
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
_0217e52c:
|
|
mov r0, r6
|
|
str r5, [r6, #8]
|
|
bl func_ov00_020c50fc
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
arm_func_end func_ov30_0217e4b0
|
|
|
|
.global func_ov30_0217e53c
|
|
arm_func_start func_ov30_0217e53c
|
|
func_ov30_0217e53c: ; 0x0217e53c
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c5118
|
|
mov r1, #0
|
|
bl func_ov30_021823cc
|
|
ldr r1, _0217e5a0 ; =data_027e0764
|
|
mov r2, #0
|
|
ldr r3, [r1]
|
|
ldmib r1, {r0, ip}
|
|
umull r5, lr, ip, r3
|
|
mla lr, ip, r0, lr
|
|
ldr r0, [r1, #0xc]
|
|
ldr r6, [r1, #0x10]
|
|
mla lr, r0, r3, lr
|
|
ldr ip, [r1, #0x14]
|
|
adds r5, r6, r5
|
|
str r5, [r1]
|
|
adc r3, ip, lr
|
|
str r3, [r1, #4]
|
|
add r2, r2, #0x5a
|
|
mov r0, r4
|
|
mov r1, #0
|
|
strh r2, [r4, #0xc]
|
|
bl func_ov30_0217e4b0
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217e53c
|
|
_0217e5a0: .word data_027e0764
|
|
|
|
.global func_ov30_0217e5a4
|
|
arm_func_start func_ov30_0217e5a4
|
|
func_ov30_0217e5a4: ; 0x0217e5a4
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr}
|
|
sub sp, sp, #0x30
|
|
mov r6, r0
|
|
bl func_ov00_020c5118
|
|
ldr r1, [r6, #8]
|
|
mov r5, r0
|
|
cmp r1, #0
|
|
beq _0217e5d4
|
|
cmp r1, #1
|
|
beq _0217e72c
|
|
add sp, sp, #0x30
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0217e5d4:
|
|
bl func_ov30_02182dc0
|
|
mov r0, r6
|
|
bl func_ov00_020c50f0
|
|
ldrsh r1, [r6, #0xc]
|
|
cmp r0, r1
|
|
addle sp, sp, #0x30
|
|
ldmleia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
ldrsh r0, [r5, #0x78]
|
|
bl func_0202bbbc
|
|
bl func_0202bba8
|
|
strh r0, [r6, #0xe]
|
|
ldr r0, [r5, #0x844]
|
|
cmp r0, #2
|
|
bne _0217e690
|
|
ldr r4, _0217e760 ; =data_02050f54
|
|
mov sl, #0
|
|
mov sb, #0x3000
|
|
add r8, sp, #0x24
|
|
add r7, sp, #0x18
|
|
_0217e620:
|
|
ldrsh r2, [r6, #0xe]
|
|
mov r0, sb
|
|
mov r1, r8
|
|
add r2, r2, #0x4000
|
|
strh r2, [r6, #0xe]
|
|
ldrh ip, [r6, #0xe]
|
|
mov r3, r7
|
|
add r2, r5, #0x48
|
|
mov ip, ip, asr #0x4
|
|
mov lr, ip, lsl #0x1
|
|
mov ip, lr, lsl #0x1
|
|
add lr, r4, lr, lsl #1
|
|
ldrsh ip, [r4, ip]
|
|
ldrsh lr, [lr, #2]
|
|
str sl, [sp, #0x28]
|
|
str ip, [sp, #0x24]
|
|
str lr, [sp, #0x2c]
|
|
bl func_01ff9e64
|
|
mov r0, r5
|
|
mov r1, r7
|
|
bl func_ov00_020cca68
|
|
cmp r0, #0
|
|
bne _0217e620
|
|
mov r0, r6
|
|
mov r1, #1
|
|
bl func_ov30_0217e4b0
|
|
add sp, sp, #0x30
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0217e690:
|
|
cmp r0, #3
|
|
bne _0217e71c
|
|
ldr r4, _0217e760 ; =data_02050f54
|
|
mov sl, #0
|
|
mov sb, #0x3000
|
|
add r8, sp, #0xc
|
|
add r7, sp, #0
|
|
_0217e6ac:
|
|
ldrsh r2, [r6, #0xe]
|
|
mov r0, sb
|
|
mov r1, r8
|
|
sub r2, r2, #0x4000
|
|
strh r2, [r6, #0xe]
|
|
ldrh ip, [r6, #0xe]
|
|
mov r3, r7
|
|
add r2, r5, #0x48
|
|
mov ip, ip, asr #0x4
|
|
mov lr, ip, lsl #0x1
|
|
mov ip, lr, lsl #0x1
|
|
add lr, r4, lr, lsl #1
|
|
ldrsh ip, [r4, ip]
|
|
ldrsh lr, [lr, #2]
|
|
str sl, [sp, #0x10]
|
|
str ip, [sp, #0xc]
|
|
str lr, [sp, #0x14]
|
|
bl func_01ff9e64
|
|
mov r0, r5
|
|
mov r1, r7
|
|
bl func_ov00_020cca68
|
|
cmp r0, #0
|
|
bne _0217e6ac
|
|
mov r0, r6
|
|
mov r1, #1
|
|
bl func_ov30_0217e4b0
|
|
add sp, sp, #0x30
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0217e71c:
|
|
mov r0, r6
|
|
bl func_ov00_020c50fc
|
|
add sp, sp, #0x30
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0217e72c:
|
|
ldrsh r1, [r6, #0xe]
|
|
bl func_ov30_02182e34
|
|
ldrsh r1, [r6, #0xe]
|
|
mov r0, r5
|
|
bl func_ov30_02182e50
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x30
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
mov r0, r6
|
|
mov r1, #0
|
|
bl func_ov30_0217e4b0
|
|
add sp, sp, #0x30
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217e5a4
|
|
_0217e760: .word data_02050f54
|
|
|
|
.global func_ov30_0217e764
|
|
arm_func_start func_ov30_0217e764
|
|
func_ov30_0217e764: ; 0x0217e764
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
|
|
sub sp, sp, #4
|
|
mov r7, r0
|
|
mov r6, r1
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
ldr r5, [r4, #0x8a4]
|
|
cmp r6, #3
|
|
addls pc, pc, r6, lsl #2
|
|
b _0217e86c
|
|
_0217e78c: ; jump table
|
|
b _0217e79c ; case 0
|
|
b _0217e7c8 ; case 1
|
|
b _0217e7f4 ; case 2
|
|
b _0217e844 ; case 3
|
|
_0217e79c:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r5, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r5, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
b _0217e86c
|
|
_0217e7c8:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r5, r0
|
|
mov r1, #7
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r5, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
b _0217e86c
|
|
_0217e7f4:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r8, r0
|
|
mov r1, #1
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r8, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182eb4
|
|
mov r0, r4
|
|
bl func_ov00_020c29d8
|
|
mov r0, r5
|
|
ldr r2, [r4, #0xa0]
|
|
add r1, r4, #0x48
|
|
str r2, [sp]
|
|
ldr r2, [r4, #0x98]
|
|
ldrh r3, [r4, #0x9c]
|
|
bl func_ov30_02187e18
|
|
b _0217e86c
|
|
_0217e844:
|
|
bl func_ov30_02182da8
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #5
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
_0217e86c:
|
|
mov r0, r7
|
|
str r6, [r7, #8]
|
|
bl func_ov00_020c50fc
|
|
add sp, sp, #4
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
|
|
arm_func_end func_ov30_0217e764
|
|
|
|
.global func_ov30_0217e880
|
|
arm_func_start func_ov30_0217e880
|
|
func_ov30_0217e880: ; 0x0217e880
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r5, r0
|
|
mov r4, r1
|
|
bl func_ov00_020c5118
|
|
mov r1, #0
|
|
strb r1, [r0, #0x87e]
|
|
ldr r2, [r4]
|
|
mov r0, r5
|
|
str r2, [r5, #0xc]
|
|
ldr r2, [r4, #4]
|
|
str r2, [r5, #0x10]
|
|
ldr r2, [r4, #8]
|
|
str r2, [r5, #0x14]
|
|
bl func_ov30_0217e764
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov30_0217e880
|
|
|
|
.global func_ov30_0217e8bc
|
|
arm_func_start func_ov30_0217e8bc
|
|
func_ov30_0217e8bc: ; 0x0217e8bc
|
|
stmdb sp!, {r4, r5, r6, r7, lr}
|
|
sub sp, sp, #0x1c
|
|
mov r6, r0
|
|
bl func_ov00_020c5118
|
|
ldr r1, [r6, #8]
|
|
mov r4, r0
|
|
ldr r5, [r4, #0x8a4]
|
|
cmp r1, #3
|
|
addls pc, pc, r1, lsl #2
|
|
b _0217eb5c
|
|
_0217e8e4: ; jump table
|
|
b _0217e8f4 ; case 0
|
|
b _0217e938 ; case 1
|
|
b _0217e9d4 ; case 2
|
|
b _0217eaa8 ; case 3
|
|
_0217e8f4:
|
|
bl func_ov30_02182dc0
|
|
mov r0, r6
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #0xf
|
|
addle sp, sp, #0x1c
|
|
ldmleia sp!, {r4, r5, r6, r7, pc}
|
|
mov r3, #0x100
|
|
mov r0, r5
|
|
add r1, r4, #0x48
|
|
add r2, r6, #0xc
|
|
str r3, [sp]
|
|
bl func_ov30_02187c00
|
|
mov r0, r6
|
|
mov r1, #1
|
|
bl func_ov30_0217e764
|
|
add sp, sp, #0x1c
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
_0217e938:
|
|
mov r0, r5
|
|
bl func_ov30_02187c44
|
|
mov r0, r4
|
|
add r1, r6, #0xc
|
|
bl func_ov30_02182dfc
|
|
mov r0, r4
|
|
add r1, r6, #0xc
|
|
bl func_ov30_02182e18
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x1c
|
|
ldmeqia sp!, {r4, r5, r6, r7, pc}
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x1c
|
|
ldmeqia sp!, {r4, r5, r6, r7, pc}
|
|
mov r0, r5
|
|
bl func_ov30_02187d50
|
|
cmp r0, #0
|
|
beq _0217e9ac
|
|
mov r0, r6
|
|
mov r1, #3
|
|
bl func_ov30_0217e764
|
|
add sp, sp, #0x1c
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
_0217e9ac:
|
|
mov r0, r5
|
|
bl func_ov30_02187d3c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x1c
|
|
ldmeqia sp!, {r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #2
|
|
bl func_ov30_0217e764
|
|
add sp, sp, #0x1c
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
_0217e9d4:
|
|
add r1, sp, #0x10
|
|
mov r0, r5
|
|
bl func_ov30_02187d88
|
|
add r1, sp, #0x10
|
|
mov r0, r4
|
|
mov r2, #2
|
|
bl func_ov30_02182ecc
|
|
mov r0, r4
|
|
mov r1, #0xa000
|
|
bl func_ov00_020c29ec
|
|
mov r7, r0
|
|
add r1, sp, #0x10
|
|
mov r0, r4
|
|
bl func_ov30_02182c68
|
|
cmp r0, #0
|
|
beq _0217ea30
|
|
ldr r1, [r4, #0xa0]
|
|
mov r0, r5
|
|
str r1, [sp]
|
|
ldrh r3, [r4, #0x9c]
|
|
ldr r2, [r4, #0x98]
|
|
add r1, r4, #0x48
|
|
bl func_ov30_02187e18
|
|
_0217ea30:
|
|
add r1, sp, #4
|
|
mov r0, r5
|
|
bl func_ov30_02187dd8
|
|
add r1, sp, #4
|
|
mov r0, r4
|
|
bl func_ov30_02182c68
|
|
cmp r0, #0
|
|
cmpeq r7, #0
|
|
beq _0217ea68
|
|
mov r0, r6
|
|
mov r1, #3
|
|
bl func_ov30_0217e764
|
|
add sp, sp, #0x1c
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
_0217ea68:
|
|
add r1, sp, #4
|
|
mov r0, r4
|
|
bl func_ov00_020c288c
|
|
cmp r0, #0x3000
|
|
addge sp, sp, #0x1c
|
|
ldmgeia sp!, {r4, r5, r6, r7, pc}
|
|
mov r0, r4
|
|
bl func_ov30_02183a78
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x1c
|
|
ldmeqia sp!, {r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #3
|
|
bl func_ov30_0217e764
|
|
add sp, sp, #0x1c
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
_0217eaa8:
|
|
bl func_ov30_02182dc0
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x1c
|
|
ldmeqia sp!, {r4, r5, r6, r7, pc}
|
|
ldr r1, [r4, #4]
|
|
ldr r0, _0217eb64 ; =0x43485336
|
|
cmp r1, r0
|
|
bne _0217eb04
|
|
ldrb r0, [r4, #0xab6]
|
|
cmp r0, #0
|
|
beq _0217eb04
|
|
mov r0, r6
|
|
mov r1, #0xf
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0x1c
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
_0217eb04:
|
|
ldr r0, [r4, #0x844]
|
|
cmp r0, #0
|
|
beq _0217eb28
|
|
mov r0, r6
|
|
mov r1, #0x10
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0x1c
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
_0217eb28:
|
|
ldr r0, _0217eb68 ; =data_027e10b4
|
|
ldr r0, [r0]
|
|
bl func_ov30_02183fa0
|
|
cmp r0, #0
|
|
mov r0, r6
|
|
mov r2, #0
|
|
beq _0217eb54
|
|
mov r1, #6
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0x1c
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
_0217eb54:
|
|
mov r1, #5
|
|
bl func_ov00_020c50d4
|
|
_0217eb5c:
|
|
add sp, sp, #0x1c
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217e8bc
|
|
_0217eb64: .word 0x43485336
|
|
_0217eb68: .word data_027e10b4
|
|
|
|
.global func_ov30_0217eb6c
|
|
arm_func_start func_ov30_0217eb6c
|
|
func_ov30_0217eb6c: ; 0x0217eb6c
|
|
stmdb sp!, {r4, lr}
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
mov r1, #0
|
|
bl func_ov30_02183e50
|
|
ldr r0, [r4, #0x14]
|
|
str r0, [r4, #0x48]
|
|
ldr r0, [r4, #0x18]
|
|
str r0, [r4, #0x4c]
|
|
ldr r0, [r4, #0x1c]
|
|
str r0, [r4, #0x50]
|
|
ldr r0, [r4, #0x14]
|
|
str r0, [r4, #0x54]
|
|
ldr r0, [r4, #0x18]
|
|
str r0, [r4, #0x58]
|
|
ldr r0, [r4, #0x1c]
|
|
str r0, [r4, #0x5c]
|
|
ldrsh r0, [r4, #0x12]
|
|
strh r0, [r4, #0x78]
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217eb6c
|
|
|
|
.global func_ov30_0217ebbc
|
|
arm_func_start func_ov30_0217ebbc
|
|
func_ov30_0217ebbc: ; 0x0217ebbc
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
|
|
sub sp, sp, #0xa4
|
|
mov r7, r0
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
mov r0, r7
|
|
bl func_ov00_020c510c
|
|
cmp r0, #0x384
|
|
addle sp, sp, #0xa4
|
|
ldmleia sp!, {r3, r4, r5, r6, r7, r8, pc}
|
|
ldr r2, _0217ece4 ; =data_027e0f94
|
|
add r0, r4, #0x14
|
|
mov r1, #0x2800
|
|
bl func_ov00_020ce284
|
|
cmp r0, #0
|
|
addne sp, sp, #0xa4
|
|
ldmneia sp!, {r3, r4, r5, r6, r7, r8, pc}
|
|
ldr r2, _0217ece8 ; =data_ov30_02188b08
|
|
mov r1, #0
|
|
add r3, sp, #0x24
|
|
mov r0, #0x10
|
|
str r0, [sp, #0x1c]
|
|
str r2, [sp]
|
|
str r1, [sp, #4]
|
|
str r3, [sp, #0x18]
|
|
str r1, [sp, #0x20]
|
|
mvn r6, #0
|
|
add r0, sp, #0xa4
|
|
_0217ec2c:
|
|
str r6, [r3]
|
|
str r6, [r3, #4]
|
|
add r3, r3, #8
|
|
cmp r3, r0
|
|
blo _0217ec2c
|
|
ldr r1, [r4, #8]
|
|
ldr r0, _0217ecec ; =data_027e0fe4
|
|
str r1, [sp, #8]
|
|
ldr r5, [r4, #0xc]
|
|
add r3, sp, #8
|
|
ldr r0, [r0]
|
|
add r1, sp, #0
|
|
add r2, sp, #0x18
|
|
str r5, [sp, #0xc]
|
|
str r6, [sp, #0x10]
|
|
str r6, [sp, #0x14]
|
|
str r3, [sp, #4]
|
|
bl func_ov00_020c37ec
|
|
ldr r0, [sp, #0x20]
|
|
mov r5, #0
|
|
cmp r0, #0
|
|
ble _0217eccc
|
|
ldr r8, _0217ecec ; =data_027e0fe4
|
|
mov r6, r5
|
|
_0217ec8c:
|
|
ldr r1, [sp, #0x18]
|
|
ldr r0, [r8]
|
|
add r1, r1, r6
|
|
bl func_ov00_020c3674
|
|
mov r1, r0
|
|
mov r0, r4
|
|
add r1, r1, #0x48
|
|
bl func_ov00_020c288c
|
|
cmp r0, #0x2800
|
|
addlt sp, sp, #0xa4
|
|
ldmltia sp!, {r3, r4, r5, r6, r7, r8, pc}
|
|
ldr r0, [sp, #0x20]
|
|
add r5, r5, #1
|
|
cmp r5, r0
|
|
add r6, r6, #8
|
|
blt _0217ec8c
|
|
_0217eccc:
|
|
mov r0, r7
|
|
mov r1, #1
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0xa4
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217ebbc
|
|
_0217ece4: .word data_027e0f94
|
|
_0217ece8: .word data_ov30_02188b08
|
|
_0217ecec: .word data_027e0fe4
|
|
|
|
.global func_ov30_0217ecf0
|
|
arm_func_start func_ov30_0217ecf0
|
|
func_ov30_0217ecf0: ; 0x0217ecf0
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
bl func_ov00_020c5118
|
|
mov r1, #0
|
|
mov r5, r0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #6
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
mov r0, #0
|
|
strb r0, [r5, #0x87e]
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov30_0217ecf0
|
|
|
|
.global func_ov30_0217ed28
|
|
arm_func_start func_ov30_0217ed28
|
|
func_ov30_0217ed28: ; 0x0217ed28
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r5, r0
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
bl func_ov30_02182ea8
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
mov r3, #2
|
|
add r2, sp, #0
|
|
mov r0, r5
|
|
mov r1, #7
|
|
str r3, [sp]
|
|
bl func_ov00_020c50d4
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov30_0217ed28
|
|
|
|
.global func_ov30_0217ed78
|
|
arm_func_start func_ov30_0217ed78
|
|
func_ov30_0217ed78: ; 0x0217ed78
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
bl func_ov00_020c5118
|
|
mov r1, #0
|
|
mov r5, r0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #6
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r4, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r5
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov30_0217ed78
|
|
|
|
.global func_ov30_0217edb0
|
|
arm_func_start func_ov30_0217edb0
|
|
func_ov30_0217edb0: ; 0x0217edb0
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r5, r0
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
bl func_ov30_02182dc0
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
mov r3, #2
|
|
add r2, sp, #0
|
|
mov r0, r5
|
|
mov r1, #7
|
|
str r3, [sp]
|
|
bl func_ov00_020c50d4
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov30_0217edb0
|
|
|
|
.global func_ov30_0217ee00
|
|
arm_func_start func_ov30_0217ee00
|
|
func_ov30_0217ee00: ; 0x0217ee00
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov r5, r1
|
|
mov r6, r0
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
cmp r5, #0
|
|
beq _0217ee30
|
|
cmp r5, #1
|
|
beq _0217ee5c
|
|
cmp r5, #2
|
|
beq _0217ee88
|
|
b _0217eeb0
|
|
_0217ee30:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
b _0217eeb0
|
|
_0217ee5c:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #1
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182eb4
|
|
b _0217eeb0
|
|
_0217ee88:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #5
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
_0217eeb0:
|
|
mov r0, r6
|
|
str r5, [r6, #8]
|
|
bl func_ov00_020c50fc
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
arm_func_end func_ov30_0217ee00
|
|
|
|
.global func_ov30_0217eec0
|
|
arm_func_start func_ov30_0217eec0
|
|
func_ov30_0217eec0: ; 0x0217eec0
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c5118
|
|
mov r1, #0
|
|
strb r1, [r0, #0x87e]
|
|
mov r0, r4
|
|
bl func_ov30_0217ee00
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217eec0
|
|
|
|
.global func_ov30_0217eee0
|
|
arm_func_start func_ov30_0217eee0
|
|
func_ov30_0217eee0: ; 0x0217eee0
|
|
stmdb sp!, {r4, r5, lr}
|
|
sub sp, sp, #0xc
|
|
mov r4, r0
|
|
bl func_ov00_020c5118
|
|
ldr r1, [r4, #8]
|
|
mov r5, r0
|
|
cmp r1, #0
|
|
beq _0217ef18
|
|
cmp r1, #1
|
|
beq _0217ef44
|
|
cmp r1, #2
|
|
beq _0217efc4
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, pc}
|
|
_0217ef18:
|
|
bl func_ov30_02182dc0
|
|
mov r0, r4
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #0x14
|
|
addle sp, sp, #0xc
|
|
ldmleia sp!, {r4, r5, pc}
|
|
mov r0, r4
|
|
mov r1, #1
|
|
bl func_ov30_0217ee00
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, pc}
|
|
_0217ef44:
|
|
add r1, sp, #0
|
|
bl func_ov30_02183904
|
|
cmp r0, #0
|
|
bne _0217ef68
|
|
mov r0, r4
|
|
mov r1, #2
|
|
bl func_ov30_0217ee00
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, pc}
|
|
_0217ef68:
|
|
add r1, sp, #0
|
|
mov r0, r5
|
|
mov r2, #2
|
|
bl func_ov30_02182ecc
|
|
mov r0, r5
|
|
bl func_ov30_02183818
|
|
cmp r0, #0
|
|
beq _0217ef9c
|
|
mov r0, r4
|
|
mov r1, #2
|
|
bl func_ov30_0217ee00
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, pc}
|
|
_0217ef9c:
|
|
mov r0, r5
|
|
bl func_ov30_02182efc
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xc
|
|
ldmeqia sp!, {r4, r5, pc}
|
|
mov r0, r4
|
|
mov r1, #2
|
|
bl func_ov30_0217ee00
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, pc}
|
|
_0217efc4:
|
|
bl func_ov30_02182dc0
|
|
mov r0, r5
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xc
|
|
ldmeqia sp!, {r4, r5, pc}
|
|
ldr r1, [r5, #4]
|
|
ldr r0, _0217f080 ; =0x43485336
|
|
cmp r1, r0
|
|
bne _0217f020
|
|
ldrb r0, [r5, #0xab6]
|
|
cmp r0, #0
|
|
beq _0217f020
|
|
mov r0, r4
|
|
mov r1, #0xf
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, pc}
|
|
_0217f020:
|
|
ldr r0, [r5, #0x844]
|
|
cmp r0, #0
|
|
beq _0217f044
|
|
mov r0, r4
|
|
mov r1, #0x10
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, pc}
|
|
_0217f044:
|
|
ldr r0, _0217f084 ; =data_027e10b4
|
|
ldr r0, [r0]
|
|
bl func_ov30_02183fa0
|
|
cmp r0, #0
|
|
mov r0, r4
|
|
mov r2, #0
|
|
beq _0217f070
|
|
mov r1, #6
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, pc}
|
|
_0217f070:
|
|
mov r1, #5
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217eee0
|
|
_0217f080: .word 0x43485336
|
|
_0217f084: .word data_027e10b4
|
|
|
|
.global func_ov30_0217f088
|
|
arm_func_start func_ov30_0217f088
|
|
func_ov30_0217f088: ; 0x0217f088
|
|
stmdb sp!, {r4, lr}
|
|
sub sp, sp, #8
|
|
mov r2, #0
|
|
str r2, [sp]
|
|
ldr r1, _0217f12c ; =data_027e0e58
|
|
mov r4, r0
|
|
str r2, [sp, #4]
|
|
ldr r0, [r1]
|
|
mov r2, r4
|
|
mov r1, #0x67
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
ldr r0, _0217f12c ; =data_027e0e58
|
|
str r1, [sp, #4]
|
|
ldr r0, [r0]
|
|
mov r2, r4
|
|
mov r1, #0x68
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
ldr r0, _0217f12c ; =data_027e0e58
|
|
str r1, [sp, #4]
|
|
ldr r0, [r0]
|
|
mov r2, r4
|
|
mov r1, #0x69
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r2, r4
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r0, _0217f12c ; =data_027e0e58
|
|
mov r1, #0x6a
|
|
ldr r0, [r0]
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
add sp, sp, #8
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217f088
|
|
_0217f12c: .word data_027e0e58
|
|
|
|
.global func_ov30_0217f130
|
|
arm_func_start func_ov30_0217f130
|
|
func_ov30_0217f130: ; 0x0217f130
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov r6, r1
|
|
mov r7, r0
|
|
bl func_ov00_020c5118
|
|
mov r5, r0
|
|
cmp r6, #3
|
|
addls pc, pc, r6, lsl #2
|
|
b _0217f190
|
|
_0217f150: ; jump table
|
|
b _0217f190 ; case 0
|
|
b _0217f160 ; case 1
|
|
b _0217f190 ; case 2
|
|
b _0217f18c ; case 3
|
|
_0217f160:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #0xb
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r4, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r5
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
b _0217f190
|
|
_0217f18c:
|
|
bl func_ov30_02182da8
|
|
_0217f190:
|
|
mov r0, r7
|
|
str r6, [r7, #8]
|
|
bl func_ov00_020c50fc
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
arm_func_end func_ov30_0217f130
|
|
|
|
.global func_ov30_0217f1a0
|
|
arm_func_start func_ov30_0217f1a0
|
|
func_ov30_0217f1a0: ; 0x0217f1a0
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c5118
|
|
mov r1, #1
|
|
strb r1, [r0, #0xab6]
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov30_0217f130
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217f1a0
|
|
|
|
.global func_ov30_0217f1c4
|
|
arm_func_start func_ov30_0217f1c4
|
|
func_ov30_0217f1c4: ; 0x0217f1c4
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr}
|
|
sub sp, sp, #0x68
|
|
mov r7, r0
|
|
bl func_ov00_020c5118
|
|
ldr r1, [r7, #8]
|
|
mov r5, r0
|
|
cmp r1, #3
|
|
addls pc, pc, r1, lsl #2
|
|
b _0217f53c
|
|
_0217f1e8: ; jump table
|
|
b _0217f1f8 ; case 0
|
|
b _0217f250 ; case 1
|
|
b _0217f2f4 ; case 2
|
|
b _0217f470 ; case 3
|
|
_0217f1f8:
|
|
ldr r0, _0217f544 ; =data_027e0f74
|
|
mov r1, #0x158
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097760
|
|
cmp r0, #0
|
|
bne _0217f23c
|
|
ldr r0, _0217f544 ; =data_027e0f74
|
|
mov r1, #0x158
|
|
ldr r0, [r0]
|
|
mov r2, #1
|
|
bl func_ov00_0209779c
|
|
mov r0, r7
|
|
mov r1, #0xe
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0217f23c:
|
|
mov r0, r7
|
|
mov r1, #1
|
|
bl func_ov30_0217f130
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0217f250:
|
|
bl func_ov30_02182dc0
|
|
mov r0, r5
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x68
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
mov r0, r5
|
|
mov r1, #0
|
|
bl func_ov30_02183e50
|
|
add r0, r5, #0x48
|
|
add r3, sp, #0x5c
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
ldr r0, _0217f548 ; =data_027e0e60
|
|
ldr r2, [sp, #0x5c]
|
|
ldr r4, [sp, #0x60]
|
|
ldr r3, [sp, #0x64]
|
|
str r2, [sp, #0x14]
|
|
ldr r0, [r0]
|
|
add r1, sp, #0x14
|
|
mov r2, #1
|
|
str r4, [sp, #0x18]
|
|
str r3, [sp, #0x1c]
|
|
bl func_ov00_02083ee0
|
|
str r0, [sp, #0x60]
|
|
add r0, sp, #0x5c
|
|
bl func_ov30_0217f088
|
|
ldr r0, _0217f54c ; =data_027e0ffc
|
|
add r2, r5, #0x48
|
|
mov r1, #0x51
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
mov r0, r7
|
|
mov r1, #2
|
|
bl func_ov30_0217f130
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0217f2f4:
|
|
mov r0, r7
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #0xa
|
|
addle sp, sp, #0x68
|
|
ldmleia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
ldr r3, _0217f550 ; =data_ov00_020e8398
|
|
mvn r2, #0
|
|
mov r6, #1
|
|
mov r1, #0
|
|
ldr r0, _0217f554 ; =data_027e0ff0
|
|
str r3, [sp, #0x30]
|
|
strb r2, [sp, #0x34]
|
|
strb r6, [sp, #0x35]
|
|
strb r1, [sp, #0x36]
|
|
strb r1, [sp, #0x37]
|
|
strb r6, [sp, #0x4c]
|
|
strb r2, [sp, #0x20]
|
|
strb r2, [sp, #0x21]
|
|
strb r2, [sp, #0x22]
|
|
strb r2, [sp, #0x23]
|
|
ldrsb r4, [r5, #0x2c]
|
|
ldr r0, [r0]
|
|
ldr r1, _0217f558 ; =data_027e0f94
|
|
add r2, sp, #0x30
|
|
add r3, sp, #0x20
|
|
strb r4, [sp, #0x34]
|
|
strb r6, [sp, #0x36]
|
|
bl func_ov00_020c4ae8
|
|
cmp r0, #0
|
|
beq _0217f3b8
|
|
ldr r0, _0217f554 ; =data_027e0ff0
|
|
add r1, sp, #0x20
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c47cc
|
|
ldr r6, [r0, #4]
|
|
ldr r2, _0217f548 ; =data_027e0e60
|
|
str r6, [sp, #0x50]
|
|
ldr r4, [r0, #8]
|
|
add r1, sp, #8
|
|
str r4, [sp, #0x54]
|
|
ldr r3, [r0, #0xc]
|
|
ldr r0, [r2]
|
|
mov r2, #0
|
|
str r3, [sp, #0x58]
|
|
str r6, [sp, #8]
|
|
str r4, [sp, #0xc]
|
|
str r3, [sp, #0x10]
|
|
bl func_ov00_02083ee0
|
|
str r0, [sp, #0x54]
|
|
_0217f3b8:
|
|
ldr r0, _0217f55c ; =data_027e10b4
|
|
mov r6, #0
|
|
ldr r0, [r0]
|
|
bl func_ov30_021840e4
|
|
cmp r0, #0
|
|
ble _0217f43c
|
|
ldr sb, _0217f55c ; =data_027e10b4
|
|
ldr r8, _0217f560 ; =data_027e0fe4
|
|
add sl, sp, #0x50
|
|
add r4, sp, #0
|
|
_0217f3e0:
|
|
ldr r0, [sb]
|
|
mov r1, r6
|
|
bl func_ov30_021840ec
|
|
ldr r2, [r0]
|
|
mov r1, r4
|
|
str r2, [sp]
|
|
ldr r2, [r0, #4]
|
|
ldr r0, [r8]
|
|
str r2, [sp, #4]
|
|
bl func_ov00_020c3674
|
|
movs r1, r0
|
|
beq _0217f428
|
|
mov r0, sl
|
|
add r1, r1, #0x48
|
|
bl func_ov00_020ce2f0
|
|
cmp r0, #0x2000
|
|
addlt sp, sp, #0x68
|
|
ldmltia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0217f428:
|
|
ldr r0, [sb]
|
|
add r6, r6, #1
|
|
bl func_ov30_021840e4
|
|
cmp r6, r0
|
|
blt _0217f3e0
|
|
_0217f43c:
|
|
ldr r1, [sp, #0x50]
|
|
mov r0, r7
|
|
str r1, [r5, #0x48]
|
|
ldr r1, [sp, #0x54]
|
|
mov r2, #0
|
|
str r1, [r5, #0x4c]
|
|
ldr r3, [sp, #0x58]
|
|
mov r1, #3
|
|
str r3, [r5, #0x50]
|
|
strh r2, [r5, #0x78]
|
|
bl func_ov30_0217f130
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0217f470:
|
|
bl func_ov30_02182dc0
|
|
mov r0, r7
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #1
|
|
bne _0217f4a8
|
|
add r0, r5, #0x48
|
|
bl func_ov30_0217d9ac
|
|
ldr r0, _0217f54c ; =data_027e0ffc
|
|
add r2, r5, #0x48
|
|
mov r1, #0x4f
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0217f4a8:
|
|
cmp r0, #0x33
|
|
bne _0217f4f8
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov30_02183e50
|
|
mov r0, r5
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #8
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r4, #0x10]
|
|
mov r2, #0x1000
|
|
str r2, [r1, #0x10]
|
|
ldr r0, _0217f55c ; =data_027e10b4
|
|
add r1, r5, #0x48
|
|
ldr r0, [r0]
|
|
bl func_ov30_021840b0
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0217f4f8:
|
|
addle sp, sp, #0x68
|
|
ldmleia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
mov r0, r5
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x68
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
mov r0, r5
|
|
bl func_ov30_02183e90
|
|
mov r0, r7
|
|
mov r1, #6
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
_0217f53c:
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217f1c4
|
|
_0217f544: .word data_027e0f74
|
|
_0217f548: .word data_027e0e60
|
|
_0217f54c: .word data_027e0ffc
|
|
_0217f550: .word data_ov00_020e8398
|
|
_0217f554: .word data_027e0ff0
|
|
_0217f558: .word data_027e0f94
|
|
_0217f55c: .word data_027e10b4
|
|
_0217f560: .word data_027e0fe4
|
|
|
|
.global func_ov30_0217f564
|
|
arm_func_start func_ov30_0217f564
|
|
func_ov30_0217f564: ; 0x0217f564
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, lr}
|
|
sub sp, sp, #0x54
|
|
mov r8, r1
|
|
mov sb, r0
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
cmp r8, #7
|
|
addls pc, pc, r8, lsl #2
|
|
b _0217f730
|
|
_0217f588: ; jump table
|
|
b _0217f5a8 ; case 0
|
|
b _0217f5cc ; case 1
|
|
b _0217f5d4 ; case 2
|
|
b _0217f730 ; case 3
|
|
b _0217f5f8 ; case 4
|
|
b _0217f71c ; case 5
|
|
b _0217f724 ; case 6
|
|
b _0217f72c ; case 7
|
|
_0217f5a8:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
b _0217f730
|
|
_0217f5cc:
|
|
bl func_ov30_02182da8
|
|
b _0217f730
|
|
_0217f5d4:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #0xb
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
b _0217f730
|
|
_0217f5f8:
|
|
ldr r3, _0217f744 ; =data_ov00_020e8398
|
|
mvn r2, #0
|
|
mov ip, #1
|
|
mov r1, #0
|
|
ldr r0, _0217f748 ; =data_027e0ff0
|
|
str r3, [sp, #0x34]
|
|
strb r2, [sp, #0x38]
|
|
strb ip, [sp, #0x39]
|
|
strb r1, [sp, #0x3a]
|
|
strb r1, [sp, #0x3b]
|
|
strb ip, [sp, #0x50]
|
|
strb r2, [sp, #0x24]
|
|
strb r2, [sp, #0x25]
|
|
strb r2, [sp, #0x26]
|
|
strb r2, [sp, #0x27]
|
|
ldrsb lr, [r4, #0x2c]
|
|
ldr r0, [r0]
|
|
ldr r1, _0217f74c ; =data_027e0f94
|
|
add r2, sp, #0x34
|
|
add r3, sp, #0x24
|
|
strb lr, [sp, #0x38]
|
|
strb ip, [sp, #0x3a]
|
|
bl func_ov00_020c4ae8
|
|
cmp r0, #0
|
|
beq _0217f69c
|
|
ldr r0, _0217f748 ; =data_027e0ff0
|
|
add r1, sp, #0x24
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c47cc
|
|
ldr r1, _0217f750 ; =data_027e0e60
|
|
ldr r5, [r0, #4]
|
|
ldr r3, [r0, #8]
|
|
ldr r7, [r0, #0xc]
|
|
ldr r0, [r1]
|
|
add r1, sp, #0x18
|
|
mov r2, #0
|
|
str r5, [sp, #0x18]
|
|
str r3, [sp, #0x1c]
|
|
str r7, [sp, #0x20]
|
|
bl func_ov00_02083ee0
|
|
mov r6, r0
|
|
_0217f69c:
|
|
str r5, [r4, #0x48]
|
|
str r6, [r4, #0x4c]
|
|
mov r0, r4
|
|
str r7, [r4, #0x50]
|
|
mov r1, #0
|
|
strh r1, [r4, #0x78]
|
|
bl func_ov00_020cb160
|
|
mov r5, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r5, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
ldr r0, [r4, #0x48]
|
|
mov r2, #0
|
|
str r0, [sp, #0xc]
|
|
ldr r0, [r4, #0x4c]
|
|
mov r1, #0x3c
|
|
str r0, [sp, #0x10]
|
|
ldr r3, [r4, #0x50]
|
|
mov r0, #1
|
|
str r3, [sp, #0x14]
|
|
str r2, [sp]
|
|
str r0, [sp, #4]
|
|
str r2, [sp, #8]
|
|
ldr r0, _0217f754 ; =data_027e0f64
|
|
add r2, sp, #0xc
|
|
ldr r0, [r0]
|
|
sub r3, r1, #0x3d
|
|
ldr r0, [r0, #4]
|
|
bl func_ov00_020884b4
|
|
b _0217f730
|
|
_0217f71c:
|
|
bl func_ov30_02182da8
|
|
b _0217f730
|
|
_0217f724:
|
|
bl func_ov00_020cc960
|
|
b _0217f730
|
|
_0217f72c:
|
|
bl func_ov30_02182da8
|
|
_0217f730:
|
|
mov r0, sb
|
|
str r8, [sb, #8]
|
|
bl func_ov00_020c50fc
|
|
add sp, sp, #0x54
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217f564
|
|
_0217f744: .word data_ov00_020e8398
|
|
_0217f748: .word data_027e0ff0
|
|
_0217f74c: .word data_027e0f94
|
|
_0217f750: .word data_027e0e60
|
|
_0217f754: .word data_027e0f64
|
|
|
|
.global func_ov30_0217f758
|
|
arm_func_start func_ov30_0217f758
|
|
func_ov30_0217f758: ; 0x0217f758
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c5118
|
|
mov r1, #1
|
|
strb r1, [r0, #0xab6]
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov30_0217f564
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217f758
|
|
|
|
.global func_ov30_0217f77c
|
|
arm_func_start func_ov30_0217f77c
|
|
func_ov30_0217f77c: ; 0x0217f77c
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
sub sp, sp, #0xc8
|
|
mov r5, r0
|
|
bl func_ov00_020c5118
|
|
ldr r1, [r5, #8]
|
|
mov r4, r0
|
|
cmp r1, #7
|
|
addls pc, pc, r1, lsl #2
|
|
b _0217fa98
|
|
_0217f7a0: ; jump table
|
|
b _0217f7c0 ; case 0
|
|
b _0217f850 ; case 1
|
|
b _0217f880 ; case 2
|
|
b _0217f924 ; case 3
|
|
b _0217f94c ; case 4
|
|
b _0217f974 ; case 5
|
|
b _0217fa44 ; case 6
|
|
b _0217fa68 ; case 7
|
|
_0217f7c0:
|
|
bl func_ov00_020cc928
|
|
cmp r0, #0
|
|
mov r0, r4
|
|
bne _0217f82c
|
|
bl func_ov00_020cc8dc
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xc8
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
add r0, sp, #0x18
|
|
bl func_ov00_0209a4f4
|
|
mvn r1, #0
|
|
mov r0, #0x64
|
|
str r1, [sp, #0x1c]
|
|
strb r0, [sp, #0x21]
|
|
ldr r0, [r4, #0x48]
|
|
add r1, sp, #0x18
|
|
str r0, [sp, #0x38]
|
|
ldr r2, [r4, #0x4c]
|
|
mov r0, r4
|
|
str r2, [sp, #0x3c]
|
|
ldr r2, [r4, #0x50]
|
|
str r2, [sp, #0x40]
|
|
bl func_ov00_020cc908
|
|
add r0, sp, #0x18
|
|
bl func_ov00_0209a508
|
|
add sp, sp, #0xc8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217f82c:
|
|
bl func_ov00_020cc940
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xc8
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov30_0217f564
|
|
add sp, sp, #0xc8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217f850:
|
|
mov r1, #0
|
|
bl func_ov30_02182e34
|
|
mov r0, r5
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #0x3c
|
|
addle sp, sp, #0xc8
|
|
ldmleia sp!, {r3, r4, r5, pc}
|
|
mov r0, r5
|
|
mov r1, #2
|
|
bl func_ov30_0217f564
|
|
add sp, sp, #0xc8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217f880:
|
|
bl func_ov30_02182dc0
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xc8
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov30_02183e50
|
|
add r0, r4, #0x48
|
|
add r3, sp, #0xc
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
ldr r0, _0217faa0 ; =data_027e0e60
|
|
ldr r2, [sp, #0xc]
|
|
ldr ip, [sp, #0x10]
|
|
ldr r3, [sp, #0x14]
|
|
str r2, [sp]
|
|
ldr r0, [r0]
|
|
add r1, sp, #0
|
|
mov r2, #1
|
|
str ip, [sp, #4]
|
|
str r3, [sp, #8]
|
|
bl func_ov00_02083ee0
|
|
str r0, [sp, #0x10]
|
|
add r0, sp, #0xc
|
|
bl func_ov30_0217f088
|
|
ldr r0, _0217faa4 ; =data_027e0ffc
|
|
add r2, r4, #0x48
|
|
mov r1, #0x51
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
mov r0, r5
|
|
mov r1, #3
|
|
bl func_ov30_0217f564
|
|
add sp, sp, #0xc8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217f924:
|
|
mov r0, r5
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #0x1e
|
|
addle sp, sp, #0xc8
|
|
ldmleia sp!, {r3, r4, r5, pc}
|
|
mov r0, r5
|
|
mov r1, #4
|
|
bl func_ov30_0217f564
|
|
add sp, sp, #0xc8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217f94c:
|
|
mov r0, r5
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #0x46
|
|
addle sp, sp, #0xc8
|
|
ldmleia sp!, {r3, r4, r5, pc}
|
|
mov r0, r5
|
|
mov r1, #5
|
|
bl func_ov30_0217f564
|
|
add sp, sp, #0xc8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217f974:
|
|
bl func_ov30_02182dc0
|
|
mov r0, r5
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #1
|
|
bne _0217f9ac
|
|
add r0, r4, #0x48
|
|
bl func_ov30_0217d9ac
|
|
ldr r0, _0217faa4 ; =data_027e0ffc
|
|
add r2, r4, #0x48
|
|
mov r1, #0x4f
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
add sp, sp, #0xc8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217f9ac:
|
|
cmp r0, #0x33
|
|
bne _0217f9fc
|
|
mov r0, r4
|
|
mov r1, #1
|
|
bl func_ov30_02183e50
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r5, r0
|
|
mov r1, #8
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r5, #0x10]
|
|
mov r2, #0x1000
|
|
str r2, [r1, #0x10]
|
|
ldr r0, _0217faa8 ; =data_027e10b4
|
|
add r1, r4, #0x48
|
|
ldr r0, [r0]
|
|
bl func_ov30_021840b0
|
|
add sp, sp, #0xc8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217f9fc:
|
|
addle sp, sp, #0xc8
|
|
ldmleia sp!, {r3, r4, r5, pc}
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xc8
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
mov r0, r4
|
|
bl func_ov30_02183e90
|
|
mov r0, r5
|
|
mov r1, #6
|
|
bl func_ov30_0217f564
|
|
add sp, sp, #0xc8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217fa44:
|
|
bl func_ov00_020cc980
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xc8
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
mov r0, r5
|
|
mov r1, #7
|
|
bl func_ov30_0217f564
|
|
add sp, sp, #0xc8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217fa68:
|
|
bl func_ov30_02182dd4
|
|
mov r0, r5
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #0
|
|
addle sp, sp, #0xc8
|
|
ldmleia sp!, {r3, r4, r5, pc}
|
|
mov r0, r4
|
|
bl func_ov30_02183e90
|
|
mov r0, r5
|
|
mov r1, #6
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
_0217fa98:
|
|
add sp, sp, #0xc8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217f77c
|
|
_0217faa0: .word data_027e0e60
|
|
_0217faa4: .word data_027e0ffc
|
|
_0217faa8: .word data_027e10b4
|
|
|
|
.global func_ov30_0217faac
|
|
arm_func_start func_ov30_0217faac
|
|
func_ov30_0217faac: ; 0x0217faac
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov r5, r1
|
|
mov r6, r0
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
cmp r5, #0
|
|
beq _0217fadc
|
|
cmp r5, #1
|
|
beq _0217fb08
|
|
cmp r5, #2
|
|
beq _0217fb48
|
|
b _0217fb4c
|
|
_0217fadc:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #0xb
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
b _0217fb4c
|
|
_0217fb08:
|
|
ldr r2, [r4, #0x14]
|
|
mov r1, #0
|
|
str r2, [r4, #0x48]
|
|
ldr r2, [r4, #0x18]
|
|
str r2, [r4, #0x4c]
|
|
ldr r2, [r4, #0x1c]
|
|
str r2, [r4, #0x50]
|
|
strh r1, [r4, #0x78]
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
b _0217fb4c
|
|
_0217fb48:
|
|
bl func_ov30_02182da8
|
|
_0217fb4c:
|
|
mov r0, r6
|
|
str r5, [r6, #8]
|
|
bl func_ov00_020c50fc
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
arm_func_end func_ov30_0217faac
|
|
|
|
.global func_ov30_0217fb5c
|
|
arm_func_start func_ov30_0217fb5c
|
|
func_ov30_0217fb5c: ; 0x0217fb5c
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c5118
|
|
mov r1, #0
|
|
strb r1, [r0, #0xab6]
|
|
mov r0, r4
|
|
bl func_ov30_0217faac
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217fb5c
|
|
|
|
.global func_ov30_0217fb7c
|
|
arm_func_start func_ov30_0217fb7c
|
|
func_ov30_0217fb7c: ; 0x0217fb7c
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
sub sp, sp, #0x18
|
|
mov r5, r0
|
|
bl func_ov00_020c5118
|
|
ldr r1, [r5, #8]
|
|
mov r4, r0
|
|
cmp r1, #0
|
|
beq _0217fbb4
|
|
cmp r1, #1
|
|
beq _0217fc58
|
|
cmp r1, #2
|
|
beq _0217fc80
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217fbb4:
|
|
bl func_ov30_02182dc0
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x18
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov30_02183e50
|
|
add r0, r4, #0x48
|
|
add r3, sp, #0xc
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
ldr r0, _0217fd3c ; =data_027e0e60
|
|
ldr r2, [sp, #0xc]
|
|
ldr ip, [sp, #0x10]
|
|
ldr r3, [sp, #0x14]
|
|
str r2, [sp]
|
|
ldr r0, [r0]
|
|
add r1, sp, #0
|
|
mov r2, #1
|
|
str ip, [sp, #4]
|
|
str r3, [sp, #8]
|
|
bl func_ov00_02083ee0
|
|
str r0, [sp, #0x10]
|
|
add r0, sp, #0xc
|
|
bl func_ov30_0217f088
|
|
ldr r0, _0217fd40 ; =data_027e0ffc
|
|
add r2, r4, #0x48
|
|
mov r1, #0x51
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov30_0217faac
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217fc58:
|
|
mov r0, r5
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #0
|
|
addle sp, sp, #0x18
|
|
ldmleia sp!, {r3, r4, r5, pc}
|
|
mov r0, r5
|
|
mov r1, #2
|
|
bl func_ov30_0217faac
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217fc80:
|
|
bl func_ov30_02182dc0
|
|
mov r0, r5
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #1
|
|
bne _0217fcb8
|
|
add r0, r4, #0x48
|
|
bl func_ov30_0217d9ac
|
|
ldr r0, _0217fd40 ; =data_027e0ffc
|
|
add r2, r4, #0x48
|
|
mov r1, #0x4f
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217fcb8:
|
|
cmp r0, #0x33
|
|
bne _0217fcf8
|
|
mov r0, r4
|
|
mov r1, #1
|
|
bl func_ov30_02183e50
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #8
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0217fcf8:
|
|
addle sp, sp, #0x18
|
|
ldmleia sp!, {r3, r4, r5, pc}
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x18
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
mov r0, r5
|
|
mov r1, #3
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217fb7c
|
|
_0217fd3c: .word data_027e0e60
|
|
_0217fd40: .word data_027e0ffc
|
|
|
|
.global func_ov30_0217fd44
|
|
arm_func_start func_ov30_0217fd44
|
|
func_ov30_0217fd44: ; 0x0217fd44
|
|
stmdb sp!, {r3, lr}
|
|
bl func_ov00_020c510c
|
|
cmp r0, #0x3c
|
|
movgt r0, #1
|
|
movle r0, #0
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end func_ov30_0217fd44
|
|
|
|
.global func_ov30_0217fd5c
|
|
arm_func_start func_ov30_0217fd5c
|
|
func_ov30_0217fd5c: ; 0x0217fd5c
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
|
|
sub sp, sp, #4
|
|
mov r6, r0
|
|
mov r5, r1
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
cmp r5, #3
|
|
add r7, r4, #0xa8
|
|
addls pc, pc, r5, lsl #2
|
|
b _0217fe14
|
|
_0217fd84: ; jump table
|
|
b _0217fd94 ; case 0
|
|
b _0217fddc ; case 1
|
|
b _0217fde4 ; case 2
|
|
b _0217fdec ; case 3
|
|
_0217fd94:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r8, r0
|
|
mov r1, #1
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r8, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182eb4
|
|
add r0, r7, #0x800
|
|
add r1, r6, #0xc
|
|
str r1, [sp]
|
|
add r1, r4, #0x48
|
|
ldr r2, [r4, #0x98]
|
|
ldrh r3, [r4, #0x9c]
|
|
bl func_ov30_0217c020
|
|
b _0217fe14
|
|
_0217fddc:
|
|
bl func_ov30_02182eb4
|
|
b _0217fe14
|
|
_0217fde4:
|
|
bl func_ov30_02182da8
|
|
b _0217fe14
|
|
_0217fdec:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #2
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
_0217fe14:
|
|
mov r0, r6
|
|
str r5, [r6, #8]
|
|
bl func_ov00_020c50fc
|
|
add sp, sp, #4
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
|
|
arm_func_end func_ov30_0217fd5c
|
|
|
|
.global func_ov30_0217fe28
|
|
arm_func_start func_ov30_0217fe28
|
|
func_ov30_0217fe28: ; 0x0217fe28
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c5118
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov30_0217fd5c
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0217fe28
|
|
|
|
.global func_ov30_0217fe44
|
|
arm_func_start func_ov30_0217fe44
|
|
func_ov30_0217fe44: ; 0x0217fe44
|
|
stmdb sp!, {r3, r4, r5, r6, lr}
|
|
sub sp, sp, #0xc
|
|
mov r6, r0
|
|
bl func_ov00_020c5118
|
|
ldr r1, [r6, #8]
|
|
mov r5, r0
|
|
cmp r1, #3
|
|
add r4, r5, #0xa8
|
|
beq _0217fe88
|
|
bl func_ov30_021824cc
|
|
cmp r0, #0
|
|
beq _0217fe88
|
|
mov r0, r6
|
|
mov r1, #3
|
|
bl func_ov30_0217fd5c
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217fe88:
|
|
ldr r0, [r6, #8]
|
|
cmp r0, #3
|
|
addls pc, pc, r0, lsl #2
|
|
b _0218009c
|
|
_0217fe98: ; jump table
|
|
b _0217fea8 ; case 0
|
|
b _0217ffa4 ; case 1
|
|
b _02180028 ; case 2
|
|
b _02180064 ; case 3
|
|
_0217fea8:
|
|
mov r0, r5
|
|
add r1, r6, #0xc
|
|
mov r2, #2
|
|
bl func_ov30_02182ecc
|
|
mov r0, r5
|
|
add r1, r6, #0xc
|
|
bl func_ov30_02182c68
|
|
cmp r0, #0
|
|
bne _0217fef8
|
|
mov r0, r6
|
|
bl func_ov00_020c510c
|
|
ldr r3, _021800a4 ; =0x88888889
|
|
mov r1, r0, lsr #0x1f
|
|
smull r2, ip, r3, r0
|
|
add ip, r0, ip
|
|
add ip, r1, ip, asr #4
|
|
mov r3, #0x1e
|
|
smull r1, r2, r3, ip
|
|
subs ip, r0, r1
|
|
bne _0217ff38
|
|
_0217fef8:
|
|
mov r0, r5
|
|
bl func_ov30_02182c58
|
|
cmp r0, #0
|
|
bne _0217ff1c
|
|
mov r0, r6
|
|
mov r1, #1
|
|
bl func_ov30_0217fd5c
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217ff1c:
|
|
add r0, r6, #0xc
|
|
str r0, [sp]
|
|
ldrh r3, [r5, #0x9c]
|
|
ldr r2, [r5, #0x98]
|
|
add r0, r4, #0x800
|
|
add r1, r5, #0x48
|
|
bl func_ov30_0217c020
|
|
_0217ff38:
|
|
mov r0, r5
|
|
mov r1, #2
|
|
mov r2, #0
|
|
bl func_ov30_0217d09c
|
|
cmp r0, #0
|
|
beq _0217ff80
|
|
mov r0, r6
|
|
bl func_ov00_020c510c
|
|
cmp r0, #0xf
|
|
blt _0217ff80
|
|
mov r3, #0
|
|
add r2, sp, #8
|
|
mov r0, r6
|
|
mov r1, #7
|
|
str r3, [sp, #8]
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217ff80:
|
|
ldr r0, [r4, #0xa00]
|
|
cmp r0, #1
|
|
addgt sp, sp, #0xc
|
|
ldmgtia sp!, {r3, r4, r5, r6, pc}
|
|
mov r0, r6
|
|
mov r1, #1
|
|
bl func_ov30_0217fd5c
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217ffa4:
|
|
mov r0, r5
|
|
add r1, r5, #0x14
|
|
mov r2, #2
|
|
bl func_ov30_02182ecc
|
|
mov r0, r5
|
|
mov r1, #2
|
|
mov r2, #0
|
|
bl func_ov30_0217d09c
|
|
cmp r0, #0
|
|
beq _0217fffc
|
|
mov r0, r6
|
|
bl func_ov00_020c510c
|
|
cmp r0, #0xf
|
|
blt _0217fffc
|
|
mov r3, #0
|
|
add r2, sp, #4
|
|
mov r0, r6
|
|
mov r1, #7
|
|
str r3, [sp, #4]
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_0217fffc:
|
|
mov r0, r5
|
|
add r1, r5, #0x14
|
|
bl func_ov30_02182c68
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xc
|
|
ldmeqia sp!, {r3, r4, r5, r6, pc}
|
|
mov r0, r6
|
|
mov r1, #2
|
|
bl func_ov30_0217fd5c
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_02180028:
|
|
ldrsh r1, [r5, #0x12]
|
|
mov r0, r5
|
|
bl func_ov30_02182e34
|
|
ldrsh r1, [r5, #0x78]
|
|
ldrsh r0, [r5, #0x12]
|
|
cmp r1, r0
|
|
addne sp, sp, #0xc
|
|
ldmneia sp!, {r3, r4, r5, r6, pc}
|
|
mov r2, #0
|
|
mov r0, r6
|
|
mov r1, #4
|
|
str r2, [r4, #0xa00]
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
_02180064:
|
|
mov r0, r5
|
|
bl func_ov30_02182dc0
|
|
mov r0, r5
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xc
|
|
ldmeqia sp!, {r3, r4, r5, r6, pc}
|
|
mov r0, r6
|
|
mov r1, #0
|
|
bl func_ov30_0217fd5c
|
|
_0218009c:
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0217fe44
|
|
_021800a4: .word 0x88888889
|
|
|
|
.global func_ov30_021800a8
|
|
arm_func_start func_ov30_021800a8
|
|
func_ov30_021800a8: ; 0x021800a8
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov r5, r1
|
|
mov r6, r0
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
cmp r5, #6
|
|
addls pc, pc, r5, lsl #2
|
|
b _021801dc
|
|
_021800c8: ; jump table
|
|
b _021801dc ; case 0
|
|
b _021800e4 ; case 1
|
|
b _02180108 ; case 2
|
|
b _02180134 ; case 3
|
|
b _02180158 ; case 4
|
|
b _02180198 ; case 5
|
|
b _021801bc ; case 6
|
|
_021800e4:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
b _021801dc
|
|
_02180108:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #1
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182eb4
|
|
b _021801dc
|
|
_02180134:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #0xa
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
b _021801dc
|
|
_02180158:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #1
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182eb4
|
|
mov r0, r4
|
|
bl func_ov00_020c29d8
|
|
ldrsh r0, [r4, #0x78]
|
|
sub r0, r0, #0x8000
|
|
strh r0, [r4, #0x78]
|
|
b _021801dc
|
|
_02180198:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #5
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
b _021801dc
|
|
_021801bc:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
_021801dc:
|
|
mov r0, r6
|
|
str r5, [r6, #8]
|
|
bl func_ov00_020c50fc
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
arm_func_end func_ov30_021800a8
|
|
|
|
.global func_ov30_021801ec
|
|
arm_func_start func_ov30_021801ec
|
|
func_ov30_021801ec: ; 0x021801ec
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c5118
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov30_021800a8
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_021801ec
|
|
|
|
.global func_ov30_02180208
|
|
arm_func_start func_ov30_02180208
|
|
func_ov30_02180208: ; 0x02180208
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
sub sp, sp, #0x18
|
|
mov r5, r0
|
|
bl func_ov00_020c5118
|
|
ldr r1, [r5, #8]
|
|
mov r4, r0
|
|
cmp r1, #6
|
|
addls pc, pc, r1, lsl #2
|
|
b _021803f4
|
|
_0218022c: ; jump table
|
|
b _02180248 ; case 0
|
|
b _0218027c ; case 1
|
|
b _021802c8 ; case 2
|
|
b _021802fc ; case 3
|
|
b _02180330 ; case 4
|
|
b _021803c8 ; case 5
|
|
b _021803f4 ; case 6
|
|
_02180248:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x18
|
|
ldmeqia sp!, {r4, r5, r6, pc}
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov30_021800a8
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_0218027c:
|
|
mov r0, r5
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #0x28
|
|
addle sp, sp, #0x18
|
|
ldmleia sp!, {r4, r5, r6, pc}
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x18
|
|
ldmeqia sp!, {r4, r5, r6, pc}
|
|
mov r0, r5
|
|
mov r1, #2
|
|
bl func_ov30_021800a8
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_021802c8:
|
|
ldr r1, _021803fc ; =data_027e0f94
|
|
mov r2, #1
|
|
bl func_ov30_02182ecc
|
|
mov r0, r4
|
|
bl func_ov00_020c28ec
|
|
cmp r0, #0x1800
|
|
addge sp, sp, #0x18
|
|
ldmgeia sp!, {r4, r5, r6, pc}
|
|
mov r0, r5
|
|
mov r1, #3
|
|
bl func_ov30_021800a8
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_021802fc:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x18
|
|
ldmeqia sp!, {r4, r5, r6, pc}
|
|
mov r0, r5
|
|
mov r1, #4
|
|
bl func_ov30_021800a8
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_02180330:
|
|
bl func_ov00_020c2974
|
|
sub r0, r0, #0x8000
|
|
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
|
|
mov lr, #0
|
|
ldr r1, _02180400 ; =data_02050f54
|
|
mov r2, r2, lsl #0x1
|
|
ldrsh r6, [r1, r2]
|
|
mov r0, r0, lsl #0x1
|
|
ldrsh ip, [r1, r0]
|
|
add r1, sp, #0
|
|
add r3, sp, #0xc
|
|
add r2, r4, #0x48
|
|
mov r0, #0x1000
|
|
str r6, [sp]
|
|
str lr, [sp, #4]
|
|
str ip, [sp, #8]
|
|
bl func_01ff9e64
|
|
add r1, sp, #0xc
|
|
mov r0, r4
|
|
mov r2, #0
|
|
bl func_ov30_02182ecc
|
|
ldr r1, _02180404 ; =0x0000019a
|
|
mov r0, r4
|
|
bl func_ov00_020c29ec
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x18
|
|
ldmeqia sp!, {r4, r5, r6, pc}
|
|
mov r0, r5
|
|
mov r1, #5
|
|
bl func_ov30_021800a8
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_021803c8:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x18
|
|
ldmeqia sp!, {r4, r5, r6, pc}
|
|
mov r0, r5
|
|
mov r1, #6
|
|
bl func_ov30_021800a8
|
|
_021803f4:
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02180208
|
|
_021803fc: .word data_027e0f94
|
|
_02180400: .word data_02050f54
|
|
_02180404: .word 0x0000019a
|
|
|
|
.global func_ov30_02180408
|
|
arm_func_start func_ov30_02180408
|
|
func_ov30_02180408: ; 0x02180408
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
mov r5, r1
|
|
mov r6, r0
|
|
bl func_ov00_020c5118
|
|
cmp r5, #0
|
|
beq _0218042c
|
|
cmp r5, #1
|
|
beq _02180450
|
|
b _02180458
|
|
_0218042c:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #0xc
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
b _02180458
|
|
_02180450:
|
|
add r0, r0, #0x430
|
|
bl func_ov30_0217cb60
|
|
_02180458:
|
|
mov r0, r6
|
|
str r5, [r6, #8]
|
|
bl func_ov00_020c50fc
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
arm_func_end func_ov30_02180408
|
|
|
|
.global func_ov30_02180468
|
|
arm_func_start func_ov30_02180468
|
|
func_ov30_02180468: ; 0x02180468
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c5118
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov30_02180408
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_02180468
|
|
|
|
.global func_ov30_02180484
|
|
arm_func_start func_ov30_02180484
|
|
func_ov30_02180484: ; 0x02180484
|
|
stmdb sp!, {r4, r5, lr}
|
|
sub sp, sp, #0xc
|
|
mov r5, r0
|
|
bl func_ov00_020c5118
|
|
ldr r1, [r5, #8]
|
|
mov r4, r0
|
|
cmp r1, #0
|
|
beq _021804b4
|
|
cmp r1, #1
|
|
beq _021804f4
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, pc}
|
|
_021804b4:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xc
|
|
ldmeqia sp!, {r4, r5, pc}
|
|
ldr r0, [r4, #4]
|
|
add r1, r4, #0x48
|
|
bl func_ov00_020c87f8
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov30_02180408
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, pc}
|
|
_021804f4:
|
|
add r0, r4, #0x430
|
|
bl func_ov30_0217cb8c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xc
|
|
ldmeqia sp!, {r4, r5, pc}
|
|
add r0, r4, #0x48
|
|
add r3, sp, #0
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
ldr r0, [sp, #4]
|
|
mov r1, r3
|
|
add r0, r0, #0xcd
|
|
add r2, r0, #0x400
|
|
mov r0, #2
|
|
str r2, [sp, #4]
|
|
bl func_ov00_020c87a8
|
|
mov r0, r4
|
|
bl func_ov00_020c3180
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, pc}
|
|
arm_func_end func_ov30_02180484
|
|
|
|
.global func_ov30_02180544
|
|
arm_func_start func_ov30_02180544
|
|
func_ov30_02180544: ; 0x02180544
|
|
bx lr
|
|
arm_func_end func_ov30_02180544
|
|
|
|
.global func_ov30_02180548
|
|
arm_func_start func_ov30_02180548
|
|
func_ov30_02180548: ; 0x02180548
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0218059c ; =data_027e0d38
|
|
ldr r0, [r0]
|
|
add r0, r0, #0xc
|
|
bl func_ov00_020a5e9c
|
|
cmp r0, #0x25
|
|
bne _02180594
|
|
ldr r0, _021805a0 ; =data_027e0e60
|
|
ldr r0, [r0]
|
|
bl func_ov00_02082d08
|
|
cmp r0, #7
|
|
bne _02180594
|
|
ldr r0, _021805a4 ; =data_027e0f74
|
|
mov r1, #0x14
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097760
|
|
cmp r0, #0
|
|
movne r0, #0
|
|
ldmneia sp!, {r3, pc}
|
|
_02180594:
|
|
ldr r0, _021805a8 ; =data_ov30_021887ac
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02180548
|
|
_0218059c: .word data_027e0d38
|
|
_021805a0: .word data_027e0e60
|
|
_021805a4: .word data_027e0f74
|
|
_021805a8: .word data_ov30_021887ac
|
|
|
|
.global func_ov30_021805ac
|
|
arm_func_start func_ov30_021805ac
|
|
func_ov30_021805ac: ; 0x021805ac
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _02180600 ; =data_027e0d38
|
|
ldr r0, [r0]
|
|
add r0, r0, #0xc
|
|
bl func_ov00_020a5e9c
|
|
cmp r0, #0x25
|
|
bne _021805f8
|
|
ldr r0, _02180604 ; =data_027e0e60
|
|
ldr r0, [r0]
|
|
bl func_ov00_02082d08
|
|
cmp r0, #7
|
|
bne _021805f8
|
|
ldr r0, _02180608 ; =data_027e0f74
|
|
mov r1, #0x14
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097760
|
|
cmp r0, #0
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
_021805f8:
|
|
ldr r0, _0218060c ; =data_ov30_021887b4
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021805ac
|
|
_02180600: .word data_027e0d38
|
|
_02180604: .word data_027e0e60
|
|
_02180608: .word data_027e0f74
|
|
_0218060c: .word data_ov30_021887b4
|
|
|
|
.global func_ov30_02180610
|
|
arm_func_start func_ov30_02180610
|
|
func_ov30_02180610: ; 0x02180610
|
|
ldr r0, _02180618 ; =data_ov30_021887bc
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02180610
|
|
_02180618: .word data_ov30_021887bc
|
|
|
|
.global func_ov30_0218061c
|
|
arm_func_start func_ov30_0218061c
|
|
func_ov30_0218061c: ; 0x0218061c
|
|
ldr r0, _02180624 ; =data_ov30_021887c4
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0218061c
|
|
_02180624: .word data_ov30_021887c4
|
|
|
|
.global func_ov30_02180628
|
|
arm_func_start func_ov30_02180628
|
|
func_ov30_02180628: ; 0x02180628
|
|
stmdb sp!, {r4, lr}
|
|
ldr r1, _02180660 ; =data_027e0fe0
|
|
ldr r0, _02180664 ; =0x00000ab8
|
|
ldr r1, [r1]
|
|
mov r2, #4
|
|
ldr r1, [r1]
|
|
bl func_0202e9dc
|
|
movs r4, r0
|
|
beq _02180658
|
|
blx func_ov30_021808d4
|
|
ldr r0, _02180668 ; =data_ov30_02189054
|
|
str r0, [r4]
|
|
_02180658:
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02180628
|
|
_02180660: .word data_027e0fe0
|
|
_02180664: .word 0x00000ab8
|
|
_02180668: .word data_ov30_02189054
|
|
|
|
.global func_ov30_0218066c
|
|
arm_func_start func_ov30_0218066c
|
|
func_ov30_0218066c: ; 0x0218066c
|
|
stmdb sp!, {r4, lr}
|
|
ldr r1, _021806a4 ; =data_027e0fe0
|
|
ldr r0, _021806a8 ; =0x00000ab8
|
|
ldr r1, [r1]
|
|
mov r2, #4
|
|
ldr r1, [r1]
|
|
bl func_0202e9dc
|
|
movs r4, r0
|
|
beq _0218069c
|
|
blx func_ov30_021808d4
|
|
ldr r0, _021806ac ; =data_ov30_02188f44
|
|
str r0, [r4]
|
|
_0218069c:
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0218066c
|
|
_021806a4: .word data_027e0fe0
|
|
_021806a8: .word 0x00000ab8
|
|
_021806ac: .word data_ov30_02188f44
|
|
|
|
.global func_ov30_021806b0
|
|
arm_func_start func_ov30_021806b0
|
|
func_ov30_021806b0: ; 0x021806b0
|
|
stmdb sp!, {r4, lr}
|
|
ldr r1, _021806e8 ; =data_027e0fe0
|
|
ldr r0, _021806ec ; =0x00000ab8
|
|
ldr r1, [r1]
|
|
mov r2, #4
|
|
ldr r1, [r1]
|
|
bl func_0202e9dc
|
|
movs r4, r0
|
|
beq _021806e0
|
|
blx func_ov30_021808d4
|
|
ldr r0, _021806f0 ; =data_ov30_02188d24
|
|
str r0, [r4]
|
|
_021806e0:
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021806b0
|
|
_021806e8: .word data_027e0fe0
|
|
_021806ec: .word 0x00000ab8
|
|
_021806f0: .word data_ov30_02188d24
|
|
|
|
.global func_ov30_021806f4
|
|
arm_func_start func_ov30_021806f4
|
|
func_ov30_021806f4: ; 0x021806f4
|
|
stmdb sp!, {r4, lr}
|
|
ldr r1, _0218072c ; =data_027e0fe0
|
|
ldr r0, _02180730 ; =0x00000ab8
|
|
ldr r1, [r1]
|
|
mov r2, #4
|
|
ldr r1, [r1]
|
|
bl func_0202e9dc
|
|
movs r4, r0
|
|
beq _02180724
|
|
blx func_ov30_021808d4
|
|
ldr r0, _02180734 ; =data_ov30_02188e34
|
|
str r0, [r4]
|
|
_02180724:
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021806f4
|
|
_0218072c: .word data_027e0fe0
|
|
_02180730: .word 0x00000ab8
|
|
_02180734: .word data_ov30_02188e34
|
|
|
|
.global func_ov30_02180738
|
|
arm_func_start func_ov30_02180738
|
|
func_ov30_02180738: ; 0x02180738
|
|
ldr r1, _02180744 ; =data_ov30_02188b14
|
|
str r1, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02180738
|
|
_02180744: .word data_ov30_02188b14
|
|
|
|
.global func_ov30_02180748
|
|
arm_func_start func_ov30_02180748
|
|
func_ov30_02180748: ; 0x02180748
|
|
ldr r1, _02180754 ; =data_ov30_02188b28
|
|
str r1, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02180748
|
|
_02180754: .word data_ov30_02188b28
|
|
|
|
.global func_ov30_02180758
|
|
arm_func_start func_ov30_02180758
|
|
func_ov30_02180758: ; 0x02180758
|
|
ldr r1, _02180764 ; =data_ov30_02188b3c
|
|
str r1, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02180758
|
|
_02180764: .word data_ov30_02188b3c
|
|
|
|
.global func_ov30_02180768
|
|
arm_func_start func_ov30_02180768
|
|
func_ov30_02180768: ; 0x02180768
|
|
ldr r1, _02180774 ; =data_ov30_02188b50
|
|
str r1, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02180768
|
|
_02180774: .word data_ov30_02188b50
|
|
|
|
.global func_ov30_02180778
|
|
arm_func_start func_ov30_02180778
|
|
func_ov30_02180778: ; 0x02180778
|
|
ldr r1, _02180784 ; =data_ov30_02188b64
|
|
str r1, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02180778
|
|
_02180784: .word data_ov30_02188b64
|
|
|
|
.global func_ov30_02180788
|
|
arm_func_start func_ov30_02180788
|
|
func_ov30_02180788: ; 0x02180788
|
|
ldr r1, _02180794 ; =data_ov30_02188b78
|
|
str r1, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02180788
|
|
_02180794: .word data_ov30_02188b78
|
|
|
|
.global func_ov30_02180798
|
|
arm_func_start func_ov30_02180798
|
|
func_ov30_02180798: ; 0x02180798
|
|
ldr r1, _021807a4 ; =data_ov30_02188bb4
|
|
str r1, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02180798
|
|
_021807a4: .word data_ov30_02188bb4
|
|
|
|
.global func_ov30_021807a8
|
|
arm_func_start func_ov30_021807a8
|
|
func_ov30_021807a8: ; 0x021807a8
|
|
ldr r1, _021807b4 ; =data_ov30_02188b8c
|
|
str r1, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021807a8
|
|
_021807b4: .word data_ov30_02188b8c
|
|
|
|
.global func_ov30_021807b8
|
|
arm_func_start func_ov30_021807b8
|
|
func_ov30_021807b8: ; 0x021807b8
|
|
ldr r1, _021807c4 ; =data_ov30_02188ba0
|
|
str r1, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021807b8
|
|
_021807c4: .word data_ov30_02188ba0
|
|
|
|
.global func_ov30_021807c8
|
|
arm_func_start func_ov30_021807c8
|
|
func_ov30_021807c8: ; 0x021807c8
|
|
ldr r1, _021807d4 ; =data_ov30_02188bc8
|
|
str r1, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021807c8
|
|
_021807d4: .word data_ov30_02188bc8
|
|
|
|
.global func_ov30_021807d8
|
|
arm_func_start func_ov30_021807d8
|
|
func_ov30_021807d8: ; 0x021807d8
|
|
ldr r1, _021807e4 ; =data_ov30_02188bdc
|
|
str r1, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021807d8
|
|
_021807e4: .word data_ov30_02188bdc
|
|
|
|
.global func_ov30_021807e8
|
|
arm_func_start func_ov30_021807e8
|
|
func_ov30_021807e8: ; 0x021807e8
|
|
ldr r1, _02180828 ; =data_ov30_02189434
|
|
add r3, r0, #0x10
|
|
str r1, [r0]
|
|
add r1, r0, #0x40
|
|
mov r2, #0
|
|
_021807fc:
|
|
strh r2, [r3]
|
|
strh r2, [r3, #2]
|
|
add r3, r3, #4
|
|
cmp r3, r1
|
|
blo _021807fc
|
|
str r2, [r0, #0x40]
|
|
str r2, [r0, #0x44]
|
|
mvn r1, #0
|
|
str r1, [r0, #0x48]
|
|
str r1, [r0, #0x4c]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021807e8
|
|
_02180828: .word data_ov30_02189434
|
|
|
|
.global func_ov30_0218082c
|
|
arm_func_start func_ov30_0218082c
|
|
func_ov30_0218082c: ; 0x0218082c
|
|
ldr r2, _0218085c ; =data_ov30_0218946c
|
|
mvn r1, #0
|
|
str r2, [r0]
|
|
strb r1, [r0, #0xc]
|
|
strb r1, [r0, #0xd]
|
|
strb r1, [r0, #0xe]
|
|
strb r1, [r0, #0xf]
|
|
strb r1, [r0, #0x10]
|
|
strb r1, [r0, #0x11]
|
|
strb r1, [r0, #0x12]
|
|
strb r1, [r0, #0x13]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0218082c
|
|
_0218085c: .word data_ov30_0218946c
|
|
|
|
.global func_ov30_02180860
|
|
arm_func_start func_ov30_02180860
|
|
func_ov30_02180860: ; 0x02180860
|
|
ldr r2, _02180880 ; =data_ov30_02189448
|
|
mvn r1, #0
|
|
str r2, [r0]
|
|
strb r1, [r0, #0xc]
|
|
strb r1, [r0, #0xd]
|
|
strb r1, [r0, #0xe]
|
|
strb r1, [r0, #0xf]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02180860
|
|
_02180880: .word data_ov30_02189448
|
|
|
|
.global func_ov30_02180884
|
|
arm_func_start func_ov30_02180884
|
|
func_ov30_02180884: ; 0x02180884
|
|
ldr r1, _02180890 ; =data_ov30_02188bf0
|
|
str r1, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02180884
|
|
_02180890: .word data_ov30_02188bf0
|
|
|
|
.global func_ov30_02180894
|
|
arm_func_start func_ov30_02180894
|
|
func_ov30_02180894: ; 0x02180894
|
|
ldr r1, _021808a0 ; =data_ov30_02188c04
|
|
str r1, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02180894
|
|
_021808a0: .word data_ov30_02188c04
|
|
|
|
.global func_ov30_021808a4
|
|
arm_func_start func_ov30_021808a4
|
|
func_ov30_021808a4: ; 0x021808a4
|
|
ldr r1, _021808b0 ; =data_ov30_02188c18
|
|
str r1, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021808a4
|
|
_021808b0: .word data_ov30_02188c18
|
|
|
|
.global func_ov30_021808b4
|
|
arm_func_start func_ov30_021808b4
|
|
func_ov30_021808b4: ; 0x021808b4
|
|
ldr r1, _021808c0 ; =data_ov30_02188c2c
|
|
str r1, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021808b4
|
|
_021808c0: .word data_ov30_02188c2c
|
|
|
|
.global func_ov30_021808c4
|
|
arm_func_start func_ov30_021808c4
|
|
func_ov30_021808c4: ; 0x021808c4
|
|
ldr r1, _021808d0 ; =data_ov30_02188c40
|
|
str r1, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021808c4
|
|
_021808d0: .word data_ov30_02188c40
|
|
|
|
.global func_ov30_021808d4
|
|
thumb_func_start func_ov30_021808d4
|
|
func_ov30_021808d4: ; 0x021808d4
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
blx func_ov00_020ca668
|
|
ldr r0, _02180bbc ; =data_ov30_02189164
|
|
mov r1, #0
|
|
str r0, [r4]
|
|
mov r0, #0x87
|
|
lsl r0, r0, #2
|
|
strb r1, [r4, r0]
|
|
add r0, r0, #4
|
|
add r0, r4, r0
|
|
add r1, r4, #0
|
|
blx func_ov00_020c5124
|
|
mov r0, #0xad
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
blx func_ov30_021808c4
|
|
mov r0, #0xaf
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
blx func_ov30_021808b4
|
|
mov r0, #0xb2
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
blx func_ov30_021808a4
|
|
mov r0, #0x2e
|
|
lsl r0, r0, #4
|
|
add r0, r4, r0
|
|
blx func_ov30_02180894
|
|
mov r0, #0xba
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
blx func_ov30_02180884
|
|
mov r0, #0xbe
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
blx func_ov30_02180860
|
|
mov r0, #0xc5
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
blx func_ov30_0218082c
|
|
mov r0, #0xcd
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
blx func_ov30_021807e8
|
|
mov r0, #0x3a
|
|
lsl r0, r0, #4
|
|
add r0, r4, r0
|
|
blx func_ov30_021807d8
|
|
mov r0, #0xeb
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
blx func_ov30_021807c8
|
|
mov r0, #0xf1
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
blx func_ov30_021807b8
|
|
mov r0, #0xf3
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
blx func_ov30_021807a8
|
|
mov r0, #0xf5
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
blx func_ov30_02180798
|
|
mov r0, #0xf7
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
blx func_ov30_02180788
|
|
mov r0, #0xfa
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
blx func_ov30_02180778
|
|
mov r0, #0xfd
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
blx func_ov30_02180768
|
|
mov r0, #1
|
|
lsl r0, r0, #0xa
|
|
add r0, r4, r0
|
|
blx func_ov30_02180758
|
|
ldr r0, _02180bc0 ; =0x00000418
|
|
add r0, r4, r0
|
|
blx func_ov30_02180748
|
|
ldr r0, _02180bc4 ; =0x00000424
|
|
add r0, r4, r0
|
|
blx func_ov30_02180738
|
|
mov r2, #0x22
|
|
lsl r2, r2, #4
|
|
add r0, r4, r2
|
|
add r2, #0x94
|
|
ldr r3, _02180bc8 ; =data_ov30_02189368
|
|
mov r1, #0
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r2, #0x22
|
|
lsl r2, r2, #4
|
|
add r0, r4, r2
|
|
add r2, #0x9c
|
|
ldr r3, _02180bcc ; =data_ov30_0218935c
|
|
mov r1, #1
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r2, #0x22
|
|
lsl r2, r2, #4
|
|
add r0, r4, r2
|
|
add r2, #0xa8
|
|
ldr r3, _02180bd0 ; =data_ov30_02189350
|
|
mov r1, #2
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r2, #0x22
|
|
lsl r2, r2, #4
|
|
add r0, r4, r2
|
|
add r2, #0xc0
|
|
ldr r3, _02180bd4 ; =data_ov30_02189344
|
|
mov r1, #3
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r2, #0x22
|
|
lsl r2, r2, #4
|
|
add r0, r4, r2
|
|
add r2, #0xc8
|
|
ldr r3, _02180bd8 ; =data_ov30_0218933c
|
|
mov r1, #4
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r2, #0x22
|
|
lsl r2, r2, #4
|
|
add r0, r4, r2
|
|
add r2, #0xd8
|
|
ldr r3, _02180bdc ; =data_ov30_0218932c
|
|
mov r1, #5
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r2, #0x22
|
|
lsl r2, r2, #4
|
|
add r0, r4, r2
|
|
add r2, #0xf4
|
|
ldr r3, _02180be0 ; =data_ov30_02189320
|
|
mov r1, #6
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r0, #0x22
|
|
mov r2, #0xcd
|
|
lsl r0, r0, #4
|
|
lsl r2, r2, #2
|
|
ldr r3, _02180be4 ; =data_ov30_02189318
|
|
add r0, r4, r0
|
|
mov r1, #7
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r0, #0x22
|
|
mov r2, #0x3a
|
|
lsl r0, r0, #4
|
|
lsl r2, r2, #4
|
|
ldr r3, _02180be8 ; =data_ov30_02189308
|
|
add r0, r4, r0
|
|
mov r1, #8
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r0, #0x22
|
|
mov r2, #0xeb
|
|
lsl r0, r0, #4
|
|
lsl r2, r2, #2
|
|
ldr r3, _02180bec ; =data_ov30_021892f4
|
|
add r0, r4, r0
|
|
mov r1, #9
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r0, #0x22
|
|
mov r2, #0xf1
|
|
lsl r0, r0, #4
|
|
lsl r2, r2, #2
|
|
ldr r3, _02180bf0 ; =data_ov30_021892ec
|
|
add r0, r4, r0
|
|
mov r1, #0xa
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r0, #0x22
|
|
mov r2, #0xf3
|
|
lsl r0, r0, #4
|
|
lsl r2, r2, #2
|
|
ldr r3, _02180bf4 ; =data_ov30_021892e0
|
|
add r0, r4, r0
|
|
mov r1, #0xb
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r0, #0x22
|
|
mov r2, #0xf5
|
|
lsl r0, r0, #4
|
|
lsl r2, r2, #2
|
|
ldr r3, _02180bf8 ; =data_ov30_021892d4
|
|
add r0, r4, r0
|
|
mov r1, #0xc
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r0, #0x22
|
|
mov r2, #0xf7
|
|
lsl r0, r0, #4
|
|
lsl r2, r2, #2
|
|
ldr r3, _02180bfc ; =data_ov30_021892c4
|
|
add r0, r4, r0
|
|
mov r1, #0xd
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r0, #0x22
|
|
mov r2, #0xfa
|
|
lsl r0, r0, #4
|
|
lsl r2, r2, #2
|
|
ldr r3, _02180c00 ; =data_ov30_021892b0
|
|
add r0, r4, r0
|
|
mov r1, #0xe
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r0, #0x22
|
|
mov r2, #0xfd
|
|
lsl r0, r0, #4
|
|
lsl r2, r2, #2
|
|
ldr r3, _02180c04 ; =data_ov30_021892a4
|
|
add r0, r4, r0
|
|
mov r1, #0xf
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r0, #0x22
|
|
mov r1, #0x10
|
|
lsl r0, r0, #4
|
|
lsl r2, r1, #6
|
|
ldr r3, _02180c08 ; =data_ov30_02189298
|
|
add r0, r4, r0
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r0, #0x22
|
|
ldr r2, _02180bc0 ; =0x00000418
|
|
lsl r0, r0, #4
|
|
ldr r3, _02180c0c ; =data_ov30_02189288
|
|
add r0, r4, r0
|
|
mov r1, #0x11
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r0, #0x22
|
|
ldr r2, _02180bc4 ; =0x00000424
|
|
lsl r0, r0, #4
|
|
ldr r3, _02180c10 ; =data_ov30_02189280
|
|
add r0, r4, r0
|
|
mov r1, #0x12
|
|
add r2, r4, r2
|
|
blx func_ov00_020c5150
|
|
mov r0, #0x43
|
|
lsl r0, r0, #4
|
|
add r0, r4, r0
|
|
add r1, r4, #0
|
|
blx func_ov30_0217c704
|
|
mov r0, #0x21
|
|
lsl r0, r0, #6
|
|
mov r1, #0
|
|
add r2, r0, #0
|
|
strh r1, [r4, r0]
|
|
add r2, #9
|
|
strb r1, [r4, r2]
|
|
add r2, r0, #0
|
|
add r2, #0xc
|
|
str r1, [r4, r2]
|
|
add r2, r0, #0
|
|
add r2, #0x10
|
|
str r1, [r4, r2]
|
|
add r2, r0, #0
|
|
add r2, #0x14
|
|
str r1, [r4, r2]
|
|
add r2, r0, #0
|
|
add r2, #0x18
|
|
str r1, [r4, r2]
|
|
add r2, r0, #0
|
|
add r2, #0x1c
|
|
str r1, [r4, r2]
|
|
add r2, r0, #0
|
|
add r2, #0x3c
|
|
strh r1, [r4, r2]
|
|
add r2, r0, #0
|
|
add r2, #0x3e
|
|
strb r1, [r4, r2]
|
|
add r2, r0, #0
|
|
add r2, #0x40
|
|
str r1, [r4, r2]
|
|
sub r2, r1, #1
|
|
add r1, r0, #0
|
|
add r1, #0x44
|
|
str r2, [r4, r1]
|
|
add r1, r0, #0
|
|
add r0, #0x4c
|
|
add r1, #0x48
|
|
add r0, r4, r0
|
|
str r2, [r4, r1]
|
|
blx func_ov00_020c8ce4
|
|
mov r1, #0x8a
|
|
lsl r1, r1, #4
|
|
mov r2, #0
|
|
str r2, [r4, r1]
|
|
add r0, r1, #4
|
|
str r2, [r4, r0]
|
|
add r1, #8
|
|
add r2, r4, r1
|
|
ldr r1, _02180c14 ; =0x00000aa8
|
|
mov r0, #0
|
|
add r1, r4, r1
|
|
_02180b8a:
|
|
strh r0, [r2]
|
|
strh r0, [r2, #2]
|
|
add r2, r2, #4
|
|
cmp r2, r1
|
|
blo _02180b8a
|
|
ldr r1, _02180c18 ; =0x000008a8
|
|
ldr r2, _02180c1c ; =0x00000aac
|
|
add r1, r4, r1
|
|
str r1, [r4, r2]
|
|
mov r3, #0x80
|
|
add r1, r2, #4
|
|
str r3, [r4, r1]
|
|
sub r1, r2, #4
|
|
str r0, [r4, r1]
|
|
add r1, r2, #0
|
|
add r1, #8
|
|
strh r0, [r4, r1]
|
|
add r1, r2, #0
|
|
add r1, #0xa
|
|
strb r0, [r4, r1]
|
|
mov r0, #0x1f
|
|
add r2, #0xb
|
|
strb r0, [r4, r2]
|
|
add r0, r4, #0
|
|
pop {r4, pc}
|
|
.align 2, 0
|
|
thumb_func_end func_ov30_021808d4
|
|
_02180bbc: .word data_ov30_02189164
|
|
_02180bc0: .word 0x00000418
|
|
_02180bc4: .word 0x00000424
|
|
_02180bc8: .word data_ov30_02189368
|
|
_02180bcc: .word data_ov30_0218935c
|
|
_02180bd0: .word data_ov30_02189350
|
|
_02180bd4: .word data_ov30_02189344
|
|
_02180bd8: .word data_ov30_0218933c
|
|
_02180bdc: .word data_ov30_0218932c
|
|
_02180be0: .word data_ov30_02189320
|
|
_02180be4: .word data_ov30_02189318
|
|
_02180be8: .word data_ov30_02189308
|
|
_02180bec: .word data_ov30_021892f4
|
|
_02180bf0: .word data_ov30_021892ec
|
|
_02180bf4: .word data_ov30_021892e0
|
|
_02180bf8: .word data_ov30_021892d4
|
|
_02180bfc: .word data_ov30_021892c4
|
|
_02180c00: .word data_ov30_021892b0
|
|
_02180c04: .word data_ov30_021892a4
|
|
_02180c08: .word data_ov30_02189298
|
|
_02180c0c: .word data_ov30_02189288
|
|
_02180c10: .word data_ov30_02189280
|
|
_02180c14: .word 0x00000aa8
|
|
_02180c18: .word 0x000008a8
|
|
_02180c1c: .word 0x00000aac
|
|
|
|
.global func_ov30_02180c20
|
|
thumb_func_start func_ov30_02180c20
|
|
func_ov30_02180c20: ; 0x02180c20
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, _02180c8c ; =data_ov30_02189164
|
|
add r1, r4, #0
|
|
str r0, [r4]
|
|
ldr r0, _02180c90 ; =data_027e10b4
|
|
ldr r0, [r0]
|
|
bl func_ov30_02184368
|
|
ldr r0, _02180c94 ; =0x000007bc
|
|
add r0, r4, r0
|
|
bl func_ov00_020a9b6c
|
|
mov r0, #0x76
|
|
lsl r0, r0, #4
|
|
add r0, r4, r0
|
|
bl func_ov00_020a95a4
|
|
ldr r0, _02180c98 ; =0x00000738
|
|
add r0, r4, r0
|
|
blx func_ov00_020b7d74
|
|
ldr r0, _02180c9c ; =0x00000734
|
|
add r0, r4, r0
|
|
blx func_ov00_020b7d74
|
|
ldr r0, _02180ca0 ; =0x0000050c
|
|
add r0, r4, r0
|
|
bl func_ov00_020a9b6c
|
|
mov r0, #0x45
|
|
lsl r0, r0, #4
|
|
add r0, r4, r0
|
|
bl func_ov00_020a95ec
|
|
mov r0, #0x76
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
blx func_ov00_02081f4c
|
|
mov r0, #0x72
|
|
lsl r0, r0, #2
|
|
ldr r3, _02180ca4 ; =func_ov00_020b7d74
|
|
add r0, r4, r0
|
|
mov r1, #2
|
|
mov r2, #4
|
|
blx func_0204f754
|
|
add r0, r4, #0
|
|
blx func_ov00_020c1730
|
|
add r0, r4, #0
|
|
pop {r4, pc}
|
|
nop
|
|
thumb_func_end func_ov30_02180c20
|
|
_02180c8c: .word data_ov30_02189164
|
|
_02180c90: .word data_027e10b4
|
|
_02180c94: .word 0x000007bc
|
|
_02180c98: .word 0x00000738
|
|
_02180c9c: .word 0x00000734
|
|
_02180ca0: .word 0x0000050c
|
|
_02180ca4: .word func_ov00_020b7d74
|
|
|
|
.global func_ov30_02180ca8
|
|
thumb_func_start func_ov30_02180ca8
|
|
func_ov30_02180ca8: ; 0x02180ca8
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, _02180d18 ; =data_ov30_02189164
|
|
add r1, r4, #0
|
|
str r0, [r4]
|
|
ldr r0, _02180d1c ; =data_027e10b4
|
|
ldr r0, [r0]
|
|
bl func_ov30_02184368
|
|
ldr r0, _02180d20 ; =0x000007bc
|
|
add r0, r4, r0
|
|
bl func_ov00_020a9b6c
|
|
mov r0, #0x76
|
|
lsl r0, r0, #4
|
|
add r0, r4, r0
|
|
bl func_ov00_020a95a4
|
|
ldr r0, _02180d24 ; =0x00000738
|
|
add r0, r4, r0
|
|
blx func_ov00_020b7d74
|
|
ldr r0, _02180d28 ; =0x00000734
|
|
add r0, r4, r0
|
|
blx func_ov00_020b7d74
|
|
ldr r0, _02180d2c ; =0x0000050c
|
|
add r0, r4, r0
|
|
bl func_ov00_020a9b6c
|
|
mov r0, #0x45
|
|
lsl r0, r0, #4
|
|
add r0, r4, r0
|
|
bl func_ov00_020a95ec
|
|
mov r0, #0x76
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
blx func_ov00_02081f4c
|
|
mov r0, #0x72
|
|
lsl r0, r0, #2
|
|
ldr r3, _02180d30 ; =func_ov00_020b7d74
|
|
add r0, r4, r0
|
|
mov r1, #2
|
|
mov r2, #4
|
|
blx func_0204f754
|
|
add r0, r4, #0
|
|
blx func_ov00_020c1730
|
|
add r0, r4, #0
|
|
blx func_0202ea0c
|
|
add r0, r4, #0
|
|
pop {r4, pc}
|
|
.align 2, 0
|
|
thumb_func_end func_ov30_02180ca8
|
|
_02180d18: .word data_ov30_02189164
|
|
_02180d1c: .word data_027e10b4
|
|
_02180d20: .word 0x000007bc
|
|
_02180d24: .word 0x00000738
|
|
_02180d28: .word 0x00000734
|
|
_02180d2c: .word 0x0000050c
|
|
_02180d30: .word func_ov00_020b7d74
|
|
|
|
.global func_ov30_02180d34
|
|
thumb_func_start func_ov30_02180d34
|
|
func_ov30_02180d34: ; 0x02180d34
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, _02180da0 ; =data_ov30_02189164
|
|
add r1, r4, #0
|
|
str r0, [r4]
|
|
ldr r0, _02180da4 ; =data_027e10b4
|
|
ldr r0, [r0]
|
|
bl func_ov30_02184368
|
|
ldr r0, _02180da8 ; =0x000007bc
|
|
add r0, r4, r0
|
|
bl func_ov00_020a9b6c
|
|
mov r0, #0x76
|
|
lsl r0, r0, #4
|
|
add r0, r4, r0
|
|
bl func_ov00_020a95a4
|
|
ldr r0, _02180dac ; =0x00000738
|
|
add r0, r4, r0
|
|
blx func_ov00_020b7d74
|
|
ldr r0, _02180db0 ; =0x00000734
|
|
add r0, r4, r0
|
|
blx func_ov00_020b7d74
|
|
ldr r0, _02180db4 ; =0x0000050c
|
|
add r0, r4, r0
|
|
bl func_ov00_020a9b6c
|
|
mov r0, #0x45
|
|
lsl r0, r0, #4
|
|
add r0, r4, r0
|
|
bl func_ov00_020a95ec
|
|
mov r0, #0x76
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
blx func_ov00_02081f4c
|
|
mov r0, #0x72
|
|
lsl r0, r0, #2
|
|
ldr r3, _02180db8 ; =func_ov00_020b7d74
|
|
add r0, r4, r0
|
|
mov r1, #2
|
|
mov r2, #4
|
|
blx func_0204f754
|
|
add r0, r4, #0
|
|
blx func_ov00_020c1730
|
|
add r0, r4, #0
|
|
pop {r4, pc}
|
|
nop
|
|
thumb_func_end func_ov30_02180d34
|
|
_02180da0: .word data_ov30_02189164
|
|
_02180da4: .word data_027e10b4
|
|
_02180da8: .word 0x000007bc
|
|
_02180dac: .word 0x00000738
|
|
_02180db0: .word 0x00000734
|
|
_02180db4: .word 0x0000050c
|
|
_02180db8: .word func_ov00_020b7d74
|
|
|
|
.global func_ov30_02180dbc
|
|
thumb_func_start func_ov30_02180dbc
|
|
func_ov30_02180dbc: ; 0x02180dbc
|
|
push {r4, r5, r6, lr}
|
|
add r4, r0, #0
|
|
ldr r0, _02181064 ; =data_027e10b4
|
|
add r1, r4, #0
|
|
ldr r0, [r0]
|
|
bl func_ov30_02184310
|
|
mov r0, #0
|
|
add r1, r4, #0
|
|
ldr r2, _02181068 ; =0x0000099a
|
|
str r0, [r4, #0x7c]
|
|
add r1, #0x80
|
|
str r2, [r1]
|
|
add r1, r4, #0
|
|
add r1, #0x84
|
|
str r0, [r1]
|
|
add r1, r4, #0
|
|
add r1, #0x88
|
|
str r2, [r1]
|
|
add r1, r4, #0
|
|
add r1, #0x8c
|
|
str r0, [r1]
|
|
mov r2, #2
|
|
add r1, r4, #0
|
|
lsl r2, r2, #0xa
|
|
add r1, #0x90
|
|
str r2, [r1]
|
|
add r1, r4, #0
|
|
add r1, #0x94
|
|
str r0, [r1]
|
|
add r0, r4, #0
|
|
add r0, #0x98
|
|
str r2, [r0]
|
|
ldr r2, [r4, #4]
|
|
ldr r1, _0218106c ; =0x43485336
|
|
cmp r2, r1
|
|
bhi _02180e1a
|
|
sub r0, r1, #4
|
|
cmp r2, r0
|
|
blo _02180e46
|
|
beq _02180e2a
|
|
sub r0, r1, #2
|
|
cmp r2, r0
|
|
beq _02180e34
|
|
cmp r2, r1
|
|
beq _02180e3e
|
|
b _02180e46
|
|
_02180e1a:
|
|
add r1, #0x1c
|
|
cmp r2, r1
|
|
bne _02180e46
|
|
add r0, r4, #0
|
|
mov r1, #0x12
|
|
add r0, #0x7a
|
|
strh r1, [r0]
|
|
b _02180e46
|
|
_02180e2a:
|
|
add r0, r4, #0
|
|
mov r1, #0x13
|
|
add r0, #0x7a
|
|
strh r1, [r0]
|
|
b _02180e46
|
|
_02180e34:
|
|
add r0, r4, #0
|
|
mov r1, #0x15
|
|
add r0, #0x7a
|
|
strh r1, [r0]
|
|
b _02180e46
|
|
_02180e3e:
|
|
add r0, r4, #0
|
|
mov r1, #0x14
|
|
add r0, #0x7a
|
|
strh r1, [r0]
|
|
_02180e46:
|
|
ldr r0, _02181070 ; =0x00000848
|
|
mov r1, #0
|
|
strb r1, [r4, r0]
|
|
ldr r2, [r4, #4]
|
|
ldr r1, _0218106c ; =0x43485336
|
|
cmp r2, r1
|
|
bhi _02180e68
|
|
sub r0, r1, #4
|
|
cmp r2, r0
|
|
blo _02180ece
|
|
beq _02180e6e
|
|
sub r0, r1, #2
|
|
cmp r2, r0
|
|
beq _02180eb8
|
|
cmp r2, r1
|
|
beq _02180eb8
|
|
b _02180ece
|
|
_02180e68:
|
|
add r1, #0x1c
|
|
cmp r2, r1
|
|
bne _02180ece
|
|
_02180e6e:
|
|
ldrh r0, [r4, #0x20]
|
|
cmp r0, #4
|
|
bhi _02180ece
|
|
add r0, r0, r0
|
|
add r0, pc
|
|
ldrh r0, [r0, #6]
|
|
lsl r0, r0, #0x10
|
|
asr r0, r0, #0x10
|
|
add pc, r0
|
|
_02180e80: ; jump table
|
|
.short _02180e8a - _02180e80 - 2 ; case 0
|
|
.short _02180e92 - _02180e80 - 2 ; case 1
|
|
.short _02180ea0 - _02180e80 - 2 ; case 2
|
|
.short _02180ea8 - _02180e80 - 2 ; case 3
|
|
.short _02180eb0 - _02180e80 - 2 ; case 4
|
|
_02180e8a:
|
|
ldr r0, _02181074 ; =0x00000844
|
|
mov r1, #0
|
|
str r1, [r4, r0]
|
|
b _02180ece
|
|
_02180e92:
|
|
ldr r0, _02181074 ; =0x00000844
|
|
mov r1, #0
|
|
str r1, [r4, r0]
|
|
mov r1, #1
|
|
add r0, r0, #4
|
|
strb r1, [r4, r0]
|
|
b _02180ece
|
|
_02180ea0:
|
|
ldr r0, _02181074 ; =0x00000844
|
|
mov r1, #1
|
|
str r1, [r4, r0]
|
|
b _02180ece
|
|
_02180ea8:
|
|
ldr r0, _02181074 ; =0x00000844
|
|
mov r1, #2
|
|
str r1, [r4, r0]
|
|
b _02180ece
|
|
_02180eb0:
|
|
ldr r0, _02181074 ; =0x00000844
|
|
mov r1, #3
|
|
str r1, [r4, r0]
|
|
b _02180ece
|
|
_02180eb8:
|
|
ldr r0, _02181074 ; =0x00000844
|
|
mov r1, #0
|
|
str r1, [r4, r0]
|
|
ldrh r1, [r4, #0x20]
|
|
cmp r1, #0
|
|
beq _02180ece
|
|
cmp r1, #1
|
|
bne _02180ece
|
|
mov r1, #1
|
|
add r0, r0, #4
|
|
strb r1, [r4, r0]
|
|
_02180ece:
|
|
ldr r1, _02181078 ; =data_ov30_02188c9c
|
|
add r0, r4, #0
|
|
blx func_ov00_020ca8a4
|
|
add r1, r4, #0
|
|
mov r2, #1
|
|
mov r0, #0
|
|
add r1, #0xa8
|
|
str r0, [r1]
|
|
add r1, r4, #0
|
|
lsl r2, r2, #0xc
|
|
add r1, #0xac
|
|
str r2, [r1]
|
|
add r1, r4, #0
|
|
add r1, #0xb0
|
|
str r0, [r1]
|
|
add r1, r4, #0
|
|
lsl r2, r2, #1
|
|
add r1, #0xb4
|
|
str r2, [r1]
|
|
ldr r2, [r4, #4]
|
|
ldr r1, _0218107c ; =0x43485334
|
|
cmp r2, r1
|
|
bne _02180f12
|
|
str r0, [r4, #0x6c]
|
|
add r0, r4, #0
|
|
mov r1, #1
|
|
add r0, #0x9c
|
|
strh r1, [r0]
|
|
mov r0, #0x49
|
|
mov r1, #8
|
|
lsl r0, r0, #2
|
|
strb r1, [r4, r0]
|
|
b _02180f1a
|
|
_02180f12:
|
|
add r0, r4, #0
|
|
mov r1, #0x9f
|
|
add r0, #0x9c
|
|
strh r1, [r0]
|
|
_02180f1a:
|
|
ldr r0, _02181080 ; =0x0000019a
|
|
add r1, r0, #0
|
|
sub r1, #0x12
|
|
str r0, [r4, r1]
|
|
add r1, r0, #0
|
|
add r1, #0x16
|
|
ldrh r2, [r4, r1]
|
|
mov r1, #2
|
|
orr r2, r1
|
|
add r1, r0, #0
|
|
add r1, #0x16
|
|
add r0, #0x3e
|
|
strh r2, [r4, r1]
|
|
add r0, r4, r0
|
|
mov r1, #0
|
|
blx func_ov00_020ca38c
|
|
mov r0, #0x76
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
mov r1, #0
|
|
blx func_ov00_020ca3a4
|
|
mov r0, #0x76
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
mov r1, #0
|
|
blx func_ov00_020ca3bc
|
|
mov r0, #0x76
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
mov r1, #0
|
|
blx func_ov00_020ca3d4
|
|
mov r0, #0x76
|
|
lsl r0, r0, #2
|
|
add r0, r4, r0
|
|
mov r1, #0
|
|
blx func_ov00_020ca3ec
|
|
mov r1, #0x43
|
|
lsl r1, r1, #4
|
|
add r0, r4, #0
|
|
add r1, r4, r1
|
|
blx func_ov00_020cb140
|
|
mov r3, #0x22
|
|
lsl r3, r3, #4
|
|
add r1, r3, #0
|
|
add r0, r4, r3
|
|
sub r1, #0x9c
|
|
str r0, [r4, r1]
|
|
ldr r5, _02181084 ; =0x0000087c
|
|
mov r2, #0
|
|
strh r2, [r4, r5]
|
|
sub r1, r3, #4
|
|
strb r2, [r4, r1]
|
|
ldr r1, [r4, #0x3c]
|
|
cmp r1, #0
|
|
blt _02181016
|
|
add r0, r4, #0
|
|
blx func_ov00_020c3158
|
|
ldrh r0, [r4, #0x22]
|
|
cmp r0, #5
|
|
bhi _02180fe6
|
|
add r0, r0, r0
|
|
add r0, pc
|
|
ldrh r0, [r0, #6]
|
|
lsl r0, r0, #0x10
|
|
asr r0, r0, #0x10
|
|
add pc, r0
|
|
_02180fac: ; jump table
|
|
.short _02180fb8 - _02180fac - 2 ; case 0
|
|
.short _02180fc0 - _02180fac - 2 ; case 1
|
|
.short _02180fc8 - _02180fac - 2 ; case 2
|
|
.short _02180fd0 - _02180fac - 2 ; case 3
|
|
.short _02180fd8 - _02180fac - 2 ; case 4
|
|
.short _02180fe0 - _02180fac - 2 ; case 5
|
|
_02180fb8:
|
|
mov r1, #0
|
|
add r0, r5, #4
|
|
str r1, [r4, r0]
|
|
b _02180fe6
|
|
_02180fc0:
|
|
mov r1, #5
|
|
add r0, r5, #4
|
|
str r1, [r4, r0]
|
|
b _02180fe6
|
|
_02180fc8:
|
|
mov r1, #1
|
|
add r0, r5, #4
|
|
str r1, [r4, r0]
|
|
b _02180fe6
|
|
_02180fd0:
|
|
mov r1, #3
|
|
add r0, r5, #4
|
|
str r1, [r4, r0]
|
|
b _02180fe6
|
|
_02180fd8:
|
|
mov r1, #4
|
|
add r0, r5, #4
|
|
str r1, [r4, r0]
|
|
b _02180fe6
|
|
_02180fe0:
|
|
mov r1, #2
|
|
add r0, r5, #4
|
|
str r1, [r4, r0]
|
|
_02180fe6:
|
|
add r0, r4, #0
|
|
blx func_ov30_02183db8
|
|
cmp r0, #0
|
|
beq _02181006
|
|
add r0, r4, #0
|
|
blx func_ov30_02181088
|
|
mov r0, #0x22
|
|
lsl r0, r0, #4
|
|
add r0, r4, r0
|
|
mov r1, #3
|
|
mov r2, #0
|
|
blx func_ov00_020c515c
|
|
b _0218105e
|
|
_02181006:
|
|
mov r0, #0x22
|
|
lsl r0, r0, #4
|
|
mov r1, #0
|
|
add r0, r4, r0
|
|
add r2, r1, #0
|
|
blx func_ov00_020c515c
|
|
b _0218105e
|
|
_02181016:
|
|
add r1, r3, #0
|
|
sub r1, #0xdc
|
|
ldr r6, [r4, r1]
|
|
add r1, r5, #4
|
|
sub r3, #0xe0
|
|
str r6, [r4, r1]
|
|
ldr r1, [r4, r3]
|
|
cmp r1, #0xc
|
|
bne _02181030
|
|
mov r1, #0xc
|
|
blx func_ov00_020c515c
|
|
b _0218105e
|
|
_02181030:
|
|
add r0, r4, #0
|
|
blx func_ov30_02183db8
|
|
cmp r0, #0
|
|
beq _02181050
|
|
add r0, r4, #0
|
|
blx func_ov30_02181088
|
|
mov r0, #0x22
|
|
lsl r0, r0, #4
|
|
add r0, r4, r0
|
|
mov r1, #3
|
|
mov r2, #0
|
|
blx func_ov00_020c515c
|
|
b _0218105e
|
|
_02181050:
|
|
mov r0, #0x22
|
|
lsl r0, r0, #4
|
|
mov r1, #0
|
|
add r0, r4, r0
|
|
add r2, r1, #0
|
|
blx func_ov00_020c515c
|
|
_0218105e:
|
|
mov r0, #1
|
|
pop {r4, r5, r6, pc}
|
|
nop
|
|
thumb_func_end func_ov30_02180dbc
|
|
_02181064: .word data_027e10b4
|
|
_02181068: .word 0x0000099a
|
|
_0218106c: .word 0x43485336
|
|
_02181070: .word 0x00000848
|
|
_02181074: .word 0x00000844
|
|
_02181078: .word data_ov30_02188c9c
|
|
_0218107c: .word 0x43485334
|
|
_02181080: .word 0x0000019a
|
|
_02181084: .word 0x0000087c
|
|
|
|
.global func_ov30_02181088
|
|
arm_func_start func_ov30_02181088
|
|
func_ov30_02181088: ; 0x02181088
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldrb r0, [r4, #0x849]
|
|
cmp r0, #0
|
|
ldmneia sp!, {r4, pc}
|
|
ldr r2, [r4, #4]
|
|
ldr r1, _02181128 ; =0x43485336
|
|
cmp r2, r1
|
|
bhi _021810d4
|
|
sub r0, r1, #4
|
|
cmp r2, r0
|
|
blo _0218111c
|
|
beq _021810f0
|
|
sub r0, r1, #2
|
|
cmp r2, r0
|
|
beq _02181100
|
|
cmp r2, r1
|
|
beq _02181110
|
|
b _0218111c
|
|
_021810d4:
|
|
add r0, r1, #0x1c
|
|
cmp r2, r0
|
|
bne _0218111c
|
|
add r0, r4, #0x430
|
|
mov r1, #0
|
|
bl func_ov30_0217c7a4
|
|
b _0218111c
|
|
_021810f0:
|
|
add r0, r4, #0x430
|
|
mov r1, #1
|
|
bl func_ov30_0217c7a4
|
|
b _0218111c
|
|
_02181100:
|
|
add r0, r4, #0x430
|
|
mov r1, #3
|
|
bl func_ov30_0217c7a4
|
|
b _0218111c
|
|
_02181110:
|
|
add r0, r4, #0x430
|
|
mov r1, #2
|
|
bl func_ov30_0217c7a4
|
|
_0218111c:
|
|
mov r0, #1
|
|
strb r0, [r4, #0x849]
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02181088
|
|
_02181128: .word 0x43485336
|
|
|
|
.global func_ov30_0218112c
|
|
arm_func_start func_ov30_0218112c
|
|
func_ov30_0218112c: ; 0x0218112c
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
cmp r1, #0
|
|
ldmeqia sp!, {r4, pc}
|
|
mov r1, #0
|
|
strb r1, [r4, #0x21c]
|
|
ldr r1, [r4, #0x14]
|
|
str r1, [r4, #0x54]
|
|
ldr r1, [r4, #0x18]
|
|
str r1, [r4, #0x58]
|
|
ldr r1, [r4, #0x1c]
|
|
str r1, [r4, #0x5c]
|
|
ldr r1, [r4, #0x54]
|
|
str r1, [r4, #0x48]
|
|
ldr r1, [r4, #0x58]
|
|
str r1, [r4, #0x4c]
|
|
ldr r1, [r4, #0x5c]
|
|
str r1, [r4, #0x50]
|
|
ldrsh r1, [r4, #0x12]
|
|
strh r1, [r4, #0x78]
|
|
bl func_ov30_02183db8
|
|
cmp r0, #0
|
|
beq _021811a4
|
|
mov r0, r4
|
|
bl func_ov30_02181088
|
|
add r0, r4, #0x220
|
|
mov r1, #3
|
|
mov r2, #0
|
|
bl func_ov00_020c515c
|
|
ldmia sp!, {r4, pc}
|
|
_021811a4:
|
|
mov r1, #0
|
|
mov r2, r1
|
|
add r0, r4, #0x220
|
|
bl func_ov00_020c515c
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0218112c
|
|
|
|
.global func_ov30_021811b8
|
|
arm_func_start func_ov30_021811b8
|
|
func_ov30_021811b8: ; 0x021811b8
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #4
|
|
mov r4, r0
|
|
bl func_ov00_020caef8
|
|
ldr r0, [r4, #0x160]
|
|
cmp r0, #1
|
|
bne _02181208
|
|
add r0, r4, #0x100
|
|
ldrsh r0, [r0, #0x20]
|
|
cmp r0, #0
|
|
addle sp, sp, #4
|
|
ldmleia sp!, {r3, r4, pc}
|
|
mov r3, #1
|
|
add r2, sp, #0
|
|
add r0, r4, #0x220
|
|
mov r1, #7
|
|
str r3, [sp]
|
|
bl func_ov00_020c515c
|
|
add sp, sp, #4
|
|
ldmia sp!, {r3, r4, pc}
|
|
_02181208:
|
|
cmp r0, #2
|
|
addne sp, sp, #4
|
|
ldmneia sp!, {r3, r4, pc}
|
|
add r0, r4, #0x100
|
|
ldrsh r0, [r0, #0x20]
|
|
cmp r0, #0
|
|
addle sp, sp, #4
|
|
ldmleia sp!, {r3, r4, pc}
|
|
ldr r0, [r4, #0x844]
|
|
mov r2, #0
|
|
cmp r0, #0
|
|
add r0, r4, #0x220
|
|
beq _0218124c
|
|
mov r1, #0x10
|
|
bl func_ov00_020c515c
|
|
add sp, sp, #4
|
|
ldmia sp!, {r3, r4, pc}
|
|
_0218124c:
|
|
mov r1, #5
|
|
bl func_ov00_020c515c
|
|
add sp, sp, #4
|
|
ldmia sp!, {r3, r4, pc}
|
|
arm_func_end func_ov30_021811b8
|
|
|
|
.global func_ov30_0218125c
|
|
arm_func_start func_ov30_0218125c
|
|
func_ov30_0218125c: ; 0x0218125c
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020cafbc
|
|
add r0, r4, #0x430
|
|
mov r1, #3
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x440]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
add r2, r4, #0x100
|
|
ldrh r3, [r2, #0x82]
|
|
mov r0, r4
|
|
mov r1, #0
|
|
orr r3, r3, #0xf
|
|
strh r3, [r2, #0x82]
|
|
strb r1, [r4, #0x87e]
|
|
bl func_ov30_02183018
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0218125c
|
|
|
|
.global func_ov30_021812a4
|
|
arm_func_start func_ov30_021812a4
|
|
func_ov30_021812a4: ; 0x021812a4
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020cb06c
|
|
add r0, r4, #0x430
|
|
mov r1, #4
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x440]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
add r0, r4, #0x100
|
|
ldrh r1, [r0, #0x82]
|
|
orr r1, r1, #0xf
|
|
strh r1, [r0, #0x82]
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_021812a4
|
|
|
|
.global func_ov30_021812dc
|
|
arm_func_start func_ov30_021812dc
|
|
func_ov30_021812dc: ; 0x021812dc
|
|
stmdb sp!, {r3, lr}
|
|
cmp r2, #0
|
|
ldmneia sp!, {r3, pc}
|
|
bl func_ov30_02182634
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end func_ov30_021812dc
|
|
|
|
.global func_ov30_021812f0
|
|
arm_func_start func_ov30_021812f0
|
|
func_ov30_021812f0: ; 0x021812f0
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldr r0, [r1]
|
|
ldr r1, [r1, #8]
|
|
bl func_01ffa0f4
|
|
ldrsh r2, [r4, #0x78]
|
|
mov r0, r0, lsl #0x10
|
|
ldr r1, _02181360 ; =0xffff8001
|
|
sub r0, r2, r0, asr #16
|
|
mov r0, r0, lsl #0x10
|
|
cmp r1, r0, asr #16
|
|
mov r0, r0, asr #0x10
|
|
movgt r0, r1, lsr #0x11
|
|
bgt _02181338
|
|
cmp r0, #0
|
|
rsblt r0, r0, #0
|
|
movlt r0, r0, lsl #0x10
|
|
movlt r0, r0, asr #0x10
|
|
_02181338:
|
|
cmp r0, #0x4000
|
|
ble _02181350
|
|
mov r0, r4
|
|
bl func_ov00_020cc22c
|
|
cmp r0, #0
|
|
bne _02181358
|
|
_02181350:
|
|
mov r0, #1
|
|
ldmia sp!, {r4, pc}
|
|
_02181358:
|
|
mov r0, #0
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021812f0
|
|
_02181360: .word 0xffff8001
|
|
|
|
.global func_ov30_02181364
|
|
arm_func_start func_ov30_02181364
|
|
func_ov30_02181364: ; 0x02181364
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
mov r5, r0
|
|
ldr r2, [r5, #0x2a0]
|
|
mov r4, r1
|
|
cmp r2, #0x12
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, r5, r6, pc}
|
|
ldr r2, [r5, #0x164]
|
|
tst r2, #8
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, r5, r6, pc}
|
|
ldr r2, [r4, #0x10]
|
|
cmp r2, #0xb
|
|
addls pc, pc, r2, lsl #2
|
|
b _021817fc
|
|
_021813a0: ; jump table
|
|
b _021813d0 ; case 0
|
|
b _02181648 ; case 1
|
|
b _02181548 ; case 2
|
|
b _02181548 ; case 3
|
|
b _02181550 ; case 4
|
|
b _02181648 ; case 5
|
|
b _021815c0 ; case 6
|
|
b _02181648 ; case 7
|
|
b _02181728 ; case 8
|
|
b _021817fc ; case 9
|
|
b _021815f0 ; case 10
|
|
b _02181750 ; case 11
|
|
_021813d0:
|
|
add r1, r4, #4
|
|
bl func_ov30_021812f0
|
|
cmp r0, #0
|
|
beq _021814f4
|
|
ldr r0, _02181804 ; =data_027e0fb4
|
|
mov r1, #0x25
|
|
ldr r0, [r0]
|
|
bl func_ov00_020ada78
|
|
cmp r0, #0
|
|
beq _0218146c
|
|
mov r2, #2
|
|
mov r0, r5
|
|
mov r1, r4
|
|
strb r2, [r5, #0x1a0]
|
|
bl func_ov00_020cb60c
|
|
cmp r0, #0
|
|
beq _021817fc
|
|
mov r0, r5
|
|
mov r1, #0
|
|
bl func_ov30_02183018
|
|
mov r0, r5
|
|
mov r1, #0
|
|
bl func_ov30_021823cc
|
|
ldr r1, [r5, #4]
|
|
ldr r0, _02181808 ; =0x43485334
|
|
cmp r1, r0
|
|
mov r0, r5
|
|
bne _0218144c
|
|
mov r1, #1
|
|
bl func_ov00_020cadb0
|
|
b _02181464
|
|
_0218144c:
|
|
mov r1, #0
|
|
bl func_ov00_020cadb0
|
|
add r0, r5, #0x220
|
|
mov r1, #0x12
|
|
mov r2, #0
|
|
bl func_ov00_020c51d0
|
|
_02181464:
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_0218146c:
|
|
ldr r0, _02181804 ; =data_027e0fb4
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
bl func_ov00_020ad9e8
|
|
cmp r0, #1
|
|
blt _021814b4
|
|
mov r2, #5
|
|
mov r0, r5
|
|
mov r1, r4
|
|
strb r2, [r5, #0x1a0]
|
|
bl func_ov00_020cb60c
|
|
cmp r0, #0
|
|
beq _021817fc
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov00_020cadb0
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_021814b4:
|
|
mov r2, #4
|
|
mov r0, r5
|
|
mov r1, r4
|
|
strb r2, [r5, #0x1a0]
|
|
bl func_ov00_020cb60c
|
|
cmp r0, #0
|
|
beq _021817fc
|
|
bl func_ov30_02181828
|
|
mov r1, #0xf6
|
|
mov r2, #0
|
|
bl func_ov00_020bf008
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov00_020cadb0
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_021814f4:
|
|
bl func_ov30_02181828
|
|
mov r1, #0xf6
|
|
mov r2, #0
|
|
bl func_ov00_020bf008
|
|
ldr r0, _0218180c ; =data_027e0ffc
|
|
ldr r1, _02181810 ; =0x000001bd
|
|
add r2, r5, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
mov r0, r5
|
|
add r1, r4, #4
|
|
bl func_ov30_02182e9c
|
|
mov r0, r5
|
|
mov r1, #0
|
|
bl func_ov00_020cadb0
|
|
add r0, r5, #0x220
|
|
mov r1, #0xa
|
|
mov r2, #0
|
|
bl func_ov00_020c51d0
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_02181548:
|
|
mov r0, #0
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_02181550:
|
|
bl func_ov30_02181838
|
|
bl func_ov59_02198fe0
|
|
cmp r0, #0
|
|
beq _02181590
|
|
mov r2, #5
|
|
mov r0, r5
|
|
mov r1, r4
|
|
strb r2, [r5, #0x1a4]
|
|
bl func_ov00_020cb60c
|
|
cmp r0, #0
|
|
beq _021817fc
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov00_020cadb0
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_02181590:
|
|
mov r2, #4
|
|
mov r0, r5
|
|
mov r1, r4
|
|
strb r2, [r5, #0x1a4]
|
|
bl func_ov00_020cb60c
|
|
cmp r0, #0
|
|
beq _021817fc
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov00_020cadb0
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_021815c0:
|
|
ldr r2, [r5, #0x444]
|
|
cmp r2, #2
|
|
moveq r0, #1
|
|
ldmeqia sp!, {r4, r5, r6, pc}
|
|
bl func_ov00_020cb60c
|
|
cmp r0, #0
|
|
beq _021817fc
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov00_020cadb0
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_021815f0:
|
|
add r1, r4, #4
|
|
bl func_ov30_021812f0
|
|
cmp r0, #0
|
|
mov r0, r5
|
|
beq _02181628
|
|
mov r1, r4
|
|
bl func_ov00_020cb60c
|
|
cmp r0, #0
|
|
beq _021817fc
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov00_020cadb0
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_02181628:
|
|
mov r1, #0
|
|
bl func_ov00_020cadb0
|
|
add r0, r5, #0x220
|
|
mov r1, #0xb
|
|
mov r2, #0
|
|
bl func_ov00_020c51d0
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_02181648:
|
|
add r1, r4, #4
|
|
bl func_ov30_021812f0
|
|
cmp r0, #0
|
|
beq _02181680
|
|
mov r0, r5
|
|
mov r1, r4
|
|
bl func_ov00_020cb60c
|
|
cmp r0, #0
|
|
beq _021817fc
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov00_020cadb0
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_02181680:
|
|
ldr r6, [r4, #0x14]
|
|
cmp r6, #0
|
|
beq _02181704
|
|
ldr r1, [r6, #4]
|
|
ldr r0, _02181814 ; =0x424d524e
|
|
cmp r1, r0
|
|
bne _021816bc
|
|
ldr r0, _0218180c ; =data_027e0ffc
|
|
ldr r1, _02181818 ; =0x0000019d
|
|
add r2, r5, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
mov r0, r6
|
|
bl func_ov14_021231d4
|
|
b _02181704
|
|
_021816bc:
|
|
ldr r0, _0218181c ; =0x41525257
|
|
cmp r1, r0
|
|
bne _021816dc
|
|
ldrsh r1, [r5, #0x78]
|
|
mov r0, r6
|
|
mov r2, #1
|
|
bl func_ov14_02120ac4
|
|
b _02181704
|
|
_021816dc:
|
|
ldr r0, _02181820 ; =0x5342454d
|
|
cmp r1, r0
|
|
bne _02181704
|
|
ldr r0, _0218180c ; =data_027e0ffc
|
|
add r2, r5, #0x48
|
|
mov r1, #0xf6
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
ldr r0, [r4, #0x14]
|
|
bl func_ov14_02146634
|
|
_02181704:
|
|
mov r0, r5
|
|
mov r1, #0
|
|
bl func_ov00_020cadb0
|
|
add r0, r5, #0x220
|
|
mov r1, #0xb
|
|
mov r2, #0
|
|
bl func_ov00_020c51d0
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_02181728:
|
|
bl func_ov00_020cb60c
|
|
cmp r0, #0
|
|
beq _021817fc
|
|
mov r0, r5
|
|
bl func_ov30_0218322c
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov00_020cadb0
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_02181750:
|
|
ldr r3, [r4, #0x14]
|
|
ldr r2, _02181824 ; =0x42494752
|
|
ldr r3, [r3, #4]
|
|
cmp r3, r2
|
|
bne _0218178c
|
|
mov r2, #2
|
|
strb r2, [r5, #0x1ab]
|
|
bl func_ov00_020cb60c
|
|
cmp r0, #0
|
|
beq _021817fc
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov00_020cadb0
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_0218178c:
|
|
add r1, r4, #4
|
|
bl func_ov30_021812f0
|
|
cmp r0, #0
|
|
beq _021817c4
|
|
mov r0, r5
|
|
mov r1, r4
|
|
bl func_ov00_020cb60c
|
|
cmp r0, #0
|
|
beq _021817fc
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov00_020cadb0
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_021817c4:
|
|
ldr r0, _0218180c ; =data_027e0ffc
|
|
ldr r1, _02181810 ; =0x000001bd
|
|
add r2, r5, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
mov r0, r5
|
|
mov r1, #0
|
|
bl func_ov00_020cadb0
|
|
add r0, r5, #0x220
|
|
mov r1, #0xb
|
|
mov r2, #0
|
|
bl func_ov00_020c51d0
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_021817fc:
|
|
mov r0, #0
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02181364
|
|
_02181804: .word data_027e0fb4
|
|
_02181808: .word 0x43485334
|
|
_0218180c: .word data_027e0ffc
|
|
_02181810: .word 0x000001bd
|
|
_02181814: .word 0x424d524e
|
|
_02181818: .word 0x0000019d
|
|
_0218181c: .word 0x41525257
|
|
_02181820: .word 0x5342454d
|
|
_02181824: .word 0x42494752
|
|
|
|
.global func_ov30_02181828
|
|
arm_func_start func_ov30_02181828
|
|
func_ov30_02181828: ; 0x02181828
|
|
ldr ip, _02181834 ; =func_01fffcec
|
|
mov r0, #0
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02181828
|
|
_02181834: .word func_01fffcec
|
|
|
|
.global func_ov30_02181838
|
|
arm_func_start func_ov30_02181838
|
|
func_ov30_02181838: ; 0x02181838
|
|
ldr ip, _02181844 ; =func_01fffcec
|
|
mov r0, #8
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02181838
|
|
_02181844: .word func_01fffcec
|
|
|
|
.global func_ov30_02181848
|
|
arm_func_start func_ov30_02181848
|
|
func_ov30_02181848: ; 0x02181848
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r4, r1
|
|
mov r5, r0
|
|
mov r1, #0
|
|
bl func_ov30_021823cc
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov30_02183018
|
|
mov r0, r5
|
|
bl func_ov00_020c3180
|
|
ldr r0, [r4]
|
|
and r0, r0, #0x1f
|
|
cmp r0, #8
|
|
bne _02181894
|
|
ldr r0, [r5, #4]
|
|
add r1, r5, #0x48
|
|
mov r2, #1
|
|
bl func_ov00_020c8398
|
|
b _021818a8
|
|
_02181894:
|
|
ldr r0, _021818b0 ; =data_027e0ffc
|
|
ldr r1, _021818b4 ; =0x0000018f
|
|
add r2, r5, #0x48
|
|
mov r3, #0
|
|
bl func_ov00_020ceacc
|
|
_021818a8:
|
|
mov r0, #1
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02181848
|
|
_021818b0: .word data_027e0ffc
|
|
_021818b4: .word 0x0000018f
|
|
|
|
.global func_ov30_021818b8
|
|
arm_func_start func_ov30_021818b8
|
|
func_ov30_021818b8: ; 0x021818b8
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0x54
|
|
mov r5, r0
|
|
ldr r1, [r5, #0x2a0]
|
|
cmp r1, #0
|
|
cmpne r1, #1
|
|
cmpne r1, #0xc
|
|
addeq sp, sp, #0x54
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
add r1, sp, #0x44
|
|
bl func_ov00_020c2a0c
|
|
ldr r1, _021819e0 ; =data_027e0fe4
|
|
ldr r2, _021819e4 ; =0x48415254
|
|
ldr r1, [r1]
|
|
add r0, sp, #8
|
|
add r3, r5, #0x48
|
|
bl func_ov00_020c38fc
|
|
ldr r1, [sp, #8]
|
|
mvn r0, #0
|
|
cmp r1, r0
|
|
beq _02181944
|
|
ldr r0, _021819e0 ; =data_027e0fe4
|
|
add r1, sp, #8
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c3674
|
|
add r1, sp, #0x34
|
|
mov r4, r0
|
|
bl func_ov00_020c2a0c
|
|
add r0, sp, #0x44
|
|
add r1, sp, #0x34
|
|
bl func_01ffec34
|
|
cmp r0, #0
|
|
beq _02181944
|
|
mov r0, r4
|
|
bl func_ov14_0213a3dc
|
|
_02181944:
|
|
ldr r7, _021819e0 ; =data_027e0fe4
|
|
mov r4, #0
|
|
add sl, sp, #0
|
|
add r8, sp, #0x10
|
|
add fp, sp, #0x44
|
|
mvn r6, #0
|
|
_0218195c:
|
|
ldr sb, _021819e8 ; =data_ov30_021887d0
|
|
add lr, sp, #0x20
|
|
ldmia sb!, {r0, r1, r2, r3}
|
|
mov ip, lr
|
|
stmia lr!, {r0, r1, r2, r3}
|
|
ldr sb, [sb]
|
|
ldr r1, [r7]
|
|
str sb, [lr]
|
|
ldr r2, [ip, r4, lsl #2]
|
|
mov r0, sl
|
|
add r3, r5, #0x48
|
|
bl func_ov00_020c38fc
|
|
ldr r0, [sp]
|
|
cmp r0, r6
|
|
beq _021819cc
|
|
ldr r0, [r7]
|
|
mov r1, sl
|
|
bl func_ov00_020c3674
|
|
mov r1, r8
|
|
mov sb, r0
|
|
bl func_ov00_020c2a0c
|
|
mov r0, fp
|
|
mov r1, r8
|
|
bl func_01ffec34
|
|
cmp r0, #0
|
|
beq _021819cc
|
|
mov r0, sb
|
|
bl func_ov14_02135474
|
|
_021819cc:
|
|
add r4, r4, #1
|
|
cmp r4, #5
|
|
blt _0218195c
|
|
add sp, sp, #0x54
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021818b8
|
|
_021819e0: .word data_027e0fe4
|
|
_021819e4: .word 0x48415254
|
|
_021819e8: .word data_ov30_021887d0
|
|
|
|
.global func_ov30_021819ec
|
|
arm_func_start func_ov30_021819ec
|
|
func_ov30_021819ec: ; 0x021819ec
|
|
stmdb sp!, {r3, lr}
|
|
ldr r1, [r0, #0x444]
|
|
cmp r1, #2
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
ldr r1, [r0, #0x2a0]
|
|
cmp r1, #8
|
|
bgt _02181a3c
|
|
cmp r1, #0
|
|
addge pc, pc, r1, lsl #2
|
|
b _02181a68
|
|
_02181a18: ; jump table
|
|
b _02181a68 ; case 0
|
|
b _02181a68 ; case 1
|
|
b _02181a68 ; case 2
|
|
b _02181a48 ; case 3
|
|
b _02181a48 ; case 4
|
|
b _02181a48 ; case 5
|
|
b _02181a68 ; case 6
|
|
b _02181a68 ; case 7
|
|
b _02181a48 ; case 8
|
|
_02181a3c:
|
|
cmp r1, #0x10
|
|
beq _02181a50
|
|
b _02181a68
|
|
_02181a48:
|
|
mov r0, #1
|
|
ldmia sp!, {r3, pc}
|
|
_02181a50:
|
|
add r0, r0, r1, lsl #2
|
|
ldr r0, [r0, #0x220]
|
|
bl func_ov30_0217fd44
|
|
cmp r0, #0
|
|
movne r0, #1
|
|
ldmneia sp!, {r3, pc}
|
|
_02181a68:
|
|
mov r0, #0
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end func_ov30_021819ec
|
|
|
|
.global func_ov30_02181a70
|
|
arm_func_start func_ov30_02181a70
|
|
func_ov30_02181a70: ; 0x02181a70
|
|
stmdb sp!, {r4, r5, lr}
|
|
sub sp, sp, #0x24
|
|
mov r4, r0
|
|
bl func_ov30_021819ec
|
|
cmp r0, #0
|
|
beq _02181ac0
|
|
mov r0, r4
|
|
bl func_ov30_02182fb4
|
|
cmp r0, #0
|
|
beq _02181ac0
|
|
ldr r0, [r4, #0x870]
|
|
add r2, sp, #0x18
|
|
str r0, [sp, #0x18]
|
|
ldr r1, [r4, #0x874]
|
|
add r0, r4, #0x220
|
|
str r1, [sp, #0x1c]
|
|
ldr r3, [r4, #0x878]
|
|
mov r1, #9
|
|
str r3, [sp, #0x20]
|
|
bl func_ov00_020c51d0
|
|
_02181ac0:
|
|
bl func_0200e8f8
|
|
and r1, r1, #0
|
|
and r0, r0, #3
|
|
cmp r1, #0
|
|
cmpeq r0, #0
|
|
mov r2, #0
|
|
bne _02181cfc
|
|
ldr r0, [r4, #0x2a0]
|
|
cmp r0, #9
|
|
addls pc, pc, r0, lsl #2
|
|
b _02181b88
|
|
_02181aec: ; jump table
|
|
b _02181b88 ; case 0
|
|
b _02181b88 ; case 1
|
|
b _02181b88 ; case 2
|
|
b _02181b14 ; case 3
|
|
b _02181b14 ; case 4
|
|
b _02181b14 ; case 5
|
|
b _02181b4c ; case 6
|
|
b _02181b88 ; case 7
|
|
b _02181b14 ; case 8
|
|
b _02181b4c ; case 9
|
|
_02181b14:
|
|
mov r0, r4
|
|
mov r1, #2
|
|
bl func_ov30_0217d09c
|
|
cmp r0, #0
|
|
beq _02181b88
|
|
mov r3, #0
|
|
add r2, sp, #8
|
|
add r0, r4, #0x220
|
|
mov r1, #7
|
|
str r3, [sp, #8]
|
|
bl func_ov00_020c51d0
|
|
add sp, sp, #0x24
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, pc}
|
|
_02181b4c:
|
|
mov r0, r4
|
|
mov r1, #2
|
|
mov r2, #1
|
|
bl func_ov30_0217d09c
|
|
cmp r0, #0
|
|
beq _02181b88
|
|
mov r3, #0
|
|
add r2, sp, #4
|
|
add r0, r4, #0x220
|
|
mov r1, #7
|
|
str r3, [sp, #4]
|
|
bl func_ov00_020c51d0
|
|
add sp, sp, #0x24
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, pc}
|
|
_02181b88:
|
|
ldr r0, [r4, #0x2a0]
|
|
cmp r0, #9
|
|
addls pc, pc, r0, lsl #2
|
|
b _02181c08
|
|
_02181b98: ; jump table
|
|
b _02181c08 ; case 0
|
|
b _02181c08 ; case 1
|
|
b _02181c08 ; case 2
|
|
b _02181bc0 ; case 3
|
|
b _02181bc0 ; case 4
|
|
b _02181bc0 ; case 5
|
|
b _02181bc0 ; case 6
|
|
b _02181c08 ; case 7
|
|
b _02181bc0 ; case 8
|
|
b _02181bc0 ; case 9
|
|
_02181bc0:
|
|
mov r0, r4
|
|
ldr r5, _02181d08 ; =data_027e0f94
|
|
bl func_ov30_0217d690
|
|
cmp r0, #0
|
|
beq _02181c08
|
|
ldr lr, [r5]
|
|
ldr ip, [r5, #4]
|
|
ldr r3, [r5, #8]
|
|
add r2, sp, #0xc
|
|
add r0, r4, #0x220
|
|
mov r1, #9
|
|
str lr, [sp, #0xc]
|
|
str ip, [sp, #0x10]
|
|
str r3, [sp, #0x14]
|
|
bl func_ov00_020c51d0
|
|
add sp, sp, #0x24
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, pc}
|
|
_02181c08:
|
|
ldr r0, [r4, #0x2a0]
|
|
cmp r0, #9
|
|
addls pc, pc, r0, lsl #2
|
|
b _02181c6c
|
|
_02181c18: ; jump table
|
|
b _02181c6c ; case 0
|
|
b _02181c6c ; case 1
|
|
b _02181c6c ; case 2
|
|
b _02181c40 ; case 3
|
|
b _02181c40 ; case 4
|
|
b _02181c40 ; case 5
|
|
b _02181c40 ; case 6
|
|
b _02181c6c ; case 7
|
|
b _02181c6c ; case 8
|
|
b _02181c40 ; case 9
|
|
_02181c40:
|
|
mov r0, r4
|
|
bl func_ov30_021833ec
|
|
cmp r0, #0
|
|
beq _02181c6c
|
|
add r0, r4, #0x220
|
|
mov r1, #8
|
|
mov r2, #0
|
|
bl func_ov00_020c51d0
|
|
add sp, sp, #0x24
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, pc}
|
|
_02181c6c:
|
|
ldr r1, [r4, #4]
|
|
ldr r0, _02181d0c ; =0x43485334
|
|
cmp r1, r0
|
|
bne _02181ce8
|
|
ldr r0, [r4, #0x2a0]
|
|
cmp r0, #9
|
|
addls pc, pc, r0, lsl #2
|
|
b _02181cfc
|
|
_02181c8c: ; jump table
|
|
b _02181cfc ; case 0
|
|
b _02181cfc ; case 1
|
|
b _02181cfc ; case 2
|
|
b _02181cb4 ; case 3
|
|
b _02181cb4 ; case 4
|
|
b _02181cb4 ; case 5
|
|
b _02181cb4 ; case 6
|
|
b _02181cfc ; case 7
|
|
b _02181cfc ; case 8
|
|
b _02181cb4 ; case 9
|
|
_02181cb4:
|
|
mov r0, r4
|
|
bl func_ov30_0217d3b8
|
|
cmp r0, #0
|
|
beq _02181cfc
|
|
mov r3, #3
|
|
add r2, sp, #0
|
|
add r0, r4, #0x220
|
|
mov r1, #7
|
|
str r3, [sp]
|
|
bl func_ov00_020c515c
|
|
add sp, sp, #0x24
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, pc}
|
|
_02181ce8:
|
|
add r0, r0, #2
|
|
cmp r1, r0
|
|
bne _02181cfc
|
|
mov r0, r4
|
|
bl func_ov30_02183ea0
|
|
_02181cfc:
|
|
mov r0, #0
|
|
add sp, sp, #0x24
|
|
ldmia sp!, {r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02181a70
|
|
_02181d08: .word data_027e0f94
|
|
_02181d0c: .word 0x43485334
|
|
|
|
.global func_ov30_02181d10
|
|
arm_func_start func_ov30_02181d10
|
|
func_ov30_02181d10: ; 0x02181d10
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov30_021818b8
|
|
mov r0, r4
|
|
bl func_ov30_02181a70
|
|
ldr r0, [r4, #0x844]
|
|
cmp r0, #0
|
|
beq _02181d5c
|
|
ldr r0, [r4, #0x2a0]
|
|
cmp r0, #3
|
|
cmpne r0, #4
|
|
bne _02181d4c
|
|
mov r0, #0
|
|
str r0, [r4, #0xaa8]
|
|
b _02181d5c
|
|
_02181d4c:
|
|
add r0, r4, #0xa8
|
|
add r0, r0, #0x800
|
|
add r1, r4, #0x48
|
|
bl func_ov30_0217bd80
|
|
_02181d5c:
|
|
ldr r0, [r4, #0x2a0]
|
|
cmp r0, #0
|
|
cmpne r0, #1
|
|
cmpne r0, #2
|
|
cmpne r0, #0xc
|
|
cmpne r0, #0x11
|
|
cmpne r0, #0x12
|
|
beq _02181d88
|
|
ldrb r0, [r4, #0xab7]
|
|
cmp r0, #0x1f
|
|
beq _02181d9c
|
|
_02181d88:
|
|
mvn r0, #0
|
|
str r0, [r4, #0x20c]
|
|
mov r0, #0
|
|
str r0, [r4, #0x164]
|
|
b _02181e88
|
|
_02181d9c:
|
|
mov r1, #3
|
|
str r1, [r4, #0x20c]
|
|
mov r0, #0x800
|
|
str r0, [r4, #0x210]
|
|
ldr r0, [r4, #0x164]
|
|
orr r0, r0, #8
|
|
str r0, [r4, #0x164]
|
|
ldr r0, [r4, #0x2a0]
|
|
cmp r0, #7
|
|
bne _02181e34
|
|
ldr r0, [r4, #0x23c]
|
|
ldr r0, [r0, #8]
|
|
cmp r0, #0x10
|
|
addls pc, pc, r0, lsl #2
|
|
b _02181e28
|
|
_02181dd8: ; jump table
|
|
b _02181e28 ; case 0
|
|
b _02181e28 ; case 1
|
|
b _02181e28 ; case 2
|
|
b _02181e28 ; case 3
|
|
b _02181e28 ; case 4
|
|
b _02181e1c ; case 5
|
|
b _02181e28 ; case 6
|
|
b _02181e1c ; case 7
|
|
b _02181e1c ; case 8
|
|
b _02181e1c ; case 9
|
|
b _02181e28 ; case 10
|
|
b _02181e1c ; case 11
|
|
b _02181e1c ; case 12
|
|
b _02181e28 ; case 13
|
|
b _02181e1c ; case 14
|
|
b _02181e1c ; case 15
|
|
b _02181e1c ; case 16
|
|
_02181e1c:
|
|
mov r0, #0
|
|
str r0, [r4, #0x210]
|
|
b _02181e70
|
|
_02181e28:
|
|
mov r0, #0x800
|
|
str r0, [r4, #0x210]
|
|
b _02181e70
|
|
_02181e34:
|
|
cmp r0, #0xd
|
|
bne _02181e50
|
|
sub r0, r1, #4
|
|
str r0, [r4, #0x20c]
|
|
mov r0, #0
|
|
str r0, [r4, #0x164]
|
|
b _02181e70
|
|
_02181e50:
|
|
cmp r0, #0xf
|
|
movne r0, #0
|
|
strne r0, [r4, #0x210]
|
|
bne _02181e70
|
|
sub r0, r1, #4
|
|
str r0, [r4, #0x20c]
|
|
mov r0, #0
|
|
str r0, [r4, #0x164]
|
|
_02181e70:
|
|
ldr r1, [r4, #4]
|
|
ldr r0, _02181e90 ; =0x43485334
|
|
cmp r1, r0
|
|
ldrne r0, [r4, #0x164]
|
|
orrne r0, r0, #1
|
|
strne r0, [r4, #0x164]
|
|
_02181e88:
|
|
mov r0, #1
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02181d10
|
|
_02181e90: .word 0x43485334
|
|
|
|
.global func_ov30_02181e94
|
|
arm_func_start func_ov30_02181e94
|
|
func_ov30_02181e94: ; 0x02181e94
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020cacf4
|
|
cmp r0, #0
|
|
movne r0, #1
|
|
ldmneia sp!, {r4, pc}
|
|
ldr r0, [r4, #0x2a0]
|
|
cmp r0, #1
|
|
movls r0, #1
|
|
ldmlsia sp!, {r4, pc}
|
|
cmp r0, #0x11
|
|
moveq r0, #1
|
|
ldmeqia sp!, {r4, pc}
|
|
ldr r0, _02181ef4 ; =data_027e0fc8
|
|
ldr r0, [r0]
|
|
bl func_ov00_020bbb64
|
|
cmp r0, #0
|
|
beq _02181eec
|
|
ldr r0, [r4, #0x444]
|
|
cmp r0, #2
|
|
moveq r0, #1
|
|
ldmeqia sp!, {r4, pc}
|
|
_02181eec:
|
|
mov r0, #0
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02181e94
|
|
_02181ef4: .word data_027e0fc8
|
|
|
|
.global func_ov30_02181ef8
|
|
arm_func_start func_ov30_02181ef8
|
|
func_ov30_02181ef8: ; 0x02181ef8
|
|
stmdb sp!, {r3, r4, r5, r6, lr}
|
|
sub sp, sp, #0x74
|
|
mov r4, r0
|
|
ldrh r2, [r4, #0x7a]
|
|
ldr r0, _0218230c ; =0x0000ffff
|
|
cmp r2, r0
|
|
addeq sp, sp, #0x74
|
|
ldmeqia sp!, {r3, r4, r5, r6, pc}
|
|
ldrh r0, [r1]
|
|
tst r0, #4
|
|
bne _02181f30
|
|
tst r0, #8
|
|
addeq sp, sp, #0x74
|
|
ldmeqia sp!, {r3, r4, r5, r6, pc}
|
|
_02181f30:
|
|
add r1, sp, #0x14
|
|
str r1, [sp]
|
|
mov r2, #0
|
|
add r0, sp, #0x10
|
|
stmib sp, {r0, r2}
|
|
ldr r0, _02182310 ; =data_027e0d3c
|
|
str r2, [sp, #0xc]
|
|
ldr r0, [r0]
|
|
mov r3, r2
|
|
add r1, r4, #0x48
|
|
bl func_ov00_02079470
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x74
|
|
ldmeqia sp!, {r3, r4, r5, r6, pc}
|
|
add r0, sp, #0x54
|
|
bl func_01ffbe34
|
|
mov r1, #1
|
|
add r0, sp, #0x54
|
|
str r1, [sp, #0x58]
|
|
str r0, [sp]
|
|
ldrh r3, [r4, #0x7a]
|
|
ldr r1, [sp, #0x14]
|
|
ldr r2, [sp, #0x10]
|
|
ldr r0, _02182314 ; =data_02063e4c
|
|
bl func_020313c8
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x74
|
|
ldmeqia sp!, {r3, r4, r5, r6, pc}
|
|
ldrb r0, [r4, #0x87e]
|
|
cmp r0, #0
|
|
beq _02181fd4
|
|
add r1, sp, #0x54
|
|
str r1, [sp]
|
|
ldr r1, [sp, #0x14]
|
|
ldr r2, [sp, #0x10]
|
|
ldr r0, _02182314 ; =data_02063e4c
|
|
add r1, r1, #9
|
|
sub r2, r2, #0xa
|
|
mov r3, #0x27
|
|
bl func_020313c8
|
|
b _021820a4
|
|
_02181fd4:
|
|
mov r0, r4
|
|
bl func_ov30_02182fdc
|
|
cmp r0, #0
|
|
beq _02182038
|
|
add r0, r4, #0x800
|
|
ldrsh r2, [r0, #0x7c]
|
|
ldr r1, _02182318 ; =data_02050f54
|
|
add r2, r2, #0xc00
|
|
strh r2, [r0, #0x7c]
|
|
ldrh r0, [r0, #0x7c]
|
|
mov r0, r0, asr #0x4
|
|
mov r0, r0, lsl #0x2
|
|
ldrsh r0, [r1, r0]
|
|
cmp r0, #0
|
|
blt _021820a4
|
|
add r1, sp, #0x54
|
|
str r1, [sp]
|
|
ldr r1, [sp, #0x14]
|
|
ldr r2, [sp, #0x10]
|
|
ldr r0, _02182314 ; =data_02063e4c
|
|
add r1, r1, #9
|
|
sub r2, r2, #0xa
|
|
mov r3, #0x1e
|
|
bl func_020313c8
|
|
b _021820a4
|
|
_02182038:
|
|
mov r0, r4
|
|
bl func_ov30_02182ffc
|
|
cmp r0, #0
|
|
add r0, r4, #0x800
|
|
beq _0218209c
|
|
ldrsh r2, [r0, #0x7c]
|
|
ldr r1, _02182318 ; =data_02050f54
|
|
add r2, r2, #0xc00
|
|
strh r2, [r0, #0x7c]
|
|
ldrh r0, [r0, #0x7c]
|
|
mov r0, r0, asr #0x4
|
|
mov r0, r0, lsl #0x2
|
|
ldrsh r0, [r1, r0]
|
|
cmp r0, #0
|
|
blt _021820a4
|
|
add r1, sp, #0x54
|
|
str r1, [sp]
|
|
ldr r1, [sp, #0x14]
|
|
ldr r2, [sp, #0x10]
|
|
ldr r0, _02182314 ; =data_02063e4c
|
|
add r1, r1, #9
|
|
sub r2, r2, #0xa
|
|
mov r3, #0x27
|
|
bl func_020313c8
|
|
b _021820a4
|
|
_0218209c:
|
|
mov r1, #0
|
|
strh r1, [r0, #0x7c]
|
|
_021820a4:
|
|
ldrsb r0, [sp, #0x5c]
|
|
sub r0, r0, #1
|
|
strb r0, [sp, #0x5c]
|
|
ldr r0, [r4, #0x880]
|
|
cmp r0, #5
|
|
addls pc, pc, r0, lsl #2
|
|
b _0218219c
|
|
_021820c0: ; jump table
|
|
b _0218219c ; case 0
|
|
b _02182100 ; case 1
|
|
b _02182128 ; case 2
|
|
b _02182150 ; case 3
|
|
b _02182178 ; case 4
|
|
b _021820d8 ; case 5
|
|
_021820d8:
|
|
add r1, sp, #0x54
|
|
str r1, [sp]
|
|
ldr r1, [sp, #0x14]
|
|
ldr r2, [sp, #0x10]
|
|
ldr r0, _02182314 ; =data_02063e4c
|
|
add r1, r1, #5
|
|
sub r2, r2, #4
|
|
mov r3, #0x20
|
|
bl func_020313c8
|
|
b _0218219c
|
|
_02182100:
|
|
add r1, sp, #0x54
|
|
str r1, [sp]
|
|
ldr r1, [sp, #0x14]
|
|
ldr r2, [sp, #0x10]
|
|
ldr r0, _02182314 ; =data_02063e4c
|
|
add r1, r1, #6
|
|
sub r2, r2, #5
|
|
mov r3, #0x21
|
|
bl func_020313c8
|
|
b _0218219c
|
|
_02182128:
|
|
add r1, sp, #0x54
|
|
str r1, [sp]
|
|
ldr r1, [sp, #0x14]
|
|
ldr r2, [sp, #0x10]
|
|
ldr r0, _02182314 ; =data_02063e4c
|
|
add r1, r1, #6
|
|
sub r2, r2, #5
|
|
mov r3, #0x28
|
|
bl func_020313c8
|
|
b _0218219c
|
|
_02182150:
|
|
add r1, sp, #0x54
|
|
str r1, [sp]
|
|
ldr r1, [sp, #0x14]
|
|
ldr r2, [sp, #0x10]
|
|
ldr r0, _02182314 ; =data_02063e4c
|
|
add r1, r1, #6
|
|
sub r2, r2, #5
|
|
mov r3, #0x29
|
|
bl func_020313c8
|
|
b _0218219c
|
|
_02182178:
|
|
add r1, sp, #0x54
|
|
str r1, [sp]
|
|
ldr r1, [sp, #0x14]
|
|
ldr r2, [sp, #0x10]
|
|
ldr r0, _02182314 ; =data_02063e4c
|
|
add r1, r1, #6
|
|
sub r2, r2, #5
|
|
mov r3, #0x2a
|
|
bl func_020313c8
|
|
_0218219c:
|
|
ldr r0, [r4, #0x15c]
|
|
cmp r0, #2
|
|
addeq sp, sp, #0x74
|
|
ldmeqia sp!, {r3, r4, r5, r6, pc}
|
|
add r0, sp, #0x34
|
|
bl func_01ffbe34
|
|
ldrh r4, [r4, #0x78]
|
|
ldr r3, _02182318 ; =data_02050f54
|
|
add r0, sp, #0x24
|
|
mov r1, r4, asr #0x4
|
|
mov r2, r1, lsl #0x1
|
|
add r1, r2, #1
|
|
mov r1, r1, lsl #0x1
|
|
mov r5, r2, lsl #0x1
|
|
ldrsh r2, [r3, r1]
|
|
ldrsh r1, [r3, r5]
|
|
rsb r2, r2, #0
|
|
blx func_01ff8018
|
|
mov r0, r4, lsl #0x10
|
|
mov r0, r0, asr #0x10
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, lsr #0x10
|
|
mov r0, r0, asr #0x4
|
|
mov r3, r0, lsl #0x1
|
|
add r1, r3, #1
|
|
ldr r2, _02182318 ; =data_02050f54
|
|
mov r3, r3, lsl #0x1
|
|
mov r1, r1, lsl #0x1
|
|
ldrsh lr, [r2, r3]
|
|
ldrsh r4, [r2, r1]
|
|
add r2, sp, #0x24
|
|
mov r1, lr, asr #0x1f
|
|
mov r5, r1, lsl #0xf
|
|
mov r1, r4, asr #0x1f
|
|
mov ip, r1, lsl #0xf
|
|
mov r1, #2
|
|
str r1, [sp, #0x38]
|
|
mov r1, #3
|
|
strb r1, [sp, #0x3c]
|
|
mov r1, #1
|
|
ldr r0, _0218231c ; =data_027e0d0c
|
|
mov r3, #0x800
|
|
add r6, sp, #0x18
|
|
str r2, [sp, #0x34]
|
|
strb r1, [sp, #0x3f]
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r6, {r0, r1, r2}
|
|
adds r1, r3, lr, lsl #15
|
|
orr r5, r5, lr, lsr #17
|
|
ldr r2, [sp, #0x18]
|
|
adc r0, r5, #0
|
|
mov r1, r1, lsr #0xc
|
|
orr r1, r1, r0, lsl #20
|
|
add r5, r2, r1
|
|
adds r1, r3, r4, lsl #15
|
|
orr ip, ip, r4, lsr #17
|
|
mov r2, r1, lsr #0xc
|
|
adc r0, ip, #0
|
|
orr r2, r2, r0, lsl #20
|
|
ldr r3, [sp, #0x20]
|
|
ldr r1, [sp, #0x14]
|
|
add r2, r3, r2
|
|
add r0, r5, #0x800
|
|
add r0, r1, r0, asr #12
|
|
str r0, [sp, #0x14]
|
|
str r2, [sp, #0x20]
|
|
add r1, r2, #0x800
|
|
ldr r2, [sp, #0x10]
|
|
str r5, [sp, #0x18]
|
|
add r1, r2, r1, asr #12
|
|
add r0, sp, #0x34
|
|
str r1, [sp, #0x10]
|
|
str r0, [sp]
|
|
ldr r0, _02182314 ; =data_02063e4c
|
|
ldr r1, [sp, #0x14]
|
|
ldr r2, [sp, #0x10]
|
|
mov r3, #0x25
|
|
bl func_020313c8
|
|
ldr r0, _02182320 ; =data_027e0d38
|
|
mov r4, #6
|
|
ldr r0, [r0]
|
|
add r0, r0, #0xc
|
|
bl func_ov00_020a5e9c
|
|
cmp r0, #0x29
|
|
moveq r4, #8
|
|
ldr r0, _02182324 ; =data_027e0c38
|
|
mov r2, r4
|
|
mov r1, #2
|
|
mov r3, #1
|
|
bl func_02033e70
|
|
add sp, sp, #0x74
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02181ef8
|
|
_0218230c: .word 0x0000ffff
|
|
_02182310: .word data_027e0d3c
|
|
_02182314: .word data_02063e4c
|
|
_02182318: .word data_02050f54
|
|
_0218231c: .word data_027e0d0c
|
|
_02182320: .word data_027e0d38
|
|
_02182324: .word data_027e0c38
|
|
|
|
.global func_ov30_02182328
|
|
arm_func_start func_ov30_02182328
|
|
func_ov30_02182328: ; 0x02182328
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
cmp r1, #0
|
|
ldrneb r0, [r4, #0xa5]
|
|
ldreqb r0, [r4, #0xa4]
|
|
cmp r0, #0
|
|
beq _02182364
|
|
mov r0, r4
|
|
bl func_ov00_020c31c0
|
|
ldrb r1, [r4, #0xab7]
|
|
mov r0, r4
|
|
bl func_ov00_020cc9c4
|
|
mov r0, #1
|
|
strb r0, [r4, #0x73c]
|
|
ldmia sp!, {r4, pc}
|
|
_02182364:
|
|
ldrsh r2, [r4, #0x78]
|
|
add r0, r4, #0x800
|
|
mov r1, #0
|
|
strh r2, [r0, #0x40]
|
|
strb r1, [r4, #0x73c]
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_02182328
|
|
|
|
.global func_ov30_0218237c
|
|
arm_func_start func_ov30_0218237c
|
|
func_ov30_0218237c: ; 0x0218237c
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #0xc
|
|
mov r4, r0
|
|
ldrb r1, [r4, #0xab7]
|
|
ldr r0, [r4, #0x434]
|
|
bl func_020197fc
|
|
add r0, r4, #0x430
|
|
bl func_ov30_0217cba0
|
|
add r1, sp, #0
|
|
add r0, r4, #0x450
|
|
bl func_ov30_0217c588
|
|
ldr r0, [sp]
|
|
ldr r1, [sp, #8]
|
|
bl func_01ffa0f4
|
|
add r1, r4, #0x800
|
|
strh r0, [r1, #0x40]
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, pc}
|
|
arm_func_end func_ov30_0218237c
|
|
|
|
.global func_ov30_021823c4
|
|
arm_func_start func_ov30_021823c4
|
|
func_ov30_021823c4: ; 0x021823c4
|
|
ldrb r0, [r0, #0x21c]
|
|
bx lr
|
|
arm_func_end func_ov30_021823c4
|
|
|
|
.global func_ov30_021823cc
|
|
arm_func_start func_ov30_021823cc
|
|
func_ov30_021823cc: ; 0x021823cc
|
|
strb r1, [r0, #0x21c]
|
|
bx lr
|
|
arm_func_end func_ov30_021823cc
|
|
|
|
.global func_ov30_021823d4
|
|
arm_func_start func_ov30_021823d4
|
|
func_ov30_021823d4: ; 0x021823d4
|
|
ldr r0, [r0, #0x2a0]
|
|
cmp r0, #0xc
|
|
bne _021823e8
|
|
mov r0, #1
|
|
bx lr
|
|
_021823e8:
|
|
mov r0, #0
|
|
bx lr
|
|
arm_func_end func_ov30_021823d4
|
|
|
|
.global func_ov30_021823f0
|
|
arm_func_start func_ov30_021823f0
|
|
func_ov30_021823f0: ; 0x021823f0
|
|
ldrb r0, [r0, #0x848]
|
|
bx lr
|
|
arm_func_end func_ov30_021823f0
|
|
|
|
.global func_ov30_021823f8
|
|
arm_func_start func_ov30_021823f8
|
|
func_ov30_021823f8: ; 0x021823f8
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldrh r1, [r4, #0x24]
|
|
cmp r1, #0
|
|
ble _02182424
|
|
ldr r0, _02182450 ; =data_027e0f74
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097760
|
|
cmp r0, #0
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, pc}
|
|
_02182424:
|
|
ldrh r1, [r4, #0x26]
|
|
cmp r1, #0
|
|
ble _02182448
|
|
ldr r0, _02182450 ; =data_027e0f74
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097760
|
|
cmp r0, #0
|
|
movne r0, #0
|
|
ldmneia sp!, {r4, pc}
|
|
_02182448:
|
|
mov r0, #1
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021823f8
|
|
_02182450: .word data_027e0f74
|
|
|
|
.global func_ov30_02182454
|
|
arm_func_start func_ov30_02182454
|
|
func_ov30_02182454: ; 0x02182454
|
|
ldr r1, [r0, #0x2a0]
|
|
cmp r1, #7
|
|
ldreq r0, [r0, #0x23c]
|
|
ldreq r0, [r0, #8]
|
|
cmpeq r0, #0xc
|
|
moveq r0, #1
|
|
movne r0, #0
|
|
bx lr
|
|
arm_func_end func_ov30_02182454
|
|
|
|
.global func_ov30_02182474
|
|
arm_func_start func_ov30_02182474
|
|
func_ov30_02182474: ; 0x02182474
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
ldr r1, _021824bc ; =data_027e0f90
|
|
mov r5, r0
|
|
ldr r0, [r1]
|
|
ldr r4, _021824c0 ; =data_027e0f94
|
|
ldr r1, [r0]
|
|
ldr r1, [r1, #4]
|
|
blx r1
|
|
cmp r0, #0
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
str r4, [sp]
|
|
ldrsh r1, [r5, #0x78]
|
|
ldr r2, _021824c4 ; =0x00001b33
|
|
ldr r3, _021824c8 ; =0x00001555
|
|
add r0, r5, #0x48
|
|
bl func_ov00_020c54a0
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182474
|
|
_021824bc: .word data_027e0f90
|
|
_021824c0: .word data_027e0f94
|
|
_021824c4: .word 0x00001b33
|
|
_021824c8: .word 0x00001555
|
|
|
|
.global func_ov30_021824cc
|
|
arm_func_start func_ov30_021824cc
|
|
func_ov30_021824cc: ; 0x021824cc
|
|
stmdb sp!, {r4, r5, lr}
|
|
sub sp, sp, #0x94
|
|
mov r4, r0
|
|
bl func_ov30_02182b4c
|
|
ldr r0, [r4, #0x86c]
|
|
ldr r2, _02182624 ; =0x0000ffff
|
|
add r0, r0, r0, lsr #31
|
|
mov r0, r0, asr #0x1
|
|
str r0, [r4, #0x86c]
|
|
mov r1, #0
|
|
add r0, sp, #0x1c
|
|
strh r2, [sp, #0x58]
|
|
strh r2, [sp, #0x5a]
|
|
strh r2, [sp, #0x5c]
|
|
strh r2, [sp, #0x5e]
|
|
strh r1, [sp, #0x60]
|
|
strb r1, [sp, #0x82]
|
|
strb r1, [sp, #0x83]
|
|
strb r1, [sp, #0x84]
|
|
strb r1, [sp, #0x85]
|
|
strb r1, [sp, #0x8c]
|
|
strb r1, [sp, #0x8d]
|
|
strb r1, [sp, #0x8e]
|
|
strb r1, [sp, #0x8f]
|
|
strb r1, [sp, #0x90]
|
|
strb r1, [sp, #0x91]
|
|
bl func_ov30_0217c108
|
|
mov r3, #0
|
|
strb r3, [sp, #0x20]
|
|
ldr r0, [r4, #0x86c]
|
|
mov r1, #4
|
|
str r0, [sp]
|
|
ldr r2, [r4, #8]
|
|
add r0, sp, #0x1c
|
|
str r2, [sp, #4]
|
|
str r1, [sp, #8]
|
|
str r0, [sp, #0xc]
|
|
ldr r0, _02182628 ; =data_027e0e60
|
|
str r3, [sp, #0x10]
|
|
add r2, r4, #0x860
|
|
ldr r0, [r0]
|
|
add r1, sp, #0x34
|
|
mov r3, r2
|
|
bl func_01ffbf5c
|
|
cmp r0, #0
|
|
ldrneb r0, [sp, #0x20]
|
|
cmpne r0, #0
|
|
add r0, sp, #0x1c
|
|
beq _021825a0
|
|
bl func_ov00_02081f4c
|
|
add sp, sp, #0x94
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, pc}
|
|
_021825a0:
|
|
bl func_ov00_02081f4c
|
|
ldr r1, _0218262c ; =data_027e0fe4
|
|
ldr r2, _02182630 ; =0x424f4d42
|
|
ldr r1, [r1]
|
|
add r0, sp, #0x14
|
|
add r3, r4, #0x860
|
|
bl func_ov00_020c38fc
|
|
ldr r1, [sp, #0x14]
|
|
mvn r0, #0
|
|
cmp r1, r0
|
|
beq _02182618
|
|
ldr r0, _0218262c ; =data_027e0fe4
|
|
add r1, sp, #0x14
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c3674
|
|
add r1, sp, #0x24
|
|
mov r5, r0
|
|
bl func_ov00_020c2a0c
|
|
add r0, sp, #0x24
|
|
add r1, r4, #0x860
|
|
bl func_01ffec34
|
|
cmp r0, #0
|
|
beq _02182618
|
|
add r0, r4, #0x48
|
|
add r1, r5, #0x48
|
|
bl func_ov00_020c5464
|
|
cmp r0, #0
|
|
addne sp, sp, #0x94
|
|
movne r0, #1
|
|
ldmneia sp!, {r4, r5, pc}
|
|
_02182618:
|
|
mov r0, #0
|
|
add sp, sp, #0x94
|
|
ldmia sp!, {r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021824cc
|
|
_02182624: .word 0x0000ffff
|
|
_02182628: .word data_027e0e60
|
|
_0218262c: .word data_027e0fe4
|
|
_02182630: .word 0x424f4d42
|
|
|
|
.global func_ov30_02182634
|
|
arm_func_start func_ov30_02182634
|
|
func_ov30_02182634: ; 0x02182634
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, lr}
|
|
sub sp, sp, #0x19c
|
|
mov r4, r0
|
|
bl func_ov30_02182b4c
|
|
add r0, sp, #0x14
|
|
mov r1, r4
|
|
add r2, r4, #0x860
|
|
bl func_ov00_020c23d4
|
|
mov r2, #0
|
|
add r0, sp, #0x114
|
|
ldr r1, _02182ab4 ; =0x0000ffff
|
|
strh r2, [r0, #0x54]
|
|
strh r1, [r0, #0x4c]
|
|
strh r1, [r0, #0x4e]
|
|
strh r1, [r0, #0x50]
|
|
strh r1, [r0, #0x52]
|
|
strb r2, [sp, #0x18a]
|
|
strb r2, [sp, #0x18b]
|
|
strb r2, [sp, #0x18c]
|
|
strb r2, [sp, #0x18d]
|
|
strb r2, [sp, #0x194]
|
|
strb r2, [sp, #0x195]
|
|
strb r2, [sp, #0x196]
|
|
strb r2, [sp, #0x197]
|
|
strb r2, [sp, #0x198]
|
|
strb r2, [sp, #0x199]
|
|
ldr r1, [r4, #0x86c]
|
|
mov r0, #2
|
|
str r1, [sp]
|
|
str r0, [sp, #4]
|
|
mov r0, #4
|
|
str r0, [sp, #8]
|
|
str r2, [sp, #0xc]
|
|
str r2, [sp, #0x10]
|
|
ldr r0, _02182ab8 ; =data_027e0e60
|
|
add r2, r4, #0x860
|
|
ldr r0, [r0]
|
|
add r1, sp, #0x13c
|
|
mov r3, r2
|
|
bl func_01ffbf5c
|
|
mov r1, #0
|
|
add r0, sp, #0x128
|
|
mvn r2, #0
|
|
ldr r5, _02182abc ; =data_ov00_020e72f0
|
|
ldr r3, _02182ac0 ; =0x424f4d42
|
|
str r5, [sp, #0xf4]
|
|
add r5, sp, #0x74
|
|
str r3, [sp, #0xf8]
|
|
str r2, [sp, #0xfc]
|
|
str r2, [sp, #0x100]
|
|
str r1, [sp, #0x104]
|
|
strb r1, [sp, #0x108]
|
|
strb r1, [sp, #0x124]
|
|
str r1, [r0, #0xc]
|
|
str r1, [r0]
|
|
str r1, [r0, #4]
|
|
str r1, [r0, #8]
|
|
add r0, sp, #0xf4
|
|
_0218271c:
|
|
str r2, [r5]
|
|
str r2, [r5, #4]
|
|
add r5, r5, #8
|
|
cmp r5, r0
|
|
blo _0218271c
|
|
ldr r0, _02182ac4 ; =data_027e0fe4
|
|
mov r3, #0
|
|
ldr r0, [r0]
|
|
add r6, sp, #0x74
|
|
mov r5, #0x10
|
|
add r1, sp, #0xf4
|
|
add r2, sp, #0x68
|
|
str r3, [sp, #0x70]
|
|
str r6, [sp, #0x68]
|
|
str r5, [sp, #0x6c]
|
|
bl func_ov00_020c37ec
|
|
ldr r0, [sp, #0x70]
|
|
mov r5, #0
|
|
cmp r0, #0
|
|
ble _021827d4
|
|
ldr r7, _02182ac4 ; =data_027e0fe4
|
|
mov r6, r5
|
|
add r8, sp, #0x58
|
|
_02182778:
|
|
ldr r1, [sp, #0x68]
|
|
ldr r0, [r7]
|
|
add r1, r1, r6
|
|
bl func_ov00_020c3674
|
|
mov r1, r8
|
|
mov sb, r0
|
|
bl func_ov00_020c2a0c
|
|
mov r1, r8
|
|
add r0, r4, #0x860
|
|
bl func_01ffec34
|
|
cmp r0, #0
|
|
beq _021827c0
|
|
mov r0, sb
|
|
bl func_ov14_02122eb8
|
|
cmp r0, #0
|
|
beq _021827c0
|
|
mov r0, sb
|
|
bl func_ov14_02122e98
|
|
_021827c0:
|
|
ldr r0, [sp, #0x70]
|
|
add r5, r5, #1
|
|
cmp r5, r0
|
|
add r6, r6, #8
|
|
blt _02182778
|
|
_021827d4:
|
|
ldrh r0, [r4, #0x78]
|
|
mov r1, #0
|
|
ldr r3, _02182ac8 ; =data_02050f54
|
|
mov r0, r0, asr #0x4
|
|
mov r2, r0, lsl #0x1
|
|
add r0, r2, #1
|
|
mov r2, r2, lsl #0x1
|
|
mov r0, r0, lsl #0x1
|
|
ldrsh r2, [r3, r2]
|
|
ldrsh r0, [r3, r0]
|
|
str r1, [sp, #0x50]
|
|
str r2, [sp, #0x4c]
|
|
str r0, [sp, #0x54]
|
|
ldr r1, [r4, #4]
|
|
ldr r0, _02182acc ; =0x43485334
|
|
add r2, sp, #0x4c
|
|
cmp r1, r0
|
|
bne _02182960
|
|
mov r0, #1
|
|
str r0, [sp]
|
|
ldrb r3, [r4, #0x124]
|
|
mov r0, r4
|
|
add r1, r4, #0x860
|
|
bl func_ov00_020c1ef8
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x19c
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
ldr r0, _02182ad0 ; =data_ov30_021887e4
|
|
add r3, sp, #0x34
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
ldrh r1, [r4, #0x78]
|
|
ldr r3, _02182ac8 ; =data_02050f54
|
|
ldr r0, [r4, #0x48]
|
|
mov r1, r1, asr #0x4
|
|
mov r2, r1, lsl #0x1
|
|
add r1, r2, #1
|
|
mov r2, r2, lsl #0x1
|
|
ldrsh r5, [r3, r2]
|
|
mov r1, r1, lsl #0x1
|
|
str r0, [sp, #0x40]
|
|
ldr ip, [r4, #0x4c]
|
|
ldr r2, [sp, #0x3c]
|
|
ldrsh r6, [r3, r1]
|
|
smull r1, r3, r2, r5
|
|
adds lr, r1, #0x800
|
|
ldr r8, [sp, #0x34]
|
|
ldr sb, [sp, #0x38]
|
|
smull r1, r7, r2, r6
|
|
add r2, ip, sb
|
|
str ip, [sp, #0x44]
|
|
adc sb, r3, #0
|
|
ldr r3, [r4, #0x50]
|
|
adds ip, r1, #0x800
|
|
mov r1, lr, lsr #0xc
|
|
orr r1, r1, sb, lsl #20
|
|
add r1, r0, r1
|
|
str r2, [sp, #0x44]
|
|
smull r4, r6, r8, r6
|
|
adc sb, r7, #0
|
|
adds r7, r4, #0x800
|
|
rsb r5, r5, #0
|
|
mov r0, ip, lsr #0xc
|
|
orr r0, r0, sb, lsl #20
|
|
add r0, r3, r0
|
|
smull r5, r4, r8, r5
|
|
adc r6, r6, #0
|
|
mov r7, r7, lsr #0xc
|
|
orr r7, r7, r6, lsl #20
|
|
add r6, r1, r7
|
|
adds r5, r5, #0x800
|
|
adc r1, r4, #0
|
|
mov r4, r5, lsr #0xc
|
|
orr r4, r4, r1, lsl #20
|
|
add r0, r0, r4
|
|
str r0, [sp, #0x48]
|
|
str r6, [sp, #0x40]
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r0, _02182ad4 ; =data_027e0e58
|
|
ldr r1, _02182ad8 ; =0x000001c1
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x40
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r0, _02182ad4 ; =data_027e0e58
|
|
ldr r1, _02182adc ; =0x000001c2
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x40
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
add sp, sp, #0x19c
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
_02182960:
|
|
mov r0, #0x1e
|
|
str r0, [sp]
|
|
ldrb r3, [r4, #0x124]
|
|
mov r0, r4
|
|
add r1, r4, #0x860
|
|
bl func_ov30_02182ae4
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x19c
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
ldr r0, _02182ae0 ; =data_ov30_021887f0
|
|
add r3, sp, #0x1c
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
ldrh r0, [r4, #0x78]
|
|
ldr r3, _02182ac8 ; =data_02050f54
|
|
ldr r8, [sp, #0x24]
|
|
mov r0, r0, asr #0x4
|
|
mov r2, r0, lsl #0x1
|
|
add r0, r2, #1
|
|
mov r2, r2, lsl #0x1
|
|
mov r0, r0, lsl #0x1
|
|
ldrsh r2, [r3, r2]
|
|
ldrsh r5, [r3, r0]
|
|
ldr ip, [sp, #0x1c]
|
|
smull r0, r6, r8, r2
|
|
adds lr, r0, #0x800
|
|
rsb r3, r2, #0
|
|
ldr r1, [r4, #0x48]
|
|
adc r6, r6, #0
|
|
mov lr, lr, lsr #0xc
|
|
smull r2, r7, r8, r5
|
|
orr lr, lr, r6, lsl #20
|
|
str r1, [sp, #0x28]
|
|
ldr sb, [r4, #0x4c]
|
|
ldr r0, [sp, #0x20]
|
|
smull r5, r6, ip, r5
|
|
adds r8, r2, #0x800
|
|
add r1, r1, lr
|
|
adc lr, r7, #0
|
|
adds r7, r5, #0x800
|
|
str sb, [sp, #0x2c]
|
|
smull r5, r3, ip, r3
|
|
adc r6, r6, #0
|
|
mov r7, r7, lsr #0xc
|
|
orr r7, r7, r6, lsl #20
|
|
ldr r2, [r4, #0x50]
|
|
add r0, sb, r0
|
|
str r0, [sp, #0x2c]
|
|
mov r0, r8, lsr #0xc
|
|
orr r0, r0, lr, lsl #20
|
|
add r6, r1, r7
|
|
adds r5, r5, #0x800
|
|
adc r1, r3, #0
|
|
mov r3, r5, lsr #0xc
|
|
add r0, r2, r0
|
|
orr r3, r3, r1, lsl #20
|
|
add r0, r0, r3
|
|
str r0, [sp, #0x30]
|
|
str r6, [sp, #0x28]
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r0, _02182ad4 ; =data_027e0e58
|
|
ldr r1, _02182ad8 ; =0x000001c1
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x28
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
str r1, [sp, #4]
|
|
ldr r0, _02182ad4 ; =data_027e0e58
|
|
ldr r1, _02182adc ; =0x000001c2
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x28
|
|
mov r3, #2
|
|
bl func_ov00_0207c1b0
|
|
add r0, r4, #0x220
|
|
mov r1, #0x11
|
|
mov r2, #0
|
|
bl func_ov00_020c51d0
|
|
mov r0, #1
|
|
add sp, sp, #0x19c
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182634
|
|
_02182ab4: .word 0x0000ffff
|
|
_02182ab8: .word data_027e0e60
|
|
_02182abc: .word data_ov00_020e72f0
|
|
_02182ac0: .word 0x424f4d42
|
|
_02182ac4: .word data_027e0fe4
|
|
_02182ac8: .word data_02050f54
|
|
_02182acc: .word 0x43485334
|
|
_02182ad0: .word data_ov30_021887e4
|
|
_02182ad4: .word data_027e0e58
|
|
_02182ad8: .word 0x000001c1
|
|
_02182adc: .word 0x000001c2
|
|
_02182ae0: .word data_ov30_021887f0
|
|
|
|
.global func_ov30_02182ae4
|
|
arm_func_start func_ov30_02182ae4
|
|
func_ov30_02182ae4: ; 0x02182ae4
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
mov r6, r1
|
|
mov r5, r2
|
|
mov r4, r3
|
|
bl func_ov00_020c1d58
|
|
cmp r0, #0
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, r5, r6, pc}
|
|
ldr r0, _02182b44 ; =data_027e0f90
|
|
mov r1, r6
|
|
ldr r0, [r0]
|
|
bl func_ov00_020a7c1c
|
|
cmp r0, #0
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, r5, r6, pc}
|
|
ldr r0, _02182b48 ; =data_027e0fc8
|
|
ldrsh r3, [sp, #0x10]
|
|
ldr r0, [r0]
|
|
mov r1, r4
|
|
ldr ip, [r0]
|
|
mov r2, r5
|
|
ldr ip, [ip, #0x70]
|
|
blx ip
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182ae4
|
|
_02182b44: .word data_027e0f90
|
|
_02182b48: .word data_027e0fc8
|
|
|
|
.global func_ov30_02182b4c
|
|
arm_func_start func_ov30_02182b4c
|
|
func_ov30_02182b4c: ; 0x02182b4c
|
|
stmdb sp!, {r3, r4, r5, r6, lr}
|
|
sub sp, sp, #0xc
|
|
ldr r1, _02182c50 ; =data_ov30_021887fc
|
|
mov r3, r0
|
|
add r4, sp, #0
|
|
ldmia r1, {r0, r1, r2}
|
|
stmia r4, {r0, r1, r2}
|
|
ldrh r1, [r3, #0x78]
|
|
ldr r0, [r3, #0x48]
|
|
ldr r4, _02182c54 ; =data_02050f54
|
|
str r0, [r3, #0x860]
|
|
ldr r0, [r3, #0x4c]
|
|
mov r1, r1, asr #0x4
|
|
str r0, [r3, #0x864]
|
|
ldr r0, [r3, #0x50]
|
|
mov r2, r1, lsl #0x1
|
|
str r0, [r3, #0x868]
|
|
mov r1, r2, lsl #0x1
|
|
ldrsh r0, [r4, r1]
|
|
add r1, r2, #1
|
|
mov r1, r1, lsl #0x1
|
|
ldr r5, [r3, #0x864]
|
|
ldr r2, [sp, #4]
|
|
ldrsh r4, [r4, r1]
|
|
add r1, r5, r2
|
|
str r1, [r3, #0x864]
|
|
ldr r6, [sp, #8]
|
|
ldr r5, [r3, #0x860]
|
|
smull r1, ip, r6, r0
|
|
adds lr, r1, #0x800
|
|
smull r2, r1, r6, r4
|
|
adc ip, ip, #0
|
|
adds r2, r2, #0x800
|
|
mov lr, lr, lsr #0xc
|
|
orr lr, lr, ip, lsl #20
|
|
add r5, r5, lr
|
|
str r5, [r3, #0x860]
|
|
adc r1, r1, #0
|
|
mov r2, r2, lsr #0xc
|
|
ldr ip, [r3, #0x868]
|
|
orr r2, r2, r1, lsl #20
|
|
add r1, ip, r2
|
|
str r1, [r3, #0x868]
|
|
ldr lr, [sp]
|
|
rsb r0, r0, #0
|
|
smull r1, r2, lr, r4
|
|
adds ip, r1, #0x800
|
|
smull r1, r0, lr, r0
|
|
adc r2, r2, #0
|
|
adds r1, r1, #0x800
|
|
mov ip, ip, lsr #0xc
|
|
ldr lr, [r3, #0x860]
|
|
orr ip, ip, r2, lsl #20
|
|
add r2, lr, ip
|
|
str r2, [r3, #0x860]
|
|
adc r0, r0, #0
|
|
mov r1, r1, lsr #0xc
|
|
ldr r2, [r3, #0x868]
|
|
orr r1, r1, r0, lsl #20
|
|
add r0, r2, r1
|
|
str r0, [r3, #0x868]
|
|
mov r0, #0xc00
|
|
str r0, [r3, #0x86c]
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182b4c
|
|
_02182c50: .word data_ov30_021887fc
|
|
_02182c54: .word data_02050f54
|
|
|
|
.global func_ov30_02182c58
|
|
arm_func_start func_ov30_02182c58
|
|
func_ov30_02182c58: ; 0x02182c58
|
|
ldr ip, _02182c64 ; =func_ov00_020cca68
|
|
add r1, r0, #0x14
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182c58
|
|
_02182c64: .word func_ov00_020cca68
|
|
|
|
.global func_ov30_02182c68
|
|
arm_func_start func_ov30_02182c68
|
|
func_ov30_02182c68: ; 0x02182c68
|
|
ldr ip, _02182c7c ; =func_ov00_020ce284
|
|
mov r2, r1
|
|
ldr r1, _02182c80 ; =0x0000019a
|
|
add r0, r0, #0x48
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182c68
|
|
_02182c7c: .word func_ov00_020ce284
|
|
_02182c80: .word 0x0000019a
|
|
|
|
.global func_ov30_02182c84
|
|
arm_func_start func_ov30_02182c84
|
|
func_ov30_02182c84: ; 0x02182c84
|
|
ldr ip, _02182c98 ; =func_ov00_020ce284
|
|
mov r2, r1
|
|
add r0, r0, #0x48
|
|
mov r1, #0x800
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182c84
|
|
_02182c98: .word func_ov00_020ce284
|
|
|
|
.global func_ov30_02182c9c
|
|
arm_func_start func_ov30_02182c9c
|
|
func_ov30_02182c9c: ; 0x02182c9c
|
|
ldr ip, _02182cb0 ; =func_ov00_020ce284
|
|
mov r2, r1
|
|
add r0, r0, #0x48
|
|
mov r1, #0x400
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182c9c
|
|
_02182cb0: .word func_ov00_020ce284
|
|
|
|
.global func_ov30_02182cb4
|
|
arm_func_start func_ov30_02182cb4
|
|
func_ov30_02182cb4: ; 0x02182cb4
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
ldrb r0, [r4, #0x110]
|
|
cmp r0, #0
|
|
ldreqb r0, [r4, #0x112]
|
|
cmpeq r0, #0
|
|
ldreqb r0, [r4, #0x113]
|
|
cmpeq r0, #0
|
|
beq _02182d34
|
|
ldr r0, [r4, #0xc4]
|
|
ldr r1, [r4, #0xcc]
|
|
bl func_01ffa0f4
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x10
|
|
sub r0, r0, #0x8000
|
|
ldrsh r2, [r4, #0x78]
|
|
mov r0, r0, lsl #0x10
|
|
ldr r1, _02182d3c ; =0xffff8001
|
|
rsb r0, r2, r0, asr #16
|
|
mov r0, r0, lsl #0x10
|
|
mov r2, r0, asr #0x10
|
|
cmp r1, r0, asr #16
|
|
movgt r2, r1, lsr #0x11
|
|
bgt _02182d24
|
|
cmp r2, #0
|
|
rsblt r0, r2, #0
|
|
movlt r0, r0, lsl #0x10
|
|
movlt r2, r0, asr #0x10
|
|
_02182d24:
|
|
ldr r0, _02182d40 ; =0x00001555
|
|
cmp r2, r0
|
|
movlt r0, #1
|
|
ldmltia sp!, {r4, pc}
|
|
_02182d34:
|
|
mov r0, #0
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182cb4
|
|
_02182d3c: .word 0xffff8001
|
|
_02182d40: .word 0x00001555
|
|
|
|
.global func_ov30_02182d44
|
|
arm_func_start func_ov30_02182d44
|
|
func_ov30_02182d44: ; 0x02182d44
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #4
|
|
mov r4, r0
|
|
bl func_ov30_02182cb4
|
|
cmp r0, #0
|
|
ldrneh r2, [r4, #0xde]
|
|
ldrne r0, _02182da0 ; =0x0000ffff
|
|
cmpne r2, r0
|
|
beq _02182d94
|
|
ldr r1, _02182da4 ; =data_027e0f6c
|
|
add r0, sp, #0
|
|
ldr r1, [r1]
|
|
bl func_ov00_02093a1c
|
|
ldr r0, [sp]
|
|
mov r0, r0, lsr #0x9
|
|
and r0, r0, #3
|
|
cmp r0, #1
|
|
addeq sp, sp, #4
|
|
moveq r0, #1
|
|
ldmeqia sp!, {r3, r4, pc}
|
|
_02182d94:
|
|
mov r0, #0
|
|
add sp, sp, #4
|
|
ldmia sp!, {r3, r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182d44
|
|
_02182da0: .word 0x0000ffff
|
|
_02182da4: .word data_027e0f6c
|
|
|
|
.global func_ov30_02182da8
|
|
arm_func_start func_ov30_02182da8
|
|
func_ov30_02182da8: ; 0x02182da8
|
|
mov r1, r0
|
|
add r0, r1, #0x4c
|
|
ldr ip, _02182dbc ; =func_ov00_020cd010
|
|
add r0, r0, #0x800
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182da8
|
|
_02182dbc: .word func_ov00_020cd010
|
|
|
|
.global func_ov30_02182dc0
|
|
arm_func_start func_ov30_02182dc0
|
|
func_ov30_02182dc0: ; 0x02182dc0
|
|
ldr ip, _02182dd0 ; =func_ov00_020cd028
|
|
add r0, r0, #0x4c
|
|
add r0, r0, #0x800
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182dc0
|
|
_02182dd0: .word func_ov00_020cd028
|
|
|
|
.global func_ov30_02182dd4
|
|
arm_func_start func_ov30_02182dd4
|
|
func_ov30_02182dd4: ; 0x02182dd4
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c2974
|
|
add r3, r4, #0x4c
|
|
mov r1, r0
|
|
ldr r2, _02182df8 ; =0x00001388
|
|
add r0, r3, #0x800
|
|
bl func_ov00_020cd060
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182dd4
|
|
_02182df8: .word 0x00001388
|
|
|
|
.global func_ov30_02182dfc
|
|
arm_func_start func_ov30_02182dfc
|
|
func_ov30_02182dfc: ; 0x02182dfc
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c2938
|
|
mov r1, r0
|
|
mov r0, r4
|
|
bl func_ov30_02182e34
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_02182dfc
|
|
|
|
.global func_ov30_02182e18
|
|
arm_func_start func_ov30_02182e18
|
|
func_ov30_02182e18: ; 0x02182e18
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c2938
|
|
mov r1, r0
|
|
mov r0, r4
|
|
bl func_ov30_02182e50
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_02182e18
|
|
|
|
.global func_ov30_02182e34
|
|
arm_func_start func_ov30_02182e34
|
|
func_ov30_02182e34: ; 0x02182e34
|
|
ldr ip, _02182e48 ; =func_ov00_020cd060
|
|
add r0, r0, #0x4c
|
|
ldr r2, _02182e4c ; =0x00001388
|
|
add r0, r0, #0x800
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182e34
|
|
_02182e48: .word func_ov00_020cd060
|
|
_02182e4c: .word 0x00001388
|
|
|
|
.global func_ov30_02182e50
|
|
arm_func_start func_ov30_02182e50
|
|
func_ov30_02182e50: ; 0x02182e50
|
|
ldrsh r0, [r0, #0x78]
|
|
ldr r2, _02182e94 ; =0xffff8001
|
|
sub r0, r0, r1
|
|
mov r0, r0, lsl #0x10
|
|
mov r1, r0, asr #0x10
|
|
cmp r2, r0, asr #16
|
|
movgt r1, r2, lsr #0x11
|
|
bgt _02182e80
|
|
cmp r1, #0
|
|
rsblt r0, r1, #0
|
|
movlt r0, r0, lsl #0x10
|
|
movlt r1, r0, asr #0x10
|
|
_02182e80:
|
|
ldr r0, _02182e98 ; =0x0000038e
|
|
cmp r1, r0
|
|
movlt r0, #1
|
|
movge r0, #0
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182e50
|
|
_02182e94: .word 0xffff8001
|
|
_02182e98: .word 0x0000038e
|
|
|
|
.global func_ov30_02182e9c
|
|
arm_func_start func_ov30_02182e9c
|
|
func_ov30_02182e9c: ; 0x02182e9c
|
|
ldr ip, _02182ea4 ; =func_ov00_020cb1e8
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182e9c
|
|
_02182ea4: .word func_ov00_020cb1e8
|
|
|
|
.global func_ov30_02182ea8
|
|
arm_func_start func_ov30_02182ea8
|
|
func_ov30_02182ea8: ; 0x02182ea8
|
|
ldr ip, _02182eb0 ; =func_ov00_020cb240
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182ea8
|
|
_02182eb0: .word func_ov00_020cb240
|
|
|
|
.global func_ov30_02182eb4
|
|
arm_func_start func_ov30_02182eb4
|
|
func_ov30_02182eb4: ; 0x02182eb4
|
|
ldr ip, _02182ec8 ; =func_ov00_020cd0a8
|
|
mov r1, r0
|
|
add r0, r1, #0x850
|
|
add r2, r1, #0x48
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182eb4
|
|
_02182ec8: .word func_ov00_020cd0a8
|
|
|
|
.global func_ov30_02182ecc
|
|
arm_func_start func_ov30_02182ecc
|
|
func_ov30_02182ecc: ; 0x02182ecc
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r4, r1
|
|
mov r1, r2
|
|
mov r5, r0
|
|
bl func_ov30_02183968
|
|
mov r2, r0
|
|
ldr r3, _02182ef8 ; =0x00001388
|
|
mov r1, r4
|
|
add r0, r5, #0x850
|
|
bl func_ov00_020cd120
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182ecc
|
|
_02182ef8: .word 0x00001388
|
|
|
|
.global func_ov30_02182efc
|
|
arm_func_start func_ov30_02182efc
|
|
func_ov30_02182efc: ; 0x02182efc
|
|
ldr ip, _02182f08 ; =func_ov00_020cd14c
|
|
add r0, r0, #0x850
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182efc
|
|
_02182f08: .word func_ov00_020cd14c
|
|
|
|
.global func_ov30_02182f0c
|
|
arm_func_start func_ov30_02182f0c
|
|
func_ov30_02182f0c: ; 0x02182f0c
|
|
stmdb sp!, {r4, r5, lr}
|
|
sub sp, sp, #0xc
|
|
ldr r2, _02182f78 ; =0x00001388
|
|
mov r5, r0
|
|
str r2, [sp]
|
|
add r0, r5, #0x60
|
|
str r0, [sp, #4]
|
|
add r0, r5, #0x78
|
|
str r0, [sp, #8]
|
|
ldrsh r3, [r5, #0x78]
|
|
ldr r2, _02182f7c ; =0x0000019a
|
|
add r0, r5, #0x48
|
|
bl func_ov00_020c64d8
|
|
add r0, r5, #0x48
|
|
add r1, r5, #0x60
|
|
mov r2, r0
|
|
bl func_01ff9bc4
|
|
ldrh r4, [r5, #0x9c]
|
|
mov r1, #0
|
|
mov r0, r5
|
|
strh r1, [r5, #0x9c]
|
|
ldr r1, [r0]
|
|
ldr r1, [r1, #0x104]
|
|
blx r1
|
|
strh r4, [r5, #0x9c]
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182f0c
|
|
_02182f78: .word 0x00001388
|
|
_02182f7c: .word 0x0000019a
|
|
|
|
.global func_ov30_02182f80
|
|
arm_func_start func_ov30_02182f80
|
|
func_ov30_02182f80: ; 0x02182f80
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
mov r1, #0
|
|
bl func_ov30_02183018
|
|
ldr r0, [r4, #4]
|
|
add r1, r4, #0x48
|
|
bl func_ov00_020c87f8
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov30_021823cc
|
|
mov r0, r4
|
|
bl func_ov00_020c3180
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_02182f80
|
|
|
|
.global func_ov30_02182fb4
|
|
arm_func_start func_ov30_02182fb4
|
|
func_ov30_02182fb4: ; 0x02182fb4
|
|
ldr r1, _02182fd4 ; =data_027e1038
|
|
mov r2, r0
|
|
ldr r0, [r1]
|
|
ldr ip, _02182fd8 ; =func_ov00_020cef28
|
|
add r1, r2, #0x48
|
|
add r3, r2, #0x870
|
|
mov r2, #0x7800
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02182fb4
|
|
_02182fd4: .word data_027e1038
|
|
_02182fd8: .word func_ov00_020cef28
|
|
|
|
.global func_ov30_02182fdc
|
|
arm_func_start func_ov30_02182fdc
|
|
func_ov30_02182fdc: ; 0x02182fdc
|
|
ldr r0, [r0, #0x2a0]
|
|
cmp r0, #6
|
|
cmpne r0, #7
|
|
bne _02182ff4
|
|
mov r0, #1
|
|
bx lr
|
|
_02182ff4:
|
|
mov r0, #0
|
|
bx lr
|
|
arm_func_end func_ov30_02182fdc
|
|
|
|
.global func_ov30_02182ffc
|
|
arm_func_start func_ov30_02182ffc
|
|
func_ov30_02182ffc: ; 0x02182ffc
|
|
ldr r0, [r0, #0x2a0]
|
|
cmp r0, #9
|
|
bne _02183010
|
|
mov r0, #1
|
|
bx lr
|
|
_02183010:
|
|
mov r0, #0
|
|
bx lr
|
|
arm_func_end func_ov30_02182ffc
|
|
|
|
.global func_ov30_02183018
|
|
arm_func_start func_ov30_02183018
|
|
func_ov30_02183018: ; 0x02183018
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
sub sp, sp, #0x50
|
|
mov r5, r0
|
|
ldr r0, [r5, #0x880]
|
|
mov r4, r1
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x50
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
add r0, r5, #0x48
|
|
add r3, sp, #0x44
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
add r1, sp, #0x38
|
|
add r0, r5, #0x1e4
|
|
bl func_ov00_020c5330
|
|
add r0, sp, #0x38
|
|
ldr r2, [sp, #0x3c]
|
|
mov r1, r0
|
|
str r2, [sp, #0x48]
|
|
bl func_ov00_020c522c
|
|
mvn r1, #0
|
|
add r0, sp, #0xc
|
|
str r1, [sp, #4]
|
|
str r1, [sp, #8]
|
|
bl func_ov00_020c1500
|
|
mvn r1, #0
|
|
add r0, sp, #0xc
|
|
str r1, [sp, #0x28]
|
|
str r1, [sp, #0x2c]
|
|
bl func_ov00_020c3348
|
|
ldr r0, [r5, #8]
|
|
str r0, [sp, #0x28]
|
|
ldr r0, [r5, #0xc]
|
|
str r0, [sp, #0x2c]
|
|
ldr r0, [r5, #0x880]
|
|
cmp r0, #5
|
|
addls pc, pc, r0, lsl #2
|
|
b _02183208
|
|
_021830b0: ; jump table
|
|
b _02183208 ; case 0
|
|
b _02183118 ; case 1
|
|
b _02183178 ; case 2
|
|
b _02183178 ; case 3
|
|
b _02183178 ; case 4
|
|
b _021830c8 ; case 5
|
|
_021830c8:
|
|
mov r0, #1
|
|
strh r0, [sp, #0xc]
|
|
add r1, sp, #4
|
|
str r1, [sp]
|
|
ldr r0, _02183218 ; =data_027e0fe8
|
|
ldr r1, _0218321c ; =0x4e4b4559
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x44
|
|
add r3, sp, #0xc
|
|
bl func_ov00_020c4048
|
|
ldr r0, _02183220 ; =data_027e0fe4
|
|
add r1, sp, #4
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c3674
|
|
cmp r0, #0
|
|
beq _02183208
|
|
add r1, sp, #0x38
|
|
mov r2, r4
|
|
bl func_ov17_02160fa4
|
|
b _02183208
|
|
_02183118:
|
|
mov r0, #1
|
|
str r0, [sp, #0x30]
|
|
add r1, sp, #4
|
|
str r4, [sp, #0x34]
|
|
str r1, [sp]
|
|
ldr r0, _02183218 ; =data_027e0fe8
|
|
ldr r1, _02183224 ; =0x464f5243
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x44
|
|
add r3, sp, #0xc
|
|
bl func_ov00_020c4048
|
|
ldr r0, _02183220 ; =data_027e0fe4
|
|
add r1, sp, #4
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c3674
|
|
cmp r0, #0
|
|
beq _02183208
|
|
ldr r1, [sp, #0x38]
|
|
str r1, [r0, #0x158]
|
|
ldr r1, [sp, #0x3c]
|
|
str r1, [r0, #0x15c]
|
|
ldr r1, [sp, #0x40]
|
|
str r1, [r0, #0x160]
|
|
b _02183208
|
|
_02183178:
|
|
mov r1, #1
|
|
str r1, [sp, #0x30]
|
|
str r4, [sp, #0x34]
|
|
ldr r0, [r5, #0x880]
|
|
cmp r0, #2
|
|
beq _021831b0
|
|
cmp r0, #3
|
|
beq _021831a4
|
|
cmp r0, #4
|
|
streqh r1, [sp, #0xe]
|
|
b _021831b8
|
|
_021831a4:
|
|
mov r0, #0
|
|
strh r0, [sp, #0xe]
|
|
b _021831b8
|
|
_021831b0:
|
|
mov r0, #2
|
|
strh r0, [sp, #0xe]
|
|
_021831b8:
|
|
add r1, sp, #4
|
|
str r1, [sp]
|
|
ldr r0, _02183218 ; =data_027e0fe8
|
|
ldr r1, _02183228 ; =0x43525953
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x44
|
|
add r3, sp, #0xc
|
|
bl func_ov00_020c4048
|
|
ldr r0, _02183220 ; =data_027e0fe4
|
|
add r1, sp, #4
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c3674
|
|
cmp r0, #0
|
|
beq _02183208
|
|
ldr r1, [sp, #0x38]
|
|
str r1, [r0, #0x158]
|
|
ldr r1, [sp, #0x3c]
|
|
str r1, [r0, #0x15c]
|
|
ldr r1, [sp, #0x40]
|
|
str r1, [r0, #0x160]
|
|
_02183208:
|
|
mov r0, #0
|
|
str r0, [r5, #0x880]
|
|
add sp, sp, #0x50
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02183018
|
|
_02183218: .word data_027e0fe8
|
|
_0218321c: .word 0x4e4b4559
|
|
_02183220: .word data_027e0fe4
|
|
_02183224: .word 0x464f5243
|
|
_02183228: .word 0x43525953
|
|
|
|
.global func_ov30_0218322c
|
|
arm_func_start func_ov30_0218322c
|
|
func_ov30_0218322c: ; 0x0218322c
|
|
stmdb sp!, {r4, lr}
|
|
sub sp, sp, #0x38
|
|
mov r4, r0
|
|
ldr r0, [r4, #0x880]
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x38
|
|
ldmeqia sp!, {r4, pc}
|
|
mvn r1, #0
|
|
add r0, sp, #0xc
|
|
str r1, [sp, #4]
|
|
str r1, [sp, #8]
|
|
bl func_ov00_020c1500
|
|
mvn r1, #0
|
|
add r0, sp, #0xc
|
|
str r1, [sp, #0x28]
|
|
str r1, [sp, #0x2c]
|
|
bl func_ov00_020c3348
|
|
ldr r0, [r4, #8]
|
|
str r0, [sp, #0x28]
|
|
ldr r0, [r4, #0xc]
|
|
str r0, [sp, #0x2c]
|
|
ldr r0, [r4, #0x880]
|
|
cmp r0, #5
|
|
addls pc, pc, r0, lsl #2
|
|
b _021833c8
|
|
_02183290: ; jump table
|
|
b _021833c8 ; case 0
|
|
b _021832f0 ; case 1
|
|
b _02183344 ; case 2
|
|
b _02183344 ; case 3
|
|
b _02183344 ; case 4
|
|
b _021832a8 ; case 5
|
|
_021832a8:
|
|
mov r0, #1
|
|
strh r0, [sp, #0xc]
|
|
add r1, sp, #4
|
|
str r1, [sp]
|
|
ldr r0, _021833d8 ; =data_027e0fe8
|
|
ldr r1, _021833dc ; =0x4e4b4559
|
|
ldr r0, [r0]
|
|
add r3, sp, #0xc
|
|
add r2, r4, #0x48
|
|
bl func_ov00_020c4048
|
|
ldr r0, _021833e0 ; =data_027e0fe4
|
|
add r1, sp, #4
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c3674
|
|
cmp r0, #0
|
|
beq _021833c8
|
|
bl func_ov17_02160974
|
|
b _021833c8
|
|
_021832f0:
|
|
mov r0, #1
|
|
str r0, [sp, #0x30]
|
|
add r1, sp, #4
|
|
str r1, [sp]
|
|
ldr r0, _021833d8 ; =data_027e0fe8
|
|
ldr r1, _021833e4 ; =0x464f5243
|
|
ldr r0, [r0]
|
|
add r3, sp, #0xc
|
|
add r2, r4, #0x48
|
|
bl func_ov00_020c4048
|
|
ldr r0, _021833e0 ; =data_027e0fe4
|
|
add r1, sp, #4
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c3674
|
|
cmp r0, #0
|
|
beq _021833c8
|
|
mov r2, #0
|
|
mov r1, #5
|
|
strb r2, [r0, #0x182]
|
|
bl func_ov17_0215e9ec
|
|
b _021833c8
|
|
_02183344:
|
|
mov r1, #1
|
|
str r1, [sp, #0x30]
|
|
ldr r0, [r4, #0x880]
|
|
cmp r0, #2
|
|
beq _02183378
|
|
cmp r0, #3
|
|
beq _0218336c
|
|
cmp r0, #4
|
|
streqh r1, [sp, #0xe]
|
|
b _02183380
|
|
_0218336c:
|
|
mov r0, #0
|
|
strh r0, [sp, #0xe]
|
|
b _02183380
|
|
_02183378:
|
|
mov r0, #2
|
|
strh r0, [sp, #0xe]
|
|
_02183380:
|
|
add r1, sp, #4
|
|
str r1, [sp]
|
|
ldr r0, _021833d8 ; =data_027e0fe8
|
|
ldr r1, _021833e8 ; =0x43525953
|
|
ldr r0, [r0]
|
|
add r3, sp, #0xc
|
|
add r2, r4, #0x48
|
|
bl func_ov00_020c4048
|
|
ldr r0, _021833e0 ; =data_027e0fe4
|
|
add r1, sp, #4
|
|
ldr r0, [r0]
|
|
bl func_ov00_020c3674
|
|
cmp r0, #0
|
|
beq _021833c8
|
|
mov r2, #0
|
|
mov r1, #3
|
|
strb r2, [r0, #0x182]
|
|
bl func_ov17_0215f2e4
|
|
_021833c8:
|
|
mov r0, #0
|
|
str r0, [r4, #0x880]
|
|
add sp, sp, #0x38
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0218322c
|
|
_021833d8: .word data_027e0fe8
|
|
_021833dc: .word 0x4e4b4559
|
|
_021833e0: .word data_027e0fe4
|
|
_021833e4: .word 0x464f5243
|
|
_021833e8: .word 0x43525953
|
|
|
|
.global func_ov30_021833ec
|
|
arm_func_start func_ov30_021833ec
|
|
func_ov30_021833ec: ; 0x021833ec
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, lr}
|
|
sub sp, sp, #0x2bc
|
|
mov r4, r0
|
|
ldr r1, [r4, #4]
|
|
ldr r0, _02183800 ; =0x43485334
|
|
cmp r1, r0
|
|
addeq sp, sp, #0x2bc
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
add r0, r0, #0x1e
|
|
cmp r1, r0
|
|
addeq sp, sp, #0x2bc
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
ldr r0, [r4, #0x880]
|
|
cmp r0, #0
|
|
beq _02183448
|
|
mvn r0, #0
|
|
str r0, [r4, #0x884]
|
|
str r0, [r4, #0x888]
|
|
add sp, sp, #0x2bc
|
|
mov r0, #0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
_02183448:
|
|
ldr r3, _02183804 ; =data_ov00_020e72f0
|
|
mvn r5, #0
|
|
mov r6, #0
|
|
add r1, sp, #0x2a8
|
|
ldr r2, _02183808 ; =0x464f5243
|
|
add r7, sp, #0x1f4
|
|
mov r0, #0x10
|
|
str r0, [sp, #0x1ec]
|
|
str r5, [sp]
|
|
str r5, [sp, #4]
|
|
str r5, [sp, #8]
|
|
str r5, [sp, #0xc]
|
|
str r5, [sp, #0x10]
|
|
str r5, [sp, #0x14]
|
|
str r5, [sp, #0x18]
|
|
str r5, [sp, #0x1c]
|
|
str r5, [sp, #0x20]
|
|
str r5, [sp, #0x24]
|
|
str r5, [sp, #0x28]
|
|
str r5, [sp, #0x2c]
|
|
str r5, [sp, #0x30]
|
|
str r5, [sp, #0x34]
|
|
str r5, [sp, #0x38]
|
|
str r5, [sp, #0x3c]
|
|
str r3, [sp, #0x274]
|
|
str r2, [sp, #0x278]
|
|
str r5, [sp, #0x27c]
|
|
str r5, [sp, #0x280]
|
|
str r6, [sp, #0x284]
|
|
strb r6, [sp, #0x288]
|
|
strb r6, [sp, #0x2a4]
|
|
str r6, [r1, #0xc]
|
|
str r6, [r1]
|
|
str r6, [r1, #4]
|
|
str r6, [r1, #8]
|
|
str r7, [sp, #0x1e8]
|
|
str r6, [sp, #0x1f0]
|
|
add r0, sp, #0x274
|
|
_021834e0:
|
|
str r5, [r7]
|
|
str r5, [r7, #4]
|
|
add r7, r7, #8
|
|
cmp r7, r0
|
|
blo _021834e0
|
|
ldr r0, _0218380c ; =data_027e0fe4
|
|
add r1, sp, #0x274
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x1e8
|
|
bl func_ov00_020c37ec
|
|
ldr r0, [sp, #0x1f0]
|
|
mov r7, #0
|
|
cmp r0, #0
|
|
ble _0218358c
|
|
ldr sb, _0218380c ; =data_027e0fe4
|
|
mov r8, r7
|
|
add r5, sp, #0
|
|
_02183524:
|
|
ldr r1, [sp, #0x1e8]
|
|
ldr r0, [sb]
|
|
add r1, r1, r8
|
|
bl func_ov00_020c3674
|
|
cmp r0, #0
|
|
beq _02183578
|
|
ldrb r1, [r0, #0x11b]
|
|
cmp r1, #0
|
|
bne _02183578
|
|
add r0, r0, #0x48
|
|
bl func_ov00_020c5288
|
|
cmp r0, #0
|
|
bne _02183578
|
|
ldr r2, [sp, #0x1e8]
|
|
add r0, r5, r6, lsl #3
|
|
ldr r1, [r2, r8]
|
|
add r2, r2, r8
|
|
str r1, [r5, r6, lsl #3]
|
|
ldr r1, [r2, #4]
|
|
add r6, r6, #1
|
|
str r1, [r0, #4]
|
|
_02183578:
|
|
ldr r0, [sp, #0x1f0]
|
|
add r7, r7, #1
|
|
cmp r7, r0
|
|
add r8, r8, #8
|
|
blt _02183524
|
|
_0218358c:
|
|
ldr r7, _02183804 ; =data_ov00_020e72f0
|
|
mov r2, #0
|
|
add r1, sp, #0x1d4
|
|
mvn r3, #0
|
|
ldr r5, _02183810 ; =0x43525953
|
|
add r8, sp, #0x120
|
|
mov r0, #0x10
|
|
str r0, [sp, #0x118]
|
|
str r7, [sp, #0x1a0]
|
|
str r5, [sp, #0x1a4]
|
|
str r3, [sp, #0x1a8]
|
|
str r3, [sp, #0x1ac]
|
|
str r2, [sp, #0x1b0]
|
|
strb r2, [sp, #0x1b4]
|
|
strb r2, [sp, #0x1d0]
|
|
str r2, [r1, #0xc]
|
|
str r2, [r1]
|
|
str r2, [r1, #4]
|
|
str r2, [r1, #8]
|
|
str r8, [sp, #0x114]
|
|
str r2, [sp, #0x11c]
|
|
add r0, sp, #0x1a0
|
|
_021835e4:
|
|
str r3, [r8]
|
|
str r3, [r8, #4]
|
|
add r8, r8, #8
|
|
cmp r8, r0
|
|
blo _021835e4
|
|
ldr r0, _0218380c ; =data_027e0fe4
|
|
add r1, sp, #0x1a0
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x114
|
|
bl func_ov00_020c37ec
|
|
ldr r0, [sp, #0x11c]
|
|
mov r7, #0
|
|
cmp r0, #0
|
|
ble _02183690
|
|
ldr sb, _0218380c ; =data_027e0fe4
|
|
mov r8, r7
|
|
add r5, sp, #0
|
|
_02183628:
|
|
ldr r1, [sp, #0x114]
|
|
ldr r0, [sb]
|
|
add r1, r1, r8
|
|
bl func_ov00_020c3674
|
|
cmp r0, #0
|
|
beq _0218367c
|
|
ldrb r1, [r0, #0x11b]
|
|
cmp r1, #0
|
|
bne _0218367c
|
|
add r0, r0, #0x48
|
|
bl func_ov00_020c5288
|
|
cmp r0, #0
|
|
bne _0218367c
|
|
ldr r2, [sp, #0x114]
|
|
add r0, r5, r6, lsl #3
|
|
ldr r1, [r2, r8]
|
|
add r2, r2, r8
|
|
str r1, [r5, r6, lsl #3]
|
|
ldr r1, [r2, #4]
|
|
add r6, r6, #1
|
|
str r1, [r0, #4]
|
|
_0218367c:
|
|
ldr r0, [sp, #0x11c]
|
|
add r7, r7, #1
|
|
cmp r7, r0
|
|
add r8, r8, #8
|
|
blt _02183628
|
|
_02183690:
|
|
ldr r7, _02183804 ; =data_ov00_020e72f0
|
|
mov r2, #0
|
|
add r1, sp, #0x100
|
|
mvn r3, #0
|
|
ldr r5, _02183814 ; =0x4e4b4559
|
|
add r8, sp, #0x4c
|
|
mov r0, #0x10
|
|
str r0, [sp, #0x44]
|
|
str r7, [sp, #0xcc]
|
|
str r5, [sp, #0xd0]
|
|
str r3, [sp, #0xd4]
|
|
str r3, [sp, #0xd8]
|
|
str r2, [sp, #0xdc]
|
|
strb r2, [sp, #0xe0]
|
|
strb r2, [sp, #0xfc]
|
|
str r2, [r1, #0xc]
|
|
str r2, [r1]
|
|
str r2, [r1, #4]
|
|
str r2, [r1, #8]
|
|
str r8, [sp, #0x40]
|
|
str r2, [sp, #0x48]
|
|
add r0, sp, #0xcc
|
|
_021836e8:
|
|
str r3, [r8]
|
|
str r3, [r8, #4]
|
|
add r8, r8, #8
|
|
cmp r8, r0
|
|
blo _021836e8
|
|
ldr r0, _0218380c ; =data_027e0fe4
|
|
add r1, sp, #0xcc
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x40
|
|
bl func_ov00_020c37ec
|
|
ldr r0, [sp, #0x48]
|
|
mov r7, #0
|
|
cmp r0, #0
|
|
ble _02183788
|
|
ldr sb, _0218380c ; =data_027e0fe4
|
|
mov r8, r7
|
|
add r5, sp, #0
|
|
_0218372c:
|
|
ldr r1, [sp, #0x40]
|
|
ldr r0, [sb]
|
|
add r1, r1, r8
|
|
bl func_ov00_020c3674
|
|
cmp r0, #0
|
|
beq _02183774
|
|
add r0, r0, #0x48
|
|
bl func_ov00_020c5288
|
|
cmp r0, #0
|
|
bne _02183774
|
|
ldr r2, [sp, #0x40]
|
|
add r0, r5, r6, lsl #3
|
|
ldr r1, [r2, r8]
|
|
add r2, r2, r8
|
|
str r1, [r5, r6, lsl #3]
|
|
ldr r1, [r2, #4]
|
|
add r6, r6, #1
|
|
str r1, [r0, #4]
|
|
_02183774:
|
|
ldr r0, [sp, #0x48]
|
|
add r7, r7, #1
|
|
cmp r7, r0
|
|
add r8, r8, #8
|
|
blt _0218372c
|
|
_02183788:
|
|
cmp r6, #0
|
|
mov r5, #0
|
|
ble _021837f4
|
|
ldr r7, _0218380c ; =data_027e0fe4
|
|
add r8, sp, #0
|
|
_0218379c:
|
|
ldr r0, [r7]
|
|
mov r1, r8
|
|
bl func_ov00_020c3674
|
|
mov r1, r0
|
|
mov r0, r4
|
|
add r1, r1, #0x48
|
|
bl func_ov30_0217d4e8
|
|
cmp r0, #0
|
|
beq _021837e4
|
|
add r0, sp, #0
|
|
ldr r2, [r0, r5, lsl #3]
|
|
add r1, sp, #4
|
|
str r2, [r4, #0x884]
|
|
ldr r1, [r1, r5, lsl #3]
|
|
add sp, sp, #0x2bc
|
|
mov r0, #1
|
|
str r1, [r4, #0x888]
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
_021837e4:
|
|
add r5, r5, #1
|
|
cmp r5, r6
|
|
add r8, r8, #8
|
|
blt _0218379c
|
|
_021837f4:
|
|
mov r0, #0
|
|
add sp, sp, #0x2bc
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021833ec
|
|
_02183800: .word 0x43485334
|
|
_02183804: .word data_ov00_020e72f0
|
|
_02183808: .word 0x464f5243
|
|
_0218380c: .word data_027e0fe4
|
|
_02183810: .word 0x43525953
|
|
_02183814: .word 0x4e4b4559
|
|
|
|
.global func_ov30_02183818
|
|
arm_func_start func_ov30_02183818
|
|
func_ov30_02183818: ; 0x02183818
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
ldr r2, _021838f4 ; =data_027e0fe4
|
|
mov r5, r0
|
|
add r1, r5, #0x84
|
|
ldr r0, [r2]
|
|
add r1, r1, #0x800
|
|
bl func_ov00_020c3674
|
|
movs r4, r0
|
|
beq _021838ec
|
|
ldr r6, [r5, #0x98]
|
|
add r0, r5, #0x48
|
|
add r1, r4, #0x48
|
|
bl func_01ff9ec0
|
|
cmp r0, r6
|
|
bge _021838ec
|
|
ldr r1, [r4, #4]
|
|
ldr r0, _021838f8 ; =0x4e4b4559
|
|
cmp r1, r0
|
|
bne _02183878
|
|
mov r1, #5
|
|
mov r0, r4
|
|
str r1, [r5, #0x880]
|
|
bl func_ov17_02160954
|
|
b _021838e4
|
|
_02183878:
|
|
ldr r0, _021838fc ; =0x464f5243
|
|
cmp r1, r0
|
|
bne _02183898
|
|
mov r1, #1
|
|
mov r0, r4
|
|
str r1, [r5, #0x880]
|
|
bl func_ov00_020c3180
|
|
b _021838e4
|
|
_02183898:
|
|
ldr r0, _02183900 ; =0x43525953
|
|
cmp r1, r0
|
|
bne _021838e4
|
|
ldrh r0, [r4, #0x22]
|
|
cmp r0, #0
|
|
beq _021838c8
|
|
cmp r0, #1
|
|
beq _021838d4
|
|
cmp r0, #2
|
|
moveq r0, #2
|
|
streq r0, [r5, #0x880]
|
|
b _021838dc
|
|
_021838c8:
|
|
mov r0, #3
|
|
str r0, [r5, #0x880]
|
|
b _021838dc
|
|
_021838d4:
|
|
mov r0, #4
|
|
str r0, [r5, #0x880]
|
|
_021838dc:
|
|
mov r0, r4
|
|
bl func_ov00_020c3180
|
|
_021838e4:
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
_021838ec:
|
|
mov r0, #0
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02183818
|
|
_021838f4: .word data_027e0fe4
|
|
_021838f8: .word 0x4e4b4559
|
|
_021838fc: .word 0x464f5243
|
|
_02183900: .word 0x43525953
|
|
|
|
.global func_ov30_02183904
|
|
arm_func_start func_ov30_02183904
|
|
func_ov30_02183904: ; 0x02183904
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
ldr r3, _02183964 ; =data_027e0fe4
|
|
add r2, r0, #0x84
|
|
ldr r0, [r3]
|
|
mov r5, r1
|
|
add r1, r2, #0x800
|
|
bl func_ov00_020c3674
|
|
movs r4, r0
|
|
beq _0218395c
|
|
add r0, r4, #0x48
|
|
bl func_ov00_020c5288
|
|
cmp r0, #0
|
|
movne r0, #0
|
|
ldmneia sp!, {r3, r4, r5, pc}
|
|
ldr r1, [r4, #0x48]
|
|
mov r0, #1
|
|
str r1, [r5]
|
|
ldr r1, [r4, #0x4c]
|
|
str r1, [r5, #4]
|
|
ldr r1, [r4, #0x50]
|
|
str r1, [r5, #8]
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0218395c:
|
|
mov r0, #0
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02183904
|
|
_02183964: .word data_027e0fe4
|
|
|
|
.global func_ov30_02183968
|
|
arm_func_start func_ov30_02183968
|
|
func_ov30_02183968: ; 0x02183968
|
|
ldr r3, [r0, #4]
|
|
ldr r2, _02183a68 ; =0x43485332
|
|
cmp r3, r2
|
|
bne _021839ac
|
|
cmp r1, #0
|
|
beq _02183994
|
|
cmp r1, #1
|
|
beq _0218399c
|
|
cmp r1, #2
|
|
beq _021839a4
|
|
b _02183a60
|
|
_02183994:
|
|
mov r0, #0xf6
|
|
bx lr
|
|
_0218399c:
|
|
ldr r0, _02183a6c ; =0x00000171
|
|
bx lr
|
|
_021839a4:
|
|
ldr r0, _02183a70 ; =0x00000266
|
|
bx lr
|
|
_021839ac:
|
|
add r0, r2, #4
|
|
cmp r3, r0
|
|
bne _021839ec
|
|
cmp r1, #0
|
|
beq _021839d4
|
|
cmp r1, #1
|
|
beq _021839dc
|
|
cmp r1, #2
|
|
beq _021839e4
|
|
b _02183a60
|
|
_021839d4:
|
|
mov r0, #0xa4
|
|
bx lr
|
|
_021839dc:
|
|
mov r0, #0xf6
|
|
bx lr
|
|
_021839e4:
|
|
ldr r0, _02183a74 ; =0x0000019a
|
|
bx lr
|
|
_021839ec:
|
|
add r0, r2, #2
|
|
cmp r3, r0
|
|
bne _02183a2c
|
|
cmp r1, #0
|
|
beq _02183a14
|
|
cmp r1, #1
|
|
beq _02183a1c
|
|
cmp r1, #2
|
|
beq _02183a24
|
|
b _02183a60
|
|
_02183a14:
|
|
mov r0, #0xa4
|
|
bx lr
|
|
_02183a1c:
|
|
ldr r0, _02183a6c ; =0x00000171
|
|
bx lr
|
|
_02183a24:
|
|
ldr r0, _02183a70 ; =0x00000266
|
|
bx lr
|
|
_02183a2c:
|
|
cmp r1, #0
|
|
beq _02183a48
|
|
cmp r1, #1
|
|
beq _02183a50
|
|
cmp r1, #2
|
|
beq _02183a58
|
|
b _02183a60
|
|
_02183a48:
|
|
mov r0, #0xa4
|
|
bx lr
|
|
_02183a50:
|
|
mov r0, #0xf6
|
|
bx lr
|
|
_02183a58:
|
|
ldr r0, _02183a74 ; =0x0000019a
|
|
bx lr
|
|
_02183a60:
|
|
mov r0, #0
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02183968
|
|
_02183a68: .word 0x43485332
|
|
_02183a6c: .word 0x00000171
|
|
_02183a70: .word 0x00000266
|
|
_02183a74: .word 0x0000019a
|
|
|
|
.global func_ov30_02183a78
|
|
arm_func_start func_ov30_02183a78
|
|
func_ov30_02183a78: ; 0x02183a78
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
|
|
sub sp, sp, #0xa8
|
|
ldr r3, _02183b84 ; =data_ov30_02188b08
|
|
mov r2, #0
|
|
add r4, sp, #0x28
|
|
mov r1, #0x10
|
|
mov r6, r0
|
|
str r3, [sp, #4]
|
|
str r2, [sp, #8]
|
|
str r4, [sp, #0x1c]
|
|
str r1, [sp, #0x20]
|
|
str r2, [sp, #0x24]
|
|
mvn r5, #0
|
|
add r0, sp, #0xa8
|
|
_02183ab0:
|
|
str r5, [r4]
|
|
str r5, [r4, #4]
|
|
add r4, r4, #8
|
|
cmp r4, r0
|
|
blo _02183ab0
|
|
ldr r1, [r6, #8]
|
|
ldr r0, _02183b88 ; =data_027e0fe4
|
|
str r1, [sp, #0xc]
|
|
ldr r4, [r6, #0xc]
|
|
add r3, sp, #0xc
|
|
ldr r0, [r0]
|
|
add r1, sp, #4
|
|
add r2, sp, #0x1c
|
|
str r4, [sp, #0x10]
|
|
str r5, [sp, #0x14]
|
|
str r5, [sp, #0x18]
|
|
str r3, [sp, #8]
|
|
bl func_ov00_020c37ec
|
|
cmp r0, #0
|
|
ldrgt r0, [sp, #0x24]
|
|
movgt r4, #0
|
|
cmpgt r0, #0
|
|
ble _02183b78
|
|
ldr r8, _02183b8c ; =0x00002aaa
|
|
ldr r7, _02183b88 ; =data_027e0fe4
|
|
mov r5, r4
|
|
mov sb, #0x2800
|
|
_02183b1c:
|
|
ldr r1, [sp, #0x1c]
|
|
ldr r0, [r7]
|
|
add r1, r1, r5
|
|
bl func_ov00_020c3674
|
|
ldrb r1, [r0, #0x11a]
|
|
add r0, r0, #0x48
|
|
cmp r1, #0
|
|
beq _02183b64
|
|
str r0, [sp]
|
|
ldrsh r1, [r6, #0x78]
|
|
mov r2, sb
|
|
mov r3, r8
|
|
add r0, r6, #0x48
|
|
bl func_ov00_020c54a0
|
|
cmp r0, #0
|
|
addne sp, sp, #0xa8
|
|
movne r0, #1
|
|
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
_02183b64:
|
|
ldr r0, [sp, #0x24]
|
|
add r4, r4, #1
|
|
cmp r4, r0
|
|
add r5, r5, #8
|
|
blt _02183b1c
|
|
_02183b78:
|
|
mov r0, #0
|
|
add sp, sp, #0xa8
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02183a78
|
|
_02183b84: .word data_ov30_02188b08
|
|
_02183b88: .word data_027e0fe4
|
|
_02183b8c: .word 0x00002aaa
|
|
|
|
.global func_ov30_02183b90
|
|
arm_func_start func_ov30_02183b90
|
|
func_ov30_02183b90: ; 0x02183b90
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr}
|
|
sub sp, sp, #0xa8
|
|
ldr r3, _02183c9c ; =data_ov30_02188b08
|
|
mov r2, #0
|
|
add r4, sp, #0x28
|
|
mov r1, #0x10
|
|
mov r6, r0
|
|
str r3, [sp, #4]
|
|
str r2, [sp, #8]
|
|
str r4, [sp, #0x1c]
|
|
str r1, [sp, #0x20]
|
|
str r2, [sp, #0x24]
|
|
mvn r5, #0
|
|
add r0, sp, #0xa8
|
|
_02183bc8:
|
|
str r5, [r4]
|
|
str r5, [r4, #4]
|
|
add r4, r4, #8
|
|
cmp r4, r0
|
|
blo _02183bc8
|
|
ldr r1, [r6, #8]
|
|
ldr r0, _02183ca0 ; =data_027e0fe4
|
|
str r1, [sp, #0xc]
|
|
ldr r4, [r6, #0xc]
|
|
add r3, sp, #0xc
|
|
ldr r0, [r0]
|
|
add r1, sp, #4
|
|
add r2, sp, #0x1c
|
|
str r4, [sp, #0x10]
|
|
str r5, [sp, #0x14]
|
|
str r5, [sp, #0x18]
|
|
str r3, [sp, #8]
|
|
bl func_ov00_020c37ec
|
|
cmp r0, #0
|
|
ldrgt r0, [sp, #0x24]
|
|
movgt r4, #0
|
|
cmpgt r0, #0
|
|
ble _02183c90
|
|
ldr r8, _02183ca4 ; =0x00002aaa
|
|
ldr r7, _02183ca0 ; =data_027e0fe4
|
|
mov r5, r4
|
|
mov sb, #0x2800
|
|
_02183c34:
|
|
ldr r1, [sp, #0x1c]
|
|
ldr r0, [r7]
|
|
add r1, r1, r5
|
|
bl func_ov00_020c3674
|
|
add sl, r0, #0x48
|
|
bl func_ov30_02182454
|
|
cmp r0, #0
|
|
beq _02183c7c
|
|
str sl, [sp]
|
|
ldrsh r1, [r6, #0x78]
|
|
mov r2, sb
|
|
mov r3, r8
|
|
add r0, r6, #0x48
|
|
bl func_ov00_020c54a0
|
|
cmp r0, #0
|
|
addne sp, sp, #0xa8
|
|
movne r0, #1
|
|
ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_02183c7c:
|
|
ldr r0, [sp, #0x24]
|
|
add r4, r4, #1
|
|
cmp r4, r0
|
|
add r5, r5, #8
|
|
blt _02183c34
|
|
_02183c90:
|
|
mov r0, #0
|
|
add sp, sp, #0xa8
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02183b90
|
|
_02183c9c: .word data_ov30_02188b08
|
|
_02183ca0: .word data_027e0fe4
|
|
_02183ca4: .word 0x00002aaa
|
|
|
|
.global func_ov30_02183ca8
|
|
arm_func_start func_ov30_02183ca8
|
|
func_ov30_02183ca8: ; 0x02183ca8
|
|
stmdb sp!, {r3, r4, r5, r7, lr}
|
|
sub sp, sp, #0x3c
|
|
ldr r2, _02183d78 ; =data_ov30_021894a0
|
|
mov r7, r1
|
|
ldr r2, [r2, #0x8c]
|
|
ldr r1, [r0]
|
|
ldr r4, [r2, #0x98]
|
|
ldr r2, _02183d7c ; =data_027e0e60
|
|
str r1, [sp, #0x30]
|
|
ldr r3, [r0, #4]
|
|
add r1, sp, #0x30
|
|
str r3, [sp, #0x34]
|
|
ldr r3, [r0, #8]
|
|
ldr r0, [r2]
|
|
str r3, [sp, #0x38]
|
|
mov r2, #1
|
|
bl func_ov00_02083ee0
|
|
ldr r2, [r7]
|
|
ldr r1, _02183d7c ; =data_027e0e60
|
|
str r2, [sp, #0x24]
|
|
ldr r2, [r7, #4]
|
|
add r5, r4, r0
|
|
str r2, [sp, #0x28]
|
|
ldr r2, [r7, #8]
|
|
ldr r0, [r1]
|
|
str r2, [sp, #0x2c]
|
|
add r1, sp, #0x24
|
|
mov r2, #1
|
|
bl func_ov00_02083ee0
|
|
ldr r1, _02183d78 ; =data_ov30_021894a0
|
|
add r0, r4, r0
|
|
str r0, [sp, #0x10]
|
|
ldr r2, [r1, #0x8c]
|
|
str r6, [sp, #0x18]
|
|
str r5, [sp, #0x1c]
|
|
str r6, [sp, #0x20]
|
|
str r6, [sp, #0xc]
|
|
str r6, [sp, #0x14]
|
|
ldr r1, [r2, #8]
|
|
mov r0, #0xc
|
|
str r1, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r1, [r2, #0xa0]
|
|
ldr r0, _02183d7c ; =data_027e0e60
|
|
str r1, [sp, #8]
|
|
ldr r0, [r0]
|
|
add r1, sp, #0x18
|
|
add r2, sp, #0xc
|
|
mov r3, r4
|
|
bl func_01ffe1cc
|
|
add sp, sp, #0x3c
|
|
ldmia sp!, {r3, r4, r5, r7, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02183ca8
|
|
_02183d78: .word data_ov30_021894a0
|
|
_02183d7c: .word data_027e0e60
|
|
|
|
.global func_ov30_02183d80
|
|
arm_func_start func_ov30_02183d80
|
|
func_ov30_02183d80: ; 0x02183d80
|
|
stmdb sp!, {r3, lr}
|
|
ldr r3, _02183dac ; =data_ov30_021894a0
|
|
ldr r2, _02183db0 ; =data_027e0ff0
|
|
str r0, [r3, #0x8c]
|
|
ldr r0, [r2]
|
|
ldr r2, _02183db4 ; =func_ov30_02183ca8
|
|
bl func_ov00_020c4898
|
|
ldr r0, _02183dac ; =data_ov30_021894a0
|
|
mov r1, #0
|
|
str r1, [r0, #0x8c]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02183d80
|
|
_02183dac: .word data_ov30_021894a0
|
|
_02183db0: .word data_027e0ff0
|
|
_02183db4: .word func_ov30_02183ca8
|
|
|
|
.global func_ov30_02183db8
|
|
arm_func_start func_ov30_02183db8
|
|
func_ov30_02183db8: ; 0x02183db8
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov30_021823f8
|
|
cmp r0, #0
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, pc}
|
|
ldrb r0, [r4, #0x2a]
|
|
cmp r0, #0
|
|
beq _02183df4
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020c1bfc
|
|
cmp r0, #0
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, pc}
|
|
_02183df4:
|
|
ldr r1, [r4, #4]
|
|
ldr r0, _02183e28 ; =0x43485334
|
|
cmp r1, r0
|
|
bne _02183e20
|
|
ldr r0, _02183e2c ; =data_027e0f74
|
|
mov r1, #0x35
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097760
|
|
cmp r0, #0
|
|
movne r0, #0
|
|
ldmneia sp!, {r4, pc}
|
|
_02183e20:
|
|
mov r0, #1
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02183db8
|
|
_02183e28: .word 0x43485334
|
|
_02183e2c: .word data_027e0f74
|
|
|
|
.global func_ov30_02183e30
|
|
arm_func_start func_ov30_02183e30
|
|
func_ov30_02183e30: ; 0x02183e30
|
|
stmdb sp!, {r3, lr}
|
|
ldrb r1, [r0, #0x2b]
|
|
cmp r1, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
mov r1, #1
|
|
mov r2, r1
|
|
bl func_ov00_020c1c20
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end func_ov30_02183e30
|
|
|
|
.global func_ov30_02183e50
|
|
arm_func_start func_ov30_02183e50
|
|
func_ov30_02183e50: ; 0x02183e50
|
|
cmp r1, #0
|
|
moveq r1, #0
|
|
streqb r1, [r0, #0x11a]
|
|
streq r1, [r0, #0x12c]
|
|
bxeq lr
|
|
mov r1, #1
|
|
strb r1, [r0, #0x11a]
|
|
mov r1, #2
|
|
str r1, [r0, #0x12c]
|
|
bx lr
|
|
arm_func_end func_ov30_02183e50
|
|
|
|
.global func_ov30_02183e78
|
|
arm_func_start func_ov30_02183e78
|
|
func_ov30_02183e78: ; 0x02183e78
|
|
add r0, r0, #0xa00
|
|
ldrsh r0, [r0, #0xb4]
|
|
cmp r0, #0
|
|
moveq r0, #1
|
|
movne r0, #0
|
|
bx lr
|
|
arm_func_end func_ov30_02183e78
|
|
|
|
.global func_ov30_02183e90
|
|
arm_func_start func_ov30_02183e90
|
|
func_ov30_02183e90: ; 0x02183e90
|
|
add r0, r0, #0xa00
|
|
mov r1, #0
|
|
strh r1, [r0, #0xb4]
|
|
bx lr
|
|
arm_func_end func_ov30_02183e90
|
|
|
|
.global func_ov30_02183ea0
|
|
arm_func_start func_ov30_02183ea0
|
|
func_ov30_02183ea0: ; 0x02183ea0
|
|
add r0, r0, #0xa00
|
|
ldrsh r1, [r0, #0xb4]
|
|
cmp r1, #0
|
|
subgt r1, r1, #1
|
|
strgth r1, [r0, #0xb4]
|
|
bx lr
|
|
arm_func_end func_ov30_02183ea0
|
|
|
|
.global func_ov30_02183eb8
|
|
arm_func_start func_ov30_02183eb8
|
|
func_ov30_02183eb8: ; 0x02183eb8
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
blx func_ov30_02180d34
|
|
mov r0, r4
|
|
bl func_0202ea0c
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_02183eb8
|
|
|
|
.global func_ov30_02183ed4
|
|
arm_func_start func_ov30_02183ed4
|
|
func_ov30_02183ed4: ; 0x02183ed4
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
blx func_ov30_02180d34
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_02183ed4
|
|
|
|
.global func_ov30_02183ee8
|
|
arm_func_start func_ov30_02183ee8
|
|
func_ov30_02183ee8: ; 0x02183ee8
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
blx func_ov30_02180d34
|
|
mov r0, r4
|
|
bl func_0202ea0c
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_02183ee8
|
|
|
|
.global func_ov30_02183f04
|
|
arm_func_start func_ov30_02183f04
|
|
func_ov30_02183f04: ; 0x02183f04
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
blx func_ov30_02180d34
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_02183f04
|
|
|
|
.global func_ov30_02183f18
|
|
arm_func_start func_ov30_02183f18
|
|
func_ov30_02183f18: ; 0x02183f18
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
blx func_ov30_02180d34
|
|
mov r0, r4
|
|
bl func_0202ea0c
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_02183f18
|
|
|
|
.global func_ov30_02183f34
|
|
arm_func_start func_ov30_02183f34
|
|
func_ov30_02183f34: ; 0x02183f34
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
blx func_ov30_02180d34
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_02183f34
|
|
|
|
.global func_ov30_02183f48
|
|
arm_func_start func_ov30_02183f48
|
|
func_ov30_02183f48: ; 0x02183f48
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
blx func_ov30_02180d34
|
|
mov r0, r4
|
|
bl func_0202ea0c
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_02183f48
|
|
|
|
.global func_ov30_02183f64
|
|
arm_func_start func_ov30_02183f64
|
|
func_ov30_02183f64: ; 0x02183f64
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
blx func_ov30_02180d34
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_02183f64
|
|
|
|
.global func_ov30_02183f78
|
|
arm_func_start func_ov30_02183f78
|
|
func_ov30_02183f78: ; 0x02183f78
|
|
mov r1, #0x96
|
|
str r1, [r0, #0x9c]
|
|
bx lr
|
|
arm_func_end func_ov30_02183f78
|
|
|
|
.global func_ov30_02183f84
|
|
arm_func_start func_ov30_02183f84
|
|
func_ov30_02183f84: ; 0x02183f84
|
|
ldr r1, [r0, #0x94]
|
|
cmp r1, #0
|
|
moveq r1, #0
|
|
streq r1, [r0, #0x98]
|
|
mov r1, #0x1e
|
|
str r1, [r0, #0x94]
|
|
bx lr
|
|
arm_func_end func_ov30_02183f84
|
|
|
|
.global func_ov30_02183fa0
|
|
arm_func_start func_ov30_02183fa0
|
|
func_ov30_02183fa0: ; 0x02183fa0
|
|
ldr r1, [r0, #0x88]
|
|
cmp r1, #0
|
|
movgt r0, #1
|
|
bxgt lr
|
|
ldr r1, [r0, #0x94]
|
|
cmp r1, #0
|
|
movgt r0, #1
|
|
bxgt lr
|
|
ldr r0, [r0, #0x9c]
|
|
cmp r0, #0
|
|
movgt r0, #1
|
|
movle r0, #0
|
|
bx lr
|
|
arm_func_end func_ov30_02183fa0
|
|
|
|
.global func_ov30_02183fd4
|
|
arm_func_start func_ov30_02183fd4
|
|
func_ov30_02183fd4: ; 0x02183fd4
|
|
mov r1, #0
|
|
str r1, [r0, #0x94]
|
|
bx lr
|
|
arm_func_end func_ov30_02183fd4
|
|
|
|
.global func_ov30_02183fe0
|
|
arm_func_start func_ov30_02183fe0
|
|
func_ov30_02183fe0: ; 0x02183fe0
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
ldrsh r3, [r0, #0xa0]
|
|
mov r2, r1
|
|
cmp r3, #0
|
|
ldmgtia sp!, {r3, r4, r5, pc}
|
|
ldr r1, _021840a8 ; =data_027e0764
|
|
mov r3, #0x3c
|
|
strh r3, [r0, #0xa0]
|
|
ldr r3, [r1]
|
|
ldmib r1, {r0, ip}
|
|
umull r4, lr, ip, r3
|
|
mla lr, ip, r0, lr
|
|
ldr ip, [r1, #0xc]
|
|
ldr r5, [r1, #0x10]
|
|
mla lr, ip, r3, lr
|
|
mov r0, #0
|
|
ldr r3, [r1, #0x14]
|
|
adds r4, r5, r4
|
|
adc r3, r3, lr
|
|
mov r0, r0, lsl #0x2
|
|
str r4, [r1]
|
|
orr r0, r0, r3, lsr #30
|
|
str r3, [r1, #4]
|
|
cmp r0, #3
|
|
addls pc, pc, r0, lsl #2
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_02184048: ; jump table
|
|
b _02184058 ; case 0
|
|
b _0218406c ; case 1
|
|
b _02184080 ; case 2
|
|
b _02184094 ; case 3
|
|
_02184058:
|
|
ldr r0, _021840ac ; =data_027e0c68
|
|
mov r1, #0xef
|
|
mov r3, #0
|
|
bl func_02036da8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0218406c:
|
|
ldr r0, _021840ac ; =data_027e0c68
|
|
mov r1, #0xf0
|
|
mov r3, #0
|
|
bl func_02036da8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_02184080:
|
|
ldr r0, _021840ac ; =data_027e0c68
|
|
mov r1, #0xf1
|
|
mov r3, #0
|
|
bl func_02036da8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_02184094:
|
|
ldr r0, _021840ac ; =data_027e0c68
|
|
mov r1, #0xf2
|
|
mov r3, #0
|
|
bl func_02036da8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02183fe0
|
|
_021840a8: .word data_027e0764
|
|
_021840ac: .word data_027e0c68
|
|
|
|
.global func_ov30_021840b0
|
|
arm_func_start func_ov30_021840b0
|
|
func_ov30_021840b0: ; 0x021840b0
|
|
stmdb sp!, {r3, lr}
|
|
ldrsh r3, [r0, #0xa0]
|
|
mov r2, r1
|
|
cmp r3, #0
|
|
ldmgtia sp!, {r3, pc}
|
|
mov r1, #0x3c
|
|
strh r1, [r0, #0xa0]
|
|
ldr r0, _021840e0 ; =data_027e0c68
|
|
mov r1, #0xf3
|
|
mov r3, #0
|
|
bl func_02036da8
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021840b0
|
|
_021840e0: .word data_027e0c68
|
|
|
|
.global func_ov30_021840e4
|
|
arm_func_start func_ov30_021840e4
|
|
func_ov30_021840e4: ; 0x021840e4
|
|
ldrsh r0, [r0, #6]
|
|
bx lr
|
|
arm_func_end func_ov30_021840e4
|
|
|
|
.global func_ov30_021840ec
|
|
arm_func_start func_ov30_021840ec
|
|
func_ov30_021840ec: ; 0x021840ec
|
|
sub sp, sp, #8
|
|
mov r1, r1, lsl #0x10
|
|
ldr r2, [r0]
|
|
mov r1, r1, asr #0x10
|
|
ldr r0, [r2, r1, lsl #3]
|
|
add r1, r2, r1, lsl #3
|
|
str r0, [sp]
|
|
ldr r1, [r1, #4]
|
|
add r0, sp, #0
|
|
str r1, [sp, #4]
|
|
add sp, sp, #8
|
|
bx lr
|
|
arm_func_end func_ov30_021840ec
|
|
|
|
.global func_ov30_0218411c
|
|
arm_func_start func_ov30_0218411c
|
|
func_ov30_0218411c: ; 0x0218411c
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #8
|
|
ldr r1, _021842fc ; =data_027e0fc8
|
|
mov sl, r0
|
|
ldr r0, [r1]
|
|
bl func_ov00_020bbb64
|
|
cmp r0, #0
|
|
addne sp, sp, #8
|
|
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
mov r8, #0
|
|
sub r0, r8, #1
|
|
str r0, [sl, #0x8c]
|
|
str r0, [sl, #0x90]
|
|
ldrsh r0, [sl, #4]
|
|
mov r6, r8
|
|
sub r7, r8, #0x80000001
|
|
cmp r0, #0
|
|
ble _021841ec
|
|
ldr r4, _02184300 ; =data_027e0fe4
|
|
mov sb, r8
|
|
add fp, sp, #0
|
|
_02184170:
|
|
ldr r2, [sl]
|
|
ldr r0, [r4]
|
|
ldr r1, [r2, sb]
|
|
add r2, r2, sb
|
|
str r1, [sp]
|
|
ldr r2, [r2, #4]
|
|
mov r1, fp
|
|
str r2, [sp, #4]
|
|
bl func_ov00_020c3674
|
|
movs r5, r0
|
|
beq _021841d0
|
|
bl func_ov30_021823c4
|
|
cmp r0, #0
|
|
beq _021841d0
|
|
mov r0, r5
|
|
add r8, r8, #1
|
|
bl func_ov00_020c28ec
|
|
cmp r0, r7
|
|
bge _021841d0
|
|
ldr r2, [sp, #4]
|
|
ldr r1, [sp]
|
|
mov r7, r0
|
|
str r1, [sl, #0x8c]
|
|
str r2, [sl, #0x90]
|
|
_021841d0:
|
|
ldrsh r1, [sl, #4]
|
|
add r0, r6, #1
|
|
mov r0, r0, lsl #0x10
|
|
cmp r1, r0, asr #16
|
|
add sb, sb, #8
|
|
mov r6, r0, asr #0x10
|
|
bgt _02184170
|
|
_021841ec:
|
|
ldr r0, _02184304 ; =data_ov00_020eec68
|
|
cmp r8, #0
|
|
str r7, [r0, #0x28]
|
|
str r8, [sl, #0x88]
|
|
bne _0218424c
|
|
bl func_ov00_020d7424
|
|
cmp r0, #0xa7
|
|
bne _0218424c
|
|
ldr r0, _02184304 ; =data_ov00_020eec68
|
|
mov r1, #0xf
|
|
bl func_ov00_020d716c
|
|
ldr r0, _02184308 ; =data_027e0e60
|
|
ldr r0, [r0]
|
|
bl func_ov00_02084740
|
|
mov r1, r0
|
|
ldr r0, _02184304 ; =data_ov00_020eec68
|
|
mov r2, #0
|
|
mov r3, #0x7f
|
|
bl func_ov00_020d70a4
|
|
ldr r0, _02184308 ; =data_027e0e60
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
bl func_ov00_02084924
|
|
b _02184298
|
|
_0218424c:
|
|
ldr r0, [sl, #0x88]
|
|
cmp r0, #0
|
|
ble _02184298
|
|
ldr r0, _02184304 ; =data_ov00_020eec68
|
|
bl func_ov00_020d7424
|
|
cmp r0, #0xa7
|
|
beq _02184298
|
|
ldr r0, _02184304 ; =data_ov00_020eec68
|
|
mov r1, #0xf
|
|
bl func_ov00_020d716c
|
|
ldr r0, _02184304 ; =data_ov00_020eec68
|
|
mov r1, #0xa7
|
|
mov r2, #0
|
|
mov r3, #0x7f
|
|
bl func_ov00_020d70a4
|
|
ldr r0, _02184308 ; =data_027e0e60
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
bl func_ov00_02084924
|
|
_02184298:
|
|
ldr r0, [sl, #0x94]
|
|
cmp r0, #0
|
|
ble _021842d4
|
|
sub r0, r0, #1
|
|
str r0, [sl, #0x94]
|
|
ldr r0, [sl, #0x98]
|
|
sub r0, r0, #1
|
|
str r0, [sl, #0x98]
|
|
cmp r0, #0
|
|
bgt _021842d4
|
|
ldr r0, _0218430c ; =data_ov00_020eec9c
|
|
mov r2, #0x10
|
|
mov r1, #0x1c0
|
|
str r2, [sl, #0x98]
|
|
bl func_ov00_020d77e4
|
|
_021842d4:
|
|
ldr r0, [sl, #0x9c]
|
|
cmp r0, #0
|
|
subgt r0, r0, #1
|
|
strgt r0, [sl, #0x9c]
|
|
ldrsh r0, [sl, #0xa0]
|
|
cmp r0, #0
|
|
subgt r0, r0, #1
|
|
strgth r0, [sl, #0xa0]
|
|
add sp, sp, #8
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0218411c
|
|
_021842fc: .word data_027e0fc8
|
|
_02184300: .word data_027e0fe4
|
|
_02184304: .word data_ov00_020eec68
|
|
_02184308: .word data_027e0e60
|
|
_0218430c: .word data_ov00_020eec9c
|
|
|
|
.global func_ov30_02184310
|
|
thumb_func_start func_ov30_02184310
|
|
func_ov30_02184310: ; 0x02184310
|
|
push {r3, r4, r5, r6}
|
|
sub sp, #8
|
|
ldr r2, [r1, #8]
|
|
ldr r1, [r1, #0xc]
|
|
str r2, [sp]
|
|
str r1, [sp, #4]
|
|
mov r1, #4
|
|
ldrsh r2, [r0, r1]
|
|
mov r1, #6
|
|
ldrsh r1, [r0, r1]
|
|
cmp r1, r2
|
|
bge _02184360
|
|
mov r6, #0
|
|
cmp r2, #0
|
|
ble _02184360
|
|
ldr r3, [r0]
|
|
sub r5, r6, #1
|
|
add r1, r3, #0
|
|
_02184334:
|
|
ldr r4, [r1]
|
|
cmp r4, r5
|
|
bne _02184354
|
|
ldr r1, [sp]
|
|
lsl r2, r6, #3
|
|
str r1, [r3, r2]
|
|
ldr r1, [sp, #4]
|
|
add r4, r3, r2
|
|
str r1, [r4, #4]
|
|
mov r1, #6
|
|
ldrsh r1, [r0, r1]
|
|
add sp, #8
|
|
add r1, r1, #1
|
|
strh r1, [r0, #6]
|
|
pop {r3, r4, r5, r6}
|
|
bx lr
|
|
_02184354:
|
|
add r4, r6, #1
|
|
lsl r4, r4, #0x10
|
|
asr r6, r4, #0x10
|
|
add r1, #8
|
|
cmp r6, r2
|
|
blt _02184334
|
|
_02184360:
|
|
add sp, #8
|
|
pop {r3, r4, r5, r6}
|
|
bx lr
|
|
.align 2, 0
|
|
thumb_func_end func_ov30_02184310
|
|
|
|
.global func_ov30_02184368
|
|
thumb_func_start func_ov30_02184368
|
|
func_ov30_02184368: ; 0x02184368
|
|
push {r3, r4, r5, r6}
|
|
sub sp, #8
|
|
ldr r2, [r1, #8]
|
|
ldr r1, [r1, #0xc]
|
|
str r2, [sp]
|
|
str r1, [sp, #4]
|
|
mov r1, #6
|
|
ldrsh r3, [r0, r1]
|
|
cmp r3, #0
|
|
bgt _02184380
|
|
sub r1, r1, #7
|
|
b _021843ba
|
|
_02184380:
|
|
mov r3, #4
|
|
ldrsh r5, [r0, r3]
|
|
mov r1, #0
|
|
cmp r5, #0
|
|
ble _021843b6
|
|
ldr r4, [r0]
|
|
add r3, r4, #0
|
|
_0218438e:
|
|
ldr r6, [r3]
|
|
cmp r6, r2
|
|
bne _021843aa
|
|
mov r2, #0
|
|
lsl r3, r1, #3
|
|
mvn r2, r2
|
|
add r5, r4, r3
|
|
str r2, [r4, r3]
|
|
str r2, [r5, #4]
|
|
mov r2, #6
|
|
ldrsh r2, [r0, r2]
|
|
sub r2, r2, #1
|
|
strh r2, [r0, #6]
|
|
b _021843ba
|
|
_021843aa:
|
|
add r1, r1, #1
|
|
lsl r1, r1, #0x10
|
|
asr r1, r1, #0x10
|
|
add r3, #8
|
|
cmp r1, r5
|
|
blt _0218438e
|
|
_021843b6:
|
|
mov r1, #0
|
|
mvn r1, r1
|
|
_021843ba:
|
|
add r0, r1, #0
|
|
add sp, #8
|
|
pop {r3, r4, r5, r6}
|
|
bx lr
|
|
.align 2, 0
|
|
thumb_func_end func_ov30_02184368
|
|
|
|
.global func_ov30_021843c4
|
|
thumb_func_start func_ov30_021843c4
|
|
func_ov30_021843c4: ; 0x021843c4
|
|
push {r3, r4}
|
|
mov r4, #0
|
|
mov r3, #0xff
|
|
_021843ca:
|
|
add r2, r0, #0
|
|
add r2, #0xa4
|
|
ldrb r2, [r2]
|
|
cmp r1, r2
|
|
bne _021843da
|
|
add r2, r0, #0
|
|
add r2, #0xa4
|
|
strb r3, [r2]
|
|
_021843da:
|
|
add r2, r4, #1
|
|
lsl r2, r2, #0x10
|
|
asr r4, r2, #0x10
|
|
add r0, #0x48
|
|
cmp r4, #0x40
|
|
blt _021843ca
|
|
pop {r3, r4}
|
|
bx lr
|
|
.align 2, 0
|
|
thumb_func_end func_ov30_021843c4
|
|
|
|
.global func_ov30_021843ec
|
|
thumb_func_start func_ov30_021843ec
|
|
func_ov30_021843ec: ; 0x021843ec
|
|
push {r4, r5, r6, r7, lr}
|
|
sub sp, #0x14
|
|
str r1, [sp]
|
|
mov r6, #0
|
|
add r7, r0, #0
|
|
str r6, [sp, #8]
|
|
mov r0, #4
|
|
ldrsh r0, [r7, r0]
|
|
cmp r0, #0
|
|
bgt _02184402
|
|
b _02184546
|
|
_02184402:
|
|
str r6, [sp, #4]
|
|
_02184404:
|
|
ldr r1, [r7]
|
|
ldr r0, [sp, #4]
|
|
add r2, r1, r0
|
|
ldr r0, [r1, r0]
|
|
add r1, sp, #0xc
|
|
str r0, [sp, #0xc]
|
|
ldr r0, [r2, #4]
|
|
str r0, [sp, #0x10]
|
|
ldr r0, _0218454c ; =data_027e0fe4
|
|
ldr r0, [r0]
|
|
blx func_ov00_020c3674
|
|
add r4, r0, #0
|
|
bne _02184422
|
|
b _0218452a
|
|
_02184422:
|
|
ldr r2, [r4, #4]
|
|
ldr r1, _02184550 ; =0x43485352
|
|
cmp r2, r1
|
|
beq _02184440
|
|
add r0, r1, #0
|
|
sub r0, #0x20
|
|
cmp r2, r0
|
|
beq _02184440
|
|
add r0, r1, #0
|
|
sub r0, #0x1e
|
|
cmp r2, r0
|
|
beq _02184440
|
|
sub r1, #0x1c
|
|
cmp r2, r1
|
|
bne _0218452a
|
|
_02184440:
|
|
cmp r6, #0x40
|
|
bge _0218452a
|
|
add r1, r7, #0
|
|
mov r0, #0x48
|
|
add r1, #0xa4
|
|
mul r0, r6
|
|
add r5, r1, r0
|
|
_0218444e:
|
|
ldrb r0, [r5]
|
|
cmp r0, #0xff
|
|
bne _0218451e
|
|
ldr r0, [sp]
|
|
add r1, r4, #0
|
|
strb r0, [r5]
|
|
ldr r0, [r4, #4]
|
|
add r1, #0x14
|
|
str r0, [r5, #4]
|
|
ldr r0, [r4, #0x14]
|
|
str r0, [r5, #8]
|
|
ldr r0, [r1, #4]
|
|
str r0, [r5, #0xc]
|
|
ldr r0, [r1, #8]
|
|
str r0, [r5, #0x10]
|
|
mov r0, #0x12
|
|
ldrsh r0, [r4, r0]
|
|
strh r0, [r5, #0x14]
|
|
add r0, r4, #0
|
|
blx func_ov30_021823f0
|
|
cmp r0, #0
|
|
beq _02184490
|
|
add r1, r4, #0
|
|
ldr r0, [r4, #0x48]
|
|
add r1, #0x48
|
|
str r0, [r5, #0x18]
|
|
ldr r0, [r1, #4]
|
|
str r0, [r5, #0x1c]
|
|
ldr r0, [r1, #8]
|
|
str r0, [r5, #0x20]
|
|
mov r0, #0x78
|
|
b _021844a2
|
|
_02184490:
|
|
add r1, r4, #0
|
|
ldr r0, [r4, #0x14]
|
|
add r1, #0x14
|
|
str r0, [r5, #0x18]
|
|
ldr r0, [r1, #4]
|
|
str r0, [r5, #0x1c]
|
|
ldr r0, [r1, #8]
|
|
str r0, [r5, #0x20]
|
|
mov r0, #0x12
|
|
_021844a2:
|
|
ldrsh r0, [r4, r0]
|
|
strh r0, [r5, #0x24]
|
|
ldrh r1, [r4, #0x20]
|
|
add r0, r4, #0
|
|
add r0, #0x20
|
|
strh r1, [r5, #0x28]
|
|
ldrh r1, [r0, #2]
|
|
strh r1, [r5, #0x2a]
|
|
ldrh r1, [r0, #4]
|
|
strh r1, [r5, #0x2c]
|
|
ldrh r1, [r0, #6]
|
|
strh r1, [r5, #0x2e]
|
|
add r1, r5, #4
|
|
ldrb r2, [r0, #8]
|
|
add r1, #0x2c
|
|
strb r2, [r1]
|
|
add r1, r5, #4
|
|
ldrb r2, [r0, #9]
|
|
add r1, #0x2d
|
|
strb r2, [r1]
|
|
add r1, r5, #4
|
|
ldrb r2, [r0, #0xa]
|
|
add r1, #0x2e
|
|
strb r2, [r1]
|
|
add r1, r5, #4
|
|
ldrb r2, [r0, #0xb]
|
|
add r1, #0x2f
|
|
strb r2, [r1]
|
|
mov r1, #0xc
|
|
ldrsb r2, [r0, r1]
|
|
add r1, r5, #4
|
|
add r1, #0x30
|
|
strb r2, [r1]
|
|
add r1, r5, #4
|
|
ldrb r2, [r0, #0xd]
|
|
add r1, #0x31
|
|
strb r2, [r1]
|
|
add r1, r5, #4
|
|
ldrb r2, [r0, #0xe]
|
|
add r1, #0x32
|
|
strb r2, [r1]
|
|
mov r1, #0xf
|
|
ldrsb r2, [r0, r1]
|
|
add r1, r5, #4
|
|
add r1, #0x33
|
|
strb r2, [r1]
|
|
ldr r0, [r0, #0x10]
|
|
str r0, [r5, #0x38]
|
|
mov r0, #0x61
|
|
lsl r0, r0, #2
|
|
ldr r0, [r4, r0]
|
|
add r0, #0x80
|
|
ldr r0, [r0]
|
|
str r0, [r5, #0x3c]
|
|
mov r0, #0x22
|
|
lsl r0, r0, #6
|
|
ldr r0, [r4, r0]
|
|
str r0, [r5, #0x40]
|
|
add r0, r6, #1
|
|
lsl r0, r0, #0x10
|
|
asr r6, r0, #0x10
|
|
b _0218452a
|
|
_0218451e:
|
|
add r0, r6, #1
|
|
lsl r0, r0, #0x10
|
|
asr r6, r0, #0x10
|
|
add r5, #0x48
|
|
cmp r6, #0x40
|
|
blt _0218444e
|
|
_0218452a:
|
|
ldr r0, [sp, #4]
|
|
add r0, #8
|
|
str r0, [sp, #4]
|
|
ldr r0, [sp, #8]
|
|
add r0, r0, #1
|
|
lsl r0, r0, #0x10
|
|
asr r0, r0, #0x10
|
|
str r0, [sp, #8]
|
|
mov r0, #4
|
|
ldrsh r1, [r7, r0]
|
|
ldr r0, [sp, #8]
|
|
cmp r0, r1
|
|
bge _02184546
|
|
b _02184404
|
|
_02184546:
|
|
add sp, #0x14
|
|
pop {r4, r5, r6, r7, pc}
|
|
nop
|
|
thumb_func_end func_ov30_021843ec
|
|
_0218454c: .word data_027e0fe4
|
|
_02184550: .word 0x43485352
|
|
|
|
.global func_ov30_02184554
|
|
thumb_func_start func_ov30_02184554
|
|
func_ov30_02184554: ; 0x02184554
|
|
push {r4, r5, r6, r7, lr}
|
|
sub sp, #0x3c
|
|
add r6, r0, #0
|
|
add r5, r6, #0
|
|
str r1, [sp, #4]
|
|
mov r7, #0
|
|
add r5, #0xa8
|
|
add r4, sp, #8
|
|
_02184564:
|
|
add r0, r6, #0
|
|
add r0, #0xa4
|
|
ldrb r1, [r0]
|
|
ldr r0, [sp, #4]
|
|
cmp r0, r1
|
|
bne _02184626
|
|
mov r0, #0
|
|
mvn r0, r0
|
|
str r0, [sp, #8]
|
|
str r0, [sp, #0xc]
|
|
add r0, sp, #0x10
|
|
blx func_ov00_020c1500
|
|
mov r0, #0
|
|
mvn r0, r0
|
|
str r0, [sp, #0x2c]
|
|
str r0, [sp, #0x30]
|
|
add r0, sp, #0x10
|
|
blx func_ov00_020c3348
|
|
ldrh r0, [r5, #0x24]
|
|
add r2, r5, #4
|
|
add r3, sp, #0x10
|
|
strh r0, [r4, #8]
|
|
ldrh r0, [r5, #0x26]
|
|
strh r0, [r4, #0xa]
|
|
ldrh r0, [r5, #0x28]
|
|
strh r0, [r4, #0xc]
|
|
ldrh r0, [r5, #0x2a]
|
|
strh r0, [r4, #0xe]
|
|
add r0, r5, #0
|
|
add r0, #0x2c
|
|
ldrb r0, [r0]
|
|
strb r0, [r4, #0x10]
|
|
add r0, r5, #0
|
|
add r0, #0x2d
|
|
ldrb r0, [r0]
|
|
strb r0, [r4, #0x11]
|
|
add r0, r5, #0
|
|
add r0, #0x2e
|
|
ldrb r0, [r0]
|
|
strb r0, [r4, #0x12]
|
|
add r0, r5, #0
|
|
add r0, #0x2f
|
|
ldrb r0, [r0]
|
|
strb r0, [r4, #0x13]
|
|
mov r0, #0x30
|
|
ldrsb r0, [r5, r0]
|
|
strb r0, [r4, #0x14]
|
|
add r0, r5, #0
|
|
add r0, #0x31
|
|
ldrb r0, [r0]
|
|
strb r0, [r4, #0x15]
|
|
add r0, r5, #0
|
|
add r0, #0x32
|
|
ldrb r0, [r0]
|
|
strb r0, [r4, #0x16]
|
|
mov r0, #0x33
|
|
ldrsb r0, [r5, r0]
|
|
strb r0, [r4, #0x17]
|
|
ldr r0, [r5, #0x34]
|
|
str r0, [sp, #0x20]
|
|
mov r0, #0x10
|
|
ldrsh r0, [r5, r0]
|
|
strh r0, [r4, #0x1c]
|
|
ldr r0, [r5, #0x38]
|
|
str r0, [sp, #0x34]
|
|
ldr r0, [r5, #0x3c]
|
|
str r0, [sp, #0x38]
|
|
add r0, sp, #8
|
|
str r0, [sp]
|
|
ldr r0, _02184638 ; =data_027e0fe8
|
|
ldr r1, [r5]
|
|
ldr r0, [r0]
|
|
blx func_ov00_020c4048
|
|
ldr r0, _0218463c ; =data_027e0fe4
|
|
add r1, sp, #8
|
|
ldr r0, [r0]
|
|
blx func_ov00_020c3674
|
|
ldr r1, [r5, #0x14]
|
|
str r1, [r0, #0x48]
|
|
ldr r1, [r5, #0x18]
|
|
str r1, [r0, #0x4c]
|
|
ldr r1, [r5, #0x1c]
|
|
str r1, [r0, #0x50]
|
|
ldr r1, [r5, #0x14]
|
|
str r1, [r0, #0x54]
|
|
ldr r1, [r5, #0x18]
|
|
str r1, [r0, #0x58]
|
|
ldr r1, [r5, #0x1c]
|
|
str r1, [r0, #0x5c]
|
|
mov r1, #0x20
|
|
ldrsh r1, [r5, r1]
|
|
add r0, #0x78
|
|
strh r1, [r0]
|
|
_02184626:
|
|
add r0, r7, #1
|
|
lsl r0, r0, #0x10
|
|
asr r7, r0, #0x10
|
|
add r6, #0x48
|
|
add r5, #0x48
|
|
cmp r7, #0x40
|
|
blt _02184564
|
|
add sp, #0x3c
|
|
pop {r4, r5, r6, r7, pc}
|
|
.align 2, 0
|
|
thumb_func_end func_ov30_02184554
|
|
_02184638: .word data_027e0fe8
|
|
_0218463c: .word data_027e0fe4
|
|
|
|
.global func_ov30_02184640
|
|
thumb_func_start func_ov30_02184640
|
|
func_ov30_02184640: ; 0x02184640
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
sub sp, #0x18
|
|
add r5, r0, #0
|
|
mov r0, #6
|
|
ldrsh r0, [r5, r0]
|
|
str r0, [sp, #8]
|
|
cmp r0, #0
|
|
beq _0218470e
|
|
ldr r0, _02184714 ; =0x00004844
|
|
ldr r1, [sp, #8]
|
|
mov r2, #4
|
|
mul r0, r1
|
|
ldr r1, _02184718 ; =data_027e0ce0
|
|
ldr r1, [r1, #4]
|
|
blx func_0202e9f4
|
|
cmp r0, #0
|
|
beq _02184674
|
|
ldr r1, _0218471c ; =func_ov30_02184738
|
|
ldr r2, _02184714 ; =0x00004844
|
|
str r1, [sp]
|
|
mov r3, #0
|
|
ldr r1, [sp, #8]
|
|
str r3, [sp, #4]
|
|
blx func_0204f558
|
|
_02184674:
|
|
ldr r1, _02184720 ; =0x000012a4
|
|
mov r2, #4
|
|
str r0, [r5, r1]
|
|
ldr r0, _02184724 ; =0x00001024
|
|
ldr r1, [sp, #8]
|
|
mul r0, r1
|
|
ldr r1, _02184718 ; =data_027e0ce0
|
|
ldr r1, [r1, #4]
|
|
blx func_0202e9f4
|
|
cmp r0, #0
|
|
beq _0218469c
|
|
ldr r1, _02184728 ; =func_ov30_02187f08
|
|
ldr r2, _02184724 ; =0x00001024
|
|
str r1, [sp]
|
|
mov r3, #0
|
|
ldr r1, [sp, #8]
|
|
str r3, [sp, #4]
|
|
blx func_0204f558
|
|
_0218469c:
|
|
ldr r1, _0218472c ; =0x000012a8
|
|
str r0, [r5, r1]
|
|
mov r0, #0
|
|
str r0, [sp, #0xc]
|
|
ldr r0, [sp, #8]
|
|
cmp r0, #0
|
|
ble _021846f6
|
|
ldr r7, [sp, #0xc]
|
|
add r6, r7, #0
|
|
add r4, r7, #0
|
|
_021846b0:
|
|
ldr r0, [r5]
|
|
add r1, r0, r7
|
|
ldr r0, [r0, r7]
|
|
str r0, [sp, #0x10]
|
|
ldr r0, [r1, #4]
|
|
add r1, sp, #0x10
|
|
str r0, [sp, #0x14]
|
|
ldr r0, _02184730 ; =data_027e0fe4
|
|
ldr r0, [r0]
|
|
blx func_ov00_020c3674
|
|
ldr r1, _02184720 ; =0x000012a4
|
|
add r7, #8
|
|
ldr r1, [r5, r1]
|
|
add r2, r1, r6
|
|
ldr r1, _02184734 ; =0x000008a4
|
|
str r2, [r0, r1]
|
|
ldr r1, _0218472c ; =0x000012a8
|
|
ldr r1, [r5, r1]
|
|
add r2, r1, r4
|
|
mov r1, #0x8a
|
|
lsl r1, r1, #4
|
|
str r2, [r0, r1]
|
|
ldr r0, _02184714 ; =0x00004844
|
|
add r6, r6, r0
|
|
ldr r0, _02184724 ; =0x00001024
|
|
add r4, r4, r0
|
|
ldr r0, [sp, #0xc]
|
|
add r0, r0, #1
|
|
lsl r0, r0, #0x10
|
|
asr r1, r0, #0x10
|
|
ldr r0, [sp, #8]
|
|
str r1, [sp, #0xc]
|
|
cmp r1, r0
|
|
blt _021846b0
|
|
_021846f6:
|
|
add r0, r5, #0
|
|
mov r1, #0
|
|
add r0, #0xa0
|
|
strh r1, [r0]
|
|
add r0, r5, #0
|
|
add r0, #0x94
|
|
str r1, [r0]
|
|
add r0, r5, #0
|
|
add r0, #0x98
|
|
str r1, [r0]
|
|
add r5, #0x9c
|
|
str r1, [r5]
|
|
_0218470e:
|
|
add sp, #0x18
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
nop
|
|
thumb_func_end func_ov30_02184640
|
|
_02184714: .word 0x00004844
|
|
_02184718: .word data_027e0ce0
|
|
_0218471c: .word func_ov30_02184738
|
|
_02184720: .word 0x000012a4
|
|
_02184724: .word 0x00001024
|
|
_02184728: .word func_ov30_02187f08
|
|
_0218472c: .word 0x000012a8
|
|
_02184730: .word data_027e0fe4
|
|
_02184734: .word 0x000008a4
|
|
|
|
.global func_ov30_02184738
|
|
arm_func_start func_ov30_02184738
|
|
func_ov30_02184738: ; 0x02184738
|
|
mov r1, #0x18
|
|
str r1, [r0]
|
|
str r1, [r0, #4]
|
|
mov r1, #0
|
|
str r1, [r0, #8]
|
|
str r1, [r0, #0xc]
|
|
str r1, [r0, #0x10]
|
|
str r1, [r0, #0x14]
|
|
str r1, [r0, #0x18]
|
|
add r3, r0, #0x44
|
|
str r3, [r0, #0x1c]
|
|
strh r1, [r0, #0x2c]
|
|
strh r1, [r0, #0x2e]
|
|
strh r1, [r0, #0x30]
|
|
strh r1, [r0, #0x32]
|
|
strh r1, [r0, #0x34]
|
|
strh r1, [r0, #0x36]
|
|
add r1, r3, #0x4800
|
|
mov r2, #0
|
|
_02184784:
|
|
str r2, [r3]
|
|
str r2, [r3, #4]
|
|
str r2, [r3, #8]
|
|
str r2, [r3, #0x14]
|
|
str r2, [r3, #0x18]
|
|
strh r2, [r3, #0x1c]
|
|
strh r2, [r3, #0x1e]
|
|
add r3, r3, #0x20
|
|
cmp r3, r1
|
|
blo _02184784
|
|
bx lr
|
|
arm_func_end func_ov30_02184738
|
|
|
|
.global func_ov30_021847b0
|
|
arm_func_start func_ov30_021847b0
|
|
func_ov30_021847b0: ; 0x021847b0
|
|
stmdb sp!, {r3, lr}
|
|
ldr r1, _021847dc ; =data_027e0fe0
|
|
mov r0, #0x158
|
|
ldr r1, [r1]
|
|
mov r2, #4
|
|
ldr r1, [r1]
|
|
bl func_0202e9dc
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
blx func_ov30_021847e0
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021847b0
|
|
_021847dc: .word data_027e0fe0
|
|
|
|
.global func_ov30_021847e0
|
|
thumb_func_start func_ov30_021847e0
|
|
func_ov30_021847e0: ; 0x021847e0
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
blx func_ov00_020c1554
|
|
ldr r0, _021847f0 ; =data_ov30_02189378
|
|
str r0, [r4]
|
|
add r0, r4, #0
|
|
pop {r4, pc}
|
|
.align 2, 0
|
|
thumb_func_end func_ov30_021847e0
|
|
_021847f0: .word data_ov30_02189378
|
|
|
|
.global func_ov30_021847f4
|
|
thumb_func_start func_ov30_021847f4
|
|
func_ov30_021847f4: ; 0x021847f4
|
|
push {r3, lr}
|
|
ldrh r1, [r0, #0x22]
|
|
cmp r1, #6
|
|
bhi _0218484c
|
|
add r1, r1, r1
|
|
add r1, pc
|
|
ldrh r1, [r1, #6]
|
|
lsl r1, r1, #0x10
|
|
asr r1, r1, #0x10
|
|
add pc, r1
|
|
_02184808: ; jump table
|
|
.short _02184816 - _02184808 - 2 ; case 0
|
|
.short _0218481e - _02184808 - 2 ; case 1
|
|
.short _02184826 - _02184808 - 2 ; case 2
|
|
.short _0218482e - _02184808 - 2 ; case 3
|
|
.short _02184836 - _02184808 - 2 ; case 4
|
|
.short _0218483e - _02184808 - 2 ; case 5
|
|
.short _02184846 - _02184808 - 2 ; case 6
|
|
_02184816:
|
|
mov r1, #0
|
|
blx func_ov30_02184850
|
|
b _0218484c
|
|
_0218481e:
|
|
mov r1, #1
|
|
blx func_ov30_02184850
|
|
b _0218484c
|
|
_02184826:
|
|
mov r1, #2
|
|
blx func_ov30_02184850
|
|
b _0218484c
|
|
_0218482e:
|
|
mov r1, #3
|
|
blx func_ov30_02184850
|
|
b _0218484c
|
|
_02184836:
|
|
mov r1, #4
|
|
blx func_ov30_02184850
|
|
b _0218484c
|
|
_0218483e:
|
|
mov r1, #5
|
|
blx func_ov30_02184850
|
|
b _0218484c
|
|
_02184846:
|
|
mov r1, #6
|
|
blx func_ov30_02184850
|
|
_0218484c:
|
|
mov r0, #1
|
|
pop {r3, pc}
|
|
thumb_func_end func_ov30_021847f4
|
|
|
|
.global func_ov30_02184850
|
|
arm_func_start func_ov30_02184850
|
|
func_ov30_02184850: ; 0x02184850
|
|
mov r2, #0
|
|
str r2, [r0, #0x138]
|
|
ldr r2, [r0, #0x130]
|
|
str r2, [r0, #0x134]
|
|
str r1, [r0, #0x130]
|
|
bx lr
|
|
arm_func_end func_ov30_02184850
|
|
|
|
.global func_ov30_02184868
|
|
arm_func_start func_ov30_02184868
|
|
func_ov30_02184868: ; 0x02184868
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0x1bc
|
|
sub sp, sp, #0x400
|
|
mov r4, r0
|
|
bl func_ov00_020c313c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x1bc
|
|
addeq sp, sp, #0x400
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
mov r0, r4
|
|
bl func_ov00_020c2bf4
|
|
ldr r0, [r4, #0x130]
|
|
cmp r0, #6
|
|
addls pc, pc, r0, lsl #2
|
|
b _02185240
|
|
_021848a4: ; jump table
|
|
b _021848c0 ; case 0
|
|
b _02184a08 ; case 1
|
|
b _02184b4c ; case 2
|
|
b _02184cc0 ; case 3
|
|
b _02184e2c ; case 4
|
|
b _02184f8c ; case 5
|
|
b _021850ec ; case 6
|
|
_021848c0:
|
|
ldr r2, _0218524c ; =data_ov30_02188b08
|
|
mov r1, #0
|
|
add r3, sp, #0x500
|
|
mov r0, #0x10
|
|
add r3, r3, #0x3c
|
|
str r0, [sp, #0x534]
|
|
add r0, sp, #0x500
|
|
str r2, [sp, #0x24]
|
|
str r1, [sp, #0x28]
|
|
str r1, [sp, #0x538]
|
|
str r3, [sp, #0x530]
|
|
mvn r1, #0
|
|
add r0, r0, #0xbc
|
|
_021848f4:
|
|
str r1, [r3]
|
|
str r1, [r3, #4]
|
|
add r3, r3, #8
|
|
cmp r3, r0
|
|
blo _021848f4
|
|
ldr r0, _02185250 ; =data_027e0fe4
|
|
add r1, sp, #0x24
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x530
|
|
bl func_ov00_020c37ec
|
|
ldr r0, [sp, #0x534]
|
|
mov r6, #0
|
|
str r6, [sp, #0x18]
|
|
cmp r0, #0
|
|
ldrh sl, [r4, #0x20]
|
|
ble _021849cc
|
|
ldr sb, [sp, #0x18]
|
|
ldr fp, _02185254 ; =data_027e0e60
|
|
ldr r5, _02185250 ; =data_027e0fe4
|
|
_02184940:
|
|
ldr r1, [sp, #0x530]
|
|
ldr r0, [r5]
|
|
add r1, r1, sb
|
|
bl func_ov00_020c3674
|
|
movs r7, r0
|
|
beq _021849b8
|
|
mov r8, #0
|
|
cmp sl, #0
|
|
moveq r8, #1
|
|
beq _02184998
|
|
ldr r1, [r7, #0x48]
|
|
ldr r0, [fp]
|
|
str r1, [sp, #0x74]
|
|
ldr r2, [r7, #0x4c]
|
|
mov r1, sl
|
|
str r2, [sp, #0x78]
|
|
ldr r3, [r7, #0x50]
|
|
add r2, sp, #0x74
|
|
str r3, [sp, #0x7c]
|
|
bl func_ov00_02083770
|
|
cmp r0, #0
|
|
movne r8, #1
|
|
_02184998:
|
|
cmp r8, #0
|
|
beq _021849b8
|
|
mov r0, r7
|
|
bl func_ov30_021823d4
|
|
cmp r0, #0
|
|
moveq r0, #1
|
|
streq r0, [sp, #0x18]
|
|
beq _021849cc
|
|
_021849b8:
|
|
ldr r0, [sp, #0x534]
|
|
add r6, r6, #1
|
|
cmp r6, r0
|
|
add sb, sb, #8
|
|
blt _02184940
|
|
_021849cc:
|
|
ldr r0, [sp, #0x18]
|
|
mov r1, #0
|
|
cmp r0, #0
|
|
mov r0, r4
|
|
bne _021849f4
|
|
mov r2, #1
|
|
bl func_ov00_020c1c20
|
|
add sp, sp, #0x1bc
|
|
add sp, sp, #0x400
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_021849f4:
|
|
mov r2, r1
|
|
bl func_ov00_020c1c20
|
|
add sp, sp, #0x1bc
|
|
add sp, sp, #0x400
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02184a08:
|
|
ldr r2, _0218524c ; =data_ov30_02188b08
|
|
mov r1, #0
|
|
add r3, sp, #0x4b0
|
|
mov r0, #0x10
|
|
str r0, [sp, #0x4a8]
|
|
str r2, [sp, #0x1c]
|
|
str r1, [sp, #0x20]
|
|
str r1, [sp, #0x4ac]
|
|
str r3, [sp, #0x4a4]
|
|
mvn r1, #0
|
|
add r0, sp, #0x530
|
|
_02184a34:
|
|
str r1, [r3]
|
|
str r1, [r3, #4]
|
|
add r3, r3, #8
|
|
cmp r3, r0
|
|
blo _02184a34
|
|
ldr r0, _02185250 ; =data_027e0fe4
|
|
add r2, sp, #0x400
|
|
ldr r0, [r0]
|
|
add r1, sp, #0x1c
|
|
add r2, r2, #0xa4
|
|
bl func_ov00_020c37ec
|
|
ldr r0, [sp, #0x4a8]
|
|
mov r6, #0
|
|
str r6, [sp, #0x14]
|
|
cmp r0, #0
|
|
ldrh sl, [r4, #0x20]
|
|
ble _02184b10
|
|
ldr sb, [sp, #0x14]
|
|
ldr fp, _02185254 ; =data_027e0e60
|
|
ldr r5, _02185250 ; =data_027e0fe4
|
|
_02184a84:
|
|
ldr r1, [sp, #0x4a4]
|
|
ldr r0, [r5]
|
|
add r1, r1, sb
|
|
bl func_ov00_020c3674
|
|
movs r7, r0
|
|
beq _02184afc
|
|
mov r8, #0
|
|
cmp sl, #0
|
|
moveq r8, #1
|
|
beq _02184adc
|
|
ldr r1, [r7, #0x48]
|
|
ldr r0, [fp]
|
|
str r1, [sp, #0x68]
|
|
ldr r2, [r7, #0x4c]
|
|
mov r1, sl
|
|
str r2, [sp, #0x6c]
|
|
ldr r3, [r7, #0x50]
|
|
add r2, sp, #0x68
|
|
str r3, [sp, #0x70]
|
|
bl func_ov00_02083770
|
|
cmp r0, #0
|
|
movne r8, #1
|
|
_02184adc:
|
|
cmp r8, #0
|
|
beq _02184afc
|
|
mov r0, r7
|
|
bl func_ov30_021823c4
|
|
cmp r0, #0
|
|
movne r0, #1
|
|
strne r0, [sp, #0x14]
|
|
bne _02184b10
|
|
_02184afc:
|
|
ldr r0, [sp, #0x4a8]
|
|
add r6, r6, #1
|
|
cmp r6, r0
|
|
add sb, sb, #8
|
|
blt _02184a84
|
|
_02184b10:
|
|
ldr r0, [sp, #0x14]
|
|
mov r1, #0
|
|
cmp r0, #0
|
|
mov r0, r4
|
|
beq _02184b38
|
|
mov r2, #1
|
|
bl func_ov00_020c1c20
|
|
add sp, sp, #0x1bc
|
|
add sp, sp, #0x400
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02184b38:
|
|
mov r2, r1
|
|
bl func_ov00_020c1c20
|
|
add sp, sp, #0x1bc
|
|
add sp, sp, #0x400
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02184b4c:
|
|
ldr r6, _02185258 ; =data_ov00_020e72f0
|
|
mov r2, #0
|
|
add r1, sp, #0x490
|
|
mvn r3, #0
|
|
ldr r5, _0218525c ; =0x57544352
|
|
mov r0, #0x10
|
|
add r7, sp, #0x3dc
|
|
str r0, [sp, #0x3d4]
|
|
add r0, sp, #0x400
|
|
str r6, [sp, #0x45c]
|
|
str r5, [sp, #0x460]
|
|
str r3, [sp, #0x464]
|
|
str r3, [sp, #0x468]
|
|
str r2, [sp, #0x46c]
|
|
strb r2, [sp, #0x470]
|
|
strb r2, [sp, #0x48c]
|
|
str r2, [r1, #0xc]
|
|
str r2, [r1]
|
|
str r2, [r1, #4]
|
|
str r2, [r1, #8]
|
|
str r7, [sp, #0x3d0]
|
|
str r2, [sp, #0x3d8]
|
|
add r0, r0, #0x5c
|
|
_02184ba8:
|
|
str r3, [r7]
|
|
str r3, [r7, #4]
|
|
add r7, r7, #8
|
|
cmp r7, r0
|
|
blo _02184ba8
|
|
ldr r0, _02185250 ; =data_027e0fe4
|
|
add r1, sp, #0x400
|
|
ldr r0, [r0]
|
|
add r1, r1, #0x5c
|
|
add r2, sp, #0x3d0
|
|
bl func_ov00_020c37ec
|
|
ldr r0, [sp, #0x3d4]
|
|
mov r6, #0
|
|
str r6, [sp, #0x10]
|
|
cmp r0, #0
|
|
ldrh sl, [r4, #0x20]
|
|
ble _02184c84
|
|
ldr sb, [sp, #0x10]
|
|
ldr fp, _02185254 ; =data_027e0e60
|
|
ldr r5, _02185250 ; =data_027e0fe4
|
|
_02184bf8:
|
|
ldr r1, [sp, #0x3d0]
|
|
ldr r0, [r5]
|
|
add r1, r1, sb
|
|
bl func_ov00_020c3674
|
|
movs r7, r0
|
|
beq _02184c70
|
|
mov r8, #0
|
|
cmp sl, #0
|
|
moveq r8, #1
|
|
beq _02184c50
|
|
ldr r1, [r7, #0x48]
|
|
ldr r0, [fp]
|
|
str r1, [sp, #0x5c]
|
|
ldr r2, [r7, #0x4c]
|
|
mov r1, sl
|
|
str r2, [sp, #0x60]
|
|
ldr r3, [r7, #0x50]
|
|
add r2, sp, #0x5c
|
|
str r3, [sp, #0x64]
|
|
bl func_ov00_02083770
|
|
cmp r0, #0
|
|
movne r8, #1
|
|
_02184c50:
|
|
cmp r8, #0
|
|
beq _02184c70
|
|
mov r0, r7
|
|
bl func_ov26_02170014
|
|
cmp r0, #0
|
|
movne r0, #1
|
|
strne r0, [sp, #0x10]
|
|
bne _02184c84
|
|
_02184c70:
|
|
ldr r0, [sp, #0x3d4]
|
|
add r6, r6, #1
|
|
cmp r6, r0
|
|
add sb, sb, #8
|
|
blt _02184bf8
|
|
_02184c84:
|
|
ldr r0, [sp, #0x10]
|
|
mov r1, #0
|
|
cmp r0, #0
|
|
mov r0, r4
|
|
beq _02184cac
|
|
mov r2, #1
|
|
bl func_ov00_020c1c20
|
|
add sp, sp, #0x1bc
|
|
add sp, sp, #0x400
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02184cac:
|
|
mov r2, r1
|
|
bl func_ov00_020c1c20
|
|
add sp, sp, #0x1bc
|
|
add sp, sp, #0x400
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02184cc0:
|
|
ldr r6, _02185258 ; =data_ov00_020e72f0
|
|
mov r2, #0
|
|
add r1, sp, #0x3bc
|
|
mvn r3, #0
|
|
ldr r5, _0218525c ; =0x57544352
|
|
add r7, sp, #0x308
|
|
mov r0, #0x10
|
|
str r0, [sp, #0x300]
|
|
str r6, [sp, #0x388]
|
|
str r5, [sp, #0x38c]
|
|
str r3, [sp, #0x390]
|
|
str r3, [sp, #0x394]
|
|
str r2, [sp, #0x398]
|
|
strb r2, [sp, #0x39c]
|
|
strb r2, [sp, #0x3b8]
|
|
str r2, [r1, #0xc]
|
|
str r2, [r1]
|
|
str r2, [r1, #4]
|
|
str r2, [r1, #8]
|
|
str r7, [sp, #0x2fc]
|
|
str r2, [sp, #0x304]
|
|
add r0, sp, #0x388
|
|
_02184d18:
|
|
str r3, [r7]
|
|
str r3, [r7, #4]
|
|
add r7, r7, #8
|
|
cmp r7, r0
|
|
blo _02184d18
|
|
ldr r0, _02185250 ; =data_027e0fe4
|
|
add r1, sp, #0x388
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x2fc
|
|
bl func_ov00_020c37ec
|
|
ldr r0, [sp, #0x300]
|
|
mov r6, #0
|
|
str r6, [sp, #0xc]
|
|
cmp r0, #0
|
|
ldrh sl, [r4, #0x20]
|
|
ble _02184df0
|
|
ldr sb, [sp, #0xc]
|
|
ldr fp, _02185254 ; =data_027e0e60
|
|
ldr r5, _02185250 ; =data_027e0fe4
|
|
_02184d64:
|
|
ldr r1, [sp, #0x2fc]
|
|
ldr r0, [r5]
|
|
add r1, r1, sb
|
|
bl func_ov00_020c3674
|
|
movs r7, r0
|
|
beq _02184ddc
|
|
mov r8, #0
|
|
cmp sl, #0
|
|
moveq r8, #1
|
|
beq _02184dbc
|
|
ldr r1, [r7, #0x48]
|
|
ldr r0, [fp]
|
|
str r1, [sp, #0x50]
|
|
ldr r2, [r7, #0x4c]
|
|
mov r1, sl
|
|
str r2, [sp, #0x54]
|
|
ldr r3, [r7, #0x50]
|
|
add r2, sp, #0x50
|
|
str r3, [sp, #0x58]
|
|
bl func_ov00_02083770
|
|
cmp r0, #0
|
|
movne r8, #1
|
|
_02184dbc:
|
|
cmp r8, #0
|
|
beq _02184ddc
|
|
mov r0, r7
|
|
bl func_ov26_0217004c
|
|
cmp r0, #0
|
|
movne r0, #1
|
|
strne r0, [sp, #0xc]
|
|
bne _02184df0
|
|
_02184ddc:
|
|
ldr r0, [sp, #0x300]
|
|
add r6, r6, #1
|
|
cmp r6, r0
|
|
add sb, sb, #8
|
|
blt _02184d64
|
|
_02184df0:
|
|
ldr r0, [sp, #0xc]
|
|
mov r1, #0
|
|
cmp r0, #0
|
|
mov r0, r4
|
|
bne _02184e18
|
|
mov r2, #1
|
|
bl func_ov00_020c1c20
|
|
add sp, sp, #0x1bc
|
|
add sp, sp, #0x400
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02184e18:
|
|
mov r2, r1
|
|
bl func_ov00_020c1c20
|
|
add sp, sp, #0x1bc
|
|
add sp, sp, #0x400
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02184e2c:
|
|
ldr r6, _02185258 ; =data_ov00_020e72f0
|
|
mov r2, #0
|
|
add r1, sp, #0x2e8
|
|
mvn r3, #0
|
|
ldr r5, _02185260 ; =0x43485352
|
|
add r7, sp, #0x234
|
|
mov r0, #0x10
|
|
str r0, [sp, #0x22c]
|
|
str r6, [sp, #0x2b4]
|
|
str r5, [sp, #0x2b8]
|
|
str r3, [sp, #0x2bc]
|
|
str r3, [sp, #0x2c0]
|
|
str r2, [sp, #0x2c4]
|
|
strb r2, [sp, #0x2c8]
|
|
strb r2, [sp, #0x2e4]
|
|
str r2, [r1, #0xc]
|
|
str r2, [r1]
|
|
str r2, [r1, #4]
|
|
str r2, [r1, #8]
|
|
str r7, [sp, #0x228]
|
|
str r2, [sp, #0x230]
|
|
add r0, sp, #0x2b4
|
|
_02184e84:
|
|
str r3, [r7]
|
|
str r3, [r7, #4]
|
|
add r7, r7, #8
|
|
cmp r7, r0
|
|
blo _02184e84
|
|
ldr r0, _02185250 ; =data_027e0fe4
|
|
add r1, sp, #0x2b4
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x228
|
|
bl func_ov00_020c37ec
|
|
ldr r0, [sp, #0x22c]
|
|
mov r7, #0
|
|
str r7, [sp, #8]
|
|
cmp r0, #0
|
|
ldrh sl, [r4, #0x20]
|
|
ble _02184f50
|
|
ldr sb, [sp, #8]
|
|
ldr r5, _02185254 ; =data_027e0e60
|
|
ldr r6, _02185250 ; =data_027e0fe4
|
|
mov fp, r7
|
|
_02184ed4:
|
|
ldr r1, [sp, #0x228]
|
|
ldr r0, [r6]
|
|
add r1, r1, sb
|
|
bl func_ov00_020c3674
|
|
cmp r0, #0
|
|
beq _02184f3c
|
|
mov r8, fp
|
|
cmp sl, #0
|
|
moveq r8, #1
|
|
beq _02184f2c
|
|
ldr r2, [r0, #0x48]
|
|
mov r1, sl
|
|
str r2, [sp, #0x44]
|
|
ldr r3, [r0, #0x4c]
|
|
add r2, sp, #0x44
|
|
str r3, [sp, #0x48]
|
|
ldr r3, [r0, #0x50]
|
|
ldr r0, [r5]
|
|
str r3, [sp, #0x4c]
|
|
bl func_ov00_02083770
|
|
cmp r0, #0
|
|
movne r8, #1
|
|
_02184f2c:
|
|
cmp r8, #0
|
|
movne r0, #1
|
|
strne r0, [sp, #8]
|
|
bne _02184f50
|
|
_02184f3c:
|
|
ldr r0, [sp, #0x22c]
|
|
add r7, r7, #1
|
|
cmp r7, r0
|
|
add sb, sb, #8
|
|
blt _02184ed4
|
|
_02184f50:
|
|
ldr r0, [sp, #8]
|
|
mov r1, #0
|
|
cmp r0, #0
|
|
mov r0, r4
|
|
bne _02184f78
|
|
mov r2, #1
|
|
bl func_ov00_020c1c20
|
|
add sp, sp, #0x1bc
|
|
add sp, sp, #0x400
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02184f78:
|
|
mov r2, r1
|
|
bl func_ov00_020c1c20
|
|
add sp, sp, #0x1bc
|
|
add sp, sp, #0x400
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02184f8c:
|
|
ldr r6, _02185258 ; =data_ov00_020e72f0
|
|
mov r2, #0
|
|
add r1, sp, #0x214
|
|
mvn r3, #0
|
|
ldr r5, _02185264 ; =0x43485332
|
|
add r7, sp, #0x160
|
|
mov r0, #0x10
|
|
str r0, [sp, #0x158]
|
|
str r6, [sp, #0x1e0]
|
|
str r5, [sp, #0x1e4]
|
|
str r3, [sp, #0x1e8]
|
|
str r3, [sp, #0x1ec]
|
|
str r2, [sp, #0x1f0]
|
|
strb r2, [sp, #0x1f4]
|
|
strb r2, [sp, #0x210]
|
|
str r2, [r1, #0xc]
|
|
str r2, [r1]
|
|
str r2, [r1, #4]
|
|
str r2, [r1, #8]
|
|
str r7, [sp, #0x154]
|
|
str r2, [sp, #0x15c]
|
|
add r0, sp, #0x1e0
|
|
_02184fe4:
|
|
str r3, [r7]
|
|
str r3, [r7, #4]
|
|
add r7, r7, #8
|
|
cmp r7, r0
|
|
blo _02184fe4
|
|
ldr r0, _02185250 ; =data_027e0fe4
|
|
add r1, sp, #0x1e0
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x154
|
|
bl func_ov00_020c37ec
|
|
ldr r0, [sp, #0x158]
|
|
mov r7, #0
|
|
str r7, [sp, #4]
|
|
cmp r0, #0
|
|
ldrh sl, [r4, #0x20]
|
|
ble _021850b0
|
|
ldr sb, [sp, #4]
|
|
ldr r5, _02185254 ; =data_027e0e60
|
|
ldr r6, _02185250 ; =data_027e0fe4
|
|
mov fp, r7
|
|
_02185034:
|
|
ldr r1, [sp, #0x154]
|
|
ldr r0, [r6]
|
|
add r1, r1, sb
|
|
bl func_ov00_020c3674
|
|
cmp r0, #0
|
|
beq _0218509c
|
|
mov r8, fp
|
|
cmp sl, #0
|
|
moveq r8, #1
|
|
beq _0218508c
|
|
ldr r2, [r0, #0x48]
|
|
mov r1, sl
|
|
str r2, [sp, #0x38]
|
|
ldr r3, [r0, #0x4c]
|
|
add r2, sp, #0x38
|
|
str r3, [sp, #0x3c]
|
|
ldr r3, [r0, #0x50]
|
|
ldr r0, [r5]
|
|
str r3, [sp, #0x40]
|
|
bl func_ov00_02083770
|
|
cmp r0, #0
|
|
movne r8, #1
|
|
_0218508c:
|
|
cmp r8, #0
|
|
movne r0, #1
|
|
strne r0, [sp, #4]
|
|
bne _021850b0
|
|
_0218509c:
|
|
ldr r0, [sp, #0x158]
|
|
add r7, r7, #1
|
|
cmp r7, r0
|
|
add sb, sb, #8
|
|
blt _02185034
|
|
_021850b0:
|
|
ldr r0, [sp, #4]
|
|
mov r1, #0
|
|
cmp r0, #0
|
|
mov r0, r4
|
|
bne _021850d8
|
|
mov r2, #1
|
|
bl func_ov00_020c1c20
|
|
add sp, sp, #0x1bc
|
|
add sp, sp, #0x400
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_021850d8:
|
|
mov r2, r1
|
|
bl func_ov00_020c1c20
|
|
add sp, sp, #0x1bc
|
|
add sp, sp, #0x400
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_021850ec:
|
|
ldr r6, _02185258 ; =data_ov00_020e72f0
|
|
mov r2, #0
|
|
add r1, sp, #0x140
|
|
mvn r3, #0
|
|
ldr r5, _02185268 ; =0x43485336
|
|
add r7, sp, #0x8c
|
|
mov r0, #0x10
|
|
str r0, [sp, #0x84]
|
|
str r6, [sp, #0x10c]
|
|
str r5, [sp, #0x110]
|
|
str r3, [sp, #0x114]
|
|
str r3, [sp, #0x118]
|
|
str r2, [sp, #0x11c]
|
|
strb r2, [sp, #0x120]
|
|
strb r2, [sp, #0x13c]
|
|
str r2, [r1, #0xc]
|
|
str r2, [r1]
|
|
str r2, [r1, #4]
|
|
str r2, [r1, #8]
|
|
str r7, [sp, #0x80]
|
|
str r2, [sp, #0x88]
|
|
add r0, sp, #0x10c
|
|
_02185144:
|
|
str r3, [r7]
|
|
str r3, [r7, #4]
|
|
add r7, r7, #8
|
|
cmp r7, r0
|
|
blo _02185144
|
|
ldr r0, _02185250 ; =data_027e0fe4
|
|
add r1, sp, #0x10c
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x80
|
|
bl func_ov00_020c37ec
|
|
ldr r0, [sp, #0x84]
|
|
mov r7, #0
|
|
str r7, [sp]
|
|
cmp r0, #0
|
|
ldrh sl, [r4, #0x20]
|
|
ble _02185210
|
|
ldr sb, [sp]
|
|
ldr r5, _02185254 ; =data_027e0e60
|
|
ldr r6, _02185250 ; =data_027e0fe4
|
|
mov fp, r7
|
|
_02185194:
|
|
ldr r1, [sp, #0x80]
|
|
ldr r0, [r6]
|
|
add r1, r1, sb
|
|
bl func_ov00_020c3674
|
|
cmp r0, #0
|
|
beq _021851fc
|
|
mov r8, fp
|
|
cmp sl, #0
|
|
moveq r8, #1
|
|
beq _021851ec
|
|
ldr r2, [r0, #0x48]
|
|
mov r1, sl
|
|
str r2, [sp, #0x2c]
|
|
ldr r3, [r0, #0x4c]
|
|
add r2, sp, #0x2c
|
|
str r3, [sp, #0x30]
|
|
ldr r3, [r0, #0x50]
|
|
ldr r0, [r5]
|
|
str r3, [sp, #0x34]
|
|
bl func_ov00_02083770
|
|
cmp r0, #0
|
|
movne r8, #1
|
|
_021851ec:
|
|
cmp r8, #0
|
|
movne r0, #1
|
|
strne r0, [sp]
|
|
bne _02185210
|
|
_021851fc:
|
|
ldr r0, [sp, #0x84]
|
|
add r7, r7, #1
|
|
cmp r7, r0
|
|
add sb, sb, #8
|
|
blt _02185194
|
|
_02185210:
|
|
ldr r0, [sp]
|
|
mov r1, #0
|
|
cmp r0, #0
|
|
mov r0, r4
|
|
bne _02185238
|
|
mov r2, #1
|
|
bl func_ov00_020c1c20
|
|
add sp, sp, #0x1bc
|
|
add sp, sp, #0x400
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02185238:
|
|
mov r2, r1
|
|
bl func_ov00_020c1c20
|
|
_02185240:
|
|
add sp, sp, #0x1bc
|
|
add sp, sp, #0x400
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02184868
|
|
_0218524c: .word data_ov30_02188b08
|
|
_02185250: .word data_027e0fe4
|
|
_02185254: .word data_027e0e60
|
|
_02185258: .word data_ov00_020e72f0
|
|
_0218525c: .word 0x57544352
|
|
_02185260: .word 0x43485352
|
|
_02185264: .word 0x43485332
|
|
_02185268: .word 0x43485336
|
|
|
|
.global func_ov30_0218526c
|
|
arm_func_start func_ov30_0218526c
|
|
func_ov30_0218526c: ; 0x0218526c
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c1730
|
|
mov r0, r4
|
|
bl func_0202ea0c
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_0218526c
|
|
|
|
.global func_ov30_02185288
|
|
arm_func_start func_ov30_02185288
|
|
func_ov30_02185288: ; 0x02185288
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c1730
|
|
mov r0, r4
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_02185288
|
|
|
|
.global func_ov30_0218529c
|
|
arm_func_start func_ov30_0218529c
|
|
func_ov30_0218529c: ; 0x0218529c
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
|
|
sub sp, sp, #4
|
|
mov r7, r0
|
|
mov r6, r1
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
ldr r5, [r4, #0x8a4]
|
|
cmp r6, #0x10
|
|
addls pc, pc, r6, lsl #2
|
|
b _021856d0
|
|
_021852c4: ; jump table
|
|
b _02185308 ; case 0
|
|
b _02185360 ; case 1
|
|
b _02185384 ; case 2
|
|
b _021853bc ; case 3
|
|
b _021853e8 ; case 4
|
|
b _02185430 ; case 5
|
|
b _02185488 ; case 6
|
|
b _021854f0 ; case 7
|
|
b _02185538 ; case 8
|
|
b _02185580 ; case 9
|
|
b _021855b8 ; case 10
|
|
b _021855e4 ; case 11
|
|
b _02185610 ; case 12
|
|
b _021856d0 ; case 13
|
|
b _02185648 ; case 14
|
|
b _021856a4 ; case 15
|
|
b _021856bc ; case 16
|
|
_02185308:
|
|
mov r1, #1
|
|
bl func_ov30_021823cc
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r5, r0
|
|
mov r1, #7
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r5, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
ldr r1, [r4, #4]
|
|
ldr r0, _021856e4 ; =0x43485334
|
|
cmp r1, r0
|
|
beq _021856d0
|
|
ldr r0, _021856e8 ; =data_027e10b4
|
|
add r1, r4, #0x48
|
|
ldr r0, [r0]
|
|
bl func_ov30_02183fe0
|
|
b _021856d0
|
|
_02185360:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
b _021856d0
|
|
_02185384:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r5, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r5, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
ldrsh r0, [r4, #0x78]
|
|
sub r0, r0, #0x8000
|
|
strh r0, [r7, #0x68]
|
|
b _021856d0
|
|
_021853bc:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r5, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r5, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
b _021856d0
|
|
_021853e8:
|
|
mov r1, #1
|
|
bl func_ov30_021823cc
|
|
mov r3, #0x100
|
|
mov r0, r5
|
|
add r1, r4, #0x48
|
|
add r2, r7, #0x5c
|
|
str r3, [sp]
|
|
bl func_ov30_02187c00
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
b _021856d0
|
|
_02185430:
|
|
mov r2, #1
|
|
mov r1, #0
|
|
strb r2, [r7, #0xc]
|
|
bl func_ov00_020cb160
|
|
mov r8, r0
|
|
mov r1, #1
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r8, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182eb4
|
|
mov r0, r4
|
|
bl func_ov00_020c29d8
|
|
mov r0, r5
|
|
ldr r2, [r4, #0xa0]
|
|
add r1, r4, #0x48
|
|
str r2, [sp]
|
|
ldr r2, [r4, #0x98]
|
|
ldrh r3, [r4, #0x9c]
|
|
bl func_ov30_02187e18
|
|
b _021856d0
|
|
_02185488:
|
|
mov r2, #0
|
|
mov r1, #1
|
|
strb r2, [r7, #0xc]
|
|
bl func_ov30_021823cc
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r5, r0
|
|
mov r1, #1
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r5, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182eb4
|
|
mov r0, r4
|
|
bl func_ov00_020c29d8
|
|
ldr r1, [r4, #4]
|
|
ldr r0, _021856e4 ; =0x43485334
|
|
cmp r1, r0
|
|
beq _021856d0
|
|
ldr r0, _021856e8 ; =data_027e10b4
|
|
add r1, r4, #0x48
|
|
ldr r0, [r0]
|
|
bl func_ov30_02183fe0
|
|
b _021856d0
|
|
_021854f0:
|
|
mov r2, #0
|
|
mov r1, #1
|
|
strb r2, [r7, #0xc]
|
|
bl func_ov30_021823cc
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r5, r0
|
|
mov r1, #1
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r5, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182eb4
|
|
mov r0, r4
|
|
bl func_ov00_020c29d8
|
|
b _021856d0
|
|
_02185538:
|
|
mov r2, #0
|
|
mov r1, #1
|
|
strb r2, [r7, #0xc]
|
|
bl func_ov30_021823cc
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r5, r0
|
|
mov r1, #1
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r5, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182eb4
|
|
mov r0, r4
|
|
bl func_ov00_020c29d8
|
|
b _021856d0
|
|
_02185580:
|
|
mov r1, #1
|
|
bl func_ov30_021823cc
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r5, r0
|
|
mov r1, #2
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r5, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
b _021856d0
|
|
_021855b8:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r5, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r5, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
b _021856d0
|
|
_021855e4:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r5, r0
|
|
mov r1, #2
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r5, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
b _021856d0
|
|
_02185610:
|
|
mov r1, #0
|
|
bl func_ov30_021823cc
|
|
mov r2, #1
|
|
mov r0, r4
|
|
mov r1, #0
|
|
strb r2, [r4, #0x87e]
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #5
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
b _021856d0
|
|
_02185648:
|
|
mov r1, #1
|
|
bl func_ov30_021823cc
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r5, r0
|
|
mov r1, #9
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r5, #0x10]
|
|
mov r2, #0x1000
|
|
ldr r1, _021856ec ; =data_027e0f94
|
|
str r2, [r0, #0x10]
|
|
ldr r2, [r1]
|
|
add r0, r7, #0x10
|
|
str r2, [r7, #0x50]
|
|
ldr r2, [r1, #4]
|
|
str r2, [r7, #0x54]
|
|
ldr r1, [r1, #8]
|
|
str r1, [r7, #0x58]
|
|
bl func_ov30_0217c1c8
|
|
mov r0, #0x1f
|
|
strb r0, [r4, #0xab7]
|
|
b _021856d0
|
|
_021856a4:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
mov r1, #0
|
|
str r1, [r0, #0x10]
|
|
b _021856d0
|
|
_021856bc:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
_021856d0:
|
|
mov r0, r7
|
|
str r6, [r7, #8]
|
|
bl func_ov00_020c50fc
|
|
add sp, sp, #4
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0218529c
|
|
_021856e4: .word 0x43485334
|
|
_021856e8: .word data_027e10b4
|
|
_021856ec: .word data_027e0f94
|
|
|
|
.global func_ov30_021856f0
|
|
arm_func_start func_ov30_021856f0
|
|
func_ov30_021856f0: ; 0x021856f0
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
sub sp, sp, #8
|
|
mov r5, r0
|
|
mov r4, r1
|
|
bl func_ov00_020c5118
|
|
mov r2, #0
|
|
strb r2, [r0, #0x87e]
|
|
sub r0, r2, #1
|
|
str r0, [sp, #4]
|
|
add r1, sp, #0
|
|
str r2, [sp]
|
|
add r0, r5, #0x10
|
|
bl func_ov30_0217c1ac
|
|
ldr r0, [r4]
|
|
cmp r0, #3
|
|
addls pc, pc, r0, lsl #2
|
|
b _0218578c
|
|
_02185734: ; jump table
|
|
b _02185780 ; case 0
|
|
b _02185744 ; case 1
|
|
b _02185758 ; case 2
|
|
b _0218576c ; case 3
|
|
_02185744:
|
|
mov r0, r5
|
|
mov r1, #1
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_02185758:
|
|
mov r0, r5
|
|
mov r1, #3
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_0218576c:
|
|
mov r0, r5
|
|
mov r1, #0xd
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_02185780:
|
|
mov r0, r5
|
|
mov r1, #0
|
|
bl func_ov30_0218529c
|
|
_0218578c:
|
|
add sp, sp, #8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov30_021856f0
|
|
|
|
.global func_ov30_02185794
|
|
arm_func_start func_ov30_02185794
|
|
func_ov30_02185794: ; 0x02185794
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
sub sp, sp, #0x68
|
|
mov r6, r0
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
add r0, r6, #0x10
|
|
ldr r5, [r4, #0x8a4]
|
|
bl func_ov30_0217c21c
|
|
ldr r0, [r6, #8]
|
|
mov r7, #0
|
|
cmp r0, #0x10
|
|
addls pc, pc, r0, lsl #2
|
|
b _02185824
|
|
_021857c8: ; jump table
|
|
b _0218580c ; case 0
|
|
b _0218580c ; case 1
|
|
b _0218580c ; case 2
|
|
b _0218580c ; case 3
|
|
b _02185824 ; case 4
|
|
b _02185824 ; case 5
|
|
b _0218580c ; case 6
|
|
b _0218580c ; case 7
|
|
b _0218580c ; case 8
|
|
b _0218580c ; case 9
|
|
b _0218580c ; case 10
|
|
b _0218580c ; case 11
|
|
b _02185824 ; case 12
|
|
b _02185824 ; case 13
|
|
b _02185824 ; case 14
|
|
b _02185824 ; case 15
|
|
b _02185824 ; case 16
|
|
_0218580c:
|
|
mov r1, #1
|
|
mov r0, r4
|
|
mov r2, r1
|
|
bl func_ov30_0217d09c
|
|
cmp r0, #0
|
|
movne r7, #1
|
|
_02185824:
|
|
cmp r7, #0
|
|
beq _0218587c
|
|
ldr r0, _021863d4 ; =data_027e0f94
|
|
add r3, sp, #0x5c
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
mov r2, #0
|
|
add r0, sp, #0x10
|
|
mov r1, r3
|
|
strh r2, [sp, #0x10]
|
|
strh r2, [sp, #0x12]
|
|
bl func_ov30_021872c4
|
|
add r0, sp, #0x10
|
|
add r1, sp, #0x5c
|
|
bl func_ov30_02187304
|
|
add r1, sp, #0x5c
|
|
mov r0, r4
|
|
bl func_ov00_020cca68
|
|
cmp r0, #0
|
|
bne _0218587c
|
|
add r0, r6, #0x10
|
|
bl func_ov30_0217c1c8
|
|
_0218587c:
|
|
ldr r0, [r4, #0x844]
|
|
cmp r0, #0
|
|
beq _021858c0
|
|
add r0, r4, #0xa8
|
|
ldr r1, [r0, #0xa00]
|
|
ldr r0, [r0, #0xa08]
|
|
cmp r1, r0
|
|
beq _021858b0
|
|
add r0, r4, #0x48
|
|
add r1, r4, #0x14
|
|
bl func_ov00_020ce2f0
|
|
cmp r0, #0xc000
|
|
ble _021858c0
|
|
_021858b0:
|
|
mov r0, r6
|
|
mov r1, #0x10
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
_021858c0:
|
|
ldr r0, [r6, #8]
|
|
cmp r0, #0x10
|
|
addls pc, pc, r0, lsl #2
|
|
b _021863cc
|
|
_021858d0: ; jump table
|
|
b _02185914 ; case 0
|
|
b _021859a0 ; case 1
|
|
b _021859c8 ; case 2
|
|
b _02185a2c ; case 3
|
|
b _02185ac0 ; case 4
|
|
b _02185b28 ; case 5
|
|
b _02185c94 ; case 6
|
|
b _02185d68 ; case 7
|
|
b _02185ebc ; case 8
|
|
b _02186098 ; case 9
|
|
b _021860d8 ; case 10
|
|
b _02186124 ; case 11
|
|
b _02186180 ; case 12
|
|
b _0218623c ; case 13
|
|
b _02186294 ; case 14
|
|
b _021862f0 ; case 15
|
|
b _02186328 ; case 16
|
|
_02185914:
|
|
mov r0, r4
|
|
bl func_ov30_02182dd4
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x68
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
add r1, sp, #0x50
|
|
add r0, r6, #0x10
|
|
bl func_ov30_0217c3c0
|
|
add r1, sp, #0x50
|
|
mov r0, r4
|
|
bl func_ov00_020cca68
|
|
cmp r0, #0
|
|
bne _02185974
|
|
mov r0, r6
|
|
mov r1, #7
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185974:
|
|
ldr r1, [sp, #0x50]
|
|
mov r0, r6
|
|
str r1, [r6, #0x5c]
|
|
ldr r2, [sp, #0x54]
|
|
mov r1, #4
|
|
str r2, [r6, #0x60]
|
|
ldr r2, [sp, #0x58]
|
|
str r2, [r6, #0x64]
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_021859a0:
|
|
mov r0, r6
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #0xa
|
|
addle sp, sp, #0x68
|
|
ldmleia sp!, {r3, r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #2
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_021859c8:
|
|
ldrsh r1, [r6, #0x68]
|
|
mov r0, r4
|
|
bl func_ov30_02182e34
|
|
mov r0, r4
|
|
mov r1, #2
|
|
mov r2, #1
|
|
bl func_ov30_0217d09c
|
|
cmp r0, #0
|
|
beq _02185a00
|
|
mov r0, r6
|
|
mov r1, #0
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185a00:
|
|
ldrsh r1, [r6, #0x68]
|
|
mov r0, r4
|
|
bl func_ov30_02182e50
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x68
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #0xc
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185a2c:
|
|
mov r0, r4
|
|
bl func_ov30_02182dc0
|
|
mov r0, r4
|
|
mov r1, #2
|
|
mov r2, #1
|
|
bl func_ov30_0217d09c
|
|
cmp r0, #0
|
|
beq _02185aac
|
|
add r1, sp, #0x44
|
|
add r0, r6, #0x10
|
|
bl func_ov30_0217c3c0
|
|
add r1, sp, #0x44
|
|
mov r0, r4
|
|
bl func_ov00_020cca68
|
|
cmp r0, #0
|
|
bne _02185a80
|
|
mov r0, r6
|
|
mov r1, #7
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185a80:
|
|
ldr r1, [sp, #0x44]
|
|
mov r0, r6
|
|
str r1, [r6, #0x5c]
|
|
ldr r2, [sp, #0x48]
|
|
mov r1, #4
|
|
str r2, [r6, #0x60]
|
|
ldr r2, [sp, #0x4c]
|
|
str r2, [r6, #0x64]
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185aac:
|
|
mov r0, r6
|
|
mov r1, #0xc
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185ac0:
|
|
mov r0, r5
|
|
bl func_ov30_02187c44
|
|
mov r0, r6
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #0xf
|
|
addle sp, sp, #0x68
|
|
ldmleia sp!, {r3, r4, r5, r6, r7, pc}
|
|
mov r0, r5
|
|
bl func_ov30_02187d50
|
|
cmp r0, #0
|
|
beq _02185b00
|
|
mov r0, r6
|
|
mov r1, #0xc
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185b00:
|
|
mov r0, r5
|
|
bl func_ov30_02187d3c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x68
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #5
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185b28:
|
|
add r1, sp, #0x38
|
|
mov r0, r5
|
|
bl func_ov30_02187d88
|
|
add r1, sp, #0x38
|
|
mov r0, r4
|
|
mov r2, #2
|
|
bl func_ov30_02182ecc
|
|
add r1, sp, #0x38
|
|
mov r0, r4
|
|
bl func_ov30_02182c68
|
|
cmp r0, #0
|
|
beq _02185b74
|
|
ldr r1, [r4, #0xa0]
|
|
mov r0, r5
|
|
str r1, [sp]
|
|
ldrh r3, [r4, #0x9c]
|
|
ldr r2, [r4, #0x98]
|
|
add r1, r4, #0x48
|
|
bl func_ov30_02187e18
|
|
_02185b74:
|
|
add r1, sp, #0x2c
|
|
mov r0, r5
|
|
bl func_ov30_02187dd8
|
|
mov r0, r4
|
|
bl func_ov30_02182474
|
|
cmp r0, #0
|
|
beq _02185ba4
|
|
mov r0, r6
|
|
mov r1, #9
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185ba4:
|
|
mov r0, r4
|
|
bl func_ov30_021824cc
|
|
cmp r0, #0
|
|
beq _02185bc8
|
|
mov r0, r6
|
|
mov r1, #0xb
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185bc8:
|
|
mov r1, #1
|
|
mov r0, r4
|
|
mov r2, r1
|
|
bl func_ov30_0217d09c
|
|
cmp r0, #0
|
|
beq _02185bf4
|
|
mov r0, r6
|
|
mov r1, #6
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185bf4:
|
|
mov r0, r4
|
|
mov r1, #0xa000
|
|
bl func_ov00_020c29ec
|
|
cmp r0, #0
|
|
beq _02185c1c
|
|
mov r0, r6
|
|
mov r1, #0xc
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185c1c:
|
|
mov r0, r4
|
|
bl func_ov30_02183b90
|
|
cmp r0, #0
|
|
beq _02185c40
|
|
mov r0, r6
|
|
mov r1, #0xc
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185c40:
|
|
mov r0, r4
|
|
add r1, r6, #0x5c
|
|
bl func_ov30_02182c68
|
|
cmp r0, #0
|
|
beq _02185c68
|
|
mov r0, r6
|
|
mov r1, #7
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185c68:
|
|
add r1, sp, #0x2c
|
|
mov r0, r4
|
|
bl func_ov30_02182c68
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x68
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #0xc
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185c94:
|
|
ldr r1, _021863d4 ; =data_027e0f94
|
|
mov r0, r4
|
|
mov r2, #2
|
|
bl func_ov30_02182ecc
|
|
mov r0, r4
|
|
bl func_ov30_02182474
|
|
cmp r0, #0
|
|
beq _02185cc8
|
|
mov r0, r6
|
|
mov r1, #9
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185cc8:
|
|
mov r0, r4
|
|
bl func_ov30_021824cc
|
|
cmp r0, #0
|
|
beq _02185cec
|
|
mov r0, r6
|
|
mov r1, #0xb
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185cec:
|
|
mov r0, r4
|
|
mov r1, #0xa000
|
|
bl func_ov00_020c29ec
|
|
cmp r0, #0
|
|
beq _02185d14
|
|
mov r0, r6
|
|
mov r1, #0xc
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185d14:
|
|
mov r0, r4
|
|
bl func_ov30_02183b90
|
|
cmp r0, #0
|
|
beq _02185d38
|
|
mov r0, r6
|
|
mov r1, #0xc
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185d38:
|
|
mov r1, #1
|
|
mov r0, r4
|
|
mov r2, r1
|
|
bl func_ov30_0217d09c
|
|
cmp r0, #0
|
|
addne sp, sp, #0x68
|
|
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #7
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185d68:
|
|
mov r2, #0
|
|
add r1, sp, #0xc
|
|
add r0, r6, #0x10
|
|
strh r2, [sp, #0xc]
|
|
strh r2, [sp, #0xe]
|
|
bl func_ov30_0217c3e8
|
|
add r0, sp, #0xc
|
|
add r1, sp, #0x20
|
|
bl func_ov30_02187304
|
|
add r1, sp, #0x20
|
|
mov r0, r4
|
|
mov r2, #2
|
|
bl func_ov30_02182ecc
|
|
mov r0, r4
|
|
bl func_ov30_02182474
|
|
cmp r0, #0
|
|
beq _02185dc0
|
|
mov r0, r6
|
|
mov r1, #9
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185dc0:
|
|
mov r0, r4
|
|
bl func_ov30_021824cc
|
|
cmp r0, #0
|
|
beq _02185de4
|
|
mov r0, r6
|
|
mov r1, #0xb
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185de4:
|
|
mov r1, #1
|
|
mov r0, r4
|
|
mov r2, r1
|
|
bl func_ov30_0217d09c
|
|
cmp r0, #0
|
|
beq _02185e10
|
|
mov r0, r6
|
|
mov r1, #6
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185e10:
|
|
mov r0, r4
|
|
bl func_ov30_02183b90
|
|
cmp r0, #0
|
|
beq _02185e34
|
|
mov r0, r6
|
|
mov r1, #0xc
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185e34:
|
|
add r0, sp, #0xc
|
|
bl func_ov30_021875d4
|
|
cmp r0, #0
|
|
add r1, sp, #0x20
|
|
mov r0, r4
|
|
beq _02185e70
|
|
bl func_ov30_02182c68
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x68
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #8
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185e70:
|
|
bl func_ov00_020c288c
|
|
cmp r0, #0x800
|
|
bge _02185e90
|
|
mov r0, r6
|
|
mov r1, #0xc
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185e90:
|
|
mov r0, r4
|
|
mov r1, #0x1000
|
|
bl func_ov00_020c29ec
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x68
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #0xc
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185ebc:
|
|
mov r2, #0
|
|
add r1, sp, #8
|
|
add r0, r6, #0x10
|
|
strh r2, [sp, #8]
|
|
strh r2, [sp, #0xa]
|
|
bl func_ov30_0217c3e8
|
|
add r0, sp, #8
|
|
add r1, sp, #0x14
|
|
bl func_ov30_02187304
|
|
add r1, sp, #0x14
|
|
mov r0, r4
|
|
mov r2, #2
|
|
bl func_ov30_02182ecc
|
|
add r1, sp, #0x14
|
|
mov r0, r4
|
|
bl func_ov30_02182c68
|
|
cmp r0, #0
|
|
beq _02185f6c
|
|
add r0, r6, #0x10
|
|
bl func_ov30_0217c41c
|
|
add r0, r6, #0x10
|
|
bl func_ov30_0217c434
|
|
cmp r0, #0
|
|
beq _02185f30
|
|
mov r0, r6
|
|
mov r1, #0xc
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185f30:
|
|
mov r2, #0
|
|
add r1, sp, #4
|
|
add r0, r6, #0x10
|
|
strh r2, [sp, #4]
|
|
strh r2, [sp, #6]
|
|
bl func_ov30_0217c3e8
|
|
add r0, sp, #4
|
|
bl func_ov30_021875d4
|
|
cmp r0, #0
|
|
bne _02185f6c
|
|
mov r0, r6
|
|
mov r1, #0xc
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185f6c:
|
|
mov r0, r4
|
|
bl func_ov30_02182474
|
|
cmp r0, #0
|
|
beq _02185f90
|
|
mov r0, r6
|
|
mov r1, #9
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185f90:
|
|
mov r0, r4
|
|
bl func_ov30_021824cc
|
|
cmp r0, #0
|
|
beq _02185fb4
|
|
mov r0, r6
|
|
mov r1, #0xb
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185fb4:
|
|
ldr r1, [r4, #4]
|
|
ldr r0, _021863d8 ; =0x43485334
|
|
cmp r1, r0
|
|
bne _02185ff8
|
|
mov r0, r6
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #0x3c
|
|
ble _02185ff8
|
|
mov r0, r4
|
|
bl func_ov30_0217d3b8
|
|
cmp r0, #0
|
|
beq _02185ff8
|
|
mov r0, r6
|
|
mov r1, #0xd
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02185ff8:
|
|
mov r0, r4
|
|
mov r1, #0xa000
|
|
bl func_ov00_020c29ec
|
|
cmp r0, #0
|
|
beq _02186020
|
|
mov r0, r6
|
|
mov r1, #0xc
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02186020:
|
|
mov r1, #1
|
|
mov r0, r4
|
|
mov r2, r1
|
|
bl func_ov30_0217d09c
|
|
cmp r0, #0
|
|
beq _0218604c
|
|
mov r0, r6
|
|
mov r1, #6
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_0218604c:
|
|
mov r0, r4
|
|
bl func_ov30_02182d44
|
|
cmp r0, #0
|
|
beq _02186070
|
|
mov r0, r6
|
|
mov r1, #0xc
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02186070:
|
|
mov r0, r4
|
|
bl func_ov30_02183b90
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x68
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #0xc
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02186098:
|
|
mov r0, r4
|
|
bl func_ov30_02182dd4
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x68
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #0xa
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_021860d8:
|
|
mov r0, r4
|
|
bl func_ov30_02182dd4
|
|
mov r0, r6
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #0xf
|
|
addle sp, sp, #0x68
|
|
ldmleia sp!, {r3, r4, r5, r6, r7, pc}
|
|
ldrb r0, [r6, #0xc]
|
|
cmp r0, #0
|
|
mov r0, r6
|
|
beq _02186114
|
|
mov r1, #5
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02186114:
|
|
mov r1, #8
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02186124:
|
|
mov r0, r4
|
|
bl func_ov30_02182dc0
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x68
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
ldrb r0, [r6, #0xc]
|
|
cmp r0, #0
|
|
mov r0, r6
|
|
beq _02186170
|
|
mov r1, #5
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02186170:
|
|
mov r1, #8
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02186180:
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x68
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
mov r1, #0
|
|
mov r0, r4
|
|
strb r1, [r4, #0x87e]
|
|
bl func_ov30_021833ec
|
|
cmp r0, #0
|
|
beq _021861d4
|
|
mov r0, r6
|
|
mov r1, #8
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_021861d4:
|
|
ldr r1, [r4, #4]
|
|
ldr r0, _021863dc ; =0x43485336
|
|
cmp r1, r0
|
|
bne _02186208
|
|
ldrb r0, [r4, #0xab6]
|
|
cmp r0, #0
|
|
beq _02186208
|
|
mov r0, r6
|
|
mov r1, #0xf
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02186208:
|
|
ldr r0, [r4, #0x844]
|
|
mov r2, #0
|
|
cmp r0, #0
|
|
mov r0, r6
|
|
beq _0218622c
|
|
mov r1, #0x10
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_0218622c:
|
|
mov r1, #5
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_0218623c:
|
|
ldr r0, _021863e0 ; =data_027e0f74
|
|
mov r1, #0x11c
|
|
ldr r0, [r0]
|
|
bl func_ov00_02097760
|
|
cmp r0, #0
|
|
bne _02186280
|
|
ldr r0, _021863e0 ; =data_027e0f74
|
|
mov r1, #0x11c
|
|
ldr r0, [r0]
|
|
mov r2, #1
|
|
bl func_ov00_0209779c
|
|
mov r0, r6
|
|
mov r1, #2
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02186280:
|
|
mov r0, r6
|
|
mov r1, #0xe
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02186294:
|
|
mov r0, r6
|
|
ldrb r5, [r4, #0xab7]
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #8
|
|
blt _021862b4
|
|
cmp r5, #0x10
|
|
subhi r0, r5, #1
|
|
strhib r0, [r4, #0xab7]
|
|
_021862b4:
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
mov r1, #0x1e000
|
|
add r0, r0, #0xc
|
|
bl func_0202e310
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x68
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #0xf
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_021862f0:
|
|
mov r0, r4
|
|
add r1, r6, #0x50
|
|
bl func_ov30_02182f0c
|
|
mov r0, r4
|
|
add r1, r6, #0x50
|
|
bl func_ov30_02182c68
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x68
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #0x10
|
|
bl func_ov30_0218529c
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02186328:
|
|
ldrb r5, [r4, #0xab7]
|
|
mov r1, #0
|
|
cmp r5, #0x1f
|
|
addlo r0, r5, #1
|
|
andlo r5, r0, #0xff
|
|
strlob r5, [r4, #0xab7]
|
|
mov r0, r4
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x14]
|
|
cmp r0, #9
|
|
bne _02186398
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
beq _02186398
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r7, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
_02186398:
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x14]
|
|
cmp r0, #9
|
|
addeq sp, sp, #0x68
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
|
|
cmp r5, #0x1f
|
|
addne sp, sp, #0x68
|
|
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
|
|
mov r0, r6
|
|
mov r1, #7
|
|
bl func_ov30_0218529c
|
|
_021863cc:
|
|
add sp, sp, #0x68
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02185794
|
|
_021863d4: .word data_027e0f94
|
|
_021863d8: .word 0x43485334
|
|
_021863dc: .word 0x43485336
|
|
_021863e0: .word data_027e0f74
|
|
|
|
.global func_ov30_021863e4
|
|
arm_func_start func_ov30_021863e4
|
|
func_ov30_021863e4: ; 0x021863e4
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov r5, r1
|
|
mov r6, r0
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
cmp r5, #5
|
|
addls pc, pc, r5, lsl #2
|
|
b _021864fc
|
|
_02186404: ; jump table
|
|
b _021864fc ; case 0
|
|
b _0218641c ; case 1
|
|
b _02186450 ; case 2
|
|
b _02186484 ; case 3
|
|
b _021864b0 ; case 4
|
|
b _021864d4 ; case 5
|
|
_0218641c:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #1
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182eb4
|
|
mov r0, r4
|
|
bl func_ov00_020c29d8
|
|
b _021864fc
|
|
_02186450:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #1
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182eb4
|
|
mov r0, r4
|
|
bl func_ov00_020c29d8
|
|
b _021864fc
|
|
_02186484:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #2
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
b _021864fc
|
|
_021864b0:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r4, r0
|
|
mov r1, #0
|
|
bl func_ov00_020c5d74
|
|
ldr r0, [r4, #0x10]
|
|
mov r1, #0x1000
|
|
str r1, [r0, #0x10]
|
|
b _021864fc
|
|
_021864d4:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #5
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
_021864fc:
|
|
mov r0, r6
|
|
str r5, [r6, #8]
|
|
bl func_ov00_020c50fc
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
arm_func_end func_ov30_021863e4
|
|
|
|
.global func_ov30_0218650c
|
|
arm_func_start func_ov30_0218650c
|
|
func_ov30_0218650c: ; 0x0218650c
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov r7, r0
|
|
mov r6, r1
|
|
bl func_ov00_020c5118
|
|
mov r5, r0
|
|
mov r1, #0
|
|
add r4, r5, #0x8c
|
|
bl func_ov30_021823cc
|
|
cmp r6, #0
|
|
beq _02186574
|
|
ldrb r0, [r6]
|
|
cmp r0, #0
|
|
beq _02186564
|
|
ldrsh r2, [r5, #0x78]
|
|
ldrsb r3, [r5, #0x2c]
|
|
add r0, r4, #0x800
|
|
add r1, r5, #0x48
|
|
bl func_ov00_020c8f84
|
|
mov r0, r7
|
|
mov r1, #2
|
|
bl func_ov30_021863e4
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02186564:
|
|
mov r0, r7
|
|
mov r1, #0
|
|
bl func_ov30_021863e4
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02186574:
|
|
mov r0, r7
|
|
mov r1, #0
|
|
bl func_ov30_021863e4
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
arm_func_end func_ov30_0218650c
|
|
|
|
.global func_ov30_02186584
|
|
arm_func_start func_ov30_02186584
|
|
func_ov30_02186584: ; 0x02186584
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
|
|
sub sp, sp, #0x40
|
|
mov r7, r0
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
ldr r2, [r7, #8]
|
|
add r1, r4, #0x8c
|
|
cmp r2, #5
|
|
add r6, r1, #0x800
|
|
addls pc, pc, r2, lsl #2
|
|
b _02186940
|
|
_021865b0: ; jump table
|
|
b _021865c8 ; case 0
|
|
b _0218668c ; case 1
|
|
b _02186718 ; case 2
|
|
b _021868a4 ; case 3
|
|
b _021868e0 ; case 4
|
|
b _0218690c ; case 5
|
|
_021865c8:
|
|
ldr r3, _02186948 ; =data_ov00_020e8398
|
|
mvn r2, #0
|
|
mov r8, #1
|
|
mov r1, #0
|
|
ldr r0, _0218694c ; =data_027e0ff0
|
|
str r3, [sp, #0x20]
|
|
strb r2, [sp, #0x24]
|
|
strb r8, [sp, #0x25]
|
|
strb r1, [sp, #0x26]
|
|
strb r1, [sp, #0x27]
|
|
strb r8, [sp, #0x3c]
|
|
strb r2, [sp, #0x10]
|
|
strb r2, [sp, #0x11]
|
|
strb r2, [sp, #0x12]
|
|
strb r2, [sp, #0x13]
|
|
ldrsb r5, [r4, #0x2c]
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x20
|
|
add r3, sp, #0x10
|
|
add r1, r4, #0x48
|
|
strb r5, [sp, #0x24]
|
|
strb r8, [sp, #0x26]
|
|
bl func_ov00_020c4c00
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x40
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
ldr r1, [sp, #0x14]
|
|
mov r0, r6
|
|
str r1, [r7, #0x10]
|
|
ldr r2, [sp, #0x18]
|
|
add r1, r7, #0xc
|
|
str r2, [r7, #0x14]
|
|
ldr r3, [sp, #0x1c]
|
|
add r2, r7, #0xe
|
|
str r3, [r7, #0x18]
|
|
ldrsb r3, [sp, #0x10]
|
|
strb r3, [r7, #0xc]
|
|
ldrsb r3, [sp, #0x11]
|
|
strb r3, [r7, #0xd]
|
|
ldrsb r3, [sp, #0x12]
|
|
strb r3, [r7, #0xe]
|
|
ldrsb r3, [sp, #0x13]
|
|
strb r3, [r7, #0xf]
|
|
bl func_ov00_020c8e44
|
|
mov r0, r7
|
|
mov r1, r8
|
|
bl func_ov30_021863e4
|
|
add sp, sp, #0x40
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
_0218668c:
|
|
add r1, r7, #0x10
|
|
bl func_ov30_02182c84
|
|
movs r5, r0
|
|
bne _021866ac
|
|
mov r0, r4
|
|
add r1, r7, #0x10
|
|
mov r2, #0
|
|
bl func_ov30_02182ecc
|
|
_021866ac:
|
|
mov r0, r4
|
|
mov r1, #0x1000
|
|
bl func_ov00_020c29ec
|
|
cmp r0, #0
|
|
beq _021866f8
|
|
ldr r1, [r4, #4]
|
|
ldr r0, _02186950 ; =0x43485336
|
|
mov r2, #0
|
|
cmp r1, r0
|
|
mov r0, r7
|
|
bne _021866e8
|
|
mov r1, #0xf
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0x40
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
_021866e8:
|
|
mov r1, #3
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0x40
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
_021866f8:
|
|
cmp r5, #0
|
|
addeq sp, sp, #0x40
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
mov r0, r7
|
|
mov r1, #2
|
|
bl func_ov30_021863e4
|
|
add sp, sp, #0x40
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
_02186718:
|
|
add r1, sp, #4
|
|
mov r0, r6
|
|
mov r5, #0
|
|
bl func_ov00_020c9034
|
|
add r1, sp, #4
|
|
mov r0, r4
|
|
mov r2, r5
|
|
bl func_ov30_02182ecc
|
|
add r1, sp, #4
|
|
mov r0, r4
|
|
bl func_ov30_02182c9c
|
|
cmp r0, #0
|
|
beq _02186800
|
|
ldrsb r2, [r6, #0x10]
|
|
add r1, sp, #0
|
|
mov r0, r4
|
|
strb r2, [sp]
|
|
ldrsb r2, [r6, #0x11]
|
|
strb r2, [sp, #1]
|
|
bl func_ov30_02183d80
|
|
mov r0, r6
|
|
bl func_ov00_020c9224
|
|
cmp r0, #0
|
|
beq _021867dc
|
|
cmp r0, #1
|
|
beq _0218678c
|
|
cmp r0, #2
|
|
moveq r5, #1
|
|
b _021867dc
|
|
_0218678c:
|
|
ldr r2, _02186954 ; =data_027e0764
|
|
mov r1, r5
|
|
ldr r3, [r2]
|
|
ldmib r2, {r0, ip}
|
|
umull r8, lr, ip, r3
|
|
mla lr, ip, r0, lr
|
|
ldr r0, [r2, #0xc]
|
|
ldr ip, [r2, #0x10]
|
|
mla lr, r0, r3, lr
|
|
ldr r0, [r2, #0x14]
|
|
adds sb, ip, r8
|
|
adc r8, r0, lr
|
|
mov r0, #0x64
|
|
umull r3, ip, r8, r0
|
|
mla ip, r8, r1, ip
|
|
mla ip, r1, r0, ip
|
|
str sb, [r2]
|
|
cmp ip, #0x32
|
|
str r8, [r2, #4]
|
|
movlt r5, #1
|
|
_021867dc:
|
|
mov r0, r6
|
|
bl func_ov00_020c9070
|
|
cmp r5, #0
|
|
beq _02186800
|
|
mov r0, r7
|
|
mov r1, #5
|
|
bl func_ov30_021863e4
|
|
add sp, sp, #0x40
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
_02186800:
|
|
mov r0, r4
|
|
bl func_ov30_021824cc
|
|
cmp r0, #0
|
|
mov r0, r7
|
|
beq _02186824
|
|
mov r1, #3
|
|
bl func_ov30_021863e4
|
|
add sp, sp, #0x40
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
_02186824:
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #0x1e
|
|
ble _02186860
|
|
mov r0, r4
|
|
mov r1, #0x1000
|
|
bl func_ov00_020c29ec
|
|
cmp r0, #0
|
|
beq _02186860
|
|
mov r0, r6
|
|
bl func_ov00_020c900c
|
|
cmp r0, #0
|
|
beq _02186860
|
|
mov r0, r7
|
|
mov r1, #4
|
|
bl func_ov30_021863e4
|
|
_02186860:
|
|
ldr r0, _02186958 ; =data_027e10b4
|
|
ldr r0, [r0]
|
|
bl func_ov30_02183fa0
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x40
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
mov r0, r7
|
|
bl func_ov00_020c510c
|
|
cmp r0, #0x1e
|
|
addle sp, sp, #0x40
|
|
ldmleia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
mov r0, r7
|
|
mov r1, #6
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0x40
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
_021868a4:
|
|
bl func_ov30_02182dc0
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x40
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
mov r0, r7
|
|
mov r1, #2
|
|
bl func_ov30_021863e4
|
|
add sp, sp, #0x40
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
_021868e0:
|
|
bl func_ov30_02182dc0
|
|
mov r0, r7
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #0xf
|
|
addle sp, sp, #0x40
|
|
ldmleia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
mov r0, r7
|
|
mov r1, #2
|
|
bl func_ov30_021863e4
|
|
add sp, sp, #0x40
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
_0218690c:
|
|
bl func_ov30_02182dc0
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x40
|
|
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
mov r0, r7
|
|
mov r1, #2
|
|
bl func_ov30_021863e4
|
|
_02186940:
|
|
add sp, sp, #0x40
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02186584
|
|
_02186948: .word data_ov00_020e8398
|
|
_0218694c: .word data_027e0ff0
|
|
_02186950: .word 0x43485336
|
|
_02186954: .word data_027e0764
|
|
_02186958: .word data_027e10b4
|
|
|
|
.global func_ov30_0218695c
|
|
arm_func_start func_ov30_0218695c
|
|
func_ov30_0218695c: ; 0x0218695c
|
|
stmdb sp!, {r4, lr}
|
|
sub sp, sp, #0x30
|
|
mov r4, r1
|
|
bl func_ov00_020c5118
|
|
mvn r2, #0
|
|
mov lr, #1
|
|
mov r1, #0
|
|
ldr r3, _021869f8 ; =data_ov00_020e8398
|
|
strb r2, [sp, #0x14]
|
|
str r3, [sp, #0x10]
|
|
strb lr, [sp, #0x15]
|
|
strb r1, [sp, #0x16]
|
|
strb r1, [sp, #0x17]
|
|
strb lr, [sp, #0x2c]
|
|
strb r2, [sp]
|
|
strb r2, [sp, #1]
|
|
strb r2, [sp, #2]
|
|
strb r2, [sp, #3]
|
|
ldrsb ip, [r0, #0x2c]
|
|
ldr r0, _021869fc ; =data_027e0ff0
|
|
ldr r1, _02186a00 ; =data_027e0f94
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x10
|
|
add r3, sp, #0
|
|
strb ip, [sp, #0x14]
|
|
strb lr, [sp, #0x2c]
|
|
strb lr, [sp, #0x16]
|
|
bl func_ov00_020c4ae8
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x30
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r4, pc}
|
|
ldrsb r1, [sp]
|
|
mov r0, #1
|
|
strb r1, [r4]
|
|
ldrsb r1, [sp, #1]
|
|
strb r1, [r4, #1]
|
|
add sp, sp, #0x30
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0218695c
|
|
_021869f8: .word data_ov00_020e8398
|
|
_021869fc: .word data_027e0ff0
|
|
_02186a00: .word data_027e0f94
|
|
|
|
.global func_ov30_02186a04
|
|
arm_func_start func_ov30_02186a04
|
|
func_ov30_02186a04: ; 0x02186a04
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov r5, r1
|
|
mov r6, r0
|
|
bl func_ov00_020c5118
|
|
mov r4, r0
|
|
cmp r5, #5
|
|
addls pc, pc, r5, lsl #2
|
|
b _02186b24
|
|
_02186a24: ; jump table
|
|
b _02186b24 ; case 0
|
|
b _02186a3c ; case 1
|
|
b _02186a70 ; case 2
|
|
b _02186a9c ; case 3
|
|
b _02186ad0 ; case 4
|
|
b _02186afc ; case 5
|
|
_02186a3c:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #1
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182eb4
|
|
mov r0, r4
|
|
bl func_ov00_020c29d8
|
|
b _02186b24
|
|
_02186a70:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #5
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
b _02186b24
|
|
_02186a9c:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #1
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182eb4
|
|
mov r0, r4
|
|
bl func_ov00_020c29d8
|
|
b _02186b24
|
|
_02186ad0:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #5
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
b _02186b24
|
|
_02186afc:
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
mov r7, r0
|
|
mov r1, #2
|
|
bl func_ov00_020c5d74
|
|
ldr r1, [r7, #0x10]
|
|
mov r2, #0x1000
|
|
mov r0, r4
|
|
str r2, [r1, #0x10]
|
|
bl func_ov30_02182da8
|
|
_02186b24:
|
|
mov r0, r6
|
|
str r5, [r6, #8]
|
|
bl func_ov00_020c50fc
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
arm_func_end func_ov30_02186a04
|
|
|
|
.global func_ov30_02186b34
|
|
arm_func_start func_ov30_02186b34
|
|
func_ov30_02186b34: ; 0x02186b34
|
|
stmdb sp!, {r4, lr}
|
|
mov r4, r0
|
|
bl func_ov00_020c5118
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov30_02186a04
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_02186b34
|
|
|
|
.global func_ov30_02186b50
|
|
arm_func_start func_ov30_02186b50
|
|
func_ov30_02186b50: ; 0x02186b50
|
|
stmdb sp!, {r4, r5, r6, r7, r8, lr}
|
|
sub sp, sp, #0xa0
|
|
mov r7, r0
|
|
bl func_ov00_020c5118
|
|
ldr r1, [r7, #8]
|
|
mov r4, r0
|
|
ldr r6, [r4, #0x8a0]
|
|
cmp r1, #5
|
|
addls pc, pc, r1, lsl #2
|
|
b _02187218
|
|
_02186b78: ; jump table
|
|
b _02186b90 ; case 0
|
|
b _02186c44 ; case 1
|
|
b _02186cd0 ; case 2
|
|
b _02186fa8 ; case 3
|
|
b _02187170 ; case 4
|
|
b _021871e4 ; case 5
|
|
_02186b90:
|
|
ldr r3, _02187220 ; =data_ov00_020e8398
|
|
mvn r2, #0
|
|
mov r6, #1
|
|
mov r1, #0
|
|
ldr r0, _02187224 ; =data_027e0ff0
|
|
str r3, [sp, #0x80]
|
|
strb r2, [sp, #0x84]
|
|
strb r6, [sp, #0x85]
|
|
strb r1, [sp, #0x86]
|
|
strb r1, [sp, #0x87]
|
|
strb r6, [sp, #0x9c]
|
|
strb r2, [sp, #0x70]
|
|
strb r2, [sp, #0x71]
|
|
strb r2, [sp, #0x72]
|
|
strb r2, [sp, #0x73]
|
|
ldrsb r5, [r4, #0x2c]
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x80
|
|
add r3, sp, #0x70
|
|
add r1, r4, #0x48
|
|
strb r5, [sp, #0x84]
|
|
strb r6, [sp, #0x86]
|
|
bl func_ov00_020c4c00
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xa0
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
|
|
ldr r1, [sp, #0x74]
|
|
mov r0, r7
|
|
str r1, [r7, #0x14]
|
|
ldr r2, [sp, #0x78]
|
|
mov r1, r6
|
|
str r2, [r7, #0x18]
|
|
ldr r2, [sp, #0x7c]
|
|
str r2, [r7, #0x1c]
|
|
ldrsb r2, [sp, #0x70]
|
|
strb r2, [r7, #0x10]
|
|
ldrsb r2, [sp, #0x71]
|
|
strb r2, [r7, #0x11]
|
|
ldrsb r2, [sp, #0x72]
|
|
strb r2, [r7, #0x12]
|
|
ldrsb r2, [sp, #0x73]
|
|
strb r2, [r7, #0x13]
|
|
bl func_ov30_02186a04
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02186c44:
|
|
add r1, r7, #0x14
|
|
bl func_ov30_02182c84
|
|
movs r5, r0
|
|
bne _02186c64
|
|
mov r0, r4
|
|
add r1, r7, #0x14
|
|
mov r2, #2
|
|
bl func_ov30_02182ecc
|
|
_02186c64:
|
|
mov r0, r4
|
|
mov r1, #0x1000
|
|
bl func_ov00_020c29ec
|
|
cmp r0, #0
|
|
beq _02186cb0
|
|
ldr r1, [r4, #4]
|
|
ldr r0, _02187228 ; =0x43485336
|
|
mov r2, #0
|
|
cmp r1, r0
|
|
mov r0, r7
|
|
bne _02186ca0
|
|
mov r1, #0xf
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02186ca0:
|
|
mov r1, #3
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02186cb0:
|
|
cmp r5, #0
|
|
addeq sp, sp, #0xa0
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
|
|
mov r0, r7
|
|
mov r1, #2
|
|
bl func_ov30_02186a04
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02186cd0:
|
|
bl func_ov30_02182dc0
|
|
mov r0, r7
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #1
|
|
bne _02186de0
|
|
ldrsb r1, [r4, #0x2c]
|
|
mov r0, r6
|
|
bl func_ov30_02187f58
|
|
mvn r2, #0
|
|
mov ip, #1
|
|
mov r1, #0
|
|
ldr r3, _02187220 ; =data_ov00_020e8398
|
|
ldr r0, _02187224 ; =data_027e0ff0
|
|
str r3, [sp, #0x50]
|
|
strb r2, [sp, #0x54]
|
|
strb ip, [sp, #0x55]
|
|
strb r1, [sp, #0x56]
|
|
strb r1, [sp, #0x57]
|
|
strb ip, [sp, #0x6c]
|
|
strb r2, [sp, #0x40]
|
|
strb r2, [sp, #0x41]
|
|
strb r2, [sp, #0x42]
|
|
strb r2, [sp, #0x43]
|
|
ldrsb r5, [r4, #0x2c]
|
|
ldr r0, [r0]
|
|
add r2, sp, #0x50
|
|
add r3, sp, #0x40
|
|
add r1, r4, #0x48
|
|
strb r5, [sp, #0x54]
|
|
strb ip, [sp, #0x6c]
|
|
strb ip, [sp, #0x56]
|
|
bl func_ov00_020c4ae8
|
|
cmp r0, #0
|
|
beq _02186d68
|
|
ldrsb r0, [sp, #0x40]
|
|
strb r0, [r7, #0xc]
|
|
ldrsb r0, [sp, #0x41]
|
|
strb r0, [r7, #0xd]
|
|
_02186d68:
|
|
ldr r0, _0218722c ; =data_027e10b4
|
|
ldr r0, [r0]
|
|
bl func_ov30_02183fa0
|
|
cmp r0, #0
|
|
mov r0, r7
|
|
beq _02186dd0
|
|
add r1, r7, #0xe
|
|
bl func_ov30_0218695c
|
|
ldrsb r1, [r7, #0xc]
|
|
ldrsb r0, [r7, #0xe]
|
|
cmp r1, r0
|
|
ldreqsb r1, [r7, #0xd]
|
|
ldreqsb r0, [r7, #0xf]
|
|
cmpeq r1, r0
|
|
bne _02186db8
|
|
mov r0, r7
|
|
mov r1, #4
|
|
bl func_ov30_02186a04
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02186db8:
|
|
mov r0, r6
|
|
add r1, r7, #0xc
|
|
add r2, r7, #0xe
|
|
bl func_ov30_02188080
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02186dd0:
|
|
mov r1, #4
|
|
bl func_ov30_02186a04
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02186de0:
|
|
addle sp, sp, #0xa0
|
|
ldmleia sp!, {r4, r5, r6, r7, r8, pc}
|
|
mov r0, r6
|
|
mov r1, #0xa
|
|
bl func_ov30_02188398
|
|
mov r0, r6
|
|
bl func_ov30_021883e0
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xa0
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xa0
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
|
|
ldr r1, [r4, #4]
|
|
ldr r0, _02187228 ; =0x43485336
|
|
cmp r1, r0
|
|
bne _02186e9c
|
|
mov r0, r6
|
|
bl func_ov30_02188410
|
|
cmp r0, #0
|
|
beq _02186e84
|
|
mov r0, r6
|
|
bl func_ov30_0218842c
|
|
cmp r0, #0xf000
|
|
blt _02186e9c
|
|
mov r0, r4
|
|
bl func_ov30_02183e78
|
|
cmp r0, #0
|
|
beq _02186e9c
|
|
mov r0, r7
|
|
mov r1, #0xd
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02186e84:
|
|
mov r0, r7
|
|
mov r1, #0xd
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02186e9c:
|
|
mov r0, r6
|
|
bl func_ov30_02188448
|
|
mov r0, r6
|
|
bl func_ov30_02188410
|
|
cmp r0, #0
|
|
bne _02186ed8
|
|
mov r0, r6
|
|
bl func_ov30_021885b8
|
|
cmp r0, #0
|
|
beq _02186ed8
|
|
mov r0, r7
|
|
mov r1, #4
|
|
bl func_ov30_02186a04
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02186ed8:
|
|
add r1, sp, #0x34
|
|
mov r0, r6
|
|
bl func_ov30_021884b8
|
|
cmp r0, #0
|
|
beq _02186f94
|
|
add r1, sp, #0x28
|
|
mov r0, r6
|
|
bl func_ov30_02188524
|
|
cmp r0, #0
|
|
beq _02186f94
|
|
add r0, sp, #0x34
|
|
add r2, sp, #0x1c
|
|
add r1, r4, #0x48
|
|
bl func_01ff9bf8
|
|
add r0, sp, #0x28
|
|
add r1, sp, #0x34
|
|
add r2, sp, #0x10
|
|
bl func_01ff9bf8
|
|
ldr r0, [sp, #0x1c]
|
|
ldr r1, [sp, #0x24]
|
|
bl func_01ffa0f4
|
|
mov r5, r0, lsl #0x10
|
|
ldr r0, [sp, #0x10]
|
|
ldr r1, [sp, #0x18]
|
|
bl func_01ffa0f4
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x10
|
|
rsb r0, r0, r5, asr #16
|
|
mov r0, r0, lsl #0x10
|
|
ldr r1, _02187230 ; =0xffff8001
|
|
mov r2, r0, asr #0x10
|
|
cmp r1, r0, asr #16
|
|
movgt r2, r1, lsr #0x11
|
|
bgt _02186f70
|
|
cmp r2, #0
|
|
rsblt r0, r2, #0
|
|
movlt r0, r0, lsl #0x10
|
|
movlt r2, r0, asr #0x10
|
|
_02186f70:
|
|
cmp r2, #0x4000
|
|
blt _02186f94
|
|
add r1, sp, #0x28
|
|
mov r0, r4
|
|
bl func_ov00_020cca68
|
|
cmp r0, #0
|
|
bne _02186f94
|
|
mov r0, r6
|
|
bl func_ov30_02188598
|
|
_02186f94:
|
|
mov r0, r7
|
|
mov r1, #3
|
|
bl func_ov30_02186a04
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02186fa8:
|
|
mov r8, #0
|
|
add r1, sp, #4
|
|
mov r0, r6
|
|
mov r5, r8
|
|
bl func_ov30_021884b8
|
|
add r1, sp, #4
|
|
mov r0, r4
|
|
mov r2, #2
|
|
bl func_ov30_02182ecc
|
|
add r1, sp, #4
|
|
mov r0, r4
|
|
bl func_ov30_02182c9c
|
|
cmp r0, #0
|
|
beq _02187024
|
|
mov r0, r6
|
|
mov r8, #1
|
|
bl func_ov30_021885b8
|
|
cmp r0, #0
|
|
movne r5, r8
|
|
bne _02187024
|
|
mvn r2, #0
|
|
add r1, sp, #2
|
|
mov r0, r6
|
|
strb r2, [sp, #2]
|
|
strb r2, [sp, #3]
|
|
bl func_ov30_0218848c
|
|
add r1, sp, #2
|
|
mov r0, r4
|
|
bl func_ov30_02183d80
|
|
mov r0, r6
|
|
bl func_ov30_02188598
|
|
_02187024:
|
|
mov r0, r4
|
|
bl func_ov30_021824cc
|
|
cmp r0, #0
|
|
beq _02187048
|
|
mov r0, r7
|
|
mov r1, #5
|
|
bl func_ov30_02186a04
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02187048:
|
|
mov r0, r4
|
|
mov r1, #0x1000
|
|
bl func_ov00_020c29ec
|
|
cmp r0, #0
|
|
beq _02187070
|
|
mov r0, r7
|
|
mov r1, #4
|
|
bl func_ov30_02186a04
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02187070:
|
|
cmp r5, #0
|
|
bne _02187098
|
|
mov r0, r7
|
|
bl func_ov00_020c50f0
|
|
cmp r0, #0x5a
|
|
addle sp, sp, #0xa0
|
|
ldmleia sp!, {r4, r5, r6, r7, r8, pc}
|
|
cmp r8, #0
|
|
addeq sp, sp, #0xa0
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02187098:
|
|
mov r0, r6
|
|
add r1, r7, #0xc
|
|
bl func_ov30_0218848c
|
|
ldr r0, _0218722c ; =data_027e10b4
|
|
ldr r0, [r0]
|
|
bl func_ov30_02183fa0
|
|
cmp r0, #0
|
|
beq _0218715c
|
|
mvn r2, #0
|
|
add r1, sp, #0
|
|
mov r0, r7
|
|
strb r2, [sp]
|
|
strb r2, [sp, #1]
|
|
bl func_ov30_0218695c
|
|
ldrsb r1, [r7, #0xe]
|
|
ldrsb r0, [sp]
|
|
cmp r1, r0
|
|
ldreqsb r1, [r7, #0xf]
|
|
ldreqsb r0, [sp, #1]
|
|
cmpeq r1, r0
|
|
beq _02187110
|
|
ldrsb r2, [sp]
|
|
mov r0, r7
|
|
mov r1, #2
|
|
strb r2, [r7, #0xe]
|
|
ldrsb r2, [sp, #1]
|
|
strb r2, [r7, #0xf]
|
|
bl func_ov30_02186a04
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02187110:
|
|
mov r0, r6
|
|
bl func_ov30_02188410
|
|
cmp r0, #0
|
|
bne _02187134
|
|
mov r0, r7
|
|
mov r1, #2
|
|
bl func_ov30_02186a04
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02187134:
|
|
cmp r5, #0
|
|
mov r0, r7
|
|
beq _02187150
|
|
mov r1, #4
|
|
bl func_ov30_02186a04
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02187150:
|
|
bl func_ov00_020c50fc
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_0218715c:
|
|
mov r0, r7
|
|
mov r1, #4
|
|
bl func_ov30_02186a04
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02187170:
|
|
bl func_ov30_02182dc0
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xa0
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
|
|
ldr r1, [r4, #4]
|
|
ldr r0, _02187228 ; =0x43485336
|
|
cmp r1, r0
|
|
bne _021871cc
|
|
ldrb r0, [r4, #0xab6]
|
|
cmp r0, #0
|
|
beq _021871cc
|
|
mov r0, r7
|
|
mov r1, #0xf
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_021871cc:
|
|
mov r0, r7
|
|
mov r1, #5
|
|
mov r2, #0
|
|
bl func_ov00_020c50d4
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_021871e4:
|
|
bl func_ov30_02182dc0
|
|
mov r0, r4
|
|
mov r1, #0
|
|
bl func_ov00_020cb160
|
|
ldr r0, [r0, #0x10]
|
|
add r0, r0, #0xc
|
|
bl func_0202e58c
|
|
cmp r0, #0
|
|
addeq sp, sp, #0xa0
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
|
|
mov r0, r7
|
|
mov r1, #3
|
|
bl func_ov30_02186a04
|
|
_02187218:
|
|
add sp, sp, #0xa0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02186b50
|
|
_02187220: .word data_ov00_020e8398
|
|
_02187224: .word data_027e0ff0
|
|
_02187228: .word 0x43485336
|
|
_0218722c: .word data_027e10b4
|
|
_02187230: .word 0xffff8001
|
|
|
|
.global func_ov30_02187234
|
|
arm_func_start func_ov30_02187234
|
|
func_ov30_02187234: ; 0x02187234
|
|
ldr r2, [r0]
|
|
cmp r2, #0
|
|
mov r2, #0
|
|
bne _0218725c
|
|
str r1, [r0]
|
|
str r1, [r0, #4]
|
|
str r2, [r1]
|
|
str r2, [r1, #4]
|
|
str r0, [r1, #8]
|
|
bx lr
|
|
_0218725c:
|
|
ldr r3, [r0, #4]
|
|
str r1, [r3, #4]
|
|
ldr r3, [r0, #4]
|
|
str r3, [r1]
|
|
str r2, [r1, #4]
|
|
str r0, [r1, #8]
|
|
str r1, [r0, #4]
|
|
bx lr
|
|
arm_func_end func_ov30_02187234
|
|
|
|
.global func_ov30_0218727c
|
|
arm_func_start func_ov30_0218727c
|
|
func_ov30_0218727c: ; 0x0218727c
|
|
mov r2, #0
|
|
str r2, [r1, #8]
|
|
ldr r3, [r1]
|
|
ldr r2, [r1, #4]
|
|
cmp r3, #0
|
|
streq r2, [r0]
|
|
strne r2, [r3, #4]
|
|
ldr r2, [r1, #4]
|
|
cmp r2, #0
|
|
ldreq r2, [r1]
|
|
streq r2, [r0, #4]
|
|
ldrne r0, [r1]
|
|
strne r0, [r2]
|
|
mov r0, #0
|
|
str r0, [r1]
|
|
str r0, [r1, #4]
|
|
str r0, [r1, #8]
|
|
bx lr
|
|
arm_func_end func_ov30_0218727c
|
|
|
|
.global func_ov30_021872c4
|
|
arm_func_start func_ov30_021872c4
|
|
func_ov30_021872c4: ; 0x021872c4
|
|
stmdb sp!, {lr}
|
|
sub sp, sp, #0xc
|
|
ldr r2, [r1]
|
|
ldr r3, _02187300 ; =data_027e0e60
|
|
str r2, [sp]
|
|
ldr ip, [r1, #4]
|
|
mov r2, r0
|
|
str ip, [sp, #4]
|
|
ldr ip, [r1, #8]
|
|
ldr r0, [r3]
|
|
add r1, sp, #0
|
|
str ip, [sp, #8]
|
|
bl func_ov00_0208433c
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021872c4
|
|
_02187300: .word data_027e0e60
|
|
|
|
.global func_ov30_02187304
|
|
arm_func_start func_ov30_02187304
|
|
func_ov30_02187304: ; 0x02187304
|
|
ldr r2, _02187320 ; =data_027e0e60
|
|
mov r3, r0
|
|
ldr r0, [r2]
|
|
mov r2, r1
|
|
ldr ip, _02187324 ; =func_ov00_0208439c
|
|
mov r1, r3
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02187304
|
|
_02187320: .word data_027e0e60
|
|
_02187324: .word func_ov00_0208439c
|
|
|
|
.global func_ov30_02187328
|
|
arm_func_start func_ov30_02187328
|
|
func_ov30_02187328: ; 0x02187328
|
|
stmdb sp!, {r3, lr}
|
|
bl func_ov30_02187358
|
|
cmp r0, #1
|
|
moveq r0, #1
|
|
movne r0, #0
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end func_ov30_02187328
|
|
|
|
.global func_ov30_02187340
|
|
arm_func_start func_ov30_02187340
|
|
func_ov30_02187340: ; 0x02187340
|
|
stmdb sp!, {r3, lr}
|
|
bl func_ov30_02187388
|
|
cmp r0, #1
|
|
moveq r0, #1
|
|
movne r0, #0
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end func_ov30_02187340
|
|
|
|
.global func_ov30_02187358
|
|
arm_func_start func_ov30_02187358
|
|
func_ov30_02187358: ; 0x02187358
|
|
ldrsh r3, [r0, #2]
|
|
ldrsh r2, [r1, #2]
|
|
subs r3, r3, r2
|
|
ldrsh r2, [r0]
|
|
ldrsh r0, [r1]
|
|
rsbmi r3, r3, #0
|
|
subs r0, r2, r0
|
|
rsbmi r0, r0, #0
|
|
add r0, r0, r3
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x10
|
|
bx lr
|
|
arm_func_end func_ov30_02187358
|
|
|
|
.global func_ov30_02187388
|
|
arm_func_start func_ov30_02187388
|
|
func_ov30_02187388: ; 0x02187388
|
|
ldrsh r3, [r0, #2]
|
|
ldrsh r2, [r1, #2]
|
|
subs r3, r3, r2
|
|
ldrsh r2, [r0]
|
|
ldrsh r0, [r1]
|
|
rsbmi r3, r3, #0
|
|
subs r0, r2, r0
|
|
rsbmi r0, r0, #0
|
|
cmp r0, r3
|
|
movle r0, r3
|
|
mov r0, r0, lsl #0x10
|
|
mov r0, r0, asr #0x10
|
|
bx lr
|
|
arm_func_end func_ov30_02187388
|
|
|
|
.global func_ov30_021873bc
|
|
arm_func_start func_ov30_021873bc
|
|
func_ov30_021873bc: ; 0x021873bc
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
sub sp, sp, #8
|
|
ldr r2, _02187568 ; =data_027e0e60
|
|
mov r5, r0
|
|
ldr r0, [r2]
|
|
mov r4, r1
|
|
bl func_ov00_02084324
|
|
cmp r0, #0
|
|
addeq sp, sp, #8
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, r5, pc}
|
|
mov r0, r5
|
|
mov r1, r4
|
|
bl func_ov30_02187328
|
|
cmp r0, #0
|
|
addne sp, sp, #8
|
|
movne r0, #1
|
|
ldmneia sp!, {r3, r4, r5, pc}
|
|
mov r0, #0
|
|
strh r0, [sp, #4]
|
|
strh r0, [sp, #6]
|
|
strh r0, [sp]
|
|
strh r0, [sp, #2]
|
|
ldrsh r3, [r5]
|
|
ldrsh r0, [r4]
|
|
add ip, r3, #1
|
|
cmp ip, r0
|
|
bne _02187464
|
|
ldrsh r2, [r5, #2]
|
|
ldrsh r1, [r4, #2]
|
|
add r2, r2, #1
|
|
cmp r2, r1
|
|
bne _02187464
|
|
strh ip, [sp, #4]
|
|
ldrsh r0, [r5, #2]
|
|
strh r0, [sp, #6]
|
|
ldrsh r0, [r5]
|
|
strh r0, [sp]
|
|
ldrsh r0, [r5, #2]
|
|
add r0, r0, #1
|
|
strh r0, [sp, #2]
|
|
b _02187524
|
|
_02187464:
|
|
cmp ip, r0
|
|
bne _021874a4
|
|
ldrsh r2, [r5, #2]
|
|
ldrsh r1, [r4, #2]
|
|
sub r2, r2, #1
|
|
cmp r2, r1
|
|
bne _021874a4
|
|
strh ip, [sp, #4]
|
|
ldrsh r0, [r5, #2]
|
|
strh r0, [sp, #6]
|
|
ldrsh r0, [r5]
|
|
strh r0, [sp]
|
|
ldrsh r0, [r5, #2]
|
|
sub r0, r0, #1
|
|
strh r0, [sp, #2]
|
|
b _02187524
|
|
_021874a4:
|
|
sub r3, r3, #1
|
|
cmp r3, r0
|
|
bne _021874e8
|
|
ldrsh r2, [r5, #2]
|
|
ldrsh r1, [r4, #2]
|
|
add r2, r2, #1
|
|
cmp r2, r1
|
|
bne _021874e8
|
|
strh r3, [sp, #4]
|
|
ldrsh r0, [r5, #2]
|
|
strh r0, [sp, #6]
|
|
ldrsh r0, [r5]
|
|
strh r0, [sp]
|
|
ldrsh r0, [r5, #2]
|
|
add r0, r0, #1
|
|
strh r0, [sp, #2]
|
|
b _02187524
|
|
_021874e8:
|
|
cmp r3, r0
|
|
bne _02187524
|
|
ldrsh r1, [r5, #2]
|
|
ldrsh r0, [r4, #2]
|
|
sub r1, r1, #1
|
|
cmp r1, r0
|
|
bne _02187524
|
|
strh r3, [sp, #4]
|
|
ldrsh r0, [r5, #2]
|
|
strh r0, [sp, #6]
|
|
ldrsh r0, [r5]
|
|
strh r0, [sp]
|
|
ldrsh r0, [r5, #2]
|
|
sub r0, r0, #1
|
|
strh r0, [sp, #2]
|
|
_02187524:
|
|
ldr r0, _02187568 ; =data_027e0e60
|
|
add r1, sp, #4
|
|
ldr r0, [r0]
|
|
bl func_ov00_02084324
|
|
cmp r0, #0
|
|
beq _0218755c
|
|
ldr r0, _02187568 ; =data_027e0e60
|
|
add r1, sp, #0
|
|
ldr r0, [r0]
|
|
bl func_ov00_02084324
|
|
cmp r0, #0
|
|
addne sp, sp, #8
|
|
movne r0, #1
|
|
ldmneia sp!, {r3, r4, r5, pc}
|
|
_0218755c:
|
|
mov r0, #0
|
|
add sp, sp, #8
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021873bc
|
|
_02187568: .word data_027e0e60
|
|
|
|
.global func_ov30_0218756c
|
|
arm_func_start func_ov30_0218756c
|
|
func_ov30_0218756c: ; 0x0218756c
|
|
ldrsh r3, [r0, #2]
|
|
ldrsh r2, [r1, #2]
|
|
subs ip, r3, r2
|
|
ldrsh r2, [r0]
|
|
movpl r3, ip
|
|
ldrsh r0, [r1]
|
|
rsbmi r3, ip, #0
|
|
subs r1, r2, r0
|
|
movpl r2, r1
|
|
rsbmi r2, r1, #0
|
|
cmp r2, r3
|
|
movge r2, r3
|
|
ldr r0, _021875d0 ; =0x000016a1
|
|
cmp ip, #0
|
|
rsblt ip, ip, #0
|
|
cmp r1, #0
|
|
rsblt r1, r1, #0
|
|
cmp r1, ip
|
|
movle r1, ip
|
|
mul r0, r2, r0
|
|
sub r1, r1, r2
|
|
add r0, r0, r1, lsl #12
|
|
add r0, r0, r0, lsr #31
|
|
mov r0, r0, asr #0x1
|
|
bx lr
|
|
.align 2, 0
|
|
arm_func_end func_ov30_0218756c
|
|
_021875d0: .word 0x000016a1
|
|
|
|
.global func_ov30_021875d4
|
|
arm_func_start func_ov30_021875d4
|
|
func_ov30_021875d4: ; 0x021875d4
|
|
ldr r2, _021875e8 ; =data_027e0e60
|
|
ldr ip, _021875ec ; =func_ov00_02084324
|
|
mov r1, r0
|
|
ldr r0, [r2]
|
|
bx ip
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021875d4
|
|
_021875e8: .word data_027e0e60
|
|
_021875ec: .word func_ov00_02084324
|
|
|
|
.global func_ov30_021875f0
|
|
arm_func_start func_ov30_021875f0
|
|
func_ov30_021875f0: ; 0x021875f0
|
|
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
|
mov r6, r0
|
|
mov r3, #0
|
|
str r3, [r6, #0xc]
|
|
str r3, [r6, #0x10]
|
|
str r3, [r6, #0x14]
|
|
str r3, [r6, #0x18]
|
|
ldr r0, [r6]
|
|
mov r5, r1
|
|
mov r4, r2
|
|
cmp r0, #0
|
|
ble _02187690
|
|
mov ip, r3
|
|
mov r0, r3
|
|
_02187628:
|
|
ldr r2, [r6, #4]
|
|
mov r7, r0
|
|
cmp r2, #0
|
|
ble _02187678
|
|
_02187638:
|
|
mla r2, r3, r2, r7
|
|
ldr lr, [r6, #0x1c]
|
|
add r1, r7, #1
|
|
str ip, [lr, r2, lsl #5]
|
|
add r2, lr, r2, lsl #5
|
|
str ip, [r2, #4]
|
|
str ip, [r2, #8]
|
|
str ip, [r2, #0x14]
|
|
str ip, [r2, #0x18]
|
|
str ip, [r2, #0xc]
|
|
str ip, [r2, #0x10]
|
|
mov r1, r1, lsl #0x10
|
|
ldr r2, [r6, #4]
|
|
mov r7, r1, asr #0x10
|
|
cmp r2, r1, asr #16
|
|
bgt _02187638
|
|
_02187678:
|
|
add r1, r3, #1
|
|
mov r1, r1, lsl #0x10
|
|
ldr r2, [r6]
|
|
mov r3, r1, asr #0x10
|
|
cmp r2, r1, asr #16
|
|
bgt _02187628
|
|
_02187690:
|
|
mov r2, #0
|
|
str r2, [r6, #0x20]
|
|
mov r1, r5
|
|
add r0, r6, #0x2c
|
|
str r2, [r6, #0x24]
|
|
bl func_ov30_021872c4
|
|
mov r1, r4
|
|
add r0, r6, #0x30
|
|
bl func_ov30_021872c4
|
|
ldr r0, [r6]
|
|
ldrsh r3, [r6, #0x2c]
|
|
add r1, r0, r0, lsr #31
|
|
ldrsh r2, [r6, #0x30]
|
|
ldrsh r4, [r6, #0x2e]
|
|
mov r1, r1, asr #0x1
|
|
add r0, r3, r2
|
|
add r0, r0, r0, lsr #31
|
|
mov r0, r0, lsl #0xf
|
|
ldrsh r2, [r6, #0x32]
|
|
rsb r0, r1, r0, asr #16
|
|
strh r0, [r6, #0x34]
|
|
ldr r1, [r6, #4]
|
|
add r0, r4, r2
|
|
add r0, r0, r0, lsr #31
|
|
add r1, r1, r1, lsr #31
|
|
mov r0, r0, lsl #0xf
|
|
mov r1, r1, asr #0x1
|
|
rsb r0, r1, r0, asr #16
|
|
strh r0, [r6, #0x36]
|
|
ldr r0, [r5, #4]
|
|
str r0, [r6, #0x40]
|
|
ldrsh r1, [r6, #0x2c]
|
|
ldrsh r0, [r6, #0x30]
|
|
subs r1, r1, r0
|
|
ldr r0, [r6]
|
|
rsbmi r1, r1, #0
|
|
cmp r1, r0
|
|
bge _02187744
|
|
ldrsh r1, [r6, #0x2e]
|
|
ldrsh r0, [r6, #0x32]
|
|
subs r1, r1, r0
|
|
ldr r0, [r6, #4]
|
|
rsbmi r1, r1, #0
|
|
cmp r1, r0
|
|
blt _02187754
|
|
_02187744:
|
|
ldr r1, _02187764 ; =0x00007fff
|
|
mov r0, #0
|
|
strh r1, [r6, #0x38]
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
_02187754:
|
|
mov r0, #0
|
|
strh r0, [r6, #0x38]
|
|
mov r0, #1
|
|
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021875f0
|
|
_02187764: .word 0x00007fff
|
|
|
|
.global func_ov30_02187768
|
|
arm_func_start func_ov30_02187768
|
|
func_ov30_02187768: ; 0x02187768
|
|
stmdb sp!, {r3, lr}
|
|
ldrsh lr, [r1, #0x1c]
|
|
ldrsh ip, [r0, #0x34]
|
|
sub ip, lr, ip
|
|
str ip, [r2]
|
|
ldrsh r1, [r1, #0x1e]
|
|
ldrsh r0, [r0, #0x36]
|
|
sub r0, r1, r0
|
|
str r0, [r3]
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end func_ov30_02187768
|
|
|
|
.global func_ov30_02187790
|
|
arm_func_start func_ov30_02187790
|
|
func_ov30_02187790: ; 0x02187790
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, lr}
|
|
sub sp, sp, #0x1c
|
|
mov r4, r0
|
|
ldmia r4, {r0, sb}
|
|
mul r1, r0, sb
|
|
ldrsh r8, [r4, #0x38]
|
|
ldrsh r0, [r4, #0x3a]
|
|
cmp r8, r1
|
|
add r0, r8, r0
|
|
mov r6, r0, lsl #0x10
|
|
bge _021878dc
|
|
add r7, sp, #0x10
|
|
_021877c0:
|
|
cmp r8, r6, asr #16
|
|
addge sp, sp, #0x1c
|
|
movge r0, #1
|
|
ldmgeia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
mov r0, r8
|
|
mov r1, sb
|
|
bl func_02002c14
|
|
mov r5, r0, lsl #0x10
|
|
mov r0, r8
|
|
mov r1, sb
|
|
mov r8, r5, asr #0x10
|
|
bl func_02002c14
|
|
ldrsh r0, [r4, #0x34]
|
|
mov r2, r1, lsl #0x10
|
|
mul r1, r8, sb
|
|
ldr r3, [r4, #0x1c]
|
|
add r1, r1, r2, asr #16
|
|
add r8, r3, r1, lsl #5
|
|
add r0, r0, r5, asr #16
|
|
strh r0, [r8, #0x1c]
|
|
ldrsh r3, [r4, #0x36]
|
|
mov r1, r7
|
|
add r0, r8, #0x1c
|
|
add r2, r3, r2, asr #16
|
|
strh r2, [r8, #0x1e]
|
|
bl func_ov30_02187304
|
|
add r0, r8, #0x1c
|
|
bl func_ov30_021875d4
|
|
cmp r0, #0
|
|
beq _021878b0
|
|
ldr r1, [sp, #0x14]
|
|
ldr r0, [r4, #0x40]
|
|
subs r0, r1, r0
|
|
rsbmi r0, r0, #0
|
|
cmp r0, #0x800
|
|
bge _021878b0
|
|
ldrh sb, [r8, #0x1c]
|
|
ldrh r3, [r4, #0x2c]
|
|
ldrh r5, [r8, #0x1e]
|
|
ldrh r2, [r4, #0x2e]
|
|
strh sb, [sp]
|
|
strh r3, [sp, #4]
|
|
ldrsh r1, [sp, #4]
|
|
ldrsh r0, [sp]
|
|
strh r5, [sp, #2]
|
|
strh r2, [sp, #6]
|
|
cmp r1, r0
|
|
ldreqsh r1, [sp, #6]
|
|
ldreqsh r0, [sp, #2]
|
|
strh sb, [sp, #8]
|
|
strh r5, [sp, #0xa]
|
|
strh r3, [sp, #0xc]
|
|
strh r2, [sp, #0xe]
|
|
cmpeq r1, r0
|
|
bne _021878bc
|
|
mov r1, r8
|
|
add r0, r4, #0xc
|
|
bl func_ov30_02187234
|
|
str r8, [r4, #0x20]
|
|
b _021878bc
|
|
_021878b0:
|
|
mov r1, r8
|
|
add r0, r4, #0x14
|
|
bl func_ov30_02187234
|
|
_021878bc:
|
|
ldrsh r0, [r4, #0x38]
|
|
add r0, r0, #1
|
|
strh r0, [r4, #0x38]
|
|
ldmia r4, {r0, sb}
|
|
mul r1, r0, sb
|
|
ldrsh r8, [r4, #0x38]
|
|
cmp r8, r1
|
|
blt _021877c0
|
|
_021878dc:
|
|
mov r0, #0
|
|
add sp, sp, #0x1c
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
arm_func_end func_ov30_02187790
|
|
|
|
.global func_ov30_021878e8
|
|
arm_func_start func_ov30_021878e8
|
|
func_ov30_021878e8: ; 0x021878e8
|
|
stmdb sp!, {r4, r5, r6, r7, r8, lr}
|
|
sub sp, sp, #0x18
|
|
mov r8, r0
|
|
ldr r3, [r8, #0xc]
|
|
mov r4, #0
|
|
cmp r3, #0
|
|
sub r2, r4, #0x80000001
|
|
beq _0218792c
|
|
_02187908:
|
|
ldr r1, [r3, #0xc]
|
|
ldr r0, [r3, #0x10]
|
|
add r0, r1, r0
|
|
cmp r2, r0
|
|
movgt r4, r3
|
|
ldr r3, [r3, #4]
|
|
movgt r2, r0
|
|
cmp r3, #0
|
|
bne _02187908
|
|
_0218792c:
|
|
mov r1, r4
|
|
add r0, r8, #0xc
|
|
bl func_ov30_0218727c
|
|
mov r1, r4
|
|
add r0, r8, #0x14
|
|
bl func_ov30_02187234
|
|
add r2, sp, #0x14
|
|
add r3, sp, #0x10
|
|
mov r0, r8
|
|
mov r1, r4
|
|
bl func_ov30_02187768
|
|
ldr r0, [sp, #0x14]
|
|
sub r5, r0, #1
|
|
add r0, r0, #1
|
|
cmp r5, r0
|
|
addgt sp, sp, #0x18
|
|
ldmgtia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02187970:
|
|
ldr r1, [sp, #0x10]
|
|
sub r6, r1, #1
|
|
add r0, r1, #1
|
|
cmp r6, r0
|
|
bgt _02187ab0
|
|
_02187984:
|
|
ldr r0, [sp, #0x14]
|
|
cmp r5, r0
|
|
cmpeq r6, r1
|
|
beq _02187a9c
|
|
cmp r5, #0
|
|
blt _02187a9c
|
|
ldr r0, [r8]
|
|
cmp r5, r0
|
|
bge _02187a9c
|
|
cmp r6, #0
|
|
blt _02187a9c
|
|
ldr r0, [r8, #4]
|
|
cmp r6, r0
|
|
bge _02187a9c
|
|
mla r0, r5, r0, r6
|
|
ldr r1, [r8, #0x1c]
|
|
add r7, r1, r0, lsl #5
|
|
ldr r0, [r7, #8]
|
|
cmp r0, #0
|
|
bne _02187a9c
|
|
add r0, r4, #0x1c
|
|
add r1, r7, #0x1c
|
|
bl func_ov30_021873bc
|
|
cmp r0, #0
|
|
beq _02187a9c
|
|
mov r1, r7
|
|
str r4, [r7, #0x14]
|
|
add r0, r8, #0xc
|
|
bl func_ov30_02187234
|
|
ldr r0, [sp, #0x14]
|
|
cmp r5, r0
|
|
ldrne r0, [sp, #0x10]
|
|
cmpne r6, r0
|
|
ldr r0, [r7, #0x14]
|
|
bne _02187a1c
|
|
ldr r0, [r0, #0xc]
|
|
add r0, r0, #0x1000
|
|
b _02187a28
|
|
_02187a1c:
|
|
ldr r0, [r0, #0xc]
|
|
add r0, r0, #0xa1
|
|
add r0, r0, #0x1600
|
|
_02187a28:
|
|
str r0, [r7, #0xc]
|
|
add r0, r7, #0x1c
|
|
add r1, r8, #0x30
|
|
bl func_ov30_0218756c
|
|
str r0, [r7, #0x10]
|
|
ldr r1, [r8, #0x24]
|
|
ldr r1, [r1, #0x10]
|
|
cmp r1, r0
|
|
strgt r7, [r8, #0x24]
|
|
ldrh lr, [r8, #0x30]
|
|
ldrh r3, [r7, #0x1c]
|
|
ldrh ip, [r8, #0x32]
|
|
ldrh r2, [r7, #0x1e]
|
|
strh lr, [sp]
|
|
strh r3, [sp, #4]
|
|
ldrsh r1, [sp, #4]
|
|
ldrsh r0, [sp]
|
|
strh ip, [sp, #2]
|
|
strh r2, [sp, #6]
|
|
cmp r1, r0
|
|
ldreqsh r1, [sp, #6]
|
|
ldreqsh r0, [sp, #2]
|
|
strh lr, [sp, #8]
|
|
strh ip, [sp, #0xa]
|
|
strh r3, [sp, #0xc]
|
|
strh r2, [sp, #0xe]
|
|
cmpeq r1, r0
|
|
addeq sp, sp, #0x18
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
|
|
_02187a9c:
|
|
ldr r1, [sp, #0x10]
|
|
add r6, r6, #1
|
|
add r0, r1, #1
|
|
cmp r6, r0
|
|
ble _02187984
|
|
_02187ab0:
|
|
ldr r0, [sp, #0x14]
|
|
add r5, r5, #1
|
|
add r0, r0, #1
|
|
cmp r5, r0
|
|
ble _02187970
|
|
add sp, sp, #0x18
|
|
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
|
arm_func_end func_ov30_021878e8
|
|
|
|
.global func_ov30_02187acc
|
|
arm_func_start func_ov30_02187acc
|
|
func_ov30_02187acc: ; 0x02187acc
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r5, r0
|
|
ldrsh r0, [r5, #0x3c]
|
|
mov r4, #0
|
|
cmp r0, #0
|
|
ble _02187b18
|
|
_02187ae4:
|
|
mov r0, r5
|
|
bl func_ov30_02187b20
|
|
cmp r0, #0
|
|
movne r0, #0
|
|
ldmneia sp!, {r3, r4, r5, pc}
|
|
mov r0, r5
|
|
bl func_ov30_021878e8
|
|
add r0, r4, #1
|
|
mov r0, r0, lsl #0x10
|
|
ldrsh r1, [r5, #0x3c]
|
|
mov r4, r0, asr #0x10
|
|
cmp r1, r0, asr #16
|
|
bgt _02187ae4
|
|
_02187b18:
|
|
mov r0, #1
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov30_02187acc
|
|
|
|
.global func_ov30_02187b20
|
|
arm_func_start func_ov30_02187b20
|
|
func_ov30_02187b20: ; 0x02187b20
|
|
stmdb sp!, {r3, lr}
|
|
sub sp, sp, #0x10
|
|
ldr r1, [r0, #0xc]
|
|
cmp r1, #0
|
|
addeq sp, sp, #0x10
|
|
moveq r0, #1
|
|
ldmeqia sp!, {r3, pc}
|
|
ldr r1, [r0, #0x24]
|
|
ldrh r3, [r0, #0x30]
|
|
ldrh lr, [r1, #0x1c]
|
|
ldrh ip, [r1, #0x1e]
|
|
ldrh r2, [r0, #0x32]
|
|
strh lr, [sp]
|
|
strh r3, [sp, #4]
|
|
ldrsh r1, [sp, #4]
|
|
ldrsh r0, [sp]
|
|
strh ip, [sp, #2]
|
|
strh r2, [sp, #6]
|
|
cmp r1, r0
|
|
ldreqsh r1, [sp, #6]
|
|
ldreqsh r0, [sp, #2]
|
|
strh lr, [sp, #8]
|
|
strh ip, [sp, #0xa]
|
|
cmpeq r1, r0
|
|
moveq r0, #1
|
|
strh r3, [sp, #0xc]
|
|
strh r2, [sp, #0xe]
|
|
movne r0, #0
|
|
add sp, sp, #0x10
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end func_ov30_02187b20
|
|
|
|
.global func_ov30_02187b98
|
|
arm_func_start func_ov30_02187b98
|
|
func_ov30_02187b98: ; 0x02187b98
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r4, r1
|
|
mov r5, r0
|
|
cmp r4, #4
|
|
addls pc, pc, r4, lsl #2
|
|
b _02187bf8
|
|
_02187bb0: ; jump table
|
|
b _02187bf8 ; case 0
|
|
b _02187bf8 ; case 1
|
|
b _02187bc4 ; case 2
|
|
b _02187bf4 ; case 3
|
|
b _02187bf8 ; case 4
|
|
_02187bc4:
|
|
ldr r0, [r5, #0x20]
|
|
mov r1, #0
|
|
str r1, [r0, #0xc]
|
|
ldr r0, [r5, #0x20]
|
|
add r1, r5, #0x30
|
|
add r0, r0, #0x1c
|
|
bl func_ov30_0218756c
|
|
ldr r1, [r5, #0x20]
|
|
str r0, [r1, #0x10]
|
|
ldr r0, [r5, #0x20]
|
|
str r0, [r5, #0x24]
|
|
b _02187bf8
|
|
_02187bf4:
|
|
bl func_ov30_02187d64
|
|
_02187bf8:
|
|
str r4, [r5, #8]
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov30_02187b98
|
|
|
|
.global func_ov30_02187c00
|
|
arm_func_start func_ov30_02187c00
|
|
func_ov30_02187c00: ; 0x02187c00
|
|
stmdb sp!, {r4, lr}
|
|
ldrsh ip, [sp, #8]
|
|
mov r4, r0
|
|
strh r3, [r4, #0x3a]
|
|
strh ip, [r4, #0x3c]
|
|
bl func_ov30_021875f0
|
|
cmp r0, #0
|
|
mov r0, r4
|
|
beq _02187c34
|
|
mov r1, #1
|
|
bl func_ov30_02187b98
|
|
mov r0, #1
|
|
ldmia sp!, {r4, pc}
|
|
_02187c34:
|
|
mov r1, #4
|
|
bl func_ov30_02187b98
|
|
mov r0, #0
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_02187c00
|
|
|
|
.global func_ov30_02187c44
|
|
arm_func_start func_ov30_02187c44
|
|
func_ov30_02187c44: ; 0x02187c44
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
sub sp, sp, #0x10
|
|
mov r4, r0
|
|
ldr r1, [r4, #8]
|
|
cmp r1, #4
|
|
addls pc, pc, r1, lsl #2
|
|
b _02187d34
|
|
_02187c60: ; jump table
|
|
b _02187d34 ; case 0
|
|
b _02187c74 ; case 1
|
|
b _02187d18 ; case 2
|
|
b _02187d34 ; case 3
|
|
b _02187d34 ; case 4
|
|
_02187c74:
|
|
bl func_ov30_02187790
|
|
cmp r0, #0
|
|
addne sp, sp, #0x10
|
|
ldmneia sp!, {r3, r4, r5, pc}
|
|
ldr r5, [r4, #0x20]
|
|
cmp r5, #0
|
|
bne _02187ca4
|
|
mov r0, r4
|
|
mov r1, #4
|
|
bl func_ov30_02187b98
|
|
add sp, sp, #0x10
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_02187ca4:
|
|
ldrh lr, [r4, #0x30]
|
|
ldrh r3, [r5, #0x1c]
|
|
ldrh ip, [r4, #0x32]
|
|
ldrh r2, [r5, #0x1e]
|
|
strh lr, [sp]
|
|
strh r3, [sp, #4]
|
|
ldrsh r1, [sp, #4]
|
|
ldrsh r0, [sp]
|
|
strh ip, [sp, #2]
|
|
strh r2, [sp, #6]
|
|
cmp r1, r0
|
|
ldreqsh r1, [sp, #6]
|
|
ldreqsh r0, [sp, #2]
|
|
strh lr, [sp, #8]
|
|
strh ip, [sp, #0xa]
|
|
cmpeq r1, r0
|
|
strh r3, [sp, #0xc]
|
|
strh r2, [sp, #0xe]
|
|
mov r0, r4
|
|
bne _02187d08
|
|
mov r1, #3
|
|
str r5, [r4, #0x24]
|
|
bl func_ov30_02187b98
|
|
add sp, sp, #0x10
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_02187d08:
|
|
mov r1, #2
|
|
bl func_ov30_02187b98
|
|
add sp, sp, #0x10
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_02187d18:
|
|
bl func_ov30_02187acc
|
|
cmp r0, #0
|
|
addne sp, sp, #0x10
|
|
ldmneia sp!, {r3, r4, r5, pc}
|
|
mov r0, r4
|
|
mov r1, #3
|
|
bl func_ov30_02187b98
|
|
_02187d34:
|
|
add sp, sp, #0x10
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov30_02187c44
|
|
|
|
.global func_ov30_02187d3c
|
|
arm_func_start func_ov30_02187d3c
|
|
func_ov30_02187d3c: ; 0x02187d3c
|
|
ldr r0, [r0, #8]
|
|
cmp r0, #3
|
|
moveq r0, #1
|
|
movne r0, #0
|
|
bx lr
|
|
arm_func_end func_ov30_02187d3c
|
|
|
|
.global func_ov30_02187d50
|
|
arm_func_start func_ov30_02187d50
|
|
func_ov30_02187d50: ; 0x02187d50
|
|
ldr r0, [r0, #8]
|
|
cmp r0, #4
|
|
moveq r0, #1
|
|
movne r0, #0
|
|
bx lr
|
|
arm_func_end func_ov30_02187d50
|
|
|
|
.global func_ov30_02187d64
|
|
arm_func_start func_ov30_02187d64
|
|
func_ov30_02187d64: ; 0x02187d64
|
|
ldr r1, [r0, #0x20]
|
|
str r1, [r0, #0x28]
|
|
ldr r0, [r0, #0x24]
|
|
_02187d70:
|
|
mov r1, r0
|
|
ldr r0, [r0, #0x14]
|
|
cmp r0, #0
|
|
strne r1, [r0, #0x18]
|
|
bne _02187d70
|
|
bx lr
|
|
arm_func_end func_ov30_02187d64
|
|
|
|
.global func_ov30_02187d88
|
|
arm_func_start func_ov30_02187d88
|
|
func_ov30_02187d88: ; 0x02187d88
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, [r0, #0x28]
|
|
cmp r0, #0
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
add r0, r0, #0x1c
|
|
bl func_ov30_02187304
|
|
mov r0, #1
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end func_ov30_02187d88
|
|
|
|
.global func_ov30_02187dac
|
|
arm_func_start func_ov30_02187dac
|
|
func_ov30_02187dac: ; 0x02187dac
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, [r0, #0x28]
|
|
cmp r0, #0
|
|
ldrne r0, [r0, #0x18]
|
|
cmpne r0, #0
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
add r0, r0, #0x1c
|
|
bl func_ov30_02187304
|
|
mov r0, #1
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end func_ov30_02187dac
|
|
|
|
.global func_ov30_02187dd8
|
|
arm_func_start func_ov30_02187dd8
|
|
func_ov30_02187dd8: ; 0x02187dd8
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, [r0, #0x24]
|
|
cmp r0, #0
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
add r0, r0, #0x1c
|
|
bl func_ov30_02187304
|
|
mov r0, #1
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end func_ov30_02187dd8
|
|
|
|
.global func_ov30_02187dfc
|
|
arm_func_start func_ov30_02187dfc
|
|
func_ov30_02187dfc: ; 0x02187dfc
|
|
ldr r1, [r0, #0x28]
|
|
ldr r1, [r1, #0x18]
|
|
cmp r1, #0
|
|
strne r1, [r0, #0x28]
|
|
movne r0, #1
|
|
moveq r0, #0
|
|
bx lr
|
|
arm_func_end func_ov30_02187dfc
|
|
|
|
.global func_ov30_02187e18
|
|
arm_func_start func_ov30_02187e18
|
|
func_ov30_02187e18: ; 0x02187e18
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0x3c
|
|
mov sl, r0
|
|
mov sb, r1
|
|
mov r8, r2
|
|
mov r7, r3
|
|
ldr r6, [sp, #0x60]
|
|
bl func_ov30_02187dfc
|
|
ldr fp, _02187eec ; =data_027e0e60
|
|
add r5, sp, #0x24
|
|
mov r4, #6
|
|
_02187e44:
|
|
mov r0, sl
|
|
bl func_ov30_02187ef0
|
|
cmp r0, #0
|
|
addne sp, sp, #0x3c
|
|
ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
mov r0, sl
|
|
add r1, sp, #0x30
|
|
bl func_ov30_02187dac
|
|
cmp r0, #0
|
|
addeq sp, sp, #0x3c
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
ldr r0, [sp, #0x34]
|
|
ldr r3, [sp, #0x30]
|
|
add ip, r0, r8
|
|
str ip, [sp, #0x34]
|
|
ldmia sb, {r0, r1, r2}
|
|
stmia r5, {r0, r1, r2}
|
|
ldr r0, [sp, #0x24]
|
|
ldr r1, [sp, #0x38]
|
|
str r0, [sp, #0xc]
|
|
ldr r0, [sp, #0x2c]
|
|
str r3, [sp, #0x18]
|
|
str r1, [sp, #0x20]
|
|
str ip, [sp, #0x28]
|
|
str ip, [sp, #0x1c]
|
|
str ip, [sp, #0x10]
|
|
str r0, [sp, #0x14]
|
|
stmia sp, {r4, r7}
|
|
str r6, [sp, #8]
|
|
ldr r0, [fp]
|
|
add r1, sp, #0x18
|
|
add r2, sp, #0xc
|
|
mov r3, r8
|
|
bl func_01ffe1cc
|
|
cmp r0, #0
|
|
addne sp, sp, #0x3c
|
|
ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
mov r0, sl
|
|
bl func_ov30_02187dfc
|
|
b _02187e44
|
|
arm_func_end func_ov30_02187e18
|
|
|
|
.global func_ov30_02187ee4
|
|
arm_func_start func_ov30_02187ee4
|
|
func_ov30_02187ee4: ; 0x02187ee4
|
|
add sp, sp, #0x3c
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02187ee4
|
|
_02187eec: .word data_027e0e60
|
|
|
|
.global func_ov30_02187ef0
|
|
arm_func_start func_ov30_02187ef0
|
|
func_ov30_02187ef0: ; 0x02187ef0
|
|
ldr r0, [r0, #0x28]
|
|
ldr r0, [r0, #0x18]
|
|
cmp r0, #0
|
|
moveq r0, #1
|
|
movne r0, #0
|
|
bx lr
|
|
arm_func_end func_ov30_02187ef0
|
|
|
|
.global func_ov30_02187f08
|
|
arm_func_start func_ov30_02187f08
|
|
func_ov30_02187f08: ; 0x02187f08
|
|
mov r1, #0
|
|
str r1, [r0]
|
|
str r1, [r0, #4]
|
|
str r1, [r0, #8]
|
|
add ip, r0, #0x10
|
|
str r1, [r0, #0xc]
|
|
add r1, ip, #0x1000
|
|
mov r3, #0
|
|
mvn r2, #0
|
|
_02187f2c:
|
|
str r3, [ip]
|
|
str r3, [ip, #4]
|
|
str r3, [ip, #8]
|
|
str r3, [ip, #0x14]
|
|
str r3, [ip, #0x18]
|
|
strb r2, [ip, #0x1c]
|
|
strb r2, [ip, #0x1d]
|
|
add ip, ip, #0x20
|
|
cmp ip, r1
|
|
blo _02187f2c
|
|
bx lr
|
|
arm_func_end func_ov30_02187f08
|
|
|
|
.global func_ov30_02187f58
|
|
arm_func_start func_ov30_02187f58
|
|
func_ov30_02187f58: ; 0x02187f58
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0xc
|
|
str r0, [sp]
|
|
add r0, r0, #0x1000
|
|
mov sb, #0
|
|
ldr r2, _0218807c ; =data_027e0ff0
|
|
str sb, [r0, #0x10]
|
|
ldr r2, [r2]
|
|
str r1, [sp, #4]
|
|
ldr r0, [r2, #4]
|
|
cmp r0, #0
|
|
addle sp, sp, #0xc
|
|
ldmleia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02187f8c:
|
|
ldr r8, [r2]
|
|
and r7, sb, #0xff
|
|
ldr r2, [r8, r7, lsl #3]
|
|
cmp r2, #0
|
|
beq _02188054
|
|
ldrb r1, [r2, #4]
|
|
ldr r0, [sp, #4]
|
|
cmp r0, r1
|
|
bne _02188054
|
|
ldrb r0, [r2, #1]
|
|
mov sl, #0
|
|
cmp r0, #0
|
|
ble _02188054
|
|
ldr r0, [sp]
|
|
ldr fp, _0218807c ; =data_027e0ff0
|
|
add r6, r0, #0x10
|
|
add r5, r6, #0x1000
|
|
add r4, r0, #0x1000
|
|
_02187fd4:
|
|
ldr r0, [fp]
|
|
strb sb, [sp, #0xa]
|
|
strb sl, [sp, #0xb]
|
|
add r1, sp, #0xa
|
|
bl func_ov00_020c47cc
|
|
ldrsb r0, [r0, #0x16]
|
|
cmp r0, #0
|
|
cmpne r0, #4
|
|
movne r0, #1
|
|
moveq r0, #0
|
|
cmp r0, #0
|
|
beq _02188038
|
|
ldrb r2, [sp, #0xa]
|
|
ldrb r1, [sp, #0xb]
|
|
ldr r0, [r4, #0x10]
|
|
strb r2, [sp, #8]
|
|
strb r1, [sp, #9]
|
|
add r2, r6, r0, lsl #5
|
|
ldrsb r1, [sp, #8]
|
|
ldrsb r0, [sp, #9]
|
|
strb r1, [r2, #0x1c]
|
|
strb r0, [r2, #0x1d]
|
|
ldr r0, [r5]
|
|
add r0, r0, #1
|
|
str r0, [r5]
|
|
_02188038:
|
|
ldr r1, [r8, r7, lsl #3]
|
|
add r0, sl, #1
|
|
mov r0, r0, lsl #0x18
|
|
ldrb r1, [r1, #1]
|
|
mov sl, r0, asr #0x18
|
|
cmp r1, r0, asr #24
|
|
bgt _02187fd4
|
|
_02188054:
|
|
ldr r0, _0218807c ; =data_027e0ff0
|
|
add r1, sb, #1
|
|
ldr r2, [r0]
|
|
mov r0, r1, lsl #0x18
|
|
ldr r1, [r2, #4]
|
|
mov sb, r0, asr #0x18
|
|
cmp r1, r0, asr #24
|
|
bgt _02187f8c
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02187f58
|
|
_0218807c: .word data_027e0ff0
|
|
|
|
.global func_ov30_02188080
|
|
arm_func_start func_ov30_02188080
|
|
func_ov30_02188080: ; 0x02188080
|
|
stmdb sp!, {r3, r4, r5, lr}
|
|
mov r5, r0
|
|
mov ip, #0
|
|
str ip, [r5]
|
|
str ip, [r5, #4]
|
|
str ip, [r5, #8]
|
|
str ip, [r5, #0xc]
|
|
add r0, r5, #0x1000
|
|
ldr r3, [r0, #0x10]
|
|
mov r4, r1
|
|
cmp r3, #0
|
|
ble _021880e8
|
|
add lr, r5, #0x10
|
|
mov r3, ip
|
|
_021880b8:
|
|
str r3, [lr]
|
|
str r3, [lr, #4]
|
|
str r3, [lr, #8]
|
|
str r3, [lr, #0x14]
|
|
str r3, [lr, #0x18]
|
|
str r3, [lr, #0xc]
|
|
str r3, [lr, #0x10]
|
|
ldr r1, [r0, #0x10]
|
|
add ip, ip, #1
|
|
cmp ip, r1
|
|
add lr, lr, #0x20
|
|
blt _021880b8
|
|
_021880e8:
|
|
add r3, r5, #0x1000
|
|
mov ip, #0
|
|
str ip, [r3, #0x14]
|
|
mov r0, r5
|
|
mov r1, r2
|
|
str ip, [r3, #0x18]
|
|
bl func_ov30_02188168
|
|
add r1, r5, #0x1000
|
|
str r0, [r1, #0x18]
|
|
mov r0, r5
|
|
mov r1, r4
|
|
bl func_ov30_02188168
|
|
add r2, r5, #0x1000
|
|
str r0, [r2, #0x14]
|
|
str r0, [r2, #0x1c]
|
|
ldr r0, [r2, #0x14]
|
|
mvn r1, #0x80000001
|
|
str r1, [r0, #0x10]
|
|
ldr r0, [r2, #0x18]
|
|
cmp r0, #0
|
|
ldrne r1, [r2, #0x14]
|
|
cmpne r1, #0
|
|
beq _02188160
|
|
cmp r0, r1
|
|
streq r0, [r2, #0x1c]
|
|
beq _02188158
|
|
mov r0, r5
|
|
bl func_ov30_02187234
|
|
_02188158:
|
|
mov r0, #1
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
_02188160:
|
|
mov r0, #0
|
|
ldmia sp!, {r3, r4, r5, pc}
|
|
arm_func_end func_ov30_02188080
|
|
|
|
.global func_ov30_02188168
|
|
arm_func_start func_ov30_02188168
|
|
func_ov30_02188168: ; 0x02188168
|
|
stmdb sp!, {r4, lr}
|
|
add r2, r0, #0x1000
|
|
ldr r4, [r2, #0x10]
|
|
mov ip, #0
|
|
cmp r4, #0
|
|
ble _021881b4
|
|
ldrsb lr, [r1]
|
|
_02188184:
|
|
add r3, r0, ip, lsl #5
|
|
ldrsb r2, [r3, #0x2c]
|
|
ldrsb r3, [r3, #0x2d]
|
|
cmp lr, r2
|
|
ldreqsb r2, [r1, #1]
|
|
cmpeq r2, r3
|
|
addeq r0, r0, #0x10
|
|
addeq r0, r0, ip, lsl #5
|
|
ldmeqia sp!, {r4, pc}
|
|
add ip, ip, #1
|
|
cmp ip, r4
|
|
blt _02188184
|
|
_021881b4:
|
|
mov r0, #0
|
|
ldmia sp!, {r4, pc}
|
|
arm_func_end func_ov30_02188168
|
|
|
|
.global func_ov30_021881bc
|
|
arm_func_start func_ov30_021881bc
|
|
func_ov30_021881bc: ; 0x021881bc
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0x2c
|
|
mov sl, r0
|
|
ldr r3, [sl]
|
|
mov r7, #0
|
|
cmp r3, #0
|
|
sub r2, r7, #0x80000001
|
|
beq _02188200
|
|
_021881dc:
|
|
ldr r1, [r3, #0xc]
|
|
ldr r0, [r3, #0x10]
|
|
add r0, r1, r0
|
|
cmp r2, r0
|
|
movgt r7, r3
|
|
ldr r3, [r3, #4]
|
|
movgt r2, r0
|
|
cmp r3, #0
|
|
bne _021881dc
|
|
_02188200:
|
|
mov r0, sl
|
|
mov r1, r7
|
|
bl func_ov30_0218727c
|
|
mov r1, r7
|
|
add r0, sl, #8
|
|
bl func_ov30_02187234
|
|
add r0, sl, #0x1000
|
|
ldr r3, [r0, #0x18]
|
|
ldr r0, _02188394 ; =data_027e0ff0
|
|
ldrsb r2, [r3, #0x1c]
|
|
ldr r0, [r0]
|
|
add r1, sp, #0
|
|
strb r2, [sp]
|
|
ldrsb r2, [r3, #0x1d]
|
|
strb r2, [sp, #1]
|
|
bl func_ov00_020c47cc
|
|
add r0, r0, #4
|
|
add r3, sp, #0x20
|
|
ldmia r0, {r0, r1, r2}
|
|
stmia r3, {r0, r1, r2}
|
|
ldrsb r2, [r7, #0x1c]
|
|
ldr r0, _02188394 ; =data_027e0ff0
|
|
add r1, sp, #4
|
|
strb r2, [sp, #4]
|
|
ldrsb r2, [r7, #0x1d]
|
|
ldr r0, [r0]
|
|
strb r2, [sp, #5]
|
|
bl func_ov00_020c47cc
|
|
mov r6, r0
|
|
mov fp, #0
|
|
add sb, r6, #0x14
|
|
add r4, sl, #0x1000
|
|
_02188280:
|
|
ldrsb r0, [sb, #2]
|
|
sub r0, r0, #1
|
|
mov r0, r0, lsl #0x18
|
|
mov r0, r0, asr #0x18
|
|
and r0, r0, #0xff
|
|
cmp r0, #2
|
|
bhi _02188378
|
|
ldrsb r0, [sb, #3]
|
|
cmp r0, #0
|
|
bne _02188378
|
|
ldrsb r2, [sb]
|
|
ldr r0, _02188394 ; =data_027e0ff0
|
|
add r1, sp, #2
|
|
strb r2, [sp, #2]
|
|
ldrsb r2, [sb, #1]
|
|
ldr r0, [r0]
|
|
strb r2, [sp, #3]
|
|
bl func_ov00_020c47cc
|
|
mov r5, r0
|
|
mov r0, sl
|
|
add r1, sp, #2
|
|
bl func_ov30_02188168
|
|
mov r8, r0
|
|
ldr r0, [r8, #8]
|
|
cmp r0, #0
|
|
bne _02188378
|
|
mov r0, sl
|
|
str r7, [r8, #0x14]
|
|
mov r1, r8
|
|
bl func_ov30_02187234
|
|
ldr r1, [r6, #4]
|
|
add r0, sp, #0x14
|
|
str r1, [sp, #0x14]
|
|
ldr r2, [r6, #8]
|
|
add r1, sp, #8
|
|
str r2, [sp, #0x18]
|
|
ldr r2, [r6, #0xc]
|
|
str r2, [sp, #0x1c]
|
|
ldr r2, [r5, #4]
|
|
str r2, [sp, #8]
|
|
ldr r2, [r5, #8]
|
|
str r2, [sp, #0xc]
|
|
ldr r2, [r5, #0xc]
|
|
str r2, [sp, #0x10]
|
|
bl func_ov00_020ce2f0
|
|
ldr r2, [r8, #0x14]
|
|
add r1, sp, #8
|
|
ldr r2, [r2, #0xc]
|
|
add r0, r2, r0
|
|
str r0, [r8, #0xc]
|
|
add r0, sp, #0x20
|
|
bl func_ov00_020ce2f0
|
|
str r0, [r8, #0x10]
|
|
ldr r1, [r4, #0x1c]
|
|
ldr r1, [r1, #0x10]
|
|
cmp r1, r0
|
|
strgt r8, [r4, #0x1c]
|
|
ldr r0, [r4, #0x18]
|
|
cmp r8, r0
|
|
addeq sp, sp, #0x2c
|
|
moveq r0, #1
|
|
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
_02188378:
|
|
add fp, fp, #1
|
|
cmp fp, #4
|
|
add sb, sb, #4
|
|
blt _02188280
|
|
mov r0, #0
|
|
add sp, sp, #0x2c
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021881bc
|
|
_02188394: .word data_027e0ff0
|
|
|
|
.global func_ov30_02188398
|
|
arm_func_start func_ov30_02188398
|
|
func_ov30_02188398: ; 0x02188398
|
|
stmdb sp!, {r4, r5, r6, lr}
|
|
mov r5, r1
|
|
mov r6, r0
|
|
mov r4, #0
|
|
cmp r5, #0
|
|
ldmleia sp!, {r4, r5, r6, pc}
|
|
_021883b0:
|
|
mov r0, r6
|
|
bl func_ov30_021883e0
|
|
cmp r0, #0
|
|
ldmneia sp!, {r4, r5, r6, pc}
|
|
mov r0, r6
|
|
bl func_ov30_021881bc
|
|
add r0, r4, #1
|
|
mov r0, r0, lsl #0x10
|
|
cmp r5, r0, asr #16
|
|
mov r4, r0, asr #0x10
|
|
bgt _021883b0
|
|
ldmia sp!, {r4, r5, r6, pc}
|
|
arm_func_end func_ov30_02188398
|
|
|
|
.global func_ov30_021883e0
|
|
arm_func_start func_ov30_021883e0
|
|
func_ov30_021883e0: ; 0x021883e0
|
|
ldr r1, [r0]
|
|
cmp r1, #0
|
|
beq _02188400
|
|
add r0, r0, #0x1000
|
|
ldr r1, [r0, #0x18]
|
|
ldr r0, [r0, #0x1c]
|
|
cmp r1, r0
|
|
bne _02188408
|
|
_02188400:
|
|
mov r0, #1
|
|
bx lr
|
|
_02188408:
|
|
mov r0, #0
|
|
bx lr
|
|
arm_func_end func_ov30_021883e0
|
|
|
|
.global func_ov30_02188410
|
|
arm_func_start func_ov30_02188410
|
|
func_ov30_02188410: ; 0x02188410
|
|
add r0, r0, #0x1000
|
|
ldr r1, [r0, #0x1c]
|
|
ldr r0, [r0, #0x18]
|
|
cmp r1, r0
|
|
moveq r0, #1
|
|
movne r0, #0
|
|
bx lr
|
|
arm_func_end func_ov30_02188410
|
|
|
|
.global func_ov30_0218842c
|
|
arm_func_start func_ov30_0218842c
|
|
func_ov30_0218842c: ; 0x0218842c
|
|
add r0, r0, #0x1000
|
|
ldr r1, [r0, #0x18]
|
|
ldr r0, [r0, #0x1c]
|
|
cmp r0, r1
|
|
ldreq r0, [r1, #0xc]
|
|
mvnne r0, #0x80000000
|
|
bx lr
|
|
arm_func_end func_ov30_0218842c
|
|
|
|
.global func_ov30_02188448
|
|
arm_func_start func_ov30_02188448
|
|
func_ov30_02188448: ; 0x02188448
|
|
add r1, r0, #0x1000
|
|
ldr r2, [r1, #0x14]
|
|
str r2, [r1, #0x20]
|
|
ldr r1, [r1, #0x1c]
|
|
_02188458:
|
|
mov r2, r1
|
|
ldr r1, [r1, #0x14]
|
|
cmp r1, #0
|
|
strne r2, [r1, #0x18]
|
|
bne _02188458
|
|
add r0, r0, #0x1000
|
|
ldr r0, [r0, #0x1c]
|
|
cmp r0, #0
|
|
bxeq lr
|
|
_0218847c:
|
|
ldr r0, [r0, #0x18]
|
|
cmp r0, #0
|
|
bne _0218847c
|
|
bx lr
|
|
arm_func_end func_ov30_02188448
|
|
|
|
.global func_ov30_0218848c
|
|
arm_func_start func_ov30_0218848c
|
|
func_ov30_0218848c: ; 0x0218848c
|
|
add r0, r0, #0x1000
|
|
ldr r0, [r0, #0x20]
|
|
cmp r0, #0
|
|
moveq r0, #0
|
|
bxeq lr
|
|
ldrsb r3, [r0, #0x1d]
|
|
ldrsb r2, [r0, #0x1c]
|
|
mov r0, #1
|
|
strb r2, [r1]
|
|
strb r3, [r1, #1]
|
|
bx lr
|
|
arm_func_end func_ov30_0218848c
|
|
|
|
.global func_ov30_021884b8
|
|
arm_func_start func_ov30_021884b8
|
|
func_ov30_021884b8: ; 0x021884b8
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #4
|
|
add r0, r0, #0x1000
|
|
ldr r3, [r0, #0x20]
|
|
mov r4, r1
|
|
cmp r3, #0
|
|
addeq sp, sp, #4
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, pc}
|
|
ldrsb r2, [r3, #0x1c]
|
|
ldr r0, _02188520 ; =data_027e0ff0
|
|
add r1, sp, #0
|
|
strb r2, [sp]
|
|
ldrsb r2, [r3, #0x1d]
|
|
ldr r0, [r0]
|
|
strb r2, [sp, #1]
|
|
bl func_ov00_020c47cc
|
|
ldr r1, [r0, #4]
|
|
str r1, [r4]
|
|
ldr r1, [r0, #8]
|
|
str r1, [r4, #4]
|
|
ldr r1, [r0, #0xc]
|
|
mov r0, #1
|
|
str r1, [r4, #8]
|
|
add sp, sp, #4
|
|
ldmia sp!, {r3, r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021884b8
|
|
_02188520: .word data_027e0ff0
|
|
|
|
.global func_ov30_02188524
|
|
arm_func_start func_ov30_02188524
|
|
func_ov30_02188524: ; 0x02188524
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #4
|
|
add r0, r0, #0x1000
|
|
ldr r0, [r0, #0x20]
|
|
mov r4, r1
|
|
cmp r0, #0
|
|
ldrne r3, [r0, #0x18]
|
|
cmpne r3, #0
|
|
addeq sp, sp, #4
|
|
moveq r0, #0
|
|
ldmeqia sp!, {r3, r4, pc}
|
|
ldrsb r2, [r3, #0x1c]
|
|
ldr r0, _02188594 ; =data_027e0ff0
|
|
add r1, sp, #0
|
|
strb r2, [sp]
|
|
ldrsb r2, [r3, #0x1d]
|
|
ldr r0, [r0]
|
|
strb r2, [sp, #1]
|
|
bl func_ov00_020c47cc
|
|
ldr r1, [r0, #4]
|
|
str r1, [r4]
|
|
ldr r1, [r0, #8]
|
|
str r1, [r4, #4]
|
|
ldr r1, [r0, #0xc]
|
|
mov r0, #1
|
|
str r1, [r4, #8]
|
|
add sp, sp, #4
|
|
ldmia sp!, {r3, r4, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02188524
|
|
_02188594: .word data_027e0ff0
|
|
|
|
.global func_ov30_02188598
|
|
arm_func_start func_ov30_02188598
|
|
func_ov30_02188598: ; 0x02188598
|
|
add r0, r0, #0x1000
|
|
ldr r1, [r0, #0x20]
|
|
ldr r1, [r1, #0x18]
|
|
cmp r1, #0
|
|
strne r1, [r0, #0x20]
|
|
movne r0, #1
|
|
moveq r0, #0
|
|
bx lr
|
|
arm_func_end func_ov30_02188598
|
|
|
|
.global func_ov30_021885b8
|
|
arm_func_start func_ov30_021885b8
|
|
func_ov30_021885b8: ; 0x021885b8
|
|
add r0, r0, #0x1000
|
|
ldr r0, [r0, #0x20]
|
|
ldr r0, [r0, #0x18]
|
|
cmp r0, #0
|
|
moveq r0, #1
|
|
movne r0, #0
|
|
bx lr
|
|
arm_func_end func_ov30_021885b8
|
|
|
|
.rodata
|
|
.global data_ov30_021885d4
|
|
data_ov30_021885d4: ; 0x021885d4
|
|
.ascii "head_jnt"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021885e0
|
|
data_ov30_021885e0: ; 0x021885e0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021885e4
|
|
data_ov30_021885e4: ; 0x021885e4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021885e8
|
|
data_ov30_021885e8: ; 0x021885e8
|
|
.ascii "RarmB_jnt"
|
|
.byte 0x00, 0x00, 0x00
|
|
.global data_ov30_021885f4
|
|
data_ov30_021885f4: ; 0x021885f4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021885f8
|
|
data_ov30_021885f8: ; 0x021885f8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021885fc
|
|
data_ov30_021885fc: ; 0x021885fc
|
|
.byte 0x33, 0x03, 0x00, 0x00
|
|
.global data_ov30_02188600
|
|
data_ov30_02188600: ; 0x02188600
|
|
.byte 0x14, 0xfe, 0xff, 0xff
|
|
.global data_ov30_02188604
|
|
data_ov30_02188604: ; 0x02188604
|
|
.byte 0xcd, 0x04, 0x00, 0x00
|
|
.global data_ov30_02188608
|
|
data_ov30_02188608: ; 0x02188608
|
|
.byte 0x33, 0x03, 0x00, 0x00
|
|
.global data_ov30_0218860c
|
|
data_ov30_0218860c: ; 0x0218860c
|
|
.byte 0xec, 0x01, 0x00, 0x00
|
|
.global data_ov30_02188610
|
|
data_ov30_02188610: ; 0x02188610
|
|
.byte 0xcd, 0x04, 0x00, 0x00
|
|
.global data_ov30_02188614
|
|
data_ov30_02188614: ; 0x02188614
|
|
.byte 0x9a, 0x05, 0x00, 0x00
|
|
.global data_ov30_02188618
|
|
data_ov30_02188618: ; 0x02188618
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218861c
|
|
data_ov30_0218861c: ; 0x0218861c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188620
|
|
data_ov30_02188620: ; 0x02188620
|
|
.byte 0x9a, 0x05, 0x00, 0x00
|
|
.global data_ov30_02188624
|
|
data_ov30_02188624: ; 0x02188624
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188628
|
|
data_ov30_02188628: ; 0x02188628
|
|
.byte 0x66, 0x16, 0x00, 0x00
|
|
.global data_ov30_0218862c
|
|
data_ov30_0218862c: ; 0x0218862c
|
|
.byte 0x00, 0x08, 0x00, 0x00
|
|
.global data_ov30_02188630
|
|
data_ov30_02188630: ; 0x02188630
|
|
.byte 0x66, 0xfa, 0xff, 0xff
|
|
.global data_ov30_02188634
|
|
data_ov30_02188634: ; 0x02188634
|
|
.byte 0xcd, 0x08, 0x00, 0x00
|
|
.global data_ov30_02188638
|
|
data_ov30_02188638: ; 0x02188638
|
|
.byte 0x9a, 0x05, 0x00, 0x00
|
|
.global data_ov30_0218863c
|
|
data_ov30_0218863c: ; 0x0218863c
|
|
.byte 0x00, 0xf0, 0xff, 0xff
|
|
.global data_ov30_02188640
|
|
data_ov30_02188640: ; 0x02188640
|
|
.byte 0x66, 0x12, 0x00, 0x00
|
|
.global data_ov30_02188644
|
|
data_ov30_02188644: ; 0x02188644
|
|
.ascii "wait"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218864c
|
|
data_ov30_0218864c: ; 0x0218864c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188650
|
|
data_ov30_02188650: ; 0x02188650
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188654
|
|
data_ov30_02188654: ; 0x02188654
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188658
|
|
data_ov30_02188658: ; 0x02188658
|
|
.ascii "walk"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188660
|
|
data_ov30_02188660: ; 0x02188660
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188664
|
|
data_ov30_02188664: ; 0x02188664
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188668
|
|
data_ov30_02188668: ; 0x02188668
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218866c
|
|
data_ov30_0218866c: ; 0x0218866c
|
|
.ascii "cutA"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188674
|
|
data_ov30_02188674: ; 0x02188674
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188678
|
|
data_ov30_02188678: ; 0x02188678
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218867c
|
|
data_ov30_0218867c: ; 0x0218867c
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188680
|
|
data_ov30_02188680: ; 0x02188680
|
|
.ascii "dam"
|
|
.byte 0x00
|
|
.global data_ov30_02188684
|
|
data_ov30_02188684: ; 0x02188684
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188688
|
|
data_ov30_02188688: ; 0x02188688
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218868c
|
|
data_ov30_0218868c: ; 0x0218868c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188690
|
|
data_ov30_02188690: ; 0x02188690
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188694
|
|
data_ov30_02188694: ; 0x02188694
|
|
.ascii "yoroke"
|
|
.byte 0x00, 0x00
|
|
.global data_ov30_0218869c
|
|
data_ov30_0218869c: ; 0x0218869c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021886a0
|
|
data_ov30_021886a0: ; 0x021886a0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021886a4
|
|
data_ov30_021886a4: ; 0x021886a4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021886a8
|
|
data_ov30_021886a8: ; 0x021886a8
|
|
.ascii "search"
|
|
.byte 0x00, 0x00
|
|
.global data_ov30_021886b0
|
|
data_ov30_021886b0: ; 0x021886b0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021886b4
|
|
data_ov30_021886b4: ; 0x021886b4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021886b8
|
|
data_ov30_021886b8: ; 0x021886b8
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov30_021886bc
|
|
data_ov30_021886bc: ; 0x021886bc
|
|
.ascii "guard"
|
|
.byte 0x00, 0x00, 0x00
|
|
.global data_ov30_021886c4
|
|
data_ov30_021886c4: ; 0x021886c4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021886c8
|
|
data_ov30_021886c8: ; 0x021886c8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021886cc
|
|
data_ov30_021886cc: ; 0x021886cc
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov30_021886d0
|
|
data_ov30_021886d0: ; 0x021886d0
|
|
.ascii "notice"
|
|
.byte 0x00, 0x00
|
|
.global data_ov30_021886d8
|
|
data_ov30_021886d8: ; 0x021886d8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021886dc
|
|
data_ov30_021886dc: ; 0x021886dc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021886e0
|
|
data_ov30_021886e0: ; 0x021886e0
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov30_021886e4
|
|
data_ov30_021886e4: ; 0x021886e4
|
|
.ascii "appear"
|
|
.byte 0x00, 0x00
|
|
.global data_ov30_021886ec
|
|
data_ov30_021886ec: ; 0x021886ec
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021886f0
|
|
data_ov30_021886f0: ; 0x021886f0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021886f4
|
|
data_ov30_021886f4: ; 0x021886f4
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov30_021886f8
|
|
data_ov30_021886f8: ; 0x021886f8
|
|
.ascii "invisible"
|
|
.byte 0x00, 0x00, 0x00
|
|
.global data_ov30_02188704
|
|
data_ov30_02188704: ; 0x02188704
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188708
|
|
data_ov30_02188708: ; 0x02188708
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218870c
|
|
data_ov30_0218870c: ; 0x0218870c
|
|
.ascii "killed"
|
|
.byte 0x00, 0x00
|
|
.global data_ov30_02188714
|
|
data_ov30_02188714: ; 0x02188714
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188718
|
|
data_ov30_02188718: ; 0x02188718
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218871c
|
|
data_ov30_0218871c: ; 0x0218871c
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188720
|
|
data_ov30_02188720: ; 0x02188720
|
|
.ascii "warp1"
|
|
.byte 0x00, 0x00, 0x00
|
|
.global data_ov30_02188728
|
|
data_ov30_02188728: ; 0x02188728
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218872c
|
|
data_ov30_0218872c: ; 0x0218872c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188730
|
|
data_ov30_02188730: ; 0x02188730
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188734
|
|
data_ov30_02188734: ; 0x02188734
|
|
.ascii "dead"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218873c
|
|
data_ov30_0218873c: ; 0x0218873c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188740
|
|
data_ov30_02188740: ; 0x02188740
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188744
|
|
data_ov30_02188744: ; 0x02188744
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188748
|
|
data_ov30_02188748: ; 0x02188748
|
|
.ascii "dead"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188750
|
|
data_ov30_02188750: ; 0x02188750
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188754
|
|
data_ov30_02188754: ; 0x02188754
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188758
|
|
data_ov30_02188758: ; 0x02188758
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218875c
|
|
data_ov30_0218875c: ; 0x0218875c
|
|
.byte 0x00, 0x30, 0x00, 0x00
|
|
.global data_ov30_02188760
|
|
data_ov30_02188760: ; 0x02188760
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov30_02188764
|
|
data_ov30_02188764: ; 0x02188764
|
|
.byte 0x9a, 0x01, 0x00, 0x00
|
|
.global data_ov30_02188768
|
|
data_ov30_02188768: ; 0x02188768
|
|
.byte 0xcd, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218876c
|
|
data_ov30_0218876c: ; 0x0218876c
|
|
.byte 0x00, 0xd0, 0x00, 0x00
|
|
.global data_ov30_02188770
|
|
data_ov30_02188770: ; 0x02188770
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov30_02188774
|
|
data_ov30_02188774: ; 0x02188774
|
|
.byte 0x0e, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188778
|
|
data_ov30_02188778: ; 0x02188778
|
|
.byte 0x12, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218877c
|
|
data_ov30_0218877c: ; 0x0218877c
|
|
.byte 0x13, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188780
|
|
data_ov30_02188780: ; 0x02188780
|
|
.byte 0xff, 0xff, 0xff, 0xff
|
|
.global data_ov30_02188784
|
|
data_ov30_02188784: ; 0x02188784
|
|
.byte 0x0f, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188788
|
|
data_ov30_02188788: ; 0x02188788
|
|
.byte 0x12, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218878c
|
|
data_ov30_0218878c: ; 0x0218878c
|
|
.byte 0x13, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188790
|
|
data_ov30_02188790: ; 0x02188790
|
|
.byte 0xff, 0xff, 0xff, 0xff
|
|
.global data_ov30_02188794
|
|
data_ov30_02188794: ; 0x02188794
|
|
.byte 0x10, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188798
|
|
data_ov30_02188798: ; 0x02188798
|
|
.byte 0x12, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218879c
|
|
data_ov30_0218879c: ; 0x0218879c
|
|
.byte 0x13, 0x00, 0x00, 0x00
|
|
.global data_ov30_021887a0
|
|
data_ov30_021887a0: ; 0x021887a0
|
|
.byte 0xff, 0xff, 0xff, 0xff
|
|
.global data_ov30_021887a4
|
|
data_ov30_021887a4: ; 0x021887a4
|
|
.byte 0x11, 0x00, 0x00, 0x00
|
|
.global data_ov30_021887a8
|
|
data_ov30_021887a8: ; 0x021887a8
|
|
.byte 0xff, 0xff, 0xff, 0xff
|
|
.global data_ov30_021887ac
|
|
data_ov30_021887ac: ; 0x021887ac
|
|
.ascii "RSHC"
|
|
.global data_ov30_021887b0
|
|
data_ov30_021887b0: ; 0x021887b0
|
|
.byte 0x74, 0x87, 0x18, 0x02
|
|
.global data_ov30_021887b4
|
|
data_ov30_021887b4: ; 0x021887b4
|
|
.ascii "2SHC"
|
|
.global data_ov30_021887b8
|
|
data_ov30_021887b8: ; 0x021887b8
|
|
.byte 0x84, 0x87, 0x18, 0x02
|
|
.global data_ov30_021887bc
|
|
data_ov30_021887bc: ; 0x021887bc
|
|
.ascii "6SHC"
|
|
.global data_ov30_021887c0
|
|
data_ov30_021887c0: ; 0x021887c0
|
|
.byte 0x94, 0x87, 0x18, 0x02
|
|
.global data_ov30_021887c4
|
|
data_ov30_021887c4: ; 0x021887c4
|
|
.ascii "4SHC"
|
|
.global data_ov30_021887c8
|
|
data_ov30_021887c8: ; 0x021887c8
|
|
.byte 0xa4, 0x87, 0x18, 0x02
|
|
.global data_ov30_021887cc
|
|
data_ov30_021887cc: ; 0x021887cc
|
|
.byte 0x02, 0x00, 0x00, 0x00
|
|
.global data_ov30_021887d0
|
|
data_ov30_021887d0: ; 0x021887d0
|
|
.ascii "MBLF"
|
|
.global data_ov30_021887d4
|
|
data_ov30_021887d4: ; 0x021887d4
|
|
.ascii "TBLF"
|
|
.global data_ov30_021887d8
|
|
data_ov30_021887d8: ; 0x021887d8
|
|
.ascii "LALF"
|
|
.global data_ov30_021887dc
|
|
data_ov30_021887dc: ; 0x021887dc
|
|
.ascii "MTLF"
|
|
.global data_ov30_021887e0
|
|
data_ov30_021887e0: ; 0x021887e0
|
|
.ascii "MTSL"
|
|
.global data_ov30_021887e4
|
|
data_ov30_021887e4: ; 0x021887e4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021887e8
|
|
data_ov30_021887e8: ; 0x021887e8
|
|
.byte 0x33, 0x0b, 0x00, 0x00
|
|
.global data_ov30_021887ec
|
|
data_ov30_021887ec: ; 0x021887ec
|
|
.byte 0xcd, 0x14, 0x00, 0x00
|
|
.global data_ov30_021887f0
|
|
data_ov30_021887f0: ; 0x021887f0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021887f4
|
|
data_ov30_021887f4: ; 0x021887f4
|
|
.byte 0x33, 0x0b, 0x00, 0x00
|
|
.global data_ov30_021887f8
|
|
data_ov30_021887f8: ; 0x021887f8
|
|
.byte 0xcd, 0x14, 0x00, 0x00
|
|
.global data_ov30_021887fc
|
|
data_ov30_021887fc: ; 0x021887fc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188800
|
|
data_ov30_02188800: ; 0x02188800
|
|
.byte 0x00, 0x0c, 0x00, 0x00
|
|
.global data_ov30_02188804
|
|
data_ov30_02188804: ; 0x02188804
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
.global data_ov30_02188808
|
|
data_ov30_02188808: ; 0x02188808
|
|
.byte 0x0c, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218880c
|
|
data_ov30_0218880c: ; 0x0218880c
|
|
.byte 0x08, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188810
|
|
data_ov30_02188810: ; 0x02188810
|
|
.byte 0x10, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188814
|
|
data_ov30_02188814: ; 0x02188814
|
|
.byte 0xfb, 0x06, 0xfc, 0x05
|
|
.global data_ov30_02188818
|
|
data_ov30_02188818: ; 0x02188818
|
|
.byte 0xf6, 0x09, 0x00, 0x0c
|
|
.global data_ov30_0218881c
|
|
data_ov30_0218881c: ; 0x0218881c
|
|
.byte 0x05, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188820
|
|
data_ov30_02188820: ; 0x02188820
|
|
.byte 0x00, 0x10, 0x00, 0x00
|
|
|
|
.section .init, 4, 1, 4
|
|
.global func_ov30_02188824
|
|
arm_func_start func_ov30_02188824
|
|
func_ov30_02188824: ; 0x02188824
|
|
stmdb sp!, {lr}
|
|
sub sp, sp, #0x84
|
|
ldr r0, _02188988 ; =data_ov30_021894ac
|
|
ldr r1, _0218898c ; =0x43485352
|
|
ldr r2, _02188990 ; =func_ov30_02180628
|
|
ldr r3, _02188994 ; =func_ov30_02180548
|
|
bl func_0203e784
|
|
ldr r0, _02188988 ; =data_ov30_021894ac
|
|
ldr r1, _02188998 ; =func_0203e7b4
|
|
ldr r2, _0218899c ; =data_ov30_021894a0
|
|
bl func_0204f8d4
|
|
ldr r0, _021889a0 ; =data_ov30_021894cc
|
|
ldr r1, _021889a4 ; =0x43485332
|
|
ldr r2, _021889a8 ; =func_ov30_0218066c
|
|
ldr r3, _021889ac ; =func_ov30_021805ac
|
|
bl func_0203e784
|
|
ldr r0, _021889a0 ; =data_ov30_021894cc
|
|
ldr r1, _02188998 ; =func_0203e7b4
|
|
ldr r2, _021889b0 ; =data_ov30_021894c0
|
|
bl func_0204f8d4
|
|
ldr r0, _021889b4 ; =data_ov30_021894ec
|
|
ldr r1, _021889b8 ; =0x43485336
|
|
ldr r2, _021889bc ; =func_ov30_021806b0
|
|
ldr r3, _021889c0 ; =func_ov30_02180610
|
|
bl func_0203e784
|
|
ldr r0, _021889b4 ; =data_ov30_021894ec
|
|
ldr r1, _02188998 ; =func_0203e7b4
|
|
ldr r2, _021889c4 ; =data_ov30_021894e0
|
|
bl func_0204f8d4
|
|
ldr r0, _021889c8 ; =data_ov30_0218950c
|
|
ldr r1, _021889cc ; =0x43485334
|
|
ldr r2, _021889d0 ; =func_ov30_021806f4
|
|
ldr r3, _021889d4 ; =func_ov30_0218061c
|
|
bl func_0203e784
|
|
ldr r0, _021889c8 ; =data_ov30_0218950c
|
|
ldr r1, _02188998 ; =func_0203e7b4
|
|
ldr r2, _021889d8 ; =data_ov30_02189500
|
|
bl func_0204f8d4
|
|
mov lr, #0
|
|
str lr, [sp]
|
|
str lr, [sp, #4]
|
|
mov ip, #2
|
|
str ip, [sp, #8]
|
|
mov r3, #0x1000
|
|
str r3, [sp, #0xc]
|
|
str r3, [sp, #0x10]
|
|
str r3, [sp, #0x14]
|
|
str ip, [sp, #0x18]
|
|
mov r2, #4
|
|
str r2, [sp, #0x1c]
|
|
str r2, [sp, #0x20]
|
|
str lr, [sp, #0x24]
|
|
str lr, [sp, #0x28]
|
|
str r2, [sp, #0x2c]
|
|
str r2, [sp, #0x30]
|
|
str r2, [sp, #0x34]
|
|
mov r0, #5
|
|
str r0, [sp, #0x38]
|
|
str r2, [sp, #0x3c]
|
|
str r2, [sp, #0x40]
|
|
str r2, [sp, #0x44]
|
|
mov r0, #0xf0
|
|
str r0, [sp, #0x48]
|
|
str r3, [sp, #0x4c]
|
|
str lr, [sp, #0x50]
|
|
ldr r1, _021889dc ; =0x00000666
|
|
mov r0, #0x800
|
|
str r1, [sp, #0x54]
|
|
str lr, [sp, #0x58]
|
|
str r1, [sp, #0x5c]
|
|
str r0, [sp, #0x60]
|
|
str r0, [sp, #0x64]
|
|
str r3, [sp, #0x68]
|
|
str lr, [sp, #0x6c]
|
|
str lr, [sp, #0x70]
|
|
str lr, [sp, #0x74]
|
|
str lr, [sp, #0x78]
|
|
str lr, [sp, #0x7c]
|
|
str ip, [sp, #0x80]
|
|
ldr r0, _021889e0 ; =data_ov30_02188c9c
|
|
mov r1, #0xff
|
|
mov r3, r1
|
|
bl func_ov00_020ccdd4
|
|
ldr r0, _021889e0 ; =data_ov30_02188c9c
|
|
ldr r1, _021889e4 ; =func_ov00_020cceec
|
|
ldr r2, _021889e8 ; =data_ov30_02189520
|
|
bl func_0204f8d4
|
|
add sp, sp, #0x84
|
|
ldmia sp!, {pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_02188824
|
|
_02188988: .word data_ov30_021894ac
|
|
_0218898c: .word 0x43485352
|
|
_02188990: .word func_ov30_02180628
|
|
_02188994: .word func_ov30_02180548
|
|
_02188998: .word func_0203e7b4
|
|
_0218899c: .word data_ov30_021894a0
|
|
_021889a0: .word data_ov30_021894cc
|
|
_021889a4: .word 0x43485332
|
|
_021889a8: .word func_ov30_0218066c
|
|
_021889ac: .word func_ov30_021805ac
|
|
_021889b0: .word data_ov30_021894c0
|
|
_021889b4: .word data_ov30_021894ec
|
|
_021889b8: .word 0x43485336
|
|
_021889bc: .word func_ov30_021806b0
|
|
_021889c0: .word func_ov30_02180610
|
|
_021889c4: .word data_ov30_021894e0
|
|
_021889c8: .word data_ov30_0218950c
|
|
_021889cc: .word 0x43485334
|
|
_021889d0: .word func_ov30_021806f4
|
|
_021889d4: .word func_ov30_0218061c
|
|
_021889d8: .word data_ov30_02189500
|
|
_021889dc: .word 0x00000666
|
|
_021889e0: .word data_ov30_02188c9c
|
|
_021889e4: .word func_ov00_020cceec
|
|
_021889e8: .word data_ov30_02189520
|
|
|
|
.global func_ov30_021889ec
|
|
arm_func_start func_ov30_021889ec
|
|
func_ov30_021889ec: ; 0x021889ec
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _02188a18 ; =data_ov30_0218953c
|
|
ldr r1, _02188a1c ; =0x43484f42
|
|
ldr r2, _02188a20 ; =func_ov30_021847b0
|
|
mov r3, #0
|
|
bl func_0203e784
|
|
ldr r0, _02188a18 ; =data_ov30_0218953c
|
|
ldr r1, _02188a24 ; =func_0203e7b4
|
|
ldr r2, _02188a28 ; =data_ov30_02189530
|
|
bl func_0204f8d4
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
arm_func_end func_ov30_021889ec
|
|
_02188a18: .word data_ov30_0218953c
|
|
_02188a1c: .word 0x43484f42
|
|
_02188a20: .word func_ov30_021847b0
|
|
_02188a24: .word func_0203e7b4
|
|
_02188a28: .word data_ov30_02189530
|
|
|
|
.section .sinit, 4, 1, 4
|
|
.global data_ov30_02188a2c
|
|
data_ov30_02188a2c: ; 0x02188a2c
|
|
.byte 0x24, 0x88, 0x18, 0x02
|
|
.global data_ov30_02188a30
|
|
data_ov30_02188a30: ; 0x02188a30
|
|
.byte 0xec, 0x89, 0x18, 0x02
|
|
|
|
.data
|
|
.global data_ov30_02188a40
|
|
data_ov30_02188a40: ; 0x02188a40
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188a44
|
|
data_ov30_02188a44: ; 0x02188a44
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188a48
|
|
data_ov30_02188a48: ; 0x02188a48
|
|
.byte 0x88, 0xc1, 0x17, 0x02
|
|
.global data_ov30_02188a4c
|
|
data_ov30_02188a4c: ; 0x02188a4c
|
|
.byte 0x6c, 0xc1, 0x17, 0x02
|
|
.global data_ov30_02188a50
|
|
data_ov30_02188a50: ; 0x02188a50
|
|
.byte 0x9c, 0xc1, 0x17, 0x02
|
|
.global data_ov30_02188a54
|
|
data_ov30_02188a54: ; 0x02188a54
|
|
.byte 0xa4, 0xc1, 0x17, 0x02
|
|
.global data_ov30_02188a58
|
|
data_ov30_02188a58: ; 0x02188a58
|
|
.byte 0x20, 0xc1, 0x17, 0x02
|
|
.global data_ov30_02188a5c
|
|
data_ov30_02188a5c: ; 0x02188a5c
|
|
.byte 0x50, 0x1f, 0x08, 0x02
|
|
.global data_ov30_02188a60
|
|
data_ov30_02188a60: ; 0x02188a60
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188a64
|
|
data_ov30_02188a64: ; 0x02188a64
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188a68
|
|
data_ov30_02188a68: ; 0x02188a68
|
|
.byte 0x34, 0x5d, 0x0c, 0x02
|
|
.global data_ov30_02188a6c
|
|
data_ov30_02188a6c: ; 0x02188a6c
|
|
.byte 0x80, 0xc8, 0x17, 0x02
|
|
.global data_ov30_02188a70
|
|
data_ov30_02188a70: ; 0x02188a70
|
|
.byte 0x58, 0x5e, 0x0c, 0x02
|
|
.global data_ov30_02188a74
|
|
data_ov30_02188a74: ; 0x02188a74
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188a78
|
|
data_ov30_02188a78: ; 0x02188a78
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188a7c
|
|
data_ov30_02188a7c: ; 0x02188a7c
|
|
.byte 0x90, 0xc7, 0x17, 0x02
|
|
.global data_ov30_02188a80
|
|
data_ov30_02188a80: ; 0x02188a80
|
|
.byte 0xe4, 0xcd, 0x17, 0x02
|
|
.global data_ov30_02188a84
|
|
data_ov30_02188a84: ; 0x02188a84
|
|
.byte 0x0c, 0x96, 0x0a, 0x02
|
|
.global data_ov30_02188a88
|
|
data_ov30_02188a88: ; 0x02188a88
|
|
.byte 0x14, 0x96, 0x0a, 0x02
|
|
.global data_ov30_02188a8c
|
|
data_ov30_02188a8c: ; 0x02188a8c
|
|
.byte 0x50, 0x96, 0x0a, 0x02
|
|
.global data_ov30_02188a90
|
|
data_ov30_02188a90: ; 0x02188a90
|
|
.byte 0xd4, 0x96, 0x0a, 0x02
|
|
.global data_ov30_02188a94
|
|
data_ov30_02188a94: ; 0x02188a94
|
|
.byte 0x40, 0x97, 0x0a, 0x02
|
|
.global data_ov30_02188a98
|
|
data_ov30_02188a98: ; 0x02188a98
|
|
.byte 0x64, 0x97, 0x0a, 0x02
|
|
.global data_ov30_02188a9c
|
|
data_ov30_02188a9c: ; 0x02188a9c
|
|
.byte 0xd0, 0x97, 0x0a, 0x02
|
|
.global data_ov30_02188aa0
|
|
data_ov30_02188aa0: ; 0x02188aa0
|
|
.byte 0xe0, 0x97, 0x0a, 0x02
|
|
.global data_ov30_02188aa4
|
|
data_ov30_02188aa4: ; 0x02188aa4
|
|
.byte 0xf8, 0x97, 0x0a, 0x02
|
|
.global data_ov30_02188aa8
|
|
data_ov30_02188aa8: ; 0x02188aa8
|
|
.byte 0x64, 0x98, 0x0a, 0x02
|
|
.global data_ov30_02188aac
|
|
data_ov30_02188aac: ; 0x02188aac
|
|
.byte 0xbc, 0x98, 0x0a, 0x02
|
|
.global data_ov30_02188ab0
|
|
data_ov30_02188ab0: ; 0x02188ab0
|
|
.byte 0x90, 0x98, 0x0a, 0x02
|
|
.global data_ov30_02188ab4
|
|
data_ov30_02188ab4: ; 0x02188ab4
|
|
.byte 0x68, 0x99, 0x0a, 0x02
|
|
.global data_ov30_02188ab8
|
|
data_ov30_02188ab8: ; 0x02188ab8
|
|
.byte 0xd0, 0xc4, 0x17, 0x02
|
|
.global data_ov30_02188abc
|
|
data_ov30_02188abc: ; 0x02188abc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188ac0
|
|
data_ov30_02188ac0: ; 0x02188ac0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188ac4
|
|
data_ov30_02188ac4: ; 0x02188ac4
|
|
.byte 0x34, 0x5d, 0x0c, 0x02
|
|
.global data_ov30_02188ac8
|
|
data_ov30_02188ac8: ; 0x02188ac8
|
|
.byte 0x00, 0xce, 0x17, 0x02
|
|
.global data_ov30_02188acc
|
|
data_ov30_02188acc: ; 0x02188acc
|
|
.byte 0x58, 0x5e, 0x0c, 0x02
|
|
.global data_ov30_02188ad0
|
|
data_ov30_02188ad0: ; 0x02188ad0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188ad4
|
|
data_ov30_02188ad4: ; 0x02188ad4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188ad8
|
|
data_ov30_02188ad8: ; 0x02188ad8
|
|
.byte 0x6d, 0x9b, 0x0a, 0x02
|
|
.global data_ov30_02188adc
|
|
data_ov30_02188adc: ; 0x02188adc
|
|
.byte 0x79, 0x9b, 0x0a, 0x02
|
|
.global data_ov30_02188ae0
|
|
data_ov30_02188ae0: ; 0x02188ae0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188ae4
|
|
data_ov30_02188ae4: ; 0x02188ae4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188ae8
|
|
data_ov30_02188ae8: ; 0x02188ae8
|
|
.byte 0xa4, 0xd3, 0x17, 0x02
|
|
.global data_ov30_02188aec
|
|
data_ov30_02188aec: ; 0x02188aec
|
|
.byte 0x90, 0xd9, 0x17, 0x02
|
|
.global data_ov30_02188af0
|
|
data_ov30_02188af0: ; 0x02188af0
|
|
.byte 0x98, 0xce, 0x17, 0x02
|
|
.global data_ov30_02188af4
|
|
data_ov30_02188af4: ; 0x02188af4
|
|
.byte 0xd0, 0xce, 0x17, 0x02
|
|
.global data_ov30_02188af8
|
|
data_ov30_02188af8: ; 0x02188af8
|
|
.byte 0x08, 0xcf, 0x17, 0x02
|
|
.global data_ov30_02188afc
|
|
data_ov30_02188afc: ; 0x02188afc
|
|
.byte 0x54, 0xd0, 0x17, 0x02
|
|
.global data_ov30_02188b00
|
|
data_ov30_02188b00: ; 0x02188b00
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188b04
|
|
data_ov30_02188b04: ; 0x02188b04
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188b08
|
|
data_ov30_02188b08: ; 0x02188b08
|
|
.byte 0x04, 0xce, 0x17, 0x02
|
|
.global data_ov30_02188b0c
|
|
data_ov30_02188b0c: ; 0x02188b0c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188b10
|
|
data_ov30_02188b10: ; 0x02188b10
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188b14
|
|
data_ov30_02188b14: ; 0x02188b14
|
|
.byte 0x68, 0x04, 0x18, 0x02
|
|
.global data_ov30_02188b18
|
|
data_ov30_02188b18: ; 0x02188b18
|
|
.byte 0x84, 0x04, 0x18, 0x02
|
|
.global data_ov30_02188b1c
|
|
data_ov30_02188b1c: ; 0x02188b1c
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02188b20
|
|
data_ov30_02188b20: ; 0x02188b20
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188b24
|
|
data_ov30_02188b24: ; 0x02188b24
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188b28
|
|
data_ov30_02188b28: ; 0x02188b28
|
|
.byte 0xec, 0x01, 0x18, 0x02
|
|
.global data_ov30_02188b2c
|
|
data_ov30_02188b2c: ; 0x02188b2c
|
|
.byte 0x08, 0x02, 0x18, 0x02
|
|
.global data_ov30_02188b30
|
|
data_ov30_02188b30: ; 0x02188b30
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02188b34
|
|
data_ov30_02188b34: ; 0x02188b34
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188b38
|
|
data_ov30_02188b38: ; 0x02188b38
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188b3c
|
|
data_ov30_02188b3c: ; 0x02188b3c
|
|
.byte 0x28, 0xfe, 0x17, 0x02
|
|
.global data_ov30_02188b40
|
|
data_ov30_02188b40: ; 0x02188b40
|
|
.byte 0x44, 0xfe, 0x17, 0x02
|
|
.global data_ov30_02188b44
|
|
data_ov30_02188b44: ; 0x02188b44
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02188b48
|
|
data_ov30_02188b48: ; 0x02188b48
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188b4c
|
|
data_ov30_02188b4c: ; 0x02188b4c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188b50
|
|
data_ov30_02188b50: ; 0x02188b50
|
|
.byte 0x5c, 0xfb, 0x17, 0x02
|
|
.global data_ov30_02188b54
|
|
data_ov30_02188b54: ; 0x02188b54
|
|
.byte 0x7c, 0xfb, 0x17, 0x02
|
|
.global data_ov30_02188b58
|
|
data_ov30_02188b58: ; 0x02188b58
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02188b5c
|
|
data_ov30_02188b5c: ; 0x02188b5c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188b60
|
|
data_ov30_02188b60: ; 0x02188b60
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188b64
|
|
data_ov30_02188b64: ; 0x02188b64
|
|
.byte 0x58, 0xf7, 0x17, 0x02
|
|
.global data_ov30_02188b68
|
|
data_ov30_02188b68: ; 0x02188b68
|
|
.byte 0x7c, 0xf7, 0x17, 0x02
|
|
.global data_ov30_02188b6c
|
|
data_ov30_02188b6c: ; 0x02188b6c
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02188b70
|
|
data_ov30_02188b70: ; 0x02188b70
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188b74
|
|
data_ov30_02188b74: ; 0x02188b74
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188b78
|
|
data_ov30_02188b78: ; 0x02188b78
|
|
.byte 0xa0, 0xf1, 0x17, 0x02
|
|
.global data_ov30_02188b7c
|
|
data_ov30_02188b7c: ; 0x02188b7c
|
|
.byte 0xc4, 0xf1, 0x17, 0x02
|
|
.global data_ov30_02188b80
|
|
data_ov30_02188b80: ; 0x02188b80
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02188b84
|
|
data_ov30_02188b84: ; 0x02188b84
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188b88
|
|
data_ov30_02188b88: ; 0x02188b88
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188b8c
|
|
data_ov30_02188b8c: ; 0x02188b8c
|
|
.byte 0x78, 0xed, 0x17, 0x02
|
|
.global data_ov30_02188b90
|
|
data_ov30_02188b90: ; 0x02188b90
|
|
.byte 0xb0, 0xed, 0x17, 0x02
|
|
.global data_ov30_02188b94
|
|
data_ov30_02188b94: ; 0x02188b94
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02188b98
|
|
data_ov30_02188b98: ; 0x02188b98
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188b9c
|
|
data_ov30_02188b9c: ; 0x02188b9c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188ba0
|
|
data_ov30_02188ba0: ; 0x02188ba0
|
|
.byte 0xf0, 0xec, 0x17, 0x02
|
|
.global data_ov30_02188ba4
|
|
data_ov30_02188ba4: ; 0x02188ba4
|
|
.byte 0x28, 0xed, 0x17, 0x02
|
|
.global data_ov30_02188ba8
|
|
data_ov30_02188ba8: ; 0x02188ba8
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02188bac
|
|
data_ov30_02188bac: ; 0x02188bac
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188bb0
|
|
data_ov30_02188bb0: ; 0x02188bb0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188bb4
|
|
data_ov30_02188bb4: ; 0x02188bb4
|
|
.byte 0x6c, 0xeb, 0x17, 0x02
|
|
.global data_ov30_02188bb8
|
|
data_ov30_02188bb8: ; 0x02188bb8
|
|
.byte 0xbc, 0xeb, 0x17, 0x02
|
|
.global data_ov30_02188bbc
|
|
data_ov30_02188bbc: ; 0x02188bbc
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02188bc0
|
|
data_ov30_02188bc0: ; 0x02188bc0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188bc4
|
|
data_ov30_02188bc4: ; 0x02188bc4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188bc8
|
|
data_ov30_02188bc8: ; 0x02188bc8
|
|
.byte 0x80, 0xe8, 0x17, 0x02
|
|
.global data_ov30_02188bcc
|
|
data_ov30_02188bcc: ; 0x02188bcc
|
|
.byte 0xbc, 0xe8, 0x17, 0x02
|
|
.global data_ov30_02188bd0
|
|
data_ov30_02188bd0: ; 0x02188bd0
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02188bd4
|
|
data_ov30_02188bd4: ; 0x02188bd4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188bd8
|
|
data_ov30_02188bd8: ; 0x02188bd8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188bdc
|
|
data_ov30_02188bdc: ; 0x02188bdc
|
|
.byte 0xc0, 0xee, 0x17, 0x02
|
|
.global data_ov30_02188be0
|
|
data_ov30_02188be0: ; 0x02188be0
|
|
.byte 0xe0, 0xee, 0x17, 0x02
|
|
.global data_ov30_02188be4
|
|
data_ov30_02188be4: ; 0x02188be4
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02188be8
|
|
data_ov30_02188be8: ; 0x02188be8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188bec
|
|
data_ov30_02188bec: ; 0x02188bec
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188bf0
|
|
data_ov30_02188bf0: ; 0x02188bf0
|
|
.byte 0x3c, 0xe5, 0x17, 0x02
|
|
.global data_ov30_02188bf4
|
|
data_ov30_02188bf4: ; 0x02188bf4
|
|
.byte 0xa4, 0xe5, 0x17, 0x02
|
|
.global data_ov30_02188bf8
|
|
data_ov30_02188bf8: ; 0x02188bf8
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02188bfc
|
|
data_ov30_02188bfc: ; 0x02188bfc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188c00
|
|
data_ov30_02188c00: ; 0x02188c00
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188c04
|
|
data_ov30_02188c04: ; 0x02188c04
|
|
.byte 0xd0, 0xe3, 0x17, 0x02
|
|
.global data_ov30_02188c08
|
|
data_ov30_02188c08: ; 0x02188c08
|
|
.byte 0x14, 0xe4, 0x17, 0x02
|
|
.global data_ov30_02188c0c
|
|
data_ov30_02188c0c: ; 0x02188c0c
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02188c10
|
|
data_ov30_02188c10: ; 0x02188c10
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188c14
|
|
data_ov30_02188c14: ; 0x02188c14
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188c18
|
|
data_ov30_02188c18: ; 0x02188c18
|
|
.byte 0x94, 0xe0, 0x17, 0x02
|
|
.global data_ov30_02188c1c
|
|
data_ov30_02188c1c: ; 0x02188c1c
|
|
.byte 0xb0, 0xe0, 0x17, 0x02
|
|
.global data_ov30_02188c20
|
|
data_ov30_02188c20: ; 0x02188c20
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02188c24
|
|
data_ov30_02188c24: ; 0x02188c24
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188c28
|
|
data_ov30_02188c28: ; 0x02188c28
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188c2c
|
|
data_ov30_02188c2c: ; 0x02188c2c
|
|
.byte 0x80, 0xdb, 0x17, 0x02
|
|
.global data_ov30_02188c30
|
|
data_ov30_02188c30: ; 0x02188c30
|
|
.byte 0xc8, 0xdb, 0x17, 0x02
|
|
.global data_ov30_02188c34
|
|
data_ov30_02188c34: ; 0x02188c34
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02188c38
|
|
data_ov30_02188c38: ; 0x02188c38
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188c3c
|
|
data_ov30_02188c3c: ; 0x02188c3c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188c40
|
|
data_ov30_02188c40: ; 0x02188c40
|
|
.byte 0xfc, 0xda, 0x17, 0x02
|
|
.global data_ov30_02188c44
|
|
data_ov30_02188c44: ; 0x02188c44
|
|
.byte 0x10, 0xdb, 0x17, 0x02
|
|
.global data_ov30_02188c48
|
|
data_ov30_02188c48: ; 0x02188c48
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02188c4c
|
|
data_ov30_02188c4c: ; 0x02188c4c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188c50
|
|
data_ov30_02188c50: ; 0x02188c50
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188c54
|
|
data_ov30_02188c54: ; 0x02188c54
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188c58
|
|
data_ov30_02188c58: ; 0x02188c58
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188c5c
|
|
data_ov30_02188c5c: ; 0x02188c5c
|
|
.ascii "brg"
|
|
.byte 0x00
|
|
.global data_ov30_02188c60
|
|
data_ov30_02188c60: ; 0x02188c60
|
|
.ascii "fnl"
|
|
.byte 0x00
|
|
.global data_ov30_02188c64
|
|
data_ov30_02188c64: ; 0x02188c64
|
|
.ascii "pdl"
|
|
.byte 0x00
|
|
.global data_ov30_02188c68
|
|
data_ov30_02188c68: ; 0x02188c68
|
|
.ascii "dco"
|
|
.byte 0x00
|
|
.global data_ov30_02188c6c
|
|
data_ov30_02188c6c: ; 0x02188c6c
|
|
.ascii "can"
|
|
.byte 0x00
|
|
.global data_ov30_02188c70
|
|
data_ov30_02188c70: ; 0x02188c70
|
|
.ascii "hul"
|
|
.byte 0x00
|
|
.global data_ov30_02188c74
|
|
data_ov30_02188c74: ; 0x02188c74
|
|
.ascii "bow"
|
|
.byte 0x00
|
|
.global data_ov30_02188c78
|
|
data_ov30_02188c78: ; 0x02188c78
|
|
.ascii "anc"
|
|
.byte 0x00
|
|
.global data_ov30_02188c7c
|
|
data_ov30_02188c7c: ; 0x02188c7c
|
|
.byte 0x78, 0x8c, 0x18, 0x02
|
|
.global data_ov30_02188c80
|
|
data_ov30_02188c80: ; 0x02188c80
|
|
.byte 0x74, 0x8c, 0x18, 0x02
|
|
.global data_ov30_02188c84
|
|
data_ov30_02188c84: ; 0x02188c84
|
|
.byte 0x70, 0x8c, 0x18, 0x02
|
|
.global data_ov30_02188c88
|
|
data_ov30_02188c88: ; 0x02188c88
|
|
.byte 0x6c, 0x8c, 0x18, 0x02
|
|
.global data_ov30_02188c8c
|
|
data_ov30_02188c8c: ; 0x02188c8c
|
|
.byte 0x68, 0x8c, 0x18, 0x02
|
|
.global data_ov30_02188c90
|
|
data_ov30_02188c90: ; 0x02188c90
|
|
.byte 0x64, 0x8c, 0x18, 0x02
|
|
.global data_ov30_02188c94
|
|
data_ov30_02188c94: ; 0x02188c94
|
|
.byte 0x60, 0x8c, 0x18, 0x02
|
|
.global data_ov30_02188c98
|
|
data_ov30_02188c98: ; 0x02188c98
|
|
.byte 0x5c, 0x8c, 0x18, 0x02
|
|
.global data_ov30_02188c9c
|
|
data_ov30_02188c9c: ; 0x02188c9c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188ca0
|
|
data_ov30_02188ca0: ; 0x02188ca0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188ca4
|
|
data_ov30_02188ca4: ; 0x02188ca4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188ca8
|
|
data_ov30_02188ca8: ; 0x02188ca8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188cac
|
|
data_ov30_02188cac: ; 0x02188cac
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188cb0
|
|
data_ov30_02188cb0: ; 0x02188cb0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188cb4
|
|
data_ov30_02188cb4: ; 0x02188cb4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188cb8
|
|
data_ov30_02188cb8: ; 0x02188cb8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188cbc
|
|
data_ov30_02188cbc: ; 0x02188cbc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188cc0
|
|
data_ov30_02188cc0: ; 0x02188cc0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188cc4
|
|
data_ov30_02188cc4: ; 0x02188cc4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188cc8
|
|
data_ov30_02188cc8: ; 0x02188cc8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188ccc
|
|
data_ov30_02188ccc: ; 0x02188ccc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188cd0
|
|
data_ov30_02188cd0: ; 0x02188cd0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188cd4
|
|
data_ov30_02188cd4: ; 0x02188cd4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188cd8
|
|
data_ov30_02188cd8: ; 0x02188cd8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188cdc
|
|
data_ov30_02188cdc: ; 0x02188cdc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188ce0
|
|
data_ov30_02188ce0: ; 0x02188ce0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188ce4
|
|
data_ov30_02188ce4: ; 0x02188ce4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188ce8
|
|
data_ov30_02188ce8: ; 0x02188ce8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188cec
|
|
data_ov30_02188cec: ; 0x02188cec
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188cf0
|
|
data_ov30_02188cf0: ; 0x02188cf0
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188cf4
|
|
data_ov30_02188cf4: ; 0x02188cf4
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188cf8
|
|
data_ov30_02188cf8: ; 0x02188cf8
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188cfc
|
|
data_ov30_02188cfc: ; 0x02188cfc
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188d00
|
|
data_ov30_02188d00: ; 0x02188d00
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188d04
|
|
data_ov30_02188d04: ; 0x02188d04
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188d08
|
|
data_ov30_02188d08: ; 0x02188d08
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188d0c
|
|
data_ov30_02188d0c: ; 0x02188d0c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188d10
|
|
data_ov30_02188d10: ; 0x02188d10
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188d14
|
|
data_ov30_02188d14: ; 0x02188d14
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188d18
|
|
data_ov30_02188d18: ; 0x02188d18
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188d1c
|
|
data_ov30_02188d1c: ; 0x02188d1c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188d20
|
|
data_ov30_02188d20: ; 0x02188d20
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188d24
|
|
data_ov30_02188d24: ; 0x02188d24
|
|
.byte 0xd4, 0x3e, 0x18, 0x02
|
|
.global data_ov30_02188d28
|
|
data_ov30_02188d28: ; 0x02188d28
|
|
.byte 0xb8, 0x3e, 0x18, 0x02
|
|
.global data_ov30_02188d2c
|
|
data_ov30_02188d2c: ; 0x02188d2c
|
|
.byte 0x00, 0xaa, 0x0c, 0x02
|
|
.global data_ov30_02188d30
|
|
data_ov30_02188d30: ; 0x02188d30
|
|
.byte 0x3c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188d34
|
|
data_ov30_02188d34: ; 0x02188d34
|
|
.byte 0x2c, 0x11, 0x18, 0x02
|
|
.global data_ov30_02188d38
|
|
data_ov30_02188d38: ; 0x02188d38
|
|
.byte 0x28, 0xaa, 0x0c, 0x02
|
|
.global data_ov30_02188d3c
|
|
data_ov30_02188d3c: ; 0x02188d3c
|
|
.byte 0x30, 0xad, 0x0c, 0x02
|
|
.global data_ov30_02188d40
|
|
data_ov30_02188d40: ; 0x02188d40
|
|
.byte 0xf8, 0x1e, 0x18, 0x02
|
|
.global data_ov30_02188d44
|
|
data_ov30_02188d44: ; 0x02188d44
|
|
.byte 0x28, 0x23, 0x18, 0x02
|
|
.global data_ov30_02188d48
|
|
data_ov30_02188d48: ; 0x02188d48
|
|
.byte 0x44, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188d4c
|
|
data_ov30_02188d4c: ; 0x02188d4c
|
|
.byte 0x48, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188d50
|
|
data_ov30_02188d50: ; 0x02188d50
|
|
.byte 0xa8, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188d54
|
|
data_ov30_02188d54: ; 0x02188d54
|
|
.byte 0xb0, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188d58
|
|
data_ov30_02188d58: ; 0x02188d58
|
|
.byte 0x4c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188d5c
|
|
data_ov30_02188d5c: ; 0x02188d5c
|
|
.byte 0x7c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188d60
|
|
data_ov30_02188d60: ; 0x02188d60
|
|
.byte 0xe4, 0x27, 0x0c, 0x02
|
|
.global data_ov30_02188d64
|
|
data_ov30_02188d64: ; 0x02188d64
|
|
.byte 0x04, 0x30, 0x0c, 0x02
|
|
.global data_ov30_02188d68
|
|
data_ov30_02188d68: ; 0x02188d68
|
|
.byte 0x44, 0x27, 0x0c, 0x02
|
|
.global data_ov30_02188d6c
|
|
data_ov30_02188d6c: ; 0x02188d6c
|
|
.byte 0x64, 0x13, 0x18, 0x02
|
|
.global data_ov30_02188d70
|
|
data_ov30_02188d70: ; 0x02188d70
|
|
.byte 0x48, 0x18, 0x18, 0x02
|
|
.global data_ov30_02188d74
|
|
data_ov30_02188d74: ; 0x02188d74
|
|
.byte 0x0c, 0x31, 0x0c, 0x02
|
|
.global data_ov30_02188d78
|
|
data_ov30_02188d78: ; 0x02188d78
|
|
.byte 0x14, 0x31, 0x0c, 0x02
|
|
.global data_ov30_02188d7c
|
|
data_ov30_02188d7c: ; 0x02188d7c
|
|
.byte 0xa8, 0x18, 0x0c, 0x02
|
|
.global data_ov30_02188d80
|
|
data_ov30_02188d80: ; 0x02188d80
|
|
.byte 0xc4, 0x18, 0x0c, 0x02
|
|
.global data_ov30_02188d84
|
|
data_ov30_02188d84: ; 0x02188d84
|
|
.byte 0xfc, 0x18, 0x0c, 0x02
|
|
.global data_ov30_02188d88
|
|
data_ov30_02188d88: ; 0x02188d88
|
|
.byte 0x04, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188d8c
|
|
data_ov30_02188d8c: ; 0x02188d8c
|
|
.byte 0x10, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188d90
|
|
data_ov30_02188d90: ; 0x02188d90
|
|
.byte 0x14, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188d94
|
|
data_ov30_02188d94: ; 0x02188d94
|
|
.byte 0x1c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188d98
|
|
data_ov30_02188d98: ; 0x02188d98
|
|
.byte 0x24, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188d9c
|
|
data_ov30_02188d9c: ; 0x02188d9c
|
|
.byte 0x2c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188da0
|
|
data_ov30_02188da0: ; 0x02188da0
|
|
.byte 0x28, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188da4
|
|
data_ov30_02188da4: ; 0x02188da4
|
|
.byte 0x34, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188da8
|
|
data_ov30_02188da8: ; 0x02188da8
|
|
.byte 0x38, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188dac
|
|
data_ov30_02188dac: ; 0x02188dac
|
|
.byte 0x3c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188db0
|
|
data_ov30_02188db0: ; 0x02188db0
|
|
.byte 0x40, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188db4
|
|
data_ov30_02188db4: ; 0x02188db4
|
|
.byte 0x48, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188db8
|
|
data_ov30_02188db8: ; 0x02188db8
|
|
.byte 0x50, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188dbc
|
|
data_ov30_02188dbc: ; 0x02188dbc
|
|
.byte 0x54, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188dc0
|
|
data_ov30_02188dc0: ; 0x02188dc0
|
|
.byte 0x58, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188dc4
|
|
data_ov30_02188dc4: ; 0x02188dc4
|
|
.byte 0x6c, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_02188dc8
|
|
data_ov30_02188dc8: ; 0x02188dc8
|
|
.byte 0xb4, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_02188dcc
|
|
data_ov30_02188dcc: ; 0x02188dcc
|
|
.byte 0xf8, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_02188dd0
|
|
data_ov30_02188dd0: ; 0x02188dd0
|
|
.byte 0x7c, 0x23, 0x18, 0x02
|
|
.global data_ov30_02188dd4
|
|
data_ov30_02188dd4: ; 0x02188dd4
|
|
.byte 0xdc, 0x12, 0x18, 0x02
|
|
.global data_ov30_02188dd8
|
|
data_ov30_02188dd8: ; 0x02188dd8
|
|
.byte 0x94, 0x1e, 0x18, 0x02
|
|
.global data_ov30_02188ddc
|
|
data_ov30_02188ddc: ; 0x02188ddc
|
|
.byte 0xbd, 0x0d, 0x18, 0x02
|
|
.global data_ov30_02188de0
|
|
data_ov30_02188de0: ; 0x02188de0
|
|
.byte 0x10, 0x1d, 0x18, 0x02
|
|
.global data_ov30_02188de4
|
|
data_ov30_02188de4: ; 0x02188de4
|
|
.byte 0xa0, 0xae, 0x0c, 0x02
|
|
.global data_ov30_02188de8
|
|
data_ov30_02188de8: ; 0x02188de8
|
|
.byte 0x80, 0x2f, 0x18, 0x02
|
|
.global data_ov30_02188dec
|
|
data_ov30_02188dec: ; 0x02188dec
|
|
.byte 0xb8, 0x11, 0x18, 0x02
|
|
.global data_ov30_02188df0
|
|
data_ov30_02188df0: ; 0x02188df0
|
|
.byte 0xfc, 0xae, 0x0c, 0x02
|
|
.global data_ov30_02188df4
|
|
data_ov30_02188df4: ; 0x02188df4
|
|
.byte 0xb8, 0xaf, 0x0c, 0x02
|
|
.global data_ov30_02188df8
|
|
data_ov30_02188df8: ; 0x02188df8
|
|
.byte 0x5c, 0x12, 0x18, 0x02
|
|
.global data_ov30_02188dfc
|
|
data_ov30_02188dfc: ; 0x02188dfc
|
|
.byte 0xd0, 0xaf, 0x0c, 0x02
|
|
.global data_ov30_02188e00
|
|
data_ov30_02188e00: ; 0x02188e00
|
|
.byte 0x58, 0xb0, 0x0c, 0x02
|
|
.global data_ov30_02188e04
|
|
data_ov30_02188e04: ; 0x02188e04
|
|
.byte 0xa4, 0x12, 0x18, 0x02
|
|
.global data_ov30_02188e08
|
|
data_ov30_02188e08: ; 0x02188e08
|
|
.byte 0x80, 0xb0, 0x0c, 0x02
|
|
.global data_ov30_02188e0c
|
|
data_ov30_02188e0c: ; 0x02188e0c
|
|
.byte 0x0c, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_02188e10
|
|
data_ov30_02188e10: ; 0x02188e10
|
|
.byte 0x20, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_02188e14
|
|
data_ov30_02188e14: ; 0x02188e14
|
|
.byte 0x2c, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_02188e18
|
|
data_ov30_02188e18: ; 0x02188e18
|
|
.byte 0x3c, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_02188e1c
|
|
data_ov30_02188e1c: ; 0x02188e1c
|
|
.byte 0x50, 0xc1, 0x0c, 0x02
|
|
.global data_ov30_02188e20
|
|
data_ov30_02188e20: ; 0x02188e20
|
|
.byte 0x5c, 0xc1, 0x0c, 0x02
|
|
.global data_ov30_02188e24
|
|
data_ov30_02188e24: ; 0x02188e24
|
|
.byte 0x90, 0xc4, 0x0c, 0x02
|
|
.global data_ov30_02188e28
|
|
data_ov30_02188e28: ; 0x02188e28
|
|
.byte 0x24, 0xc5, 0x0c, 0x02
|
|
.global data_ov30_02188e2c
|
|
data_ov30_02188e2c: ; 0x02188e2c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188e30
|
|
data_ov30_02188e30: ; 0x02188e30
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188e34
|
|
data_ov30_02188e34: ; 0x02188e34
|
|
.byte 0x04, 0x3f, 0x18, 0x02
|
|
.global data_ov30_02188e38
|
|
data_ov30_02188e38: ; 0x02188e38
|
|
.byte 0xe8, 0x3e, 0x18, 0x02
|
|
.global data_ov30_02188e3c
|
|
data_ov30_02188e3c: ; 0x02188e3c
|
|
.byte 0x00, 0xaa, 0x0c, 0x02
|
|
.global data_ov30_02188e40
|
|
data_ov30_02188e40: ; 0x02188e40
|
|
.byte 0x3c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188e44
|
|
data_ov30_02188e44: ; 0x02188e44
|
|
.byte 0x2c, 0x11, 0x18, 0x02
|
|
.global data_ov30_02188e48
|
|
data_ov30_02188e48: ; 0x02188e48
|
|
.byte 0x28, 0xaa, 0x0c, 0x02
|
|
.global data_ov30_02188e4c
|
|
data_ov30_02188e4c: ; 0x02188e4c
|
|
.byte 0x30, 0xad, 0x0c, 0x02
|
|
.global data_ov30_02188e50
|
|
data_ov30_02188e50: ; 0x02188e50
|
|
.byte 0xf8, 0x1e, 0x18, 0x02
|
|
.global data_ov30_02188e54
|
|
data_ov30_02188e54: ; 0x02188e54
|
|
.byte 0x28, 0x23, 0x18, 0x02
|
|
.global data_ov30_02188e58
|
|
data_ov30_02188e58: ; 0x02188e58
|
|
.byte 0x44, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188e5c
|
|
data_ov30_02188e5c: ; 0x02188e5c
|
|
.byte 0x48, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188e60
|
|
data_ov30_02188e60: ; 0x02188e60
|
|
.byte 0xa8, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188e64
|
|
data_ov30_02188e64: ; 0x02188e64
|
|
.byte 0xb0, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188e68
|
|
data_ov30_02188e68: ; 0x02188e68
|
|
.byte 0x4c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188e6c
|
|
data_ov30_02188e6c: ; 0x02188e6c
|
|
.byte 0x7c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188e70
|
|
data_ov30_02188e70: ; 0x02188e70
|
|
.byte 0xe4, 0x27, 0x0c, 0x02
|
|
.global data_ov30_02188e74
|
|
data_ov30_02188e74: ; 0x02188e74
|
|
.byte 0x04, 0x30, 0x0c, 0x02
|
|
.global data_ov30_02188e78
|
|
data_ov30_02188e78: ; 0x02188e78
|
|
.byte 0x44, 0x27, 0x0c, 0x02
|
|
.global data_ov30_02188e7c
|
|
data_ov30_02188e7c: ; 0x02188e7c
|
|
.byte 0x64, 0x13, 0x18, 0x02
|
|
.global data_ov30_02188e80
|
|
data_ov30_02188e80: ; 0x02188e80
|
|
.byte 0x48, 0x18, 0x18, 0x02
|
|
.global data_ov30_02188e84
|
|
data_ov30_02188e84: ; 0x02188e84
|
|
.byte 0x0c, 0x31, 0x0c, 0x02
|
|
.global data_ov30_02188e88
|
|
data_ov30_02188e88: ; 0x02188e88
|
|
.byte 0x14, 0x31, 0x0c, 0x02
|
|
.global data_ov30_02188e8c
|
|
data_ov30_02188e8c: ; 0x02188e8c
|
|
.byte 0xa8, 0x18, 0x0c, 0x02
|
|
.global data_ov30_02188e90
|
|
data_ov30_02188e90: ; 0x02188e90
|
|
.byte 0xc4, 0x18, 0x0c, 0x02
|
|
.global data_ov30_02188e94
|
|
data_ov30_02188e94: ; 0x02188e94
|
|
.byte 0xfc, 0x18, 0x0c, 0x02
|
|
.global data_ov30_02188e98
|
|
data_ov30_02188e98: ; 0x02188e98
|
|
.byte 0x04, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188e9c
|
|
data_ov30_02188e9c: ; 0x02188e9c
|
|
.byte 0x10, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188ea0
|
|
data_ov30_02188ea0: ; 0x02188ea0
|
|
.byte 0x14, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188ea4
|
|
data_ov30_02188ea4: ; 0x02188ea4
|
|
.byte 0x1c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188ea8
|
|
data_ov30_02188ea8: ; 0x02188ea8
|
|
.byte 0x24, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188eac
|
|
data_ov30_02188eac: ; 0x02188eac
|
|
.byte 0x2c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188eb0
|
|
data_ov30_02188eb0: ; 0x02188eb0
|
|
.byte 0x28, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188eb4
|
|
data_ov30_02188eb4: ; 0x02188eb4
|
|
.byte 0x34, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188eb8
|
|
data_ov30_02188eb8: ; 0x02188eb8
|
|
.byte 0x38, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188ebc
|
|
data_ov30_02188ebc: ; 0x02188ebc
|
|
.byte 0x3c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188ec0
|
|
data_ov30_02188ec0: ; 0x02188ec0
|
|
.byte 0x40, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188ec4
|
|
data_ov30_02188ec4: ; 0x02188ec4
|
|
.byte 0x48, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188ec8
|
|
data_ov30_02188ec8: ; 0x02188ec8
|
|
.byte 0x50, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188ecc
|
|
data_ov30_02188ecc: ; 0x02188ecc
|
|
.byte 0x54, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188ed0
|
|
data_ov30_02188ed0: ; 0x02188ed0
|
|
.byte 0x58, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188ed4
|
|
data_ov30_02188ed4: ; 0x02188ed4
|
|
.byte 0x6c, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_02188ed8
|
|
data_ov30_02188ed8: ; 0x02188ed8
|
|
.byte 0xb4, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_02188edc
|
|
data_ov30_02188edc: ; 0x02188edc
|
|
.byte 0xf8, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_02188ee0
|
|
data_ov30_02188ee0: ; 0x02188ee0
|
|
.byte 0x7c, 0x23, 0x18, 0x02
|
|
.global data_ov30_02188ee4
|
|
data_ov30_02188ee4: ; 0x02188ee4
|
|
.byte 0xdc, 0x12, 0x18, 0x02
|
|
.global data_ov30_02188ee8
|
|
data_ov30_02188ee8: ; 0x02188ee8
|
|
.byte 0x94, 0x1e, 0x18, 0x02
|
|
.global data_ov30_02188eec
|
|
data_ov30_02188eec: ; 0x02188eec
|
|
.byte 0xbd, 0x0d, 0x18, 0x02
|
|
.global data_ov30_02188ef0
|
|
data_ov30_02188ef0: ; 0x02188ef0
|
|
.byte 0x10, 0x1d, 0x18, 0x02
|
|
.global data_ov30_02188ef4
|
|
data_ov30_02188ef4: ; 0x02188ef4
|
|
.byte 0xa0, 0xae, 0x0c, 0x02
|
|
.global data_ov30_02188ef8
|
|
data_ov30_02188ef8: ; 0x02188ef8
|
|
.byte 0x80, 0x2f, 0x18, 0x02
|
|
.global data_ov30_02188efc
|
|
data_ov30_02188efc: ; 0x02188efc
|
|
.byte 0xb8, 0x11, 0x18, 0x02
|
|
.global data_ov30_02188f00
|
|
data_ov30_02188f00: ; 0x02188f00
|
|
.byte 0xfc, 0xae, 0x0c, 0x02
|
|
.global data_ov30_02188f04
|
|
data_ov30_02188f04: ; 0x02188f04
|
|
.byte 0xb8, 0xaf, 0x0c, 0x02
|
|
.global data_ov30_02188f08
|
|
data_ov30_02188f08: ; 0x02188f08
|
|
.byte 0x5c, 0x12, 0x18, 0x02
|
|
.global data_ov30_02188f0c
|
|
data_ov30_02188f0c: ; 0x02188f0c
|
|
.byte 0xd0, 0xaf, 0x0c, 0x02
|
|
.global data_ov30_02188f10
|
|
data_ov30_02188f10: ; 0x02188f10
|
|
.byte 0x58, 0xb0, 0x0c, 0x02
|
|
.global data_ov30_02188f14
|
|
data_ov30_02188f14: ; 0x02188f14
|
|
.byte 0xa4, 0x12, 0x18, 0x02
|
|
.global data_ov30_02188f18
|
|
data_ov30_02188f18: ; 0x02188f18
|
|
.byte 0x80, 0xb0, 0x0c, 0x02
|
|
.global data_ov30_02188f1c
|
|
data_ov30_02188f1c: ; 0x02188f1c
|
|
.byte 0x0c, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_02188f20
|
|
data_ov30_02188f20: ; 0x02188f20
|
|
.byte 0x20, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_02188f24
|
|
data_ov30_02188f24: ; 0x02188f24
|
|
.byte 0x2c, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_02188f28
|
|
data_ov30_02188f28: ; 0x02188f28
|
|
.byte 0x3c, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_02188f2c
|
|
data_ov30_02188f2c: ; 0x02188f2c
|
|
.byte 0x50, 0xc1, 0x0c, 0x02
|
|
.global data_ov30_02188f30
|
|
data_ov30_02188f30: ; 0x02188f30
|
|
.byte 0x5c, 0xc1, 0x0c, 0x02
|
|
.global data_ov30_02188f34
|
|
data_ov30_02188f34: ; 0x02188f34
|
|
.byte 0x90, 0xc4, 0x0c, 0x02
|
|
.global data_ov30_02188f38
|
|
data_ov30_02188f38: ; 0x02188f38
|
|
.byte 0x24, 0xc5, 0x0c, 0x02
|
|
.global data_ov30_02188f3c
|
|
data_ov30_02188f3c: ; 0x02188f3c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188f40
|
|
data_ov30_02188f40: ; 0x02188f40
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02188f44
|
|
data_ov30_02188f44: ; 0x02188f44
|
|
.byte 0x34, 0x3f, 0x18, 0x02
|
|
.global data_ov30_02188f48
|
|
data_ov30_02188f48: ; 0x02188f48
|
|
.byte 0x18, 0x3f, 0x18, 0x02
|
|
.global data_ov30_02188f4c
|
|
data_ov30_02188f4c: ; 0x02188f4c
|
|
.byte 0x00, 0xaa, 0x0c, 0x02
|
|
.global data_ov30_02188f50
|
|
data_ov30_02188f50: ; 0x02188f50
|
|
.byte 0x3c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188f54
|
|
data_ov30_02188f54: ; 0x02188f54
|
|
.byte 0x2c, 0x11, 0x18, 0x02
|
|
.global data_ov30_02188f58
|
|
data_ov30_02188f58: ; 0x02188f58
|
|
.byte 0x28, 0xaa, 0x0c, 0x02
|
|
.global data_ov30_02188f5c
|
|
data_ov30_02188f5c: ; 0x02188f5c
|
|
.byte 0x30, 0xad, 0x0c, 0x02
|
|
.global data_ov30_02188f60
|
|
data_ov30_02188f60: ; 0x02188f60
|
|
.byte 0xf8, 0x1e, 0x18, 0x02
|
|
.global data_ov30_02188f64
|
|
data_ov30_02188f64: ; 0x02188f64
|
|
.byte 0x28, 0x23, 0x18, 0x02
|
|
.global data_ov30_02188f68
|
|
data_ov30_02188f68: ; 0x02188f68
|
|
.byte 0x44, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188f6c
|
|
data_ov30_02188f6c: ; 0x02188f6c
|
|
.byte 0x48, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188f70
|
|
data_ov30_02188f70: ; 0x02188f70
|
|
.byte 0xa8, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188f74
|
|
data_ov30_02188f74: ; 0x02188f74
|
|
.byte 0xb0, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188f78
|
|
data_ov30_02188f78: ; 0x02188f78
|
|
.byte 0x4c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188f7c
|
|
data_ov30_02188f7c: ; 0x02188f7c
|
|
.byte 0x7c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02188f80
|
|
data_ov30_02188f80: ; 0x02188f80
|
|
.byte 0xe4, 0x27, 0x0c, 0x02
|
|
.global data_ov30_02188f84
|
|
data_ov30_02188f84: ; 0x02188f84
|
|
.byte 0x04, 0x30, 0x0c, 0x02
|
|
.global data_ov30_02188f88
|
|
data_ov30_02188f88: ; 0x02188f88
|
|
.byte 0x44, 0x27, 0x0c, 0x02
|
|
.global data_ov30_02188f8c
|
|
data_ov30_02188f8c: ; 0x02188f8c
|
|
.byte 0x64, 0x13, 0x18, 0x02
|
|
.global data_ov30_02188f90
|
|
data_ov30_02188f90: ; 0x02188f90
|
|
.byte 0x48, 0x18, 0x18, 0x02
|
|
.global data_ov30_02188f94
|
|
data_ov30_02188f94: ; 0x02188f94
|
|
.byte 0x0c, 0x31, 0x0c, 0x02
|
|
.global data_ov30_02188f98
|
|
data_ov30_02188f98: ; 0x02188f98
|
|
.byte 0x14, 0x31, 0x0c, 0x02
|
|
.global data_ov30_02188f9c
|
|
data_ov30_02188f9c: ; 0x02188f9c
|
|
.byte 0xa8, 0x18, 0x0c, 0x02
|
|
.global data_ov30_02188fa0
|
|
data_ov30_02188fa0: ; 0x02188fa0
|
|
.byte 0xc4, 0x18, 0x0c, 0x02
|
|
.global data_ov30_02188fa4
|
|
data_ov30_02188fa4: ; 0x02188fa4
|
|
.byte 0xfc, 0x18, 0x0c, 0x02
|
|
.global data_ov30_02188fa8
|
|
data_ov30_02188fa8: ; 0x02188fa8
|
|
.byte 0x04, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188fac
|
|
data_ov30_02188fac: ; 0x02188fac
|
|
.byte 0x10, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188fb0
|
|
data_ov30_02188fb0: ; 0x02188fb0
|
|
.byte 0x14, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188fb4
|
|
data_ov30_02188fb4: ; 0x02188fb4
|
|
.byte 0x1c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188fb8
|
|
data_ov30_02188fb8: ; 0x02188fb8
|
|
.byte 0x24, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188fbc
|
|
data_ov30_02188fbc: ; 0x02188fbc
|
|
.byte 0x2c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188fc0
|
|
data_ov30_02188fc0: ; 0x02188fc0
|
|
.byte 0x28, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188fc4
|
|
data_ov30_02188fc4: ; 0x02188fc4
|
|
.byte 0x34, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188fc8
|
|
data_ov30_02188fc8: ; 0x02188fc8
|
|
.byte 0x38, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188fcc
|
|
data_ov30_02188fcc: ; 0x02188fcc
|
|
.byte 0x3c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188fd0
|
|
data_ov30_02188fd0: ; 0x02188fd0
|
|
.byte 0x40, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188fd4
|
|
data_ov30_02188fd4: ; 0x02188fd4
|
|
.byte 0x48, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188fd8
|
|
data_ov30_02188fd8: ; 0x02188fd8
|
|
.byte 0x50, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188fdc
|
|
data_ov30_02188fdc: ; 0x02188fdc
|
|
.byte 0x54, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188fe0
|
|
data_ov30_02188fe0: ; 0x02188fe0
|
|
.byte 0x58, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02188fe4
|
|
data_ov30_02188fe4: ; 0x02188fe4
|
|
.byte 0x6c, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_02188fe8
|
|
data_ov30_02188fe8: ; 0x02188fe8
|
|
.byte 0xb4, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_02188fec
|
|
data_ov30_02188fec: ; 0x02188fec
|
|
.byte 0xf8, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_02188ff0
|
|
data_ov30_02188ff0: ; 0x02188ff0
|
|
.byte 0x7c, 0x23, 0x18, 0x02
|
|
.global data_ov30_02188ff4
|
|
data_ov30_02188ff4: ; 0x02188ff4
|
|
.byte 0xdc, 0x12, 0x18, 0x02
|
|
.global data_ov30_02188ff8
|
|
data_ov30_02188ff8: ; 0x02188ff8
|
|
.byte 0x94, 0x1e, 0x18, 0x02
|
|
.global data_ov30_02188ffc
|
|
data_ov30_02188ffc: ; 0x02188ffc
|
|
.byte 0xbd, 0x0d, 0x18, 0x02
|
|
.global data_ov30_02189000
|
|
data_ov30_02189000: ; 0x02189000
|
|
.byte 0x10, 0x1d, 0x18, 0x02
|
|
.global data_ov30_02189004
|
|
data_ov30_02189004: ; 0x02189004
|
|
.byte 0xa0, 0xae, 0x0c, 0x02
|
|
.global data_ov30_02189008
|
|
data_ov30_02189008: ; 0x02189008
|
|
.byte 0x80, 0x2f, 0x18, 0x02
|
|
.global data_ov30_0218900c
|
|
data_ov30_0218900c: ; 0x0218900c
|
|
.byte 0xb8, 0x11, 0x18, 0x02
|
|
.global data_ov30_02189010
|
|
data_ov30_02189010: ; 0x02189010
|
|
.byte 0xfc, 0xae, 0x0c, 0x02
|
|
.global data_ov30_02189014
|
|
data_ov30_02189014: ; 0x02189014
|
|
.byte 0xb8, 0xaf, 0x0c, 0x02
|
|
.global data_ov30_02189018
|
|
data_ov30_02189018: ; 0x02189018
|
|
.byte 0x5c, 0x12, 0x18, 0x02
|
|
.global data_ov30_0218901c
|
|
data_ov30_0218901c: ; 0x0218901c
|
|
.byte 0xd0, 0xaf, 0x0c, 0x02
|
|
.global data_ov30_02189020
|
|
data_ov30_02189020: ; 0x02189020
|
|
.byte 0x58, 0xb0, 0x0c, 0x02
|
|
.global data_ov30_02189024
|
|
data_ov30_02189024: ; 0x02189024
|
|
.byte 0xa4, 0x12, 0x18, 0x02
|
|
.global data_ov30_02189028
|
|
data_ov30_02189028: ; 0x02189028
|
|
.byte 0x80, 0xb0, 0x0c, 0x02
|
|
.global data_ov30_0218902c
|
|
data_ov30_0218902c: ; 0x0218902c
|
|
.byte 0x0c, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_02189030
|
|
data_ov30_02189030: ; 0x02189030
|
|
.byte 0x20, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_02189034
|
|
data_ov30_02189034: ; 0x02189034
|
|
.byte 0x2c, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_02189038
|
|
data_ov30_02189038: ; 0x02189038
|
|
.byte 0x3c, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_0218903c
|
|
data_ov30_0218903c: ; 0x0218903c
|
|
.byte 0x50, 0xc1, 0x0c, 0x02
|
|
.global data_ov30_02189040
|
|
data_ov30_02189040: ; 0x02189040
|
|
.byte 0x5c, 0xc1, 0x0c, 0x02
|
|
.global data_ov30_02189044
|
|
data_ov30_02189044: ; 0x02189044
|
|
.byte 0x90, 0xc4, 0x0c, 0x02
|
|
.global data_ov30_02189048
|
|
data_ov30_02189048: ; 0x02189048
|
|
.byte 0x24, 0xc5, 0x0c, 0x02
|
|
.global data_ov30_0218904c
|
|
data_ov30_0218904c: ; 0x0218904c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189050
|
|
data_ov30_02189050: ; 0x02189050
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189054
|
|
data_ov30_02189054: ; 0x02189054
|
|
.byte 0x64, 0x3f, 0x18, 0x02
|
|
.global data_ov30_02189058
|
|
data_ov30_02189058: ; 0x02189058
|
|
.byte 0x48, 0x3f, 0x18, 0x02
|
|
.global data_ov30_0218905c
|
|
data_ov30_0218905c: ; 0x0218905c
|
|
.byte 0x00, 0xaa, 0x0c, 0x02
|
|
.global data_ov30_02189060
|
|
data_ov30_02189060: ; 0x02189060
|
|
.byte 0x3c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02189064
|
|
data_ov30_02189064: ; 0x02189064
|
|
.byte 0x2c, 0x11, 0x18, 0x02
|
|
.global data_ov30_02189068
|
|
data_ov30_02189068: ; 0x02189068
|
|
.byte 0x28, 0xaa, 0x0c, 0x02
|
|
.global data_ov30_0218906c
|
|
data_ov30_0218906c: ; 0x0218906c
|
|
.byte 0x30, 0xad, 0x0c, 0x02
|
|
.global data_ov30_02189070
|
|
data_ov30_02189070: ; 0x02189070
|
|
.byte 0xf8, 0x1e, 0x18, 0x02
|
|
.global data_ov30_02189074
|
|
data_ov30_02189074: ; 0x02189074
|
|
.byte 0x28, 0x23, 0x18, 0x02
|
|
.global data_ov30_02189078
|
|
data_ov30_02189078: ; 0x02189078
|
|
.byte 0x44, 0x17, 0x0c, 0x02
|
|
.global data_ov30_0218907c
|
|
data_ov30_0218907c: ; 0x0218907c
|
|
.byte 0x48, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02189080
|
|
data_ov30_02189080: ; 0x02189080
|
|
.byte 0xa8, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02189084
|
|
data_ov30_02189084: ; 0x02189084
|
|
.byte 0xb0, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02189088
|
|
data_ov30_02189088: ; 0x02189088
|
|
.byte 0x4c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_0218908c
|
|
data_ov30_0218908c: ; 0x0218908c
|
|
.byte 0x7c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02189090
|
|
data_ov30_02189090: ; 0x02189090
|
|
.byte 0xe4, 0x27, 0x0c, 0x02
|
|
.global data_ov30_02189094
|
|
data_ov30_02189094: ; 0x02189094
|
|
.byte 0x04, 0x30, 0x0c, 0x02
|
|
.global data_ov30_02189098
|
|
data_ov30_02189098: ; 0x02189098
|
|
.byte 0x44, 0x27, 0x0c, 0x02
|
|
.global data_ov30_0218909c
|
|
data_ov30_0218909c: ; 0x0218909c
|
|
.byte 0x64, 0x13, 0x18, 0x02
|
|
.global data_ov30_021890a0
|
|
data_ov30_021890a0: ; 0x021890a0
|
|
.byte 0x48, 0x18, 0x18, 0x02
|
|
.global data_ov30_021890a4
|
|
data_ov30_021890a4: ; 0x021890a4
|
|
.byte 0x0c, 0x31, 0x0c, 0x02
|
|
.global data_ov30_021890a8
|
|
data_ov30_021890a8: ; 0x021890a8
|
|
.byte 0x14, 0x31, 0x0c, 0x02
|
|
.global data_ov30_021890ac
|
|
data_ov30_021890ac: ; 0x021890ac
|
|
.byte 0xa8, 0x18, 0x0c, 0x02
|
|
.global data_ov30_021890b0
|
|
data_ov30_021890b0: ; 0x021890b0
|
|
.byte 0xc4, 0x18, 0x0c, 0x02
|
|
.global data_ov30_021890b4
|
|
data_ov30_021890b4: ; 0x021890b4
|
|
.byte 0xfc, 0x18, 0x0c, 0x02
|
|
.global data_ov30_021890b8
|
|
data_ov30_021890b8: ; 0x021890b8
|
|
.byte 0x04, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021890bc
|
|
data_ov30_021890bc: ; 0x021890bc
|
|
.byte 0x10, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021890c0
|
|
data_ov30_021890c0: ; 0x021890c0
|
|
.byte 0x14, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021890c4
|
|
data_ov30_021890c4: ; 0x021890c4
|
|
.byte 0x1c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021890c8
|
|
data_ov30_021890c8: ; 0x021890c8
|
|
.byte 0x24, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021890cc
|
|
data_ov30_021890cc: ; 0x021890cc
|
|
.byte 0x2c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021890d0
|
|
data_ov30_021890d0: ; 0x021890d0
|
|
.byte 0x28, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021890d4
|
|
data_ov30_021890d4: ; 0x021890d4
|
|
.byte 0x34, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021890d8
|
|
data_ov30_021890d8: ; 0x021890d8
|
|
.byte 0x38, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021890dc
|
|
data_ov30_021890dc: ; 0x021890dc
|
|
.byte 0x3c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021890e0
|
|
data_ov30_021890e0: ; 0x021890e0
|
|
.byte 0x40, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021890e4
|
|
data_ov30_021890e4: ; 0x021890e4
|
|
.byte 0x48, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021890e8
|
|
data_ov30_021890e8: ; 0x021890e8
|
|
.byte 0x50, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021890ec
|
|
data_ov30_021890ec: ; 0x021890ec
|
|
.byte 0x54, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021890f0
|
|
data_ov30_021890f0: ; 0x021890f0
|
|
.byte 0x58, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021890f4
|
|
data_ov30_021890f4: ; 0x021890f4
|
|
.byte 0x6c, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_021890f8
|
|
data_ov30_021890f8: ; 0x021890f8
|
|
.byte 0xb4, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_021890fc
|
|
data_ov30_021890fc: ; 0x021890fc
|
|
.byte 0xf8, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_02189100
|
|
data_ov30_02189100: ; 0x02189100
|
|
.byte 0x7c, 0x23, 0x18, 0x02
|
|
.global data_ov30_02189104
|
|
data_ov30_02189104: ; 0x02189104
|
|
.byte 0xdc, 0x12, 0x18, 0x02
|
|
.global data_ov30_02189108
|
|
data_ov30_02189108: ; 0x02189108
|
|
.byte 0x94, 0x1e, 0x18, 0x02
|
|
.global data_ov30_0218910c
|
|
data_ov30_0218910c: ; 0x0218910c
|
|
.byte 0xbd, 0x0d, 0x18, 0x02
|
|
.global data_ov30_02189110
|
|
data_ov30_02189110: ; 0x02189110
|
|
.byte 0x10, 0x1d, 0x18, 0x02
|
|
.global data_ov30_02189114
|
|
data_ov30_02189114: ; 0x02189114
|
|
.byte 0xa0, 0xae, 0x0c, 0x02
|
|
.global data_ov30_02189118
|
|
data_ov30_02189118: ; 0x02189118
|
|
.byte 0x80, 0x2f, 0x18, 0x02
|
|
.global data_ov30_0218911c
|
|
data_ov30_0218911c: ; 0x0218911c
|
|
.byte 0xb8, 0x11, 0x18, 0x02
|
|
.global data_ov30_02189120
|
|
data_ov30_02189120: ; 0x02189120
|
|
.byte 0xfc, 0xae, 0x0c, 0x02
|
|
.global data_ov30_02189124
|
|
data_ov30_02189124: ; 0x02189124
|
|
.byte 0xb8, 0xaf, 0x0c, 0x02
|
|
.global data_ov30_02189128
|
|
data_ov30_02189128: ; 0x02189128
|
|
.byte 0x5c, 0x12, 0x18, 0x02
|
|
.global data_ov30_0218912c
|
|
data_ov30_0218912c: ; 0x0218912c
|
|
.byte 0xd0, 0xaf, 0x0c, 0x02
|
|
.global data_ov30_02189130
|
|
data_ov30_02189130: ; 0x02189130
|
|
.byte 0x58, 0xb0, 0x0c, 0x02
|
|
.global data_ov30_02189134
|
|
data_ov30_02189134: ; 0x02189134
|
|
.byte 0xa4, 0x12, 0x18, 0x02
|
|
.global data_ov30_02189138
|
|
data_ov30_02189138: ; 0x02189138
|
|
.byte 0x80, 0xb0, 0x0c, 0x02
|
|
.global data_ov30_0218913c
|
|
data_ov30_0218913c: ; 0x0218913c
|
|
.byte 0x0c, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_02189140
|
|
data_ov30_02189140: ; 0x02189140
|
|
.byte 0x20, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_02189144
|
|
data_ov30_02189144: ; 0x02189144
|
|
.byte 0x2c, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_02189148
|
|
data_ov30_02189148: ; 0x02189148
|
|
.byte 0x3c, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_0218914c
|
|
data_ov30_0218914c: ; 0x0218914c
|
|
.byte 0x50, 0xc1, 0x0c, 0x02
|
|
.global data_ov30_02189150
|
|
data_ov30_02189150: ; 0x02189150
|
|
.byte 0x5c, 0xc1, 0x0c, 0x02
|
|
.global data_ov30_02189154
|
|
data_ov30_02189154: ; 0x02189154
|
|
.byte 0x90, 0xc4, 0x0c, 0x02
|
|
.global data_ov30_02189158
|
|
data_ov30_02189158: ; 0x02189158
|
|
.byte 0x24, 0xc5, 0x0c, 0x02
|
|
.global data_ov30_0218915c
|
|
data_ov30_0218915c: ; 0x0218915c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189160
|
|
data_ov30_02189160: ; 0x02189160
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189164
|
|
data_ov30_02189164: ; 0x02189164
|
|
.byte 0x21, 0x0c, 0x18, 0x02
|
|
.global data_ov30_02189168
|
|
data_ov30_02189168: ; 0x02189168
|
|
.byte 0xa9, 0x0c, 0x18, 0x02
|
|
.global data_ov30_0218916c
|
|
data_ov30_0218916c: ; 0x0218916c
|
|
.byte 0x00, 0xaa, 0x0c, 0x02
|
|
.global data_ov30_02189170
|
|
data_ov30_02189170: ; 0x02189170
|
|
.byte 0x3c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02189174
|
|
data_ov30_02189174: ; 0x02189174
|
|
.byte 0x2c, 0x11, 0x18, 0x02
|
|
.global data_ov30_02189178
|
|
data_ov30_02189178: ; 0x02189178
|
|
.byte 0x28, 0xaa, 0x0c, 0x02
|
|
.global data_ov30_0218917c
|
|
data_ov30_0218917c: ; 0x0218917c
|
|
.byte 0x30, 0xad, 0x0c, 0x02
|
|
.global data_ov30_02189180
|
|
data_ov30_02189180: ; 0x02189180
|
|
.byte 0xf8, 0x1e, 0x18, 0x02
|
|
.global data_ov30_02189184
|
|
data_ov30_02189184: ; 0x02189184
|
|
.byte 0x28, 0x23, 0x18, 0x02
|
|
.global data_ov30_02189188
|
|
data_ov30_02189188: ; 0x02189188
|
|
.byte 0x44, 0x17, 0x0c, 0x02
|
|
.global data_ov30_0218918c
|
|
data_ov30_0218918c: ; 0x0218918c
|
|
.byte 0x48, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02189190
|
|
data_ov30_02189190: ; 0x02189190
|
|
.byte 0xa8, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02189194
|
|
data_ov30_02189194: ; 0x02189194
|
|
.byte 0xb0, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02189198
|
|
data_ov30_02189198: ; 0x02189198
|
|
.byte 0x4c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_0218919c
|
|
data_ov30_0218919c: ; 0x0218919c
|
|
.byte 0x7c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_021891a0
|
|
data_ov30_021891a0: ; 0x021891a0
|
|
.byte 0xe4, 0x27, 0x0c, 0x02
|
|
.global data_ov30_021891a4
|
|
data_ov30_021891a4: ; 0x021891a4
|
|
.byte 0x04, 0x30, 0x0c, 0x02
|
|
.global data_ov30_021891a8
|
|
data_ov30_021891a8: ; 0x021891a8
|
|
.byte 0x44, 0x27, 0x0c, 0x02
|
|
.global data_ov30_021891ac
|
|
data_ov30_021891ac: ; 0x021891ac
|
|
.byte 0x64, 0x13, 0x18, 0x02
|
|
.global data_ov30_021891b0
|
|
data_ov30_021891b0: ; 0x021891b0
|
|
.byte 0x48, 0x18, 0x18, 0x02
|
|
.global data_ov30_021891b4
|
|
data_ov30_021891b4: ; 0x021891b4
|
|
.byte 0x0c, 0x31, 0x0c, 0x02
|
|
.global data_ov30_021891b8
|
|
data_ov30_021891b8: ; 0x021891b8
|
|
.byte 0x14, 0x31, 0x0c, 0x02
|
|
.global data_ov30_021891bc
|
|
data_ov30_021891bc: ; 0x021891bc
|
|
.byte 0xa8, 0x18, 0x0c, 0x02
|
|
.global data_ov30_021891c0
|
|
data_ov30_021891c0: ; 0x021891c0
|
|
.byte 0xc4, 0x18, 0x0c, 0x02
|
|
.global data_ov30_021891c4
|
|
data_ov30_021891c4: ; 0x021891c4
|
|
.byte 0xfc, 0x18, 0x0c, 0x02
|
|
.global data_ov30_021891c8
|
|
data_ov30_021891c8: ; 0x021891c8
|
|
.byte 0x04, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021891cc
|
|
data_ov30_021891cc: ; 0x021891cc
|
|
.byte 0x10, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021891d0
|
|
data_ov30_021891d0: ; 0x021891d0
|
|
.byte 0x14, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021891d4
|
|
data_ov30_021891d4: ; 0x021891d4
|
|
.byte 0x1c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021891d8
|
|
data_ov30_021891d8: ; 0x021891d8
|
|
.byte 0x24, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021891dc
|
|
data_ov30_021891dc: ; 0x021891dc
|
|
.byte 0x2c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021891e0
|
|
data_ov30_021891e0: ; 0x021891e0
|
|
.byte 0x28, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021891e4
|
|
data_ov30_021891e4: ; 0x021891e4
|
|
.byte 0x34, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021891e8
|
|
data_ov30_021891e8: ; 0x021891e8
|
|
.byte 0x38, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021891ec
|
|
data_ov30_021891ec: ; 0x021891ec
|
|
.byte 0x3c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021891f0
|
|
data_ov30_021891f0: ; 0x021891f0
|
|
.byte 0x40, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021891f4
|
|
data_ov30_021891f4: ; 0x021891f4
|
|
.byte 0x48, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021891f8
|
|
data_ov30_021891f8: ; 0x021891f8
|
|
.byte 0x50, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021891fc
|
|
data_ov30_021891fc: ; 0x021891fc
|
|
.byte 0x54, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02189200
|
|
data_ov30_02189200: ; 0x02189200
|
|
.byte 0x58, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02189204
|
|
data_ov30_02189204: ; 0x02189204
|
|
.byte 0x6c, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_02189208
|
|
data_ov30_02189208: ; 0x02189208
|
|
.byte 0xb4, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_0218920c
|
|
data_ov30_0218920c: ; 0x0218920c
|
|
.byte 0xf8, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_02189210
|
|
data_ov30_02189210: ; 0x02189210
|
|
.byte 0x7c, 0x23, 0x18, 0x02
|
|
.global data_ov30_02189214
|
|
data_ov30_02189214: ; 0x02189214
|
|
.byte 0xdc, 0x12, 0x18, 0x02
|
|
.global data_ov30_02189218
|
|
data_ov30_02189218: ; 0x02189218
|
|
.byte 0x94, 0x1e, 0x18, 0x02
|
|
.global data_ov30_0218921c
|
|
data_ov30_0218921c: ; 0x0218921c
|
|
.byte 0xbd, 0x0d, 0x18, 0x02
|
|
.global data_ov30_02189220
|
|
data_ov30_02189220: ; 0x02189220
|
|
.byte 0x10, 0x1d, 0x18, 0x02
|
|
.global data_ov30_02189224
|
|
data_ov30_02189224: ; 0x02189224
|
|
.byte 0xa0, 0xae, 0x0c, 0x02
|
|
.global data_ov30_02189228
|
|
data_ov30_02189228: ; 0x02189228
|
|
.byte 0x80, 0x2f, 0x18, 0x02
|
|
.global data_ov30_0218922c
|
|
data_ov30_0218922c: ; 0x0218922c
|
|
.byte 0xb8, 0x11, 0x18, 0x02
|
|
.global data_ov30_02189230
|
|
data_ov30_02189230: ; 0x02189230
|
|
.byte 0xfc, 0xae, 0x0c, 0x02
|
|
.global data_ov30_02189234
|
|
data_ov30_02189234: ; 0x02189234
|
|
.byte 0xb8, 0xaf, 0x0c, 0x02
|
|
.global data_ov30_02189238
|
|
data_ov30_02189238: ; 0x02189238
|
|
.byte 0x5c, 0x12, 0x18, 0x02
|
|
.global data_ov30_0218923c
|
|
data_ov30_0218923c: ; 0x0218923c
|
|
.byte 0xd0, 0xaf, 0x0c, 0x02
|
|
.global data_ov30_02189240
|
|
data_ov30_02189240: ; 0x02189240
|
|
.byte 0x58, 0xb0, 0x0c, 0x02
|
|
.global data_ov30_02189244
|
|
data_ov30_02189244: ; 0x02189244
|
|
.byte 0xa4, 0x12, 0x18, 0x02
|
|
.global data_ov30_02189248
|
|
data_ov30_02189248: ; 0x02189248
|
|
.byte 0x80, 0xb0, 0x0c, 0x02
|
|
.global data_ov30_0218924c
|
|
data_ov30_0218924c: ; 0x0218924c
|
|
.byte 0x0c, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_02189250
|
|
data_ov30_02189250: ; 0x02189250
|
|
.byte 0x20, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_02189254
|
|
data_ov30_02189254: ; 0x02189254
|
|
.byte 0x2c, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_02189258
|
|
data_ov30_02189258: ; 0x02189258
|
|
.byte 0x3c, 0xb1, 0x0c, 0x02
|
|
.global data_ov30_0218925c
|
|
data_ov30_0218925c: ; 0x0218925c
|
|
.byte 0x50, 0xc1, 0x0c, 0x02
|
|
.global data_ov30_02189260
|
|
data_ov30_02189260: ; 0x02189260
|
|
.byte 0x5c, 0xc1, 0x0c, 0x02
|
|
.global data_ov30_02189264
|
|
data_ov30_02189264: ; 0x02189264
|
|
.byte 0x90, 0xc4, 0x0c, 0x02
|
|
.global data_ov30_02189268
|
|
data_ov30_02189268: ; 0x02189268
|
|
.byte 0x24, 0xc5, 0x0c, 0x02
|
|
.global data_ov30_0218926c
|
|
data_ov30_0218926c: ; 0x0218926c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189270
|
|
data_ov30_02189270: ; 0x02189270
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189274
|
|
data_ov30_02189274: ; 0x02189274
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189278
|
|
data_ov30_02189278: ; 0x02189278
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218927c
|
|
data_ov30_0218927c: ; 0x0218927c
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02189280
|
|
data_ov30_02189280: ; 0x02189280
|
|
.ascii "Dead"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189288
|
|
data_ov30_02189288: ; 0x02189288
|
|
.ascii "PlayerDownDemo"
|
|
.byte 0x00, 0x00
|
|
.global data_ov30_02189298
|
|
data_ov30_02189298: ; 0x02189298
|
|
.ascii "GKGoHome"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021892a4
|
|
data_ov30_021892a4: ; 0x021892a4
|
|
.ascii "WarpGoHome"
|
|
.byte 0x00, 0x00
|
|
.global data_ov30_021892b0
|
|
data_ov30_021892b0: ; 0x021892b0
|
|
.ascii "WarpGoPlayerDemo"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021892c4
|
|
data_ov30_021892c4: ; 0x021892c4
|
|
.ascii "WarpGoPlayer"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_021892d4
|
|
data_ov30_021892d4: ; 0x021892d4
|
|
.ascii "WaitRevive"
|
|
.byte 0x00, 0x00
|
|
.global data_ov30_021892e0
|
|
data_ov30_021892e0: ; 0x021892e0
|
|
.ascii "GuardStop"
|
|
.byte 0x00, 0x00, 0x00
|
|
.global data_ov30_021892ec
|
|
data_ov30_021892ec: ; 0x021892ec
|
|
.ascii "Guard"
|
|
.byte 0x00, 0x00, 0x00
|
|
.global data_ov30_021892f4
|
|
data_ov30_021892f4: ; 0x021892f4
|
|
.ascii "CautionAStarWalk"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189308
|
|
data_ov30_02189308: ; 0x02189308
|
|
.ascii "TriforceCollect"
|
|
.byte 0x00
|
|
.global data_ov30_02189318
|
|
data_ov30_02189318: ; 0x02189318
|
|
.ascii "Battle"
|
|
.byte 0x00, 0x00
|
|
.global data_ov30_02189320
|
|
data_ov30_02189320: ; 0x02189320
|
|
.ascii "AlarmPatrol"
|
|
.byte 0x00
|
|
.global data_ov30_0218932c
|
|
data_ov30_0218932c: ; 0x0218932c
|
|
.ascii "NormalPatrol"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218933c
|
|
data_ov30_0218933c: ; 0x0218933c
|
|
.ascii "WaitGK"
|
|
.byte 0x00, 0x00
|
|
.global data_ov30_02189344
|
|
data_ov30_02189344: ; 0x02189344
|
|
.ascii "FirstWait"
|
|
.byte 0x00, 0x00, 0x00
|
|
.global data_ov30_02189350
|
|
data_ov30_02189350: ; 0x02189350
|
|
.ascii "GhostDemo"
|
|
.byte 0x00, 0x00, 0x00
|
|
.global data_ov30_0218935c
|
|
data_ov30_0218935c: ; 0x0218935c
|
|
.ascii "AppearDemo"
|
|
.byte 0x00, 0x00
|
|
.global data_ov30_02189368
|
|
data_ov30_02189368: ; 0x02189368
|
|
.ascii "Hide"
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189370
|
|
data_ov30_02189370: ; 0x02189370
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189374
|
|
data_ov30_02189374: ; 0x02189374
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189378
|
|
data_ov30_02189378: ; 0x02189378
|
|
.byte 0x88, 0x52, 0x18, 0x02
|
|
.global data_ov30_0218937c
|
|
data_ov30_0218937c: ; 0x0218937c
|
|
.byte 0x6c, 0x52, 0x18, 0x02
|
|
.global data_ov30_02189380
|
|
data_ov30_02189380: ; 0x02189380
|
|
.byte 0xf5, 0x47, 0x18, 0x02
|
|
.global data_ov30_02189384
|
|
data_ov30_02189384: ; 0x02189384
|
|
.byte 0x3c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02189388
|
|
data_ov30_02189388: ; 0x02189388
|
|
.byte 0x40, 0x17, 0x0c, 0x02
|
|
.global data_ov30_0218938c
|
|
data_ov30_0218938c: ; 0x0218938c
|
|
.byte 0x68, 0x48, 0x18, 0x02
|
|
.global data_ov30_02189390
|
|
data_ov30_02189390: ; 0x02189390
|
|
.byte 0xbc, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02189394
|
|
data_ov30_02189394: ; 0x02189394
|
|
.byte 0xd4, 0x17, 0x0c, 0x02
|
|
.global data_ov30_02189398
|
|
data_ov30_02189398: ; 0x02189398
|
|
.byte 0x94, 0x18, 0x0c, 0x02
|
|
.global data_ov30_0218939c
|
|
data_ov30_0218939c: ; 0x0218939c
|
|
.byte 0x44, 0x17, 0x0c, 0x02
|
|
.global data_ov30_021893a0
|
|
data_ov30_021893a0: ; 0x021893a0
|
|
.byte 0x48, 0x17, 0x0c, 0x02
|
|
.global data_ov30_021893a4
|
|
data_ov30_021893a4: ; 0x021893a4
|
|
.byte 0xa8, 0x17, 0x0c, 0x02
|
|
.global data_ov30_021893a8
|
|
data_ov30_021893a8: ; 0x021893a8
|
|
.byte 0xb0, 0x17, 0x0c, 0x02
|
|
.global data_ov30_021893ac
|
|
data_ov30_021893ac: ; 0x021893ac
|
|
.byte 0x4c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_021893b0
|
|
data_ov30_021893b0: ; 0x021893b0
|
|
.byte 0x7c, 0x17, 0x0c, 0x02
|
|
.global data_ov30_021893b4
|
|
data_ov30_021893b4: ; 0x021893b4
|
|
.byte 0xe4, 0x27, 0x0c, 0x02
|
|
.global data_ov30_021893b8
|
|
data_ov30_021893b8: ; 0x021893b8
|
|
.byte 0x04, 0x30, 0x0c, 0x02
|
|
.global data_ov30_021893bc
|
|
data_ov30_021893bc: ; 0x021893bc
|
|
.byte 0x44, 0x27, 0x0c, 0x02
|
|
.global data_ov30_021893c0
|
|
data_ov30_021893c0: ; 0x021893c0
|
|
.byte 0x48, 0x1c, 0x0c, 0x02
|
|
.global data_ov30_021893c4
|
|
data_ov30_021893c4: ; 0x021893c4
|
|
.byte 0x50, 0x1c, 0x0c, 0x02
|
|
.global data_ov30_021893c8
|
|
data_ov30_021893c8: ; 0x021893c8
|
|
.byte 0x0c, 0x31, 0x0c, 0x02
|
|
.global data_ov30_021893cc
|
|
data_ov30_021893cc: ; 0x021893cc
|
|
.byte 0x14, 0x31, 0x0c, 0x02
|
|
.global data_ov30_021893d0
|
|
data_ov30_021893d0: ; 0x021893d0
|
|
.byte 0xa8, 0x18, 0x0c, 0x02
|
|
.global data_ov30_021893d4
|
|
data_ov30_021893d4: ; 0x021893d4
|
|
.byte 0xc4, 0x18, 0x0c, 0x02
|
|
.global data_ov30_021893d8
|
|
data_ov30_021893d8: ; 0x021893d8
|
|
.byte 0xfc, 0x18, 0x0c, 0x02
|
|
.global data_ov30_021893dc
|
|
data_ov30_021893dc: ; 0x021893dc
|
|
.byte 0x04, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021893e0
|
|
data_ov30_021893e0: ; 0x021893e0
|
|
.byte 0x10, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021893e4
|
|
data_ov30_021893e4: ; 0x021893e4
|
|
.byte 0x14, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021893e8
|
|
data_ov30_021893e8: ; 0x021893e8
|
|
.byte 0x1c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021893ec
|
|
data_ov30_021893ec: ; 0x021893ec
|
|
.byte 0x24, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021893f0
|
|
data_ov30_021893f0: ; 0x021893f0
|
|
.byte 0x2c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021893f4
|
|
data_ov30_021893f4: ; 0x021893f4
|
|
.byte 0x28, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021893f8
|
|
data_ov30_021893f8: ; 0x021893f8
|
|
.byte 0x34, 0x19, 0x0c, 0x02
|
|
.global data_ov30_021893fc
|
|
data_ov30_021893fc: ; 0x021893fc
|
|
.byte 0x38, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02189400
|
|
data_ov30_02189400: ; 0x02189400
|
|
.byte 0x3c, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02189404
|
|
data_ov30_02189404: ; 0x02189404
|
|
.byte 0x40, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02189408
|
|
data_ov30_02189408: ; 0x02189408
|
|
.byte 0x48, 0x19, 0x0c, 0x02
|
|
.global data_ov30_0218940c
|
|
data_ov30_0218940c: ; 0x0218940c
|
|
.byte 0x50, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02189410
|
|
data_ov30_02189410: ; 0x02189410
|
|
.byte 0x54, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02189414
|
|
data_ov30_02189414: ; 0x02189414
|
|
.byte 0x58, 0x19, 0x0c, 0x02
|
|
.global data_ov30_02189418
|
|
data_ov30_02189418: ; 0x02189418
|
|
.byte 0x6c, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_0218941c
|
|
data_ov30_0218941c: ; 0x0218941c
|
|
.byte 0xb4, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_02189420
|
|
data_ov30_02189420: ; 0x02189420
|
|
.byte 0xf8, 0x1b, 0x0c, 0x02
|
|
.global data_ov30_02189424
|
|
data_ov30_02189424: ; 0x02189424
|
|
.byte 0xfc, 0x31, 0x0c, 0x02
|
|
.global data_ov30_02189428
|
|
data_ov30_02189428: ; 0x02189428
|
|
.byte 0x2c, 0x32, 0x0c, 0x02
|
|
.global data_ov30_0218942c
|
|
data_ov30_0218942c: ; 0x0218942c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189430
|
|
data_ov30_02189430: ; 0x02189430
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189434
|
|
data_ov30_02189434: ; 0x02189434
|
|
.byte 0xf0, 0x56, 0x18, 0x02
|
|
.global data_ov30_02189438
|
|
data_ov30_02189438: ; 0x02189438
|
|
.byte 0x94, 0x57, 0x18, 0x02
|
|
.global data_ov30_0218943c
|
|
data_ov30_0218943c: ; 0x0218943c
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02189440
|
|
data_ov30_02189440: ; 0x02189440
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189444
|
|
data_ov30_02189444: ; 0x02189444
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189448
|
|
data_ov30_02189448: ; 0x02189448
|
|
.byte 0x0c, 0x65, 0x18, 0x02
|
|
.global data_ov30_0218944c
|
|
data_ov30_0218944c: ; 0x0218944c
|
|
.byte 0x84, 0x65, 0x18, 0x02
|
|
.global data_ov30_02189450
|
|
data_ov30_02189450: ; 0x02189450
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02189454
|
|
data_ov30_02189454: ; 0x02189454
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189458
|
|
data_ov30_02189458: ; 0x02189458
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218945c
|
|
data_ov30_0218945c: ; 0x0218945c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189460
|
|
data_ov30_02189460: ; 0x02189460
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189464
|
|
data_ov30_02189464: ; 0x02189464
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189468
|
|
data_ov30_02189468: ; 0x02189468
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218946c
|
|
data_ov30_0218946c: ; 0x0218946c
|
|
.byte 0x34, 0x6b, 0x18, 0x02
|
|
.global data_ov30_02189470
|
|
data_ov30_02189470: ; 0x02189470
|
|
.byte 0x50, 0x6b, 0x18, 0x02
|
|
.global data_ov30_02189474
|
|
data_ov30_02189474: ; 0x02189474
|
|
.byte 0x44, 0x05, 0x18, 0x02
|
|
.global data_ov30_02189478
|
|
data_ov30_02189478: ; 0x02189478
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218947c
|
|
data_ov30_0218947c: ; 0x0218947c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189480
|
|
data_ov30_02189480: ; 0x02189480
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189484
|
|
data_ov30_02189484: ; 0x02189484
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189488
|
|
data_ov30_02189488: ; 0x02189488
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218948c
|
|
data_ov30_0218948c: ; 0x0218948c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189490
|
|
data_ov30_02189490: ; 0x02189490
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189494
|
|
data_ov30_02189494: ; 0x02189494
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_02189498
|
|
data_ov30_02189498: ; 0x02189498
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global data_ov30_0218949c
|
|
data_ov30_0218949c: ; 0x0218949c
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
; 0x021894a0
|
|
|
|
.bss
|
|
.global data_ov30_021894a0
|
|
data_ov30_021894a0:
|
|
.space 0x4
|
|
.global data_ov30_021894a4
|
|
data_ov30_021894a4:
|
|
.space 0x4
|
|
.global data_ov30_021894a8
|
|
data_ov30_021894a8:
|
|
.space 0x4
|
|
.global data_ov30_021894ac
|
|
data_ov30_021894ac:
|
|
.space 0x4
|
|
.global data_ov30_021894b0
|
|
data_ov30_021894b0:
|
|
.space 0x4
|
|
.global data_ov30_021894b4
|
|
data_ov30_021894b4:
|
|
.space 0x4
|
|
.global data_ov30_021894b8
|
|
data_ov30_021894b8:
|
|
.space 0x4
|
|
.global data_ov30_021894bc
|
|
data_ov30_021894bc:
|
|
.space 0x4
|
|
.global data_ov30_021894c0
|
|
data_ov30_021894c0:
|
|
.space 0x4
|
|
.global data_ov30_021894c4
|
|
data_ov30_021894c4:
|
|
.space 0x4
|
|
.global data_ov30_021894c8
|
|
data_ov30_021894c8:
|
|
.space 0x4
|
|
.global data_ov30_021894cc
|
|
data_ov30_021894cc:
|
|
.space 0x4
|
|
.global data_ov30_021894d0
|
|
data_ov30_021894d0:
|
|
.space 0x4
|
|
.global data_ov30_021894d4
|
|
data_ov30_021894d4:
|
|
.space 0x4
|
|
.global data_ov30_021894d8
|
|
data_ov30_021894d8:
|
|
.space 0x4
|
|
.global data_ov30_021894dc
|
|
data_ov30_021894dc:
|
|
.space 0x4
|
|
.global data_ov30_021894e0
|
|
data_ov30_021894e0:
|
|
.space 0x4
|
|
.global data_ov30_021894e4
|
|
data_ov30_021894e4:
|
|
.space 0x4
|
|
.global data_ov30_021894e8
|
|
data_ov30_021894e8:
|
|
.space 0x4
|
|
.global data_ov30_021894ec
|
|
data_ov30_021894ec:
|
|
.space 0x4
|
|
.global data_ov30_021894f0
|
|
data_ov30_021894f0:
|
|
.space 0x4
|
|
.global data_ov30_021894f4
|
|
data_ov30_021894f4:
|
|
.space 0x4
|
|
.global data_ov30_021894f8
|
|
data_ov30_021894f8:
|
|
.space 0x4
|
|
.global data_ov30_021894fc
|
|
data_ov30_021894fc:
|
|
.space 0x4
|
|
.global data_ov30_02189500
|
|
data_ov30_02189500:
|
|
.space 0x4
|
|
.global data_ov30_02189504
|
|
data_ov30_02189504:
|
|
.space 0x4
|
|
.global data_ov30_02189508
|
|
data_ov30_02189508:
|
|
.space 0x4
|
|
.global data_ov30_0218950c
|
|
data_ov30_0218950c:
|
|
.space 0x4
|
|
.global data_ov30_02189510
|
|
data_ov30_02189510:
|
|
.space 0x4
|
|
.global data_ov30_02189514
|
|
data_ov30_02189514:
|
|
.space 0x4
|
|
.global data_ov30_02189518
|
|
data_ov30_02189518:
|
|
.space 0x4
|
|
.global data_ov30_0218951c
|
|
data_ov30_0218951c:
|
|
.space 0x4
|
|
.global data_ov30_02189520
|
|
data_ov30_02189520:
|
|
.space 0x4
|
|
.global data_ov30_02189524
|
|
data_ov30_02189524:
|
|
.space 0x4
|
|
.global data_ov30_02189528
|
|
data_ov30_02189528:
|
|
.space 0x4
|
|
.global data_ov30_0218952c
|
|
data_ov30_0218952c:
|
|
.space 0x4
|
|
.global data_ov30_02189530
|
|
data_ov30_02189530:
|
|
.space 0x4
|
|
.global data_ov30_02189534
|
|
data_ov30_02189534:
|
|
.space 0x4
|
|
.global data_ov30_02189538
|
|
data_ov30_02189538:
|
|
.space 0x4
|
|
.global data_ov30_0218953c
|
|
data_ov30_0218953c:
|
|
.space 0x4
|
|
.global data_ov30_02189540
|
|
data_ov30_02189540:
|
|
.space 0x4
|
|
.global data_ov30_02189544
|
|
data_ov30_02189544:
|
|
.space 0x4
|
|
.global data_ov30_02189548
|
|
data_ov30_02189548:
|
|
.space 0x4
|
|
.global data_ov30_0218954c
|
|
data_ov30_0218954c:
|
|
.space 0x4
|
|
.global data_ov30_02189550
|
|
data_ov30_02189550:
|
|
.space 0x4
|
|
.global data_ov30_02189554
|
|
data_ov30_02189554:
|
|
.space 0x4
|
|
.global data_ov30_02189558
|
|
data_ov30_02189558:
|
|
.space 0x4
|
|
.global data_ov30_0218955c
|
|
data_ov30_0218955c:
|
|
.space 0x4
|