Files
ph/asm/ov58.s
T
Aetias 078e0df4f9 Pass link step
IT LINKS WOOOOOO
2023-09-14 21:52:31 +02:00

3930 lines
77 KiB
ArmAsm

.include "macros/function.inc"
.include "global.inc"
.text
.global func_ov58_02198d00
arm_func_start func_ov58_02198d00
func_ov58_02198d00: ; 0x02198d00
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0x6c
mov r4, r1
ldr r1, [r4, #4]
mov r5, r0
str r1, [sp, #0x14]
ldr r0, [r4, #8]
ldr r1, _02198ee4 ; =func_ov58_02198ef4
str r0, [sp, #0x18]
ldr r2, [r4, #0xc]
ldr r3, _02198ee8 ; =func_ov58_02198ef8
str r2, [sp, #0x1c]
str r1, [sp]
add r0, sp, #0x38
mov r1, #3
mov r2, #0x10
bl func_0204f614
ldr r1, _02198eec ; =data_027e0f6c
ldrh r2, [r4]
mov r0, #0x4c
ldr r3, [r1]
mul r1, r2, r0
ldr r2, [r3, #0x20]
add r0, sp, #8
add lr, r2, r1
ldrh r3, [r2, r1]
ldrh r2, [lr, #2]
mov r1, r0
strh r3, [sp, #0x20]
strh r2, [sp, #0x22]
ldrh r2, [lr, #4]
strh r2, [sp, #0x24]
ldrh r2, [lr, #6]
strh r2, [sp, #0x26]
ldr ip, [lr, #8]
str ip, [sp, #0x28]
ldr r3, [lr, #0xc]
str r3, [sp, #0x2c]
ldr r2, [lr, #0x10]
str r2, [sp, #0x30]
ldr r6, [lr, #0x14]
str r6, [sp, #0x34]
ldr r6, [lr, #0x18]
str r6, [sp, #0x38]
ldr r6, [lr, #0x1c]
str r6, [sp, #0x3c]
ldr r6, [lr, #0x20]
str r6, [sp, #0x40]
ldr r6, [lr, #0x24]
str r6, [sp, #0x44]
ldr r6, [lr, #0x28]
str r6, [sp, #0x48]
ldr r6, [lr, #0x2c]
str r6, [sp, #0x4c]
ldr r6, [lr, #0x30]
str r6, [sp, #0x50]
ldr r6, [lr, #0x34]
str r6, [sp, #0x54]
ldr r6, [lr, #0x38]
str r6, [sp, #0x58]
ldr r6, [lr, #0x3c]
str r6, [sp, #0x5c]
ldr r6, [lr, #0x40]
str r6, [sp, #0x60]
ldr r6, [lr, #0x44]
str r6, [sp, #0x64]
ldr lr, [lr, #0x48]
str lr, [sp, #0x68]
str ip, [sp, #8]
str r3, [sp, #0xc]
str r2, [sp, #0x10]
bl func_01ff9d4c
mov r1, #0x400
add r0, sp, #8
rsb r1, r1, #0
bl func_01fffbec
add r0, sp, #0x14
add r1, sp, #8
mov r2, r0
bl func_01ff9bc4
ldr r1, _02198ef0 ; =data_027e0e60
add r0, sp, #4
ldr r6, [r1]
add r2, sp, #0x14
mov r1, r6
bl func_ov00_02083a1c
add r1, sp, #4
mov r0, r6
bl func_ov00_020840dc
cmp r0, #0x46
bne _02198eb4
ldr r0, _02198ef0 ; =data_027e0e60
add r1, sp, #0x14
ldr r0, [r0]
mov r2, #0
bl func_ov00_02083f44
ldr r1, [sp, #0x18]
add r1, r1, #0xff
add r1, r1, #0x1700
cmp r0, r1
bgt _02198eb4
ldr r3, _02198ee4 ; =func_ov58_02198ef4
add r0, sp, #0x38
mov r1, #3
mov r2, #0x10
bl func_0204f754
add sp, sp, #0x6c
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, pc}
_02198eb4:
mov r0, r5
mov r1, r4
bl func_ov14_02124034
mov r4, r0
ldr r3, _02198ee4 ; =func_ov58_02198ef4
add r0, sp, #0x38
mov r1, #3
mov r2, #0x10
bl func_0204f754
mov r0, r4
add sp, sp, #0x6c
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov58_02198d00
_02198ee4: .word func_ov58_02198ef4
_02198ee8: .word func_ov58_02198ef8
_02198eec: .word data_027e0f6c
_02198ef0: .word data_027e0e60
.global func_ov58_02198ef4
arm_func_start func_ov58_02198ef4
func_ov58_02198ef4: ; 0x02198ef4
bx lr
arm_func_end func_ov58_02198ef4
.global func_ov58_02198ef8
arm_func_start func_ov58_02198ef8
func_ov58_02198ef8: ; 0x02198ef8
bx lr
arm_func_end func_ov58_02198ef8
.global func_ov58_02198efc
arm_func_start func_ov58_02198efc
func_ov58_02198efc: ; 0x02198efc
stmdb sp!, {r4, lr}
sub sp, sp, #0x18
ldr r1, _02198f6c ; =data_027e0fe4
mov r4, r0
ldr r0, [r1]
mov r1, r2
bl func_ov00_020c35d8
cmp r0, #0
beq _02198f60
ldr r2, [r0, #4]
ldr r1, _02198f70 ; =0x50574253
cmp r2, r1
bne _02198f60
mov r1, #1
add r3, sp, #0xc
strb r1, [r4, #0x11]
add r0, r0, #0x820
ldmia r0!, {r0, r1, r2}
stmia r3!, {r0, r1, r2}
ldr r0, [sp, #0xc]
str r0, [r4, #0x14]
ldr r0, [sp, #0x10]
str r0, [r4, #0x18]
ldr r0, [sp, #0x14]
str r0, [r4, #0x1c]
_02198f60:
mov r0, #1
add sp, sp, #0x18
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov58_02198efc
_02198f6c: .word data_027e0fe4
_02198f70: .word 0x50574253
.global func_ov58_02198f74
arm_func_start func_ov58_02198f74
func_ov58_02198f74: ; 0x02198f74
stmdb sp!, {r4, lr}
mov r4, r1
mov r0, r4
ldr r1, [r0]
ldr r1, [r1, #0x58]
blx r1
cmp r0, #0
moveq r0, #0
ldmia sp!, {r4, pc}
ldr r0, [r4, #4]
tst r0, #0x800
moveq r0, #0
ldmia sp!, {r4, pc}
ldr r0, _02198fbc ; =data_ov58_0219afc0
mov r1, #1
strb r1, [r0, #0x140]
mov r0, #0
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov58_02198f74
_02198fbc: .word data_ov58_0219afc0
.global func_ov58_02198fc0
thumb_func_start func_ov58_02198fc0
func_ov58_02198fc0: ; 0x02198fc0
push {r3, lr}
ldr r0, _02199020 ; =data_027e0fb4
mov r1, #9
ldr r0, [r0]
blx func_ov00_020ad52c
add r1, r0, #0
ldr r0, _02199024 ; =data_ov58_0219afcc
blx func_ov00_020a9614
ldr r0, _02199020 ; =data_027e0fb4
mov r1, #0xf
ldr r0, [r0]
blx func_ov00_020ad52c
add r1, r0, #0
ldr r0, _02199028 ; =data_ov58_0219b034
blx func_ov00_020a9614
ldr r0, _02199020 ; =data_027e0fb4
mov r1, #0xf
ldr r0, [r0]
blx func_ov00_020ad52c
ldr r1, _0219902c ; =data_ov58_0219b040
str r0, [r1, #0x68]
ldr r0, _02199020 ; =data_027e0fb4
ldr r1, _02199030 ; =data_ov58_0219ad68
ldr r0, [r0]
blx func_ov00_020ad538
add r1, r0, #0
ldr r0, _02199034 ; =data_ov58_0219b0a0
blx func_ov00_020c0c44
ldr r0, _02199034 ; =data_ov58_0219b0a0
mov r1, #0
blx func_ov00_020c0e5c
ldr r0, _02199028 ; =data_ov58_0219b034
ldr r1, _02199034 ; =data_ov58_0219b0a0
blx func_ov00_020a97e0
ldr r0, _02199038 ; =data_ov58_0219b080
mov r1, #2
strh r1, [r0, #0x10]
pop {r3, pc}
nop
thumb_func_end func_ov58_02198fc0
_02199020: .word data_027e0fb4
_02199024: .word data_ov58_0219afcc
_02199028: .word data_ov58_0219b034
_0219902c: .word data_ov58_0219b040
_02199030: .word data_ov58_0219ad68
_02199034: .word data_ov58_0219b0a0
_02199038: .word data_ov58_0219b080
.global func_ov58_0219903c
thumb_func_start func_ov58_0219903c
func_ov58_0219903c: ; 0x0219903c
push {r4, lr}
ldr r2, [r0]
mov r1, #1
ldr r2, [r2, #0x28]
add r4, r0, #0
blx r2
mov r0, #0
mvn r0, r0
str r0, [r4, #0xc]
str r0, [r4, #0x10]
add r0, r4, #0
bl func_ov14_0213eda0
add r0, r4, #0
blx func_ov14_0213ec64
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov58_0219903c
.global func_ov58_02199060
thumb_func_start func_ov58_02199060
func_ov58_02199060: ; 0x02199060
ldr r0, _02199068 ; =data_ov58_0219b080
mov r1, #2
strh r1, [r0, #0x10]
bx lr
.align 2, 0
thumb_func_end func_ov58_02199060
_02199068: .word data_ov58_0219b080
.global func_ov58_0219906c
thumb_func_start func_ov58_0219906c
func_ov58_0219906c: ; 0x0219906c
push {r4, r5, lr}
sub sp, #0xc
add r5, r0, #0
mov r0, #0x44
ldrsh r0, [r5, r0]
add r1, r0, #1
add r0, r5, #0
add r0, #0x44
strh r1, [r0]
ldr r0, _02199158 ; =data_027e0fb8
ldr r0, [r0]
blx func_ov00_020b11dc
cmp r0, #0
bne _02199094
add r0, r5, #0
add r0, #0x47
ldrb r0, [r0]
cmp r0, #0
bne _021990b6
_02199094:
add r0, r5, #0
add r0, #0x48
ldrb r0, [r0]
cmp r0, #0
bne _021990b6
ldr r0, [r5, #0x18]
cmp r0, #0
ble _021990b6
ldr r0, _0219915c ; =data_027e103c
mov r1, #1
ldr r0, [r0]
blx func_ov05_0210418c
add r0, r5, #0
mov r1, #1
add r0, #0x48
strb r1, [r0]
_021990b6:
ldr r0, [r5, #0x18]
cmp r0, #0
ble _02199154
ldr r0, _02199160 ; =data_ov58_0219b0a0
blx func_ov00_020c0e04
ldr r0, _02199164 ; =data_027e077c
ldr r0, [r0]
cmp r0, #0xd
bne _02199154
add r4, r5, #0
add r4, #0x2c
ldmia r4!, {r0, r1}
add r3, sp, #0
add r2, r3, #0
stmia r3!, {r0, r1}
ldr r0, [r4]
add r1, r5, #0
str r0, [r3]
add r0, r2, #0
add r1, #0x20
blx func_01ff9bf8
add r0, sp, #0
blx func_01ff9cec
add r4, r0, #0
ldr r0, _02199168 ; =0x00000333
cmp r4, r0
bge _02199100
ldr r0, [r5, #0x2c]
str r0, [r5, #0x20]
ldr r0, [r5, #0x30]
str r0, [r5, #0x24]
ldr r0, [r5, #0x34]
str r0, [r5, #0x28]
b _02199144
_02199100:
add r0, sp, #0
blx func_01fffb4c
cmp r0, #0
beq _02199138
mov r0, #1
lsl r0, r0, #0xc
cmp r4, r0
ldr r1, _02199168 ; =0x00000333
bge _0219911c
add r0, sp, #0
blx func_01fffbec
b _0219912a
_0219911c:
add r0, r4, #0
blx func_0200388c
add r1, r0, #0
add r0, sp, #0
blx func_01fffbec
_0219912a:
add r0, r5, #0
add r0, #0x20
add r1, sp, #0
add r2, r0, #0
blx func_01ff9bc4
b _02199144
_02199138:
ldr r0, [r5, #0x2c]
str r0, [r5, #0x20]
ldr r0, [r5, #0x30]
str r0, [r5, #0x24]
ldr r0, [r5, #0x34]
str r0, [r5, #0x28]
_02199144:
ldr r0, _0219916c ; =data_027e0fc8
add r5, #0x20
mov r2, #2
ldr r0, [r0]
add r1, r5, #0
lsl r2, r2, #0xa
blx func_ov00_020bb810
_02199154:
add sp, #0xc
pop {r4, r5, pc}
.align 2, 0
thumb_func_end func_ov58_0219906c
_02199158: .word data_027e0fb8
_0219915c: .word data_027e103c
_02199160: .word data_ov58_0219b0a0
_02199164: .word data_027e077c
_02199168: .word 0x00000333
_0219916c: .word data_027e0fc8
.global func_ov58_02199170
thumb_func_start func_ov58_02199170
func_ov58_02199170: ; 0x02199170
push {r3, r4, r5, lr}
sub sp, #0x10
add r4, r1, #0
ldr r1, [r0]
add r5, r0, #0
ldr r1, [r1, #0x24]
blx r1
cmp r0, #0
beq _021991bc
add r0, r5, #0
add r1, sp, #4
blx func_ov00_020be99c
ldr r1, [sp, #8]
ldr r0, _02199200 ; =0x00000b33
add r2, sp, #4
add r0, r1, r0
str r0, [sp, #8]
mov r1, #4
ldrsh r1, [r5, r1]
ldr r0, _02199204 ; =data_ov58_0219afcc
blx func_ov00_020b413c
ldr r0, [r5, #0x14]
cmp r0, #1
bne _021991de
ldr r0, [r5, #0x18]
cmp r0, #0
ble _021991de
add r2, r5, #0
ldr r0, _02199208 ; =data_ov00_020e9c88
ldr r3, _0219920c ; =func_ov58_02199220
add r1, r4, #0
add r2, #0x20
str r5, [sp]
blx func_ov00_0207b89c
b _021991de
_021991bc:
add r0, r5, #0
mov r1, #1
blx func_ov58_021992c4
cmp r0, #0
beq _021991d8
ldr r1, _02199210 ; =data_ov58_0219b080
mov r0, #0x10
ldrsh r0, [r1, r0]
cmp r0, #0
ble _021991de
sub r0, r0, #1
strh r0, [r1, #0x10]
b _021991de
_021991d8:
ldr r0, _02199210 ; =data_ov58_0219b080
mov r1, #2
strh r1, [r0, #0x10]
_021991de:
add r0, r5, #0
add r0, #0x46
ldrb r0, [r0]
cmp r0, #0
beq _021991fc
ldr r0, _02199214 ; =data_027e077c
ldr r0, [r0]
cmp r0, #0xd
bne _021991fc
ldr r0, _02199218 ; =data_027e0de4
ldr r2, _0219921c ; =func_ov58_02199264
mov r1, #5
add r3, r5, #0
blx func_ov00_0207bb1c
_021991fc:
add sp, #0x10
pop {r3, r4, r5, pc}
.align 2, 0
thumb_func_end func_ov58_02199170
_02199200: .word 0x00000b33
_02199204: .word data_ov58_0219afcc
_02199208: .word data_ov00_020e9c88
_0219920c: .word func_ov58_02199220
_02199210: .word data_ov58_0219b080
_02199214: .word data_027e077c
_02199218: .word data_027e0de4
_0219921c: .word func_ov58_02199264
.global func_ov58_02199220
thumb_func_start func_ov58_02199220
func_ov58_02199220: ; 0x02199220
thumb_func_end func_ov58_02199220
_02199220:
.byte 0x00
.global data_ov58_02199221
data_ov58_02199221: ; 0x02199221
.byte 0x4b, 0x18, 0x47
_02199224: .word func_ov58_02199228
.global func_ov58_02199228
thumb_func_start func_ov58_02199228
func_ov58_02199228: ; 0x02199228
thumb_func_end func_ov58_02199228
_02199228:
.byte 0x38
.global data_ov58_02199229
data_ov58_02199229: ; 0x02199229
.byte 0xb5, 0x05, 0x1c, 0x0b, 0x48, 0x02, 0x21
.byte 0xe0, 0xf6, 0x1a, 0xee, 0x04, 0x1c, 0x0a, 0x48, 0x10, 0xf7, 0xe8, 0xe9, 0x21, 0x1c, 0x80, 0xf6
.byte 0xbe, 0xea, 0x07, 0x48, 0x10, 0xf7, 0xe2, 0xe9, 0x01, 0x21, 0x80, 0xf6, 0x18, 0xeb, 0x20, 0x35
.byte 0x03, 0x48, 0x29, 0x1c, 0x10, 0xf7, 0x74, 0xea, 0x38, 0xbd, 0xc0, 0x46
_0219925c: .word data_ov00_020e9360
_02199260: .word data_ov58_0219b034
.global func_ov58_02199264
thumb_func_start func_ov58_02199264
func_ov58_02199264: ; 0x02199264
thumb_func_end func_ov58_02199264
_02199264:
.byte 0x00
.global data_ov58_02199265
data_ov58_02199265: ; 0x02199265
.byte 0x4b, 0x18, 0x47
_02199268: .word func_ov58_0219926c
.global func_ov58_0219926c
thumb_func_start func_ov58_0219926c
func_ov58_0219926c: ; 0x0219926c
thumb_func_end func_ov58_0219926c
_0219926c:
.byte 0x18
.global data_ov58_0219926d
data_ov58_0219926d: ; 0x0219926d
.byte 0xb5, 0x81, 0xb0
.byte 0x44, 0x21, 0x41, 0x5e, 0x04, 0x1c, 0x38, 0x34, 0x00, 0x91, 0x0e, 0xcc, 0x25, 0xf7, 0xb2, 0xeb
.byte 0x01, 0xb0, 0x18, 0xbd
.global func_ov58_02199284
arm_func_start func_ov58_02199284
func_ov58_02199284: ; 0x02199284
stmdb sp!, {r4, lr}
mov r4, r1
bl func_ov58_021992c4
cmp r0, #0
moveq r0, #0
ldmia sp!, {r4, pc}
cmp r4, #0
beq _021992b8
ldr r0, _021992c0 ; =data_ov58_0219afc0
ldrsh r0, [r0, #0xd0]
cmp r0, #0
movgt r0, #0
ldmia sp!, {r4, pc}
_021992b8:
mov r0, #1
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov58_02199284
_021992c0: .word data_ov58_0219afc0
.global func_ov58_021992c4
arm_func_start func_ov58_021992c4
func_ov58_021992c4: ; 0x021992c4
stmdb sp!, {r3, r4, r5, lr}
ldr r2, _021993e8 ; =data_027e0e60
mov r5, r0
ldr r0, [r2]
mov r4, r1
bl func_ov00_0208499c
cmp r0, #0
beq _0219930c
ldr r0, _021993ec ; =data_027e0c54
ldrb r0, [r0]
cmp r0, #0
bne _0219930c
ldr r0, _021993f0 ; =data_027e0d38
ldr r0, [r0]
add r0, r0, #0xc
bl func_ov00_020a5e9c
cmp r0, #0x33
bne _02199314
_0219930c:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_02199314:
ldr r0, _021993f4 ; =data_027e0fd4
ldr r0, [r0]
ldrsh r0, [r0, #0x5a]
cmp r0, #0
movne r0, #0
ldmia sp!, {r3, r4, r5, pc}
mov r0, r5
bl func_ov00_020beb30
cmp r0, #0
movle r0, #0
ldmia sp!, {r3, r4, r5, pc}
cmp r4, #0
beq _021993e0
ldr r0, _021993f8 ; =data_027e0fc8
ldr r0, [r0]
bl func_ov00_020bba28
cmp r0, #0
moveq r0, #0
ldmia sp!, {r3, r4, r5, pc}
ldr r0, _021993fc ; =data_027e077c
ldr r0, [r0]
cmp r0, #0xd
bgt _02199394
cmp r0, #0xb
blt _02199388
cmpne r0, #0xc
cmpne r0, #0xd
beq _021993ac
b _021993d8
_02199388:
cmp r0, #1
beq _021993ac
b _021993d8
_02199394:
cmp r0, #0x33
bgt _021993a4
beq _021993ac
b _021993d8
_021993a4:
cmp r0, #0x34
bne _021993d8
_021993ac:
mov r0, r5
bl func_ov14_0213ed74
cmp r0, #0
beq _021993c8
bl func_ov14_0212505c
cmp r0, #0
beq _021993d0
_021993c8:
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
_021993d0:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_021993d8:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_021993e0:
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov58_021992c4
_021993e8: .word data_027e0e60
_021993ec: .word data_027e0c54
_021993f0: .word data_027e0d38
_021993f4: .word data_027e0fd4
_021993f8: .word data_027e0fc8
_021993fc: .word data_027e077c
.global func_ov58_02199400
thumb_func_start func_ov58_02199400
func_ov58_02199400: ; 0x02199400
push {r4, r5, lr}
sub sp, #0x3c
add r5, r0, #0
blx func_ov00_020beb30
cmp r0, #0
ble _02199414
ldr r0, [r5, #0x18]
cmp r0, #0
bgt _0219941a
_02199414:
add sp, #0x3c
mov r0, #0
pop {r4, r5, pc}
_0219941a:
add r0, r5, #0
blx func_ov00_020be990
add r3, r0, #0
ldmia r3!, {r0, r1}
add r2, sp, #0x30
stmia r2!, {r0, r1}
ldr r0, [r3]
str r0, [r2]
mov r0, #2
ldr r1, [sp, #0x34]
lsl r0, r0, #0xa
add r0, r1, r0
str r0, [sp, #0x34]
add r0, sp, #4
blx func_ov00_020c1500
mov r0, #0
mvn r0, r0
str r0, [sp, #0x20]
str r0, [sp, #0x24]
add r0, sp, #4
blx func_ov00_020c3348
mov r0, #1
str r0, [sp, #0x20]
mov r0, #4
ldrsh r1, [r5, r0]
add r0, sp, #4
add r2, sp, #0x30
strh r1, [r0, #0x14]
add r0, r5, #0
add r0, #0xc
str r0, [sp]
ldr r0, _02199490 ; =data_027e0fe8
ldr r1, _02199494 ; =0x424d5459
ldr r0, [r0]
add r3, sp, #4
blx func_ov00_020c4048
add r0, r5, #0
blx func_ov14_0213ed74
add r4, r0, #0
beq _02199480
add r0, r5, #0
ldr r2, [r0]
mov r1, #0
ldr r2, [r2, #0x20]
mvn r1, r1
blx r2
_02199480:
add r0, r5, #0
ldr r2, [r0]
mov r1, #0
ldr r2, [r2, #0x28]
blx r2
add r0, r4, #0
add sp, #0x3c
pop {r4, r5, pc}
.align 2, 0
thumb_func_end func_ov58_02199400
_02199490: .word data_027e0fe8
_02199494: .word 0x424d5459
.global func_ov58_02199498
thumb_func_start func_ov58_02199498
func_ov58_02199498: ; 0x02199498
push {r4, r5, r6, r7, lr}
sub sp, #0x1fc
sub sp, #0x38
add r5, r0, #0
add r4, r1, #0
mov r1, #0
ldr r0, _021997f0 ; =data_ov58_0219aec0
mvn r1, r1
str r1, [r0, #0x20]
ldr r0, [r5, #0x18]
cmp r0, #0x64
bge _021994ba
add r0, r5, #0
add r0, #0x47
ldrb r0, [r0]
cmp r0, #0
bne _021994c2
_021994ba:
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_021994c2:
ldr r0, _021997f4 ; =data_027e0e60
add r1, sp, #0x1bc
ldr r0, [r0]
blx func_ov00_0208346c
ldr r0, [r4]
add r1, sp, #0x128
str r0, [sp, #0x128]
ldr r0, [r4, #4]
str r0, [sp, #0x12c]
ldr r0, [r4, #8]
str r0, [sp, #0x130]
add r0, sp, #0x1bc
blx func_ov00_0208e72c
cmp r0, #0
bne _021994e8
mov r0, #1
b _021994ea
_021994e8:
mov r0, #0
_021994ea:
cmp r0, #0
beq _02199502
ldr r0, [r5, #0x18]
cmp r0, #0
ble _021994fa
mov r0, #0
add r5, #0x47
strb r0, [r5]
_021994fa:
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_02199502:
ldr r1, _021997f4 ; =data_027e0e60
add r0, sp, #0x58
ldr r1, [r1]
add r0, #2
add r2, r4, #0
blx func_ov00_02083a1c
ldr r0, [r4]
add r3, sp, #0x58
str r0, [sp, #0x1b0]
ldr r0, [r4, #4]
add r3, #2
str r0, [sp, #0x1b4]
ldr r0, [r4, #8]
mov r2, sp
str r0, [sp, #0x1b8]
ldr r0, _021997f4 ; =data_027e0e60
ldrb r6, [r3]
ldr r0, [r0]
sub r2, r2, #4
strb r6, [r2]
ldrb r3, [r3, #1]
add r1, sp, #0x1b0
strb r3, [r2, #1]
ldr r2, [r2]
blx func_ov00_02083c7c
ldr r0, [r4, #4]
str r0, [sp, #0x1b4]
ldr r1, [r5, #0x18]
cmp r1, #0
ble _021995c6
add r0, sp, #0x58
add r0, #2
ldrb r3, [r0]
add r2, sp, #0x24
sub r1, r1, #1
strb r3, [r2, #0x1c]
ldrb r0, [r0, #1]
lsl r3, r1, #1
strb r0, [r2, #0x1d]
ldr r0, [r5, #0x1c]
add r1, r0, r3
ldrb r0, [r0, r3]
strb r0, [r2, #6]
ldrb r0, [r1, #1]
strb r0, [r2, #7]
ldrb r0, [r2, #6]
strb r0, [r2, #0x1e]
ldrb r0, [r2, #7]
strb r0, [r2, #0x1f]
ldrb r1, [r2, #0x1e]
ldrb r0, [r2, #0x1c]
cmp r1, r0
bne _02199580
ldrb r1, [r2, #0x1f]
ldrb r0, [r2, #0x1d]
cmp r1, r0
bne _02199580
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_02199580:
ldr r0, _021997f4 ; =data_027e0e60
add r3, sp, #0x24
mov r2, sp
ldrb r6, [r3, #6]
ldr r0, [r0]
sub r2, r2, #4
strb r6, [r2]
ldrb r3, [r3, #7]
add r1, sp, #0x1a4
strb r3, [r2, #1]
ldr r2, [r2]
blx func_ov00_02083c7c
ldr r1, [r4]
ldr r0, [sp, #0x1a4]
sub r1, r1, r0
bpl _021995a4
neg r1, r1
_021995a4:
mov r0, #1
lsl r0, r0, #0xc
cmp r1, r0
bge _021995c6
ldr r1, [r4, #8]
ldr r0, [sp, #0x1ac]
sub r1, r1, r0
bpl _021995b6
neg r1, r1
_021995b6:
mov r0, #1
lsl r0, r0, #0xc
cmp r1, r0
bge _021995c6
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_021995c6:
add r0, sp, #0x194
blx func_ov14_02124ff4
ldr r0, [r5, #0x18]
cmp r0, #0
bgt _021995e2
ldr r1, _021997f8 ; =data_027e0f94
ldr r0, [r1]
ldr r6, [r1, #4]
str r0, [sp, #0x18]
ldr r0, [r1, #8]
str r6, [sp, #0x1b4]
str r0, [sp, #0x14]
b _02199606
_021995e2:
ldr r0, [r5, #0x2c]
ldr r6, [r5, #0x30]
str r0, [sp, #0x18]
ldr r0, [r5, #0x34]
add r1, sp, #0x11c
str r0, [sp, #0x14]
ldr r0, [sp, #0x1b0]
mov r2, #0
str r0, [sp, #0x11c]
ldr r0, [sp, #0x1b4]
str r0, [sp, #0x120]
ldr r0, [sp, #0x1b8]
str r0, [sp, #0x124]
ldr r0, _021997f4 ; =data_027e0e60
ldr r0, [r0]
blx func_ov00_02083ee0
str r0, [sp, #0x1b4]
_02199606:
ldr r1, [sp, #0x198]
ldr r0, [sp, #0x1b4]
add r6, r6, r1
add r1, r0, r1
ldr r0, [sp, #0x1b0]
str r1, [sp, #0x1b4]
str r0, [sp, #0x188]
ldr r0, [sp, #0x1b8]
str r1, [sp, #0x18c]
str r0, [sp, #0x190]
ldr r0, [sp, #0x18]
add r1, sp, #0x110
str r0, [sp, #0x110]
ldr r0, [sp, #0x14]
str r6, [sp, #0x114]
str r0, [sp, #0x118]
add r0, sp, #0x188
add r2, r0, #0
blx func_01ff9bf8
ldr r7, [sp, #0x18c]
mov r0, #0
str r0, [sp, #0x18c]
add r0, sp, #0x188
blx func_01ff9cec
str r0, [sp, #0x20]
mov r0, #0
str r0, [sp, #0x1c]
add r0, sp, #0x188
blx func_01fffb4c
cmp r0, #0
bne _02199652
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_02199652:
mov r1, #7
ldr r0, [sp, #0x20]
lsl r1, r1, #0xc
cmp r0, r1
ble _02199668
add r0, sp, #0x188
blx func_01fffbec
mov r0, #1
str r0, [sp, #0x1c]
b _0219968e
_02199668:
mov r1, #1
lsl r1, r1, #0xc
cmp r0, r1
blt _0219968e
ldr r0, [r5, #0x18]
cmp r0, #0
ble _02199680
cmp r7, #0
bge _0219967c
neg r7, r7
_0219967c:
cmp r7, #0
ble _0219968e
_02199680:
mov r1, #1
add r0, sp, #0x188
lsl r1, r1, #0xc
blx func_01fffbec
mov r0, #1
str r0, [sp, #0x1c]
_0219968e:
ldr r0, [sp, #0x1c]
cmp r0, #0
beq _02199708
ldr r1, [sp, #0x188]
ldr r0, [sp, #0x18]
add r2, sp, #0x1b0
add r0, r0, r1
str r0, [sp, #0x1b0]
ldr r1, [sp, #0x190]
ldr r0, [sp, #0x14]
add r0, r0, r1
ldr r1, _021997f4 ; =data_027e0e60
str r0, [sp, #0x1b8]
ldr r1, [r1]
add r0, sp, #0x58
blx func_ov00_02083a1c
add r0, sp, #0x58
ldrb r1, [r0]
add r7, sp, #0x58
add r7, #2
strb r1, [r7]
ldrb r0, [r0, #1]
mov r3, sp
sub r3, r3, #4
strb r0, [r7, #1]
ldr r0, _021997f4 ; =data_027e0e60
ldrb r2, [r7]
ldr r0, [r0]
add r1, sp, #0x1b0
strb r2, [r3]
ldrb r2, [r7, #1]
strb r2, [r3, #1]
ldr r2, [r3]
blx func_ov00_02083c7c
ldr r1, [sp, #0x1b4]
ldr r0, _021997fc ; =0x00000999
mov r2, #0
add r1, r1, r0
ldr r0, [sp, #0x1b0]
str r1, [sp, #0x1b4]
str r0, [sp, #0x104]
ldr r0, [sp, #0x1b8]
str r1, [sp, #0x108]
str r0, [sp, #0x10c]
ldr r0, _021997f4 ; =data_027e0e60
add r1, sp, #0x104
ldr r0, [r0]
blx func_ov00_02083ee0
ldr r1, [sp, #0x198]
str r0, [sp, #0x1b4]
add r0, r0, r1
str r0, [sp, #0x1b4]
ldr r0, [sp, #0x1b0]
str r0, [r4]
ldr r0, [sp, #0x1b4]
str r0, [r4, #4]
ldr r0, [sp, #0x1b8]
str r0, [r4, #8]
_02199708:
add r2, sp, #0x58
add r2, #2
ldrb r3, [r2]
mov r1, sp
sub r1, r1, #4
strb r3, [r1]
ldrb r2, [r2, #1]
add r0, r5, #0
strb r2, [r1, #1]
ldr r1, [r1]
blx func_ov58_0219a3b4
cmp r0, #0
beq _02199750
add r2, sp, #0x58
add r2, #2
ldrb r3, [r2]
mov r1, sp
sub r1, r1, #4
strb r3, [r1]
ldrb r2, [r2, #1]
add r0, r5, #0
strb r2, [r1, #1]
ldr r1, [r1]
blx func_ov58_02199ef0
ldr r1, [sp, #0x198]
str r0, [sp, #0x1b4]
add r0, r0, r1
str r0, [sp, #0x1b4]
ldr r0, [sp, #0x1b0]
str r0, [r4]
ldr r0, [sp, #0x1b4]
str r0, [r4, #4]
ldr r0, [sp, #0x1b8]
str r0, [r4, #8]
_02199750:
ldr r1, [r5, #0x18]
cmp r1, #0
ble _021997ec
sub r1, r1, #1
lsl r2, r1, #1
ldr r3, [r5, #0x1c]
mov r1, sp
add r7, r3, r2
ldrb r2, [r3, r2]
sub r1, r1, #4
add r0, r5, #0
strb r2, [r1]
ldrb r2, [r7, #1]
strb r2, [r1, #1]
ldr r1, [r1]
blx func_ov58_0219a3b4
cmp r0, #0
beq _02199796
ldr r1, [r5, #0x18]
ldr r2, [r5, #0x1c]
sub r1, r1, #1
lsl r6, r1, #1
add r3, r2, r6
mov r1, sp
ldrb r2, [r2, r6]
sub r1, r1, #4
add r0, r5, #0
strb r2, [r1]
ldrb r2, [r3, #1]
strb r2, [r1, #1]
ldr r1, [r1]
blx func_ov58_02199ef0
add r6, r0, #0
_02199796:
ldr r2, [r5, #0x18]
ldr r0, _021997f4 ; =data_027e0e60
sub r2, r2, #1
ldr r1, [r5, #0x1c]
lsl r2, r2, #1
ldr r0, [r0]
add r1, r1, r2
blx func_ov00_02084088
cmp r0, #0x19
bne _021997ec
ldr r1, [r5, #0x18]
ldr r0, _021997f4 ; =data_027e0e60
sub r1, r1, #1
ldr r2, [r5, #0x1c]
lsl r1, r1, #1
ldr r0, [r0]
add r1, r2, r1
blx func_ov00_02083e58
ldr r1, [sp, #0x18]
mov r2, #0
str r1, [sp, #0xf8]
ldr r1, _02199800 ; =0x00001333
sub r0, r0, r1
str r0, [sp, #0xfc]
ldr r0, [sp, #0x14]
add r1, sp, #0xf8
str r0, [sp, #0x100]
ldr r0, _021997f4 ; =data_027e0e60
ldr r0, [r0]
blx func_ov00_02083ee0
add r6, r0, #0
ldr r0, [sp, #0x1b4]
sub r1, r0, r6
ldr r0, _021997fc ; =0x00000999
cmp r1, r0
blt _021997ec
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_021997ec:
ldr r1, _02199804 ; =0x0000ffff
b _02199808
.align 2, 0
thumb_func_end func_ov58_02199498
_021997f0: .word data_ov58_0219aec0
_021997f4: .word data_027e0e60
_021997f8: .word data_027e0f94
_021997fc: .word 0x00000999
_02199800: .word 0x00001333
_02199804: .word 0x0000ffff
_02199808:
add r0, sp, #0x1d4
strh r1, [r0, #0x24]
strh r1, [r0, #0x26]
strh r1, [r0, #0x28]
strh r1, [r0, #0x2a]
mov r1, #0
strh r1, [r0, #0x2c]
add r0, sp, #0x214
strb r1, [r0, #0xe]
strb r1, [r0, #0xf]
strb r1, [r0, #0x10]
strb r1, [r0, #0x11]
strb r1, [r0, #0x18]
strb r1, [r0, #0x19]
strb r1, [r0, #0x1a]
strb r1, [r0, #0x1b]
strb r1, [r0, #0x1c]
ldr r2, [sp, #0x1b4]
strb r1, [r0, #0x1d]
cmp r6, r2
bge _02199870
ldr r0, _02199b40 ; =0x00000999
sub r1, r2, r6
cmp r1, r0
bge _0219983e
add r6, r2, #0
b _02199872
_0219983e:
ldr r0, [sp, #0x18]
add r1, sp, #0xec
str r0, [sp, #0xec]
ldr r0, [sp, #0x14]
add r2, sp, #0x64
str r0, [sp, #0xf4]
ldr r0, _02199b44 ; =data_027e0e60
add r3, sp, #0x17c
ldr r0, [r0]
str r6, [sp, #0xf0]
blx func_ov00_02083f80
ldr r0, [sp, #0x17c]
cmp r0, #0
bne _02199862
ldr r0, [sp, #0x184]
cmp r0, #0
beq _02199872
_02199862:
ldr r0, _02199b48 ; =0x0000099a
ldr r1, [sp, #0x1b4]
add r6, r6, r0
cmp r6, r1
blt _02199872
add r6, r1, #0
b _02199872
_02199870:
str r6, [sp, #0x1b4]
_02199872:
ldr r0, _02199b4c ; =data_ov58_0219b100
mov r1, #0
strb r1, [r0]
strb r1, [r0, #1]
ldr r0, [sp, #0x1b0]
str r6, [sp, #0xd8]
str r0, [sp, #0xe0]
ldr r0, [sp, #0x1b4]
add r1, sp, #0x1d4
str r0, [sp, #0xe4]
ldr r0, [sp, #0x1b8]
add r2, sp, #0xe0
str r0, [sp, #0xe8]
ldr r0, [sp, #0x18]
add r3, sp, #0xd4
str r0, [sp, #0xd4]
ldr r0, [sp, #0x14]
str r0, [sp, #0xdc]
add r0, sp, #0x194
str r0, [sp]
mov r0, #9
str r0, [sp, #4]
mov r0, #0xcf
str r0, [sp, #8]
ldr r0, _02199b50 ; =data_ov58_0219b0f0
str r0, [sp, #0xc]
mov r0, #1
str r0, [sp, #0x10]
ldr r0, _02199b44 ; =data_027e0e60
ldr r0, [r0]
blx func_01ffbe78
ldr r1, _02199b4c ; =data_ov58_0219b100
ldrb r2, [r1]
cmp r2, #0
beq _021998c2
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_021998c2:
cmp r0, #0
bne _021998c8
b _02199cd0
_021998c8:
ldrb r0, [r1, #1]
cmp r0, #0
beq _02199928
ldr r0, _02199b54 ; =data_ov58_0219b0c0
add r2, sp, #0x1b0
ldr r1, [r0, #0x44]
str r1, [sp, #0x1b0]
ldr r1, [r0, #0x48]
ldr r0, [r0, #0x4c]
str r1, [sp, #0x1b4]
str r0, [sp, #0x1b8]
ldr r0, [r5, #0x24]
ldr r1, _02199b44 ; =data_027e0e60
str r0, [sp, #0x1b4]
add r0, sp, #0x54
ldr r1, [r1]
add r0, #2
blx func_ov00_02083a1c
add r1, sp, #0x54
add r1, #2
ldrb r2, [r1]
add r0, sp, #0x58
add r0, #2
ldrb r1, [r1, #1]
strb r2, [r0]
strb r1, [r0, #1]
ldr r0, [sp, #0x1b0]
str r0, [r4]
ldr r0, [sp, #0x1b4]
str r0, [r4, #4]
ldr r0, [sp, #0x1b8]
str r0, [r4, #8]
ldr r2, [sp, #0x1b4]
ldr r1, [sp, #0x1b8]
ldr r0, [sp, #0x1b0]
str r0, [r5, #0x38]
str r2, [r5, #0x3c]
add r0, r5, #0
str r1, [r5, #0x40]
mov r1, #0
add r0, #0x47
strb r1, [r0]
add r0, r5, #0
mov r1, #1
add r0, #0x46
strb r1, [r0]
b _02199d26
_02199928:
add r0, sp, #0x214
ldrb r1, [r0, #0x18]
cmp r1, #0
bne _02199932
b _02199c18
_02199932:
ldr r0, [r5, #0x18]
cmp r0, #0
bgt _02199940
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_02199940:
ldr r0, [sp, #0x1d4]
ldr r1, _02199b44 ; =data_027e0e60
str r0, [sp, #0x170]
ldr r0, [sp, #0x1d8]
ldr r1, [r1]
str r0, [sp, #0x174]
ldr r0, [sp, #0x1dc]
add r2, sp, #0x170
str r0, [sp, #0x178]
add r0, sp, #0x54
blx func_ov00_02083a1c
add r0, sp, #0x54
ldrb r1, [r0]
add r2, sp, #0x58
add r2, #2
strb r1, [r2]
ldrb r0, [r0, #1]
mov r1, sp
sub r1, r1, #4
strb r0, [r2, #1]
ldrb r3, [r2]
add r0, r5, #0
strb r3, [r1]
ldrb r2, [r2, #1]
strb r2, [r1, #1]
ldr r1, [r1]
blx func_ov58_0219a3b4
cmp r0, #0
beq _02199986
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_02199986:
add r7, sp, #0x58
ldr r0, _02199b44 ; =data_027e0e60
add r7, #2
mov r3, sp
ldrb r2, [r7]
ldr r0, [r0]
sub r3, r3, #4
strb r2, [r3]
ldrb r2, [r7, #1]
add r1, sp, #0x170
strb r2, [r3, #1]
ldr r2, [r3]
blx func_ov00_02083c7c
add r0, r7, #0
ldrb r2, [r0]
add r1, sp, #0x24
strb r2, [r1, #0x18]
ldrb r0, [r0, #1]
strb r0, [r1, #0x19]
ldr r2, [r5, #0x18]
ldr r0, [r5, #0x1c]
sub r2, r2, #1
lsl r3, r2, #1
add r2, r0, r3
ldrb r0, [r0, r3]
strb r0, [r1, #0x1a]
ldrb r0, [r2, #1]
strb r0, [r1, #0x1b]
ldrb r2, [r1, #0x1a]
ldrb r0, [r1, #0x18]
cmp r2, r0
bne _021999d0
ldrb r2, [r1, #0x1b]
ldrb r0, [r1, #0x19]
cmp r2, r0
beq _021999d2
_021999d0:
b _02199bde
_021999d2:
ldr r0, [sp, #0x1d4]
add r1, sp, #0xbc
str r0, [sp, #0x164]
ldr r0, [sp, #0x1d8]
str r6, [sp, #0xc0]
str r0, [sp, #0x168]
ldr r0, [sp, #0x1dc]
str r0, [sp, #0x16c]
ldr r0, [sp, #0x18]
str r0, [sp, #0xbc]
ldr r0, [sp, #0x14]
str r0, [sp, #0xc4]
add r0, sp, #0x164
add r2, r0, #0
blx func_01ff9bf8
ldr r0, [sp, #0x16c]
cmp r0, #0
bge _021999fa
neg r0, r0
_021999fa:
ldr r1, [sp, #0x164]
cmp r1, #0
bge _02199a02
neg r1, r1
_02199a02:
cmp r1, r0
ble _02199a0c
mov r0, #0
str r0, [sp, #0x16c]
b _02199a10
_02199a0c:
mov r0, #0
str r0, [sp, #0x164]
_02199a10:
add r0, sp, #0x164
blx func_01fffb4c
cmp r0, #0
beq _02199a30
ldr r0, [sp, #0x18]
add r1, sp, #0x164
str r0, [sp, #0x170]
ldr r0, [sp, #0x14]
str r6, [sp, #0x174]
str r0, [sp, #0x178]
add r0, sp, #0x170
add r2, r0, #0
blx func_01ff9bc4
b _02199a38
_02199a30:
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_02199a38:
ldr r1, _02199b44 ; =data_027e0e60
add r0, sp, #0x50
ldr r1, [r1]
add r0, #2
add r2, sp, #0x170
blx func_ov00_02083a1c
add r0, sp, #0x50
add r0, #2
ldrb r1, [r0]
add r2, sp, #0x58
add r2, #2
strb r1, [r2]
ldrb r0, [r0, #1]
mov r1, sp
sub r1, r1, #4
strb r0, [r2, #1]
ldrb r3, [r2]
add r0, r5, #0
strb r3, [r1]
ldrb r2, [r2, #1]
strb r2, [r1, #1]
ldr r1, [r1]
blx func_ov58_0219a3b4
cmp r0, #0
beq _02199a76
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_02199a76:
ldr r0, _02199b4c ; =data_ov58_0219b100
mov r1, #0
strb r1, [r0]
strb r1, [r0, #1]
ldr r0, [sp, #0x18]
str r6, [sp, #0xb4]
str r0, [sp, #0xb0]
ldr r0, [sp, #0x14]
add r1, sp, #0x1d4
str r0, [sp, #0xb8]
add r0, sp, #0x194
str r0, [sp]
mov r0, #9
str r0, [sp, #4]
mov r0, #0xcf
str r0, [sp, #8]
ldr r0, _02199b50 ; =data_ov58_0219b0f0
add r2, sp, #0x170
str r0, [sp, #0xc]
mov r0, #1
str r0, [sp, #0x10]
ldr r0, _02199b44 ; =data_027e0e60
add r3, sp, #0xb0
ldr r0, [r0]
blx func_01ffbe78
ldr r1, _02199b4c ; =data_ov58_0219b100
ldrb r1, [r1]
cmp r1, #0
beq _02199aba
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_02199aba:
cmp r0, #0
bne _02199b30
ldr r1, _02199b44 ; =data_027e0e60
add r0, sp, #0x50
ldr r1, [r1]
add r2, sp, #0x170
blx func_ov00_02083a1c
add r1, sp, #0x50
ldrb r2, [r1]
add r0, sp, #0x58
add r0, #2
ldrb r1, [r1, #1]
strb r2, [r0]
strb r1, [r0, #1]
ldrb r2, [r0]
add r1, sp, #0x24
strb r2, [r1, #4]
ldrb r0, [r0, #1]
strb r0, [r1, #5]
ldrb r0, [r1, #4]
strb r0, [r1, #0x14]
ldrb r0, [r1, #5]
strb r0, [r1, #0x15]
ldr r2, [r5, #0x18]
ldr r0, [r5, #0x1c]
sub r2, r2, #1
lsl r3, r2, #1
add r2, r0, r3
ldrb r0, [r0, r3]
strb r0, [r1, #0x16]
ldrb r0, [r2, #1]
strb r0, [r1, #0x17]
ldrb r2, [r1, #0x16]
ldrb r0, [r1, #0x14]
cmp r2, r0
bne _02199b14
ldrb r2, [r1, #0x17]
ldrb r0, [r1, #0x15]
cmp r2, r0
bne _02199b14
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_02199b14:
ldr r0, _02199b44 ; =data_027e0e60
add r7, sp, #0x24
mov r3, sp
ldrb r2, [r7, #4]
ldr r0, [r0]
sub r3, r3, #4
strb r2, [r3]
ldrb r2, [r7, #5]
add r1, sp, #0x170
strb r2, [r3, #1]
ldr r2, [r3]
blx func_ov00_02083c7c
b _02199bde
_02199b30:
add r0, sp, #0x214
ldrb r0, [r0, #0x18]
cmp r0, #0
beq _02199bd6
ldr r0, [sp, #0x1d4]
ldr r1, _02199b44 ; =data_027e0e60
b _02199b58
nop
_02199b40: .word 0x00000999
_02199b44: .word data_027e0e60
_02199b48: .word 0x0000099a
_02199b4c: .word data_ov58_0219b100
_02199b50: .word data_ov58_0219b0f0
_02199b54: .word data_ov58_0219b0c0
_02199b58:
str r0, [sp, #0x170]
ldr r0, [sp, #0x1d8]
ldr r1, [r1]
str r0, [sp, #0x174]
ldr r0, [sp, #0x1dc]
add r2, sp, #0x170
str r0, [sp, #0x178]
add r0, sp, #0x4c
add r0, #2
blx func_ov00_02083a1c
add r1, sp, #0x4c
add r1, #2
ldrb r2, [r1]
add r0, sp, #0x58
add r0, #2
ldrb r1, [r1, #1]
strb r2, [r0]
strb r1, [r0, #1]
ldrb r2, [r0]
add r1, sp, #0x24
strb r2, [r1, #2]
ldrb r0, [r0, #1]
strb r0, [r1, #3]
ldrb r0, [r1, #2]
strb r0, [r1, #0x10]
ldrb r0, [r1, #3]
strb r0, [r1, #0x11]
ldr r2, [r5, #0x18]
ldr r0, [r5, #0x1c]
sub r2, r2, #1
lsl r3, r2, #1
add r2, r0, r3
ldrb r0, [r0, r3]
strb r0, [r1, #0x12]
ldrb r0, [r2, #1]
strb r0, [r1, #0x13]
ldrb r2, [r1, #0x12]
ldrb r0, [r1, #0x10]
cmp r2, r0
bne _02199bba
ldrb r2, [r1, #0x13]
ldrb r0, [r1, #0x11]
cmp r2, r0
bne _02199bba
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_02199bba:
ldr r0, _02199ee4 ; =data_027e0e60
add r7, sp, #0x24
mov r3, sp
ldrb r2, [r7, #2]
ldr r0, [r0]
sub r3, r3, #4
strb r2, [r3]
ldrb r2, [r7, #3]
add r1, sp, #0x170
strb r2, [r3, #1]
ldr r2, [r3]
blx func_ov00_02083c7c
b _02199bde
_02199bd6:
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_02199bde:
ldr r0, [sp, #0x170]
ldr r2, [sp, #0x178]
ldr r3, [sp, #0x174]
ldr r1, _02199ee8 ; =0x00000999
str r0, [sp, #0x1b0]
str r0, [sp, #0xa4]
ldr r0, _02199ee4 ; =data_027e0e60
add r1, r3, r1
str r3, [sp, #0x1b4]
ldr r0, [r0]
str r2, [sp, #0x1b8]
str r2, [sp, #0xac]
str r1, [sp, #0x1b4]
str r1, [sp, #0xa8]
add r1, sp, #0xa4
mov r2, #0
blx func_ov00_02083ee0
ldr r1, [sp, #0x198]
str r0, [sp, #0x1b4]
add r0, r0, r1
str r0, [sp, #0x1b4]
ldr r0, [sp, #0x1b0]
str r0, [r4]
ldr r0, [sp, #0x1b4]
str r0, [r4, #4]
ldr r0, [sp, #0x1b8]
str r0, [r4, #8]
b _02199d26
_02199c18:
ldrb r0, [r0, #0x19]
cmp r0, #0
beq _02199cc8
ldr r0, [sp, #0x1d4]
ldr r1, _02199ee4 ; =data_027e0e60
str r0, [sp, #0x158]
ldr r0, [sp, #0x1d8]
ldr r1, [r1]
str r0, [sp, #0x15c]
ldr r0, [sp, #0x1dc]
add r2, sp, #0x158
str r0, [sp, #0x160]
add r0, sp, #0x4c
blx func_ov00_02083a1c
add r1, sp, #0x4c
ldrb r2, [r1]
add r0, sp, #0x58
add r0, #2
ldrb r1, [r1, #1]
strb r2, [r0]
strb r1, [r0, #1]
ldrb r2, [r0]
add r1, sp, #0x24
strb r2, [r1]
ldrb r0, [r0, #1]
strb r0, [r1, #1]
ldrb r0, [r1]
strb r0, [r1, #0xc]
ldrb r0, [r1, #1]
strb r0, [r1, #0xd]
ldr r2, [r5, #0x18]
ldr r0, [r5, #0x1c]
sub r2, r2, #1
lsl r3, r2, #1
add r2, r0, r3
ldrb r0, [r0, r3]
strb r0, [r1, #0xe]
ldrb r0, [r2, #1]
strb r0, [r1, #0xf]
ldrb r2, [r1, #0xe]
ldrb r0, [r1, #0xc]
cmp r2, r0
bne _02199c80
ldrb r2, [r1, #0xf]
ldrb r0, [r1, #0xd]
cmp r2, r0
bne _02199c80
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_02199c80:
ldr r0, _02199ee4 ; =data_027e0e60
add r7, sp, #0x24
mov r3, sp
ldrb r2, [r7]
ldr r0, [r0]
sub r3, r3, #4
strb r2, [r3]
ldrb r2, [r7, #1]
add r1, sp, #0x158
strb r2, [r3, #1]
ldr r2, [r3]
blx func_ov00_02083c7c
ldr r0, [sp, #0x158]
ldr r2, [sp, #0x160]
ldr r3, [sp, #0x15c]
ldr r1, _02199ee8 ; =0x00000999
str r0, [sp, #0x1b0]
str r0, [sp, #0x98]
ldr r0, _02199ee4 ; =data_027e0e60
add r1, r3, r1
str r3, [sp, #0x1b4]
ldr r0, [r0]
str r2, [sp, #0x1b8]
str r2, [sp, #0xa0]
str r1, [sp, #0x1b4]
str r1, [sp, #0x9c]
add r1, sp, #0x98
mov r2, #0
blx func_ov00_02083ee0
ldr r1, [sp, #0x198]
str r0, [sp, #0x1b4]
add r0, r0, r1
str r0, [sp, #0x1b4]
b _02199d26
_02199cc8:
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_02199cd0:
ldr r0, _02199ee4 ; =data_027e0e60
add r2, sp, #0x1b0
ldr r7, [r0]
add r0, sp, #0x48
add r0, #2
add r1, r7, #0
blx func_ov00_02083a1c
add r1, sp, #0x48
add r0, r7, #0
add r1, #2
blx func_ov00_02084088
cmp r0, #0x19
bne _02199d0c
ldr r0, _02199ee4 ; =data_027e0e60
add r2, sp, #0x1b0
ldr r7, [r0]
add r0, sp, #0x48
add r1, r7, #0
blx func_ov00_02083a1c
add r0, r7, #0
add r1, sp, #0x48
blx func_ov00_02083e58
ldr r1, _02199eec ; =0x00001333
str r0, [sp, #0x1b4]
sub r0, r0, r1
str r0, [sp, #0x1b4]
_02199d0c:
ldr r0, [sp, #0x1b0]
add r1, sp, #0x8c
str r0, [sp, #0x8c]
ldr r0, [sp, #0x1b4]
mov r2, #0
str r0, [sp, #0x90]
ldr r0, [sp, #0x1b8]
str r0, [sp, #0x94]
ldr r0, _02199ee4 ; =data_027e0e60
ldr r0, [r0]
blx func_ov00_02083ee0
str r0, [sp, #0x1b4]
_02199d26:
ldr r0, [sp, #0x18]
str r6, [sp, #0x150]
str r0, [sp, #0x14c]
ldr r0, [sp, #0x14]
str r6, [sp, #0x144]
str r0, [sp, #0x154]
ldr r0, [sp, #0x18]
mov r6, #1
str r0, [sp, #0x140]
ldr r0, [sp, #0x14]
add r7, sp, #0x14c
str r0, [sp, #0x148]
_02199d3e:
mov r2, #1
add r0, r7, #0
add r1, sp, #0x1b0
lsl r2, r2, #0xc
blx func_0202b2f8
cmp r0, #0
beq _02199d50
mov r6, #0
_02199d50:
ldr r1, _02199ee4 ; =data_027e0e60
add r0, sp, #0x60
ldr r1, [r1]
add r2, r7, #0
blx func_ov00_02083fb0
ldr r1, [sp, #0x60]
ldr r0, [sp, #0x60]
lsr r2, r1, #5
mov r1, #3
and r1, r2
cmp r1, #2
bne _02199dfc
mov r1, #0x1f
and r0, r1
cmp r0, #0xa
beq _02199dfc
ldr r2, [sp, #0x144]
ldr r0, _02199ee8 ; =0x00000999
str r2, [sp, #0x1b4]
add r0, r2, r0
ldr r1, [sp, #0x148]
ldr r3, [sp, #0x140]
str r0, [sp, #0x1b4]
str r0, [sp, #0x84]
ldr r0, _02199ee4 ; =data_027e0e60
str r1, [sp, #0x1b8]
str r1, [sp, #0x88]
ldr r0, [r0]
add r1, sp, #0x80
mov r2, #0
str r3, [sp, #0x1b0]
str r3, [sp, #0x80]
blx func_ov00_02083ee0
ldr r1, [sp, #0x198]
str r0, [sp, #0x1b4]
add r0, r0, r1
str r0, [sp, #0x1b4]
ldr r0, [sp, #0x1b0]
ldr r1, _02199ee4 ; =data_027e0e60
str r0, [r4]
ldr r0, [sp, #0x1b4]
add r2, sp, #0x1b0
str r0, [r4, #4]
ldr r0, [sp, #0x1b8]
str r0, [r4, #8]
add r0, sp, #0x44
ldr r1, [r1]
add r0, #2
blx func_ov00_02083a1c
add r0, sp, #0x44
add r0, #2
ldrb r2, [r0]
add r1, sp, #0x58
add r1, #2
ldrb r0, [r0, #1]
strb r2, [r1]
strb r0, [r1, #1]
ldrb r2, [r1]
add r0, sp, #0x24
strb r2, [r0, #8]
ldrb r1, [r1, #1]
strb r1, [r0, #9]
ldr r1, [r5, #0x18]
ldr r3, [r5, #0x1c]
sub r1, r1, #1
lsl r1, r1, #1
add r2, r3, r1
ldrb r1, [r3, r1]
strb r1, [r0, #0xa]
ldrb r1, [r2, #1]
strb r1, [r0, #0xb]
ldrb r2, [r0, #0xa]
ldrb r1, [r0, #8]
cmp r2, r1
bne _02199e0c
ldrb r1, [r0, #0xb]
ldrb r0, [r0, #9]
cmp r1, r0
bne _02199e0c
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_02199dfc:
ldr r0, [sp, #0x14c]
cmp r6, #0
str r0, [sp, #0x140]
ldr r0, [sp, #0x150]
str r0, [sp, #0x144]
ldr r0, [sp, #0x154]
str r0, [sp, #0x148]
bne _02199d3e
_02199e0c:
add r1, sp, #0x58
add r1, #2
ldrb r2, [r1]
mov r3, sp
sub r3, r3, #4
strb r2, [r3]
ldrb r1, [r1, #1]
add r0, r5, #0
strb r1, [r3, #1]
ldr r1, [r3]
blx func_ov58_0219a3b4
cmp r0, #0
beq _02199e54
ldr r1, _02199ee4 ; =data_027e0e60
add r0, sp, #0x44
ldr r1, [r1]
add r2, sp, #0x1b0
blx func_ov00_02083a1c
add r1, sp, #0x44
mov r3, sp
ldrb r2, [r1]
sub r3, r3, #4
add r0, r5, #0
strb r2, [r3]
ldrb r1, [r1, #1]
strb r1, [r3, #1]
ldr r1, [r3]
blx func_ov58_02199ef0
ldr r1, [sp, #0x198]
str r0, [sp, #0x1b4]
add r0, r0, r1
str r0, [sp, #0x1b4]
b _02199e8a
_02199e54:
ldr r0, [sp, #0x1b0]
ldr r1, _02199ee4 ; =data_027e0e60
str r0, [sp, #0x74]
ldr r0, [sp, #0x1b4]
ldr r1, [r1]
str r0, [sp, #0x78]
ldr r0, [sp, #0x1b8]
add r2, sp, #0x74
str r0, [sp, #0x7c]
add r0, sp, #0x5c
blx func_ov00_02083fb0
ldr r0, [sp, #0x5c]
ldr r2, [sp, #0x5c]
lsr r1, r0, #5
mov r0, #3
and r0, r1
cmp r0, #2
bne _02199e8a
mov r0, #0x1f
and r0, r2
cmp r0, #0xa
beq _02199e8a
add sp, #0x1fc
add sp, #0x38
mov r0, #0
pop {r4, r5, r6, r7, pc}
_02199e8a:
ldr r0, [r5, #0x18]
ldr r3, [r5, #0x1c]
lsl r2, r0, #1
add r0, sp, #0x58
add r0, #2
ldrb r1, [r0]
add r4, r3, r2
strb r1, [r3, r2]
ldrb r0, [r0, #1]
add r1, r5, #0
add r1, #0x20
strb r0, [r4, #1]
ldr r0, [r5, #0x18]
add r0, r0, #1
str r0, [r5, #0x18]
ldr r0, [sp, #0x1b0]
str r0, [sp, #0x134]
ldr r0, [sp, #0x1b4]
str r0, [sp, #0x138]
ldr r0, [sp, #0x1b8]
str r0, [sp, #0x13c]
add r0, sp, #0x134
add r2, r0, #0
blx func_01ff9bf8
ldr r2, [sp, #0x1b4]
ldr r1, [sp, #0x1b8]
ldr r0, [sp, #0x1b0]
str r0, [r5, #0x2c]
str r2, [r5, #0x30]
str r1, [r5, #0x34]
ldr r0, [r5, #0x18]
cmp r0, #1
bgt _02199eda
ldr r0, [sp, #0x1b0]
str r0, [r5, #0x20]
ldr r0, [sp, #0x1b4]
str r0, [r5, #0x24]
ldr r0, [sp, #0x1b8]
str r0, [r5, #0x28]
_02199eda:
mov r0, #1
str r0, [r5, #0x14]
add sp, #0x1fc
add sp, #0x38
pop {r4, r5, r6, r7, pc}
.align 2, 0
_02199ee4: .word data_027e0e60
_02199ee8: .word 0x00000999
_02199eec: .word 0x00001333
.global func_ov58_02199ef0
arm_func_start func_ov58_02199ef0
func_ov58_02199ef0: ; 0x02199ef0
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x24
ldr r0, _02199fd4 ; =data_027e0e60
ldrb r1, [sp, #0x4c]
ldr r0, [r0]
sub r3, sp, #4
strb r1, [r3]
ldrb r2, [sp, #0x4d]
add r1, sp, #0x18
strb r2, [r3, #1]
ldr r2, [r3]
bl func_ov00_02083c7c
mov r8, #0
ldr r4, _02199fd4 ; =data_027e0e60
mov sb, r8
add r5, sp, #0xc
mov r7, r8
mov fp, #0x400
add r6, sp, #0
_02199f40:
mov r1, sb, lsl #0x10
mov r0, r6
mov r1, r1, asr #0x10
str r7, [sp]
str r7, [sp, #4]
str fp, [sp, #8]
bl func_ov00_020a61ac
ldr r1, [sp, #0x18]
ldr r0, [sp, #0x1c]
str r1, [sp, #0xc]
ldr r1, [sp, #0x20]
str r0, [sp, #0x10]
str r1, [sp, #0x14]
mov r0, r5
mov r1, r6
mov r2, r5
bl func_01ff9bc4
cmp r8, #0
ldr r0, [r4]
mov r2, #0
mov r1, r5
bne _02199fa4
bl func_ov00_02083f44
mov sl, r0
b _02199fb0
_02199fa4:
bl func_ov00_02083f44
cmp sl, r0
movle sl, r0
_02199fb0:
add r8, r8, #1
cmp r8, #4
add sb, sb, #0x4000
blt _02199f40
mov r0, sl
add sp, sp, #0x24
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
add sp, sp, #0x10
bx lr
.align 2, 0
arm_func_end func_ov58_02199ef0
_02199fd4: .word data_027e0e60
.global func_ov58_02199fd8
arm_func_start func_ov58_02199fd8
func_ov58_02199fd8: ; 0x02199fd8
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r3, lr}
ldr r2, _0219a07c ; =data_ov58_0219aec0
mvn r1, #0
ldr lr, [r2, #0x20]
cmp lr, r1
beq _0219a038
ldr r1, _0219a080 ; =data_ov58_0219afc0
ldrb ip, [sp, #0xc]
ldrb r2, [r1, #0x150]
ldrb r3, [sp, #0xd]
ldrb r1, [r1, #0x151]
strb r2, [sp, #2]
cmp r2, ip
strb r1, [sp, #3]
andeq r2, r1, #0xff
andeq r1, r3, #0xff
cmpeq r2, r1
strb ip, [sp]
strb r3, [sp, #1]
moveq r0, lr
ldmia sp!, {r3, lr}
addeq sp, sp, #0x10
bxeq lr
_0219a038:
ldrb r2, [sp, #0xc]
ldrb r1, [sp, #0xd]
sub r3, sp, #4
strb r2, [r3]
strb r1, [r3, #1]
ldr r1, [r3]
bl func_ov58_0219a084
ldr r2, _0219a07c ; =data_ov58_0219aec0
ldrb ip, [sp, #0xc]
ldr r1, _0219a080 ; =data_ov58_0219afc0
ldrb r3, [sp, #0xd]
str r0, [r2, #0x20]
strb ip, [r1, #0x150]
strb r3, [r1, #0x151]
ldmia sp!, {r3, lr}
add sp, sp, #0x10
bx lr
.align 2, 0
arm_func_end func_ov58_02199fd8
_0219a07c: .word data_ov58_0219aec0
_0219a080: .word data_ov58_0219afc0
.global func_ov58_0219a084
arm_func_start func_ov58_0219a084
func_ov58_0219a084: ; 0x0219a084
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0xcc
ldr r0, _0219a3a8 ; =data_027e0e60
ldrb r1, [sp, #0xf4]
ldr r0, [r0]
sub r3, sp, #4
strb r1, [r3]
ldrb r2, [sp, #0xf5]
add r1, sp, #0x30
strb r2, [r3, #1]
ldr r2, [r3]
bl func_ov00_02083c7c
mov r8, #0
ldr r4, _0219a3a8 ; =data_027e0e60
add sl, sp, #0x3c
mov sb, r8
mov r7, r8
mov r6, #0x400
add r5, sp, #0x24
mov fp, r8
_0219a0d8:
mov r1, sb, lsl #0x10
mov r0, r5
mov r1, r1, asr #0x10
str r7, [sp, #0x24]
str r7, [sp, #0x28]
str r6, [sp, #0x2c]
bl func_ov00_020a61ac
ldr r1, [sp, #0x30]
ldr r0, [sp, #0x34]
str r1, [sl]
ldr r2, [sp, #0x38]
str r0, [sl, #4]
mov r0, sl
mov r1, r5
str r2, [sl, #8]
mov r2, sl
bl func_01ff9bc4
ldr r0, [r4]
mov r1, sl
mov r2, fp
bl func_ov00_02083f44
str r0, [sl, #4]
add sb, sb, #0x4000
add sl, sl, #0xc
add r8, r8, #1
cmp r8, #4
blt _0219a0d8
ldr r3, [sp, #0x4c]
ldr r2, [sp, #0x40]
cmp r2, r3
ldreq r0, [sp, #0x58]
cmpeq r2, r0
ldreq r0, [sp, #0x64]
cmpeq r2, r0
bne _0219a308
ldr r0, _0219a3ac ; =0x0000ffff
mov r2, #0
strh r0, [sp, #0x90]
strh r0, [sp, #0x92]
strh r0, [sp, #0x94]
strh r0, [sp, #0x96]
strh r2, [sp, #0x98]
strb r2, [sp, #0xba]
strb r2, [sp, #0xbb]
strb r2, [sp, #0xbc]
strb r2, [sp, #0xbd]
strb r2, [sp, #0xc4]
strb r2, [sp, #0xc5]
strb r2, [sp, #0xc6]
strb r2, [sp, #0xc7]
strb r2, [sp, #0xc8]
strb r2, [sp, #0xc9]
mov r0, #0x200
str r0, [sp]
mov r0, #9
str r0, [sp, #4]
mov r1, #1
str r1, [sp, #8]
ldr r0, _0219a3b0 ; =data_ov58_0219b0f0
add r1, sp, #0x6c
str r0, [sp, #0xc]
str r2, [sp, #0x10]
ldr r0, _0219a3a8 ; =data_027e0e60
add r2, sp, #0x3c
ldr r0, [r0]
add r3, sp, #0x54
bl func_01ffbf5c
cmp r0, #0
addne sp, sp, #0xcc
movne r0, #7
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
addne sp, sp, #0x10
bxne lr
mov r0, #0x200
str r0, [sp]
mov r0, #9
str r0, [sp, #4]
mov r1, #1
str r1, [sp, #8]
ldr r0, _0219a3b0 ; =data_ov58_0219b0f0
mov r1, #0
str r0, [sp, #0xc]
str r1, [sp, #0x10]
ldr r0, _0219a3a8 ; =data_027e0e60
add r1, sp, #0x6c
ldr r0, [r0]
add r2, sp, #0x48
add r3, sp, #0x60
bl func_01ffbf5c
cmp r0, #0
addne sp, sp, #0xcc
movne r0, #7
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
addne sp, sp, #0x10
bxne lr
mov r0, #0x200
str r0, [sp]
mov r0, #9
str r0, [sp, #4]
mov r1, #1
str r1, [sp, #8]
ldr r0, _0219a3b0 ; =data_ov58_0219b0f0
mov r1, #0
str r0, [sp, #0xc]
str r1, [sp, #0x10]
ldr r0, _0219a3a8 ; =data_027e0e60
add r1, sp, #0x6c
ldr r0, [r0]
add r2, sp, #0x54
add r3, sp, #0x3c
bl func_01ffbf5c
cmp r0, #0
addne sp, sp, #0xcc
movne r0, #7
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
addne sp, sp, #0x10
bxne lr
mov r0, #0x200
str r0, [sp]
mov r0, #9
str r0, [sp, #4]
mov r1, #1
str r1, [sp, #8]
ldr r0, _0219a3b0 ; =data_ov58_0219b0f0
mov r1, #0
str r0, [sp, #0xc]
str r1, [sp, #0x10]
ldr r0, _0219a3a8 ; =data_027e0e60
add r1, sp, #0x6c
ldr r0, [r0]
add r2, sp, #0x60
add r3, sp, #0x48
bl func_01ffbf5c
cmp r0, #0
movne r0, #7
add sp, sp, #0xcc
moveq r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
add sp, sp, #0x10
bx lr
_0219a308:
cmp r2, r3
ldreq r1, [sp, #0x58]
ldreq r0, [sp, #0x64]
cmpeq r1, r0
bne _0219a338
cmp r2, r1
movlt r0, #4
add sp, sp, #0xcc
movge r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
add sp, sp, #0x10
bx lr
_0219a338:
ldr r0, [sp, #0x64]
cmp r2, r0
ldreq r0, [sp, #0x58]
cmpeq r3, r0
bne _0219a368
cmp r2, r3
movlt r0, #3
add sp, sp, #0xcc
movge r0, #2
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
add sp, sp, #0x10
bx lr
_0219a368:
ldr r0, _0219a3a8 ; =data_027e0e60
add r1, sp, #0x30
ldr r0, [r0]
add r2, sp, #0x14
add r3, sp, #0x18
bl func_ov00_02083f80
ldr r0, [sp, #0x18]
cmp r0, #0
ldreq r0, [sp, #0x20]
cmpeq r0, #0
movne r0, #5
moveq r0, #7
add sp, sp, #0xcc
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
add sp, sp, #0x10
bx lr
.align 2, 0
arm_func_end func_ov58_0219a084
_0219a3a8: .word data_027e0e60
_0219a3ac: .word 0x0000ffff
_0219a3b0: .word data_ov58_0219b0f0
.global func_ov58_0219a3b4
arm_func_start func_ov58_0219a3b4
func_ov58_0219a3b4: ; 0x0219a3b4
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r3, lr}
ldrb r2, [sp, #0xc]
ldrb r1, [sp, #0xd]
sub r3, sp, #4
strb r2, [r3]
strb r1, [r3, #1]
ldr r1, [r3]
bl func_ov58_02199fd8
cmp r0, #7
addls pc, pc, r0, lsl #2
b _0219a414
_0219a3e4: ; jump table
b _0219a414 ; case 0
b _0219a404 ; case 1
b _0219a404 ; case 2
b _0219a404 ; case 3
b _0219a404 ; case 4
b _0219a414 ; case 5
b _0219a414 ; case 6
b _0219a404 ; case 7
_0219a404:
mov r0, #1
ldmia sp!, {r3, lr}
add sp, sp, #0x10
bx lr
_0219a414:
mov r0, #0
ldmia sp!, {r3, lr}
add sp, sp, #0x10
bx lr
arm_func_end func_ov58_0219a3b4
.global func_ov58_0219a424
arm_func_start func_ov58_0219a424
func_ov58_0219a424: ; 0x0219a424
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_ov58_0219a424
.global func_ov58_0219a440
arm_func_start func_ov58_0219a440
func_ov58_0219a440: ; 0x0219a440
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov00_02081f4c
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov58_0219a440
.global func_ov58_0219a454
arm_func_start func_ov58_0219a454
func_ov58_0219a454: ; 0x0219a454
stmdb sp!, {r3, lr}
ldr r1, _0219a474 ; =data_ov58_0219af58
mov r2, #1
bl func_ov00_020a89bc
ldr r0, _0219a478 ; =data_027e1098
ldr r0, [r0]
blx func_ov58_0219acac
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov58_0219a454
_0219a474: .word data_ov58_0219af58
_0219a478: .word data_027e1098
.global func_ov58_0219a47c
arm_func_start func_ov58_0219a47c
func_ov58_0219a47c: ; 0x0219a47c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #0x10
ldr r1, _0219a5a8 ; =data_027e077c
mov r5, r0
ldr r0, [r1]
cmp r0, #0xd
addne sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, _0219a5ac ; =data_027e103c
ldr r0, [r0]
bl func_ov00_020cf01c
ldrb r0, [r0, #0xe0]
cmp r0, #0
addeq sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, #0
strb r0, [r5, #0x24]
bl func_ov58_0219a5b8
blx func_ov58_02199400
movs r4, r0
mov r0, r5
beq _0219a59c
bl func_ov00_020a8cc4
ldr r1, [r4, #8]
str r1, [r0]
ldr r1, [r4, #0xc]
str r1, [r0, #4]
mov r0, r4
ldr r1, [r0]
ldr r1, [r1, #0x58]
blx r1
bl func_ov58_0219a5b8
mov r1, #0
bl func_ov14_0213ed94
ldrb r7, [r0]
ldrb r6, [r0, #1]
add r0, r4, #0x48
add lr, sp, #4
ldmia r0!, {r0, r1, r2}
stmia lr!, {r0, r1, r2}
ldr r3, _0219a5b0 ; =data_027e0e60
sub ip, sp, #4
ldr r0, [r3]
mov r1, lr
strb r7, [ip]
strb r6, [ip, #1]
ldr r2, [ip]
strb r7, [sp]
strb r6, [sp, #1]
bl func_ov00_02083c7c
bl func_020385b8
add r1, sp, #4
bl func_ov00_020ab8cc
mov r0, r5
add r1, sp, #4
bl func_ov00_020a81ec
ldr r0, _0219a5b4 ; =data_027e0fb8
mov r1, #0
ldr r2, [r0]
mov r0, r5
strb r1, [r2, #0x79]
strb r1, [r2, #0x7b]
mov r1, #2
bl func_ov00_020a8138
mov r0, r5
bl func_ov00_020a8c78
ldrsh r0, [r0]
strh r0, [r4, #0x78]
bl func_ov58_0219a5b8
bl func_ov14_0213ec40
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0219a59c:
bl func_ov05_02105d94
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov58_0219a47c
_0219a5a8: .word data_027e077c
_0219a5ac: .word data_027e103c
_0219a5b0: .word data_027e0e60
_0219a5b4: .word data_027e0fb8
.global func_ov58_0219a5b8
arm_func_start func_ov58_0219a5b8
func_ov58_0219a5b8: ; 0x0219a5b8
ldr ip, _0219a5c4 ; =func_01fffcec
mov r0, #7
bx ip
.align 2, 0
arm_func_end func_ov58_0219a5b8
_0219a5c4: .word func_01fffcec
.global func_ov58_0219a5c8
arm_func_start func_ov58_0219a5c8
func_ov58_0219a5c8: ; 0x0219a5c8
stmdb sp!, {r4, lr}
sub sp, sp, #8
ldr r1, _0219a694 ; =data_027e0cbc
mov r4, r0
ldr r0, [r1, #0x1c]
mvn r1, #0
cmp r0, #3
addls pc, pc, r0, lsl #2
b _0219a618
_0219a5ec: ; jump table
b _0219a5fc ; case 0
b _0219a604 ; case 1
b _0219a60c ; case 2
b _0219a614 ; case 3
_0219a5fc:
mov r1, #0x22
b _0219a618
_0219a604:
mov r1, #0x23
b _0219a618
_0219a60c:
mov r1, #0x24
b _0219a618
_0219a614:
mov r1, #0x25
_0219a618:
add r0, r4, #4
mov r2, #0
blx func_ov00_0207c0ac
ldrsh r1, [r4, #0xda]
mov r3, #0
ldr r0, _0219a698 ; =data_027e0c38
strh r1, [r4, #0xd8]
strb r3, [r4, #0xde]
strb r3, [r4, #0xdf]
strb r3, [r4, #0xe0]
ldr r0, [r0, #0x10]
mov r1, #3
cmp r0, #0
str r3, [sp]
add r0, r4, #0x50
bne _0219a668
mov r2, #4
str r3, [sp, #4]
bl func_020350b4
b _0219a674
_0219a668:
mov r2, #5
str r3, [sp, #4]
bl func_020350b4
_0219a674:
mov r1, #0
mov r2, r1
mov r3, r1
add r0, r4, #0x50
str r1, [sp]
bl func_020351b8
add sp, sp, #8
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov58_0219a5c8
_0219a694: .word data_027e0cbc
_0219a698: .word data_027e0c38
.global func_ov58_0219a69c
arm_func_start func_ov58_0219a69c
func_ov58_0219a69c: ; 0x0219a69c
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
ldr r1, _0219a768 ; =data_027e077c
mov sl, r0
ldr r0, [r1]
mov sb, #0
cmp r0, #0xd
bne _0219a760
mov r6, sb
mov r8, sl
add r7, sl, #8
mov fp, sb
mov r4, #1
mov r5, sb
_0219a6d0:
mov r0, r7
ldr ip, [r0]
mov r1, r5
ldr ip, [ip]
mov r2, r5
mov r3, r5
blx ip
tst r0, #8
beq _0219a74c
cmp r6, #0
cmpne r6, #1
beq _0219a718
cmp r6, #2
bne _0219a724
ldrb r0, [sl, #0xdf]
cmp r0, #0
beq _0219a724
b _0219a74c
_0219a718:
ldrb r0, [sl, #0xdf]
cmp r0, #0
beq _0219a74c
_0219a724:
cmp sb, #0
bne _0219a740
ldrh r1, [r8, #0x12]
mov r0, sl
bl func_ov58_0219a76c
cmp r0, #0
beq _0219a748
_0219a740:
mov sb, r4
b _0219a74c
_0219a748:
mov sb, fp
_0219a74c:
add r6, r6, #1
cmp r6, #3
add r7, r7, #0x18
add r8, r8, #0x18
blt _0219a6d0
_0219a760:
mov r0, sb
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
arm_func_end func_ov58_0219a69c
_0219a768: .word data_027e077c
.global func_ov58_0219a76c
arm_func_start func_ov58_0219a76c
func_ov58_0219a76c: ; 0x0219a76c
stmdb sp!, {r4, lr}
mov r4, r0
cmp r1, #0x40
beq _0219a790
cmp r1, #0x41
beq _0219a7b8
cmp r1, #0x42
beq _0219a7e0
b _0219a80c
_0219a790:
ldr r0, _0219a814 ; =data_ov00_020eec9c
mov r1, #0x11
bl func_ov00_020d77e4
ldr r0, _0219a818 ; =data_027e0fb8
mov r1, #0
ldr r2, [r0]
mov r0, #1
strb r1, [r2, #0x79]
strb r1, [r2, #0x7b]
ldmia sp!, {r4, pc}
_0219a7b8:
ldr r0, _0219a814 ; =data_ov00_020eec9c
mov r1, #5
bl func_ov00_020d77e4
mov r1, #0
ldr r0, _0219a81c ; =data_027e1098
strb r1, [r4, #0xdf]
ldr r0, [r0]
blx func_ov58_0219ad34
mov r0, #1
ldmia sp!, {r4, pc}
_0219a7e0:
ldr r0, _0219a814 ; =data_ov00_020eec9c
mov r1, #4
bl func_ov00_020d77e4
mov r1, #0
strb r1, [r4, #0xdf]
mov r2, #1
add r0, r4, #4
strb r2, [r4, #0xe0]
blx func_ov00_0207c0cc
mov r0, #1
ldmia sp!, {r4, pc}
_0219a80c:
mov r0, #0
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov58_0219a76c
_0219a814: .word data_ov00_020eec9c
_0219a818: .word data_027e0fb8
_0219a81c: .word data_027e1098
.global func_ov58_0219a820
arm_func_start func_ov58_0219a820
func_ov58_0219a820: ; 0x0219a820
stmdb sp!, {r3, r4, lr}
sub sp, sp, #0xc
cmp r1, #0
mov r4, r0
addne sp, sp, #0xc
ldmia sp!, {r3, r4, pc}
add r0, r4, #0x50
bl func_0203516c
ldrb r0, [r4, #0xdf]
cmp r0, #0
bne _0219a8f0
ldrb r1, [r4, #0xde]
cmp r1, #0
ldreq r0, _0219a984 ; =data_027e077c
ldreq r0, [r0]
cmpeq r0, #0xd
bne _0219a8d4
ldr r0, _0219a988 ; =data_027e0d78
ldrh r0, [r0, #0x34]
tst r0, #1
beq _0219a8d4
mov r1, #0
str r1, [sp]
ldr r0, _0219a98c ; =data_027e0d3c
ldr r1, _0219a990 ; =data_027e0f94
ldr r0, [r0]
add r2, sp, #8
add r3, sp, #4
bl func_ov00_0207914c
ldr r0, _0219a988 ; =data_027e0d78
ldr r1, [sp, #8]
ldr r0, [r0, #0x10]
subs r0, r1, r0
rsbmi r0, r0, #0
cmp r0, #8
bgt _0219a8f0
ldr r0, _0219a988 ; =data_027e0d78
ldr r1, [sp, #4]
ldr r0, [r0, #0x14]
subs r0, r1, r0
rsbmi r0, r0, #0
cmp r0, #8
movle r0, #1
strleb r0, [r4, #0xde]
b _0219a8f0
_0219a8d4:
cmp r1, #0
beq _0219a8f0
ldr r0, _0219a988 ; =data_027e0d78
ldrb r0, [r0, #0xc]
cmp r0, #0
moveq r0, #0
streqb r0, [r4, #0xde]
_0219a8f0:
ldr r0, _0219a984 ; =data_027e077c
ldr r0, [r0]
sub r0, r0, #0xb
cmp r0, #4
addls pc, pc, r0, lsl #2
b _0219a97c
_0219a908: ; jump table
b _0219a91c ; case 0
b _0219a91c ; case 1
b _0219a92c ; case 2
b _0219a974 ; case 3
b _0219a974 ; case 4
_0219a91c:
ldrsh r0, [r4, #0xda]
add sp, sp, #0xc
strh r0, [r4, #0xd8]
ldmia sp!, {r3, r4, pc}
_0219a92c:
ldr r0, _0219a994 ; =data_027e0fb4
mov r1, #7
ldr r0, [r0]
bl func_ov00_020ad714
ldr r0, [r0, #0x18]
cmp r0, #0
bgt _0219a954
ldrb r0, [r4, #0xdf]
cmp r0, #0
beq _0219a964
_0219a954:
add r0, r4, #0xd8
bl func_ov00_020d0594
add sp, sp, #0xc
ldmia sp!, {r3, r4, pc}
_0219a964:
add r0, r4, #0xd8
bl func_ov00_020d054c
add sp, sp, #0xc
ldmia sp!, {r3, r4, pc}
_0219a974:
add r0, r4, #0xd8
bl func_ov00_020d0594
_0219a97c:
add sp, sp, #0xc
ldmia sp!, {r3, r4, pc}
.align 2, 0
arm_func_end func_ov58_0219a820
_0219a984: .word data_027e077c
_0219a988: .word data_027e0d78
_0219a98c: .word data_027e0d3c
_0219a990: .word data_027e0f94
_0219a994: .word data_027e0fb4
.global func_ov58_0219a998
arm_func_start func_ov58_0219a998
func_ov58_0219a998: ; 0x0219a998
stmdb sp!, {r4, r5, lr}
sub sp, sp, #0x2c
ldr r1, _0219aabc ; =data_027e0618
mov r4, r0
ldrb r0, [r1, #0x101]
cmp r0, #0
addne sp, sp, #0x2c
ldmia sp!, {r4, r5, pc}
ldr r0, _0219aac0 ; =data_027e077c
ldr r5, [r0]
cmp r5, #0xc
cmpne r5, #0xd
cmpne r5, #0xe
addne sp, sp, #0x2c
ldmia sp!, {r4, r5, pc}
mov r0, r4
bl func_ov58_0219aad0
mov r1, #0
mov r2, r0
mov r3, r1
str r1, [sp]
add r0, r4, #0x38
bl func_ov00_020d00c4
ldrb r0, [r4, #0xdf]
cmp r0, #0
beq _0219aa44
add r0, sp, #0xc
bl func_01ffbe34
mov r1, #0
str r1, [sp, #0x10]
add r3, sp, #0xc
mov r2, r1
add r0, r4, #8
str r1, [sp]
bl func_ov00_020d00c4
mov r1, #0
add r3, sp, #0xc
mov r2, r1
add r0, r4, #0x20
str r1, [sp]
bl func_ov00_020d00c4
add sp, sp, #0x2c
ldmia sp!, {r4, r5, pc}
_0219aa44:
cmp r5, #0xd
addne sp, sp, #0x2c
ldmia sp!, {r4, r5, pc}
ldr r0, _0219aac4 ; =data_027e1098
ldrb r1, [r4, #0xde]
ldr r0, [r0]
cmp r1, #0
addne sp, sp, #0x2c
ldrh r0, [r0, #0x34]
ldmia sp!, {r4, r5, pc}
cmp r0, #0
addgt sp, sp, #0x2c
ldmia sp!, {r4, r5, pc}
mov r1, #0
str r1, [sp, #8]
str r1, [sp, #4]
str r1, [sp]
ldr r0, _0219aac8 ; =data_027e0d3c
ldr r1, _0219aacc ; =data_027e0f94
ldr r0, [r0]
add r2, sp, #8
add r3, sp, #4
bl func_ov00_0207914c
ldr r1, [sp, #8]
ldr r2, [sp, #4]
add r0, r4, #0x50
mov r3, #0
bl func_02034a1c
add sp, sp, #0x2c
ldmia sp!, {r4, r5, pc}
.align 2, 0
arm_func_end func_ov58_0219a998
_0219aabc: .word data_027e0618
_0219aac0: .word data_027e077c
_0219aac4: .word data_027e1098
_0219aac8: .word data_027e0d3c
_0219aacc: .word data_027e0f94
.global func_ov58_0219aad0
arm_func_start func_ov58_0219aad0
func_ov58_0219aad0: ; 0x0219aad0
stmdb sp!, {r3, lr}
ldrsh r3, [r0, #0xd8]
ldrsh r2, [r0, #0xda]
cmp r3, r2
moveq r2, #0
beq _0219ab10
ldrsh r1, [r0, #0xdc]
cmp r3, r1
moveq r2, #0x1000
beq _0219ab10
sub r0, r3, r2
sub r1, r1, r2
mov r0, r0, lsl #0xc
mov r1, r1, lsl #0xc
bl func_01ff98e0
mov r2, r0
_0219ab10:
mov r0, #0x20000
mov r1, #0
bl func_ov00_020d03f8
add r0, r0, #0x800
mov r0, r0, asr #0xc
ldmia sp!, {r3, pc}
arm_func_end func_ov58_0219aad0
.global func_ov58_0219ab28
thumb_func_start func_ov58_0219ab28
func_ov58_0219ab28: ; 0x0219ab28
push {r4, r5, r6, r7, lr}
sub sp, #0x24
add r5, r0, #0
ldr r0, _0219ac94 ; =data_027e077c
ldr r0, [r0]
cmp r0, #0x33
bgt _0219ab50
bge _0219ab5a
cmp r0, #0xe
bgt _0219ab66
cmp r0, #0xc
blt _0219ab66
beq _0219ab8c
cmp r0, #0xd
beq _0219abb0
cmp r0, #0xe
bne _0219ab4c
b _0219ac62
_0219ab4c:
add sp, #0x24
pop {r4, r5, r6, r7, pc}
_0219ab50:
cmp r0, #0x34
bne _0219ab56
b _0219ac7a
_0219ab56:
add sp, #0x24
pop {r4, r5, r6, r7, pc}
_0219ab5a:
ldr r0, _0219ac98 ; =data_027e0d3c
ldr r0, [r0]
blx func_ov00_02078fd4
cmp r0, #0
beq _0219ab68
_0219ab66:
b _0219ac8e
_0219ab68:
mov r0, #0x4a
ldrsb r0, [r5, r0]
cmp r0, #1
bgt _0219ab82
mov r0, #0
add r5, #0x4a
strb r0, [r5]
ldr r0, _0219ac94 ; =data_027e077c
mov r1, #0xb
blx func_0202e740
add sp, #0x24
pop {r4, r5, r6, r7, pc}
_0219ab82:
sub r0, r0, #1
add r5, #0x4a
add sp, #0x24
strb r0, [r5]
pop {r4, r5, r6, r7, pc}
_0219ab8c:
ldr r0, _0219ac98 ; =data_027e0d3c
ldr r0, [r0]
blx func_ov00_02078fd4
cmp r0, #0
bne _0219ac8e
ldr r0, _0219ac98 ; =data_027e0d3c
ldr r0, [r0]
blx func_ov00_02078fac
cmp r0, #1
bne _0219ac8e
ldr r0, _0219ac94 ; =data_027e077c
mov r1, #0xd
blx func_0202e740
add sp, #0x24
pop {r4, r5, r6, r7, pc}
_0219abb0:
ldr r0, _0219ac9c ; =data_027e0d78
ldrb r0, [r0, #0xc]
cmp r0, #0
beq _0219ac8e
ldr r0, [r5, #0x38]
add r0, #0xde
ldrb r0, [r0]
cmp r0, #0
beq _0219ac8e
ldr r0, _0219aca0 ; =data_027e0fb4
ldr r0, [r0]
ldr r1, [r0]
cmp r1, #7
bne _0219ac8e
ldr r1, _0219aca4 ; =data_027e103c
ldr r2, [r1]
mov r1, #0x1c
ldrsh r1, [r2, r1]
cmp r1, #0x40
beq _0219ac8e
ldrh r2, [r5, #0x34]
ldrh r1, [r5, #0x2c]
cmp r2, r1
bhs _0219ac8e
mov r1, #7
blx func_ov00_020ad714
add r4, r0, #0
beq _0219ac8e
ldr r0, _0219ac9c ; =data_027e0d78
mov r3, #0x1e
ldr r6, [r0, #0x10]
ldr r7, [r0, #0x14]
ldr r0, _0219aca8 ; =data_ov00_020ee6f8
add r1, r6, #0
add r2, r7, #0
blx func_ov00_020d61b0
add r0, sp, #0xc
str r0, [sp]
ldr r0, _0219ac98 ; =data_027e0d3c
mov r1, #1
ldr r0, [r0]
add r2, r6, #0
add r3, r7, #0
blx func_ov00_020792a0
ldr r0, [sp, #0xc]
add r6, sp, #0x18
str r0, [sp, #0x18]
ldr r0, [sp, #0x10]
add r7, sp, #4
str r0, [sp, #0x1c]
ldr r0, [sp, #0x14]
str r0, [sp, #0x20]
b _0219ac4a
_0219ac20:
mov r0, #0
mvn r0, r0
str r0, [sp, #4]
str r0, [sp, #8]
ldr r0, _0219ac98 ; =data_027e0d3c
add r1, r6, #0
ldr r0, [r0]
add r2, r7, #0
mov r3, #0
blx func_ov00_020791dc
add r0, r5, #0
add r1, r7, #0
blx func_ov05_0210cc00
ldr r0, [sp, #0xc]
str r0, [sp, #0x18]
ldr r0, [sp, #0x10]
str r0, [sp, #0x1c]
ldr r0, [sp, #0x14]
str r0, [sp, #0x20]
_0219ac4a:
ldrh r1, [r5, #0x34]
ldrh r0, [r5, #0x2c]
cmp r1, r0
bhs _0219ac8e
add r0, r4, #0
add r1, r6, #0
bl func_ov58_02199498
cmp r0, #0
bne _0219ac20
add sp, #0x24
pop {r4, r5, r6, r7, pc}
_0219ac62:
ldr r0, _0219ac98 ; =data_027e0d3c
ldr r0, [r0]
blx func_ov00_02078fd4
cmp r0, #0
bne _0219ac8e
ldr r0, _0219ac94 ; =data_027e077c
mov r1, #0xf
blx func_0202e740
add sp, #0x24
pop {r4, r5, r6, r7, pc}
_0219ac7a:
ldr r0, _0219ac98 ; =data_027e0d3c
ldr r0, [r0]
blx func_ov00_02078fd4
cmp r0, #0
bne _0219ac8e
ldr r0, _0219ac94 ; =data_027e077c
mov r1, #1
blx func_0202e740
_0219ac8e:
add sp, #0x24
pop {r4, r5, r6, r7, pc}
nop
thumb_func_end func_ov58_0219ab28
_0219ac94: .word data_027e077c
_0219ac98: .word data_027e0d3c
_0219ac9c: .word data_027e0d78
_0219aca0: .word data_027e0fb4
_0219aca4: .word data_027e103c
_0219aca8: .word data_ov00_020ee6f8
.global func_ov58_0219acac
thumb_func_start func_ov58_0219acac
func_ov58_0219acac: ; 0x0219acac
push {r4, lr}
add r4, r0, #0
ldr r0, _0219ad28 ; =data_027e0d3c
ldr r0, [r0]
blx func_ov00_02078fac
cmp r0, #2
bne _0219acde
ldr r0, _0219ad2c ; =data_027e0d38
ldr r0, [r0]
add r0, #0xc
blx func_ov00_020a5e9c
cmp r0, #0x2e
bne _0219acd4
add r0, r4, #0
mov r1, #0
add r0, #0x49
strb r1, [r0]
b _0219ace6
_0219acd4:
add r0, r4, #0
mov r1, #2
add r0, #0x49
strb r1, [r0]
b _0219ace6
_0219acde:
add r0, r4, #0
mov r1, #1
add r0, #0x49
strb r1, [r0]
_0219ace6:
add r0, r4, #0
mov r1, #0
add r0, #0x4a
strb r1, [r0]
ldr r0, _0219ad30 ; =data_027e077c
ldr r0, [r0]
cmp r0, #1
bne _0219ad12
add r0, r4, #0
add r0, #0x49
ldrb r0, [r0]
cmp r0, #2
bne _0219ad04
mov r1, #0x33
b _0219ad06
_0219ad04:
mov r1, #0xb
_0219ad06:
ldr r0, _0219ad30 ; =data_027e077c
blx func_0202e740
add r0, r4, #0
blx func_ov00_02079b78
_0219ad12:
ldr r2, [r4, #0x38]
mov r1, #0
add r0, r2, #0
add r0, #0xde
strb r1, [r0]
add r0, r2, #0
add r0, #0xdf
strb r1, [r0]
add r2, #0xe0
strb r1, [r2]
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov58_0219acac
_0219ad28: .word data_027e0d3c
_0219ad2c: .word data_027e0d38
_0219ad30: .word data_027e077c
.global func_ov58_0219ad34
thumb_func_start func_ov58_0219ad34
func_ov58_0219ad34: ; 0x0219ad34
push {r4, lr}
add r4, r0, #0
blx func_ov00_02079b78
add r0, r4, #0
mov r1, #0
add r0, #0x48
strb r1, [r0]
mov r0, #1
lsl r0, r0, #0xc
str r0, [r4, #0x3c]
lsl r0, r0, #7
str r0, [r4, #0x40]
mov r0, #6
lsl r0, r0, #0x10
str r0, [r4, #0x44]
blx func_ov58_0219a5b8
bl func_ov14_0213eda0
blx func_ov58_0219a5b8
blx func_ov14_0213ec64
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov58_0219ad34
.global data_ov58_0219ad68
data_ov58_0219ad68: ; 0x0219ad68
.ascii "bomchu_pt"
.byte 0x00, 0x00, 0x00
.global data_ov58_0219ad74
data_ov58_0219ad74: ; 0x0219ad74
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov58_0219ad78
data_ov58_0219ad78: ; 0x0219ad78
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov58_0219ad7c
data_ov58_0219ad7c: ; 0x0219ad7c
.byte 0x64, 0x00, 0x00, 0x00
.global func_ov58_0219ad80
arm_func_start func_ov58_0219ad80
func_ov58_0219ad80: ; 0x0219ad80
stmdb sp!, {r3, lr}
ldr r0, _0219ae3c ; =data_ov58_0219afcc
mov r1, #0
blx func_ov00_020a9588
ldr r0, _0219ae3c ; =data_ov58_0219afcc
ldr r1, _0219ae40 ; =0x020a95a5
ldr r2, _0219ae44 ; =data_ov58_0219afc0
bl func_0204f8d4
ldr r0, _0219ae48 ; =data_ov58_0219b034
mov r1, #0
blx func_ov00_020a9588
ldr r0, _0219ae48 ; =data_ov58_0219b034
ldr r1, _0219ae40 ; =0x020a95a5
ldr r2, _0219ae4c ; =data_ov58_0219b028
bl func_0204f8d4
ldr r0, _0219ae50 ; =data_ov58_0219b0a0
ldr r1, _0219ae54 ; =data_ov58_0219b0c4
mov r2, #0
blx func_ov00_020c0c08
ldr r2, _0219ae58 ; =data_ov58_0219af10
ldr r1, _0219ae5c ; =data_ov58_0219afc0
ldr r0, _0219ae50 ; =data_ov58_0219b0a0
str r2, [r1, #0xe0]
ldr r1, _0219ae60 ; =0x020a9aad
ldr r2, _0219ae64 ; =data_ov58_0219b094
bl func_0204f8d4
ldr r0, _0219ae68 ; =data_ov58_0219b0f0
mov r1, #3
bl func_ov00_020beba8
ldr r0, _0219ae6c ; =data_ov14_02155fb0
ldr r1, _0219ae5c ; =data_ov58_0219afc0
mov r3, #0
str r0, [r1, #0x130]
str r3, [r1, #0x13c]
ldr r2, _0219ae70 ; =data_ov58_0219aeec
ldr r0, _0219ae68 ; =data_ov58_0219b0f0
str r2, [r1, #0x130]
strb r3, [r1, #0x140]
strb r3, [r1, #0x141]
ldr r1, _0219ae74 ; =func_ov58_0219a440
ldr r2, _0219ae78 ; =data_ov58_0219b0e4
bl func_0204f8d4
mov r1, #0
ldr r0, _0219ae5c ; =data_ov58_0219afc0
strb r1, [r0, #0x150]
strb r1, [r0, #0x151]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov58_0219ad80
_0219ae3c: .word data_ov58_0219afcc
_0219ae40: .word 0x020a95a5
_0219ae44: .word data_ov58_0219afc0
_0219ae48: .word data_ov58_0219b034
_0219ae4c: .word data_ov58_0219b028
_0219ae50: .word data_ov58_0219b0a0
_0219ae54: .word data_ov58_0219b0c4
_0219ae58: .word data_ov58_0219af10
_0219ae5c: .word data_ov58_0219afc0
_0219ae60: .word 0x020a9aad
_0219ae64: .word data_ov58_0219b094
_0219ae68: .word data_ov58_0219b0f0
_0219ae6c: .word data_ov14_02155fb0
_0219ae70: .word data_ov58_0219aeec
_0219ae74: .word func_ov58_0219a440
_0219ae78: .word data_ov58_0219b0e4
.global data_ov58_0219ae7c
data_ov58_0219ae7c: ; 0x0219ae7c
.byte 0x80, 0xad, 0x19, 0x02
.global data_ov58_0219ae80
data_ov58_0219ae80: ; 0x0219ae80
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov58_0219ae84
data_ov58_0219ae84: ; 0x0219ae84
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov58_0219ae88
data_ov58_0219ae88: ; 0x0219ae88
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov58_0219ae8c
data_ov58_0219ae8c: ; 0x0219ae8c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov58_0219ae90
data_ov58_0219ae90: ; 0x0219ae90
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov58_0219ae94
data_ov58_0219ae94: ; 0x0219ae94
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov58_0219ae98
data_ov58_0219ae98: ; 0x0219ae98
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov58_0219ae9c
data_ov58_0219ae9c: ; 0x0219ae9c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov58_0219aea0
data_ov58_0219aea0: ; 0x0219aea0
.ascii "brg"
.byte 0x00
.global data_ov58_0219aea4
data_ov58_0219aea4: ; 0x0219aea4
.ascii "fnl"
.byte 0x00
.global data_ov58_0219aea8
data_ov58_0219aea8: ; 0x0219aea8
.ascii "pdl"
.byte 0x00
.global data_ov58_0219aeac
data_ov58_0219aeac: ; 0x0219aeac
.ascii "dco"
.byte 0x00
.global data_ov58_0219aeb0
data_ov58_0219aeb0: ; 0x0219aeb0
.ascii "can"
.byte 0x00
.global data_ov58_0219aeb4
data_ov58_0219aeb4: ; 0x0219aeb4
.ascii "hul"
.byte 0x00
.global data_ov58_0219aeb8
data_ov58_0219aeb8: ; 0x0219aeb8
.ascii "bow"
.byte 0x00
.global data_ov58_0219aebc
data_ov58_0219aebc: ; 0x0219aebc
.ascii "anc"
.byte 0x00
.global data_ov58_0219aec0
data_ov58_0219aec0: ; 0x0219aec0
.byte 0xbc, 0xae, 0x19, 0x02
.global data_ov58_0219aec4
data_ov58_0219aec4: ; 0x0219aec4
.byte 0xb8, 0xae, 0x19, 0x02
.global data_ov58_0219aec8
data_ov58_0219aec8: ; 0x0219aec8
.byte 0xb4, 0xae, 0x19, 0x02
.global data_ov58_0219aecc
data_ov58_0219aecc: ; 0x0219aecc
.byte 0xb0, 0xae, 0x19, 0x02
.global data_ov58_0219aed0
data_ov58_0219aed0: ; 0x0219aed0
.byte 0xac, 0xae, 0x19, 0x02
.global data_ov58_0219aed4
data_ov58_0219aed4: ; 0x0219aed4
.byte 0xa8, 0xae, 0x19, 0x02
.global data_ov58_0219aed8
data_ov58_0219aed8: ; 0x0219aed8
.byte 0xa4, 0xae, 0x19, 0x02
.global data_ov58_0219aedc
data_ov58_0219aedc: ; 0x0219aedc
.byte 0xa0, 0xae, 0x19, 0x02
.global data_ov58_0219aee0
data_ov58_0219aee0: ; 0x0219aee0
.byte 0xff, 0xff, 0xff, 0xff
.global data_ov58_0219aee4
data_ov58_0219aee4: ; 0x0219aee4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov58_0219aee8
data_ov58_0219aee8: ; 0x0219aee8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov58_0219aeec
data_ov58_0219aeec: ; 0x0219aeec
.byte 0x40, 0xa4, 0x19, 0x02
.global data_ov58_0219aef0
data_ov58_0219aef0: ; 0x0219aef0
.byte 0x24, 0xa4, 0x19, 0x02
.global data_ov58_0219aef4
data_ov58_0219aef4: ; 0x0219aef4
.byte 0x00, 0x8d, 0x19, 0x02
.global data_ov58_0219aef8
data_ov58_0219aef8: ; 0x0219aef8
.byte 0x40, 0x40, 0x12, 0x02
.global data_ov58_0219aefc
data_ov58_0219aefc: ; 0x0219aefc
.byte 0x74, 0x8f, 0x19, 0x02
.global data_ov58_0219af00
data_ov58_0219af00: ; 0x0219af00
.byte 0xfc, 0x8e, 0x19, 0x02
.global data_ov58_0219af04
data_ov58_0219af04: ; 0x0219af04
.byte 0x7c, 0xed, 0x0b, 0x02
.global data_ov58_0219af08
data_ov58_0219af08: ; 0x0219af08
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov58_0219af0c
data_ov58_0219af0c: ; 0x0219af0c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov58_0219af10
data_ov58_0219af10: ; 0x0219af10
.byte 0xad, 0x9a, 0x0a, 0x02
.global data_ov58_0219af14
data_ov58_0219af14: ; 0x0219af14
.byte 0xb9, 0x9a, 0x0a, 0x02
.global data_ov58_0219af18
data_ov58_0219af18: ; 0x0219af18
.ascii "brg"
.byte 0x00
.global data_ov58_0219af1c
data_ov58_0219af1c: ; 0x0219af1c
.ascii "fnl"
.byte 0x00
.global data_ov58_0219af20
data_ov58_0219af20: ; 0x0219af20
.ascii "pdl"
.byte 0x00
.global data_ov58_0219af24
data_ov58_0219af24: ; 0x0219af24
.ascii "dco"
.byte 0x00
.global data_ov58_0219af28
data_ov58_0219af28: ; 0x0219af28
.ascii "can"
.byte 0x00
.global data_ov58_0219af2c
data_ov58_0219af2c: ; 0x0219af2c
.ascii "hul"
.byte 0x00
.global data_ov58_0219af30
data_ov58_0219af30: ; 0x0219af30
.ascii "bow"
.byte 0x00
.global data_ov58_0219af34
data_ov58_0219af34: ; 0x0219af34
.ascii "anc"
.byte 0x00
.global data_ov58_0219af38
data_ov58_0219af38: ; 0x0219af38
.byte 0x34, 0xaf, 0x19, 0x02
.global data_ov58_0219af3c
data_ov58_0219af3c: ; 0x0219af3c
.byte 0x30, 0xaf, 0x19, 0x02
.global data_ov58_0219af40
data_ov58_0219af40: ; 0x0219af40
.byte 0x2c, 0xaf, 0x19, 0x02
.global data_ov58_0219af44
data_ov58_0219af44: ; 0x0219af44
.byte 0x28, 0xaf, 0x19, 0x02
.global data_ov58_0219af48
data_ov58_0219af48: ; 0x0219af48
.byte 0x24, 0xaf, 0x19, 0x02
.global data_ov58_0219af4c
data_ov58_0219af4c: ; 0x0219af4c
.byte 0x20, 0xaf, 0x19, 0x02
.global data_ov58_0219af50
data_ov58_0219af50: ; 0x0219af50
.byte 0x1c, 0xaf, 0x19, 0x02
.global data_ov58_0219af54
data_ov58_0219af54: ; 0x0219af54
.byte 0x18, 0xaf, 0x19, 0x02
.global data_ov58_0219af58
data_ov58_0219af58: ; 0x0219af58
.byte 0x1e, 0x00, 0x00, 0x00
.global data_ov58_0219af5c
data_ov58_0219af5c: ; 0x0219af5c
.byte 0x99, 0x19, 0x00, 0x00
.global data_ov58_0219af60
data_ov58_0219af60: ; 0x0219af60
.byte 0x00, 0x20, 0x00, 0x00
.global data_ov58_0219af64
data_ov58_0219af64: ; 0x0219af64
.byte 0x00, 0xa0, 0x00, 0x00
.global data_ov58_0219af68
data_ov58_0219af68: ; 0x0219af68
.ascii "brg"
.byte 0x00
.global data_ov58_0219af6c
data_ov58_0219af6c: ; 0x0219af6c
.ascii "fnl"
.byte 0x00
.global data_ov58_0219af70
data_ov58_0219af70: ; 0x0219af70
.ascii "pdl"
.byte 0x00
.global data_ov58_0219af74
data_ov58_0219af74: ; 0x0219af74
.ascii "dco"
.byte 0x00
.global data_ov58_0219af78
data_ov58_0219af78: ; 0x0219af78
.ascii "can"
.byte 0x00
.global data_ov58_0219af7c
data_ov58_0219af7c: ; 0x0219af7c
.ascii "hul"
.byte 0x00
.global data_ov58_0219af80
data_ov58_0219af80: ; 0x0219af80
.ascii "bow"
.byte 0x00
.global data_ov58_0219af84
data_ov58_0219af84: ; 0x0219af84
.ascii "anc"
.byte 0x00
.global data_ov58_0219af88
data_ov58_0219af88: ; 0x0219af88
.byte 0x84, 0xaf, 0x19, 0x02
.global data_ov58_0219af8c
data_ov58_0219af8c: ; 0x0219af8c
.byte 0x80, 0xaf, 0x19, 0x02
.global data_ov58_0219af90
data_ov58_0219af90: ; 0x0219af90
.byte 0x7c, 0xaf, 0x19, 0x02
.global data_ov58_0219af94
data_ov58_0219af94: ; 0x0219af94
.byte 0x78, 0xaf, 0x19, 0x02
.global data_ov58_0219af98
data_ov58_0219af98: ; 0x0219af98
.byte 0x74, 0xaf, 0x19, 0x02
.global data_ov58_0219af9c
data_ov58_0219af9c: ; 0x0219af9c
.byte 0x70, 0xaf, 0x19, 0x02
.global data_ov58_0219afa0
data_ov58_0219afa0: ; 0x0219afa0
.byte 0x6c, 0xaf, 0x19, 0x02
.global data_ov58_0219afa4
data_ov58_0219afa4: ; 0x0219afa4
.byte 0x68, 0xaf, 0x19, 0x02
.global data_ov58_0219afa8
data_ov58_0219afa8: ; 0x0219afa8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov58_0219afac
data_ov58_0219afac: ; 0x0219afac
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov58_0219afb0
data_ov58_0219afb0: ; 0x0219afb0
.byte 0x9c, 0xa6, 0x19, 0x02
.global data_ov58_0219afb4
data_ov58_0219afb4: ; 0x0219afb4
.byte 0x20, 0xa8, 0x19, 0x02
.global data_ov58_0219afb8
data_ov58_0219afb8: ; 0x0219afb8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov58_0219afbc
data_ov58_0219afbc: ; 0x0219afbc
.byte 0x00, 0x00, 0x00, 0x00
; 0x0219afc0
.bss
.global data_ov58_0219afc0
data_ov58_0219afc0:
.space 0x4
.global data_ov58_0219afc4
data_ov58_0219afc4:
.space 0x4
.global data_ov58_0219afc8
data_ov58_0219afc8:
.space 0x4
.global data_ov58_0219afcc
data_ov58_0219afcc:
.space 0x4
.global data_ov58_0219afd0
data_ov58_0219afd0:
.space 0x4
.global data_ov58_0219afd4
data_ov58_0219afd4:
.space 0x4
.global data_ov58_0219afd8
data_ov58_0219afd8:
.space 0x4
.global data_ov58_0219afdc
data_ov58_0219afdc:
.space 0x4
.global data_ov58_0219afe0
data_ov58_0219afe0:
.space 0x4
.global data_ov58_0219afe4
data_ov58_0219afe4:
.space 0x4
.global data_ov58_0219afe8
data_ov58_0219afe8:
.space 0x4
.global data_ov58_0219afec
data_ov58_0219afec:
.space 0x4
.global data_ov58_0219aff0
data_ov58_0219aff0:
.space 0x4
.global data_ov58_0219aff4
data_ov58_0219aff4:
.space 0x4
.global data_ov58_0219aff8
data_ov58_0219aff8:
.space 0x4
.global data_ov58_0219affc
data_ov58_0219affc:
.space 0x4
.global data_ov58_0219b000
data_ov58_0219b000:
.space 0x4
.global data_ov58_0219b004
data_ov58_0219b004:
.space 0x4
.global data_ov58_0219b008
data_ov58_0219b008:
.space 0x4
.global data_ov58_0219b00c
data_ov58_0219b00c:
.space 0x4
.global data_ov58_0219b010
data_ov58_0219b010:
.space 0x4
.global data_ov58_0219b014
data_ov58_0219b014:
.space 0x4
.global data_ov58_0219b018
data_ov58_0219b018:
.space 0x4
.global data_ov58_0219b01c
data_ov58_0219b01c:
.space 0x4
.global data_ov58_0219b020
data_ov58_0219b020:
.space 0x4
.global data_ov58_0219b024
data_ov58_0219b024:
.space 0x4
.global data_ov58_0219b028
data_ov58_0219b028:
.space 0x4
.global data_ov58_0219b02c
data_ov58_0219b02c:
.space 0x4
.global data_ov58_0219b030
data_ov58_0219b030:
.space 0x4
.global data_ov58_0219b034
data_ov58_0219b034:
.space 0x4
.global data_ov58_0219b038
data_ov58_0219b038:
.space 0x4
.global data_ov58_0219b03c
data_ov58_0219b03c:
.space 0x4
.global data_ov58_0219b040
data_ov58_0219b040:
.space 0x4
.global data_ov58_0219b044
data_ov58_0219b044:
.space 0x4
.global data_ov58_0219b048
data_ov58_0219b048:
.space 0x4
.global data_ov58_0219b04c
data_ov58_0219b04c:
.space 0x4
.global data_ov58_0219b050
data_ov58_0219b050:
.space 0x4
.global data_ov58_0219b054
data_ov58_0219b054:
.space 0x4
.global data_ov58_0219b058
data_ov58_0219b058:
.space 0x4
.global data_ov58_0219b05c
data_ov58_0219b05c:
.space 0x4
.global data_ov58_0219b060
data_ov58_0219b060:
.space 0x4
.global data_ov58_0219b064
data_ov58_0219b064:
.space 0x4
.global data_ov58_0219b068
data_ov58_0219b068:
.space 0x4
.global data_ov58_0219b06c
data_ov58_0219b06c:
.space 0x4
.global data_ov58_0219b070
data_ov58_0219b070:
.space 0x4
.global data_ov58_0219b074
data_ov58_0219b074:
.space 0x4
.global data_ov58_0219b078
data_ov58_0219b078:
.space 0x4
.global data_ov58_0219b07c
data_ov58_0219b07c:
.space 0x4
.global data_ov58_0219b080
data_ov58_0219b080:
.space 0x4
.global data_ov58_0219b084
data_ov58_0219b084:
.space 0x4
.global data_ov58_0219b088
data_ov58_0219b088:
.space 0x4
.global data_ov58_0219b08c
data_ov58_0219b08c:
.space 0x4
.global data_ov58_0219b090
data_ov58_0219b090:
.space 0x4
.global data_ov58_0219b094
data_ov58_0219b094:
.space 0x4
.global data_ov58_0219b098
data_ov58_0219b098:
.space 0x4
.global data_ov58_0219b09c
data_ov58_0219b09c:
.space 0x4
.global data_ov58_0219b0a0
data_ov58_0219b0a0:
.space 0x4
.global data_ov58_0219b0a4
data_ov58_0219b0a4:
.space 0x4
.global data_ov58_0219b0a8
data_ov58_0219b0a8:
.space 0x4
.global data_ov58_0219b0ac
data_ov58_0219b0ac:
.space 0x4
.global data_ov58_0219b0b0
data_ov58_0219b0b0:
.space 0x4
.global data_ov58_0219b0b4
data_ov58_0219b0b4:
.space 0x4
.global data_ov58_0219b0b8
data_ov58_0219b0b8:
.space 0x4
.global data_ov58_0219b0bc
data_ov58_0219b0bc:
.space 0x4
.global data_ov58_0219b0c0
data_ov58_0219b0c0:
.space 0x4
.global data_ov58_0219b0c4
data_ov58_0219b0c4:
.space 0x4
.global data_ov58_0219b0c8
data_ov58_0219b0c8:
.space 0x4
.global data_ov58_0219b0cc
data_ov58_0219b0cc:
.space 0x4
.global data_ov58_0219b0d0
data_ov58_0219b0d0:
.space 0x4
.global data_ov58_0219b0d4
data_ov58_0219b0d4:
.space 0x4
.global data_ov58_0219b0d8
data_ov58_0219b0d8:
.space 0x4
.global data_ov58_0219b0dc
data_ov58_0219b0dc:
.space 0x4
.global data_ov58_0219b0e0
data_ov58_0219b0e0:
.space 0x4
.global data_ov58_0219b0e4
data_ov58_0219b0e4:
.space 0x4
.global data_ov58_0219b0e8
data_ov58_0219b0e8:
.space 0x4
.global data_ov58_0219b0ec
data_ov58_0219b0ec:
.space 0x4
.global data_ov58_0219b0f0
data_ov58_0219b0f0:
.space 0x4
.global data_ov58_0219b0f4
data_ov58_0219b0f4:
.space 0x4
.global data_ov58_0219b0f8
data_ov58_0219b0f8:
.space 0x4
.global data_ov58_0219b0fc
data_ov58_0219b0fc:
.space 0x4
.global data_ov58_0219b100
data_ov58_0219b100:
.space 0x1
.global data_ov58_0219b101
data_ov58_0219b101:
.space 0x1
.global data_ov58_0219b102
data_ov58_0219b102:
.space 0x1
.global data_ov58_0219b103
data_ov58_0219b103:
.space 0x1
.global data_ov58_0219b104
data_ov58_0219b104:
.space 0x4
.global data_ov58_0219b108
data_ov58_0219b108:
.space 0x4
.global data_ov58_0219b10c
data_ov58_0219b10c:
.space 0x4
.global data_ov58_0219b110
data_ov58_0219b110:
.space 0x1
.global data_ov58_0219b111
data_ov58_0219b111:
.space 0x1
.global data_ov58_0219b112
data_ov58_0219b112:
.space 0x1
.global data_ov58_0219b113
data_ov58_0219b113:
.space 0x1
.global data_ov58_0219b114
data_ov58_0219b114:
.space 0x1
.global data_ov58_0219b115
data_ov58_0219b115:
.space 0x1
.global data_ov58_0219b116
data_ov58_0219b116:
.space 0x1
.global data_ov58_0219b117
data_ov58_0219b117:
.space 0x1
.global data_ov58_0219b118
data_ov58_0219b118:
.space 0x1
.global data_ov58_0219b119
data_ov58_0219b119:
.space 0x1
.global data_ov58_0219b11a
data_ov58_0219b11a:
.space 0x1
.global data_ov58_0219b11b
data_ov58_0219b11b:
.space 0x1
.global data_ov58_0219b11c
data_ov58_0219b11c:
.space 0x1
.global data_ov58_0219b11d
data_ov58_0219b11d:
.space 0x1
.global data_ov58_0219b11e
data_ov58_0219b11e:
.space 0x2