Files
ph/asm/ov61.s
T
2024-04-16 18:18:21 +02:00

92313 lines
1.8 MiB
Plaintext

.include "macros/function.inc"
.include "ov61.inc"
.text
.global func_ov61_0213dec0
arm_func_start func_ov61_0213dec0
func_ov61_0213dec0: ; 0x0213dec0
cmp r0, #0
ldrne r1, _0213dedc ; =data_ov61_0217ea20
ldrne r1, [r1, #4]
strne r1, [r0]
ldr r0, _0213dedc ; =data_ov61_0217ea20
ldr r0, [r0]
bx lr
.align 2, 0
arm_func_end func_ov61_0213dec0
_0213dedc: .word data_ov61_0217ea20
.global func_ov61_0213dee0
arm_func_start func_ov61_0213dee0
func_ov61_0213dee0: ; 0x0213dee0
cmp r0, #0
ldrne r2, _0213dfc8 ; =data_ov61_0217ea20
ldrne r2, [r2, #4]
strne r2, [r0]
cmp r1, #0
beq _0213dfbc
ldr r0, _0213dfc8 ; =data_ov61_0217ea20
ldr r0, [r0]
cmp r0, #0x11
addls pc, pc, r0, lsl #2
b _0213dfb4
_0213df0c: ; jump table
b _0213dfb4 ; case 0
b _0213df84 ; case 1
b _0213df54 ; case 2
b _0213df54 ; case 3
b _0213df54 ; case 4
b _0213df54 ; case 5
b _0213df60 ; case 6
b _0213df6c ; case 7
b _0213df54 ; case 8
b _0213df84 ; case 9
b _0213df78 ; case 10
b _0213df78 ; case 11
b _0213df78 ; case 12
b _0213df78 ; case 13
b _0213df90 ; case 14
b _0213df9c ; case 15
b _0213dfa8 ; case 16
b _0213df9c ; case 17
_0213df54:
mov r0, #6
str r0, [r1]
b _0213dfbc
_0213df60:
mov r0, #3
str r0, [r1]
b _0213dfbc
_0213df6c:
mov r0, #4
str r0, [r1]
b _0213dfbc
_0213df78:
mov r0, #1
str r0, [r1]
b _0213dfbc
_0213df84:
mov r0, #7
str r0, [r1]
b _0213dfbc
_0213df90:
mov r0, #5
str r0, [r1]
b _0213dfbc
_0213df9c:
mov r0, #6
str r0, [r1]
b _0213dfbc
_0213dfa8:
mov r0, #2
str r0, [r1]
b _0213dfbc
_0213dfb4:
mov r0, #0
str r0, [r1]
_0213dfbc:
ldr r0, _0213dfc8 ; =data_ov61_0217ea20
ldr r0, [r0]
bx lr
.align 2, 0
arm_func_end func_ov61_0213dee0
_0213dfc8: .word data_ov61_0217ea20
.global func_ov61_0213dfcc
arm_func_start func_ov61_0213dfcc
func_ov61_0213dfcc: ; 0x0213dfcc
ldr r0, _0213dfe8 ; =data_ov61_0217ea20
ldr r1, [r0]
cmp r1, #9
movne r1, #0
strne r1, [r0]
strne r1, [r0, #4]
bx lr
.align 2, 0
arm_func_end func_ov61_0213dfcc
_0213dfe8: .word data_ov61_0217ea20
.global func_ov61_0213dfec
arm_func_start func_ov61_0213dfec
func_ov61_0213dfec: ; 0x0213dfec
ldr r0, _0213e004 ; =data_ov61_0217ea20
ldr r0, [r0]
cmp r0, #0
movne r0, #1
moveq r0, #0
bx lr
.align 2, 0
arm_func_end func_ov61_0213dfec
_0213e004: .word data_ov61_0217ea20
.global func_ov61_0213e008
arm_func_start func_ov61_0213e008
func_ov61_0213e008: ; 0x0213e008
ldr r2, _0213e01c ; =data_ov61_0217ea20
ldr r3, [r2]
cmp r3, #9
stmneia r2, {r0, r1}
bx lr
.align 2, 0
arm_func_end func_ov61_0213e008
_0213e01c: .word data_ov61_0217ea20
.global func_ov61_0213e020
arm_func_start func_ov61_0213e020
func_ov61_0213e020: ; 0x0213e020
ldr r2, _0213e030 ; =data_ov61_0217ea28
str r0, [r2, #4]
str r1, [r2]
bx lr
.align 2, 0
arm_func_end func_ov61_0213e020
_0213e030: .word data_ov61_0217ea28
.global func_ov61_0213e034
arm_func_start func_ov61_0213e034
func_ov61_0213e034: ; 0x0213e034
stmdb sp!, {r3, lr}
ldr r3, _0213e04c ; =data_ov61_0217ea28
mov r2, #0x20
ldr r3, [r3, #4]
blx r3
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213e034
_0213e04c: .word data_ov61_0217ea28
.global func_ov61_0213e050
arm_func_start func_ov61_0213e050
func_ov61_0213e050: ; 0x0213e050
stmdb sp!, {r3, lr}
ldr r3, _0213e064 ; =data_ov61_0217ea28
ldr r3, [r3, #4]
blx r3
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213e050
_0213e064: .word data_ov61_0217ea28
.global func_ov61_0213e068
arm_func_start func_ov61_0213e068
func_ov61_0213e068: ; 0x0213e068
stmdb sp!, {r3, lr}
cmp r1, #0
ldmeqia sp!, {r3, pc}
ldr r3, _0213e084 ; =data_ov61_0217ea28
ldr r3, [r3]
blx r3
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213e068
_0213e084: .word data_ov61_0217ea28
.global func_ov61_0213e088
arm_func_start func_ov61_0213e088
func_ov61_0213e088: ; 0x0213e088
stmdb sp!, {r3, lr}
mov ip, #0x20
str ip, [sp]
bl func_ov61_0213e09c
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0213e088
.global func_ov61_0213e09c
arm_func_start func_ov61_0213e09c
func_ov61_0213e09c: ; 0x0213e09c
stmdb sp!, {r4, r5, r6, r7, r8, lr}
ldr ip, _0213e108 ; =data_ov61_0217ea28
mov r4, r2
mov r7, r3
mov r5, r1
ldr r2, [sp, #0x18]
ldr r3, [ip, #4]
mov r1, r7
mov r8, r0
blx r3
movs r6, r0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
cmp r5, #0
beq _0213e100
mov r0, r5
mov r1, r6
mov r2, r7
bl func_02007ad8
ldr r1, _0213e108 ; =data_ov61_0217ea28
mov r0, r8
ldr r3, [r1]
mov r1, r5
mov r2, r4
blx r3
_0213e100:
mov r0, r6
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_0213e09c
_0213e108: .word data_ov61_0217ea28
.global func_ov61_0213e10c
arm_func_start func_ov61_0213e10c
func_ov61_0213e10c: ; 0x0213e10c
ldr ip, _0213e11c ; =func_ov61_0213e034
mov r1, r0
mov r0, #5
bx ip
.align 2, 0
arm_func_end func_ov61_0213e10c
_0213e11c: .word func_ov61_0213e034
.global func_ov61_0213e120
arm_func_start func_ov61_0213e120
func_ov61_0213e120: ; 0x0213e120
ldr ip, _0213e138 ; =func_ov61_0213e088
mov r2, r1
mov r1, r0
mov r3, r2
mov r0, #5
bx ip
.align 2, 0
arm_func_end func_ov61_0213e120
_0213e138: .word func_ov61_0213e088
.global func_ov61_0213e13c
arm_func_start func_ov61_0213e13c
func_ov61_0213e13c: ; 0x0213e13c
ldr ip, _0213e150 ; =func_ov61_0213e068
mov r1, r0
mov r0, #5
mov r2, #0
bx ip
.align 2, 0
arm_func_end func_ov61_0213e13c
_0213e150: .word func_ov61_0213e068
.global func_ov61_0213e154
arm_func_start func_ov61_0213e154
func_ov61_0213e154: ; 0x0213e154
stmdb sp!, {r4, r5, r6, lr}
ldr r2, _0213e1b0 ; =data_ov61_0217ea30
mov r6, r0
ldr r2, [r2]
mov r5, r1
mov r4, r3
cmp r2, #0
ldmneia sp!, {r4, r5, r6, pc}
mov r1, #0
mov r2, #0xc
bl func_02007a44
strh r5, [r6, #8]
mov r0, #1
strh r0, [r6, #0xa]
strh r0, [r6, #4]
mov r0, #0
ldr r1, _0213e1b0 ; =data_ov61_0217ea30
strh r0, [r6, #6]
str r6, [r1]
bl func_ov61_0213e1b4
mov r0, r4
bl func_ov61_021599ec
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0213e154
_0213e1b0: .word data_ov61_0217ea30
.global func_ov61_0213e1b4
arm_func_start func_ov61_0213e1b4
func_ov61_0213e1b4: ; 0x0213e1b4
stmdb sp!, {r3, lr}
cmp r0, #0
beq _0213e1d4
cmp r0, #1
beq _0213e1e0
cmp r0, #2
beq _0213e1ec
ldmia sp!, {r3, pc}
_0213e1d4:
ldr r0, _0213e1f8 ; =data_ov61_0217a620
bl func_ov61_0214dbb4
ldmia sp!, {r3, pc}
_0213e1e0:
ldr r0, _0213e1fc ; =data_ov61_0217a648
bl func_ov61_0214dbb4
ldmia sp!, {r3, pc}
_0213e1ec:
ldr r0, _0213e200 ; =data_ov61_0217a66c
bl func_ov61_0214dbb4
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213e1b4
_0213e1f8: .word data_ov61_0217a620
_0213e1fc: .word data_ov61_0217a648
_0213e200: .word data_ov61_0217a66c
.global func_ov61_0213e204
arm_func_start func_ov61_0213e204
func_ov61_0213e204: ; 0x0213e204
stmdb sp!, {lr}
sub sp, sp, #0xc
ldr r0, _0213e2a8 ; =data_ov61_0217ea30
ldr r0, [r0]
cmp r0, #0
beq _0213e294
ldrh r0, [r0, #4]
cmp r0, #1
addne sp, sp, #0xc
ldmneia sp!, {pc}
add r0, sp, #0
mov r1, #0
mov r2, #0xc
bl func_02007a44
ldr r0, _0213e2a8 ; =data_ov61_0217ea30
ldr r3, _0213e2ac ; =func_ov61_0213e034
ldr lr, [r0]
ldr r2, _0213e2b0 ; =func_ov61_0213e068
ldrh ip, [lr, #8]
add r0, sp, #0
mov r1, #2
strb ip, [sp, #8]
ldrh ip, [lr, #0xa]
strb ip, [sp, #9]
str r3, [sp]
str r2, [sp, #4]
strh r1, [lr, #4]
bl func_ov61_0214ae18
cmp r0, #0
addne sp, sp, #0xc
ldmneia sp!, {pc}
mov r0, #9
sub r1, r0, #0xf
bl func_ov61_0213e008
add sp, sp, #0xc
ldmia sp!, {pc}
_0213e294:
mov r0, #9
sub r1, r0, #0xd
bl func_ov61_0213e008
add sp, sp, #0xc
ldmia sp!, {pc}
.align 2, 0
arm_func_end func_ov61_0213e204
_0213e2a8: .word data_ov61_0217ea30
_0213e2ac: .word func_ov61_0213e034
_0213e2b0: .word func_ov61_0213e068
.global func_ov61_0213e2b4
arm_func_start func_ov61_0213e2b4
func_ov61_0213e2b4: ; 0x0213e2b4
stmdb sp!, {r3, lr}
ldr r0, _0213e2f0 ; =data_ov61_0217ea30
ldr r1, [r0]
cmp r1, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
ldr r0, [r1]
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
mov r0, #3
strh r0, [r1, #4]
bl func_ov61_0213e36c
mov r0, #1
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213e2b4
_0213e2f0: .word data_ov61_0217ea30
.global func_ov61_0213e2f4
arm_func_start func_ov61_0213e2f4
func_ov61_0213e2f4: ; 0x0213e2f4
stmdb sp!, {r3, lr}
ldr r0, _0213e368 ; =data_ov61_0217ea30
ldr r1, [r0]
cmp r1, #0
ldmeqia sp!, {r3, pc}
ldrh r0, [r1, #4]
cmp r0, #2
bne _0213e328
bl func_ov61_0214afc0
ldr r1, _0213e368 ; =data_ov61_0217ea30
ldr r1, [r1]
str r0, [r1]
ldmia sp!, {r3, pc}
_0213e328:
cmp r0, #4
ldmneia sp!, {r3, pc}
ldrh r0, [r1, #6]
cmp r0, #0
ldmeqia sp!, {r3, pc}
bl func_ov61_0215f568
cmp r0, #9
ldmeqia sp!, {r3, pc}
ldr r0, _0213e368 ; =data_ov61_0217ea30
mov r3, #0
ldr r2, [r0]
mov r1, #6
strh r3, [r2, #6]
ldr r0, [r0]
strh r1, [r0, #4]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213e2f4
_0213e368: .word data_ov61_0217ea30
.global func_ov61_0213e36c
arm_func_start func_ov61_0213e36c
func_ov61_0213e36c: ; 0x0213e36c
stmdb sp!, {r3, lr}
ldr r0, _0213e418 ; =data_ov61_0217ea30
ldr r0, [r0]
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
ldrh r0, [r0, #4]
cmp r0, #1
ldmeqia sp!, {r3, pc}
bl func_ov61_0214b090
mov r1, r0
cmp r1, #5
bne _0213e3c0
ldr r1, _0213e418 ; =data_ov61_0217ea30
mov r0, #4
ldr r3, [r1]
mov r2, #1
strh r0, [r3, #4]
ldr r1, [r1]
strh r2, [r1, #6]
ldmia sp!, {r3, pc}
_0213e3c0:
cmp r1, #0
bge _0213e410
mvn r0, #9
cmp r1, r0
blt _0213e3f4
sub r1, r1, #0x2bc
mov r0, #9
bl func_ov61_0213e008
ldr r1, _0213e418 ; =data_ov61_0217ea30
mov r0, #8
ldr r1, [r1]
strh r0, [r1, #4]
ldmia sp!, {r3, pc}
_0213e3f4:
mov r0, #5
bl func_ov61_0213e008
ldr r1, _0213e418 ; =data_ov61_0217ea30
mov r0, #7
ldr r1, [r1]
strh r0, [r1, #4]
ldmia sp!, {r3, pc}
_0213e410:
mov r0, #2
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213e36c
_0213e418: .word data_ov61_0217ea30
.global func_ov61_0213e41c
arm_func_start func_ov61_0213e41c
func_ov61_0213e41c: ; 0x0213e41c
stmdb sp!, {r4, lr}
ldr r0, _0213e478 ; =data_ov61_0217ea30
ldr r1, [r0]
cmp r1, #0
ldmeqia sp!, {r4, pc}
ldrh r1, [r1, #4]
cmp r1, #1
moveq r1, #0
streq r1, [r0]
ldmeqia sp!, {r4, pc}
bl func_ov61_0214b140
cmp r0, #0
bne _0213e468
mov r4, #0xa
_0213e454:
mov r0, r4
bl func_0200db28
bl func_ov61_0214b140
cmp r0, #0
beq _0213e454
_0213e468:
ldr r0, _0213e478 ; =data_ov61_0217ea30
mov r1, #0
str r1, [r0]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0213e41c
_0213e478: .word data_ov61_0217ea30
.global func_ov61_0213e47c
arm_func_start func_ov61_0213e47c
func_ov61_0213e47c: ; 0x0213e47c
stmdb sp!, {r3, lr}
ldr r0, _0213e4e8 ; =data_ov61_0217ea30
ldr r2, [r0]
cmp r2, #0
moveq r0, #1
ldmeqia sp!, {r3, pc}
ldrh r1, [r2, #4]
cmp r1, #8
moveq r0, #0
ldmeqia sp!, {r3, pc}
cmp r1, #1
bne _0213e4bc
mov r1, #0
str r1, [r0]
mov r0, #1
ldmia sp!, {r3, pc}
_0213e4bc:
mov r0, #5
strh r0, [r2, #4]
bl func_ov61_0214b140
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
ldr r0, _0213e4e8 ; =data_ov61_0217ea30
mov r1, #0
str r1, [r0]
mov r0, #1
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213e47c
_0213e4e8: .word data_ov61_0217ea30
.global func_ov61_0213e4ec
arm_func_start func_ov61_0213e4ec
func_ov61_0213e4ec: ; 0x0213e4ec
ldr r0, _0213e514 ; =data_ov61_0217ea30
ldr r0, [r0]
cmp r0, #0
beq _0213e50c
ldrh r0, [r0, #4]
cmp r0, #6
moveq r0, #1
bxeq lr
_0213e50c:
mov r0, #0
bx lr
.align 2, 0
arm_func_end func_ov61_0213e4ec
_0213e514: .word data_ov61_0217ea30
.global func_ov61_0213e518
arm_func_start func_ov61_0213e518
func_ov61_0213e518: ; 0x0213e518
ldr ip, _0213e520 ; =func_ov61_0216138c
bx ip
.align 2, 0
arm_func_end func_ov61_0213e518
_0213e520: .word func_ov61_0216138c
.global func_ov61_0213e524
arm_func_start func_ov61_0213e524
func_ov61_0213e524: ; 0x0213e524
stmdb sp!, {r3, lr}
bl func_ov61_0213e2f4
bl func_ov61_0213e4ec
cmp r0, #0
beq _0213e564
bl func_ov61_0214b0fc
mov r2, r0
cmp r2, #0x63
ldr r1, _0213e56c ; =0xffff2d10
movhi r2, #0x63
mov r0, #8
sub r1, r1, r2
bl func_ov61_0213e008
bl func_ov61_0213e41c
mov r0, #1
ldmia sp!, {r3, pc}
_0213e564:
mov r0, #0
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213e524
_0213e56c: .word 0xffff2d10
.global func_ov61_0213e570
arm_func_start func_ov61_0213e570
func_ov61_0213e570: ; 0x0213e570
ldr r0, _0213e57c ; =data_ov61_0217f368
ldr r0, [r0]
bx lr
.align 2, 0
arm_func_end func_ov61_0213e570
_0213e57c: .word data_ov61_0217f368
.global func_ov61_0213e580
arm_func_start func_ov61_0213e580
func_ov61_0213e580: ; 0x0213e580
stmdb sp!, {r3, r4, lr}
sub sp, sp, #0xc
stmia sp, {r0, r3}
mov r4, r2
str r1, [sp, #8]
ldr r2, _0213e5b4 ; =data_ov61_0217a68c
mov r0, r4
mov r1, #0x1000
bl func_0200c910
mov r0, r4
bl strlen
add sp, sp, #0xc
ldmia sp!, {r3, r4, pc}
.align 2, 0
arm_func_end func_ov61_0213e580
_0213e5b4: .word data_ov61_0217a68c
.global func_ov61_0213e5b8
arm_func_start func_ov61_0213e5b8
func_ov61_0213e5b8: ; 0x0213e5b8
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r5, r2
mov r7, r0
mov r6, r1
mov r4, r3
mov r0, r5
mov r1, #0
bl strchr
mov r2, r0
mov r0, r7
mov r1, r6
mov r3, r4
bl func_ov61_0213e580
mov r0, r5
bl strlen
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_0213e5b8
.global func_ov61_0213e5f8
arm_func_start func_ov61_0213e5f8
func_ov61_0213e5f8: ; 0x0213e5f8
stmdb sp!, {r3, r4, r5, r6, r7, lr}
movs r4, r1
mov r7, r0
mov r6, r3
mvneq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, r2
mov r1, r6
bl strchr
movs r5, r0
mvneq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
_0213e628:
mov r0, r7
bl strlen
mov r2, r0
mov r1, r7
add r0, r5, #1
bl strncmp
cmp r0, #0
bne _0213e660
mov r0, r7
bl strlen
add r0, r0, r5
ldrsb r0, [r0, #1]
cmp r6, r0
beq _0213e694
_0213e660:
mov r1, r6
add r0, r5, #1
bl strchr
cmp r0, #0
mvneq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
mov r1, r6
add r0, r0, #1
bl strchr
movs r5, r0
bne _0213e628
mvn r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0213e694:
mov r1, r6
add r0, r5, #1
bl strchr
movs r5, r0
mvneq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
mov r1, r6
add r0, r5, #1
bl strchr
cmp r0, #0
addne r1, r5, #1
subne r6, r0, r1
bne _0213e6d4
add r0, r5, #1
bl strlen
mov r6, r0
_0213e6d4:
mov r0, r4
mov r2, r6
add r1, r5, #1
bl strncpy
mov r1, #0
mov r0, r6
strb r1, [r4, r6]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_0213e5f8
.global func_ov61_0213e6f4
arm_func_start func_ov61_0213e6f4
func_ov61_0213e6f4: ; 0x0213e6f4
stmdb sp!, {r4, lr}
sub sp, sp, #8
ldr r1, _0213e814 ; =data_ov61_0217ea34
mov r4, r0
ldr r0, [r1, #4]
ldr r2, [r1]
cmp r0, #0
cmpeq r2, #0
mov r0, #0
bne _0213e7b8
ldr r2, [r1, #0xc]
ldr r3, [r1, #8]
cmp r2, r0
cmpeq r3, r0
bne _0213e7b8
ldr r2, [r1, #0x14]
ldr r1, [r1, #0x10]
cmp r2, r0
cmpeq r1, r0
bne _0213e7b8
add r0, sp, #0
bl func_0200f014
bl func_0200e8f8
mov r2, r1, lsl #0x18
ldr ip, [sp]
ldr r3, [sp, #4]
mov lr, ip, lsr #0x18
orr lr, lr, r3, lsl #8
mvn r1, #0xff000000
and r1, lr, r1
orr lr, r1, r0, lsl #24
mov ip, #0
orr r2, r2, r0, lsr #8
and r1, ip, r3, lsr #24
orr r2, r1, r2
ldr r0, _0213e818 ; =data_ov61_0217ea34
add r1, sp, #0
str lr, [sp]
str r2, [sp, #4]
ldmia r1, {r2, r3}
stmia r0, {r2, r3}
ldr r1, _0213e81c ; =0x6c078965
ldr r0, _0213e814 ; =data_ov61_0217ea34
ldr r2, _0213e820 ; =0x5d588b65
str r1, [r0, #8]
ldr r1, _0213e824 ; =0x00269ec3
str r2, [r0, #0xc]
str r1, [r0, #0x10]
str ip, [r0, #0x14]
_0213e7b8:
ldr r1, _0213e814 ; =data_ov61_0217ea34
ldr r2, [r1]
ldmib r1, {r0, r3}
umull lr, ip, r3, r2
mla ip, r3, r0, ip
ldr r0, [r1, #0xc]
ldr r3, [r1, #0x10]
mla ip, r0, r2, ip
ldr r0, [r1, #0x14]
adds r2, r3, lr
adc r0, r0, ip
str r2, [r1]
cmp r4, #0
str r0, [r1, #4]
addeq sp, sp, #8
ldmeqia sp!, {r4, pc}
mov r3, #0
umull r2, r1, r0, r4
mla r1, r0, r3, r1
mla r1, r3, r4, r1
mov r0, r1
add sp, sp, #8
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0213e6f4
_0213e814: .word data_ov61_0217ea34
_0213e818: .word data_ov61_0217ea34
_0213e81c: .word 0x6c078965
_0213e820: .word 0x5d588b65
_0213e824: .word 0x00269ec3
.global func_ov61_0213e828
arm_func_start func_ov61_0213e828
func_ov61_0213e828: ; 0x0213e828
ldrh r1, [r0]
mov r2, #0
cmp r1, #0
beq _0213e84c
_0213e838:
add r2, r2, #1
mov r1, r2, lsl #0x1
ldrh r1, [r0, r1]
cmp r1, #0
bne _0213e838
_0213e84c:
mov r0, r2
bx lr
arm_func_end func_ov61_0213e828
.global func_ov61_0213e854
arm_func_start func_ov61_0213e854
func_ov61_0213e854: ; 0x0213e854
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #0x10
ldr ip, _0213eab8 ; =data_ov61_0217ea4c
mov r6, r1
mov r5, r2
mov r4, r3
str r0, [ip]
bl func_ov61_0213dfcc
ldr r0, _0213eab8 ; =data_ov61_0217ea4c
mov r2, #0
ldr r1, [r0]
ldr r3, _0213eabc ; =func_ov61_021438ec
str r2, [r1]
ldr r1, [r0]
ldr r2, _0213eac0 ; =func_ov61_0213fdb0
str r3, [r1, #4]
ldr r1, [r0]
ldr ip, [sp, #0x24]
str r2, [r1, #8]
cmp ip, #0
ldr r2, [r0]
ldr r3, _0213eac4 ; =func_ov61_0213fdbc
ldr r1, _0213eac8 ; =func_ov61_0214010c
str r3, [r2, #0xc]
ldr r0, [r0]
ldr r3, [sp, #0x28]
str r1, [r0, #0x10]
ldr r0, _0213eab8 ; =data_ov61_0217ea4c
moveq ip, #0x2000
ldr r0, [r0]
cmp r3, #0
str ip, [r0, #0x14]
moveq r3, #0x2000
ldr r1, _0213eab8 ; =data_ov61_0217ea4c
mov r0, #0
ldr r2, [r1]
ldr ip, _0213eacc ; =data_ov61_02181384
str r3, [r2, #0x18]
ldr r2, [r1]
ldr r3, _0213ead0 ; =data_ov61_02181484
str r0, [r2, #0x1c]
ldr r2, [r1]
str r6, [r2, #0x20]
ldr r2, [r1]
str r0, [r2, #0x24]
ldr r2, [r1]
str r0, [r2, #0x28]
ldr r2, [r1]
strb r0, [r2, #0x2c]
ldr r2, [r1]
strb r0, [r2, #0x2d]
ldr r2, [r1]
str r0, [r2, #0x64]
ldr r2, [r1]
str ip, [r2, #0x68]
ldr r2, [r1]
str r3, [r2, #0x6c]
ldr r2, [r1]
str r0, [r2, #0x70]
ldr r2, [r1]
str r0, [r2, #0x74]
ldr r2, [r1]
str r0, [r2, #0x78]
ldr r2, [r1]
str r0, [r2, #0x7c]
ldr r2, [r1]
str r0, [r2, #0x80]
ldr r2, [r1]
str r0, [r2, #0x84]
ldr r2, [r1]
str r0, [r2, #0x88]
ldr r2, [r1]
str r0, [r2, #0x8c]
ldr r2, [r1]
str r0, [r2, #0x90]
ldr r1, [r1]
str r0, [r1, #0x94]
bl func_ov61_0213f678
ldr r0, _0213eab8 ; =data_ov61_0217ea4c
ldr r1, [r6, #0x24]
ldr r2, [r0]
ldr r0, _0213ead4 ; =func_ov61_0213f9f0
str r1, [sp]
add r1, r2, #0x2e
str r1, [sp, #4]
mov r1, r6
mov r3, r5
str r0, [sp, #8]
mov r5, #0
add r0, r2, #0x98
add r2, r2, #0x1c
str r5, [sp, #0xc]
bl func_ov61_02140154
ldr r0, _0213eab8 ; =data_ov61_0217ea4c
ldr r2, [sp, #0x30]
ldr r5, [r0]
ldr r3, [sp, #0x2c]
add r0, r5, #0x2f8
add r1, r5, #0x1c
str r2, [sp]
add r2, r5, #0x2e
bl func_ov61_02140d34
ldr r0, _0213eab8 ; =data_ov61_0217ea4c
ldr r1, _0213eacc ; =data_ov61_02181384
ldr r2, [r0]
ldr r0, _0213ead0 ; =data_ov61_02181484
str r1, [sp]
str r0, [sp, #4]
ldr r1, [sp, #0x2c]
ldr r0, [sp, #0x30]
str r1, [sp, #8]
str r0, [sp, #0xc]
add r0, r2, #0x354
add r1, r2, #0x1c
add r3, r2, #4
bl func_ov61_0214237c
ldr r0, _0213eab8 ; =data_ov61_0217ea4c
ldr r0, [r0]
add r0, r0, #0x3d8
add r0, r0, #0x400
bl func_ov61_0214a71c
mov r0, r4
bl strlen
cmp r0, #0x100
movhs r5, #0xff
bhs _0213ea58
mov r0, r4
bl strlen
mov r5, r0
_0213ea58:
ldr r1, _0213eacc ; =data_ov61_02181384
mov r0, r4
mov r2, r5
bl func_02007ad8
ldr r0, [sp, #0x20]
ldr r1, _0213eacc ; =data_ov61_02181384
mov r2, #0
strb r2, [r1, r5]
bl strlen
cmp r0, #0x100
movhs r4, #0xff
bhs _0213ea94
ldr r0, [sp, #0x20]
bl strlen
mov r4, r0
_0213ea94:
ldr r0, [sp, #0x20]
ldr r1, _0213ead0 ; =data_ov61_02181484
mov r2, r4
bl func_02007ad8
ldr r0, _0213ead0 ; =data_ov61_02181484
mov r1, #0
strb r1, [r0, r4]
add sp, sp, #0x10
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0213e854
_0213eab8: .word data_ov61_0217ea4c
_0213eabc: .word func_ov61_021438ec
_0213eac0: .word func_ov61_0213fdb0
_0213eac4: .word func_ov61_0213fdbc
_0213eac8: .word func_ov61_0214010c
_0213eacc: .word data_ov61_02181384
_0213ead0: .word data_ov61_02181484
_0213ead4: .word func_ov61_0213f9f0
.global func_ov61_0213ead8
arm_func_start func_ov61_0213ead8
func_ov61_0213ead8: ; 0x0213ead8
stmdb sp!, {r3, lr}
ldr r0, _0213ec3c ; =data_ov61_0217ea4c
ldr r0, [r0]
cmp r0, #0
ldmeqia sp!, {r3, pc}
ldr r0, [r0, #0x364]
cmp r0, #0
beq _0213eb0c
bl func_ov61_02177f98
ldr r0, _0213ec3c ; =data_ov61_0217ea4c
mov r1, #0
ldr r0, [r0]
str r1, [r0, #0x364]
_0213eb0c:
ldr r0, _0213ec3c ; =data_ov61_0217ea4c
mov r2, #0
ldr r1, [r0]
strb r2, [r1, #0x36c]
ldr r0, [r0]
ldr r0, [r0, #0x438]
cmp r0, #0
beq _0213eb40
bl func_ov61_02162ba0
ldr r0, _0213ec3c ; =data_ov61_0217ea4c
mov r1, #0
ldr r0, [r0]
str r1, [r0, #0x438]
_0213eb40:
bl func_ov61_02176dc0
bl func_ov61_021720e0
ldr r0, _0213ec3c ; =data_ov61_0217ea4c
ldr ip, [r0]
ldr r0, [ip, #0x1c]
cmp r0, #0
beq _0213ebf4
mov r1, #0
mov r2, r1
mov r3, r1
add r0, ip, #0x1c
bl func_ov61_02167050
ldr r0, _0213ec3c ; =data_ov61_0217ea4c
mov r2, #0
ldr r0, [r0]
mov r3, r2
add r0, r0, #0x1c
mov r1, #3
bl func_ov61_02167050
ldr r0, _0213ec3c ; =data_ov61_0217ea4c
mov r2, #0
ldr r0, [r0]
mov r3, r2
add r0, r0, #0x1c
mov r1, #1
bl func_ov61_02167050
ldr r0, _0213ec3c ; =data_ov61_0217ea4c
mov r2, #0
ldr r0, [r0]
mov r1, #2
add r0, r0, #0x1c
mov r3, r2
bl func_ov61_02167050
ldr r0, _0213ec3c ; =data_ov61_0217ea4c
ldr r0, [r0]
add r0, r0, #0x1c
bl func_ov61_0216701c
ldr r0, _0213ec3c ; =data_ov61_0217ea4c
ldr r0, [r0]
add r0, r0, #0x1c
bl func_ov61_02167000
mov r1, #0
ldr r0, _0213ec3c ; =data_ov61_0217ea4c
ldr r0, [r0]
str r1, [r0, #0x1c]
_0213ebf4:
bl func_ov61_02140374
bl func_ov61_02141384
bl func_ov61_021444bc
bl func_ov61_0214a9f0
ldr r0, _0213ec3c ; =data_ov61_0217ea4c
ldr r0, [r0]
ldr r0, [r0]
cmp r0, #0
beq _0213ec2c
bl func_ov61_0217422c
ldr r0, _0213ec3c ; =data_ov61_0217ea4c
mov r1, #0
ldr r0, [r0]
str r1, [r0]
_0213ec2c:
ldr r0, _0213ec3c ; =data_ov61_0217ea4c
mov r1, #0
str r1, [r0]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213ead8
_0213ec3c: .word data_ov61_0217ea4c
.global func_ov61_0213ec40
arm_func_start func_ov61_0213ec40
func_ov61_0213ec40: ; 0x0213ec40
stmdb sp!, {r3, lr}
bl func_ov61_0213e524
cmp r0, #0
beq _0213ec54
bl func_ov61_0213f778
_0213ec54:
ldr r0, _0213ee74 ; =data_ov61_0217ea4c
ldr r0, [r0]
cmp r0, #0
ldrne r0, [r0, #0x24]
cmpne r0, #0
ldmeqia sp!, {r3, pc}
bl func_ov61_0213dfec
cmp r0, #0
ldmneia sp!, {r3, pc}
ldr r0, _0213ee74 ; =data_ov61_0217ea4c
ldr r0, [r0]
ldr r0, [r0, #0x24]
cmp r0, #6
addls pc, pc, r0, lsl #2
b _0213ee2c
_0213ec90: ; jump table
b _0213ee2c ; case 0
b _0213ecac ; case 1
b _0213edc0 ; case 2
b _0213edc8 ; case 3
b _0213edc8 ; case 4
b _0213edd8 ; case 5
b _0213ede8 ; case 6
_0213ecac:
bl func_ov61_0216575c
cmp r0, #1
beq _0213eccc
cmp r0, #2
beq _0213eda0
cmp r0, #3
beq _0213edb0
b _0213ee2c
_0213eccc:
ldr r0, _0213ee74 ; =data_ov61_0217ea4c
mov r2, #0
ldr r0, [r0]
ldr r1, [r0, #0xa0]
add r0, r0, #0x1c
bl func_ov61_02166fd0
bl func_ov61_0213f830
cmp r0, #0
ldmneia sp!, {r3, pc}
ldr r0, _0213ee74 ; =data_ov61_0217ea4c
mov r1, #0
ldr r0, [r0]
ldr r2, _0213ee78 ; =func_ov61_0213fc10
mov r3, r1
add r0, r0, #0x1c
bl func_ov61_02167050
bl func_ov61_0213f830
cmp r0, #0
ldmneia sp!, {r3, pc}
ldr r0, _0213ee74 ; =data_ov61_0217ea4c
ldr r2, _0213ee7c ; =func_ov61_0213fc48
ldr r0, [r0]
mov r1, #3
add r0, r0, #0x1c
mov r3, #0
bl func_ov61_02167050
bl func_ov61_0213f830
cmp r0, #0
ldmneia sp!, {r3, pc}
ldr r0, _0213ee74 ; =data_ov61_0217ea4c
ldr r2, _0213ee80 ; =func_ov61_02141020
ldr r0, [r0]
mov r1, #1
add r0, r0, #0x1c
mov r3, #0
bl func_ov61_02167050
bl func_ov61_0213f830
cmp r0, #0
ldmneia sp!, {r3, pc}
ldr r0, _0213ee74 ; =data_ov61_0217ea4c
ldr r2, _0213ee84 ; =func_ov61_021410c8
ldr r0, [r0]
mov r1, #2
add r0, r0, #0x1c
mov r3, #0
bl func_ov61_02167050
bl func_ov61_0213f830
cmp r0, #0
ldmneia sp!, {r3, pc}
mov r0, #2
bl func_ov61_0213f77c
bl func_ov61_021401d8
b _0213ee2c
_0213eda0:
ldr r1, _0213ee88 ; =0xffffb172
mov r0, #3
bl func_ov61_02140324
ldmia sp!, {r3, pc}
_0213edb0:
ldr r1, _0213ee8c ; =0xffffb17b
mov r0, #4
bl func_ov61_02140324
ldmia sp!, {r3, pc}
_0213edc0:
bl func_ov61_02140210
b _0213ee2c
_0213edc8:
bl func_ov61_02140e14
mov r0, #0
bl func_ov61_02142b94
b _0213ee2c
_0213edd8:
mov r0, #1
bl func_ov61_02142b94
bl func_ov61_02140e14
b _0213ee2c
_0213ede8:
bl func_ov61_0214a7d4
bl func_ov61_02140e14
ldr r0, _0213ee74 ; =data_ov61_0217ea4c
ldr r1, [r0]
ldrb r0, [r1, #0x369]
cmp r0, #2
ldrneb r0, [r1, #0x369]
cmpne r0, #3
bne _0213ee18
mov r0, #1
bl func_ov61_02142b94
b _0213ee2c
_0213ee18:
ldr r0, [r1]
cmp r0, #0
beq _0213ee2c
mov r0, #0
bl func_ov61_02142b94
_0213ee2c:
ldr r0, _0213ee74 ; =data_ov61_0217ea4c
ldr r1, [r0]
ldrb r0, [r1, #0x36c]
cmp r0, #1
ldmneia sp!, {r3, pc}
ldr r0, [r1, #0x364]
cmp r0, #0
beq _0213ee60
bl func_ov61_02177f98
ldr r0, _0213ee74 ; =data_ov61_0217ea4c
mov r1, #0
ldr r0, [r0]
str r1, [r0, #0x364]
_0213ee60:
ldr r0, _0213ee74 ; =data_ov61_0217ea4c
mov r1, #0
ldr r0, [r0]
strb r1, [r0, #0x36c]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213ec40
_0213ee74: .word data_ov61_0217ea4c
_0213ee78: .word func_ov61_0213fc10
_0213ee7c: .word func_ov61_0213fc48
_0213ee80: .word func_ov61_02141020
_0213ee84: .word func_ov61_021410c8
_0213ee88: .word 0xffffb172
_0213ee8c: .word 0xffffb17b
.global func_ov61_0213ee90
arm_func_start func_ov61_0213ee90
func_ov61_0213ee90: ; 0x0213ee90
stmdb sp!, {r4, r5, r6, lr}
movs r4, r0
mov r6, r2
mov r5, r3
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
bl func_ov61_0213dfec
cmp r0, #0
bne _0213eec8
ldr r0, _0213ef90 ; =data_ov61_0217ea4c
ldr r2, [r0]
ldr r1, [r2, #0x24]
cmp r1, #0
beq _0213eed0
_0213eec8:
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
_0213eed0:
str r6, [r2, #0x70]
ldr r1, [r0]
cmp r4, #0
str r5, [r1, #0x74]
ldrneh r1, [r4]
cmpne r1, #0
moveq r5, #0
beq _0213ef3c
ldr r1, [r0]
mov r0, #0
add r1, r1, #0x2e
mov r2, #0x34
bl func_020078c0
mov r0, r4
bl func_ov61_0213e828
cmp r0, #0x19
movhi r5, #0x19
bhi _0213ef24
mov r0, r4
bl func_ov61_0213e828
mov r5, r0
_0213ef24:
ldr r1, _0213ef90 ; =data_ov61_0217ea4c
mov r0, r4
ldr r1, [r1]
mov r2, r5, lsl #0x1
add r1, r1, #0x2e
bl func_020078d8
_0213ef3c:
ldr r0, _0213ef90 ; =data_ov61_0217ea4c
mov r1, #0
ldr r0, [r0]
add r0, r0, r5, lsl #1
strh r1, [r0, #0x2e]
bl func_ov61_0213e36c
cmp r0, #4
beq _0213ef70
ldr r1, _0213ef94 ; =0xffff1596
mov r0, #2
bl func_ov61_02140324
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
_0213ef70:
mov r0, #1
bl func_ov61_0213f77c
ldr r0, _0213ef90 ; =data_ov61_0217ea4c
ldr r0, [r0]
ldr r0, [r0, #0x68]
bl func_ov61_021655ac
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0213ee90
_0213ef90: .word data_ov61_0217ea4c
_0213ef94: .word 0xffff1596
.global func_ov61_0213ef98
arm_func_start func_ov61_0213ef98
func_ov61_0213ef98: ; 0x0213ef98
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #0x10
mov r6, r1
mov r5, r2
mov r4, r3
bl func_ov61_0213dfec
cmp r0, #0
bne _0213efd4
ldr r0, _0213f038 ; =data_ov61_0217ea4c
ldr r2, [r0]
ldr r1, [r2, #0x24]
cmp r1, #3
blt _0213efd4
cmp r1, #4
bne _0213efe0
_0213efd4:
add sp, sp, #0x10
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
_0213efe0:
str r6, [r2, #0x78]
ldr r1, [r0]
mov r0, #4
str r5, [r1, #0x7c]
bl func_ov61_0213f77c
ldr r0, _0213f038 ; =data_ov61_0217ea4c
ldr r1, [sp, #0x20]
ldr r3, [r0]
ldr r0, [sp, #0x24]
str r4, [sp]
str r1, [sp, #4]
ldr r4, [sp, #0x28]
str r0, [sp, #8]
ldr r2, _0213f03c ; =func_ov61_0213fa50
add r0, r3, #0xe0
add r1, r3, #0x1e0
mov r3, #0
str r4, [sp, #0xc]
bl func_ov61_02140f1c
mov r0, #1
add sp, sp, #0x10
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0213ef98
_0213f038: .word data_ov61_0217ea4c
_0213f03c: .word func_ov61_0213fa50
.global func_ov61_0213f040
arm_func_start func_ov61_0213f040
func_ov61_0213f040: ; 0x0213f040
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #8
mov r7, r0
mov r6, r1
mov r5, r2
mov r4, r3
bl func_ov61_0213dfec
cmp r0, #0
bne _0213f078
ldr r0, _0213f0d8 ; =data_ov61_0217ea4c
ldr r0, [r0]
ldr r0, [r0, #0x24]
cmp r0, #3
beq _0213f084
_0213f078:
add sp, sp, #8
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0213f084:
bl func_ov61_0213f678
ldr r1, _0213f0d8 ; =data_ov61_0217ea4c
mov r0, #5
ldr r2, [r1]
str r5, [r2, #0x80]
ldr r1, [r1]
str r4, [r1, #0x84]
bl func_ov61_0213f77c
ldr r1, [sp, #0x20]
sub r0, r7, #1
ldr r4, [sp, #0x24]
str r1, [sp]
ldr r2, _0213f0dc ; =func_ov61_0213fa98
mov r1, r6
and r0, r0, #0xff
mov r3, #0
str r4, [sp, #4]
bl func_ov61_02142694
mov r0, #1
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0213f040
_0213f0d8: .word data_ov61_0217ea4c
_0213f0dc: .word func_ov61_0213fa98
.global func_ov61_0213f0e0
arm_func_start func_ov61_0213f0e0
func_ov61_0213f0e0: ; 0x0213f0e0
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x90
mov r4, r0
mov r10, r1
mov r9, r2
mov r11, r3
bl func_ov61_0213dfec
cmp r0, #0
bne _0213f118
ldr r0, _0213f284 ; =data_ov61_0217ea4c
ldr r0, [r0]
ldr r0, [r0, #0x24]
cmp r0, #3
beq _0213f124
_0213f118:
add sp, sp, #0x90
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0213f124:
bl func_ov61_0213f678
ldr r0, _0213f284 ; =data_ov61_0217ea4c
ldr r3, [sp, #0xb8]
ldr r1, [r0]
ldr r2, [sp, #0xbc]
str r3, [r1, #0x80]
ldr r1, [r0]
mov r0, #5
str r2, [r1, #0x84]
bl func_ov61_0213f77c
cmp r4, #0
beq _0213f190
ldr r0, _0213f288 ; =func_ov61_0213fa98
sub r2, r9, #1
str r0, [sp]
mov r1, #0
ldr r0, [sp, #0xc0]
str r1, [sp, #4]
ldr r5, [sp, #0xc4]
str r0, [sp, #8]
mov r0, r4
mov r1, r10
mov r3, r11
and r2, r2, #0xff
str r5, [sp, #0xc]
bl func_ov61_02142880
b _0213f278
_0213f190:
mov r10, #0
mov r5, r10
bl func_ov61_0214114c
cmp r0, #0
ble _0213f1c0
add r4, sp, #0x10
_0213f1a8:
add r0, r5, #1
strb r5, [r4, r5]
and r5, r0, #0xff
bl func_ov61_0214114c
cmp r5, r0
blt _0213f1a8
_0213f1c0:
mov r8, #0
bl func_ov61_0214114c
cmp r0, #0
ble _0213f240
add r5, sp, #0x10
add r4, sp, #0x50
_0213f1d8:
bl func_ov61_0214114c
sub r0, r0, r8
bl func_ov61_0213e6f4
mov r6, r0
ldrb r0, [r5, r6]
add r7, r5, r6
add r10, r10, #1
strb r0, [r4, r8]
bl func_ov61_0214114c
sub r0, r0, r8
sub r0, r0, #1
cmp r6, r0
bhs _0213f22c
_0213f20c:
ldrb r0, [r7, #1]
add r6, r6, #1
strb r0, [r7], #1
bl func_ov61_0214114c
sub r0, r0, r8
sub r0, r0, #1
cmp r6, r0
blo _0213f20c
_0213f22c:
add r0, r8, #1
and r8, r0, #0xff
bl func_ov61_0214114c
cmp r8, r0
blt _0213f1d8
_0213f240:
ldr r0, _0213f288 ; =func_ov61_0213fa98
sub r2, r9, #1
str r0, [sp]
mov r1, #0
str r1, [sp, #4]
ldr r0, [sp, #0xc0]
ldr r4, [sp, #0xc4]
str r0, [sp, #8]
add r0, sp, #0x50
mov r1, r10
mov r3, r11
and r2, r2, #0xff
str r4, [sp, #0xc]
bl func_ov61_02142880
_0213f278:
mov r0, #1
add sp, sp, #0x90
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0213f0e0
_0213f284: .word data_ov61_0217ea4c
_0213f288: .word func_ov61_0213fa98
.global func_ov61_0213f28c
arm_func_start func_ov61_0213f28c
func_ov61_0213f28c: ; 0x0213f28c
ldr r2, _0213f2b4 ; =data_ov61_0217ea4c
ldr r3, [r2]
cmp r3, #0
moveq r0, #0
bxeq lr
str r0, [r3, #0x90]
ldr r2, [r2]
mov r0, #1
str r1, [r2, #0x94]
bx lr
.align 2, 0
arm_func_end func_ov61_0213f28c
_0213f2b4: .word data_ov61_0217ea4c
.global func_ov61_0213f2b8
arm_func_start func_ov61_0213f2b8
func_ov61_0213f2b8: ; 0x0213f2b8
stmdb sp!, {r3, lr}
ldr r0, _0213f354 ; =data_ov61_0217ea4c
ldr r0, [r0]
cmp r0, #0
beq _0213f2f0
bl func_ov61_0213dfec
cmp r0, #0
bne _0213f2f0
ldr r0, _0213f354 ; =data_ov61_0217ea4c
ldr r2, [r0]
ldr r0, [r2, #0x24]
cmp r0, #5
cmpne r0, #6
beq _0213f2f8
_0213f2f0:
mvn r0, #0
ldmia sp!, {r3, pc}
_0213f2f8:
ldrb r0, [r2, #0x361]
cmp r0, #0
bne _0213f328
ldr r1, _0213f358 ; =data_ov61_0217a698
mov r0, #1
mov r2, #0
bl func_ov61_0214124c
bl func_ov61_02176dc0
mov r0, #3
bl func_ov61_0213f77c
mov r0, #1
ldmia sp!, {r3, pc}
_0213f328:
mov r1, #1
ldr r0, _0213f354 ; =data_ov61_0217ea4c
strb r1, [r2, #0x2d]
ldr r0, [r0]
ldr r0, [r0]
bl func_ov61_021744b8
ldr r1, _0213f354 ; =data_ov61_0217ea4c
mov r0, #0
ldr r1, [r1]
strb r0, [r1, #0x2d]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213f2b8
_0213f354: .word data_ov61_0217ea4c
_0213f358: .word data_ov61_0217a698
.global func_ov61_0213f35c
arm_func_start func_ov61_0213f35c
func_ov61_0213f35c: ; 0x0213f35c
stmdb sp!, {r4, lr}
ldr r1, _0213f3c0 ; =data_ov61_0217ea4c
mov r4, r0
ldr r0, [r1]
cmp r0, #0
beq _0213f398
bl func_ov61_0213dfec
cmp r0, #0
bne _0213f398
ldr r0, _0213f3c0 ; =data_ov61_0217ea4c
ldr r0, [r0]
ldr r0, [r0, #0x24]
cmp r0, #5
cmpne r0, #6
beq _0213f3a0
_0213f398:
mvn r0, #0
ldmia sp!, {r4, pc}
_0213f3a0:
mov r0, r4
bl func_ov61_0213f5c8
cmp r0, #0
mvneq r0, #1
ldmeqia sp!, {r4, pc}
bl func_ov61_02174498
mov r0, #0
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0213f35c
_0213f3c0: .word data_ov61_0217ea4c
.global func_ov61_0213f3c4
arm_func_start func_ov61_0213f3c4
func_ov61_0213f3c4: ; 0x0213f3c4
stmdb sp!, {r3, lr}
ldr r0, _0213f408 ; =data_ov61_0217ea4c
ldr r1, [r0]
cmp r1, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
ldrb r0, [r1, #0x369]
cmp r0, #2
ldrneb r0, [r1, #0x369]
cmpne r0, #3
bne _0213f3fc
bl func_ov61_021442a0
add r0, r0, #1
ldmia sp!, {r3, pc}
_0213f3fc:
bl func_ov61_02144280
add r0, r0, #1
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213f3c4
_0213f408: .word data_ov61_0217ea4c
.global func_ov61_0213f40c
arm_func_start func_ov61_0213f40c
func_ov61_0213f40c: ; 0x0213f40c
ldr r0, _0213f424 ; =data_ov61_0217ea4c
ldr r0, [r0]
cmp r0, #0
ldrneb r0, [r0, #0x2c]
moveq r0, #0
bx lr
.align 2, 0
arm_func_end func_ov61_0213f40c
_0213f424: .word data_ov61_0217ea4c
.global func_ov61_0213f428
arm_func_start func_ov61_0213f428
func_ov61_0213f428: ; 0x0213f428
stmdb sp!, {r3, lr}
ldr r2, _0213f474 ; =data_ov61_0217ea4c
ldr r1, [r2]
cmp r1, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
add r1, r1, #0x224
add r1, r1, #0x400
str r1, [r0]
ldr r2, [r2]
ldrb r1, [r2, #0x369]
cmp r1, #2
ldrneb r1, [r2, #0x369]
cmpne r1, #3
bne _0213f46c
bl func_ov61_02144348
ldmia sp!, {r3, pc}
_0213f46c:
bl func_ov61_02144314
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213f428
_0213f474: .word data_ov61_0217ea4c
.global func_ov61_0213f478
arm_func_start func_ov61_0213f478
func_ov61_0213f478: ; 0x0213f478
stmdb sp!, {r3, lr}
ldr r0, _0213f4a8 ; =data_ov61_0217ea4c
ldr r0, [r0]
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
add r0, sp, #0
bl func_ov61_0213f428
mov r1, r0
ldr r0, [sp]
bl func_ov61_0213f7fc
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213f478
_0213f4a8: .word data_ov61_0217ea4c
.global func_ov61_0213f4ac
arm_func_start func_ov61_0213f4ac
func_ov61_0213f4ac: ; 0x0213f4ac
stmdb sp!, {r3, lr}
ldr r1, _0213f4e0 ; =data_ov61_0217ea4c
ldr r1, [r1]
cmp r1, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
ldr r2, [r1, #0x644]
mov r1, #1
tst r2, r1, lsl r0
moveq r0, #0
ldmeqia sp!, {r3, pc}
bl func_ov61_0213f730
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213f4ac
_0213f4e0: .word data_ov61_0217ea4c
.global func_ov61_0213f4e4
arm_func_start func_ov61_0213f4e4
func_ov61_0213f4e4: ; 0x0213f4e4
ldr r0, _0213f4fc ; =data_ov61_0217ea4c
ldr r0, [r0]
cmp r0, #0
ldrne r0, [r0, #0x24]
moveq r0, #0
bx lr
.align 2, 0
arm_func_end func_ov61_0213f4e4
_0213f4fc: .word data_ov61_0217ea4c
.global func_ov61_0213f500
arm_func_start func_ov61_0213f500
func_ov61_0213f500: ; 0x0213f500
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
ldr r0, _0213f5b8 ; =data_ov61_0217ea4c
ldr r0, [r0]
ldr r0, [r0]
cmp r0, #0
addne sp, sp, #4
movne r0, #0
ldmneia sp!, {r3, r4, pc}
mov r0, #0x4000
bl func_ov61_0213e6f4
add r0, r0, #0xc000
mov r1, r0, lsl #0x10
ldr r3, _0213f5b8 ; =data_ov61_0217ea4c
mov r0, #0
mov r2, r0
mov r1, r1, lsr #0x10
ldr r4, [r3]
bl func_ov61_021769a4
ldr r1, _0213f5bc ; =func_ov61_02140118
ldr r2, _0213f5b8 ; =data_ov61_0217ea4c
str r1, [sp]
mov r1, r0
ldr r0, [r2]
ldr r2, [r4, #0x14]
ldr r3, [r4, #0x18]
bl func_ov61_02174218
mov r4, r0
bl func_ov61_0213f94c
cmp r0, #0
addne sp, sp, #4
movne r0, r4
ldmneia sp!, {r3, r4, pc}
ldr r0, _0213f5b8 ; =data_ov61_0217ea4c
ldr r1, _0213f5c0 ; =func_ov61_021436a4
ldr r0, [r0]
ldr r0, [r0]
bl func_ov61_02174274
ldr r0, _0213f5b8 ; =data_ov61_0217ea4c
ldr r1, _0213f5c4 ; =func_ov61_021435b0
ldr r0, [r0]
ldr r0, [r0]
bl func_ov61_0217451c
mov r0, r4
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
.align 2, 0
arm_func_end func_ov61_0213f500
_0213f5b8: .word data_ov61_0217ea4c
_0213f5bc: .word func_ov61_02140118
_0213f5c0: .word func_ov61_021436a4
_0213f5c4: .word func_ov61_021435b0
.global func_ov61_0213f5c8
arm_func_start func_ov61_0213f5c8
func_ov61_0213f5c8: ; 0x0213f5c8
stmdb sp!, {r4, r5, r6, lr}
ldr r1, _0213f624 ; =data_ov61_0217ea4c
mov r6, r0
ldr r0, [r1]
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
ldr r4, _0213f628 ; =data_ov61_0217ea54
mov r5, #0
_0213f5ec:
ldr r0, [r4, r5, lsl #2]
cmp r0, #0
beq _0213f610
bl func_ov61_02174560
ldrb r0, [r0, #1]
cmp r6, r0
ldreq r0, _0213f628 ; =data_ov61_0217ea54
ldreq r0, [r0, r5, lsl #2]
ldmeqia sp!, {r4, r5, r6, pc}
_0213f610:
add r5, r5, #1
cmp r5, #0x20
blt _0213f5ec
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0213f5c8
_0213f624: .word data_ov61_0217ea4c
_0213f628: .word data_ov61_0217ea54
.global func_ov61_0213f62c
arm_func_start func_ov61_0213f62c
func_ov61_0213f62c: ; 0x0213f62c
stmdb sp!, {r3, lr}
bl func_ov61_02174560
ldrb r0, [r0, #1]
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0213f62c
.global func_ov61_0213f63c
arm_func_start func_ov61_0213f63c
func_ov61_0213f63c: ; 0x0213f63c
stmdb sp!, {r3, lr}
bl func_ov61_02174560
ldrb r0, [r0]
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0213f63c
.global func_ov61_0213f64c
arm_func_start func_ov61_0213f64c
func_ov61_0213f64c: ; 0x0213f64c
ldr r2, _0213f674 ; =data_ov61_0217ea54
mov r0, #0
_0213f654:
ldr r1, [r2, r0, lsl #2]
cmp r1, #0
bxeq lr
add r0, r0, #1
cmp r0, #0x20
blt _0213f654
mvn r0, #0
bx lr
.align 2, 0
arm_func_end func_ov61_0213f64c
_0213f674: .word data_ov61_0217ea54
.global func_ov61_0213f678
arm_func_start func_ov61_0213f678
func_ov61_0213f678: ; 0x0213f678
stmdb sp!, {r3, lr}
ldr r1, _0213f6a0 ; =data_ov61_0217ea54
mov r0, #0
mov r2, #0x80
bl func_020078f4
ldr r1, _0213f6a4 ; =data_ov61_0217ead4
mov r0, #0
mov r2, #0x100
bl func_020078f4
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213f678
_0213f6a0: .word data_ov61_0217ea54
_0213f6a4: .word data_ov61_0217ead4
.global func_ov61_0213f6a8
arm_func_start func_ov61_0213f6a8
func_ov61_0213f6a8: ; 0x0213f6a8
ldr r1, _0213f6b4 ; =data_ov61_0217ea54
add r0, r1, r0, lsl #2
bx lr
.align 2, 0
arm_func_end func_ov61_0213f6a8
_0213f6b4: .word data_ov61_0217ea54
.global func_ov61_0213f6b8
arm_func_start func_ov61_0213f6b8
func_ov61_0213f6b8: ; 0x0213f6b8
stmdb sp!, {r3, lr}
cmp r1, #0
mov r3, #0
ble _0213f6f0
ldr r2, _0213f71c ; =data_ov61_0217ea4c
ldr ip, [r2]
_0213f6d0:
add r2, ip, r3, lsl #2
ldr r2, [r2, #0x448]
cmp r0, r2
beq _0213f6f0
add r2, r3, #1
and r3, r2, #0xff
cmp r3, r1
blt _0213f6d0
_0213f6f0:
cmp r3, r1
movge r0, #0
ldmgeia sp!, {r3, pc}
ldr r0, _0213f71c ; =data_ov61_0217ea4c
ldr r0, [r0]
add r0, r0, r3
ldrb r0, [r0, #0x624]
bl func_ov61_0213f5c8
bl func_ov61_0213f63c
bl func_ov61_0213f6a8
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213f6b8
_0213f71c: .word data_ov61_0217ea4c
.global func_ov61_0213f720
arm_func_start func_ov61_0213f720
func_ov61_0213f720: ; 0x0213f720
ldr r1, _0213f72c ; =data_ov61_0217ead4
add r0, r1, r0, lsl #3
bx lr
.align 2, 0
arm_func_end func_ov61_0213f720
_0213f72c: .word data_ov61_0217ead4
.global func_ov61_0213f730
arm_func_start func_ov61_0213f730
func_ov61_0213f730: ; 0x0213f730
stmdb sp!, {r4, r5, r6, lr}
ldr r4, _0213f774 ; =data_ov61_0217ea54
mov r6, r0
mov r5, #0
_0213f740:
ldr r0, [r4, r5, lsl #2]
cmp r0, #0
beq _0213f760
bl func_ov61_02174560
ldrb r0, [r0, #1]
cmp r6, r0
moveq r0, #1
ldmeqia sp!, {r4, r5, r6, pc}
_0213f760:
add r5, r5, #1
cmp r5, #0x20
blt _0213f740
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0213f730
_0213f774: .word data_ov61_0217ea54
.global func_ov61_0213f778
arm_func_start func_ov61_0213f778
func_ov61_0213f778: ; 0x0213f778
bx lr
arm_func_end func_ov61_0213f778
.global func_ov61_0213f77c
arm_func_start func_ov61_0213f77c
func_ov61_0213f77c: ; 0x0213f77c
ldr r1, _0213f798 ; =data_ov61_0217ea4c
ldr r3, [r1]
ldr r2, [r3, #0x24]
str r2, [r3, #0x28]
ldr r1, [r1]
str r0, [r1, #0x24]
bx lr
.align 2, 0
arm_func_end func_ov61_0213f77c
_0213f798: .word data_ov61_0217ea4c
.global func_ov61_0213f79c
arm_func_start func_ov61_0213f79c
func_ov61_0213f79c: ; 0x0213f79c
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
mov r4, r0
add r0, sp, #0
bl func_ov61_02144314
mov r1, r0
cmp r1, #0
mov r0, #0
ble _0213f7e0
ldr r3, [sp]
_0213f7c4:
ldrb r2, [r3]
cmp r4, r2
beq _0213f7e0
add r0, r0, #1
cmp r0, r1
add r3, r3, #1
blt _0213f7c4
_0213f7e0:
cmp r0, r1
addeq sp, sp, #4
moveq r0, #0
ldmeqia sp!, {r3, r4, pc}
bl func_ov61_021440c8
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
arm_func_end func_ov61_0213f79c
.global func_ov61_0213f7fc
arm_func_start func_ov61_0213f7fc
func_ov61_0213f7fc: ; 0x0213f7fc
stmdb sp!, {r3, lr}
mov ip, #0
mov lr, ip
cmp r1, #0
ble _0213f828
mov r3, #1
_0213f814:
ldrb r2, [r0, lr]
add lr, lr, #1
cmp lr, r1
orr ip, ip, r3, lsl r2
blt _0213f814
_0213f828:
mov r0, ip
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0213f7fc
.global func_ov61_0213f830
arm_func_start func_ov61_0213f830
func_ov61_0213f830: ; 0x0213f830
stmdb sp!, {r4, r5, r6, lr}
movs r6, r0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
cmp r6, #4
addls pc, pc, r6, lsl #2
b _0213f88c
_0213f84c: ; jump table
b _0213f88c ; case 0
b _0213f860 ; case 1
b _0213f86c ; case 2
b _0213f878 ; case 3
b _0213f884 ; case 4
_0213f860:
mov r5, #9
sub r4, r5, #0xa
b _0213f88c
_0213f86c:
mov r5, #9
sub r4, r5, #0xb
b _0213f88c
_0213f878:
mov r5, #6
sub r4, r5, #0x10
b _0213f88c
_0213f884:
mov r5, #6
sub r4, r5, #0x1a
_0213f88c:
ldr r0, _0213f938 ; =data_ov61_0217ea4c
ldr r1, [r0]
ldr r0, [r1, #0x24]
cmp r0, #5
addls pc, pc, r0, lsl #2
b _0213f91c
_0213f8a4: ; jump table
b _0213f91c ; case 0
b _0213f8bc ; case 1
b _0213f8d4 ; case 2
b _0213f91c ; case 3
b _0213f910 ; case 4
b _0213f8f8 ; case 5
_0213f8bc:
ldr r1, _0213f93c ; =0xffff11b8
mov r0, r5
add r4, r4, r1
mov r1, r4
bl func_ov61_02140324
b _0213f924
_0213f8d4:
ldr r1, [r1, #0x9c]
ldr r0, _0213f93c ; =0xffff11b8
cmp r1, #1
add r4, r4, r0
bge _0213f924
mov r0, r5
mov r1, r4
bl func_ov61_02140324
b _0213f924
_0213f8f8:
ldr r1, _0213f940 ; =0xfffec398
mov r0, r5
add r4, r4, r1
mov r1, r4
bl func_ov61_02143c14
b _0213f924
_0213f910:
ldr r0, _0213f944 ; =0xfffeeaa8
add r4, r4, r0
b _0213f924
_0213f91c:
ldr r0, _0213f948 ; =0xfffe9c88
add r4, r4, r0
_0213f924:
mov r0, r5
mov r1, r4
bl func_ov61_02140fc8
mov r0, r6
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0213f830
_0213f938: .word data_ov61_0217ea4c
_0213f93c: .word 0xffff11b8
_0213f940: .word 0xfffec398
_0213f944: .word 0xfffeeaa8
_0213f948: .word 0xfffe9c88
.global func_ov61_0213f94c
arm_func_start func_ov61_0213f94c
func_ov61_0213f94c: ; 0x0213f94c
stmdb sp!, {r4, lr}
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r4, pc}
cmp r4, #7
addls pc, pc, r4, lsl #2
b _0213f9d0
_0213f968: ; jump table
b _0213f9d0 ; case 0
b _0213f988 ; case 1
b _0213f994 ; case 2
b _0213f9a4 ; case 3
b _0213f9b0 ; case 4
b _0213f994 ; case 5
b _0213f9bc ; case 6
b _0213f9c8 ; case 7
_0213f988:
mov r0, #9
sub r2, r0, #0xa
b _0213f9d0
_0213f994:
mov r0, #0
mov r2, r0
mov r4, r0
b _0213f9d0
_0213f9a4:
mov r0, #6
sub r2, r0, #0x10
b _0213f9d0
_0213f9b0:
mov r0, #6
sub r2, r0, #0x24
b _0213f9d0
_0213f9bc:
mov r0, #6
sub r2, r0, #0x4c
b _0213f9d0
_0213f9c8:
mov r0, #6
sub r2, r0, #0x56
_0213f9d0:
cmp r0, #0
beq _0213f9e4
ldr r1, _0213f9ec ; =0xfffefa48
add r1, r2, r1
bl func_ov61_02140324
_0213f9e4:
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0213f94c
_0213f9ec: .word 0xfffefa48
.global func_ov61_0213f9f0
arm_func_start func_ov61_0213f9f0
func_ov61_0213f9f0: ; 0x0213f9f0
stmdb sp!, {r3, r4, r5, lr}
movs r5, r0
mov r4, r1
bne _0213fa1c
ldr r1, _0213fa4c ; =data_ov61_0217ea4c
mov r0, #3
ldr r1, [r1]
str r4, [r1, #0x64]
bl func_ov61_0213f77c
bl func_ov61_02141214
b _0213fa24
_0213fa1c:
mov r0, #0
bl func_ov61_0213f77c
_0213fa24:
ldr r0, _0213fa4c ; =data_ov61_0217ea4c
ldr r0, [r0]
ldr r3, [r0, #0x70]
cmp r3, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r2, [r0, #0x74]
mov r0, r5
mov r1, r4
blx r3
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0213f9f0
_0213fa4c: .word data_ov61_0217ea4c
.global func_ov61_0213fa50
arm_func_start func_ov61_0213fa50
func_ov61_0213fa50: ; 0x0213fa50
stmdb sp!, {r3, r4, r5, lr}
ldr r2, _0213fa94 ; =data_ov61_0217ea4c
mov r5, r0
ldr r0, [r2]
mov r4, r1
ldr r0, [r0, #0x28]
cmp r0, #4
beq _0213fa74
bl func_ov61_0213f77c
_0213fa74:
ldr r1, _0213fa94 ; =data_ov61_0217ea4c
mov r0, r5
ldr r3, [r1]
mov r1, r4
ldr r2, [r3, #0x7c]
ldr r3, [r3, #0x78]
blx r3
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0213fa50
_0213fa94: .word data_ov61_0217ea4c
.global func_ov61_0213fa98
arm_func_start func_ov61_0213fa98
func_ov61_0213fa98: ; 0x0213fa98
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #8
movs r7, r0
mov r6, r1
mov r5, r2
mov r4, r3
bne _0213fae0
cmp r6, #0
beq _0213fae0
ldr r0, _0213fc0c ; =data_ov61_0217ea4c
ldr r0, [r0]
ldr r0, [r0, #0x4f4]
cmp r0, #0
bne _0213fb44
bl func_ov61_02143cd0
mov r0, #3
bl func_ov61_0213f77c
b _0213fb44
_0213fae0:
cmp r7, #0
bne _0213fb44
mov r0, #6
bl func_ov61_0213f77c
ldr r0, _0213fc0c ; =data_ov61_0217ea4c
mov r2, #0
ldr r3, [r0]
ldrb r0, [r3, #0x361]
cmp r0, #0
blt _0213fb44
ldr r1, [r3, #0x64]
_0213fb0c:
add r0, r3, r2, lsl #2
ldr r0, [r0, #0x448]
cmp r1, r0
bne _0213fb34
ldr r0, _0213fc0c ; =data_ov61_0217ea4c
ldr r1, [r0]
add r0, r1, r2
ldrb r0, [r0, #0x624]
strb r0, [r1, #0x2c]
b _0213fb44
_0213fb34:
ldrb r0, [r3, #0x361]
add r2, r2, #1
cmp r2, r0
ble _0213fb0c
_0213fb44:
ldr r0, _0213fc0c ; =data_ov61_0217ea4c
ldr r0, [r0]
ldrb r1, [r0, #0x361]
add r0, r0, #0x224
add r0, r0, #0x400
add r1, r1, #1
bl func_ov61_0213f7fc
ldr r1, _0213fc0c ; =data_ov61_0217ea4c
ldr r1, [r1]
str r0, [r1, #0x644]
bl func_ov61_021442c0
ldr r0, _0213fc0c ; =data_ov61_0217ea4c
ldr r1, [r0]
ldrb r0, [r1, #0x369]
cmp r0, #2
ldrneb r0, [r1, #0x369]
cmpne r0, #3
bne _0213fbc0
ldr r0, _0213fc0c ; =data_ov61_0217ea4c
ldr r1, [sp, #0x20]
ldr r3, [r0]
mov r0, r7
str r1, [sp]
ldr r2, [r3, #0x8c]
mov r1, r6
str r2, [sp, #4]
ldr r6, [r3, #0x88]
mov r2, r5
mov r3, r4
blx r6
b _0213fbd4
_0213fbc0:
ldr r2, [r1, #0x84]
ldr r3, [r1, #0x80]
mov r0, r7
mov r1, r6
blx r3
_0213fbd4:
cmp r7, #0
ldrne r0, _0213fc0c ; =data_ov61_0217ea4c
ldrne r0, [r0]
cmpne r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, [r0, #0x24]
cmp r0, #5
addne sp, sp, #8
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, #3
bl func_ov61_0213f77c
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0213fa98
_0213fc0c: .word data_ov61_0217ea4c
.global func_ov61_0213fc10
arm_func_start func_ov61_0213fc10
func_ov61_0213fc10: ; 0x0213fc10
stmdb sp!, {r3, lr}
ldr r1, [r1, #4]
ldr r0, _0213fc40 ; =0x00000603
cmp r1, r0
ldrne r0, _0213fc44 ; =0x00000901
cmpne r1, r0
addne r0, r0, #0x200
cmpne r1, r0
ldmeqia sp!, {r3, pc}
mov r0, #3
bl func_ov61_0213f830
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0213fc10
_0213fc40: .word 0x00000603
_0213fc44: .word 0x00000901
.global func_ov61_0213fc48
arm_func_start func_ov61_0213fc48
func_ov61_0213fc48: ; 0x0213fc48
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0xc
add r4, sp, #0
mov r3, #0
mov r5, r1
strb r3, [r4]
strb r3, [r4, #1]
strb r3, [r4, #2]
strb r3, [r4, #3]
strb r3, [r4, #4]
strb r3, [r4, #5]
strb r3, [r4, #6]
strb r3, [r4, #7]
strb r3, [r4, #8]
strb r3, [r4, #9]
strb r3, [r4, #0xa]
strb r3, [r4, #0xb]
ldr r4, [r5, #8]
mov r6, r0
bl func_ov61_0214106c
cmp r0, #0
addne sp, sp, #0xc
ldmneia sp!, {r4, r5, r6, r7, pc}
ldr r0, _0213fda4 ; =data_ov61_0217a69c
bl strlen
mov r2, r0
ldr r1, _0213fda4 ; =data_ov61_0217a69c
mov r0, r4
bl func_0204366c
cmp r0, #0
addne sp, sp, #0xc
ldmneia sp!, {r4, r5, r6, r7, pc}
ldr r0, _0213fda4 ; =data_ov61_0217a69c
bl strlen
add r4, r4, r0
mov r0, r4
mov r1, #0x76
bl strchr
sub r7, r0, r4
add r0, sp, #0
mov r1, r4
mov r2, r7
bl strncpy
cmp r7, #0xa
addhi sp, sp, #0xc
ldmhiia sp!, {r4, r5, r6, r7, pc}
add r0, sp, #0
mov r1, #0
mov r2, #0xa
bl func_02048ecc
cmp r0, #3
addne sp, sp, #0xc
ldmneia sp!, {r4, r5, r6, r7, pc}
ldr r0, _0213fda8 ; =data_ov61_0217a6a4
add r1, r7, #1
add r4, r4, r1
bl strlen
mov r2, r0
ldr r1, _0213fda8 ; =data_ov61_0217a6a4
mov r0, r4
bl func_0204366c
cmp r0, #0
addne sp, sp, #0xc
ldmneia sp!, {r4, r5, r6, r7, pc}
ldr r0, _0213fdac ; =data_ov61_0217ea4c
ldr r1, [r0]
ldr r0, [r1, #0x24]
cmp r0, #5
beq _0213fd80
cmp r0, #6
addne sp, sp, #0xc
ldmneia sp!, {r4, r5, r6, r7, pc}
ldrb r0, [r1, #0x369]
cmp r0, #2
ldrneb r0, [r1, #0x369]
cmpne r0, #3
addne sp, sp, #0xc
ldmneia sp!, {r4, r5, r6, r7, pc}
_0213fd80:
ldr r0, _0213fda8 ; =data_ov61_0217a6a4
bl strlen
mov r2, r0
ldr r1, [r5]
mov r0, r6
add r2, r4, r2
bl func_ov61_02143b70
add sp, sp, #0xc
ldmia sp!, {r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0213fc48
_0213fda4: .word data_ov61_0217a69c
_0213fda8: .word data_ov61_0217a6a4
_0213fdac: .word data_ov61_0217ea4c
.global func_ov61_0213fdb0
arm_func_start func_ov61_0213fdb0
func_ov61_0213fdb0: ; 0x0213fdb0
ldr ip, _0213fdb8 ; =func_ov61_0214a758
bx ip
.align 2, 0
arm_func_end func_ov61_0213fdb0
_0213fdb8: .word func_ov61_0214a758
.global func_ov61_0213fdbc
arm_func_start func_ov61_0213fdbc
func_ov61_0213fdbc: ; 0x0213fdbc
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #8
mov r5, #0
mov r11, r0
mov r9, r1
mov r10, r5
bl func_ov61_02144534
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
cmp r9, #4
addls pc, pc, r9, lsl #2
b _0213fe20
_0213fdf0: ; jump table
b _0213fe04 ; case 0
b _0213fe04 ; case 1
b _0213fe0c ; case 2
b _0213fe0c ; case 3
b _0213fe18 ; case 4
_0213fe04:
mov r8, r5
b _0213fe20
_0213fe0c:
mov r8, #6
ldr r6, _021400f8 ; =0xffffe250
b _0213fe20
_0213fe18:
ldr r6, _021400fc ; =0xffffe24f
mov r8, #9
_0213fe20:
cmp r8, #0
bne _0213fecc
mov r0, r11
bl func_ov61_02174560
movs r5, r0
addeq sp, sp, #8
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r0, _02140100 ; =data_ov61_0217ea4c
ldrb r4, [r5, #1]
ldr r0, [r0]
mov r7, #1
ldr r0, [r0, #0x644]
tst r0, r7, lsl r4
mov r0, r4
moveq r7, #0
bl func_ov61_0214a968
ldr r0, _02140100 ; =data_ov61_0217ea4c
ldr r1, [r0]
ldrb r0, [r1, #0x369]
cmp r0, #2
cmpeq r9, #0
beq _0213fe88
ldrb r0, [r1, #0x369]
cmp r0, #3
cmpeq r4, #0
bne _0213fe8c
_0213fe88:
mov r10, #1
_0213fe8c:
mov r0, r4
bl func_ov61_0213f79c
ldr r1, _02140100 ; =data_ov61_0217ea4c
ldrb r5, [r5]
ldr r2, _02140104 ; =data_ov61_0217ea54
mov r11, #0
ldr r3, [r1]
str r11, [r2, r5, lsl #2]
ldrb r2, [r3, #0x361]
mov r5, r0
sub r0, r2, #1
strb r0, [r3, #0x361]
ldr r1, [r1]
ldrb r0, [r1, #0x368]
sub r0, r0, #1
strb r0, [r1, #0x368]
_0213fecc:
ldr r0, _02140100 ; =data_ov61_0217ea4c
ldr r1, [r0]
ldrb r0, [r1, #0x2d]
cmp r0, #0
ldreq r0, [r1, #0x24]
cmpeq r0, #6
cmpeq r7, #0
bne _0213ff14
ldrb r0, [r1, #0x369]
cmp r0, #2
cmpeq r8, #0
addne sp, sp, #8
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
bl func_ov61_021443ec
mov r0, r5
bl func_ov61_02144040
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0213ff14:
mov r0, r8
mov r1, r6
mov r2, r5
bl func_ov61_02143ec4
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
cmp r8, #0
beq _0213ff4c
mov r0, r8
mov r1, r6
bl func_ov61_0213e008
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0213ff4c:
ldr r0, _02140100 ; =data_ov61_0217ea4c
ldr r1, [r0]
ldrb r0, [r1, #0x2d]
cmp r0, #0
bne _0213ffbc
ldrb r0, [r1, #0x369]
cmp r0, #2
ldrneb r0, [r1, #0x369]
cmpne r0, #3
bne _0213ffbc
ldr r2, _02140100 ; =data_ov61_0217ea4c
ldr r1, [r2]
ldrb r0, [r1, #0x361]
add r6, r0, #2
add r3, r1, r6, lsl #2
ldr r3, [r3, #0x448]
cmp r3, #0
beq _0213ffbc
add r3, r1, r6
ldrb r3, [r3, #0x624]
add r0, r0, #1
add r0, r1, r0
strb r3, [r0, #0x624]
ldr r0, [r2]
ldrb r1, [r0, #0x361]
add r0, r1, #1
add r1, r1, #3
bl func_ov61_021440c8
_0213ffbc:
ldr r0, _02140100 ; =data_ov61_0217ea4c
ldr r1, [r0]
ldrb r0, [r1, #0x369]
cmp r0, #2
bne _02140004
ldrb r0, [r1, #0x2d]
cmp r0, #0
bne _0213ffe4
bl func_ov61_021443ec
b _02140020
_0213ffe4:
ldrb r0, [r1, #0x361]
cmp r0, #0
bne _02140020
ldr r1, _02140108 ; =data_ov61_0217a698
mov r0, #1
mov r2, #0
bl func_ov61_0214124c
b _02140020
_02140004:
ldrb r0, [r1, #0x361]
cmp r0, #0
bne _02140020
ldr r1, _02140108 ; =data_ov61_0217a698
mov r0, #1
mov r2, #0
bl func_ov61_0214124c
_02140020:
ldr r0, _02140100 ; =data_ov61_0217ea4c
ldr r1, [r0]
ldrb r0, [r1, #0x369]
cmp r0, #0
ldrneb r0, [r1, #0x369]
cmpne r0, #1
bne _02140058
ldr r0, _02140100 ; =data_ov61_0217ea4c
ldr r2, [r0]
ldrb r1, [r2, #0x368]
strb r1, [r2, #0x36a]
ldr r0, [r0]
ldr r0, [r0, #0x364]
bl func_ov61_02177f3c
_02140058:
ldr r0, _02140100 ; =data_ov61_0217ea4c
ldr r6, [r0]
ldr r0, [r6, #0x90]
cmp r0, #0
cmpne r7, #0
beq _021400b0
cmp r9, #0
moveq r7, #1
mov r0, r5
movne r7, #0
bl func_ov61_021411b0
str r0, [sp]
ldr r1, [r6, #0x94]
ldr r0, _02140100 ; =data_ov61_0217ea4c
str r1, [sp, #4]
ldr r1, [r0]
mov r0, r8
ldr r5, [r1, #0x90]
mov r1, r7
mov r2, r10
mov r3, r4
blx r5
_021400b0:
ldr r0, _02140100 ; =data_ov61_0217ea4c
ldr r1, [r0]
ldrb r0, [r1, #0x2d]
cmp r0, #0
ldreqb r0, [r1, #0x369]
cmpeq r0, #2
addeq sp, sp, #8
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldrb r0, [r1, #0x361]
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
bl func_ov61_02176dc0
bl func_ov61_02143cd0
mov r0, #3
bl func_ov61_0213f77c
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0213fdbc
_021400f8: .word 0xffffe250
_021400fc: .word 0xffffe24f
_02140100: .word data_ov61_0217ea4c
_02140104: .word data_ov61_0217ea54
_02140108: .word data_ov61_0217a698
.global func_ov61_0214010c
arm_func_start func_ov61_0214010c
func_ov61_0214010c: ; 0x0214010c
ldr ip, _02140114 ; =func_ov61_0214a794
bx ip
.align 2, 0
arm_func_end func_ov61_0214010c
_02140114: .word func_ov61_0214a794
.global func_ov61_02140118
arm_func_start func_ov61_02140118
func_ov61_02140118: ; 0x02140118
stmdb sp!, {r3, lr}
bl func_ov61_02174514
bl func_ov61_02166ce0
ldr r2, _0214014c ; =data_ov61_0217ea4c
ldr r1, _02140150 ; =0xfffe8515
str r0, [r2, #4]
mov r0, #9
bl func_ov61_0213e008
ldr r0, _0214014c ; =data_ov61_0217ea4c
mov r1, #0
ldr r0, [r0]
str r1, [r0]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02140118
_0214014c: .word data_ov61_0217ea4c
_02140150: .word 0xfffe8515
.global func_ov61_02140154
arm_func_start func_ov61_02140154
func_ov61_02140154: ; 0x02140154
stmdb sp!, {r4, r5, r6, lr}
ldr ip, _021401d4 ; =data_ov61_0217ebd4
mov r6, r1
mov r5, r2
mov r1, #0
mov r2, #0x260
mov r4, r3
str r0, [ip, #4]
bl func_02007a44
ldr r0, _021401d4 ; =data_ov61_0217ebd4
mov r2, #0
ldr r1, [r0, #4]
ldr ip, [sp, #0x10]
str r5, [r1]
ldr r1, [r0, #4]
ldr r5, [sp, #0x14]
str r2, [r1, #4]
ldr r1, [r0, #4]
ldr r3, [sp, #0x18]
str r4, [r1, #8]
ldr r1, [r0, #4]
ldr r2, [sp, #0x1c]
str ip, [r1, #0xc]
ldr r1, [r0, #4]
str r5, [r1, #0x10]
ldr r1, [r0, #4]
str r3, [r1, #0x14]
ldr r1, [r0, #4]
str r2, [r1, #0x18]
ldr r0, [r0, #4]
str r6, [r0, #0x1c]
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02140154
_021401d4: .word data_ov61_0217ebd4
.global func_ov61_021401d8
arm_func_start func_ov61_021401d8
func_ov61_021401d8: ; 0x021401d8
stmdb sp!, {r3, lr}
ldr r0, _02140208 ; =func_ov61_02140580
mov r1, #0
bl func_ov61_02140634
ldr r0, _0214020c ; =data_ov61_0217ebd4
mov r3, #1
ldr r2, [r0, #4]
mov r1, #0
str r3, [r2, #4]
ldr r0, [r0, #4]
str r1, [r0, #0x30]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021401d8
_02140208: .word func_ov61_02140580
_0214020c: .word data_ov61_0217ebd4
.global func_ov61_02140210
arm_func_start func_ov61_02140210
func_ov61_02140210: ; 0x02140210
stmdb sp!, {r3, lr}
ldr r0, _021402f8 ; =data_ov61_0217ebd4
ldr r0, [r0, #4]
cmp r0, #0
ldmeqia sp!, {r3, pc}
bl func_ov61_0213dfec
cmp r0, #0
ldmneia sp!, {r3, pc}
ldr r0, _021402f8 ; =data_ov61_0217ebd4
ldr r1, [r0, #4]
ldr r0, [r1, #4]
cmp r0, #5
addls pc, pc, r0, lsl #2
ldmia sp!, {r3, pc}
_02140248: ; jump table
ldmia sp!, {r3, pc} ; case 0
b _02140260 ; case 1
b _02140268 ; case 2
b _02140268 ; case 3
b _02140268 ; case 4
ldmia sp!, {r3, pc} ; case 5
_02140260:
bl func_ov61_02140800
ldmia sp!, {r3, pc}
_02140268:
ldr r0, [r1]
cmp r0, #0
ldrne r1, [r0]
cmpne r1, #0
beq _02140280
bl func_ov61_0216701c
_02140280:
ldr r0, _021402f8 ; =data_ov61_0217ebd4
ldr r0, [r0, #4]
ldr r0, [r0, #0x30]
cmp r0, #0
ldmeqia sp!, {r3, pc}
bl func_0200e8f8
ldr r3, _021402f8 ; =data_ov61_0217ebd4
ldr r2, _021402fc ; =0x000082ea
ldr ip, [r3, #4]
mov r3, #0
ldr lr, [ip, #0x34]
ldr ip, [ip, #0x38]
subs lr, r0, lr
sbc r0, r1, ip
mov r1, r0, lsl #0x6
orr r1, r1, lr, lsr #26
mov r0, lr, lsl #0x6
bl func_02002bac
ldr r2, _02140300 ; =0x0000ea60
cmp r1, #0
cmpeq r0, r2
ldmlsia sp!, {r3, pc}
ldr r1, _02140304 ; =0xffff1172
mov r0, #6
bl func_ov61_02140324
ldr r0, _021402f8 ; =data_ov61_0217ebd4
mov r1, #0
ldr r0, [r0, #4]
str r1, [r0, #0x30]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02140210
_021402f8: .word data_ov61_0217ebd4
_021402fc: .word 0x000082ea
_02140300: .word 0x0000ea60
_02140304: .word 0xffff1172
.global func_ov61_02140308
arm_func_start func_ov61_02140308
func_ov61_02140308: ; 0x02140308
ldr r0, _02140320 ; =data_ov61_0217ebd4
ldr r0, [r0, #4]
cmp r0, #0
ldrne r0, [r0, #0x1c]
moveq r0, #0
bx lr
.align 2, 0
arm_func_end func_ov61_02140308
_02140320: .word data_ov61_0217ebd4
.global func_ov61_02140324
arm_func_start func_ov61_02140324
func_ov61_02140324: ; 0x02140324
stmdb sp!, {r4, lr}
ldr r2, _02140370 ; =data_ov61_0217ebd4
mov r4, r0
ldr r2, [r2, #4]
cmp r2, #0
cmpne r4, #0
ldmeqia sp!, {r4, pc}
bl func_ov61_0213e008
ldr r0, _02140370 ; =data_ov61_0217ebd4
ldr r0, [r0, #4]
ldr r3, [r0, #0x14]
cmp r3, #0
beq _02140368
ldr r2, [r0, #0x18]
mov r0, r4
mov r1, #0
blx r3
_02140368:
bl func_ov61_021403d0
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02140324
_02140370: .word data_ov61_0217ebd4
.global func_ov61_02140374
arm_func_start func_ov61_02140374
func_ov61_02140374: ; 0x02140374
stmdb sp!, {r3, lr}
ldr r0, _021403cc ; =data_ov61_0217ebd4
ldr r0, [r0, #4]
ldr r0, [r0, #0x24]
cmp r0, #0
beq _021403bc
bl func_ov61_0214dd9c
bl func_ov61_0214de28
ldr r1, _021403cc ; =data_ov61_0217ebd4
mov r0, #0
ldr r1, [r1, #4]
mov r2, r0
ldr r1, [r1, #0x24]
bl func_ov61_0213e068
ldr r0, _021403cc ; =data_ov61_0217ebd4
mov r1, #0
ldr r0, [r0, #4]
str r1, [r0, #0x24]
_021403bc:
ldr r0, _021403cc ; =data_ov61_0217ebd4
mov r1, #0
str r1, [r0, #4]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02140374
_021403cc: .word data_ov61_0217ebd4
.global func_ov61_021403d0
arm_func_start func_ov61_021403d0
func_ov61_021403d0: ; 0x021403d0
ldr r0, _021403f4 ; =data_ov61_0217ebd4
ldr r2, [r0, #4]
cmp r2, #0
bxeq lr
mov r1, #0
str r1, [r2, #4]
ldr r0, [r0, #4]
str r1, [r0, #0x30]
bx lr
.align 2, 0
arm_func_end func_ov61_021403d0
_021403f4: .word data_ov61_0217ebd4
.global func_ov61_021403f8
arm_func_start func_ov61_021403f8
func_ov61_021403f8: ; 0x021403f8
stmdb sp!, {r4, lr}
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r4, pc}
cmp r4, #4
addls pc, pc, r4, lsl #2
b _02140454
_02140414: ; jump table
b _02140454 ; case 0
b _02140428 ; case 1
b _02140434 ; case 2
b _02140440 ; case 3
b _0214044c ; case 4
_02140428:
mov r0, #9
sub r2, r0, #0xa
b _02140454
_02140434:
mov r0, #9
sub r2, r0, #0xb
b _02140454
_02140440:
mov r0, #6
sub r2, r0, #0x10
b _02140454
_0214044c:
mov r0, #6
sub r2, r0, #0x1a
_02140454:
ldr r1, _02140468 ; =0xffff11b8
add r1, r2, r1
bl func_ov61_02140324
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021403f8
_02140468: .word 0xffff11b8
.global func_ov61_0214046c
arm_func_start func_ov61_0214046c
func_ov61_0214046c: ; 0x0214046c
stmdb sp!, {r4, lr}
sub sp, sp, #8
ldr r3, _02140570 ; =data_ov61_0217ebd4
mov r2, #0
ldr ip, [r3, #4]
mov r4, r1
str r2, [ip, #0x30]
ldr r1, [r4]
cmp r1, #0
bne _02140560
ldr ip, [r3, #4]
ldr r1, [ip, #4]
cmp r1, #2
bne _02140530
ldr r1, [ip, #0x1c]
ldr r0, [r4, #4]
ldr r1, [r1, #0x1c]
cmp r1, r0
bne _0214051c
ldr r1, _02140574 ; =data_ov61_0217a6a8
mov r3, #5
mov r0, #1
str r3, [ip, #4]
bl func_ov61_0214124c
bl func_ov61_021403f8
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r4, pc}
ldr r0, _02140570 ; =data_ov61_0217ebd4
ldr r1, [r4, #4]
ldr r3, [r0, #4]
mov r0, #0
ldr r2, [r3, #0x18]
ldr r3, [r3, #0x14]
blx r3
bl func_ov61_0213f500
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r4, pc}
ldr r0, [r4, #4]
bl func_ov61_021424f8
add sp, sp, #8
cmp r0, #0
ldmia sp!, {r4, pc}
_0214051c:
ldr r1, _02140578 ; =0xffff15a0
mov r0, #6
bl func_ov61_02140324
add sp, sp, #8
ldmia sp!, {r4, pc}
_02140530:
cmp r1, #3
addne sp, sp, #8
ldmneia sp!, {r4, pc}
ldr r1, _0214057c ; =func_ov61_02140a08
mov r3, r2
stmia sp, {r1, r2}
ldr r1, [r4, #4]
bl func_ov61_021672a0
bl func_ov61_021403f8
add sp, sp, #8
cmp r0, #0
ldmia sp!, {r4, pc}
_02140560:
mov r0, r1
bl func_ov61_021403f8
add sp, sp, #8
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214046c
_02140570: .word data_ov61_0217ebd4
_02140574: .word data_ov61_0217a6a8
_02140578: .word 0xffff15a0
_0214057c: .word func_ov61_02140a08
.global func_ov61_02140580
arm_func_start func_ov61_02140580
func_ov61_02140580: ; 0x02140580
ldr ip, _02140590 ; =func_ov61_02140598
ldr r2, _02140594 ; =func_ov61_0214046c
mov r3, #2
bx ip
.align 2, 0
arm_func_end func_ov61_02140580
_02140590: .word func_ov61_02140598
_02140594: .word func_ov61_0214046c
.global func_ov61_02140598
arm_func_start func_ov61_02140598
func_ov61_02140598: ; 0x02140598
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0xc
ldr r4, _02140630 ; =data_ov61_0217ebd4
mov r6, r1
ldr r4, [r4, #4]
mov r1, r0
add r0, r4, #0x48
mov r5, r2
mov r4, r3
bl strcpy
ldr r0, _02140630 ; =data_ov61_0217ebd4
mov r1, r6
ldr r0, [r0, #4]
add r0, r0, #0x148
bl strcpy
ldr r0, _02140630 ; =data_ov61_0217ebd4
ldr r6, [r0, #4]
bl func_0200e8f8
str r0, [r6, #0x34]
str r1, [r6, #0x38]
mov r3, #1
ldr r0, _02140630 ; =data_ov61_0217ebd4
str r3, [r6, #0x30]
ldr r2, [r0, #4]
mov r1, #0
stmia sp, {r1, r5}
str r1, [sp, #8]
ldr r0, [r2]
add r1, r2, #0x48
add r2, r2, #0x148
bl func_ov61_021670a0
bl func_ov61_021403f8
cmp r0, #0
ldreq r0, _02140630 ; =data_ov61_0217ebd4
ldreq r0, [r0, #4]
streq r4, [r0, #4]
add sp, sp, #0xc
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02140598
_02140630: .word data_ov61_0217ebd4
.global func_ov61_02140634
arm_func_start func_ov61_02140634
func_ov61_02140634: ; 0x02140634
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x48
mov r5, r0
mov r4, r1
add r0, sp, #0
mov r1, #0
mov r2, #0x48
bl func_02007a44
ldr r0, _021407e4 ; =data_ov61_0217ebd4
str r5, [r0, #8]
str r4, [r0]
ldr r0, [r0, #4]
ldr r0, [r0, #0x1c]
blx func_ov00_020777c4
cmp r0, #0
beq _02140694
ldr r0, _021407e4 ; =data_ov61_0217ebd4
ldr r1, [r0, #4]
ldr r0, [r1, #0x1c]
add r2, r1, #0x248
ldr r1, [r0, #0x24]
add r0, r0, #0x10
blx func_ov00_02077634
b _02140748
_02140694:
ldr r0, _021407e4 ; =data_ov61_0217ebd4
ldr r0, [r0, #4]
add r0, r0, #0x3c
blx func_ov00_020777b0
cmp r0, #0
bne _021406fc
ldr r0, _021407e4 ; =data_ov61_0217ebd4
ldr r0, [r0, #4]
ldr r0, [r0, #0x1c]
add r0, r0, #4
blx func_ov00_02077760
cmp r0, #0
beq _021406e8
ldr r0, _021407e4 ; =data_ov61_0217ebd4
ldr r1, [r0, #4]
ldr r0, [r1, #0x1c]
add r3, r1, #0x3c
add r0, r0, #4
ldmia r0, {r0, r1, r2}
stmia r3, {r0, r1, r2}
b _02140730
_021406e8:
ldr r0, _021407e4 ; =data_ov61_0217ebd4
ldr r0, [r0, #4]
add r0, r0, #0x3c
blx func_ov00_020776ec
b _02140730
_021406fc:
bl func_0200e8f8
ldr r2, _021407e8 ; =0x6c078965
ldr r3, _021407ec ; =0x5d588b65
umull ip, r4, r0, r2
mla r4, r0, r3, r4
ldr r3, _021407e4 ; =data_ov61_0217ebd4
ldr r0, _021407f0 ; =0x00269ec3
mla r4, r1, r2, r4
adds r0, ip, r0
ldr r3, [r3, #4]
adc r1, r4, #0
add r0, r3, #0x3c
blx func_ov00_02077470
_02140730:
ldr r0, _021407e4 ; =data_ov61_0217ebd4
ldr r2, [r0, #4]
ldr r1, [r2, #0xc]
add r0, r2, #0x3c
add r2, r2, #0x248
blx func_ov00_02077634
_02140748:
ldr r0, _021407e4 ; =data_ov61_0217ebd4
ldr r0, [r0, #4]
ldr r0, [r0, #0x10]
bl func_ov61_0213e828
ldr r1, _021407e4 ; =data_ov61_0217ebd4
mov r2, r0, lsl #0x1
ldr r1, [r1, #4]
add r2, r2, #2
ldr r0, [r1, #0x10]
add r1, sp, #0
bl func_02007ad8
ldr r1, _021407e4 ; =data_ov61_0217ebd4
add r0, sp, #0x34
ldr r1, [r1, #4]
add r1, r1, #0x51
add r1, r1, #0x200
bl strcpy
ldr r4, _021407f4 ; =func_ov61_0213e034
ldr r3, _021407f8 ; =func_ov61_0213e068
ldr r1, _021407fc ; =0x00001c14
mov r0, #0
mov r2, #4
str r4, [sp, #0x40]
str r3, [sp, #0x44]
bl func_ov61_0213e050
ldr r1, _021407e4 ; =data_ov61_0217ebd4
mov r4, r0
ldr r0, [r1, #4]
str r4, [r0, #0x24]
bl func_0200e8f8
ldr r2, _021407e4 ; =data_ov61_0217ebd4
ldr r2, [r2, #4]
str r0, [r2, #0x28]
str r1, [r2, #0x2c]
mov r1, r4
add r0, sp, #0
bl func_ov61_0214dbc4
add sp, sp, #0x48
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02140634
_021407e4: .word data_ov61_0217ebd4
_021407e8: .word 0x6c078965
_021407ec: .word 0x5d588b65
_021407f0: .word 0x00269ec3
_021407f4: .word func_ov61_0213e034
_021407f8: .word func_ov61_0213e068
_021407fc: .word 0x00001c14
.global func_ov61_02140800
arm_func_start func_ov61_02140800
func_ov61_02140800: ; 0x02140800
stmdb sp!, {r3, lr}
sub sp, sp, #0x3d0
bl func_ov61_0214deb0
cmp r0, #0x15
bne _021408d0
add r0, sp, #0x20c
bl func_ov61_0214defc
ldr r0, _021409f0 ; =data_ov61_0217ebd4
add r1, sp, #0x200
ldr r0, [r0, #4]
add r1, r1, #0x56
add r0, r0, #0x48
bl strcpy
ldr r0, _021409f0 ; =data_ov61_0217ebd4
add r1, sp, #0x300
ldr r0, [r0, #4]
add r1, r1, #0x83
add r0, r0, #0x148
bl strcpy
bl func_ov61_0214de28
ldr r1, _021409f0 ; =data_ov61_0217ebd4
mov r0, #0
ldr r1, [r1, #4]
mov r2, r0
ldr r1, [r1, #0x24]
bl func_ov61_0213e068
ldr r0, _021409f0 ; =data_ov61_0217ebd4
mov r2, #0
ldr r1, [r0, #4]
str r2, [r1, #0x24]
ldr r0, [r0, #4]
ldr r0, [r0, #0x1c]
blx func_ov00_020777c4
cmp r0, #0
beq _021408ac
ldr r0, _021409f0 ; =data_ov61_0217ebd4
ldr r2, [r0]
ldmib r0, {r1, r3}
add r0, r1, #0x48
add r1, r1, #0x148
blx r3
add sp, sp, #0x3d0
ldmia sp!, {r3, pc}
_021408ac:
ldr r0, _021409f0 ; =data_ov61_0217ebd4
ldr r2, _021409f4 ; =func_ov61_0214046c
ldr r1, [r0, #4]
mov r3, #3
add r0, r1, #0x48
add r1, r1, #0x148
bl func_ov61_02140598
add sp, sp, #0x3d0
ldmia sp!, {r3, pc}
_021408d0:
bl func_ov61_0214deb0
cmp r0, #0
addeq sp, sp, #0x3d0
ldmeqia sp!, {r3, pc}
bl func_0200e8f8
ldr r3, _021409f0 ; =data_ov61_0217ebd4
ldr r2, _021409f8 ; =0x000082ea
ldr ip, [r3, #4]
mov r3, #0
ldr lr, [ip, #0x28]
ldr ip, [ip, #0x2c]
subs lr, r0, lr
sbc r0, r1, ip
mov r1, r0, lsl #0x6
orr r1, r1, lr, lsr #26
mov r0, lr, lsl #0x6
bl func_02002bac
ldr r2, _021409fc ; =0x00002710
cmp r1, #0
cmpeq r0, r2
bls _0214096c
add r0, sp, #0x48
bl func_ov61_0214defc
bl func_ov61_0214de28
ldr r1, _021409f0 ; =data_ov61_0217ebd4
mov r0, #0
ldr r1, [r1, #4]
mov r2, r0
ldr r1, [r1, #0x24]
bl func_ov61_0213e068
ldr r0, _021409f0 ; =data_ov61_0217ebd4
mov r2, #0
ldr r1, [r0, #4]
mov r0, #2
str r2, [r1, #0x24]
ldr r1, [sp, #0x48]
bl func_ov61_02140324
add sp, sp, #0x3d0
ldmia sp!, {r3, pc}
_0214096c:
bl func_ov61_0214de28
add r0, sp, #0
mov r1, #0
mov r2, #0x48
bl func_02007a44
ldr r0, _021409f0 ; =data_ov61_0217ebd4
ldr r0, [r0, #4]
ldr r0, [r0, #0x10]
bl func_ov61_0213e828
ldr r1, _021409f0 ; =data_ov61_0217ebd4
mov r2, r0, lsl #0x1
ldr r1, [r1, #4]
add r2, r2, #2
ldr r0, [r1, #0x10]
add r1, sp, #0
bl func_02007ad8
ldr r1, _021409f0 ; =data_ov61_0217ebd4
add r0, sp, #0x34
ldr r1, [r1, #4]
add r1, r1, #0x51
add r1, r1, #0x200
bl strcpy
ldr r2, _02140a00 ; =func_ov61_0213e034
ldr r0, _021409f0 ; =data_ov61_0217ebd4
str r2, [sp, #0x40]
ldr r2, _02140a04 ; =func_ov61_0213e068
ldr r1, [r0, #4]
str r2, [sp, #0x44]
ldr r1, [r1, #0x24]
add r0, sp, #0
bl func_ov61_0214dbc4
add sp, sp, #0x3d0
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02140800
_021409f0: .word data_ov61_0217ebd4
_021409f4: .word func_ov61_0214046c
_021409f8: .word 0x000082ea
_021409fc: .word 0x00002710
_02140a00: .word func_ov61_0213e034
_02140a04: .word func_ov61_0213e068
.global func_ov61_02140a08
arm_func_start func_ov61_02140a08
func_ov61_02140a08: ; 0x02140a08
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x48
mov r4, r1
ldr r1, [r4]
mov r5, r0
cmp r1, #0
addne sp, sp, #0x48
ldmneia sp!, {r3, r4, r5, pc}
ldr r1, _02140b98 ; =data_ov61_0217ebd4
ldr r2, [r1, #4]
ldr r1, [r2, #4]
cmp r1, #3
bne _02140ae0
ldrsb r1, [r4, #0x8e]
cmp r1, #0
bne _02140ab8
ldr r0, [r2, #0x1c]
ldr r1, [r2, #0xc]
add r2, sp, #0x32
add r0, r0, #4
blx func_ov00_02077634
ldr r1, _02140b9c ; =0x00000705
add r2, sp, #0x32
mov r0, r5
bl func_ov61_0216737c
bl func_ov61_021403f8
cmp r0, #0
addne sp, sp, #0x48
ldmneia sp!, {r3, r4, r5, pc}
ldr r0, _02140b98 ; =data_ov61_0217ebd4
mov r3, #4
ldr r1, [r0, #4]
ldr r0, _02140ba0 ; =func_ov61_02140a08
mov r2, #0
str r3, [r1, #4]
stmia sp, {r0, r2}
ldr r1, [r4, #4]
mov r0, r5
mov r3, r2
bl func_ov61_021672a0
bl func_ov61_021403f8
add sp, sp, #0x48
cmp r0, #0
ldmia sp!, {r3, r4, r5, pc}
_02140ab8:
bl func_ov61_021671a4
ldr r0, _02140ba4 ; =func_ov61_02140580
mov r1, #0
bl func_ov61_02140634
ldr r0, _02140b98 ; =data_ov61_0217ebd4
mov r1, #1
ldr r0, [r0, #4]
add sp, sp, #0x48
str r1, [r0, #4]
ldmia sp!, {r3, r4, r5, pc}
_02140ae0:
cmp r1, #4
addne sp, sp, #0x48
ldmneia sp!, {r3, r4, r5, pc}
ldr r0, [r2, #0x1c]
ldr r1, [r2, #0xc]
add r2, sp, #0x1d
add r0, r0, #4
blx func_ov00_02077634
add r1, sp, #0x1d
add r0, r4, #0x8e
bl strcmp
cmp r0, #0
bne _02140b6c
ldr r0, _02140b98 ; =data_ov61_0217ebd4
add r2, sp, #8
ldr r0, [r0, #4]
ldr r1, [r0, #0xc]
add r0, r0, #0x3c
blx func_ov00_02077634
ldr r0, _02140b98 ; =data_ov61_0217ebd4
ldr r2, [r4, #4]
ldr r1, [r0, #4]
ldr r0, [r1, #0x1c]
add r1, r1, #0x3c
blx func_ov00_02077894
mov r0, r5
bl func_ov61_021671a4
ldr r0, _02140b98 ; =data_ov61_0217ebd4
ldr r2, [r0]
ldmib r0, {r1, r3}
add r0, r1, #0x48
add r1, r1, #0x148
blx r3
add sp, sp, #0x48
ldmia sp!, {r3, r4, r5, pc}
_02140b6c:
ldr r0, _02140ba0 ; =func_ov61_02140a08
mov r2, #0
stmia sp, {r0, r2}
ldr r1, [r4, #4]
mov r0, r5
mov r3, r2
bl func_ov61_021672a0
bl func_ov61_021403f8
cmp r0, #0
add sp, sp, #0x48
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02140a08
_02140b98: .word data_ov61_0217ebd4
_02140b9c: .word 0x00000705
_02140ba0: .word func_ov61_02140a08
_02140ba4: .word func_ov61_02140580
.global func_ov61_02140ba8
arm_func_start func_ov61_02140ba8
func_ov61_02140ba8: ; 0x02140ba8
ldr r0, _02140bd0 ; =data_ov61_0217ebd4
ldr r0, [r0, #4]
cmp r0, #0
beq _02140bc8
ldr r0, [r0, #4]
cmp r0, #5
moveq r0, #1
bxeq lr
_02140bc8:
mov r0, #0
bx lr
.align 2, 0
arm_func_end func_ov61_02140ba8
_02140bd0: .word data_ov61_0217ebd4
.global func_ov61_02140bd4
arm_func_start func_ov61_02140bd4
func_ov61_02140bd4: ; 0x02140bd4
ldr ip, _02140be8 ; =func_ov61_02140bec
mov r3, r1
mov r1, #0
mov r2, r1
bx ip
.align 2, 0
arm_func_end func_ov61_02140bd4
_02140be8: .word func_ov61_02140bec
.global func_ov61_02140bec
arm_func_start func_ov61_02140bec
func_ov61_02140bec: ; 0x02140bec
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0x214
mov r6, r1
add r1, sp, #4
mov r4, r2
mov r5, r3
bl func_ov61_02141938
cmp r0, #0
beq _02140cdc
ldr r0, [sp, #8]
cmp r0, #6
bne _02140ca0
cmp r6, #0
beq _02140c5c
ldr r0, _02140d00 ; =data_ov61_0217a6ac
add r1, sp, #0
add r2, sp, #0xc
mov r3, #0x2f
bl func_ov61_0213e5f8
cmp r0, #0
movle r0, #0
strleb r0, [r6]
ble _02140c5c
add r0, sp, #0
mov r1, #0
mov r2, #0xa
bl func_02048ecc
strb r0, [r6]
_02140c5c:
cmp r4, #0
beq _02140cb8
ldr r0, _02140d04 ; =data_ov61_0217a6b0
add r1, sp, #0
add r2, sp, #0xc
mov r3, #0x2f
bl func_ov61_0213e5f8
cmp r0, #0
movle r0, #0
strleb r0, [r4]
ble _02140cb8
add r0, sp, #0
mov r1, #0
mov r2, #0xa
bl func_02048ecc
strb r0, [r4]
b _02140cb8
_02140ca0:
cmp r6, #0
movne r0, #0
strneb r0, [r6]
cmp r4, #0
movne r0, #0
strneb r0, [r4]
_02140cb8:
cmp r5, #0
beq _02140ccc
add r1, sp, #0x10c
mov r0, r5
bl strcpy
_02140ccc:
ldr r0, [sp, #8]
add sp, sp, #0x214
and r0, r0, #0xff
ldmia sp!, {r3, r4, r5, r6, pc}
_02140cdc:
cmp r6, #0
movne r0, #0
strneb r0, [r6]
cmp r4, #0
movne r0, #0
strneb r0, [r4]
mov r0, #0
add sp, sp, #0x214
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02140bec
_02140d00: .word data_ov61_0217a6ac
_02140d04: .word data_ov61_0217a6b0
.global func_ov61_02140d08
arm_func_start func_ov61_02140d08
func_ov61_02140d08: ; 0x02140d08
ldr r2, _02140d30 ; =data_ov61_0217ebe0
ldr r3, [r2]
cmp r3, #0
moveq r0, #0
bxeq lr
str r0, [r3, #0x44]
ldr r2, [r2]
mov r0, #1
str r1, [r2, #0x48]
bx lr
.align 2, 0
arm_func_end func_ov61_02140d08
_02140d30: .word data_ov61_0217ebe0
.global func_ov61_02140d34
arm_func_start func_ov61_02140d34
func_ov61_02140d34: ; 0x02140d34
stmdb sp!, {r4, lr}
ldr lr, _02140e10 ; =data_ov61_0217ebe0
mov ip, #0
str r0, [lr]
str ip, [r0]
ldr r4, [lr]
ldr r0, [sp, #8]
str r1, [r4, #4]
ldr r1, [lr]
str ip, [r1, #8]
ldr r1, [lr]
str ip, [r1, #0xc]
str ip, [r1, #0x10]
str r0, [r1, #0x14]
ldr r0, [lr]
str r3, [r0, #0x18]
ldr r0, [lr]
strb ip, [r0, #0x1c]
ldr r0, [lr]
strb ip, [r0, #0x1d]
ldr r0, [lr]
strb ip, [r0, #0x1e]
ldr r0, [lr]
strb ip, [r0, #0x1f]
ldr r0, [lr]
str ip, [r0, #0x20]
ldr r0, [lr]
str ip, [r0, #0x24]
ldr r0, [lr]
str r2, [r0, #0x28]
ldr r0, [lr]
str ip, [r0, #0x2c]
ldr r0, [lr]
str ip, [r0, #0x30]
ldr r0, [lr]
str ip, [r0, #0x34]
ldr r0, [lr]
str ip, [r0, #0x38]
ldr r0, [lr]
str ip, [r0, #0x3c]
ldr r0, [lr]
str ip, [r0, #0x40]
ldr r0, [lr]
str ip, [r0, #0x44]
ldr r0, [lr]
str ip, [r0, #0x48]
ldr r0, [lr]
str ip, [r0, #0x4c]
ldr r0, [lr]
str ip, [r0, #0x50]
ldr r0, [lr]
str ip, [r0, #0x54]
ldr r0, [lr]
str ip, [r0, #0x58]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02140d34
_02140e10: .word data_ov61_0217ebe0
.global func_ov61_02140e14
arm_func_start func_ov61_02140e14
func_ov61_02140e14: ; 0x02140e14
stmdb sp!, {r3, lr}
ldr r0, _02140f18 ; =data_ov61_0217ebe0
ldr r0, [r0]
cmp r0, #0
ldrne r0, [r0, #0x18]
cmpne r0, #0
ldmeqia sp!, {r3, pc}
bl func_ov61_0213dfec
cmp r0, #0
ldmneia sp!, {r3, pc}
bl func_ov61_02141ff0
cmp r0, #0
bne _02140e54
bl func_ov61_02172150
cmp r0, #0
beq _02140e58
_02140e54:
bl func_ov61_02172170
_02140e58:
ldr r0, _02140f18 ; =data_ov61_0217ebe0
ldr r0, [r0]
ldr r0, [r0, #4]
cmp r0, #0
ldrne r0, [r0]
cmpne r0, #0
beq _02140ef4
bl func_ov61_02141398
cmp r0, #0
ldmneia sp!, {r3, pc}
ldr r0, _02140f18 ; =data_ov61_0217ebe0
ldr r3, [r0]
ldr r0, [r3]
cmp r0, #0
ldmeqia sp!, {r3, pc}
ldr r0, [r3, #0x18]
cmp r0, #0
ldrneb r2, [r3, #0x1e]
cmpne r2, #3
beq _02140ef4
ldr r1, [r3, #8]
cmp r1, #7
bls _02140ef4
cmp r2, #1
bhi _02140ec4
ldr r1, [r3, #0x14]
bl func_ov61_02141454
_02140ec4:
ldr r0, _02140f18 ; =data_ov61_0217ebe0
ldr r3, [r0]
ldrb r2, [r3, #0x1c]
ldr r1, [r3, #0x14]
cmp r2, r1
blt _02140ef4
mov r1, #3
strb r1, [r3, #0x1e]
ldr r1, [r0]
ldrb r0, [r1, #0x1f]
add r0, r0, #1
strb r0, [r1, #0x1f]
_02140ef4:
ldr r0, _02140f18 ; =data_ov61_0217ebe0
ldr r1, [r0]
ldrb r0, [r1, #0x1f]
cmp r0, #2
ldmloia sp!, {r3, pc}
mov r0, #0
strb r0, [r1, #0x1f]
bl func_ov61_021416c0
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02140e14
_02140f18: .word data_ov61_0217ebe0
.global func_ov61_02140f1c
arm_func_start func_ov61_02140f1c
func_ov61_02140f1c: ; 0x02140f1c
stmdb sp!, {r3, r4, r5, lr}
ldr r0, _02140fc4 ; =data_ov61_0217ebe0
ldr r5, [sp, #0x10]
ldr r1, [r0]
ldr r4, [sp, #0x14]
str r2, [r1, #0x2c]
ldr r1, [r0]
ldr lr, [sp, #0x18]
str r3, [r1, #0x30]
ldr r1, [r0]
ldr ip, [sp, #0x1c]
str r5, [r1, #0x34]
ldr r1, [r0]
mov r3, #0
str r4, [r1, #0x38]
ldr r1, [r0]
mov r2, #1
str lr, [r1, #0x3c]
ldr r1, [r0]
str ip, [r1, #0x40]
ldr r1, [r0]
strb r3, [r1, #0x1d]
ldr r1, [r0]
strb r3, [r1, #0x1e]
ldr r1, [r0]
strb r3, [r1, #0x1f]
ldr r1, [r0]
strb r3, [r1, #0x1c]
ldr r1, [r0]
str r2, [r1]
ldr r1, [r0]
ldr r0, [r1, #0x18]
cmp r0, #0
ldreqb r0, [r1, #0x1f]
addeq r0, r0, #1
streqb r0, [r1, #0x1f]
ldr r0, _02140fc4 ; =data_ov61_0217ebe0
ldr r1, [r0]
ldrb r0, [r1, #0x1f]
add r0, r0, #1
strb r0, [r1, #0x1f]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02140f1c
_02140fc4: .word data_ov61_0217ebe0
.global func_ov61_02140fc8
arm_func_start func_ov61_02140fc8
func_ov61_02140fc8: ; 0x02140fc8
stmdb sp!, {r4, lr}
ldr r2, _0214101c ; =data_ov61_0217ebe0
mov r4, r0
ldr r2, [r2]
cmp r2, #0
cmpne r4, #0
ldmeqia sp!, {r4, pc}
bl func_ov61_0213e008
ldr r0, _0214101c ; =data_ov61_0217ebe0
ldr r3, [r0]
ldr r0, [r3]
cmp r0, #0
cmpne r0, #2
beq _02141014
ldrb r1, [r3, #0x1d]
ldr r2, [r3, #0x30]
ldr r3, [r3, #0x2c]
mov r0, r4
blx r3
_02141014:
bl func_ov61_02141424
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02140fc8
_0214101c: .word data_ov61_0217ebe0
.global func_ov61_02141020
arm_func_start func_ov61_02141020
func_ov61_02141020: ; 0x02141020
stmdb sp!, {r3, lr}
sub sp, sp, #8
ldr r2, _02141064 ; =data_ov61_0217ebe0
ldr r2, [r2]
ldr r2, [r2, #0x18]
cmp r2, #0
addeq sp, sp, #8
ldmeqia sp!, {r3, pc}
ldr r3, _02141068 ; =func_ov61_02141ca4
mov r2, #0
str r3, [sp]
str r2, [sp, #4]
ldr r1, [r1]
mov r3, r2
bl func_ov61_021672a0
add sp, sp, #8
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02141020
_02141064: .word data_ov61_0217ebe0
_02141068: .word func_ov61_02141ca4
.global func_ov61_0214106c
arm_func_start func_ov61_0214106c
func_ov61_0214106c: ; 0x0214106c
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #8
mov r4, r1
mov r5, r0
ldr r0, [r4, #8]
ldr r1, _021410c0 ; =data_ov61_0217a6b4
bl strcmp
cmp r0, #0
addne sp, sp, #8
movne r0, #0
ldmneia sp!, {r3, r4, r5, pc}
ldr r0, _021410c4 ; =func_ov61_02141e54
mov r2, #0
stmia sp, {r0, r2}
ldr r1, [r4]
mov r0, r5
mov r3, r2
bl func_ov61_021672a0
mov r0, #1
add sp, sp, #8
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0214106c
_021410c0: .word data_ov61_0217a6b4
_021410c4: .word func_ov61_02141e54
.global func_ov61_021410c8
arm_func_start func_ov61_021410c8
func_ov61_021410c8: ; 0x021410c8
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #0x210
ldr r2, _02141148 ; =data_ov61_0217ebe0
mov r6, r0
ldr r0, [r2]
mov r5, r1
ldr r0, [r0, #0x34]
cmp r0, #0
addeq sp, sp, #0x210
ldmeqia sp!, {r4, r5, r6, pc}
ldr r0, [r5]
bl func_ov61_021411b0
mov r4, r0
mvn r0, #0
cmp r4, r0
addeq sp, sp, #0x210
ldmeqia sp!, {r4, r5, r6, pc}
ldr r1, [r5, #8]
add r2, sp, #0
mov r0, r6
bl func_ov61_02167680
ldr r0, _02141148 ; =data_ov61_0217ebe0
ldr r1, [sp, #4]
ldr r0, [r0]
add r2, sp, #0x108
ldr r3, [r0, #0x38]
ldr ip, [r0, #0x34]
mov r0, r4
and r1, r1, #0xff
blx ip
add sp, sp, #0x210
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_021410c8
_02141148: .word data_ov61_0217ebe0
.global func_ov61_0214114c
arm_func_start func_ov61_0214114c
func_ov61_0214114c: ; 0x0214114c
ldr r0, _02141164 ; =data_ov61_0217ebe0
ldr r0, [r0]
cmp r0, #0
ldrne r0, [r0, #0x14]
moveq r0, #0
bx lr
.align 2, 0
arm_func_end func_ov61_0214114c
_02141164: .word data_ov61_0217ebe0
.global func_ov61_02141168
arm_func_start func_ov61_02141168
func_ov61_02141168: ; 0x02141168
stmdb sp!, {r3, r4, r5, lr}
ldr r1, _021411ac ; =data_ov61_0217ebe0
mov r5, r0
ldr r0, [r1]
ldr r4, [r0, #0x18]
cmp r4, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
bl func_ov61_02140308
mov r1, #0xc
mla r1, r5, r1, r4
blx func_ov00_02077948
cmp r0, #0
mvnne r1, #0
cmpne r0, r1
moveq r0, #0
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02141168
_021411ac: .word data_ov61_0217ebe0
.global func_ov61_021411b0
arm_func_start func_ov61_021411b0
func_ov61_021411b0: ; 0x021411b0
stmdb sp!, {r4, r5, r6, lr}
ldr r4, _02141210 ; =data_ov61_0217ebe0
mov r6, r0
ldr r0, [r4]
cmp r0, #0
cmpne r6, #0
mvneq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
ldr r0, [r0, #0x14]
mov r5, #0
cmp r0, #0
ble _02141208
_021411e0:
mov r0, r5
bl func_ov61_02141168
cmp r6, r0
moveq r0, r5
ldmeqia sp!, {r4, r5, r6, pc}
ldr r0, [r4]
add r5, r5, #1
ldr r0, [r0, #0x14]
cmp r5, r0
blt _021411e0
_02141208:
mvn r0, #0
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_021411b0
_02141210: .word data_ov61_0217ebe0
.global func_ov61_02141214
arm_func_start func_ov61_02141214
func_ov61_02141214: ; 0x02141214
stmdb sp!, {r3, lr}
ldr r0, _02141248 ; =data_ov61_0217ebe0
ldr r1, [r0]
cmp r1, #0
ldmeqia sp!, {r3, pc}
mov r0, #0
str r0, [r1, #8]
bl func_0200e8f8
ldr r2, _02141248 ; =data_ov61_0217ebe0
ldr r2, [r2]
str r0, [r2, #0xc]
str r1, [r2, #0x10]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02141214
_02141248: .word data_ov61_0217ebe0
.global func_ov61_0214124c
arm_func_start func_ov61_0214124c
func_ov61_0214124c: ; 0x0214124c
stmdb sp!, {r4, r5, r6, lr}
ldr r3, _021412f8 ; =data_ov61_0217ebe0
mov r6, r0
ldr r0, [r3]
mov r5, r1
mov r4, r2
cmp r0, #0
beq _02141278
bl func_ov61_02140ba8
cmp r0, #0
bne _02141280
_02141278:
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
_02141280:
mvn r0, #0
cmp r6, r0
bne _021412a0
ldr r0, _021412f8 ; =data_ov61_0217ebe0
ldr r0, [r0]
ldr r0, [r0, #4]
ldr r0, [r0]
ldr r6, [r0, #0x214]
_021412a0:
cmp r5, #0
bne _021412bc
ldr r0, _021412f8 ; =data_ov61_0217ebe0
ldr r0, [r0]
ldr r0, [r0, #4]
ldr r0, [r0]
add r5, r0, #0x218
_021412bc:
cmp r4, #0
bne _021412d8
ldr r0, _021412f8 ; =data_ov61_0217ebe0
ldr r0, [r0]
ldr r0, [r0, #4]
ldr r0, [r0]
add r4, r0, #0x318
_021412d8:
ldr r0, _021412f8 ; =data_ov61_0217ebe0
mov r1, r6
ldr r0, [r0]
mov r2, r5
ldr r0, [r0, #4]
mov r3, r4
bl func_ov61_021678d4
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0214124c
_021412f8: .word data_ov61_0217ebe0
.global func_ov61_021412fc
arm_func_start func_ov61_021412fc
func_ov61_021412fc: ; 0x021412fc
stmdb sp!, {r4, lr}
sub sp, sp, #0x210
ldr r1, _02141380 ; =data_ov61_0217ebe0
mov r4, r0
ldr r3, [r1]
ldr r2, [r3, #0x44]
cmp r2, #0
ldrne r1, [r3]
cmpne r1, #1
beq _0214132c
ldr r1, [r3, #0x48]
blx r2
_0214132c:
ldr r0, _02141380 ; =data_ov61_0217ebe0
ldr r1, [r0]
ldr r0, [r1, #0x34]
cmp r0, #0
addeq sp, sp, #0x210
ldmeqia sp!, {r4, pc}
ldr r1, [r1, #0x18]
mov r0, #0xc
mla r0, r4, r0, r1
add r1, sp, #0x108
bl func_ov61_02140bd4
ldr r2, _02141380 ; =data_ov61_0217ebe0
mov r1, r0
ldr r0, [r2]
add r2, sp, #0x108
ldr r3, [r0, #0x38]
ldr ip, [r0, #0x34]
mov r0, r4
blx ip
add sp, sp, #0x210
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021412fc
_02141380: .word data_ov61_0217ebe0
.global func_ov61_02141384
arm_func_start func_ov61_02141384
func_ov61_02141384: ; 0x02141384
ldr r0, _02141394 ; =data_ov61_0217ebe0
mov r1, #0
str r1, [r0]
bx lr
.align 2, 0
arm_func_end func_ov61_02141384
_02141394: .word data_ov61_0217ebe0
.global func_ov61_02141398
arm_func_start func_ov61_02141398
func_ov61_02141398: ; 0x02141398
stmdb sp!, {r3, r4, r5, lr}
ldr r0, _0214141c ; =data_ov61_0217ebe0
mov r4, #0
ldr r5, [r0]
bl func_0200e8f8
ldr r3, [r5, #0xc]
ldr r2, [r5, #0x10]
subs r3, r0, r3
sbc r0, r1, r2
mov r1, r0, lsl #0x6
ldr r2, _02141420 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, r4
bl func_02002bac
cmp r1, #0
cmpeq r0, #0x12c
blo _02141414
ldr r1, [r5, #8]
ldr r0, _0214141c ; =data_ov61_0217ebe0
add r1, r1, #1
str r1, [r5, #8]
ldr r0, [r0]
ldr r0, [r0, #4]
bl func_ov61_0216701c
mov r4, r0
bl func_0200e8f8
ldr r2, _0214141c ; =data_ov61_0217ebe0
ldr r2, [r2]
str r0, [r2, #0xc]
str r1, [r2, #0x10]
_02141414:
mov r0, r4
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02141398
_0214141c: .word data_ov61_0217ebe0
_02141420: .word 0x000082ea
.global func_ov61_02141424
arm_func_start func_ov61_02141424
func_ov61_02141424: ; 0x02141424
ldr r0, _02141450 ; =data_ov61_0217ebe0
ldr r1, [r0]
cmp r1, #0
bxeq lr
mov r2, #0
str r2, [r1]
ldr r1, [r0]
strb r2, [r1, #0x1e]
ldr r0, [r0]
strb r2, [r0, #0x1f]
bx lr
.align 2, 0
arm_func_end func_ov61_02141424
_02141450: .word data_ov61_0217ebe0
.global func_ov61_02141454
arm_func_start func_ov61_02141454
func_ov61_02141454: ; 0x02141454
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
sub sp, sp, #0x248
ldr r2, _021416b8 ; =data_ov61_0217ebe0
mov r7, r0
ldr r2, [r2]
mov r6, r1
ldrb r0, [r2, #0x1e]
cmp r0, #0
bne _02141584
ldr r0, [r2, #4]
add r1, sp, #0x1c
bl func_ov61_02167650
bl func_ov61_021419f4
ldr r0, [sp, #0x1c]
mov r1, #0
str r1, [sp, #0x18]
cmp r0, #0
ble _02141574
_0214149c:
ldr r0, _021416b8 ; =data_ov61_0217ebe0
ldr r1, [sp, #0x18]
ldr r0, [r0]
add r2, sp, #0x38
ldr r0, [r0, #4]
bl func_ov61_02167680
bl func_ov61_021419f4
cmp r6, #0
mov r4, #0
ble _02141524
_021414c4:
mov r0, r4
bl func_ov61_02141168
ldr r1, [sp, #0x38]
cmp r1, r0
bne _02141518
mov r0, #0xc
mul r5, r4, r0
add r0, r7, r5
blx func_ov00_0207749c
cmp r0, #0
bne _02141524
ldr r1, [sp, #0x38]
add r0, r7, r5
blx func_ov00_02077a10
add r0, r7, r5
blx func_ov00_020774f8
ldr r0, _021416b8 ; =data_ov61_0217ebe0
mov r1, #1
ldr r0, [r0]
strb r1, [r0, #0x1d]
b _02141524
_02141518:
add r4, r4, #1
cmp r4, r6
blt _021414c4
_02141524:
cmp r4, r6
bne _0214155c
ldr r0, _021416b8 ; =data_ov61_0217ebe0
ldr r1, [sp, #0x38]
ldr r0, [r0]
ldr r0, [r0, #4]
bl func_ov61_0216787c
bl func_ov61_021419f4
ldr r1, [sp, #0x1c]
ldr r0, [sp, #0x18]
sub r1, r1, #1
sub r0, r0, #1
str r1, [sp, #0x1c]
str r0, [sp, #0x18]
_0214155c:
ldr r1, [sp, #0x18]
ldr r0, [sp, #0x1c]
add r1, r1, #1
str r1, [sp, #0x18]
cmp r1, r0
blt _0214149c
_02141574:
ldr r0, _021416b8 ; =data_ov61_0217ebe0
mov r1, #1
ldr r0, [r0]
strb r1, [r0, #0x1e]
_02141584:
ldr r10, _021416b8 ; =data_ov61_0217ebe0
ldr r0, [r10]
ldrb r0, [r0, #0x1c]
cmp r0, r6
addge sp, sp, #0x248
ldmgeia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
add r4, sp, #0x18
mov r8, #0xc
mvn r9, #0
_021415a8:
bl func_ov61_02141168
movs r5, r0
beq _02141600
ldr r1, [r10]
mov r0, r7
ldrb r1, [r1, #0x1c]
mov r2, r5
bl func_ov61_02141750
cmp r0, #0
bne _02141690
ldr r0, [r10]
mov r1, r5
ldr r0, [r0, #4]
mov r2, r4
bl func_ov61_021677c0
bl func_ov61_021419f4
ldr r0, [sp, #0x18]
cmp r0, r9
bne _02141690
mov r0, r5
bl func_ov61_02141904
b _02141690
_02141600:
bl func_ov61_02140308
ldr r1, [r10]
ldrb r2, [r1, #0x1c]
mla r1, r2, r8, r7
blx func_ov00_02077948
cmp r0, r9
bne _02141690
bl func_ov61_02140308
ldr r2, _021416b8 ; =data_ov61_0217ebe0
mov r1, #0xc
ldr r3, [r2]
add r2, sp, #0x20
ldrb r3, [r3, #0x1c]
mla r1, r3, r1, r7
blx func_ov00_02077a30
ldr r0, _021416b8 ; =data_ov61_0217ebe0
mov r1, #0
ldr r4, [r0]
add r2, sp, #0x20
stmia sp, {r1, r2}
str r1, [sp, #8]
ldr r0, _021416bc ; =func_ov61_02141a68
str r1, [sp, #0xc]
str r0, [sp, #0x10]
ldrb r0, [r4, #0x1c]
mov r2, r1
mov r3, r1
str r0, [sp, #0x14]
ldr r0, [r4, #4]
bl func_ov61_021671d8
ldr r0, _021416b8 ; =data_ov61_0217ebe0
mov r1, #2
ldr r0, [r0]
add sp, sp, #0x248
strb r1, [r0, #0x1e]
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02141690:
ldr r1, [r10]
ldrb r0, [r1, #0x1c]
add r0, r0, #1
strb r0, [r1, #0x1c]
ldr r0, [r10]
ldrb r0, [r0, #0x1c]
cmp r0, r6
blt _021415a8
add sp, sp, #0x248
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
.align 2, 0
arm_func_end func_ov61_02141454
_021416b8: .word data_ov61_0217ebe0
_021416bc: .word func_ov61_02141a68
.global func_ov61_021416c0
arm_func_start func_ov61_021416c0
func_ov61_021416c0: ; 0x021416c0
stmdb sp!, {r3, lr}
ldr r1, _021416f4 ; =data_ov61_0217ebe0
mov r0, #0
ldr r3, [r1]
ldrb r1, [r3, #0x1d]
ldr r2, [r3, #0x30]
ldr r3, [r3, #0x2c]
blx r3
ldr r0, _021416f4 ; =data_ov61_0217ebe0
mov r1, #2
ldr r0, [r0]
str r1, [r0]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021416c0
_021416f4: .word data_ov61_0217ebe0
.global func_ov61_021416f8
arm_func_start func_ov61_021416f8
func_ov61_021416f8: ; 0x021416f8
stmdb sp!, {r3, r4, r5, lr}
ldr r3, _0214174c ; =data_ov61_0217ebe0
mov r5, r1
ldr r1, [r3]
mov r4, r2
cmp r1, #0
ldmeqia sp!, {r3, r4, r5, pc}
mov r2, #0xc
mla r0, r5, r2, r0
mov r1, #0
bl func_02007a44
ldr r0, _0214174c ; =data_ov61_0217ebe0
ldr r0, [r0]
ldr r3, [r0, #0x3c]
cmp r3, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r2, [r0, #0x40]
mov r0, r5
mov r1, r4
blx r3
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_021416f8
_0214174c: .word data_ov61_0217ebe0
.global func_ov61_02141750
arm_func_start func_ov61_02141750
func_ov61_02141750: ; 0x02141750
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r6, r1
mov r7, r0
mov r5, r2
cmp r6, #0
mov r4, #0
ble _021417f0
_0214176c:
mov r0, r4
bl func_ov61_02141168
cmp r0, #0
beq _021417e4
cmp r0, r5
bne _021417e4
mov r0, #0xc
mla r0, r6, r0, r7
blx func_ov00_0207749c
cmp r0, #0
beq _021417c0
mov r0, #0xc
mla r0, r4, r0, r7
blx func_ov00_0207749c
cmp r0, #0
bne _021417c0
mov r0, r7
mov r1, r4
mov r2, r6
bl func_ov61_021416f8
b _021417d0
_021417c0:
mov r0, r7
mov r1, r6
mov r2, r4
bl func_ov61_021416f8
_021417d0:
ldr r1, _021417f8 ; =data_ov61_0217ebe0
mov r0, #1
ldr r1, [r1]
strb r0, [r1, #0x1d]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021417e4:
add r4, r4, #1
cmp r4, r6
blt _0214176c
_021417f0:
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02141750
_021417f8: .word data_ov61_0217ebe0
.global func_ov61_021417fc
arm_func_start func_ov61_021417fc
func_ov61_021417fc: ; 0x021417fc
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #8
mov r10, r1
mov r11, r0
mvn r0, #0
str r2, [sp]
cmp r10, #0
str r0, [sp, #4]
mov r5, #0
ble _021418f4
mov r7, r11
mov r8, r11
_0214182c:
mov r0, r5
bl func_ov61_02141168
movs r4, r0
beq _021418e0
ldr r0, [sp]
add r6, r5, #1
cmp r4, r0
streq r5, [sp, #4]
cmp r6, r10
bge _021418e0
mov r0, #0xc
mla r9, r6, r0, r11
_0214185c:
mov r0, r6
bl func_ov61_02141168
cmp r4, r0
bne _021418d0
mov r0, r7
blx func_ov00_020774c4
cmp r0, #2
bne _02141898
mov r0, r9
blx func_ov00_020774c4
cmp r0, #3
bne _02141898
mov r0, r8
mov r1, r4
blx func_ov00_02077a10
_02141898:
mov r0, r9
blx func_ov00_0207749c
cmp r0, #0
beq _021418b0
mov r0, r8
blx func_ov00_020774f8
_021418b0:
mov r0, r11
mov r1, r6
mov r2, r5
bl func_ov61_021416f8
ldr r0, _02141900 ; =data_ov61_0217ebe0
ldr r1, [r0]
mov r0, #1
strb r0, [r1, #0x1d]
_021418d0:
add r6, r6, #1
cmp r6, r10
add r9, r9, #0xc
blt _0214185c
_021418e0:
add r5, r5, #1
cmp r5, r10
add r7, r7, #0xc
add r8, r8, #0xc
blt _0214182c
_021418f4:
ldr r0, [sp, #4]
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_021417fc
_02141900: .word data_ov61_0217ebe0
.global func_ov61_02141904
arm_func_start func_ov61_02141904
func_ov61_02141904: ; 0x02141904
stmdb sp!, {r4, lr}
ldr r2, _02141930 ; =data_ov61_0217ebe0
mov r1, r0
ldr r0, [r2]
ldr r2, _02141934 ; =data_ov61_0217a6ec
ldr r0, [r0, #4]
bl func_ov61_021673cc
mov r4, r0
bl func_ov61_021419f4
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02141904
_02141930: .word data_ov61_0217ebe0
_02141934: .word data_ov61_0217a6ec
.global func_ov61_02141938
arm_func_start func_ov61_02141938
func_ov61_02141938: ; 0x02141938
stmdb sp!, {r3, r4, r5, lr}
ldr r2, _021419f0 ; =data_ov61_0217ebe0
mov r3, #0
ldr r2, [r2]
mov r5, r0
mov r4, r1
str r3, [sp]
cmp r2, #0
beq _02141968
bl func_ov61_02140ba8
cmp r0, #0
bne _02141970
_02141968:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_02141970:
bl func_ov61_02140308
mov r1, r5
blx func_ov00_02077948
mov r5, r0
cmp r5, #0
ble _021419ac
ldr r0, _021419f0 ; =data_ov61_0217ebe0
add r2, sp, #0
ldr r0, [r0]
mov r1, r5
ldr r0, [r0, #4]
bl func_ov61_021677c0
cmp r0, #0
movne r0, #0
ldmneia sp!, {r3, r4, r5, pc}
_021419ac:
cmp r5, #0
ble _021419c4
ldr r1, [sp]
mvn r0, #0
cmp r1, r0
bne _021419cc
_021419c4:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_021419cc:
ldr r0, _021419f0 ; =data_ov61_0217ebe0
mov r2, r4
ldr r0, [r0]
ldr r0, [r0, #4]
bl func_ov61_02167680
cmp r0, #0
movne r0, #0
moveq r0, #1
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02141938
_021419f0: .word data_ov61_0217ebe0
.global func_ov61_021419f4
arm_func_start func_ov61_021419f4
func_ov61_021419f4: ; 0x021419f4
stmdb sp!, {r4, lr}
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r4, pc}
cmp r4, #4
addls pc, pc, r4, lsl #2
b _02141a50
_02141a10: ; jump table
b _02141a50 ; case 0
b _02141a24 ; case 1
b _02141a30 ; case 2
b _02141a3c ; case 3
b _02141a48 ; case 4
_02141a24:
mov r0, #9
sub r2, r0, #0xa
b _02141a50
_02141a30:
mov r0, #9
sub r2, r0, #0xb
b _02141a50
_02141a3c:
mov r0, #6
sub r2, r0, #0x10
b _02141a50
_02141a48:
mov r0, #6
sub r2, r0, #0x1a
_02141a50:
ldr r1, _02141a64 ; =0xfffeeaa8
add r1, r2, r1
bl func_ov61_02140fc8
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021419f4
_02141a64: .word 0xfffeeaa8
.global func_ov61_02141a68
arm_func_start func_ov61_02141a68
func_ov61_02141a68: ; 0x02141a68
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
mov r9, r1
ldr r1, [r9]
mov r10, r0
mov r8, r2
cmp r1, #0
bne _02141c38
ldr r0, [r9, #4]
cmp r0, #0
beq _02141c38
mov r0, #0xc
ldr r1, _02141ca0 ; =data_ov61_0217ebe0
mul r6, r8, r0
ldr r0, [r1]
ldr r0, [r0, #0x18]
add r0, r0, r6
blx func_ov00_020774c4
cmp r0, #0
beq _02141c38
ldr r7, _02141ca0 ; =data_ov61_0217ebe0
ldr r0, [r7]
ldr r0, [r0]
cmp r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r0, [r9, #4]
mov r4, #0
cmp r0, #0
ble _02141b3c
mov r5, r4
_02141adc:
ldr r0, [r7]
ldr r1, [r9, #0xc]
ldr r0, [r0, #0x18]
ldr r2, [r1, r5]
mov r1, r8
bl func_ov61_02141750
cmp r0, #0
beq _02141b28
ldr r0, _02141ca0 ; =data_ov61_0217ebe0
mov r2, #1
ldr r4, [r0]
add r1, r2, #0x600
ldrb r3, [r4, #0x1c]
add r3, r3, #1
strb r3, [r4, #0x1c]
ldr r0, [r0]
strb r2, [r0, #0x1e]
str r1, [r9, #8]
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02141b28:
ldr r0, [r9, #4]
add r4, r4, #1
cmp r4, r0
add r5, r5, #0xac
blt _02141adc
_02141b3c:
cmp r0, #0
mov r7, #0
ble _02141c08
mov r5, r7
add r11, sp, #0
mvn r4, #0
_02141b54:
ldr r1, [r9, #0xc]
mov r0, r10
ldr r1, [r1, r5]
mov r2, r11
bl func_ov61_021677c0
bl func_ov61_021419f4
ldr r0, [sp]
cmp r0, r4
bne _02141b88
ldr r0, [r9, #0xc]
ldr r0, [r0, r5]
bl func_ov61_02141904
b _02141bf4
_02141b88:
ldr r0, _02141ca0 ; =data_ov61_0217ebe0
ldr r1, [r9, #0xc]
ldr r0, [r0]
ldr r1, [r1]
ldr r0, [r0, #0x18]
add r0, r0, r6
blx func_ov00_02077a10
ldr r0, _02141ca0 ; =data_ov61_0217ebe0
ldr r0, [r0]
ldr r0, [r0, #0x18]
add r0, r0, r6
blx func_ov00_020774f8
mov r0, r8
bl func_ov61_021412fc
ldr r0, _02141ca0 ; =data_ov61_0217ebe0
mov r3, #1
ldr r4, [r0]
add r1, r3, #0x600
ldrb r2, [r4, #0x1c]
add r2, r2, #1
strb r2, [r4, #0x1c]
ldr r2, [r0]
strb r3, [r2, #0x1e]
str r1, [r9, #8]
ldr r0, [r0]
strb r3, [r0, #0x1d]
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02141bf4:
ldr r0, [r9, #4]
add r7, r7, #1
cmp r7, r0
add r5, r5, #0xac
blt _02141b54
_02141c08:
ldr r0, [r9, #8]
cmp r0, #0x600
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r0, _02141ca0 ; =data_ov61_0217ebe0
mov r1, #1
ldr r3, [r0]
ldrb r2, [r3, #0x1c]
add r2, r2, #1
strb r2, [r3, #0x1c]
ldr r0, [r0]
strb r1, [r0, #0x1e]
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02141c38:
ldr r0, [r9]
cmp r0, #0
beq _02141c50
bl func_ov61_021419f4
cmp r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02141c50:
ldr r0, _02141ca0 ; =data_ov61_0217ebe0
ldr r1, [r0]
ldr r0, [r1]
cmp r0, #1
beq _02141c7c
ldr r1, [r1, #0x18]
mov r0, #0xc
mla r0, r8, r0, r1
blx func_ov00_020774c4
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02141c7c:
ldr r0, _02141ca0 ; =data_ov61_0217ebe0
mov r1, #1
ldr r3, [r0]
ldrb r2, [r3, #0x1c]
add r2, r2, #1
strb r2, [r3, #0x1c]
ldr r0, [r0]
strb r1, [r0, #0x1e]
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02141a68
_02141ca0: .word data_ov61_0217ebe0
.global func_ov61_02141ca4
arm_func_start func_ov61_02141ca4
func_ov61_02141ca4: ; 0x02141ca4
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x28
mov r9, r1
ldr r1, [r9]
mov r10, r0
cmp r1, #0
mov r6, #0
addne sp, sp, #0x28
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r4, _02141e4c ; =data_ov61_0217ebe0
mov r5, r6
ldr r1, [r4]
ldr r0, [r1, #0x14]
cmp r0, #0
ble _02141e20
mov r7, r6
add r11, sp, #0x11
_02141ce8:
ldr r0, [r1, #0x18]
add r0, r0, r7
blx func_ov00_020774c4
cmp r0, #1
bne _02141d50
bl func_ov61_02140308
ldr r1, [r4]
mov r2, r11
ldr r1, [r1, #0x18]
add r1, r1, r7
blx func_ov00_02077a30
mov r0, r11
add r1, r9, #0x8e
bl strcmp
cmp r0, #0
bne _02141e08
ldr r1, [r9, #4]
mov r0, r10
bl func_ov61_02167540
ldr r0, [r4]
ldr r1, [r9, #4]
ldr r0, [r0, #0x18]
add r0, r0, r7
blx func_ov00_02077a10
mov r6, #1
b _02141e08
_02141d50:
ldr r0, [r4]
ldr r0, [r0, #0x18]
add r0, r0, r7
blx func_ov00_020774c4
cmp r0, #3
beq _02141d80
ldr r0, [r4]
ldr r0, [r0, #0x18]
add r0, r0, r7
blx func_ov00_020774c4
cmp r0, #2
bne _02141e08
_02141d80:
bl func_ov61_02140308
ldr r1, [r0, #0x24]
add r0, sp, #0xc
mov r2, r1, lsr #0x10
and r2, r2, #0xff
str r2, [sp]
mov r2, r1, lsr #0x8
and r2, r2, #0xff
str r2, [sp, #4]
and r2, r1, #0xff
str r2, [sp, #8]
mov r1, r1, lsr #0x18
and r3, r1, #0xff
ldr r2, _02141e50 ; =data_ov61_0217a6f0
mov r1, #5
bl func_0200c910
ldr r8, [r9, #4]
bl func_ov61_02140308
ldr r1, [r4]
ldr r1, [r1, #0x18]
add r1, r1, r7
blx func_ov00_02077948
cmp r8, r0
bne _02141e08
add r0, sp, #0xc
add r1, r9, #0x97
mov r2, #4
bl func_0204366c
cmp r0, #0
bne _02141e08
mov r0, r10
mov r1, r8
bl func_ov61_02167540
mov r6, #1
_02141e08:
ldr r1, [r4]
add r7, r7, #0xc
add r5, r5, #1
ldr r0, [r1, #0x14]
cmp r5, r0
blt _02141ce8
_02141e20:
cmp r6, #0
beq _02141e38
ldr r0, [r9, #4]
bl func_ov61_02141904
add sp, sp, #0x28
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02141e38:
ldr r1, [r9, #4]
mov r0, r10
bl func_ov61_02167590
add sp, sp, #0x28
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02141ca4
_02141e4c: .word data_ov61_0217ebe0
_02141e50: .word data_ov61_0217a6f0
.global func_ov61_02141e54
arm_func_start func_ov61_02141e54
func_ov61_02141e54: ; 0x02141e54
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x18
mov r10, r1
ldr r0, [r10]
mov r7, #0
cmp r0, #0
mov r11, #1
addne sp, sp, #0x18
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r4, _02141fec ; =data_ov61_0217ebe0
mov r6, r7
ldr r0, [r4]
ldr r1, [r0, #0x14]
cmp r1, #0
ble _02141fb0
mov r8, r7
add r5, sp, #0
_02141e98:
ldr r0, [r0, #0x18]
add r0, r0, r8
blx func_ov00_020774c4
cmp r0, #1
bne _02141f04
bl func_ov61_02140308
ldr r1, [r4]
mov r2, r5
ldr r1, [r1, #0x18]
add r1, r1, r8
blx func_ov00_02077a30
mov r0, r5
add r1, r10, #0x8e
bl strcmp
cmp r0, #0
bne _02141f98
ldr r0, [r4]
ldr r1, [r10, #4]
ldr r0, [r0, #0x18]
add r0, r0, r8
blx func_ov00_02077a10
ldr r0, [r4]
ldr r0, [r0, #0x18]
add r0, r0, r8
blx func_ov00_020774f8
mov r7, #1
b _02141f98
_02141f04:
ldr r0, [r4]
ldr r0, [r0, #0x18]
add r0, r0, r8
blx func_ov00_020774c4
cmp r0, #3
beq _02141f34
ldr r0, [r4]
ldr r0, [r0, #0x18]
add r0, r0, r8
blx func_ov00_020774c4
cmp r0, #2
bne _02141f98
_02141f34:
ldr r0, [r4]
ldr r0, [r0, #0x18]
add r0, r0, r8
blx func_ov00_0207749c
cmp r0, #1
moveq r11, #0
beq _02141f98
ldr r9, [r10, #4]
bl func_ov61_02140308
ldr r1, [r4]
ldr r1, [r1, #0x18]
add r1, r1, r8
blx func_ov00_02077948
cmp r9, r0
bne _02141f98
ldr r0, [r4]
mov r1, r9
ldr r0, [r0, #0x18]
add r0, r0, r8
blx func_ov00_02077a10
ldr r0, [r4]
ldr r0, [r0, #0x18]
add r0, r0, r8
blx func_ov00_020774f8
mov r7, #1
_02141f98:
ldr r0, [r4]
add r6, r6, #1
ldr r1, [r0, #0x14]
add r8, r8, #0xc
cmp r6, r1
blt _02141e98
_02141fb0:
cmp r7, #0
addeq sp, sp, #0x18
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r0, [r0, #0x18]
ldr r2, [r10, #4]
bl func_ov61_021417fc
cmp r11, #0
beq _02141fd4
bl func_ov61_021412fc
_02141fd4:
ldr r0, _02141fec ; =data_ov61_0217ebe0
mov r1, #1
ldr r0, [r0]
strb r1, [r0, #0x1d]
add sp, sp, #0x18
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02141e54
_02141fec: .word data_ov61_0217ebe0
.global func_ov61_02141ff0
arm_func_start func_ov61_02141ff0
func_ov61_02141ff0: ; 0x02141ff0
ldr r0, _02142000 ; =data_ov61_0217ebe0
ldr r0, [r0]
ldr r0, [r0, #0x20]
bx lr
.align 2, 0
arm_func_end func_ov61_02141ff0
_02142000: .word data_ov61_0217ebe0
.global func_ov61_02142004
arm_func_start func_ov61_02142004
func_ov61_02142004: ; 0x02142004
stmdb sp!, {r3, lr}
bl func_ov61_0214a214
cmp r0, #0
beq _02142030
bl func_ov61_0214a214
ldr r0, [r0, #0x200]
cmp r0, #0
beq _02142030
bl func_ov61_0213dfec
cmp r0, #0
beq _02142038
_02142030:
mov r0, #0
ldmia sp!, {r3, pc}
_02142038:
bl func_ov61_0214a214
ldr r0, [r0, #0x200]
bl func_ov61_021424f8
cmp r0, #0
moveq r0, #1
movne r0, #0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02142004
.global func_ov61_02142054
arm_func_start func_ov61_02142054
func_ov61_02142054: ; 0x02142054
stmdb sp!, {r3, lr}
bl func_ov61_02142074
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
bl func_ov61_02147888
mov r0, #1
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02142054
.global func_ov61_02142074
arm_func_start func_ov61_02142074
func_ov61_02142074: ; 0x02142074
stmdb sp!, {r3, lr}
bl func_ov61_0213dfec
cmp r0, #0
movne r0, #0
ldmneia sp!, {r3, pc}
bl func_ov61_0214a214
cmp r0, #0
beq _021420b0
bl func_ov61_0213f4e4
cmp r0, #5
bne _021420b0
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a9]
cmp r0, #0
beq _021420b8
_021420b0:
mov r0, #0
ldmia sp!, {r3, pc}
_021420b8:
mov r0, #1
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02142074
.global func_ov61_021420c0
arm_func_start func_ov61_021420c0
func_ov61_021420c0: ; 0x021420c0
stmdb sp!, {r4, r5, r6, r7, r8, lr}
movs r6, r1
mov r5, r2
mov r7, r0
cmpne r5, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
cmp r7, #0x64
blo _02142124
sub r2, r7, #0x64
mov r0, #0xc
mul r3, r2, r0
ldr r0, _021421d4 ; =data_ov61_0217ebf8
ldrb r0, [r0, r3]
cmp r0, #0
beq _02142124
ldr r0, _021421d8 ; =data_ov61_0217ebfc
ldr r0, [r0, r3]
cmp r0, #0
beq _02142134
bl strcmp
cmp r0, #0
beq _02142134
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_02142124:
bl func_ov61_02148778
movs r7, r0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
_02142134:
sub r1, r7, #0x64
mov r0, #0xc
mul r4, r1, r0
ldr r1, _021421d4 ; =data_ov61_0217ebf8
ldr r0, _021421dc ; =data_ov61_0217ebf9
strb r7, [r1, r4]
mov r2, #0
ldr r1, _021421e0 ; =data_ov61_0217ebfa
strb r2, [r0, r4]
ldr r0, _021421d8 ; =data_ov61_0217ebfc
strh r2, [r1, r4]
ldr r1, [r0, r4]
cmp r1, #0
beq _02142174
mov r0, #4
bl func_ov61_0213e068
_02142174:
mov r0, r6
ldr r8, _021421d8 ; =data_ov61_0217ebfc
bl strlen
add r1, r0, #1
mov r0, #4
bl func_ov61_0213e034
str r0, [r8, r4]
cmp r0, #0
bne _021421ac
ldr r1, _021421e4 ; =0xfffec77f
mov r0, #9
bl func_ov61_02143c14
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_021421ac:
mov r1, r6
bl strcpy
ldr r1, _021421e8 ; =data_ov61_0217ec00
mov r0, r8
str r5, [r1, r4]
ldr r1, [r0, r4]
mov r0, r7
bl func_ov61_02179288
mov r0, r7
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_021420c0
_021421d4: .word data_ov61_0217ebf8
_021421d8: .word data_ov61_0217ebfc
_021421dc: .word data_ov61_0217ebf9
_021421e0: .word data_ov61_0217ebfa
_021421e4: .word 0xfffec77f
_021421e8: .word data_ov61_0217ec00
.global func_ov61_021421ec
arm_func_start func_ov61_021421ec
func_ov61_021421ec: ; 0x021421ec
stmdb sp!, {r4, r5, r6, r7, r8, lr}
movs r6, r1
mov r5, r2
mov r7, r0
cmpne r5, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
cmp r7, #0x64
blo _02142250
sub r2, r7, #0x64
mov r0, #0xc
mul r3, r2, r0
ldr r0, _02142304 ; =data_ov61_0217ebf8
ldrb r0, [r0, r3]
cmp r0, #0
beq _02142250
ldr r0, _02142308 ; =data_ov61_0217ebfc
ldr r0, [r0, r3]
cmp r0, #0
beq _02142260
bl strcmp
cmp r0, #0
beq _02142260
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_02142250:
bl func_ov61_02148778
movs r7, r0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
_02142260:
sub r1, r7, #0x64
mov r0, #0xc
mul r4, r1, r0
ldr r1, _02142304 ; =data_ov61_0217ebf8
ldr r0, _0214230c ; =data_ov61_0217ebf9
strb r7, [r1, r4]
mov r2, #1
ldr r1, _02142310 ; =data_ov61_0217ebfa
strb r2, [r0, r4]
mov r2, #0
ldr r0, _02142308 ; =data_ov61_0217ebfc
strh r2, [r1, r4]
ldr r1, [r0, r4]
cmp r1, #0
beq _021422a4
mov r0, #4
bl func_ov61_0213e068
_021422a4:
mov r0, r6
ldr r8, _02142308 ; =data_ov61_0217ebfc
bl strlen
add r1, r0, #1
mov r0, #4
bl func_ov61_0213e034
str r0, [r8, r4]
cmp r0, #0
bne _021422dc
ldr r1, _02142314 ; =0xfffec77f
mov r0, #9
bl func_ov61_02143c14
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_021422dc:
mov r1, r6
bl strcpy
ldr r1, _02142318 ; =data_ov61_0217ec00
mov r0, r8
str r5, [r1, r4]
ldr r1, [r0, r4]
mov r0, r7
bl func_ov61_02179288
mov r0, r7
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_021421ec
_02142304: .word data_ov61_0217ebf8
_02142308: .word data_ov61_0217ebfc
_0214230c: .word data_ov61_0217ebf9
_02142310: .word data_ov61_0217ebfa
_02142314: .word 0xfffec77f
_02142318: .word data_ov61_0217ec00
.global func_ov61_0214231c
arm_func_start func_ov61_0214231c
func_ov61_0214231c: ; 0x0214231c
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
mov r4, r2
bl func_ov61_0214a214
cmp r0, #0
beq _02142344
bl func_ov61_0213dfec
cmp r0, #0
beq _0214234c
_02142344:
mov r0, r4
ldmia sp!, {r4, r5, r6, pc}
_0214234c:
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
mov r1, r6
bl func_ov61_02162e74
cmp r0, #0
beq _02142374
mov r1, r5
mov r2, r4
bl func_ov61_02162270
mov r4, r0
_02142374:
mov r0, r4
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0214231c
.global func_ov61_0214237c
arm_func_start func_ov61_0214237c
func_ov61_0214237c: ; 0x0214237c
stmdb sp!, {r4, r5, r6, lr}
mov r6, r1
mov r5, r2
mov r4, r3
bl func_ov61_0214a204
bl func_ov61_0214a214
str r6, [r0]
bl func_ov61_0214a214
str r5, [r0, #4]
bl func_ov61_0214a214
str r4, [r0, #8]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x10]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1c]
bl func_ov61_0214a214
mov r1, #0
strh r1, [r0, #0x1a]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0xe4]
mov r0, r1
bl func_ov61_0214a224
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0xf]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x19]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1af]
bl func_ov61_0214a214
mov r1, #0
add r0, r0, #0x100
strh r1, [r0, #0xb6]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1dc]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x200]
bl func_ov61_0214a214
ldr r1, [sp, #0x10]
str r1, [r0, #0x2f4]
bl func_ov61_0214a214
ldr r1, [sp, #0x14]
str r1, [r0, #0x2f8]
bl func_ov61_0214a214
ldr r1, [sp, #0x18]
str r1, [r0, #0x2fc]
bl func_ov61_0214a214
ldr r1, [sp, #0x1c]
str r1, [r0, #0x300]
bl func_ov61_0214a214
add r0, r0, #0x304
mov r1, #0
mov r2, #0x40
bl func_02007a44
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x344]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x464]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x468]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x474]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x478]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x47c]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x480]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x174]
str r1, [r0, #0x178]
bl func_ov61_021487b8
ldr r1, _021424f4 ; =data_ov61_0217ebe8
mov r0, #0
strb r0, [r1, #8]
strb r0, [r1, #9]
strh r0, [r1, #0xa]
bl func_ov61_0214454c
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0214237c
_021424f4: .word data_ov61_0217ebe8
.global func_ov61_021424f8
arm_func_start func_ov61_021424f8
func_ov61_021424f8: ; 0x021424f8
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x28
mov r4, r0
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
cmp r0, #0
addne sp, sp, #0x28
movne r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
bl func_ov61_0214a214
str r4, [r0, #0x200]
ldr r4, _02142670 ; =func_ov61_021499d0
ldr r11, _02142674 ; =func_ov61_02149b18
mov r10, #0
mov r5, #1
_02142534:
bl func_ov61_0214a214
mov r9, r0
bl func_ov61_0214a214
ldr r0, [r0, #4]
ldr r0, [r0]
bl func_ov61_02174514
mov r8, r0
bl func_ov61_0214a214
ldr r0, [r0, #4]
ldr r0, [r0]
bl func_ov61_021744fc
mov r7, r0
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
ldr r3, [r0, #0x2f8]
mov r1, r8
stmia sp, {r3, r5}
str r5, [sp, #8]
str r4, [sp, #0xc]
ldr r3, _02142678 ; =func_ov61_02149b1c
str r11, [sp, #0x10]
str r3, [sp, #0x14]
ldr r3, _0214267c ; =func_ov61_02149b20
mov r2, r7
str r3, [sp, #0x18]
ldr r3, _02142680 ; =func_ov61_02149bc4
add r0, r9, #0x10
str r3, [sp, #0x1c]
ldr r3, _02142684 ; =func_ov61_02149bcc
str r3, [sp, #0x20]
mov r3, #0
str r3, [sp, #0x24]
ldr r3, [r6, #0x2f4]
bl func_ov61_02177b3c
movs r6, r0
beq _02142610
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
bl func_ov61_02177f98
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x10]
cmp r6, #3
bne _021425f0
cmp r10, #4
bne _02142604
_021425f0:
mov r0, r6
bl func_ov61_02149060
add sp, sp, #0x28
mov r0, r6
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02142604:
add r10, r10, #1
cmp r10, #5
blt _02142534
_02142610:
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1c]
bl func_ov61_0214a214
mov r1, #0
strh r1, [r0, #0x1a]
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
ldr r1, _02142688 ; =func_ov61_02149bd8
bl func_ov61_02177d30
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
ldr r1, _0214268c ; =func_ov61_02149bf8
bl func_ov61_02177d00
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
ldr r1, _02142690 ; =func_ov61_02149cac
bl func_ov61_02177d18
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
bl func_ov61_02177f3c
mov r0, r6
add sp, sp, #0x28
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_021424f8
_02142670: .word func_ov61_021499d0
_02142674: .word func_ov61_02149b18
_02142678: .word func_ov61_02149b1c
_0214267c: .word func_ov61_02149b20
_02142680: .word func_ov61_02149bc4
_02142684: .word func_ov61_02149bcc
_02142688: .word func_ov61_02149bd8
_0214268c: .word func_ov61_02149bf8
_02142690: .word func_ov61_02149cac
.global func_ov61_02142694
arm_func_start func_ov61_02142694
func_ov61_02142694: ; 0x02142694
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x114
ldr r4, _0214286c ; =data_ov61_0217ebe8
mov r7, r1
ldr r1, [r4, #0xc]
mov r8, r0
mov r6, r2
mov r5, r3
cmp r1, #0
beq _021426d4
mov r0, #4
mov r2, #0
bl func_ov61_0213e068
mov r0, r4
mov r1, #0
str r1, [r0, #0xc]
_021426d4:
cmp r7, #0
beq _02142754
add r0, sp, #0x14
mvn r1, #0
mov r2, #0x20
mov r3, #3
bl func_ov61_02144c0c
mov r4, r0
ldr r0, _02142870 ; =data_ov61_0217a6fc
bl strlen
rsb r1, r4, #0x100
sub r4, r1, r0
mov r1, r4
mov r0, #4
bl func_ov61_0213e034
movs r1, r0
ldr r0, _0214286c ; =data_ov61_0217ebe8
str r1, [r0, #0xc]
bne _02142734
ldr r1, _02142874 ; =0xfffec77f
mov r0, #9
bl func_ov61_02143c14
add sp, sp, #0x114
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
_02142734:
mov r0, r7
mov r2, r4
bl func_02007ad8
ldr r0, _0214286c ; =data_ov61_0217ebe8
mov r1, #0
ldr r0, [r0, #0xc]
add r0, r0, r4
strb r1, [r0, #-1]
_02142754:
mov r1, r8
mov r2, r6
mov r3, r5
mov r0, #0
bl func_ov61_021448e4
bl func_ov61_0214a214
ldr r1, [sp, #0x130]
str r1, [r0, #0x474]
bl func_ov61_0214a214
ldr r1, [sp, #0x134]
str r1, [r0, #0x478]
mov r0, #2
bl func_ov61_0214a224
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
cmp r0, #0
bne _021427f0
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
mov r2, r0
mov r0, #0x14
str r0, [sp]
mov r0, #1
str r0, [sp, #4]
mov r3, #0
str r3, [sp, #8]
ldr r0, _02142878 ; =func_ov61_02149298
str r0, [sp, #0xc]
str r3, [sp, #0x10]
ldr r0, [r5, #0x2f4]
ldr r1, [r4, #0x2f4]
ldr r2, [r2, #0x2f8]
bl func_ov61_02162acc
str r0, [r6, #0xe4]
_021427f0:
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
cmp r0, #0
bne _02142814
mov r0, #5
bl func_ov61_02148fcc
cmp r0, #0
addne sp, sp, #0x114
ldmneia sp!, {r3, r4, r5, r6, r7, r8, pc}
_02142814:
ldr r1, _0214287c ; =data_ov61_0217a704
mov r0, #3
mov r2, #0
bl func_ov61_0214124c
bl func_ov61_0214a214
ldr r0, [r0, #0x200]
bl func_ov61_02144a10
bl func_ov61_02148fcc
cmp r0, #0
addne sp, sp, #0x114
ldmneia sp!, {r3, r4, r5, r6, r7, r8, pc}
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
cmp r0, #0
bne _0214285c
bl func_ov61_0214a214
ldr r0, [r0, #0x200]
bl func_ov61_021424f8
_0214285c:
mov r0, #0
bl func_ov61_02148abc
add sp, sp, #0x114
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02142694
_0214286c: .word data_ov61_0217ebe8
_02142870: .word data_ov61_0217a6fc
_02142874: .word 0xfffec77f
_02142878: .word func_ov61_02149298
_0214287c: .word data_ov61_0217a704
.global func_ov61_02142880
arm_func_start func_ov61_02142880
func_ov61_02142880: ; 0x02142880
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x40
mov r8, r2
mov r7, r3
mov r5, r0
mov r4, r1
ldr r2, [sp, #0x58]
ldr r3, [sp, #0x5c]
mov r1, r8
mov r0, #1
bl func_ov61_021448e4
cmp r7, #0
movne r6, #1
moveq r6, #0
bl func_ov61_0214a214
strb r6, [r0, #0x1a6]
bl func_ov61_0214a214
ldr r1, [sp, #0x60]
str r1, [r0, #0x474]
bl func_ov61_0214a214
ldr r1, [sp, #0x64]
str r1, [r0, #0x478]
bl func_ov61_0214a214
mov r1, r0
mov r0, r5
add r1, r1, #0x304
mov r2, r4
bl func_02007ad8
bl func_ov61_0214a214
str r4, [r0, #0x344]
cmp r4, #0
beq _02142938
cmp r4, r8
bge _0214294c
cmp r7, #0
bne _0214294c
ldr r0, _02142ac4 ; =data_ov61_0217ebe8
ldr r1, [r0]
cmp r1, #0
ldrneb r0, [r1]
cmpne r0, #0
beq _02142938
ldrb r0, [r1, #1]
sub r0, r0, #1
cmp r4, r0
bge _0214294c
_02142938:
mov r0, #0xa
mov r1, #0
bl func_ov61_02143c14
add sp, sp, #0x40
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0214294c:
mov r0, #4
bl func_ov61_0214a224
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
cmp r0, #0
bne _021429bc
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
mov r2, r0
mov r0, #0x14
str r0, [sp]
mov r0, #1
str r0, [sp, #4]
mov r3, #0
str r3, [sp, #8]
ldr r0, _02142ac8 ; =func_ov61_02149298
str r0, [sp, #0xc]
str r3, [sp, #0x10]
ldr r0, [r5, #0x2f4]
ldr r1, [r4, #0x2f4]
ldr r2, [r2, #0x2f8]
bl func_ov61_02162acc
str r0, [r6, #0xe4]
_021429bc:
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
cmp r0, #0
bne _021429e0
mov r0, #5
bl func_ov61_02148fcc
cmp r0, #0
addne sp, sp, #0x40
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
_021429e0:
ldr r2, _02142acc ; =data_ov61_0217a708
add r0, sp, #0x34
mov r3, r8
mov r1, #0xc
bl func_0200c910
ldr r0, _02142ad0 ; =data_ov61_0217a70c
add r1, sp, #0x34
add r2, sp, #0x14
mov r3, #0x2f
bl func_ov61_0213e580
cmp r7, #0
ldrne r1, _02142ad4 ; =data_ov61_0217a710
ldr r0, _02142ad8 ; =data_ov61_0217a718
ldreq r1, _02142adc ; =data_ov61_0217a714
add r2, sp, #0x14
mov r3, #0x2f
bl func_ov61_0213e5b8
ldr r2, _02142acc ; =data_ov61_0217a708
add r0, sp, #0x34
mov r1, #0xc
mov r3, #3
bl func_0200c910
ldr r0, _02142ae0 ; =data_ov61_0217a71c
add r1, sp, #0x34
add r2, sp, #0x14
mov r3, #0x2f
bl func_ov61_0213e5b8
add r1, sp, #0x14
mov r0, #4
mov r2, #0
bl func_ov61_0214124c
bl func_ov61_02148f58
cmp r0, #0
addne sp, sp, #0x40
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
cmp r0, #0
bne _02142a94
bl func_ov61_0214a214
ldr r0, [r0, #0x200]
bl func_ov61_021424f8
cmp r0, #0
addne sp, sp, #0x40
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
_02142a94:
mov r0, #0
mov r2, r0
mov r1, #1
bl func_ov61_021469ec
bl func_ov61_02146810
cmp r0, #0
addne sp, sp, #0x40
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
mov r0, #0
bl func_ov61_02148abc
add sp, sp, #0x40
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02142880
_02142ac4: .word data_ov61_0217ebe8
_02142ac8: .word func_ov61_02149298
_02142acc: .word data_ov61_0217a708
_02142ad0: .word data_ov61_0217a70c
_02142ad4: .word data_ov61_0217a710
_02142ad8: .word data_ov61_0217a718
_02142adc: .word data_ov61_0217a714
_02142ae0: .word data_ov61_0217a71c
.global func_ov61_02142ae4
arm_func_start func_ov61_02142ae4
func_ov61_02142ae4: ; 0x02142ae4
stmdb sp!, {r4, lr}
movs r4, r0
ldmeqia sp!, {r4, pc}
bl func_ov61_02177d48
ldr r0, [r4, #0xb4]
cmp r0, #0
ldmneia sp!, {r4, pc}
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
cmpne r0, #1
beq _02142b20
cmp r0, #2
beq _02142b74
ldmia sp!, {r4, pc}
_02142b20:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xb
addls pc, pc, r0, lsl #2
ldmia sp!, {r4, pc}
_02142b34: ; jump table
ldmia sp!, {r4, pc} ; case 0
b _02142b64 ; case 1
b _02142b64 ; case 2
b _02142b64 ; case 3
b _02142b64 ; case 4
ldmia sp!, {r4, pc} ; case 5
b _02142b64 ; case 6
ldmia sp!, {r4, pc} ; case 7
ldmia sp!, {r4, pc} ; case 8
ldmia sp!, {r4, pc} ; case 9
ldmia sp!, {r4, pc} ; case 10
b _02142b64 ; case 11
_02142b64:
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
bl func_ov61_02177f3c
ldmia sp!, {r4, pc}
_02142b74:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xb
ldmneia sp!, {r4, pc}
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
bl func_ov61_02177f3c
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02142ae4
.global func_ov61_02142b94
arm_func_start func_ov61_02142b94
func_ov61_02142b94: ; 0x02142b94
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #8
mov r4, r0
bl func_ov61_0214a214
cmp r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
bl func_ov61_0213dfec
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
cmp r4, #0
bne _02142c10
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
cmp r0, #0
beq _02142be4
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
bl func_ov61_02177d48
_02142be4:
bl func_ov61_0214a214
ldr r0, [r0, #4]
cmp r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
bl func_ov61_0214a214
ldr r0, [r0, #4]
ldr r0, [r0]
bl func_ov61_02174244
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02142c10:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xd
addls pc, pc, r0, lsl #2
b _0214333c
_02142c38: ; jump table
b _0214333c ; case 0
b _02143244 ; case 1
b _02142dec ; case 2
b _02142dec ; case 3
b _02142c70 ; case 4
b _02142dec ; case 5
b _0214333c ; case 6
b _02142eac ; case 7
b _0214333c ; case 8
b _0214333c ; case 9
b _0214333c ; case 10
b _02143030 ; case 11
b _0214333c ; case 12
b _02143124 ; case 13
_02142c70:
bl func_ov61_0214a214
ldr r0, [r0, #0x1c8]
cmp r0, #0
beq _02142d5c
bl func_0200e8f8
mov r6, r0
mov r7, r1
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
mov r4, r0
ldr r1, [r5, #0x1cc]
ldr r0, [r5, #0x1d0]
subs r2, r6, r1
sbc r0, r7, r0
mov r1, r0, lsl #0x6
orr r1, r1, r2, lsr #26
mov r0, r2, lsl #0x6
ldr r2, _02143588 ; =0x000082ea
mov r3, #0
bl func_02002bac
cmp r1, #0
ldr r1, [r4, #0x1c8]
cmpeq r0, r1
bls _02142d5c
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1c8]
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
bne _02142d48
bl func_ov61_0214a214
ldrb r1, [r0, #0x1aa]
add r1, r1, #1
strb r1, [r0, #0x1aa]
bl func_ov61_0214a214
ldrb r0, [r0, #0x1aa]
cmp r0, #5
bls _02142d24
ldr r1, _0214358c ; =0xfffec5d2
mov r0, #6
bl func_ov61_02143c14
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02142d24:
bl func_ov61_0214a214
ldr r0, [r0, #0xf4]
mov r1, #0
bl func_ov61_0214683c
bl func_ov61_02146810
cmp r0, #0
beq _02142d5c
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02142d48:
mov r0, #0
bl func_ov61_02146cb4
cmp r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
_02142d5c:
bl func_ov61_0214a214
ldr r0, [r0, #0x1bc]
cmp r0, #0
beq _0214333c
bl func_ov61_0214a214
ldrb r1, [r0, #0xd]
ldr r0, _02143590 ; =0x00000bb8
mul r0, r1, r0
add r0, r0, #0x3b8
add r5, r0, #0x800
bl func_0200e8f8
mov r4, r0
mov r6, r1
bl func_ov61_0214a214
ldr r1, [r0, #0x1c0]
ldr r0, [r0, #0x1c4]
subs r2, r4, r1
sbc r0, r6, r0
mov r1, r0, lsl #0x6
orr r1, r1, r2, lsr #26
mov r0, r2, lsl #0x6
ldr r2, _02143588 ; =0x000082ea
mov r3, #0
bl func_02002bac
cmp r1, #0
cmpeq r0, r5
blo _0214333c
bl func_ov61_0214a214
ldr r0, [r0, #0xf4]
mov r1, #0
bl func_ov61_0214683c
bl func_ov61_02146810
cmp r0, #0
beq _0214333c
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02142dec:
bl func_ov61_0214a214
ldr r0, [r0, #0xe8]
cmp r0, #0
ble _0214333c
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #3
bne _02142e28
bl func_ov61_0214a214
ldrb r1, [r0, #0xd]
ldr r0, _02143590 ; =0x00000bb8
mul r0, r1, r0
add r0, r0, #0x3b8
add r5, r0, #0x800
b _02142e3c
_02142e28:
bl func_ov61_0214a214
ldr r0, [r0, #0xe8]
cmp r0, #1
moveq r5, #0x3e8
ldrne r5, _02143590 ; =0x00000bb8
_02142e3c:
bl func_0200e8f8
mov r4, r0
mov r6, r1
bl func_ov61_0214a214
ldr r1, [r0, #0xec]
ldr r0, [r0, #0xf0]
subs r3, r4, r1
sbc r0, r6, r0
mov r1, r0, lsl #0x6
ldr r2, _02143588 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
cmp r1, #0
cmpeq r0, r5
bls _0214333c
bl func_ov61_0214a214
ldr r0, [r0, #0x204]
bl func_ov61_02144a10
bl func_ov61_02148fcc
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0xe8]
b _0214333c
_02142eac:
bl func_ov61_0214a214
ldr r1, [r0, #0x190]
ldr r0, [r0, #0x18c]
cmp r1, #0
cmpeq r0, #0
beq _02142f38
bl func_0200e8f8
mov r4, r0
mov r5, r1
bl func_ov61_0214a214
ldr r1, [r0, #0x18c]
ldr r0, [r0, #0x190]
subs r3, r4, r1
sbc r0, r5, r0
mov r1, r0, lsl #0x6
ldr r2, _02143588 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
ldr r2, _02143594 ; =0x000061a8
cmp r1, #0
cmpeq r0, r2
bls _0214333c
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x18c]
str r1, [r0, #0x190]
bl func_ov61_0214a214
ldr r0, [r0, #0xf4]
bl func_ov61_02146ffc
cmp r0, #0
bne _0214333c
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02142f38:
bl func_ov61_0214a214
ldrb r0, [r0, #0x3cc]
cmp r0, #6
bne _0214333c
bl func_0200e8f8
mov r4, r0
mov r5, r1
bl func_ov61_0214a214
ldr r1, [r0, #0x45c]
ldr r0, [r0, #0x460]
subs r3, r4, r1
sbc r0, r5, r0
mov r1, r0, lsl #0x6
ldr r2, _02143588 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
ldr r2, _02143598 ; =0x00001770
cmp r1, #0
cmpeq r0, r2
bls _0214333c
bl func_ov61_0214a214
ldrb r1, [r0, #0x3cd]
add r1, r1, #1
strb r1, [r0, #0x3cd]
bl func_ov61_0214a214
ldrb r0, [r0, #0x3cd]
cmp r0, #5
bls _02142fd0
bl func_ov61_02143bf4
bl func_ov61_0214a214
ldr r0, [r0, #0xf4]
bl func_ov61_02146ffc
cmp r0, #0
bne _0214333c
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02142fd0:
bl func_ov61_0214a214
mov r7, r0
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
add r1, r4, #0x3d4
str r1, [sp]
add r3, r5, #0x300
ldr r1, [r0, #0x458]
mov r0, #6
str r1, [sp, #4]
ldr r1, [r7, #0x454]
ldr r2, [r6, #0x3d0]
ldrh r3, [r3, #0xce]
bl func_ov61_0214501c
bl func_ov61_02146810
cmp r0, #0
beq _0214333c
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02143030:
bl func_ov61_0214a214
ldrb r0, [r0, #0x3cc]
cmp r0, #2
bne _0214333c
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
bne _02143098
bl func_0200e8f8
mov r4, r0
mov r5, r1
bl func_ov61_0214a214
ldr r1, [r0, #0x45c]
ldr r0, [r0, #0x460]
subs r3, r4, r1
sbc r0, r5, r0
mov r1, r0, lsl #0x6
ldr r2, _02143588 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
ldr r2, _02143598 ; =0x00001770
cmp r1, #0
cmpeq r0, r2
bhi _021430f0
_02143098:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
beq _0214333c
bl func_0200e8f8
mov r4, r0
mov r5, r1
bl func_ov61_0214a214
ldr r1, [r0, #0x45c]
ldr r0, [r0, #0x460]
subs r3, r4, r1
sbc r0, r5, r0
mov r1, r0, lsl #0x6
ldr r2, _02143588 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
ldr r2, _0214359c ; =0x00004a38
cmp r1, #0
cmpeq r0, r2
bls _0214333c
_021430f0:
bl func_ov61_02143bf4
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
add r0, r0, #1
add r0, r4, r0, lsl #2
ldr r0, [r0, #0xf4]
bl func_ov61_02146de0
cmp r0, #0
bne _0214333c
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02143124:
bl func_ov61_0214a214
ldrb r0, [r0, #0x3cc]
cmp r0, #8
bne _0214333c
bl func_0200e8f8
mov r4, r0
mov r5, r1
bl func_ov61_0214a214
ldr r1, [r0, #0x45c]
ldr r0, [r0, #0x460]
subs r3, r4, r1
sbc r0, r5, r0
mov r1, r0, lsl #0x6
ldr r2, _02143588 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
ldr r2, _021435a0 ; =0x00007530
cmp r1, #0
cmpeq r0, r2
bls _0214333c
bl func_ov61_0214a214
ldrb r1, [r0, #0x3cd]
add r1, r1, #1
strb r1, [r0, #0x3cd]
bl func_ov61_0214a214
ldrb r0, [r0, #0x3cd]
cmp r0, #0
beq _021431e4
bl func_ov61_02143bf4
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
bne _021431dc
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
add r0, r4, r0, lsl #2
ldr r0, [r0, #0xf4]
bl func_ov61_02146de0
cmp r0, #0
bne _0214333c
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021431dc:
bl func_ov61_02147ca4
b _0214333c
_021431e4:
bl func_ov61_0214a214
mov r7, r0
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
add r1, r4, #0x3d4
str r1, [sp]
add r3, r5, #0x300
ldr r1, [r0, #0x458]
mov r0, #8
str r1, [sp, #4]
ldr r1, [r7, #0x454]
ldr r2, [r6, #0x3d0]
ldrh r3, [r3, #0xce]
bl func_ov61_0214501c
bl func_ov61_02146810
cmp r0, #0
beq _0214333c
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02143244:
bl func_ov61_0213f4e4
cmp r0, #5
bne _0214333c
bl func_0200e8f8
mov r4, r0
mov r5, r1
bl func_ov61_0214a214
ldr r1, [r0, #0x1f8]
ldr r0, [r0, #0x1fc]
subs r3, r4, r1
sbc r0, r5, r0
mov r1, r0, lsl #0x6
ldr r2, _02143588 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
ldr r2, _021435a0 ; =0x00007530
cmp r1, #0
cmpeq r0, r2
bls _0214333c
bl func_ov61_0214a214
ldrb r0, [r0, #0x1ad]
cmp r0, #5
blo _021432c4
bl func_ov61_0214a214
ldr r0, [r0, #0xf4]
bl func_ov61_02146ffc
cmp r0, #0
bne _0214333c
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021432c4:
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
mov r1, #0
str r1, [sp]
str r1, [sp, #4]
ldrh r3, [r0, #0xa4]
ldr r1, [r5, #0xf4]
ldr r2, [r4, #0x24]
mov r0, #0x40
bl func_ov61_0214501c
bl func_ov61_02146810
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
bl func_ov61_0214a214
ldrb r1, [r0, #0x1ad]
add r1, r1, #1
strb r1, [r0, #0x1ad]
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
ldr r2, _021435a4 ; =0xff403b3a
mvn r3, #0
adds r0, r0, r2
str r0, [r4, #0x1f8]
adc r0, r1, r3
str r0, [r4, #0x1fc]
_0214333c:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xb
beq _0214335c
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #6
bne _021433d4
_0214335c:
bl func_ov61_0214a214
ldr r1, [r0, #0x188]
ldr r0, [r0, #0x184]
cmp r1, #0
cmpeq r0, #0
beq _021433d4
bl func_0200e8f8
mov r4, r0
mov r5, r1
bl func_ov61_0214a214
ldr r1, [r0, #0x184]
ldr r0, [r0, #0x188]
subs r3, r4, r1
sbc r0, r5, r0
mov r1, r0, lsl #0x6
ldr r2, _02143588 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
ldr r2, _021435a8 ; =0x00002710
cmp r1, #0
cmpeq r0, r2
bls _021433d4
bl func_ov61_0214a214
mov r1, #0
add r3, r0, #0x194
mov r2, r1
mov r0, #1
bl func_ov61_02149dbc
_021433d4:
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
cmp r0, #0
beq _0214344c
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
bl func_ov61_02162df4
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
bl func_ov61_02162e40
cmp r0, #0
beq _0214344c
bl func_ov61_0214a214
ldr r1, [r0, #0x178]
ldr r0, [r0, #0x174]
cmp r1, #0
cmpeq r0, #0
beq _0214344c
bl func_0200e8f8
mov r4, r0
mov r5, r1
bl func_ov61_0214a214
ldr r1, [r0, #0x178]
ldr r0, [r0, #0x174]
cmp r5, r1
cmpeq r4, r0
bls _0214344c
ldr r1, _021435ac ; =0xfffeb3ee
mov r0, #6
bl func_ov61_02143c14
_0214344c:
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
bl func_ov61_02142ae4
bl func_ov61_02177644
bl func_ov61_0214a214
ldr r0, [r0, #4]
cmp r0, #0
beq _0214347c
bl func_ov61_0214a214
ldr r0, [r0, #4]
ldr r0, [r0]
bl func_ov61_02174244
_0214347c:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0x12
bne _021434e4
bl func_0200e8f8
mov r4, r0
mov r5, r1
bl func_ov61_0214a214
ldr r1, [r0, #0x1f0]
ldr r0, [r0, #0x1f4]
subs r3, r4, r1
sbc r0, r5, r0
mov r1, r0, lsl #0x6
ldr r2, _02143588 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
ldr r2, _02143590 ; =0x00000bb8
cmp r1, #0
cmpeq r0, r2
bls _021434e4
bl func_ov61_02147cd8
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
_021434e4:
bl func_ov61_02148064
cmp r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
bl func_ov61_02148578
cmp r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
bl func_ov61_02148b2c
bl func_ov61_0214a214
ldrb r0, [r0, #0x1ae]
cmp r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xa
addne sp, sp, #8
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
strb r0, [r4, #0x16]
bl func_ov61_021443ec
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1ae]
bl func_ov61_0214a214
ldr r0, [r0, #0x47c]
cmp r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldr r0, [r0, #0x480]
ldr r1, [r4, #0x47c]
blx r1
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02142b94
_02143588: .word 0x000082ea
_0214358c: .word 0xfffec5d2
_02143590: .word 0x00000bb8
_02143594: .word 0x000061a8
_02143598: .word 0x00001770
_0214359c: .word 0x00004a38
_021435a0: .word 0x00007530
_021435a4: .word 0xff403b3a
_021435a8: .word 0x00002710
_021435ac: .word 0xfffeb3ee
.global func_ov61_021435b0
arm_func_start func_ov61_021435b0
func_ov61_021435b0: ; 0x021435b0
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #8
ldr r0, [sp, #0x18]
mov r4, r3
cmp r0, #0
cmpne r4, #0
mov r5, r1
mov r6, r2
addeq sp, sp, #8
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
add r1, sp, #0
mov r0, #0
mov r2, #8
bl func_020078f4
mov r1, r6, asr #0x8
mov r0, r6, lsl #0x8
mov r2, #2
and r1, r1, #0xff
and r0, r0, #0xff00
orr r0, r1, r0
strb r2, [sp, #1]
strh r0, [sp, #2]
str r5, [sp, #4]
ldrb r5, [r4]
cmp r5, #0xfe
ldreqb r0, [r4, #1]
cmpeq r0, #0xfd
beq _0214362c
cmp r5, #0x5c
bne _02143658
_0214362c:
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
cmp r0, #0
beq _02143694
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
ldr r2, [sp, #0x18]
add r3, sp, #0
mov r1, r4
bl func_ov61_02178d08
b _02143694
_02143658:
ldr r1, _021436a0 ; =data_ov61_0217e158
mov r0, r4
mov r2, #6
bl func_0204366c
cmp r0, #0
bne _02143684
ldr r1, [sp, #0x18]
add r2, sp, #0
mov r0, r4
bl func_ov61_021779dc
b _02143694
_02143684:
add sp, sp, #8
cmp r5, #0xfe
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
_02143694:
mov r0, #1
add sp, sp, #8
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_021435b0
_021436a0: .word data_ov61_0217e158
.global func_ov61_021436a4
arm_func_start func_ov61_021436a4
func_ov61_021436a4: ; 0x021436a4
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r8, r1
mov r7, r2
mov r6, r3
bl func_ov61_0214a214
cmp r0, #0
beq _021436e0
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #7
bne _021436e0
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a9]
cmp r0, #0
beq _021436f4
_021436e0:
ldr r1, _021438d4 ; =data_ov61_0217a720
mov r0, r8
mvn r2, #0
bl func_ov61_0217428c
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_021436f4:
bl func_ov61_0213f64c
mov r5, r0
mvn r2, #0
cmp r5, r2
bne _02143724
ldr r1, _021438d8 ; =data_ov61_0217a72c
mov r0, r8
bl func_ov61_0217428c
ldr r1, _021438dc ; =0xfffeabc4
mov r0, #6
bl func_ov61_02143c14
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02143724:
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
add r0, r4, r0, lsl #2
ldr r0, [r0, #0x210]
cmp r7, r0
bne _02143768
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
add r0, r4, r0, lsl #1
add r0, r0, #0x200
ldrh r0, [r0, #0x90]
cmp r6, r0
beq _021437f4
_02143768:
ldr r0, [sp, #0x24]
ldrb r1, [r0]
cmp r1, #0
beq _021437e0
mov r1, #0
mov r2, #0xa
bl func_02048ecc
mov r4, r0
bl func_ov61_0214a214
mov r9, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
add r0, r9, r0, lsl #2
ldr r0, [r0, #0xf4]
cmp r4, r0
bne _021437e0
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
add r0, r4, r0, lsl #2
str r7, [r0, #0x210]
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
add r0, r4, r0, lsl #1
add r0, r0, #0x200
strh r6, [r0, #0x90]
b _021437f4
_021437e0:
ldr r1, _021438e0 ; =data_ov61_0217a738
mov r0, r8
mvn r2, #0
bl func_ov61_0217428c
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_021437f4:
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x18c]
str r1, [r0, #0x190]
bl func_ov61_0214a214
ldr r1, [r0, #8]
mov r0, r8
bl func_ov61_02174280
cmp r0, #0
bne _0214382c
ldr r1, _021438e4 ; =0xfffec5e6
mov r0, #6
bl func_ov61_02143c14
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_0214382c:
bl func_ov61_02143bf4
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #0
bne _02143860
ldr r1, [sp, #0x20]
ldr r0, _021438e8 ; =0x0000ffff
mov r4, r1, asr #0x1
cmp r0, r1, asr #1
movle r4, r0
bl func_ov61_0214a214
add r0, r0, #0x100
strh r4, [r0, #0xb0]
_02143860:
mov r0, r5
bl func_ov61_0213f6a8
mov r4, r0
mov r0, r5
bl func_ov61_0213f720
str r8, [r4]
mov r4, r0
bl func_ov61_0214a214
ldrb r1, [r0, #0xd]
add r1, r1, #1
strb r1, [r0, #0xd]
strb r5, [r4]
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
ldrb r1, [r0, #0xd]
mov r0, r8
mov r2, #0
sub r1, r1, #1
add r1, r5, r1
ldrb r3, [r1, #0x2d0]
mov r1, r4
strb r3, [r4, #1]
strh r2, [r4, #2]
str r2, [r4, #4]
bl func_ov61_02174524
mov r0, #2
bl func_ov61_021471a0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_021436a4
_021438d4: .word data_ov61_0217a720
_021438d8: .word data_ov61_0217a72c
_021438dc: .word 0xfffeabc4
_021438e0: .word data_ov61_0217a738
_021438e4: .word 0xfffec5e6
_021438e8: .word 0x0000ffff
.global func_ov61_021438ec
arm_func_start func_ov61_021438ec
func_ov61_021438ec: ; 0x021438ec
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0x1c
mov r6, r0
mov r4, r1
bl func_ov61_0214a214
cmp r0, #0
addeq sp, sp, #0x1c
ldmeqia sp!, {r4, r5, r6, r7, pc}
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #7
beq _02143930
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xc
addne sp, sp, #0x1c
ldmneia sp!, {r4, r5, r6, r7, pc}
_02143930:
cmp r4, #0
beq _02143aac
cmp r4, #5
addeq sp, sp, #0x1c
ldmeqia sp!, {r4, r5, r6, r7, pc}
cmp r4, #6
bne _02143a80
bl func_ov61_0214a214
ldrb r1, [r0, #0xc]
add r1, r1, #1
strb r1, [r0, #0xc]
bl func_ov61_0214a214
ldrb r0, [r0, #0xc]
cmp r0, #5
bls _0214399c
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0xc]
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x14]
add r0, r4, r0, lsl #2
ldr r0, [r0, #0xf4]
bl func_ov61_02146de0
add sp, sp, #0x1c
ldmia sp!, {r4, r5, r6, r7, pc}
_0214399c:
bl func_ov61_0214a214
ldr r3, [r0, #0x200]
ldr r2, _02143b64 ; =data_ov61_0217a708
add r0, sp, #0x10
mov r1, #0xc
bl func_0200c910
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
mov r7, r0
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
ldrb r2, [r6, #0x14]
ldrb r1, [r0, #0x14]
add r0, r7, r2, lsl #2
add r1, r5, r1, lsl #1
add r1, r1, #0x200
ldrh r1, [r1, #0x90]
ldr r0, [r0, #0x210]
mov r2, #0
bl func_ov61_021769a4
mov r5, r0
bl func_ov61_0214a214
mvn r1, #0
str r1, [sp]
ldr r3, _02143b68 ; =0x00001388
mov r1, #0
str r3, [sp, #4]
ldr r0, [r0, #8]
mov r2, r5
str r0, [sp, #8]
str r1, [sp, #0xc]
ldr r0, [r4, #4]
add r3, sp, #0x10
ldr r0, [r0]
bl func_ov61_02174298
cmp r0, #1
bne _02143a4c
bl func_ov61_021491f4
add sp, sp, #0x1c
ldmia sp!, {r4, r5, r6, r7, pc}
_02143a4c:
cmp r0, #0
addeq sp, sp, #0x1c
ldmeqia sp!, {r4, r5, r6, r7, pc}
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x14]
add r0, r4, r0, lsl #2
ldr r0, [r0, #0xf4]
bl func_ov61_02146de0
add sp, sp, #0x1c
cmp r0, #0
ldmia sp!, {r4, r5, r6, r7, pc}
_02143a80:
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
add r0, r0, #1
add r0, r4, r0, lsl #2
ldr r0, [r0, #0xf4]
bl func_ov61_02146de0
add sp, sp, #0x1c
cmp r0, #0
ldmia sp!, {r4, r5, r6, r7, pc}
_02143aac:
bl func_ov61_0213f64c
mov r5, r0
mvn r1, #0
cmp r5, r1
bne _02143ad4
ldr r1, _02143b6c ; =0xfffeabc4
mov r0, #6
bl func_ov61_02143c14
add sp, sp, #0x1c
ldmia sp!, {r4, r5, r6, r7, pc}
_02143ad4:
bl func_ov61_0213f6a8
mov r4, r0
mov r0, r5
bl func_ov61_0213f720
str r6, [r4]
mov r4, r0
bl func_ov61_0214a214
ldrb r2, [r0, #0xd]
mov r1, #0
add r2, r2, #1
strb r2, [r0, #0xd]
strb r5, [r4]
strh r1, [r4, #2]
str r1, [r4, #4]
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
ldrb r2, [r0, #0xd]
mov r0, r6
mov r1, r4
add r2, r5, r2
ldrb r2, [r2, #0x2d0]
strb r2, [r4, #1]
bl func_ov61_02174524
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xc
bne _02143b54
mov r0, #0
bl func_ov61_021471a0
add sp, sp, #0x1c
ldmia sp!, {r4, r5, r6, r7, pc}
_02143b54:
mov r0, #1
bl func_ov61_021471a0
add sp, sp, #0x1c
ldmia sp!, {r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_021438ec
_02143b64: .word data_ov61_0217a708
_02143b68: .word 0x00001388
_02143b6c: .word 0xfffeabc4
.global func_ov61_02143b70
arm_func_start func_ov61_02143b70
func_ov61_02143b70: ; 0x02143b70
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x218
mov r9, #0
mov r11, r1
mov r10, r2
add r8, sp, #8
mov r7, r9
mov r6, #0xa
add r5, sp, #0x18
mvn r4, #0
_02143b98:
mov r0, r8
mov r2, r9
add r1, r10, #1
bl func_ov61_02145384
cmp r0, r4
beq _02143bd0
mov r0, r8
mov r1, r7
mov r2, r6
bl func_02048ecc
str r0, [r5, r9, lsl #2]
add r9, r9, #1
cmp r9, #0x80
blt _02143b98
_02143bd0:
add r0, sp, #0x18
stmia sp, {r0, r9}
mov r2, #0
ldrb r0, [r10]
mov r1, r11
mov r3, r2
bl func_ov61_02145420
add sp, sp, #0x218
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_02143b70
.global func_ov61_02143bf4
arm_func_start func_ov61_02143bf4
func_ov61_02143bf4: ; 0x02143bf4
stmdb sp!, {r3, lr}
bl func_ov61_0214a214
mov r1, #0xff
strb r1, [r0, #0x3cc]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x3cd]
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02143bf4
.global func_ov61_02143c14
arm_func_start func_ov61_02143c14
func_ov61_02143c14: ; 0x02143c14
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #8
mov r4, r0
mov r5, r1
bl func_ov61_0214a214
cmp r0, #0
cmpne r4, #0
addeq sp, sp, #8
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
bl func_ov61_02147e08
mov r0, r4
mov r1, r5
bl func_ov61_0213e008
ldr r1, _02143ccc ; =data_ov61_0217a704
mov r0, #1
mov r2, #0
bl func_ov61_0214124c
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
moveq r7, #1
movne r7, #0
bl func_ov61_0214a214
ldr r0, [r0, #0x20c]
cmp r0, #0
moveq r8, #1
movne r8, #0
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
ldr r0, [r0, #0x20c]
bl func_ov61_021411b0
mov r5, r0
bl func_ov61_0214a214
str r5, [sp]
ldr r1, [r0, #0x468]
mov r0, r4
str r1, [sp, #4]
ldr r4, [r6, #0x464]
mov r2, r8
mov r3, r7
mov r1, #0
blx r4
bl func_ov61_0214498c
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02143c14
_02143ccc: .word data_ov61_0217a704
.global func_ov61_02143cd0
arm_func_start func_ov61_02143cd0
func_ov61_02143cd0: ; 0x02143cd0
stmdb sp!, {r3, lr}
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
ldmeqia sp!, {r3, pc}
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x14]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x16]
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
bl func_ov61_02177f3c
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02143cd0
.global func_ov61_02143d0c
arm_func_start func_ov61_02143d0c
func_ov61_02143d0c: ; 0x02143d0c
stmdb sp!, {r4, r5, r6, lr}
mov r5, r0
mov r4, r2
cmp r1, #2
beq _02143d34
cmp r1, #3
beq _02143de0
cmp r1, #4
beq _02143ea8
ldmia sp!, {r4, r5, r6, pc}
_02143d34:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #1
bne _02143dd0
ldrb r0, [r4]
cmp r0, #1
bne _02143d5c
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x20c]
_02143d5c:
ldrb r6, [r4, #1]
bl func_ov61_0214a214
ldrb r1, [r4, #2]
add r0, r0, r6
strb r1, [r0, #0x2d0]
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldr r1, [r0, #0x200]
add r0, r4, r6, lsl #2
str r1, [r0, #0xf4]
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
beq _02143da8
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
bne _02143dbc
_02143da8:
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
strb r0, [r4, #0x16]
_02143dbc:
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1ad]
mov r0, #9
bl func_ov61_0214a224
_02143dd0:
mov r0, r5
mov r1, #3
bl func_ov61_02147f74
ldmia sp!, {r4, r5, r6, pc}
_02143de0:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0x10
bne _02143e98
bl func_ov61_0214a214
ldr r2, [r0, #0x1d4]
mov r1, #1
orr r1, r2, r1, lsl r5
str r1, [r0, #0x1d4]
ldrb r1, [r4]
ldrb r0, [r4, #1]
orr r4, r1, r0, lsl #8
bl func_ov61_0214a214
add r0, r0, #0x100
ldrh r0, [r0, #0xb0]
cmp r4, r0
ble _02143e30
bl func_ov61_0214a214
add r0, r0, #0x100
strh r4, [r0, #0xb0]
_02143e30:
mov r0, #0
bl func_ov61_02148a30
mov r4, r0
bl func_ov61_0214a214
ldr r0, [r0, #0x1d4]
cmp r4, r0
ldmneia sp!, {r4, r5, r6, pc}
mov r5, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
blt _02143e8c
mov r4, #4
_02143e64:
bl func_ov61_0214a214
add r0, r0, r5
ldrb r0, [r0, #0x2d0]
mov r1, r4
bl func_ov61_02147f74
add r5, r5, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r5, r0
ble _02143e64
_02143e8c:
mov r0, #0x11
bl func_ov61_0214a224
ldmia sp!, {r4, r5, r6, pc}
_02143e98:
mov r0, r5
mov r1, #4
bl func_ov61_02147f74
ldmia sp!, {r4, r5, r6, pc}
_02143ea8:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #9
ldmneia sp!, {r4, r5, r6, pc}
mov r0, #4
bl func_ov61_021471a0
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02143d0c
.global func_ov61_02143ec4
arm_func_start func_ov61_02143ec4
func_ov61_02143ec4: ; 0x02143ec4
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
bl func_ov61_0213f4e4
cmp r0, #5
movne r0, #0
ldmneia sp!, {r3, r4, r5, pc}
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, pc}
cmp r5, #0
beq _02143f14
ldr r1, _02144038 ; =0xfffec780
mov r0, r5
add r1, r4, r1
bl func_ov61_02143c14
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
_02143f14:
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x2d0]
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a9]
cmp r0, #1
beq _02143f50
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a8]
cmp r0, #1
beq _02143f50
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a8]
cmp r0, #2
bne _02143f58
_02143f50:
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
_02143f58:
bl func_ov61_0214a214
ldr r0, [r0, #0x19c]
cmp r0, #0
beq _02143f80
bl func_ov61_0214a214
ldr r0, [r0, #0x19c]
bl func_ov61_0217741c
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x19c]
_02143f80:
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #0
beq _02143fc0
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a8]
cmp r0, #0
bne _02144030
bl func_ov61_0214a214
mov r1, #3
strb r1, [r0, #0x1a8]
bl func_ov61_0214a214
ldr r0, [r0, #4]
ldr r0, [r0]
bl func_ov61_021744b8
b _02144030
_02143fc0:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
bne _02143fe0
ldr r1, _0214403c ; =0xfffec5d2
mov r0, #6
bl func_ov61_02143c14
b _02144030
_02143fe0:
bl func_ov61_0214a214
ldr r0, [r0, #0x208]
cmp r0, #0
beq _02143ff8
bl func_ov61_02147cd8
b _02144030
_02143ff8:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #1
bne _02144028
mov r0, #0x12
bl func_ov61_0214a224
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0x1f0]
str r1, [r4, #0x1f4]
b _02144030
_02144028:
mov r0, #1
bl func_ov61_02147ba4
_02144030:
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02143ec4
_02144038: .word 0xfffec780
_0214403c: .word 0xfffec5d2
.global func_ov61_02144040
arm_func_start func_ov61_02144040
func_ov61_02144040: ; 0x02144040
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a8]
cmp r0, #2
ldmeqia sp!, {r4, pc}
mov r0, r4
bl func_ov61_02146de0
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02144040
.global func_ov61_02144064
arm_func_start func_ov61_02144064
func_ov61_02144064: ; 0x02144064
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
bl func_ov61_0214a214
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
cmp r5, #0
mov r4, #0
ble _021440c0
_0214408c:
bl func_ov61_0214a214
add r0, r0, r4, lsl #2
ldr r0, [r0, #0xf4]
cmp r6, r0
bne _021440b4
mov r0, r4
mov r1, r5
bl func_ov61_021440c8
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
_021440b4:
add r4, r4, #1
cmp r4, r5
blt _0214408c
_021440c0:
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02144064
.global func_ov61_021440c8
arm_func_start func_ov61_021440c8
func_ov61_021440c8: ; 0x021440c8
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
mov r9, r0
mov r8, r1
bl func_ov61_0214a214
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
bl func_ov61_0214a214
add r0, r0, r9, lsl #2
ldr r11, [r0, #0xf4]
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
add r0, r0, r9
ldrb r0, [r0, #0x2d0]
mov r1, #1
ldr r2, [r4, #0x2f0]
mvn r0, r1, lsl r0
and r0, r2, r0
str r0, [r4, #0x2f0]
bl func_ov61_021442c0
sub r0, r8, #1
cmp r9, r0
bge _02144208
sub r0, r8, r9
sub r5, r0, #1
cmp r5, #0
mov r4, #0
ble _02144208
_0214413c:
add r7, r9, r4
add r6, r7, #1
bl func_ov61_0214a214
mov r10, r0
bl func_ov61_0214a214
add r0, r0, r6, lsl #2
ldr r1, [r0, #0x24]
add r0, r10, r7, lsl #2
str r1, [r0, #0x24]
bl func_ov61_0214a214
mov r10, r0
bl func_ov61_0214a214
add r0, r0, r6, lsl #1
ldrh r1, [r0, #0xa4]
add r0, r10, r7, lsl #1
strh r1, [r0, #0xa4]
bl func_ov61_0214a214
mov r10, r0
bl func_ov61_0214a214
add r1, r10, r7, lsl #2
add r0, r0, r6, lsl #2
ldr r0, [r0, #0xf4]
str r0, [r1, #0xf4]
bl func_ov61_0214a214
mov r10, r0
bl func_ov61_0214a214
add r1, r10, r7, lsl #2
add r0, r0, r6, lsl #2
ldr r0, [r0, #0x210]
str r0, [r1, #0x210]
bl func_ov61_0214a214
mov r10, r0
bl func_ov61_0214a214
add r1, r10, r7, lsl #1
add r0, r0, r6, lsl #1
add r0, r0, #0x200
ldrh r2, [r0, #0x90]
add r0, r1, #0x200
strh r2, [r0, #0x90]
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
add r0, r9, r0
add r0, r4, r0
ldrb r1, [r0, #0x2d1]
add r0, r9, r6
add r0, r4, r0
strb r1, [r0, #0x2d0]
add r4, r4, #1
cmp r4, r5
blt _0214413c
_02144208:
cmp r8, #0
ble _02144278
sub r4, r8, #1
bl func_ov61_0214a214
add r0, r0, r4, lsl #2
mov r1, #0
str r1, [r0, #0x24]
bl func_ov61_0214a214
add r0, r0, r4, lsl #1
mov r1, #0
strh r1, [r0, #0xa4]
bl func_ov61_0214a214
add r0, r0, r4, lsl #2
mov r1, #0
str r1, [r0, #0xf4]
bl func_ov61_0214a214
add r0, r0, r4, lsl #2
mov r1, #0
str r1, [r0, #0x210]
bl func_ov61_0214a214
add r0, r0, r4, lsl #1
add r0, r0, #0x200
mov r1, #0
strh r1, [r0, #0x90]
bl func_ov61_0214a214
add r0, r0, r4
mov r1, #0
strb r1, [r0, #0x2d0]
_02144278:
mov r0, r11
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_021440c8
.global func_ov61_02144280
arm_func_start func_ov61_02144280
func_ov61_02144280: ; 0x02144280
stmdb sp!, {r3, lr}
bl func_ov61_0214a214
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02144280
.global func_ov61_021442a0
arm_func_start func_ov61_021442a0
func_ov61_021442a0: ; 0x021442a0
stmdb sp!, {r3, lr}
bl func_ov61_0214a214
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
bl func_ov61_0214a214
ldrb r0, [r0, #0xe]
ldmia sp!, {r3, pc}
arm_func_end func_ov61_021442a0
.global func_ov61_021442c0
arm_func_start func_ov61_021442c0
func_ov61_021442c0: ; 0x021442c0
stmdb sp!, {r4, r5, r6, lr}
mvn r5, #0
mov r6, #0
mov r4, #1
_021442d0:
bl func_ov61_0214a214
ldr r0, [r0, #0x2f0]
tst r0, r4, lsl r6
add r6, r6, #1
addne r5, r5, #1
cmp r6, #0x20
blt _021442d0
mvn r0, #0
cmp r5, r0
bne _02144308
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0xe]
ldmia sp!, {r4, r5, r6, pc}
_02144308:
bl func_ov61_0214a214
strb r5, [r0, #0xe]
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_021442c0
.global func_ov61_02144314
arm_func_start func_ov61_02144314
func_ov61_02144314: ; 0x02144314
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_0214a214
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, pc}
bl func_ov61_0214a214
add r0, r0, #0x2d0
str r0, [r4]
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
add r0, r0, #1
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02144314
.global func_ov61_02144348
arm_func_start func_ov61_02144348
func_ov61_02144348: ; 0x02144348
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r7, r0
bl func_ov61_0214a214
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
ldr r0, _021443e8 ; =data_ov61_0217f330
mov r1, #0
mov r2, #0x20
bl func_02007a44
mov r5, #0
bl func_ov61_0214a214
ldrb r0, [r0, #0xe]
cmp r0, #0
blt _021443d0
ldr r6, _021443e8 ; =data_ov61_0217f330
mov r4, #1
_0214438c:
bl func_ov61_0214a214
mov r8, r0
bl func_ov61_0214a214
add r0, r0, r5
ldrb r0, [r0, #0x2d0]
ldr r1, [r8, #0x2f0]
tst r1, r4, lsl r0
beq _021443d0
bl func_ov61_0214a214
add r0, r0, r5
ldrb r0, [r0, #0x2d0]
add r5, r5, #1
strb r0, [r6], #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xe]
cmp r5, r0
ble _0214438c
_021443d0:
ldr r0, _021443e8 ; =data_ov61_0217f330
str r0, [r7]
bl func_ov61_0214a214
ldrb r0, [r0, #0xe]
add r0, r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02144348
_021443e8: .word data_ov61_0217f330
.global func_ov61_021443ec
arm_func_start func_ov61_021443ec
func_ov61_021443ec: ; 0x021443ec
stmdb sp!, {lr}
sub sp, sp, #0x2c
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
addne sp, sp, #0x2c
movne r0, #0
ldmneia sp!, {pc}
bl func_ov61_0214a214
ldrb r1, [r0, #0x16]
ldr r2, _021444ac ; =data_ov61_0217a708
add r0, sp, #0x20
add r3, r1, #1
mov r1, #0xc
bl func_0200c910
ldr r0, _021444b0 ; =data_ov61_0217a750
add r1, sp, #0x20
add r2, sp, #0
mov r3, #0x2f
bl func_ov61_0213e580
bl func_ov61_0214a214
ldrb r2, [r0, #0xd]
add r0, sp, #0x20
mov r1, #0xc
add r3, r2, #1
ldr r2, _021444ac ; =data_ov61_0217a708
bl func_0200c910
ldr r0, _021444b4 ; =data_ov61_0217a754
add r1, sp, #0x20
add r2, sp, #0
mov r3, #0x2f
bl func_ov61_0213e5b8
ldr r2, _021444ac ; =data_ov61_0217a708
add r0, sp, #0x20
mov r1, #0xc
mov r3, #3
bl func_0200c910
ldr r0, _021444b8 ; =data_ov61_0217a71c
add r1, sp, #0x20
add r2, sp, #0
mov r3, #0x2f
bl func_ov61_0213e5b8
mov r0, #6
add r1, sp, #0
mov r2, #0
bl func_ov61_0214124c
add sp, sp, #0x2c
ldmia sp!, {pc}
.align 2, 0
arm_func_end func_ov61_021443ec
_021444ac: .word data_ov61_0217a708
_021444b0: .word data_ov61_0217a750
_021444b4: .word data_ov61_0217a754
_021444b8: .word data_ov61_0217a71c
.global func_ov61_021444bc
arm_func_start func_ov61_021444bc
func_ov61_021444bc: ; 0x021444bc
stmdb sp!, {r3, lr}
mov r0, #0
bl func_ov61_0214a204
ldr r0, _02144530 ; =data_ov61_0217ebe8
ldr r1, [r0, #0xc]
cmp r1, #0
beq _021444f0
mov r0, #4
mov r2, #0
bl func_ov61_0213e068
ldr r0, _02144530 ; =data_ov61_0217ebe8
mov r1, #0
str r1, [r0, #0xc]
_021444f0:
bl func_ov61_021487b8
ldr r0, _02144530 ; =data_ov61_0217ebe8
ldr r1, [r0]
cmp r1, #0
beq _0214451c
mov r0, #4
mov r2, #0
bl func_ov61_0213e068
ldr r0, _02144530 ; =data_ov61_0217ebe8
mov r1, #0
str r1, [r0]
_0214451c:
ldr r0, _02144530 ; =data_ov61_0217ebe8
mov r1, #0
strb r1, [r0, #8]
strb r1, [r0, #9]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021444bc
_02144530: .word data_ov61_0217ebe8
.global func_ov61_02144534
arm_func_start func_ov61_02144534
func_ov61_02144534: ; 0x02144534
stmdb sp!, {r3, lr}
bl func_ov61_0214a214
cmp r0, #0
moveq r0, #1
movne r0, #0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02144534
.global func_ov61_0214454c
arm_func_start func_ov61_0214454c
func_ov61_0214454c: ; 0x0214454c
stmdb sp!, {r3, r4, r5, lr}
mov r4, r0
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0xc]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x17c]
bl func_ov61_0214a214
mov r5, r0
mov r0, #0x10000
bl func_ov61_0213e6f4
add r1, r5, #0x100
strh r0, [r1, #0x7e]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x180]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x184]
str r1, [r0, #0x188]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x18c]
str r1, [r0, #0x190]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a4]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a9]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1aa]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1ab]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1ac]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a7]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a8]
bl func_ov61_0214a214
mov r1, #0
add r0, r0, #0x100
strh r1, [r0, #0xb2]
bl func_ov61_0214a214
mov r1, #0
add r0, r0, #0x100
strh r1, [r0, #0xb4]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1b8]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1e0]
str r1, [r0, #0x1e4]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1f0]
str r1, [r0, #0x1f4]
bl func_ov61_0214a214
add r1, r0, #0x3cc
mov r0, #0
mov r2, #0x98
bl func_020078f4
cmp r4, #2
bne _021446b8
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
strb r0, [r4, #0x14]
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
bne _0214469c
mov r0, #1
bl func_ov61_0214a224
ldmia sp!, {r3, r4, r5, pc}
_0214469c:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
ldmneia sp!, {r3, r4, r5, pc}
mov r0, #0xa
bl func_ov61_0214a224
ldmia sp!, {r3, r4, r5, pc}
_021446b8:
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0xd]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0xe]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x14]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x17]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x20]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0xe8]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a5]
bl func_ov61_0214a214
mov r1, #0
add r0, r0, #0x100
strh r1, [r0, #0xb0]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1bc]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1c0]
str r1, [r0, #0x1c4]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1c8]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1cc]
str r1, [r0, #0x1d0]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1d4]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x204]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x208]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x2f0]
bl func_ov61_0214a214
add r1, r0, #0x24
mov r0, #0
mov r2, #0x80
bl func_020078f4
bl func_ov61_0214a214
add r1, r0, #0xa4
mov r0, #0
mov r2, #0x40
bl func_020078c0
bl func_ov61_0214a214
add r1, r0, #0xf4
mov r0, #0
mov r2, #0x80
bl func_020078f4
bl func_ov61_0214a214
add r1, r0, #0x194
mov r0, #0
mov r2, #0xc
bl func_020078f4
bl func_ov61_0214a214
add r1, r0, #0x210
mov r0, #0
mov r2, #0x80
bl func_020078f4
bl func_ov61_0214a214
add r1, r0, #0x290
mov r0, #0
mov r2, #0x40
bl func_020078c0
bl func_ov61_0214a214
add r0, r0, #0x2d0
mov r1, #0
mov r2, #0x20
bl func_02007a44
bl func_ov61_0214a214
add r1, r0, #0x348
mov r0, #0
mov r2, #0x84
bl func_020078f4
cmp r4, #1
bne _02144864
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
bne _02144848
mov r0, #3
bl func_ov61_0214a224
ldmia sp!, {r3, r4, r5, pc}
_02144848:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
ldmneia sp!, {r3, r4, r5, pc}
mov r0, #4
bl func_ov61_0214a224
ldmia sp!, {r3, r4, r5, pc}
_02144864:
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x15]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x16]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x18]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x20c]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a6]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1ae]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1ad]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1f8]
str r1, [r0, #0x1fc]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x46c]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x470]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0214454c
.global func_ov61_021448e4
arm_func_start func_ov61_021448e4
func_ov61_021448e4: ; 0x021448e4
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r0, #0
mov r6, r1
mov r5, r2
mov r4, r3
bl func_ov61_0214454c
bl func_ov61_0214a214
strb r7, [r0, #0x15]
bl func_ov61_0214a214
strb r6, [r0, #0x16]
bl func_ov61_0214a214
str r5, [r0, #0x464]
bl func_ov61_0214a214
str r4, [r0, #0x468]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x17d]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x2d0]
mov r0, #0x32
ldr r1, _02144978 ; =data_ov61_0217a758
bl func_ov61_02179288
mov r0, #0x33
ldr r1, _0214497c ; =data_ov61_0217a760
bl func_ov61_02179288
mov r0, #0x34
ldr r1, _02144980 ; =data_ov61_0217a76c
bl func_ov61_02179288
mov r0, #0x35
ldr r1, _02144984 ; =data_ov61_0217a778
bl func_ov61_02179288
mov r0, #0x36
ldr r1, _02144988 ; =data_ov61_0217a784
bl func_ov61_02179288
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_021448e4
_02144978: .word data_ov61_0217a758
_0214497c: .word data_ov61_0217a760
_02144980: .word data_ov61_0217a76c
_02144984: .word data_ov61_0217a778
_02144988: .word data_ov61_0217a784
.global func_ov61_0214498c
arm_func_start func_ov61_0214498c
func_ov61_0214498c: ; 0x0214498c
stmdb sp!, {r3, lr}
bl func_ov61_0214a214
cmp r0, #0
ldmeqia sp!, {r3, pc}
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
cmp r0, #0
beq _021449c4
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
bl func_ov61_02162ba0
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0xe4]
_021449c4:
bl func_ov61_02176dc0
mov r0, #0
bl func_ov61_0214a224
ldr r0, _02144a0c ; =data_ov61_0217ebe8
ldr r1, [r0, #0xc]
cmp r1, #0
beq _021449f8
mov r0, #4
mov r2, #0
bl func_ov61_0213e068
ldr r0, _02144a0c ; =data_ov61_0217ebe8
mov r1, #0
str r1, [r0, #0xc]
_021449f8:
bl func_ov61_021487b8
bl func_ov61_0214a214
mov r1, #1
strb r1, [r0, #0x18]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0214498c
_02144a0c: .word data_ov61_0217ebe8
.global func_ov61_02144a10
arm_func_start func_ov61_02144a10
func_ov61_02144a10: ; 0x02144a10
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x1b0
mov r7, #8
mov r6, #0xa
mov r5, #0x32
mov r4, #0x33
mov r3, #0x34
mov r2, #0x35
mov r1, #0x36
strb r7, [sp, #0xc]
strb r6, [sp, #0xd]
strb r5, [sp, #0xe]
strb r4, [sp, #0xf]
strb r3, [sp, #0x10]
strb r2, [sp, #0x11]
strb r1, [sp, #0x12]
mov r4, r0
mov r8, #7
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
beq _02144a78
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
bne _02144aa4
_02144a78:
ldr r2, _02144bf4 ; =data_ov61_0217ebf8
add r3, sp, #0x13
mov r1, #0
_02144a84:
ldrb r0, [r2]
add r1, r1, #1
add r2, r2, #0xc
cmp r0, #0
strneb r0, [r3], #1
addne r8, r8, #1
cmp r1, #0x9a
blt _02144a84
_02144aa4:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #5
addls pc, pc, r0, lsl #2
b _02144b5c
_02144ab8: ; jump table
b _02144b5c ; case 0
b _02144b5c ; case 1
b _02144b3c ; case 2
b _02144ad0 ; case 3
b _02144b3c ; case 4
b _02144b3c ; case 5
_02144ad0:
bl func_ov61_0214a214
ldr r0, [r0, #0x208]
cmp r0, #0
bne _02144b34
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldr r1, [r5, #0x200]
ldrb r2, [r4, #0x16]
ldrb r3, [r0, #0x15]
add r0, sp, #0xad
bl func_ov61_02144c0c
ldr r0, _02144bf8 ; =data_ov61_0217ebe8
ldr r4, [r0, #0xc]
cmp r4, #0
beq _02144b5c
add r0, sp, #0xad
ldr r2, _02144bfc ; =data_ov61_0217a790
mov r3, r0
mov r1, #0x100
str r4, [sp]
bl func_0200c910
b _02144b5c
_02144b34:
bl func_ov61_0214a214
ldr r4, [r0, #0x208]
_02144b3c:
ldr r2, _02144c00 ; =data_ov61_0217a79c
ldr r3, _02144c04 ; =data_ov61_0217a758
add r0, sp, #0xad
mov r1, #0x100
str r4, [sp]
bl func_0200c910
bl func_ov61_0214a214
str r4, [r0, #0x204]
_02144b5c:
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
bl func_ov61_02162e28
mov r10, #0
add r7, sp, #0xad
mov r6, #6
mov r5, #1
mov r4, r10
add r11, sp, #0xc
_02144b80:
bl func_ov61_0214a214
str r8, [sp]
str r7, [sp, #4]
str r6, [sp, #8]
ldr r0, [r0, #0xe4]
mov r1, r5
mov r2, r4
mov r3, r11
bl func_ov61_02162cf4
movs r9, r0
beq _02144bc0
cmp r9, #2
bne _02144bc0
add r10, r10, #1
cmp r10, #5
blt _02144b80
_02144bc0:
cmp r9, #0
bne _02144be8
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
ldr r2, _02144c08 ; =0x00efb5f7
adds r0, r0, r2
str r0, [r4, #0x174]
adc r0, r1, #0
str r0, [r4, #0x178]
_02144be8:
mov r0, r9
add sp, sp, #0x1b0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02144a10
_02144bf4: .word data_ov61_0217ebf8
_02144bf8: .word data_ov61_0217ebe8
_02144bfc: .word data_ov61_0217a790
_02144c00: .word data_ov61_0217a79c
_02144c04: .word data_ov61_0217a758
_02144c08: .word 0x00efb5f7
.global func_ov61_02144c0c
arm_func_start func_ov61_02144c0c
func_ov61_02144c0c: ; 0x02144c0c
stmdb sp!, {lr}
sub sp, sp, #0x24
mov lr, #3
ldr ip, _02144c60 ; =data_ov61_0217a758
str lr, [sp]
str ip, [sp, #4]
str r1, [sp, #8]
str r2, [sp, #0xc]
str r2, [sp, #0x10]
ldr r2, _02144c64 ; =data_ov61_0217a760
ldr r1, _02144c68 ; =data_ov61_0217a76c
str r2, [sp, #0x14]
str r3, [sp, #0x18]
str r1, [sp, #0x1c]
ldr r2, _02144c6c ; =data_ov61_0217a7a4
ldr r3, _02144c70 ; =data_ov61_0217a778
mov r1, #0x100
str ip, [sp, #0x20]
bl func_0200c910
add sp, sp, #0x24
ldmia sp!, {pc}
.align 2, 0
arm_func_end func_ov61_02144c0c
_02144c60: .word data_ov61_0217a758
_02144c64: .word data_ov61_0217a760
_02144c68: .word data_ov61_0217a76c
_02144c6c: .word data_ov61_0217a7a4
_02144c70: .word data_ov61_0217a778
.global func_ov61_02144c74
arm_func_start func_ov61_02144c74
func_ov61_02144c74: ; 0x02144c74
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #0x10
mov r4, r0
mov r8, r1
mov r7, r2
bl func_ov61_0214a214
cmp r4, #0
ldrb r4, [r0, #0x14]
mov r6, #0
bne _02144eb8
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
add r0, r0, #0x100
ldrh r2, [r0, #0x7e]
ldr r1, [r5, #0x200]
mov r0, r7
mov r1, r1, lsl #0x10
mov r2, r2, lsl #0x10
orr r8, r2, r1, lsr #16
bl func_ov61_02162368
cmp r0, #0
beq _02144d30
mov r0, r7
bl func_ov61_02162334
mov r5, r0
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
bl func_ov61_02162ea4
cmp r5, r0
movne r5, #1
bne _02144db8
bl func_ov61_0214a214
mov r5, r0
mov r0, r7
bl func_ov61_02162380
add r1, r5, r4, lsl #2
str r0, [r1, #0x210]
bl func_ov61_0214a214
mov r5, r0
mov r0, r7
bl func_ov61_02162388
add r1, r5, r4, lsl #1
add r1, r1, #0x200
strh r0, [r1, #0x90]
mov r5, r6
b _02144db8
_02144d30:
bl func_ov61_02159200
mov r0, r0, lsl #0x10
mov r2, r0, lsr #0x10
mov r0, r2, lsl #0x10
ldr r1, _02144f5c ; =0x0000a8c0
mov r0, r0, lsr #0x10
cmp r0, r1
beq _02144d78
and r1, r2, #0xff
cmp r1, #0xac
bne _02144d70
and r0, r2, #0xff00
cmp r0, #0x1000
blo _02144d70
cmp r0, #0x1f00
bls _02144d78
_02144d70:
cmp r1, #0x10
bne _02144d80
_02144d78:
mov r5, #1
b _02144db8
_02144d80:
bl func_ov61_0214a214
mov r5, r0
mov r0, r7
bl func_ov61_02162334
add r1, r5, r4, lsl #2
str r0, [r1, #0x210]
bl func_ov61_0214a214
mov r5, r0
mov r0, r7
bl func_ov61_0216233c
add r1, r5, r4, lsl #1
add r1, r1, #0x200
strh r0, [r1, #0x90]
mov r5, #0
_02144db8:
cmp r5, #0
beq _02144de4
bl func_ov61_0214a214
mov r4, r0
mov r0, #0x10000
bl func_ov61_0213e6f4
add r1, r4, #0x100
strh r0, [r1, #0x7e]
bl func_ov61_0214a214
str r8, [r0, #0x19c]
b _02144e70
_02144de4:
bl func_ov61_02159200
str r0, [sp, #8]
bl func_ov61_0214a214
ldr r0, [r0, #4]
ldr r0, [r0]
bl func_ov61_021744fc
str r0, [sp, #0xc]
bl func_ov61_0214a214
mov r9, r0
mov r0, r7
bl func_ov61_02162334
mov r8, r0
mov r0, r7
bl func_ov61_0216233c
add r1, r9, r4, lsl #2
add r4, sp, #8
mov r3, r0
mov r0, #2
str r4, [sp]
str r0, [sp, #4]
ldr r1, [r1, #0xf4]
mov r2, r8
mov r0, #6
bl func_ov61_0214501c
mov r4, r0
bl func_ov61_0214a214
mov r1, #0
cmp r4, #0
strb r1, [r0, #0x3cd]
addne sp, sp, #0x10
movne r0, #2
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x19c]
_02144e70:
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x194]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x195]
bl func_ov61_0214a214
mov r4, r0
mov r0, r7
bl func_ov61_0216233c
add r1, r4, #0x100
strh r0, [r1, #0x96]
bl func_ov61_0214a214
mov r4, r0
mov r0, r7
bl func_ov61_02162334
str r0, [r4, #0x198]
b _02144ef8
_02144eb8:
bl func_ov61_0214a214
mov r1, #1
strb r1, [r0, #0x194]
bl func_ov61_0214a214
mov r1, r6
strb r1, [r0, #0x195]
bl func_ov61_0214a214
add r0, r0, #0x100
mov r1, r6
strh r1, [r0, #0x96]
bl func_ov61_0214a214
mov r1, r6
str r1, [r0, #0x198]
bl func_ov61_0214a214
str r8, [r0, #0x19c]
mov r5, #1
_02144ef8:
cmp r5, #0
beq _02144f14
bl func_ov61_0214a214
add r0, r0, #0x194
bl func_ov61_02144f60
mov r6, r0
b _02144f50
_02144f14:
bl func_ov61_0214a214
ldr r0, [r0, #4]
ldr r0, [r0]
bl func_ov61_02174514
mov r4, r0
bl func_ov61_0214a214
add r3, r0, #0x194
mov r0, #0
mov r1, r4
mov r2, r0
bl func_ov61_02149dbc
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x18c]
str r1, [r0, #0x190]
_02144f50:
mov r0, r6
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_02144c74
_02144f5c: .word 0x0000a8c0
.global func_ov61_02144f60
arm_func_start func_ov61_02144f60
func_ov61_02144f60: ; 0x02144f60
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #8
mov r7, r0
ldrb r0, [r7]
cmp r0, #0
bne _02144fb8
bl func_ov61_0214a214
mov r4, r0
mov r1, #0
ldr r0, [r7, #4]
mov r2, r1
bl func_ov61_021769a4
mov r1, r0
ldrh r2, [r7, #2]
ldr r0, [r4, #0xe4]
ldr r3, [r7, #8]
bl func_ov61_02162d80
bl func_ov61_02148fcc
cmp r0, #0
addne sp, sp, #8
movne r0, #2
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
_02144fb8:
ldr r5, _02145014 ; =func_ov61_02149dbc
ldr r4, _02145018 ; =func_ov61_02149db8
mov r6, #0
_02144fc4:
bl func_ov61_0214a214
ldr r0, [r0, #4]
ldr r0, [r0]
bl func_ov61_02174514
stmia sp, {r5, r7}
ldrb r2, [r7]
ldr r1, [r7, #8]
mov r3, r4
bl func_ov61_02177354
cmp r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
cmp r0, #3
addne sp, sp, #8
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
add r6, r6, #1
cmp r6, #5
blt _02144fc4
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02144f60
_02145014: .word func_ov61_02149dbc
_02145018: .word func_ov61_02149db8
.global func_ov61_0214501c
arm_func_start func_ov61_0214501c
func_ov61_0214501c: ; 0x0214501c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x220
str r3, [sp, #0xc]
mov r10, r0
str r1, [sp, #4]
str r2, [sp, #8]
ldr r9, [sp, #0x248]
ldr r8, [sp, #0x24c]
mov r6, #0
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
beq _02145078
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
beq _02145070
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a6]
cmp r0, #0
beq _02145098
_02145070:
cmp r10, #6
bne _02145098
_02145078:
ldr r2, [sp, #0xc]
ldr r1, [sp, #8]
mov r0, r10
mov r3, r9
str r8, [sp]
bl func_ov61_021451d0
mov r4, r0
b _02145130
_02145098:
cmp r9, #0
cmpne r8, #0
beq _02145108
ldr r3, [r9]
ldr r2, _021451c8 ; =data_ov61_0217a708
add r0, sp, #0x20
mov r1, #0x200
bl func_0200c910
mov r6, r0
cmp r8, #1
mov r7, #1
ble _02145108
add r5, sp, #0x10
add r11, sp, #0x20
_021450d0:
ldr r3, [r9, r7, lsl #2]
ldr r2, _021451cc ; =data_ov61_0217a7fc
mov r0, r5
mov r1, #0x10
bl func_0200c910
mov r4, r0
mov r0, r5
add r1, r11, r6
mov r2, r4
bl func_02007ad8
add r7, r7, #1
add r6, r6, r4
cmp r7, r8
blt _021450d0
_02145108:
add r0, sp, #0x20
mov r1, #0
strb r1, [r0, r6]
bl func_ov61_0214a214
ldr r0, [r0]
ldr r2, [sp, #4]
add r3, sp, #0x20
mov r1, r10
bl func_ov61_021452e0
mov r4, r0
_02145130:
cmp r10, #2
cmpne r10, #6
beq _0214514c
add r0, r10, #0xf8
and r0, r0, #0xff
cmp r0, #1
bhi _021451bc
_0214514c:
bl func_ov61_0214a214
strb r10, [r0, #0x3cc]
bl func_ov61_0214a214
add r1, r0, #0x300
ldr r0, [sp, #0xc]
strh r0, [r1, #0xce]
bl func_ov61_0214a214
ldr r1, [sp, #8]
str r1, [r0, #0x3d0]
bl func_ov61_0214a214
ldr r1, [sp, #4]
str r1, [r0, #0x454]
bl func_ov61_0214a214
str r8, [r0, #0x458]
bl func_ov61_0214a214
mov r5, r0
bl func_0200e8f8
str r0, [r5, #0x45c]
cmp r9, #0
str r1, [r5, #0x460]
cmpne r8, #0
beq _021451bc
bl func_ov61_0214a214
mov r1, r0
mov r0, r9
add r1, r1, #0x3d4
mov r2, r8, lsl #0x2
bl func_02007908
_021451bc:
mov r0, r4
add sp, sp, #0x220
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0214501c
_021451c8: .word data_ov61_0217a708
_021451cc: .word data_ov61_0217a7fc
.global func_ov61_021451d0
arm_func_start func_ov61_021451d0
func_ov61_021451d0: ; 0x021451d0
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #0x98
ldr r5, [sp, #0xb8]
cmp r3, #0
cmpne r5, #0
mov r4, r0
mov r8, r1
mov r7, r2
moveq r5, #0
beq _02145208
add r1, sp, #0x18
mov r0, r3
mov r2, r5, lsl #0x2
bl func_02007908
_02145208:
ldr r2, _021452dc ; =data_ov61_0217a800
mov r0, r5, lsl #0x2
ldrb r1, [r2, #4]
ldrb r6, [r2]
add r9, sp, #4
ldrb r5, [r2, #1]
ldrb r3, [r2, #2]
ldrb r2, [r2, #3]
strb r1, [r9, #4]
mov r1, #3
strb r6, [r9]
strb r5, [r9, #1]
strb r3, [r9, #2]
strb r2, [r9, #3]
str r1, [sp, #8]
strb r4, [sp, #0xc]
strb r0, [sp, #0xd]
bl func_ov61_0214a214
ldrh r0, [r0, #0x1a]
strh r0, [sp, #0xe]
bl func_ov61_0214a214
ldr r0, [r0, #0x1c]
str r0, [sp, #0x10]
bl func_ov61_0214a214
ldr r0, [r0, #0x200]
mov r6, #0
str r0, [sp, #0x14]
mov r4, r6
_02145278:
bl func_ov61_0214a214
mov r5, r0
mov r0, r8
mov r1, r4
mov r2, r4
bl func_ov61_021769a4
mov r1, r0
ldrb r0, [sp, #0xd]
mov r2, r7
mov r3, r9
add r0, r0, #0x14
str r0, [sp]
ldr r0, [r5, #0xe4]
bl func_ov61_02162d28
cmp r0, #0
addeq sp, sp, #0x98
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
cmp r0, #2
addne sp, sp, #0x98
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
add r6, r6, #1
cmp r6, #5
blt _02145278
add sp, sp, #0x98
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_021451d0
_021452dc: .word data_ov61_0217a800
.global func_ov61_021452e0
arm_func_start func_ov61_021452e0
func_ov61_021452e0: ; 0x021452e0
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x208
mov r7, r0
mov r5, r2
mov r4, r3
mov r0, #3
mov r6, r1
str r0, [sp]
ldr ip, _02145378 ; =data_ov61_0217a818
ldr r2, _0214537c ; =data_ov61_0217a808
ldr r3, _02145380 ; =data_ov61_0217a810
add r0, sp, #8
mov r1, #0x200
str ip, [sp, #4]
bl func_0200c910
add r1, sp, #8
add r2, sp, #9
strb r6, [r1, r0]
mov r1, #0
strb r1, [r2, r0]
cmp r4, #0
add r8, r2, r0
beq _02145360
mov r0, r4
bl strlen
mov r6, r0
mov r0, r4
mov r1, r8
mov r2, r6
bl func_02007ad8
mov r0, #0
strb r0, [r8, r6]
_02145360:
add r2, sp, #8
mov r0, r7
mov r1, r5
bl func_ov61_02167b00
add sp, sp, #0x208
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_021452e0
_02145378: .word data_ov61_0217a818
_0214537c: .word data_ov61_0217a808
_02145380: .word data_ov61_0217a810
.global func_ov61_02145384
arm_func_start func_ov61_02145384
func_ov61_02145384: ; 0x02145384
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r9, r1
mov r4, r0
mov r8, r2
mov r0, r9
mov r1, #0
bl strchr
mov r6, r0
cmp r8, #0
mov r7, #0
ble _021453dc
mov r5, #0x2f
_021453b4:
mov r0, r9
mov r1, r5
bl strchr
cmp r0, #0
mvneq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
add r7, r7, #1
cmp r7, r8
add r9, r0, #1
blt _021453b4
_021453dc:
mov r0, r9
mov r1, #0x2f
bl strchr
cmp r0, #0
moveq r0, r6
cmp r9, r0
mvneq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
sub r5, r0, r9
mov r0, r9
mov r1, r4
mov r2, r5
bl func_02007ad8
mov r1, #0
mov r0, r5
strb r1, [r4, r5]
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
arm_func_end func_ov61_02145384
.global func_ov61_02145420
arm_func_start func_ov61_02145420
func_ov61_02145420: ; 0x02145420
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
sub sp, sp, #0x118
mov r9, r0
mov r8, r1
mov r7, r2
mov r10, r3
ldr r6, [sp, #0x138]
ldr r5, [sp, #0x13c]
mov r4, #0
bl func_ov61_0214a214
cmp r0, #0
beq _02145460
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0
bne _0214546c
_02145460:
add sp, sp, #0x118
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_0214546c:
bl func_ov61_0213f4e4
cmp r0, #5
bne _0214549c
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #1
bne _0214549c
bl func_ov61_0214a214
ldr r0, [r0, #0xf4]
cmp r8, r0
bne _0214549c
bl func_ov61_02148a94
_0214549c:
cmp r9, #0x40
bgt _02145538
bge _0214627c
cmp r9, #0x20
addls pc, pc, r9, lsl #2
b _021462f0
_021454b4: ; jump table
b _021462f0 ; case 0
b _02145540 ; case 1
b _02145710 ; case 2
b _021458e4 ; case 3
b _02145944 ; case 4
b _02145a64 ; case 5
b _02145ae0 ; case 6
b _02145bf0 ; case 7
b _02145d08 ; case 8
b _02145e88 ; case 9
b _02145edc ; case 10
b _02145540 ; case 11
b _02145f84 ; case 12
b _02145ff8 ; case 13
b _02145ff8 ; case 14
b _02145ff8 ; case 15
b _0214601c ; case 16
b _0214606c ; case 17
b _0214610c ; case 18
b _02146168 ; case 19
b _021462f0 ; case 20
b _021462f0 ; case 21
b _021462f0 ; case 22
b _021462f0 ; case 23
b _021462f0 ; case 24
b _021462f0 ; case 25
b _021462f0 ; case 26
b _021462f0 ; case 27
b _021462f0 ; case 28
b _021462f0 ; case 29
b _021462f0 ; case 30
b _021462f0 ; case 31
b _02146180 ; case 32
_02145538:
cmp r9, #0x41
b _021462f0
_02145540:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
beq _02145560
ldr r0, [r6, #8]
ldr r7, [r6, #4]
mov r0, r0, lsl #0x10
mov r10, r0, lsr #0x10
_02145560:
cmp r9, #0xb
moveq r0, #1
movne r0, #0
str r0, [sp]
ldr r3, [r6]
mov r0, r8
mov r1, r7
mov r2, r10
bl func_ov61_02146304
mov r5, r0
cmp r5, #2
bne _02145684
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1dc]
mov r0, r8
mov r1, r7
mov r2, r10
bl func_ov61_02146600
bl func_ov61_02146810
cmp r0, #0
addne sp, sp, #0x118
movne r0, #0
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
bne _02145608
bl func_ov61_0214a214
ldr r0, [r0, #0x46c]
cmp r0, #0
beq _02145608
bl func_ov61_0214a214
mov r6, r0
mov r0, r8
bl func_ov61_021411b0
mov r4, r0
bl func_ov61_0214a214
ldr r1, [r0, #0x470]
ldr r2, [r6, #0x46c]
mov r0, r4
blx r2
_02145608:
bl func_ov61_0214a214
ldrb r0, [r0, #0x14]
mov r4, #1
str r0, [sp, #0x14]
bl func_ov61_0214a214
ldrb r0, [r0, #0x14]
cmp r0, #1
blt _02145650
add r6, sp, #0x14
_0214562c:
bl func_ov61_0214a214
add r0, r0, r4, lsl #2
ldr r0, [r0, #0xf4]
str r0, [r6, r4, lsl #2]
add r4, r4, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0x14]
cmp r4, r0
ble _0214562c
_02145650:
bl func_ov61_0214a214
ldr r1, [r0, #0x1c]
add r0, sp, #0x14
str r1, [r0, r4, lsl #2]
bl func_ov61_0214a214
ldrh r2, [r0, #0x1a]
add r3, r4, #1
add r1, sp, #0x14
mov r0, #0xb
str r2, [r1, r3, lsl #2]
add r4, r4, #2
bl func_ov61_0214a224
b _021456d0
_02145684:
cmp r5, #3
bne _021456d0
bl func_ov61_0214a214
ldrb r0, [r0, #0x16]
cmp r0, #0
beq _021456d0
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
ldrb r1, [r6, #0x14]
ldrb r0, [r0, #0x16]
cmp r1, r0
bne _021456d0
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
moveq r0, #0x10
streq r0, [sp, #0x14]
moveq r4, #1
_021456d0:
cmp r5, #0xff
beq _021462f0
add r1, sp, #0x14
str r1, [sp]
mov r0, r5
mov r1, r8
mov r2, r7
mov r3, r10
str r4, [sp, #4]
bl func_ov61_0214501c
bl func_ov61_02146810
cmp r0, #0
beq _021462f0
add sp, sp, #0x118
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02145710:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #4
bne _021462f0
bl func_ov61_0214a214
ldr r0, [r0, #0x204]
cmp r8, r0
bne _021462f0
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x208]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a7]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1c8]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1bc]
bl func_ov61_0214a214
ldr r1, [r6]
add r1, r6, r1, lsl #2
ldr r1, [r1, #4]
str r1, [r0, #0x24]
bl func_ov61_0214a214
ldr r1, [r6]
add r1, r6, r1, lsl #2
ldr r1, [r1, #8]
strh r1, [r0, #0xa4]
bl func_ov61_0214a214
ldr r1, [r6]
add r1, r6, r1, lsl #2
ldr r1, [r1, #4]
str r1, [r0, #0x1b8]
bl func_ov61_0214a214
ldr r1, [r6]
add r0, r0, #0x100
add r1, r6, r1, lsl #2
ldr r1, [r1, #8]
strh r1, [r0, #0xb4]
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
bne _02145838
ldr r1, [r6]
add r0, r6, #4
bl func_ov61_02147800
cmp r0, #0
beq _021457f8
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #0
beq _02145838
mov r0, r8
mov r1, r6
bl func_ov61_021467c0
b _02145838
_021457f8:
mov r0, r8
bl func_ov61_02146d8c
bl func_ov61_02146810
cmp r0, #0
addne sp, sp, #0x118
mov r0, #0
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
mov r1, r0
mov r2, r8
bl func_ov61_021469ec
bl func_ov61_02146810
cmp r0, #0
beq _021462f0
add sp, sp, #0x118
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02145838:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
bne _021458bc
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #0
beq _0214587c
mov r0, r8
mov r1, r6
bl func_ov61_021467c0
bl func_ov61_021470bc
bl func_ov61_02146810
cmp r0, #0
addne sp, sp, #0x118
movne r0, #0
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_0214587c:
mov r0, #6
bl func_ov61_0214a224
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
mov r1, #0
bl func_ov61_02162e74
mov r2, r0
mov r0, #0
mov r1, r0
bl func_ov61_02144c74
bl func_ov61_02149148
cmp r0, #0
beq _021462f0
add sp, sp, #0x118
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_021458bc:
mov r0, #5
bl func_ov61_0214a224
mov r0, r8
bl func_ov61_02144a10
bl func_ov61_02148fcc
cmp r0, #0
beq _021462f0
add sp, sp, #0x118
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_021458e4:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #4
bne _021462f0
bl func_ov61_0214a214
ldr r0, [r0, #0x204]
cmp r8, r0
bne _021462f0
cmp r5, #0
ble _02145930
ldr r0, [r6]
cmp r0, #0x10
bne _02145930
mov r0, #0xd
mov r1, #0
bl func_ov61_02143c14
add sp, sp, #0x118
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02145930:
bl func_ov61_0214a214
ldr r0, [r0, #0x204]
bl func_ov61_02146cb4
add sp, sp, #0x118
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02145944:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #4
bne _021462f0
bl func_ov61_0214a214
ldr r0, [r0, #0x204]
cmp r8, r0
bne _021462f0
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0x1cc]
str r1, [r4, #0x1d0]
bl func_ov61_0214a214
ldr r0, [r0, #0x208]
cmp r0, #0
beq _02145998
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a7]
cmp r0, #0x10
blo _021459a8
_02145998:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
bne _021459ec
_021459a8:
bl func_ov61_0214a214
mov r1, #1
str r1, [r0, #0x1bc]
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0x1c0]
str r1, [r4, #0x1c4]
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
beq _021462f0
bl func_ov61_0214a214
ldrb r1, [r0, #0x1a7]
add r1, r1, #1
strb r1, [r0, #0x1a7]
b _021462f0
_021459ec:
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x208]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a7]
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
bne _02145a40
mov r0, #3
bl func_ov61_0214a224
bl func_ov61_0214a214
mov r1, #1
str r1, [r0, #0xe8]
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0xec]
str r1, [r4, #0xf0]
b _021462f0
_02145a40:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
bne _021462f0
mov r1, #0
mov r2, r1
mov r0, #1
bl func_ov61_021469ec
b _021462f0
_02145a64:
bl func_ov61_0214a214
ldrb r0, [r0, #0x17]
cmp r0, #0
beq _021462f0
bl func_ov61_0214a214
ldr r0, [r0, #0x20]
cmp r8, r0
bne _021462f0
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
bne _02145ac4
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
bne _02145ac4
bl func_ov61_0214a214
ldr r0, [r0, #0xf8]
cmp r8, r0
bne _02145ac4
bl func_ov61_0214a214
ldr r0, [r0, #4]
ldr r0, [r0]
bl func_ov61_021744b8
_02145ac4:
mov r0, r8
bl func_ov61_02146de0
cmp r0, #0
bne _021462f0
add sp, sp, #0x118
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02145ae0:
ldr r0, [r6, #4]
ldr r5, [r6]
mov r0, r0, lsl #0x10
mov r4, r0, lsr #0x10
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #1
bne _02145b0c
mov r0, #6
bl func_ov61_0214a224
b _02145b3c
_02145b0c:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #6
beq _02145b2c
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xb
bne _021462f0
_02145b2c:
bl func_ov61_0214a214
ldr r0, [r0, #0x20]
cmp r8, r0
bne _021462f0
_02145b3c:
bl func_ov61_0214a214
mov r1, #0xff
strb r1, [r0, #0x3cc]
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
add r0, r0, #1
add r0, r6, r0, lsl #2
ldr r0, [r0, #0xf4]
cmp r8, r0
beq _02145b88
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
add r0, r0, #1
add r0, r6, r0, lsl #2
str r8, [r0, #0xf4]
_02145b88:
mov r1, r4, asr #0x8
mov r0, r4, lsl #0x8
and r1, r1, #0xff
and r0, r0, #0xff00
orr r0, r1, r0
str r5, [sp, #0xc]
strh r0, [sp, #0xa]
bl func_ov61_0214a214
mov r1, #1
strb r1, [r0, #0x194]
bl func_ov61_0214a214
ldr r0, [r0, #4]
ldr r0, [r0]
bl func_ov61_02174514
mov r4, r0
bl func_ov61_0214a214
add r3, r0, #0x194
mov r1, r4
mov r0, #0
add r2, sp, #8
bl func_ov61_02149dbc
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x18c]
str r1, [r0, #0x190]
b _021462f0
_02145bf0:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #1
bne _021462f0
bl func_ov61_0214a214
ldr r0, [r0, #0xf4]
cmp r8, r0
bne _021462f0
ldr r0, [r6]
str r0, [sp, #0x10]
ldr r0, [r6, #4]
and r4, r0, #0xff
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
bne _02145c84
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a6]
cmp r0, #0
bne _02145c84
ldr r0, [sp, #0x10]
bl func_ov61_02148880
str r0, [sp, #0x14]
add r0, sp, #0x14
str r0, [sp]
mov r5, #1
mov r1, r8
mov r2, r7
mov r3, r10
mov r0, #0x20
str r5, [sp, #4]
bl func_ov61_0214501c
bl func_ov61_02146810
cmp r0, #0
addne sp, sp, #0x118
movne r0, #0
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02145c84:
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x14]
ldr r1, [sp, #0x10]
add r0, r0, #1
add r0, r5, r0, lsl #2
str r1, [r0, #0xf4]
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x14]
add r0, r0, #1
add r0, r5, r0
strb r4, [r0, #0x2d0]
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
bl func_ov61_02177f3c
bl func_ov61_0214a214
ldr r0, [r0, #0x46c]
cmp r0, #0
beq _021462f0
bl func_ov61_0214a214
mov r5, r0
ldr r0, [sp, #0x10]
bl func_ov61_021411b0
mov r4, r0
bl func_ov61_0214a214
ldr r1, [r0, #0x470]
ldr r2, [r5, #0x46c]
mov r0, r4
blx r2
b _021462f0
_02145d08:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #1
bne _021462f0
bl func_ov61_0214a214
ldr r0, [r0, #0xf4]
cmp r8, r0
bne _021462f0
ldr r0, [r6]
str r0, [sp, #0x10]
cmp r0, #0
bne _02145d70
ldr r5, [r6, #4]
ldr r4, [r6, #8]
bl func_ov61_0214a214
add r0, r5, r0
strb r4, [r0, #0x2d0]
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldr r2, [r0, #0x200]
add r1, r4, r5, lsl #2
mov r0, #3
str r2, [r1, #0xf4]
bl func_ov61_021471a0
b _021462f0
_02145d70:
ldr r0, [r6, #8]
ldr r5, [r6, #4]
and r4, r0, #0xff
bl func_ov61_0214a214
add r0, r0, r5, lsl #2
ldr r1, [sp, #0x10]
ldr r0, [r0, #0xf4]
cmp r1, r0
bne _02145df0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
sub r0, r0, #1
cmp r5, r0
bne _02145df0
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
add r1, sp, #0x10
str r1, [sp]
mov r1, #1
str r1, [sp, #4]
ldrh r3, [r0, #0xa4]
ldr r2, [r4, #0x24]
mov r1, r8
mov r0, #9
bl func_ov61_0214501c
bl func_ov61_02146810
cmp r0, #0
beq _021462f0
add sp, sp, #0x118
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02145df0:
bl func_ov61_0214a214
ldr r1, [sp, #0x10]
add r0, r0, r5, lsl #2
str r1, [r0, #0xf4]
bl func_ov61_0214a214
add r0, r5, r0
strb r4, [r0, #0x2d0]
bl func_ov61_0214a214
ldr r1, [r6, #0xc]
add r0, r0, r5, lsl #2
str r1, [r0, #0x24]
bl func_ov61_0214a214
ldr r1, [r6, #0x10]
add r0, r0, r5, lsl #1
strh r1, [r0, #0xa4]
bl func_ov61_0214a214
ldr r1, [r6, #0xc]
str r1, [r0, #0x1b8]
bl func_ov61_0214a214
add r1, r0, #0x100
ldr r2, [r6, #0x10]
mov r0, #5
strh r2, [r1, #0xb4]
bl func_ov61_0214a224
ldr r0, [sp, #0x10]
bl func_ov61_02144a10
bl func_ov61_02148fcc
cmp r0, #0
addne sp, sp, #0x118
movne r0, #0
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1c8]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1bc]
b _021462f0
_02145e88:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xd
bne _021462f0
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a4]
ldr r1, [r6]
add r0, r0, #1
add r0, r4, r0, lsl #2
ldr r0, [r0, #0xf4]
cmp r1, r0
bne _021462f0
bl func_ov61_0214a214
ldrb r1, [r0, #0x1a4]
add r1, r1, #1
strb r1, [r0, #0x1a4]
mov r0, #0
bl func_ov61_021471a0
b _021462f0
_02145edc:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #1
beq _02145efc
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0x12
bne _021462f0
_02145efc:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
beq _02145f20
ldr r1, [r6]
add r0, r6, #4
bl func_ov61_02147800
cmp r0, #0
beq _02145f3c
_02145f20:
bl func_ov61_0214a214
ldr r1, [r6, #4]
str r1, [r0, #0x208]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a7]
b _02145f48
_02145f3c:
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x208]
_02145f48:
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #0
beq _02145f6c
bl func_ov61_0214a214
ldr r0, [r0, #4]
ldr r0, [r0]
bl func_ov61_021744b8
b _021462f0
_02145f6c:
bl func_ov61_02147cd8
cmp r0, #0
beq _021462f0
add sp, sp, #0x118
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02145f84:
bl func_ov61_0214a214
ldr r0, [r0, #0xf4]
cmp r8, r0
bne _021462f0
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
beq _02145fb4
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
bne _02145fd0
_02145fb4:
mov r0, r8
bl func_ov61_02146ffc
cmp r0, #0
bne _021462f0
add sp, sp, #0x118
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02145fd0:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
bne _021462f0
bl func_ov61_0214a214
str r8, [r0, #0x20c]
bl func_ov61_02147e08
mov r0, #0
bl func_ov61_02147ba4
b _021462f0
_02145ff8:
ldr r2, [r6]
mov r0, r8
mov r1, r9
bl func_ov61_02148354
cmp r0, #0
bne _021462f0
add sp, sp, #0x118
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_0214601c:
bl func_ov61_0214a214
ldr r0, [r0, #0xf4]
cmp r8, r0
addne sp, sp, #0x118
movne r0, #1
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
cmp r5, #0
mov r7, #0
ble _021462f0
mov r4, r7
_02146044:
ldr r0, [r6, r7, lsl #2]
mov r1, r4
bl func_ov61_021489cc
cmp r0, #0xff
beq _0214605c
bl func_ov61_0213f35c
_0214605c:
add r7, r7, #1
cmp r7, r5
blt _02146044
b _021462f0
_0214606c:
ldr r0, _021462fc ; =data_ov61_0217ebe8
ldr r4, [r0]
cmp r4, #0
ldrneb r0, [r4]
cmpne r0, #0
beq _021460c8
bl func_0200e8f8
ldr r3, [r4, #0x10]
ldr r2, [r4, #0x14]
subs r3, r0, r3
sbc r0, r1, r2
mov r1, r0, lsl #0x6
ldr r2, _02146300 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
ldr r2, [r4, #4]
cmp r1, #0
cmpeq r0, r2
movhs r0, #1
strhs r0, [sp, #0x14]
bhs _021460d0
_021460c8:
mov r0, #0
str r0, [sp, #0x14]
_021460d0:
add r0, sp, #0x14
str r0, [sp]
mov r4, #1
mov r1, r8
mov r2, r7
mov r3, r10
mov r0, #0x12
str r4, [sp, #4]
bl func_ov61_0214501c
bl func_ov61_02146810
cmp r0, #0
beq _021462f0
add sp, sp, #0x118
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_0214610c:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0x13
bne _021462f0
mov r0, r8
mov r1, #0
bl func_ov61_021489cc
cmp r0, #0xff
beq _021462f0
ldr r1, _021462fc ; =data_ov61_0217ebe8
mov r4, #1
ldr r3, [r1]
ldr r2, [r3, #8]
orr r2, r2, r4, lsl r0
str r2, [r3, #8]
ldr r2, [r6]
cmp r2, #0
beq _021462f0
ldr r2, [r1]
ldr r1, [r2, #0xc]
orr r0, r1, r4, lsl r0
str r0, [r2, #0xc]
b _021462f0
_02146168:
mov r0, #0xc
mov r1, #0
bl func_ov61_02143c14
add sp, sp, #0x118
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02146180:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
bne _021462f0
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a6]
cmp r0, #0
bne _021462f0
mov r4, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
blt _021462f0
_021461b4:
bl func_ov61_0214a214
add r0, r0, r4, lsl #2
ldr r0, [r0, #0xf4]
cmp r8, r0
bne _02146264
ldr r0, [r6]
cmp r0, #0
bne _0214623c
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xb
beq _021461f4
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xc
bne _0214620c
_021461f4:
bl func_ov61_02147ad0
bl func_ov61_02146810
cmp r0, #0
addne sp, sp, #0x118
movne r0, #0
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_0214620c:
bl func_ov61_0214a214
ldr r0, [r0, #0x19c]
cmp r0, #0
beq _02146234
bl func_ov61_0214a214
ldr r0, [r0, #0x19c]
bl func_ov61_0217741c
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x19c]
_02146234:
bl func_ov61_02147ca4
b _021462f0
_0214623c:
bl func_ov61_0214a214
mov r4, r0
mov r0, r8
mov r1, #0
bl func_ov61_021489cc
ldr r2, [r4, #0x1dc]
mov r1, #1
orr r0, r2, r1, lsl r0
str r0, [r4, #0x1dc]
b _021462f0
_02146264:
add r4, r4, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r4, r0
ble _021461b4
b _021462f0
_0214627c:
mov r4, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
blt _021462f0
_02146290:
bl func_ov61_0214a214
add r0, r0, r4, lsl #2
ldr r0, [r0, #0xf4]
cmp r8, r0
bne _021462dc
mov r4, #0
str r4, [sp]
mov r1, r8
mov r2, r7
mov r3, r10
mov r0, #0x41
str r4, [sp, #4]
bl func_ov61_0214501c
bl func_ov61_02146810
cmp r0, #0
beq _021462f0
add sp, sp, #0x118
mov r0, r4
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_021462dc:
add r4, r4, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r4, r0
ble _02146290
_021462f0:
mov r0, #1
add sp, sp, #0x118
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
.align 2, 0
arm_func_end func_ov61_02145420
_021462fc: .word data_ov61_0217ebe8
_02146300: .word 0x000082ea
.global func_ov61_02146304
arm_func_start func_ov61_02146304
func_ov61_02146304: ; 0x02146304
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r7, r0
mov r6, r1
mov r5, r2
mov r8, r3
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
beq _0214636c
cmp r0, #1
beq _0214633c
cmp r0, #2
beq _02146548
b _021465f4
_0214633c:
bl func_ov61_0214a214
ldr r0, [r0]
mov r1, r7
bl func_ov61_02167830
cmp r0, #0
moveq r4, #0xff
beq _021465f4
mov r0, r7
bl func_ov61_02148880
cmp r0, #0
moveq r4, #3
beq _021465f4
_0214636c:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r8, r0
bne _021463d4
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a9]
cmp r0, #0
bne _021463d4
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r1, [r4, #0x14]
ldrb r0, [r0, #0x16]
cmp r1, r0
beq _021463d4
bl func_ov61_0214a214
ldrb r0, [r0, #0x17]
cmp r0, #0
beq _02146438
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldr r1, [r4, #0x20]
ldr r0, [r0, #0x200]
cmp r1, r0
bne _02146438
_021463d4:
mov r4, #3
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
bne _021465f4
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
ldr r0, [r0, #0xb4]
cmp r0, #0
bne _021465f4
bl func_ov61_0214a214
ldrb r0, [r0, #0x17]
cmp r0, #0
beq _021465f4
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
ldr r1, [r5, #0x20]
ldr r0, [r0, #0x200]
cmp r1, r0
bne _021465f4
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
bl func_ov61_02177f3c
b _021465f4
_02146438:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #3
beq _02146458
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #4
bne _02146484
_02146458:
bl func_ov61_0214a214
ldr r0, [r0, #0x1c]
cmp r0, #0
bne _02146478
bl func_ov61_0214a214
ldrh r0, [r0, #0x1a]
cmp r0, #0
beq _02146484
_02146478:
cmp r6, #0
cmpeq r5, #0
bne _0214648c
_02146484:
mov r4, #4
b _021465f4
_0214648c:
bl func_ov61_0214a214
ldr r0, [r0, #0x204]
cmp r0, #0
beq _02146540
bl func_ov61_0214a214
ldr r0, [r0, #0x204]
cmp r7, r0
bne _021464e8
ldr r0, [sp, #0x18]
cmp r0, #0
bne _021464d8
bl func_ov61_0214a214
ldr r0, [r0, #0x200]
cmp r0, r7
bge _021464e0
bl func_ov61_0214a214
ldr r0, [r0, #0x208]
cmp r7, r0
beq _021464e0
_021464d8:
mov r4, #2
b _021465f4
_021464e0:
mov r4, #0xff
b _021465f4
_021464e8:
ldr r0, [sp, #0x18]
cmp r0, #0
bne _02146514
bl func_ov61_0214a214
ldr r0, [r0, #0x200]
cmp r0, r7
bge _02146538
bl func_ov61_0214a214
ldr r0, [r0, #0x208]
cmp r0, #0
bne _02146538
_02146514:
bl func_ov61_0214a214
ldr r0, [r0, #0x204]
bl func_ov61_02146d8c
bl func_ov61_02146810
cmp r0, #0
movne r0, #0xff
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
mov r4, #2
b _021465f4
_02146538:
mov r4, #3
b _021465f4
_02146540:
mov r4, #2
b _021465f4
_02146548:
bl func_ov61_0214a214
ldr r0, [r0]
mov r1, r7
bl func_ov61_02167830
cmp r0, #0
moveq r4, #0xff
beq _021465f4
cmp r8, #3
bne _02146588
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r1, [r4, #0x14]
ldrb r0, [r0, #0x16]
cmp r1, r0
bne _02146590
_02146588:
mov r4, #3
b _021465f4
_02146590:
ldr r0, _021465fc ; =data_ov61_0217ebe8
ldrb r1, [r0, #8]
cmp r1, #1
ldreqb r0, [r0, #9]
cmpeq r0, #1
moveq r4, #0x13
beq _021465f4
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xa
bne _021465e8
bl func_ov61_0214a214
ldr r0, [r0, #0x1c]
cmp r0, #0
bne _021465dc
bl func_ov61_0214a214
ldrh r0, [r0, #0x1a]
cmp r0, #0
beq _021465e8
_021465dc:
cmp r6, #0
cmpeq r5, #0
bne _021465f0
_021465e8:
mov r4, #4
b _021465f4
_021465f0:
mov r4, #2
_021465f4:
mov r0, r4
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02146304
_021465fc: .word data_ov61_0217ebe8
.global func_ov61_02146600
arm_func_start func_ov61_02146600
func_ov61_02146600: ; 0x02146600
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #0x10
mov r6, r0
mov r5, r1
mov r4, r2
bl func_ov61_0214a214
ldrb r0, [r0, #0x17]
cmp r0, #0
beq _0214663c
bl func_ov61_0214a214
ldr r0, [r0, #0x20]
cmp r6, r0
addeq sp, sp, #0x10
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_0214663c:
bl func_ov61_0214a214
mov r1, #1
strb r1, [r0, #0x17]
bl func_ov61_0214a214
str r6, [r0, #0x20]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1bc]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1c8]
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
bl func_ov61_02177f3c
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x204]
bl func_ov61_0214a214
mov r7, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x14]
add r0, r0, #1
add r0, r7, r0, lsl #2
str r6, [r0, #0xf4]
bl func_ov61_0214a214
mov r7, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x14]
add r0, r0, #1
add r0, r7, r0, lsl #2
str r5, [r0, #0x24]
bl func_ov61_0214a214
mov r7, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x14]
add r0, r0, #1
add r0, r7, r0, lsl #1
strh r4, [r0, #0xa4]
bl func_ov61_0214a214
str r5, [r0, #0x1b8]
bl func_ov61_0214a214
add r0, r0, #0x100
strh r4, [r0, #0xb4]
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_02148810
ldrb r1, [r4, #0x14]
add r1, r1, #1
add r1, r5, r1
strb r0, [r1, #0x2d0]
str r6, [sp, #8]
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x14]
mov r7, #1
add r0, r0, #1
add r0, r4, r0
ldrb r0, [r0, #0x2d0]
str r0, [sp, #0xc]
bl func_ov61_0214a214
ldrb r0, [r0, #0x14]
cmp r0, #1
blt _021467ac
add r6, sp, #8
mov r5, #2
mov r4, #7
_02146750:
bl func_ov61_0214a214
mov r9, r0
bl func_ov61_0214a214
mov r8, r0
bl func_ov61_0214a214
str r6, [sp]
str r5, [sp, #4]
add r0, r0, r7, lsl #1
add r1, r9, r7, lsl #2
add r2, r8, r7, lsl #2
ldrh r3, [r0, #0xa4]
ldr r1, [r1, #0xf4]
ldr r2, [r2, #0x24]
mov r0, r4
bl func_ov61_0214501c
cmp r0, #0
addne sp, sp, #0x10
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
add r7, r7, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0x14]
cmp r7, r0
ble _02146750
_021467ac:
mov r0, #1
bl func_ov61_02148abc
mov r0, #0
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
arm_func_end func_ov61_02146600
.global func_ov61_021467c0
arm_func_start func_ov61_021467c0
func_ov61_021467c0: ; 0x021467c0
stmdb sp!, {r4, r5, r6, lr}
mov r5, r1
ldr r1, [r5]
mov r6, r0
add r4, r1, #2
cmp r4, #2
bls _021467f8
bl func_ov61_0214a214
mov r1, r0
sub r2, r4, #2
add r0, r5, #4
add r1, r1, #0x350
mov r2, r2, lsl #0x2
bl func_02007908
_021467f8:
bl func_ov61_0214a214
sub r1, r4, #1
str r1, [r0, #0x348]
bl func_ov61_0214a214
str r6, [r0, #0x34c]
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_021467c0
.global func_ov61_02146810
arm_func_start func_ov61_02146810
func_ov61_02146810: ; 0x02146810
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
mov r0, r4
bne _02146834
bl func_ov61_02148fcc
ldmia sp!, {r4, pc}
_02146834:
bl func_ov61_02148f58
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02146810
.global func_ov61_0214683c
arm_func_start func_ov61_0214683c
func_ov61_0214683c: ; 0x0214683c
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0x14
mov r5, r0
cmp r1, #0
bne _02146870
bl func_ov61_0214a214
ldr r0, [r0, #0x1c]
cmp r0, #0
bne _021468a4
bl func_ov61_0214a214
ldrh r0, [r0, #0x1a]
cmp r0, #0
bne _021468a4
_02146870:
bl func_ov61_0214a214
mov r1, #1
str r1, [r0, #0x1bc]
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0x1c0]
str r1, [r4, #0x1c4]
bl func_ov61_0214a214
str r5, [r0, #0xf4]
add sp, sp, #0x14
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, pc}
_021468a4:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
bne _02146928
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
mov r1, #0
bl func_ov61_02162e74
mov r6, r0
bl func_ov61_0214a214
mov r4, r0
ldr r1, _021469e4 ; =data_ov61_0217a758
mov r0, r6
mov r2, #0
bl func_ov61_02162270
str r0, [r4, #0xf4]
bl func_ov61_0214a214
mov r4, r0
mov r0, r6
bl func_ov61_02162334
str r0, [r4, #0x24]
bl func_ov61_0214a214
mov r4, r0
mov r0, r6
bl func_ov61_0216233c
strh r0, [r4, #0xa4]
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
ldr r0, [r0, #0xf4]
mov r4, #1
str r0, [r6, #0x204]
b _02146964
_02146928:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
bne _02146940
bl func_ov61_0214a214
str r5, [r0, #0xf4]
_02146940:
bl func_ov61_0214a214
str r5, [r0, #0x204]
bl func_ov61_0214a214
ldr r0, [r0, #0x1c]
str r0, [sp, #0xc]
bl func_ov61_0214a214
ldrh r0, [r0, #0x1a]
mov r4, #3
str r0, [sp, #0x10]
_02146964:
bl func_ov61_0214a214
ldr r1, _021469e8 ; =0x00001770
str r1, [r0, #0x1c8]
bl func_ov61_0214a214
mov r6, r0
bl func_0200e8f8
str r0, [r6, #0x1cc]
str r1, [r6, #0x1d0]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1bc]
bl func_ov61_0214a214
ldr r0, [r0, #0x208]
cmp r0, #0
movne r7, #0xb
moveq r7, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
str r0, [sp, #8]
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
add r2, sp, #8
stmia sp, {r2, r4}
mov r3, r0
ldrh r3, [r3, #0xa4]
ldr r2, [r6, #0x24]
mov r1, r5
mov r0, r7
bl func_ov61_0214501c
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0214683c
_021469e4: .word data_ov61_0217a758
_021469e8: .word 0x00001770
.global func_ov61_021469ec
arm_func_start func_ov61_021469ec
func_ov61_021469ec: ; 0x021469ec
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x228
movs r4, r1
mov r8, r0
mov r11, r2
beq _02146a10
bl func_ov61_0214a214
ldrb r6, [r0, #0x1a5]
b _02146a40
_02146a10:
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
ldr r0, [r0, #0x344]
ldrb r1, [r5, #0x1a5]
sub r0, r0, #1
cmp r1, r0
movge r6, #0
bge _02146a40
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a5]
add r6, r0, #1
_02146a40:
cmp r4, #0
mov r5, #0
moveq r7, #1
movne r7, r5
_02146a50:
cmp r7, #0
cmpeq r5, #0
beq _02146a94
bl func_ov61_0214a214
ldrb r1, [r0, #0x1a5]
add r1, r1, #1
strb r1, [r0, #0x1a5]
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r1, [r4, #0x1a5]
ldr r0, [r0, #0x344]
cmp r1, r0
blt _02146a94
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a5]
_02146a94:
cmp r5, #0
beq _02146ae4
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a5]
cmp r6, r0
bne _02146ae4
bl func_ov61_0214a214
ldr r1, _02146ca4 ; =0x00000bb8
str r1, [r0, #0x1c8]
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0x1cc]
str r1, [r4, #0x1d0]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1bc]
add sp, sp, #0x228
mov r0, r1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02146ae4:
mov r5, #1
bl func_ov61_02140308
mov r10, r0
bl func_ov61_0214a214
mov r9, r0
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
mov r1, r0
ldrb r2, [r1, #0x1a5]
ldr r3, [r9, #0x2fc]
mov r1, #0xc
add r2, r4, r2
ldrb r2, [r2, #0x304]
mov r0, r10
mla r1, r2, r1, r3
blx func_ov00_02077948
movs r4, r0
mvnne r0, #0
cmpne r4, r0
beq _02146a50
bl func_ov61_0214a214
mov r10, r0
bl func_ov61_0214a214
mov r9, r0
bl func_ov61_0214a214
ldrb r1, [r0, #0x1a5]
ldr r2, [r10, #0x2fc]
mov r0, #0xc
add r1, r9, r1
ldrb r1, [r1, #0x304]
mla r0, r1, r0, r2
blx func_ov00_020777e4
cmp r0, #0
beq _02146a50
mov r9, r5
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
blt _02146bac
_02146b84:
bl func_ov61_0214a214
add r0, r0, r9, lsl #2
ldr r0, [r0, #0xf4]
cmp r4, r0
beq _02146bac
add r9, r9, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r9, r0
ble _02146b84
_02146bac:
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r9, r0
ble _02146a50
bl func_ov61_0214a214
ldr r0, [r0]
add r2, sp, #4
mov r1, r4
bl func_ov61_021677c0
mov r9, r0
bl func_ov61_0214a214
ldr r0, [r0]
ldr r1, [sp, #4]
add r2, sp, #0x18
bl func_ov61_02167680
orrs r0, r9, r0
ldreq r0, [sp, #0x1c]
cmpeq r0, #4
bne _02146a50
ldr r0, _02146ca8 ; =data_ov61_0217a71c
add r1, sp, #0xc
add r2, sp, #0x20
mov r3, #0x2f
bl func_ov61_0213e5f8
mov r10, r0
ldr r0, _02146cac ; =data_ov61_0217a70c
add r1, sp, #8
add r2, sp, #0x20
mov r3, #0x2f
bl func_ov61_0213e5f8
mov r9, r0
ldr r0, _02146cb0 ; =data_ov61_0217a718
add r1, sp, #0
add r2, sp, #0x20
mov r3, #0x2f
bl func_ov61_0213e5f8
cmp r10, #0
cmpgt r9, #0
cmpgt r0, #0
ble _02146a50
add r0, sp, #0xc
mov r1, #0
mov r2, #0xa
bl func_02048ecc
cmp r0, #3
bne _02146a50
add r0, sp, #8
mov r1, #0
mov r2, #0xa
bl func_02048ecc
mov r9, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x16]
cmp r9, r0
bne _02146a50
cmp r4, r11
moveq r8, #1
mov r0, r4
mov r1, r8
bl func_ov61_0214683c
add sp, sp, #0x228
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_021469ec
_02146ca4: .word 0x00000bb8
_02146ca8: .word data_ov61_0217a71c
_02146cac: .word data_ov61_0217a70c
_02146cb0: .word data_ov61_0217a718
.global func_ov61_02146cb4
arm_func_start func_ov61_02146cb4
func_ov61_02146cb4: ; 0x02146cb4
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x208]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x204]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a7]
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0x1cc]
str r1, [r4, #0x1d0]
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
bne _02146d28
mov r0, #3
bl func_ov61_0214a224
mov r0, #0
bl func_ov61_02144a10
bl func_ov61_02148fcc
cmp r0, #0
beq _02146d80
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_02146d28:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
bne _02146d5c
mov r0, #0
mov r1, r0
mov r2, r5
bl func_ov61_021469ec
bl func_ov61_02146810
cmp r0, #0
beq _02146d80
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_02146d5c:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
bne _02146d80
ldr r1, _02146d88 ; =0xfffec5e6
mov r0, #6
bl func_ov61_02143c14
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_02146d80:
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02146cb4
_02146d88: .word 0xfffec5e6
.global func_ov61_02146d8c
arm_func_start func_ov61_02146d8c
func_ov61_02146d8c: ; 0x02146d8c
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #8
mov r5, r0
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
mov r1, #0
str r1, [sp]
str r1, [sp, #4]
ldrh r3, [r0, #0xa4]
ldr r2, [r4, #0x24]
mov r1, r5
mov r0, #5
bl func_ov61_0214501c
mov r4, r0
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x204]
mov r0, r4
add sp, sp, #8
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02146d8c
.global func_ov61_02146de0
arm_func_start func_ov61_02146de0
func_ov61_02146de0: ; 0x02146de0
stmdb sp!, {r4, r5, r6, lr}
mov r5, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x17]
cmp r0, #0
beq _02146e18
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldr r1, [r4, #0x20]
ldr r0, [r0, #0x200]
cmp r1, r0
moveq r4, #0
beq _02146e1c
_02146e18:
mov r4, #1
_02146e1c:
cmp r4, #0
beq _02146e48
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x17]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x20]
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
bl func_ov61_02177f3c
_02146e48:
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #0x1f
bhs _02146e78
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
mov r1, #0
add r0, r0, #1
add r0, r6, r0, lsl #2
str r1, [r0, #0xf4]
_02146e78:
bl func_ov61_0214a214
mov r1, #0xff
strb r1, [r0, #0x3cc]
bl func_ov61_0214a214
ldr r0, [r0, #0x19c]
cmp r0, #0
beq _02146eac
bl func_ov61_0214a214
ldr r0, [r0, #0x19c]
bl func_ov61_0217741c
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x19c]
_02146eac:
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
strb r0, [r6, #0x14]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x204]
cmp r4, #0
bne _02146eec
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
beq _02146ff4
bl func_ov61_02147ca4
b _02146ff4
_02146eec:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
bne _02146f28
mov r0, #3
bl func_ov61_0214a224
bl func_ov61_0214a214
mov r1, #2
str r1, [r0, #0xe8]
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0xec]
str r1, [r4, #0xf0]
b _02146ff4
_02146f28:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
bne _02146f54
mov r0, #4
bl func_ov61_0214a224
mov r1, #0
mov r2, r1
mov r0, #1
bl func_ov61_021469ec
b _02146ff4
_02146f54:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
bne _02146ff4
mov r0, #0xe
bl func_ov61_0214a224
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1d8]
bl func_ov61_0214a214
add r1, r0, #0x100
mov r2, #0
mov r0, r5
strh r2, [r1, #0xb2]
bl func_ov61_02147d98
mov r5, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
blt _02146fdc
mov r4, #0xd
_02146fa8:
bl func_ov61_0214a214
add r0, r0, r5, lsl #2
ldr r0, [r0, #0xf4]
mov r1, r4
bl func_ov61_021482d4
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
add r5, r5, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r5, r0
ble _02146fa8
_02146fdc:
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #0
bne _02146ff4
mov r0, #2
bl func_ov61_02147ba4
_02146ff4:
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02146de0
.global func_ov61_02146ffc
arm_func_start func_ov61_02146ffc
func_ov61_02146ffc: ; 0x02146ffc
stmdb sp!, {r3, r4, r5, lr}
mov r4, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
bne _0214703c
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #0
beq _02147028
bl func_ov61_02147e08
_02147028:
ldr r1, _021470b8 ; =0xfffec5d2
mov r0, #6
bl func_ov61_02143c14
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_0214703c:
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
strb r0, [r5, #0x14]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x208]
bl func_ov61_0214a214
ldr r0, [r0, #0x19c]
cmp r0, #0
beq _02147084
bl func_ov61_0214a214
ldr r0, [r0, #0x19c]
bl func_ov61_0217741c
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x19c]
_02147084:
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #0
beq _0214709c
bl func_ov61_02147ca4
b _021470b0
_0214709c:
mov r0, #4
bl func_ov61_0214a224
mov r0, #0
bl func_ov61_02146cb4
mov r4, r0
_021470b0:
mov r0, r4
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02146ffc
_021470b8: .word 0xfffec5d2
.global func_ov61_021470bc
arm_func_start func_ov61_021470bc
func_ov61_021470bc: ; 0x021470bc
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #8
mov r4, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
blt _02147154
mov r5, #0xa
_021470dc:
bl func_ov61_0214a214
mov r9, r0
bl func_ov61_0214a214
mov r8, r0
bl func_ov61_0214a214
mov r7, r0
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
add r1, r6, #0x348
str r1, [sp]
ldr ip, [r0, #0x348]
add r3, r7, r4, lsl #1
add ip, ip, #1
str ip, [sp, #4]
add r1, r9, r4, lsl #2
add r2, r8, r4, lsl #2
ldrh r3, [r3, #0xa4]
ldr r1, [r1, #0xf4]
ldr r2, [r2, #0x24]
mov r0, r5
bl func_ov61_0214501c
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
add r4, r4, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r4, r0
ble _021470dc
_02147154:
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x17]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x20]
bl func_ov61_0214a214
mov r1, #1
strb r1, [r0, #0x1a8]
bl func_ov61_0214a214
ldr r0, [r0, #4]
ldr r0, [r0]
bl func_ov61_021744b8
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a8]
mov r0, r1
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
arm_func_end func_ov61_021470bc
.global func_ov61_021471a0
arm_func_start func_ov61_021471a0
func_ov61_021471a0: ; 0x021471a0
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, lr}
sub sp, sp, #0x1c
cmp r0, #4
mov r4, #3
mov r5, #0
addls pc, pc, r0, lsl #2
b _021477c4
_021471bc: ; jump table
b _021471d0 ; case 0
b _02147570 ; case 1
b _021475b4 ; case 2
b _02147678 ; case 3
b _02147698 ; case 4
_021471d0:
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
ldrb r1, [r6, #0x1a4]
sub r0, r0, #1
cmp r1, r0
bge _02147290
mov r0, #0xd
bl func_ov61_0214a224
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a4]
add r0, r0, #1
add r0, r4, r0, lsl #2
ldr r0, [r0, #0xf4]
str r0, [sp, #8]
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a4]
add r0, r0, #1
str r0, [sp, #0xc]
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a4]
add r0, r0, #1
add r0, r4, r0
ldrb r0, [r0, #0x2d0]
str r0, [sp, #0x10]
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a4]
add r0, r0, #1
add r0, r4, r0, lsl #2
ldr r0, [r0, #0x24]
str r0, [sp, #0x14]
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a4]
mov r4, #5
add r0, r0, #1
add r0, r6, r0, lsl #1
ldrh r0, [r0, #0xa4]
str r0, [sp, #0x18]
b _021474dc
_02147290:
bl func_ov61_0214a214
mov r1, r5
strb r1, [r0, #0x17]
bl func_ov61_0214a214
mov r1, r5
str r1, [r0, #0x20]
bl func_ov61_0214a214
ldr r0, [r0, #0x10]
bl func_ov61_02177f3c
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
bne _021472d0
mov r0, r4
bl func_ov61_0214a224
b _021472f4
_021472d0:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
bne _021472ec
mov r0, #4
bl func_ov61_0214a224
b _021472f4
_021472ec:
mov r0, #0xa
bl func_ov61_0214a224
_021472f4:
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a4]
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
beq _0214732c
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
ldrb r1, [r6, #0xd]
ldrb r0, [r0, #0x16]
cmp r1, r0
bne _021473dc
_0214732c:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
bne _02147364
bl func_ov61_0214a214
mov r7, r0
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
add r0, r6, r0, lsl #2
ldr r0, [r0, #0xf4]
str r0, [r7, #0x20c]
b _02147384
_02147364:
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x20c]
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
ldr r0, [r0, #0x200]
str r0, [r6, #0xf4]
_02147384:
mov r0, #0x10
bl func_ov61_0214a224
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x1d4]
mov r7, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
blt _021474cc
mov r6, #2
_021473b0:
bl func_ov61_0214a214
add r0, r0, r7
ldrb r0, [r0, #0x2d0]
mov r1, r6
bl func_ov61_02147f74
add r7, r7, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r7, r0
ble _021473b0
b _021474cc
_021473dc:
mov r0, #0
str r0, [sp, #8]
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
str r0, [sp, #0xc]
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
add r0, r6, r0
ldrb r0, [r0, #0x2d0]
str r0, [sp, #0x10]
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
bne _02147440
bl func_ov61_0214a214
mov r1, #2
str r1, [r0, #0xe8]
bl func_ov61_0214a214
mov r6, r0
bl func_0200e8f8
str r0, [r6, #0xec]
str r1, [r6, #0xf0]
b _021474cc
_02147440:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
bne _021474cc
mov r1, #0
mov r2, r1
mov r0, #1
bl func_ov61_021469ec
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a6]
cmp r0, #0
bne _021474cc
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #2
blo _021474cc
bl func_ov61_0214a214
mov r8, r0
mov r0, #0
bl func_ov61_02148a30
mov r6, r0
bl func_ov61_0214a214
mov r7, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
mov r1, #1
ldr r2, [r8, #0x1dc]
add r0, r7, r0
ldrb r0, [r0, #0x2d0]
mvn r0, r1, lsl r0
and r0, r6, r0
cmp r2, r0
beq _021474cc
bl func_ov61_02147ca4
b _021477c4
_021474cc:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
movne r5, #1
_021474dc:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0x10
beq _021477c4
bl func_ov61_0214a214
mov r10, r0
bl func_ov61_0214a214
mov r9, r0
bl func_ov61_0214a214
mov r8, r0
bl func_ov61_0214a214
mov r7, r0
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
add r1, sp, #8
stmia sp, {r1, r4}
mov ip, r0
ldrb r3, [r9, #0xd]
ldrb r2, [r7, #0xd]
ldrb r1, [ip, #0xd]
add r4, r10, r3, lsl #2
add r2, r8, r2, lsl #2
add r3, r6, r1, lsl #1
ldrh r3, [r3, #0xa4]
ldr r1, [r4, #0xf4]
ldr r2, [r2, #0x24]
mov r0, #8
bl func_ov61_0214501c
bl func_ov61_02146810
cmp r0, #0
addne sp, sp, #0x1c
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, pc}
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x3cd]
b _021477c4
_02147570:
mov r0, #1
bl func_ov61_0214a224
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
bne _021475ac
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
add r0, r4, r0, lsl #2
ldr r0, [r0, #0xf4]
str r0, [r5, #0x20c]
_021475ac:
mov r5, #1
b _021477c4
_021475b4:
mov r0, #1
bl func_ov61_0214a224
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
beq _021475dc
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
bne _021475fc
_021475dc:
bl func_ov61_0214a214
mov r1, #1
strb r1, [r0, #0x17]
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldr r0, [r0, #0x200]
str r0, [r4, #0x20]
_021475fc:
bl func_ov61_02148a94
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
bls _021477c4
bl func_ov61_0214a214
mov r7, r0
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
mov r8, r0
bl func_ov61_0214a214
add r3, r8, #0xf4
ldrb r2, [r0, #0xd]
mov r1, #1
mov r0, #9
sub r2, r2, #1
add r2, r3, r2, lsl #2
str r2, [sp]
str r1, [sp, #4]
ldr r1, [r7, #0xf4]
ldr r2, [r6, #0x24]
ldrh r3, [r4, #0xa4]
bl func_ov61_0214501c
bl func_ov61_02146810
cmp r0, #0
beq _021477c4
add sp, sp, #0x1c
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, pc}
_02147678:
mov r0, #1
bl func_ov61_0214a224
bl func_ov61_02148a94
bl func_ov61_0214a214
mov r1, r5
str r1, [r0, #0x20c]
mov r5, #1
b _021477c4
_02147698:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
beq _021476b8
ldr r1, _021477f8 ; =data_ov61_0217a704
mov r0, #2
mov r2, r5
bl func_ov61_0214124c
_021476b8:
bl func_ov61_0214a214
ldr r0, [r0, #0x20c]
cmp r0, #0
moveq r7, #1
movne r7, #0
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
ldr r0, [r0, #0x20c]
bl func_ov61_021411b0
mov r4, r0
bl func_ov61_0214a214
str r4, [sp]
ldr r1, [r0, #0x468]
mov r0, #0
str r1, [sp, #4]
ldr r4, [r6, #0x464]
mov r2, r7
mov r1, r0
mov r3, r0
blx r4
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
beq _0214772c
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
bne _02147734
_0214772c:
bl func_ov61_0214498c
b _021477b8
_02147734:
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
cmp r0, #0
beq _0214775c
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
bl func_ov61_02162ba0
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0xe4]
_0214775c:
bl func_ov61_02176dc0
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
bne _021477a4
bl func_ov61_021443ec
bl func_ov61_02148f58
cmp r0, #0
addne sp, sp, #0x1c
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, pc}
ldr r0, _021477fc ; =data_ov61_0217ebe8
ldrb r1, [r0, #8]
cmp r1, #1
moveq r1, #1
streqb r1, [r0, #9]
mov r0, #0xa
bl func_ov61_0214a224
b _021477ac
_021477a4:
mov r0, #1
bl func_ov61_0214a224
_021477ac:
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x20c]
_021477b8:
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a9]
_021477c4:
cmp r5, #0
addeq sp, sp, #0x1c
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, pc}
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
addeq sp, sp, #0x1c
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, pc}
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
bl func_ov61_02162e28
add sp, sp, #0x1c
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, pc}
.align 2, 0
arm_func_end func_ov61_021471a0
_021477f8: .word data_ov61_0217a704
_021477fc: .word data_ov61_0217ebe8
.global func_ov61_02147800
arm_func_start func_ov61_02147800
func_ov61_02147800: ; 0x02147800
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a6]
cmp r0, #0
beq _02147830
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #4
moveq r0, #1
ldmeqia sp!, {r4, r5, r6, pc}
_02147830:
cmp r5, #0
mov r4, #0
bls _02147880
_0214783c:
ldr r0, [r6, r4, lsl #2]
bl func_ov61_02148880
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
bl func_ov61_0214a214
ldrb r0, [r0, #0x1a6]
cmp r0, #0
beq _02147874
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #1
moveq r0, #1
ldmeqia sp!, {r4, r5, r6, pc}
_02147874:
add r4, r4, #1
cmp r4, r5
blo _0214783c
_02147880:
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02147800
.global func_ov61_02147888
arm_func_start func_ov61_02147888
func_ov61_02147888: ; 0x02147888
stmdb sp!, {r3, lr}
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x20c]
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #2
bne _021478b0
bl func_ov61_02147a10
ldmia sp!, {r3, pc}
_021478b0:
bl func_ov61_0214a214
mov r1, #1
strb r1, [r0, #0x1a9]
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
bne _0214791c
bl func_ov61_0214a214
mov r1, #1
strb r1, [r0, #0x1a9]
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #0
beq _021478fc
bl func_ov61_0214a214
ldr r0, [r0, #4]
ldr r0, [r0]
bl func_ov61_021744b8
b _02147914
_021478fc:
bl func_ov61_0214a214
ldr r0, [r0, #0xf4]
bl func_ov61_02146d8c
bl func_ov61_02146810
cmp r0, #0
ldmneia sp!, {r3, pc}
_02147914:
bl func_ov61_02147a10
ldmia sp!, {r3, pc}
_0214791c:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #4
beq _0214797c
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #5
beq _0214797c
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #6
beq _0214797c
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #7
beq _0214797c
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xb
beq _0214797c
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xc
bne _021479b4
_0214797c:
bl func_ov61_0214a214
ldr r0, [r0, #0x204]
cmp r0, #0
beq _021479a4
bl func_ov61_0214a214
ldr r0, [r0, #0xf4]
bl func_ov61_02146d8c
bl func_ov61_02146810
cmp r0, #0
ldmneia sp!, {r3, pc}
_021479a4:
bl func_ov61_02147ad0
bl func_ov61_02146810
cmp r0, #0
ldmneia sp!, {r3, pc}
_021479b4:
bl func_ov61_0214a214
ldr r0, [r0, #0x19c]
cmp r0, #0
beq _021479dc
bl func_ov61_0214a214
ldr r0, [r0, #0x19c]
bl func_ov61_0217741c
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x19c]
_021479dc:
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #0
beq _02147a08
bl func_ov61_0214a214
mov r1, #1
strb r1, [r0, #0x1a9]
bl func_ov61_0214a214
ldr r0, [r0, #4]
ldr r0, [r0]
bl func_ov61_021744b8
_02147a08:
bl func_ov61_02147a10
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02147888
.global func_ov61_02147a10
arm_func_start func_ov61_02147a10
func_ov61_02147a10: ; 0x02147a10
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #8
ldr r1, _02147acc ; =data_ov61_0217a704
mov r0, #1
mov r2, #0
bl func_ov61_0214124c
bl func_ov61_02148f58
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
bl func_ov61_0214498c
bl func_ov61_0214a214
ldr r0, [r0, #0x20c]
cmp r0, #0
movne r6, #1
bne _02147a64
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
moveq r6, #1
movne r6, #0
_02147a64:
bl func_ov61_0214a214
ldr r0, [r0, #0x20c]
cmp r0, #0
moveq r7, #1
movne r7, #0
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
ldr r0, [r0, #0x20c]
bl func_ov61_021411b0
mov r4, r0
bl func_ov61_0214a214
str r4, [sp]
ldr r1, [r0, #0x468]
mov r2, r7
str r1, [sp, #4]
ldr ip, [r5, #0x464]
mov r3, r6
mov r0, #0
mov r1, #1
blx ip
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a9]
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02147a10
_02147acc: .word data_ov61_0217a704
.global func_ov61_02147ad0
arm_func_start func_ov61_02147ad0
func_ov61_02147ad0: ; 0x02147ad0
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0xc
mov r4, #0
str r4, [sp, #8]
bl func_ov61_0214a214
ldrb r0, [r0, #0x17]
cmp r0, #0
beq _02147b98
bl func_ov61_0214a214
ldr r0, [r0, #0x20]
cmp r0, #0
beq _02147b98
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
ldr r1, [r5, #0x20]
ldr r0, [r0, #0x200]
cmp r1, r0
beq _02147b98
bl func_ov61_0214a214
mov r7, r0
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
add r2, sp, #8
mov r1, #1
str r2, [sp]
str r1, [sp, #4]
ldrb r3, [r0, #0xd]
ldrb r2, [r6, #0xd]
ldr r1, [r7, #0x20]
add r3, r3, #1
add r2, r2, #1
add r3, r4, r3, lsl #1
add r2, r5, r2, lsl #2
ldrh r3, [r3, #0xa4]
ldr r2, [r2, #0x24]
mov r0, #0xc
bl func_ov61_0214501c
mov r4, r0
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x17]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x20]
_02147b98:
mov r0, r4
add sp, sp, #0xc
ldmia sp!, {r4, r5, r6, r7, pc}
arm_func_end func_ov61_02147ad0
.global func_ov61_02147ba4
arm_func_start func_ov61_02147ba4
func_ov61_02147ba4: ; 0x02147ba4
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #8
movs r4, r0
bne _02147bc0
bl func_ov61_02147a10
add sp, sp, #8
ldmia sp!, {r4, r5, r6, pc}
_02147bc0:
bl func_ov61_0214454c
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
beq _02147be4
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
bne _02147c40
_02147be4:
bl func_ov61_0214a214
ldr r0, [r0, #0x20c]
cmp r0, #0
moveq r6, #1
movne r6, #0
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
ldr r0, [r0, #0x20c]
bl func_ov61_021411b0
mov r4, r0
bl func_ov61_0214a214
str r4, [sp]
ldr r1, [r0, #0x468]
mov r0, #0
str r1, [sp, #4]
ldr ip, [r5, #0x464]
mov r2, r6
mov r1, #1
mov r3, r0
blx ip
add sp, sp, #8
ldmia sp!, {r4, r5, r6, pc}
_02147c40:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
bne _02147c74
cmp r4, #1
addne sp, sp, #8
ldmneia sp!, {r4, r5, r6, pc}
mov r0, #0
bl func_ov61_02144a10
bl func_ov61_02148fcc
add sp, sp, #8
cmp r0, #0
ldmia sp!, {r4, r5, r6, pc}
_02147c74:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
cmpeq r4, #1
addne sp, sp, #8
ldmneia sp!, {r4, r5, r6, pc}
mov r0, #0
mov r1, r0
mov r2, r0
bl func_ov61_021469ec
add sp, sp, #8
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02147ba4
.global func_ov61_02147ca4
arm_func_start func_ov61_02147ca4
func_ov61_02147ca4: ; 0x02147ca4
stmdb sp!, {r3, lr}
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
ldmeqia sp!, {r3, pc}
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
ldmeqia sp!, {r3, pc}
bl func_ov61_02147e08
mov r0, #1
bl func_ov61_02147ba4
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02147ca4
.global func_ov61_02147cd8
arm_func_start func_ov61_02147cd8
func_ov61_02147cd8: ; 0x02147cd8
stmdb sp!, {r4, lr}
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x17]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x20]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a8]
bl func_ov61_0214a214
ldr r0, [r0, #0x208]
cmp r0, #0
beq _02147d88
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
bne _02147d48
mov r0, #3
bl func_ov61_0214a224
mov r0, #0
bl func_ov61_02144a10
mov r4, r0
bl func_ov61_02148fcc
cmp r0, #0
beq _02147d90
mov r0, r4
ldmia sp!, {r4, pc}
_02147d48:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
bne _02147d90
mov r0, #4
bl func_ov61_0214a224
bl func_ov61_0214a214
ldr r0, [r0, #0x208]
mov r1, #0
bl func_ov61_0214683c
mov r4, r0
bl func_ov61_02146810
cmp r0, #0
beq _02147d90
mov r0, r4
ldmia sp!, {r4, pc}
_02147d88:
mov r0, #1
bl func_ov61_02147ba4
_02147d90:
mov r0, #0
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02147cd8
.global func_ov61_02147d98
arm_func_start func_ov61_02147d98
func_ov61_02147d98: ; 0x02147d98
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
bl func_ov61_0214a214
str r5, [r0, #0x20c]
bl func_ov61_0214a214
ldrb r1, [r0, #0xd]
mov r0, r5
add r1, r1, #1
bl func_ov61_0213f6b8
movs r4, r0
beq _02147dec
bl func_ov61_0214a214
mov r1, #2
strb r1, [r0, #0x1a8]
ldr r0, [r4]
bl func_ov61_02174498
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a8]
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
_02147dec:
bl func_ov61_0214a214
ldrb r1, [r0, #0xd]
mov r0, r5
add r1, r1, #1
bl func_ov61_02144064
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02147d98
.global func_ov61_02147e08
arm_func_start func_ov61_02147e08
func_ov61_02147e08: ; 0x02147e08
stmdb sp!, {r3, lr}
bl func_ov61_0214a214
mov r1, #2
strb r1, [r0, #0x1a8]
bl func_ov61_0214a214
ldr r0, [r0, #4]
ldr r0, [r0]
bl func_ov61_021744b8
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a8]
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02147e08
.global func_ov61_02147e38
arm_func_start func_ov61_02147e38
func_ov61_02147e38: ; 0x02147e38
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
sub sp, sp, #0x108
mov r7, #0
mov r10, r0
mov r8, r7
mov r9, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
blt _02147ec0
add r4, sp, #0x88
add r5, sp, #8
mov r6, r9
_02147e6c:
bl func_ov61_0214a214
add r0, r0, r9
ldrb r0, [r0, #0x2d0]
tst r10, r6, lsl r0
beq _02147e98
bl func_ov61_0214a214
add r0, r0, r9, lsl #2
ldr r0, [r0, #0xf4]
str r0, [r5, r8, lsl #2]
add r8, r8, #1
b _02147eac
_02147e98:
bl func_ov61_0214a214
add r0, r0, r9, lsl #2
ldr r0, [r0, #0xf4]
str r0, [r4, r7, lsl #2]
add r7, r7, #1
_02147eac:
add r9, r9, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r9, r0
ble _02147e6c
_02147ec0:
cmp r8, #0
mov r10, #0
ble _02147f18
add r9, sp, #0x88
mov r6, #0x10
add r5, sp, #8
mov r4, r10
_02147edc:
ldr r1, [r5, r10, lsl #2]
str r9, [sp]
mov r0, r6
mov r2, r4
mov r3, r4
str r7, [sp, #4]
bl func_ov61_0214501c
bl func_ov61_02146810
cmp r0, #0
addne sp, sp, #0x108
movne r0, #0
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
add r10, r10, #1
cmp r10, r8
blt _02147edc
_02147f18:
bl func_ov61_0214a214
mov r1, #2
strb r1, [r0, #0x1a8]
cmp r7, #0
mov r6, #0
ble _02147f5c
add r5, sp, #0x88
mov r4, r6
_02147f38:
ldr r0, [r5, r6, lsl #2]
mov r1, r4
bl func_ov61_021489cc
cmp r0, #0xff
beq _02147f50
bl func_ov61_0213f35c
_02147f50:
add r6, r6, #1
cmp r6, r7
blt _02147f38
_02147f5c:
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1a8]
mov r0, #1
add sp, sp, #0x108
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
arm_func_end func_ov61_02147e38
.global func_ov61_02147f74
arm_func_start func_ov61_02147f74
func_ov61_02147f74: ; 0x02147f74
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
mov r4, r1
mov r5, r0
cmp r4, #2
beq _02147f98
cmp r4, #3
beq _02148010
b _02148034
_02147f98:
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
add r0, r6, r0
ldrb r0, [r0, #0x2d0]
mov r6, #1
cmp r5, r0
moveq r0, #1
streqb r0, [sp]
movne r0, #0
strneb r0, [sp]
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
blo _02148034
_02147fd8:
bl func_ov61_0214a214
add r0, r0, r6
ldrb r0, [r0, #0x2d0]
cmp r5, r0
streqb r6, [sp, #1]
streqb r5, [sp, #2]
beq _02148034
add r0, r6, #1
and r6, r0, #0xff
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r6, r0
bls _02147fd8
b _02148034
_02148010:
bl func_ov61_0214a214
add r0, r0, #0x100
ldrh r0, [r0, #0xb0]
strb r0, [sp]
bl func_ov61_0214a214
add r0, r0, #0x100
ldrh r0, [r0, #0xb0]
mov r0, r0, asr #0x8
strb r0, [sp, #1]
_02148034:
add r2, sp, #0
mov r0, r4
mov r1, r5
mov r3, #4
bl func_ov61_0214a2e8
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0x1e0]
str r1, [r4, #0x1e4]
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
arm_func_end func_ov61_02147f74
.global func_ov61_02148064
arm_func_start func_ov61_02148064
func_ov61_02148064: ; 0x02148064
stmdb sp!, {r3, r4, r5, r6, r7, lr}
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #9
beq _02148098
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0x10
beq _02148098
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0x11
bne _021480dc
_02148098:
bl func_0200e8f8
mov r4, r0
mov r5, r1
bl func_ov61_0214a214
ldr r1, [r0, #0x1e0]
ldr r0, [r0, #0x1e4]
subs r3, r4, r1
sbc r0, r5, r0
mov r1, r0, lsl #0x6
ldr r2, _021482cc ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
mov r4, r0
mov r5, r1
b _021480e4
_021480dc:
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021480e4:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #9
beq _02148108
cmp r0, #0x10
beq _02148174
cmp r0, #0x11
beq _021482a4
b _021482c4
_02148108:
ldr r0, _021482d0 ; =0x00001770
cmp r5, #0
cmpeq r4, r0
bls _021482c4
bl func_ov61_0213f4e4
cmp r0, #5
bne _02148150
bl func_ov61_0214a214
ldrb r0, [r0, #0x1ad]
cmp r0, #5
blo _02148150
bl func_ov61_0214a214
ldr r0, [r0, #0xf4]
bl func_ov61_02146ffc
cmp r0, #0
bne _021482c4
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02148150:
bl func_ov61_0214a214
ldrb r1, [r0, #0x1ad]
add r1, r1, #1
strb r1, [r0, #0x1ad]
bl func_ov61_0214a214
ldrb r0, [r0, #0x2d0]
mov r1, #3
bl func_ov61_02147f74
b _021482c4
_02148174:
ldr r0, _021482d0 ; =0x00001770
cmp r5, #0
cmpeq r4, r0
bls _021482c4
bl func_ov61_0214a214
ldrb r1, [r0, #0x1ab]
add r1, r1, #1
strb r1, [r0, #0x1ab]
bl func_ov61_0214a214
ldrb r0, [r0, #0x1ab]
cmp r0, #5
bls _0214823c
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
beq _021481c4
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
bne _021481d4
_021481c4:
bl func_ov61_02147e08
mov r0, #1
bl func_ov61_02147ba4
b _021482c4
_021481d4:
bl func_ov61_0214a214
ldr r0, [r0, #0x1d4]
bl func_ov61_02147e38
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #0
beq _02148220
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1ab]
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0x1e0]
str r1, [r4, #0x1e4]
b _021482c4
_02148220:
bl func_ov61_0214a214
ldr r0, [r0, #0x20c]
bl func_ov61_02146de0
cmp r0, #0
bne _021482c4
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0214823c:
mov r4, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
blt _021482c4
mov r5, #2
mov r6, r4
_02148258:
bl func_ov61_0214a214
mov r7, r0
bl func_ov61_0214a214
add r0, r0, r4
ldrb r0, [r0, #0x2d0]
ldr r1, [r7, #0x1d4]
tst r1, r6, lsl r0
bne _0214828c
bl func_ov61_0214a214
add r0, r0, r4
ldrb r0, [r0, #0x2d0]
mov r1, r5
bl func_ov61_02147f74
_0214828c:
add r4, r4, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r4, r0
ble _02148258
b _021482c4
_021482a4:
bl func_ov61_0214a214
add r0, r0, #0x100
ldrh r0, [r0, #0xb0]
cmp r5, r0, asr #31
cmpeq r4, r0
bls _021482c4
mov r0, #4
bl func_ov61_021471a0
_021482c4:
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02148064
_021482cc: .word 0x000082ea
_021482d0: .word 0x00001770
.global func_ov61_021482d4
arm_func_start func_ov61_021482d4
func_ov61_021482d4: ; 0x021482d4
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0xc
mov r5, r1
cmp r5, #0xd
mov r6, r0
movne r4, #0
bne _02148300
bl func_ov61_0214a214
ldr r0, [r0, #0x20c]
mov r4, #1
str r0, [sp, #8]
_02148300:
add r0, sp, #8
str r0, [sp]
mov r2, #0
mov r0, r5
mov r1, r6
mov r3, r2
str r4, [sp, #4]
bl func_ov61_0214501c
bl func_ov61_02146810
cmp r0, #0
addne sp, sp, #0xc
movne r0, #0
ldmneia sp!, {r3, r4, r5, r6, pc}
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0x1e8]
str r1, [r4, #0x1ec]
mov r0, #1
add sp, sp, #0xc
ldmia sp!, {r3, r4, r5, r6, pc}
arm_func_end func_ov61_021482d4
.global func_ov61_02148354
arm_func_start func_ov61_02148354
func_ov61_02148354: ; 0x02148354
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
mov r4, r2
bl func_ov61_0213f4e4
cmp r0, #6
movne r0, #1
ldmneia sp!, {r4, r5, r6, pc}
cmp r5, #0xd
beq _02148390
cmp r5, #0xe
beq _021483cc
cmp r5, #0xf
beq _02148554
b _0214856c
_02148390:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #8
beq _021483b0
mov r0, #8
bl func_ov61_0214a224
mov r0, r4
bl func_ov61_02147d98
_021483b0:
mov r0, r6
mov r1, #0xe
bl func_ov61_021482d4
cmp r0, #0
bne _0214856c
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
_021483cc:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xe
bne _02148538
bl func_0200e8f8
mov r4, r0
mov r5, r1
bl func_ov61_0214a214
ldr r1, [r0, #0x1e8]
ldr r0, [r0, #0x1ec]
subs r3, r4, r1
sbc r0, r5, r0
mov r1, r0, lsl #0x6
ldr r2, _02148574 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
mov r2, r0, lsr #0x1
mov r0, r1, lsr #0x1
cmp r0, #0
orr r2, r2, r1, lsl #31
cmpeq r2, #0x12c
bls _02148498
bl func_ov61_0214a214
ldr r1, [r0, #0x1e8]
ldr r0, [r0, #0x1ec]
subs r3, r4, r1
sbc r0, r5, r0
mov r1, r0, lsl #0x6
ldr r2, _02148574 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
mov r3, r0, lsr #0x1
mov r0, #0x12c
orr r3, r3, r1, lsl #31
rsb r0, r0, #0
mvn r2, #0
adds r5, r3, r0
adc r4, r2, r1, lsr #1
bl func_ov61_0214a214
add r0, r0, #0x100
ldrh r0, [r0, #0xb2]
cmp r4, r0, asr #31
cmpeq r5, r0
bls _02148498
bl func_ov61_0214a214
add r0, r0, #0x100
strh r5, [r0, #0xb2]
_02148498:
mov r0, r6
mov r1, #0
bl func_ov61_021489cc
mov r4, r0
cmp r4, #0xff
beq _021484c4
bl func_ov61_0214a214
ldr r2, [r0, #0x1d8]
mov r1, #1
orr r1, r2, r1, lsl r4
str r1, [r0, #0x1d8]
_021484c4:
mov r0, #1
bl func_ov61_02148a30
mov r4, r0
bl func_ov61_0214a214
ldr r0, [r0, #0x1d8]
cmp r4, r0
bne _0214856c
mov r5, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
blt _0214852c
mov r4, #0xf
_021484f8:
bl func_ov61_0214a214
add r0, r0, r5, lsl #2
ldr r0, [r0, #0xf4]
mov r1, r4
bl func_ov61_021482d4
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
add r5, r5, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r5, r0
ble _021484f8
_0214852c:
mov r0, #0xf
bl func_ov61_0214a224
b _0214856c
_02148538:
mov r0, r6
mov r1, #0xf
bl func_ov61_021482d4
cmp r0, #0
bne _0214856c
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
_02148554:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #8
bne _0214856c
mov r0, #2
bl func_ov61_02147ba4
_0214856c:
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02148354
_02148574: .word 0x000082ea
.global func_ov61_02148578
arm_func_start func_ov61_02148578
func_ov61_02148578: ; 0x02148578
stmdb sp!, {r3, r4, r5, r6, r7, lr}
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #8
beq _021485ac
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xe
beq _021485ac
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xf
bne _021485f0
_021485ac:
bl func_0200e8f8
mov r4, r0
mov r5, r1
bl func_ov61_0214a214
ldr r1, [r0, #0x1e8]
ldr r0, [r0, #0x1ec]
subs r3, r4, r1
sbc r0, r5, r0
mov r1, r0, lsl #0x6
ldr r2, _02148770 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
mov r4, r0
mov r5, r1
b _021485f8
_021485f0:
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021485f8:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #8
beq _0214861c
cmp r0, #0xe
beq _0214864c
cmp r0, #0xf
beq _02148748
b _02148768
_0214861c:
ldr r0, _02148774 ; =0x00001770
cmp r5, #0
cmpeq r4, r0
bls _02148768
bl func_ov61_0214a214
ldr r0, [r0, #0xf4]
mov r1, #0xe
bl func_ov61_021482d4
cmp r0, #0
bne _02148768
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0214864c:
ldr r0, _02148774 ; =0x00001770
cmp r5, #0
cmpeq r4, r0
bls _02148768
bl func_ov61_0214a214
ldrb r1, [r0, #0x1ac]
add r1, r1, #1
strb r1, [r0, #0x1ac]
bl func_ov61_0214a214
ldrb r0, [r0, #0x1ac]
cmp r0, #5
bls _021486d4
bl func_ov61_0214a214
ldr r0, [r0, #0x1d8]
bl func_ov61_02147e38
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #0
beq _021486c8
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1ac]
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0x1e8]
str r1, [r4, #0x1ec]
b _02148768
_021486c8:
mov r0, #2
bl func_ov61_02147ba4
b _02148768
_021486d4:
mov r4, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
blt _02148768
mov r5, #0xd
mov r6, r4
_021486f0:
bl func_ov61_0214a214
mov r7, r0
bl func_ov61_0214a214
add r0, r0, r4
ldrb r0, [r0, #0x2d0]
ldr r1, [r7, #0x1d8]
tst r1, r6, lsl r0
bne _02148730
bl func_ov61_0214a214
add r0, r0, r4, lsl #2
ldr r0, [r0, #0xf4]
mov r1, r5
bl func_ov61_021482d4
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
_02148730:
add r4, r4, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r4, r0
ble _021486f0
b _02148768
_02148748:
bl func_ov61_0214a214
add r0, r0, #0x100
ldrh r0, [r0, #0xb2]
cmp r5, r0, asr #31
cmpeq r4, r0
bls _02148768
mov r0, #2
bl func_ov61_02147ba4
_02148768:
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02148578
_02148770: .word 0x000082ea
_02148774: .word 0x00001770
.global func_ov61_02148778
arm_func_start func_ov61_02148778
func_ov61_02148778: ; 0x02148778
ldr r2, _021487b4 ; =data_ov61_0217ebf8
mov r3, #0
mov r0, #0xc
_02148784:
mul r1, r3, r0
ldrb r1, [r2, r1]
cmp r1, #0
addeq r0, r3, #0x64
andeq r0, r0, #0xff
bxeq lr
add r1, r3, #1
and r3, r1, #0xff
cmp r3, #0x9a
blo _02148784
mov r0, #0
bx lr
.align 2, 0
arm_func_end func_ov61_02148778
_021487b4: .word data_ov61_0217ebf8
.global func_ov61_021487b8
arm_func_start func_ov61_021487b8
func_ov61_021487b8: ; 0x021487b8
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r6, #0
ldr r7, _02148808 ; =data_ov61_0217ebf8
mov r5, #4
mov r4, r6
_021487cc:
ldr r1, [r7, #4]
cmp r1, #0
beq _021487e4
mov r0, r5
mov r2, r4
bl func_ov61_0213e068
_021487e4:
add r6, r6, #1
cmp r6, #0x9a
add r7, r7, #0xc
blt _021487cc
ldr r1, _02148808 ; =data_ov61_0217ebf8
ldr r2, _0214880c ; =0x00000738
mov r0, #0
bl func_020078f4
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_021487b8
_02148808: .word data_ov61_0217ebf8
_0214880c: .word 0x00000738
.global func_ov61_02148810
arm_func_start func_ov61_02148810
func_ov61_02148810: ; 0x02148810
stmdb sp!, {r4, r5, r6, lr}
mov r5, #0
mov r4, r5
_0214881c:
mov r6, r4
bl func_ov61_0214a214
ldrb r0, [r0, #0x14]
cmp r0, #0
blt _02148858
_02148830:
bl func_ov61_0214a214
add r0, r0, r6
ldrb r0, [r0, #0x2d0]
cmp r5, r0
beq _02148858
add r6, r6, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0x14]
cmp r6, r0
ble _02148830
_02148858:
bl func_ov61_0214a214
ldrb r0, [r0, #0x14]
cmp r6, r0
bgt _02148878
add r0, r5, #1
and r5, r0, #0xff
cmp r5, #0x20
blo _0214881c
_02148878:
mov r0, r5
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02148810
.global func_ov61_02148880
arm_func_start func_ov61_02148880
func_ov61_02148880: ; 0x02148880
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
bl func_ov61_0214a214
ldr r0, [r0, #0x2fc]
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
mov r4, #0
bl func_ov61_0214a214
ldr r0, [r0, #0x344]
cmp r0, #0
ble _021488e8
_021488b0:
bl func_ov61_0214a214
add r0, r0, r4
ldrb r0, [r0, #0x304]
bl func_ov61_02141168
cmp r0, #0
ble _021488d4
cmp r0, r5
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, pc}
_021488d4:
add r4, r4, #1
bl func_ov61_0214a214
ldr r0, [r0, #0x344]
cmp r4, r0
blt _021488b0
_021488e8:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02148880
.global func_ov61_021488f0
arm_func_start func_ov61_021488f0
func_ov61_021488f0: ; 0x021488f0
stmdb sp!, {r4, lr}
ldr r1, _021489b4 ; =data_ov61_0217a81c
mvn r2, #0
mov r4, r0
bl func_ov61_02162270
mvn r2, #0
cmp r0, r2
moveq r0, #0
ldmeqia sp!, {r4, pc}
ldr r1, _021489b8 ; =data_ov61_0217a828
mov r0, r4
bl func_ov61_02162270
mvn r2, #0
cmp r0, r2
moveq r0, #0
ldmeqia sp!, {r4, pc}
ldr r1, _021489bc ; =data_ov61_0217a760
mov r0, r4
bl func_ov61_02162270
mvn r2, #0
cmp r0, r2
moveq r0, #0
ldmeqia sp!, {r4, pc}
ldr r1, _021489c0 ; =data_ov61_0217a76c
mov r0, r4
bl func_ov61_02162270
mvn r1, #0
cmp r0, r1
bne _02148980
ldr r1, _021489c0 ; =data_ov61_0217a76c
mov r0, r4
mov r2, #0
bl func_ov61_02162270
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, pc}
_02148980:
ldr r1, _021489c4 ; =data_ov61_0217a778
mov r0, r4
mvn r2, #0
bl func_ov61_02162270
mvn r1, #0
cmp r0, r1
moveq r0, #0
ldmeqia sp!, {r4, pc}
ldr r1, _021489c8 ; =data_ov61_0217a758
mov r0, r4
mov r2, #0
bl func_ov61_02162270
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021488f0
_021489b4: .word data_ov61_0217a81c
_021489b8: .word data_ov61_0217a828
_021489bc: .word data_ov61_0217a760
_021489c0: .word data_ov61_0217a76c
_021489c4: .word data_ov61_0217a778
_021489c8: .word data_ov61_0217a758
.global func_ov61_021489cc
arm_func_start func_ov61_021489cc
func_ov61_021489cc: ; 0x021489cc
stmdb sp!, {r3, r4, r5, lr}
cmp r1, #0
moveq r4, #1
mov r5, r0
movne r4, #0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r4, r0
bgt _02148a28
_021489f0:
bl func_ov61_0214a214
add r0, r0, r4, lsl #2
ldr r0, [r0, #0xf4]
cmp r5, r0
bne _02148a14
bl func_ov61_0214a214
add r0, r0, r4
ldrb r0, [r0, #0x2d0]
ldmia sp!, {r3, r4, r5, pc}
_02148a14:
add r4, r4, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r4, r0
ble _021489f0
_02148a28:
mov r0, #0xff
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_021489cc
.global func_ov61_02148a30
arm_func_start func_ov61_02148a30
func_ov61_02148a30: ; 0x02148a30
stmdb sp!, {r4, r5, r6, lr}
cmp r0, #0
mov r5, #0
beq _02148a50
bl func_ov61_0214a214
ldr r0, [r0, #0x2f0]
bic r0, r0, #1
ldmia sp!, {r4, r5, r6, pc}
_02148a50:
mov r6, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
blt _02148a8c
mov r4, r6
_02148a68:
bl func_ov61_0214a214
add r0, r0, r6
ldrb r0, [r0, #0x2d0]
add r6, r6, #1
orr r5, r5, r4, lsl r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r6, r0
ble _02148a68
_02148a8c:
mov r0, r5
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02148a30
.global func_ov61_02148a94
arm_func_start func_ov61_02148a94
func_ov61_02148a94: ; 0x02148a94
stmdb sp!, {r4, lr}
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x1ad]
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0x1f8]
str r1, [r4, #0x1fc]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02148a94
.global func_ov61_02148abc
arm_func_start func_ov61_02148abc
func_ov61_02148abc: ; 0x02148abc
stmdb sp!, {r4, lr}
ldr r1, _02148b28 ; =data_ov61_0217ebe8
mov r4, r0
ldr r3, [r1]
cmp r3, #0
ldrneb r0, [r3]
cmpne r0, #0
ldmeqia sp!, {r4, pc}
mov r2, #0
str r2, [r3, #8]
ldr r0, [r1]
str r2, [r0, #0xc]
ldr r0, [r1]
strb r2, [r0, #2]
bl func_0200e8f8
ldr r2, _02148b28 ; =data_ov61_0217ebe8
cmp r4, #0
ldr r2, [r2]
str r0, [r2, #0x18]
str r1, [r2, #0x1c]
ldmneia sp!, {r4, pc}
bl func_0200e8f8
ldr r2, _02148b28 ; =data_ov61_0217ebe8
ldr r2, [r2]
str r0, [r2, #0x10]
str r1, [r2, #0x14]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02148abc
_02148b28: .word data_ov61_0217ebe8
.global func_ov61_02148b2c
arm_func_start func_ov61_02148b2c
func_ov61_02148b2c: ; 0x02148b2c
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
sub sp, sp, #8
ldr r0, _02148f4c ; =data_ov61_0217ebe8
ldr r0, [r0]
cmp r0, #0
ldrneb r0, [r0]
cmpne r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
addeq sp, sp, #8
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
addeq sp, sp, #8
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0x13
bne _02148d88
mov r0, #0
bl func_ov61_02148a30
ldr r1, _02148f4c ; =data_ov61_0217ebe8
ldr r5, [r1]
ldr r1, [r5, #8]
cmp r1, r0
bne _02148c60
ldr r1, [r5, #0xc]
cmp r1, r0
bne _02148bec
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
strb r0, [r4, #0x16]
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r1, [r0, #0xd]
mov r0, #0
sub r1, r1, #1
strb r1, [r4, #0x1a4]
bl func_ov61_021471a0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02148bec:
bl func_0200e8f8
str r0, [r5, #0x18]
str r1, [r5, #0x1c]
mov r0, #0
str r0, [r5, #8]
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
bne _02148c40
mov r0, #3
bl func_ov61_0214a224
bl func_ov61_0214a214
mov r1, #2
str r1, [r0, #0xe8]
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0xec]
add sp, sp, #8
str r1, [r4, #0xf0]
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02148c40:
mov r0, #4
bl func_ov61_0214a224
mov r1, #0
mov r2, r1
mov r0, #1
bl func_ov61_021469ec
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02148c60:
ldrb r4, [r5, #2]
bl func_0200e8f8
ldr r3, [r5, #0x18]
ldr r2, [r5, #0x1c]
subs r3, r0, r3
sbc r0, r1, r2
mov r1, r0, lsl #0x6
ldr r2, _02148f50 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
ldr r2, _02148f54 ; =0x00001770
mul r2, r4, r2
cmp r1, r2, asr #31
cmpeq r0, r2
addlo sp, sp, #8
ldmloia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
cmp r4, #5
bls _02148ccc
mov r0, #1
bl func_ov61_02148abc
bl func_ov61_02147e08
mov r0, #1
bl func_ov61_02147ba4
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02148ccc:
mov r7, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
blt _02148d6c
ldr r8, _02148f4c ; =data_ov61_0217ebe8
mov r5, #0
mov r4, #0x11
mov r6, r7
_02148cf0:
bl func_ov61_0214a214
add r0, r0, r7
ldr r1, [r8]
ldrb r0, [r0, #0x2d0]
ldr r1, [r1, #8]
tst r1, r6, lsl r0
bne _02148d58
bl func_ov61_0214a214
mov r10, r0
bl func_ov61_0214a214
mov r9, r0
bl func_ov61_0214a214
str r5, [sp]
str r5, [sp, #4]
add r0, r0, r7, lsl #1
add r1, r10, r7, lsl #2
add r2, r9, r7, lsl #2
ldrh r3, [r0, #0xa4]
ldr r1, [r1, #0xf4]
ldr r2, [r2, #0x24]
mov r0, r4
bl func_ov61_0214501c
bl func_ov61_02146810
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02148d58:
add r7, r7, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r7, r0
ble _02148cf0
_02148d6c:
ldr r0, _02148f4c ; =data_ov61_0217ebe8
add sp, sp, #8
ldr r1, [r0]
ldrb r0, [r1, #2]
add r0, r0, #1
strb r0, [r1, #2]
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02148d88:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #4
beq _02148dac
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #3
addne sp, sp, #8
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02148dac:
ldr r0, _02148f4c ; =data_ov61_0217ebe8
ldr r4, [r0]
bl func_ov61_0214a214
ldrb r1, [r4, #1]
ldrb r2, [r0, #0xd]
sub r0, r1, #1
cmp r2, r0
addlt sp, sp, #8
ldmltia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
ldrb r0, [r4, #2]
cmp r0, #0
bne _02148e20
ldr r0, _02148f4c ; =data_ov61_0217ebe8
ldr r4, [r0]
bl func_0200e8f8
ldr r3, [r4, #0x10]
ldr r2, [r4, #0x14]
subs r3, r0, r3
sbc r0, r1, r2
mov r1, r0, lsl #0x6
ldr r2, _02148f50 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
ldr r2, [r4, #4]
cmp r1, #0
cmpeq r0, r2
bhs _02148e78
_02148e20:
ldrb r0, [r4, #2]
cmp r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
ldr r0, _02148f4c ; =data_ov61_0217ebe8
ldr r4, [r0]
bl func_0200e8f8
ldr r3, [r4, #0x18]
ldr r2, [r4, #0x1c]
subs r3, r0, r3
sbc r0, r1, r2
mov r1, r0, lsl #0x6
ldr r2, _02148f50 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
ldr r2, [r4, #4]
cmp r1, #0
cmpeq r0, r2, lsr #2
addlo sp, sp, #8
ldmloia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02148e78:
bl func_ov61_0214a214
ldr r0, [r0, #0x204]
cmp r0, #0
beq _02148ea4
bl func_ov61_0214a214
ldr r0, [r0, #0x204]
bl func_ov61_02146d8c
bl func_ov61_02146810
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02148ea4:
mov r0, #0x13
bl func_ov61_0214a224
mov r4, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
blt _02148f28
mov r6, #0
mov r5, #0x11
_02148ec8:
bl func_ov61_0214a214
mov r8, r0
bl func_ov61_0214a214
mov r7, r0
bl func_ov61_0214a214
str r6, [sp]
str r6, [sp, #4]
add r0, r0, r4, lsl #1
add r1, r8, r4, lsl #2
add r2, r7, r4, lsl #2
ldrh r3, [r0, #0xa4]
ldr r1, [r1, #0xf4]
ldr r2, [r2, #0x24]
mov r0, r5
bl func_ov61_0214501c
bl func_ov61_02146810
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
add r4, r4, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r4, r0
ble _02148ec8
_02148f28:
ldr r0, _02148f4c ; =data_ov61_0217ebe8
ldr r4, [r0]
bl func_0200e8f8
str r0, [r4, #0x18]
str r1, [r4, #0x1c]
mov r0, #1
strb r0, [r4, #2]
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
.align 2, 0
arm_func_end func_ov61_02148b2c
_02148f4c: .word data_ov61_0217ebe8
_02148f50: .word 0x000082ea
_02148f54: .word 0x00001770
.global func_ov61_02148f58
arm_func_start func_ov61_02148f58
func_ov61_02148f58: ; 0x02148f58
stmdb sp!, {r4, lr}
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r4, pc}
cmp r4, #4
addls pc, pc, r4, lsl #2
b _02148fb4
_02148f74: ; jump table
b _02148fb4 ; case 0
b _02148f88 ; case 1
b _02148f94 ; case 2
b _02148fa0 ; case 3
b _02148fac ; case 4
_02148f88:
mov r0, #9
sub r2, r0, #0xa
b _02148fb4
_02148f94:
mov r0, #9
sub r2, r0, #0xb
b _02148fb4
_02148fa0:
mov r0, #6
sub r2, r0, #0x10
b _02148fb4
_02148fac:
mov r0, #6
sub r2, r0, #0x1a
_02148fb4:
ldr r1, _02148fc8 ; =0xfffec398
add r1, r2, r1
bl func_ov61_02143c14
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02148f58
_02148fc8: .word 0xfffec398
.global func_ov61_02148fcc
arm_func_start func_ov61_02148fcc
func_ov61_02148fcc: ; 0x02148fcc
stmdb sp!, {r4, lr}
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r4, pc}
cmp r4, #6
addls pc, pc, r4, lsl #2
b _02149048
_02148fe8: ; jump table
b _02149048 ; case 0
b _02149004 ; case 1
b _02149010 ; case 2
b _0214901c ; case 3
b _02149028 ; case 4
b _02149034 ; case 5
b _02149040 ; case 6
_02149004:
mov r0, #6
sub r2, r0, #0x38
b _02149048
_02149010:
mov r0, #6
sub r2, r0, #0x24
b _02149048
_0214901c:
mov r0, #6
sub r2, r0, #0x1a
b _02149048
_02149028:
mov r0, #6
sub r2, r0, #0x2e
b _02149048
_02149034:
mov r0, #9
sub r2, r0, #0xa
b _02149048
_02149040:
mov r0, #9
sub r2, r0, #0xb
_02149048:
ldr r1, _0214905c ; =0xfffeb3f8
add r1, r2, r1
bl func_ov61_02143c14
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02148fcc
_0214905c: .word 0xfffeb3f8
.global func_ov61_02149060
arm_func_start func_ov61_02149060
func_ov61_02149060: ; 0x02149060
stmdb sp!, {r4, r5, r6, lr}
movs r6, r0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
cmp r6, #5
addls pc, pc, r6, lsl #2
b _021490cc
_0214907c: ; jump table
b _021490cc ; case 0
b _02149094 ; case 1
b _021490a0 ; case 2
b _021490ac ; case 3
b _021490b8 ; case 4
b _021490c4 ; case 5
_02149094:
mov r5, #6
sub r4, r5, #0x38
b _021490cc
_021490a0:
mov r5, #6
sub r4, r5, #0x42
b _021490cc
_021490ac:
mov r5, #6
sub r4, r5, #0x24
b _021490cc
_021490b8:
mov r5, #6
sub r4, r5, #0x56
b _021490cc
_021490c4:
mov r5, #6
sub r4, r5, #0x1a
_021490cc:
bl func_ov61_0213f4e4
cmp r0, #2
beq _021490ec
cmp r0, #4
beq _021490fc
cmp r0, #5
beq _02149110
b _02149124
_021490ec:
mov r0, r5
sub r1, r4, #0xfa00
bl func_ov61_02140324
b _02149134
_021490fc:
ldr r1, _0214913c ; =0xfffedef0
mov r0, r5
add r1, r4, r1
bl func_ov61_02140fc8
b _02149134
_02149110:
ldr r1, _02149140 ; =0xfffeb7e0
mov r0, r5
add r1, r4, r1
bl func_ov61_02143c14
b _02149134
_02149124:
ldr r1, _02149144 ; =0xfffe90d0
mov r0, r5
add r1, r4, r1
bl func_ov61_0213e008
_02149134:
mov r0, r6
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02149060
_0214913c: .word 0xfffedef0
_02149140: .word 0xfffeb7e0
_02149144: .word 0xfffe90d0
.global func_ov61_02149148
arm_func_start func_ov61_02149148
func_ov61_02149148: ; 0x02149148
stmdb sp!, {r4, lr}
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r4, pc}
cmp r4, #1
beq _02149178
cmp r4, #2
beq _02149184
cmp r4, #3
moveq r0, #6
subeq r2, r0, #0x24
b _0214918c
_02149178:
mov r0, #9
sub r2, r0, #0xa
b _0214918c
_02149184:
mov r0, #6
sub r2, r0, #0x38
_0214918c:
ldr r1, _021491a0 ; =0xfffeb010
add r1, r2, r1
bl func_ov61_02143c14
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02149148
_021491a0: .word 0xfffeb010
.global func_ov61_021491a4
arm_func_start func_ov61_021491a4
func_ov61_021491a4: ; 0x021491a4
stmdb sp!, {r4, lr}
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r4, pc}
cmp r4, #1
beq _021491c8
cmp r4, #2
beq _021491d0
b _021491d8
_021491c8:
mov r0, #1
ldmia sp!, {r4, pc}
_021491d0:
mov r0, #2
ldmia sp!, {r4, pc}
_021491d8:
movs r0, #6
beq _021491e8
ldr r1, _021491f0 ; =0xfffeb007
bl func_ov61_02143c14
_021491e8:
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021491a4
_021491f0: .word 0xfffeb007
.global func_ov61_021491f4
arm_func_start func_ov61_021491f4
func_ov61_021491f4: ; 0x021491f4
stmdb sp!, {r4, lr}
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r4, pc}
cmp r4, #7
addls pc, pc, r4, lsl #2
b _02149278
_02149210: ; jump table
b _02149278 ; case 0
b _02149230 ; case 1
b _0214923c ; case 2
b _0214924c ; case 3
b _02149258 ; case 4
b _0214923c ; case 5
b _02149264 ; case 6
b _02149270 ; case 7
_02149230:
mov r0, #9
sub r2, r0, #0xa
b _02149278
_0214923c:
mov r0, #0
mov r2, r0
mov r4, r0
b _02149278
_0214924c:
mov r0, #6
sub r2, r0, #0x10
b _02149278
_02149258:
mov r0, #6
sub r2, r0, #0x24
b _02149278
_02149264:
mov r0, #6
sub r2, r0, #0x4c
b _02149278
_02149270:
mov r0, #6
sub r2, r0, #0x56
_02149278:
cmp r0, #0
beq _0214928c
ldr r1, _02149294 ; =0xfffeac28
add r1, r2, r1
bl func_ov61_02143c14
_0214928c:
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021491f4
_02149294: .word 0xfffeac28
.global func_ov61_02149298
arm_func_start func_ov61_02149298
func_ov61_02149298: ; 0x02149298
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r6, r0
cmp r1, #0
beq _021492b8
cmp r1, #4
beq _021492e4
cmp r1, #5
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021492b8:
mov r0, r2
bl func_ov61_02149684
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
ldr r2, _0214967c ; =0x00efb5f7
adds r0, r0, r2
str r0, [r4, #0x174]
adc r0, r1, #0
str r0, [r4, #0x178]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021492e4:
bl func_ov61_0214a214
mov r5, #0
str r5, [r0, #0x174]
str r5, [r0, #0x178]
mov r0, r6
bl func_ov61_02162e84
cmp r0, #0
ble _02149344
_02149304:
mov r0, r6
mov r1, r5
bl func_ov61_02162e74
mov r4, r0
bl func_ov61_021488f0
cmp r0, #0
bne _02149330
mov r0, r6
mov r1, r4
bl func_ov61_02162dc8
sub r5, r5, #1
_02149330:
mov r0, r6
add r5, r5, #1
bl func_ov61_02162e84
cmp r5, r0
blt _02149304
_02149344:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #2
beq _02149368
cmp r0, #3
beq _02149458
cmp r0, #5
beq _021494c8
b _02149658
_02149368:
mov r0, r6
mov r5, #0
bl func_ov61_02162e84
cmp r0, #0
ble _021493f8
_0214937c:
mov r0, r6
mov r1, r5
bl func_ov61_02162e74
mov r4, r0
bl func_ov61_0214a214
ldr r0, [r0, #0x1c]
cmp r0, #0
beq _021493e4
bl func_ov61_0214a214
mov r7, r0
mov r0, r4
bl func_ov61_02162334
ldr r1, [r7, #0x1c]
cmp r1, r0
bne _021493e4
bl func_ov61_0214a214
ldrh r0, [r0, #0x1a]
cmp r0, #0
beq _021493e4
bl func_ov61_0214a214
mov r7, r0
mov r0, r4
bl func_ov61_0216233c
ldrh r1, [r7, #0x1a]
cmp r1, r0
beq _021493f8
_021493e4:
mov r0, r6
add r5, r5, #1
bl func_ov61_02162e84
cmp r5, r0
blt _0214937c
_021493f8:
mov r0, r6
bl func_ov61_02162e84
cmp r5, r0
bge _02149434
mov r0, #3
bl func_ov61_0214a224
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x204]
bl func_ov61_0214a214
ldr r0, [r0, #0x204]
bl func_ov61_02144a10
bl func_ov61_02148fcc
cmp r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02149434:
bl func_ov61_0214a214
mov r1, #2
str r1, [r0, #0xe8]
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0xec]
str r1, [r4, #0xf0]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02149458:
mov r0, #1
bl func_ov61_02149688
bl func_ov61_02149860
mov r0, r6
bl func_ov61_02162e84
cmp r0, #0
beq _021494a4
mov r0, #0
mov r1, r0
bl func_ov61_0214683c
bl func_ov61_02146810
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, #4
bl func_ov61_0214a224
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0xe8]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021494a4:
bl func_ov61_0214a214
mov r1, #2
str r1, [r0, #0xe8]
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0xec]
str r1, [r4, #0xf0]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021494c8:
mov r0, r6
bl func_ov61_02162e84
cmp r0, #0
beq _02149540
mov r4, #0
_021494dc:
mov r0, r6
mov r1, r4
bl func_ov61_02162e74
mov r5, r0
bl func_ov61_02162334
mov r7, r0
bl func_ov61_0214a214
ldr r0, [r0, #0x1b8]
cmp r7, r0
bne _02149524
mov r0, r5
bl func_ov61_0216233c
mov r7, r0
bl func_ov61_0214a214
add r0, r0, #0x100
ldrh r0, [r0, #0xb4]
cmp r7, r0
beq _02149540
_02149524:
mov r0, r6
mov r1, r5
bl func_ov61_02162dc8
mov r0, r6
bl func_ov61_02162e84
cmp r0, #0
bne _021494dc
_02149540:
mov r0, r6
bl func_ov61_02162e84
cmp r0, #0
beq _02149634
mov r0, r6
mov r1, #0
bl func_ov61_02162e74
ldr r1, _02149680 ; =data_ov61_0217a758
mov r2, #0
bl func_ov61_02162270
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #1
bne _02149604
bl func_ov61_0214a214
ldr r0, [r0, #0xf4]
cmp r4, r0
bne _02149604
mov r0, #0
bl func_ov61_02149688
cmp r0, #0
beq _021495c0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #0
beq _02149604
bl func_ov61_021470bc
bl func_ov61_02146810
cmp r0, #0
beq _02149604
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021495c0:
bl func_ov61_0214a214
ldr r0, [r0, #0xf4]
bl func_ov61_02146d8c
bl func_ov61_02146810
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, #4
bl func_ov61_0214a224
bl func_ov61_0214a214
mov r1, r0
mov r0, #0
ldr r2, [r1, #0xf4]
mov r1, r0
bl func_ov61_021469ec
bl func_ov61_02146810
cmp r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02149604:
mov r0, #6
bl func_ov61_0214a224
mov r0, r6
mov r1, #0
bl func_ov61_02162e74
mov r2, r0
mov r0, #0
mov r1, r0
bl func_ov61_02144c74
bl func_ov61_02149148
cmp r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02149634:
bl func_ov61_0214a214
mov r1, #2
str r1, [r0, #0xe8]
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0xec]
str r1, [r4, #0xf0]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02149658:
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
ldr r2, _0214967c ; =0x00efb5f7
adds r0, r0, r2
str r0, [r4, #0x174]
adc r0, r1, #0
str r0, [r4, #0x178]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02149298
_0214967c: .word 0x00efb5f7
_02149680: .word data_ov61_0217a758
.global func_ov61_02149684
arm_func_start func_ov61_02149684
func_ov61_02149684: ; 0x02149684
bx lr
arm_func_end func_ov61_02149684
.global func_ov61_02149688
arm_func_start func_ov61_02149688
func_ov61_02149688: ; 0x02149688
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
mov r4, #0
mov r10, r0
mov r7, r4
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
bl func_ov61_02162e84
cmp r0, #0
ble _021497f8
_021496ac:
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
mov r1, r7
bl func_ov61_02162e74
mov r9, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #0
bne _02149748
ldr r1, _02149854 ; =data_ov61_0217a758
mov r0, r9
mov r2, #0
bl func_ov61_02162270
mov r6, r0
mov r5, #0
mov r8, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r0, #1
blt _02149740
_021496fc:
bl func_ov61_0214a214
add r0, r0, r8, lsl #2
ldr r0, [r0, #0xf4]
cmp r6, r0
bne _0214972c
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
mov r1, r9
bl func_ov61_02162dc8
sub r7, r7, #1
mov r5, #1
b _02149740
_0214972c:
add r8, r8, #1
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
cmp r8, r0
ble _021496fc
_02149740:
cmp r5, #0
bne _021497e0
_02149748:
bl func_ov61_0214a214
ldr r0, [r0, #0x474]
cmp r0, #0
beq _021497c8
bl func_ov61_0214a214
mov r5, r0
bl func_ov61_0214a214
ldr r1, [r0, #0x478]
ldr r2, [r5, #0x474]
mov r0, r7
blx r2
mov r5, r0
cmp r5, #0
ble _021497ac
ldr r0, _02149858 ; =0x007fffff
cmp r5, r0
movgt r5, r0
mov r0, #0x100
bl func_ov61_0213e6f4
mov r2, r0
ldr r1, _0214985c ; =data_ov61_0217a784
mov r0, r9
orr r2, r2, r5, lsl #8
bl func_ov61_021621cc
b _021497e0
_021497ac:
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
mov r1, r9
bl func_ov61_02162dc8
sub r7, r7, #1
mov r4, #1
b _021497e0
_021497c8:
mov r0, #0x80
bl func_ov61_0213e6f4
mov r2, r0
ldr r1, _0214985c ; =data_ov61_0217a784
mov r0, r9
bl func_ov61_021621cc
_021497e0:
add r7, r7, #1
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
bl func_ov61_02162e84
cmp r7, r0
blt _021496ac
_021497f8:
cmp r10, #0
beq _0214982c
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
bl func_ov61_02162e84
cmp r0, #0
beq _0214982c
bl func_ov61_0214a214
mov r1, #0
ldr r0, [r0, #0xe4]
ldr r2, _0214985c ; =data_ov61_0217a784
mov r3, r1
bl func_ov61_02162e94
_0214982c:
cmp r4, #0
beq _0214984c
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
bl func_ov61_02162e84
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_0214984c:
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
.align 2, 0
arm_func_end func_ov61_02149688
_02149854: .word data_ov61_0217a758
_02149858: .word 0x007fffff
_0214985c: .word data_ov61_0217a784
.global func_ov61_02149860
arm_func_start func_ov61_02149860
func_ov61_02149860: ; 0x02149860
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x18
mov r7, #0
mov r8, r7
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
bl func_ov61_02162e84
cmp r0, #1
addle sp, sp, #0x18
ldmleia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
mov r9, r7
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
bl func_ov61_02162e84
cmp r0, #0
ble _021498f0
ldr r4, _021499c8 ; =data_ov61_0217a210
ldr r6, _021499cc ; =data_ov61_0217a784
mvn r5, #0
_021498ac:
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
mov r1, r9
bl func_ov61_02162e74
mov r1, r6
mov r2, r5
bl func_ov61_02162270
cmp r0, r7
movgt r7, r0
ldr r0, [r4, r9, lsl #2]
add r9, r9, #1
add r8, r8, r0
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
bl func_ov61_02162e84
cmp r9, r0
blt _021498ac
_021498f0:
mov r0, #0x64
bl func_ov61_0213e6f4
mov r6, r0
mov r9, #0
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
bl func_ov61_02162e84
cmp r0, #0
ble _02149980
ldr r4, _021499c8 ; =data_ov61_0217a210
add r5, sp, #0
mov r11, #0x64
_02149920:
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
bl func_ov61_02162e84
sub r0, r0, #1
cmp r9, r0
beq _02149980
ldr r2, [r4, r9, lsl #2]
cmp r9, #0
addgt r0, r5, r9, lsl #2
ldrgt r10, [r0, #-4]
mul r0, r2, r11
movle r10, #0
mov r1, r8
bl func_02002c14
add r0, r0, r10
str r0, [r5, r9, lsl #2]
cmp r6, r0
blo _02149980
add r9, r9, #1
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
bl func_ov61_02162e84
cmp r9, r0
blt _02149920
_02149980:
mvn r0, #0x80000000
cmp r7, r0
addlt r7, r7, #1
bl func_ov61_0214a214
ldr r0, [r0, #0xe4]
mov r1, r9
bl func_ov61_02162e74
ldr r1, _021499cc ; =data_ov61_0217a784
mov r2, r7
bl func_ov61_021621cc
bl func_ov61_0214a214
mov r1, #0
ldr r0, [r0, #0xe4]
ldr r2, _021499cc ; =data_ov61_0217a784
mov r3, r1
bl func_ov61_02162e94
add sp, sp, #0x18
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02149860
_021499c8: .word data_ov61_0217a210
_021499cc: .word data_ov61_0217a784
.global func_ov61_021499d0
arm_func_start func_ov61_021499d0
func_ov61_021499d0: ; 0x021499d0
stmdb sp!, {r4, lr}
mov r4, r1
cmp r0, #0x32
bgt _02149a04
bge _02149a4c
cmp r0, #0xa
bgt _02149aa8
cmp r0, #8
blt _02149aa8
beq _02149a24
cmp r0, #0xa
beq _02149a38
b _02149aa8
_02149a04:
sub r1, r0, #0x33
cmp r1, #3
addls pc, pc, r1, lsl #2
b _02149aa8
_02149a14: ; jump table
b _02149a60 ; case 0
b _02149a74 ; case 1
b _02149a88 ; case 2
b _02149a98 ; case 3
_02149a24:
bl func_ov61_0214a214
ldrb r1, [r0, #0x14]
mov r0, r4
bl func_ov61_02178048
ldmia sp!, {r4, pc}
_02149a38:
bl func_ov61_0214a214
ldrb r1, [r0, #0x16]
mov r0, r4
bl func_ov61_02178048
ldmia sp!, {r4, pc}
_02149a4c:
bl func_ov61_0214a214
ldr r1, [r0, #0x200]
mov r0, r4
bl func_ov61_02178048
ldmia sp!, {r4, pc}
_02149a60:
bl func_ov61_0214a214
ldrb r1, [r0, #0x15]
mov r0, r4
bl func_ov61_02178048
ldmia sp!, {r4, pc}
_02149a74:
bl func_ov61_0214a214
ldr r1, [r0, #0x20]
mov r0, r4
bl func_ov61_02178048
ldmia sp!, {r4, pc}
_02149a88:
mov r0, r4
mov r1, #3
bl func_ov61_02178048
ldmia sp!, {r4, pc}
_02149a98:
mov r0, r4
mov r1, #1
bl func_ov61_02178048
ldmia sp!, {r4, pc}
_02149aa8:
subs r1, r0, #0x64
ldmmiia sp!, {r4, pc}
cmp r1, #0x9a
ldmgeia sp!, {r4, pc}
mov r0, #0xc
mul r2, r1, r0
ldr r0, _02149b0c ; =data_ov61_0217ebf8
ldrb r0, [r0, r2]
cmp r0, #0
ldmeqia sp!, {r4, pc}
ldr r0, _02149b10 ; =data_ov61_0217ebf9
ldrb r0, [r0, r2]
cmp r0, #0
beq _02149af4
ldr r1, _02149b14 ; =data_ov61_0217ec00
mov r0, r4
ldr r1, [r1, r2]
bl func_ov61_0217807c
ldmia sp!, {r4, pc}
_02149af4:
ldr r1, _02149b14 ; =data_ov61_0217ec00
mov r0, r4
ldr r1, [r1, r2]
ldr r1, [r1]
bl func_ov61_02178048
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021499d0
_02149b0c: .word data_ov61_0217ebf8
_02149b10: .word data_ov61_0217ebf9
_02149b14: .word data_ov61_0217ec00
.global func_ov61_02149b18
arm_func_start func_ov61_02149b18
func_ov61_02149b18: ; 0x02149b18
bx lr
arm_func_end func_ov61_02149b18
.global func_ov61_02149b1c
arm_func_start func_ov61_02149b1c
func_ov61_02149b1c: ; 0x02149b1c
bx lr
arm_func_end func_ov61_02149b1c
.global func_ov61_02149b20
arm_func_start func_ov61_02149b20
func_ov61_02149b20: ; 0x02149b20
stmdb sp!, {r4, r5, r6, lr}
mov r6, r1
cmp r0, #0
beq _02149b3c
cmp r0, #1
cmpne r0, #2
ldmia sp!, {r4, r5, r6, pc}
_02149b3c:
mov r0, r6
mov r1, #8
bl func_ov61_0217801c
mov r0, r6
mov r1, #0xa
bl func_ov61_0217801c
mov r0, r6
mov r1, #0x32
bl func_ov61_0217801c
mov r0, r6
mov r1, #0x33
bl func_ov61_0217801c
mov r0, r6
mov r1, #0x34
bl func_ov61_0217801c
mov r0, r6
mov r1, #0x35
bl func_ov61_0217801c
mov r0, r6
mov r1, #0x36
bl func_ov61_0217801c
ldr r5, _02149bc0 ; =data_ov61_0217ebf8
mov r4, #0
_02149b98:
ldrb r1, [r5]
cmp r1, #0
beq _02149bac
mov r0, r6
bl func_ov61_0217801c
_02149bac:
add r4, r4, #1
cmp r4, #0x9a
add r5, r5, #0xc
blt _02149b98
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02149b20
_02149bc0: .word data_ov61_0217ebf8
.global func_ov61_02149bc4
arm_func_start func_ov61_02149bc4
func_ov61_02149bc4: ; 0x02149bc4
mov r0, #0
bx lr
arm_func_end func_ov61_02149bc4
.global func_ov61_02149bcc
arm_func_start func_ov61_02149bcc
func_ov61_02149bcc: ; 0x02149bcc
ldr ip, _02149bd4 ; =func_ov61_02149060
bx ip
.align 2, 0
arm_func_end func_ov61_02149bcc
_02149bd4: .word func_ov61_02149060
.global func_ov61_02149bd8
arm_func_start func_ov61_02149bd8
func_ov61_02149bd8: ; 0x02149bd8
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
bl func_ov61_0214a214
str r5, [r0, #0x1c]
bl func_ov61_0214a214
strh r4, [r0, #0x1a]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02149bd8
.global func_ov61_02149bf8
arm_func_start func_ov61_02149bf8
func_ov61_02149bf8: ; 0x02149bf8
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #1
bne _02149c1c
mov r0, #6
bl func_ov61_0214a224
b _02149c3c
_02149c1c:
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #6
beq _02149c3c
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xb
ldmneia sp!, {r4, pc}
_02149c3c:
bl func_ov61_0214a214
ldr r0, [r0, #0x180]
cmp r4, r0
bne _02149c60
bl func_ov61_0214a214
ldrb r1, [r0, #0x17c]
add r1, r1, #1
strb r1, [r0, #0x17c]
b _02149c74
_02149c60:
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x17c]
bl func_ov61_0214a214
str r4, [r0, #0x180]
_02149c74:
bl func_ov61_0214a214
mov r2, #0
str r2, [r0, #0x184]
str r2, [r0, #0x188]
mov r1, r4
mov r0, #1
bl func_ov61_02144c74
bl func_ov61_02149148
cmp r0, #0
ldmneia sp!, {r4, pc}
bl func_ov61_0214a214
mov r1, #0xff
strb r1, [r0, #0x3cc]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02149bf8
.global func_ov61_02149cac
arm_func_start func_ov61_02149cac
func_ov61_02149cac: ; 0x02149cac
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x9c
mov r10, r0
mov r9, r1
mov r8, #0
bl func_ov61_0213f4e4
cmp r0, #5
beq _02149d00
bl func_ov61_0213f4e4
cmp r0, #6
addne sp, sp, #0x9c
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
beq _02149d00
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
addne sp, sp, #0x9c
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02149d00:
cmp r9, #0x14
addlo sp, sp, #0x9c
ldmloia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r5, _02149db4 ; =data_ov61_0217a800
add r4, sp, #0x1c
add r7, sp, #8
mov r6, #0x14
mov r11, #4
_02149d20:
mov r0, r10
mov r1, r7
mov r2, r6
bl func_02007ad8
mov r0, r7
mov r1, r5
mov r2, r11
bl strncmp
cmp r0, #0
ldreq r0, [sp, #0xc]
cmpeq r0, #3
addne sp, sp, #0x9c
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldrb r2, [sp, #0x11]
mov r1, r4
add r0, r10, #0x14
bl func_02007ad8
str r4, [sp]
ldrb r0, [sp, #0x11]
mov r0, r0, asr #0x2
str r0, [sp, #4]
ldrb r0, [sp, #0x10]
ldrh r3, [sp, #0x12]
ldr r1, [sp, #0x18]
ldr r2, [sp, #0x14]
bl func_ov61_02145420
cmp r0, #0
addeq sp, sp, #0x9c
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldrb r0, [sp, #0x11]
add r0, r0, #0x14
add r8, r8, r0
add r0, r8, #0x14
cmp r0, r9
bls _02149d20
add sp, sp, #0x9c
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02149cac
_02149db4: .word data_ov61_0217a800
.global func_ov61_02149db8
arm_func_start func_ov61_02149db8
func_ov61_02149db8: ; 0x02149db8
bx lr
arm_func_end func_ov61_02149db8
.global func_ov61_02149dbc
arm_func_start func_ov61_02149dbc
func_ov61_02149dbc: ; 0x02149dbc
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0x1c
mov r5, r0
mov r6, r2
mov r4, r3
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #6
beq _02149df4
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xb
addne sp, sp, #0x1c
ldmneia sp!, {r3, r4, r5, r6, pc}
_02149df4:
cmp r4, #0
addeq sp, sp, #0x1c
ldmeqia sp!, {r3, r4, r5, r6, pc}
cmp r5, #0
bne _02149ff0
mov r0, #0
str r0, [r4, #8]
bl func_ov61_0214a214
ldrb r1, [r0, #0x14]
add r1, r1, #1
strb r1, [r0, #0x14]
bl func_ov61_0214a214
ldrb r1, [r4]
ldrb r5, [r0, #0x14]
cmp r1, #0
beq _02149f88
bl func_ov61_0214a214
ldr r1, [r6, #4]
add r0, r0, r5, lsl #2
str r1, [r0, #0x210]
ldrh r4, [r6, #2]
bl func_ov61_0214a214
mov r2, r4, asr #0x8
mov r1, r4, lsl #0x8
add r0, r0, r5, lsl #1
and r2, r2, #0xff
and r1, r1, #0xff00
orr r1, r2, r1
add r0, r0, #0x200
strh r1, [r0, #0x90]
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x17c]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x180]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x184]
str r1, [r0, #0x188]
bl func_ov61_0214a214
ldr r0, [r0, #0x1a0]
cmp r0, #0xb
bne _02149eb0
mov r0, #0xc
bl func_ov61_0214a224
b _02149eb8
_02149eb0:
mov r0, #7
bl func_ov61_0214a224
_02149eb8:
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0xc]
bl func_ov61_0214a214
ldr r3, [r0, #0x200]
ldr r2, _0214a18c ; =data_ov61_0217a708
add r0, sp, #0x10
mov r1, #0xc
bl func_0200c910
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
mov r6, r0
bl func_ov61_0214a214
add r1, r6, r5, lsl #2
mov r2, r0
ldr r0, [r1, #0x210]
add r1, r2, r5, lsl #1
add r1, r1, #0x200
ldrh r1, [r1, #0x90]
mov r2, #0
bl func_ov61_021769a4
mov r6, r0
bl func_ov61_0214a214
mvn r1, #0
str r1, [sp]
ldr r3, _0214a190 ; =0x00001388
mov r1, #0
str r3, [sp, #4]
ldr r0, [r0, #8]
mov r2, r6
str r0, [sp, #8]
str r1, [sp, #0xc]
ldr r0, [r4, #4]
add r3, sp, #0x10
ldr r0, [r0]
bl func_ov61_02174298
cmp r0, #1
bne _02149f60
bl func_ov61_021491f4
add sp, sp, #0x1c
ldmia sp!, {r3, r4, r5, r6, pc}
_02149f60:
cmp r0, #0
addeq sp, sp, #0x1c
ldmeqia sp!, {r3, r4, r5, r6, pc}
bl func_ov61_0214a214
add r0, r0, r5, lsl #2
ldr r0, [r0, #0xf4]
bl func_ov61_02146de0
add sp, sp, #0x1c
cmp r0, #0
ldmia sp!, {r3, r4, r5, r6, pc}
_02149f88:
cmp r6, #0
beq _02149fcc
sub r5, r5, #1
bl func_ov61_0214a214
ldr r1, [r6, #4]
add r0, r0, r5, lsl #2
str r1, [r0, #0x210]
ldrh r4, [r6, #2]
bl func_ov61_0214a214
mov r2, r4, asr #0x8
mov r1, r4, lsl #0x8
add r0, r0, r5, lsl #1
and r2, r2, #0xff
and r1, r1, #0xff00
orr r1, r2, r1
add r0, r0, #0x200
strh r1, [r0, #0x90]
_02149fcc:
bl func_ov61_0214a214
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0x18c]
mov r0, #7
str r1, [r4, #0x190]
bl func_ov61_0214a224
add sp, sp, #0x1c
ldmia sp!, {r3, r4, r5, r6, pc}
_02149ff0:
ldr r0, [r4, #8]
cmp r0, #0
addeq sp, sp, #0x1c
ldmeqia sp!, {r3, r4, r5, r6, pc}
mov r0, r5
bl func_ov61_021491a4
mov r6, r0
cmp r6, #2
cmpne r6, #1
addne sp, sp, #0x1c
ldmneia sp!, {r3, r4, r5, r6, pc}
ldrb r0, [r4]
cmp r0, #0
bne _0214a0a8
cmp r6, #1
beq _0214a044
cmp r6, #2
bne _0214a084
ldrb r0, [r4, #1]
cmp r0, #1
blo _0214a084
_0214a044:
mov r0, #0
str r0, [r4, #8]
bl func_ov61_0214a194
cmp r0, #0
addeq sp, sp, #0x1c
ldmeqia sp!, {r3, r4, r5, r6, pc}
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
add r0, r4, r0, lsl #2
ldr r0, [r0, #0xf4]
bl func_ov61_02146ffc
add sp, sp, #0x1c
cmp r0, #0
ldmia sp!, {r3, r4, r5, r6, pc}
_0214a084:
ldrb r1, [r4, #1]
mov r0, r4
add r1, r1, #1
strb r1, [r4, #1]
bl func_ov61_02144f60
bl func_ov61_02149148
add sp, sp, #0x1c
cmp r0, #0
ldmia sp!, {r3, r4, r5, r6, pc}
_0214a0a8:
bl func_ov61_0214a214
mov r5, r0
bl func_0200e8f8
str r0, [r5, #0x184]
str r1, [r5, #0x188]
cmp r6, #1
beq _0214a0e4
cmp r6, #2
addne sp, sp, #0x1c
ldmneia sp!, {r3, r4, r5, r6, pc}
bl func_ov61_0214a214
ldrb r0, [r0, #0x17c]
cmp r0, #1
addlo sp, sp, #0x1c
ldmloia sp!, {r3, r4, r5, r6, pc}
_0214a0e4:
mov r0, #0
str r0, [r4, #8]
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
beq _0214a10c
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #2
bne _0214a124
_0214a10c:
mov r0, #1
bl func_ov61_0214a194
cmp r0, #0
bne _0214a138
add sp, sp, #0x1c
ldmia sp!, {r3, r4, r5, r6, pc}
_0214a124:
mov r0, #0
bl func_ov61_0214a194
cmp r0, #0
addeq sp, sp, #0x1c
ldmeqia sp!, {r3, r4, r5, r6, pc}
_0214a138:
bl func_ov61_0214a214
mov r1, #0
strb r1, [r0, #0x17c]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x180]
bl func_ov61_0214a214
mov r1, #0
str r1, [r0, #0x184]
str r1, [r0, #0x188]
bl func_ov61_0214a214
mov r4, r0
bl func_ov61_0214a214
ldrb r0, [r0, #0xd]
add r0, r0, #1
add r0, r4, r0, lsl #2
ldr r0, [r0, #0xf4]
bl func_ov61_02146de0
cmp r0, #0
add sp, sp, #0x1c
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02149dbc
_0214a18c: .word data_ov61_0217a708
_0214a190: .word 0x00001388
.global func_ov61_0214a194
arm_func_start func_ov61_0214a194
func_ov61_0214a194: ; 0x0214a194
stmdb sp!, {r3, lr}
cmp r0, #0
movne r0, #1
ldmneia sp!, {r3, pc}
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
beq _0214a1c4
bl func_ov61_0214a214
ldrb r1, [r0, #0x17d]
add r1, r1, #1
strb r1, [r0, #0x17d]
_0214a1c4:
bl func_ov61_0214a214
ldrb r0, [r0, #0x15]
cmp r0, #3
beq _0214a1e4
bl func_ov61_0214a214
ldrb r0, [r0, #0x17d]
cmp r0, #5
blo _0214a1f8
_0214a1e4:
ldr r1, _0214a200 ; =0xfffeae6c
mov r0, #6
bl func_ov61_02143c14
mov r0, #0
ldmia sp!, {r3, pc}
_0214a1f8:
mov r0, #1
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0214a194
_0214a200: .word 0xfffeae6c
.global func_ov61_0214a204
arm_func_start func_ov61_0214a204
func_ov61_0214a204: ; 0x0214a204
ldr r1, _0214a210 ; =data_ov61_0217ebe8
str r0, [r1, #4]
bx lr
.align 2, 0
arm_func_end func_ov61_0214a204
_0214a210: .word data_ov61_0217ebe8
.global func_ov61_0214a214
arm_func_start func_ov61_0214a214
func_ov61_0214a214: ; 0x0214a214
ldr r0, _0214a220 ; =data_ov61_0217ebe8
ldr r0, [r0, #4]
bx lr
.align 2, 0
arm_func_end func_ov61_0214a214
_0214a220: .word data_ov61_0217ebe8
.global func_ov61_0214a224
arm_func_start func_ov61_0214a224
func_ov61_0214a224: ; 0x0214a224
ldr r1, _0214a234 ; =data_ov61_0217ebe8
ldr r1, [r1, #4]
str r0, [r1, #0x1a0]
bx lr
.align 2, 0
arm_func_end func_ov61_0214a224
_0214a234: .word data_ov61_0217ebe8
.global func_ov61_0214a238
arm_func_start func_ov61_0214a238
func_ov61_0214a238: ; 0x0214a238
ldr ip, _0214a244 ; =func_ov61_0214a248
mov r1, #1
bx ip
.align 2, 0
arm_func_end func_ov61_0214a238
_0214a244: .word func_ov61_0214a248
.global func_ov61_0214a248
arm_func_start func_ov61_0214a248
func_ov61_0214a248: ; 0x0214a248
stmdb sp!, {r3, r4, r5, lr}
mov r4, r0
mov r5, r1
bl func_ov61_0213dfec
cmp r0, #0
bne _0214a288
cmp r5, #1
bne _0214a278
mov r0, r4
bl func_ov61_0213f4ac
cmp r0, #0
beq _0214a288
_0214a278:
mov r0, r4
bl func_ov61_0213f730
cmp r0, #0
bne _0214a290
_0214a288:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_0214a290:
mov r0, r4
bl func_ov61_0214aa1c
cmp r0, #1
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
mov r0, r4
bl func_ov61_0214adf4
mov r4, r0
mov r0, r5
bl func_ov61_0214a6b0
cmp r4, r0
movge r0, #1
movlt r0, #0
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0214a248
.global func_ov61_0214a2c8
arm_func_start func_ov61_0214a2c8
func_ov61_0214a2c8: ; 0x0214a2c8
stmdb sp!, {r3, lr}
mov ip, r1
mov r3, r2
mov r1, r0
mov r2, ip
mov r0, #1
bl func_ov61_0214a2e8
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0214a2c8
.global func_ov61_0214a2e8
arm_func_start func_ov61_0214a2e8
func_ov61_0214a2e8: ; 0x0214a2e8
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #8
mov r7, r1
mov r8, r0
mov r0, r7
mov r6, r2
mov r5, r3
bl func_ov61_0214aa04
mov r4, r0
mov r0, r7
mov r1, r8
bl func_ov61_0214a248
cmp r0, #0
addeq sp, sp, #8
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
mov r0, #1
strb r0, [r4, #0x1c]
str r6, [r4]
mov r0, #0
str r0, [r4, #0xc]
add r0, sp, #0
mov r1, r8
mov r2, r5
str r5, [r4, #0x14]
bl func_ov61_0214a644
add r1, sp, #0
mov r0, r7
mov r2, #8
mov r3, #1
bl func_ov61_0214aa54
ldr r0, _0214a404 ; =data_ov61_0217f350
ldr r0, [r0]
add r0, r0, #0x600
ldrh r9, [r0, #0x10]
mov r0, r7
cmp r5, r9
movle r9, r5
bl func_ov61_0214adf4
cmp r9, r0
addgt sp, sp, #8
movgt r0, #1
ldmgtia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
mov r0, r7
mov r1, r6
mov r2, r9
mov r3, #1
bl func_ov61_0214aa54
ldr r0, [r4, #0xc]
add r1, r0, r9
str r1, [r4, #0xc]
ldr r0, [r4, #0x14]
cmp r1, r0
bne _0214a3f8
mov r2, #0
strb r2, [r4, #0x1c]
str r2, [r4]
str r2, [r4, #0xc]
ldr r1, _0214a404 ; =data_ov61_0217f350
str r2, [r4, #0x14]
ldr r1, [r1]
ldr r2, [r1, #0x600]
cmp r2, #0
beq _0214a3f8
cmp r8, #1
bne _0214a3f8
mov r1, r7
blx r2
_0214a3f8:
mov r0, #1
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_0214a2e8
_0214a404: .word data_ov61_0217f350
.global func_ov61_0214a408
arm_func_start func_ov61_0214a408
func_ov61_0214a408: ; 0x0214a408
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
mov r7, #1
mov r6, r0
mov r5, r1
mov r4, r2
mov r9, #0
mov r8, r7
_0214a424:
cmp r9, #0
movne r10, r8, lsl sb
moveq r10, r7
tst r6, r10
beq _0214a460
bl func_ov61_0213f40c
cmp r9, r0
beq _0214a460
mov r0, r9
mov r1, r5
mov r2, r4
bl func_ov61_0214a2c8
cmp r0, #0
mvneq r0, r10
andeq r6, r6, r0
_0214a460:
add r0, r9, #1
and r9, r0, #0xff
cmp r9, #0x20
blo _0214a424
mov r0, r6
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
arm_func_end func_ov61_0214a408
.global func_ov61_0214a478
arm_func_start func_ov61_0214a478
func_ov61_0214a478: ; 0x0214a478
stmdb sp!, {r4, r5, r6, lr}
mov r5, r0
mov r6, r1
mov r4, r2
bl func_ov61_0213dfec
cmp r0, #0
movne r0, #0
ldmneia sp!, {r4, r5, r6, pc}
mov r0, r5
bl func_ov61_0213f4ac
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
ldr r0, _0214a504 ; =data_ov61_0217f350
ldr r0, [r0]
add r0, r0, #0x600
ldrh r0, [r0, #0x10]
cmp r4, r0
movgt r0, #0
ldmgtia sp!, {r4, r5, r6, pc}
mov r0, r5
mov r1, r6
mov r2, r4
mov r3, #0
bl func_ov61_0214aa54
ldr r0, _0214a504 ; =data_ov61_0217f350
ldr r0, [r0]
ldr r2, [r0, #0x600]
cmp r2, #0
beq _0214a4fc
mov r0, r4
mov r1, r5
blx r2
_0214a4fc:
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0214a478
_0214a504: .word data_ov61_0217f350
.global func_ov61_0214a508
arm_func_start func_ov61_0214a508
func_ov61_0214a508: ; 0x0214a508
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
mov r7, #1
mov r6, r0
mov r5, r1
mov r4, r2
mov r9, #0
mov r8, r7
_0214a524:
cmp r9, #0
movne r10, r8, lsl sb
moveq r10, r7
tst r6, r10
beq _0214a560
bl func_ov61_0213f40c
cmp r9, r0
beq _0214a560
mov r0, r9
mov r1, r5
mov r2, r4
bl func_ov61_0214a478
cmp r0, #0
mvneq r0, r10
andeq r6, r6, r0
_0214a560:
add r0, r9, #1
and r9, r0, #0xff
cmp r9, #0x20
blo _0214a524
mov r0, r6
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
arm_func_end func_ov61_0214a508
.global func_ov61_0214a578
arm_func_start func_ov61_0214a578
func_ov61_0214a578: ; 0x0214a578
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r6, r1
mov r5, r2
bl func_ov61_0214aa04
mov r4, r0
mov r0, r7
bl func_ov61_0214aa38
cmp r0, #2
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
str r6, [r4, #4]
str r5, [r4, #8]
mov r0, #1
strb r0, [r4, #0x1d]
mov r1, #0
str r1, [r4, #0x10]
str r1, [r4, #0x18]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_0214a578
.global func_ov61_0214a5c4
arm_func_start func_ov61_0214a5c4
func_ov61_0214a5c4: ; 0x0214a5c4
ldr r1, _0214a5e0 ; =data_ov61_0217f350
ldr r1, [r1]
cmp r1, #0
moveq r0, #0
strne r0, [r1, #0x600]
movne r0, #1
bx lr
.align 2, 0
arm_func_end func_ov61_0214a5c4
_0214a5e0: .word data_ov61_0217f350
.global func_ov61_0214a5e4
arm_func_start func_ov61_0214a5e4
func_ov61_0214a5e4: ; 0x0214a5e4
ldr r1, _0214a600 ; =data_ov61_0217f350
ldr r1, [r1]
cmp r1, #0
moveq r0, #0
strne r0, [r1, #0x604]
movne r0, #1
bx lr
.align 2, 0
arm_func_end func_ov61_0214a5e4
_0214a600: .word data_ov61_0217f350
.global func_ov61_0214a604
arm_func_start func_ov61_0214a604
func_ov61_0214a604: ; 0x0214a604
ldr r1, _0214a620 ; =data_ov61_0217f350
ldr r1, [r1]
cmp r1, #0
moveq r0, #0
strne r0, [r1, #0x608]
movne r0, #1
bx lr
.align 2, 0
arm_func_end func_ov61_0214a604
_0214a620: .word data_ov61_0217f350
.global func_ov61_0214a624
arm_func_start func_ov61_0214a624
func_ov61_0214a624: ; 0x0214a624
ldr r1, _0214a640 ; =data_ov61_0217f350
ldr r1, [r1]
cmp r1, #0
moveq r0, #0
strne r0, [r1, #0x60c]
movne r0, #1
bx lr
.align 2, 0
arm_func_end func_ov61_0214a624
_0214a640: .word data_ov61_0217f350
.global func_ov61_0214a644
arm_func_start func_ov61_0214a644
func_ov61_0214a644: ; 0x0214a644
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
mov r4, r2
ldr r1, _0214a670 ; =data_ov61_0217a834
add r0, r6, #6
mov r2, #2
bl strncpy
strh r5, [r6, #4]
str r4, [r6]
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0214a644
_0214a670: .word data_ov61_0217a834
.global func_ov61_0214a674
arm_func_start func_ov61_0214a674
func_ov61_0214a674: ; 0x0214a674
stmdb sp!, {r3, lr}
sub sp, sp, #8
add r1, sp, #0
mov r2, #8
bl func_02007ad8
ldr r1, _0214a6ac ; =data_ov61_0217a834
add r0, sp, #6
mov r2, #2
bl func_0204366c
cmp r0, #0
ldreqh r0, [sp, #4]
movne r0, #0
add sp, sp, #8
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0214a674
_0214a6ac: .word data_ov61_0217a834
.global func_ov61_0214a6b0
arm_func_start func_ov61_0214a6b0
func_ov61_0214a6b0: ; 0x0214a6b0
cmp r0, #2
cmpne r0, #3
cmpne r0, #4
bne _0214a6c8
mov r0, #0xc
bx lr
_0214a6c8:
mov r0, #8
bx lr
arm_func_end func_ov61_0214a6b0
.global func_ov61_0214a6d0
arm_func_start func_ov61_0214a6d0
func_ov61_0214a6d0: ; 0x0214a6d0
stmdb sp!, {r4, lr}
ldr r2, _0214a718 ; =data_ov61_0217f350
ldr r3, [r2]
cmp r3, #0
moveq r0, #0
ldmeqia sp!, {r4, pc}
mov r2, #0x30
mul r4, r0, r2
add r0, r3, r4
str r1, [r0, #0x2c]
bl func_0200e8f8
ldr r2, _0214a718 ; =data_ov61_0217f350
ldr r2, [r2]
add r2, r2, r4
str r0, [r2, #0x24]
str r1, [r2, #0x28]
mov r0, #1
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214a6d0
_0214a718: .word data_ov61_0217f350
.global func_ov61_0214a71c
arm_func_start func_ov61_0214a71c
func_ov61_0214a71c: ; 0x0214a71c
stmdb sp!, {r3, lr}
ldr r3, _0214a74c ; =data_ov61_0217f350
ldr r2, _0214a750 ; =0x00000614
mov r1, #0
str r0, [r3]
bl func_02007a44
ldr r0, _0214a74c ; =data_ov61_0217f350
ldr r1, _0214a754 ; =0x000005b9
ldr r0, [r0]
add r0, r0, #0x600
strh r1, [r0, #0x10]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0214a71c
_0214a74c: .word data_ov61_0217f350
_0214a750: .word 0x00000614
_0214a754: .word 0x000005b9
.global func_ov61_0214a758
arm_func_start func_ov61_0214a758
func_ov61_0214a758: ; 0x0214a758
stmdb sp!, {r3, lr}
ldr ip, _0214a790 ; =data_ov61_0217f350
ldr ip, [ip]
cmp ip, #0
ldmeqia sp!, {r3, pc}
cmp r1, #0
cmpne r2, #0
ldmeqia sp!, {r3, pc}
cmp r3, #0
beq _0214a788
bl func_ov61_0214aa7c
ldmia sp!, {r3, pc}
_0214a788:
bl func_ov61_0214ab70
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0214a758
_0214a790: .word data_ov61_0217f350
.global func_ov61_0214a794
arm_func_start func_ov61_0214a794
func_ov61_0214a794: ; 0x0214a794
stmdb sp!, {r4, lr}
ldr r2, _0214a7d0 ; =data_ov61_0217f350
mov r4, r1
ldr r1, [r2]
ldr r1, [r1, #0x60c]
cmp r1, #0
ldmeqia sp!, {r4, pc}
bl func_ov61_0213f62c
ldr r2, _0214a7d0 ; =data_ov61_0217f350
mov r1, r0
ldr r2, [r2]
mov r0, r4
ldr r2, [r2, #0x60c]
blx r2
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214a794
_0214a7d0: .word data_ov61_0217f350
.global func_ov61_0214a7d4
arm_func_start func_ov61_0214a7d4
func_ov61_0214a7d4: ; 0x0214a7d4
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
ldr r0, _0214a960 ; =data_ov61_0217f350
ldr r0, [r0]
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
add r0, sp, #0
bl func_ov61_0213f428
mov r7, r0
mov r8, #0
cmp r7, #0
ldmleia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r4, _0214a960 ; =data_ov61_0217f350
mov r11, r8
_0214a808:
ldr r0, [sp]
ldrb r9, [r0, r8]
mov r0, r9
bl func_ov61_0213f4ac
cmp r0, #0
beq _0214a89c
mov r0, r9
bl func_ov61_0214aa04
ldr r1, [r4]
mov r6, r0
ldr r0, [r1, #0x608]
cmp r0, #0
ldrne r0, [r6, #0x2c]
cmpne r0, #0
beq _0214a89c
bl func_0200e8f8
mov r10, r1
ldr r2, [r6, #0x24]
mov r5, r0
subs r2, r5, r2
ldr r1, [r6, #0x28]
mov r0, r2, lsl #0x6
sbc r1, r10, r1
mov r1, r1, lsl #0x6
orr r1, r1, r2, lsr #26
ldr r2, _0214a964 ; =0x000082ea
mov r3, #0
bl func_02002bac
ldr r1, [r6, #0x2c]
cmp r0, r1
bls _0214a89c
ldr r1, [r4]
mov r0, r9
ldr r1, [r1, #0x608]
blx r1
str r5, [r6, #0x24]
str r10, [r6, #0x28]
_0214a89c:
bl func_ov61_0213f40c
cmp r9, r0
beq _0214a950
mov r0, r9
bl func_ov61_0214aa1c
cmp r0, #1
bne _0214a950
mov r0, r9
bl func_ov61_0214aa04
mov r5, r0
ldr r0, [r4]
ldr r2, [r5, #0x14]
add r0, r0, #0x600
ldr r1, [r5, #0xc]
ldrh r6, [r0, #0x10]
sub r0, r2, r1
cmp r0, r6
movle r6, r0
mov r0, r9
bl func_ov61_0214adf4
cmp r0, r6
blt _0214a950
ldr r3, [r5]
ldr r1, [r5, #0xc]
mov r0, r9
add r1, r3, r1
mov r2, r6
mov r3, #1
bl func_ov61_0214aa54
ldr r0, [r5, #0xc]
add r1, r0, r6
str r1, [r5, #0xc]
ldr r0, [r5, #0x14]
cmp r1, r0
bne _0214a950
strb r11, [r5, #0x1c]
str r11, [r5]
str r11, [r5, #0xc]
str r11, [r5, #0x14]
ldr r1, [r4]
ldr r2, [r1, #0x600]
cmp r2, #0
beq _0214a950
mov r1, r9
blx r2
_0214a950:
add r8, r8, #1
cmp r8, r7
blt _0214a808
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0214a7d4
_0214a960: .word data_ov61_0217f350
_0214a964: .word 0x000082ea
.global func_ov61_0214a968
arm_func_start func_ov61_0214a968
func_ov61_0214a968: ; 0x0214a968
ldr r2, _0214a9ec ; =data_ov61_0217f350
ldr r3, [r2]
cmp r3, #0
bxeq lr
mov r1, #0x30
mul r1, r0, r1
add r0, r3, r1
mov r3, #0
str r3, [r0, #0xc]
ldr r0, [r2]
add r0, r0, r1
str r3, [r0, #0x10]
ldr r0, [r2]
add r0, r0, r1
str r3, [r0, #0x14]
ldr r0, [r2]
add r0, r0, r1
str r3, [r0, #0x18]
ldr r0, [r2]
add r0, r0, r1
strb r3, [r0, #0x1c]
ldr r0, [r2]
add r2, r0, #0x1d
ldrb r0, [r2, r1]
cmp r0, #0
movne r0, #1
strneb r0, [r2, r1]
ldr r0, _0214a9ec ; =data_ov61_0217f350
mov r2, #0
ldr r0, [r0]
add r0, r0, r1
strh r2, [r0, #0x22]
bx lr
.align 2, 0
arm_func_end func_ov61_0214a968
_0214a9ec: .word data_ov61_0217f350
.global func_ov61_0214a9f0
arm_func_start func_ov61_0214a9f0
func_ov61_0214a9f0: ; 0x0214a9f0
ldr r0, _0214aa00 ; =data_ov61_0217f350
mov r1, #0
str r1, [r0]
bx lr
.align 2, 0
arm_func_end func_ov61_0214a9f0
_0214aa00: .word data_ov61_0217f350
.global func_ov61_0214aa04
arm_func_start func_ov61_0214aa04
func_ov61_0214aa04: ; 0x0214aa04
ldr r2, _0214aa18 ; =data_ov61_0217f350
mov r1, #0x30
ldr r2, [r2]
mla r0, r1, r0, r2
bx lr
.align 2, 0
arm_func_end func_ov61_0214aa04
_0214aa18: .word data_ov61_0217f350
.global func_ov61_0214aa1c
arm_func_start func_ov61_0214aa1c
func_ov61_0214aa1c: ; 0x0214aa1c
ldr r2, _0214aa34 ; =data_ov61_0217f350
mov r1, #0x30
ldr r2, [r2]
mla r1, r0, r1, r2
ldrb r0, [r1, #0x1c]
bx lr
.align 2, 0
arm_func_end func_ov61_0214aa1c
_0214aa34: .word data_ov61_0217f350
.global func_ov61_0214aa38
arm_func_start func_ov61_0214aa38
func_ov61_0214aa38: ; 0x0214aa38
ldr r2, _0214aa50 ; =data_ov61_0217f350
mov r1, #0x30
ldr r2, [r2]
mla r1, r0, r1, r2
ldrb r0, [r1, #0x1d]
bx lr
.align 2, 0
arm_func_end func_ov61_0214aa38
_0214aa50: .word data_ov61_0217f350
.global func_ov61_0214aa54
arm_func_start func_ov61_0214aa54
func_ov61_0214aa54: ; 0x0214aa54
stmdb sp!, {r4, r5, r6, lr}
mov r6, r1
mov r5, r2
mov r4, r3
bl func_ov61_0213f5c8
mov r1, r6
mov r2, r5
mov r3, r4
bl func_ov61_02174414
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0214aa54
.global func_ov61_0214aa7c
arm_func_start func_ov61_0214aa7c
func_ov61_0214aa7c: ; 0x0214aa7c
stmdb sp!, {r4, r5, r6, lr}
mov r6, r1
mov r5, r2
bl func_ov61_0213f62c
mov r4, r0
bl func_ov61_0214aa38
cmp r0, #4
addls pc, pc, r0, lsl #2
b _0214ab58
_0214aaa0: ; jump table
b _0214aab4 ; case 0
b _0214aae0 ; case 1
b _0214aaf4 ; case 2
b _0214ab08 ; case 3
b _0214ab1c ; case 4
_0214aab4:
mov r0, r6
bl func_ov61_0214a674
cmp r0, #2
ldmloia sp!, {r4, r5, r6, pc}
cmp r0, #4
ldmhiia sp!, {r4, r5, r6, pc}
mov r0, r4
mov r1, r6
mov r2, r5
bl func_ov61_0214ac0c
ldmia sp!, {r4, r5, r6, pc}
_0214aae0:
mov r0, r4
mov r1, r6
mov r2, r5
bl func_ov61_0214ac0c
ldmia sp!, {r4, r5, r6, pc}
_0214aaf4:
mov r0, r4
mov r1, r6
mov r2, r5
bl func_ov61_0214acd4
ldmia sp!, {r4, r5, r6, pc}
_0214ab08:
mov r0, r4
mov r1, r6
mov r2, r5
bl func_ov61_0214adb8
ldmia sp!, {r4, r5, r6, pc}
_0214ab1c:
mov r0, #0x30
mul ip, r4, r0
ldr r0, _0214ab68 ; =data_ov61_0217f350
mov r3, #1
ldr r1, [r0]
mov r2, #0
add r1, r1, ip
strb r3, [r1, #0x1d]
ldr r1, [r0]
add r1, r1, ip
str r2, [r1, #0x10]
ldr r0, [r0]
add r0, r0, ip
str r2, [r0, #0x18]
ldmia sp!, {r4, r5, r6, pc}
_0214ab58:
ldr r1, _0214ab6c ; =0xfffe82b6
mov r0, #6
bl func_ov61_0213e008
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0214aa7c
_0214ab68: .word data_ov61_0217f350
_0214ab6c: .word 0xfffe82b6
.global func_ov61_0214ab70
arm_func_start func_ov61_0214ab70
func_ov61_0214ab70: ; 0x0214ab70
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r1
mov r6, r2
bl func_ov61_0213f62c
ldr r1, _0214ac08 ; =data_ov61_0217f350
mov r4, r0
ldr r1, [r1]
mov r0, #0x30
mla r5, r4, r0, r1
ldr r1, [r5, #4]
cmp r1, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, [r5, #8]
cmp r0, r6
ldmltia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, r7
mov r2, r6
bl func_02007ad8
ldr r0, _0214ac08 ; =data_ov61_0217f350
ldr r0, [r0]
ldr r3, [r0, #0x604]
cmp r3, #0
beq _0214abdc
ldr r1, [r5, #4]
mov r0, r4
mov r2, r6
blx r3
_0214abdc:
ldr r0, _0214ac08 ; =data_ov61_0217f350
ldr r0, [r0]
ldr r0, [r0, #0x608]
cmp r0, #0
ldrne r0, [r5, #0x2c]
cmpne r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
bl func_0200e8f8
str r0, [r5, #0x24]
str r1, [r5, #0x28]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0214ab70
_0214ac08: .word data_ov61_0217f350
.global func_ov61_0214ac0c
arm_func_start func_ov61_0214ac0c
func_ov61_0214ac0c: ; 0x0214ac0c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #8
ldr r4, _0214acd0 ; =data_ov61_0217f350
mov r3, #0x30
ldr r4, [r4]
mov r7, r1
mla r4, r0, r3, r4
mov r6, r2
bl func_ov61_0214aa38
strb r0, [r4, #0x1e]
mov r0, r7
bl func_ov61_0214a674
mov r5, r0
cmp r5, #4
addls pc, pc, r5, lsl #2
b _0214acc4
_0214ac4c: ; jump table
b _0214acc4 ; case 0
b _0214ac60 ; case 1
b _0214acbc ; case 2
b _0214acbc ; case 3
b _0214acbc ; case 4
_0214ac60:
cmp r6, #8
addne sp, sp, #8
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
add r1, sp, #0
mov r0, r7
mov r2, #8
bl func_02007ad8
ldr r1, [sp]
mov r0, #0
str r1, [r4, #0x18]
str r0, [r4, #0x10]
ldr r0, [r4, #4]
cmp r0, #0
beq _0214acb0
ldr r1, [r4, #8]
ldr r0, [r4, #0x18]
cmp r1, r0
movge r0, #2
strgeb r0, [r4, #0x1d]
bge _0214acc4
_0214acb0:
mov r0, #4
strb r0, [r4, #0x1d]
b _0214acc4
_0214acbc:
mov r0, #3
strb r0, [r4, #0x1d]
_0214acc4:
strh r5, [r4, #0x22]
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0214ac0c
_0214acd0: .word data_ov61_0217f350
.global func_ov61_0214acd4
arm_func_start func_ov61_0214acd4
func_ov61_0214acd4: ; 0x0214acd4
stmdb sp!, {r3, r4, r5, r6, r7, lr}
ldr r3, _0214adb0 ; =data_ov61_0217f350
mov r7, r0
ldr r4, [r3]
mov r3, #0x30
mla r4, r7, r3, r4
mov r6, r1
mov r5, r2
bl func_ov61_0214aa38
cmp r0, #2
bne _0214ad38
ldr r3, [r4, #0x10]
ldr r0, [r4, #8]
add r1, r3, r5
cmp r1, r0
ble _0214ad24
ldr r1, _0214adb4 ; =0xfffe82ac
mov r0, #6
bl func_ov61_0213e008
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0214ad24:
ldr r1, [r4, #4]
mov r0, r6
mov r2, r5
add r1, r1, r3
bl func_02007ad8
_0214ad38:
ldr r0, [r4, #0x10]
add r0, r0, r5
str r0, [r4, #0x10]
ldr r2, [r4, #0x18]
cmp r0, r2
bne _0214ad84
mov r0, #1
strb r0, [r4, #0x1d]
mov r1, #0
str r1, [r4, #0x10]
ldr r0, _0214adb0 ; =data_ov61_0217f350
str r1, [r4, #0x18]
ldr r0, [r0]
ldr r3, [r0, #0x604]
cmp r3, #0
beq _0214ad84
ldr r1, [r4, #4]
mov r0, r7
blx r3
_0214ad84:
ldr r0, _0214adb0 ; =data_ov61_0217f350
ldr r0, [r0]
ldr r0, [r0, #0x608]
cmp r0, #0
ldrne r0, [r4, #0x2c]
cmpne r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
bl func_0200e8f8
str r0, [r4, #0x24]
str r1, [r4, #0x28]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0214acd4
_0214adb0: .word data_ov61_0217f350
_0214adb4: .word 0xfffe82ac
.global func_ov61_0214adb8
arm_func_start func_ov61_0214adb8
func_ov61_0214adb8: ; 0x0214adb8
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
bl func_ov61_0214aa04
ldrb r1, [r0, #0x1e]
strb r1, [r0, #0x1d]
ldrh r1, [r0, #0x22]
cmp r1, #2
cmpne r1, #3
cmpne r1, #4
ldmneia sp!, {r3, r4, r5, pc}
mov r0, r5
mov r2, r4
bl func_ov61_02143d0c
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0214adb8
.global func_ov61_0214adf4
arm_func_start func_ov61_0214adf4
func_ov61_0214adf4: ; 0x0214adf4
stmdb sp!, {r3, lr}
bl func_ov61_0213f5c8
bl func_ov61_02174504
ldr r1, _0214ae14 ; =0xfffffdf9
add r0, r0, r1
cmp r0, #0
movle r0, #0
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0214adf4
_0214ae14: .word 0xfffffdf9
.global func_ov61_0214ae18
arm_func_start func_ov61_0214ae18
func_ov61_0214ae18: ; 0x0214ae18
stmdb sp!, {r4, lr}
mov r4, r0
ldr r2, [r4]
mov r0, #1
mov r1, #0x18
blx r2
mov r1, r0
ldr r3, _0214afb8 ; =data_ov61_0217f354
mov r0, #0
mov r2, #0x18
str r1, [r3, #0x10]
bl func_020078f4
ldr r0, _0214afb8 ; =data_ov61_0217f354
ldr r1, [r4]
ldr r3, [r0, #0x10]
mov r2, #1
str r1, [r3]
ldr r0, [r4, #4]
ldr r1, _0214afbc ; =0x00000d18
str r0, [r3, #4]
strb r2, [r3, #9]
strb r2, [r3, #0x16]
mov r0, #0x10
strb r2, [r3, #8]
bl func_ov61_0214b1a8
ldr r2, _0214afb8 ; =data_ov61_0217f354
mov r1, #0x2300
str r0, [r2]
mov r0, #2
bl func_ov61_0214b1a8
ldr r2, _0214afb8 ; =data_ov61_0217f354
mov r1, #0x58
str r0, [r2, #4]
mov r0, #4
bl func_ov61_0214b1a8
ldr r2, _0214afb8 ; =data_ov61_0217f354
mov r1, #0xc
str r0, [r2, #8]
mov r0, #8
bl func_ov61_0214b1a8
ldr r1, _0214afb8 ; =data_ov61_0217f354
ldr r2, _0214afbc ; =0x00000d18
str r0, [r1, #0xc]
ldr r1, [r1]
mov r0, #0
bl func_020078f4
mov r0, #0
ldr r1, _0214afb8 ; =data_ov61_0217f354
mov r2, #0x2300
ldr r1, [r1, #4]
bl func_020078f4
mov r0, #0
ldr r1, _0214afb8 ; =data_ov61_0217f354
mov r2, #0x58
ldr r1, [r1, #8]
bl func_020078f4
mov r0, #0
ldr r1, _0214afb8 ; =data_ov61_0217f354
mov r2, #0xc
ldr r1, [r1, #0xc]
bl func_020078f4
ldr r1, _0214afb8 ; =data_ov61_0217f354
ldrb r2, [r4, #8]
ldr r0, [r1]
strb r2, [r0, #0xd0a]
ldrb r3, [r0, #0xd0b]
ldrb r2, [r4, #9]
bic r3, r3, #3
and r2, r2, #3
orr r2, r3, r2
strb r2, [r0, #0xd0b]
ldr r3, [r1, #0xc]
ldr r2, [r4]
mov r1, #0
str r2, [r3]
ldr r2, [r4, #4]
str r2, [r3, #4]
str r1, [r3, #8]
ldrb r2, [r0, #0xd0c]
ldrb r1, [r4, #0xa]
bic r2, r2, #0xf
and r1, r1, #0xf
orr r2, r2, r1
strb r2, [r0, #0xd0c]
ldrb r1, [r4, #0xb]
and r2, r2, #0xff
bic r2, r2, #0x30
mov r1, r1, lsl #0x1e
orr r1, r2, r1, lsr #26
strb r1, [r0, #0xd0c]
blx func_ov00_02077ad8
ldr r0, _0214afb8 ; =data_ov61_0217f354
mov r1, #0x2300
ldr r0, [r0, #4]
bl func_ov61_0215e998
cmp r0, #1
beq _0214afa4
cmp r0, #4
blt _0214afb0
_0214afa4:
bl func_ov61_0214b230
mov r0, #0
ldmia sp!, {r4, pc}
_0214afb0:
mov r0, #1
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214ae18
_0214afb8: .word data_ov61_0217f354
_0214afbc: .word 0x00000d18
.global func_ov61_0214afc0
arm_func_start func_ov61_0214afc0
func_ov61_0214afc0: ; 0x0214afc0
stmdb sp!, {r3, r4, r5, lr}
bl func_ov61_0214b3f8
mov r5, r0
cmp r5, #1
bne _0214afe0
bl func_ov61_0214d0bc
mov r5, r0
b _0214b054
_0214afe0:
cmp r5, #7
bhs _0214b008
bl func_0200ee4c
mov r4, r0
bl func_ov61_0214c8ec
mov r5, r0
bl func_ov61_0214b398
mov r0, r4
bl func_0200ee60
b _0214b054
_0214b008:
cmp r5, #9
bhs _0214b01c
bl func_ov61_0214bb50
mov r5, r0
b _0214b054
_0214b01c:
cmp r5, #0xa
bhs _0214b030
bl func_ov61_0214c810
mov r5, r0
b _0214b054
_0214b030:
cmp r5, #0x10
bhs _0214b044
bl func_ov61_0214d144
mov r5, r0
b _0214b054
_0214b044:
cmp r5, #0x11
bne _0214b054
bl func_ov61_0214c1d8
mov r5, r0
_0214b054:
mov r0, r5
bl func_ov61_0214b398
cmp r5, #0x10
bne _0214b078
bl func_ov61_0214b4a8
mov r4, r0
bl func_ov61_0214b470
mov r0, r4
ldmia sp!, {r3, r4, r5, pc}
_0214b078:
cmp r5, #0x12
movne r0, #0
ldmneia sp!, {r3, r4, r5, pc}
bl func_ov61_0214b470
mvn r0, #0
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0214afc0
.global func_ov61_0214b090
arm_func_start func_ov61_0214b090
func_ov61_0214b090: ; 0x0214b090
stmdb sp!, {r3, lr}
bl func_ov61_0214b3f8
cmp r0, #1
movls r0, #0
ldmlsia sp!, {r3, pc}
cmp r0, #7
movlo r0, #1
ldmloia sp!, {r3, pc}
cmp r0, #9
moveq r0, #4
ldmeqia sp!, {r3, pc}
cmp r0, #0xa
movlo r0, #2
ldmloia sp!, {r3, pc}
cmp r0, #0xb
moveq r0, #4
ldmeqia sp!, {r3, pc}
cmp r0, #0x10
movlo r0, #3
ldmloia sp!, {r3, pc}
moveq r0, #5
ldmeqia sp!, {r3, pc}
cmp r0, #0x11
moveq r0, #4
ldmeqia sp!, {r3, pc}
bl func_ov61_0214c1fc
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0214b090
.global func_ov61_0214b0fc
arm_func_start func_ov61_0214b0fc
func_ov61_0214b0fc: ; 0x0214b0fc
stmdb sp!, {r4, lr}
ldr r0, _0214b13c ; =data_ov61_0217f354
mov r4, #0xff
ldr r0, [r0, #0x10]
cmp r0, #0
moveq r0, r4
ldmeqia sp!, {r4, pc}
bl func_ov61_0214b3f8
cmp r0, #0xa
blo _0214b134
cmp r0, #0x10
ldrls r0, _0214b13c ; =data_ov61_0217f354
ldrls r0, [r0, #0x10]
ldrlsb r4, [r0, #0x17]
_0214b134:
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214b0fc
_0214b13c: .word data_ov61_0217f354
.global func_ov61_0214b140
arm_func_start func_ov61_0214b140
func_ov61_0214b140: ; 0x0214b140
stmdb sp!, {r3, lr}
bl func_ov61_0214b3f8
strb r0, [sp]
ands r0, r0, #0xff
cmpne r0, #0x12
bne _0214b164
bl func_ov61_0214b230
mov r0, #1
ldmia sp!, {r3, pc}
_0214b164:
add r0, sp, #0
bl func_ov61_0214c090
ldrb r0, [sp]
bl func_ov61_0214b398
mov r0, #0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0214b140
.global func_ov61_0214b17c
arm_func_start func_ov61_0214b17c
func_ov61_0214b17c: ; 0x0214b17c
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r0, #0x10
mov r4, r1
bl func_ov61_0214b340
mov r1, r0
mov r0, r4
add r1, r1, r5, lsl #8
mov r2, #0xf0
bl func_02007908
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0214b17c
.global func_ov61_0214b1a8
arm_func_start func_ov61_0214b1a8
func_ov61_0214b1a8: ; 0x0214b1a8
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r0, #1
mov r4, r1
bl func_ov61_0214b340
ldrb r1, [r0, #8]
tst r1, r5
movne r0, #0
ldmneia sp!, {r3, r4, r5, pc}
orr r1, r1, r5
strb r1, [r0, #8]
ldr r2, [r0]
mov r0, r5
mov r1, r4
blx r2
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0214b1a8
.global func_ov61_0214b1e8
arm_func_start func_ov61_0214b1e8
func_ov61_0214b1e8: ; 0x0214b1e8
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r0, #1
mov r5, r1
mov r4, r2
bl func_ov61_0214b340
ldrb r2, [r0, #8]
tst r2, r6
ldmeqia sp!, {r4, r5, r6, pc}
mvn r1, r6
and r1, r2, r1
strb r1, [r0, #8]
ldr r3, [r0, #4]
mov r0, r6
mov r1, r5
mov r2, r4
blx r3
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0214b1e8
.global func_ov61_0214b230
arm_func_start func_ov61_0214b230
func_ov61_0214b230: ; 0x0214b230
stmdb sp!, {r4, lr}
mov r0, #1
bl func_ov61_0214b340
mov r4, r0
ldrb r0, [r4, #8]
tst r0, #0x10
beq _0214b274
mov r0, #0x10
bl func_ov61_0214b340
ldrb r3, [r4, #8]
mov r1, r0
ldr r2, _0214b33c ; =0x00000d18
bic r0, r3, #0x10
strb r0, [r4, #8]
ldr r3, [r4, #4]
mov r0, #0x10
blx r3
_0214b274:
ldrb r0, [r4, #8]
tst r0, #8
beq _0214b2a8
mov r0, #8
bl func_ov61_0214b340
ldrb r2, [r4, #8]
mov r1, r0
mov r0, #8
bic r2, r2, #8
strb r2, [r4, #8]
ldr r3, [r4, #4]
mov r2, #0xc
blx r3
_0214b2a8:
ldrb r0, [r4, #8]
tst r0, #4
beq _0214b2dc
mov r0, #4
bl func_ov61_0214b340
ldrb r2, [r4, #8]
mov r1, r0
mov r0, #4
bic r2, r2, #4
strb r2, [r4, #8]
ldr r3, [r4, #4]
mov r2, #0x58
blx r3
_0214b2dc:
ldrb r0, [r4, #8]
tst r0, #2
beq _0214b310
mov r0, #2
bl func_ov61_0214b340
ldrb r2, [r4, #8]
mov r1, r0
mov r0, #2
bic r2, r2, #2
strb r2, [r4, #8]
ldr r3, [r4, #4]
mov r2, #0x2300
blx r3
_0214b310:
ldrb r0, [r4, #8]
tst r0, #1
ldmeqia sp!, {r4, pc}
bic r0, r0, #1
strb r0, [r4, #8]
ldr r3, [r4, #4]
mov r1, r4
mov r0, #1
mov r2, #0x18
blx r3
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214b230
_0214b33c: .word 0x00000d18
.global func_ov61_0214b340
arm_func_start func_ov61_0214b340
func_ov61_0214b340: ; 0x0214b340
tst r0, #1
ldrne r0, _0214b394 ; =data_ov61_0217f354
ldrne r0, [r0, #0x10]
bxne lr
tst r0, #2
ldrne r0, _0214b394 ; =data_ov61_0217f354
ldrne r0, [r0, #4]
bxne lr
tst r0, #4
ldrne r0, _0214b394 ; =data_ov61_0217f354
ldrne r0, [r0, #8]
bxne lr
tst r0, #8
ldrne r0, _0214b394 ; =data_ov61_0217f354
ldrne r0, [r0, #0xc]
bxne lr
tst r0, #0x10
ldrne r0, _0214b394 ; =data_ov61_0217f354
ldrne r0, [r0]
moveq r0, #0
bx lr
.align 2, 0
arm_func_end func_ov61_0214b340
_0214b394: .word data_ov61_0217f354
.global func_ov61_0214b398
arm_func_start func_ov61_0214b398
func_ov61_0214b398: ; 0x0214b398
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r0, #1
bl func_ov61_0214b340
mov r5, r0
mov r0, #0x10
bl func_ov61_0214b340
mov r4, r0
strb r6, [r5, #9]
cmp r6, #0x10
ldmhsia sp!, {r4, r5, r6, pc}
ldrb r0, [r5, #0x16]
cmp r6, r0
strhib r6, [r5, #0x16]
cmphi r6, #7
ldmlsia sp!, {r4, r5, r6, pc}
ldrb r0, [r4, #0xd0d]
bl func_ov61_0214b460
strb r0, [r5, #0x15]
ldrb r0, [r4, #0xd13]
add r0, r4, r0, lsl #2
ldrb r0, [r0, #0x444]
strb r0, [r5, #0x14]
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0214b398
.global func_ov61_0214b3f8
arm_func_start func_ov61_0214b3f8
func_ov61_0214b3f8: ; 0x0214b3f8
ldr r0, _0214b408 ; =data_ov61_0217f354
ldr r0, [r0, #0x10]
ldrb r0, [r0, #9]
bx lr
.align 2, 0
arm_func_end func_ov61_0214b3f8
_0214b408: .word data_ov61_0217f354
.global func_ov61_0214b40c
arm_func_start func_ov61_0214b40c
func_ov61_0214b40c: ; 0x0214b40c
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r0, #1
bl func_ov61_0214b340
mov r4, r0
str r5, [r4, #0xc]
bl func_ov61_0214b3f8
strb r0, [r4, #0xa]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0214b40c
.global func_ov61_0214b430
arm_func_start func_ov61_0214b430
func_ov61_0214b430: ; 0x0214b430
ldr r0, _0214b440 ; =data_ov61_0217f354
ldr r0, [r0, #0x10]
ldr r0, [r0, #0xc]
bx lr
.align 2, 0
arm_func_end func_ov61_0214b430
_0214b440: .word data_ov61_0217f354
.global func_ov61_0214b444
arm_func_start func_ov61_0214b444
func_ov61_0214b444: ; 0x0214b444
stmdb sp!, {r3, lr}
bl func_ov61_0214b460
ldr r1, _0214b45c ; =data_ov61_0217f354
ldr r1, [r1, #0x10]
strb r0, [r1, #0x17]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0214b444
_0214b45c: .word data_ov61_0217f354
.global func_ov61_0214b460
arm_func_start func_ov61_0214b460
func_ov61_0214b460: ; 0x0214b460
cmp r0, #2
subhi r0, r0, #3
andhi r0, r0, #0xff
bx lr
arm_func_end func_ov61_0214b460
.global func_ov61_0214b470
arm_func_start func_ov61_0214b470
func_ov61_0214b470: ; 0x0214b470
stmdb sp!, {r3, lr}
ldr r1, _0214b4a0 ; =data_ov61_0217f354
mov r0, #8
ldr r1, [r1, #0xc]
mov r2, #0xc
bl func_ov61_0214b1e8
ldr r0, _0214b4a0 ; =data_ov61_0217f354
ldr r2, _0214b4a4 ; =0x00000d18
ldr r1, [r0]
mov r0, #0x10
bl func_ov61_0214b1e8
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0214b470
_0214b4a0: .word data_ov61_0217f354
_0214b4a4: .word 0x00000d18
.global func_ov61_0214b4a8
arm_func_start func_ov61_0214b4a8
func_ov61_0214b4a8: ; 0x0214b4a8
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
ldr r0, _0214b544 ; =data_ov61_0217f354
mov r1, #0xc0
ldr r8, [r0]
ldrb r7, [r8, #0xd13]
ldrb r2, [r8, #0xd0d]
add r0, r8, #0x74
smulbb r4, r7, r1
add r5, r0, #0x400
cmp r2, #6
movhs r0, #1
ldmhsia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
ldrb r9, [r8, #0xd12]
mov r6, #0
cmp r9, #0
bls _0214b53c
mov r10, r1
_0214b4ec:
cmp r6, r7
beq _0214b52c
add r0, r8, r6, lsl #2
ldrb r0, [r0, #0x445]
cmp r0, #6
bhs _0214b52c
mul r1, r6, r10
add r0, r8, r1
add r0, r0, #0x400
ldrh r2, [r0, #0x7a]
add r0, r5, r4
add r1, r5, r1
bl strncmp
cmp r0, #0
moveq r0, #2
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_0214b52c:
add r0, r6, #1
and r6, r0, #0xff
cmp r6, r9
blo _0214b4ec
_0214b53c:
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
.align 2, 0
arm_func_end func_ov61_0214b4a8
_0214b544: .word data_ov61_0217f354
.global func_ov61_0214b548
arm_func_start func_ov61_0214b548
func_ov61_0214b548: ; 0x0214b548
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r0, #0x10
mvn r4, #0
bl func_ov61_0214b340
mov r6, r0
mov r0, #1
bl func_ov61_0214b340
mov r1, #1
strb r1, [r0, #0xb]
bl func_ov61_0214b3f8
cmp r0, #3
beq _0214b590
cmp r0, #4
beq _0214b5f8
cmp r0, #5
beq _0214b644
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0214b590:
ldrh r1, [r7, #0xa]
ldrb r5, [r6, #0xd11]
cmp r1, #0
ldrneb r0, [r7, #0xc]
cmpne r0, #0
bne _0214b5b4
ldrh r0, [r7, #0x36]
bl func_ov61_0214c9b0
b _0214b68c
_0214b5b4:
cmp r1, #1
cmpne r0, #0x20
bne _0214b5e0
ldrh r0, [r7, #0x36]
bl func_ov61_0214c9b0
ldrb r1, [r6, #0xd10]
mov r0, r7
add r2, r6, #0x300
bl func_ov61_0214b748
mov r4, r0
b _0214b68c
_0214b5e0:
ldrb r1, [r6, #0xd10]
mov r0, r7
add r2, r6, #0x300
bl func_ov61_0214b748
mov r4, r0
b _0214b68c
_0214b5f8:
ldrb r2, [r6, #0xd0f]
mov r1, #0xc0
mov r0, r7
mla r1, r2, r1, r6
add r1, r1, #0x400
ldrh r2, [r1, #0xa6]
mov r1, r6
sub r2, r2, #1
and r5, r2, #0xff
bl func_ov61_0214b7c4
movs r4, r0
bmi _0214b68c
ldrb r1, [r6, #0xd0f]
add r0, r6, #0x47
add r2, r0, #0x400
ldrb r0, [r2, r1, lsl #2]
orr r0, r0, #0x80
strb r0, [r2, r1, lsl #2]
b _0214b68c
_0214b644:
ldrb r1, [r6, #0xd0f]
add r2, r6, #0x300
mov r0, #0x24
mla r2, r1, r0, r2
mov r0, r7
mov r1, #1
ldrb r5, [r6, #0xd11]
bl func_ov61_0214b748
movs r4, r0
bmi _0214b68c
ldrb r1, [r6, #0xd0f]
mov r0, #0x24
add r2, r6, #0x300
smulbb r1, r1, r0
ldrb r0, [r2, r1]
bic r0, r0, #0xf
orr r0, r0, #1
strb r0, [r2, r1]
_0214b68c:
cmp r4, #0
ldmltia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, r4
mov r1, r7
mov r2, r5
mov r3, r6
bl func_ov61_0214b854
mov r1, r6
bl func_ov61_0214b9d4
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_0214b548
.global func_ov61_0214b6b4
arm_func_start func_ov61_0214b6b4
func_ov61_0214b6b4: ; 0x0214b6b4
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r0, #0x10
bl func_ov61_0214b340
mov r4, r0
ldrb r0, [r4, #0xd0c]
mov r0, r0, lsl #0x1c
movs r0, r0, lsr #0x1c
cmpne r0, #4
bne _0214b704
ldrh r0, [r5, #0x2c]
mov r0, r0, asr #0x4
and r0, r0, #1
cmp r0, #1
bne _0214b704
add r0, r5, #0xc
bl func_ov61_0214d6ac
cmp r0, #1
moveq r0, #6
ldmeqia sp!, {r3, r4, r5, pc}
_0214b704:
ldrb r0, [r4, #0xd0c]
mov r0, r0, lsl #0x1c
movs r0, r0, lsr #0x1c
cmpne r0, #5
bne _0214b740
ldrh r0, [r5, #0x2c]
mov r0, r0, asr #0x4
and r0, r0, #1
cmp r0, #1
bne _0214b740
add r0, r5, #0xc
bl func_ov61_0214d600
cmp r0, #1
moveq r0, #7
ldmeqia sp!, {r3, r4, r5, pc}
_0214b740:
mvn r0, #0
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0214b6b4
.global func_ov61_0214b748
arm_func_start func_ov61_0214b748
func_ov61_0214b748: ; 0x0214b748
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r6, r0
ldrh r3, [r6, #0xa]
mov r5, r1
mov r4, r2
cmp r3, #0x20
bne _0214b770
bl func_ov61_0214b6b4
cmp r0, #0
ldmgtia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_0214b770:
cmp r5, #0
mov r8, #0
ble _0214b7bc
ldrh r9, [r6, #0xa]
and r7, r9, #0xff
_0214b784:
ldrb r0, [r4, #3]
cmp r7, r0
bne _0214b7ac
mov r2, r9
add r0, r6, #0xc
add r1, r4, #4
bl strncmp
cmp r0, #0
ldreqb r0, [r4, #1]
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_0214b7ac:
add r8, r8, #1
cmp r8, r5
add r4, r4, #0x24
blt _0214b784
_0214b7bc:
mvn r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
arm_func_end func_ov61_0214b748
.global func_ov61_0214b7c4
arm_func_start func_ov61_0214b7c4
func_ov61_0214b7c4: ; 0x0214b7c4
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
mov r10, r0
ldrh r2, [r10, #0xa]
mov r9, r1
cmp r2, #0x20
bne _0214b7e8
bl func_ov61_0214b6b4
cmp r0, #0
ldmgtia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_0214b7e8:
ldrb r8, [r9, #0xd12]
mov r4, #0
cmp r8, #0
ble _0214b84c
ldrh r7, [r10, #0xa]
add r0, r9, #0x7c
mov r5, r9
add r6, r0, #0x400
_0214b808:
add r0, r5, #0x400
ldrh r0, [r0, #0x7a]
cmp r7, r0
bne _0214b838
mov r1, r6
mov r2, r7
add r0, r10, #0xc
bl strncmp
cmp r0, #0
addeq r0, r9, r4, lsl #2
ldreqb r0, [r0, #0x445]
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_0214b838:
add r4, r4, #1
cmp r4, r8
add r5, r5, #0xc0
add r6, r6, #0xc0
blt _0214b808
_0214b84c:
mvn r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
arm_func_end func_ov61_0214b7c4
.global func_ov61_0214b854
arm_func_start func_ov61_0214b854
func_ov61_0214b854: ; 0x0214b854
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r6, r3
ldrb r5, [r6, #0xd12]
mvn r4, #0
mov r3, #0
cmp r5, #0
ble _0214b8d8
ldrb lr, [r1, #4]
add ip, r6, #0x74
add ip, ip, #0x400
_0214b87c:
ldrb r7, [ip]
cmp lr, r7
ldreqb r8, [r1, #5]
ldreqb r7, [ip, #1]
cmpeq r8, r7
ldreqb r8, [r1, #6]
ldreqb r7, [ip, #2]
cmpeq r8, r7
ldreqb r8, [r1, #7]
ldreqb r7, [ip, #3]
cmpeq r8, r7
ldreqb r8, [r1, #8]
ldreqb r7, [ip, #4]
cmpeq r8, r7
ldreqb r8, [r1, #9]
ldreqb r7, [ip, #5]
cmpeq r8, r7
moveq r4, r3
beq _0214b8d8
add r3, r3, #1
cmp r3, r5
add ip, ip, #0xc0
blt _0214b87c
_0214b8d8:
mvn r3, #0
cmp r4, r3
bne _0214b908
mov r3, r6
and r0, r0, #0xff
bl func_ov61_0214b91c
ldrb r0, [r6, #0xd12]
mov r4, #0xa
cmp r0, #0xa
addlo r0, r0, #1
strlob r0, [r6, #0xd12]
b _0214b914
_0214b908:
mov r0, r4
mov r3, r6
bl func_ov61_0214b968
_0214b914:
mov r0, r4
ldmia sp!, {r4, r5, r6, r7, r8, pc}
arm_func_end func_ov61_0214b854
.global func_ov61_0214b91c
arm_func_start func_ov61_0214b91c
func_ov61_0214b91c: ; 0x0214b91c
stmdb sp!, {r3, lr}
add ip, r3, #0x6c
strb r0, [ip, #0x401]
ldrh r0, [r1, #2]
and r2, r2, #0x7f
tst r0, #2
mov r0, r0, asr #0x2
addeq r0, r0, #0x19
and r0, r0, #0xff
strb r0, [ip, #0x402]
ldrb lr, [ip, #0x403]
mov r0, r1
bic r1, lr, #0x7f
orr lr, r1, r2
add r1, r3, #0xbf0
mov r2, #0xc0
strb lr, [ip, #0x403]
bl func_02007908
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0214b91c
.global func_ov61_0214b968
arm_func_start func_ov61_0214b968
func_ov61_0214b968: ; 0x0214b968
stmdb sp!, {r3, r4, r5, lr}
ldrh r4, [r1, #2]
add ip, r3, #0x44
mov lr, #0xc0
add r5, ip, #0x400
mul ip, r0, lr
tst r4, #2
add r0, r5, r0, lsl #2
mov r4, r4, asr #0x2
addeq r4, r4, #0x19
and r4, r4, #0xff
ldrb lr, [r0, #2]
and r4, r4, #0xff
add r3, r3, #0x470
cmp r4, lr
bls _0214b9c0
strb r4, [r0, #2]
ldrb lr, [r0, #3]
and r2, r2, #0x7f
bic lr, lr, #0x7f
orr r2, lr, r2
strb r2, [r0, #3]
_0214b9c0:
mov r0, r1
add r1, r3, ip
mov r2, #0xc0
bl func_02007908
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0214b968
.global func_ov61_0214b9d4
arm_func_start func_ov61_0214b9d4
func_ov61_0214b9d4: ; 0x0214b9d4
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0xc4
mov r4, r0
add r0, r1, #0x44
add r7, r0, #0x400
add r8, r1, #0x470
subs r6, r4, #1
bmi _0214ba9c
mov r0, #0xc0
mla r10, r6, r0, r8
add r9, r7, r6, lsl #2
add r11, sp, #0
_0214ba04:
add r0, r7, r4, lsl #2
ldrb r1, [r0, #2]
add r0, r7, r6, lsl #2
ldrb r0, [r0, #2]
cmp r1, r0
blo _0214ba9c
mov r0, r9
mov r1, r11
mov r2, #4
bl func_02007908
add r5, r7, r4, lsl #2
mov r0, r5
mov r1, r9
mov r2, #4
bl func_02007908
mov r1, r5
mov r0, r11
mov r2, #4
bl func_02007908
mov r0, r10
add r1, sp, #4
mov r2, #0xc0
bl func_02007908
mov r0, #0xc0
mul r5, r4, r0
add r0, r8, r5
mov r1, r10
mov r2, #0xc0
bl func_02007908
add r1, r8, r5
add r0, sp, #4
mov r2, #0xc0
bl func_02007908
mov r4, r6
sub r9, r9, #4
sub r10, r10, #0xc0
subs r6, r6, #1
bpl _0214ba04
_0214ba9c:
add r1, r7, #0x28
mov r0, #0
mov r2, #4
bl func_020078f4
add r1, r8, #0x780
mov r0, #0
mov r2, #0xc0
bl func_020078f4
add sp, sp, #0xc4
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_0214b9d4
.global func_ov61_0214bac4
arm_func_start func_ov61_0214bac4
func_ov61_0214bac4: ; 0x0214bac4
stmdb sp!, {r4, lr}
mov r4, r0
mov r0, #0x10
bl func_ov61_0214b340
ldrsh r1, [r4]
cmp r1, #5
bne _0214bb3c
ldrsh r1, [r4, #2]
cmp r1, #0
ldmeqia sp!, {r4, pc}
ldr r1, [r4, #8]
cmp r1, #0xd
beq _0214bb0c
cmp r1, #0xf
beq _0214bb18
cmp r1, #0x11
beq _0214bb24
b _0214bb30
_0214bb0c:
mov r1, #1
strb r1, [r0, #0xd14]
ldmia sp!, {r4, pc}
_0214bb18:
mov r1, #2
strb r1, [r0, #0xd14]
ldmia sp!, {r4, pc}
_0214bb24:
mov r1, #3
strb r1, [r0, #0xd14]
ldmia sp!, {r4, pc}
_0214bb30:
mov r1, #4
strb r1, [r0, #0xd14]
ldmia sp!, {r4, pc}
_0214bb3c:
cmp r1, #7
ldmneia sp!, {r4, pc}
ldr r0, [r4, #4]
bl func_ov61_0214b548
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0214bac4
.global func_ov61_0214bb50
arm_func_start func_ov61_0214bb50
func_ov61_0214bb50: ; 0x0214bb50
stmdb sp!, {r4, lr}
bl func_ov61_0214b3f8
mov r4, r0
mov r0, #0x10
bl func_ov61_0214b340
cmp r4, #7
beq _0214bb78
cmp r4, #8
beq _0214bb84
b _0214bb8c
_0214bb78:
bl func_ov61_0214bb94
mov r4, r0
b _0214bb8c
_0214bb84:
bl func_ov61_0214bc8c
mov r4, r0
_0214bb8c:
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0214bb50
.global func_ov61_0214bb94
arm_func_start func_ov61_0214bb94
func_ov61_0214bb94: ; 0x0214bb94
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldrb r2, [r5, #0xd13]
add r3, r5, #0x470
mov r1, #0xc0
mla r4, r2, r1, r3
bl func_ov61_0214bdc8
add r1, r5, #0xb8
strb r0, [r5, #0xd0d]
add r0, r1, #0xc00
mov r1, #0
mov r2, #0x52
bl func_02007a44
add r2, r5, #0xb8
ldrb r1, [r5, #0xd0d]
mov r0, r5
add r2, r2, #0xc00
bl func_ov61_0214bf9c
cmp r0, #0
ldrb r0, [r5, #0xd0b]
bic r0, r0, #0xc
beq _0214bc48
orr r0, r0, #4
strb r0, [r5, #0xd0b]
ldrh r0, [r4, #0x2c]
mov r0, r0, asr #0x4
tst r0, #1
bne _0214bc1c
ldrb r1, [r5, #0xd13]
mov r2, #3
mov r0, #9
add r1, r5, r1, lsl #2
strb r2, [r1, #0x444]
ldmia sp!, {r3, r4, r5, pc}
_0214bc1c:
ldrb r0, [r5, #0xd0d]
cmp r0, #6
ldreqb r0, [r4, #0x15]
cmpeq r0, #0
bne _0214bc78
ldrb r1, [r5, #0xd13]
mov r2, #3
mov r0, #9
add r1, r5, r1, lsl #2
strb r2, [r1, #0x444]
ldmia sp!, {r3, r4, r5, pc}
_0214bc48:
strb r0, [r5, #0xd0b]
ldrh r0, [r4, #0x2c]
mov r0, r0, asr #0x4
and r0, r0, #1
cmp r0, #1
bne _0214bc78
ldrb r1, [r5, #0xd13]
mov r2, #3
mov r0, #9
add r1, r5, r1, lsl #2
strb r2, [r1, #0x444]
ldmia sp!, {r3, r4, r5, pc}
_0214bc78:
mov r0, #0
strb r0, [r5, #0xd15]
strb r0, [r5, #0xd14]
mov r0, #8
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0214bb94
.global func_ov61_0214bc8c
arm_func_start func_ov61_0214bc8c
func_ov61_0214bc8c: ; 0x0214bc8c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
bl func_ov61_0215f568
ldrb r2, [r7, #0xd13]
mov r1, #0xc0
cmp r0, #3
add r5, r7, #0x470
smulbb r4, r2, r1
bne _0214bd9c
mov r0, r7
bl func_ov61_0214bf64
ldrb r1, [r7, #0xd15]
mov r6, r0
add r0, r1, #1
and r1, r0, #0xff
strb r0, [r7, #0xd15]
cmp r1, #3
bls _0214bcf4
mov r0, #0
strb r0, [r7, #0xd15]
ldrb r1, [r7, #0xd13]
mov r2, #1
mov r0, #9
add r1, r7, r1, lsl #2
strb r2, [r1, #0x444]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0214bcf4:
cmp r1, #1
beq _0214bd78
ldrb r0, [r7, #0xd14]
cmp r0, #1
bne _0214bd18
ldrb r0, [r7, #0xd0b]
bic r0, r0, #0xc
strb r0, [r7, #0xd0b]
b _0214bd78
_0214bd18:
cmp r0, #2
bne _0214bd40
mov r0, #0
strb r0, [r7, #0xd15]
ldrb r1, [r7, #0xd13]
mov r2, #3
mov r0, #9
add r1, r7, r1, lsl #2
strb r2, [r1, #0x444]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0214bd40:
cmp r0, #3
bne _0214bd68
mov r0, #0
strb r0, [r7, #0xd15]
ldrb r1, [r7, #0xd13]
mov r2, #4
mov r0, #9
add r1, r7, r1, lsl #2
strb r2, [r1, #0x444]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0214bd68:
cmp r1, #3
ldreqb r0, [r7, #0xd0b]
biceq r0, r0, #0xc
streqb r0, [r7, #0xd0b]
_0214bd78:
mov r0, r7
bl func_ov61_0214bf80
mov r2, r0
add r1, r7, #0xb8
add r0, r5, r4
add r1, r1, #0xc00
orr r2, r6, r2
bl func_ov61_0215f038
b _0214bdc0
_0214bd9c:
cmp r0, #9
bne _0214bdc0
mov r0, #0
strb r0, [r7, #0xd15]
bl func_0200e8f8
str r0, [r7, #0xcb0]
str r1, [r7, #0xcb4]
mov r0, #0xa
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0214bdc0:
mov r0, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_0214bc8c
.global func_ov61_0214bdc8
arm_func_start func_ov61_0214bdc8
func_ov61_0214bdc8: ; 0x0214bdc8
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
mov r10, r0
ldrb r2, [r10, #0xd13]
ldrb r1, [r10, #0xd0c]
add r3, r10, #0x470
mov r0, #0xc0
mla r4, r2, r0, r3
mov r0, r1, lsl #0x18
movs r0, r0, lsr #0x1e
mov r0, #0
str r0, [sp]
bne _0214bee4
ldrh r0, [r4, #0xa]
ldr r6, [sp]
cmp r0, #0x20
bne _0214be28
mov r0, r4
bl func_ov61_0214b6b4
cmp r0, #0
str r0, [sp]
movle r0, #0
addgt r6, r6, #1
strle r0, [sp]
b _0214be4c
_0214be28:
cmp r0, #8
bne _0214be4c
mov r0, r4
bl func_ov61_0214c49c
cmp r0, #0
str r0, [sp]
moveq r0, #0
addne r6, r6, #1
streq r0, [sp]
_0214be4c:
ldrb r0, [r10, #0xd10]
mov r5, #0
cmp r0, #0
ble _0214bf58
mov r7, r10
add r8, r10, #0x304
add r9, r10, #0x300
add r11, r10, #0x10c
_0214be6c:
ldrh r2, [r4, #0xa]
ldrb r0, [r7, #0x303]
cmp r2, r0
bne _0214bec4
mov r1, r8
add r0, r4, #0xc
bl strncmp
cmp r0, #0
bne _0214bec4
cmp r6, #0
ldreqb r0, [r7, #0x301]
streq r0, [sp]
beq _0214bec0
ldrb r0, [r9]
bic r0, r0, #0xf0
orr r0, r0, #0x10
strb r0, [r9]
ldrb r0, [r11, #0xc00]
bic r0, r0, #0xc0
orr r0, r0, #0x40
strb r0, [r11, #0xc00]
_0214bec0:
add r6, r6, #1
_0214bec4:
ldrb r0, [r10, #0xd10]
add r5, r5, #1
add r7, r7, #0x24
cmp r5, r0
add r8, r8, #0x24
add r9, r9, #0x24
blt _0214be6c
b _0214bf58
_0214bee4:
ldrb r0, [r10, #0xd10]
ldr r5, [sp]
mov r4, r5
cmp r0, #0
ble _0214bf48
mov r3, r10
add r2, r10, #0x300
_0214bf00:
ldrb r0, [r2]
mov r1, r0, lsl #0x18
mov r1, r1, lsr #0x1c
cmp r1, #1
bne _0214bf30
cmp r4, #0
bne _0214bf2c
bic r0, r0, #0xf0
strb r0, [r2]
ldrb r0, [r3, #0x301]
str r0, [sp]
_0214bf2c:
add r4, r4, #1
_0214bf30:
ldrb r0, [r10, #0xd10]
add r5, r5, #1
add r2, r2, #0x24
cmp r5, r0
add r3, r3, #0x24
blt _0214bf00
_0214bf48:
cmp r4, #1
ldreqb r0, [r10, #0xd0c]
biceq r0, r0, #0xc0
streqb r0, [r10, #0xd0c]
_0214bf58:
ldr r0, [sp]
and r0, r0, #0xff
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_0214bdc8
.global func_ov61_0214bf64
arm_func_start func_ov61_0214bf64
func_ov61_0214bf64: ; 0x0214bf64
ldrb r0, [r0, #0xd0b]
mov r0, r0, lsl #0x1e
mov r0, r0, lsr #0x1e
cmp r0, #1
moveq r0, #0x30000
movne r0, #0x20000
bx lr
arm_func_end func_ov61_0214bf64
.global func_ov61_0214bf80
arm_func_start func_ov61_0214bf80
func_ov61_0214bf80: ; 0x0214bf80
ldrb r0, [r0, #0xd0b]
mov r0, r0, lsl #0x1c
mov r0, r0, lsr #0x1e
cmp r0, #1
moveq r0, #0xc0000
movne r0, #0x80000
bx lr
arm_func_end func_ov61_0214bf80
.global func_ov61_0214bf9c
arm_func_start func_ov61_0214bf9c
func_ov61_0214bf9c: ; 0x0214bf9c
stmdb sp!, {r4, lr}
mov r4, r2
cmp r1, #9
addls pc, pc, r1, lsl #2
b _0214c07c
_0214bfb0: ; jump table
b _0214bfe0 ; case 0
b _0214bfdc ; case 1
b _0214bfd8 ; case 2
b _0214c00c ; case 3
b _0214c008 ; case 4
b _0214c004 ; case 5
b _0214c030 ; case 6
b _0214c058 ; case 7
b _0214c07c ; case 8
b _0214c07c ; case 9
_0214bfd8:
add r0, r0, #0x100
_0214bfdc:
add r0, r0, #0x100
_0214bfe0:
ldrb r2, [r0, #0xe6]
add r0, r0, #0x80
add r1, r4, #2
mov r2, r2, lsl #0x1e
mov r3, r2, lsr #0x1e
mov r2, #0x50
strb r3, [r4]
bl func_02007ad8
b _0214c07c
_0214c004:
add r0, r0, #0x100
_0214c008:
add r0, r0, #0x100
_0214c00c:
mov r3, #1
add r0, r0, #0xd1
add r1, r4, #2
mov r2, #0x14
strb r3, [r4]
bl func_02007ad8
mov r0, #0
strb r0, [r4, #0x16]
b _0214c07c
_0214c030:
mov r1, #2
strb r1, [r4]
ldrb r1, [r0, #0xd13]
add r0, r0, #0x7c
add r2, r0, #0x400
mov r0, #0xc0
mla r0, r1, r0, r2
add r1, r4, #2
bl func_ov61_0214d6d0
b _0214c07c
_0214c058:
mov r1, #2
strb r1, [r4]
ldrb r1, [r0, #0xd13]
add r0, r0, #0x7c
add r2, r0, #0x400
mov r0, #0xc0
mla r0, r1, r0, r2
add r1, r4, #2
bl func_ov61_0214d638
_0214c07c:
ldrb r0, [r4]
cmp r0, #0
movne r0, #1
moveq r0, #0
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0214bf9c
.global func_ov61_0214c090
arm_func_start func_ov61_0214c090
func_ov61_0214c090: ; 0x0214c090
stmdb sp!, {r4, lr}
mov r4, r0
ldrb r0, [r4]
cmp r0, #0xa
bhi _0214c0dc
bl func_ov61_0214c118
cmp r0, #1
bne _0214c0c0
mov r0, #0
strb r0, [r4]
mov r0, #1
ldmia sp!, {r4, pc}
_0214c0c0:
mvn r1, #0
cmp r0, r1
bne _0214c110
mov r0, #0x12
strb r0, [r4]
mov r0, #1
ldmia sp!, {r4, pc}
_0214c0dc:
cmp r0, #0xe
bne _0214c0f8
bl func_ov61_02150574
bl func_ov61_0215047c
mov r0, #0xc
strb r0, [r4]
b _0214c110
_0214c0f8:
cmp r0, #0x12
bhs _0214c110
bl func_ov61_0214c1a8
cmp r0, #1
moveq r0, #0xa
streqb r0, [r4]
_0214c110:
mov r0, #0
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0214c090
.global func_ov61_0214c118
arm_func_start func_ov61_0214c118
func_ov61_0214c118: ; 0x0214c118
stmdb sp!, {r3, lr}
bl func_ov61_0215f568
cmp r0, #0xc
addls pc, pc, r0, lsl #2
b _0214c1a0
_0214c12c: ; jump table
b _0214c160 ; case 0
b _0214c168 ; case 1
b _0214c1a0 ; case 2
b _0214c170 ; case 3
b _0214c1a0 ; case 4
b _0214c1a0 ; case 5
b _0214c178 ; case 6
b _0214c1a0 ; case 7
b _0214c1a0 ; case 8
b _0214c180 ; case 9
b _0214c1a0 ; case 10
b _0214c190 ; case 11
b _0214c188 ; case 12
_0214c160:
mov r0, #1
ldmia sp!, {r3, pc}
_0214c168:
bl func_ov61_0215eab0
b _0214c1a0
_0214c170:
bl func_ov61_0215ed0c
b _0214c1a0
_0214c178:
bl func_ov61_0215ef94
b _0214c1a0
_0214c180:
bl func_ov61_0215f23c
b _0214c1a0
_0214c188:
bl func_ov61_0215f358
b _0214c1a0
_0214c190:
mov r0, #0
bl func_ov61_0214b40c
mvn r0, #0
ldmia sp!, {r3, pc}
_0214c1a0:
mov r0, #0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0214c118
.global func_ov61_0214c1a8
arm_func_start func_ov61_0214c1a8
func_ov61_0214c1a8: ; 0x0214c1a8
stmdb sp!, {r3, lr}
bl func_ov61_02158a3c
cmp r0, #0
movne r0, #0
ldmneia sp!, {r3, pc}
bl func_ov61_02159548
cmp r0, #0
mvnne r1, #0x26
cmpne r0, r1
moveq r0, #1
movne r0, #0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0214c1a8
.global func_ov61_0214c1d8
arm_func_start func_ov61_0214c1d8
func_ov61_0214c1d8: ; 0x0214c1d8
stmdb sp!, {r3, lr}
mov r0, #1
bl func_ov61_0214b340
add r0, r0, #0xa
bl func_ov61_0214c090
cmp r0, #1
moveq r0, #0x12
movne r0, #0x11
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0214c1d8
.global func_ov61_0214c1fc
arm_func_start func_ov61_0214c1fc
func_ov61_0214c1fc: ; 0x0214c1fc
stmdb sp!, {r4, lr}
mov r0, #1
bl func_ov61_0214b340
mov r4, r0
bl func_ov61_0214b430
cmp r0, #4
bge _0214c220
bl func_ov61_0214c24c
ldmia sp!, {r4, pc}
_0214c220:
cmp r0, #5
bge _0214c230
bl func_ov61_0214c290
ldmia sp!, {r4, pc}
_0214c230:
cmp r0, #5
mov r0, r4
bne _0214c244
bl func_ov61_0214c298
ldmia sp!, {r4, pc}
_0214c244:
bl func_ov61_0214c2b4
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0214c1fc
.global func_ov61_0214c24c
arm_func_start func_ov61_0214c24c
func_ov61_0214c24c: ; 0x0214c24c
cmp r0, #3
addls pc, pc, r0, lsl #2
b _0214c288
_0214c258: ; jump table
b _0214c270 ; case 0
b _0214c268 ; case 1
b _0214c278 ; case 2
b _0214c280 ; case 3
_0214c268:
mvn r0, #8
bx lr
_0214c270:
mvn r0, #9
bx lr
_0214c278:
mvn r0, #7
bx lr
_0214c280:
mvn r0, #6
bx lr
_0214c288:
mov r0, #0
bx lr
arm_func_end func_ov61_0214c24c
.global func_ov61_0214c290
arm_func_start func_ov61_0214c290
func_ov61_0214c290: ; 0x0214c290
mvn r0, #5
bx lr
arm_func_end func_ov61_0214c290
.global func_ov61_0214c298
arm_func_start func_ov61_0214c298
func_ov61_0214c298: ; 0x0214c298
ldrb r0, [r0, #0xb]
cmp r0, #0
ldreq r0, _0214c2ac ; =0xffff3c4d
ldrne r0, _0214c2b0 ; =0xffff3865
bx lr
.align 2, 0
arm_func_end func_ov61_0214c298
_0214c2ac: .word 0xffff3c4d
_0214c2b0: .word 0xffff3865
.global func_ov61_0214c2b4
arm_func_start func_ov61_0214c2b4
func_ov61_0214c2b4: ; 0x0214c2b4
ldrb r1, [r0, #0x16]
cmp r1, #0xa
bhs _0214c300
ldrb r1, [r0, #0x14]
cmp r1, #3
bne _0214c2dc
ldrb r1, [r0, #0x15]
ldr r0, _0214c3e0 ; =0xffff3864
sub r3, r0, r1
b _0214c3d8
_0214c2dc:
cmp r1, #4
ldrb r1, [r0, #0x15]
ldrne r0, _0214c3e4 ; =0xffff379c
subne r3, r0, r1
bne _0214c3d8
mov r0, #0xc800
rsb r0, r0, #0
sub r3, r0, r1
b _0214c3d8
_0214c300:
cmp r1, #0xd
bhs _0214c318
ldrb r1, [r0, #0x15]
ldr r0, _0214c3e8 ; =0xffff34e0
sub r3, r0, r1
b _0214c3d8
_0214c318:
ldr r3, [r0, #0x10]
cmp r3, #0
bne _0214c334
ldrb r1, [r0, #0x15]
ldr r0, _0214c3ec ; =0xffff3cb0
sub r3, r0, r1
b _0214c3d8
_0214c334:
mvn r2, #0
cmp r3, r2
bne _0214c350
ldrb r1, [r0, #0x15]
ldr r0, _0214c3f0 ; =0xffff347c
sub r3, r0, r1
b _0214c3d8
_0214c350:
sub r1, r2, #1
cmp r3, r1
bne _0214c36c
ldrb r1, [r0, #0x15]
ldr r0, _0214c3f4 ; =0xffff3418
sub r3, r0, r1
b _0214c3d8
_0214c36c:
sub r1, r2, #2
cmp r3, r1
bne _0214c388
ldrb r1, [r0, #0x15]
ldr r0, _0214c3f8 ; =0xffff33b4
sub r3, r0, r1
b _0214c3d8
_0214c388:
sub r1, r2, #3
cmp r3, r1
bne _0214c3a4
ldrb r1, [r0, #0x15]
ldr r0, _0214c3fc ; =0xffff30f8
sub r3, r0, r1
b _0214c3d8
_0214c3a4:
sub r1, r2, #4
cmp r3, r1
bne _0214c3c0
ldrb r1, [r0, #0x15]
ldr r0, _0214c400 ; =0xffff3094
sub r3, r0, r1
b _0214c3d8
_0214c3c0:
sub r1, r2, #5
cmp r3, r1
bne _0214c3d8
ldrb r1, [r0, #0x15]
ldr r0, _0214c404 ; =0xffff3030
sub r3, r0, r1
_0214c3d8:
mov r0, r3
bx lr
.align 2, 0
arm_func_end func_ov61_0214c2b4
_0214c3e0: .word 0xffff3864
_0214c3e4: .word 0xffff379c
_0214c3e8: .word 0xffff34e0
_0214c3ec: .word 0xffff3cb0
_0214c3f0: .word 0xffff347c
_0214c3f4: .word 0xffff3418
_0214c3f8: .word 0xffff33b4
_0214c3fc: .word 0xffff30f8
_0214c400: .word 0xffff3094
_0214c404: .word 0xffff3030
.global func_ov61_0214c408
arm_func_start func_ov61_0214c408
func_ov61_0214c408: ; 0x0214c408
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r0, #0x10
bl func_ov61_0214b340
mov r4, r0
cmp r5, #0
beq _0214c438
cmp r5, #1
beq _0214c458
cmp r5, #2
beq _0214c470
b _0214c494
_0214c438:
add r1, r4, #0x300
mov r0, #0
mov r2, #0x144
bl func_020078f4
mov r0, r4
bl func_ov61_0214c4e8
strb r0, [r4, #0xd10]
b _0214c494
_0214c458:
bl func_ov61_0214c73c
strb r0, [r4, #0xd10]
mov r0, r4
bl func_ov61_0214c7cc
strb r0, [r4, #0xd0f]
b _0214c494
_0214c470:
add r1, r4, #0x300
mov r0, #0
mov r2, #0x144
bl func_020078f4
mov r1, #0
mov r0, r4
strb r1, [r4, #0xd0f]
bl func_ov61_0214c548
strb r0, [r4, #0xd10]
_0214c494:
ldrb r0, [r4, #0xd10]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0214c408
.global func_ov61_0214c49c
arm_func_start func_ov61_0214c49c
func_ov61_0214c49c: ; 0x0214c49c
stmdb sp!, {r4, lr}
mov r4, r0
mov r0, #0x10
bl func_ov61_0214b340
ldrb r0, [r0, #0xd0c]
mov r0, r0, lsl #0x1c
movs r0, r0, lsr #0x1c
cmpne r0, #6
bne _0214c4dc
ldr r1, _0214c4e4 ; =data_ov61_0217a230
add r0, r4, #0xc
mov r2, #8
bl strncmp
cmp r0, #0
moveq r0, #8
ldmeqia sp!, {r4, pc}
_0214c4dc:
mov r0, #0
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214c49c
_0214c4e4: .word data_ov61_0217a230
.global func_ov61_0214c4e8
arm_func_start func_ov61_0214c4e8
func_ov61_0214c4e8: ; 0x0214c4e8
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
add r4, r5, #0x300
bl func_ov61_0214c634
ldrb r1, [r5, #0xd0c]
mov r5, r0
mov r0, #0x24
mla r4, r5, r0, r4
mov r1, r1, lsl #0x1c
movs r0, r1, lsr #0x1c
cmpne r0, #6
bne _0214c53c
ldr r0, _0214c544 ; =data_ov61_0217a230
add r1, r4, #4
mov r2, #8
bl func_02007ad8
mov r1, #8
strb r1, [r4, #3]
add r0, r5, #1
strb r1, [r4, #1]
and r5, r0, #0xff
_0214c53c:
mov r0, r5
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0214c4e8
_0214c544: .word data_ov61_0217a230
.global func_ov61_0214c548
arm_func_start func_ov61_0214c548
func_ov61_0214c548: ; 0x0214c548
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
add r5, r6, #0x300
bl func_ov61_0214c634
ldrb r1, [r6, #0xd0c]
mov r4, r0
mov r0, #0x24
mla r5, r4, r0, r5
mov r1, r1, lsl #0x1c
movs r0, r1, lsr #0x1c
cmpne r0, #4
bne _0214c5a4
ldr r0, _0214c628 ; =data_ov61_0217a838
add r1, r5, #4
mov r2, #8
bl func_02007ad8
mov r1, #8
add r0, r4, #1
strb r1, [r5, #3]
mov r1, #6
strb r1, [r5, #1]
and r4, r0, #0xff
add r5, r5, #0x24
_0214c5a4:
ldrb r0, [r6, #0xd0c]
mov r0, r0, lsl #0x1c
movs r0, r0, lsr #0x1c
cmpne r0, #7
bne _0214c5e4
ldr r0, _0214c62c ; =data_ov61_0217a228
add r1, r5, #4
mov r2, #8
bl func_02007ad8
mov r1, #8
add r0, r4, #1
strb r1, [r5, #3]
mov r1, #9
strb r1, [r5, #1]
and r4, r0, #0xff
add r5, r5, #0x24
_0214c5e4:
ldrb r0, [r6, #0xd0c]
mov r0, r0, lsl #0x1c
movs r0, r0, lsr #0x1c
cmpne r0, #8
bne _0214c620
ldr r0, _0214c630 ; =data_ov61_0217a238
add r1, r5, #4
mov r2, #0xb
bl func_02007ad8
mov r1, #0xb
add r0, r4, #1
strb r1, [r5, #3]
mov r1, #0xa
strb r1, [r5, #1]
and r4, r0, #0xff
_0214c620:
mov r0, r4
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0214c548
_0214c628: .word data_ov61_0217a838
_0214c62c: .word data_ov61_0217a228
_0214c630: .word data_ov61_0217a238
.global func_ov61_0214c634
arm_func_start func_ov61_0214c634
func_ov61_0214c634: ; 0x0214c634
stmdb sp!, {r4, r5, r6, lr}
mov r2, #0
mov r3, r0
mov r1, r2
add ip, r0, #0x300
_0214c648:
ldrb r4, [r0, #0xd0c]
mov r4, r4, lsl #0x1c
movs r5, r4, lsr #0x1c
addne r4, r1, #1
cmpne r5, r4
bne _0214c724
ldrb r4, [r3, #0xe7]
cmp r4, #0xff
beq _0214c724
mov r6, #0
_0214c670:
add r4, r3, r6
ldrb lr, [r4, #0x40]
cmp lr, #0
beq _0214c698
add r4, r6, #1
add r5, ip, r6
and r6, r4, #0xff
strb lr, [r5, #4]
cmp r6, #0x20
blo _0214c670
_0214c698:
cmp r6, #0
moveq r4, #0
beq _0214c6b0
strb r6, [ip, #3]
strb r1, [ip, #1]
mov r4, #1
_0214c6b0:
cmp r4, #0
ldrb r4, [r3, #0xe7]
addne r2, r2, #1
andne r2, r2, #0xff
addne ip, ip, #0x24
cmp r4, #1
bne _0214c724
mov r6, #0
_0214c6d0:
add r4, r3, r6
ldrb r5, [r4, #0x60]
cmp r5, #0
beq _0214c6f8
add lr, r6, #1
add r4, ip, r6
and r6, lr, #0xff
strb r5, [r4, #4]
cmp r6, #0x20
blo _0214c6d0
_0214c6f8:
cmp r6, #0
moveq r4, #0
beq _0214c714
strb r6, [ip, #3]
add lr, r1, #3
strb lr, [ip, #1]
mov r4, #1
_0214c714:
cmp r4, #0
addne r2, r2, #1
andne r2, r2, #0xff
addne ip, ip, #0x24
_0214c724:
add r1, r1, #1
cmp r1, #3
add r3, r3, #0x100
blt _0214c648
mov r0, r2
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0214c634
.global func_ov61_0214c73c
arm_func_start func_ov61_0214c73c
func_ov61_0214c73c: ; 0x0214c73c
stmdb sp!, {r3, r4, r5, lr}
ldrb r3, [r0, #0xd12]
mov r2, #0
mov r1, r2
cmp r3, #0
ble _0214c7c4
add r3, r0, #0x47
mov ip, r0
add r3, r3, #0x400
_0214c760:
add r4, r0, r1, lsl #2
ldrb r4, [r4, #0x444]
cmp r4, #0
bne _0214c7a0
add lr, ip, #0x400
ldrh r4, [lr, #0xa6]
ldrb lr, [r3]
sub r5, r4, #1
mov r4, lr, lsl #0x19
cmp r5, r4, lsr #25
beq _0214c7a0
bic lr, lr, #0x80
add r2, r2, #1
strb lr, [r3]
and r2, r2, #0xff
b _0214c7ac
_0214c7a0:
ldrb lr, [r3]
orr lr, lr, #0x80
strb lr, [r3]
_0214c7ac:
ldrb lr, [r0, #0xd12]
add r1, r1, #1
add r3, r3, #4
cmp r1, lr
add ip, ip, #0xc0
blt _0214c760
_0214c7c4:
mov r0, r2
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0214c73c
.global func_ov61_0214c7cc
arm_func_start func_ov61_0214c7cc
func_ov61_0214c7cc: ; 0x0214c7cc
ldrb ip, [r0, #0xd12]
mov r3, #0
mov r2, r3
cmp ip, #0
bls _0214c808
_0214c7e0:
add r1, r0, r2, lsl #2
ldrb r1, [r1, #0x447]
mov r1, r1, lsl #0x18
movs r1, r1, lsr #0x1f
moveq r3, r2
beq _0214c808
add r1, r2, #1
and r2, r1, #0xff
cmp r2, ip
blo _0214c7e0
_0214c808:
mov r0, r3
bx lr
arm_func_end func_ov61_0214c7cc
.global func_ov61_0214c810
arm_func_start func_ov61_0214c810
func_ov61_0214c810: ; 0x0214c810
stmdb sp!, {r3, r4, r5, lr}
mov r0, #0x10
bl func_ov61_0214b340
mov r4, r0
mov r5, #9
bl func_ov61_0215f568
cmp r0, #0xc
addls pc, pc, r0, lsl #2
b _0214c8e4
_0214c834: ; jump table
b _0214c8e4 ; case 0
b _0214c8e4 ; case 1
b _0214c8e4 ; case 2
b _0214c868 ; case 3
b _0214c8e4 ; case 4
b _0214c8e4 ; case 5
b _0214c8b4 ; case 6
b _0214c8e4 ; case 7
b _0214c8e4 ; case 8
b _0214c8bc ; case 9
b _0214c8e4 ; case 10
b _0214c8d8 ; case 11
b _0214c8c4 ; case 12
_0214c868:
ldrb r0, [r4, #0xd0c]
ldrb r5, [r4, #0xd0e]
mov r0, r0, lsl #0x18
mov r0, r0, lsr #0x1e
cmp r0, #1
bne _0214c898
ldrb r0, [r4, #0xd13]
mov r1, #0
mov r5, #7
add r0, r4, r0, lsl #2
strb r1, [r0, #0x444]
b _0214c8e4
_0214c898:
cmp r5, #3
blo _0214c8e4
cmp r5, #5
bhi _0214c8e4
mov r0, r5
bl func_ov61_0214ca4c
b _0214c8e4
_0214c8b4:
bl func_ov61_0215ef94
b _0214c8e4
_0214c8bc:
bl func_ov61_0215f23c
b _0214c8e4
_0214c8c4:
bl func_ov61_0215f358
mov r0, #4
bl func_ov61_0214b40c
mov r5, #0x11
b _0214c8e4
_0214c8d8:
mov r0, #0
bl func_ov61_0214b40c
mov r5, #0x11
_0214c8e4:
mov r0, r5
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0214c810
.global func_ov61_0214c8ec
arm_func_start func_ov61_0214c8ec
func_ov61_0214c8ec: ; 0x0214c8ec
stmdb sp!, {r3, r4, r5, lr}
mov r0, #0x10
bl func_ov61_0214b340
mov r4, r0
bl func_ov61_0214b3f8
mov r5, r0
bl func_ov61_0215f568
cmp r5, #2
cmpeq r0, #3
bne _0214c924
mov r0, r4
bl func_ov61_0214cb2c
mov r5, r0
b _0214c9a8
_0214c924:
cmp r5, #6
bne _0214c940
mov r0, r4
mov r1, r5
bl func_ov61_0214cf74
mov r5, r0
b _0214c9a8
_0214c940:
cmp r0, #3
cmpne r0, #6
bne _0214c9a8
mov r0, r4
mov r1, r5
bl func_ov61_0214cf74
mov r5, r0
cmp r5, #7
beq _0214c9a8
cmp r5, #3
bne _0214c97c
mov r0, r4
bl func_ov61_0214cb7c
mov r5, r0
b _0214c9a8
_0214c97c:
cmp r5, #4
bne _0214c994
mov r0, r4
bl func_ov61_0214cc68
mov r5, r0
b _0214c9a8
_0214c994:
cmp r5, #5
bne _0214c9a8
mov r0, r4
bl func_ov61_0214cd90
mov r5, r0
_0214c9a8:
mov r0, r5
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0214c8ec
.global func_ov61_0214c9b0
arm_func_start func_ov61_0214c9b0
func_ov61_0214c9b0: ; 0x0214c9b0
stmdb sp!, {r4, lr}
mov r4, r0
mov r0, #0x10
bl func_ov61_0214b340
add r0, r0, #0xd00
cmp r4, #0xd
movhi r4, #0xd
ldrh r3, [r0, #0x16]
sub r1, r4, #1
mov r2, #1
orr r1, r3, r2, lsl r1
strh r1, [r0, #0x16]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0214c9b0
.global func_ov61_0214c9e4
arm_func_start func_ov61_0214c9e4
func_ov61_0214c9e4: ; 0x0214c9e4
stmdb sp!, {r4, lr}
mov r4, r0
mov r0, #0x10
bl func_ov61_0214b340
add r0, r0, #0xd00
ldrh ip, [r0, #0x16]
cmp ip, #0
mvneq r0, #0
ldmeqia sp!, {r4, pc}
mov r2, #0
mov r3, r2
mov r1, #1
_0214ca14:
tst ip, r1, lsl r2
beq _0214ca34
cmp r3, r4
moveq r0, r2, lsl #0x18
moveq r0, r0, asr #0x18
ldmeqia sp!, {r4, pc}
add r0, r3, #1
and r3, r0, #0xff
_0214ca34:
add r0, r2, #1
and r2, r0, #0xff
cmp r2, #0xd
blo _0214ca14
mvn r0, #0
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0214c9e4
.global func_ov61_0214ca4c
arm_func_start func_ov61_0214ca4c
func_ov61_0214ca4c: ; 0x0214ca4c
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r0, #0x10
bl func_ov61_0214b340
mov r4, r0
cmp r5, #3
beq _0214ca7c
cmp r5, #4
beq _0214caa4
cmp r5, #5
beq _0214caf0
ldmia sp!, {r3, r4, r5, pc}
_0214ca7c:
bl func_0200e8f8
str r0, [r4, #0xcb0]
str r1, [r4, #0xcb4]
add r0, r4, #0xd00
ldrsb r2, [r0, #0x11]
ldr r0, _0214cb24 ; =data_ov61_0217a30c
ldr r1, _0214cb28 ; =data_ov61_0217a314
mov r3, #0x200000
bl func_ov61_0214d098
ldmia sp!, {r3, r4, r5, pc}
_0214caa4:
bl func_0200e8f8
str r0, [r4, #0xcb0]
str r1, [r4, #0xcb4]
ldrb r2, [r4, #0xd0f]
mov r0, #0xc0
add r1, r4, #0x74
smulbb ip, r2, r0
add r0, r4, ip
add r0, r0, #0x400
ldrh r2, [r0, #0xa6]
add r0, r4, #0x7c
add r3, r1, #0x400
add r1, r0, #0x400
add r0, r3, ip
add r1, r1, ip
sub r2, r2, #1
mov r3, #0x300000
bl func_ov61_0214d098
ldmia sp!, {r3, r4, r5, pc}
_0214caf0:
bl func_0200e8f8
str r0, [r4, #0xcb0]
str r1, [r4, #0xcb4]
ldrb r3, [r4, #0xd0f]
add r1, r4, #0x304
mov r0, #0x24
add r2, r4, #0xd00
mla r1, r3, r0, r1
ldrsb r2, [r2, #0x11]
ldr r0, _0214cb24 ; =data_ov61_0217a30c
mov r3, #0x300000
bl func_ov61_0214d098
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0214ca4c
_0214cb24: .word data_ov61_0217a30c
_0214cb28: .word data_ov61_0217a314
.global func_ov61_0214cb2c
arm_func_start func_ov61_0214cb2c
func_ov61_0214cb2c: ; 0x0214cb2c
stmdb sp!, {r4, lr}
mov r4, r0
bl func_0200e8f8
str r0, [r4, #0xcb0]
str r1, [r4, #0xcb4]
mov r0, #0
strb r0, [r4, #0xd11]
bl func_0200e8f8
str r0, [r4, #0xcb0]
str r1, [r4, #0xcb4]
add r0, r4, #0xd00
ldrsb r2, [r0, #0x11]
ldr r0, _0214cb74 ; =data_ov61_0217a30c
ldr r1, _0214cb78 ; =data_ov61_0217a314
mov r3, #0x200000
bl func_ov61_0214d098
mov r0, #3
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214cb2c
_0214cb74: .word data_ov61_0217a30c
_0214cb78: .word data_ov61_0217a314
.global func_ov61_0214cb7c
arm_func_start func_ov61_0214cb7c
func_ov61_0214cb7c: ; 0x0214cb7c
stmdb sp!, {r4, lr}
mov r4, r0
bl func_0200e8f8
ldr r3, [r4, #0xcb0]
ldr r2, [r4, #0xcb4]
subs r3, r0, r3
sbc r0, r1, r2
mov r1, r0, lsl #0x6
ldr r2, _0214cc14 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
cmp r1, #0
cmpeq r0, #0x12c
blo _0214cc0c
add r0, r4, #0xd00
ldrsb r1, [r0, #0x11]
add r1, r1, #2
strb r1, [r4, #0xd11]
ldrsb r0, [r0, #0x11]
cmp r0, #0xd
blt _0214cbe8
mov r0, r4
mov r1, #3
bl func_ov61_0214ceb0
ldmia sp!, {r4, pc}
_0214cbe8:
bl func_0200e8f8
str r0, [r4, #0xcb0]
str r1, [r4, #0xcb4]
add r0, r4, #0xd00
ldrsb r2, [r0, #0x11]
ldr r0, _0214cc18 ; =data_ov61_0217a30c
ldr r1, _0214cc1c ; =data_ov61_0217a314
mov r3, #0x200000
bl func_ov61_0214d098
_0214cc0c:
mov r0, #3
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214cb7c
_0214cc14: .word 0x000082ea
_0214cc18: .word data_ov61_0217a30c
_0214cc1c: .word data_ov61_0217a314
.global func_ov61_0214cc20
arm_func_start func_ov61_0214cc20
func_ov61_0214cc20: ; 0x0214cc20
stmdb sp!, {r4, lr}
mov r4, r0
mov r0, #0
strb r0, [r4, #0xd15]
ldrb r2, [r4, #0xd0b]
mov r1, r2, lsl #0x18
mov r1, r1, lsr #0x1c
add r1, r1, #1
and r1, r1, #0xff
bic r2, r2, #0xf0
mov r1, r1, lsl #0x1c
orr r1, r2, r1, lsr #24
strb r1, [r4, #0xd0b]
bl func_ov61_0214c408
mov r0, #1
strb r0, [r4, #0xd11]
mov r0, #3
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0214cc20
.global func_ov61_0214cc68
arm_func_start func_ov61_0214cc68
func_ov61_0214cc68: ; 0x0214cc68
stmdb sp!, {r4, lr}
mov r4, r0
bl func_0200e8f8
ldr r3, [r4, #0xcb0]
ldr r2, [r4, #0xcb4]
subs r3, r0, r3
sbc r0, r1, r2
mov r1, r0, lsl #0x6
ldr r2, _0214cd8c ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
cmp r1, #0
cmpeq r0, #0x96
bhs _0214ccc4
ldrb r0, [r4, #0xd0f]
add r0, r4, r0, lsl #2
ldrb r0, [r0, #0x447]
mov r0, r0, lsl #0x18
mov r0, r0, lsr #0x1f
cmp r0, #1
bne _0214cd84
_0214ccc4:
ldrb r1, [r4, #0xd0f]
add r0, r4, #0x47
add r2, r0, #0x400
ldrb r0, [r2, r1, lsl #2]
orr r0, r0, #0x80
strb r0, [r2, r1, lsl #2]
ldrb r2, [r4, #0xd12]
ldrb r1, [r4, #0xd0f]
cmp r1, r2
bhs _0214cd1c
_0214ccec:
add r0, r4, r1, lsl #2
ldrb r0, [r0, #0x447]
mov r0, r0, lsl #0x18
movs r0, r0, lsr #0x1f
beq _0214cd1c
ldrb r0, [r4, #0xd0f]
add r0, r0, #1
strb r0, [r4, #0xd0f]
ldrb r2, [r4, #0xd12]
and r1, r0, #0xff
cmp r1, r2
blo _0214ccec
_0214cd1c:
cmp r2, r1
bhi _0214cd3c
mov r2, #0
mov r0, r4
mov r1, #4
strb r2, [r4, #0xd0f]
bl func_ov61_0214ceb0
ldmia sp!, {r4, pc}
_0214cd3c:
bl func_0200e8f8
str r0, [r4, #0xcb0]
str r1, [r4, #0xcb4]
ldrb r2, [r4, #0xd0f]
mov r0, #0xc0
add r1, r4, #0x74
smulbb ip, r2, r0
add r0, r4, ip
add r0, r0, #0x400
ldrh r2, [r0, #0xa6]
add r0, r4, #0x7c
add r3, r1, #0x400
add r1, r0, #0x400
add r0, r3, ip
add r1, r1, ip
sub r2, r2, #1
mov r3, #0x300000
bl func_ov61_0214d098
_0214cd84:
mov r0, #4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214cc68
_0214cd8c: .word 0x000082ea
.global func_ov61_0214cd90
arm_func_start func_ov61_0214cd90
func_ov61_0214cd90: ; 0x0214cd90
stmdb sp!, {r4, lr}
mov r4, r0
bl func_0200e8f8
ldr r3, [r4, #0xcb0]
ldr r2, [r4, #0xcb4]
subs r3, r0, r3
sbc r0, r1, r2
mov r1, r0, lsl #0x6
ldr r2, _0214cea8 ; =0x000082ea
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
cmp r1, #0
cmpeq r0, #0x96
bhs _0214cdf0
ldrb r1, [r4, #0xd0f]
mov r0, #0x24
mla r0, r1, r0, r4
ldrb r0, [r0, #0x300]
mov r0, r0, lsl #0x1c
mov r0, r0, lsr #0x1c
cmp r0, #1
bne _0214cea0
_0214cdf0:
ldrb r1, [r4, #0xd0f]
mov r0, #0x24
add r2, r4, #0x300
smulbb r1, r1, r0
ldrb r0, [r2, r1]
bic r0, r0, #0xf
strb r0, [r2, r1]
ldrb r0, [r4, #0xd0f]
add r0, r0, #1
strb r0, [r4, #0xd0f]
ldrb r1, [r4, #0xd10]
and r0, r0, #0xff
cmp r1, r0
bhi _0214ce48
ldrb r1, [r4, #0xd15]
mov r0, #0
add r1, r1, #1
strb r1, [r4, #0xd15]
strb r0, [r4, #0xd0f]
ldrb r0, [r4, #0xd15]
bl func_ov61_0214c9e4
strb r0, [r4, #0xd11]
_0214ce48:
add r0, r4, #0xd00
ldrsb r0, [r0, #0x11]
cmp r0, #0
bge _0214ce70
mov r2, #0
mov r0, r4
mov r1, #5
strb r2, [r4, #0xd15]
bl func_ov61_0214ceb0
ldmia sp!, {r4, pc}
_0214ce70:
bl func_0200e8f8
str r0, [r4, #0xcb0]
str r1, [r4, #0xcb4]
ldrb r3, [r4, #0xd0f]
add r1, r4, #0x304
mov r0, #0x24
add r2, r4, #0xd00
mla r1, r3, r0, r1
ldrsb r2, [r2, #0x11]
ldr r0, _0214ceac ; =data_ov61_0217a30c
mov r3, #0x300000
bl func_ov61_0214d098
_0214cea0:
mov r0, #5
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214cd90
_0214cea8: .word 0x000082ea
_0214ceac: .word data_ov61_0217a30c
.global func_ov61_0214ceb0
arm_func_start func_ov61_0214ceb0
func_ov61_0214ceb0: ; 0x0214ceb0
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
mov r5, r0
cmp r4, #3
beq _0214ced8
cmp r4, #4
beq _0214cf38
cmp r4, #5
beq _0214cf44
b _0214cf64
_0214ced8:
ldrb r1, [r5, #0xd12]
cmp r1, #0
addeq r1, r5, #0xd00
ldreqh r1, [r1, #0x16]
cmpeq r1, #0
beq _0214cf14
mov r0, #1
bl func_ov61_0214c408
cmp r0, #0
movne r4, #4
bne _0214cf64
mov r0, r5
bl func_ov61_0214d038
mov r4, r0
b _0214cf64
_0214cf14:
ldrb r1, [r5, #0xd0b]
mov r1, r1, lsl #0x18
mov r1, r1, lsr #0x1c
cmp r1, #1
movhs r4, #6
bhs _0214cf64
bl func_ov61_0214cc20
mov r4, r0
b _0214cf64
_0214cf38:
bl func_ov61_0214d038
mov r4, r0
b _0214cf64
_0214cf44:
ldrb r1, [r5, #0xd0b]
mov r1, r1, lsl #0x18
mov r1, r1, lsr #0x1c
cmp r1, #1
movhs r4, #6
bhs _0214cf64
bl func_ov61_0214cc20
mov r4, r0
_0214cf64:
mov r0, r4
bl func_ov61_0214ca4c
mov r0, r4
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0214ceb0
.global func_ov61_0214cf74
arm_func_start func_ov61_0214cf74
func_ov61_0214cf74: ; 0x0214cf74
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
mov r5, r0
cmp r4, #0x11
moveq r0, r4
ldmeqia sp!, {r3, r4, r5, pc}
ldrb r2, [r5, #0xd12]
mov r1, #0
cmp r2, #0
bls _0214cfbc
_0214cf9c:
add r0, r5, r1, lsl #2
ldrb r0, [r0, #0x444]
cmp r0, #0
beq _0214cfbc
add r0, r1, #1
and r1, r0, #0xff
cmp r1, r2
blo _0214cf9c
_0214cfbc:
cmp r4, #6
bne _0214cff0
cmp r2, r1
bne _0214d01c
cmp r1, #0
bne _0214cfe0
mov r0, #5
bl func_ov61_0214b40c
b _0214cfe8
_0214cfe0:
mov r0, #6
bl func_ov61_0214b40c
_0214cfe8:
mov r0, #0x11
ldmia sp!, {r3, r4, r5, pc}
_0214cff0:
cmp r2, #0
moveq r0, r4
ldmeqia sp!, {r3, r4, r5, pc}
cmp r2, r1
moveq r0, r4
ldmeqia sp!, {r3, r4, r5, pc}
add r0, r5, r1, lsl #2
ldrb r0, [r0, #0x446]
cmp r0, #0x14
movlo r0, r4
ldmloia sp!, {r3, r4, r5, pc}
_0214d01c:
strb r1, [r5, #0xd13]
bl func_ov61_0215ef94
cmp r0, #1
strneb r4, [r5, #0xd0e]
movne r4, #7
mov r0, r4
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0214cf74
.global func_ov61_0214d038
arm_func_start func_ov61_0214d038
func_ov61_0214d038: ; 0x0214d038
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0xd00
ldrh r0, [r0, #0x16]
cmp r0, #0
beq _0214d074
mov r0, #2
bl func_ov61_0214c408
cmp r0, #0
beq _0214d074
mov r0, #0
bl func_ov61_0214c9e4
strb r0, [r4, #0xd11]
mov r0, #5
ldmia sp!, {r4, pc}
_0214d074:
ldrb r0, [r4, #0xd0b]
mov r0, r0, lsl #0x18
mov r0, r0, lsr #0x1c
cmp r0, #1
movhs r0, #6
ldmhsia sp!, {r4, pc}
mov r0, r4
bl func_ov61_0214cc20
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0214d038
.global func_ov61_0214d098
arm_func_start func_ov61_0214d098
func_ov61_0214d098: ; 0x0214d098
stmdb sp!, {r3, lr}
ldr ip, _0214d0b8 ; =data_ov61_0217a244
cmp r2, #0xc
movgt r2, #0xc
ldr r2, [ip, r2, lsl #2]
orr r2, r3, r2
bl func_ov61_0215edfc
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0214d098
_0214d0b8: .word data_ov61_0217a244
.global func_ov61_0214d0bc
arm_func_start func_ov61_0214d0bc
func_ov61_0214d0bc: ; 0x0214d0bc
stmdb sp!, {r4, lr}
sub sp, sp, #0x10
bl func_ov61_0215f568
mov r4, r0
mov r0, #0x10
bl func_ov61_0214b340
cmp r4, #1
bne _0214d128
ldrb r1, [r0, #0xd0a]
mov r0, #0
str r1, [sp]
str r0, [sp, #4]
str r0, [sp, #8]
str r0, [sp, #0xc]
bl func_ov61_0214c408
ldr r1, _0214d140 ; =func_ov61_0214bac4
add r0, sp, #0
bl func_ov61_0215eb08
cmp r0, #1
beq _0214d114
cmp r0, #4
blt _0214d134
_0214d114:
mov r0, #1
bl func_ov61_0214b40c
add sp, sp, #0x10
mov r0, #0x11
ldmia sp!, {r4, pc}
_0214d128:
add sp, sp, #0x10
mov r0, #1
ldmia sp!, {r4, pc}
_0214d134:
mov r0, #2
add sp, sp, #0x10
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214d0bc
_0214d140: .word func_ov61_0214bac4
.global func_ov61_0214d144
arm_func_start func_ov61_0214d144
func_ov61_0214d144: ; 0x0214d144
stmdb sp!, {r3, r4, r5, lr}
bl func_ov61_0214b3f8
mov r4, r0
mov r0, #0x10
bl func_ov61_0214b340
mov r5, r0
bl func_ov61_0215f568
cmp r0, #9
bne _0214d1e8
sub r0, r4, #0xa
cmp r0, #5
addls pc, pc, r0, lsl #2
b _0214d238
_0214d178: ; jump table
b _0214d190 ; case 0
b _0214d1dc ; case 1
b _0214d1a0 ; case 2
b _0214d1b0 ; case 3
b _0214d1bc ; case 4
b _0214d1cc ; case 5
_0214d190:
mov r0, r5
bl func_ov61_0214d240
mov r4, r0
b _0214d238
_0214d1a0:
mov r0, r5
bl func_ov61_0214d2a4
mov r4, r0
b _0214d238
_0214d1b0:
bl func_ov61_0214d334
mov r4, r0
b _0214d238
_0214d1bc:
mov r0, r5
bl func_ov61_0214d360
mov r4, r0
b _0214d238
_0214d1cc:
mov r0, r5
bl func_ov61_0214d3cc
mov r4, r0
b _0214d238
_0214d1dc:
bl func_ov61_0214d3e0
mov r4, r0
b _0214d238
_0214d1e8:
cmp r4, #0xb
beq _0214d210
cmp r4, #0xe
beq _0214d21c
cmp r4, #0xf
bne _0214d224
mov r0, r5
bl func_ov61_0214d3cc
mov r4, r0
b _0214d238
_0214d210:
bl func_ov61_0214d3e0
mov r4, r0
b _0214d238
_0214d21c:
bl func_ov61_02150574
bl func_ov61_0215047c
_0214d224:
ldrb r0, [r5, #0xd13]
mov r1, #2
mov r4, #0xb
add r0, r5, r0, lsl #2
strb r1, [r0, #0x444]
_0214d238:
mov r0, r4
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0214d144
.global func_ov61_0214d240
arm_func_start func_ov61_0214d240
func_ov61_0214d240: ; 0x0214d240
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r0, #1
bl func_ov61_0214b340
mov r5, r0
mov r0, #4
bl func_ov61_0214b340
mov r4, r0
mov r0, r5
mov r1, r6
mov r2, r4
bl func_ov61_0214d410
ldr r1, _0214d2a0 ; =data_ov61_02180c40
mov r2, #4
mov r0, r4
str r2, [r1]
bl func_ov61_021593d4
cmp r0, #0
moveq r0, #0xc
ldmeqia sp!, {r4, r5, r6, pc}
mov r0, #2
bl func_ov61_0214b40c
mov r0, #0x11
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0214d240
_0214d2a0: .word data_ov61_02180c40
.global func_ov61_0214d2a4
arm_func_start func_ov61_0214d2a4
func_ov61_0214d2a4: ; 0x0214d2a4
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_02159200
cmp r0, #0
beq _0214d2dc
mov r0, r4
bl func_ov61_0214d578
ldrb r0, [r4, #0xd0c]
mov r0, r0, lsl #0x1a
mov r0, r0, lsr #0x1e
cmp r0, #1
moveq r0, #0xf
movne r0, #0xd
ldmia sp!, {r4, pc}
_0214d2dc:
bl func_0200e8f8
ldr r3, [r4, #0xcb0]
ldr r2, [r4, #0xcb4]
subs r3, r0, r3
sbc r0, r1, r2
mov r1, r0, lsl #0x6
ldr r2, _0214d330 ; =0x01ff6210
orr r1, r1, r3, lsr #26
mov r0, r3, lsl #0x6
mov r3, #0
bl func_02002bac
cmp r1, #0
cmpeq r0, #0xa
movlo r0, #0xc
ldmloia sp!, {r4, pc}
ldrb r1, [r4, #0xd13]
mov r2, #1
mov r0, #0xb
add r1, r4, r1, lsl #2
strb r2, [r1, #0x444]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214d2a4
_0214d330: .word 0x01ff6210
.global func_ov61_0214d334
arm_func_start func_ov61_0214d334
func_ov61_0214d334: ; 0x0214d334
stmdb sp!, {r3, lr}
mov r0, #8
bl func_ov61_0214b340
bl func_ov61_0215039c
cmp r0, #0
moveq r0, #0xe
ldmeqia sp!, {r3, pc}
mov r0, #3
bl func_ov61_0214b40c
mov r0, #0x11
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0214d334
.global func_ov61_0214d360
arm_func_start func_ov61_0214d360
func_ov61_0214d360: ; 0x0214d360
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r0, #1
bl func_ov61_0214b340
mov r4, r0
bl func_ov61_021505dc
movs r5, r0
beq _0214d3c4
ldrb r0, [r6, #0xd0d]
bl func_ov61_0214b460
ldrb r1, [r4, #0x15]
cmp r1, r0
bne _0214d39c
bl func_ov61_0215061c
str r0, [r4, #0x10]
_0214d39c:
bl func_ov61_0215047c
cmp r5, #0xb
moveq r0, #0xf
ldmeqia sp!, {r4, r5, r6, pc}
ldrb r1, [r6, #0xd13]
mov r2, #1
mov r0, #0xb
add r1, r6, r1, lsl #2
strb r2, [r1, #0x444]
ldmia sp!, {r4, r5, r6, pc}
_0214d3c4:
mov r0, #0xe
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0214d360
.global func_ov61_0214d3cc
arm_func_start func_ov61_0214d3cc
func_ov61_0214d3cc: ; 0x0214d3cc
stmdb sp!, {r3, lr}
ldrb r0, [r0, #0xd0d]
bl func_ov61_0214b444
mov r0, #0x10
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0214d3cc
.global func_ov61_0214d3e0
arm_func_start func_ov61_0214d3e0
func_ov61_0214d3e0: ; 0x0214d3e0
stmdb sp!, {r3, lr}
bl func_ov61_02158a3c
cmp r0, #0
movne r0, #0xb
ldmneia sp!, {r3, pc}
bl func_ov61_02159548
cmp r0, #0
mvnne r1, #0x26
cmpne r0, r1
moveq r0, #9
movne r0, #0xb
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0214d3e0
.global func_ov61_0214d410
arm_func_start func_ov61_0214d410
func_ov61_0214d410: ; 0x0214d410
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r4, r2
mov r5, r1
ldr r0, _0214d4cc ; =data_ov61_0217a278
mov r1, r4
mov r2, #0x58
bl func_02007ad8
ldr r0, [r6]
str r0, [r4, #4]
ldr r0, [r6, #4]
str r0, [r4, #8]
ldrb r0, [r5, #0xd0d]
cmp r0, #6
ldmhsia sp!, {r4, r5, r6, pc}
bl func_ov61_0214b460
add r5, r5, r0, lsl #8
ldrb r0, [r5, #0xc0]
cmp r0, #0
beq _0214d4a8
mov r0, #0
str r0, [r4, #0xc]
add r0, r5, #0xc0
bl func_ov61_0214d4d0
str r0, [r4, #0x10]
ldrb r0, [r5, #0xd0]
bl func_ov61_0214d524
str r0, [r4, #0x14]
add r0, r5, #0xc4
bl func_ov61_0214d4d0
str r0, [r4, #0x18]
add r0, r5, #0xc8
bl func_ov61_0214d4d0
str r0, [r4, #0x1c]
add r0, r5, #0xcc
bl func_ov61_0214d4d0
str r0, [r4, #0x20]
ldmia sp!, {r4, r5, r6, pc}
_0214d4a8:
mov r0, #1
str r0, [r4, #0xc]
mov r0, #0
str r0, [r4, #0x10]
str r0, [r4, #0x14]
str r0, [r4, #0x18]
str r0, [r4, #0x1c]
str r0, [r4, #0x20]
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0214d410
_0214d4cc: .word data_ov61_0217a278
.global func_ov61_0214d4d0
arm_func_start func_ov61_0214d4d0
func_ov61_0214d4d0: ; 0x0214d4d0
ldrb r1, [r0]
ldrb r2, [r0, #1]
mov r3, #0
orr r3, r3, r1, lsl #24
ldrb r1, [r0, #2]
orr r2, r3, r2, lsl #16
ldrb r0, [r0, #3]
orr r1, r2, r1, lsl #8
orr r3, r1, r0
mov r1, r3, lsr #0x18
mov r0, r3, lsr #0x8
mov r2, r3, lsl #0x8
mov r3, r3, lsl #0x18
and r1, r1, #0xff
and r0, r0, #0xff00
and r2, r2, #0xff0000
orr r0, r1, r0
and r1, r3, #0xff000000
orr r0, r2, r0
orr r0, r1, r0
bx lr
arm_func_end func_ov61_0214d4d0
.global func_ov61_0214d524
arm_func_start func_ov61_0214d524
func_ov61_0214d524: ; 0x0214d524
rsb r1, r0, #0x20
cmp r1, #0
mvn r3, #0
mov r0, #0
ble _0214d548
_0214d538:
add r0, r0, #1
cmp r0, r1
mov r3, r3, lsl #0x1
blt _0214d538
_0214d548:
mov r1, r3, lsr #0x18
mov r0, r3, lsr #0x8
mov r2, r3, lsl #0x8
mov r3, r3, lsl #0x18
and r1, r1, #0xff
and r0, r0, #0xff00
and r2, r2, #0xff0000
orr r0, r1, r0
and r1, r3, #0xff000000
orr r0, r2, r0
orr r0, r1, r0
bx lr
arm_func_end func_ov61_0214d524
.global func_ov61_0214d578
arm_func_start func_ov61_0214d578
func_ov61_0214d578: ; 0x0214d578
stmdb sp!, {r4, lr}
sub sp, sp, #8
mov r4, r0
ldrb r0, [r4, #0xd0d]
cmp r0, #6
addhs sp, sp, #8
ldmhsia sp!, {r4, pc}
bl func_ov61_0214b460
add r4, r4, r0, lsl #8
ldrb r0, [r4, #0xc0]
ldrb r2, [r4, #0xc8]
ldrb r1, [r4, #0xc9]
cmp r0, #0
ldrb r3, [r4, #0xca]
add r1, r2, r1
ldrb r2, [r4, #0xcb]
add r1, r3, r1
addne sp, sp, #8
add r0, r2, r1
ldmneia sp!, {r4, pc}
cmp r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r4, pc}
add r0, r4, #0xc8
bl func_ov61_0214d4d0
str r0, [sp, #4]
add r0, r4, #0xcc
bl func_ov61_0214d4d0
str r0, [sp]
add r0, sp, #4
add r1, sp, #0
bl func_ov61_02159238
add sp, sp, #8
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0214d578
.global func_ov61_0214d600
arm_func_start func_ov61_0214d600
func_ov61_0214d600: ; 0x0214d600
stmdb sp!, {r3, lr}
sub sp, sp, #0x18
add r1, sp, #0
bl func_ov61_0214d6e0
ldr r1, _0214d634 ; =data_ov61_0217a8b8
add r0, sp, #0
mov r2, #8
bl func_0204366c
cmp r0, #0
moveq r0, #1
movne r0, #0
add sp, sp, #0x18
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0214d600
_0214d634: .word data_ov61_0217a8b8
.global func_ov61_0214d638
arm_func_start func_ov61_0214d638
func_ov61_0214d638: ; 0x0214d638
stmdb sp!, {r4, lr}
sub sp, sp, #0x18
mov r4, r1
add r1, sp, #0
bl func_ov61_0214d6e0
add r0, sp, #0
mov r1, r4
bl func_ov61_0214d7e4
add sp, sp, #0x18
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0214d638
.global func_ov61_0214d660
arm_func_start func_ov61_0214d660
func_ov61_0214d660: ; 0x0214d660
stmdb sp!, {r4, lr}
sub sp, sp, #0x18
mov r4, r1
add r1, sp, #0
bl func_ov61_0214d6e0
ldr r1, _0214d6a8 ; =data_ov61_0217a8b8
add r0, sp, #0
mov r2, #8
bl func_0204366c
cmp r0, #0
addne sp, sp, #0x18
ldmneia sp!, {r4, pc}
add r0, sp, #8
mov r1, r4
mov r2, #0xa
bl func_02007ad8
add sp, sp, #0x18
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214d660
_0214d6a8: .word data_ov61_0217a8b8
.global func_ov61_0214d6ac
arm_func_start func_ov61_0214d6ac
func_ov61_0214d6ac: ; 0x0214d6ac
stmdb sp!, {r3, lr}
ldr r1, _0214d6cc ; =data_ov61_0217a8c4
mov r2, #8
bl func_0204366c
cmp r0, #0
moveq r0, #1
movne r0, #0
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0214d6ac
_0214d6cc: .word data_ov61_0217a8c4
.global func_ov61_0214d6d0
arm_func_start func_ov61_0214d6d0
func_ov61_0214d6d0: ; 0x0214d6d0
ldr ip, _0214d6dc ; =func_ov61_0214d830
add r0, r0, #0xc
bx ip
.align 2, 0
arm_func_end func_ov61_0214d6d0
_0214d6dc: .word func_ov61_0214d830
.global func_ov61_0214d6e0
arm_func_start func_ov61_0214d6e0
func_ov61_0214d6e0: ; 0x0214d6e0
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #0x18
ldr lr, _0214d7dc ; =data_ov61_0217a2d3
add ip, sp, #0
mov r4, r1
mov r3, #0xc
_0214d6f8:
ldrb r2, [lr]
ldrb r1, [lr, #1]
add lr, lr, #2
strb r2, [ip]
strb r1, [ip, #1]
add ip, ip, #2
subs r3, r3, #1
bne _0214d6f8
mov r1, r4
mov r2, #0x20
mov r3, #0x18
bl func_ov61_0214da4c
ldr r0, _0214d7e0 ; =data_ov61_0217a850
mov r3, #0
_0214d730:
ldr r1, [r0, #8]
ldrb r2, [r4, r3]
ldrsb r1, [r1, r3]
eor r1, r2, r1
strb r1, [r4, r3]
add r3, r3, #1
cmp r3, #0x18
blt _0214d730
mov r7, #0
add ip, sp, #0
mov r1, #0xff
_0214d75c:
and lr, r7, #0xff
ldrb r0, [ip, lr]
mov r5, lr
ldrb r6, [r4, r7]
cmp r0, #0xff
beq _0214d7a0
_0214d774:
add r3, ip, r5
ldrb r5, [ip, r5]
ldrb r0, [ip, lr]
ldrb r2, [r4, r5]
mov lr, r5
strb r6, [r4, r0]
strb r1, [r3]
ldrb r0, [ip, r5]
mov r6, r2
cmp r0, #0xff
bne _0214d774
_0214d7a0:
add r7, r7, #1
cmp r7, #0x18
blt _0214d75c
ldr r0, _0214d7e0 ; =data_ov61_0217a850
mov r3, #0
_0214d7b4:
ldr r1, [r0]
ldrb r2, [r4, r3]
ldrsb r1, [r1, r3]
eor r1, r2, r1
strb r1, [r4, r3]
add r3, r3, #1
cmp r3, #0x18
blt _0214d7b4
add sp, sp, #0x18
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0214d6e0
_0214d7dc: .word data_ov61_0217a2d3
_0214d7e0: .word data_ov61_0217a850
.global func_ov61_0214d7e4
arm_func_start func_ov61_0214d7e4
func_ov61_0214d7e4: ; 0x0214d7e4
stmdb sp!, {r4, r5, lr}
sub sp, sp, #0x6c
mov r5, r0
add r0, sp, #0x14
mov r4, r1
blx func_02050218
add r0, sp, #0x14
mov r1, r5
mov r2, #0x18
blx func_02050240
add r0, sp, #0
add r1, sp, #0x14
blx func_020502d4
add r0, sp, #3
mov r1, r4
mov r2, #0xd
bl func_02007ad8
add sp, sp, #0x6c
ldmia sp!, {r4, r5, pc}
arm_func_end func_ov61_0214d7e4
.global func_ov61_0214d830
arm_func_start func_ov61_0214d830
func_ov61_0214d830: ; 0x0214d830
stmdb sp!, {r4, lr}
sub sp, sp, #0x10
ldr lr, _0214d9cc ; =0x92492493
mov r4, r1
mov r1, #0
mov ip, #7
_0214d848:
smull r2, r3, lr, r1
add r3, r1, r3
mov r2, r1, lsr #0x1f
add r3, r2, r3, asr #2
smull r2, r3, ip, r3
sub r3, r1, r2
add r2, r0, r3
ldrb r3, [r0, r1]
ldrb r2, [r2, #0xd]
eor r2, r3, r2
strb r2, [r4, r1]
add r1, r1, #1
cmp r1, #0xd
blt _0214d848
mov ip, #0
_0214d884:
add r3, r4, ip
add r1, r0, ip
ldrb r2, [r3, #3]
ldrb r1, [r1, #0xd]
add ip, ip, #1
cmp ip, #7
eor r1, r2, r1
strb r1, [r3, #3]
blt _0214d884
ldr r0, _0214d9d0 ; =data_ov61_0217a850
mov r3, #0
_0214d8b0:
ldr r1, [r0, #4]
ldrb r2, [r4, r3]
ldrsb r1, [r1, r3]
eor r1, r2, r1
strb r1, [r4, r3]
add r3, r3, #1
cmp r3, #0xd
blt _0214d8b0
add r1, sp, #0
mov r0, r4
mov r2, #0xd
bl func_02007ad8
ldr r3, _0214d9d4 ; =data_ov61_0217a2ec
add r2, sp, #0
mov ip, #0
_0214d8ec:
ldrb r1, [r2], #1
ldrb r0, [r3], #1
add ip, ip, #1
cmp ip, #0xd
strb r1, [r4, r0]
blt _0214d8ec
ldr r0, _0214d9d0 ; =data_ov61_0217a850
mov r3, #0
_0214d90c:
ldr r1, [r0, #0xc]
ldrb r2, [r4, r3]
ldrsb r1, [r1, r3]
eor r1, r2, r1
strb r1, [r4, r3]
add r3, r3, #1
cmp r3, #0xd
blt _0214d90c
ldr r2, _0214d9d8 ; =data_ov61_0217a2fc
mov ip, #0
_0214d934:
ldrb r3, [r4, ip]
mov r0, r3, asr #0x4
and r1, r0, #0xf
and r0, r3, #0xf
ldrb r1, [r2, r1]
ldrb r0, [r2, r0]
orr r0, r0, r1, lsl #4
strb r0, [r4, ip]
add ip, ip, #1
cmp ip, #0xd
blt _0214d934
mov r1, #0
_0214d964:
add r0, r4, r1
ldrb r3, [r4, r1]
ldrb r2, [r0, #6]
eor r2, r3, r2
strb r2, [r4, r1]
ldrb r3, [r0, #3]
ldrb r2, [r0, #9]
eor r2, r3, r2
strb r2, [r0, #3]
ldrb r3, [r0, #6]
and r2, r2, #0xff
eor r2, r3, r2
strb r2, [r0, #6]
ldrb r3, [r0, #9]
ldrb r2, [r4, r1]
eor r2, r3, r2
strb r2, [r0, #9]
ldrb r0, [r4, r1]
ldrb r2, [r4, #0xc]
add r1, r1, #1
cmp r1, #3
eor r0, r2, r0
strb r0, [r4, #0xc]
blt _0214d964
add sp, sp, #0x10
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214d830
_0214d9cc: .word 0x92492493
_0214d9d0: .word data_ov61_0217a850
_0214d9d4: .word data_ov61_0217a2ec
_0214d9d8: .word data_ov61_0217a2fc
.global func_ov61_0214d9dc
arm_func_start func_ov61_0214d9dc
func_ov61_0214d9dc: ; 0x0214d9dc
cmp r0, #0x41
blo _0214d9f0
cmp r0, #0x5a
subls r0, r0, #0x41
bxls lr
_0214d9f0:
cmp r0, #0x61
blo _0214da08
cmp r0, #0x7a
subls r0, r0, #0x61
addls r0, r0, #0x1a
bxls lr
_0214da08:
cmp r0, #0x30
blo _0214da20
cmp r0, #0x39
subls r0, r0, #0x30
addls r0, r0, #0x34
bxls lr
_0214da20:
cmp r0, #0x2b
moveq r0, #0x3e
bxeq lr
cmp r0, #0x2f
moveq r0, #0x3f
bxeq lr
cmp r0, #0x3d
movne r0, #1
moveq r0, #0
rsb r0, r0, #0
bx lr
arm_func_end func_ov61_0214d9dc
.global func_ov61_0214da4c
arm_func_start func_ov61_0214da4c
func_ov61_0214da4c: ; 0x0214da4c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x18
add r4, r2, r2, lsl #1
str r0, [sp]
mov r0, r4, lsr #0x2
str r1, [sp, #4]
cmp r3, r4, lsr #2
str r0, [sp, #8]
blo _0214da80
and r11, r2, #3
sub r0, r2, r11
str r0, [sp, #0xc]
b _0214da8c
_0214da80:
add sp, sp, #0x18
mvn r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0214da8c:
cmp r0, #0
mov r7, #0
ble _0214db14
mov r9, r7
add r5, sp, #0x14
mov r4, #6
_0214daa4:
ldr r0, [sp]
mov r6, #0
mov r8, r6
add r10, r0, r7
_0214dab4:
ldrb r0, [r10], #1
bl func_ov61_0214d9dc
rsb r1, r8, #3
mul r2, r1, r4
orr r6, r6, r0, lsl r2
add r8, r8, #1
cmp r8, #4
blt _0214dab4
ldr r0, [sp, #4]
add r1, r9, r9, lsl #1
mov r2, #0
str r6, [sp, #0x14]
add r1, r0, r1
_0214dae8:
rsb r0, r2, #2
ldrb r0, [r5, r0]
add r2, r2, #1
cmp r2, #3
strb r0, [r1], #1
blt _0214dae8
ldr r0, [sp, #0xc]
add r7, r7, #4
cmp r7, r0
add r9, r9, #1
blt _0214daa4
_0214db14:
cmp r11, #0
beq _0214dba8
mov r5, #0
mov r6, r5
str r5, [sp, #0x10]
ble _0214db68
ldr r1, [sp]
ldr r0, [sp, #0xc]
mov r8, r5
add r4, r1, r0
mov r7, #6
_0214db40:
ldrb r0, [r4], #1
bl func_ov61_0214d9dc
rsb r1, r6, #3
mul r2, r1, r7
orr r5, r5, r0, lsl r2
add r6, r6, #1
cmp r6, r11
orr r8, r8, r5
blt _0214db40
str r8, [sp, #0x10]
_0214db68:
cmp r11, #0
mov r3, #0
ble _0214dba8
ldr r0, [sp, #0xc]
add r1, r0, r0, lsl #1
mov r0, r1, asr #0x1
add r1, r1, r0, lsr #30
ldr r0, [sp, #4]
add r2, r0, r1, asr #2
add r1, sp, #0x10
_0214db90:
rsb r0, r3, #2
ldrb r0, [r1, r0]
add r3, r3, #1
cmp r3, r11
strb r0, [r2], #1
blt _0214db90
_0214dba8:
ldr r0, [sp, #8]
add sp, sp, #0x18
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_0214da4c
.global func_ov61_0214dbb4
arm_func_start func_ov61_0214dbb4
func_ov61_0214dbb4: ; 0x0214dbb4
ldr r1, _0214dbc0 ; =data_ov61_0217a8d0
str r0, [r1]
bx lr
.align 2, 0
arm_func_end func_ov61_0214dbb4
_0214dbc0: .word data_ov61_0217a8d0
.global func_ov61_0214dbc4
arm_func_start func_ov61_0214dbc4
func_ov61_0214dbc4: ; 0x0214dbc4
stmdb sp!, {r3, r4, r5, lr}
ldr r2, _0214dcd8 ; =data_ov61_0217f368
mov r5, r0
ldr r0, [r2, #8]
mov r4, r1
cmp r0, #0
ldr r2, [r5, #0x40]
movne r0, #2
ldmneia sp!, {r3, r4, r5, pc}
ldr r0, _0214dcdc ; =data_ov61_0217a914
ldr r1, _0214dce0 ; =0x000013f4
blx r2
ldr r1, _0214dcd8 ; =data_ov61_0217f368
cmp r0, #0
str r0, [r1, #8]
moveq r0, #2
ldmeqia sp!, {r3, r4, r5, pc}
ldr r2, _0214dce0 ; =0x000013f4
mov r1, #0
bl func_02007a44
ldr r3, _0214dcd8 ; =data_ov61_0217f368
mov r1, #0
ldr r0, [r3, #8]
mov r2, #0x1c4
add r0, r0, #0x1000
str r4, [r0, #0x314]
str r1, [r3]
ldr r0, [r3, #8]
add r0, r0, #8
add r0, r0, #0x1000
bl func_02007a44
ldr r1, _0214dcd8 ; =data_ov61_0217f368
ldr r2, _0214dce4 ; =0x00004e84
ldr r0, [r1, #8]
mov r4, #4
add r0, r0, #0x1000
str r2, [r0, #8]
ldr lr, [r1, #8]
add r0, lr, #0x1cc
add ip, r0, #0x1000
_0214dc64:
ldmia r5!, {r0, r1, r2, r3}
stmia ip!, {r0, r1, r2, r3}
subs r4, r4, #1
bne _0214dc64
ldmia r5, {r0, r1}
stmia ip, {r0, r1}
add r0, lr, #0x1100
mov r2, #0
strh r2, [r0, #0xfe]
ldr r1, _0214dcd8 ; =data_ov61_0217f368
mov r0, #1
ldr r1, [r1, #8]
add r1, r1, #0x1000
strb r2, [r1, #0x20b]
bl func_ov61_0214df8c
ldr r2, _0214dcd8 ; =data_ov61_0217f368
ldr r1, [r2, #8]
add r1, r1, #0x1000
str r0, [r1, #4]
ldr r0, [r2, #8]
add r0, r0, #0x1000
ldr r0, [r0, #4]
cmp r0, #0
ldmneia sp!, {r3, r4, r5, pc}
mov r0, #0
str r0, [r2, #4]
bl func_ov61_0214dce8
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0214dbc4
_0214dcd8: .word data_ov61_0217f368
_0214dcdc: .word data_ov61_0217a914
_0214dce0: .word 0x000013f4
_0214dce4: .word 0x00004e84
.global func_ov61_0214dce8
arm_func_start func_ov61_0214dce8
func_ov61_0214dce8: ; 0x0214dce8
stmdb sp!, {r3, lr}
sub sp, sp, #8
ldr r0, _0214dd90 ; =data_ov61_0217f368
ldr r0, [r0, #8]
add r0, r0, #0x3d8
add r0, r0, #0x1000
bl func_0200e02c
ldr r1, _0214dd90 ; =data_ov61_0217f368
mov r2, #0
ldr r0, [r1, #8]
add r0, r0, #0x1000
str r2, [r0, #0x3f0]
ldr r1, [r1, #8]
add r0, r1, #0x1000
ldr r0, [r0, #0x384]
cmp r0, #0
beq _0214dd44
add r0, r1, #0x318
add r0, r0, #0x1000
bl func_0200d86c
cmp r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r3, pc}
_0214dd44:
ldr r0, _0214dd90 ; =data_ov61_0217f368
mov r3, #0x1000
ldr lr, [r0, #8]
ldr r1, _0214dd94 ; =func_ov61_0214e09c
add r0, lr, #0x318
ldr r2, _0214dd98 ; =data_ov61_0217f370
str r3, [sp]
mov ip, #0x10
add r0, r0, #0x1000
add r3, lr, #0x1000
str ip, [sp, #4]
blx func_0200d5e4
ldr r0, _0214dd90 ; =data_ov61_0217f368
ldr r0, [r0, #8]
add r0, r0, #0x318
add r0, r0, #0x1000
bl func_0200d938
add sp, sp, #8
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0214dce8
_0214dd90: .word data_ov61_0217f368
_0214dd94: .word func_ov61_0214e09c
_0214dd98: .word data_ov61_0217f370
.global func_ov61_0214dd9c
arm_func_start func_ov61_0214dd9c
func_ov61_0214dd9c: ; 0x0214dd9c
stmdb sp!, {r3, lr}
ldr r0, _0214de24 ; =data_ov61_0217f368
ldr r0, [r0, #8]
cmp r0, #0
ldmeqia sp!, {r3, pc}
add r0, r0, #0x3d8
add r0, r0, #0x1000
bl func_0200e044
ldr r1, _0214de24 ; =data_ov61_0217f368
mov r2, #1
ldr r0, [r1, #8]
add r0, r0, #0x1000
str r2, [r0, #0x3f0]
ldr r0, [r1, #8]
add r0, r0, #0x3d8
add r0, r0, #0x1000
bl func_0200e0c8
ldr r0, _0214de24 ; =data_ov61_0217f368
ldr r0, [r0, #8]
add r0, r0, #0x1000
ldr r0, [r0, #0x314]
cmp r0, #0
beq _0214ddfc
bl func_ov61_0214f26c
_0214ddfc:
ldr r0, _0214de24 ; =data_ov61_0217f368
ldr r1, [r0, #8]
add r0, r1, #0x1000
ldr r0, [r0, #0x384]
cmp r0, #0
ldmeqia sp!, {r3, pc}
add r0, r1, #0x318
add r0, r0, #0x1000
bl func_0200d83c
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0214dd9c
_0214de24: .word data_ov61_0217f368
.global func_ov61_0214de28
arm_func_start func_ov61_0214de28
func_ov61_0214de28: ; 0x0214de28
stmdb sp!, {r4, lr}
ldr r0, _0214de78 ; =data_ov61_0217f368
ldr r0, [r0, #8]
cmp r0, #0
ldmeqia sp!, {r4, pc}
add r1, r0, #0x1000
ldr r0, [r1, #0x314]
ldr r4, [r1, #0x210]
cmp r0, #0
beq _0214de54
bl func_ov61_0214f7b0
_0214de54:
ldr r1, _0214de78 ; =data_ov61_0217f368
ldr r0, _0214de7c ; =data_ov61_0217a924
ldr r1, [r1, #8]
mov r2, #0
blx r4
ldr r0, _0214de78 ; =data_ov61_0217f368
mov r1, #0
str r1, [r0, #8]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214de28
_0214de78: .word data_ov61_0217f368
_0214de7c: .word data_ov61_0217a924
.global func_ov61_0214de80
arm_func_start func_ov61_0214de80
func_ov61_0214de80: ; 0x0214de80
stmdb sp!, {r3, lr}
ldr r0, _0214deac ; =data_ov61_0217f368
ldr r1, [r0, #8]
add r0, r1, #0x1000
ldr r0, [r0, #0x384]
cmp r0, #0
ldmeqia sp!, {r3, pc}
add r0, r1, #0x318
add r0, r0, #0x1000
bl func_0200d83c
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0214de80
_0214deac: .word data_ov61_0217f368
.global func_ov61_0214deb0
arm_func_start func_ov61_0214deb0
func_ov61_0214deb0: ; 0x0214deb0
stmdb sp!, {r4, lr}
ldr r0, _0214def8 ; =data_ov61_0217f368
ldr r0, [r0, #8]
cmp r0, #0
moveq r0, #0x16
ldmeqia sp!, {r4, pc}
add r0, r0, #0x3d8
add r0, r0, #0x1000
bl func_0200e044
ldr r0, _0214def8 ; =data_ov61_0217f368
ldr r1, [r0, #8]
add r0, r1, #0x3d8
add r1, r1, #0x1000
add r0, r0, #0x1000
ldr r4, [r1, #4]
bl func_0200e0c8
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214deb0
_0214def8: .word data_ov61_0217f368
.global func_ov61_0214defc
arm_func_start func_ov61_0214defc
func_ov61_0214defc: ; 0x0214defc
stmdb sp!, {r4, lr}
ldr r1, _0214df78 ; =data_ov61_0217f368
mov r4, r0
ldr r1, [r1, #8]
cmp r1, #0
bne _0214df20
mov r1, #0
mov r2, #0x1c4
bl func_02007a44
_0214df20:
ldr r0, _0214df78 ; =data_ov61_0217f368
mov r1, r4
ldr r0, [r0, #8]
mov r2, #0x1c4
add r0, r0, #8
add r0, r0, #0x1000
bl func_02007ad8
ldr r1, [r4]
ldr r0, _0214df7c ; =0x00004e20
cmp r1, r0
blt _0214df58
ldr r0, _0214df80 ; =0x00007530
cmp r1, r0
blt _0214df60
_0214df58:
ldr r0, _0214df84 ; =0x00005206
str r0, [r4]
_0214df60:
ldr r1, [r4]
ldr r0, _0214df88 ; =0x00004e84
cmp r1, r0
rsbge r0, r1, #0
strge r0, [r4]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214defc
_0214df78: .word data_ov61_0217f368
_0214df7c: .word 0x00004e20
_0214df80: .word 0x00007530
_0214df84: .word 0x00005206
_0214df88: .word 0x00004e84
.global func_ov61_0214df8c
arm_func_start func_ov61_0214df8c
func_ov61_0214df8c: ; 0x0214df8c
stmdb sp!, {r4, lr}
ldr r1, _0214e084 ; =data_ov61_0217a8d0
mov r4, r0
ldr r0, [r1]
ldr r1, _0214e088 ; =data_ov61_0217a934
bl strcmp
cmp r0, #0
ldrne r0, _0214e084 ; =data_ov61_0217a8d0
movne r1, #1
strne r1, [r0, #0x14]
ldr r0, _0214e08c ; =data_ov61_0217f368
ldr r2, _0214e084 ; =data_ov61_0217a8d0
ldr r0, [r0, #8]
ldr r1, _0214e090 ; =data_ov61_0217a8d0
add r0, r0, #0x1000
ldr r3, [r0, #0x20c]
str r3, [r2, #0xc]
ldr r3, [r0, #0x210]
str r3, [r2, #0x10]
ldr r0, [r0, #0x314]
bl func_ov61_0214effc
cmp r0, #0
movne r0, #4
ldmneia sp!, {r4, pc}
cmp r4, #1
bne _0214dffc
ldr r0, _0214e094 ; =data_ov61_0217f374
blx func_ov00_02077af8
_0214dffc:
ldr r0, _0214e08c ; =data_ov61_0217f368
ldr r1, [r0, #8]
add r0, r1, #0x1000
add r2, r1, #0x1cc
ldr r0, [r0, #0x314]
add r1, r1, #0x1200
add r2, r2, #0x1000
bl func_ov61_0214e7f0
ldr r2, _0214e08c ; =data_ov61_0217f368
ldr r1, [r2, #8]
add r1, r1, #0x1000
str r0, [r1, #4]
ldr r0, [r2, #8]
add r0, r0, #0x1000
ldr r1, [r0, #4]
cmp r1, #0
movne r0, #4
ldmneia sp!, {r4, pc}
ldr r0, [r0, #0x314]
bl func_ov61_0214f118
cmp r0, #0
movne r0, #4
ldmneia sp!, {r4, pc}
ldr r0, _0214e098 ; =data_027e02a0
ldr r0, [r0, #4]
bl func_0200db20
ldr r1, _0214e08c ; =data_ov61_0217f368
ldr r2, [r1, #8]
sub r1, r0, #1
add r0, r2, #0x1000
ldr r0, [r0, #0x314]
bl func_ov61_0214f1b0
mov r0, #0
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214df8c
_0214e084: .word data_ov61_0217a8d0
_0214e088: .word data_ov61_0217a934
_0214e08c: .word data_ov61_0217f368
_0214e090: .word data_ov61_0217a8d0
_0214e094: .word data_ov61_0217f374
_0214e098: .word data_027e02a0
.global func_ov61_0214e09c
arm_func_start func_ov61_0214e09c
func_ov61_0214e09c: ; 0x0214e09c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
mov r8, #0
_0214e0a4:
ldr r0, _0214e340 ; =data_ov61_0217f368
ldr r0, [r0, #8]
add r0, r0, #0x1000
ldr r1, [r0, #0x314]
add r0, r1, #0x1000
ldr r0, [r0, #0xba4]
cmp r0, #0
beq _0214e0d0
add r0, r1, #0x338
add r0, r0, #0x1800
bl func_0200d83c
_0214e0d0:
ldr r2, _0214e340 ; =data_ov61_0217f368
ldr r0, [r2, #8]
add r0, r0, #0x1000
ldr r1, [r0, #0x314]
add r1, r1, #0x1000
ldr r1, [r1, #0x20]
cmp r1, #8
beq _0214e16c
ldr r1, _0214e344 ; =0x00004e84
str r1, [r0, #8]
ldr r0, [r2, #8]
add r0, r0, #0x1000
ldr r0, [r0, #0x314]
add r0, r0, #0x1000
ldr r0, [r0, #0x20]
cmp r0, #7
bne _0214e120
mov r0, #0x14
bl func_ov61_0214e994
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0214e120:
cmp r8, #2
ble _0214e15c
cmp r0, #2
bne _0214e13c
mov r0, #9
bl func_ov61_0214e994
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0214e13c:
cmp r0, #3
bne _0214e150
mov r0, #0xb
bl func_ov61_0214e994
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0214e150:
mov r0, #0xd
bl func_ov61_0214e994
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0214e15c:
mov r0, #1
add r8, r8, #1
str r0, [sp]
b _0214e1dc
_0214e16c:
bl func_ov61_0214e350
cmp r0, #0x10
beq _0214e194
cmp r0, #0x11
beq _0214e1b8
cmp r0, #0x15
bne _0214e1c0
mov r0, #0x15
bl func_ov61_0214e994
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0214e194:
cmp r8, #2
ble _0214e1a8
mov r0, #0x10
bl func_ov61_0214e994
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0214e1a8:
mov r0, #0
add r8, r8, #1
str r0, [sp]
b _0214e1dc
_0214e1b8:
bl func_ov61_0214e994
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0214e1c0:
cmp r8, #2
blt _0214e1d0
bl func_ov61_0214e994
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0214e1d0:
mov r0, #1
add r8, r8, #1
str r0, [sp]
_0214e1dc:
bl func_0200e8f8
mov r9, r0
mov r10, r1
bl func_0200e8f8
subs r2, r0, r9
sbc r0, r1, r10
mov r1, r0, lsl #0x6
orr r1, r1, r2, lsr #26
mov r0, r2, lsl #0x6
ldr r2, _0214e348 ; =0x000082ea
mov r3, #0
bl func_02002bac
cmp r1, #0
ldr r7, _0214e34c ; =0x00001388
cmpeq r0, r7
bhs _0214e2bc
mov r11, #0
ldr r6, _0214e348 ; =0x000082ea
ldr r5, _0214e340 ; =data_ov61_0217f368
mov r4, r11
_0214e22c:
ldr r0, [r5, #8]
add r0, r0, #0x3d8
add r0, r0, #0x1000
bl func_0200e044
ldr r2, [r5, #8]
add r0, r2, #0x1000
ldr r1, [r0, #0x3f0]
cmp r1, #1
bne _0214e278
ldr r2, _0214e344 ; =0x00004e84
ldr r1, _0214e340 ; =data_ov61_0217f368
str r2, [r0, #8]
ldr r0, [r1, #8]
add r0, r0, #0x3d8
add r0, r0, #0x1000
bl func_0200e0c8
mov r0, #0x14
bl func_ov61_0214e994
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0214e278:
add r0, r2, #0x3d8
add r0, r0, #0x1000
bl func_0200e0c8
mov r0, r7
bl func_0200db28
bl func_0200e8f8
subs r2, r0, r9
sbc r0, r1, r10
mov r1, r0, lsl #0x6
orr r1, r1, r2, lsr #26
mov r0, r2, lsl #0x6
mov r2, r6
mov r3, r11
bl func_02002bac
cmp r1, r4
cmpeq r0, r7
blo _0214e22c
_0214e2bc:
ldr r0, _0214e340 ; =data_ov61_0217f368
ldr r0, [r0, #8]
add r0, r0, #0x1000
ldr r0, [r0, #0x314]
bl func_ov61_0214f7b0
ldr r0, _0214e340 ; =data_ov61_0217f368
ldr r0, [r0, #8]
add r0, r0, #0x3d8
add r0, r0, #0x1000
bl func_0200e044
ldr r0, [sp]
bl func_ov61_0214df8c
ldr r2, _0214e340 ; =data_ov61_0217f368
ldr r1, [r2, #8]
add r1, r1, #0x1000
str r0, [r1, #4]
ldr r3, [r2, #8]
add r0, r3, #0x1000
ldr r1, [r0, #4]
cmp r1, #0
beq _0214e32c
ldr r1, _0214e344 ; =0x00004e84
str r1, [r0, #8]
ldr r0, [r2, #8]
add r0, r0, #0x3d8
add r0, r0, #0x1000
bl func_0200e0c8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0214e32c:
add r0, r3, #0x3d8
add r0, r0, #0x1000
bl func_0200e0c8
b _0214e0a4
_0214e33c:
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_0214e09c
_0214e340: .word data_ov61_0217f368
_0214e344: .word 0x00004e84
_0214e348: .word 0x000082ea
_0214e34c: .word 0x00001388
.global func_ov61_0214e350
arm_func_start func_ov61_0214e350
func_ov61_0214e350: ; 0x0214e350
stmdb sp!, {r3, r4, r5, lr}
ldr r0, _0214e508 ; =data_ov61_0217f368
mov r1, #0
ldr r0, [r0, #8]
add r2, r0, #0x1000
ldr r0, [r2, #0x314]
ldr r4, [r2, #0x20c]
ldr r5, [r2, #0x210]
bl func_ov61_0214ff88
cmp r0, #1
beq _0214e398
ldr r0, _0214e508 ; =data_ov61_0217f368
ldr r2, _0214e50c ; =0x00004e84
ldr r1, [r0, #8]
mov r0, #0xe
add r1, r1, #0x1000
str r2, [r1, #8]
ldmia sp!, {r3, r4, r5, pc}
_0214e398:
bl func_ov61_0214e528
cmp r0, #0
movne r0, #0xe
ldmneia sp!, {r3, r4, r5, pc}
ldr r0, _0214e508 ; =data_ov61_0217f368
ldr r1, _0214e50c ; =0x00004e84
ldr r0, [r0, #8]
add r0, r0, #0x1000
ldr r2, [r0, #8]
cmp r2, r1
bge _0214e458
sub r0, r1, #0x62
cmp r2, r0
bne _0214e450
ldr r0, _0214e510 ; =data_ov61_0217a954
ldr r1, _0214e514 ; =0x0000071f
blx r4
movs r4, r0
bne _0214e400
ldr r0, _0214e508 ; =data_ov61_0217f368
ldr r2, _0214e50c ; =0x00004e84
ldr r1, [r0, #8]
mov r0, #2
add r1, r1, #0x1000
str r2, [r1, #8]
ldmia sp!, {r3, r4, r5, pc}
_0214e400:
add r1, r4, #0x1f
ldr r0, _0214e518 ; =data_ov61_0217f374
bic r1, r1, #0x1f
blx func_ov00_02078934
cmp r0, #1
mov r2, #0
beq _0214e444
ldr r0, _0214e51c ; =data_ov61_0217a964
mov r1, r4
blx r5
ldr r0, _0214e508 ; =data_ov61_0217f368
ldr r2, _0214e50c ; =0x00004e84
ldr r1, [r0, #8]
mov r0, #0xf
add r1, r1, #0x1000
str r2, [r1, #8]
ldmia sp!, {r3, r4, r5, pc}
_0214e444:
ldr r0, _0214e51c ; =data_ov61_0217a964
mov r1, r4
blx r5
_0214e450:
mov r0, #0x15
ldmia sp!, {r3, r4, r5, pc}
_0214e458:
add r0, r1, #4
cmp r2, r0
beq _0214e474
add r0, r1, #8
cmp r2, r0
beq _0214e498
b _0214e500
_0214e474:
ldr r0, _0214e518 ; =data_ov61_0217f374
blx func_ov00_0207896c
ldr r0, _0214e508 ; =data_ov61_0217f368
ldr r2, _0214e520 ; =0x00004e88
ldr r1, [r0, #8]
mov r0, #0x10
add r1, r1, #0x1000
str r2, [r1, #8]
ldmia sp!, {r3, r4, r5, pc}
_0214e498:
ldr r0, _0214e510 ; =data_ov61_0217a954
mov r1, #0x700
blx r4
movs r4, r0
bne _0214e4c8
ldr r0, _0214e508 ; =data_ov61_0217f368
ldr r2, _0214e524 ; =0x00004e8c
ldr r1, [r0, #8]
mov r0, #0x11
add r1, r1, #0x1000
str r2, [r1, #8]
ldmia sp!, {r3, r4, r5, pc}
_0214e4c8:
add r0, r4, #0x1f
bic r0, r0, #0x1f
blx func_ov00_02078904
ldr r0, _0214e51c ; =data_ov61_0217a964
mov r1, r4
mov r2, #0
blx r5
ldr r0, _0214e508 ; =data_ov61_0217f368
ldr r2, _0214e524 ; =0x00004e8c
ldr r1, [r0, #8]
mov r0, #0x11
add r1, r1, #0x1000
str r2, [r1, #8]
ldmia sp!, {r3, r4, r5, pc}
_0214e500:
mov r0, #0x12
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0214e350
_0214e508: .word data_ov61_0217f368
_0214e50c: .word 0x00004e84
_0214e510: .word data_ov61_0217a954
_0214e514: .word 0x0000071f
_0214e518: .word data_ov61_0217f374
_0214e51c: .word data_ov61_0217a964
_0214e520: .word 0x00004e88
_0214e524: .word 0x00004e8c
.global func_ov61_0214e528
arm_func_start func_ov61_0214e528
func_ov61_0214e528: ; 0x0214e528
stmdb sp!, {r3, r4, r5, lr}
ldr r0, _0214e7c0 ; =data_ov61_0217f368
mov r1, #0
ldr r0, [r0, #8]
str r1, [sp]
add r0, r0, #0x1000
ldr r0, [r0, #0x314]
ldr r1, _0214e7c4 ; =data_ov61_0217a970
bl func_ov61_02150228
str r0, [sp]
cmp r0, #0
beq _0214e55c
bl func_ov61_021515ec
_0214e55c:
ldr r0, _0214e7c0 ; =data_ov61_0217f368
mov r2, #0
ldr r1, [r0, #8]
ldr r0, _0214e7c8 ; =data_02076d88
str r2, [sp]
str r2, [r0]
add r0, r1, #0x1000
ldr r0, [r0, #0x314]
ldr r1, _0214e7cc ; =data_ov61_0217a978
bl func_ov61_02150228
bl func_0204902c
ldr r1, _0214e7c8 ; =data_02076d88
ldr r1, [r1]
cmp r1, #0x22
bne _0214e5b4
ldr r0, _0214e7c0 ; =data_ov61_0217f368
ldr r2, _0214e7d0 ; =0x00004e85
ldr r1, [r0, #8]
mov r0, #0xc
add r1, r1, #0x1000
str r2, [r1, #8]
ldmia sp!, {r3, r4, r5, pc}
_0214e5b4:
cmp r0, #0xc8
beq _0214e5dc
ldr r1, _0214e7c0 ; =data_ov61_0217f368
add r0, r0, #0x1d8
ldr r1, [r1, #8]
add r2, r0, #0x5800
add r0, r1, #0x1000
str r2, [r0, #8]
mov r0, #0x12
ldmia sp!, {r3, r4, r5, pc}
_0214e5dc:
ldr r0, _0214e7c0 ; =data_ov61_0217f368
ldr r1, _0214e7d4 ; =data_ov61_0217a984
ldr r2, [r0, #8]
mov r3, #4
add r0, r2, #0x1000
add r2, r2, #0xc
ldr r0, [r0, #0x314]
add r2, r2, #0x1000
bl func_ov61_02150280
cmp r0, #0
bgt _0214e624
ldr r0, _0214e7c0 ; =data_ov61_0217f368
ldr r2, _0214e7d0 ; =0x00004e85
ldr r1, [r0, #8]
mov r0, #0xe
add r1, r1, #0x1000
str r2, [r1, #8]
ldmia sp!, {r3, r4, r5, pc}
_0214e624:
ldr r0, _0214e7c0 ; =data_ov61_0217f368
add r1, sp, #0
ldr r0, [r0, #8]
mov r2, #0xa
add r0, r0, #0xc
add r0, r0, #0x1000
bl func_02048f64
ldr r1, _0214e7c0 ; =data_ov61_0217f368
mov r4, r0
ldr r5, [r1, #8]
add r0, r5, #0xc
add r0, r0, #0x1000
bl strlen
add r1, r5, #0xc
add r1, r1, #0x1000
ldr r2, [sp]
add r0, r1, r0
cmp r2, r0
beq _0214e684
ldr r1, _0214e7d0 ; =0x00004e85
add r0, r5, #0x1000
str r1, [r0, #8]
mov r0, #0xc
ldmia sp!, {r3, r4, r5, pc}
_0214e684:
add r0, r4, #0xe20
add r1, r0, #0x4000
add r0, r5, #0x1000
str r1, [r0, #8]
cmp r4, #0x64
bge _0214e7b8
ldr r5, _0214e7c0 ; =data_ov61_0217f368
mov r0, #0
ldr r2, [r5, #8]
ldr r1, _0214e7d8 ; =data_ov61_0217a990
add r2, r2, #0x1000
strb r0, [r2, #0x52]
ldr r2, [r5, #8]
ldr r3, _0214e7dc ; =0x0000012d
add r2, r2, #0x1000
strb r0, [r2, #0x1f]
ldr r2, [r5, #8]
add r2, r2, #0x1000
strb r0, [r2, #0x17f]
ldr r2, [r5, #8]
add r2, r2, #0x1000
strb r0, [r2, #0x10]
ldr r2, [r5, #8]
add r2, r2, #0x1000
strb r0, [r2, #0x188]
ldr r2, [r5, #8]
add r0, r2, #0x1000
add r2, r2, #0x52
ldr r0, [r0, #0x314]
add r2, r2, #0x1000
bl func_ov61_02150280
mov r0, r5
ldr r2, [r0, #8]
ldr r1, _0214e7e0 ; =data_ov61_0217a998
add r0, r2, #0x1000
add r2, r2, #0x1f
ldr r0, [r0, #0x314]
mov r3, #0x33
add r2, r2, #0x1000
bl func_ov61_02150280
mov r0, r5
ldr r2, [r0, #8]
ldr r1, _0214e7e4 ; =data_ov61_0217a9a0
add r0, r2, #0x1000
add r2, r2, #0x7f
ldr r0, [r0, #0x314]
mov r3, #9
add r2, r2, #0x1100
bl func_ov61_02150280
mov r0, r5
ldr r2, [r0, #8]
ldr r1, _0214e7e8 ; =data_ov61_0217a9ac
add r0, r2, #0x1000
add r2, r2, #0x10
ldr r0, [r0, #0x314]
mov r3, #0xf
add r2, r2, #0x1000
bl func_ov61_02150280
mov r0, r5
ldr r2, [r0, #8]
ldr r1, _0214e7ec ; =data_ov61_0217a9b8
add r0, r2, #0x1000
add r2, r2, #0x188
ldr r0, [r0, #0x314]
mov r3, #0x41
add r2, r2, #0x1000
bl func_ov61_021502d4
mov r1, r5
ldr r0, [r1, #8]
mov r2, #0
add r0, r0, #0x1000
cmp r4, #0x28
strb r2, [r0, #0x1b3]
movne r0, #1
strne r0, [r1]
moveq r0, #2
streq r0, [r1]
_0214e7b8:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0214e528
_0214e7c0: .word data_ov61_0217f368
_0214e7c4: .word data_ov61_0217a970
_0214e7c8: .word data_02076d88
_0214e7cc: .word data_ov61_0217a978
_0214e7d0: .word 0x00004e85
_0214e7d4: .word data_ov61_0217a984
_0214e7d8: .word data_ov61_0217a990
_0214e7dc: .word 0x0000012d
_0214e7e0: .word data_ov61_0217a998
_0214e7e4: .word data_ov61_0217a9a0
_0214e7e8: .word data_ov61_0217a9ac
_0214e7ec: .word data_ov61_0217a9b8
.global func_ov61_0214e7f0
arm_func_start func_ov61_0214e7f0
func_ov61_0214e7f0: ; 0x0214e7f0
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0x94
ldr r3, _0214e96c ; =data_ov61_0217f368
mov r4, r0
ldr r0, [r3, #0x10]
ldr r3, [r3, #0xc]
cmp r0, #0
mov r6, r1
mov r5, r2
cmpeq r3, #0
bne _0214e84c
ldr r0, _0214e970 ; =data_ov61_0217a9c4
bl strlen
mov r3, r0
ldr r1, _0214e974 ; =data_ov61_0217a9d0
ldr r2, _0214e970 ; =data_ov61_0217a9c4
mov r0, r4
bl func_ov61_0214fa00
cmp r0, #0
beq _0214e8a4
add sp, sp, #0x94
mov r0, #8
ldmia sp!, {r3, r4, r5, r6, pc}
_0214e84c:
ldr r0, _0214e978 ; =data_ov61_0217a9d8
bl strlen
mov r3, r0
ldr r1, _0214e974 ; =data_ov61_0217a9d0
ldr r2, _0214e978 ; =data_ov61_0217a9d8
mov r0, r4
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x94
movne r0, #8
ldmneia sp!, {r3, r4, r5, r6, pc}
mov r0, r6
bl strlen
mov r3, r0
ldr r1, _0214e97c ; =data_ov61_0217a9e0
mov r0, r4
mov r2, r6
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x94
movne r0, #8
ldmneia sp!, {r3, r4, r5, r6, pc}
_0214e8a4:
ldr r1, _0214e980 ; =data_ov61_0217f374
add r0, sp, #0
bl func_ov61_0214ea00
cmp r0, #0
addeq sp, sp, #0x94
moveq r0, #5
ldmeqia sp!, {r3, r4, r5, r6, pc}
ldr r0, _0214e984 ; =data_ov61_0217f390
add r1, sp, #0
ldr r2, [r0]
mov r0, r4
bl func_ov61_0214ecb0
cmp r0, #0
addeq sp, sp, #0x94
moveq r0, #8
ldmeqia sp!, {r3, r4, r5, r6, pc}
ldr r0, _0214e96c ; =data_ov61_0217f368
ldr r0, [r0, #4]
cmp r0, #1
bne _0214e920
ldr r0, _0214e988 ; =data_ov61_0217a9e8
bl strlen
mov r3, r0
ldr r1, _0214e98c ; =data_ov61_0217a9ec
ldr r2, _0214e988 ; =data_ov61_0217a9e8
mov r0, r4
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x94
movne r0, #8
ldmneia sp!, {r3, r4, r5, r6, pc}
_0214e920:
mov r0, r5
bl func_0204b068
cmp r0, #0
beq _0214e960
mov r0, r5
bl func_0204b068
mov r3, r0
ldr r1, _0214e990 ; =data_ov61_0217a9f4
mov r0, r4
mov r2, r5
mov r3, r3, lsl #0x1
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x94
movne r0, #8
ldmneia sp!, {r3, r4, r5, r6, pc}
_0214e960:
mov r0, #0
add sp, sp, #0x94
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0214e7f0
_0214e96c: .word data_ov61_0217f368
_0214e970: .word data_ov61_0217a9c4
_0214e974: .word data_ov61_0217a9d0
_0214e978: .word data_ov61_0217a9d8
_0214e97c: .word data_ov61_0217a9e0
_0214e980: .word data_ov61_0217f374
_0214e984: .word data_ov61_0217f390
_0214e988: .word data_ov61_0217a9e8
_0214e98c: .word data_ov61_0217a9ec
_0214e990: .word data_ov61_0217a9f4
.global func_ov61_0214e994
arm_func_start func_ov61_0214e994
func_ov61_0214e994: ; 0x0214e994
stmdb sp!, {r4, lr}
ldr r1, _0214e9d4 ; =data_ov61_0217f368
mov r4, r0
ldr r0, [r1, #8]
add r0, r0, #0x3d8
add r0, r0, #0x1000
bl func_0200e044
ldr r1, _0214e9d4 ; =data_ov61_0217f368
ldr r0, [r1, #8]
add r0, r0, #0x1000
str r4, [r0, #4]
ldr r0, [r1, #8]
add r0, r0, #0x3d8
add r0, r0, #0x1000
bl func_0200e0c8
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214e994
_0214e9d4: .word data_ov61_0217f368
.global func_ov61_0214e9d8
arm_func_start func_ov61_0214e9d8
func_ov61_0214e9d8: ; 0x0214e9d8
stmdb sp!, {r3, r4, lr}
sub sp, sp, #0x14
mov r4, r0
add r0, sp, #0
blx func_ov00_02077af8
add r1, sp, #0
mov r0, r4
bl func_ov61_0214ea00
add sp, sp, #0x14
ldmia sp!, {r3, r4, pc}
arm_func_end func_ov61_0214e9d8
.global func_ov61_0214ea00
arm_func_start func_ov61_0214ea00
func_ov61_0214ea00: ; 0x0214ea00
stmdb sp!, {r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #0x8c
mov r6, r1
mov r1, #0
mov r2, #0x94
mov r4, r0
bl func_02007a44
ldmia r6, {r3, r5}
cmp r5, #0
cmpeq r3, #0
mov r1, #0xe
beq _0214ea44
ldr r2, _0214ec90 ; =data_ov61_0217aa00
mov r0, r4
str r5, [sp]
bl func_0200c910
b _0214ea5c
_0214ea44:
ldr r3, [r6, #8]
ldr r5, [r6, #0xc]
ldr r2, _0214ec90 ; =data_ov61_0217aa00
mov r0, r4
str r5, [sp]
bl func_0200c910
_0214ea5c:
ldrh r3, [r6, #0x10]
ldr r2, _0214ec94 ; =data_ov61_0217aa08
add r0, r4, #0xe
mov r1, #7
bl func_0200c910
ldr r0, _0214ec98 ; =0x027ffe0c
ldrb r0, [r0]
cmp r0, #0
bne _0214ea84
bl func_0200f248
_0214ea84:
ldr r0, _0214ec98 ; =0x027ffe0c
add r1, r4, #0x15
mov r2, #4
bl func_02007ad8
ldr r0, _0214ec9c ; =0x027ffe10
ldrb r0, [r0]
cmp r0, #0
bne _0214eaa8
bl func_0200f248
_0214eaa8:
ldr r0, _0214ec9c ; =0x027ffe10
add r1, r4, #0x1a
mov r2, #2
bl func_02007ad8
mov r1, #0x30
add r0, sp, #0x16
strb r1, [r4, #0x1d]
bl func_0200f014
ldr r5, _0214eca0 ; =data_ov61_0217aa10
add r7, sp, #0x16
add r8, r4, #0x1f
mov r6, #0
_0214ead8:
ldrb r2, [r7], #1
mov r0, r8
mov r1, r5
bl func_0200c8d0
add r6, r6, #1
cmp r6, #6
add r8, r8, #2
blt _0214ead8
add r0, sp, #0x38
bl func_0200f030
ldrb r0, [sp, #0x38]
ldr r2, _0214eca0 ; =data_ov61_0217aa10
mov r1, #3
cmp r0, #6
movhi r0, #1
strhib r0, [sp, #0x38]
ldrb r3, [sp, #0x38]
add r0, r4, #0x2c
bl func_0200c910
add r0, sp, #0x3c
add r1, r4, #0x7e
mov r2, #0x14
bl func_02007ad8
ldrb r1, [sp, #0x3b]
ldr r2, _0214eca4 ; =data_ov61_0217aa18
add r0, r4, #0x2f
str r1, [sp]
ldrb r3, [sp, #0x3a]
mov r1, #5
bl func_0200c910
add r0, sp, #0x28
blx func_02042668
cmp r0, #0
bne _0214eb70
add r0, sp, #0x1c
blx func_020426d4
cmp r0, #0
beq _0214eb7c
_0214eb70:
add sp, sp, #0x8c
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, pc}
_0214eb7c:
ldr r0, [sp, #0x2c]
ldr r2, _0214eca8 ; =data_ov61_0217aa24
str r0, [sp]
ldr r1, [sp, #0x30]
add r0, r4, #0x34
str r1, [sp, #4]
ldr r3, [sp, #0x1c]
mov r1, #0xd
str r3, [sp, #8]
ldr r3, [sp, #0x20]
str r3, [sp, #0xc]
ldr r3, [sp, #0x24]
str r3, [sp, #0x10]
ldr r3, [sp, #0x28]
bl func_0200c910
bl func_0200ee4c
mov r6, r0
bl func_ov61_02161060
mov r7, r0
mov r1, #6
bl func_0200e288
cmp r7, #0
bne _0214ebec
mov r0, r6
bl func_0200ee60
add sp, sp, #0x8c
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, pc}
_0214ebec:
ldr r5, _0214eca0 ; =data_ov61_0217aa10
add r8, r4, #0x41
mov r9, #0
_0214ebf8:
ldrb r2, [r7, r9]
mov r0, r8
mov r1, r5
bl func_0200c8d0
add r9, r9, #1
cmp r9, #6
add r8, r8, #2
blt _0214ebf8
bl func_ov61_0214b0fc
mov r3, r0
ldr r2, _0214ecac ; =data_ov61_0217aa40
add r0, r4, #0x6f
mov r1, #0xe
bl func_0200c910
add r0, sp, #0x14
bl func_ov61_021610a4
mov r5, r0
mov r1, #0x20
bl func_0200e288
cmp r5, #0
bne _0214ec60
mov r0, r6
bl func_0200ee60
add sp, sp, #0x8c
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, pc}
_0214ec60:
mov r0, r5
add r1, r4, #0x72
bl func_ov61_0214d660
mov r0, r5
add r1, r4, #0x4e
mov r2, #0x20
bl func_02007ad8
mov r0, r6
bl func_0200ee60
mov r0, #1
add sp, sp, #0x8c
ldmia sp!, {r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_0214ea00
_0214ec90: .word data_ov61_0217aa00
_0214ec94: .word data_ov61_0217aa08
_0214ec98: .word 0x027ffe0c
_0214ec9c: .word 0x027ffe10
_0214eca0: .word data_ov61_0217aa10
_0214eca4: .word data_ov61_0217aa18
_0214eca8: .word data_ov61_0217aa24
_0214ecac: .word data_ov61_0217aa40
.global func_ov61_0214ecb0
arm_func_start func_ov61_0214ecb0
func_ov61_0214ecb0: ; 0x0214ecb0
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #0x28
mov r4, r2
mov r6, r0
mov r5, r1
mov ip, #0
ldr r2, _0214efb4 ; =data_ov61_0217aa50
add r0, sp, #4
mov r1, #0x21
mov r3, #2
str ip, [sp]
bl func_0200c910
add r0, sp, #4
bl strlen
mov r3, r0
ldr r1, _0214efb8 ; =data_ov61_0217aa5c
mov r0, r6
add r2, sp, #4
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x28
movne r0, #0
ldmneia sp!, {r4, r5, r6, pc}
mov r0, r5
bl strlen
mov r3, r0
ldr r1, _0214efbc ; =data_ov61_0217aa64
mov r0, r6
mov r2, r5
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x28
movne r0, #0
ldmneia sp!, {r4, r5, r6, pc}
add r0, r5, #0xe
bl strlen
mov r3, r0
ldr r1, _0214efc0 ; =data_ov61_0217aa6c
mov r0, r6
add r2, r5, #0xe
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x28
movne r0, #0
ldmneia sp!, {r4, r5, r6, pc}
add r0, r5, #0x41
bl strlen
mov r3, r0
ldr r1, _0214efc4 ; =data_ov61_0217aa74
mov r0, r6
add r2, r5, #0x41
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x28
movne r0, #0
ldmneia sp!, {r4, r5, r6, pc}
add r0, r5, #0x6f
bl strlen
mov r3, r0
ldr r1, _0214efc8 ; =data_ov61_0217aa7c
mov r0, r6
add r2, r5, #0x6f
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x28
movne r0, #0
ldmneia sp!, {r4, r5, r6, pc}
add r0, r5, #0x15
bl strlen
mov r3, r0
ldr r1, _0214efcc ; =data_ov61_0217aa84
mov r0, r6
add r2, r5, #0x15
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x28
movne r0, #0
ldmneia sp!, {r4, r5, r6, pc}
add r0, r5, #0x1a
bl strlen
mov r3, r0
ldr r1, _0214efd0 ; =data_ov61_0217aa8c
mov r0, r6
add r2, r5, #0x1a
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x28
movne r0, #0
ldmneia sp!, {r4, r5, r6, pc}
add r0, r5, #0x1d
bl strlen
mov r3, r0
ldr r1, _0214efd4 ; =data_ov61_0217aa94
mov r0, r6
add r2, r5, #0x1d
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x28
movne r0, #0
ldmneia sp!, {r4, r5, r6, pc}
add r0, r5, #0x1f
bl strlen
mov r3, r0
ldr r1, _0214efd8 ; =data_ov61_0217aa9c
mov r0, r6
add r2, r5, #0x1f
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x28
movne r0, #0
ldmneia sp!, {r4, r5, r6, pc}
add r0, r5, #0x2c
bl strlen
mov r3, r0
ldr r1, _0214efdc ; =data_ov61_0217aaa4
mov r0, r6
add r2, r5, #0x2c
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x28
movne r0, #0
ldmneia sp!, {r4, r5, r6, pc}
add r0, r5, #0x2f
bl strlen
mov r3, r0
ldr r1, _0214efe0 ; =data_ov61_0217aaac
mov r0, r6
add r2, r5, #0x2f
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x28
movne r0, #0
ldmneia sp!, {r4, r5, r6, pc}
add r0, r5, #0x34
bl strlen
mov r3, r0
ldr r1, _0214efe4 ; =data_ov61_0217aab4
mov r0, r6
add r2, r5, #0x34
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x28
movne r0, #0
ldmneia sp!, {r4, r5, r6, pc}
add r0, r5, #0x7e
bl func_0204b068
mov r3, r0
ldr r1, _0214efe8 ; =data_ov61_0217aabc
mov r0, r6
add r2, r5, #0x7e
mov r3, r3, lsl #0x1
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x28
movne r0, #0
ldmneia sp!, {r4, r5, r6, pc}
cmp r4, #1
bne _0214ef54
add r0, r5, #0x4e
bl strlen
mov r3, r0
ldr r1, _0214efec ; =data_ov61_0217aac4
mov r0, r6
add r2, r5, #0x4e
bl func_ov61_0214fa00
cmp r0, #0
addne sp, sp, #0x28
movne r0, #0
ldmneia sp!, {r4, r5, r6, pc}
_0214ef54:
ldr r2, _0214eff0 ; =data_ov61_0217aacc
mov ip, #0
add r0, sp, #4
mov r1, #0x21
mov r3, #2
str ip, [sp]
bl func_0200c910
ldr r1, _0214eff4 ; =data_ov61_0217aae4
add r2, sp, #4
mov r0, r6
bl func_ov61_0214f924
cmp r0, #0
addne sp, sp, #0x28
movne r0, #0
ldmneia sp!, {r4, r5, r6, pc}
ldr r1, _0214eff8 ; =data_ov61_0217aaf0
mov r0, r6
add r2, r5, #0x15
bl func_ov61_0214f924
cmp r0, #0
moveq r0, #1
movne r0, #0
add sp, sp, #0x28
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0214ecb0
_0214efb4: .word data_ov61_0217aa50
_0214efb8: .word data_ov61_0217aa5c
_0214efbc: .word data_ov61_0217aa64
_0214efc0: .word data_ov61_0217aa6c
_0214efc4: .word data_ov61_0217aa74
_0214efc8: .word data_ov61_0217aa7c
_0214efcc: .word data_ov61_0217aa84
_0214efd0: .word data_ov61_0217aa8c
_0214efd4: .word data_ov61_0217aa94
_0214efd8: .word data_ov61_0217aa9c
_0214efdc: .word data_ov61_0217aaa4
_0214efe0: .word data_ov61_0217aaac
_0214efe4: .word data_ov61_0217aab4
_0214efe8: .word data_ov61_0217aabc
_0214efec: .word data_ov61_0217aac4
_0214eff0: .word data_ov61_0217aacc
_0214eff4: .word data_ov61_0217aae4
_0214eff8: .word data_ov61_0217aaf0
.global func_ov61_0214effc
arm_func_start func_ov61_0214effc
func_ov61_0214effc: ; 0x0214effc
stmdb sp!, {r4, r5, r6, lr}
mov r5, r1
ldr r2, _0214f104 ; =0x00001c14
mov r6, r0
ldr r4, [r5, #0xc]
mov r1, #0
bl func_02007a44
add r1, r6, #4
add r0, r6, #0x1000
mvn r2, #0
str r2, [r0, #0xa30]
mov lr, r5
str r2, [r0, #0xa34]
add ip, r1, #0x1000
ldmia lr!, {r0, r1, r2, r3}
stmia ip!, {r0, r1, r2, r3}
ldmia lr, {r0, r1, r2}
stmia ip, {r0, r1, r2}
ldr r0, _0214f108 ; =data_ov61_0217ab2c
ldr r1, _0214f10c ; =0x00000b68
blx r4
add r1, r6, #0x1000
str r0, [r1, #0x9cc]
cmp r0, #0
moveq r0, #1
streq r0, [r1, #0x20]
ldmeqia sp!, {r4, r5, r6, pc}
ldr r0, _0214f110 ; =data_ov61_0217ab44
ldr r1, _0214f114 ; =0x000005ea
blx r4
add r2, r6, #0x1000
str r0, [r2, #0x9d0]
cmp r0, #0
moveq r0, #1
streq r0, [r2, #0x20]
ldmeqia sp!, {r4, r5, r6, pc}
add r1, r6, #0x208
ldr r2, [r2, #0xc]
mov r0, r6
add r1, r1, #0x1800
bl func_ov61_0214fba0
cmp r0, #0
bne _0214f0b8
add r1, r6, #0x1000
mov r0, #1
str r0, [r1, #0x20]
ldmia sp!, {r4, r5, r6, pc}
_0214f0b8:
ldr r1, [r5]
mov r0, r6
bl func_ov61_0214fce0
cmp r0, #0
bne _0214f0dc
add r1, r6, #0x1000
mov r0, #1
str r0, [r1, #0x20]
ldmia sp!, {r4, r5, r6, pc}
_0214f0dc:
mov r0, r6
bl func_ov61_0214f864
add r1, r6, #0x1000
str r0, [r1, #0x20]
cmp r0, #0
moveq r0, #0xff
streqb r0, [r1]
add r0, r6, #0x1000
ldr r0, [r0, #0x20]
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0214effc
_0214f104: .word 0x00001c14
_0214f108: .word data_ov61_0217ab2c
_0214f10c: .word 0x00000b68
_0214f110: .word data_ov61_0217ab44
_0214f114: .word 0x000005ea
.global func_ov61_0214f118
arm_func_start func_ov61_0214f118
func_ov61_0214f118: ; 0x0214f118
stmdb sp!, {r4, lr}
sub sp, sp, #8
ldr r1, _0214f19c ; =data_ov61_0217ab5c
ldr r2, _0214f1a0 ; =data_ov61_0217ab68
mov r4, r0
bl func_ov61_0214f924
cmp r0, #0
addne sp, sp, #8
movne r0, #1
ldmneia sp!, {r4, pc}
add r0, r4, #0x1000
ldr r0, [r0, #0x9f8]
ldr r1, _0214f1a4 ; =data_ov61_0217ab70
bl strstr
add r0, r0, #4
bl strlen
movs r3, r0
beq _0214f190
ldr r2, _0214f1a8 ; =data_ov61_0217ab78
add r0, sp, #0
mov r1, #7
bl func_0200c910
ldr r1, _0214f1ac ; =data_ov61_0217ab7c
add r2, sp, #0
mov r0, r4
bl func_ov61_0214f924
cmp r0, #0
addne sp, sp, #8
movne r0, #1
ldmneia sp!, {r4, pc}
_0214f190:
mov r0, #0
add sp, sp, #8
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214f118
_0214f19c: .word data_ov61_0217ab5c
_0214f1a0: .word data_ov61_0217ab68
_0214f1a4: .word data_ov61_0217ab70
_0214f1a8: .word data_ov61_0217ab78
_0214f1ac: .word data_ov61_0217ab7c
.global func_ov61_0214f1b0
arm_func_start func_ov61_0214f1b0
func_ov61_0214f1b0: ; 0x0214f1b0
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #8
mov r5, r0
add r0, r5, #0x3f8
add r2, r5, #0x1000
mov r3, #0
add r0, r0, #0x1800
mov r4, r1
str r3, [r2, #0xc10]
bl func_0200e02c
add r0, r5, #0x218
add r0, r0, #0x1800
bl func_0200e02c
add r0, r5, #0x1000
ldr r0, [r0, #0x18]
cmp r0, #1
ldreq r0, _0214f264 ; =data_ov61_0217f388
moveq r1, #1
ldrne r0, _0214f264 ; =data_ov61_0217f388
movne r1, #0
str r1, [r0]
add r0, r5, #0x1000
ldr r0, [r0, #0xba4]
cmp r0, #0
beq _0214f22c
add r0, r5, #0x338
add r0, r0, #0x1800
bl func_0200d86c
cmp r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r3, r4, r5, pc}
_0214f22c:
add r0, r5, #0x338
mov r1, #0x1000
str r1, [sp]
ldr r1, _0214f268 ; =func_ov61_0214f494
mov r2, r5
add r0, r0, #0x1800
add r3, r5, #0x1000
str r4, [sp, #4]
blx func_0200d5e4
add r0, r5, #0x338
add r0, r0, #0x1800
bl func_0200d938
add sp, sp, #8
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0214f1b0
_0214f264: .word data_ov61_0217f388
_0214f268: .word func_ov61_0214f494
.global func_ov61_0214f26c
arm_func_start func_ov61_0214f26c
func_ov61_0214f26c: ; 0x0214f26c
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x1000
ldrb r0, [r0]
cmp r0, #0xff
ldmneia sp!, {r4, pc}
add r0, r4, #0x3f8
add r0, r0, #0x1800
bl func_0200e044
add r0, r4, #0x3f8
add r1, r4, #0x1000
mov r2, #1
add r0, r0, #0x1800
str r2, [r1, #0xc10]
bl func_0200e0c8
add r0, r4, #0x1000
ldr r0, [r0, #0xba4]
cmp r0, #0
ldmeqia sp!, {r4, pc}
add r0, r4, #0x338
add r0, r0, #0x1800
bl func_0200d83c
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0214f26c
.global func_ov61_0214f2c8
arm_func_start func_ov61_0214f2c8
func_ov61_0214f2c8: ; 0x0214f2c8
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x1000
ldr r0, [r0, #0x130]
cmp r0, #1
bne _0214f2fc
add r0, r4, #0x1d4
add r0, r0, #0x1800
bl func_0200f178
add r0, r4, #0x1d4
add r0, r0, #0x1800
mov r1, #0x20
bl func_ov61_0215bafc
_0214f2fc:
add r0, r4, #0x3f8
add r0, r0, #0x1800
bl func_0200e044
add r0, r4, #0x1000
ldr r0, [r0, #0xc10]
cmp r0, #1
add r0, r4, #0x3f8
add r0, r0, #0x1800
bne _0214f32c
bl func_0200e0c8
mov r0, #0
ldmia sp!, {r4, pc}
_0214f32c:
bl func_0200e0c8
mov r0, #0xa
bl func_0200db28
mov r0, #1
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0214f2c8
.global func_ov61_0214f340
arm_func_start func_ov61_0214f340
func_ov61_0214f340: ; 0x0214f340
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x138
add r0, r0, #0x1000
mov r1, #0
mov r2, #0x64
bl func_02007a44
ldr r0, _0214f390 ; =0x00000b68
add r1, r4, #0x1000
str r0, [r1, #0x174]
ldr r3, [r1, #0x9cc]
add r0, r4, #0x138
ldr r2, _0214f394 ; =0x000005ea
str r3, [r1, #0x178]
str r2, [r1, #0x180]
ldr r2, [r1, #0x9d0]
add r0, r0, #0x1000
str r2, [r1, #0x184]
bl func_ov61_02154b08
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214f340
_0214f390: .word 0x00000b68
_0214f394: .word 0x000005ea
.global func_ov61_0214f398
arm_func_start func_ov61_0214f398
func_ov61_0214f398: ; 0x0214f398
ldr ip, _0214f3a8 ; =func_ov61_021566cc
add r0, r0, #0x1000
ldr r0, [r0, #0x124]
bx ip
.align 2, 0
arm_func_end func_ov61_0214f398
_0214f3a8: .word func_ov61_021566cc
.global func_ov61_0214f3ac
arm_func_start func_ov61_0214f3ac
func_ov61_0214f3ac: ; 0x0214f3ac
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r5, r0
add r0, r5, #0x1000
ldr r6, [r0, #0xa08]
add r2, r5, #0x208
ldr r1, _0214f488 ; =data_ov61_0217ab70
mov r0, r6
add r4, r2, #0x1800
bl strstr
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
ldr r1, _0214f488 ; =data_ov61_0217ab70
mov r0, r6
bl strstr
add r1, r5, #0x218
add r6, r0, #4
add r0, r1, #0x1800
bl func_0200e044
ldr r0, [r4, #4]
add r1, r5, #0x218
sub r2, r0, r6
add r0, r5, #0x1000
str r2, [r0, #0xa34]
add r0, r1, #0x1800
bl func_0200e0c8
ldr r0, [r4]
ldr r1, _0214f48c ; =data_ov61_0217ab8c
bl strstr
movs r8, r0
moveq r0, #1
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
ldr r0, _0214f48c ; =data_ov61_0217ab8c
bl strlen
mov r7, r0
ldr r1, _0214f490 ; =data_ov61_0217aba0
add r0, r8, r7
bl strstr
mov r6, r0
add r0, r5, #0x218
ldrsb r4, [r6]
mov r1, #0
add r0, r0, #0x1800
strb r1, [r6]
bl func_0200e044
add r0, r8, r7
bl func_0204902c
add r1, r5, #0x1000
add r2, r5, #0x218
str r0, [r1, #0xa30]
add r0, r2, #0x1800
bl func_0200e0c8
strb r4, [r6]
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_0214f3ac
_0214f488: .word data_ov61_0217ab70
_0214f48c: .word data_ov61_0217ab8c
_0214f490: .word data_ov61_0217aba0
.global func_ov61_0214f494
arm_func_start func_ov61_0214f494
func_ov61_0214f494: ; 0x0214f494
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x14
mov r10, r0
add r0, r10, #0x1000
ldr r8, [r0, #0x1c]
add r0, r10, #0x138
add r1, r10, #0x19c
add r2, r10, #0x208
add r4, r0, #0x1000
cmp r8, #0
mov r0, r10
add r5, r1, #0x1000
add r7, r2, #0x1800
mov r11, #0
ldrle r8, _0214f79c ; =0x0000ea60
bl func_ov61_0214f340
mov r0, r10
bl func_ov61_0214f398
movs r6, r0
add r0, r10, #0x1000
moveq r1, #2
streq r1, [r0, #0x20]
addeq sp, sp, #0x14
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
str r6, [r0, #0x12c]
bl func_ov61_02154bc0
add r0, r10, #0x1000
ldr r0, [r0, #0x130]
cmp r0, #1
bne _0214f548
mov r0, r5
mov r1, #0
mov r2, #0x830
bl func_02007a44
ldr r1, _0214f7a0 ; =func_ov61_0214fb94
add r0, r10, #0x1000
str r1, [r5, #0x810]
ldr r1, [r0, #0x124]
ldr r0, _0214f7a4 ; =data_ov61_0217ab00
str r1, [r5, #0x800]
mov r1, #0xb
str r5, [r4, #0xc]
bl func_ov61_02159a6c
mov r0, #1
bl func_ov61_0215ca6c
_0214f548:
add r0, r10, #0x1100
ldrh r1, [r0, #0x34]
mov r2, r6
mov r0, #0
bl func_ov61_02154b60
bl func_ov61_02154d64
cmp r0, #0
add r0, r10, #0x1000
beq _0214f584
mov r1, #3
str r1, [r0, #0x20]
bl func_ov61_02154bf4
bl func_ov61_02154b1c
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0214f584:
ldr r4, [r0, #0x9f8]
mov r0, r4
bl strlen
mov r1, r0
mov r0, r4
bl func_ov61_021554cc
str r0, [sp, #0x10]
cmp r0, #0
bgt _0214f5b8
add r0, r10, #0x1000
mov r1, #5
str r1, [r0, #0x20]
b _0214f784
_0214f5b8:
bl func_ov61_021555d4
mov r0, r10
bl func_ov61_0214f2c8
cmp r0, #0
bne _0214f5dc
add r0, r10, #0x1000
mov r1, #7
str r1, [r0, #0x20]
b _0214f784
_0214f5dc:
ldr r0, [r7]
str r0, [r7, #4]
ldr r1, [r7]
ldr r0, [r7, #0xc]
add r0, r1, r0
str r0, [r7, #8]
bl func_0200e8f8
str r0, [sp, #8]
add r0, r10, #0x234
str r1, [sp, #4]
add r5, r10, #0x218
add r6, r0, #0x1800
add r4, r10, #0x1000
_0214f610:
ldr r0, _0214f7a8 ; =data_ov61_0217f464
ldr r0, [r0]
cmp r0, #0
bne _0214f630
add r0, r10, #0x1000
mov r1, #5
str r1, [r0, #0x20]
b _0214f784
_0214f630:
bl func_ov61_02155564
str r0, [sp, #0x10]
cmp r0, #0
blt _0214f760
ble _0214f6e4
bl func_0200e8f8
str r0, [sp, #8]
add r0, sp, #0x10
str r1, [sp, #4]
bl func_ov61_02154fd8
cmp r0, #0
beq _0214f760
ldmib r7, {r1, r2}
sub r2, r2, #1
ldr r9, [sp, #0x10]
sub r2, r2, r1
cmp r9, r2
movge r9, r2
mov r2, r9
bl func_02007ad8
ldr r0, [r7, #4]
cmp r11, #1
add r1, r0, r9
str r1, [r7, #4]
mov r0, #0
strb r0, [r1]
bne _0214f6bc
add r0, r5, #0x1800
bl func_0200e044
ldr r1, [r6]
add r0, r5, #0x1800
add r1, r1, r9
str r1, [r6]
bl func_0200e0c8
b _0214f6c8
_0214f6bc:
mov r0, r10
bl func_ov61_0214f3ac
mov r11, r0
_0214f6c8:
ldr r0, [sp, #0x10]
cmp r0, r9
bls _0214f6dc
bl func_ov61_021550cc
b _0214f760
_0214f6dc:
mov r0, r9
bl func_ov61_021550cc
_0214f6e4:
ldr r1, [r4, #0xa30]
cmp r1, #0
ldrge r0, [r4, #0xa34]
cmpge r0, r1
bge _0214f760
bl func_0200e8f8
ldr r2, [sp, #8]
mov r3, #0
subs r2, r0, r2
ldr r0, [sp, #4]
sbc r0, r1, r0
mov r1, r0, lsl #0x6
orr r1, r1, r2, lsr #26
mov r0, r2, lsl #0x6
ldr r2, _0214f7ac ; =0x000082ea
bl func_02002bac
cmp r1, r8, asr #31
cmpeq r0, r8
bls _0214f740
add r0, r10, #0x1000
mov r1, #6
str r1, [r0, #0x20]
b _0214f784
_0214f740:
mov r0, r10
bl func_ov61_0214f2c8
cmp r0, #0
bne _0214f610
add r0, r10, #0x1000
mov r1, #7
str r1, [r0, #0x20]
b _0214f784
_0214f760:
bl func_ov61_02154e44
bl func_ov61_02154e80
bl func_ov61_02154bf4
bl func_ov61_02154b1c
add r0, r10, #0x1000
mov r1, #8
str r1, [r0, #0x20]
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0214f784:
bl func_ov61_02154e44
bl func_ov61_02154e80
bl func_ov61_02154bf4
bl func_ov61_02154b1c
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0214f494
_0214f79c: .word 0x0000ea60
_0214f7a0: .word func_ov61_0214fb94
_0214f7a4: .word data_ov61_0217ab00
_0214f7a8: .word data_ov61_0217f464
_0214f7ac: .word 0x000082ea
.global func_ov61_0214f7b0
arm_func_start func_ov61_0214f7b0
func_ov61_0214f7b0: ; 0x0214f7b0
stmdb sp!, {r3, r4, r5, lr}
movs r5, r0
add r1, r5, #0x1000
ldr r4, [r1, #0x14]
ldmeqia sp!, {r3, r4, r5, pc}
add r1, r5, #0x238
add r1, r1, #0x1800
mov r2, #0x20
bl func_ov61_02150314
add r1, r5, #0x208
mov r0, r5
add r1, r1, #0x1800
bl func_ov61_0214fbf8
add r1, r5, #0x1f8
mov r0, r5
add r1, r1, #0x1800
bl func_ov61_0214fbf8
add r0, r5, #0x1000
ldr r1, [r0, #0x9cc]
cmp r1, #0
beq _0214f81c
ldr r0, _0214f858 ; =data_ov61_0217aba4
mov r2, #0
blx r4
add r0, r5, #0x1000
mov r1, #0
str r1, [r0, #0x9cc]
_0214f81c:
add r0, r5, #0x1000
ldr r1, [r0, #0x9d0]
cmp r1, #0
beq _0214f844
ldr r0, _0214f85c ; =data_ov61_0217abbc
mov r2, #0
blx r4
add r0, r5, #0x1000
mov r1, #0
str r1, [r0, #0x9d0]
_0214f844:
ldr r2, _0214f860 ; =0x00001c14
mov r0, r5
mov r1, #0
bl func_02007a44
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0214f7b0
_0214f858: .word data_ov61_0217aba4
_0214f85c: .word data_ov61_0217abbc
_0214f860: .word 0x00001c14
.global func_ov61_0214f864
arm_func_start func_ov61_0214f864
func_ov61_0214f864: ; 0x0214f864
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
sub sp, sp, #4
mov r7, r0
add r0, r7, #0x1000
ldr r1, [r0, #8]
add r0, r7, #0x1f8
cmp r1, #0
ldreq r6, _0214f91c ; =data_ov61_0217abd4
add r5, r0, #0x1800
add r0, r7, #0x1000
ldrne r6, _0214f920 ; =data_ov61_0217ac28
ldr r0, [r0, #0x124]
bl strlen
mov r4, r0
mov r0, r6
bl strlen
add r1, r7, #0x1000
mov r8, r0
ldr r0, [r1, #0x128]
bl strlen
sub r1, r8, #4
add r0, r1, r0
add r2, r4, r0
add r0, r7, #0x1f8
add r1, r0, #0x1800
add r2, r2, #0x400
mov r0, r7
bl func_ov61_0214fba0
cmp r0, #1
addne sp, sp, #4
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, r8, pc}
add r3, r7, #0x1000
ldr r0, [r3, #0x124]
mov r2, r6
str r0, [sp]
ldr r0, [r5, #4]
ldr r1, [r5, #0xc]
ldr r3, [r3, #0x128]
bl func_0200c910
ldr r1, [r5, #4]
add r0, r1, r0
str r0, [r5, #4]
mov r0, #0
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_0214f864
_0214f91c: .word data_ov61_0217abd4
_0214f920: .word data_ov61_0217ac28
.global func_ov61_0214f924
arm_func_start func_ov61_0214f924
func_ov61_0214f924: ; 0x0214f924
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r8, r0
mov r6, r2
add r2, r8, #0x1f8
mov r0, r6
mov r7, r1
add r5, r2, #0x1800
bl strlen
mov r4, r0
ldr r0, _0214f9f8 ; =data_ov61_0217ac48
bl strlen
mov r9, r0
mov r0, r7
bl strlen
sub r1, r9, #4
add r0, r1, r0
add r4, r4, r0
ldmib r5, {r1, r2}
add r0, r4, #1
sub r1, r2, r1
cmp r0, r1
ble _0214f99c
sub r2, r4, r1
mov r0, r8
mov r1, r5
add r2, r2, #1
bl func_ov61_0214fc38
cmp r0, #0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_0214f99c:
ldr r0, [r5]
ldr r1, _0214f9fc ; =data_ov61_0217ab70
bl strstr
add r9, r0, #2
ldrsb r8, [r0, #2]
mov r0, r9
bl strlen
add r2, r0, #1
add r0, r9, r4
mov r1, r9
bl func_020435b4
ldr r2, _0214f9f8 ; =data_ov61_0217ac48
str r6, [sp]
mov r3, r7
mov r0, r9
add r1, r4, #1
bl func_0200c910
strb r8, [r9, r0]
ldr r1, [r5, #4]
mov r0, #0
add r1, r1, r4
str r1, [r5, #4]
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_0214f924
_0214f9f8: .word data_ov61_0217ac48
_0214f9fc: .word data_ov61_0217ab70
.global func_ov61_0214fa00
arm_func_start func_ov61_0214fa00
func_ov61_0214fa00: ; 0x0214fa00
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
mov r10, r0
add r0, r10, #0x1000
ldr r4, [r0, #0x9f4]
add r0, r10, #0x1f8
cmp r4, #0
ldreq r6, _0214fb04 ; =data_ov61_0217ac54
mov r8, r2
add r4, r10, #0x1000
add r5, r0, #0x1800
ldr r0, [r4, #0x9f4]
mov r7, r3
add r11, r0, #1
mov r2, #0
mov r9, r1
ldrne r6, _0214fb08 ; =data_ov61_0217ac58
mov r0, r8
mov r1, r7
mov r3, r2
str r11, [r4, #0x9f4]
bl func_ov61_02151810
mov r4, r0
mov r0, r6
bl strlen
mov r11, r0
mov r0, r9
bl strlen
sub r1, r11, #2
add r2, r1, r0
ldmib r5, {r0, r1}
add r2, r4, r2
sub r1, r1, r0
cmp r2, r1
ble _0214fab0
sub r2, r2, r1
mov r0, r10
mov r1, r5
add r2, r2, #1
bl func_ov61_0214fc38
cmp r0, #0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldmib r5, {r0, r1}
sub r1, r1, r0
_0214fab0:
mov r2, r6
mov r3, r9
bl func_0200c910
ldr r2, [r5, #4]
mov r1, r7
add r2, r2, r0
str r2, [r5, #4]
ldr r0, [r5, #8]
sub r3, r0, r2
mov r0, r8
sub r3, r3, #1
bl func_ov61_02151810
cmp r0, #0
movlt r0, #1
ldmltia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, [r5, #4]
mov r0, #0
add r1, r1, r4
str r1, [r5, #4]
strb r0, [r1]
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0214fa00
_0214fb04: .word data_ov61_0217ac54
_0214fb08: .word data_ov61_0217ac58
.global func_ov61_0214fb0c
arm_func_start func_ov61_0214fb0c
func_ov61_0214fb0c: ; 0x0214fb0c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r6, r1
add r1, r7, #0x1f8
mov r0, r6
add r5, r1, #0x1800
bl strlen
mov r4, r0
ldmib r5, {r0, r1}
sub r1, r1, r0
cmp r4, r1
ble _0214fb64
sub r2, r4, r1
mov r0, r7
mov r1, r5
add r2, r2, #1
bl func_ov61_0214fc38
cmp r0, #0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldmib r5, {r0, r1}
sub r1, r1, r0
_0214fb64:
ldr r2, _0214fb90 ; =data_ov61_0217ac60
mov r3, r6
bl func_0200c910
cmp r0, r4
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
ldr r1, [r5, #4]
add r0, r1, r0
str r0, [r5, #4]
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0214fb0c
_0214fb90: .word data_ov61_0217ac60
.global func_ov61_0214fb94
arm_func_start func_ov61_0214fb94
func_ov61_0214fb94: ; 0x0214fb94
tst r0, #0x8000
bicne r0, r0, #0x8000
bx lr
arm_func_end func_ov61_0214fb94
.global func_ov61_0214fba0
arm_func_start func_ov61_0214fba0
func_ov61_0214fba0: ; 0x0214fba0
stmdb sp!, {r3, r4, r5, lr}
movs r4, r2
add r0, r0, #0x1000
ldr r2, [r0, #0x10]
mov r5, r1
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r0, _0214fbf4 ; =data_ov61_0217ac64
mov r1, r4
blx r2
str r0, [r5]
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
str r0, [r5, #4]
str r4, [r5, #0xc]
ldr r0, [r5]
add r0, r0, r4
str r0, [r5, #8]
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0214fba0
_0214fbf4: .word data_ov61_0217ac64
.global func_ov61_0214fbf8
arm_func_start func_ov61_0214fbf8
func_ov61_0214fbf8: ; 0x0214fbf8
stmdb sp!, {r4, lr}
mov r4, r1
ldr r1, [r4]
add r0, r0, #0x1000
cmp r1, #0
ldr r3, [r0, #0x14]
beq _0214fc20
ldr r0, _0214fc34 ; =data_ov61_0217ac78
mov r2, #0
blx r3
_0214fc20:
mov r0, r4
mov r1, #0
mov r2, #0x10
bl func_02007a44
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0214fbf8
_0214fc34: .word data_ov61_0217ac78
.global func_ov61_0214fc38
arm_func_start func_ov61_0214fc38
func_ov61_0214fc38: ; 0x0214fc38
stmdb sp!, {r3, r4, r5, r6, r7, lr}
add r0, r0, #0x1000
ldr r7, [r0, #0x14]
mov r5, r2
mov r6, r1
cmp r5, #0
ldr r2, [r0, #0x10]
movle r0, #0
ldmleia sp!, {r3, r4, r5, r6, r7, pc}
ldr r1, [r6, #0xc]
ldr r0, _0214fcd8 ; =data_ov61_0217ac8c
add r1, r1, r5
blx r2
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, [r6]
ldr r2, [r6, #0xc]
mov r1, r4
bl func_02007ad8
ldr r1, [r6]
ldr r0, _0214fcdc ; =data_ov61_0217ac78
mov r2, #0
blx r7
cmp r4, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldmia r6, {r0, r1}
sub r0, r4, r0
add r0, r1, r0
str r0, [r6, #4]
ldr r1, [r6, #0xc]
mov r0, #1
add r1, r1, r5
str r1, [r6, #0xc]
str r4, [r6]
ldr r1, [r6, #0xc]
add r1, r4, r1
str r1, [r6, #8]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0214fc38
_0214fcd8: .word data_ov61_0217ac8c
_0214fcdc: .word data_ov61_0217ac78
.global func_ov61_0214fce0
arm_func_start func_ov61_0214fce0
func_ov61_0214fce0: ; 0x0214fce0
stmdb sp!, {r4, r5, r6, lr}
mov r6, r1
mov r5, r0
mov r0, r6
mov r4, #0
bl strlen
cmp r0, #0x100
movhs r0, r4
ldmhsia sp!, {r4, r5, r6, pc}
add r0, r5, #0x24
mov r1, r6
add r0, r0, #0x1000
mov r2, #0x100
bl strncpy
mov r0, r6
bl strlen
add r1, r5, #0x24
mov r6, r0
add r0, r1, #0x1000
bl strlen
cmp r6, r0
movne r0, r4
ldmneia sp!, {r4, r5, r6, pc}
add r0, r5, #0x24
ldr r1, _0214fe24 ; =data_ov61_0217ac9c
add r0, r0, #0x1000
bl strstr
cmp r0, #0
beq _0214fd7c
add r0, r5, #0x2b
add r1, r0, #0x1000
add r0, r5, #0x1000
str r1, [r0, #0x124]
mov r1, r4
str r1, [r0, #0x130]
add r0, r5, #0x1100
mov r1, #0x50
strh r1, [r0, #0x34]
b _0214fdb8
_0214fd7c:
add r0, r5, #0x24
ldr r1, _0214fe28 ; =data_ov61_0217aca4
add r0, r0, #0x1000
bl strstr
cmp r0, #0
moveq r0, r4
ldmeqia sp!, {r4, r5, r6, pc}
add r2, r0, #8
add r0, r5, #0x1000
mov r1, #1
str r2, [r0, #0x124]
str r1, [r0, #0x130]
rsb r1, r1, #0x1bc
add r0, r5, #0x1100
strh r1, [r0, #0x34]
_0214fdb8:
add r0, r5, #0x1000
ldr r0, [r0, #0x124]
ldr r1, _0214fe2c ; =data_ov61_0217acb0
bl strstr
cmp r0, #0
movne r1, #0
strneb r1, [r0]
addne r4, r0, #1
add r0, r5, #0x1000
ldr r0, [r0, #0x124]
ldr r1, _0214fe30 ; =data_ov61_0217acb4
bl strstr
cmp r0, #0
mov r1, #0
addeq r0, r5, #0x1000
strneb r1, [r0]
addne r1, r0, #1
addne r0, r5, #0x1000
str r1, [r0, #0x128]
cmp r4, #0
beq _0214fe1c
mov r0, r4
bl func_0204902c
add r1, r5, #0x1100
strh r0, [r1, #0x34]
_0214fe1c:
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0214fce0
_0214fe24: .word data_ov61_0217ac9c
_0214fe28: .word data_ov61_0217aca4
_0214fe2c: .word data_ov61_0217acb0
_0214fe30: .word data_ov61_0217acb4
.global func_ov61_0214fe34
arm_func_start func_ov61_0214fe34
func_ov61_0214fe34: ; 0x0214fe34
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r8, r1
add r0, r0, #0x1000
ldmib r8, {r1, r4}
cmp r4, r1
ldr r4, [r0, #0x10]
ldr r5, [r0, #0x14]
mov r7, r2
mov r6, r3
movgt r0, #0
ldmgtia sp!, {r4, r5, r6, r7, r8, pc}
mov r0, r7
bl strlen
mov r1, r0
ldr r0, _0214ff78 ; =data_ov61_0217acb8
add r1, r1, #1
blx r4
ldr r2, [r8]
ldr r1, [r8, #8]
str r0, [r2, r1, lsl #3]
ldr r1, [r8, #8]
ldr r2, [r8]
ldr r0, [r2, r1, lsl #3]
cmp r0, #0
beq _0214ff10
mov r0, r6
bl strlen
mov r1, r0
ldr r0, _0214ff7c ; =data_ov61_0217acd8
add r1, r1, #1
blx r4
ldr r2, [r8]
ldr r1, [r8, #8]
add r1, r2, r1, lsl #3
str r0, [r1, #4]
ldr r1, [r8, #8]
ldr r2, [r8]
add r0, r2, r1, lsl #3
ldr r0, [r0, #4]
cmp r0, #0
beq _0214ff10
ldr r0, [r2, r1, lsl #3]
mov r1, r7
bl strcpy
ldr r2, [r8]
ldr r0, [r8, #8]
mov r1, r6
add r0, r2, r0, lsl #3
ldr r0, [r0, #4]
bl strcpy
ldr r1, [r8, #8]
mov r0, #1
add r1, r1, #1
str r1, [r8, #8]
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0214ff10:
ldr r1, [r2, r1, lsl #3]
cmp r1, #0
beq _0214ff38
ldr r0, _0214ff80 ; =data_ov61_0217acf8
mov r2, #0
blx r5
ldr r1, [r8]
ldr r0, [r8, #8]
mov r2, #0
str r2, [r1, r0, lsl #3]
_0214ff38:
ldr r1, [r8]
ldr r0, [r8, #8]
add r0, r1, r0, lsl #3
ldr r1, [r0, #4]
cmp r1, #0
beq _0214ff70
ldr r0, _0214ff84 ; =data_ov61_0217ad14
mov r2, #0
blx r5
ldr r1, [r8]
ldr r0, [r8, #8]
mov r2, #0
add r0, r1, r0, lsl #3
str r2, [r0, #4]
_0214ff70:
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_0214fe34
_0214ff78: .word data_ov61_0217acb8
_0214ff7c: .word data_ov61_0217acd8
_0214ff80: .word data_ov61_0217acf8
_0214ff84: .word data_ov61_0217ad14
.global func_ov61_0214ff88
arm_func_start func_ov61_0214ff88
func_ov61_0214ff88: ; 0x0214ff88
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x10
mov r4, r0
add r0, r4, #0x238
mov r6, r1
add r0, r0, #0x1800
mov r3, #0x20
mov r1, #0
mov r2, #0x100
str r0, [sp, #4]
str r3, [sp, #8]
str r1, [sp, #0xc]
bl func_02007a44
add r0, r4, #0x1000
ldr r5, [r0, #0xa08]
ldr r1, _02150208 ; =data_ov61_0217ab70
mov r0, r5
bl strstr
str r0, [sp]
cmp r0, #0
addeq sp, sp, #0x10
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
add r0, r0, #4
bl strlen
ldr r1, [sp]
add r1, r1, #4
add r11, r1, r0
ldr r1, _0215020c ; =data_ov61_0217ad30
mov r0, r5
bl strstr
movs r7, r0
addeq sp, sp, #0x10
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldrsb r9, [r7, #4]
ldr r2, _02150210 ; =data_ov61_0217ad34
mov r5, #0
add r1, sp, #4
mov r0, r4
add r3, r7, #1
strb r5, [r7, #4]
bl func_ov61_0214fe34
cmp r0, #1
addne sp, sp, #0x10
strb r9, [r7, #4]
movne r0, r5
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
cmp r6, #1
beq _02150068
ldr r1, _02150214 ; =data_ov61_0217ad40
add r0, r7, #1
mov r2, #3
bl strncmp
cmp r0, #0
beq _02150074
_02150068:
add sp, sp, #0x10
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02150074:
ldr r1, _02150218 ; =data_ov61_0217aba0
add r0, r7, #5
bl strstr
cmp r0, #0
addeq sp, sp, #0x10
moveq r0, r5
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
add r9, r0, #2
b _02150128
_02150098:
ldr r1, _0215021c ; =data_ov61_0217ad44
mov r0, r9
bl strstr
movs r6, r0
beq _0215013c
ldrsb r7, [r6]
mov r1, #0
add r10, r6, #2
strb r1, [r6]
ldr r1, _02150218 ; =data_ov61_0217aba0
mov r0, r10
bl strstr
movs r5, r0
streqb r7, [r6]
beq _0215013c
ldrsb r8, [r5]
mov r1, #0
mov r2, r9
strb r1, [r5]
mov r0, r4
add r1, sp, #4
mov r3, r10
bl func_ov61_0214fe34
cmp r0, #1
beq _02150110
strb r7, [r6]
add sp, sp, #0x10
strb r8, [r5]
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02150110:
mov r0, r10
bl strlen
strb r7, [r6]
add r0, r10, r0
strb r8, [r5]
add r9, r0, #2
_02150128:
ldrsb r0, [r9]
cmp r0, #0xd
ldrnesb r0, [r9, #1]
cmpne r0, #0xa
bne _02150098
_0215013c:
ldr r0, [sp]
add r7, r0, #4
cmp r7, r11
bhs _021501fc
_0215014c:
ldr r1, _02150220 ; =data_ov61_0217ad48
mov r0, r7
bl strstr
movs r5, r0
beq _021501fc
ldrsb r9, [r5]
mov r1, #0
add r6, r5, #1
strb r1, [r5]
ldr r1, _02150224 ; =data_ov61_0217ad4c
mov r0, r6
bl strstr
movs r10, r0
bne _02150194
ldr r1, _02150218 ; =data_ov61_0217aba0
mov r0, r6
bl strstr
mov r10, r0
_02150194:
cmp r10, #0
ldrnesb r8, [r10]
movne r0, #0
mov r2, r7
strneb r0, [r10]
mov r0, r4
add r1, sp, #4
mov r3, r6
bl func_ov61_0214fe34
cmp r0, #1
beq _021501d8
strb r9, [r5]
cmp r10, #0
add sp, sp, #0x10
strneb r8, [r10]
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021501d8:
mov r0, r6
bl strlen
add r0, r6, r0
strb r9, [r5]
cmp r10, #0
add r7, r0, #1
strneb r8, [r10]
cmp r7, r11
blo _0215014c
_021501fc:
mov r0, #1
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0214ff88
_02150208: .word data_ov61_0217ab70
_0215020c: .word data_ov61_0217ad30
_02150210: .word data_ov61_0217ad34
_02150214: .word data_ov61_0217ad40
_02150218: .word data_ov61_0217aba0
_0215021c: .word data_ov61_0217ad44
_02150220: .word data_ov61_0217ad48
_02150224: .word data_ov61_0217ad4c
.global func_ov61_02150228
arm_func_start func_ov61_02150228
func_ov61_02150228: ; 0x02150228
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
mov r4, #0
_02150238:
add r0, r6, r4, lsl #3
add r0, r0, #0x1000
ldr r1, [r0, #0xa38]
cmp r1, #0
beq _02150278
mov r0, r5
bl strcmp
cmp r0, #0
bne _0215026c
add r0, r6, r4, lsl #3
add r0, r0, #0x1000
ldr r0, [r0, #0xa3c]
ldmia sp!, {r4, r5, r6, pc}
_0215026c:
add r4, r4, #1
cmp r4, #0x20
blt _02150238
_02150278:
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02150228
.global func_ov61_02150280
arm_func_start func_ov61_02150280
func_ov61_02150280: ; 0x02150280
stmdb sp!, {r4, r5, r6, lr}
mov r6, r2
mov r5, r3
bl func_ov61_02150228
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
bl strlen
mov r1, r0
mov r0, r4
mov r2, r6
mov r3, r5
bl func_ov61_02151998
mvn r1, #0
cmp r0, r1
ldmeqia sp!, {r4, r5, r6, pc}
cmp r0, r5
ldmhsia sp!, {r4, r5, r6, pc}
mov r1, #0
strb r1, [r6, r0]
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02150280
.global func_ov61_021502d4
arm_func_start func_ov61_021502d4
func_ov61_021502d4: ; 0x021502d4
stmdb sp!, {r4, r5, r6, lr}
mov r6, r2
mov r5, r3
bl func_ov61_02150228
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
bl strlen
cmp r0, r5
movge r0, #0
ldmgeia sp!, {r4, r5, r6, pc}
mov r0, r6
mov r1, r4
bl strcpy
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_021502d4
.global func_ov61_02150314
arm_func_start func_ov61_02150314
func_ov61_02150314: ; 0x02150314
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
add r0, r0, #0x1000
ldr r6, [r0, #0x14]
mov r9, r2
mov r10, r1
mov r8, #0
cmp r9, #0
ldmleia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r11, _02150394 ; =data_ov61_0217ad50
ldr r7, _02150398 ; =data_ov61_0217ad6c
mov r5, r8
mov r4, r8
_02150344:
ldr r1, [r10, r8, lsl #3]
cmp r1, #0
beq _02150360
mov r0, r11
mov r2, #0
blx r6
str r5, [r10, r8, lsl #3]
_02150360:
add r0, r10, r8, lsl #3
ldr r1, [r0, #4]
cmp r1, #0
beq _02150384
mov r0, r7
mov r2, #0
blx r6
add r0, r10, r8, lsl #3
str r4, [r0, #4]
_02150384:
add r8, r8, #1
cmp r8, r9
blt _02150344
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02150314
_02150394: .word data_ov61_0217ad50
_02150398: .word data_ov61_0217ad6c
.global func_ov61_0215039c
arm_func_start func_ov61_0215039c
func_ov61_0215039c: ; 0x0215039c
stmdb sp!, {r3, r4, r5, lr}
ldr r1, _02150464 ; =data_ov61_0217f38c
mov r5, r0
ldr r0, [r1]
ldr r4, [r5]
cmp r0, #0
movne r0, #4
ldmneia sp!, {r3, r4, r5, pc}
ldr r0, _02150468 ; =data_ov61_0217adb0
ldr r1, _0215046c ; =0x000011f4
blx r4
ldr r1, _02150464 ; =data_ov61_0217f38c
cmp r0, #0
str r0, [r1]
moveq r0, #4
ldmeqia sp!, {r3, r4, r5, pc}
ldr r2, _0215046c ; =0x000011f4
mov r1, #0
bl func_02007a44
ldr ip, _02150464 ; =data_ov61_0217f38c
ldr r1, _02150470 ; =0xfffe7961
ldr r0, [ip]
add r0, r0, #0x1000
str r1, [r0, #4]
ldr r3, [ip]
ldmia r5, {r0, r1, r2}
add r3, r3, #0x108
add r3, r3, #0x1000
stmia r3, {r0, r1, r2}
ldr r0, [ip, #0x14]
cmp r0, #0
movne r0, #4
ldmneia sp!, {r3, r4, r5, pc}
ldr r0, _02150474 ; =data_ov61_0217adc4
ldr r1, _02150478 ; =0x00001c14
blx r4
ldr r1, _02150464 ; =data_ov61_0217f38c
cmp r0, #0
str r0, [r1, #0x14]
moveq r0, #4
ldmeqia sp!, {r3, r4, r5, pc}
mov r0, #0
str r0, [r1, #4]
ldr r0, [r1]
add r0, r0, #0x1dc
add r0, r0, #0x1000
bl func_0200e02c
bl func_ov61_02150634
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0215039c
_02150464: .word data_ov61_0217f38c
_02150468: .word data_ov61_0217adb0
_0215046c: .word 0x000011f4
_02150470: .word 0xfffe7961
_02150474: .word data_ov61_0217adc4
_02150478: .word 0x00001c14
.global func_ov61_0215047c
arm_func_start func_ov61_0215047c
func_ov61_0215047c: ; 0x0215047c
stmdb sp!, {r4, lr}
ldr r0, _02150560 ; =data_ov61_0217f38c
ldr r1, [r0]
ldr r0, [r0, #0x14]
add r1, r1, #0x1000
cmp r0, #0
ldr r4, [r1, #0x10c]
beq _021504c0
bl func_ov61_0214f7b0
ldr r1, _02150560 ; =data_ov61_0217f38c
ldr r0, _02150564 ; =data_ov61_0217add4
ldr r1, [r1, #0x14]
mov r2, #0
blx r4
ldr r0, _02150560 ; =data_ov61_0217f38c
mov r1, #0
str r1, [r0, #0x14]
_021504c0:
bl func_ov61_0214de28
ldr r0, _02150560 ; =data_ov61_0217f38c
ldr r0, [r0]
cmp r0, #0
ldmeqia sp!, {r4, pc}
add r0, r0, #0x1000
ldr r1, [r0, #0x114]
cmp r1, #0
beq _02150504
ldr r0, _02150568 ; =data_ov61_0217ade4
mov r2, #0
blx r4
ldr r0, _02150560 ; =data_ov61_0217f38c
mov r1, #0
ldr r0, [r0]
add r0, r0, #0x1000
str r1, [r0, #0x114]
_02150504:
ldr r0, _02150560 ; =data_ov61_0217f38c
ldr r0, [r0]
add r0, r0, #0x1000
ldr r1, [r0, #0x118]
cmp r1, #0
beq _0215053c
ldr r0, _0215056c ; =data_ov61_0217ae00
mov r2, #0
blx r4
ldr r0, _02150560 ; =data_ov61_0217f38c
mov r1, #0
ldr r0, [r0]
add r0, r0, #0x1000
str r1, [r0, #0x118]
_0215053c:
ldr r1, _02150560 ; =data_ov61_0217f38c
ldr r0, _02150570 ; =data_ov61_0217ae20
ldr r1, [r1]
mov r2, #0
blx r4
ldr r0, _02150560 ; =data_ov61_0217f38c
mov r1, #0
str r1, [r0]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0215047c
_02150560: .word data_ov61_0217f38c
_02150564: .word data_ov61_0217add4
_02150568: .word data_ov61_0217ade4
_0215056c: .word data_ov61_0217ae00
_02150570: .word data_ov61_0217ae20
.global func_ov61_02150574
arm_func_start func_ov61_02150574
func_ov61_02150574: ; 0x02150574
stmdb sp!, {r3, lr}
ldr r0, _021505d8 ; =data_ov61_0217f38c
ldr r1, [r0]
cmp r1, #0
ldmeqia sp!, {r3, pc}
ldr r0, [r0, #0x14]
cmp r0, #0
beq _02150598
bl func_ov61_0214f26c
_02150598:
bl func_ov61_0214dd9c
ldr r0, _021505d8 ; =data_ov61_0217f38c
ldr r1, [r0]
add r0, r1, #0x1000
ldr r0, [r0, #0x188]
cmp r0, #0
beq _021505c0
add r0, r1, #0x11c
add r0, r0, #0x1000
bl func_0200d83c
_021505c0:
ldr r0, _021505d8 ; =data_ov61_0217f38c
mvn r1, #6
ldr r0, [r0]
add r0, r0, #0x1000
str r1, [r0, #4]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02150574
_021505d8: .word data_ov61_0217f38c
.global func_ov61_021505dc
arm_func_start func_ov61_021505dc
func_ov61_021505dc: ; 0x021505dc
stmdb sp!, {r4, lr}
ldr r0, _02150618 ; =data_ov61_0217f38c
ldr r0, [r0]
add r0, r0, #0x1dc
add r0, r0, #0x1000
bl func_0200e044
ldr r0, _02150618 ; =data_ov61_0217f38c
ldr r1, [r0]
add r0, r1, #0x1dc
add r1, r1, #0x1000
add r0, r0, #0x1000
ldr r4, [r1]
bl func_0200e0c8
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021505dc
_02150618: .word data_ov61_0217f38c
.global func_ov61_0215061c
arm_func_start func_ov61_0215061c
func_ov61_0215061c: ; 0x0215061c
ldr r0, _02150630 ; =data_ov61_0217f38c
ldr r0, [r0]
add r0, r0, #0x1000
ldr r0, [r0, #4]
bx lr
.align 2, 0
arm_func_end func_ov61_0215061c
_02150630: .word data_ov61_0217f38c
.global func_ov61_02150634
arm_func_start func_ov61_02150634
func_ov61_02150634: ; 0x02150634
stmdb sp!, {r3, lr}
sub sp, sp, #8
ldr r0, _021506b4 ; =data_ov61_0217f38c
ldr r1, [r0]
add r0, r1, #0x1000
ldr r0, [r0, #0x188]
cmp r0, #0
beq _0215066c
add r0, r1, #0x11c
add r0, r0, #0x1000
bl func_0200d86c
cmp r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r3, pc}
_0215066c:
ldr r0, _021506b4 ; =data_ov61_0217f38c
mov r3, #0x1000
ldr r2, [r0]
ldr r1, _021506b8 ; =func_ov61_021506bc
add r0, r2, #0x11c
str r3, [sp]
mov ip, #0x10
add r0, r0, #0x1000
add r3, r2, #0x1000
str ip, [sp, #4]
blx func_0200d5e4
ldr r0, _021506b4 ; =data_ov61_0217f38c
ldr r0, [r0]
add r0, r0, #0x11c
add r0, r0, #0x1000
bl func_0200d938
add sp, sp, #8
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02150634
_021506b4: .word data_ov61_0217f38c
_021506b8: .word func_ov61_021506bc
.global func_ov61_021506bc
arm_func_start func_ov61_021506bc
func_ov61_021506bc: ; 0x021506bc
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x290
ldr r4, _02151520 ; =data_ov61_0217f38c
mov r8, #0
ldr r0, [r4]
mov r9, r8
add r0, r0, #0x1000
ldr r6, [r0, #0x108]
ldr r7, [r0, #0x10c]
mvn r0, #2
str r0, [sp, #0x14]
sub r0, r0, #1
str r0, [sp, #0x18]
ldr r0, [sp, #0x14]
mov r10, r8
sub r0, r0, #2
str r0, [sp, #0x1c]
ldr r0, _02151524 ; =0x00009c40
mov r0, r0, lsr #0x1
str r0, [sp, #0xc]
ldr r0, [sp, #0x14]
add r0, r0, #1
str r0, [sp, #0x10]
_02150718:
ldr r0, _02151528 ; =data_ov61_0217ad88
ldr r1, _0215152c ; =data_ov61_0217f3a4
ldr r0, [r0]
str r0, [r4, #0x18]
mov r0, #1
str r0, [r4, #0x1c]
mov r0, #0x1000
str r0, [r4, #0x20]
str r6, [r4, #0x24]
ldr r0, [sp, #0xc]
str r7, [r4, #0x28]
str r0, [r4, #0x30]
ldr r0, [r4]
add r2, r0, #0x1000
ldr r0, [sp, #0x10]
str r0, [r2, #4]
ldr r0, [r4, #0x14]
bl func_ov61_0214effc
cmp r0, #0
beq _02150780
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #1
bl func_ov61_021515a8
b _021514cc
_02150780:
ldr r0, [r4, #0x14]
bl func_ov61_0214f118
cmp r0, #0
beq _021507a8
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #1
bl func_ov61_021515a8
b _021514cc
_021507a8:
ldr r0, _02151530 ; =data_027e02a0
ldr r0, [r0, #4]
bl func_0200db20
sub r1, r0, #1
ldr r0, [r4, #0x14]
bl func_ov61_0214f1b0
ldr r1, [r4, #0x14]
add r0, r1, #0x1000
ldr r0, [r0, #0xba4]
cmp r0, #0
beq _021507e0
add r0, r1, #0x338
add r0, r0, #0x1800
bl func_0200d83c
_021507e0:
ldr r0, [r4, #0x14]
add r1, r0, #0x1000
ldr r1, [r1, #0x20]
cmp r1, #2
beq _02150800
cmp r1, #8
beq _0215082c
b _02150814
_02150800:
ldr r0, _02151520 ; =data_ov61_0217f38c
mvn r1, #0
ldr r0, [r0]
add r0, r0, #0x1000
str r1, [r0, #4]
_02150814:
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #3
bl func_ov61_021515a8
b _021514cc
_0215082c:
mov r1, #0
bl func_ov61_0214ff88
cmp r0, #1
beq _02150854
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #2
bl func_ov61_021515a8
b _021514cc
_02150854:
ldr r0, [r4, #0x14]
ldr r1, _02151534 ; =data_ov61_0217ae9c
bl func_ov61_02150228
bl func_0204902c
mov r5, r0
ldr r0, _02151538 ; =data_02076d88
ldr r0, [r0]
cmp r0, #0x22
bne _02150884
mov r0, #2
bl func_ov61_021515a8
b _021514cc
_02150884:
cmp r5, #0xc8
beq _0215089c
ldr r0, _0215153c ; =0x0000012e
cmp r5, r0
beq _021508b0
b _02150b90
_0215089c:
ldr r0, [r4, #0x14]
add r0, r0, #0x1000
ldr r0, [r0, #0x12c]
str r0, [r4, #8]
b _02150ba8
_021508b0:
mov r0, #1
str r0, [r4, #4]
ldr r0, [r4]
add r0, r0, #0x1000
ldr r1, [r0, #0x118]
cmp r1, #0
beq _02150b00
ldr r1, _02151520 ; =data_ov61_0217f38c
mvn r2, #5
str r2, [r0, #4]
ldr r0, [r1, #0x14]
bl func_ov61_0214f7b0
ldr r0, _02151540 ; =data_ov61_0217a8d0
ldr r2, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0]
mov r1, #0
str r0, [r2, #0x18]
str r1, [r2, #0x1c]
mov r1, #0x200
str r1, [r2, #0x20]
str r6, [r2, #0x24]
ldr r3, _02151544 ; =0x00004e20
str r7, [r2, #0x28]
ldr r1, _02151548 ; =data_ov61_0217aea8
str r3, [r2, #0x30]
bl strcmp
cmp r0, #0
ldrne r0, _02151520 ; =data_ov61_0217f38c
movne r1, #1
strne r1, [r0, #0x2c]
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r1, _0215152c ; =data_ov61_0217f3a4
ldr r0, [r0, #0x14]
bl func_ov61_0214effc
cmp r0, #0
beq _02150958
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #1
bl func_ov61_021515a8
b _021514cc
_02150958:
add r0, sp, #0x38
bl func_ov61_0214e9d8
cmp r0, #0
beq _02150984
ldr r0, _02151520 ; =data_ov61_0217f38c
add r1, sp, #0x38
ldr r0, [r0, #0x14]
mov r2, #1
bl func_ov61_0214ecb0
cmp r0, #0
bne _0215099c
_02150984:
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #8
bl func_ov61_021515a8
b _021514cc
_0215099c:
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r1, _0215154c ; =data_ov61_0217aec8
ldr r0, [r0, #0x14]
ldr r2, _02151550 ; =data_ov61_0217aed0
mov r3, #7
bl func_ov61_0214fa00
cmp r0, #0
bne _021509f4
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0]
add r0, r0, #0x1000
ldr r4, [r0, #0x118]
mov r0, r4
bl strlen
ldr r1, _02151520 ; =data_ov61_0217f38c
mov r3, r0
ldr r0, [r1, #0x14]
ldr r1, _02151554 ; =data_ov61_0217aed8
mov r2, r4
bl func_ov61_0214fa00
cmp r0, #0
beq _02150a0c
_021509f4:
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #8
bl func_ov61_021515a8
b _021514cc
_02150a0c:
ldr r1, _02151520 ; =data_ov61_0217f38c
ldr r0, _02151558 ; =data_ov61_0217ae00
ldr r1, [r1]
mov r2, #0
add r1, r1, #0x1000
ldr r1, [r1, #0x118]
blx r7
ldr r1, _02151520 ; =data_ov61_0217f38c
mov r2, #0
ldr r0, [r1]
add r0, r0, #0x1000
str r2, [r0, #0x118]
ldr r0, [r1, #0x14]
bl func_ov61_0214f118
cmp r0, #0
beq _02150a64
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #1
bl func_ov61_021515a8
b _021514cc
_02150a64:
ldr r0, _02151530 ; =data_027e02a0
ldr r0, [r0, #4]
bl func_0200db20
ldr r2, _02151520 ; =data_ov61_0217f38c
sub r1, r0, #1
ldr r0, [r2, #0x14]
bl func_ov61_0214f1b0
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r1, [r0, #0x14]
add r0, r1, #0x1000
ldr r0, [r0, #0xba4]
cmp r0, #0
beq _02150aa4
add r0, r1, #0x338
add r0, r0, #0x1800
bl func_0200d83c
_02150aa4:
ldr r2, _02151520 ; =data_ov61_0217f38c
ldr r0, [r2, #0x14]
add r1, r0, #0x1000
ldr r1, [r1, #0x20]
cmp r1, #2
beq _02150ac8
cmp r1, #8
beq _02150af0
b _02150ad8
_02150ac8:
ldr r0, [r2]
mvn r1, #0
add r0, r0, #0x1000
str r1, [r0, #4]
_02150ad8:
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #3
bl func_ov61_021515a8
b _021514cc
_02150af0:
bl func_ov61_0214f7b0
mov r0, #7
bl func_ov61_021515a8
b _021514cc
_02150b00:
ldr r0, [r4, #0x14]
add r1, r0, #0x1000
ldr r11, [r1, #0xa08]
cmp r11, #0
bne _02150b24
bl func_ov61_0214f7b0
mov r0, #2
bl func_ov61_021515a8
b _021514cc
_02150b24:
mov r0, r11
bl strlen
add r1, r0, #1
ldr r0, _0215155c ; =data_ov61_0217ae34
blx r6
ldr r1, [r4]
add r1, r1, #0x1000
str r0, [r1, #0x114]
ldr r0, [r4]
add r0, r0, #0x1000
ldr r0, [r0, #0x114]
str r0, [sp, #4]
cmp r0, #0
bne _02150b74
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #4
bl func_ov61_021515a8
b _021514cc
_02150b74:
mov r0, r11
bl strlen
mov r2, r0
ldr r0, [sp, #4]
mov r1, r11
bl strncpy
b _02150ba8
_02150b90:
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #0xa
bl func_ov61_021515a8
b _021514cc
_02150ba8:
ldr r0, [r4, #0x14]
bl func_ov61_0214f7b0
add r0, sp, #0x24
blx func_ov00_02077af8
ldr r2, [sp, #0x24]
ldr r1, [sp, #0x28]
mov r0, #0
cmp r1, r0
cmpeq r2, r0
bne _02150cd8
ldr r1, [r4]
ldr r0, _02151560 ; =data_ov61_0217f3c0
add r2, r1, #0x1000
ldr r1, [sp, #0x14]
str r1, [r2, #4]
mov r1, #0
strh r1, [r4, #0x34]
strb r1, [r4, #0x68]
ldr r1, [r4]
add r1, r1, #0x1000
ldr r2, [r1, #0x108]
str r2, [r4, #0x74]
ldr r1, [r1, #0x10c]
str r1, [r4, #0x78]
ldr r1, [r4, #0x14]
bl func_ov61_0214dbc4
cmp r0, #0
beq _02150c24
mov r0, #5
bl func_ov61_021515a8
b _021514cc
_02150c24:
bl func_ov61_0214de80
bl func_ov61_0214deb0
cmp r0, #0x15
beq _02150cd4
bl func_ov61_0214deb0
cmp r0, #9
bne _02150c58
ldr r0, _02151520 ; =data_ov61_0217f38c
mvn r1, #0
ldr r0, [r0]
add r0, r0, #0x1000
str r1, [r0, #4]
b _02150cc4
_02150c58:
add r0, sp, #0xcc
bl func_ov61_0214defc
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0xc]
cmp r0, #1
bne _02150cb0
ldr r1, [sp, #0xcc]
ldr r0, _02151564 ; =0xffffa4fa
cmp r1, r0
beq _02150c8c
bl func_ov61_0214deb0
cmp r0, #0xb
bne _02150cb0
_02150c8c:
ldr r0, _02151520 ; =data_ov61_0217f38c
mov r1, #0
ldr r0, [r0]
add r0, r0, #0x1000
str r1, [r0, #4]
bl func_ov61_0214de28
mov r0, #0xb
bl func_ov61_021515a8
b _021514cc
_02150cb0:
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r1, [sp, #0xcc]
ldr r0, [r0]
add r0, r0, #0x1000
str r1, [r0, #4]
_02150cc4:
bl func_ov61_0214de28
mov r0, #6
bl func_ov61_021515a8
b _021514cc
_02150cd4:
bl func_ov61_0214de28
_02150cd8:
cmp r5, #0xc8
bne _02150d00
ldr r0, _02151520 ; =data_ov61_0217f38c
mov r2, #0
ldr r1, [r0]
mov r0, #0xb
add r1, r1, #0x1000
str r2, [r1, #4]
bl func_ov61_021515a8
b _021514cc
_02150d00:
ldr r0, [r4]
ldr r1, _02151548 ; =data_ov61_0217aea8
add r2, r0, #0x1000
ldr r0, [sp, #0x18]
str r0, [r2, #4]
ldr r0, _02151540 ; =data_ov61_0217a8d0
mov r2, #0
ldr r0, [r0]
str r0, [r4, #0x18]
str r2, [r4, #0x1c]
mov r2, #0x1000
str r2, [r4, #0x20]
str r6, [r4, #0x24]
ldr r2, _02151524 ; =0x00009c40
str r7, [r4, #0x28]
str r2, [r4, #0x30]
bl strcmp
cmp r0, #0
movne r0, #1
strne r0, [r4, #0x2c]
ldr r0, [r4, #0x14]
ldr r1, _0215152c ; =data_ov61_0217f3a4
bl func_ov61_0214effc
cmp r0, #0
beq _02150d7c
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #1
bl func_ov61_021515a8
b _021514cc
_02150d7c:
add r0, sp, #0x38
bl func_ov61_0214e9d8
cmp r0, #0
beq _02150da4
ldr r0, [r4, #0x14]
add r1, sp, #0x38
mov r2, #1
bl func_ov61_0214ecb0
cmp r0, #0
bne _02150dbc
_02150da4:
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #8
bl func_ov61_021515a8
b _021514cc
_02150dbc:
ldr r0, [r4, #0x14]
ldr r1, _0215154c ; =data_ov61_0217aec8
ldr r2, _02151568 ; =data_ov61_0217aee8
mov r3, #5
bl func_ov61_0214fa00
cmp r0, #0
bne _02150e08
ldr r0, [r4]
add r0, r0, #0x1000
ldr r5, [r0, #0x114]
mov r0, r5
bl strlen
mov r3, r0
ldr r0, [r4, #0x14]
ldr r1, _0215156c ; =data_ov61_0217aef0
mov r2, r5
bl func_ov61_0214fa00
cmp r0, #0
beq _02150e20
_02150e08:
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #8
bl func_ov61_021515a8
b _021514cc
_02150e20:
ldr r1, [r4]
ldr r0, _02151570 ; =data_ov61_0217ade4
add r1, r1, #0x1000
ldr r1, [r1, #0x114]
mov r2, #0
blx r7
ldr r0, [r4]
add r1, r0, #0x1000
mov r0, #0
str r0, [r1, #0x114]
ldr r0, [r4, #0x14]
bl func_ov61_0214f118
cmp r0, #0
beq _02150e70
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #1
bl func_ov61_021515a8
b _021514cc
_02150e70:
ldr r0, _02151530 ; =data_027e02a0
ldr r0, [r0, #4]
bl func_0200db20
sub r1, r0, #1
ldr r0, [r4, #0x14]
bl func_ov61_0214f1b0
ldr r1, [r4, #0x14]
add r0, r1, #0x1000
ldr r0, [r0, #0xba4]
cmp r0, #0
beq _02150ea8
add r0, r1, #0x338
add r0, r0, #0x1800
bl func_0200d83c
_02150ea8:
ldr r0, [r4, #0x14]
add r1, r0, #0x1000
ldr r1, [r1, #0x20]
cmp r1, #2
beq _02150f0c
cmp r1, #3
beq _02150ed0
cmp r1, #8
beq _02150f38
b _02150f20
_02150ed0:
bl func_ov61_0214f7b0
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r1, [r0, #0xc]
cmp r1, #1
bne _02150f00
ldr r0, [r0]
mov r2, #0
add r1, r0, #0x1000
mov r0, #0xb
str r2, [r1, #4]
bl func_ov61_021515a8
b _021514cc
_02150f00:
mov r0, #3
bl func_ov61_021515a8
b _021514cc
_02150f0c:
ldr r0, _02151520 ; =data_ov61_0217f38c
mvn r1, #0
ldr r0, [r0]
add r0, r0, #0x1000
str r1, [r0, #4]
_02150f20:
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #3
bl func_ov61_021515a8
b _021514cc
_02150f38:
mov r1, #0
bl func_ov61_0214ff88
cmp r0, #1
beq _02150f60
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #2
bl func_ov61_021515a8
b _021514cc
_02150f60:
ldr r0, [r4, #0x14]
ldr r1, _02151534 ; =data_ov61_0217ae9c
bl func_ov61_02150228
bl func_0204902c
mov r5, r0
ldr r0, _02151538 ; =data_02076d88
ldr r0, [r0]
cmp r0, #0x22
bne _02150f9c
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #2
bl func_ov61_021515a8
b _021514cc
_02150f9c:
cmp r5, #0xc8
beq _02150ff0
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
ldr r1, _02151520 ; =data_ov61_0217f38c
ldr r0, [r1, #0xc]
cmp r0, #1
ldreq r0, _0215153c ; =0x0000012e
cmpeq r5, r0
bne _02150fe4
ldr r0, [r1]
mov r2, #0
add r1, r0, #0x1000
mov r0, #0xb
str r2, [r1, #4]
bl func_ov61_021515a8
b _021514cc
_02150fe4:
mov r0, #2
bl func_ov61_021515a8
b _021514cc
_02150ff0:
ldr r0, [r4, #0x14]
ldr r1, _02151574 ; =data_ov61_0217aef8
add r2, sp, #0x20
mov r3, #4
bl func_ov61_02150280
cmp r0, #0
bgt _02151024
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #9
bl func_ov61_021515a8
b _021514cc
_02151024:
add r0, sp, #0x20
bl func_0204902c
ldr r1, _02151538 ; =data_02076d88
ldr r1, [r1]
cmp r1, #0x22
bne _02151054
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #9
bl func_ov61_021515a8
b _021514cc
_02151054:
ldr r1, [r4, #0xc]
cmp r1, #1
cmpeq r0, #0x72
bne _02151084
ldr r0, _02151520 ; =data_ov61_0217f38c
mov r2, #0
ldr r1, [r0]
mov r0, #0xb
add r1, r1, #0x1000
str r2, [r1, #4]
bl func_ov61_021515a8
b _021514cc
_02151084:
cmp r0, #0x64
blt _021510a4
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #6
bl func_ov61_021515a8
b _021514cc
_021510a4:
mov r2, #0
ldr r0, [r4, #0x14]
ldr r1, _02151578 ; =data_ov61_0217af04
mov r3, r2
bl func_ov61_02150280
str r0, [sp, #8]
cmp r0, #0
bgt _021510dc
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #9
bl func_ov61_021515a8
b _021514cc
_021510dc:
mov r2, #0
ldr r0, [r4, #0x14]
ldr r1, _0215157c ; =data_ov61_0217af08
mov r3, r2
bl func_ov61_02150280
mov r11, r0
cmp r11, #0
bgt _02151114
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #9
bl func_ov61_021515a8
b _021514cc
_02151114:
mov r2, #0
ldr r0, [r4, #0x14]
ldr r1, _02151580 ; =data_ov61_0217af10
mov r3, r2
bl func_ov61_02150280
ldr r1, [sp, #8]
mov r5, r0
ldr r0, _02151584 ; =data_ov61_0217ae50
add r1, r1, #1
blx r6
movs r8, r0
bne _0215115c
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #4
bl func_ov61_021515a8
b _021514cc
_0215115c:
ldr r0, _02151588 ; =data_ov61_0217ae5c
add r1, r11, #1
blx r6
movs r9, r0
bne _02151188
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #4
bl func_ov61_021515a8
b _021514cc
_02151188:
cmp r5, #0
ble _021511bc
ldr r0, _0215158c ; =data_ov61_0217ae6c
add r1, r5, #1
blx r6
movs r10, r0
bne _021511bc
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #4
bl func_ov61_021515a8
b _021514cc
_021511bc:
ldr r0, [sp, #8]
ldr r1, _02151578 ; =data_ov61_0217af04
add r3, r0, #1
ldr r0, [r4, #0x14]
mov r2, r8
bl func_ov61_02150280
cmp r0, #0
bge _021511f4
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #9
bl func_ov61_021515a8
b _021514cc
_021511f4:
mov r1, #0
strb r1, [r8, r0]
ldr r0, [r4, #0x14]
ldr r1, _0215157c ; =data_ov61_0217af08
add r3, r11, #1
mov r2, r9
bl func_ov61_02150280
cmp r0, #0
bge _02151230
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #9
bl func_ov61_021515a8
b _021514cc
_02151230:
mov r1, #0
strb r1, [r9, r0]
cmp r5, #0
mov r11, r1
ble _021512c4
ldr r0, [r4, #0x14]
ldr r1, _02151580 ; =data_ov61_0217af10
add r3, r5, #1
mov r2, r10
bl func_ov61_02150280
cmp r0, #0
bge _02151278
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #9
bl func_ov61_021515a8
b _021514cc
_02151278:
mov r1, r11
strb r1, [r10, r0]
mov r0, r10
bl func_0204902c
ldr r1, _02151538 ; =data_02076d88
ldr r1, [r1]
cmp r1, #0x22
bne _021512b0
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #9
bl func_ov61_021515a8
b _021514cc
_021512b0:
mov r1, #0x3e8
mul r11, r0, r1
ldr r0, _02151590 ; =0x0002bf20
cmp r11, r0
movgt r11, r0
_021512c4:
ldr r0, [r4, #0x14]
bl func_ov61_0214f7b0
ldr r0, [r4]
ldr r1, _0215152c ; =data_ov61_0217f3a4
add r2, r0, #0x1000
ldr r0, [sp, #0x1c]
str r0, [r2, #4]
str r8, [r4, #0x18]
mov r0, #0
str r0, [r4, #0x1c]
mov r0, #0x1000
str r0, [r4, #0x20]
str r6, [r4, #0x24]
ldr r0, _02151594 ; =0x0001d4c0
str r7, [r4, #0x28]
str r0, [r4, #0x30]
ldr r0, [r4, #0x14]
bl func_ov61_0214effc
cmp r0, #0
beq _0215132c
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #1
bl func_ov61_021515a8
b _021514cc
_0215132c:
ldr r0, [r4, #0x14]
mov r1, r9
bl func_ov61_0214fb0c
cmp r0, #0
beq _02151358
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #8
bl func_ov61_021515a8
b _021514cc
_02151358:
ldr r0, [r4, #0x14]
bl func_ov61_0214f118
cmp r0, #0
beq _02151380
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #1
bl func_ov61_021515a8
b _021514cc
_02151380:
ldr r0, _02151530 ; =data_027e02a0
ldr r0, [r0, #4]
bl func_0200db20
sub r1, r0, #1
ldr r0, [r4, #0x14]
bl func_ov61_0214f1b0
ldr r1, [r4, #0x14]
add r0, r1, #0x1000
ldr r0, [r0, #0xba4]
cmp r0, #0
beq _021513b8
add r0, r1, #0x338
add r0, r0, #0x1800
bl func_0200d83c
_021513b8:
ldr r0, [r4, #0x14]
add r1, r0, #0x1000
ldr r1, [r1, #0x20]
cmp r1, #2
beq _021513d8
cmp r1, #8
beq _02151404
b _021513ec
_021513d8:
ldr r0, _02151520 ; =data_ov61_0217f38c
mvn r1, #0
ldr r0, [r0]
add r0, r0, #0x1000
str r1, [r0, #4]
_021513ec:
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #3
bl func_ov61_021515a8
b _021514cc
_02151404:
mov r1, #1
bl func_ov61_0214ff88
cmp r0, #1
beq _0215142c
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #2
bl func_ov61_021515a8
b _021514cc
_0215142c:
ldr r0, [r4, #0x14]
add r1, r0, #0x1000
ldr r5, [r1, #0xa08]
cmp r5, #0
bne _02151450
bl func_ov61_0214f7b0
mov r0, #2
bl func_ov61_021515a8
b _021514cc
_02151450:
mov r0, r5
bl strlen
add r1, r0, #1
ldr r0, _02151598 ; =data_ov61_0217ae7c
blx r6
ldr r1, [r4]
add r1, r1, #0x1000
str r0, [r1, #0x118]
ldr r0, [r4]
add r0, r0, #0x1000
ldr r0, [r0, #0x118]
str r0, [sp]
cmp r0, #0
bne _021514a0
ldr r0, _02151520 ; =data_ov61_0217f38c
ldr r0, [r0, #0x14]
bl func_ov61_0214f7b0
mov r0, #4
bl func_ov61_021515a8
b _021514cc
_021514a0:
mov r0, r5
bl strlen
mov r2, r0
ldr r0, [sp]
mov r1, r5
bl strncpy
ldr r0, [r4, #0x14]
bl func_ov61_0214f7b0
mov r0, r11
bl func_0200db28
b _02150718
_021514cc:
cmp r8, #0
beq _021514e4
ldr r0, _0215159c ; =data_ov61_0217af18
mov r1, r8
mov r2, #0
blx r7
_021514e4:
cmp r9, #0
beq _021514fc
ldr r0, _021515a0 ; =data_ov61_0217af24
mov r1, r9
mov r2, #0
blx r7
_021514fc:
cmp r10, #0
addeq sp, sp, #0x290
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r0, _021515a4 ; =data_ov61_0217af30
mov r1, r10
mov r2, #0
blx r7
add sp, sp, #0x290
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_021506bc
_02151520: .word data_ov61_0217f38c
_02151524: .word 0x00009c40
_02151528: .word data_ov61_0217ad88
_0215152c: .word data_ov61_0217f3a4
_02151530: .word data_027e02a0
_02151534: .word data_ov61_0217ae9c
_02151538: .word data_02076d88
_0215153c: .word 0x0000012e
_02151540: .word data_ov61_0217a8d0
_02151544: .word 0x00004e20
_02151548: .word data_ov61_0217aea8
_0215154c: .word data_ov61_0217aec8
_02151550: .word data_ov61_0217aed0
_02151554: .word data_ov61_0217aed8
_02151558: .word data_ov61_0217ae00
_0215155c: .word data_ov61_0217ae34
_02151560: .word data_ov61_0217f3c0
_02151564: .word 0xffffa4fa
_02151568: .word data_ov61_0217aee8
_0215156c: .word data_ov61_0217aef0
_02151570: .word data_ov61_0217ade4
_02151574: .word data_ov61_0217aef8
_02151578: .word data_ov61_0217af04
_0215157c: .word data_ov61_0217af08
_02151580: .word data_ov61_0217af10
_02151584: .word data_ov61_0217ae50
_02151588: .word data_ov61_0217ae5c
_0215158c: .word data_ov61_0217ae6c
_02151590: .word 0x0002bf20
_02151594: .word 0x0001d4c0
_02151598: .word data_ov61_0217ae7c
_0215159c: .word data_ov61_0217af18
_021515a0: .word data_ov61_0217af24
_021515a4: .word data_ov61_0217af30
.global func_ov61_021515a8
arm_func_start func_ov61_021515a8
func_ov61_021515a8: ; 0x021515a8
stmdb sp!, {r4, lr}
ldr r1, _021515e8 ; =data_ov61_0217f38c
mov r4, r0
ldr r0, [r1]
add r0, r0, #0x1dc
add r0, r0, #0x1000
bl func_0200e044
ldr r1, _021515e8 ; =data_ov61_0217f38c
ldr r0, [r1]
add r0, r0, #0x1000
str r4, [r0]
ldr r0, [r1]
add r0, r0, #0x1dc
add r0, r0, #0x1000
bl func_0200e0c8
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021515a8
_021515e8: .word data_ov61_0217f38c
.global func_ov61_021515ec
arm_func_start func_ov61_021515ec
func_ov61_021515ec: ; 0x021515ec
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x3c
mov r6, r0
bl strlen
mov r4, r0
ldr r0, _02151800 ; =data_ov61_0217af9c
bl strlen
cmp r4, r0
ldreqsb r0, [r6, #7]
cmpeq r0, #0x20
ldreqsb r0, [r6, #0xb]
cmpeq r0, #0x20
ldreqsb r0, [r6, #0x10]
cmpeq r0, #0x20
ldreqsb r0, [r6, #0x13]
cmpeq r0, #0x3a
ldreqsb r0, [r6, #0x16]
cmpeq r0, #0x3a
ldreqsb r0, [r6, #0x19]
cmpeq r0, #0x20
bne _021517f4
add r0, sp, #0x2c
blx func_02042668
cmp r0, #0
bne _021517f4
add r0, sp, #0x20
blx func_020426d4
cmp r0, #0
bne _021517f4
add r0, sp, #0x2c
add r1, sp, #0x20
blx func_02042bb8
mov r4, r0
mov r5, r1
mvn r0, #0
cmp r5, r0
cmpeq r4, r0
beq _021517f4
add r0, sp, #0
mov r1, r6
bl strcpy
mov r2, #0
ldr r1, _02151804 ; =data_02076d88
add r0, sp, #0xc
strb r2, [sp, #7]
strb r2, [sp, #0xb]
strb r2, [sp, #0x10]
strb r2, [sp, #0x13]
strb r2, [sp, #0x16]
strb r2, [sp, #0x19]
str r2, [r1]
bl func_0204902c
ldr r1, _02151804 ; =data_02076d88
str r0, [sp, #0x2c]
ldr r1, [r1]
cmp r1, #0x22
beq _021517f4
sub r1, r0, #0x7d0
mov r0, #0xd
ldr r7, _02151808 ; =data_ov61_0217af6c
str r1, [sp, #0x2c]
str r0, [sp, #0x30]
mov r8, #0
add r6, sp, #8
_021516ec:
ldr r0, [r7, r8, lsl #2]
mov r1, r6
bl strcmp
cmp r0, #0
addeq r0, r8, #1
streq r0, [sp, #0x30]
beq _02151714
add r8, r8, #1
cmp r8, #0xc
blt _021516ec
_02151714:
ldr r0, [sp, #0x30]
cmp r0, #0xc
bhi _021517f4
ldr r1, _02151804 ; =data_02076d88
mov r2, #0
add r0, sp, #5
str r2, [r1]
bl func_0204902c
ldr r1, _02151804 ; =data_02076d88
str r0, [sp, #0x34]
ldr r0, [r1]
cmp r0, #0x22
beq _021517f4
mov r2, #0
add r0, sp, #0x11
str r2, [r1]
bl func_0204902c
ldr r1, _02151804 ; =data_02076d88
str r0, [sp, #0x20]
ldr r0, [r1]
cmp r0, #0x22
beq _021517f4
mov r2, #0
add r0, sp, #0x14
str r2, [r1]
bl func_0204902c
ldr r1, _02151804 ; =data_02076d88
str r0, [sp, #0x24]
ldr r0, [r1]
cmp r0, #0x22
beq _021517f4
mov r2, #0
add r0, sp, #0x17
str r2, [r1]
bl func_0204902c
ldr r1, _02151804 ; =data_02076d88
str r0, [sp, #0x28]
ldr r0, [r1]
cmp r0, #0x22
beq _021517f4
add r0, sp, #0x2c
add r1, sp, #0x20
blx func_02042bb8
mvn r2, #0
cmp r1, r2
cmpeq r0, r2
beq _021517f4
ldr r2, _0215180c ; =data_ov61_0217f408
subs r0, r4, r0
str r0, [r2, #4]
sbc r0, r5, r1
str r0, [r2, #8]
mov r0, #1
str r0, [r2]
add sp, sp, #0x3c
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
_021517f4:
mov r0, #0
add sp, sp, #0x3c
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_021515ec
_02151800: .word data_ov61_0217af9c
_02151804: .word data_02076d88
_02151808: .word data_ov61_0217af6c
_0215180c: .word data_ov61_0217f408
.global func_ov61_02151810
arm_func_start func_ov61_02151810
func_ov61_02151810: ; 0x02151810
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #8
ldr r4, _02151990 ; =0xaaaaaaab
str r2, [sp]
umull r4, r5, r1, r4
mov r6, #3
mov r5, r5, lsr #0x1
umull r4, r5, r6, r5
mov r10, r0
subs r5, r1, r4
movne r5, #4
ldr r2, _02151990 ; =0xaaaaaaab
ldr r0, [sp]
moveq r5, #0
cmp r0, #0
umull r0, r4, r1, r2
mov r4, r4, lsr #0x1
addeq sp, sp, #8
add r0, r5, r4, lsl #2
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
cmp r3, r0
addlo sp, sp, #8
mvnlo r0, #0
ldmloia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
add r7, r10, r1
ldr r8, [sp]
cmp r10, r7
beq _02151980
sub r11, r2, #0x80000000
ldr r5, _02151994 ; =data_ov61_0217afbc
mov r4, r11
_0215188c:
sub r9, r7, r10
mov r0, r9, lsl #0x3
smull r1, r2, r4, r0
add r2, r2, r0, lsr #31
mov r1, #6
smull r2, r3, r1, r2
subs r2, r0, r2
smull r1, r2, r11, r0
movne r3, #1
moveq r3, #0
add r2, r2, r0, lsr #31
cmp r9, #3
add r6, r2, r3
movge r9, #3
add r0, sp, #4
mov r1, #0
mov r2, #3
bl func_02007a44
mov r0, r10
add r1, sp, #4
mov r2, r9
bl func_02007ad8
ldrb r0, [sp, #4]
ldr r1, [r5]
cmp r6, #2
mov r0, r0, asr #0x2
ldrsb r0, [r1, r0]
strb r0, [r8]
movlt r0, #0x2a
blt _02151920
ldrb r2, [sp, #4]
ldrb r1, [sp, #5]
ldr r0, [r5]
mov r2, r2, lsl #0x4
and r2, r2, #0x3f
orr r1, r2, r1, asr #4
ldrsb r0, [r0, r1]
_02151920:
strb r0, [r8, #1]
cmp r6, #3
movlt r0, #0x2a
blt _0215194c
ldrb r2, [sp, #5]
ldrb r1, [sp, #6]
ldr r0, [r5]
mov r2, r2, lsl #0x2
and r2, r2, #0x3f
orr r1, r2, r1, asr #6
ldrsb r0, [r0, r1]
_0215194c:
strb r0, [r8, #2]
cmp r6, #4
movlt r0, #0x2a
blt _0215196c
ldrb r0, [sp, #6]
ldr r1, [r5]
and r0, r0, #0x3f
ldrsb r0, [r1, r0]
_0215196c:
add r10, r10, r9
strb r0, [r8, #3]
cmp r10, r7
add r8, r8, #4
bne _0215188c
_02151980:
ldr r0, [sp]
sub r0, r8, r0
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02151810
_02151990: .word 0xaaaaaaab
_02151994: .word data_ov61_0217afbc
.global func_ov61_02151998
arm_func_start func_ov61_02151998
func_ov61_02151998: ; 0x02151998
stmdb sp!, {r3, r4, r5, r6, r7, lr}
tst r1, #3
mvnne r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
mov r5, #0
mov ip, r5
cmp r1, #0
bls _021519d0
_021519b8:
ldrsb r4, [r0, ip]
add ip, ip, #1
cmp r4, #0x2a
addne r5, r5, #6
cmp ip, r1
blo _021519b8
_021519d0:
mov ip, r5, asr #0x2
add ip, r5, ip, lsr #29
mov ip, ip, asr #0x3
cmp r2, #0
moveq r0, ip
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
cmp r3, ip
mvnlo r0, #0
ldmloia sp!, {r3, r4, r5, r6, r7, pc}
cmp r1, #0
moveq r0, #0
streqb r0, [r2]
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
mov r1, r2
_02151a08:
mov r7, #0
add r6, sp, #0
mov r3, r7
mov r4, #0x3f
mov lr, #0x3e
_02151a1c:
ldrsb r5, [r0, r7]
cmp r5, #0x41
blt _02151a38
cmp r5, #0x5a
suble r5, r5, #0x41
strleb r5, [r6]
ble _02151a80
_02151a38:
cmp r5, #0x61
blt _02151a50
cmp r5, #0x7a
suble r5, r5, #0x47
strleb r5, [r6]
ble _02151a80
_02151a50:
cmp r5, #0x30
blt _02151a68
cmp r5, #0x39
addle r5, r5, #4
strleb r5, [r6]
ble _02151a80
_02151a68:
cmp r5, #0x2e
streqb lr, [r6]
beq _02151a80
cmp r5, #0x2d
streqb r4, [r6]
strneb r3, [r6]
_02151a80:
add r7, r7, #1
cmp r7, #4
add r6, r6, #1
blt _02151a1c
ldrsb r4, [sp, #1]
ldrsb lr, [sp]
add r3, r1, #1
mov r4, r4, asr #0x4
orr r4, r4, lr, lsl #2
sub r3, r3, r2
strb r4, [r1]
cmp r3, ip
add r0, r0, #4
bge _02151afc
ldrsb lr, [sp, #2]
ldrsb r4, [sp, #1]
add r3, r1, #2
mov lr, lr, asr #0x2
orr r4, lr, r4, lsl #4
sub r3, r3, r2
strb r4, [r1, #1]
cmp r3, ip
bge _02151afc
ldrsb lr, [sp, #2]
ldrsb r3, [sp, #3]
orr r3, r3, lr, lsl #6
strb r3, [r1, #2]
add r1, r1, #3
sub r3, r1, r2
cmp r3, ip
blt _02151a08
_02151afc:
mov r0, r3
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_02151998
.global func_ov61_02151b04
arm_func_start func_ov61_02151b04
func_ov61_02151b04: ; 0x02151b04
stmdb sp!, {r3, r4, r5, r6, r7, lr}
ldr r1, _02151bf8 ; =data_ov61_0217f414
ldr r2, _02151bf8 ; =data_ov61_0217f414
ldr r1, [r1, #0x50]
str r0, [r2, #0xc]
cmp r1, #0
mov r1, #0
str r1, [r2, #0x50]
str r1, [r2, #0x1c]
str r1, [r2, #0x2c]
str r1, [r2, #0x60]
movne r3, #1
str r1, [r2, #0x64]
moveq r3, #0
str r1, [r2, #0x20]
cmp r3, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, _02151bfc ; =data_ov61_0217f494
mov r2, #0x60
bl func_02007a44
ldr r0, _02151c00 ; =data_027e02a0
ldr r6, [r0, #8]
cmp r6, #0
beq _02151bb4
mov r5, #0
mov r4, r5
_02151b6c:
ldr r1, [r6, #0xa4]
cmp r1, #0
ldrne r0, [r1]
cmpne r0, #0
beq _02151ba8
ldrb r0, [r1, #8]
cmp r0, #0xa
cmpne r0, #0xb
strneb r5, [r1, #8]
ldr r0, [r1, #4]
cmp r0, #0
beq _02151ba8
str r4, [r1, #4]
ldr r0, [r1]
bl func_0200d938
_02151ba8:
ldr r6, [r6, #0x68]
cmp r6, #0
bne _02151b6c
_02151bb4:
mov r6, #0
ldr r7, _02151c04 ; =data_ov61_0217f73c
ldr r4, _02151bf8 ; =data_ov61_0217f414
mov r5, r6
_02151bc4:
ldrh r0, [r7, #4]
cmp r0, #0
beq _02151be0
ldr r0, [r7, #0x34]
ldr r1, [r4, #0x40]
blx r1
strh r5, [r7, #4]
_02151be0:
add r6, r6, #1
cmp r6, #8
add r7, r7, #0x38
blt _02151bc4
bl func_ov61_0215cb7c
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02151b04
_02151bf8: .word data_ov61_0217f414
_02151bfc: .word data_ov61_0217f494
_02151c00: .word data_027e02a0
_02151c04: .word data_ov61_0217f73c
.global func_ov61_02151c08
arm_func_start func_ov61_02151c08
func_ov61_02151c08: ; 0x02151c08
stmdb sp!, {r3, lr}
ldr r0, _02151c2c ; =data_ov61_0217f414
ldr r0, [r0, #0x24]
cmp r0, #0
bne _02151c24
bl func_0200d9a4
ldmia sp!, {r3, pc}
_02151c24:
bl func_0200db28
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02151c08
_02151c2c: .word data_ov61_0217f414
.global func_ov61_02151c30
arm_func_start func_ov61_02151c30
func_ov61_02151c30: ; 0x02151c30
bx lr
arm_func_end func_ov61_02151c30
.global func_ov61_02151c34
arm_func_start func_ov61_02151c34
func_ov61_02151c34: ; 0x02151c34
mov r0, #1
bx lr
arm_func_end func_ov61_02151c34
.global func_ov61_02151c3c
arm_func_start func_ov61_02151c3c
func_ov61_02151c3c: ; 0x02151c3c
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #8
mov r4, r0
ldr r0, _02151e34 ; =data_02000bd8
bl func_02000b60
ldr r3, [r4, #0x18]
ldr r5, [r4, #0x14]
cmp r3, #0
cmpeq r5, #0
mov r1, #0
beq _02151c94
ldr r0, _02151e38 ; =data_ov61_0217f414
ldr r2, _02151e3c ; =0x6c078965
str r5, [r0, #0x68]
str r3, [r0, #0x6c]
ldr r3, _02151e40 ; =0x5d588b65
str r2, [r0, #0x70]
ldr r2, _02151e44 ; =0x00269ec3
str r3, [r0, #0x74]
str r2, [r0, #0x78]
str r1, [r0, #0x7c]
b _02151cc4
_02151c94:
bl func_0200e8f8
ldr r2, _02151e38 ; =data_ov61_0217f414
ldr r3, _02151e3c ; =0x6c078965
str r0, [r2, #0x68]
str r1, [r2, #0x6c]
ldr r1, _02151e40 ; =0x5d588b65
str r3, [r2, #0x70]
ldr r0, _02151e44 ; =0x00269ec3
str r1, [r2, #0x74]
str r0, [r2, #0x78]
mov r0, #0
str r0, [r2, #0x7c]
_02151cc4:
ldr r1, [r4, #4]
cmp r1, #0
ldrne r0, [r4, #8]
cmpne r0, #0
beq _02151ce8
ldr r0, _02151e38 ; =data_ov61_0217f414
str r1, [r0, #0x14]
ldr r1, [r4, #8]
b _02151cf4
_02151ce8:
ldr r1, _02151e48 ; =func_ov61_02151c30
ldr r0, _02151e38 ; =data_ov61_0217f414
str r1, [r0, #0x14]
_02151cf4:
str r1, [r0, #0x40]
ldr r1, [r4]
ldr r0, _02151e38 ; =data_ov61_0217f414
ldr r2, _02151e38 ; =data_ov61_0217f414
str r1, [r0, #0x10]
ldr r1, [r4, #0x24]
cmp r1, #0
ldreq r1, _02151e4c ; =0x000005b4
strh r1, [r0, #2]
ldr r1, [r4, #0x28]
ldr r0, _02151e38 ; =data_ov61_0217f414
str r1, [r0, #0x34]
ldr r1, [r4, #0x2c]
str r1, [r0, #0x24]
ldr r1, [r4, #0xc]
cmp r1, #0
ldreq r1, _02151e48 ; =func_ov61_02151c30
str r1, [r0, #0x18]
ldr r1, [r4, #0x10]
cmp r1, #0
ldrne r0, _02151e38 ; =data_ov61_0217f414
ldreq r1, _02151e50 ; =func_ov61_02151c34
ldreq r0, _02151e38 ; =data_ov61_0217f414
str r1, [r0, #0x48]
ldr r1, [r4, #0x1c]
mov r0, #0
str r1, [r2, #0x58]
ldr r3, [r4, #0x20]
ldr r1, _02151e54 ; =0x00000f88
str r3, [r2, #0x5c]
str r0, [r2, #0x30]
str r0, [r2, #0x28]
ldr ip, [r2, #0x70]
ldr r4, [r2, #0x68]
ldr r3, [r2, #0x6c]
umull r5, lr, ip, r4
mla lr, ip, r3, lr
ldr r3, [r2, #0x74]
ldr ip, [r2, #0x78]
mla lr, r3, r4, lr
ldr r3, [r2, #0x7c]
adds ip, ip, r5
adc r5, r3, lr
umull r3, r4, r5, r1
mla r4, r5, r0, r4
mla r4, r0, r1, r4
str ip, [r2, #0x68]
ldr r0, _02151e58 ; =data_ov61_0217f8fc
str r5, [r2, #0x6c]
add r1, r4, #0x400
strh r1, [r2, #8]
bl func_0200f014
ldr r0, _02151e38 ; =data_ov61_0217f414
mov r2, #0
strb r2, [r0, #1]
mov r1, #0x800
str r1, [sp]
ldr r0, _02151e5c ; =data_ov61_0217bc04
ldr r1, _02151e60 ; =func_ov61_021549ac
ldr r4, [r0]
ldr r0, _02151e64 ; =data_ov61_0217f67c
ldr r3, _02151e68 ; =data_ov61_02180c40
str r4, [sp, #4]
blx func_0200d5e4
mov r1, #0x800
ldr r0, _02151e5c ; =data_ov61_0217bc04
str r1, [sp]
ldr r1, [r0]
ldr r0, _02151e6c ; =data_ov61_0217f5bc
str r1, [sp, #4]
ldr r1, _02151e70 ; =func_ov61_021556b4
ldr r3, _02151e74 ; =data_ov61_02180440
mov r2, #0
blx func_0200d5e4
ldr r0, _02151e64 ; =data_ov61_0217f67c
bl func_0200d938
ldr r0, _02151e6c ; =data_ov61_0217f5bc
bl func_0200d938
add sp, sp, #8
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02151c3c
_02151e34: .word data_02000bd8
_02151e38: .word data_ov61_0217f414
_02151e3c: .word 0x6c078965
_02151e40: .word 0x5d588b65
_02151e44: .word 0x00269ec3
_02151e48: .word func_ov61_02151c30
_02151e4c: .word 0x000005b4
_02151e50: .word func_ov61_02151c34
_02151e54: .word 0x00000f88
_02151e58: .word data_ov61_0217f8fc
_02151e5c: .word data_ov61_0217bc04
_02151e60: .word func_ov61_021549ac
_02151e64: .word data_ov61_0217f67c
_02151e68: .word data_ov61_02180c40
_02151e6c: .word data_ov61_0217f5bc
_02151e70: .word func_ov61_021556b4
_02151e74: .word data_ov61_02180440
.global func_ov61_02151e78
arm_func_start func_ov61_02151e78
func_ov61_02151e78: ; 0x02151e78
stmdb sp!, {r3, r4, r5, lr}
bl func_0200ee4c
mov r4, r0
ldr r0, _02151ec0 ; =data_ov61_0217f5bc
bl func_0200d86c
movs r5, r0
ldreq r1, _02151ec4 ; =data_ov61_0217f414
ldreq r0, [r1, #0x44]
cmpeq r0, #0
bne _02151eb0
ldr r0, _02151ec0 ; =data_ov61_0217f5bc
mov r2, #1
str r2, [r1, #0x44]
bl func_0200d938
_02151eb0:
mov r0, r4
bl func_0200ee60
mov r0, r5
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02151e78
_02151ec0: .word data_ov61_0217f5bc
_02151ec4: .word data_ov61_0217f414
.global func_ov61_02151ec8
arm_func_start func_ov61_02151ec8
func_ov61_02151ec8: ; 0x02151ec8
ldr r1, _02151ed4 ; =data_ov61_0217f414
str r0, [r1, #0x3c]
bx lr
.align 2, 0
arm_func_end func_ov61_02151ec8
_02151ed4: .word data_ov61_0217f414
.global func_ov61_02151ed8
arm_func_start func_ov61_02151ed8
func_ov61_02151ed8: ; 0x02151ed8
stmdb sp!, {r3, lr}
bl func_ov61_02151e78
ldr r0, _02151f14 ; =data_ov61_0217f5bc
bl func_0200d83c
ldr r0, _02151f18 ; =data_ov61_0217f67c
blx func_0200d7cc
ldr r1, _02151f1c ; =data_ov61_0217f414
mov r0, #0
str r0, [r1, #0x54]
bl func_ov61_02151b04
ldr r0, _02151f1c ; =data_ov61_0217f414
mov r1, #0
str r1, [r0, #0x58]
str r1, [r0, #0x5c]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02151ed8
_02151f14: .word data_ov61_0217f5bc
_02151f18: .word data_ov61_0217f67c
_02151f1c: .word data_ov61_0217f414
.global func_ov61_02151f20
arm_func_start func_ov61_02151f20
func_ov61_02151f20: ; 0x02151f20
stmdb sp!, {r4, lr}
mov r4, r0
ldr r2, _02151f4c ; =data_ov61_0217bc04
ldr r0, _02151f50 ; =data_ov61_0217f67c
mov r1, r4
str r4, [r2]
bl func_0200da78
ldr r0, _02151f54 ; =data_ov61_0217f5bc
mov r1, r4
bl func_0200da78
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02151f20
_02151f4c: .word data_ov61_0217bc04
_02151f50: .word data_ov61_0217f67c
_02151f54: .word data_ov61_0217f5bc
.global func_ov61_02151f58
arm_func_start func_ov61_02151f58
func_ov61_02151f58: ; 0x02151f58
tst r0, #1
beq _02151f90
cmp r1, #1
bls _02151fe0
_02151f68:
ldrb ip, [r0]
ldrb r3, [r0, #1]
sub r1, r1, #2
cmp r1, #1
orr r3, r3, ip, lsl #8
mov r3, r3, lsl #0x10
add r2, r2, r3, lsr #16
add r0, r0, #2
bhi _02151f68
b _02151fe0
_02151f90:
mov r2, r2, lsl #0x10
mov r3, r2, lsr #0x10
mov r2, r3, lsl #0x8
orr r2, r2, r3, asr #8
mov r2, r2, lsl #0x10
cmp r1, #1
mov r2, r2, lsr #0x10
bls _02151fc4
_02151fb0:
ldrh r3, [r0], #2
sub r1, r1, #2
cmp r1, #1
add r2, r2, r3
bhi _02151fb0
_02151fc4:
ldr r3, _02152008 ; =0x00ff00ff
mov ip, r3, lsl #0x8
and r3, r3, r2, lsr #8
and r2, ip, r2, lsl #8
orr r3, r3, r2
mov r2, r3, lsl #0x10
orr r2, r2, r3, lsr #16
_02151fe0:
cmp r1, #0
ldrneb r0, [r0]
addne r2, r2, r0, lsl #8
mov r0, r2, lsl #0x10
mov r1, r2, lsr #0x10
add r0, r1, r0, lsr #16
add r0, r0, r0, lsr #16
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
bx lr
.align 2, 0
arm_func_end func_ov61_02151f58
_02152008: .word 0x00ff00ff
.global func_ov61_0215200c
arm_func_start func_ov61_0215200c
func_ov61_0215200c: ; 0x0215200c
ldr r1, _02152024 ; =0x0000ffff
eor r0, r0, r1
mov r0, r0, lsl #0x10
movs r0, r0, lsr #0x10
moveq r0, r1
bx lr
.align 2, 0
arm_func_end func_ov61_0215200c
_02152024: .word 0x0000ffff
.global func_ov61_02152028
arm_func_start func_ov61_02152028
func_ov61_02152028: ; 0x02152028
stmdb sp!, {r3, lr}
mov r2, #0
bl func_ov61_02151f58
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
bl func_ov61_0215200c
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02152028
.global func_ov61_02152044
arm_func_start func_ov61_02152044
func_ov61_02152044: ; 0x02152044
stmdb sp!, {r3, r4, r5, lr}
mov r4, r2
mov r2, r3
mov r5, r1
bl func_ov61_02151f58
mov r2, r0
add r0, r4, #0xc
mov r1, #8
bl func_ov61_02151f58
add r1, r0, r5
tst r1, #0x10000
addne r0, r1, #1
movne r0, r0, lsl #0x10
movne r1, r0, lsr #0x10
ldr r0, _02152090 ; =0x0000ffff
cmp r1, r0
movne r0, #1
moveq r0, #0
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02152044
_02152090: .word 0x0000ffff
.global func_ov61_02152094
arm_func_start func_ov61_02152094
func_ov61_02152094: ; 0x02152094
mov ip, #1
sub r1, ip, #2
cmp r0, r1
subne r1, ip, #0x81000000
cmpne r0, r1
beq _021520c8
ldr r1, _021520d0 ; =data_ov61_0217f414
ldr r3, [r1, #0x1c]
ldr r1, [r1, #0x50]
and r2, r0, r3
and r0, r1, r3
cmp r2, r0
movne ip, #0
_021520c8:
mov r0, ip
bx lr
.align 2, 0
arm_func_end func_ov61_02152094
_021520d0: .word data_ov61_0217f414
.global func_ov61_021520d4
arm_func_start func_ov61_021520d4
func_ov61_021520d4: ; 0x021520d4
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_02152094
cmp r0, #0
ldreq r0, _021520f4 ; =data_ov61_0217f414
ldreq r4, [r0, #0x2c]
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021520d4
_021520f4: .word data_ov61_0217f414
.global func_ov61_021520f8
arm_func_start func_ov61_021520f8
func_ov61_021520f8: ; 0x021520f8
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, #0
bl func_ov61_02152094
cmp r0, #0
beq _02152128
ldr r0, _02152130 ; =data_ov61_0217f414
ldr r0, [r0, #0x1c]
mvn r1, r0
and r0, r1, r5
cmp r1, r0
moveq r4, #1
_02152128:
mov r0, r4
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_021520f8
_02152130: .word data_ov61_0217f414
.global func_ov61_02152134
arm_func_start func_ov61_02152134
func_ov61_02152134: ; 0x02152134
and r0, r0, #0xf0000000
cmp r0, #0xe0000000
moveq r0, #1
movne r0, #0
bx lr
arm_func_end func_ov61_02152134
.global func_ov61_02152148
arm_func_start func_ov61_02152148
func_ov61_02152148: ; 0x02152148
stmdb sp!, {r4, r5, r6, lr}
ldr r1, _021521c0 ; =data_ov61_0217f414
mov r4, #1
ldr r1, [r1, #0x50]
mov r6, r0
cmp r1, #0
mov r0, r4
cmpne r6, r1
movne r0, #0
mov r5, r4
mov r2, r4
cmp r0, #0
bne _02152188
ldr r0, _021521c4 ; =0x7f000001
cmp r6, r0
movne r2, #0
_02152188:
cmp r2, #0
bne _021521a0
mov r0, r6
bl func_ov61_021520f8
cmp r0, #0
moveq r5, #0
_021521a0:
cmp r5, #0
bne _021521b8
mov r0, r6
bl func_ov61_02152134
cmp r0, #0
moveq r4, #0
_021521b8:
mov r0, r4
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02152148
_021521c0: .word data_ov61_0217f414
_021521c4: .word 0x7f000001
.global func_ov61_021521c8
arm_func_start func_ov61_021521c8
func_ov61_021521c8: ; 0x021521c8
mov ip, #0
_021521cc:
ldrh r3, [r0], #2
ldrh r2, [r1], #2
cmp r3, r2
movne r0, #1
bxne lr
add ip, ip, #1
cmp ip, #3
blt _021521cc
mov r0, #0
bx lr
arm_func_end func_ov61_021521c8
.global func_ov61_021521f4
arm_func_start func_ov61_021521f4
func_ov61_021521f4: ; 0x021521f4
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
add r1, r6, r5
mov r4, r3
cmp r1, r2
beq _0215221c
mov r0, r2
mov r2, r4
bl func_02007ad8
_0215221c:
ldr r0, _02152258 ; =data_ov61_0217bc10
add r1, r6, #6
mov r2, #6
bl func_02007ad8
add r2, r5, r4
mov r0, r6
add r1, r6, #6
sub r2, r2, #6
bl func_ov61_02161124
cmp r0, #0
movlt r1, #1
ldr r0, _0215225c ; =data_ov61_0217f414
movge r1, #0
strb r1, [r0]
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_021521f4
_02152258: .word data_ov61_0217bc10
_0215225c: .word data_ov61_0217f414
.global func_ov61_02152260
arm_func_start func_ov61_02152260
func_ov61_02152260: ; 0x02152260
stmdb sp!, {r4, r5, r6, r7, r8, lr}
ldr r4, _02152448 ; =data_ov61_0217f414
mov r7, r0
ldr ip, [r4, #0x58]
mov r6, r2
cmp ip, #0
ldrne r0, [r4, #0x5c]
mov r5, r3
cmpne r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
ldr r0, [sp, #0x1c]
add r0, r5, r0
cmp r0, #8
ldmloia sp!, {r4, r5, r6, r7, r8, pc}
ldr r2, _0215244c ; =0x000005e4
cmp r0, r2
ldmhiia sp!, {r4, r5, r6, r7, r8, pc}
ldr r2, _02152450 ; =data_ov61_0217bc10
ldrb r4, [r6]
ldrb r3, [r2]
cmp r4, r3
ldreqb r4, [r6, #1]
ldreqb r3, [r2, #1]
cmpeq r4, r3
ldreqb r3, [r6, #2]
ldreqb r2, [r2, #2]
cmpeq r3, r2
ldreqb r2, [r6, #6]
cmpeq r2, #8
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
ldrb r2, [r6, #7]
cmp r2, #0
cmpne r2, #6
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
ldr r2, _02152448 ; =data_ov61_0217f414
add r0, r0, #9
bic r0, r0, #1
ldr r8, [r2, #0x28]
mov r0, r0, lsl #0x10
ldr lr, [r2, #0x28]
ldr r4, [r2, #0x30]
mov r3, r0, lsr #0x10
cmp lr, r4
add r4, r8, r0, lsr #16
bhs _02152320
ldr r0, [r2, #0x30]
cmp r0, r4
ldmlsia sp!, {r4, r5, r6, r7, r8, pc}
_02152320:
ldr r0, _02152448 ; =data_ov61_0217f414
ldr r2, [r0, #0x5c]
cmp r4, r2
bne _02152344
ldr r0, [r0, #0x30]
mov r4, #0
cmp r0, #0
bne _02152360
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_02152344:
ldr r2, [r0, #0x5c]
cmp r4, r2
bls _02152360
ldr r0, [r0, #0x30]
mov r4, r3
cmp r0, r3
ldmlsia sp!, {r4, r5, r6, r7, r8, pc}
_02152360:
ldr r0, _02152448 ; =data_ov61_0217f414
ldr lr, [r0, #0x28]
ldr r2, [r0, #0x5c]
add lr, lr, r3
cmp lr, r2
bls _021523a0
ldr lr, [r0, #0x5c]
ldr r2, [r0, #0x28]
sub r2, lr, r2
cmp r2, #2
ldrhs r0, [r0, #0x28]
movhs r2, #0
strhsh r2, [ip, r0]
ldr r0, _02152448 ; =data_ov61_0217f414
mov r2, #0
str r2, [r0, #0x28]
_021523a0:
ldr ip, _02152448 ; =data_ov61_0217f414
mov r0, r1
ldr lr, [ip, #0x58]
ldr r1, [ip, #0x28]
mov r2, #6
strh r3, [lr, r1]
ldr r3, [ip, #0x58]
ldr r1, [ip, #0x28]
add r1, r3, r1
add r1, r1, #2
bl func_02007ad8
ldr r1, _02152448 ; =data_ov61_0217f414
mov r0, r7
ldr r3, [r1, #0x58]
ldr r1, [r1, #0x28]
mov r2, #6
add r1, r3, r1
add r1, r1, #8
bl func_02007ad8
ldr r1, _02152448 ; =data_ov61_0217f414
add r0, r6, #6
ldr r3, [r1, #0x58]
ldr r1, [r1, #0x28]
sub r2, r5, #6
add r1, r3, r1
add r1, r1, #0xe
bl func_02007ad8
ldr r0, [sp, #0x18]
cmp r0, #0
ldrne r2, [sp, #0x1c]
cmpne r2, #0
beq _0215243c
ldr r1, _02152448 ; =data_ov61_0217f414
ldr r3, [r1, #0x58]
ldr r1, [r1, #0x28]
add r1, r3, r1
add r1, r1, #8
add r1, r1, r5
bl func_02007ad8
_0215243c:
ldr r0, _02152448 ; =data_ov61_0217f414
str r4, [r0, #0x28]
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02152260
_02152448: .word data_ov61_0217f414
_0215244c: .word 0x000005e4
_02152450: .word data_ov61_0217bc10
.global func_ov61_02152454
arm_func_start func_ov61_02152454
func_ov61_02152454: ; 0x02152454
stmdb sp!, {r3, lr}
sub sp, sp, #8
mov ip, #0
str ip, [sp]
str ip, [sp, #4]
bl func_ov61_02152260
ldr r0, _021524a8 ; =data_ov61_0217f414
ldr r1, [r0, #0x54]
cmp r1, #0
addeq sp, sp, #8
ldmeqia sp!, {r3, pc}
ldr r0, [r0, #0x54]
bl func_0200d86c
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r3, pc}
ldr r0, _021524a8 ; =data_ov61_0217f414
ldr r0, [r0, #0x54]
bl func_0200d938
add sp, sp, #8
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02152454
_021524a8: .word data_ov61_0217f414
.global func_ov61_021524ac
arm_func_start func_ov61_021524ac
func_ov61_021524ac: ; 0x021524ac
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r7, r0
bl func_0200ee4c
ldr r9, _02152564 ; =data_ov61_0217f414
mov r6, r0
ldr r1, [r9, #0x30]
ldr r0, [r9, #0x28]
cmp r1, r0
bne _02152500
mov r5, #0
ldr r8, _02152568 ; =data_027e02a0
mov r4, r5
_021524dc:
ldr r1, [r8, #4]
mov r0, r5
str r1, [r9, #0x54]
bl func_0200d880
str r4, [r9, #0x54]
ldr r1, [r9, #0x30]
ldr r0, [r9, #0x28]
cmp r1, r0
beq _021524dc
_02152500:
mov r0, r6
bl func_0200ee60
ldr r0, _02152564 ; =data_ov61_0217f414
mov r3, #0
ldr r5, [r0, #0x58]
mov r1, r3
_02152518:
ldr r4, [r0, #0x5c]
ldr r2, [r0, #0x30]
sub r2, r4, r2
cmp r2, #2
strlo r3, [r0, #0x30]
ldr r2, [r0, #0x30]
ldrh r2, [r5, r2]
cmp r2, #0
streq r1, [r0, #0x30]
cmp r2, #0
beq _02152518
sub r1, r2, #2
ldr r0, _02152564 ; =data_ov61_0217f414
str r1, [r7]
ldr r1, [r0, #0x58]
ldr r0, [r0, #0x30]
add r0, r1, r0
add r0, r0, #2
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_021524ac
_02152564: .word data_ov61_0217f414
_02152568: .word data_027e02a0
.global func_ov61_0215256c
arm_func_start func_ov61_0215256c
func_ov61_0215256c: ; 0x0215256c
stmdb sp!, {r3, lr}
bl func_0200ee4c
ldr r1, _021525ac ; =data_ov61_0217f414
ldr ip, [r1, #0x30]
ldr r3, [r1, #0x58]
ldr r2, [r1, #0x30]
ldrh r2, [r3, r2]
add r2, ip, r2
str r2, [r1, #0x30]
ldr r3, [r1, #0x30]
ldr r2, [r1, #0x5c]
cmp r3, r2
movhs r2, #0
strhs r2, [r1, #0x30]
bl func_0200ee60
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0215256c
_021525ac: .word data_ov61_0217f414
.global func_ov61_021525b0
arm_func_start func_ov61_021525b0
func_ov61_021525b0: ; 0x021525b0
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r5, r0
bl func_0200ee4c
ldr r1, _02152668 ; =0x7f000001
mov r4, r0
cmp r5, r1
ldrne r0, _0215266c ; =data_ov61_0217f414
mov r7, #0
ldrne r0, [r0, #0x50]
cmpne r5, r0
ldreq r7, _02152670 ; =data_ov61_0217f8fc
beq _02152658
mov r0, r5
bl func_ov61_021520f8
cmp r0, #0
bne _02152600
mov r0, r5
bl func_ov61_02152134
cmp r0, #0
beq _02152608
_02152600:
ldr r7, _02152674 ; =data_ov61_0217bc08
b _02152658
_02152608:
ldr r1, _02152678 ; =data_ov61_0217f494
mov r6, r7
_02152610:
ldr r0, [r1]
cmp r5, r0
bne _02152648
bl func_0200e8f8
mov r2, #0xc
mul r3, r6, r2
ldr r2, _02152678 ; =data_ov61_0217f494
mov r5, r0, lsr #0x10
add r0, r2, r3
ldr r2, _0215267c ; =data_ov61_0217f49e
orr r5, r5, r1, lsl #16
strh r5, [r2, r3]
add r7, r0, #4
b _02152658
_02152648:
add r6, r6, #1
cmp r6, #8
add r1, r1, #0xc
blo _02152610
_02152658:
mov r0, r4
bl func_0200ee60
mov r0, r7
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_021525b0
_02152668: .word 0x7f000001
_0215266c: .word data_ov61_0217f414
_02152670: .word data_ov61_0217f8fc
_02152674: .word data_ov61_0217bc08
_02152678: .word data_ov61_0217f494
_0215267c: .word data_ov61_0217f49e
.global func_ov61_02152680
arm_func_start func_ov61_02152680
func_ov61_02152680: ; 0x02152680
stmdb sp!, {r3, r4, lr}
sub sp, sp, #0x2c
mov r4, r0
add r0, sp, #0
mov r1, #0
mov r2, #0x2a
bl func_02007a44
add r0, sp, #0
mov r1, #0xff
mov r2, #6
bl func_02007a44
ldr r0, _0215276c ; =data_ov61_0217f8fc
add r1, sp, #6
mov r2, #6
bl func_02007ad8
mov r0, #1
ldr r1, _02152770 ; =0x00000608
strb r0, [sp, #0xf]
strh r1, [sp, #0xc]
strb r0, [sp, #0x15]
mov r0, #8
ldr r1, _02152774 ; =0x00000406
strb r0, [sp, #0x10]
strh r1, [sp, #0x12]
ldr r0, _0215276c ; =data_ov61_0217f8fc
add r1, sp, #0x16
mov r2, #6
bl func_02007ad8
ldr r0, _02152778 ; =data_ov61_0217f414
mov r1, r4, lsr #0x10
ldr r3, [r0, #0x50]
mov r0, r1, lsl #0x10
mov r2, r0, lsr #0x10
mov r0, r4, lsl #0x10
mov r1, r0, lsr #0x10
mov r0, r3, lsr #0x10
mov r0, r0, lsl #0x10
mov r4, r0, lsr #0x10
mov r0, r3, lsl #0x10
mov r3, r0, lsr #0x10
mov r0, r4, lsl #0x8
orr r0, r0, r4, asr #8
strh r0, [sp, #0x1c]
mov r0, r3, lsl #0x8
orr r0, r0, r3, asr #8
strh r0, [sp, #0x1e]
mov r0, r2, lsl #0x8
orr r0, r0, r2, asr #8
strh r0, [sp, #0x26]
mov r0, r1, lsl #0x8
orr r0, r0, r1, asr #8
mov r2, #0
strh r0, [sp, #0x28]
add r0, sp, #0
mov r1, #0x2a
mov r3, r2
bl func_ov61_021521f4
add sp, sp, #0x2c
ldmia sp!, {r3, r4, pc}
.align 2, 0
arm_func_end func_ov61_02152680
_0215276c: .word data_ov61_0217f8fc
_02152770: .word 0x00000608
_02152774: .word 0x00000406
_02152778: .word data_ov61_0217f414
.global func_ov61_0215277c
arm_func_start func_ov61_0215277c
func_ov61_0215277c: ; 0x0215277c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r7, #0
ldr r4, _021527e8 ; =data_ov61_0217f414
mov r9, r0
mov r5, #0x64
mov r6, r7
_02152794:
mov r0, r9
bl func_ov61_02152680
mov r8, r6
_021527a0:
ldr r0, [r4, #0x50]
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
mov r0, r5
bl func_0200db28
mov r0, r9
bl func_ov61_021525b0
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
add r8, r8, #1
cmp r8, #0x14
blo _021527a0
add r7, r7, #1
cmp r7, #8
blo _02152794
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_0215277c
_021527e8: .word data_ov61_0217f414
.global func_ov61_021527ec
arm_func_start func_ov61_021527ec
func_ov61_021527ec: ; 0x021527ec
stmdb sp!, {r3, r4, r5, r6, r7, lr}
ldr r3, _02152918 ; =0x7f000001
mov r6, r1
mov r7, r0
cmp r6, r3
ldrne r0, _0215291c ; =data_ov61_0217f414
mov r5, r2
ldrne r0, [r0, #0x50]
cmpne r6, r0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, r6
bl func_ov61_02152094
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, r6
bl func_ov61_02152134
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
bl func_0200e8f8
mov r0, r0, lsr #0x10
orr r0, r0, r1, lsl #16
mov r0, r0, lsl #0x10
ldr r2, _02152920 ; =data_ov61_0217f494
mov r4, r0, lsr #0x10
mov r1, #0
_02152850:
ldr r0, [r2]
cmp r6, r0
bne _02152888
mov r0, #0xc
mul r5, r1, r0
ldr r0, _02152920 ; =data_ov61_0217f494
ldr r3, _02152924 ; =data_ov61_0217f49e
add r1, r0, r5
mov r0, r7
add r1, r1, #4
mov r2, #6
strh r4, [r3, r5]
bl func_02007ad8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02152888:
add r1, r1, #1
cmp r1, #8
add r2, r2, #0xc
blo _02152850
cmp r5, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
mov r2, #0
ldr r3, _02152920 ; =data_ov61_0217f494
mov r1, r2
mov r5, r2
_021528b0:
ldr r0, [r3]
cmp r0, #0
moveq r1, r5
beq _021528e8
ldrh r0, [r3, #0xa]
add r3, r3, #0xc
sub r0, r4, r0
mov r0, r0, lsl #0x10
cmp r2, r0, asr #16
movlt r1, r5
add r5, r5, #1
movlt r2, r0, lsr #0x10
cmp r5, #8
blo _021528b0
_021528e8:
mov r0, #0xc
mul r5, r1, r0
ldr r3, _02152920 ; =data_ov61_0217f494
mov r0, r7
add r1, r3, r5
add r1, r1, #4
mov r2, #6
str r6, [r3, r5]
bl func_02007ad8
ldr r0, _02152924 ; =data_ov61_0217f49e
strh r4, [r0, r5]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_021527ec
_02152918: .word 0x7f000001
_0215291c: .word data_ov61_0217f414
_02152920: .word data_ov61_0217f494
_02152924: .word data_ov61_0217f49e
.global func_ov61_02152928
arm_func_start func_ov61_02152928
func_ov61_02152928: ; 0x02152928
stmdb sp!, {r4, r5, r6, r7, r8, lr}
ldrh r5, [sp, #0x1c]
ldr r4, [sp, #0x18]
mov r8, r0
mov r0, r5, lsl #0x8
orr ip, r0, r5, asr #8
mov r0, r4
mov r7, r1
mov r6, r2
mov r5, r3
strh ip, [r8, #-2]
bl func_ov61_02152134
cmp r0, #0
bne _0215299c
mov r0, r4
bl func_ov61_021520d4
movs r4, r0
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
bl func_ov61_021525b0
cmp r0, #0
bne _02152984
mov r0, r4
bl func_ov61_0215277c
_02152984:
cmp r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
sub r1, r8, #0xe
mov r2, #6
bl func_02007ad8
b _021529cc
_0215299c:
mov r0, #1
strb r0, [r8, #-0xe]
mov r1, #0
mov r0, r4, lsr #0x10
strb r1, [r8, #-0xd]
mov r1, #0x5e
strb r1, [r8, #-0xc]
and r0, r0, #0x7f
strb r0, [r8, #-0xb]
mov r0, r4, lsr #0x8
strb r0, [r8, #-0xa]
strb r4, [r8, #-9]
_021529cc:
ldr r0, _021529f4 ; =data_ov61_0217f8fc
sub r1, r8, #8
mov r2, #6
bl func_02007ad8
mov r2, r6
mov r3, r5
sub r0, r8, #0xe
add r1, r7, #0xe
bl func_ov61_021521f4
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02152928
_021529f4: .word data_ov61_0217f8fc
.global func_ov61_021529f8
arm_func_start func_ov61_021529f8
func_ov61_021529f8: ; 0x021529f8
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #8
mov r7, r1
mov r5, r3
add r1, r7, #0x14
add r1, r1, r5
mov r1, r1, lsl #0x10
ldr r3, [sp, #0x24]
mov r4, r1, lsr #0x10
mov r1, r3, lsl #0x10
mov r3, r4, lsl #0x8
orr r3, r3, r4, asr #8
mov r8, r0
mov r1, r1, lsr #0x10
mov r0, r1, lsl #0x8
strh r3, [r8, #-0x12]
orr r0, r0, r1, asr #8
strh r0, [r8, #-0xe]
mov r3, #0
sub r0, r8, #0x14
mov r1, #0x14
mov r6, r2
strh r3, [r8, #-0xa]
ldr r4, [sp, #0x20]
bl func_ov61_02152028
mov r2, r0, lsl #0x8
ldr r1, _02152b10 ; =0x7f000001
orr r0, r2, r0, asr #8
strh r0, [r8, #-0xa]
cmp r4, r1
ldrne r0, _02152b14 ; =data_ov61_0217f414
ldrne r0, [r0, #0x50]
cmpne r4, r0
beq _02152aa0
mov r2, r6
mov r3, r5
str r4, [sp]
mov ip, #0x800
sub r0, r8, #0x14
add r1, r7, #0x14
str ip, [sp, #4]
bl func_ov61_02152928
_02152aa0:
ldr r0, _02152b10 ; =0x7f000001
cmp r4, r0
ldrne r0, _02152b14 ; =data_ov61_0217f414
ldrne r0, [r0, #0x50]
cmpne r4, r0
beq _02152acc
mov r0, r4
bl func_ov61_02152134
cmp r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
_02152acc:
ldr r0, _02152b18 ; =data_ov61_0217bc10
sub r1, r8, #0x1c
mov r2, #8
bl func_02007ad8
bl func_0200ee4c
mov r4, r0
ldr r0, _02152b1c ; =data_ov61_0217f8fc
str r6, [sp]
mov r1, r0
str r5, [sp, #4]
sub r2, r8, #0x1c
add r3, r7, #0x1c
bl func_ov61_02152260
mov r0, r4
bl func_0200ee60
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_021529f8
_02152b10: .word 0x7f000001
_02152b14: .word data_ov61_0217f414
_02152b18: .word data_ov61_0217bc10
_02152b1c: .word data_ov61_0217f8fc
.global func_ov61_02152b20
arm_func_start func_ov61_02152b20
func_ov61_02152b20: ; 0x02152b20
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #8
mov r10, r0
mov r0, #0x45
strb r0, [r10, #-0x14]
mov r4, #0
ldr r7, _02152d10 ; =data_ov61_0217f414
strb r4, [r10, #-0x13]
ldrh r0, [r7, #6]
ldr r6, [sp, #0x30]
ldrb r5, [sp, #0x34]
add r0, r0, #1
strh r0, [r7, #6]
ldrh r11, [r7, #6]
mov r0, r6, lsr #0x10
mov r8, #0x80
mov r9, r11, lsl #0x8
orr r9, r9, r11, asr #8
strh r9, [r10, #-0x10]
strb r8, [r10, #-0xc]
strb r5, [r10, #-0xb]
ldr r8, [r7, #0x50]
mov r5, r0, lsl #0x10
mov r0, r8, lsr #0x10
mov r0, r0, lsl #0x10
mov r8, r0, lsr #0x10
mov r0, r8, lsl #0x8
orr r0, r0, r8, asr #8
strh r0, [r10, #-8]
ldr r0, [r7, #0x50]
mov r8, r5, lsr #0x10
mov r0, r0, lsl #0x10
mov r7, r0, lsr #0x10
mov r5, r7, lsl #0x8
mov r0, r6, lsl #0x10
orr r9, r5, r7, asr #8
mov r7, r8, lsl #0x8
mov r5, r0, lsr #0x10
mov r0, r5, lsl #0x8
strh r9, [r10, #-6]
orr r7, r7, r8, asr #8
ldr r11, _02152d14 ; =0x000005c8
mov r9, r1
strh r7, [r10, #-4]
orr r0, r0, r5, asr #8
mov r8, r2
mov r7, r3
strh r0, [r10, #-2]
cmp r9, r11
bls _02152c8c
mov r5, r10
bls _02152c30
_02152bf0:
mov r0, r10
mov r1, #0
mov r2, r5
mov r3, r11
str r6, [sp]
orr ip, r4, #0x2000
str ip, [sp, #4]
bl func_ov61_021529f8
add r1, r4, #0xb9
add r0, r5, #0x1c8
sub r9, r9, r11
mov r1, r1, lsl #0x10
cmp r9, r11
add r5, r0, #0x400
mov r4, r1, lsr #0x10
bhi _02152bf0
_02152c30:
cmp r9, #0
beq _02152c8c
cmp r7, #0
mov r1, #0
beq _02152c64
mov r2, r5
mov r0, r10
mov r3, r9
str r6, [sp]
orr r5, r4, #0x2000
str r5, [sp, #4]
bl func_ov61_021529f8
b _02152c7c
_02152c64:
str r6, [sp]
mov r0, r10
mov r2, r5
mov r3, r9
str r4, [sp, #4]
bl func_ov61_021529f8
_02152c7c:
add r0, r4, r9, lsr #3
mov r0, r0, lsl #0x10
mov r4, r0, lsr #0x10
mov r9, #0
_02152c8c:
ldr r11, _02152d14 ; =0x000005c8
add r0, r9, r7
cmp r0, r11
bls _02152ce0
_02152c9c:
sub r5, r11, r9
mov r1, r9
mov r0, r10
mov r2, r8
mov r3, r5
str r6, [sp]
orr r9, r4, #0x2000
str r9, [sp, #4]
bl func_ov61_021529f8
add r0, r4, #0xb9
sub r7, r7, r5
mov r0, r0, lsl #0x10
mov r9, #0
cmp r7, r11
add r8, r8, r5
mov r4, r0, lsr #0x10
bhi _02152c9c
_02152ce0:
adds r0, r9, r7
addeq sp, sp, #8
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
str r6, [sp]
mov r0, r10
mov r1, r9
mov r2, r8
mov r3, r7
str r4, [sp, #4]
bl func_ov61_021529f8
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02152b20
_02152d10: .word data_ov61_0217f414
_02152d14: .word 0x000005c8
.global func_ov61_02152d18
arm_func_start func_ov61_02152d18
func_ov61_02152d18: ; 0x02152d18
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #8
mov r5, r2
ldr r4, [r5, #0x4c]
mov r6, r1
mov r1, #8
ldr r3, _02152dc0 ; =data_ov61_0217f414
ldr r2, _02152dc4 ; =data_027e02a0
strh r1, [r4, #0x22]
ldr r2, [r2, #4]
ldrh lr, [r3, #4]
mov r7, r0
strh r2, [r4, #0x26]
mov r2, #0
strh r2, [r4, #0x24]
strh lr, [r5, #0xa]
add ip, lr, #1
add r0, r4, #0x22
strh ip, [r3, #4]
strh lr, [r4, #0x28]
bl func_ov61_02151f58
mov r2, r0
mov r0, r7
mov r1, r6
bl func_ov61_02151f58
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
bl func_ov61_0215200c
mov r2, r7
mov r3, r6
mov r1, r0, lsl #0x8
orr r0, r1, r0, asr #8
strh r0, [r4, #0x24]
ldr r1, [r5, #0x1c]
add r0, r4, #0x22
str r1, [sp]
mov r1, #1
str r1, [sp, #4]
mov r1, #8
bl func_ov61_02152b20
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02152d18
_02152dc0: .word data_ov61_0217f414
_02152dc4: .word data_027e02a0
.global func_ov61_02152dc8
arm_func_start func_ov61_02152dc8
func_ov61_02152dc8: ; 0x02152dc8
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #8
ldr r7, _02152f00 ; =data_ov61_0217f414
mov r5, r2
ldr r2, [r7, #0x50]
mov r6, r1
mov r1, r2, lsr #0x10
mov r1, r1, lsl #0x10
mov r2, r1, lsr #0x10
ldr r3, [r5, #0x4c]
mov r1, r2, lsl #0x8
add r4, r3, #0x22
orr r1, r1, r2, asr #8
strh r1, [r4, #-0xc]
ldr r1, [r7, #0x50]
add r2, r6, #8
mov r1, r1, lsl #0x10
mov r7, r1, lsr #0x10
mov r1, r7, lsl #0x8
orr r1, r1, r7, asr #8
strh r1, [r4, #-0xa]
ldr r1, [r5, #0x1c]
mov r2, r2, lsl #0x10
mov r1, r1, lsr #0x10
mov r1, r1, lsl #0x10
mov r7, r1, lsr #0x10
mov r1, r7, lsl #0x8
orr r1, r1, r7, asr #8
strh r1, [r4, #-8]
ldr r1, [r5, #0x1c]
mov r2, r2, lsr #0x10
mov r1, r1, lsl #0x10
mov r7, r1, lsr #0x10
mov r1, r7, lsl #0x8
orr r7, r1, r7, asr #8
mov r1, r2, lsl #0x8
strh r7, [r4, #-6]
mov r7, #0x1100
strh r7, [r4, #-4]
orr r1, r1, r2, asr #8
strh r1, [r4, #4]
ldrh r1, [r4, #4]
mov r7, r0
sub r0, r4, #0xc
strh r1, [r4, #-2]
ldrh lr, [r5, #0x18]
mov r2, #0
mov r1, #0x14
mov ip, lr, lsl #0x8
orr ip, ip, lr, asr #8
strh ip, [r4, #2]
ldrh lr, [r5, #0xa]
mov ip, lr, lsl #0x8
orr ip, ip, lr, asr #8
strh ip, [r3, #0x22]
strh r2, [r4, #6]
bl func_ov61_02151f58
mov r2, r0
mov r0, r7
mov r1, r6
bl func_ov61_02151f58
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
bl func_ov61_0215200c
mov r2, r7
mov r3, r6
mov r1, r0, lsl #0x8
orr r0, r1, r0, asr #8
strh r0, [r4, #6]
ldr r1, [r5, #0x1c]
mov r0, r4
str r1, [sp]
mov r1, #0x11
str r1, [sp, #4]
mov r1, #8
bl func_ov61_02152b20
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02152dc8
_02152f00: .word data_ov61_0217f414
.global func_ov61_02152f04
arm_func_start func_ov61_02152f04
func_ov61_02152f04: ; 0x02152f04
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
sub sp, sp, #8
mov r7, r2
ldrb r2, [r7, #8]
mov r9, r0
mov r8, r1
cmp r2, #0
mov r6, r3
addeq sp, sp, #8
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
ldr r0, _02153168 ; =data_027e02a0
ldr r1, _0215316c ; =data_ov61_0217f67c
ldr r0, [r0, #4]
cmp r0, r1
ldreq r4, _02153170 ; =data_ov61_0217f926
ldrne r0, [r7, #0x4c]
addne r4, r0, #0x22
ldr r0, _02153174 ; =data_ov61_0217f414
ands r2, r6, #2
movne r5, #0x18
moveq r5, #0x14
add r1, r5, r8
ldr r10, [r0, #0x50]
mov r3, r1, lsl #0x10
mov r1, r10, lsr #0x10
mov r1, r1, lsl #0x10
mov r10, r1, lsr #0x10
mov r1, r10, lsl #0x8
orr r1, r1, r10, asr #8
strh r1, [r4, #-0xc]
mov r1, r3, lsr #0x10
ldr r10, [r0, #0x50]
mov lr, r1, lsl #0x8
mov r3, r10, lsl #0x10
mov r10, r3, lsr #0x10
mov r3, r10, lsl #0x8
orr r3, r3, r10, asr #8
strh r3, [r4, #-0xa]
ldr r3, [r7, #0x1c]
orr r1, lr, r1, asr #8
mov r3, r3, lsr #0x10
mov r3, r3, lsl #0x10
mov r10, r3, lsr #0x10
mov r3, r10, lsl #0x8
orr r3, r3, r10, asr #8
strh r3, [r4, #-8]
ldr r3, [r7, #0x1c]
mov ip, r5, lsr #0x2
mov r3, r3, lsl #0x10
mov r10, r3, lsr #0x10
mov r3, r10, lsl #0x8
orr r3, r3, r10, asr #8
strh r3, [r4, #-6]
mov r3, #0x600
strh r3, [r4, #-4]
strh r1, [r4, #-2]
ldrh lr, [r7, #0xa]
mov r3, ip, lsl #0x4
cmp r2, #0
mov r1, lr, lsl #0x8
orr r1, r1, lr, asr #8
strh r1, [r4]
ldrh ip, [r7, #0x18]
mov r1, ip, lsl #0x8
orr r1, r1, ip, asr #8
strh r1, [r4, #2]
ldr r1, [r7, #0x28]
mov r1, r1, lsr #0x10
mov r1, r1, lsl #0x10
mov ip, r1, lsr #0x10
mov r1, ip, lsl #0x8
orr r1, r1, ip, asr #8
strh r1, [r4, #4]
ldr r1, [r7, #0x28]
mov r1, r1, lsl #0x10
mov ip, r1, lsr #0x10
mov r1, ip, lsl #0x8
orr r1, r1, ip, asr #8
strh r1, [r4, #6]
ldr r1, [r7, #0x24]
mov r1, r1, lsr #0x10
mov r1, r1, lsl #0x10
mov ip, r1, lsr #0x10
mov r1, ip, lsl #0x8
orr r1, r1, ip, asr #8
strh r1, [r4, #8]
ldr r1, [r7, #0x24]
mov r1, r1, lsl #0x10
mov ip, r1, lsr #0x10
mov r1, ip, lsl #0x8
orr r1, r1, ip, asr #8
strh r1, [r4, #0xa]
strb r3, [r4, #0xc]
strb r6, [r4, #0xd]
ldr r3, [r7, #0x3c]
ldr r1, [r7, #0x44]
sub r1, r3, r1
mov r1, r1, lsl #0x10
mov r3, r1, lsr #0x10
mov r1, r3, lsl #0x8
orr r1, r1, r3, asr #8
strh r1, [r4, #0xe]
mov r1, #0
strh r1, [r4, #0x10]
strh r1, [r4, #0x12]
beq _021530e8
ldrh r1, [r0, #2]
add r1, r1, #0x2040000
mov r1, r1, lsr #0x10
mov r1, r1, lsl #0x10
mov r2, r1, lsr #0x10
mov r1, r2, lsl #0x8
orr r1, r1, r2, asr #8
strh r1, [r4, #0x14]
ldrh r0, [r0, #2]
add r0, r0, #0x2040000
mov r0, r0, lsl #0x10
mov r1, r0, lsr #0x10
mov r0, r1, lsl #0x8
orr r0, r0, r1, asr #8
strh r0, [r4, #0x16]
_021530e8:
sub r0, r4, #0xc
add r1, r5, #0xc
mov r2, #0
bl func_ov61_02151f58
mov r2, r0
mov r0, r9
mov r1, r8
bl func_ov61_02151f58
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
bl func_ov61_0215200c
mov r3, r0, lsl #0x8
orr r0, r3, r0, asr #8
strh r0, [r4, #0x10]
mov r0, r4
ldr r4, [r7, #0x1c]
mov r3, #6
str r4, [sp]
str r3, [sp, #4]
mov r1, r5
mov r2, r9
mov r3, r8
bl func_ov61_02152b20
ldr r0, [r7, #0x28]
tst r6, #3
add r0, r0, r8
str r0, [r7, #0x28]
ldrne r0, [r7, #0x28]
addne r0, r0, #1
strne r0, [r7, #0x28]
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
.align 2, 0
arm_func_end func_ov61_02152f04
_02153168: .word data_027e02a0
_0215316c: .word data_ov61_0217f67c
_02153170: .word data_ov61_0217f926
_02153174: .word data_ov61_0217f414
.global func_ov61_02153178
arm_func_start func_ov61_02153178
func_ov61_02153178: ; 0x02153178
stmdb sp!, {r4, lr}
mov r4, r0
mov r3, #0x200
add r0, r4, #8
add r1, r4, #0x12
mov r2, #0xa
strh r3, [r4, #6]
bl func_02007ad8
ldr r0, _02153218 ; =data_ov61_0217f8fc
add r1, r4, #8
mov r2, #6
bl func_02007ad8
ldr r3, _0215321c ; =data_ov61_0217f414
add r0, r4, #0x12
ldr r2, [r3, #0x50]
sub r1, r4, #0xe
mov r2, r2, lsr #0x10
mov r2, r2, lsl #0x10
mov ip, r2, lsr #0x10
mov r2, ip, lsl #0x8
orr r2, r2, ip, asr #8
strh r2, [r4, #0xe]
ldr r3, [r3, #0x50]
mov r2, #6
mov r3, r3, lsl #0x10
mov ip, r3, lsr #0x10
mov r3, ip, lsl #0x8
orr r3, r3, ip, asr #8
strh r3, [r4, #0x10]
bl func_02007ad8
ldr r0, _02153218 ; =data_ov61_0217f8fc
sub r1, r4, #8
mov r2, #6
bl func_02007ad8
sub r0, r4, #0xe
mov r1, #0x2a
mov r2, #0
mov r3, r2
bl func_ov61_021521f4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02153178
_02153218: .word data_ov61_0217f8fc
_0215321c: .word data_ov61_0217f414
.global func_ov61_02153220
arm_func_start func_ov61_02153220
func_ov61_02153220: ; 0x02153220
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r6, r0
cmp r1, #0x1c
ldmloia sp!, {r3, r4, r5, r6, r7, pc}
ldr r1, _02153358 ; =data_ov61_0217f8fc
add r0, r6, #8
bl func_ov61_021521c8
cmp r0, #0
ldrne r0, _0215335c ; =data_ov61_0217f414
ldrne r0, [r0, #0x50]
cmpne r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldrh r0, [r6]
cmp r0, #0x100
ldreqh r0, [r6, #2]
cmpeq r0, #8
ldreqh r1, [r6, #4]
ldreq r0, _02153360 ; =0x00000406
cmpeq r1, r0
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
ldrh r1, [r6, #6]
mov r0, r1, lsl #0x8
orr r0, r0, r1, asr #8
mov r0, r0, lsl #0x10
mov r4, r0, lsr #0x10
cmp r4, #1
cmpne r4, #2
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
ldrh r5, [r6, #0x10]
ldrh r3, [r6, #0xe]
ldrh lr, [r6, #0x1a]
mov r0, r5, lsl #0x8
mov r1, r3, lsl #0x8
orr r3, r1, r3, asr #8
orr r1, r0, r5, asr #8
mov r0, r3, lsl #0x10
mov r1, r1, lsl #0x10
ldrh ip, [r6, #0x18]
ldr r2, _0215335c ; =data_ov61_0217f414
mov r3, r0, lsr #0x10
mov r1, r1, lsr #0x10
ldr r0, [r2, #0x50]
orr r1, r1, r3, lsl #16
mov r3, ip, lsl #0x8
cmp r1, r0
moveq r5, #1
mov r2, lr, lsl #0x8
orr ip, r3, ip, asr #8
orr r3, r2, lr, asr #8
mov r2, ip, lsl #0x10
mov r3, r3, lsl #0x10
mov ip, r2, lsr #0x10
mov r2, r3, lsr #0x10
orr r2, r2, ip, lsl #16
movne r5, #0
cmp r0, r2
moveq r7, #1
movne r7, #0
cmp r5, #0
bne _0215331c
mov r2, r7
add r0, r6, #8
bl func_ov61_021527ec
_0215331c:
cmp r4, #1
bne _02153338
cmp r7, #0
beq _02153338
mov r0, r6
bl func_ov61_02153178
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02153338:
cmp r4, #2
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
cmp r7, #0
cmpne r5, #0
ldrne r0, _0215335c ; =data_ov61_0217f414
movne r1, #1
strneb r1, [r0, #1]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02153220
_02153358: .word data_ov61_0217f8fc
_0215335c: .word data_ov61_0217f414
_02153360: .word 0x00000406
.global func_ov61_02153364
arm_func_start func_ov61_02153364
func_ov61_02153364: ; 0x02153364
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #8
mov r6, r0
ldrh r4, [r6, #0xe]
ldrh r3, [r6, #0xc]
mov r5, r1
mov r0, r4, lsl #0x8
mov r1, r3, lsl #0x8
orr r3, r1, r3, asr #8
orr r1, r0, r4, asr #8
mov r0, r3, lsl #0x10
mov r1, r1, lsl #0x10
mov r3, r0, lsr #0x10
mov r0, r1, lsr #0x10
orr r0, r0, r3, lsl #16
mov r4, r2
bl func_ov61_021520d4
movs r7, r0
addeq sp, sp, #8
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
bl func_ov61_021525b0
cmp r0, #0
bne _021533d0
mov r0, r7
bl func_ov61_02152680
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021533d0:
mov r2, #0
strb r2, [r5]
mov r0, r5
mov r1, r4
strh r2, [r5, #2]
bl func_ov61_02152028
mov r1, r0, lsl #0x8
orr r0, r1, r0, asr #8
strh r0, [r5, #2]
ldrh ip, [r6, #0xe]
ldrh r3, [r6, #0xc]
mov r2, #0
mov r0, ip, lsl #0x8
mov r1, r3, lsl #0x8
orr r3, r1, r3, asr #8
orr r1, r0, ip, asr #8
mov r0, r3, lsl #0x10
mov r1, r1, lsl #0x10
mov r3, r0, lsr #0x10
mov r0, r1, lsr #0x10
orr r6, r0, r3, lsl #16
mov r0, r5
mov r1, r4
mov r3, r2
str r6, [sp]
mov r4, #1
str r4, [sp, #4]
bl func_ov61_02152b20
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_02153364
.global func_ov61_02153448
arm_func_start func_ov61_02153448
func_ov61_02153448: ; 0x02153448
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r8, r0
mov r7, r1
mov r6, r2
bl func_0200ee4c
ldr r1, _02153544 ; =data_027e02a0
mov r5, r0
ldr r1, [r1, #8]
cmp r1, #0
beq _02153538
_02153470:
ldr r4, [r1, #0xa4]
cmp r4, #0
ldrne r3, [r4]
cmpne r3, #0
beq _0215352c
ldrb r0, [r4, #8]
cmp r0, #0xb
ldreqh r2, [r7, #4]
moveq r0, r3, lsl #0x10
cmpeq r2, r0, lsr #16
ldreqh r2, [r4, #0xa]
ldreqh r0, [r7, #6]
cmpeq r2, r0
ldreq r0, [r4, #0x44]
cmpeq r0, #0
bne _0215352c
ldrh lr, [r8, #0xe]
ldrh ip, [r8, #0xc]
ldr r0, [r4, #0x1c]
mov r2, lr, lsl #0x8
mov r3, ip, lsl #0x8
orr ip, r3, ip, asr #8
orr r3, r2, lr, asr #8
mov r2, ip, lsl #0x10
mov r3, r3, lsl #0x10
mov ip, r2, lsr #0x10
mov r2, r3, lsr #0x10
orr r2, r2, ip, lsl #16
cmp r0, r2
bne _0215352c
ldr r1, [r4, #0x3c]
sub r0, r6, #8
cmp r0, r1
strhi r1, [r4, #0x44]
strls r0, [r4, #0x44]
ldr r1, [r4, #0x40]
ldr r2, [r4, #0x44]
add r0, r7, #8
bl func_02007ad8
ldr r0, [r4, #4]
cmp r0, #3
bne _02153538
mov r0, #0
str r0, [r4, #4]
ldr r0, [r4]
bl func_0200d938
b _02153538
_0215352c:
ldr r1, [r1, #0x68]
cmp r1, #0
bne _02153470
_02153538:
mov r0, r5
bl func_0200ee60
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02153448
_02153544: .word data_027e02a0
.global func_ov61_02153548
arm_func_start func_ov61_02153548
func_ov61_02153548: ; 0x02153548
cmp r0, #0
mvnne r2, #0
cmpne r0, r2
cmpne r1, #0
cmpne r1, r2
movne r0, #1
moveq r0, #0
bx lr
arm_func_end func_ov61_02153548
.global func_ov61_02153568
arm_func_start func_ov61_02153568
func_ov61_02153568: ; 0x02153568
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r5, r1
mov r4, r2
mov r6, r0
mov r0, r5
mov r1, r4
bl func_ov61_02152028
ldr r1, _02153634 ; =0x0000ffff
cmp r0, r1
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
ldrh r0, [r6, #0x12]
ldrh r8, [r6, #0x10]
ldrh r7, [r6, #0xe]
ldrh lr, [r6, #0xc]
mov r2, r8, lsl #0x8
orr r2, r2, r8, asr #8
mov ip, lr, lsl #0x8
mov r2, r2, lsl #0x10
mov r3, r7, lsl #0x8
orr lr, ip, lr, asr #8
mov r1, r0, lsl #0x8
orr ip, r3, r7, asr #8
orr r3, r1, r0, asr #8
mov r0, lr, lsl #0x10
mov r1, ip, lsl #0x10
mov ip, r0, lsr #0x10
mov r0, r1, lsr #0x10
mov r3, r3, lsl #0x10
mov r2, r2, lsr #0x10
mov r1, r3, lsr #0x10
orr r0, r0, ip, lsl #16
orr r1, r1, r2, lsl #16
bl func_ov61_02153548
cmp r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
ldrb r0, [r5]
cmp r0, #0
beq _0215360c
cmp r0, #8
beq _02153620
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0215360c:
mov r0, r6
mov r1, r5
mov r2, r4
bl func_ov61_02153448
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_02153620:
mov r0, r6
mov r1, r5
mov r2, r4
bl func_ov61_02153364
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02153568
_02153634: .word 0x0000ffff
.global func_ov61_02153638
arm_func_start func_ov61_02153638
func_ov61_02153638: ; 0x02153638
stmdb sp!, {r4, r5, r6, lr}
ldr r2, _02153708 ; =data_027e02a0
ldr ip, [r2, #8]
cmp ip, #0
beq _02153700
_0215364c:
ldr r3, [ip, #0xa4]
cmp r3, #0
ldrne r2, [r3]
cmpne r2, #0
beq _021536f4
ldrb r2, [r3, #8]
cmp r2, #1
bne _021536f4
ldrh r5, [r1, #2]
ldrh r4, [r3, #0xa]
mov r2, r5, lsl #0x8
orr r2, r2, r5, asr #8
mov r2, r2, lsl #0x10
cmp r4, r2, lsr #16
bne _021536f4
ldrh r5, [r3, #0x18]
cmp r5, #0
beq _021536ac
ldrh r4, [r1]
mov r2, r4, lsl #0x8
orr r2, r2, r4, asr #8
mov r2, r2, lsl #0x10
cmp r5, r2, lsr #16
bne _021536f4
_021536ac:
ldr r2, [r3, #0x1c]
cmp r2, #0
beq _021536ec
ldrh r6, [r0, #0xe]
ldrh r5, [r0, #0xc]
mov r4, r6, lsl #0x8
mov lr, r5, lsl #0x8
orr lr, lr, r5, asr #8
orr r4, r4, r6, asr #8
mov lr, lr, lsl #0x10
mov r4, r4, lsl #0x10
mov lr, lr, lsr #0x10
mov r4, r4, lsr #0x10
orr r4, r4, lr, lsl #16
cmp r2, r4
bne _021536f4
_021536ec:
mov r0, r3
ldmia sp!, {r4, r5, r6, pc}
_021536f4:
ldr ip, [ip, #0x68]
cmp ip, #0
bne _0215364c
_02153700:
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02153638
_02153708: .word data_027e02a0
.global func_ov61_0215370c
arm_func_start func_ov61_0215370c
func_ov61_0215370c: ; 0x0215370c
stmdb sp!, {r4, r5, r6, lr}
ldrb r4, [r2, #8]
mov r3, #0
mov r5, r3
cmp r4, #0xa
cmpne r4, #0xb
movne r5, #1
mov ip, r3
mov r6, r3
cmp r5, #0
beq _02153754
ldrh lr, [r1, #2]
ldrh r5, [r2, #0xa]
mov r4, lr, lsl #0x8
orr r4, r4, lr, asr #8
mov lr, r4, lsl #0x10
cmp r5, lr, lsr #16
moveq r6, #1
_02153754:
cmp r6, #0
beq _02153778
ldrh lr, [r1]
ldrh r4, [r2, #0x18]
mov r1, lr, lsl #0x8
orr r1, r1, lr, asr #8
mov r1, r1, lsl #0x10
cmp r4, r1, lsr #16
moveq ip, #1
_02153778:
cmp ip, #0
beq _021537b8
ldrh lr, [r0, #0xc]
ldrh r4, [r0, #0xe]
ldr ip, [r2, #0x1c]
mov r1, lr, lsl #0x8
mov r0, r4, lsl #0x8
orr r2, r1, lr, asr #8
orr r1, r0, r4, asr #8
mov r0, r2, lsl #0x10
mov r1, r1, lsl #0x10
mov r2, r0, lsr #0x10
mov r0, r1, lsr #0x10
orr r0, r0, r2, lsl #16
cmp ip, r0
moveq r3, #1
_021537b8:
mov r0, r3
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0215370c
.global func_ov61_021537c0
arm_func_start func_ov61_021537c0
func_ov61_021537c0: ; 0x021537c0
stmdb sp!, {r3, r4, r5, r6, r7, lr}
ldr r2, _02153820 ; =data_027e02a0
mov r7, r0
ldr r5, [r2, #8]
mov r6, r1
cmp r5, #0
beq _02153818
_021537dc:
ldr r4, [r5, #0xa4]
cmp r4, #0
ldrne r0, [r4]
cmpne r0, #0
beq _0215380c
mov r0, r7
mov r1, r6
mov r2, r4
bl func_ov61_0215370c
cmp r0, #0
movne r0, r4
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
_0215380c:
ldr r5, [r5, #0x68]
cmp r5, #0
bne _021537dc
_02153818:
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_021537c0
_02153820: .word data_027e02a0
.global func_ov61_02153824
arm_func_start func_ov61_02153824
func_ov61_02153824: ; 0x02153824
mov r2, #0x218
strh r2, [r1, #0x2e]
ldrb r2, [r0, #0xc]
add r3, r0, #0x14
and r2, r2, #0xf0
mov r0, r2, asr #0x1
add r0, r2, r0, lsr #30
mov r0, r0, asr #0x2
subs r0, r0, #0x14
sub ip, r0, #1
bxeq lr
_02153850:
ldrb r0, [r3], #1
cmp r0, #0
bxeq lr
cmp r0, #1
beq _02153898
cmp r0, #2
bne _02153888
ldrb r2, [r3, #1]
ldrb r0, [r3, #2]
add r3, r3, #3
sub ip, ip, #3
orr r0, r0, r2, lsl #8
strh r0, [r1, #0x2e]
b _02153898
_02153888:
ldrb r0, [r3]
sub r0, r0, #1
sub ip, ip, r0
add r3, r3, r0
_02153898:
cmp ip, #0
sub ip, ip, #1
bne _02153850
bx lr
arm_func_end func_ov61_02153824
.global func_ov61_021538a8
arm_func_start func_ov61_021538a8
func_ov61_021538a8: ; 0x021538a8
stmdb sp!, {r3, lr}
bl func_ov61_021520d4
cmp r0, #0
moveq r0, #1
ldmeqia sp!, {r3, pc}
bl func_ov61_021525b0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_021538a8
.global func_ov61_021538c4
arm_func_start func_ov61_021538c4
func_ov61_021538c4: ; 0x021538c4
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
mov r6, r0
ldr r0, [r6, #0x1c]
mov r5, r1
mov r4, r2
bl func_ov61_021538a8
cmp r0, #0
bne _021538fc
ldr r0, _02153930 ; =data_027e02a0
ldr r1, _02153934 ; =data_ov61_0217f67c
ldr r0, [r0, #4]
cmp r0, r1
beq _0215391c
_021538fc:
mov r0, #0
mov r1, r0
mov r2, r6
mov r3, r5
str r4, [sp]
bl func_ov61_02152f04
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
_0215391c:
ldr r0, [r6, #0x1c]
bl func_ov61_021520d4
bl func_ov61_02152680
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_021538c4
_02153930: .word data_027e02a0
_02153934: .word data_ov61_0217f67c
.global func_ov61_02153938
arm_func_start func_ov61_02153938
func_ov61_02153938: ; 0x02153938
ldr ip, _02153948 ; =func_ov61_021538c4
mov r2, r1
mov r1, #0x10
bx ip
.align 2, 0
arm_func_end func_ov61_02153938
_02153948: .word func_ov61_021538c4
.global func_ov61_0215394c
arm_func_start func_ov61_0215394c
func_ov61_0215394c: ; 0x0215394c
ldr ip, _0215395c ; =func_ov61_021538c4
mov r2, r1
mov r1, #0x11
bx ip
.align 2, 0
arm_func_end func_ov61_0215394c
_0215395c: .word func_ov61_021538c4
.global func_ov61_02153960
arm_func_start func_ov61_02153960
func_ov61_02153960: ; 0x02153960
stmdb sp!, {r4, r5, r6, r7, r8, lr}
ldr r4, _02153a90 ; =data_ov61_0217f558
mov r8, r0
mov r7, r1
mov r6, r2
mov r0, r4
mov r1, #0
mov r2, #0x64
mov r5, r3
bl func_02007a44
ldrh r3, [r7, #2]
ldr r0, _02153a94 ; =data_ov61_0217f514
ldr r2, _02153a98 ; =data_ov61_0217f414
mov r1, r3, lsl #0x8
orr r1, r1, r3, asr #8
strh r1, [r0, #0x4e]
ldrh r3, [r7]
mov r1, r3, lsl #0x8
orr r1, r1, r3, asr #8
strh r1, [r0, #0x5c]
ldrh ip, [r8, #0xe]
ldrh r3, [r8, #0xc]
mov r0, ip, lsl #0x8
mov r1, r3, lsl #0x8
orr r3, r1, r3, asr #8
orr r1, r0, ip, asr #8
mov r0, r3, lsl #0x10
mov r1, r1, lsl #0x10
mov r3, r0, lsr #0x10
mov r0, r1, lsr #0x10
orr r0, r0, r3, lsl #16
str r0, [r2, #0x160]
ldrb r0, [r7, #0xd]
tst r0, #0x10
beq _02153a30
ldrh r6, [r7, #0xa]
ldrh r3, [r7, #8]
mov r0, r4
mov r1, r6, lsl #0x8
mov r2, r3, lsl #0x8
orr r3, r2, r3, asr #8
orr r2, r1, r6, asr #8
mov r1, r3, lsl #0x10
mov r2, r2, lsl #0x10
mov r3, r1, lsr #0x10
mov r1, r2, lsr #0x10
orr r3, r1, r3, lsl #16
mov r2, r5
mov r1, #4
str r3, [r4, #0x28]
bl func_ov61_021538c4
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_02153a30:
mov r0, #0
str r0, [r4, #0x28]
ldrh r3, [r7, #6]
ldrh r2, [r7, #4]
mov r0, r3, lsl #0x8
mov r1, r2, lsl #0x8
orr r2, r1, r2, asr #8
orr r1, r0, r3, asr #8
mov r0, r2, lsl #0x10
mov r1, r1, lsl #0x10
mov r2, r0, lsr #0x10
mov r0, r1, lsr #0x10
orr r0, r0, r2, lsl #16
add r1, r6, r0
str r1, [r4, #0x24]
ldrb r0, [r7, #0xd]
mov r2, r5
tst r0, #3
addne r0, r1, #1
strne r0, [r4, #0x24]
mov r0, r4
mov r1, #0x14
bl func_ov61_021538c4
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02153960
_02153a90: .word data_ov61_0217f558
_02153a94: .word data_ov61_0217f514
_02153a98: .word data_ov61_0217f414
.global func_ov61_02153a9c
arm_func_start func_ov61_02153a9c
func_ov61_02153a9c: ; 0x02153a9c
stmdb sp!, {r4, r5, r6, lr}
mov r4, r2
mov r2, #3
mov r6, r0
mov r5, r1
strb r2, [r4, #8]
bl func_0200e8f8
mov r0, r0, lsr #0x10
orr r0, r0, r1, lsl #16
str r0, [r4, #0x10]
ldrh r2, [r6, #0x12]
ldrh r3, [r6, #0x10]
mov r0, r5
mov r1, r2, lsl #0x8
orr r2, r1, r2, asr #8
mov r1, r3, lsl #0x8
orr r1, r1, r3, asr #8
mov r1, r1, lsl #0x10
mov r2, r2, lsl #0x10
mov r3, r1, lsr #0x10
mov r1, r2, lsr #0x10
orr r1, r1, r3, lsl #16
str r1, [r4, #0x14]
ldrh r3, [r5]
mov r1, r4
mov r2, r3, lsl #0x8
orr r2, r2, r3, asr #8
strh r2, [r4, #0x18]
ldrh r3, [r6, #0xe]
ldrh r6, [r6, #0xc]
mov r2, r3, lsl #0x8
orr r3, r2, r3, asr #8
mov r2, r6, lsl #0x8
orr r2, r2, r6, asr #8
mov r2, r2, lsl #0x10
mov r3, r3, lsl #0x10
mov r6, r2, lsr #0x10
mov r2, r3, lsr #0x10
orr r2, r2, r6, lsl #16
str r2, [r4, #0x1c]
ldrh r6, [r5, #6]
ldrh r5, [r5, #4]
mov r2, r6, lsl #0x8
mov r3, r5, lsl #0x8
orr r5, r3, r5, asr #8
orr r3, r2, r6, asr #8
mov r2, r5, lsl #0x10
mov r3, r3, lsl #0x10
mov r5, r2, lsr #0x10
mov r2, r3, lsr #0x10
orr r2, r2, r5, lsl #16
add r2, r2, #1
str r2, [r4, #0x24]
bl func_ov61_02153824
mov r0, r4
mov r1, #0x12
mov r2, #0
bl func_ov61_021538c4
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02153a9c
.global func_ov61_02153b88
arm_func_start func_ov61_02153b88
func_ov61_02153b88: ; 0x02153b88
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
mov r4, r2
bl func_ov61_021537c0
movs r2, r0
beq _02153c08
ldrb r0, [r2, #8]
cmp r0, #1
bne _02153bc0
mov r0, r6
mov r1, r5
bl func_ov61_02153a9c
b _02153c00
_02153bc0:
add r0, r0, #0xfd
and r0, r0, #0xff
cmp r0, #1
bhi _02153bec
ldr r1, [r2, #0x28]
mov r0, r6
sub r3, r1, #1
mov r1, r5
str r3, [r2, #0x28]
bl func_ov61_02153a9c
b _02153c00
_02153bec:
mov r0, r6
mov r1, r5
mov r2, r4
mov r3, #0
bl func_ov61_02153960
_02153c00:
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
_02153c08:
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02153b88
.global func_ov61_02153c10
arm_func_start func_ov61_02153c10
func_ov61_02153c10: ; 0x02153c10
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r4, r0
ldrh r0, [r4, #0x12]
ldrh r8, [r4, #0x10]
ldrh r7, [r4, #0xe]
ldrh r6, [r4, #0xc]
mov ip, r8, lsl #0x8
orr ip, ip, r8, asr #8
mov r5, r6, lsl #0x8
mov ip, ip, lsl #0x10
mov lr, r7, lsl #0x8
orr r6, r5, r6, asr #8
mov r3, r0, lsl #0x8
orr r5, lr, r7, asr #8
orr lr, r3, r0, asr #8
mov r0, r6, lsl #0x10
mov r3, r5, lsl #0x10
mov r5, r0, lsr #0x10
mov r0, r3, lsr #0x10
mov lr, lr, lsl #0x10
orr r0, r0, r5, lsl #16
mov ip, ip, lsr #0x10
mov r3, lr, lsr #0x10
mov r6, r1
orr r1, r3, ip, lsl #16
mov r5, r2
bl func_ov61_02153548
cmp r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
mov r0, r4
mov r1, r6
mov r2, r5
bl func_ov61_02153b88
cmp r0, #0
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
mov r0, r4
mov r1, r6
bl func_ov61_02153638
movs r2, r0
beq _02153cc0
mov r0, r4
mov r1, r6
bl func_ov61_02153a9c
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_02153cc0:
bl func_0200d9a4
mov r0, r4
mov r1, r6
bl func_ov61_02153638
movs r2, r0
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
mov r0, r4
mov r1, r6
bl func_ov61_02153a9c
ldmia sp!, {r4, r5, r6, r7, r8, pc}
arm_func_end func_ov61_02153c10
.global func_ov61_02153ce8
arm_func_start func_ov61_02153ce8
func_ov61_02153ce8: ; 0x02153ce8
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r5, r1
mov r6, r2
bl func_ov61_021537c0
movs r4, r0
beq _02153d10
ldrb r0, [r4, #8]
cmp r0, #2
beq _02153d28
_02153d10:
mov r0, r7
mov r1, r5
mov r2, r6
mov r3, #0
bl func_ov61_02153960
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02153d28:
bl func_0200d9a4
ldrh ip, [r5, #6]
ldrh r3, [r5, #4]
mov r0, r5
mov r1, ip, lsl #0x8
mov r2, r3, lsl #0x8
orr r3, r2, r3, asr #8
orr r2, r1, ip, asr #8
mov r1, r3, lsl #0x10
mov r2, r2, lsl #0x10
mov r3, r1, lsr #0x10
mov r1, r2, lsr #0x10
orr r1, r1, r3, lsl #16
add r1, r1, #1
str r1, [r4, #0x24]
ldrh lr, [r5, #0xa]
ldrh ip, [r5, #8]
mov r1, r4
mov r2, lr, lsl #0x8
mov r3, ip, lsl #0x8
orr ip, r3, ip, asr #8
orr r3, r2, lr, asr #8
mov r2, ip, lsl #0x10
mov r3, r3, lsl #0x10
mov ip, r2, lsr #0x10
mov r2, r3, lsr #0x10
orr r2, r2, ip, lsl #16
str r2, [r4, #0x30]
ldrh r3, [r5, #0xe]
mov r2, r3, lsl #0x8
orr r2, r2, r3, asr #8
strh r2, [r4, #0x2c]
bl func_ov61_02153824
mov r0, r4
mov r1, #0
bl func_ov61_02153938
mov r0, #4
strb r0, [r4, #8]
ldr r0, [r4, #4]
cmp r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, #0
str r0, [r4, #4]
ldr r0, [r4]
bl func_0200d938
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_02153ce8
.global func_ov61_02153de0
arm_func_start func_ov61_02153de0
func_ov61_02153de0: ; 0x02153de0
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r4, r0
mov r9, r1
mov r8, r2
bl func_ov61_021537c0
movs r5, r0
bne _02153e14
mov r0, r4
mov r1, r9
mov r2, r8
mov r3, #0
bl func_ov61_02153960
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02153e14:
ldrh r7, [r9, #0xa]
ldrh r3, [r9, #8]
ldrb r6, [r9, #0xd]
mov r1, r7, lsl #0x8
mov r2, r3, lsl #0x8
orr r3, r2, r3, asr #8
orr r2, r1, r7, asr #8
mov r1, r3, lsl #0x10
mov r2, r2, lsl #0x10
mov r3, r1, lsr #0x10
mov r1, r2, lsr #0x10
orr r1, r1, r3, lsl #16
str r1, [r5, #0x30]
ldrh ip, [r9, #6]
ldrh r7, [r9, #4]
ldrb r3, [r5, #8]
mov r1, ip, lsl #0x8
mov r2, r7, lsl #0x8
orr r7, r2, r7, asr #8
orr r2, r1, ip, asr #8
mov r1, r7, lsl #0x10
mov r2, r2, lsl #0x10
mov r7, r1, lsr #0x10
mov r1, r2, lsr #0x10
cmp r3, #4
orr r2, r1, r7, lsl #16
bne _02153e98
ldr r1, [r5, #0x24]
cmp r1, r2
beq _02153e98
mov r1, #0
bl func_ov61_02153938
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02153e98:
ldrh r1, [r9, #0xe]
mov r0, r1, lsl #0x8
orr r0, r0, r1, asr #8
strh r0, [r5, #0x2c]
ldrb r0, [r5, #8]
cmp r0, #9
addls pc, pc, r0, lsl #2
b _021540c4
_02153eb8: ; jump table
b _02153ee0 ; case 0
b _021540c4 ; case 1
b _02153ee0 ; case 2
b _02153ef8 ; case 3
b _02153f24 ; case 4
b _021540c4 ; case 5
b _021540a0 ; case 6
b _0215402c ; case 7
b _0215402c ; case 8
b _021540a0 ; case 9
_02153ee0:
mov r0, r4
mov r1, r9
mov r2, r8
mov r3, #0
bl func_ov61_02153960
b _021540e0
_02153ef8:
mov r0, #4
strb r0, [r5, #8]
ldr r0, [r5, #4]
cmp r0, #1
bne _02153f1c
mov r0, #0
str r0, [r5, #4]
ldr r0, [r5]
bl func_0200d938
_02153f1c:
cmp r8, #0
beq _021540e0
_02153f24:
ldr r0, [r5, #0x34]
add r0, r0, #1
str r0, [r5, #0x34]
ldr r1, [r5, #0x3c]
ldr r0, [r5, #0x44]
sub r0, r1, r0
cmp r8, r0
movhi r7, #0
movhi r8, r0
movls r7, #1
cmp r8, #0
beq _02153fc0
bl func_0200ee4c
ldrb r1, [r9, #0xc]
ldr ip, [r5, #0x40]
ldr r3, [r5, #0x44]
and r2, r1, #0xf0
mov r1, r2, asr #0x1
add r1, r2, r1, lsr #30
mov r4, r0
mov r2, r8
add r0, r9, r1, asr #2
add r1, ip, r3
bl func_02007ad8
ldr r1, [r5, #0x44]
mov r0, r4
add r1, r1, r8
str r1, [r5, #0x44]
ldr r1, [r5, #0x24]
add r1, r1, r8
str r1, [r5, #0x24]
bl func_0200ee60
ldr r0, [r5, #4]
cmp r0, #2
bne _02153fc0
mov r0, #0
str r0, [r5, #4]
ldr r0, [r5]
bl func_0200d938
_02153fc0:
cmp r7, #0
beq _02154014
tst r6, #1
beq _02154014
mov r0, #6
strb r0, [r5, #8]
ldr r1, [r5, #0x24]
mov r0, r5
add r2, r1, #1
mov r1, #0
str r2, [r5, #0x24]
bl func_ov61_0215394c
cmp r8, #0
ldreq r0, [r5, #4]
cmpeq r0, #2
bne _021540e0
mov r0, #0
str r0, [r5, #4]
ldr r0, [r5]
bl func_0200d938
b _021540e0
_02154014:
cmp r8, #0
beq _021540e0
mov r0, r5
mov r1, #0
bl func_ov61_02153938
b _021540e0
_0215402c:
tst r6, #1
beq _02154074
ldr r1, [r5, #0x24]
add r0, r8, #1
add r2, r1, r0
mov r0, r5
mov r1, #0
str r2, [r5, #0x24]
bl func_ov61_02153938
mov r1, #0
strb r1, [r5, #8]
ldr r0, [r5, #4]
cmp r0, #2
bne _021540e0
str r1, [r5, #4]
ldr r0, [r5]
bl func_0200d938
b _021540e0
_02154074:
cmp r8, #0
beq _02154094
ldr r1, [r5, #0x24]
mov r0, r5
add r2, r1, r8
mov r1, #0
str r2, [r5, #0x24]
bl func_ov61_02153938
_02154094:
mov r0, #8
strb r0, [r5, #8]
b _021540e0
_021540a0:
mov r1, #0
strb r1, [r5, #8]
ldr r0, [r5, #4]
cmp r0, #2
bne _021540e0
str r1, [r5, #4]
ldr r0, [r5]
bl func_0200d938
b _021540e0
_021540c4:
tst r6, #1
ldrne r0, [r5, #0x24]
mov r1, #0
addne r0, r0, #1
strne r0, [r5, #0x24]
mov r0, r5
bl func_ov61_02153938
_021540e0:
bl func_0200d9a4
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
arm_func_end func_ov61_02153de0
.global func_ov61_021540e8
arm_func_start func_ov61_021540e8
func_ov61_021540e8: ; 0x021540e8
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r6, r1
mov r5, r2
bl func_ov61_021537c0
movs r4, r0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldrb r1, [r4, #8]
cmp r1, #4
beq _0215417c
cmp r1, #7
beq _02154124
cmp r1, #8
beq _02154144
b _0215419c
_02154124:
ldr r2, [r4, #0x24]
mov r1, #0
add r2, r2, #1
str r2, [r4, #0x24]
bl func_ov61_02153938
mov r0, #9
strb r0, [r4, #8]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02154144:
ldr r2, [r4, #0x24]
mov r1, #0
add r2, r2, #1
str r2, [r4, #0x24]
bl func_ov61_02153938
mov r1, #0
strb r1, [r4, #8]
ldr r0, [r4, #4]
cmp r0, #2
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
str r1, [r4, #4]
ldr r0, [r4]
bl func_0200d938
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0215417c:
ldr r2, [r4, #0x24]
mov r1, #0
add r2, r2, #1
str r2, [r4, #0x24]
bl func_ov61_0215394c
mov r0, #6
strb r0, [r4, #8]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0215419c:
mov r0, r7
mov r1, r6
mov r2, r5
mov r3, #0
bl func_ov61_02153960
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_021540e8
.global func_ov61_021541b4
arm_func_start func_ov61_021541b4
func_ov61_021541b4: ; 0x021541b4
stmdb sp!, {r4, lr}
bl func_ov61_021537c0
movs r4, r0
ldmeqia sp!, {r4, pc}
bl func_0200d9a4
mov r1, #0
strb r1, [r4, #8]
ldr r0, [r4, #4]
sub r0, r0, #1
cmp r0, #1
ldmhiia sp!, {r4, pc}
str r1, [r4, #4]
ldr r0, [r4]
bl func_0200d938
ldmia sp!, {r4, pc}
arm_func_end func_ov61_021541b4
.global func_ov61_021541f0
arm_func_start func_ov61_021541f0
func_ov61_021541f0: ; 0x021541f0
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
mov r4, r2
mov r0, r5
mov r1, r4
mov r2, r6
mov r3, #6
bl func_ov61_02152044
cmp r0, #0
ldmneia sp!, {r4, r5, r6, pc}
ldrb r0, [r5, #0xc]
ldrb r2, [r5, #0xd]
and r1, r0, #0xf0
mov r0, r1, asr #0x1
add r0, r1, r0, lsr #30
and r1, r2, #0x17
cmp r1, #0x10
sub r4, r4, r0, asr #2
bgt _02154268
cmp r1, #0x10
bge _021542c0
cmp r1, #2
bgt _021542e8
cmp r1, #1
blt _021542e8
beq _021542d4
cmp r1, #2
beq _02154288
b _021542e8
_02154268:
cmp r1, #0x12
bgt _021542e8
cmp r1, #0x11
blt _021542e8
beq _021542c0
cmp r1, #0x12
beq _021542a4
b _021542e8
_02154288:
tst r2, #0x28
ldmneia sp!, {r4, r5, r6, pc}
mov r0, r6
mov r1, r5
mov r2, r4
bl func_ov61_02153c10
ldmia sp!, {r4, r5, r6, pc}
_021542a4:
tst r2, #0x28
ldmneia sp!, {r4, r5, r6, pc}
mov r0, r6
mov r1, r5
mov r2, r4
bl func_ov61_02153ce8
ldmia sp!, {r4, r5, r6, pc}
_021542c0:
mov r0, r6
mov r1, r5
mov r2, r4
bl func_ov61_02153de0
ldmia sp!, {r4, r5, r6, pc}
_021542d4:
mov r0, r6
mov r1, r5
mov r2, r4
bl func_ov61_021540e8
ldmia sp!, {r4, r5, r6, pc}
_021542e8:
tst r2, #4
mov r0, r6
mov r1, r5
beq _02154300
bl func_ov61_021541b4
ldmia sp!, {r4, r5, r6, pc}
_02154300:
mov r2, r4
mov r3, #0
bl func_ov61_02153960
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_021541f0
.global func_ov61_02154310
arm_func_start func_ov61_02154310
func_ov61_02154310: ; 0x02154310
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r7, r1
ldrh r1, [r7, #6]
mov r8, r0
mov r6, r2
cmp r1, #0
beq _02154348
mov r0, r7
mov r1, r6
mov r2, r8
mov r3, #0x11
bl func_ov61_02152044
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02154348:
bl func_0200ee4c
ldr r1, _02154518 ; =data_027e02a0
mov r5, r0
ldr r1, [r1, #8]
cmp r1, #0
beq _0215450c
mvn ip, #0
_02154364:
ldr r4, [r1, #0xa4]
cmp r4, #0
ldrne r0, [r4]
cmpne r0, #0
beq _02154500
ldrb r0, [r4, #8]
cmp r0, #0xa
bne _02154500
ldrh r3, [r7, #2]
ldrh r2, [r4, #0xa]
mov r0, r3, lsl #0x8
orr r0, r0, r3, asr #8
mov r0, r0, lsl #0x10
cmp r2, r0, lsr #16
bne _02154500
ldrh r3, [r4, #0x18]
cmp r3, #0
beq _021543c4
ldrh r2, [r7]
mov r0, r2, lsl #0x8
orr r0, r0, r2, asr #8
mov r0, r0, lsl #0x10
cmp r3, r0, lsr #16
bne _02154500
_021543c4:
ldr r0, [r4, #0x1c]
cmp r0, #0
cmpne r0, ip
beq _02154408
ldrh r9, [r8, #0xe]
ldrh lr, [r8, #0xc]
mov r2, r9, lsl #0x8
mov r3, lr, lsl #0x8
orr lr, r3, lr, asr #8
orr r3, r2, r9, asr #8
mov r2, lr, lsl #0x10
mov r3, r3, lsl #0x10
mov lr, r2, lsr #0x10
mov r2, r3, lsr #0x10
orr r2, r2, lr, lsl #16
cmp r0, r2
bne _02154500
_02154408:
ldrh r3, [r8, #0x12]
ldrh r2, [r8, #0x10]
mov r0, r3, lsl #0x8
mov r1, r2, lsl #0x8
orr r2, r1, r2, asr #8
orr r1, r0, r3, asr #8
mov r0, r2, lsl #0x10
mov r1, r1, lsl #0x10
mov r2, r0, lsr #0x10
mov r0, r1, lsr #0x10
orr r0, r0, r2, lsl #16
str r0, [r4, #0x14]
ldr r0, [r4, #0x1c]
cmp r0, #0
bne _02154484
ldrh r3, [r8, #0xe]
ldrh r2, [r8, #0xc]
mov r0, r3, lsl #0x8
mov r1, r2, lsl #0x8
orr r2, r1, r2, asr #8
orr r1, r0, r3, asr #8
mov r0, r2, lsl #0x10
mov r1, r1, lsl #0x10
mov r2, r0, lsr #0x10
mov r0, r1, lsr #0x10
orr r0, r0, r2, lsl #16
str r0, [r4, #0x1c]
ldrh r1, [r7]
mov r0, r1, lsl #0x8
orr r0, r0, r1, asr #8
strh r0, [r4, #0x18]
_02154484:
ldr r0, [r4, #0x44]
cmp r0, #0
bne _0215450c
ldr r1, [r4, #0x3c]
sub r0, r6, #8
cmp r0, r1
strhi r1, [r4, #0x44]
strls r0, [r4, #0x44]
ldr r1, [r4, #0x40]
ldr r2, [r4, #0x44]
add r0, r7, #8
bl func_02007ad8
ldr r0, [r4, #4]
cmp r0, #3
bne _021544d4
mov r0, #0
str r0, [r4, #4]
ldr r0, [r4]
bl func_0200d938
b _0215450c
_021544d4:
ldr r3, [r4, #0x38]
cmp r3, #0
beq _0215450c
ldr r0, [r4, #0x40]
ldr r1, [r4, #0x44]
mov r2, r4
blx r3
cmp r0, #0
movne r0, #0
strne r0, [r4, #0x44]
b _0215450c
_02154500:
ldr r1, [r1, #0x68]
cmp r1, #0
bne _02154364
_0215450c:
mov r0, r5
bl func_0200ee60
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_02154310
_02154518: .word data_027e02a0
.global func_ov61_0215451c
arm_func_start func_ov61_0215451c
func_ov61_0215451c: ; 0x0215451c
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0xc
mov r6, #0
mov r10, r0
str r6, [r1]
ldrh r3, [r10, #6]
str r1, [sp]
ldr r2, _021547d8 ; =0x00003fff
mov r1, r3, lsl #0x8
orr r1, r1, r3, asr #8
mov r1, r1, lsl #0x10
mov r1, r1, lsr #0x10
str r1, [sp, #8]
tst r1, r2
addeq sp, sp, #0xc
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldrh r3, [r10, #0xe]
ldrh r2, [r10, #0xc]
ldrb r4, [r10]
mov r0, r3, lsl #0x8
mov r1, r2, lsl #0x8
orr r2, r1, r2, asr #8
orr r1, r0, r3, asr #8
mov r3, r4, lsl #0x1c
mov r0, r2, lsl #0x10
mov r1, r1, lsl #0x10
mov r2, r0, lsr #0x10
mov r1, r1, lsr #0x10
ldrh r4, [r10, #4]
ldr r7, _021547dc ; =data_ov61_0217f73c
mov r0, r6
mov r5, r3, lsr #0x1a
orr r9, r1, r2, lsl #16
_021545a0:
ldrh r2, [r7, #4]
cmp r2, #0
beq _021545c0
ldr r1, [r7]
cmp r1, r9
ldreqh r1, [r7, #6]
cmpeq r1, r4
beq _021545dc
_021545c0:
add r0, r0, #1
cmp r2, #0
cmpeq r6, #0
moveq r6, r7
cmp r0, #8
add r7, r7, #0x38
blo _021545a0
_021545dc:
ldrh r2, [r10, #2]
cmp r0, #8
ldr r1, _021547e0 ; =0x00001fff
mov r0, r2, lsl #0x8
orr r0, r0, r2, asr #8
mov r0, r0, lsl #0x10
rsb r0, r5, r0, lsr #16
str r0, [sp, #4]
ldr r0, [sp, #8]
and r11, r0, r1
ldr r0, [sp, #4]
add r8, r0, r11, lsl #3
bne _02154698
cmp r6, #0
beq _02154620
cmp r8, #0x1000
bls _0215462c
_02154620:
add sp, sp, #0xc
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0215462c:
ldr r1, _021547e4 ; =data_ov61_0217f414
add r0, r5, #0xe
ldr r1, [r1, #0x14]
add r0, r0, #0x1000
mov r7, r6
blx r1
cmp r0, #0
str r0, [r6, #0x34]
addeq sp, sp, #0xc
mov r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
str r9, [r6]
strh r4, [r6, #6]
strh r0, [r6, #8]
bl func_0200e8f8
mov r0, r0, lsr #0x10
orr r0, r0, r1, lsl #16
str r0, [r6, #0x2c]
ldr r1, [r6, #0x34]
mov r0, r10
add r1, r1, #0xe
add r1, r1, r5
str r1, [r6, #0x30]
ldr r1, [r6, #0x34]
mov r2, r5
add r1, r1, #0xe
bl func_02007ad8
_02154698:
ldrh r0, [r7, #4]
cmp r0, #8
beq _021546ac
cmp r8, #0x1000
bls _021546d0
_021546ac:
ldr r1, _021547e4 ; =data_ov61_0217f414
mov r0, #0
strh r0, [r7, #4]
ldr r0, [r7, #0x34]
ldr r1, [r1, #0x40]
blx r1
add sp, sp, #0xc
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021546d0:
ldr r0, [sp, #4]
ldr r2, [sp, #4]
add r1, r0, #7
ldr r0, [sp, #8]
add r3, r11, r1, lsr #3
tst r0, #0x2000
streqh r8, [r7, #0xa]
streqh r3, [r7, #8]
ldrh r1, [r7, #4]
add r0, r10, r5
add r1, r7, r1, lsl #1
strh r11, [r1, #0xc]
ldrh r1, [r7, #4]
add r1, r7, r1, lsl #1
strh r3, [r1, #0x1c]
ldrh r1, [r7, #4]
add r1, r1, #1
strh r1, [r7, #4]
ldr r1, [r7, #0x30]
add r1, r1, r11, lsl #3
bl func_02007ad8
ldrh r4, [r7, #8]
cmp r4, #0
addeq sp, sp, #0xc
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldrh r3, [r7, #4]
mov r6, #0
mov r5, r6
cmp r3, #0
bls _02154780
mov r0, r6
_02154750:
add r2, r7, r5, lsl #1
ldrh r1, [r2, #0xc]
cmp r1, r6
bhi _02154774
ldrh r1, [r2, #0x1c]
cmp r6, r1
movlo r6, r1
movlo r5, r0
blo _02154778
_02154774:
add r5, r5, #1
_02154778:
cmp r5, r3
blo _02154750
_02154780:
cmp r6, r4
addlo sp, sp, #0xc
movlo r0, #0
ldmloia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r4, [r7, #0x34]
ldrh r3, [r7, #0xa]
ldrb r0, [r4, #0xe]
mov r2, #0
mov r1, #1
mov r0, r0, lsl #0x1c
add r0, r3, r0, lsr #26
mov r0, r0, lsl #0x10
mov r3, r0, lsr #0x10
mov r0, r3, lsl #0x8
orr r0, r0, r3, asr #8
strh r0, [r4, #0x10]
ldr r0, [sp]
strh r2, [r7, #4]
str r1, [r0]
add r0, r4, #0xe
add sp, sp, #0xc
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0215451c
_021547d8: .word 0x00003fff
_021547dc: .word data_ov61_0217f73c
_021547e0: .word 0x00001fff
_021547e4: .word data_ov61_0217f414
.global func_ov61_021547e8
arm_func_start func_ov61_021547e8
func_ov61_021547e8: ; 0x021547e8
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r4, r0
ldrh r7, [r4, #0xe]
ldrh r6, [r4, #0xc]
ldrh lr, [r4, #0x12]
ldrh r5, [r4, #0x10]
mov r2, r6, lsl #0x8
mov r3, lr, lsl #0x8
mov ip, r5, lsl #0x8
mov r0, r7, lsl #0x8
orr r5, ip, r5, asr #8
orr lr, r3, lr, asr #8
orr r3, r2, r6, asr #8
orr ip, r0, r7, asr #8
mov r0, r5, lsl #0x10
mov r2, lr, lsl #0x10
mov r3, r3, lsl #0x10
mov ip, ip, lsl #0x10
mov lr, r0, lsr #0x10
mov r0, r2, lsr #0x10
mov r3, r3, lsr #0x10
mov r2, ip, lsr #0x10
orr r0, r0, lr, lsl #16
orr r2, r2, r3, lsl #16
mov r5, r1
cmp r0, r2
beq _0215490c
bl func_ov61_02152148
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldrh r1, [r4, #2]
mov r0, r1, lsl #0x8
orr r0, r0, r1, asr #8
mov r0, r0, lsl #0x10
cmp r5, r0, lsr #16
ldmloia sp!, {r3, r4, r5, r6, r7, pc}
ldrb r1, [r4]
mov r0, r4
mov r1, r1, lsl #0x1c
mov r1, r1, lsr #0x1a
bl func_ov61_02152028
ldr r1, _021549a4 ; =0x0000ffff
cmp r0, r1
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
ldrh ip, [r4, #0x12]
ldrh r3, [r4, #0x10]
ldr r2, _021549a8 ; =data_ov61_0217f414
mov r0, ip, lsl #0x8
mov r1, r3, lsl #0x8
orr r3, r1, r3, asr #8
orr r1, r0, ip, asr #8
mov r0, r3, lsl #0x10
mov r1, r1, lsl #0x10
mov r3, r0, lsr #0x10
mov r0, r1, lsr #0x10
ldr r1, [r2, #0x50]
orr r0, r0, r3, lsl #16
cmp r1, r0
bne _0215490c
ldrh ip, [r4, #0xe]
ldrh r3, [r4, #0xc]
sub r0, r4, #8
mov r1, ip, lsl #0x8
mov r2, r3, lsl #0x8
orr r3, r2, r3, asr #8
orr r2, r1, ip, asr #8
mov r1, r3, lsl #0x10
mov r2, r2, lsl #0x10
mov r3, r1, lsr #0x10
mov r1, r2, lsr #0x10
orr r1, r1, r3, lsl #16
mov r2, #1
bl func_ov61_021527ec
_0215490c:
add r1, sp, #0
mov r0, r4
bl func_ov61_0215451c
movs r4, r0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldrh r2, [r4, #2]
ldrb r3, [r4]
ldrb ip, [r4, #9]
mov r1, r2, lsl #0x8
orr r1, r1, r2, asr #8
mov r1, r1, lsl #0x10
mov r3, r3, lsl #0x1c
mov r2, r1, lsr #0x10
cmp ip, #0x11
add r1, r4, r3, lsr #26
sub r2, r2, r3, lsr #26
bne _02154958
bl func_ov61_02154310
b _02154984
_02154958:
ldr r3, _021549a8 ; =data_ov61_0217f414
ldr r3, [r3, #0x50]
cmp r3, #0
beq _02154984
cmp ip, #1
bne _02154978
bl func_ov61_02153568
b _02154984
_02154978:
cmp ip, #6
bne _02154984
bl func_ov61_021541f0
_02154984:
ldr r0, [sp]
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r1, _021549a8 ; =data_ov61_0217f414
sub r0, r4, #0xe
ldr r1, [r1, #0x40]
blx r1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_021547e8
_021549a4: .word 0x0000ffff
_021549a8: .word data_ov61_0217f414
.global func_ov61_021549ac
arm_func_start func_ov61_021549ac
func_ov61_021549ac: ; 0x021549ac
stmdb sp!, {r3, r4, r5, lr}
ldr r5, _02154a18 ; =0x00000806
add r4, sp, #0
_021549b8:
mov r0, r4
bl func_ov61_021524ac
ldr r3, [sp]
cmp r3, #0x22
bls _02154a10
ldrh r2, [r0, #0xc]
mov r1, r2, lsl #0x8
orr r1, r1, r2, asr #8
mov r1, r1, lsl #0x10
mov r1, r1, lsr #0x10
cmp r1, #0x800
beq _021549f4
cmp r1, r5
beq _02154a04
b _02154a10
_021549f4:
add r0, r0, #0xe
sub r1, r3, #0xe
bl func_ov61_021547e8
b _02154a10
_02154a04:
add r0, r0, #0xe
sub r1, r3, #0xe
bl func_ov61_02153220
_02154a10:
bl func_ov61_0215256c
b _021549b8
.align 2, 0
arm_func_end func_ov61_021549ac
_02154a18: .word 0x00000806
.global func_ov61_02154a1c
arm_func_start func_ov61_02154a1c
func_ov61_02154a1c: ; 0x02154a1c
stmdb sp!, {r4, r5, r6, r7, r8, lr}
ldr r0, _02154ab8 ; =data_027e02a0
ldr r2, _02154abc ; =data_ov61_0217f414
ldr r0, [r0, #8]
ldr r1, _02154ac0 ; =0x00001388
mov r4, #0x400
mov r3, #1
mov r5, #0
_02154a3c:
ldrh ip, [r2, #8]
mov r6, r5
add ip, ip, #1
strh ip, [r2, #8]
ldrh ip, [r2, #8]
cmp ip, #0x400
blo _02154a60
cmp ip, r1
blo _02154a64
_02154a60:
strh r4, [r2, #8]
_02154a64:
mov r7, r0
cmp r0, #0
beq _02154aa4
ldrh r8, [r2, #8]
_02154a74:
ldr lr, [r7, #0xa4]
cmp lr, #0
ldrne ip, [lr]
cmpne ip, #0
beq _02154a98
ldrh ip, [lr, #0xa]
cmp ip, r8
moveq r6, r3
beq _02154aa4
_02154a98:
ldr r7, [r7, #0x68]
cmp r7, #0
bne _02154a74
_02154aa4:
cmp r6, #0
bne _02154a3c
ldr r0, _02154abc ; =data_ov61_0217f414
ldrh r0, [r0, #8]
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02154a1c
_02154ab8: .word data_027e02a0
_02154abc: .word data_ov61_0217f414
_02154ac0: .word 0x00001388
.global func_ov61_02154ac4
arm_func_start func_ov61_02154ac4
func_ov61_02154ac4: ; 0x02154ac4
stmdb sp!, {r3, lr}
ldr r1, _02154b04 ; =data_ov61_0217f414
ldr r3, [r1, #0x70]
ldr r2, [r1, #0x68]
ldr r0, [r1, #0x6c]
umull lr, ip, r3, r2
mla ip, r3, r0, ip
ldr r0, [r1, #0x74]
ldr r3, [r1, #0x78]
mla ip, r0, r2, ip
ldr r0, [r1, #0x7c]
adds r2, r3, lr
str r2, [r1, #0x68]
adc r0, r0, ip
str r0, [r1, #0x6c]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02154ac4
_02154b04: .word data_ov61_0217f414
.global func_ov61_02154b08
arm_func_start func_ov61_02154b08
func_ov61_02154b08: ; 0x02154b08
ldr r1, _02154b18 ; =data_027e02a0
ldr r1, [r1, #4]
str r0, [r1, #0xa4]
bx lr
.align 2, 0
arm_func_end func_ov61_02154b08
_02154b18: .word data_027e02a0
.global func_ov61_02154b1c
arm_func_start func_ov61_02154b1c
func_ov61_02154b1c: ; 0x02154b1c
ldr r0, _02154b30 ; =data_027e02a0
mov r1, #0
ldr r0, [r0, #4]
str r1, [r0, #0xa4]
bx lr
.align 2, 0
arm_func_end func_ov61_02154b1c
_02154b30: .word data_027e02a0
.global func_ov61_02154b34
arm_func_start func_ov61_02154b34
func_ov61_02154b34: ; 0x02154b34
ldr r0, _02154b5c ; =data_027e02a0
ldr r0, [r0, #4]
ldr r1, [r0, #0xa4]
cmp r1, #0
bxeq lr
mov r0, #0xa
strb r0, [r1, #8]
mov r0, #0
str r0, [r1, #0x44]
bx lr
.align 2, 0
arm_func_end func_ov61_02154b34
_02154b5c: .word data_027e02a0
.global func_ov61_02154b60
arm_func_start func_ov61_02154b60
func_ov61_02154b60: ; 0x02154b60
stmdb sp!, {r4, lr}
ldr r3, _02154bb4 ; =data_027e02a0
ldr r3, [r3, #4]
ldr r4, [r3, #0xa4]
cmp r4, #0
ldmeqia sp!, {r4, pc}
ldr r3, _02154bb8 ; =0x7f000001
cmp r2, r3
ldreq r2, _02154bbc ; =data_ov61_0217f414
ldreq r2, [r2, #0x50]
cmp r0, #0
strh r1, [r4, #0x1a]
ldrh r1, [r4, #0x1a]
strh r1, [r4, #0x18]
str r2, [r4, #0x20]
str r2, [r4, #0x1c]
strneh r0, [r4, #0xa]
ldmneia sp!, {r4, pc}
bl func_ov61_02154a1c
strh r0, [r4, #0xa]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02154b60
_02154bb4: .word data_027e02a0
_02154bb8: .word 0x7f000001
_02154bbc: .word data_ov61_0217f414
.global func_ov61_02154bc0
arm_func_start func_ov61_02154bc0
func_ov61_02154bc0: ; 0x02154bc0
ldr r0, _02154bf0 ; =data_027e02a0
ldr r0, [r0, #4]
ldr r1, [r0, #0xa4]
cmp r1, #0
bxeq lr
str r0, [r1]
mov r0, #0
strb r0, [r1, #8]
str r0, [r1, #0x44]
str r0, [r1, #0x60]
str r0, [r1, #0x38]
bx lr
.align 2, 0
arm_func_end func_ov61_02154bc0
_02154bf0: .word data_027e02a0
.global func_ov61_02154bf4
arm_func_start func_ov61_02154bf4
func_ov61_02154bf4: ; 0x02154bf4
ldr r0, _02154c10 ; =data_027e02a0
ldr r0, [r0, #4]
ldr r1, [r0, #0xa4]
cmp r1, #0
movne r0, #0
strne r0, [r1]
bx lr
.align 2, 0
arm_func_end func_ov61_02154bf4
_02154c10: .word data_027e02a0
.global func_ov61_02154c14
arm_func_start func_ov61_02154c14
func_ov61_02154c14: ; 0x02154c14
ldr r1, _02154c28 ; =data_027e02a0
ldr r1, [r1, #4]
ldr r1, [r1, #0xa4]
str r1, [r0, #0xa4]
bx lr
.align 2, 0
arm_func_end func_ov61_02154c14
_02154c28: .word data_027e02a0
.global func_ov61_02154c2c
arm_func_start func_ov61_02154c2c
func_ov61_02154c2c: ; 0x02154c2c
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
bl func_ov61_02154ac4
str r0, [r5, #0x28]
mov r0, #1
strb r0, [r5, #8]
bl func_0200ee4c
mov r4, r0
mov r1, #1
mov r0, #0
str r1, [r5, #4]
bl func_0200d880
mov r0, r4
bl func_0200ee60
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02154c2c
.global func_ov61_02154c68
arm_func_start func_ov61_02154c68
func_ov61_02154c68: ; 0x02154c68
ldr r1, _02154c80 ; =data_027e02a0
ldr r1, [r1, #4]
ldr r1, [r1, #0xa4]
cmp r1, #0
strne r0, [r1, #0x38]
bx lr
.align 2, 0
arm_func_end func_ov61_02154c68
_02154c80: .word data_027e02a0
.global func_ov61_02154c84
arm_func_start func_ov61_02154c84
func_ov61_02154c84: ; 0x02154c84
stmdb sp!, {r3, lr}
ldr r0, _02154cb8 ; =data_027e02a0
ldr r0, [r0, #4]
ldr r0, [r0, #0xa4]
cmp r0, #0
ldmeqia sp!, {r3, pc}
ldrb r1, [r0, #9]
cmp r1, #0
beq _02154cb0
bl func_ov61_0215c408
ldmia sp!, {r3, pc}
_02154cb0:
bl func_ov61_02154c2c
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02154c84
_02154cb8: .word data_027e02a0
.global func_ov61_02154cbc
arm_func_start func_ov61_02154cbc
func_ov61_02154cbc: ; 0x02154cbc
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
mov r10, r0
bl func_ov61_02154ac4
mov r6, #2
ldr r4, _02154d60 ; =data_ov61_0217f414
mov r8, r0
mov r7, #0
mov r5, #1
mov r11, r6
_02154ce0:
str r8, [r10, #0x28]
strb r6, [r10, #8]
bl func_0200e8f8
mov r0, r0, lsr #0x10
orr r0, r0, r1, lsl #16
str r0, [r10, #0x10]
mov r0, r10
mov r1, r11
mov r2, #0x18
bl func_ov61_021538c4
bl func_0200ee4c
mov r9, r0
ldr r0, [r4, #0x50]
cmp r0, #0
beq _02154d28
mov r0, #0
str r5, [r10, #4]
bl func_0200d880
_02154d28:
mov r0, r9
bl func_0200ee60
ldrb r0, [r10, #8]
cmp r0, #4
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r0, [r4, #0x50]
cmp r0, #0
beq _02154d58
add r7, r7, #1
cmp r7, #3
blo _02154ce0
_02154d58:
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02154cbc
_02154d60: .word data_ov61_0217f414
.global func_ov61_02154d64
arm_func_start func_ov61_02154d64
func_ov61_02154d64: ; 0x02154d64
stmdb sp!, {r3, lr}
ldr r0, _02154da0 ; =data_027e02a0
ldr r0, [r0, #4]
ldr r0, [r0, #0xa4]
cmp r0, #0
beq _02154d98
ldrb r1, [r0, #9]
cmp r1, #0
beq _02154d90
bl func_ov61_0215c544
ldmia sp!, {r3, pc}
_02154d90:
bl func_ov61_02154cbc
ldmia sp!, {r3, pc}
_02154d98:
mov r0, #1
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02154d64
_02154da0: .word data_027e02a0
.global func_ov61_02154da4
arm_func_start func_ov61_02154da4
func_ov61_02154da4: ; 0x02154da4
ldr r2, _02154df0 ; =data_027e02a0
ldr r2, [r2, #4]
ldr r3, [r2, #0xa4]
cmp r3, #0
beq _02154de8
ldrb r2, [r3, #8]
cmp r2, #4
cmpne r2, #0xa
bne _02154de8
cmp r0, #0
ldrneh r2, [r3, #0x18]
strneh r2, [r0]
cmp r1, #0
ldrne r0, [r3, #0x14]
strne r0, [r1]
ldr r0, [r3, #0x1c]
bx lr
_02154de8:
mov r0, #0
bx lr
.align 2, 0
arm_func_end func_ov61_02154da4
_02154df0: .word data_027e02a0
.global func_ov61_02154df4
arm_func_start func_ov61_02154df4
func_ov61_02154df4: ; 0x02154df4
stmdb sp!, {r4, lr}
mov r4, r0
bl func_0200d9a4
ldrb r1, [r4, #8]
add r0, r1, #0xfd
and r0, r0, #0xff
cmp r0, #1
bhi _02154e2c
mov r0, r4
mov r1, #0x19
bl func_ov61_0215394c
mov r0, #7
strb r0, [r4, #8]
ldmia sp!, {r4, pc}
_02154e2c:
cmp r1, #0
ldmeqia sp!, {r4, pc}
mov r0, r4
mov r1, #0x1a
bl func_ov61_02153938
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02154df4
.global func_ov61_02154e44
arm_func_start func_ov61_02154e44
func_ov61_02154e44: ; 0x02154e44
stmdb sp!, {r4, lr}
ldr r0, _02154e7c ; =data_027e02a0
ldr r0, [r0, #4]
ldr r4, [r0, #0xa4]
cmp r4, #0
ldmeqia sp!, {r4, pc}
ldrb r0, [r4, #9]
cmp r0, #0
beq _02154e70
mov r0, r4
bl func_ov61_0215c9b4
_02154e70:
mov r0, r4
bl func_ov61_02154df4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02154e44
_02154e7c: .word data_027e02a0
.global func_ov61_02154e80
arm_func_start func_ov61_02154e80
func_ov61_02154e80: ; 0x02154e80
stmdb sp!, {r4, r5, r6, lr}
ldr r0, _02154f00 ; =data_027e02a0
ldr r0, [r0, #4]
ldr r4, [r0, #0xa4]
cmp r4, #0
ldmeqia sp!, {r4, r5, r6, pc}
ldrb r0, [r4, #9]
cmp r0, #0
beq _02154eac
mov r0, r4
bl func_ov61_0215ca34
_02154eac:
bl func_0200e8f8
mov r6, r0, lsr #0x10
orr r6, r6, r1, lsl #16
ldr r5, _02154f04 ; =data_ov61_0217f414
b _02154ec4
_02154ec0:
bl func_ov61_02151c08
_02154ec4:
ldr r0, [r5, #0x48]
blx r0
cmp r0, #0
ldrneb r0, [r4, #8]
cmpne r0, #0
beq _02154ef4
bl func_0200e8f8
mov r0, r0, lsr #0x10
orr r0, r0, r1, lsl #16
sub r0, r0, r6
cmp r0, #0x27
blt _02154ec0
_02154ef4:
mov r0, #0
strb r0, [r4, #8]
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02154e80
_02154f00: .word data_027e02a0
_02154f04: .word data_ov61_0217f414
.global func_ov61_02154f08
arm_func_start func_ov61_02154f08
func_ov61_02154f08: ; 0x02154f08
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r8, r1
mov r9, r0
bl func_0200ee4c
ldr r6, [r8, #0x44]
mov r7, r0
cmp r6, #0
bne _02154f48
mov r5, #3
mov r4, #0
_02154f30:
mov r0, r4
str r5, [r8, #4]
bl func_0200d880
ldr r6, [r8, #0x44]
cmp r6, #0
beq _02154f30
_02154f48:
mov r0, r7
bl func_0200ee60
str r6, [r9]
ldr r0, [r8, #0x40]
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
arm_func_end func_ov61_02154f08
.global func_ov61_02154f5c
arm_func_start func_ov61_02154f5c
func_ov61_02154f5c: ; 0x02154f5c
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r4, r1
ldr r1, [r4, #0x44]
mov r5, r0
cmp r1, #0
ldreqb r0, [r4, #8]
cmpeq r0, #4
bne _02154fbc
bl func_0200ee4c
mov r8, r0
mov r7, #2
mov r6, #0
b _02154f9c
_02154f90:
mov r0, r6
str r7, [r4, #4]
bl func_0200d880
_02154f9c:
ldr r0, [r4, #0x44]
cmp r0, #0
ldreqb r0, [r4, #8]
cmpeq r0, #4
beq _02154f90
mov r0, r8
bl func_0200ee60
b _02154fc0
_02154fbc:
bl func_0200d9a4
_02154fc0:
ldr r0, [r4, #0x44]
str r0, [r5]
cmp r0, #0
ldrne r0, [r4, #0x40]
moveq r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, pc}
arm_func_end func_ov61_02154f5c
.global func_ov61_02154fd8
arm_func_start func_ov61_02154fd8
func_ov61_02154fd8: ; 0x02154fd8
stmdb sp!, {r3, lr}
ldr r1, _02155038 ; =data_027e02a0
ldr r1, [r1, #4]
ldr r1, [r1, #0xa4]
cmp r1, #0
beq _02155028
ldrb r2, [r1, #8]
add r2, r2, #0xf6
and r2, r2, #0xff
cmp r2, #1
bhi _0215500c
bl func_ov61_02154f08
ldmia sp!, {r3, pc}
_0215500c:
ldrb r2, [r1, #9]
cmp r2, #0
beq _02155020
bl func_ov61_0215c598
ldmia sp!, {r3, pc}
_02155020:
bl func_ov61_02154f5c
ldmia sp!, {r3, pc}
_02155028:
mov r1, #0
str r1, [r0]
mov r0, r1
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02154fd8
_02155038: .word data_027e02a0
.global func_ov61_0215503c
arm_func_start func_ov61_0215503c
func_ov61_0215503c: ; 0x0215503c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r4, r1
mov r7, r0
bl func_0200ee4c
ldr r2, [r4, #0x44]
ldr r1, [r4, #0x3c]
mov r5, r0
cmp r2, r1
mov r6, #0
bne _0215506c
cmp r7, #0
movne r6, #1
_0215506c:
cmp r7, r2
movhs r0, #0
strhs r0, [r4, #0x44]
bhs _02155090
ldr r0, [r4, #0x40]
sub r2, r2, r7
add r1, r0, r7
str r2, [r4, #0x44]
bl func_020435b4
_02155090:
mov r0, r5
bl func_0200ee60
ldrb r0, [r4, #8]
cmp r0, #0xa
cmpne r0, #0xb
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, [r4, #0x44]
cmp r0, #0
beq _021550bc
cmp r6, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
_021550bc:
mov r0, r4
mov r1, #0x1b
bl func_ov61_02153938
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_0215503c
.global func_ov61_021550cc
arm_func_start func_ov61_021550cc
func_ov61_021550cc: ; 0x021550cc
stmdb sp!, {r3, lr}
ldr r1, _02155100 ; =data_027e02a0
ldr r1, [r1, #4]
ldr r1, [r1, #0xa4]
cmp r1, #0
ldmeqia sp!, {r3, pc}
ldrb r2, [r1, #9]
cmp r2, #0
beq _021550f8
bl func_ov61_0215c670
ldmia sp!, {r3, pc}
_021550f8:
bl func_ov61_0215503c
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021550cc
_02155100: .word data_027e02a0
.global func_ov61_02155104
arm_func_start func_ov61_02155104
func_ov61_02155104: ; 0x02155104
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
mov r8, r2
ldr r6, [r8, #0x34]
movs r11, r3
mov r10, r0
movne r5, #1
mov r0, r6, lsl #0x1
mov r9, r1
ldreqh r5, [r8, #0x2c]
add r7, r0, #4
b _021551a8
_02155130:
ldr r0, _021551c4 ; =data_ov61_0217f414
ldrh r4, [r8, #0x2e]
ldrh r0, [r0, #2]
ldr r1, [r8, #0x34]
cmp r4, r5
movhs r4, r5
cmp r0, r4
movlo r4, r0
cmp r11, #0
biceq r4, r4, #1
cmp r9, r4
sub r0, r1, r6
movlo r4, r9
adds r0, r7, r0
moveq r4, #0
mov r6, r1
sub r7, r0, #1
cmp r4, #0
beq _021551bc
mov r2, #0
str r2, [sp]
mov r0, r10
mov r1, r4
mov r2, r8
mov r3, #0x18
sub r5, r5, r4
bl func_ov61_02152f04
bl func_0200d9a4
add r10, r10, r4
sub r9, r9, r4
_021551a8:
cmp r9, #0
beq _021551bc
ldrb r0, [r8, #8]
cmp r0, #4
beq _02155130
_021551bc:
mov r0, r4
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02155104
_021551c4: .word data_ov61_0217f414
.global func_ov61_021551c8
arm_func_start func_ov61_021551c8
func_ov61_021551c8: ; 0x021551c8
stmdb sp!, {r3, r4, r5, lr}
mov r5, r2
mov r4, r3
ldr r2, [sp, #0x10]
ldr r3, [sp, #0x14]
bl func_ov61_02155104
cmp r0, #0
cmpne r4, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r2, [sp, #0x10]
mov r0, r5
mov r1, r4
mov r3, #0
bl func_ov61_02155104
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_021551c8
.global func_ov61_02155204
arm_func_start func_ov61_02155204
func_ov61_02155204: ; 0x02155204
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x14
mov r4, #0
mov r11, r0
ldr r8, [sp, #0x38]
mov r0, r4
str r4, [sp, #0x10]
mov r10, r1
mov r9, r2
str r3, [sp, #8]
mov r6, r4
str r0, [r8, #0x34]
bl func_0200e8f8
mov r0, r0, lsr #0x10
orr r0, r0, r1, lsl #16
str r0, [sp, #0xc]
b _021553a8
_02155248:
ldr r7, [r8, #0x28]
ldr r3, [sp, #8]
str r8, [sp]
mov r0, r11
mov r1, r10
mov r2, r9
str r6, [sp, #4]
bl func_ov61_021551c8
bl func_0200e8f8
mov r5, r0, lsr #0x10
ldr r4, _021553f4 ; =data_ov61_0217f414
orr r5, r5, r1, lsl #16
_02155278:
bl func_ov61_02151c08
ldr r0, [r4, #0x48]
blx r0
cmp r0, #0
beq _021552d0
ldrb r0, [r8, #8]
cmp r0, #4
bne _021552d0
ldr r1, [r8, #0x28]
ldr r0, [r8, #0x30]
cmp r1, r0
beq _021552d0
bl func_0200e8f8
mov r0, r0, lsr #0x10
orr r0, r0, r1, lsl #16
sub r0, r0, r5
cmp r0, #0xf
bge _021552d0
cmp r6, #0
ldrneh r0, [r8, #0x2c]
cmpne r0, #0
beq _02155278
_021552d0:
ldr r0, [r8, #0x30]
subs r5, r0, r7
ldr r0, [sp, #0x10]
add r0, r0, r5
str r0, [sp, #0x10]
beq _021552f8
bl func_0200e8f8
mov r0, r0, lsr #0x10
orr r0, r0, r1, lsl #16
str r0, [sp, #0xc]
_021552f8:
ldr r0, [r8, #0x30]
str r0, [r8, #0x28]
ldrb r0, [r8, #8]
cmp r0, #4
ldreqh r0, [r8, #0x2c]
cmpeq r0, #0
cmpeq r5, #0
bne _0215537c
cmp r6, #0
bne _02155380
bl func_0200e8f8
mov r7, r0, lsr #0x10
orr r7, r7, r1, lsl #16
ldr r4, _021553f4 ; =data_ov61_0217f414
b _02155344
_02155334:
bl func_ov61_02151c08
ldrh r0, [r8, #0x2c]
cmp r0, #0
bne _0215536c
_02155344:
ldr r0, [r4, #0x48]
blx r0
cmp r0, #0
beq _0215536c
bl func_0200e8f8
mov r0, r0, lsr #0x10
orr r0, r0, r1, lsl #16
sub r0, r0, r7
cmp r0, #0xf
blt _02155334
_0215536c:
ldrh r0, [r8, #0x2c]
cmp r0, #0
moveq r6, #1
b _02155380
_0215537c:
mov r6, #0
_02155380:
cmp r5, r10
addlo r11, r11, r5
sublo r10, r10, r5
blo _021553a8
sub r1, r5, r10
ldr r0, [sp, #8]
add r11, r9, r1
mov r9, #0
sub r10, r0, r1
str r9, [sp, #8]
_021553a8:
ldr r0, _021553f4 ; =data_ov61_0217f414
ldr r0, [r0, #0x48]
blx r0
cmp r0, #0
cmpne r10, #0
beq _021553e8
ldrb r0, [r8, #8]
cmp r0, #4
bne _021553e8
bl func_0200e8f8
mov r2, r0, lsr #0x10
ldr r0, [sp, #0xc]
orr r2, r2, r1, lsl #16
sub r0, r2, r0
cmp r0, #0x9f
blt _02155248
_021553e8:
ldr r0, [sp, #0x10]
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02155204
_021553f4: .word data_ov61_0217f414
.global func_ov61_021553f8
arm_func_start func_ov61_021553f8
func_ov61_021553f8: ; 0x021553f8
stmdb sp!, {r3, r4, r5, r6, r7, lr}
ldr ip, _021554c4 ; =data_027e02a0
mov r7, r1
ldr ip, [ip, #4]
mov r6, r2
ldr r4, [ip, #0xa4]
mov r5, r3
cmp r4, #0
beq _021554bc
ldrb ip, [r4, #8]
cmp ip, #0xa
bne _02155458
cmp r7, #0
beq _02155438
mov r2, r4
bl func_ov61_02152dc8
_02155438:
cmp r5, #0
beq _02155450
mov r0, r6
mov r1, r5
mov r2, r4
bl func_ov61_02152dc8
_02155450:
add r0, r7, r5
b _021554ac
_02155458:
cmp ip, #0xb
bne _02155490
cmp r7, #0
beq _02155470
mov r2, r4
bl func_ov61_02152d18
_02155470:
cmp r5, #0
beq _02155488
mov r0, r6
mov r1, r5
mov r2, r4
bl func_ov61_02152d18
_02155488:
add r0, r7, r5
b _021554ac
_02155490:
ldrb ip, [r4, #9]
cmp ip, #0
str r4, [sp]
beq _021554a8
bl func_ov61_0215c880
b _021554ac
_021554a8:
bl func_ov61_02155204
_021554ac:
ldr r1, _021554c8 ; =data_ov61_0217f414
ldrb r1, [r1]
cmp r1, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
_021554bc:
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_021553f8
_021554c4: .word data_027e02a0
_021554c8: .word data_ov61_0217f414
.global func_ov61_021554cc
arm_func_start func_ov61_021554cc
func_ov61_021554cc: ; 0x021554cc
stmdb sp!, {r3, r4, r5, lr}
ldr r3, _02155560 ; =data_027e02a0
mov r2, r0
ldr r4, [r3, #4]
mov r3, r1
ldr r5, [r4, #0xa4]
cmp r5, #0
beq _02155558
ldr r4, [r5, #0x60]
cmp r4, #0
beq _02155548
ldr r0, [r5, #0x5c]
mov r1, r4
bl func_ov61_021553f8
ldr r1, [r5, #0x60]
mov r4, r0
cmp r4, r1
bhs _02155538
ldr r0, [r5, #0x5c]
sub r2, r1, r4
add r1, r0, r4
bl func_020435b4
ldr r1, [r5, #0x60]
mov r0, #0
sub r1, r1, r4
str r1, [r5, #0x60]
ldmia sp!, {r3, r4, r5, pc}
_02155538:
mov r0, #0
str r0, [r5, #0x60]
sub r0, r4, r1
ldmia sp!, {r3, r4, r5, pc}
_02155548:
mov r2, #0
mov r3, r2
bl func_ov61_021553f8
ldmia sp!, {r3, r4, r5, pc}
_02155558:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_021554cc
_02155560: .word data_027e02a0
.global func_ov61_02155564
arm_func_start func_ov61_02155564
func_ov61_02155564: ; 0x02155564
stmdb sp!, {r3, lr}
ldr r0, _021555d0 ; =data_027e02a0
ldr r0, [r0, #4]
ldr r0, [r0, #0xa4]
cmp r0, #0
beq _021555c8
ldrb r1, [r0, #9]
cmp r1, #0
beq _02155590
bl func_ov61_0215c804
ldmia sp!, {r3, pc}
_02155590:
ldr r1, [r0, #0x44]
cmp r1, #0
bne _021555b8
ldrb r0, [r0, #8]
cmp r0, #4
beq _021555b8
add r0, r0, #0xf6
and r0, r0, #0xff
cmp r0, #1
bhi _021555c0
_021555b8:
mov r0, r1
ldmia sp!, {r3, pc}
_021555c0:
mvn r0, #0
ldmia sp!, {r3, pc}
_021555c8:
mov r0, #0
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02155564
_021555d0: .word data_027e02a0
.global func_ov61_021555d4
arm_func_start func_ov61_021555d4
func_ov61_021555d4: ; 0x021555d4
stmdb sp!, {r4, lr}
ldr r0, _02155610 ; =data_027e02a0
ldr r0, [r0, #4]
ldr r4, [r0, #0xa4]
cmp r4, #0
ldrne r1, [r4, #0x60]
cmpne r1, #0
ldmeqia sp!, {r4, pc}
mov r2, #0
ldr r0, [r4, #0x5c]
mov r3, r2
bl func_ov61_021553f8
mov r0, #0
str r0, [r4, #0x60]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021555d4
_02155610: .word data_027e02a0
.global func_ov61_02155614
arm_func_start func_ov61_02155614
func_ov61_02155614: ; 0x02155614
stmdb sp!, {r4, r5, r6, lr}
ldr r0, _021556b0 ; =data_ov61_0217f414
ldr r0, [r0, #0x18]
blx r0
ldr r0, _021556b0 ; =data_ov61_0217f414
ldr r0, [r0, #0x50]
cmp r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
bl func_ov61_02152680
mov r0, #0x64
bl func_0200db28
ldr r0, _021556b0 ; =data_ov61_0217f414
ldr r0, [r0, #0x50]
bl func_ov61_02152680
bl func_0200e8f8
mov r6, r0, lsr #0x10
orr r6, r6, r1, lsl #16
mov r5, #0x64
ldr r4, _021556b0 ; =data_ov61_0217f414
b _02155684
_02155664:
ldrb r0, [r4, #1]
cmp r0, #0
beq _0215567c
mov r0, #4
bl func_ov61_02151b04
ldmia sp!, {r4, r5, r6, pc}
_0215567c:
mov r0, r5
bl func_0200db28
_02155684:
ldr r0, [r4, #0x48]
blx r0
cmp r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
bl func_0200e8f8
mov r0, r0, lsr #0x10
orr r0, r0, r1, lsl #16
sub r0, r0, r6
cmp r0, #0x17
blt _02155664
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02155614
_021556b0: .word data_ov61_0217f414
.global func_ov61_021556b4
arm_func_start func_ov61_021556b4
func_ov61_021556b4: ; 0x021556b4
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
ldr r3, _02155a04 ; =data_ov61_0217f414
mov r1, #0
ldr r0, _02155a08 ; =data_ov61_0217f4f4
mov r2, #0x64
str r1, [r3, #0x44]
bl func_02007a44
ldr r1, _02155a04 ; =data_ov61_0217f414
mov r3, #0x180
ldr r0, _02155a0c ; =data_ov61_0217fac0
str r3, [r1, #0x11c]
str r0, [r1, #0x120]
ldr r2, _02155a10 ; =data_ov61_0217f940
str r3, [r1, #0x128]
ldr r0, _02155a08 ; =data_ov61_0217f4f4
str r2, [r1, #0x12c]
bl func_ov61_02154b08
mov r10, #1
ldr r0, _02155a04 ; =data_ov61_0217f414
mov r11, r10
str r10, [sp]
str r10, [r0, #0xc]
mov r4, #0
_02155710:
mov r0, #0x3e8
bl func_0200db28
ldr r0, _02155a04 ; =data_ov61_0217f414
ldr r1, [r0, #0x44]
cmp r1, #0
bne _021559e4
bl func_0200e8f8
ldr r2, _02155a04 ; =data_ov61_0217f414
mov r5, r0, lsr #0x10
ldr r0, [r2, #0x48]
orr r5, r5, r1, lsl #16
blx r0
cmp r0, #0
beq _0215583c
ldr r0, [sp]
subs r0, r0, #1
str r0, [sp]
bne _02155850
ldr r0, _02155a04 ; =data_ov61_0217f414
ldr r1, [r0, #0x10]
tst r1, #1
beq _0215577c
cmp r4, #0
bne _02155850
bl func_ov61_02155614
mov r4, #1
b _02155850
_0215577c:
cmp r4, #3
addls pc, pc, r4, lsl #2
b _02155850
_02155788: ; jump table
b _02155798 ; case 0
b _021557dc ; case 1
b _02155800 ; case 2
b _02155850 ; case 3
_02155798:
cmp r11, #0
movne r1, #2
strne r1, [r0, #0xc]
movne r11, #0
bl func_ov61_02156100
cmp r0, #0
beq _021557c8
add r0, sp, #0
mov r1, #0
bl func_ov61_02156158
cmp r0, #0
bne _021557d4
_021557c8:
bl func_ov61_02155614
mov r4, #3
b _02155850
_021557d4:
mov r4, #1
b _02155850
_021557dc:
add r0, sp, #0
mov r1, #1
bl func_ov61_02156158
cmp r0, #0
bne _02155850
ldr r0, [sp]
cmp r0, #0x3c
movlo r4, #2
b _02155850
_02155800:
add r0, sp, #0
mov r1, #2
bl func_ov61_02156158
cmp r0, #0
movne r4, #1
bne _02155850
ldr r0, [sp]
cmp r0, #0x3c
bhs _02155850
mov r0, #3
bl func_ov61_02151b04
mov r10, #1
str r10, [sp]
mov r4, #0
b _02155850
_0215583c:
mov r0, #1
bl func_ov61_02151b04
mov r10, #1
str r10, [sp]
mov r4, #0
_02155850:
mov r3, #0
ldr r6, _02155a14 ; =data_ov61_0217f494
ldr r1, _02155a18 ; =0x000003bd
mov r2, r3
_02155860:
ldr r0, [r6]
cmp r0, #0
beq _02155880
ldrh r0, [r6, #0xa]
sub r0, r5, r0
mov r0, r0, lsl #0x10
cmp r1, r0, asr #16
strlt r2, [r6]
_02155880:
add r3, r3, #1
cmp r3, #8
add r6, r6, #0xc
blt _02155860
ldr r0, _02155a04 ; =data_ov61_0217f414
ldr r0, [r0, #0x2c]
cmp r0, #0
beq _021558b0
subs r10, r10, #1
bne _021558b0
bl func_ov61_02152680
mov r10, #0x69
_021558b0:
ldr r0, _02155a1c ; =data_027e02a0
ldr r9, [r0, #8]
cmp r9, #0
beq _02155978
mov r6, #0
mov r7, r6
mov r8, #1
_021558cc:
ldr r0, [r9, #0xa4]
cmp r0, #0
ldrne r1, [r0]
cmpne r1, #0
beq _0215596c
ldrb r1, [r0, #8]
cmp r1, #3
bne _02155914
ldr r2, [r0, #0x10]
sub r2, r5, r2
cmp r2, #0x27
ble _02155914
strb r8, [r0, #8]
ldrh r1, [r0, #0x1a]
strh r1, [r0, #0x18]
ldr r1, [r0, #0x20]
str r1, [r0, #0x1c]
b _0215596c
_02155914:
cmp r1, #2
bne _0215594c
ldr r2, [r0, #0x10]
sub r2, r5, r2
cmp r2, #0x27
ble _0215594c
ldr r1, [r0, #4]
cmp r1, #1
bne _0215596c
strb r7, [r0, #8]
str r7, [r0, #4]
ldr r0, [r0]
bl func_0200d938
b _0215596c
_0215594c:
cmp r1, #4
beq _0215596c
ldr r1, [r0, #4]
cmp r1, #2
bne _0215596c
str r6, [r0, #4]
ldr r0, [r0]
bl func_0200d938
_0215596c:
ldr r9, [r9, #0x68]
cmp r9, #0
bne _021558cc
_02155978:
mov r9, #0
ldr r8, _02155a20 ; =data_ov61_0217f73c
ldr r6, _02155a04 ; =data_ov61_0217f414
mov r7, r9
_02155988:
ldrh r0, [r8, #4]
cmp r0, #0
beq _021559b4
ldr r0, [r8, #0x2c]
sub r0, r5, r0
cmp r0, #0xef
ble _021559b4
ldr r0, [r8, #0x34]
ldr r1, [r6, #0x40]
blx r1
strh r7, [r8, #4]
_021559b4:
add r9, r9, #1
cmp r9, #8
add r8, r8, #0x38
blt _02155988
mov r0, r5
bl func_ov61_0215ca9c
ldr r0, _02155a04 ; =data_ov61_0217f414
ldr r0, [r0, #0x3c]
cmp r0, #0
beq _02155710
blx r0
b _02155710
_021559e4:
ldr r0, [r0, #0x10]
tst r0, #1
bne _021559fc
cmp r4, #3
beq _021559fc
bl func_ov61_02156254
_021559fc:
bl func_ov61_02154b1c
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_021556b4
_02155a04: .word data_ov61_0217f414
_02155a08: .word data_ov61_0217f4f4
_02155a0c: .word data_ov61_0217fac0
_02155a10: .word data_ov61_0217f940
_02155a14: .word data_ov61_0217f494
_02155a18: .word 0x000003bd
_02155a1c: .word data_027e02a0
_02155a20: .word data_ov61_0217f73c
.global func_ov61_02155a24
arm_func_start func_ov61_02155a24
func_ov61_02155a24: ; 0x02155a24
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r5, r1
mov r4, r2
mov r1, #0
mov r2, #0xec
mov r6, r0
bl func_02007a44
ldr r0, _02155b94 ; =0x00000101
mov r1, #6
strh r0, [r6]
ldr r0, _02155b98 ; =data_ov61_0217f414
strb r1, [r6, #2]
ldr r3, [r0, #0x70]
ldr r2, [r0, #0x68]
ldr r1, [r0, #0x6c]
umull lr, ip, r3, r2
mla ip, r3, r1, ip
ldr r1, [r0, #0x74]
ldr r7, [r0, #0x78]
mla ip, r1, r2, ip
ldr r3, [r0, #0x7c]
adds r7, r7, lr
adc r1, r3, ip
str r7, [r0, #0x68]
str r1, [r0, #0x6c]
mov r0, r1, lsr #0x10
mov r0, r0, lsl #0x10
mov r3, r0, lsr #0x10
cmp r4, #0
mov r2, r3, lsl #0x8
mov r0, r1, lsl #0x10
strne r1, [r4]
mov r1, r0, lsr #0x10
orr r2, r2, r3, asr #8
mov r0, r1, lsl #0x8
strh r2, [r6, #4]
orr r0, r0, r1, asr #8
strh r0, [r6, #6]
ldr r2, _02155b98 ; =data_ov61_0217f414
ldr r0, _02155b9c ; =data_ov61_0217f8fc
ldr r1, [r2, #0x50]
mov r1, r1, lsr #0x10
mov r1, r1, lsl #0x10
mov r3, r1, lsr #0x10
mov r1, r3, lsl #0x8
orr r1, r1, r3, asr #8
strh r1, [r6, #0xc]
ldr r2, [r2, #0x50]
add r1, r6, #0x1c
mov r2, r2, lsl #0x10
mov r3, r2, lsr #0x10
mov r2, r3, lsl #0x8
orr r3, r2, r3, asr #8
mov r2, #6
strh r3, [r6, #0xe]
bl func_02007ad8
ldr r0, _02155ba0 ; =0x00008263
ldr r1, _02155ba4 ; =0x00006353
strh r0, [r6, #0xec]
strh r1, [r6, #0xee]
ldr r0, _02155ba8 ; =0x00000135
mov r1, #7
strh r0, [r6, #0xf0]
strb r5, [r6, #0xf2]
mov r0, #0x3d
strb r0, [r6, #0xf3]
strb r1, [r6, #0xf4]
mov r3, #1
ldr r0, _02155b9c ; =data_ov61_0217f8fc
add r1, r6, #0xf6
mov r2, #6
strb r3, [r6, #0xf5]
bl func_02007ad8
mov r1, #0xc
strb r1, [r6, #0xfc]
mov r2, #0xa
ldr r0, _02155bac ; =data_ov61_0217bc1c
add r1, r6, #0xfe
strb r2, [r6, #0xfd]
bl func_02007ad8
mov r1, #0x37
strb r1, [r6, #0x108]
mov r2, #3
add r0, r6, #0xd
strb r2, [r6, #0x109]
mov r1, #1
strb r1, [r6, #0x10a]
strb r2, [r6, #0x10b]
mov r1, #6
strb r1, [r6, #0x10c]
add r0, r0, #0x100
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02155a24
_02155b94: .word 0x00000101
_02155b98: .word data_ov61_0217f414
_02155b9c: .word data_ov61_0217f8fc
_02155ba0: .word 0x00008263
_02155ba4: .word 0x00006353
_02155ba8: .word 0x00000135
_02155bac: .word data_ov61_0217bc1c
.global func_ov61_02155bb0
arm_func_start func_ov61_02155bb0
func_ov61_02155bb0: ; 0x02155bb0
stmdb sp!, {r3, r4, r5, lr}
mov ip, r0
mov r5, r2
cmp r3, r1
bhs _02155bdc
sub r4, r1, r3
mov r0, r5
mov r1, ip
mov r2, r4
bl func_02007a44
add r5, r5, r4
_02155bdc:
mov r0, r5
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02155bb0
.global func_ov61_02155be4
arm_func_start func_ov61_02155be4
func_ov61_02155be4: ; 0x02155be4
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
ldr r4, _02155ca0 ; =data_ov61_0217f96a
add r2, sp, #0
mov r0, r4
mov r1, #1
bl func_ov61_02155a24
ldr r1, _02155ca4 ; =data_ov61_0217f414
mov ip, r0
ldr r0, [r1, #0x34]
cmp r0, #0
beq _02155c68
mov r0, #0x32
strb r0, [ip]
mov r0, #4
strb r0, [ip, #1]
ldr r0, [r1, #0x34]
mov r0, r0, lsr #0x10
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
mov r0, r0, asr #0x8
strb r0, [ip, #2]
ldr r0, [r1, #0x34]
mov r0, r0, lsr #0x10
strb r0, [ip, #3]
ldr r0, [r1, #0x34]
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
mov r0, r0, asr #0x8
strb r0, [ip, #4]
ldr r0, [r1, #0x34]
strb r0, [ip, #5]
add ip, ip, #6
_02155c68:
add r2, ip, #1
mov lr, #0xff
sub r3, r2, r4
mov r0, #0
mov r1, #0x12c
strb lr, [ip]
bl func_ov61_02155bb0
mov r1, r0
mov r0, r4
sub r1, r1, r4
bl func_ov61_021554cc
ldr r0, [sp]
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
.align 2, 0
arm_func_end func_ov61_02155be4
_02155ca0: .word data_ov61_0217f96a
_02155ca4: .word data_ov61_0217f414
.global func_ov61_02155ca8
arm_func_start func_ov61_02155ca8
func_ov61_02155ca8: ; 0x02155ca8
stmdb sp!, {r3, r4, r5, lr}
ldr r4, _02155da8 ; =data_ov61_0217f96a
mov r5, r0
add r2, sp, #0
mov r0, r4
mov r1, #3
bl func_ov61_02155a24
mov ip, r0
cmp r5, #0
bne _02155d74
mov r0, #0x32
strb r0, [ip]
mov r0, #4
ldr r2, _02155dac ; =data_ov61_0217f414
strb r0, [ip, #1]
ldr r1, [r2, #0x34]
mov r3, #0x36
mov r1, r1, lsr #0x10
mov r1, r1, lsl #0x10
mov r1, r1, lsr #0x10
mov r1, r1, asr #0x8
strb r1, [ip, #2]
ldr r1, [r2, #0x34]
mov r1, r1, lsr #0x10
strb r1, [ip, #3]
ldr r1, [r2, #0x34]
mov r1, r1, lsl #0x10
mov r1, r1, lsr #0x10
mov r1, r1, asr #0x8
strb r1, [ip, #4]
ldr r1, [r2, #0x34]
strb r1, [ip, #5]
strb r3, [ip, #6]
strb r0, [ip, #7]
ldr r0, [r2, #0x20]
mov r0, r0, lsr #0x10
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
mov r0, r0, asr #0x8
strb r0, [ip, #8]
ldr r0, [r2, #0x20]
mov r0, r0, lsr #0x10
strb r0, [ip, #9]
ldr r0, [r2, #0x20]
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
mov r0, r0, asr #0x8
strb r0, [ip, #0xa]
ldr r0, [r2, #0x20]
strb r0, [ip, #0xb]
add ip, ip, #0xc
_02155d74:
add r2, ip, #1
mov lr, #0xff
sub r3, r2, r4
mov r0, #0
mov r1, #0x12c
strb lr, [ip]
bl func_ov61_02155bb0
mov r1, r0
mov r0, r4
sub r1, r1, r4
bl func_ov61_021554cc
ldr r0, [sp]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02155ca8
_02155da8: .word data_ov61_0217f96a
_02155dac: .word data_ov61_0217f414
.global func_ov61_02155db0
arm_func_start func_ov61_02155db0
func_ov61_02155db0: ; 0x02155db0
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #8
add r1, r1, #1
str r0, [sp]
rsb r11, r1, r1, lsl #4
bl func_0200e8f8
mov r4, r0, lsr #0x10
orr r4, r4, r1, lsl #16
mov r5, #0
b _021560b8
_02155dd8:
bl func_ov61_02155564
cmp r0, #0
bne _02155dec
bl func_ov61_02151c08
b _021560b8
_02155dec:
add r0, sp, #4
bl func_ov61_02154fd8
ldr r1, [sp, #4]
mov r6, r0
cmp r1, #0xf0
bls _021560b0
ldrb r0, [r6]
cmp r0, #2
bne _021560b0
ldrh r3, [r6, #6]
ldrh r2, [r6, #4]
mov r0, r3, lsl #0x8
mov r1, r2, lsl #0x8
orr r2, r1, r2, asr #8
orr r1, r0, r3, asr #8
mov r0, r2, lsl #0x10
mov r1, r1, lsl #0x10
mov r2, r0, lsr #0x10
mov r0, r1, lsr #0x10
orr r1, r0, r2, lsl #16
ldr r0, [sp]
cmp r0, r1
bne _021560b0
ldr r1, _021560f8 ; =data_ov61_0217f8fc
add r0, r6, #0x1c
bl func_ov61_021521c8
cmp r0, #0
bne _021560b0
ldrb r3, [r6, #0x10]
ldrb r2, [r6, #0x11]
ldrb r1, [r6, #0x12]
ldrb r0, [r6, #0x13]
orr r3, r2, r3, lsl #8
ldrb r2, [r6, #0xec]
orr r1, r0, r1, lsl #8
mov r0, r3, lsl #0x10
mov r1, r1, lsl #0x10
mov r5, r0, lsr #0x10
mov r0, r1, lsr #0x10
cmp r2, #0x63
orr r2, r0, r5, lsl #16
ldreqb r0, [r6, #0xed]
ldr r3, [sp, #4]
mov r5, #3
cmpeq r0, #0x82
ldreqb r0, [r6, #0xee]
add r1, r6, r3
cmpeq r0, #0x53
ldreqb r0, [r6, #0xef]
addeq r3, r6, #0xf0
cmpeq r0, #0x63
bne _021560b0
mov r0, #0
mov r9, #2
mov r10, #1
ldr ip, _021560fc ; =data_ov61_0217f414
b _0215609c
_02155ed0:
cmp r6, #0
beq _0215609c
cmp r6, #0x33
bgt _02155f0c
bge _02156004
cmp r6, #6
bgt _02156090
cmp r6, #1
blt _02156090
beq _02155f28
cmp r6, #3
beq _02155f5c
cmp r6, #6
beq _02155f90
b _02156090
_02155f0c:
cmp r6, #0x35
bgt _02155f1c
beq _02156038
b _02156090
_02155f1c:
cmp r6, #0x36
beq _02156060
b _02156090
_02155f28:
ldrb lr, [r3, #1]
ldrb r8, [r3, #2]
ldrb r7, [r3, #3]
ldrb r6, [r3, #4]
orr r8, r8, lr, lsl #8
mov r8, r8, lsl #0x10
orr r6, r6, r7, lsl #8
mov r6, r6, lsl #0x10
mov r7, r8, lsr #0x10
mov r6, r6, lsr #0x10
orr r6, r6, r7, lsl #16
str r6, [ip, #0x1c]
b _02156090
_02155f5c:
ldrb lr, [r3, #1]
ldrb r8, [r3, #2]
ldrb r7, [r3, #3]
ldrb r6, [r3, #4]
orr r8, r8, lr, lsl #8
mov r8, r8, lsl #0x10
orr r6, r6, r7, lsl #8
mov r6, r6, lsl #0x10
mov r7, r8, lsr #0x10
mov r6, r6, lsr #0x10
orr r6, r6, r7, lsl #16
str r6, [ip, #0x2c]
b _02156090
_02155f90:
ldrb r6, [r3]
cmp r6, #8
strlo r0, [ip, #0x64]
blo _02155fd0
ldrb lr, [r3, #5]
ldrb r8, [r3, #6]
ldrb r7, [r3, #7]
ldrb r6, [r3, #8]
orr r8, r8, lr, lsl #8
mov r8, r8, lsl #0x10
orr r6, r6, r7, lsl #8
mov r6, r6, lsl #0x10
mov r7, r8, lsr #0x10
mov r6, r6, lsr #0x10
orr r6, r6, r7, lsl #16
str r6, [ip, #0x64]
_02155fd0:
ldrb lr, [r3, #1]
ldrb r8, [r3, #2]
ldrb r7, [r3, #3]
ldrb r6, [r3, #4]
orr r8, r8, lr, lsl #8
mov r8, r8, lsl #0x10
orr r6, r6, r7, lsl #8
mov r6, r6, lsl #0x10
mov r7, r8, lsr #0x10
mov r6, r6, lsr #0x10
orr r6, r6, r7, lsl #16
str r6, [ip, #0x60]
b _02156090
_02156004:
ldrb lr, [r3, #1]
ldrb r8, [r3, #2]
ldrb r7, [r3, #3]
ldrb r6, [r3, #4]
orr r8, r8, lr, lsl #8
mov r8, r8, lsl #0x10
orr r6, r6, r7, lsl #8
mov r6, r6, lsl #0x10
mov r7, r8, lsr #0x10
mov r6, r6, lsr #0x10
orr r6, r6, r7, lsl #16
str r6, [ip, #0x4c]
b _02156090
_02156038:
ldrb r6, [r3, #1]
cmp r6, #2
beq _02156054
cmp r6, #5
moveq r5, r9
streq r2, [ip, #0x50]
b _02156090
_02156054:
mov r5, r10
str r2, [ip, #0x34]
b _02156090
_02156060:
ldrb r8, [r3, #1]
ldrb r7, [r3, #2]
ldrb r6, [r3, #3]
ldrb lr, [r3, #4]
orr r7, r7, r8, lsl #8
mov r7, r7, lsl #0x10
orr r6, lr, r6, lsl #8
mov r6, r6, lsl #0x10
mov r7, r7, lsr #0x10
mov r6, r6, lsr #0x10
orr r6, r6, r7, lsl #16
str r6, [ip, #0x20]
_02156090:
ldrb r6, [r3]
add r6, r6, #1
add r3, r3, r6
_0215609c:
cmp r3, r1
bhs _021560b0
ldrb r6, [r3], #1
cmp r6, #0xff
bne _02155ed0
_021560b0:
ldr r0, [sp, #4]
bl func_ov61_021550cc
_021560b8:
ldr r0, _021560fc ; =data_ov61_0217f414
ldr r0, [r0, #0x48]
blx r0
cmp r0, #0
beq _021560ec
cmp r5, #0
bne _021560ec
bl func_0200e8f8
mov r0, r0, lsr #0x10
orr r0, r0, r1, lsl #16
sub r0, r0, r4
cmp r0, r11
blt _02155dd8
_021560ec:
mov r0, r5
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02155db0
_021560f8: .word data_ov61_0217f8fc
_021560fc: .word data_ov61_0217f414
.global func_ov61_02156100
arm_func_start func_ov61_02156100
func_ov61_02156100: ; 0x02156100
stmdb sp!, {r3, r4, r5, lr}
bl func_ov61_02154bc0
bl func_ov61_02154b34
mov r1, #0x43
sub r2, r1, #0x44
mov r0, #0x44
bl func_ov61_02154b60
mov r5, #0
_02156120:
bl func_ov61_02155be4
mov r1, r5
bl func_ov61_02155db0
mov r4, r0
cmp r4, #1
beq _02156144
add r5, r5, #1
cmp r5, #4
blt _02156120
_02156144:
bl func_ov61_02154bf4
cmp r4, #1
moveq r0, #1
movne r0, #0
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02156100
.global func_ov61_02156158
arm_func_start func_ov61_02156158
func_ov61_02156158: ; 0x02156158
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r4, r1
mov r5, r0
bl func_ov61_02154bc0
bl func_ov61_02154b34
cmp r4, #1
mov r0, #0x44
bne _0215618c
ldr r1, _02156250 ; =data_ov61_0217f414
ldr r2, [r1, #0x20]
mov r1, #0x43
bl func_ov61_02154b60
b _02156198
_0215618c:
mov r1, #0x43
sub r2, r1, #0x44
bl func_ov61_02154b60
_02156198:
mov r7, #0
_0215619c:
mov r0, r4
bl func_ov61_02155ca8
mov r1, r7
bl func_ov61_02155db0
movs r6, r0
bne _021561c0
add r7, r7, #1
cmp r7, #4
blt _0215619c
_021561c0:
bl func_ov61_02154bf4
cmp r6, #2
bne _021561f4
ldr r1, _02156250 ; =data_ov61_0217f414
mov r0, #1
ldr r2, [r1, #0x4c]
mov r2, r2, lsr #0x1
str r2, [r5]
ldr r2, [r1, #0x4c]
add r2, r2, r2, lsl #1
mov r2, r2, lsr #0x3
str r2, [r1, #0x38]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021561f4:
ldr r0, _02156250 ; =data_ov61_0217f414
cmp r4, #1
ldr r1, [r0, #0x38]
mov r1, r1, lsr #0x1
str r1, [r0, #0x38]
str r1, [r5]
beq _0215621c
cmp r4, #2
beq _0215623c
b _02156248
_0215621c:
cmp r1, #0x3c
bhs _02156248
mov r1, #1
str r1, [r5]
ldr r1, [r0, #0x4c]
mov r1, r1, lsr #0x3
str r1, [r0, #0x38]
b _02156248
_0215623c:
cmp r1, #0x3c
movlo r0, #1
strlo r0, [r5]
_02156248:
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02156158
_02156250: .word data_ov61_0217f414
.global func_ov61_02156254
arm_func_start func_ov61_02156254
func_ov61_02156254: ; 0x02156254
stmdb sp!, {r4, lr}
bl func_ov61_02154bc0
bl func_ov61_02154b34
ldr r1, _021562b8 ; =data_ov61_0217f414
mov r0, #0x44
ldr r2, [r1, #0x20]
mov r1, #0x43
bl func_ov61_02154b60
ldr r4, _021562bc ; =data_ov61_0217f96a
mov r1, #7
mov r0, r4
mov r2, #0
bl func_ov61_02155a24
mov r1, #0xff
add r2, r0, #1
strb r1, [r0]
mov r0, #0
mov r1, #0x12c
sub r3, r2, r4
bl func_ov61_02155bb0
sub r1, r0, r4
mov r0, r4
bl func_ov61_021554cc
bl func_ov61_02154bf4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02156254
_021562b8: .word data_ov61_0217f414
_021562bc: .word data_ov61_0217f96a
.global func_ov61_021562c0
arm_func_start func_ov61_021562c0
func_ov61_021562c0: ; 0x021562c0
ldrb r2, [r0], #1
cmp r2, #0
bxeq lr
_021562cc:
and r1, r2, #0xc0
cmp r1, #0xc0
addeq r0, r0, #1
bxeq lr
add r0, r0, r2
ldrb r2, [r0], #1
cmp r2, #0
bne _021562cc
bx lr
arm_func_end func_ov61_021562c0
.global func_ov61_021562f0
arm_func_start func_ov61_021562f0
func_ov61_021562f0: ; 0x021562f0
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x40
mov r9, r2
mov r2, r9, lsl #0x8
mov r10, r1
orr r1, r2, r9, asr #8
strh r1, [sp, #4]
cmp r10, #0x20
mov r6, #0
movne r1, #1
strneh r1, [sp, #6]
ldreq r1, _02156590 ; =0x00001001
strh r6, [sp, #0xa]
streqh r1, [sp, #6]
mov r1, #0x100
strh r1, [sp, #8]
add r1, sp, #0x10
strh r6, [sp, #0xc]
strh r6, [sp, #0xe]
str r6, [sp]
ldrb r7, [r0], #1
mov r11, r3
ldr r8, [sp, #0x68]
add r2, r1, #1
cmp r7, #0
beq _021563b8
mov r4, r6
add r5, sp, #4
mov r3, r6
_02156364:
cmp r7, #0x2e
beq _02156394
sub r6, r2, r5
cmp r6, #0x3c
addge sp, sp, #0x40
mvnge r0, #0
ldmgeia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
add r6, r4, #1
mov r4, r6
str r6, [sp]
strb r7, [r2], #1
b _021563ac
_02156394:
strb r6, [r1]
mov r1, r2
mov r4, r3
mov r6, r3
str r3, [sp]
add r2, r2, #1
_021563ac:
ldrb r7, [r0], #1
cmp r7, #0
bne _02156364
_021563b8:
ldr r0, [sp]
mov r3, #0
strb r0, [r1]
strb r3, [r2]
mov r0, r10, lsr #0x8
strb r0, [r2, #1]
strb r10, [r2, #2]
strb r3, [r2, #3]
mov r3, #1
add r0, sp, #4
add r1, r2, #5
sub r1, r1, r0
strb r3, [r2, #4]
bl func_ov61_021554cc
mov r4, #0
bl func_0200e8f8
mov r5, r0, lsr #0x10
orr r5, r5, r1, lsl #16
b _02156550
_02156404:
bl func_ov61_02155564
cmp r0, #0
bne _02156418
bl func_ov61_02151c08
b _02156550
_02156418:
add r0, sp, #0
bl func_ov61_02154fd8
ldr r1, [sp]
cmp r1, #0xc
bls _02156548
ldrh r3, [r0]
mov r2, r3, lsl #0x8
orr r2, r2, r3, asr #8
mov r2, r2, lsl #0x10
cmp r9, r2, lsr #16
bne _02156548
ldrb r2, [r0, #3]
and r2, r2, #0xf
cmp r2, #3
mvneq r4, #0
beq _02156548
cmp r2, #0
bne _02156548
ldrb r3, [r0, #4]
ldrb r2, [r0, #5]
add r6, r0, r1
add r0, r0, #0xc
orr r1, r2, r3, lsl #8
mov r1, r1, lsl #0x10
movs r1, r1, lsr #0x10
sub r7, r1, #1
beq _02156498
_02156484:
bl func_ov61_021562c0
cmp r7, #0
add r0, r0, #4
sub r7, r7, #1
bne _02156484
_02156498:
cmp r0, r6
bhs _02156548
_021564a0:
bl func_ov61_021562c0
ldrb r7, [r0, #8]
ldrb r1, [r0, #9]
ldrb r3, [r0]
ldrb r2, [r0, #1]
orr r1, r1, r7, lsl #8
mov r1, r1, lsl #0x10
orr r2, r2, r3, lsl #8
mov r2, r2, lsl #0x10
cmp r10, r2, lsr #16
mov r2, r1, lsr #0x10
bne _02156538
cmp r10, #0xc
beq _02156518
add r4, r0, #8
add r0, r0, #6
add r6, r4, r2
add r1, r0, r2
ldrb r3, [r0, r2]
ldrb r0, [r1, #1]
ldrb r2, [r4, r2]
ldrb r1, [r6, #1]
orr r0, r0, r3, lsl #8
mov r0, r0, lsl #0x10
orr r1, r1, r2, lsl #8
mov r1, r1, lsl #0x10
mov r2, r0, lsr #0x10
mov r0, r1, lsr #0x10
orr r4, r0, r2, lsl #16
b _02156548
_02156518:
cmp r2, r8
movhi r4, #2
bhi _02156548
mov r1, r11
add r0, r0, #0xa
bl func_02007ad8
mov r4, #1
b _02156548
_02156538:
add r1, r2, #0xa
add r0, r0, r1
cmp r0, r6
blo _021564a0
_02156548:
ldr r0, [sp]
bl func_ov61_021550cc
_02156550:
ldr r0, _02156594 ; =data_ov61_0217f414
ldr r0, [r0, #0x48]
blx r0
cmp r0, #0
beq _02156584
cmp r4, #0
bne _02156584
bl func_0200e8f8
mov r0, r0, lsr #0x10
orr r0, r0, r1, lsl #16
sub r0, r0, r5
cmp r0, #0xf
blt _02156404
_02156584:
mov r0, r4
add sp, sp, #0x40
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_021562f0
_02156590: .word 0x00001001
_02156594: .word data_ov61_0217f414
.global func_ov61_02156598
arm_func_start func_ov61_02156598
func_ov61_02156598: ; 0x02156598
str r0, [r1]
mov ip, #0
mov r2, #0xa
_021565a4:
ldrb r3, [r0]
sub r3, r3, #0x30
and r3, r3, #0xff
cmp r3, #9
mlals ip, r2, ip, r3
addls r0, r0, #1
strls r0, [r1]
bls _021565a4
mov r0, ip
bx lr
arm_func_end func_ov61_02156598
.global func_ov61_021565cc
arm_func_start func_ov61_021565cc
func_ov61_021565cc: ; 0x021565cc
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
sub sp, sp, #4
mov r5, #0
mov r8, r0
mov r7, r1
mov r6, r5
add r4, sp, #0
_021565e8:
mov r0, r8
mov r1, r4
bl func_ov61_02156598
ldr r2, [sp]
cmp r8, r2
addeq sp, sp, #4
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc}
mov r8, r2
cmp r0, #0xff
bhi _0215663c
cmp r6, #3
ldrneb r1, [r2]
addne r8, r2, #1
cmpne r1, #0x2e
bne _0215663c
cmp r6, #3
bne _02156648
ldrb r1, [r8]
cmp r1, #0
beq _02156648
_0215663c:
add sp, sp, #4
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
_02156648:
add r6, r6, #1
cmp r6, #4
orr r5, r0, r5, lsl #8
blt _021565e8
str r5, [r7]
mov r0, #1
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
arm_func_end func_ov61_021565cc
.global func_ov61_02156668
arm_func_start func_ov61_02156668
func_ov61_02156668: ; 0x02156668
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
movs r5, r1
mov r6, r0
mov r4, r2
addeq sp, sp, #4
mvneq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, pc}
bl func_ov61_02154bc0
bl func_ov61_02154b34
mov r2, r5
mov r0, #0
mov r1, #0x35
bl func_ov61_02154b60
mov r0, r6
mov r2, r4
mov r3, #0
str r3, [sp]
mov r1, #1
bl func_ov61_021562f0
mov r4, r0
bl func_ov61_02154bf4
mov r0, r4
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
arm_func_end func_ov61_02156668
.global func_ov61_021566cc
arm_func_start func_ov61_021566cc
func_ov61_021566cc: ; 0x021566cc
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0xc
ldr r2, _021567fc ; =data_ov61_0217f414
mov r6, #0
ldr r5, [r2, #0x70]
ldr r3, [r2, #0x68]
ldr r1, [r2, #0x6c]
umull r8, r7, r5, r3
ldr r9, [r2, #0x78]
mla r7, r5, r1, r7
ldr r4, [r2, #0x74]
adds r11, r9, r8
mla r7, r4, r3, r7
ldr r8, [r2, #0x7c]
umull r3, r1, r5, r11
adc r10, r8, r7
mla r1, r5, r10, r1
str r11, [r2, #0x68]
mov r7, r6, lsl #0x10
adds r5, r9, r3
mla r1, r4, r11, r1
str r10, [r2, #0x6c]
orr r7, r7, r10, lsr #16
adc r4, r8, r1
mov r3, r6, lsl #0x10
str r5, [r2, #0x68]
orr r3, r3, r4, lsr #16
add r1, sp, #8
mov r10, r0
strh r7, [sp, #2]
str r4, [r2, #0x6c]
strh r3, [sp, #4]
bl func_ov61_021565cc
cmp r0, #0
ldrne r0, [sp, #8]
addne sp, sp, #0xc
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
mov r0, #1
mov r11, r6
ldr r7, _02156800 ; =data_ov61_0217f474
strb r0, [sp]
strb r0, [sp, #1]
add r6, sp, #2
mov r5, r11
mvn r4, #0
_02156780:
mov r8, #0
add r9, sp, #0
_02156788:
ldrb r0, [r9]
cmp r0, #0
beq _021567c0
mov r0, r8, lsl #0x1
ldrh r2, [r6, r0]
ldr r1, [r7, r8, lsl #2]
mov r0, r10
bl func_ov61_02156668
cmp r0, #0
str r0, [sp, #8]
cmpne r0, r4
bne _021567dc
cmp r0, r4
streqb r5, [r9]
_021567c0:
add r8, r8, #1
cmp r8, #2
add r9, r9, #1
blt _02156788
add r11, r11, #1
cmp r11, #3
blt _02156780
_021567dc:
ldr r1, [sp, #8]
mvn r0, #0
cmp r1, r0
moveq r0, #0
streq r0, [sp, #8]
ldr r0, [sp, #8]
add sp, sp, #0xc
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_021566cc
_021567fc: .word data_ov61_0217f414
_02156800: .word data_ov61_0217f474
.global func_ov61_02156804
arm_func_start func_ov61_02156804
func_ov61_02156804: ; 0x02156804
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, _02156838 ; =data_02000bf0
bl func_02000b60
ldr r0, _0215683c ; =data_ov61_0217bc28
ldr r1, [r0]
cmp r1, #0
movne r0, #0
ldmneia sp!, {r4, pc}
str r4, [r0]
bl func_ov61_02156880
bl func_ov61_02156840
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02156804
_02156838: .word data_02000bf0
_0215683c: .word data_ov61_0217bc28
.global func_ov61_02156840
arm_func_start func_ov61_02156840
func_ov61_02156840: ; 0x02156840
stmdb sp!, {r4, lr}
ldr r0, _02156874 ; =data_ov61_0217bc28
ldr r0, [r0]
ldr r0, [r0, #0x20]
bl func_ov61_02156a78
movs r4, r0
bmi _0215686c
ldr r0, _02156878 ; =data_ov61_0217bc60
bl func_ov61_02156dac
ldr r1, _0215687c ; =data_ov61_02180c40
str r0, [r1, #0xc]
_0215686c:
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02156840
_02156874: .word data_ov61_0217bc28
_02156878: .word data_ov61_0217bc60
_0215687c: .word data_ov61_02180c40
.global func_ov61_02156880
arm_func_start func_ov61_02156880
func_ov61_02156880: ; 0x02156880
stmdb sp!, {r3, r4, r5, lr}
ldr r0, _021569b4 ; =data_ov61_0217bc28
ldr r4, _021569b8 ; =data_ov61_02180c50
ldr r5, [r0]
mov r0, r4
mov r1, #0
mov r2, #0x30
bl func_02007a44
ldr r1, [r5, #0x18]
ldr r0, _021569bc ; =data_ov61_02180c40
ldr r2, _021569c0 ; =func_ov61_02156a60
str r1, [r0, #0x14]
ldr r3, [r5, #0x1c]
mov r1, #0
str r3, [r0, #0x18]
str r2, [r0, #0x20]
str r1, [r0, #0x24]
str r1, [r0, #0x28]
ldr r1, [r0]
str r1, [r0, #0x3c]
ldr r0, [r5, #0x24]
cmp r0, #0
moveq r0, #0x4000
str r0, [r4, #0x20]
ldr r0, [r5, #0x28]
cmp r0, #0
bne _02156900
ldr r1, _021569b4 ; =data_ov61_0217bc28
ldr r0, [r4, #0x20]
ldr r1, [r1]
ldr r1, [r1, #0x18]
blx r1
_02156900:
str r0, [r4, #0x1c]
ldr r1, [r5, #0x30]
ldr lr, [r5, #0x34]
cmp r1, #0
moveq r1, #0x240
sub ip, r1, #0x28
cmp lr, #0
moveq lr, #0x10c0
ldr r2, _021569c4 ; =data_ov61_0217bc48
add r0, lr, lr, lsr #31
ldr r1, _021569c8 ; =data_ov61_0217f464
mov r3, #0
strh lr, [r2, #2]
mov r0, r0, asr #0x1
strh r0, [r2, #4]
str ip, [r4, #0x24]
str r3, [r1]
ldr r0, [r5]
mov r2, #1
cmp r0, #0
beq _02156974
ldr r1, _021569cc ; =func_ov61_02156a48
ldr r0, _021569bc ; =data_ov61_02180c40
str r3, [r4]
str r1, [r4, #0xc]
str r2, [r0, #8]
ldr r0, [r0, #4]
str r0, [r4, #0x28]
b _02156988
_02156974:
ldr r0, _021569bc ; =data_ov61_02180c40
ldr r1, _021569d0 ; =func_ov61_021569dc
str r3, [r0, #8]
str r2, [r4]
str r1, [r4, #0xc]
_02156988:
ldr r0, [r5, #0x2c]
cmp r0, #0
moveq r0, #0xb
bl func_ov61_02151f20
ldr r0, _021569d4 ; =func_ov61_02152454
bl func_ov61_02161104
ldr r0, _021569d8 ; =func_ov61_021588b4
bl func_ov61_02151ec8
mov r0, r4
bl func_ov61_02151c3c
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02156880
_021569b4: .word data_ov61_0217bc28
_021569b8: .word data_ov61_02180c50
_021569bc: .word data_ov61_02180c40
_021569c0: .word func_ov61_02156a60
_021569c4: .word data_ov61_0217bc48
_021569c8: .word data_ov61_0217f464
_021569cc: .word func_ov61_02156a48
_021569d0: .word func_ov61_021569dc
_021569d4: .word func_ov61_02152454
_021569d8: .word func_ov61_021588b4
.global func_ov61_021569dc
arm_func_start func_ov61_021569dc
func_ov61_021569dc: ; 0x021569dc
ldr r0, _02156a30 ; =data_ov61_0217bc28
ldr r1, _02156a34 ; =data_ov61_0217f464
ldr ip, [r0]
ldr r0, _02156a38 ; =data_ov61_0217f430
ldr r3, [ip, #4]
ldr r2, _02156a3c ; =data_ov61_0217f440
str r3, [r1]
ldr r3, [ip, #8]
ldr r1, _02156a40 ; =data_ov61_0217f474
str r3, [r0]
ldr r3, [ip, #0xc]
ldr r0, _02156a44 ; =data_ov61_02180c40
str r3, [r2]
ldr r2, [ip, #0x10]
str r2, [r1]
ldr r2, [ip, #0x14]
str r2, [r1, #4]
ldr r1, [r0, #8]
orr r1, r1, #2
str r1, [r0, #8]
bx lr
.align 2, 0
arm_func_end func_ov61_021569dc
_02156a30: .word data_ov61_0217bc28
_02156a34: .word data_ov61_0217f464
_02156a38: .word data_ov61_0217f430
_02156a3c: .word data_ov61_0217f440
_02156a40: .word data_ov61_0217f474
_02156a44: .word data_ov61_02180c40
.global func_ov61_02156a48
arm_func_start func_ov61_02156a48
func_ov61_02156a48: ; 0x02156a48
ldr r0, _02156a5c ; =data_ov61_02180c40
ldr r1, [r0, #8]
orr r1, r1, #2
str r1, [r0, #8]
bx lr
.align 2, 0
arm_func_end func_ov61_02156a48
_02156a5c: .word data_ov61_02180c40
.global func_ov61_02156a60
arm_func_start func_ov61_02156a60
func_ov61_02156a60: ; 0x02156a60
stmdb sp!, {r3, lr}
bl func_ov61_02161060
cmp r0, #0
movne r0, #1
moveq r0, #0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02156a60
.global func_ov61_02156a78
arm_func_start func_ov61_02156a78
func_ov61_02156a78: ; 0x02156a78
stmdb sp!, {r4, r5, r6, lr}
mov r4, r0
mov r0, #0x2c
mul r1, r4, r0
ldr r0, _02156b00 ; =data_ov61_0217bc28
mov r2, r4, lsl #0x2
add r2, r2, #3
ldr r0, [r0]
add r1, r1, #3
bic r5, r2, #3
bic r2, r1, #3
ldr r1, [r0, #0x18]
add r0, r2, r5
blx r1
movs r6, r0
mvneq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
ldr r0, _02156b04 ; =data_ov61_02180c84
mov r1, r6
mov r2, r4
bl func_0200ddb4
cmp r4, #0
add r5, r6, r5
ble _02156af0
_02156ad8:
mov r0, r5
bl func_ov61_02156bbc
sub r4, r4, #1
cmp r4, #0
add r5, r5, #0x2c
bgt _02156ad8
_02156af0:
ldr r1, _02156b08 ; =data_ov61_02180c80
mov r0, #0
str r6, [r1]
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02156a78
_02156b00: .word data_ov61_0217bc28
_02156b04: .word data_ov61_02180c84
_02156b08: .word data_ov61_02180c80
.global func_ov61_02156b0c
arm_func_start func_ov61_02156b0c
func_ov61_02156b0c: ; 0x02156b0c
stmdb sp!, {r3, lr}
ldr r0, _02156b4c ; =data_ov61_02180c80
ldr r2, [r0, #0x20]
ldr r1, [r0, #0x18]
cmp r2, r1
mvnlt r0, #0
ldmltia sp!, {r3, pc}
ldr r1, _02156b50 ; =data_ov61_0217bc28
ldr r0, [r0]
ldr r1, [r1]
ldr r1, [r1, #0x1c]
blx r1
ldr r1, _02156b4c ; =data_ov61_02180c80
mov r0, #0
str r0, [r1]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02156b0c
_02156b4c: .word data_ov61_02180c80
_02156b50: .word data_ov61_0217bc28
.global func_ov61_02156b54
arm_func_start func_ov61_02156b54
func_ov61_02156b54: ; 0x02156b54
stmdb sp!, {r3, lr}
mov r2, r0
ldr r0, _02156b78 ; =data_ov61_02180c84
add r1, sp, #0
bl func_0200de70
cmp r0, #0
ldrne r0, [sp]
moveq r0, #0
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02156b54
_02156b78: .word data_ov61_02180c84
.global func_ov61_02156b7c
arm_func_start func_ov61_02156b7c
func_ov61_02156b7c: ; 0x02156b7c
stmdb sp!, {r4, r5, r6, lr}
mov r4, r2
mov r6, r0
mov r0, r4
mov r5, r1
bl func_ov61_02156b54
cmp r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
str r6, [r0]
str r5, [r0, #4]
mov r1, #0
str r1, [r0, #8]
ldrsb r1, [r5, #0x73]
strb r1, [r0, #0xc]
strb r4, [r0, #0xd]
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02156b7c
.global func_ov61_02156bbc
arm_func_start func_ov61_02156bbc
func_ov61_02156bbc: ; 0x02156bbc
stmdb sp!, {r3, lr}
movs r1, r0
ldmeqia sp!, {r3, pc}
ldr r0, _02156bd8 ; =data_ov61_02180c84
mov r2, #0
bl func_0200dddc
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02156bbc
_02156bd8: .word data_ov61_02180c84
.global func_ov61_02156bdc
arm_func_start func_ov61_02156bdc
func_ov61_02156bdc: ; 0x02156bdc
ldr r1, [r0, #0x64]
cmp r1, #0
ldreq r1, [r0, #0x68]
mov r0, r1
bx lr
arm_func_end func_ov61_02156bdc
.global func_ov61_02156bf0
arm_func_start func_ov61_02156bf0
func_ov61_02156bf0: ; 0x02156bf0
stmdb sp!, {r3, r4, r5, lr}
movs r5, r1
beq _02156c08
ldrsb r1, [r5, #0xd]
tst r1, #1
beq _02156c10
_02156c08:
mov r2, #1
b _02156c14
_02156c10:
mov r2, #0
_02156c14:
mov r1, r5
bl func_0200dddc
movs r4, r0
bne _02156c2c
mov r0, r5
bl func_ov61_02156bbc
_02156c2c:
cmp r4, #0
movne r0, #0
mvneq r0, #0x29
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02156bf0
.global func_ov61_02156c3c
arm_func_start func_ov61_02156c3c
func_ov61_02156c3c: ; 0x02156c3c
stmdb sp!, {r4, lr}
mov r4, r1
bl func_ov61_02156bdc
mov r1, r4
bl func_ov61_02156bf0
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02156c3c
.global func_ov61_02156c54
arm_func_start func_ov61_02156c54
func_ov61_02156c54: ; 0x02156c54
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x28
mov r4, r1
ldrsb r2, [r4, #0xd]
mov r5, r0
cmp r2, #1
bne _02156ca8
add r0, sp, #8
add r1, sp, #0
mov r2, #1
bl func_0200ddb4
add r2, sp, #8
mov r0, r5
mov r1, r4
str r2, [r4, #8]
bl func_ov61_02156bf0
add r0, sp, #8
add r1, sp, #4
mov r2, #1
bl func_0200de70
b _02156cb8
_02156ca8:
mov r2, #0
str r2, [r4, #8]
bl func_ov61_02156bf0
str r0, [sp, #4]
_02156cb8:
ldr r0, [sp, #4]
add sp, sp, #0x28
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02156c54
.global func_ov61_02156cc4
arm_func_start func_ov61_02156cc4
func_ov61_02156cc4: ; 0x02156cc4
ldr ip, _02156cd0 ; =func_ov61_02156c54
ldr r0, [r0, #0x64]
bx ip
.align 2, 0
arm_func_end func_ov61_02156cc4
_02156cd0: .word func_ov61_02156c54
.global func_ov61_02156cd4
arm_func_start func_ov61_02156cd4
func_ov61_02156cd4: ; 0x02156cd4
ldr ip, _02156ce0 ; =func_ov61_02156c54
ldr r0, [r0, #0x68]
bx ip
.align 2, 0
arm_func_end func_ov61_02156cd4
_02156ce0: .word func_ov61_02156c54
.global func_ov61_02156ce4
arm_func_start func_ov61_02156ce4
func_ov61_02156ce4: ; 0x02156ce4
stmdb sp!, {r4, lr}
mov r4, r1
bl func_ov61_02156bdc
mov r1, r4
bl func_ov61_02156c54
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02156ce4
.global func_ov61_02156cfc
arm_func_start func_ov61_02156cfc
func_ov61_02156cfc: ; 0x02156cfc
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, lr}
sub sp, sp, #4
mov r4, #0
mov r9, r0
mov r10, r4
add r6, sp, #0
mov r5, #1
_02156d18:
mov r0, r9
mov r1, r6
mov r2, r5
bl func_0200dfb0
ldr r0, [sp]
cmp r0, #0
addeq sp, sp, #4
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, pc}
ldr r1, [r0]
blx r1
mov r8, r0
bl func_0200ee4c
mov r7, r0
bl func_0200dc28
mov r0, r9
mov r1, r4
mov r2, r4
bl func_0200de70
ldr r0, [sp]
ldr r0, [r0, #4]
cmp r0, #0
strne r8, [r0, #0x6c]
ldr r0, [sp]
ldr r0, [r0, #8]
cmp r0, #0
beq _02156d8c
mov r1, r8
mov r2, r10
bl func_0200dddc
_02156d8c:
ldr r0, [sp]
bl func_ov61_02156bbc
bl func_0200dc5c
mov r0, r7
bl func_0200ee60
b _02156d18
arm_func_end func_ov61_02156cfc
_02156da4:
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, pc}
.global func_ov61_02156dac
arm_func_start func_ov61_02156dac
func_ov61_02156dac: ; 0x02156dac
stmdb sp!, {r4, lr}
bl func_ov61_02156e5c
movs r4, r0
mvneq r0, #0x30
ldmeqia sp!, {r4, pc}
ldr r0, _02156de4 ; =func_ov61_02156de8
mov r1, r4
mov r2, #1
bl func_ov61_02156b7c
mov r1, r0
mov r0, r4
bl func_ov61_02156ce4
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02156dac
_02156de4: .word func_ov61_02156de8
.global func_ov61_02156de8
arm_func_start func_ov61_02156de8
func_ov61_02156de8: ; 0x02156de8
stmdb sp!, {r4, lr}
ldr r4, [r0, #4]
mov r0, r4
bl func_ov61_02154b08
ldrsb r0, [r4, #0x73]
ldr r1, [r4, #0x68]
cmp r0, #4
addls pc, pc, r0, lsl #2
b _02156e48
_02156e0c: ; jump table
b _02156e20 ; case 0
b _02156e30 ; case 1
b _02156e44 ; case 2
b _02156e48 ; case 3
b _02156e20 ; case 4
_02156e20:
add r0, r1, #0x20
bl func_ov61_02154c14
bl func_ov61_02154bc0
b _02156e48
_02156e30:
bl func_ov61_02154bc0
bl func_ov61_02154b34
ldr r0, _02156e58 ; =func_ov61_02157cfc
bl func_ov61_02154c68
b _02156e48
_02156e44:
bl func_ov61_02154b34
_02156e48:
mov r0, #1
strh r0, [r4, #0x70]
mov r0, #0
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02156de8
_02156e58: .word func_ov61_02157cfc
.global func_ov61_02156e5c
arm_func_start func_ov61_02156e5c
func_ov61_02156e5c: ; 0x02156e5c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
bl func_ov61_02156ec4
mov r4, r0
bl func_0200ee4c
ldr r1, _02156ec0 ; =data_ov61_0217bc28
mov r6, r0
ldr r1, [r1]
mov r0, r4
ldr r1, [r1, #0x18]
blx r1
movs r5, r0
beq _02156eb0
mov r2, r4
mov r1, #0
bl func_02007a44
mov r0, r5
mov r1, r7
bl func_ov61_02156f6c
mov r0, r5
bl func_ov61_02158d74
_02156eb0:
mov r0, r6
bl func_0200ee60
mov r0, r5
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02156e5c
_02156ec0: .word data_ov61_0217bc28
.global func_ov61_02156ec4
arm_func_start func_ov61_02156ec4
func_ov61_02156ec4: ; 0x02156ec4
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldrh r0, [r5, #2]
mov r4, #0x80
cmp r0, #0
beq _02156f00
add r4, r4, #0x114
bl func_ov61_02158d68
add r4, r4, r0
ldrh r0, [r5, #8]
bl func_ov61_02158d68
add r4, r4, r0
add r0, r5, #0x10
bl func_ov61_02156f44
add r4, r4, r0
_02156f00:
ldrh r0, [r5, #6]
cmp r0, #0
beq _02156f3c
add r4, r4, #0x110
bl func_ov61_02158d68
add r4, r4, r0
ldrh r0, [r5, #0xa]
bl func_ov61_02158d68
add r4, r4, r0
ldrh r0, [r5, #0xc]
bl func_ov61_02158d68
add r4, r4, r0
add r0, r5, #0x14
bl func_ov61_02156f44
add r4, r4, r0
_02156f3c:
mov r0, r4
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02156ec4
.global func_ov61_02156f44
arm_func_start func_ov61_02156f44
func_ov61_02156f44: ; 0x02156f44
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldrb r0, [r5, #3]
mov r0, r0, lsl #0x2
bl func_ov61_02158d68
mov r4, r0
ldrh r0, [r5]
bl func_ov61_02158d68
add r0, r4, r0
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02156f44
.global func_ov61_02156f6c
arm_func_start func_ov61_02156f6c
func_ov61_02156f6c: ; 0x02156f6c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r5, r1
ldrsb r1, [r5]
mov r6, r0
add r4, r6, #0x80
strb r1, [r6, #0x73]
ldrsb r0, [r5, #1]
strb r0, [r6, #0x72]
ldrh r0, [r5, #2]
cmp r0, #0
beq _02156fec
str r4, [r6, #0x64]
ldrh r2, [r5, #4]
mov r1, r4
add r0, r4, #0x114
strh r2, [r4, #0xfc]
add r2, r5, #0x10
mov r7, r4
bl func_ov61_02157090
ldrh r2, [r5, #2]
add r1, r6, #0x3c
bl func_ov61_02157068
ldrh r2, [r5, #8]
add r1, r6, #0x50
bl func_ov61_02157068
ldrh r3, [r5, #0xe]
add r1, r7, #0x100
mov r2, #0
strh r3, [r1, #0xa]
str r2, [r7, #0x110]
mov r4, r0
str r2, [r7, #0x10c]
_02156fec:
ldrh r0, [r5, #6]
cmp r0, #0
beq _0215704c
str r4, [r6, #0x68]
mov r1, r4
str r6, [r4, #0x10c]
add r0, r4, #0x110
add r2, r5, #0x14
mov r7, r4
bl func_ov61_02157090
ldrh r2, [r5, #6]
add r1, r6, #0x48
bl func_ov61_02157068
ldrh r2, [r5, #0xa]
add r1, r6, #0x58
bl func_ov61_02157068
ldrh r2, [r5, #0xc]
add r1, r4, #0xf8
bl func_ov61_02157068
mov r1, #0
str r1, [r7, #0x108]
mov r4, r0
str r1, [r7, #0x104]
b _0215705c
_0215704c:
ldr r0, _02157064 ; =data_ov61_02180c4c
ldr r0, [r0]
ldr r0, [r0, #0x68]
str r0, [r6, #0x68]
_0215705c:
mov r0, r4
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02156f6c
_02157064: .word data_ov61_02180c4c
.global func_ov61_02157068
arm_func_start func_ov61_02157068
func_ov61_02157068: ; 0x02157068
stmdb sp!, {r4, lr}
mov r4, r0
cmp r2, #0
moveq r0, #0
str r0, [r1, #4]
mov r0, r2
str r2, [r1]
bl func_ov61_02158d68
add r0, r4, r0
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02157068
.global func_ov61_02157090
arm_func_start func_ov61_02157090
func_ov61_02157090: ; 0x02157090
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #8
mov r5, r2
mov r7, r0
mov r0, r5
mov r6, r1
bl func_ov61_02156f44
mov r4, r0
ldrb r2, [r5, #3]
mov r0, r6
mov r1, r7
bl func_0200ddb4
add r0, r6, #0xe0
bl func_0200e02c
ldrh r2, [r5]
add r0, r6, #0x20
ldr r1, _02157100 ; =func_ov61_02156cfc
str r2, [sp]
ldrb ip, [r5, #2]
mov r2, r6
add r3, r7, r4
str ip, [sp, #4]
blx func_0200d5e4
add r0, r6, #0x20
bl func_0200d938
add r0, r7, r4
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02157090
_02157100: .word func_ov61_02156cfc
.global func_ov61_02157104
arm_func_start func_ov61_02157104
func_ov61_02157104: ; 0x02157104
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_02158e2c
cmp r0, #0
mvnne r0, #0x1b
ldmneia sp!, {r4, pc}
cmp r4, #0
mov r1, #0
beq _02157134
ldrsh r0, [r4, #0x70]
tst r0, #1
movne r1, #1
_02157134:
cmp r1, #0
mvneq r0, #0x26
ldmeqia sp!, {r4, pc}
ldrsh r0, [r4, #0x70]
tst r0, #2
mvnne r0, #0x1b
ldmneia sp!, {r4, pc}
ldrsb r0, [r4, #0x73]
mov r1, #1
cmp r0, #0
cmpne r0, #4
movne r1, #0
cmp r1, #0
mvneq r0, #0x1b
ldmeqia sp!, {r4, pc}
ldrsb r0, [r4, #0x72]
cmp r0, #1
moveq r0, #0
mvnne r0, #5
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02157104
.global func_ov61_02157184
arm_func_start func_ov61_02157184
func_ov61_02157184: ; 0x02157184
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r6, r0
mov r5, r1
mov r4, r2
bl func_ov61_02158e2c
cmp r0, #0
mvnne r0, #0x1b
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
cmp r6, #0
mov r1, #0
beq _021571bc
ldrsh r0, [r6, #0x70]
tst r0, #1
movne r1, #1
_021571bc:
cmp r1, #0
mvneq r0, #0x26
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldrsh r0, [r6, #0x70]
tst r0, #2
mvnne r0, #0x1b
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
ldrsb r0, [r6, #0x73]
mov r1, #1
cmp r0, #0
cmpne r0, #4
movne r1, #0
cmp r1, #0
mvneq r0, #0x1b
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldrsb r0, [r6, #0x72]
cmp r0, #1
mvnne r0, #5
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, _02157244 ; =data_ov61_0217bc48
bl func_ov61_02156dac
movs r7, r0
ldmmiia sp!, {r3, r4, r5, r6, r7, pc}
ldrh r1, [r6, #0x74]
bl func_ov61_02157390
cmp r0, #0
ldmltia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, r7
mov r1, r5
mov r2, r4
bl func_ov61_02157248
cmp r0, #0
movge r0, r7
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02157184
_02157244: .word data_ov61_0217bc48
.global func_ov61_02157248
arm_func_start func_ov61_02157248
func_ov61_02157248: ; 0x02157248
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
mov r4, r2
bl func_ov61_02158e2c
cmp r0, #0
mvnne r0, #0x1b
ldmneia sp!, {r4, r5, r6, pc}
cmp r6, #0
mov r1, #0
beq _02157280
ldrsh r0, [r6, #0x70]
tst r0, #1
movne r1, #1
_02157280:
cmp r1, #0
mvneq r0, #0x26
ldmeqia sp!, {r4, r5, r6, pc}
ldrsh r0, [r6, #0x70]
tst r0, #2
mvnne r0, #0x1b
ldmneia sp!, {r4, r5, r6, pc}
ldrsb r0, [r6, #0x73]
mov r1, #1
cmp r0, #0
cmpne r0, #4
movne r1, #0
cmp r1, #0
mvneq r0, #0x1b
ldmeqia sp!, {r4, r5, r6, pc}
ldrsb r2, [r6, #0x72]
cmp r2, #1
mvnne r0, #5
ldmneia sp!, {r4, r5, r6, pc}
ldrh r0, [r6, #0x74]
cmp r0, #0
mvneq r0, #0x1b
ldmeqia sp!, {r4, r5, r6, pc}
ldr r0, _02157314 ; =func_ov61_02157318
mov r1, r6
bl func_ov61_02156b7c
mov r1, r0
ldrh r2, [r6, #0x74]
mov r0, r6
strh r2, [r1, #0x10]
str r5, [r1, #0x14]
str r4, [r1, #0x18]
ldrsh r2, [r6, #0x70]
orr r2, r2, #2
strh r2, [r6, #0x70]
bl func_ov61_02156cc4
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02157248
_02157314: .word func_ov61_02157318
.global func_ov61_02157318
arm_func_start func_ov61_02157318
func_ov61_02157318: ; 0x02157318
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #8
mov r6, r0
ldr r4, [r6, #4]
ldr r5, [r4, #0x64]
add r0, r5, #0xe0
bl func_0200e044
mov r1, #0
ldrh r0, [r6, #0x10]
mov r2, r1
bl func_ov61_02154b60
bl func_ov61_02154c84
mov r2, #0
add r0, sp, #0
add r1, sp, #4
str r2, [r5, #0xf8]
bl func_ov61_02154da4
ldrh r2, [sp]
ldr r1, [r6, #0x14]
strh r2, [r1]
ldr r1, [r6, #0x18]
str r0, [r1]
ldrsh r1, [r4, #0x70]
add r0, r5, #0xe0
orr r1, r1, #4
strh r1, [r4, #0x70]
bl func_0200e0c8
mov r0, #0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02157318
.global func_ov61_02157390
arm_func_start func_ov61_02157390
func_ov61_02157390: ; 0x02157390
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
bl func_ov61_02158e2c
cmp r0, #0
mvnne r0, #0x1b
ldmneia sp!, {r3, r4, r5, pc}
cmp r5, #0
mov r1, #0
beq _021573c4
ldrsh r0, [r5, #0x70]
tst r0, #1
movne r1, #1
_021573c4:
cmp r1, #0
mvneq r0, #0x26
ldmeqia sp!, {r3, r4, r5, pc}
ldrsh r0, [r5, #0x70]
tst r0, #2
mvnne r0, #6
ldmneia sp!, {r3, r4, r5, pc}
strh r4, [r5, #0x74]
ldrsb r0, [r5, #0x73]
cmp r0, #1
movne r0, #0
ldmneia sp!, {r3, r4, r5, pc}
mov r0, r5
bl func_ov61_021574e8
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02157390
.global func_ov61_02157400
arm_func_start func_ov61_02157400
func_ov61_02157400: ; 0x02157400
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
mov r4, r2
bl func_ov61_02158e2c
cmp r0, #0
bne _02157428
ldrsh r0, [r6, #0x70]
tst r0, #8
beq _02157430
_02157428:
mvn r0, #0x1b
ldmia sp!, {r4, r5, r6, pc}
_02157430:
cmp r6, #0
mov r1, #0
beq _02157448
ldrsh r0, [r6, #0x70]
tst r0, #1
movne r1, #1
_02157448:
cmp r1, #0
mvneq r0, #0x26
ldmeqia sp!, {r4, r5, r6, pc}
ldrsb r0, [r6, #0x73]
mov r1, #1
cmp r0, #0
cmpne r0, #4
movne r1, #0
cmp r1, #0
beq _021574d4
ldrsh r0, [r6, #0x70]
tst r0, #4
beq _02157490
ldrsb r0, [r6, #0x72]
cmp r0, #1
mvneq r0, #0x1d
movne r0, #0
ldmia sp!, {r4, r5, r6, pc}
_02157490:
ldrsh r0, [r6, #0x70]
tst r0, #2
beq _021574b4
ldrsh r0, [r6, #0x70]
tst r0, #0x40
ldrne r0, [r6, #0x6c]
ldreq r0, _021574e4 ; =data_ov61_0217bc2c
ldreq r0, [r0]
ldmia sp!, {r4, r5, r6, pc}
_021574b4:
strh r5, [r6, #0x76]
mov r0, r6
str r4, [r6, #0x78]
bl func_ov61_021574e8
ldrsb r1, [r6, #0x72]
cmp r1, #1
mvnne r0, #0x19
ldmia sp!, {r4, r5, r6, pc}
_021574d4:
strh r5, [r6, #0x76]
str r4, [r6, #0x78]
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02157400
_021574e4: .word data_ov61_0217bc2c
.global func_ov61_021574e8
arm_func_start func_ov61_021574e8
func_ov61_021574e8: ; 0x021574e8
stmdb sp!, {r4, lr}
mov r4, r0
ldrsb r2, [r4, #0x72]
ldr r0, _0215753c ; =func_ov61_02157540
mov r1, r4
bl func_ov61_02156b7c
movs r1, r0
mvneq r0, #0x20
ldmeqia sp!, {r4, pc}
ldrh r2, [r4, #0x74]
mov r0, r4
strh r2, [r1, #0x10]
ldrh r2, [r4, #0x76]
strh r2, [r1, #0x12]
ldr r2, [r4, #0x78]
str r2, [r1, #0x14]
ldrsh r2, [r4, #0x70]
orr r2, r2, #2
strh r2, [r4, #0x70]
bl func_ov61_02156cc4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021574e8
_0215753c: .word func_ov61_02157540
.global func_ov61_02157540
arm_func_start func_ov61_02157540
func_ov61_02157540: ; 0x02157540
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
ldr r4, [r7, #4]
mov r6, #0
ldr r5, [r4, #0x64]
add r0, r5, #0xe0
bl func_0200e044
ldrh r0, [r7, #0x10]
ldrh r1, [r7, #0x12]
ldr r2, [r7, #0x14]
bl func_ov61_02154b60
mov r0, r6
str r0, [r5, #0xf8]
ldrsb r0, [r7, #0xc]
cmp r0, #0
cmpne r0, #4
bne _0215758c
bl func_ov61_02154d64
mov r6, r0
_0215758c:
add r0, r5, #0xe0
bl func_0200e0c8
cmp r6, #0
beq _021575b0
ldrsh r1, [r4, #0x70]
mvn r0, #0x4b
orr r1, r1, #0x40
strh r1, [r4, #0x70]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021575b0:
ldrsh r1, [r4, #0x70]
mov r0, #0
orr r1, r1, #4
strh r1, [r4, #0x70]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_02157540
.global func_ov61_021575c4
arm_func_start func_ov61_021575c4
func_ov61_021575c4: ; 0x021575c4
stmdb sp!, {r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #0xc
mov r9, r0
mov r8, r1
mov r7, r2
mov r6, r3
bl func_ov61_02158e2c
cmp r0, #0
addne sp, sp, #0xc
mvnne r0, #0x1b
ldmneia sp!, {r4, r5, r6, r7, r8, r9, pc}
ldr r0, [sp, #0x2c]
tst r0, #4
bne _02157608
ldrsb r0, [r9, #0x72]
cmp r0, #0
bne _02157624
_02157608:
ldrsb r0, [r9, #0x73]
cmp r0, #4
addeq sp, sp, #0xc
mvneq r0, #0x1b
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, pc}
mov r5, #0
b _0215763c
_02157624:
bl func_0200eeb0
cmp r0, #0x12
addeq sp, sp, #0xc
mvneq r0, #0x1b
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, pc}
mov r5, #1
_0215763c:
cmp r9, #0
mov r1, #0
beq _02157654
ldrsh r0, [r9, #0x70]
tst r0, #1
movne r1, #1
_02157654:
cmp r1, #0
addeq sp, sp, #0xc
mvneq r0, #0x26
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, pc}
ldrsb r0, [r9, #0x73]
mov r1, #1
cmp r0, #0
cmpne r0, #4
movne r1, #0
cmp r1, #0
beq _021576a4
ldrsh r0, [r9, #0x70]
tst r0, #4
beq _02157698
ldrsh r0, [r9, #0x70]
tst r0, #8
beq _021576a4
_02157698:
add sp, sp, #0xc
mvn r0, #0x37
ldmia sp!, {r4, r5, r6, r7, r8, r9, pc}
_021576a4:
ldr r4, [r9, #0x64]
tst r5, #1
add r0, r4, #0xe0
bne _021576cc
bl func_0200e160
cmp r0, #0
bne _021576d0
add sp, sp, #0xc
mvn r0, #5
ldmia sp!, {r4, r5, r6, r7, r8, r9, pc}
_021576cc:
bl func_0200e044
_021576d0:
ldr r0, [sp, #0x28]
ldr ip, [sp, #0x2c]
str r0, [sp]
mov r0, r9
mov r1, r8
mov r2, r7
mov r3, r6
stmib sp, {r5, ip}
bl func_ov61_0215770c
mov r5, r0
add r0, r4, #0xe0
bl func_0200e0c8
mov r0, r5
add sp, sp, #0xc
ldmia sp!, {r4, r5, r6, r7, r8, r9, pc}
arm_func_end func_ov61_021575c4
.global func_ov61_0215770c
arm_func_start func_ov61_0215770c
func_ov61_0215770c: ; 0x0215770c
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #8
ldr r4, [sp, #0x28]
mov r7, r0
tst r4, #2
ldr r4, [r7, #0x64]
cmpne r4, #0
movne r6, #1
moveq r6, #0
cmp r6, #0
ldrnesb r5, [r4, #0xfe]
movne r0, #1
strneb r0, [r4, #0xfe]
ldrsb r0, [r7, #0x73]
cmp r0, #1
bne _0215776c
ldr r0, [sp, #0x20]
ldr ip, [sp, #0x24]
str r0, [sp]
mov r0, r7
str ip, [sp, #4]
bl func_ov61_02157bb8
mov r8, r0
b _02157794
_0215776c:
ldr r0, [sp, #0x20]
ldr ip, [sp, #0x24]
str r0, [sp]
mov r0, r7
str ip, [sp, #4]
bl func_ov61_021577a8
movs r8, r0
bmi _02157794
mov r0, r7
bl func_ov61_02157b20
_02157794:
cmp r6, #0
strneb r5, [r4, #0xfe]
mov r0, r8
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
arm_func_end func_ov61_0215770c
.global func_ov61_021577a8
arm_func_start func_ov61_021577a8
func_ov61_021577a8: ; 0x021577a8
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
ldrsb ip, [r7, #0x73]
mov r6, r1
mov r5, r2
mov r4, r3
cmp ip, #4
bne _021577d8
ldr r4, [sp, #0x18]
str r4, [sp]
bl func_ov61_02157998
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021577d8:
ldr ip, [sp, #0x18]
str ip, [sp]
bl func_ov61_0215781c
mvn r1, #5
cmp r0, r1
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
ldr r1, [sp, #0x1c]
tst r1, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr ip, [sp, #0x18]
mov r0, r7
mov r1, r6
mov r2, r5
mov r3, r4
str ip, [sp]
bl func_ov61_02157998
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_021577a8
.global func_ov61_0215781c
arm_func_start func_ov61_0215781c
func_ov61_0215781c: ; 0x0215781c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #0x10
mov r9, r0
mov r8, r1
mov r7, r2
mov r6, r3
bl func_0200ee4c
add r1, sp, #8
mov r4, r0
str r1, [sp]
add r1, sp, #0xc
mov r0, r9
add r2, sp, #6
add r3, sp, #4
bl func_ov61_02157924
cmp r0, #0
beq _021578bc
ldr r5, [sp, #0xc]
cmp r5, #0
mvneq r5, #5
beq _021578d8
ldrsb r1, [r9, #0x73]
cmp r7, r5
mov r2, #1
movgt r7, r5
cmp r1, #0
cmpne r1, #4
movne r2, #0
cmp r2, #0
mov r1, r8
mov r2, r7
movne r5, r7
bl func_02007ad8
ldr r1, [r9, #0x64]
ldrsb r0, [r1, #0xfe]
cmp r0, #0
ldreq r0, [r1, #0xf8]
addeq r0, r0, r5
streq r0, [r1, #0xf8]
b _021578d8
_021578bc:
ldr r0, [sp, #0xc]
cmp r0, #0
ldrsh r0, [r9, #0x70]
moveq r5, #0
mvnne r5, #0x1b
bic r0, r0, #6
strh r0, [r9, #0x70]
_021578d8:
cmp r5, #0
blt _02157910
cmp r6, #0
ldrne r1, [sp, #0x30]
cmpne r1, #0
beq _02157900
ldrh r0, [sp, #4]
strh r0, [r6]
ldr r0, [sp, #8]
str r0, [r1]
_02157900:
ldrh r0, [r9, #0x74]
cmp r0, #0
ldreqh r0, [sp, #6]
streqh r0, [r9, #0x74]
_02157910:
mov r0, r4
bl func_0200ee60
mov r0, r5
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
arm_func_end func_ov61_0215781c
.global func_ov61_02157924
arm_func_start func_ov61_02157924
func_ov61_02157924: ; 0x02157924
stmdb sp!, {r3, r4, r5, lr}
ldr r0, [r0, #0x64]
ldr r4, [r0, #0xc4]
ldr r5, [r0, #0xf8]
ldr r0, [r4, #0x44]
subs lr, r0, r5
bmi _0215797c
ldrh ip, [r4, #0xa]
ldr r0, [sp, #0x10]
cmp lr, #0
strh ip, [r2]
ldrh r2, [r4, #0x18]
strh r2, [r3]
ldr r2, [r4, #0x1c]
str r2, [r0]
str lr, [r1]
bne _0215798c
ldrb r0, [r4, #8]
cmp r0, #4
beq _0215798c
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_0215797c:
mvn r0, #0
str r0, [r1]
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_0215798c:
ldr r0, [r4, #0x40]
add r0, r0, r5
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02157924
.global func_ov61_02157998
arm_func_start func_ov61_02157998
func_ov61_02157998: ; 0x02157998
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r6, r1
mov r5, r2
ldr r0, _021579e0 ; =func_ov61_021579e4
mov r1, r7
mov r2, #1
mov r4, r3
bl func_ov61_02156b7c
mov r1, r0
str r6, [r1, #0x10]
str r5, [r1, #0x14]
ldr r2, [sp, #0x18]
str r4, [r1, #0x18]
mov r0, r7
str r2, [r1, #0x1c]
bl func_ov61_02156cc4
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02157998
_021579e0: .word func_ov61_021579e4
.global func_ov61_021579e4
arm_func_start func_ov61_021579e4
func_ov61_021579e4: ; 0x021579e4
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x14
ldr r7, [r0, #4]
ldr r1, [r0, #0x10]
ldr r8, [r7, #0x64]
str r1, [sp, #0xc]
ldr r1, [r0, #0x18]
ldr r10, [r0, #0x14]
ldr r0, [r0, #0x1c]
ldr r9, [r8, #0xf8]
str r1, [sp, #8]
str r0, [sp, #4]
mov r4, #0
mov r5, #1
mov r11, #0xa
add r6, sp, #0x10
_02157a24:
mov r0, r6
bl func_ov61_02154fd8
cmp r0, #0
beq _02157a78
ldr r1, [sp, #0x10]
sub r1, r1, r9
cmp r1, #0
bgt _02157a78
ldrsb r0, [r7, #0x73]
mov r1, r5
cmp r0, #0
cmpne r0, #4
movne r1, r4
cmp r1, #0
ldrneb r0, [r7, #8]
cmpne r0, #4
movne r0, #0
bne _02157a78
mov r0, r11
bl func_0200db28
b _02157a24
_02157a78:
ldrsb r1, [r7, #0x73]
cmp r1, #4
bne _02157ac0
cmp r0, #0
addeq sp, sp, #0x14
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, [sp, #0x10]
cmp r10, r1
movhi r10, r1
ldr r1, [sp, #0xc]
mov r2, r10
bl func_02007ad8
mov r0, r10
bl func_ov61_021550cc
add sp, sp, #0x14
mov r0, r10
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02157ac0:
cmp r0, #0
moveq r4, #0
beq _02157aec
ldr r4, [sp, #4]
ldr r1, [sp, #0xc]
ldr r3, [sp, #8]
mov r0, r7
mov r2, r10
str r4, [sp]
bl func_ov61_0215781c
mov r4, r0
_02157aec:
cmp r4, #0
addle sp, sp, #0x14
movle r0, r4
ldmleia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldrh r0, [r8, #0xfc]
ldr r1, [r8, #0xf8]
cmp r1, r0
blt _02157b14
mov r0, r7
bl func_ov61_02157b7c
_02157b14:
mov r0, r4
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_021579e4
.global func_ov61_02157b20
arm_func_start func_ov61_02157b20
func_ov61_02157b20: ; 0x02157b20
stmdb sp!, {r4, lr}
mov r4, r0
ldr r1, [r4, #0x64]
ldrh r0, [r1, #0xfc]
ldr r1, [r1, #0xf8]
cmp r1, r0
movlt r0, #0
ldmltia sp!, {r4, pc}
ldr r0, _02157b68 ; =func_ov61_02157b6c
mov r1, r4
mov r2, #0
bl func_ov61_02156b7c
movs r1, r0
mvneq r0, #0x20
ldmeqia sp!, {r4, pc}
mov r0, r4
bl func_ov61_02156cc4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02157b20
_02157b68: .word func_ov61_02157b6c
.global func_ov61_02157b6c
arm_func_start func_ov61_02157b6c
func_ov61_02157b6c: ; 0x02157b6c
ldr ip, _02157b78 ; =func_ov61_02157b7c
ldr r0, [r0, #4]
bx ip
.align 2, 0
arm_func_end func_ov61_02157b6c
_02157b78: .word func_ov61_02157b7c
.global func_ov61_02157b7c
arm_func_start func_ov61_02157b7c
func_ov61_02157b7c: ; 0x02157b7c
stmdb sp!, {r4, r5, r6, lr}
ldr r4, [r0, #0x64]
bl func_0200ee4c
ldr r6, [r4, #0xf8]
mov r5, r0
cmp r6, #0
beq _02157ba8
mov r1, #0
mov r0, r6
str r1, [r4, #0xf8]
bl func_ov61_021550cc
_02157ba8:
mov r0, r5
bl func_0200ee60
mov r0, r6
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02157b7c
.global func_ov61_02157bb8
arm_func_start func_ov61_02157bb8
func_ov61_02157bb8: ; 0x02157bb8
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0xc
mov r10, r0
ldr r6, [r10, #0x64]
str r1, [sp]
ldr r0, [r6, #0x104]
str r2, [sp, #4]
mov r11, r3
bl func_0200ee4c
ldr r7, [r6, #0x104]
str r0, [sp, #8]
cmp r7, #0
bne _02157c54
ldr r0, [sp, #0x34]
mov r4, #1
and r9, r0, #1
mov r5, #0
_02157bfc:
cmp r9, #0
mvneq r8, #5
beq _02157c54
add r0, r6, #0x10c
bl func_0200d880
mov r0, r10
bl func_ov61_02158e2c
cmp r0, #0
bne _02157c40
mov r1, r5
cmp r10, #0
beq _02157c38
ldrsh r0, [r10, #0x70]
tst r0, #1
movne r1, r4
_02157c38:
cmp r1, #0
bne _02157c48
_02157c40:
mvn r8, #0x37
b _02157c54
_02157c48:
ldr r7, [r6, #0x104]
cmp r7, #0
beq _02157bfc
_02157c54:
cmp r7, #0
beq _02157ce4
ldrh r1, [r7, #4]
ldr r0, [sp, #4]
cmp r0, r1
strgt r1, [sp, #4]
ldr r1, [sp]
ldr r2, [sp, #4]
add r0, r7, #0xc
bl func_02007ad8
cmp r11, #0
ldrneh r0, [r7, #6]
ldr r1, [sp, #0x30]
strneh r0, [r11]
cmp r1, #0
ldrne r0, [r7, #8]
strne r0, [r1]
ldrsb r0, [r6, #0xfe]
ldrh r8, [r7, #4]
cmp r0, #0
bne _02157ce4
ldr r0, [r7]
ldr r1, _02157cf8 ; =data_ov61_0217bc28
str r0, [r6, #0x104]
ldr r0, [r7]
cmp r0, #0
moveq r0, #0
streq r0, [r6, #0x100]
ldr r1, [r1]
mov r0, r7
ldr r1, [r1, #0x1c]
blx r1
add r0, r6, #0x100
ldrh r1, [r0, #8]
sub r1, r1, r8
strh r1, [r0, #8]
_02157ce4:
ldr r0, [sp, #8]
bl func_0200ee60
mov r0, r8
add sp, sp, #0xc
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02157bb8
_02157cf8: .word data_ov61_0217bc28
.global func_ov61_02157cfc
arm_func_start func_ov61_02157cfc
func_ov61_02157cfc: ; 0x02157cfc
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r7, r2
ldr r4, [r7, #0x64]
mov r9, r0
mov r8, r1
bl func_0200ee4c
add r1, r4, #0x100
ldrh r2, [r1, #8]
ldrh r1, [r1, #0xa]
mov r6, r0
add r0, r2, r8
cmp r1, r0
blo _02157dc0
ldr r1, _02157e08 ; =data_ov61_0217bc28
add r0, r8, #0xc
ldr r1, [r1]
ldr r1, [r1, #0x18]
blx r1
movs r5, r0
beq _02157dac
add r1, r4, #0x100
ldrh r3, [r1, #8]
mov r2, #0
mov r0, r9
add r3, r3, r8
strh r3, [r1, #8]
str r2, [r5]
strh r8, [r5, #4]
ldrh r3, [r7, #0x18]
mov r2, r8
add r1, r5, #0xc
strh r3, [r5, #6]
ldr r3, [r7, #0x1c]
str r3, [r5, #8]
bl func_02007ad8
ldr r0, [r4, #0x100]
cmp r0, #0
ldrne r0, [r4, #0x100]
strne r5, [r0]
str r5, [r4, #0x100]
ldr r0, [r4, #0x104]
cmp r0, #0
streq r5, [r4, #0x104]
b _02157dd0
_02157dac:
ldr r0, _02157e0c ; =data_ov61_02180ca4
ldr r1, [r0]
add r1, r1, #1
str r1, [r0]
b _02157dd0
_02157dc0:
ldr r0, _02157e0c ; =data_ov61_02180ca4
ldr r1, [r0, #4]
add r1, r1, #1
str r1, [r0, #4]
_02157dd0:
ldrh r0, [r7, #0x74]
cmp r0, #0
ldreqh r0, [r7, #0xa]
streqh r0, [r7, #0x74]
ldrh r1, [r7, #0x1a]
add r0, r4, #0x10c
strh r1, [r7, #0x18]
ldr r1, [r7, #0x20]
str r1, [r7, #0x1c]
bl func_0200d8d0
mov r0, r6
bl func_0200ee60
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_02157cfc
_02157e08: .word data_ov61_0217bc28
_02157e0c: .word data_ov61_02180ca4
.global func_ov61_02157e10
arm_func_start func_ov61_02157e10
func_ov61_02157e10: ; 0x02157e10
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #8
mov r8, r0
mov r7, r1
mov r6, r2
mov r5, r3
bl func_ov61_02158e2c
cmp r0, #0
addne sp, sp, #8
mvnne r0, #0x1b
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
cmp r8, #0
mov r1, #0
beq _02157e54
ldrsh r0, [r8, #0x70]
tst r0, #1
movne r1, #1
_02157e54:
cmp r1, #0
addeq sp, sp, #8
mvneq r0, #0x26
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
ldrsb r0, [r8, #0x73]
mov r1, #1
cmp r0, #0
cmpne r0, #4
movne r1, #0
cmp r1, #0
beq _02157ea4
ldrsh r0, [r8, #0x70]
tst r0, #4
beq _02157e98
ldrsh r0, [r8, #0x70]
tst r0, #8
beq _02157ea4
_02157e98:
add sp, sp, #8
mvn r0, #0x37
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_02157ea4:
ldr r0, [sp, #0x24]
ldr r4, [r8, #0x68]
tst r0, #4
bne _02157ec0
ldrsb r0, [r8, #0x72]
cmp r0, #0
bne _02157ee0
_02157ec0:
add r0, r4, #0xe0
bl func_0200e160
cmp r0, #0
addeq sp, sp, #8
mvneq r0, #5
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
mov ip, #0
b _02157eec
_02157ee0:
add r0, r4, #0xe0
bl func_0200e044
mov ip, #1
_02157eec:
ldr r1, [sp, #0x20]
mov r0, r8
str r1, [sp]
mov r1, r7
mov r2, r6
mov r3, r5
str ip, [sp, #4]
bl func_ov61_02157f24
mov r5, r0
add r0, r4, #0xe0
bl func_0200e0c8
mov r0, r5
add sp, sp, #8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
arm_func_end func_ov61_02157e10
.global func_ov61_02157f24
arm_func_start func_ov61_02157f24
func_ov61_02157f24: ; 0x02157f24
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x18
mov r10, r0
ldr r4, [r10, #0x68]
ldrsb r0, [r10, #0x73]
ldr r4, [r4, #0x10c]
mov r9, r1
str r3, [sp, #0xc]
cmp r0, #1
mov r8, r2
ldr r7, [sp, #0x40]
ldr r6, [sp, #0x44]
ldr r0, [r4, #0x48]
mov r5, #0
bne _02157f7c
sub r0, r0, #0x2a
cmp r8, r0
addgt sp, sp, #0x18
subgt r0, r5, #0x23
ldmgtia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
str r8, [sp, #0x10]
b _02157f8c
_02157f7c:
sub r0, r0, #0x36
str r0, [sp, #0x10]
cmp r8, r0
strle r8, [sp, #0x10]
_02157f8c:
cmp r8, #0
ble _0215801c
and r11, r6, #1
_02157f98:
ldr r2, [sp, #0x10]
mov r0, r10
mov r1, r8
add r3, sp, #0x14
str r6, [sp]
bl func_ov61_02158028
mov r4, r0
cmp r4, #0
ble _02157ff8
ldr r0, [sp, #0xc]
mov r1, r9
stmia sp, {r0, r7}
str r6, [sp, #8]
ldr r3, [sp, #0x14]
mov r0, r10
mov r2, r4
bl func_ov61_021580d0
cmp r0, #0
addle sp, sp, #0x18
mvnle r0, #5
ldmleia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
add r9, r9, r4
sub r8, r8, r4
add r5, r5, r4
_02157ff8:
cmp r11, #0
bne _02158014
cmp r4, #0
bgt _0215801c
add sp, sp, #0x18
mvn r0, #5
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02158014:
cmp r8, #0
bgt _02157f98
_0215801c:
mov r0, r5
add sp, sp, #0x18
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_02157f24
.global func_ov61_02158028
arm_func_start func_ov61_02158028
func_ov61_02158028: ; 0x02158028
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
mov r10, r0
mov r9, r1
mov r8, r2
cmp r8, r9
mov r7, r3
ldr r4, [r10, #0x68]
movgt r8, r9
bl func_0200ee4c
ldr r1, [sp, #0x28]
mov r11, r0
and r6, r1, #1
_02158058:
mov r0, r10
bl func_ov61_021580ac
mov r5, r0
cmp r5, r8
blt _02158084
add r0, r4, #0x100
ldrh r0, [r0]
cmp r5, r9
movge r5, r9
str r0, [r7]
b _0215809c
_02158084:
cmp r6, #0
moveq r5, #0
beq _0215809c
add r0, r4, #0x104
bl func_0200d880
b _02158058
_0215809c:
mov r0, r11
bl func_0200ee60
mov r0, r5
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_02158028
.global func_ov61_021580ac
arm_func_start func_ov61_021580ac
func_ov61_021580ac: ; 0x021580ac
ldr r2, [r0, #0x68]
add r0, r2, #0x100
ldrh r1, [r0]
ldrh r0, [r0, #2]
ldr r2, [r2, #0xf8]
sub r0, r0, r1
subs r0, r0, #1
addmi r0, r0, r2
bx lr
arm_func_end func_ov61_021580ac
.global func_ov61_021580d0
arm_func_start func_ov61_021580d0
func_ov61_021580d0: ; 0x021580d0
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r9, r0
ldr r4, [r9, #0x68]
mov r6, r1
mov r8, r2
ldr r1, [r4, #0x10c]
ldr r2, [sp, #0x28]
ldr r0, _02158240 ; =func_ov61_02158244
mov r7, r3
bl func_ov61_02156b7c
movs r5, r0
mvneq r0, #0x20
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
ldr r0, [sp, #0x28]
add r1, r7, r8
tst r0, #1
ldrnesb r0, [r9, #0x73]
cmpne r0, #1
movne r0, #3
strneb r0, [r5, #0xd]
moveq r0, #0
streqb r0, [r5, #0xd]
ldr r3, [r4, #0xfc]
ldr r2, [r4, #0xf8]
add r0, r3, r7
cmp r1, r2
str r0, [r5, #0x10]
bge _02158158
str r8, [r5, #0x14]
mov r0, #0
str r0, [r5, #0x18]
mov r7, r1
str r0, [r5, #0x1c]
b _02158184
_02158158:
sub r0, r2, r7
str r0, [r5, #0x14]
str r3, [r5, #0x18]
ldr r0, [r5, #0x14]
sub r7, r8, r0
str r7, [r5, #0x1c]
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x18]
mov r2, r7
add r0, r6, r0
bl func_02007ad8
_02158184:
ldr r1, [r5, #0x10]
ldr r2, [r5, #0x14]
mov r0, r6
bl func_02007ad8
add r0, r4, #0x100
ldrh r6, [r0]
strh r7, [r5, #0x20]
ldrh r1, [r5, #0x20]
strh r1, [r0]
ldrsb r0, [r9, #0x73]
cmp r0, #1
bne _02158214
ldrh r0, [r9, #0x74]
cmp r0, #0
bne _021581d0
bl func_ov61_02154a1c
strh r0, [r9, #0x74]
ldrh r0, [r9, #0x74]
strh r0, [r9, #0xa]
_021581d0:
ldrh r0, [r9, #0x74]
strh r0, [r5, #0x24]
ldr r1, [r9, #0x78]
cmp r1, #0
beq _021581f0
ldr r0, [sp, #0x24]
cmp r0, #0
beq _02158204
_021581f0:
ldr r1, [sp, #0x24]
ldrh r0, [sp, #0x20]
str r1, [r5, #0x28]
strh r0, [r5, #0x26]
b _0215821c
_02158204:
str r1, [r5, #0x28]
ldrh r0, [r9, #0x76]
strh r0, [r5, #0x26]
b _0215821c
_02158214:
mov r0, #0
str r0, [r5, #0x28]
_0215821c:
ldr r0, [r4, #0x10c]
mov r1, r5
bl func_ov61_02156cd4
cmp r0, #0
addne r0, r4, #0x100
movne r8, #0
strneh r6, [r0]
mov r0, r8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_021580d0
_02158240: .word func_ov61_02158244
.global func_ov61_02158244
arm_func_start func_ov61_02158244
func_ov61_02158244: ; 0x02158244
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
mov r9, r0
ldr r5, [r9, #4]
mov r7, #0
ldrsb r0, [r5, #0x73]
mov r1, #1
ldr r6, [r5, #0x68]
cmp r0, #0
cmpne r0, #4
movne r1, r7
cmp r1, #0
beq _02158280
ldrsh r0, [r5, #0x70]
tst r0, #4
beq _02158340
_02158280:
ldr r2, [r9, #0x28]
cmp r2, #0
beq _02158298
ldrh r0, [r9, #0x24]
ldrh r1, [r9, #0x26]
bl func_ov61_02154b60
_02158298:
ldrsb r1, [r5, #0x73]
mov r0, #1
ldr r4, [r5, #0x4c]
cmp r1, #0
cmpne r1, #4
movne r0, #0
cmp r0, #0
movne r8, #0x36
moveq r8, #0x2a
cmp r1, #0
cmpne r1, #4
ldrne r0, [r5, #0x48]
subne r10, r0, r8
bne _021582e0
ldr r0, [r5, #0x48]
sub r0, r0, r8
bl func_ov61_02158360
mov r10, r0
_021582e0:
mov r1, r10
mov r2, r9
add r0, r4, r8
bl func_ov61_02158404
mov r1, r0
cmp r1, #0
ble _02158344
add r0, r4, r8
bl func_ov61_021554cc
cmp r0, #0
bgt _02158338
ldrsb r0, [r5, #0x73]
mov r1, #1
mvn r7, #0x4b
cmp r0, #0
cmpne r0, #4
movne r1, #0
cmp r1, #0
ldrnesh r0, [r5, #0x70]
bicne r0, r0, #0xe
strneh r0, [r5, #0x70]
b _02158344
_02158338:
add r7, r7, r0
b _021582e0
_02158340:
mvn r7, #0x4b
_02158344:
ldrh r2, [r9, #0x20]
add r1, r6, #0x100
add r0, r6, #0x104
strh r2, [r1, #2]
bl func_0200d8d0
mov r0, r7
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
arm_func_end func_ov61_02158244
.global func_ov61_02158360
arm_func_start func_ov61_02158360
func_ov61_02158360: ; 0x02158360
stmdb sp!, {r3, r4, r5, lr}
ldr r1, _021583fc ; =data_027e02a0
mov r4, r0
ldr r0, [r1, #4]
ldr r5, [r0, #0xa4]
bl func_0200ee4c
cmp r5, #0
beq _021583c4
ldrh r3, [r5, #0x2e]
cmp r3, #0
ldrneh r2, [r5, #0x2c]
cmpne r2, #0
beq _021583b4
ldr r1, _02158400 ; =data_ov61_02180c50
cmp r3, r2
ldr r1, [r1, #0x24]
movgt r3, r2
cmp r3, r1
movgt r3, r1
mov r5, r3, lsl #0x1
b _021583d0
_021583b4:
ldr r1, _02158400 ; =data_ov61_02180c50
ldr r1, [r1, #0x24]
mov r5, r1, lsl #0x1
b _021583d0
_021583c4:
ldr r1, _02158400 ; =data_ov61_02180c50
ldr r1, [r1, #0x24]
mov r5, r1, lsl #0x1
_021583d0:
bl func_0200ee60
cmp r5, #0
ble _021583f4
mov r0, r4
mov r1, r5
bl func_02002c14
cmp r0, #0
mulgt r0, r5, r0
ldmgtia sp!, {r3, r4, r5, pc}
_021583f4:
mov r0, r4
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02158360
_021583fc: .word data_027e02a0
_02158400: .word data_ov61_02180c50
.global func_ov61_02158404
arm_func_start func_ov61_02158404
func_ov61_02158404: ; 0x02158404
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r6, r2
ldr r4, [r6, #0x14]
ldr r5, [r6, #0x1c]
cmp r4, r1
mov r7, r0
movgt r4, r1
movgt r5, #0
bgt _02158434
sub r0, r1, r4
cmp r5, r0
movgt r5, r0
_02158434:
cmp r4, #0
ble _02158464
ldr r0, [r6, #0x10]
mov r1, r7
mov r2, r4
bl func_02007ad8
ldr r0, [r6, #0x10]
add r0, r0, r4
str r0, [r6, #0x10]
ldr r0, [r6, #0x14]
sub r0, r0, r4
str r0, [r6, #0x14]
_02158464:
cmp r5, #0
ble _02158494
ldr r0, [r6, #0x18]
mov r2, r5
add r1, r7, r4
bl func_02007ad8
ldr r0, [r6, #0x18]
add r0, r0, r5
str r0, [r6, #0x18]
ldr r0, [r6, #0x1c]
sub r0, r0, r5
str r0, [r6, #0x1c]
_02158494:
add r0, r4, r5
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_02158404
.global func_ov61_0215849c
arm_func_start func_ov61_0215849c
func_ov61_0215849c: ; 0x0215849c
stmdb sp!, {r3, r4, r5, lr}
mov r4, r0
bl func_ov61_02158e2c
cmp r0, #0
mvnne r0, #0x1b
ldmneia sp!, {r3, r4, r5, pc}
cmp r4, #0
mov r1, #0
beq _021584cc
ldrsh r0, [r4, #0x70]
tst r0, #1
movne r1, #1
_021584cc:
cmp r1, #0
mvneq r0, #0x26
ldmeqia sp!, {r3, r4, r5, pc}
ldrsh r0, [r4, #0x70]
tst r0, #4
beq _021584f0
ldrsh r0, [r4, #0x70]
tst r0, #8
beq _021584f8
_021584f0:
mvn r0, #0x37
ldmia sp!, {r3, r4, r5, pc}
_021584f8:
ldrsh r0, [r4, #0x70]
orr r0, r0, #8
strh r0, [r4, #0x70]
ldr r5, [r4, #0x68]
cmp r5, #0
ldrne r1, [r5, #0x10c]
cmpne r1, #0
beq _0215853c
ldrsb r2, [r4, #0x72]
ldr r0, _02158544 ; =func_ov61_02158548
bl func_ov61_02156b7c
movs r1, r0
mvneq r0, #0x20
ldmeqia sp!, {r3, r4, r5, pc}
ldr r0, [r5, #0x10c]
bl func_ov61_02156cd4
ldmia sp!, {r3, r4, r5, pc}
_0215853c:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0215849c
_02158544: .word func_ov61_02158548
.global func_ov61_02158548
arm_func_start func_ov61_02158548
func_ov61_02158548: ; 0x02158548
stmdb sp!, {r3, lr}
ldr r0, [r0, #4]
mov r1, #1
ldrsb r0, [r0, #0x73]
cmp r0, #0
cmpne r0, #4
movne r1, #0
cmp r1, #0
beq _02158570
bl func_ov61_02154e44
_02158570:
mov r0, #0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02158548
.global func_ov61_02158578
arm_func_start func_ov61_02158578
func_ov61_02158578: ; 0x02158578
stmdb sp!, {r4, lr}
movs r4, r0
bmi _021585a4
bl func_ov61_02158e2c
cmp r0, #0
beq _021585a4
mov r0, r4
bl func_ov61_02158e60
cmp r0, #0
moveq r0, #1
ldmeqia sp!, {r4, pc}
_021585a4:
mov r0, #0
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02158578
.global func_ov61_021585ac
arm_func_start func_ov61_021585ac
func_ov61_021585ac: ; 0x021585ac
stmdb sp!, {r4, lr}
mov r4, r0
cmp r4, #0
mvnle r0, #0x1b
ldmleia sp!, {r4, pc}
bl func_ov61_02158e60
cmp r0, #0
mvnne r0, #0x19
ldmneia sp!, {r4, pc}
mov r0, r4
bl func_ov61_02158e2c
cmp r0, #0
movne r0, #0
ldmneia sp!, {r4, pc}
cmp r4, #0
mov r1, #0
beq _021585fc
ldrsh r0, [r4, #0x70]
tst r0, #1
movne r1, #1
_021585fc:
cmp r1, #0
mvneq r0, #0x26
ldmeqia sp!, {r4, pc}
ldrsh r0, [r4, #0x70]
tst r0, #0x10
mvnne r0, #0x19
ldmneia sp!, {r4, pc}
ldrsh r0, [r4, #0x70]
mov r1, #1
orr r0, r0, #0x18
strh r0, [r4, #0x70]
ldrsb r0, [r4, #0x73]
cmp r0, #0
cmpne r0, #4
movne r1, #0
cmp r1, #0
beq _0215864c
ldr r0, [r4, #0x68]
mov r1, #0
bl func_ov61_02156bf0
_0215864c:
ldr r0, _02158678 ; =func_ov61_0215867c
mov r1, r4
mov r2, #1
bl func_ov61_02156b7c
mov r1, r0
mov r2, #0
mov r0, r4
str r2, [r1, #8]
bl func_ov61_02156c3c
mov r0, #0
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021585ac
_02158678: .word func_ov61_0215867c
.global func_ov61_0215867c
arm_func_start func_ov61_0215867c
func_ov61_0215867c: ; 0x0215867c
stmdb sp!, {r3, r4, r5, lr}
ldr r4, [r0, #4]
mov r1, #1
ldrsb r0, [r4, #0x73]
cmp r0, #0
cmpne r0, #4
movne r1, #0
cmp r1, #0
beq _021586b8
ldr r0, [r4, #0x68]
add r0, r0, #0x20
bl func_0200d83c
bl func_ov61_02154e44
bl func_ov61_02154e80
bl func_ov61_02154bf4
_021586b8:
bl func_ov61_02154b1c
ldrsh r0, [r4, #0x70]
mov r1, #0
bic r0, r0, #6
strh r0, [r4, #0x70]
ldrsb r0, [r4, #0x73]
cmp r0, #2
ldreq r0, [r4, #0x68]
ldrne r0, [r4, #0x64]
bl func_ov61_02156bf0
bl func_0200ee4c
mov r5, r0
mov r0, r4
bl func_ov61_02158db4
mov r0, r4
bl func_ov61_02158d9c
mov r0, r5
bl func_0200ee60
ldrsh r1, [r4, #0x70]
mov r0, #0
orr r1, r1, #0x20
strh r1, [r4, #0x70]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0215867c
.global func_ov61_02158714
arm_func_start func_ov61_02158714
func_ov61_02158714: ; 0x02158714
stmdb sp!, {r4, r5, r6, lr}
movs r4, r0
ldmeqia sp!, {r4, r5, r6, pc}
mov r0, #0
strh r0, [r4, #0x70]
ldrsb r2, [r4, #0x73]
mov r1, #1
cmp r2, #0
cmpne r2, #4
movne r1, r0
cmp r1, #0
beq _02158758
ldr r0, [r4, #0x68]
bl func_ov61_02158814
ldr r0, [r4, #0x64]
bl func_ov61_02158814
b _021587d8
_02158758:
cmp r2, #1
bne _021587c8
ldr r0, [r4, #0x64]
ldr r0, [r0, #0x104]
cmp r0, #0
beq _02158790
ldr r5, _02158810 ; =data_ov61_0217bc28
_02158774:
ldr r1, [r5]
ldr r6, [r0]
ldr r1, [r1, #0x1c]
blx r1
mov r0, r6
cmp r6, #0
bne _02158774
_02158790:
ldr r0, [r4, #0x64]
mov r1, #0
add r0, r0, #0x100
strh r1, [r0, #8]
ldr r0, [r4, #0x64]
str r1, [r0, #0x100]
ldr r0, [r4, #0x64]
str r1, [r0, #0x104]
ldr r0, [r4, #0x64]
add r0, r0, #0x10c
bl func_0200d8d0
ldr r0, [r4, #0x64]
bl func_ov61_02158814
b _021587d8
_021587c8:
cmp r2, #2
bne _021587d8
ldr r0, [r4, #0x68]
bl func_ov61_02158814
_021587d8:
bl func_0200ee4c
mov r5, r0
mov r0, r4
bl func_ov61_02158db4
mov r0, r4
bl func_ov61_02158e14
ldr r1, _02158810 ; =data_ov61_0217bc28
mov r0, r4
ldr r1, [r1]
ldr r1, [r1, #0x1c]
blx r1
mov r0, r5
bl func_0200ee60
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02158714
_02158810: .word data_ov61_0217bc28
.global func_ov61_02158814
arm_func_start func_ov61_02158814
func_ov61_02158814: ; 0x02158814
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
movs r9, r0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
add r0, r9, #0x20
bl func_0200d83c
bl func_0200ee4c
mov r8, r0
bl func_0200dc28
add r1, sp, #0
mov r0, r9
mov r2, #0
bl func_0200de70
cmp r0, #0
beq _021588a0
mov r6, #0
mvn r7, #0xa
add r5, sp, #0
mov r4, r6
_0215885c:
ldr r0, [sp]
cmp r0, #0
beq _02158888
ldr r0, [r0, #8]
cmp r0, #0
beq _02158880
mov r1, r7
mov r2, r6
bl func_0200dddc
_02158880:
ldr r0, [sp]
bl func_ov61_02156bbc
_02158888:
mov r0, r9
mov r1, r5
mov r2, r4
bl func_0200de70
cmp r0, #0
bne _0215885c
_021588a0:
bl func_0200dc5c
bl func_0200d988
mov r0, r8
bl func_0200ee60
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
arm_func_end func_ov61_02158814
.global func_ov61_021588b4
arm_func_start func_ov61_021588b4
func_ov61_021588b4: ; 0x021588b4
stmdb sp!, {r3, r4, r5, lr}
bl func_0200ee4c
ldr r4, _021588ec ; =data_ov61_02180cb0
mov r5, r0
ldr r0, [r4]
cmp r0, #0
beq _021588e0
_021588d0:
bl func_ov61_02158714
ldr r0, [r4]
cmp r0, #0
bne _021588d0
_021588e0:
mov r0, r5
bl func_0200ee60
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_021588b4
_021588ec: .word data_ov61_02180cb0
.global func_ov61_021588f0
arm_func_start func_ov61_021588f0
func_ov61_021588f0: ; 0x021588f0
stmdb sp!, {r3, r4, r5, lr}
ldr r1, _02158984 ; =data_ov61_02180c44
ldr r0, [r1]
cmp r0, #0
ldreq r0, _02158988 ; =data_ov61_0217f464
ldreq r0, [r0]
streq r0, [r1]
bl func_ov61_02158a3c
mvn r4, #0x19
cmp r0, r4
bne _02158934
mov r5, #0x64
_02158920:
mov r0, r5
bl func_0200db28
bl func_ov61_02158a3c
cmp r0, r4
beq _02158920
_02158934:
bl func_ov61_02156b0c
movs r4, r0
bmi _0215897c
bl func_ov61_02151ed8
mov r0, #0
bl func_ov61_02151ec8
ldr r0, _0215898c ; =data_ov61_0217bc28
ldr r1, [r0]
ldr r0, [r1, #0x28]
cmp r0, #0
bne _02158970
ldr r0, _02158990 ; =data_ov61_02180c50
ldr r1, [r1, #0x1c]
ldr r0, [r0, #0x1c]
blx r1
_02158970:
ldr r0, _0215898c ; =data_ov61_0217bc28
mov r1, #0
str r1, [r0]
_0215897c:
mov r0, r4
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_021588f0
_02158984: .word data_ov61_02180c44
_02158988: .word data_ov61_0217f464
_0215898c: .word data_ov61_0217bc28
_02158990: .word data_ov61_02180c50
.global func_ov61_02158994
arm_func_start func_ov61_02158994
func_ov61_02158994: ; 0x02158994
stmdb sp!, {r4, r5, r6, lr}
ldr r4, _02158a30 ; =data_ov61_02180c4c
ldr r5, _02158a34 ; =data_ov61_02180cac
_021589a0:
bl func_0200ee4c
ldr r6, [r5]
cmp r6, #0
beq _021589d4
ldr r2, [r4]
_021589b4:
cmp r6, r2
beq _021589c8
ldrsh r1, [r6, #0x70]
tst r1, #0x10
beq _021589d4
_021589c8:
ldr r6, [r6, #0x7c]
cmp r6, #0
bne _021589b4
_021589d4:
bl func_0200ee60
cmp r6, #0
beq _021589ec
mov r0, r6
bl func_ov61_021585ac
b _021589a0
_021589ec:
ldr r0, _02158a34 ; =data_ov61_02180cac
ldr r1, [r0]
cmp r1, #0
beq _02158a14
ldr r0, _02158a30 ; =data_ov61_02180c4c
ldr r0, [r0]
cmp r1, r0
ldreq r0, [r1, #0x7c]
cmpeq r0, #0
bne _02158a28
_02158a14:
ldr r0, _02158a38 ; =data_ov61_02180cb0
ldr r0, [r0]
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
_02158a28:
mvn r0, #0x19
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02158994
_02158a30: .word data_ov61_02180c4c
_02158a34: .word data_ov61_02180cac
_02158a38: .word data_ov61_02180cb0
.global func_ov61_02158a3c
arm_func_start func_ov61_02158a3c
func_ov61_02158a3c: ; 0x02158a3c
stmdb sp!, {r4, lr}
ldr r0, _02158ab4 ; =data_ov61_02180c4c
ldr r0, [r0]
cmp r0, #0
beq _02158a90
bl func_ov61_02158994
movs r4, r0
bne _02158a88
ldr r0, _02158ab4 ; =data_ov61_02180c4c
ldr r0, [r0]
bl func_ov61_021585ac
ldr r0, _02158ab4 ; =data_ov61_02180c4c
ldr r0, [r0]
bl func_ov61_02158578
cmp r0, #0
ldrne r0, _02158ab4 ; =data_ov61_02180c4c
movne r1, #0
strne r1, [r0]
mvn r4, #0x19
_02158a88:
bl func_ov61_021588b4
b _02158aac
_02158a90:
bl func_ov61_02151e78
cmp r0, #0
mvneq r4, #0x19
beq _02158aac
mov r0, #0
bl func_ov61_02161104
mov r4, #0
_02158aac:
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02158a3c
_02158ab4: .word data_ov61_02180c4c
.global func_ov61_02158ab8
arm_func_start func_ov61_02158ab8
func_ov61_02158ab8: ; 0x02158ab8
stmdb sp!, {r4, r5, lr}
sub sp, sp, #0x64
movs r5, r0
addeq sp, sp, #0x64
moveq r0, #0
ldmeqia sp!, {r4, r5, pc}
ldr r1, _02158b5c ; =data_ov61_0217bc28
mov r0, #0xfd0
ldr r1, [r1]
ldr r1, [r1, #0x18]
blx r1
movs r4, r0
addeq sp, sp, #0x64
moveq r0, #0
ldmeqia sp!, {r4, r5, pc}
add r0, sp, #0
mov r1, #0
mov r2, #0x64
bl func_02007a44
add r0, r4, #0x368
add r2, r0, #0x800
ldr r3, _02158b60 ; =0x00000b68
ldr r1, _02158b64 ; =0x00000466
add r0, sp, #0
str r4, [sp, #0x40]
str r3, [sp, #0x3c]
str r2, [sp, #0x4c]
str r1, [sp, #0x48]
bl func_ov61_02154b08
mov r0, r5
bl func_ov61_021566cc
mov r5, r0
bl func_ov61_02154b1c
ldr r1, _02158b5c ; =data_ov61_0217bc28
mov r0, r4
ldr r1, [r1]
ldr r1, [r1, #0x1c]
blx r1
mov r0, r5
add sp, sp, #0x64
ldmia sp!, {r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02158ab8
_02158b5c: .word data_ov61_0217bc28
_02158b60: .word 0x00000b68
_02158b64: .word 0x00000466
.global func_ov61_02158b68
arm_func_start func_ov61_02158b68
func_ov61_02158b68: ; 0x02158b68
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r4, r0
bl func_0200ee4c
ldr r1, _02158bb0 ; =data_ov61_0217f474
mov r5, r0
ldmia r1, {r6, r7}
mov r2, #0
str r2, [r1]
mov r0, r4
str r2, [r1, #4]
bl func_ov61_021566cc
ldr r1, _02158bb0 ; =data_ov61_0217f474
mov r4, r0
mov r0, r5
stmia r1, {r6, r7}
bl func_0200ee60
mov r0, r4
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02158b68
_02158bb0: .word data_ov61_0217f474
.global func_ov61_02158bb4
arm_func_start func_ov61_02158bb4
func_ov61_02158bb4: ; 0x02158bb4
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
bl func_ov61_02158be8
cmp r0, #0
mvneq r0, #0x26
ldmeqia sp!, {r3, r4, r5, pc}
ldr r1, _02158be4 ; =data_ov61_0217f474
mov r0, #0
str r5, [r1]
str r4, [r1, #4]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02158bb4
_02158be4: .word data_ov61_0217f474
.global func_ov61_02158be8
arm_func_start func_ov61_02158be8
func_ov61_02158be8: ; 0x02158be8
stmdb sp!, {r3, lr}
ldr r0, _02158c44 ; =data_ov61_0217f464
ldr r2, [r0]
cmp r2, #0
bne _02158c28
ldr r0, _02158c48 ; =data_ov61_02180c48
ldr r0, [r0]
and r0, r0, #3
cmp r0, #1
bne _02158c38
bl func_0200eeb0
cmp r0, #0x12
beq _02158c38
mov r0, #0xa
bl func_0200db28
b _02158c38
_02158c28:
ldr r0, _02158c4c ; =data_ov61_02180c44
ldr r1, [r0]
cmp r1, #0
streq r2, [r0]
_02158c38:
ldr r0, _02158c44 ; =data_ov61_0217f464
ldr r0, [r0]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02158be8
_02158c44: .word data_ov61_0217f464
_02158c48: .word data_ov61_02180c48
_02158c4c: .word data_ov61_02180c44
.global func_ov61_02158c50
arm_func_start func_ov61_02158c50
func_ov61_02158c50: ; 0x02158c50
stmdb sp!, {r4, r5, r6, lr}
mov r4, #0
mov r5, r0
bl func_ov61_02158e2c
cmp r0, #0
orrne r4, r4, #0x80
bne _02158d18
ldrsh r0, [r5, #0x70]
tst r0, #0x40
ldrsb r0, [r5, #0x73]
orrne r4, r4, #0x20
cmp r0, #1
beq _02158c90
ldrsh r0, [r5, #0x70]
tst r0, #4
beq _02158cc0
_02158c90:
bl func_0200ee4c
mov r6, r0
mov r0, r5
bl func_ov61_02158d20
cmp r0, #0
mov r0, r5
orrgt r4, r4, #1
bl func_ov61_021580ac
cmp r0, #0
mov r0, r6
orrgt r4, r4, #8
bl func_0200ee60
_02158cc0:
ldrsb r0, [r5, #0x73]
mov r1, #1
cmp r0, #0
cmpne r0, #4
movne r1, #0
cmp r1, #0
beq _02158d18
ldrsh r0, [r5, #0x70]
tst r0, #4
ldrneb r0, [r5, #8]
cmpne r0, #4
beq _02158d00
tst r4, #1
ldreqsh r0, [r5, #0x70]
biceq r0, r0, #6
streqh r0, [r5, #0x70]
_02158d00:
ldrsh r0, [r5, #0x70]
tst r0, #2
bne _02158d18
ldrsh r0, [r5, #0x70]
tst r0, #4
orreq r4, r4, #0x40
_02158d18:
mov r0, r4
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02158c50
.global func_ov61_02158d20
arm_func_start func_ov61_02158d20
func_ov61_02158d20: ; 0x02158d20
ldr r2, [r0, #0x64]
mov r3, #0
cmp r2, #0
beq _02158d60
ldrsb r1, [r0, #0x73]
cmp r1, #1
bne _02158d4c
ldr r0, [r2, #0x104]
cmp r0, #0
ldrneh r3, [r0, #4]
b _02158d60
_02158d4c:
cmp r1, #0
cmpne r1, #4
ldreq r1, [r0, #0x44]
ldreq r0, [r2, #0xf8]
subeq r3, r1, r0
_02158d60:
mov r0, r3
bx lr
arm_func_end func_ov61_02158d20
.global func_ov61_02158d68
arm_func_start func_ov61_02158d68
func_ov61_02158d68: ; 0x02158d68
add r0, r0, #3
bic r0, r0, #3
bx lr
arm_func_end func_ov61_02158d68
.global func_ov61_02158d74
arm_func_start func_ov61_02158d74
func_ov61_02158d74: ; 0x02158d74
ldr ip, _02158d84 ; =func_ov61_02158d8c
mov r1, r0
ldr r0, _02158d88 ; =data_ov61_02180cac
bx ip
.align 2, 0
arm_func_end func_ov61_02158d74
_02158d84: .word func_ov61_02158d8c
_02158d88: .word data_ov61_02180cac
.global func_ov61_02158d8c
arm_func_start func_ov61_02158d8c
func_ov61_02158d8c: ; 0x02158d8c
ldr r2, [r0]
str r2, [r1, #0x7c]
str r1, [r0]
bx lr
arm_func_end func_ov61_02158d8c
.global func_ov61_02158d9c
arm_func_start func_ov61_02158d9c
func_ov61_02158d9c: ; 0x02158d9c
ldr ip, _02158dac ; =func_ov61_02158d8c
mov r1, r0
ldr r0, _02158db0 ; =data_ov61_02180cb0
bx ip
.align 2, 0
arm_func_end func_ov61_02158d9c
_02158dac: .word func_ov61_02158d8c
_02158db0: .word data_ov61_02180cb0
.global func_ov61_02158db4
arm_func_start func_ov61_02158db4
func_ov61_02158db4: ; 0x02158db4
ldr ip, _02158dc4 ; =func_ov61_02158dcc
mov r1, r0
ldr r0, _02158dc8 ; =data_ov61_02180cac
bx ip
.align 2, 0
arm_func_end func_ov61_02158db4
_02158dc4: .word func_ov61_02158dcc
_02158dc8: .word data_ov61_02180cac
.global func_ov61_02158dcc
arm_func_start func_ov61_02158dcc
func_ov61_02158dcc: ; 0x02158dcc
stmdb sp!, {r4, lr}
mov r4, r1
bl func_ov61_02158de8
cmp r0, #0
ldrne r1, [r4, #0x7c]
strne r1, [r0]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02158dcc
.global func_ov61_02158de8
arm_func_start func_ov61_02158de8
func_ov61_02158de8: ; 0x02158de8
ldr r2, [r0]
cmp r2, #0
beq _02158e0c
_02158df4:
cmp r2, r1
bxeq lr
add r0, r2, #0x7c
ldr r2, [r2, #0x7c]
cmp r2, #0
bne _02158df4
_02158e0c:
mov r0, #0
bx lr
arm_func_end func_ov61_02158de8
.global func_ov61_02158e14
arm_func_start func_ov61_02158e14
func_ov61_02158e14: ; 0x02158e14
ldr ip, _02158e24 ; =func_ov61_02158dcc
mov r1, r0
ldr r0, _02158e28 ; =data_ov61_02180cb0
bx ip
.align 2, 0
arm_func_end func_ov61_02158e14
_02158e24: .word func_ov61_02158dcc
_02158e28: .word data_ov61_02180cb0
.global func_ov61_02158e2c
arm_func_start func_ov61_02158e2c
func_ov61_02158e2c: ; 0x02158e2c
stmdb sp!, {r3, lr}
mov r1, r0
cmp r1, #0
ble _02158e4c
ldr r0, _02158e5c ; =data_ov61_02180cac
bl func_ov61_02158de8
cmp r0, #0
bne _02158e54
_02158e4c:
mov r0, #1
ldmia sp!, {r3, pc}
_02158e54:
mov r0, #0
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02158e2c
_02158e5c: .word data_ov61_02180cac
.global func_ov61_02158e60
arm_func_start func_ov61_02158e60
func_ov61_02158e60: ; 0x02158e60
stmdb sp!, {r3, lr}
mov r1, r0
ldr r0, _02158e80 ; =data_ov61_02180cb0
bl func_ov61_02158de8
cmp r0, #0
movne r0, #1
moveq r0, #0
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02158e60
_02158e80: .word data_ov61_02180cb0
.global func_ov61_02158e84
arm_func_start func_ov61_02158e84
func_ov61_02158e84: ; 0x02158e84
stmdb sp!, {r3, lr}
cmp r1, #1
bne _02158e9c
ldr r0, _02158ea8 ; =data_ov61_0217bc48
bl func_ov61_02156dac
ldmia sp!, {r3, pc}
_02158e9c:
ldr r0, _02158eac ; =data_ov61_0217bc30
bl func_ov61_02156dac
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02158e84
_02158ea8: .word data_ov61_0217bc48
_02158eac: .word data_ov61_0217bc30
.global func_ov61_02158eb0
arm_func_start func_ov61_02158eb0
func_ov61_02158eb0: ; 0x02158eb0
ldrh r1, [r1, #2]
ldr ip, _02158ed8 ; =func_ov61_02157390
mov r2, r1, asr #0x8
mov r1, r1, lsl #0x8
and r2, r2, #0xff
and r1, r1, #0xff00
orr r1, r2, r1
mov r1, r1, lsl #0x10
mov r1, r1, lsr #0x10
bx ip
.align 2, 0
arm_func_end func_ov61_02158eb0
_02158ed8: .word func_ov61_02157390
.global func_ov61_02158edc
arm_func_start func_ov61_02158edc
func_ov61_02158edc: ; 0x02158edc
stmdb sp!, {r4, lr}
ldrh r2, [r1, #2]
ldr lr, [r1, #4]
mov r4, r2, asr #0x8
mov r1, r2, lsl #0x8
mov r3, lr, lsr #0x18
mov r2, lr, lsr #0x8
mov ip, lr, lsl #0x8
mov lr, lr, lsl #0x18
and r4, r4, #0xff
and r1, r1, #0xff00
orr r1, r4, r1
mov r1, r1, lsl #0x10
and r3, r3, #0xff
and r2, r2, #0xff00
and ip, ip, #0xff0000
orr r2, r3, r2
and r3, lr, #0xff000000
orr r2, ip, r2
mov r1, r1, lsr #0x10
orr r2, r3, r2
bl func_ov61_02157400
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02158edc
.global func_ov61_02158f38
arm_func_start func_ov61_02158f38
func_ov61_02158f38: ; 0x02158f38
stmdb sp!, {r3, lr}
sub sp, sp, #8
mov ip, #0
str ip, [sp]
str r3, [sp, #4]
mov r3, ip
bl func_ov61_021575c4
add sp, sp, #8
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02158f38
.global func_ov61_02158f5c
arm_func_start func_ov61_02158f5c
func_ov61_02158f5c: ; 0x02158f5c
stmdb sp!, {r3, lr}
sub sp, sp, #0x10
add ip, sp, #0xc
str ip, [sp]
str r3, [sp, #4]
add r3, sp, #8
bl func_ov61_021575c4
cmp r0, #0
addlt sp, sp, #0x10
ldmltia sp!, {r3, pc}
ldr r1, [sp, #0x18]
cmp r1, #0
addeq sp, sp, #0x10
ldmeqia sp!, {r3, pc}
ldrh r2, [sp, #8]
mov r3, r2, asr #0x8
mov r2, r2, lsl #0x8
and r3, r3, #0xff
and r2, r2, #0xff00
orr r2, r3, r2
strh r2, [r1, #2]
ldr lr, [sp, #0xc]
mov r3, lr, lsr #0x18
mov r2, lr, lsr #0x8
mov ip, lr, lsl #0x8
mov lr, lr, lsl #0x18
and r3, r3, #0xff
and r2, r2, #0xff00
and ip, ip, #0xff0000
orr r2, r3, r2
and r3, lr, #0xff000000
orr r2, ip, r2
orr r2, r3, r2
str r2, [r1, #4]
add sp, sp, #0x10
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02158f5c
.global func_ov61_02158fec
arm_func_start func_ov61_02158fec
func_ov61_02158fec: ; 0x02158fec
stmdb sp!, {r3, lr}
sub sp, sp, #8
mov ip, #0
str ip, [sp]
str r3, [sp, #4]
mov r3, ip
bl func_ov61_02157e10
add sp, sp, #8
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02158fec
.global func_ov61_02159010
arm_func_start func_ov61_02159010
func_ov61_02159010: ; 0x02159010
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #8
ldr r5, [sp, #0x20]
cmp r5, #0
moveq r5, #0
moveq r4, r5
beq _0215907c
ldrh r4, [r5, #2]
ldr r6, [r5, #4]
mov r7, r4, asr #0x8
mov ip, r4, lsl #0x8
mov r4, r6, lsr #0x18
mov lr, r6, lsr #0x8
mov r5, r6, lsl #0x8
mov r6, r6, lsl #0x18
and r7, r7, #0xff
and ip, ip, #0xff00
orr r7, r7, ip
and r4, r4, #0xff
and lr, lr, #0xff00
and r5, r5, #0xff0000
orr r4, r4, lr
mov ip, r7, lsl #0x10
orr r4, r5, r4
and r6, r6, #0xff000000
mov r5, ip, lsr #0x10
orr r4, r6, r4
_0215907c:
str r4, [sp]
str r3, [sp, #4]
mov r3, r5
bl func_ov61_02157e10
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_02159010
.global func_ov61_02159094
arm_func_start func_ov61_02159094
func_ov61_02159094: ; 0x02159094
ldr ip, _0215909c ; =func_ov61_0215849c
bx ip
.align 2, 0
arm_func_end func_ov61_02159094
_0215909c: .word func_ov61_0215849c
.global func_ov61_021590a0
arm_func_start func_ov61_021590a0
func_ov61_021590a0: ; 0x021590a0
ldr ip, _021590a8 ; =func_ov61_021585ac
bx ip
.align 2, 0
arm_func_end func_ov61_021590a0
_021590a8: .word func_ov61_021585ac
.global func_ov61_021590ac
arm_func_start func_ov61_021590ac
func_ov61_021590ac: ; 0x021590ac
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
bl func_ov61_02158ab8
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r0, _02159154 ; =data_ov61_02180d3c
ldr r2, _02159158 ; =0x00000101
mov r1, #0
bl func_02007a44
ldr r0, _02159154 ; =data_ov61_02180d3c
ldr r2, _02159158 ; =0x00000101
mov r1, r5
blx func_02042cfc
mov r3, r4, lsr #0x18
mov r2, r4, lsr #0x8
mov ip, r4, lsl #0x8
mov lr, r4, lsl #0x18
ldr r4, _02159154 ; =data_ov61_02180d3c
ldr r1, _0215915c ; =data_ov61_02180cb4
mov r0, #0
str r4, [r1, #0x20]
str r0, [r1, #0x24]
mov r4, #2
strh r4, [r1, #0x28]
mov r4, #4
ldr r5, _02159160 ; =data_ov61_02180ccc
strh r4, [r1, #0x2a]
and r3, r3, #0xff
and r2, r2, #0xff00
ldr r4, _02159164 ; =data_ov61_02180cb4
str r5, [r1, #0x2c]
str r4, [r1, #0x18]
and ip, ip, #0xff0000
orr r2, r3, r2
and r3, lr, #0xff000000
orr r2, ip, r2
str r0, [r1, #0x1c]
orr r2, r3, r2
ldr r0, _02159168 ; =data_ov61_02180cd4
str r2, [r1]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_021590ac
_02159154: .word data_ov61_02180d3c
_02159158: .word 0x00000101
_0215915c: .word data_ov61_02180cb4
_02159160: .word data_ov61_02180ccc
_02159164: .word data_ov61_02180cb4
_02159168: .word data_ov61_02180cd4
.global func_ov61_0215916c
arm_func_start func_ov61_0215916c
func_ov61_0215916c: ; 0x0215916c
stmdb sp!, {r4, r5, r6, lr}
movs r5, r0
mov r4, r1
mvneq r0, #0x26
ldmeqia sp!, {r4, r5, r6, pc}
bl func_ov61_02158be8
cmp r5, #0
ldrneh r1, [r5, #0x74]
mov r2, r0, lsr #0x18
mov r6, #8
moveq r1, #0
cmp r0, #0
moveq r1, #0
mov r1, r1, lsl #0x10
mov r3, r1, lsr #0x10
mov r5, r3, asr #0x8
mov lr, r3, lsl #0x8
strb r6, [r4]
mov r6, #2
mov r1, r0, lsr #0x8
mov r3, r0, lsl #0x8
mov ip, r0, lsl #0x18
and r0, r1, #0xff00
and r2, r2, #0xff
orr r0, r2, r0
and r1, r3, #0xff0000
and r5, r5, #0xff
and lr, lr, #0xff00
strb r6, [r4, #1]
orr r3, r5, lr
and r2, ip, #0xff000000
orr r0, r1, r0
strh r3, [r4, #2]
orr r0, r2, r0
str r0, [r4, #4]
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0215916c
.global func_ov61_02159200
arm_func_start func_ov61_02159200
func_ov61_02159200: ; 0x02159200
stmdb sp!, {r3, lr}
bl func_ov61_02158be8
mov r2, r0, lsr #0x18
mov r1, r0, lsr #0x8
mov r3, r0, lsl #0x8
mov ip, r0, lsl #0x18
and r2, r2, #0xff
and r0, r1, #0xff00
and r1, r3, #0xff0000
orr r0, r2, r0
and r2, ip, #0xff000000
orr r0, r1, r0
orr r0, r2, r0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02159200
.global func_ov61_02159238
arm_func_start func_ov61_02159238
func_ov61_02159238: ; 0x02159238
stmdb sp!, {r3, r4, r5, lr}
ldr ip, [r1]
ldr r0, [r0]
mov r2, ip, lsr #0x18
mov r4, r0, lsr #0x18
mov lr, r0, lsr #0x8
mov r1, ip, lsr #0x8
mov r5, r0, lsl #0x8
mov r3, ip, lsl #0x8
mov r0, r0, lsl #0x18
mov ip, ip, lsl #0x18
and r4, r4, #0xff
and lr, lr, #0xff00
and r2, r2, #0xff
and r1, r1, #0xff00
and r5, r5, #0xff0000
orr r4, r4, lr
and r3, r3, #0xff0000
orr r1, r2, r1
and lr, r0, #0xff000000
orr r0, r5, r4
and r2, ip, #0xff000000
orr r1, r3, r1
orr r0, lr, r0
orr r1, r2, r1
bl func_ov61_02158bb4
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02159238
.global func_ov61_021592a4
arm_func_start func_ov61_021592a4
func_ov61_021592a4: ; 0x021592a4
ldr ip, _021592ac ; =func_ov61_02157104
bx ip
.align 2, 0
arm_func_end func_ov61_021592a4
_021592ac: .word func_ov61_02157104
.global func_ov61_021592b0
arm_func_start func_ov61_021592b0
func_ov61_021592b0: ; 0x021592b0
stmdb sp!, {r4, lr}
sub sp, sp, #8
mov r4, r1
add r1, sp, #0
add r2, sp, #4
bl func_ov61_02157184
cmp r0, #0
addlt sp, sp, #8
ldmltia sp!, {r4, pc}
ldrh r1, [sp]
mov r2, r1, asr #0x8
mov r1, r1, lsl #0x8
and r2, r2, #0xff
and r1, r1, #0xff00
orr r1, r2, r1
strh r1, [r4, #2]
ldr ip, [sp, #4]
mov r2, ip, lsr #0x18
mov r1, ip, lsr #0x8
mov r3, ip, lsl #0x8
mov ip, ip, lsl #0x18
and r2, r2, #0xff
and r1, r1, #0xff00
and r3, r3, #0xff0000
orr r1, r2, r1
and r2, ip, #0xff000000
orr r1, r3, r1
orr r1, r2, r1
str r1, [r4, #4]
add sp, sp, #8
ldmia sp!, {r4, pc}
arm_func_end func_ov61_021592b0
.global func_ov61_0215932c
arm_func_start func_ov61_0215932c
func_ov61_0215932c: ; 0x0215932c
cmp r0, #0
mvneq r0, #0
bxeq lr
cmp r1, #3
beq _0215934c
cmp r1, #4
beq _02159360
b _02159374
_0215934c:
ldrsb r0, [r0, #0x72]
cmp r0, #1
moveq r0, #0
movne r0, #4
bx lr
_02159360:
tst r2, #4
movne r1, #0
strneb r1, [r0, #0x72]
moveq r1, #1
streqb r1, [r0, #0x72]
_02159374:
mov r0, #0
bx lr
arm_func_end func_ov61_0215932c
.global func_ov61_0215937c
arm_func_start func_ov61_0215937c
func_ov61_0215937c: ; 0x0215937c
stmdb sp!, {r4, lr}
ldr r1, _021593a4 ; =data_ov61_02180cb4
add r4, r0, #4
ldr r2, [r1, #0xc]
mov r1, r4
mov r0, #0
blx r2
cmp r0, #0
strne r4, [r0], #4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0215937c
_021593a4: .word data_ov61_02180cb4
.global func_ov61_021593a8
arm_func_start func_ov61_021593a8
func_ov61_021593a8: ; 0x021593a8
stmdb sp!, {r3, lr}
cmp r0, #0
ldmeqia sp!, {r3, pc}
ldr r1, _021593d0 ; =data_ov61_02180cb4
ldr r2, [r0, #-4]
ldr r3, [r1, #4]
sub r1, r0, #4
mov r0, #0
blx r3
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021593a8
_021593d0: .word data_ov61_02180cb4
.global func_ov61_021593d4
arm_func_start func_ov61_021593d4
func_ov61_021593d4: ; 0x021593d4
stmdb sp!, {r4, r5, r6, lr}
ldr r1, [r0, #0xc]
ldr ip, _02159538 ; =func_ov61_0215937c
cmp r1, #1
moveq r2, #1
ldr r1, _0215953c ; =data_ov61_02180cb4
movne r2, #0
str r2, [r1, #0x40]
ldr r6, [r0, #0x10]
ldr r3, _02159540 ; =func_ov61_021593a8
mov r4, r6, lsr #0x18
mov r2, r6, lsr #0x8
mov r5, r6, lsl #0x8
and r4, r4, #0xff
and r2, r2, #0xff00
mov r6, r6, lsl #0x18
orr r2, r4, r2
and r5, r5, #0xff0000
and r4, r6, #0xff000000
orr r2, r5, r2
orr r2, r4, r2
str r2, [r1, #0x44]
ldr lr, [r0, #0x14]
mov r2, #0x40
mov r5, lr, lsr #0x18
mov r4, lr, lsr #0x8
mov r6, lr, lsl #0x8
and r5, r5, #0xff
and r4, r4, #0xff00
mov lr, lr, lsl #0x18
orr r4, r5, r4
and r6, r6, #0xff0000
and r5, lr, #0xff000000
orr r4, r6, r4
orr r4, r5, r4
str r4, [r1, #0x48]
ldr lr, [r0, #0x18]
mov r5, lr, lsr #0x18
mov r4, lr, lsr #0x8
mov r6, lr, lsl #0x8
and r5, r5, #0xff
and r4, r4, #0xff00
mov lr, lr, lsl #0x18
orr r4, r5, r4
and r6, r6, #0xff0000
and r5, lr, #0xff000000
orr r4, r6, r4
orr r4, r5, r4
str r4, [r1, #0x4c]
ldr lr, [r0, #0x1c]
mov r5, lr, lsr #0x18
mov r4, lr, lsr #0x8
mov r6, lr, lsl #0x8
and r5, r5, #0xff
and r4, r4, #0xff00
mov lr, lr, lsl #0x18
orr r4, r5, r4
and r6, r6, #0xff0000
and r5, lr, #0xff000000
orr r4, r6, r4
orr r4, r5, r4
str r4, [r1, #0x50]
ldr r6, [r0, #0x20]
mov r4, r6, lsr #0x18
mov lr, r6, lsr #0x8
mov r5, r6, lsl #0x8
mov r6, r6, lsl #0x18
and r4, r4, #0xff
and lr, lr, #0xff00
and r5, r5, #0xff0000
orr r4, r4, lr
and r6, r6, #0xff000000
orr r4, r5, r4
orr r4, r6, r4
str r4, [r1, #0x54]
str ip, [r1, #0x58]
str r3, [r1, #0x5c]
ldr r3, [r0, #4]
str r3, [r1, #0xc]
ldr r3, [r0, #8]
str r3, [r1, #4]
str r2, [r1, #0x60]
ldr r2, [r0, #0x2c]
str r2, [r1, #0x70]
ldr r2, [r0, #0x30]
ldr r0, _02159544 ; =data_ov61_02180cf4
str r2, [r1, #0x74]
bl func_ov61_02156804
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_021593d4
_02159538: .word func_ov61_0215937c
_0215953c: .word data_ov61_02180cb4
_02159540: .word func_ov61_021593a8
_02159544: .word data_ov61_02180cf4
.global func_ov61_02159548
arm_func_start func_ov61_02159548
func_ov61_02159548: ; 0x02159548
ldr ip, _02159550 ; =func_ov61_021588f0
bx ip
.align 2, 0
arm_func_end func_ov61_02159548
_02159550: .word func_ov61_021588f0
.global func_ov61_02159554
arm_func_start func_ov61_02159554
func_ov61_02159554: ; 0x02159554
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r3, lr}
ldr r2, _02159580 ; =data_ov61_02180d2c
add r1, sp, #8
mov r0, #2
mov r3, #0x10
bl func_ov61_021595d4
ldr r0, _02159580 ; =data_ov61_02180d2c
ldmia sp!, {r3, lr}
add sp, sp, #0x10
bx lr
.align 2, 0
arm_func_end func_ov61_02159554
_02159580: .word data_ov61_02180d2c
.global func_ov61_02159584
arm_func_start func_ov61_02159584
func_ov61_02159584: ; 0x02159584
stmdb sp!, {r4, lr}
mov r4, r1
bl func_ov61_02158b68
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, pc}
mov r2, r0, lsr #0x18
mov r1, r0, lsr #0x8
mov r3, r0, lsl #0x8
mov ip, r0, lsl #0x18
and r2, r2, #0xff
and r0, r1, #0xff00
and r1, r3, #0xff0000
orr r0, r2, r0
and r2, ip, #0xff000000
orr r0, r1, r0
orr r0, r2, r0
str r0, [r4]
mov r0, #1
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02159584
.global func_ov61_021595d4
arm_func_start func_ov61_021595d4
func_ov61_021595d4: ; 0x021595d4
stmdb sp!, {r3, r4, lr}
sub sp, sp, #0x14
cmp r0, #2
mov r4, r2
addne sp, sp, #0x14
movne r0, #0
ldmneia sp!, {r3, r4, pc}
cmp r3, #0x10
addlo sp, sp, #0x14
movlo r0, #0
ldmloia sp!, {r3, r4, pc}
mov r0, r1
add r1, sp, #0x10
mov r2, #4
bl func_02007ad8
ldr r0, [sp, #0x10]
add r1, sp, #0xc
bl func_ov61_02159658
ldrb r1, [sp, #0xe]
ldr r2, _02159654 ; =data_ov61_0217bc78
mov r0, r4
str r1, [sp]
ldrb r3, [sp, #0xd]
mov r1, #0x10
str r3, [sp, #4]
ldrb r3, [sp, #0xc]
str r3, [sp, #8]
ldrb r3, [sp, #0xf]
bl func_0200c910
mov r0, r4
add sp, sp, #0x14
ldmia sp!, {r3, r4, pc}
.align 2, 0
arm_func_end func_ov61_021595d4
_02159654: .word data_ov61_0217bc78
.global func_ov61_02159658
arm_func_start func_ov61_02159658
func_ov61_02159658: ; 0x02159658
mov r2, r0, lsr #0x18
strb r2, [r1]
mov r2, r0, lsr #0x10
strb r2, [r1, #1]
mov r2, r0, lsr #0x8
strb r2, [r1, #2]
strb r0, [r1, #3]
bx lr
arm_func_end func_ov61_02159658
.global func_ov61_02159678
arm_func_start func_ov61_02159678
func_ov61_02159678: ; 0x02159678
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
mov r9, r2
mov r8, r3
mvn r2, #0
cmp r8, r2
cmpeq r9, r2
movne r11, #1
str r0, [sp]
mov r10, r1
moveq r11, #0
_021596a0:
mov r6, #0
ldr r4, [sp]
mov r5, r6
cmp r10, #0
bls _021596e0
_021596b4:
ldrsh r1, [r4, #4]
ldr r0, [r4]
orr r7, r1, #0xe0
bl func_ov61_02158c50
ands r0, r7, r0
strh r0, [r4, #6]
add r5, r5, #1
addne r6, r6, #1
add r4, r4, #8
cmp r5, r10
blo _021596b4
_021596e0:
cmp r6, #0
bgt _02159720
cmp r11, #0
beq _02159704
mov r0, #0
subs r0, r0, r9
mov r0, #0
sbcs r0, r0, r8
bge _02159720
_02159704:
mov r0, #1
bl func_0200db28
ldr r0, _02159728 ; =0x0000020b
subs r9, r9, r0
mov r0, #0
sbc r8, r8, r0
b _021596a0
_02159720:
mov r0, r6
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02159678
_02159728: .word 0x0000020b
.global func_ov61_0215972c
arm_func_start func_ov61_0215972c
func_ov61_0215972c: ; 0x0215972c
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r7, r0
bl func_0200ee4c
mov r4, #0
ldr r6, _021597bc ; =data_ov61_02180e48
mov r5, r0
strb r4, [r7, #0x30]
mov r8, #0x20
_0215974c:
ldrb r0, [r6, #0x5a]
cmp r0, #0
beq _021597a0
ldr r0, [r6, #0x54]
cmp r0, #0
ldreqh r0, [r6, #0x58]
cmpeq r0, #0
bne _021597a0
mov r0, r6
mov r2, r8
add r1, r7, #0x74
bl func_0204366c
cmp r0, #0
bne _021597a0
mov r1, r7
add r0, r6, #0x20
mov r2, #0x30
bl func_02007ad8
mov r0, #1
strb r0, [r7, #0x30]
b _021597b0
_021597a0:
add r4, r4, #1
cmp r4, #4
add r6, r6, #0x5c
blt _0215974c
_021597b0:
mov r0, r5
bl func_0200ee60
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_0215972c
_021597bc: .word data_ov61_02180e48
.global func_ov61_021597c0
arm_func_start func_ov61_021597c0
func_ov61_021597c0: ; 0x021597c0
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r8, r0
mov r7, r1
mov r6, r2
bl func_0200ee4c
mov r1, #0
ldr r5, _0215985c ; =data_ov61_02180e48
mov r4, r0
strb r1, [r8, #0x30]
_021597e4:
ldrb r0, [r5, #0x5a]
cmp r0, #0
beq _02159840
ldr r0, [r5, #0x54]
cmp r0, r7
ldreqh r0, [r5, #0x58]
cmpeq r0, r6
bne _02159840
mov r0, r5
add r1, r8, #0x74
mov r2, #0x20
bl func_02007ad8
mov r1, r8
add r0, r5, #0x20
mov r2, #0x30
bl func_02007ad8
bl func_0200e8f8
mov r0, r0, lsr #0x10
orr r0, r0, r1, lsl #16
str r0, [r5, #0x50]
mov r0, #1
strb r0, [r8, #0x30]
b _02159850
_02159840:
add r1, r1, #1
cmp r1, #4
add r5, r5, #0x5c
blt _021597e4
_02159850:
mov r0, r4
bl func_0200ee60
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_021597c0
_0215985c: .word data_ov61_02180e48
.global func_ov61_02159860
arm_func_start func_ov61_02159860
func_ov61_02159860: ; 0x02159860
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r8, r0
mov r7, r1
mov r6, r2
bl func_0200ee4c
mov r4, r0
bl func_0200e8f8
ldr r9, _02159948 ; =data_ov61_02180e48
mov r5, r0, lsr #0x10
mov r2, #0
mov r0, r2
mov r3, r9
orr r5, r5, r1, lsl #16
mvn ip, #0
_02159898:
ldrb lr, [r3, #0x5a]
cmp lr, #0
cmpne r7, #0
beq _021598cc
ldr r1, [r3, #0x54]
cmp r7, r1
bne _021598cc
cmp r6, #0
beq _021598cc
ldrh r1, [r3, #0x58]
cmp r6, r1
moveq r9, r3
beq _02159908
_021598cc:
cmp r2, ip
beq _021598f8
cmp lr, #0
moveq r2, ip
moveq r9, r3
beq _021598f8
ldr r1, [r3, #0x50]
sub r1, r5, r1
cmp r1, r2
movhi r2, r1
movhi r9, r3
_021598f8:
add r0, r0, #1
cmp r0, #4
add r3, r3, #0x5c
blt _02159898
_02159908:
mov r1, r9
add r0, r8, #0x74
mov r2, #0x20
bl func_02007ad8
mov r0, r8
add r1, r9, #0x20
mov r2, #0x30
bl func_02007ad8
str r5, [r9, #0x50]
mov r0, #1
strb r0, [r9, #0x5a]
str r7, [r9, #0x54]
mov r0, r4
strh r6, [r9, #0x58]
bl func_0200ee60
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_02159860
_02159948: .word data_ov61_02180e48
.global func_ov61_0215994c
arm_func_start func_ov61_0215994c
func_ov61_0215994c: ; 0x0215994c
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r8, r0
bl func_0200ee4c
ldr r7, _021599b0 ; =data_ov61_02180e48
mov r6, r0
mov r5, #0
mov r4, #0x20
_02159968:
ldrb r0, [r7, #0x5a]
cmp r0, #0
beq _02159994
mov r0, r7
mov r2, r4
add r1, r8, #0x74
bl func_0204366c
cmp r0, #0
moveq r0, #0
streqb r0, [r7, #0x5a]
beq _021599a4
_02159994:
add r5, r5, #1
cmp r5, #4
add r7, r7, #0x5c
blt _02159968
_021599a4:
mov r0, r6
bl func_0200ee60
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_0215994c
_021599b0: .word data_ov61_02180e48
.global func_ov61_021599b4
arm_func_start func_ov61_021599b4
func_ov61_021599b4: ; 0x021599b4
stmdb sp!, {lr}
sub sp, sp, #0x1c
add r0, sp, #0xc
blx func_02042668
add r0, sp, #0
blx func_020426d4
add r0, sp, #0xc
add r1, sp, #0
blx func_02042bb8
ldr r1, _021599e8 ; =0x386d4380
add r0, r0, r1
add sp, sp, #0x1c
ldmia sp!, {pc}
.align 2, 0
arm_func_end func_ov61_021599b4
_021599e8: .word 0x386d4380
.global func_ov61_021599ec
arm_func_start func_ov61_021599ec
func_ov61_021599ec: ; 0x021599ec
ldr r1, _021599f8 ; =data_ov61_0217bc84
str r0, [r1, #4]
bx lr
.align 2, 0
arm_func_end func_ov61_021599ec
_021599f8: .word data_ov61_0217bc84
.global func_ov61_021599fc
arm_func_start func_ov61_021599fc
func_ov61_021599fc: ; 0x021599fc
stmdb sp!, {r3, r4, r5, lr}
ldr r0, _02159a40 ; =data_ov61_0217bc84
ldr r0, [r0, #4]
cmp r0, #0x20
mvnhs r0, #0
ldmhsia sp!, {r3, r4, r5, pc}
ldr r0, _02159a44 ; =data_027e02a0
ldr r5, [r0, #4]
mov r0, r5
bl func_0200db20
ldr r1, _02159a40 ; =data_ov61_0217bc84
mov r4, r0
ldr r1, [r1, #4]
mov r0, r5
bl func_0200da78
mov r0, r4
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_021599fc
_02159a40: .word data_ov61_0217bc84
_02159a44: .word data_027e02a0
.global func_ov61_02159a48
arm_func_start func_ov61_02159a48
func_ov61_02159a48: ; 0x02159a48
stmdb sp!, {r3, lr}
mov r1, r0
cmp r1, #0x20
ldmhsia sp!, {r3, pc}
ldr r0, _02159a68 ; =data_027e02a0
ldr r0, [r0, #4]
bl func_0200da78
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02159a48
_02159a68: .word data_027e02a0
.global func_ov61_02159a6c
arm_func_start func_ov61_02159a6c
func_ov61_02159a6c: ; 0x02159a6c
ldr r2, _02159a90 ; =data_027e02a0
ldr r2, [r2, #4]
ldr r2, [r2, #0xa4]
cmp r2, #0
ldrne r2, [r2, #0xc]
cmpne r2, #0
strne r0, [r2, #0x814]
strne r1, [r2, #0x818]
bx lr
.align 2, 0
arm_func_end func_ov61_02159a6c
_02159a90: .word data_027e02a0
.global func_ov61_02159a94
arm_func_start func_ov61_02159a94
func_ov61_02159a94: ; 0x02159a94
stmdb sp!, {r4, r5, r6, r7, r8, lr}
ldr r6, [r0, #0x818]
mov r8, r1
cmp r6, #0
mov r4, #0
ble _02159ad8
ldr r5, [r0, #0x814]
_02159ab0:
ldr r7, [r5, r4, lsl #2]
mov r1, r8
ldr r0, [r7]
bl strcmp
cmp r0, #0
moveq r0, r7
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
add r4, r4, #1
cmp r4, r6
blt _02159ab0
_02159ad8:
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, pc}
arm_func_end func_ov61_02159a94
.global func_ov61_02159ae0
arm_func_start func_ov61_02159ae0
func_ov61_02159ae0: ; 0x02159ae0
ldr r1, [r0]
ldrb r2, [r1]
add r3, r1, #1
tst r2, #0x80
beq _02159b24
ands r1, r2, #0x7f
sub ip, r1, #1
mov r2, #0
beq _02159b24
_02159b04:
tst r2, #0xff000000
mvnne r0, #0
bxne lr
ldrb r1, [r3], #1
cmp ip, #0
sub ip, ip, #1
add r2, r1, r2, lsl #8
bne _02159b04
_02159b24:
str r3, [r0]
mov r0, r2
bx lr
arm_func_end func_ov61_02159ae0
.global func_ov61_02159b30
arm_func_start func_ov61_02159b30
func_ov61_02159b30: ; 0x02159b30
ldrsb r3, [r0]
mov ip, r0
cmp r3, #0
beq _02159b78
_02159b40:
ldrsb r3, [r0, #1]!
cmp r3, #0
bne _02159b40
sub r3, r0, ip
cmp r3, #0xff
bxge lr
mov r3, #0x2c
strb r3, [r0]
mov r3, #0x20
strb r3, [r0, #1]
add r0, r0, #2
b _02159b78
_02159b70:
ldrsb r3, [r1], #1
strb r3, [r0], #1
_02159b78:
cmp r2, #0
sub r2, r2, #1
beq _02159b90
sub r3, r0, ip
cmp r3, #0xff
blt _02159b70
_02159b90:
mov r1, #0
strb r1, [r0]
bx lr
arm_func_end func_ov61_02159b30
.global func_ov61_02159b9c
arm_func_start func_ov61_02159b9c
func_ov61_02159b9c: ; 0x02159b9c
stmdb sp!, {r4, lr}
ldrb ip, [r0, #1]
ldrb r3, [r0], #2
mov r2, #0xa
cmp r1, #0x17
mla r1, r3, r2, ip
sub lr, r1, #0x210
bne _02159bd0
cmp lr, #0x32
addlo r4, lr, #0x7d0
addhs r1, lr, #0x36c
addhs r4, r1, #0x400
b _02159be8
_02159bd0:
ldrb ip, [r0, #1]
ldrb r3, [r0], #2
mov r1, #0x64
mla r2, r3, r2, ip
sub r2, r2, #0x210
mla r4, lr, r1, r2
_02159be8:
ldrb ip, [r0, #1]
ldrb r3, [r0]
mov r1, #0xa
ldrb r2, [r0, #3]
ldrb r0, [r0, #2]
mla ip, r3, r1, ip
mla r1, r0, r1, r2
sub r0, ip, #0x210
mov r0, r0, lsl #0x8
add r2, r0, r4, lsl #16
sub r0, r1, #0x210
add r0, r2, r0
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02159b9c
.global func_ov61_02159c1c
arm_func_start func_ov61_02159c1c
func_ov61_02159c1c: ; 0x02159c1c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #8
mov r11, r1
ldr r1, [r11]
mov r9, r0
add r0, r1, #1
str r0, [sp, #4]
add r0, sp, #4
mov r7, r2
mov r6, r3
ldr r8, [sp, #0x30]
ldrb r5, [r1]
bl func_ov61_02159ae0
movs r4, r0
bmi _02159c60
cmp r4, #0x7d0
ble _02159c6c
_02159c60:
add sp, sp, #8
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02159c6c:
and r1, r5, #0x1f
cmp r1, #0x18
addls pc, pc, r1, lsl #2
b _0215a090
_02159c7c: ; jump table
b _0215a090 ; case 0
b _0215a090 ; case 1
b _02159ce0 ; case 2
b _02159dd8 ; case 3
b _0215a090 ; case 4
b _0215a090 ; case 5
b _02159e58 ; case 6
b _0215a090 ; case 7
b _0215a090 ; case 8
b _0215a090 ; case 9
b _0215a090 ; case 10
b _0215a090 ; case 11
b _02159ef0 ; case 12
b _0215a090 ; case 13
b _0215a090 ; case 14
b _0215a090 ; case 15
b _02159fc0 ; case 16
b _0215a040 ; case 17
b _0215a090 ; case 18
b _02159ef0 ; case 19
b _02159ef0 ; case 20
b _0215a090 ; case 21
b _02159ef0 ; case 22
b _02159f70 ; case 23
b _02159f70 ; case 24
_02159ce0:
ldrb r0, [r9, #0x5ad]
cmp r0, #0
beq _02159dc8
cmp r6, #0
bne _02159d60
ldr r0, [sp, #4]
ldrb r1, [r0]
cmp r1, #0
bne _02159d1c
_02159d04:
add r0, r0, #1
str r0, [sp, #4]
ldrb r1, [r0]
sub r4, r4, #1
cmp r1, #0
beq _02159d04
_02159d1c:
cmp r8, #0
beq _02159d30
cmp r8, #2
beq _02159d50
b _02159dc8
_02159d30:
cmp r4, #0x100
bgt _02159dc8
add r1, r9, #0x94
mov r2, r4
add r1, r1, #0x400
bl func_02007ad8
str r4, [r9, #0x594]
b _02159dc8
_02159d50:
str r4, [r9, #0x484]
ldr r0, [sp, #4]
str r0, [r9, #0x488]
b _02159dc8
_02159d60:
cmp r6, #1
bne _02159dc8
ldr r0, [sp, #4]
ldrb r1, [r0]
cmp r1, #0
bne _02159d90
_02159d78:
add r0, r0, #1
str r0, [sp, #4]
ldrb r1, [r0]
sub r4, r4, #1
cmp r1, #0
beq _02159d78
_02159d90:
cmp r8, #0
beq _02159dac
cmp r8, #2
streq r4, [r9, #0x48c]
ldreq r0, [sp, #4]
streq r0, [r9, #0x490]
b _02159dc8
_02159dac:
cmp r4, #8
bgt _02159dc8
add r1, r9, #0x198
mov r2, r4
add r1, r1, #0x400
bl func_02007ad8
str r4, [r9, #0x5a0]
_02159dc8:
ldr r0, [sp, #4]
add r0, r0, r4
str r0, [sp, #4]
b _0215a0f4
_02159dd8:
cmp r7, #1
bne _02159dfc
cmp r8, #2
beq _02159dfc
ldr r1, [sp, #4]
sub r0, r4, #1
add r1, r1, #1
str r1, [r9, #0x5a4]
str r0, [r9, #0x5a8]
_02159dfc:
ldrb r0, [r9, #0x5ad]
cmp r0, #0
beq _02159e48
ldr r0, [sp, #4]
add r1, sp, #4
add r0, r0, #1
str r0, [sp, #4]
mov r0, r9
mov r2, r7
mov r3, #0
str r8, [sp]
bl func_ov61_02159c1c
cmp r0, #0
addne sp, sp, #8
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
mov r0, #0
strb r0, [r9, #0x5ad]
b _0215a0f4
_02159e48:
ldr r0, [sp, #4]
add r0, r0, r4
str r0, [sp, #4]
b _0215a0f4
_02159e58:
ldr r6, [sp, #4]
ldr r10, _0215a108 ; =data_ov61_0217bc8c
mov r5, #0
_02159e64:
ldr r7, [r10, r5, lsl #2]
mov r0, r7
bl strlen
mov r2, r0
mov r0, r6
mov r1, r7
bl func_0204366c
cmp r0, #0
bne _02159ed4
cmp r5, #5
addls pc, pc, r5, lsl #2
b _02159ee0
_02159e94: ; jump table
b _02159ee0 ; case 0
b _02159eac ; case 1
b _02159eac ; case 2
b _02159ebc ; case 3
b _02159ebc ; case 4
b _02159ec8 ; case 5
_02159eac:
cmp r8, #0
streq r5, [r9, #0x45c]
strb r5, [r9, #0x5ad]
b _02159ee0
_02159ebc:
cmp r8, #2
strne r5, [r9, #0x458]
b _02159ee0
_02159ec8:
cmp r8, #2
strneb r5, [r9, #0x5ae]
b _02159ee0
_02159ed4:
add r5, r5, #1
cmp r5, #6
blt _02159e64
_02159ee0:
ldr r0, [sp, #4]
add r0, r0, r4
str r0, [sp, #4]
b _0215a0f4
_02159ef0:
cmp r8, #2
beq _02159f58
ldrb r0, [r9, #0x5ac]
cmp r0, #0
beq _02159f48
ldr r1, [sp, #4]
mov r2, r4
add r0, r9, #0x6b0
bl func_ov61_02159b30
ldrb r0, [r9, #0x5ae]
cmp r0, #5
bne _02159f58
cmp r4, #0x4f
bgt _02159f58
ldr r0, [sp, #4]
mov r2, r4
add r1, r9, #0x7b0
bl func_02007ad8
add r0, r9, r4
mov r1, #0
strb r1, [r0, #0x7b0]
b _02159f58
_02159f48:
ldr r1, [sp, #4]
mov r2, r4
add r0, r9, #0x5b0
bl func_ov61_02159b30
_02159f58:
mov r0, #0
strb r0, [r9, #0x5ae]
ldr r0, [sp, #4]
add r0, r0, r4
str r0, [sp, #4]
b _0215a0f4
_02159f70:
cmp r8, #2
beq _02159fa8
ldr r0, [sp, #4]
bl func_ov61_02159b9c
cmp r6, #0
ldr r1, [r9, #0x80c]
bne _02159f9c
cmp r1, r0
movhs r0, #1
strhsb r0, [r9, #0x5af]
b _02159fa8
_02159f9c:
cmp r1, r0
movhi r0, #0
strhib r0, [r9, #0x5af]
_02159fa8:
ldr r1, [sp, #4]
mov r0, #1
add r1, r1, r4
str r1, [sp, #4]
strb r0, [r9, #0x5ac]
b _0215a0f4
_02159fc0:
cmp r7, #0
cmpeq r6, #0
bne _02159fd8
cmp r8, #2
ldrne r0, [sp, #4]
strne r0, [r9, #0x460]
_02159fd8:
ldr r0, [sp, #4]
mov r5, #0
add r10, r0, r4
cmp r0, r10
bhs _0215a028
add r4, sp, #4
_02159ff0:
mov r0, r9
mov r1, r4
mov r3, r5
add r2, r7, #1
str r8, [sp]
bl func_ov61_02159c1c
cmp r0, #0
add r5, r5, #1
addne sp, sp, #8
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r0, [sp, #4]
cmp r0, r10
blo _02159ff0
_0215a028:
cmp r7, #1
cmpeq r6, #0
bne _0215a0f4
cmp r8, #2
strne r0, [r9, #0x464]
b _0215a0f4
_0215a040:
ldr r0, [sp, #4]
add r6, r0, r4
cmp r0, r6
bhs _0215a0f4
add r5, sp, #4
mov r4, #0
_0215a058:
mov r0, r9
mov r1, r5
mov r3, r4
add r2, r7, #1
str r8, [sp]
bl func_ov61_02159c1c
cmp r0, #0
addne sp, sp, #8
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r0, [sp, #4]
cmp r0, r6
blo _0215a058
b _0215a0f4
_0215a090:
cmp r5, #0xa0
bne _0215a0e8
ldr r0, [sp, #4]
add r6, r0, r4
cmp r0, r6
bhs _0215a0f4
add r5, sp, #4
mov r4, #0
_0215a0b0:
mov r0, r9
mov r1, r5
mov r3, r4
add r2, r7, #1
str r8, [sp]
bl func_ov61_02159c1c
cmp r0, #0
addne sp, sp, #8
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r0, [sp, #4]
cmp r0, r6
blo _0215a0b0
b _0215a0f4
_0215a0e8:
ldr r0, [sp, #4]
add r0, r0, r4
str r0, [sp, #4]
_0215a0f4:
ldr r1, [sp, #4]
mov r0, #0
str r1, [r11]
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02159c1c
_0215a108: .word data_ov61_0217bc8c
.global func_ov61_0215a10c
arm_func_start func_ov61_0215a10c
func_ov61_0215a10c: ; 0x0215a10c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, lr}
sub sp, sp, #4
mov r8, r0
ldr r0, [r8, #0x5a4]
mov r7, r1
cmp r0, #0
ldrne r0, [r8, #0x5a8]
cmpne r0, #0
ldrne r0, [r7, #0x10]
cmpne r0, #0
ldrne r0, [r7, #0xc]
cmpne r0, #0
ldrne r0, [r7, #8]
cmpne r0, #0
ldrne r0, [r7, #4]
cmpne r0, #0
addeq sp, sp, #4
moveq r0, #2
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, pc}
mov r0, r0, lsl #0x1
ldr r1, _0215a2ac ; =data_ov61_0217f428
add r0, r0, r0, lsr #31
mov r5, r0, asr #0x1
ldr r1, [r1]
mov r0, r5, lsl #0x3
blx r1
movs r4, r0
addeq sp, sp, #4
moveq r0, #2
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, pc}
add r6, r4, r5, lsl #1
add r9, r6, r5, lsl #1
ldr r1, [r8, #0x5a4]
ldr r2, [r8, #0x5a8]
mov r0, r6
mov r3, r5
add r10, r9, r5, lsl #1
bl func_ov61_0215e8d4
ldr r1, [r7, #0x10]
ldr r2, [r7, #0xc]
mov r0, r9
mov r3, r5
bl func_ov61_0215e8d4
ldr r1, [r7, #8]
ldr r2, [r7, #4]
mov r0, r10
mov r3, r5
bl func_ov61_0215e8d4
bl func_ov61_021599fc
mov r2, r9
mov r9, r0
mov r0, r4
mov r1, r6
mov r3, r5
str r10, [sp]
bl func_ov61_0215e2c0
mov r0, r9
bl func_ov61_02159a48
ldr r2, [r7, #4]
mov r0, r6
mov r1, r4
mov r3, r5
bl func_ov61_0215e930
ldrb r0, [r4, r5, lsl #1]
mov r5, #0
cmp r0, #0
ldreqb r0, [r6, #1]
cmpeq r0, #1
movne r5, #2
bne _0215a290
ldr r3, [r7, #4]
mov r2, #2
cmp r3, #2
ble _0215a24c
_0215a234:
ldrb r0, [r6, r2]
cmp r0, #0xff
bne _0215a24c
add r2, r2, #1
cmp r2, r3
blt _0215a234
_0215a24c:
add r1, r2, #1
cmp r1, r3
bge _0215a28c
ldrb r0, [r6, r2]
cmp r0, #0
ldreqb r0, [r6, r1]
cmpeq r0, #0x30
bne _0215a28c
ldr r2, [r8, #0x47c]
add r0, r8, #0x68
add r1, r6, r3
add r0, r0, #0x400
sub r1, r1, r2
bl func_0204366c
cmp r0, #0
beq _0215a290
_0215a28c:
mov r5, #2
_0215a290:
ldr r1, _0215a2b0 ; =data_ov61_0217f454
mov r0, r4
ldr r1, [r1]
blx r1
mov r0, r5
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, pc}
.align 2, 0
arm_func_end func_ov61_0215a10c
_0215a2ac: .word data_ov61_0217f428
_0215a2b0: .word data_ov61_0217f454
.global func_ov61_0215a2b4
arm_func_start func_ov61_0215a2b4
func_ov61_0215a2b4: ; 0x0215a2b4
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldrb r0, [r5, #0x5af]
ldr r1, [r5, #0x45c]
cmp r0, #0
movne r4, #0
moveq r4, #0x8000
mvn r0, #0
cmp r1, r0
orreq r0, r4, #4
ldmeqia sp!, {r3, r4, r5, pc}
ldr r0, [r5, #0x458]
cmp r0, #3
beq _0215a2f8
cmp r0, #4
beq _0215a330
b _0215a368
_0215a2f8:
add r0, r5, #0x3fc
bl func_ov61_0215cfe4
ldr r1, [r5, #0x460]
ldr r2, [r5, #0x464]
add r0, r5, #0x3fc
sub r2, r2, r1
bl func_ov61_0215d02c
add r1, r5, #0x68
add r0, r5, #0x3fc
add r1, r1, #0x400
bl func_ov61_0215d0e4
mov r0, #0x10
str r0, [r5, #0x47c]
b _0215a370
_0215a330:
add r0, r5, #0x348
bl func_ov61_0215d8a4
ldr r1, [r5, #0x460]
ldr r2, [r5, #0x464]
add r0, r5, #0x348
sub r2, r2, r1
bl func_ov61_0215d8f8
add r1, r5, #0x68
add r0, r5, #0x348
add r1, r1, #0x400
bl func_ov61_0215d9b0
mov r0, #0x14
str r0, [r5, #0x47c]
b _0215a370
_0215a368:
orr r0, r4, #3
ldmia sp!, {r3, r4, r5, pc}
_0215a370:
mov r0, r5
add r1, r5, #0x5b0
bl func_ov61_02159a94
movs r1, r0
orreq r0, r4, #1
ldmeqia sp!, {r3, r4, r5, pc}
mov r0, r5
bl func_ov61_0215a10c
orr r0, r4, r0
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0215a2b4
.global func_ov61_0215a398
arm_func_start func_ov61_0215a398
func_ov61_0215a398: ; 0x0215a398
mov r2, r0
b _0215a3a4
_0215a3a0:
add r0, r0, #1
_0215a3a4:
ldrsb r1, [r0]
cmp r1, #0x2e
cmpne r1, #0
bne _0215a3a0
sub r0, r0, r2
bx lr
arm_func_end func_ov61_0215a398
.global func_ov61_0215a3bc
arm_func_start func_ov61_0215a3bc
func_ov61_0215a3bc: ; 0x0215a3bc
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
b _0215a3d8
_0215a3cc:
cmp r1, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
_0215a3d8:
ldrsb r0, [r5], #1
ldrsb r1, [r6], #1
cmp r1, r0
beq _0215a3cc
cmp r0, #0x2a
movne r0, #1
ldmneia sp!, {r4, r5, r6, pc}
sub r6, r6, #1
mov r0, r6
bl func_ov61_0215a398
mov r4, r0
mov r0, r5
bl func_ov61_0215a398
cmp r0, r4
movgt r0, #1
ldmgtia sp!, {r4, r5, r6, pc}
sub r0, r4, r0
add r6, r6, r0
b _0215a3d8
_0215a424:
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0215a3bc
.global func_ov61_0215a428
arm_func_start func_ov61_0215a428
func_ov61_0215a428: ; 0x0215a428
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x18
ldr r1, [sp, #0x44]
mov r10, r0
ldrb r4, [r1, #2]
ldrb r3, [r1]
ldrb r2, [r1, #1]
add r0, r1, #3
mvn r1, #0
str r0, [sp, #0x44]
add r2, r2, r3, lsl #8
add r0, sp, #8
str r1, [r10, #0x45c]
add r8, r4, r2, lsl #8
blx func_02042668
mov r6, #0
ldr r1, [sp, #8]
ldr r0, [sp, #0xc]
add r1, r1, #0x7d0
mov r0, r0, lsl #0x8
ldr r2, [sp, #0x10]
add r0, r0, r1, lsl #16
add r0, r2, r0
str r0, [r10, #0x80c]
strb r6, [r10, #0x6b0]
str r6, [r10, #0x5a0]
mov r9, r6
str r6, [r10, #0x594]
mov r11, #2
mvn r5, #0
mov r4, r6
_0215a4a8:
ldr r1, [sp, #0x44]
mov r0, r10
ldrb r2, [r1, #2]
ldrb ip, [r1]
ldrb r3, [r1, #1]
add r7, r1, #3
add r1, sp, #0x44
str r7, [sp, #0x44]
str r5, [r10, #0x458]
strb r4, [r10, #0x5ad]
strb r4, [r10, #0x5ac]
strb r4, [r10, #0x5af]
strb r4, [r10, #0x6b0]
strb r4, [r10, #0x5b0]
strb r4, [r10, #0x7b0]
add r3, r3, ip, lsl #8
ldr r7, [sp, #0x44]
add r3, r2, r3, lsl #8
add r2, r3, #3
str r7, [r10, #0x804]
str r3, [r10, #0x808]
sub r8, r8, r2
mov r2, r4
mov r3, r4
str r6, [sp]
bl func_ov61_02159c1c
cmp r0, #0
bne _0215a530
ldr r0, [r10, #0x594]
cmp r0, #0x33
blo _0215a530
ldr r0, [r10, #0x5a0]
cmp r0, #0
bne _0215a548
_0215a530:
mov r0, #9
add sp, sp, #0x18
strb r0, [r10, #0x455]
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
add sp, sp, #0x10
bx lr
_0215a548:
mov r0, r10
bl func_ov61_0215a2b4
mov r7, r0
cmp r9, #0
bne _0215a578
ldr r0, [r10, #0x800]
cmp r0, #0
beq _0215a578
add r1, r10, #0x7b0
bl func_ov61_0215a3bc
cmp r0, #0
orrne r7, r7, #0x4000
_0215a578:
and r6, r7, #0xff
cmp r6, #1
bne _0215a5e8
cmp r8, #0
beq _0215a5e8
ldr r1, [sp, #0x44]
mov r2, #0
add r1, r1, #3
str r1, [sp, #4]
mov r1, #0
strb r1, [r10, #0x5ad]
mov r0, r10
add r1, sp, #4
mov r3, r2
str r11, [sp]
bl func_ov61_02159c1c
cmp r0, #0
movne r0, #9
addne sp, sp, #0x18
strneb r0, [r10, #0x455]
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
addne sp, sp, #0x10
bxne lr
mov r0, r10
add r1, r10, #0x480
bl func_ov61_0215a10c
bic r1, r7, #0xff
orr r7, r1, r0
_0215a5e8:
ldr r3, [r10, #0x810]
cmp r3, #0
beq _0215a608
mov r0, r7
mov r1, r10
mov r2, r9
blx r3
mov r7, r0
_0215a608:
cmp r6, #0
add r9, r9, #1
beq _0215a628
cmp r7, #0
bne _0215a628
cmp r8, #0
movne r6, #1
bne _0215a4a8
_0215a628:
cmp r7, #0
moveq r0, #3
streqb r0, [r10, #0x455]
movne r0, #9
strneb r0, [r10, #0x455]
add sp, sp, #0x18
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
add sp, sp, #0x10
bx lr
arm_func_end func_ov61_0215a428
.global func_ov61_0215a64c
arm_func_start func_ov61_0215a64c
func_ov61_0215a64c: ; 0x0215a64c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r6, r0
mov r5, r1
add r0, r5, #2
add r1, r6, #0x54
mov r2, #0x20
bl func_02007ad8
ldrb r7, [r6, #0x30]
ldrb r4, [r5, #0x22]
add r5, r5, #0x23
cmp r7, #0
beq _0215a6a4
cmp r4, #0x20
bne _0215a6a4
mov r1, r5
add r0, r6, #0x74
mov r2, #0x20
bl func_0204366c
cmp r0, #0
moveq r0, #1
streqb r0, [r6, #0x31]
beq _0215a6e0
_0215a6a4:
cmp r7, #0
beq _0215a6b4
mov r0, r6
bl func_ov61_0215994c
_0215a6b4:
cmp r4, #0
moveq r0, #0
beq _0215a6d4
mov r0, r5
add r1, r6, #0x74
mov r2, #0x20
bl func_02007ad8
mov r0, #1
_0215a6d4:
strb r0, [r6, #0x30]
mov r0, #0
strb r0, [r6, #0x31]
_0215a6e0:
add r0, r5, r4
ldrb r2, [r5, r4]
ldrb r1, [r0, #1]
mov r0, #2
add r1, r1, r2, lsl #8
strh r1, [r6, #0x32]
strb r0, [r6, #0x455]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_0215a64c
.global func_ov61_0215a700
arm_func_start func_ov61_0215a700
func_ov61_0215a700: ; 0x0215a700
stmdb sp!, {r4, lr}
cmp r1, #0
mov r4, #0
ble _0215a744
_0215a710:
ldrb lr, [r0]
ldrb ip, [r0, #1]
cmp r2, #3
add lr, ip, lr, lsl #8
ldreqb ip, [r0, #2]
addeq lr, ip, lr, lsl #8
cmp lr, r3
moveq r0, #1
ldmeqia sp!, {r4, pc}
add r4, r4, #1
cmp r4, r1
add r0, r0, r2
blt _0215a710
_0215a744:
mov r0, #0
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0215a700
.global func_ov61_0215a74c
arm_func_start func_ov61_0215a74c
func_ov61_0215a74c: ; 0x0215a74c
stmdb sp!, {r4, r5, r6, r7, r8, lr}
ldr r4, _0215a7a8 ; =data_ov61_0217bc84
mov r8, r0
mov r7, r1
mov r6, r2
mov r5, #0
_0215a764:
mov r0, r5, lsl #0x1
ldrh r3, [r4, r0]
mov r0, r8
mov r1, r7
mov r2, r6
bl func_ov61_0215a700
cmp r0, #0
beq _0215a794
ldr r0, _0215a7a8 ; =data_ov61_0217bc84
mov r1, r5, lsl #0x1
ldrh r0, [r0, r1]
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0215a794:
add r5, r5, #1
cmp r5, #2
blo _0215a764
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_0215a74c
_0215a7a8: .word data_ov61_0217bc84
.global func_ov61_0215a7ac
arm_func_start func_ov61_0215a7ac
func_ov61_0215a7ac: ; 0x0215a7ac
cmp r0, #3
moveq r0, #1
movne r0, #0
bx lr
arm_func_end func_ov61_0215a7ac
.global func_ov61_0215a7bc
arm_func_start func_ov61_0215a7bc
func_ov61_0215a7bc: ; 0x0215a7bc
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r6, r1
mov r7, r0
ldrb r0, [r6]
ldrb r1, [r6, #1]
bl func_ov61_0215a7ac
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldrb r2, [r6, #2]
ldrb r1, [r6, #3]
ldr r3, _0215a880 ; =0x55555556
add r0, r6, #8
add r4, r1, r2, lsl #8
smull r2, r1, r3, r4
add r1, r1, r4, lsr #31
mov r2, #3
bl func_ov61_0215a74c
mov r0, r0, lsl #0x10
movs r0, r0, lsr #0x10
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
strh r0, [r7, #0x32]
ldrb r5, [r6, #4]
ldrb r3, [r6, #5]
ldrb r2, [r6, #6]
ldrb r0, [r6, #7]
mov r1, #0
add r3, r3, r5, lsl #8
add r5, r0, r2, lsl #8
add r0, r4, #8
strb r1, [r7, #0x30]
cmp r5, #0x20
add r4, r0, r3
blt _0215a854
add r0, r6, r4
add r1, r7, #0x34
mov r2, #0x20
bl func_02007ad8
b _0215a874
_0215a854:
add r0, r7, #0x34
rsb r2, r5, #0x20
bl func_02007a44
add r1, r7, #0x54
mov r2, r5
add r0, r6, r4
sub r1, r1, r5
bl func_02007ad8
_0215a874:
mov r0, #1
strb r0, [r7, #0x455]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0215a7bc
_0215a880: .word 0x55555556
.global func_ov61_0215a884
arm_func_start func_ov61_0215a884
func_ov61_0215a884: ; 0x0215a884
stmdb sp!, {r4, r5, r6, lr}
mov r6, r1
mov r4, r0
ldrb r0, [r6]
ldrb r1, [r6, #1]
bl func_ov61_0215a7ac
cmp r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
add r0, r6, #2
add r1, r4, #0x34
mov r2, #0x20
bl func_02007ad8
ldrb r5, [r6, #0x22]
add r6, r6, #0x23
cmp r5, #0x20
movne r0, #0
strneb r0, [r4, #0x30]
bne _0215a8e4
mov r0, r6
add r1, r4, #0x74
mov r2, #0x20
bl func_02007ad8
mov r0, r4
bl func_ov61_0215972c
_0215a8e4:
add r0, r6, r5
ldrb r1, [r0, #1]
ldrb r3, [r6, r5]
add r0, r0, #2
mov r2, #2
add r1, r1, r3, lsl #8
add r1, r1, r1, lsr #31
mov r1, r1, asr #0x1
bl func_ov61_0215a74c
mov r0, r0, lsl #0x10
movs r0, r0, lsr #0x10
strh r0, [r4, #0x32]
movne r0, #1
strneb r0, [r4, #0x455]
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0215a884
.global func_ov61_0215a920
arm_func_start func_ov61_0215a920
func_ov61_0215a920: ; 0x0215a920
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x18
movs r10, r2
str r0, [sp, #8]
ldrne r0, [r10]
mov r11, r1
cmpne r0, #0
addeq sp, sp, #0x18
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
mov r0, r0, lsl #0x1
add r0, r0, r0, lsr #31
mov r0, r0, asr #0x1
add r4, r0, #1
mov r0, #0x14
mul r0, r4, r0
ldr r1, _0215ab58 ; =data_ov61_0217f428
ldr r1, [r1]
blx r1
movs r5, r0
addeq sp, sp, #0x18
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
add r6, r5, r4, lsl #1
add r7, r6, r4, lsl #1
add r1, r7, r4, lsl #1
str r1, [sp, #0x10]
add r1, r1, r4, lsl #1
add r8, r1, r4, lsl #1
str r1, [sp, #0xc]
ldr r2, [r10]
add r9, r8, r4, lsl #1
mov r1, r11
mov r3, r4
add r11, r9, r4, lsl #1
bl func_ov61_0215e8d4
ldr r1, [r10, #0x1c]
ldr r2, [r10, #0x18]
mov r0, r6
mov r3, r4
bl func_ov61_0215e8d4
ldr r1, [r10, #0xc]
ldr r2, [r10, #8]
mov r0, r8
mov r3, r4
bl func_ov61_0215e8d4
bl func_ov61_021599fc
str r0, [sp, #0x14]
ldr r0, [sp, #0x10]
str r8, [sp]
mov r1, r5
mov r2, r6
mov r3, r4
bl func_ov61_0215e6c8
ldr r1, [r10, #0x24]
ldr r2, [r10, #0x20]
mov r0, r6
mov r3, r4
bl func_ov61_0215e8d4
ldr r1, [r10, #0x14]
ldr r2, [r10, #0x10]
mov r0, r8
mov r3, r4
bl func_ov61_0215e8d4
ldr r0, [sp, #0xc]
mov r1, r5
mov r2, r6
mov r3, r4
str r8, [sp]
bl func_ov61_0215e6c8
ldr r0, [sp, #0x14]
bl func_ov61_02159a48
ldr r1, [sp, #0x10]
ldr r2, [sp, #0xc]
mov r0, r5
mov r3, r4
bl func_ov61_0215dcc0
ldr r1, [r10, #0x2c]
ldr r2, [r10, #0x28]
mov r0, r6
mov r3, r4
bl func_ov61_0215e8d4
mov r0, r7
mov r1, r5
mov r2, r6
mov r3, r4
bl func_ov61_0215de3c
ldr r1, [r10, #0x14]
ldr r2, [r10, #0x10]
mov r0, r6
mov r3, r4
bl func_ov61_0215e8d4
mov r0, r5
mov r1, r7
mov r2, r6
mov r3, r4
bl func_ov61_0215de3c
ldr r2, [sp, #0xc]
mov r0, r7
mov r1, r5
mov r3, r4
bl func_ov61_0215db80
ldr r1, [r10, #4]
ldr r2, [r10]
mov r0, r6
mov r3, r4
bl func_ov61_0215e8d4
mov r0, r7
mov r1, r4
bl func_ov61_0215db50
cmp r0, #0
bge _0215ab14
mov r0, r7
mov r1, r4
bl func_ov61_0215dc80
mov r1, r7
mov r2, r6
mov r3, r9
mov r0, #0
stmia sp, {r4, r11}
bl func_ov61_0215e0e0
mov r0, r9
mov r1, r6
mov r2, r9
mov r3, r4
bl func_ov61_0215dcc0
b _0215ab2c
_0215ab14:
mov r1, r7
mov r2, r6
mov r3, r9
mov r0, #0
stmia sp, {r4, r11}
bl func_ov61_0215e0e0
_0215ab2c:
ldr r0, [sp, #8]
mov r1, r9
mov r3, r4
mov r2, #0x30
bl func_ov61_0215e930
ldr r1, _0215ab5c ; =data_ov61_0217f454
mov r0, r5
ldr r1, [r1]
blx r1
add sp, sp, #0x18
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0215a920
_0215ab58: .word data_ov61_0217f428
_0215ab5c: .word data_ov61_0217f454
.global func_ov61_0215ab60
arm_func_start func_ov61_0215ab60
func_ov61_0215ab60: ; 0x0215ab60
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0x14
mov r4, r2
mov r6, r0
mov r5, r1
add r0, r4, #0x348
bl func_ov61_0215d8a4
mov r0, r5
bl strlen
mov r2, r0
mov r1, r5
add r0, r4, #0x348
bl func_ov61_0215d8f8
add r0, r4, #0x348
mov r1, r4
mov r2, #0x30
bl func_ov61_0215d8f8
add r0, r4, #0x348
add r1, r4, #0x34
mov r2, #0x40
bl func_ov61_0215d8f8
add r0, r4, #0x348
add r1, sp, #0
bl func_ov61_0215d9b0
add r0, r4, #0x3fc
bl func_ov61_0215cfe4
add r0, r4, #0x3fc
mov r1, r4
mov r2, #0x30
bl func_ov61_0215d02c
add r0, r4, #0x3fc
add r1, sp, #0
mov r2, #0x14
bl func_ov61_0215d02c
add r0, r4, #0x3fc
mov r1, r6
bl func_ov61_0215d0e4
add sp, sp, #0x14
ldmia sp!, {r3, r4, r5, r6, pc}
arm_func_end func_ov61_0215ab60
.global func_ov61_0215abfc
arm_func_start func_ov61_0215abfc
func_ov61_0215abfc: ; 0x0215abfc
stmdb sp!, {r4, lr}
sub sp, sp, #0x30
mov r4, r0
ldr r1, _0215ac50 ; =data_ov61_0217bcd8
add r0, sp, #0
mov r2, r4
bl func_ov61_0215ab60
ldr r1, _0215ac54 ; =data_ov61_0217bcdc
add r0, sp, #0x10
mov r2, r4
bl func_ov61_0215ab60
ldr r1, _0215ac58 ; =data_ov61_0217bce0
add r0, sp, #0x20
mov r2, r4
bl func_ov61_0215ab60
add r0, sp, #0
mov r1, r4
mov r2, #0x30
bl func_02007ad8
add sp, sp, #0x30
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0215abfc
_0215ac50: .word data_ov61_0217bcd8
_0215ac54: .word data_ov61_0217bcdc
_0215ac58: .word data_ov61_0217bce0
.global func_ov61_0215ac5c
arm_func_start func_ov61_0215ac5c
func_ov61_0215ac5c: ; 0x0215ac5c
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x24
mov r10, r0
ldrh r0, [r10, #0x32]
cmp r0, #4
beq _0215ac80
cmp r0, #5
beq _0215ac94
b _0215aca8
_0215ac80:
mov r0, #0x10
str r0, [sp, #4]
str r0, [sp]
mov r2, #0
b _0215aca8
_0215ac94:
mov r0, #0x14
str r0, [sp, #4]
mov r0, #0x10
str r0, [sp]
mov r2, #0
_0215aca8:
ldr r1, [sp, #4]
ldr r0, [sp]
mov r7, #0
add r0, r1, r0
add r0, r2, r0
mov r11, r0, lsl #0x1
cmp r11, #0
ble _0215ad9c
add r0, r10, #0x74
mov r9, r7
str r0, [sp, #8]
add r5, sp, #0xc
mov r4, #1
_0215acdc:
add r0, r10, #0x348
bl func_ov61_0215d8a4
add r0, r7, #0x41
add r6, r7, #1
strb r0, [sp, #0xc]
mov r8, #0
cmp r6, #0
ble _0215ad18
_0215acfc:
add r0, r10, #0x348
mov r1, r5
mov r2, r4
bl func_ov61_0215d8f8
add r8, r8, #1
cmp r8, r6
blt _0215acfc
_0215ad18:
add r0, r10, #0x348
mov r1, r10
mov r2, #0x30
bl func_ov61_0215d8f8
add r0, r10, #0x348
add r1, r10, #0x54
mov r2, #0x20
bl func_ov61_0215d8f8
add r0, r10, #0x348
add r1, r10, #0x34
mov r2, #0x20
bl func_ov61_0215d8f8
add r0, r10, #0x348
add r1, sp, #0xd
bl func_ov61_0215d9b0
add r0, r10, #0x3fc
bl func_ov61_0215cfe4
add r0, r10, #0x3fc
mov r1, r10
mov r2, #0x30
bl func_ov61_0215d02c
add r0, r10, #0x3fc
add r1, sp, #0xd
mov r2, #0x14
bl func_ov61_0215d02c
ldr r1, [sp, #8]
add r0, r10, #0x3fc
add r1, r1, r9
bl func_ov61_0215d0e4
add r9, r9, #0x10
cmp r9, r11
add r7, r7, #1
blt _0215acdc
_0215ad9c:
ldrb r0, [r10, #0x454]
add r3, r10, #0x74
cmp r0, #0
beq _0215add8
ldr r0, [sp, #4]
str r3, [r10, #0x1d4]
add r2, r3, r0
add r1, r2, r0
add r0, r3, r0, lsl #1
str r0, [r10, #0x1d8]
ldr r0, [sp]
str r2, [r10, #0xbc]
add r0, r1, r0
str r0, [r10, #0xc0]
b _0215ae00
_0215add8:
ldr r0, [sp, #4]
str r3, [r10, #0xbc]
add r2, r3, r0
add r1, r2, r0
add r0, r3, r0, lsl #1
str r0, [r10, #0xc0]
ldr r0, [sp]
str r2, [r10, #0x1d4]
add r0, r1, r0
str r0, [r10, #0x1d8]
_0215ae00:
ldr r1, [r10, #0x1d8]
add r0, r10, #0x1e0
mov r2, #0x10
bl func_ov61_0215da48
ldr r1, [r10, #0xc0]
add r0, r10, #0xc8
mov r2, #0x10
bl func_ov61_0215da48
add sp, sp, #0x24
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_0215ac5c
.global func_ov61_0215ae28
arm_func_start func_ov61_0215ae28
func_ov61_0215ae28: ; 0x0215ae28
stmdb sp!, {r4, lr}
mov r4, r0
ldr r2, [r4, #0x81c]
bl func_ov61_0215a920
mov r0, r4
bl func_ov61_0215abfc
mov r1, #0
mov r0, r4
mov r2, r1
bl func_ov61_02159860
mov r0, r4
bl func_ov61_0215ac5c
mov r0, #5
strb r0, [r4, #0x455]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0215ae28
.global func_ov61_0215ae64
arm_func_start func_ov61_0215ae64
func_ov61_0215ae64: ; 0x0215ae64
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x30
mov r5, r0
ldrb r0, [r5, #0x454]
mov r4, r1
teq r0, r2
mov r2, #4
beq _0215ae94
ldr r1, _0215af38 ; =data_ov61_0217bce4
add r0, r5, #0x3a4
bl func_ov61_0215d02c
b _0215aea0
_0215ae94:
ldr r1, _0215af3c ; =data_ov61_0217bcec
add r0, r5, #0x3a4
bl func_ov61_0215d02c
_0215aea0:
mov r1, r5
add r0, r5, #0x3a4
mov r2, #0x30
bl func_ov61_0215d02c
add r0, sp, #0
mov r1, #0x36
mov r2, #0x30
bl func_02007a44
add r1, sp, #0
add r0, r5, #0x3a4
mov r2, #0x30
bl func_ov61_0215d02c
mov r1, r4
add r0, r5, #0x3a4
bl func_ov61_0215d0e4
add r0, r5, #0x3a4
bl func_ov61_0215cfe4
add r0, r5, #0x3a4
mov r1, r5
mov r2, #0x30
bl func_ov61_0215d02c
add r0, sp, #0
mov r1, #0x5c
mov r2, #0x30
bl func_02007a44
add r0, r5, #0x3a4
add r1, sp, #0
mov r2, #0x30
bl func_ov61_0215d02c
add r0, r5, #0x3a4
mov r1, r4
mov r2, #0x10
bl func_ov61_0215d02c
add r0, r5, #0x3a4
mov r1, r4
bl func_ov61_0215d0e4
add sp, sp, #0x30
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0215ae64
_0215af38: .word data_ov61_0217bce4
_0215af3c: .word data_ov61_0217bcec
.global func_ov61_0215af40
arm_func_start func_ov61_0215af40
func_ov61_0215af40: ; 0x0215af40
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x28
mov r5, r0
ldrb r0, [r5, #0x454]
mov r4, r1
teq r0, r2
mov r2, #4
beq _0215af70
ldr r1, _0215b014 ; =data_ov61_0217bce4
add r0, r5, #0x2ec
bl func_ov61_0215d8f8
b _0215af7c
_0215af70:
ldr r1, _0215b018 ; =data_ov61_0217bcec
add r0, r5, #0x2ec
bl func_ov61_0215d8f8
_0215af7c:
mov r1, r5
add r0, r5, #0x2ec
mov r2, #0x30
bl func_ov61_0215d8f8
add r0, sp, #0
mov r1, #0x36
mov r2, #0x28
bl func_02007a44
add r1, sp, #0
add r0, r5, #0x2ec
mov r2, #0x28
bl func_ov61_0215d8f8
mov r1, r4
add r0, r5, #0x2ec
bl func_ov61_0215d9b0
add r0, r5, #0x2ec
bl func_ov61_0215d8a4
add r0, r5, #0x2ec
mov r1, r5
mov r2, #0x30
bl func_ov61_0215d8f8
add r0, sp, #0
mov r1, #0x5c
mov r2, #0x28
bl func_02007a44
add r0, r5, #0x2ec
add r1, sp, #0
mov r2, #0x28
bl func_ov61_0215d8f8
add r0, r5, #0x2ec
mov r1, r4
mov r2, #0x14
bl func_ov61_0215d8f8
add r0, r5, #0x2ec
mov r1, r4
bl func_ov61_0215d9b0
add sp, sp, #0x28
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0215af40
_0215b014: .word data_ov61_0217bce4
_0215b018: .word data_ov61_0217bcec
.global func_ov61_0215b01c
arm_func_start func_ov61_0215b01c
func_ov61_0215b01c: ; 0x0215b01c
stmdb sp!, {r4, r5, lr}
sub sp, sp, #0x14
mov r5, r0
mov r4, r1
add r0, r5, #0x3a4
add r1, r5, #0x3fc
mov r2, #0x58
bl func_02007ad8
add r1, sp, #0
mov r0, r5
mov r2, #1
bl func_ov61_0215ae64
add r0, r5, #0x3fc
add r1, r5, #0x3a4
mov r2, #0x58
bl func_02007ad8
add r1, sp, #0
mov r0, r4
mov r2, #0x10
bl func_0204366c
cmp r0, #0
movne r0, #9
addne sp, sp, #0x14
strneb r0, [r5, #0x455]
ldmneia sp!, {r4, r5, pc}
add r0, r5, #0x2ec
add r1, r5, #0x348
mov r2, #0x5c
bl func_02007ad8
add r1, sp, #0
mov r0, r5
mov r2, #1
bl func_ov61_0215af40
add r0, r5, #0x348
add r1, r5, #0x2ec
mov r2, #0x5c
bl func_02007ad8
add r1, sp, #0
add r0, r4, #0x10
mov r2, #0x14
bl func_0204366c
cmp r0, #0
movne r0, #9
strneb r0, [r5, #0x455]
moveq r0, #6
streqb r0, [r5, #0x455]
add sp, sp, #0x14
ldmia sp!, {r4, r5, pc}
arm_func_end func_ov61_0215b01c
.global func_ov61_0215b0dc
arm_func_start func_ov61_0215b0dc
func_ov61_0215b0dc: ; 0x0215b0dc
mov r2, #8
_0215b0e0:
ldrb r1, [r0, #-1]!
add r1, r1, #1
ands r1, r1, #0xff
strb r1, [r0]
bxne lr
subs r2, r2, #1
bne _0215b0e0
bx lr
arm_func_end func_ov61_0215b0dc
.global func_ov61_0215b100
arm_func_start func_ov61_0215b100
func_ov61_0215b100: ; 0x0215b100
stmdb sp!, {r4, lr}
add r0, r0, #0x1e0
mov r4, r2
bl func_ov61_0215dabc
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0215b100
.global func_ov61_0215b118
arm_func_start func_ov61_0215b118
func_ov61_0215b118: ; 0x0215b118
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0x44
mov r6, r1
ldrb r3, [r6, #3]
ldrb r2, [r6, #4]
mov r7, r0
add r1, r6, #5
add r2, r2, r3, lsl #8
bl func_ov61_0215b100
ldrh r1, [r7, #0x32]
mov r4, r0
cmp r1, #4
beq _0215b158
cmp r1, #5
beq _0215b238
b _0215b314
_0215b158:
sub r4, r4, #0x10
mov r0, r4, asr #0x8
strb r0, [r6, #3]
strb r4, [r6, #4]
add r0, r7, #0x3fc
bl func_ov61_0215cfe4
ldr r1, [r7, #0x1d4]
add r0, r7, #0x3fc
mov r2, #0x10
bl func_ov61_0215d02c
add r0, sp, #0
mov r1, #0x36
mov r2, #0x30
bl func_02007a44
add r1, sp, #0
add r0, r7, #0x3fc
mov r2, #0x30
bl func_ov61_0215d02c
add r0, r7, #0x3fc
add r1, r7, #0x2e4
mov r2, #8
bl func_ov61_0215d02c
add r0, r7, #0x3fc
mov r1, r6
mov r2, #1
bl func_ov61_0215d02c
add r0, r7, #0x3fc
add r1, r6, #3
add r2, r4, #2
bl func_ov61_0215d02c
add r0, r7, #0x3fc
add r1, sp, #0x30
bl func_ov61_0215d0e4
add r0, r7, #0x3fc
bl func_ov61_0215cfe4
ldr r1, [r7, #0x1d4]
add r0, r7, #0x3fc
mov r2, #0x10
bl func_ov61_0215d02c
add r0, sp, #0
mov r1, #0x5c
mov r2, #0x30
bl func_02007a44
add r0, r7, #0x3fc
add r1, sp, #0
mov r2, #0x30
bl func_ov61_0215d02c
add r0, r7, #0x3fc
add r1, sp, #0x30
mov r2, #0x10
bl func_ov61_0215d02c
add r0, r7, #0x3fc
add r1, sp, #0x30
bl func_ov61_0215d0e4
mov r5, #0x10
b _0215b314
_0215b238:
sub r4, r4, #0x14
mov r0, r4, asr #0x8
strb r0, [r6, #3]
strb r4, [r6, #4]
add r0, r7, #0x348
bl func_ov61_0215d8a4
ldr r1, [r7, #0x1d4]
add r0, r7, #0x348
mov r2, #0x14
bl func_ov61_0215d8f8
add r0, sp, #0
mov r1, #0x36
mov r2, #0x28
bl func_02007a44
add r1, sp, #0
add r0, r7, #0x348
mov r2, #0x28
bl func_ov61_0215d8f8
add r0, r7, #0x348
add r1, r7, #0x2e4
mov r2, #8
bl func_ov61_0215d8f8
add r0, r7, #0x348
mov r1, r6
mov r2, #1
bl func_ov61_0215d8f8
add r0, r7, #0x348
add r1, r6, #3
add r2, r4, #2
bl func_ov61_0215d8f8
add r0, r7, #0x348
add r1, sp, #0x30
bl func_ov61_0215d9b0
add r0, r7, #0x348
bl func_ov61_0215d8a4
ldr r1, [r7, #0x1d4]
add r0, r7, #0x348
mov r2, #0x14
bl func_ov61_0215d8f8
add r0, sp, #0
mov r1, #0x5c
mov r2, #0x28
bl func_02007a44
add r0, r7, #0x348
add r1, sp, #0
mov r2, #0x28
bl func_ov61_0215d8f8
add r0, r7, #0x348
add r1, sp, #0x30
mov r2, #0x14
bl func_ov61_0215d8f8
add r0, r7, #0x348
add r1, sp, #0x30
bl func_ov61_0215d9b0
mov r5, #0x14
_0215b314:
add r0, r6, #5
add r1, sp, #0x30
mov r2, r5
add r0, r0, r4
bl func_0204366c
cmp r0, #0
movne r0, #9
strneb r0, [r7, #0x455]
add r0, r7, #0x2ec
bl func_ov61_0215b0dc
add r0, r4, #5
add sp, sp, #0x44
ldmia sp!, {r4, r5, r6, r7, pc}
arm_func_end func_ov61_0215b118
.global func_ov61_0215b348
arm_func_start func_ov61_0215b348
func_ov61_0215b348: ; 0x0215b348
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #0x30
mov r4, r1
mov r5, r0
ldrh r0, [r5, #0x32]
ldrb r2, [r4, #3]
ldrb r1, [r4, #4]
cmp r0, #4
add r6, r4, #5
add r7, r1, r2, lsl #8
beq _0215b380
cmp r0, #5
beq _0215b450
b _0215b51c
_0215b380:
add r0, r5, #0x3fc
bl func_ov61_0215cfe4
ldr r1, [r5, #0xbc]
add r0, r5, #0x3fc
mov r2, #0x10
bl func_ov61_0215d02c
add r0, sp, #0
mov r1, #0x36
mov r2, #0x30
bl func_02007a44
add r1, sp, #0
add r0, r5, #0x3fc
mov r2, #0x30
bl func_ov61_0215d02c
add r0, r5, #0x3fc
add r1, r5, #0x1cc
mov r2, #8
bl func_ov61_0215d02c
add r0, r5, #0x3fc
mov r1, r4
mov r2, #1
bl func_ov61_0215d02c
add r0, r5, #0x3fc
add r1, r4, #3
add r2, r7, #2
bl func_ov61_0215d02c
add r0, r5, #0x3fc
add r1, r6, r7
bl func_ov61_0215d0e4
add r0, r5, #0x3fc
bl func_ov61_0215cfe4
ldr r1, [r5, #0xbc]
add r0, r5, #0x3fc
mov r2, #0x10
bl func_ov61_0215d02c
add r0, sp, #0
mov r1, #0x5c
mov r2, #0x30
bl func_02007a44
add r0, r5, #0x3fc
add r1, sp, #0
mov r2, #0x30
bl func_ov61_0215d02c
add r0, r5, #0x3fc
add r1, r6, r7
mov r2, #0x10
bl func_ov61_0215d02c
add r1, r6, r7
add r0, r5, #0x3fc
bl func_ov61_0215d0e4
add r7, r7, #0x10
b _0215b51c
_0215b450:
add r0, r5, #0x348
bl func_ov61_0215d8a4
ldr r1, [r5, #0xbc]
add r0, r5, #0x348
mov r2, #0x14
bl func_ov61_0215d8f8
add r0, sp, #0
mov r1, #0x36
mov r2, #0x28
bl func_02007a44
add r1, sp, #0
add r0, r5, #0x348
mov r2, #0x28
bl func_ov61_0215d8f8
add r0, r5, #0x348
add r1, r5, #0x1cc
mov r2, #8
bl func_ov61_0215d8f8
add r0, r5, #0x348
mov r1, r4
mov r2, #1
bl func_ov61_0215d8f8
add r0, r5, #0x348
add r1, r4, #3
add r2, r7, #2
bl func_ov61_0215d8f8
add r0, r5, #0x348
add r1, r6, r7
bl func_ov61_0215d9b0
add r0, r5, #0x348
bl func_ov61_0215d8a4
ldr r1, [r5, #0xbc]
add r0, r5, #0x348
mov r2, #0x14
bl func_ov61_0215d8f8
add r0, sp, #0
mov r1, #0x5c
mov r2, #0x28
bl func_02007a44
add r0, r5, #0x348
add r1, sp, #0
mov r2, #0x28
bl func_ov61_0215d8f8
add r0, r5, #0x348
add r1, r6, r7
mov r2, #0x14
bl func_ov61_0215d8f8
add r1, r6, r7
add r0, r5, #0x348
bl func_ov61_0215d9b0
add r7, r7, #0x14
_0215b51c:
mov r0, r7, asr #0x8
strb r0, [r4, #3]
mov r2, r7
add r0, r5, #0xc8
add r1, r4, #5
strb r7, [r4, #4]
bl func_ov61_0215dabc
add r0, r5, #0x1d4
bl func_ov61_0215b0dc
add r0, r7, #5
add sp, sp, #0x30
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_0215b348
.global func_ov61_0215b54c
arm_func_start func_ov61_0215b54c
func_ov61_0215b54c: ; 0x0215b54c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r6, r1
mov r5, r2
add r4, sp, #0
_0215b560:
mov r0, r4
mov r1, r5
bl func_ov61_02154f5c
ldr r1, [sp]
cmp r1, #0
mvneq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
cmp r1, r6
strhi r6, [sp]
ldr r2, [sp]
mov r1, r7
bl func_02007ad8
ldr r0, [sp]
mov r1, r5
bl func_ov61_0215503c
ldr r0, [sp]
sub r6, r6, r0
cmp r6, #0
add r7, r7, r0
bgt _0215b560
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_0215b54c
.global func_ov61_0215b5b8
arm_func_start func_ov61_0215b5b8
func_ov61_0215b5b8: ; 0x0215b5b8
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
mov r4, r2
add r0, r6, #0x2ec
bl func_ov61_0215d8f8
mov r1, r5
mov r2, r4
add r0, r6, #0x3a4
bl func_ov61_0215d02c
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0215b5b8
.global func_ov61_0215b5e4
arm_func_start func_ov61_0215b5e4
func_ov61_0215b5e4: ; 0x0215b5e4
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
mov r5, r0
ldrb r0, [r5, #0x455]
mov r4, r1
cmp r0, #9
bne _0215b610
ldr r1, _0215b828 ; =data_ov61_0217f454
mov r0, r4
ldr r1, [r1]
blx r1
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_0215b610:
ldrb r2, [r4, #3]
ldrb r1, [r4, #4]
add r0, r0, #0xf9
and r0, r0, #0xff
add r1, r1, r2, lsl #8
cmp r0, #1
add r9, r1, #5
ldrb r6, [r4]
bhi _0215b63c
cmp r6, #0x15
bne _0215b64c
_0215b63c:
cmp r6, #0x15
bne _0215b65c
cmp r9, #7
bls _0215b65c
_0215b64c:
mov r0, r5
mov r1, r4
bl func_ov61_0215b118
mov r9, r0
_0215b65c:
sub r0, r6, #0x14
cmp r0, #3
add r8, r4, #5
sub r9, r9, #5
addls pc, pc, r0, lsl #2
b _0215b80c
_0215b674: ; jump table
b _0215b684 ; case 0
b _0215b6b4 ; case 1
b _0215b6c8 ; case 2
b _0215b7ec ; case 3
_0215b684:
ldr r0, [r5, #0x1d4]
cmp r0, #0
moveq r0, #9
streqb r0, [r5, #0x455]
beq _0215b814
add r0, r5, #0x2e4
mov r1, #0
mov r2, #8
bl func_02007a44
mov r0, #7
strb r0, [r5, #0x455]
b _0215b814
_0215b6b4:
ldrb r0, [r8]
cmp r0, #2
moveq r0, #9
streqb r0, [r5, #0x455]
b _0215b814
_0215b6c8:
mov r6, #9
mov r7, #4
_0215b6d0:
ldrb r0, [r8, #2]
ldrb r1, [r8, #1]
ldrb r3, [r8]
ldrb r2, [r8, #3]
mov r0, r0, lsl #0x8
add r0, r0, r1, lsl #16
cmp r3, #0xb
add r10, r2, r0
add r8, r8, #4
bgt _0215b720
cmp r3, #0xb
bge _0215b790
cmp r3, #2
bgt _0215b7b8
cmp r3, #1
blt _0215b7b8
beq _0215b748
cmp r3, #2
beq _0215b780
b _0215b7b8
_0215b720:
cmp r3, #0x14
bgt _0215b7b8
cmp r3, #0xe
blt _0215b7b8
beq _0215b7a0
cmp r3, #0x10
beq _0215b770
cmp r3, #0x14
beq _0215b7a8
b _0215b7b8
_0215b748:
ldrb r0, [r5, #0x454]
cmp r0, #0
beq _0215b7bc
ldrb r0, [r5, #0x455]
cmp r0, #0
bne _0215b7bc
mov r0, r5
mov r1, r8
bl func_ov61_0215a884
b _0215b7bc
_0215b770:
mov r0, r5
mov r1, r8
bl func_ov61_0215ae28
b _0215b7bc
_0215b780:
mov r0, r5
mov r1, r8
bl func_ov61_0215a64c
b _0215b7bc
_0215b790:
mov r0, r5
mov r1, r8
bl func_ov61_0215a428
b _0215b7bc
_0215b7a0:
strb r7, [r5, #0x455]
b _0215b7bc
_0215b7a8:
mov r0, r5
mov r1, r8
bl func_ov61_0215b01c
b _0215b7bc
_0215b7b8:
strb r6, [r5, #0x455]
_0215b7bc:
mov r0, r5
sub r1, r8, #4
add r2, r10, #4
bl func_ov61_0215b5b8
add r0, r10, #4
add r8, r8, r10
subs r9, r9, r0
beq _0215b814
ldrb r0, [r5, #0x455]
cmp r0, #9
bne _0215b6d0
b _0215b814
_0215b7ec:
str r4, [r5, #0x824]
mov r0, #5
str r0, [r5, #0x82c]
add r0, r9, #5
str r0, [r5, #0x828]
mov r0, #1
strb r0, [r5, #0x456]
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_0215b80c:
mov r0, #9
strb r0, [r5, #0x455]
_0215b814:
ldr r1, _0215b828 ; =data_ov61_0217f454
mov r0, r4
ldr r1, [r1]
blx r1
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
.align 2, 0
arm_func_end func_ov61_0215b5e4
_0215b828: .word data_ov61_0217f454
.global func_ov61_0215b82c
arm_func_start func_ov61_0215b82c
func_ov61_0215b82c: ; 0x0215b82c
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
mov r5, r0
ldr r4, [r5, #0xc]
add r6, sp, #0
_0215b840:
mov r0, r6
mov r1, r5
bl func_ov61_02154f5c
ldr r1, [sp]
cmp r1, #0
moveq r0, #9
addeq sp, sp, #4
streqb r0, [r4, #0x455]
ldmeqia sp!, {r3, r4, r5, r6, pc}
cmp r1, #5
blo _0215b840
ldrb r1, [r0]
cmp r1, #0x80
bne _0215b928
ldrb r1, [r4, #0x454]
cmp r1, #0
beq _0215b91c
ldrb r1, [r4, #0x455]
cmp r1, #0
bne _0215b91c
ldrb r2, [r0, #1]
mov r1, r5
mov r0, #2
str r2, [sp]
bl func_ov61_0215503c
ldr r1, _0215b9c0 ; =data_ov61_0217f428
ldr r0, [sp]
ldr r1, [r1]
blx r1
movs r6, r0
moveq r0, #9
addeq sp, sp, #4
streqb r0, [r4, #0x455]
ldmeqia sp!, {r3, r4, r5, r6, pc}
ldr r1, [sp]
mov r2, r5
bl func_ov61_0215b54c
cmp r0, #0
ldreqb r0, [r6]
cmpeq r0, #1
movne r0, #9
strneb r0, [r4, #0x455]
bne _0215b8f8
mov r0, r4
add r1, r6, #1
bl func_ov61_0215a7bc
_0215b8f8:
ldr r2, [sp]
mov r0, r4
mov r1, r6
bl func_ov61_0215b5b8
ldr r1, _0215b9c4 ; =data_ov61_0217f454
mov r0, r6
ldr r1, [r1]
blx r1
b _0215b9b4
_0215b91c:
mov r0, #9
strb r0, [r4, #0x455]
b _0215b9b4
_0215b928:
ldrb r2, [r0, #3]
ldrb r0, [r0, #4]
ldr r1, _0215b9c8 ; =0x00004805
add r0, r0, r2, lsl #8
add r0, r0, #5
str r0, [sp]
cmp r0, r1
movhi r0, #9
addhi sp, sp, #4
strhib r0, [r4, #0x455]
ldmhiia sp!, {r3, r4, r5, r6, pc}
ldr r1, _0215b9c0 ; =data_ov61_0217f428
ldr r1, [r1]
blx r1
movs r6, r0
moveq r0, #9
addeq sp, sp, #4
streqb r0, [r4, #0x455]
ldmeqia sp!, {r3, r4, r5, r6, pc}
ldr r1, [sp]
mov r2, r5
bl func_ov61_0215b54c
cmp r0, #0
beq _0215b9a8
ldr r1, _0215b9c4 ; =data_ov61_0217f454
mov r0, r6
ldr r1, [r1]
blx r1
mov r0, #9
add sp, sp, #4
strb r0, [r4, #0x455]
ldmia sp!, {r3, r4, r5, r6, pc}
_0215b9a8:
mov r0, r4
mov r1, r6
bl func_ov61_0215b5e4
_0215b9b4:
ldrb r0, [r4, #0x455]
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0215b82c
_0215b9c0: .word data_ov61_0217f428
_0215b9c4: .word data_ov61_0217f454
_0215b9c8: .word 0x00004805
.global func_ov61_0215b9cc
arm_func_start func_ov61_0215b9cc
func_ov61_0215b9cc: ; 0x0215b9cc
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x74
ldr r2, _0215baec ; =data_ov61_02180e40
mov r10, r0
ldrb r0, [r2]
mov r9, r1
cmp r0, #0
bne _0215ba30
ldr r2, _0215baf0 ; =data_ov61_0217f47c
add r0, sp, #0
ldr r3, [r2]
ldmib r2, {r1, r4}
umull r6, r5, r4, r3
mla r5, r4, r1, r5
ldr r1, [r2, #0xc]
ldr r4, [r2, #0x10]
mla r5, r1, r3, r5
ldr r1, [r2, #0x14]
adds r4, r4, r6
adc r3, r1, r5
str r4, [r2]
mov r1, #4
str r3, [r2, #4]
str r3, [sp]
bl func_ov61_0215bafc
_0215ba30:
cmp r9, #0
mov r8, #0
addle sp, sp, #0x74
mov r1, #0x14
ldmleia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r5, _0215baf4 ; =data_ov61_02180fb8
add r6, sp, #0x18
mov r11, r1
add r4, sp, #4
_0215ba54:
cmp r1, #0x14
bne _0215bac8
mov r0, r6
bl func_ov61_0215d8a4
bl func_0200ee4c
mov r7, r0
mov r0, r6
mov r1, r5
mov r2, r11
bl func_ov61_0215d8f8
mov r0, r6
mov r1, r4
bl func_ov61_0215da18
ldr lr, _0215baf8 ; =data_ov61_02180fcb
mov r3, #1
mov r2, #0x13
add ip, sp, #0x17
_0215ba98:
ldrb r1, [lr]
ldrb r0, [ip], #-1
subs r2, r2, #1
add r0, r1, r0
add r0, r3, r0
strb r0, [lr], #-1
mov r3, r0, lsr #0x8
bpl _0215ba98
str r0, [sp]
mov r0, r7
bl func_0200ee60
mov r1, #0
_0215bac8:
ldrb r0, [r4, r1]
add r1, r1, #1
cmp r0, #0
strneb r0, [r10, r8]
addne r8, r8, #1
cmp r8, r9
blt _0215ba54
add sp, sp, #0x74
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0215b9cc
_0215baec: .word data_ov61_02180e40
_0215baf0: .word data_ov61_0217f47c
_0215baf4: .word data_ov61_02180fb8
_0215baf8: .word data_ov61_02180fcb
.global func_ov61_0215bafc
arm_func_start func_ov61_0215bafc
func_ov61_0215bafc: ; 0x0215bafc
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0x5c
mov r6, r0
add r0, sp, #0
mov r5, r1
bl func_ov61_0215d8a4
bl func_0200ee4c
mov r4, r0
ldr r1, _0215bb64 ; =data_ov61_02180fb8
add r0, sp, #0
mov r2, #0x14
bl func_ov61_0215d8f8
mov r1, r6
mov r2, r5
add r0, sp, #0
bl func_ov61_0215d8f8
ldr r1, _0215bb64 ; =data_ov61_02180fb8
add r0, sp, #0
bl func_ov61_0215d9b0
mov r0, r4
bl func_0200ee60
ldr r0, _0215bb68 ; =data_ov61_02180e40
mov r1, #1
strb r1, [r0]
add sp, sp, #0x5c
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0215bafc
_0215bb64: .word data_ov61_02180fb8
_0215bb68: .word data_ov61_02180e40
.global func_ov61_0215bb6c
arm_func_start func_ov61_0215bb6c
func_ov61_0215bb6c: ; 0x0215bb6c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r9, r0
ldr r4, [r9, #0xc]
ldr r7, [r4, #0x820]
cmp r7, #0
ldrne r8, [r7]
moveq r8, #0
bl func_ov61_021599b4
mov r1, r0, lsr #0x18
strb r1, [r4, #0x54]
mov r1, r0, lsr #0x10
strb r1, [r4, #0x55]
mov r1, r0, lsr #0x8
strb r1, [r4, #0x56]
strb r0, [r4, #0x57]
add r0, r4, #0x58
mov r1, #0x1c
bl func_ov61_0215b9cc
ldr r1, _0215bdc0 ; =data_ov61_0217f428
add r0, r8, #0x9d
ldr r1, [r1]
blx r1
movs r5, r0
bne _0215bbdc
mov r0, #9
strb r0, [r4, #0x455]
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_0215bbdc:
mov r0, #2
strb r0, [r5, #5]
mov r3, #0
strb r3, [r5, #6]
strb r3, [r5, #7]
mov r0, #0x46
strb r0, [r5, #8]
mov r0, #3
strb r0, [r5, #9]
add r0, r4, #0x54
add r1, r5, #0xb
mov r2, #0x20
strb r3, [r5, #0xa]
bl func_02007ad8
mov r2, #0x20
strb r2, [r5, #0x2b]
ldrb r0, [r4, #0x30]
cmp r0, #0
beq _0215bc44
add r0, r4, #0x74
add r1, r5, #0x2c
bl func_02007ad8
mov r0, #1
strb r0, [r4, #0x31]
add r6, r5, #0x4c
b _0215bca0
_0215bc44:
add r0, r5, #0x2c
mov r1, #0x1c
bl func_ov61_0215b9cc
ldr r0, _0215bdc4 ; =data_ov61_02180e40
add r6, r5, #0x4c
ldr r3, [r0, #4]
sub r0, r6, #0x20
mov r1, r3, lsr #0x18
strb r1, [r5, #0x48]
mov r1, r3, lsr #0x10
strb r1, [r5, #0x49]
mov r1, r3, lsr #0x8
strb r1, [r5, #0x4a]
add r1, r4, #0x74
mov r2, #0x20
strb r3, [r5, #0x4b]
bl func_02007ad8
ldr r0, _0215bdc4 ; =data_ov61_02180e40
mov r1, #0
ldr r2, [r0, #4]
strb r1, [r4, #0x31]
add r1, r2, #1
str r1, [r0, #4]
_0215bca0:
ldrh r1, [r4, #0x32]
mov r0, #0
mov r1, r1, asr #0x8
strb r1, [r6]
ldrh r1, [r4, #0x32]
strb r1, [r6, #1]
strb r0, [r6, #2]
ldrb r0, [r4, #0x31]
add r6, r6, #3
cmp r0, #0
bne _0215bd54
cmp r8, #0
beq _0215bd38
add r2, r8, #6
mov r0, #0xb
strb r0, [r6]
add r1, r8, #3
mov r0, r2, asr #0x10
strb r0, [r6, #1]
mov r0, r2, asr #0x8
strb r0, [r6, #2]
strb r2, [r6, #3]
mov r0, r1, asr #0x10
strb r0, [r6, #4]
mov r0, r1, asr #0x8
strb r0, [r6, #5]
strb r1, [r6, #6]
mov r0, r8, asr #0x10
strb r0, [r6, #7]
mov r0, r8, asr #0x8
strb r0, [r6, #8]
strb r8, [r6, #9]
add r6, r6, #0xa
ldr r0, [r7, #4]
mov r1, r6
mov r2, r8
bl func_02007ad8
add r6, r6, r8
_0215bd38:
mov r0, #0xe
strb r0, [r6]
mov r0, #0
strb r0, [r6, #1]
strb r0, [r6, #2]
strb r0, [r6, #3]
add r6, r6, #4
_0215bd54:
mov r0, #0x16
sub r1, r6, r5
sub r6, r1, #5
strb r0, [r5]
mov r0, #3
strb r0, [r5, #1]
mov r0, #0
strb r0, [r5, #2]
mov r0, r6, asr #0x8
strb r0, [r5, #3]
mov r0, r4
mov r2, r6
add r1, r5, #5
strb r6, [r5, #4]
bl func_ov61_0215b5b8
mov r2, #0
mov r0, r5
mov r3, r2
add r1, r6, #5
str r9, [sp]
bl func_ov61_02155204
ldr r1, _0215bdc8 ; =data_ov61_0217f454
mov r0, r5
ldr r1, [r1]
blx r1
ldrb r0, [r4, #0x31]
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_0215bb6c
_0215bdc0: .word data_ov61_0217f428
_0215bdc4: .word data_ov61_02180e40
_0215bdc8: .word data_ov61_0217f454
.global func_ov61_0215bdcc
arm_func_start func_ov61_0215bdcc
func_ov61_0215bdcc: ; 0x0215bdcc
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
ldr r1, _0215bf1c ; =data_ov61_0217f428
mov r6, r0
ldr r1, [r1]
mov r0, #0x83
ldr r5, [r6, #0xc]
blx r1
movs r4, r0
moveq r0, #9
addeq sp, sp, #4
streqb r0, [r5, #0x455]
ldmeqia sp!, {r3, r4, r5, r6, pc}
mov r0, #0x14
strb r0, [r4]
mov r0, #3
strb r0, [r4, #1]
mov r1, #0
strb r1, [r4, #2]
strb r1, [r4, #3]
mov r3, #1
strb r3, [r4, #4]
add r0, r5, #0x1cc
mov r2, #8
strb r3, [r4, #5]
bl func_02007a44
mov r0, #0x16
strb r0, [r4, #6]
mov r0, #3
strb r0, [r4, #7]
mov r1, #0
strb r1, [r4, #8]
strb r1, [r4, #9]
mov r0, #0x28
strb r0, [r4, #0xa]
mov r0, #0x14
strb r0, [r4, #0xb]
strb r1, [r4, #0xc]
strb r1, [r4, #0xd]
mov r3, #0x24
add r0, r5, #0x3a4
add r1, r5, #0x3fc
mov r2, #0x58
strb r3, [r4, #0xe]
bl func_02007ad8
mov r0, r5
add r1, r4, #0xf
mov r2, #0
bl func_ov61_0215ae64
add r0, r5, #0x3fc
add r1, r5, #0x3a4
mov r2, #0x58
bl func_02007ad8
add r0, r5, #0x2ec
add r1, r5, #0x348
mov r2, #0x5c
bl func_02007ad8
mov r0, r5
add r1, r4, #0x1f
mov r2, #0
bl func_ov61_0215af40
add r0, r5, #0x348
add r1, r5, #0x2ec
mov r2, #0x5c
bl func_02007ad8
mov r0, r5
add r1, r4, #0xb
mov r2, #0x28
bl func_ov61_0215b5b8
mov r0, r5
add r1, r4, #6
bl func_ov61_0215b348
mov r2, #0
add r1, r0, #6
mov r0, r4
mov r3, r2
str r6, [sp]
bl func_ov61_02155204
ldr r1, _0215bf20 ; =data_ov61_0217f454
mov r0, r4
ldr r1, [r1]
blx r1
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0215bdcc
_0215bf1c: .word data_ov61_0217f428
_0215bf20: .word data_ov61_0217f454
.global func_ov61_0215bf24
arm_func_start func_ov61_0215bf24
func_ov61_0215bf24: ; 0x0215bf24
stmdb sp!, {r3, r4, r5, r6, r7, lr}
ldr r1, _0215c0ac ; =data_ov61_0217f428
mov r7, r0
ldr r1, [r1]
mov r0, #0x98
ldr r4, [r7, #0xc]
blx r1
movs r5, r0
moveq r0, #9
streqb r0, [r4, #0x455]
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, #3
strb r0, [r5, #9]
mov r0, #0
strb r0, [r5, #0xa]
bl func_ov61_021599b4
mov r1, r0, lsr #0x18
strb r1, [r4, #0x34]
mov r1, r0, lsr #0x10
strb r1, [r4, #0x35]
mov r1, r0, lsr #0x8
strb r1, [r4, #0x36]
strb r0, [r4, #0x37]
add r0, r4, #0x38
mov r1, #0x1c
bl func_ov61_0215b9cc
add r0, r4, #0x34
add r1, r5, #0xb
mov r2, #0x20
bl func_02007ad8
ldrh r2, [r7, #0x18]
ldr r1, [r7, #0x1c]
mov r0, r4
bl func_ov61_021597c0
ldrb r0, [r4, #0x30]
cmp r0, #0
moveq r0, #0
streqb r0, [r5, #0x2b]
addeq r0, r5, #0x2c
beq _0215bfdc
mov r2, #0x20
add r0, r4, #0x74
add r1, r5, #0x2c
strb r2, [r5, #0x2b]
bl func_02007ad8
add r0, r5, #0x4c
_0215bfdc:
mov r6, #0
strb r6, [r0]
mov r1, #4
strb r1, [r0, #1]
ldr r2, _0215c0b0 ; =data_ov61_0217bc84
add r0, r0, #2
_0215bff4:
mov r3, r6, lsl #0x1
ldrh r1, [r2, r3]
add r6, r6, #1
cmp r6, #2
mov r1, r1, asr #0x8
strb r1, [r0]
ldrh r1, [r2, r3]
strb r1, [r0, #1]
add r0, r0, #2
blo _0215bff4
mov r3, #1
mov r2, #0
strb r3, [r0]
add r1, r0, #2
sub r1, r1, r5
sub r6, r1, #5
strb r2, [r0, #1]
sub r1, r6, #4
mov r0, #0x16
strb r0, [r5]
mov r0, #3
strb r0, [r5, #1]
strb r2, [r5, #2]
mov r0, r6, asr #0x8
strb r0, [r5, #3]
strb r6, [r5, #4]
strb r3, [r5, #5]
mov r0, r1, asr #0x10
strb r0, [r5, #6]
mov r0, r1, asr #0x8
strb r0, [r5, #7]
strb r1, [r5, #8]
mov r0, r5
mov r3, r2
add r1, r6, #5
str r7, [sp]
bl func_ov61_02155204
mov r0, r4
mov r2, r6
add r1, r5, #5
bl func_ov61_0215b5b8
ldr r1, _0215c0b4 ; =data_ov61_0217f454
mov r0, r5
ldr r1, [r1]
blx r1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0215bf24
_0215c0ac: .word data_ov61_0217f428
_0215c0b0: .word data_ov61_0217bc84
_0215c0b4: .word data_ov61_0217f454
.global func_ov61_0215c0b8
arm_func_start func_ov61_0215c0b8
func_ov61_0215c0b8: ; 0x0215c0b8
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #8
mov r11, r0
ldr r4, [r11, #0xc]
mov r0, #3
strb r0, [r4]
mov r0, #0
strb r0, [r4, #1]
add r0, r4, #2
mov r1, #0x2e
bl func_ov61_0215b9cc
ldr r10, [r4, #0x594]
ldr r0, _0215c348 ; =data_ov61_0217f428
mov r1, r10, lsl #0x1
ldr r2, [r0]
add r1, r1, r1, lsr #31
mov r0, r10
mov r8, r1, asr #0x1
blx r2
movs r9, r0
moveq r0, #9
addeq sp, sp, #8
streqb r0, [r4, #0x455]
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
mov r0, #0
strb r0, [r9]
mov r2, #2
add r0, r9, #2
sub r1, r10, #0x33
strb r2, [r9, #1]
bl func_ov61_0215b9cc
add r1, r9, r10
mov r0, r4
sub r3, r10, #0x31
mov r5, #0
sub r1, r1, #0x30
mov r2, #0x30
strb r5, [r9, r3]
bl func_02007ad8
ldr r1, _0215c348 ; =data_ov61_0217f428
mov r0, r8, lsl #0x3
ldr r1, [r1]
blx r1
movs r5, r0
bne _0215c18c
ldr r1, _0215c34c ; =data_ov61_0217f454
mov r0, r9
ldr r1, [r1]
blx r1
mov r0, #9
add sp, sp, #8
strb r0, [r4, #0x455]
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0215c18c:
add r0, r5, r8, lsl #1
add r6, r0, r8, lsl #1
mov r1, r9
mov r2, r10
mov r3, r8
str r0, [sp, #4]
add r7, r6, r8, lsl #1
bl func_ov61_0215e8d4
add r0, r4, #0x198
add r1, r0, #0x400
ldr r2, [r4, #0x5a0]
mov r0, r6
mov r3, r8
bl func_ov61_0215e8d4
add r1, r4, #0x94
mov r0, r7
add r1, r1, #0x400
mov r2, r10
mov r3, r8
bl func_ov61_0215e8d4
bl func_ov61_021599fc
mov r2, r6
mov r6, r0
ldr r1, [sp, #4]
mov r3, r8
mov r0, r5
str r7, [sp]
bl func_ov61_0215e2c0
mov r0, r6
bl func_ov61_02159a48
ldr r1, _0215c348 ; =data_ov61_0217f428
add r0, r10, #0x49
ldr r1, [r1]
blx r1
movs r6, r0
bne _0215c24c
ldr r1, _0215c34c ; =data_ov61_0217f454
mov r0, r9
ldr r1, [r1]
blx r1
ldr r1, _0215c34c ; =data_ov61_0217f454
mov r0, r5
ldr r1, [r1]
blx r1
mov r0, #9
add sp, sp, #8
strb r0, [r4, #0x455]
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0215c24c:
mov r0, #0x16
strb r0, [r6]
mov r1, #3
add r0, r10, #4
strb r1, [r6, #1]
mov r1, #0
strb r1, [r6, #2]
mov r1, r0, asr #0x8
strb r1, [r6, #3]
strb r0, [r6, #4]
mov r0, #0x10
strb r0, [r6, #5]
mov r0, r10, asr #0x10
strb r0, [r6, #6]
mov r0, r10, asr #0x8
strb r0, [r6, #7]
strb r10, [r6, #8]
tst r10, #1
add r0, r6, #9
beq _0215c2b4
add r0, r10, r10, lsr #31
mov r0, r0, asr #0x1
mov r0, r0, lsl #0x1
ldrh r1, [r5, r0]
add r0, r6, #0xa
strb r1, [r6, #9]
_0215c2b4:
add r1, r10, r10, lsr #31
mov r1, r1, asr #0x1
subs r3, r1, #1
bmi _0215c2e8
_0215c2c4:
mov r2, r3, lsl #0x1
ldrh r1, [r5, r2]
subs r3, r3, #1
mov r1, r1, asr #0x8
strb r1, [r0]
ldrh r1, [r5, r2]
strb r1, [r0, #1]
add r0, r0, #2
bpl _0215c2c4
_0215c2e8:
mov r2, #0
mov r0, r6
mov r3, r2
add r1, r10, #9
str r11, [sp]
bl func_ov61_02155204
mov r0, r4
add r1, r6, #5
add r2, r10, #4
bl func_ov61_0215b5b8
ldr r1, _0215c34c ; =data_ov61_0217f454
mov r0, r6
ldr r1, [r1]
blx r1
ldr r1, _0215c34c ; =data_ov61_0217f454
mov r0, r5
ldr r1, [r1]
blx r1
ldr r1, _0215c34c ; =data_ov61_0217f454
mov r0, r9
ldr r1, [r1]
blx r1
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0215c0b8
_0215c348: .word data_ov61_0217f428
_0215c34c: .word data_ov61_0217f454
.global func_ov61_0215c350
arm_func_start func_ov61_0215c350
func_ov61_0215c350: ; 0x0215c350
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_0215b82c
cmp r0, #7
movne r0, #1
ldmneia sp!, {r4, pc}
mov r0, r4
bl func_ov61_0215b82c
cmp r0, #6
movne r0, #1
moveq r0, #0
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0215c350
.global func_ov61_0215c380
arm_func_start func_ov61_0215c380
func_ov61_0215c380: ; 0x0215c380
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_0215b82c
cmp r0, #1
movne r0, #1
ldmneia sp!, {r4, pc}
mov r0, r4
bl func_ov61_0215bb6c
cmp r0, #0
beq _0215c3d0
ldr r0, [r4, #0xc]
bl func_ov61_0215ac5c
mov r0, r4
bl func_ov61_0215bdcc
mov r0, r4
bl func_ov61_0215c350
cmp r0, #0
beq _0215c400
mov r0, #1
ldmia sp!, {r4, pc}
_0215c3d0:
mov r0, r4
bl func_ov61_0215b82c
cmp r0, #5
movne r0, #1
ldmneia sp!, {r4, pc}
mov r0, r4
bl func_ov61_0215c350
cmp r0, #0
movne r0, #1
ldmneia sp!, {r4, pc}
mov r0, r4
bl func_ov61_0215bdcc
_0215c400:
mov r0, #0
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0215c380
.global func_ov61_0215c408
arm_func_start func_ov61_0215c408
func_ov61_0215c408: ; 0x0215c408
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
ldr r6, [r7, #0xc]
mov r5, #0
mov r4, #1
_0215c41c:
mov r0, r7
bl func_ov61_02154c2c
strb r5, [r6, #0x455]
str r5, [r6, #0x1d4]
add r0, r6, #0x2ec
strb r4, [r6, #0x454]
bl func_ov61_0215d8a4
add r0, r6, #0x3a4
bl func_ov61_0215cfe4
mov r0, r7
bl func_ov61_0215c380
cmp r0, #0
moveq r0, #8
streqb r0, [r6, #0x455]
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, r7
bl func_ov61_02154df4
ldrh r0, [r7, #0x1a]
strh r0, [r7, #0x18]
ldr r0, [r7, #0x20]
str r0, [r7, #0x1c]
b _0215c41c
_0215c474:
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_0215c408
.global func_ov61_0215c478
arm_func_start func_ov61_0215c478
func_ov61_0215c478: ; 0x0215c478
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r4, [r5, #0xc]
bl func_ov61_0215bf24
_0215c488:
mov r0, r5
bl func_ov61_0215b82c
cmp r0, #9
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, pc}
cmp r0, #4
beq _0215c4b0
ldrb r0, [r4, #0x31]
cmp r0, #0
beq _0215c488
_0215c4b0:
ldrb r0, [r4, #0x31]
cmp r0, #0
beq _0215c4e4
mov r0, r4
bl func_ov61_0215ac5c
mov r0, r5
bl func_ov61_0215c350
cmp r0, #0
movne r0, #1
ldmneia sp!, {r3, r4, r5, pc}
mov r0, r5
bl func_ov61_0215bdcc
b _0215c534
_0215c4e4:
mov r0, r5
bl func_ov61_0215c0b8
mov r0, r4
bl func_ov61_0215abfc
ldrb r0, [r4, #0x30]
cmp r0, #0
beq _0215c510
ldrh r2, [r5, #0x18]
ldr r1, [r5, #0x1c]
mov r0, r4
bl func_ov61_02159860
_0215c510:
mov r0, r4
bl func_ov61_0215ac5c
mov r0, r5
bl func_ov61_0215bdcc
mov r0, r5
bl func_ov61_0215c350
cmp r0, #0
movne r0, #1
ldmneia sp!, {r3, r4, r5, pc}
_0215c534:
mov r0, #8
strb r0, [r4, #0x455]
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0215c478
.global func_ov61_0215c544
arm_func_start func_ov61_0215c544
func_ov61_0215c544: ; 0x0215c544
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldrb r1, [r5, #8]
ldr r4, [r5, #0xc]
cmp r1, #4
beq _0215c56c
bl func_ov61_02154cbc
cmp r0, #0
movne r0, #1
ldmneia sp!, {r3, r4, r5, pc}
_0215c56c:
mov r1, #0
strb r1, [r4, #0x455]
str r1, [r4, #0x1d4]
add r0, r4, #0x2ec
strb r1, [r4, #0x454]
bl func_ov61_0215d8a4
add r0, r4, #0x3a4
bl func_ov61_0215cfe4
mov r0, r5
bl func_ov61_0215c478
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0215c544
.global func_ov61_0215c598
arm_func_start func_ov61_0215c598
func_ov61_0215c598: ; 0x0215c598
stmdb sp!, {r4, r5, r6, lr}
mov r5, r1
ldr r4, [r5, #0xc]
mov r6, r0
ldr ip, [r4, #0x824]
cmp ip, #0
beq _0215c61c
ldrb r0, [r4, #0x456]
cmp r0, #0
bne _0215c61c
ldr r3, [r4, #0x82c]
ldr r1, [r4, #0x828]
mov r2, r5
add r0, ip, r3
sub r1, r1, r3
bl func_ov61_0215b54c
cmp r0, #0
beq _0215c600
ldr r1, _0215c66c ; =data_ov61_0217f454
ldr r0, [r4, #0x824]
ldr r1, [r1]
blx r1
mov r0, #0
str r0, [r4, #0x824]
str r0, [r6]
ldmia sp!, {r4, r5, r6, pc}
_0215c600:
ldr r1, [r4, #0x824]
mov r0, r4
bl func_ov61_0215b5e4
ldrb r0, [r4, #0x456]
cmp r0, #0
moveq r0, #0
streq r0, [r4, #0x824]
_0215c61c:
ldr r0, [r4, #0x824]
cmp r0, #0
bne _0215c64c
_0215c628:
mov r0, r5
bl func_ov61_0215b82c
cmp r0, #9
moveq r0, #0
streq r0, [r6]
ldmeqia sp!, {r4, r5, r6, pc}
ldr r0, [r4, #0x824]
cmp r0, #0
beq _0215c628
_0215c64c:
ldr r1, [r4, #0x828]
ldr r0, [r4, #0x82c]
sub r0, r1, r0
str r0, [r6]
ldr r1, [r4, #0x824]
ldr r0, [r4, #0x82c]
add r0, r1, r0
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0215c598
_0215c66c: .word data_ov61_0217f454
.global func_ov61_0215c670
arm_func_start func_ov61_0215c670
func_ov61_0215c670: ; 0x0215c670
stmdb sp!, {r4, lr}
ldr r4, [r1, #0xc]
ldr r2, [r4, #0x828]
ldr r1, [r4, #0x82c]
sub r2, r2, r1
cmp r0, r2
blo _0215c6b0
ldr r0, [r4, #0x824]
cmp r0, #0
beq _0215c6a4
ldr r1, _0215c6bc ; =data_ov61_0217f454
ldr r1, [r1]
blx r1
_0215c6a4:
mov r0, #0
str r0, [r4, #0x824]
ldmia sp!, {r4, pc}
_0215c6b0:
add r0, r1, r0
str r0, [r4, #0x82c]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0215c670
_0215c6bc: .word data_ov61_0217f454
.global func_ov61_0215c6c0
arm_func_start func_ov61_0215c6c0
func_ov61_0215c6c0: ; 0x0215c6c0
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
mov r5, r0
ldr r4, [r5, #0xc]
ldr r0, [r4, #0x824]
cmp r0, #0
ldr r0, [r5, #0x44]
bne _0215c760
cmp r0, #5
addlo sp, sp, #4
ldmloia sp!, {r3, r4, r5, r6, pc}
add r0, sp, #0
mov r1, r5
bl func_ov61_02154f5c
ldrb r2, [r0, #3]
ldrb r0, [r0, #4]
ldr r1, _0215c7fc ; =0x00004805
add r0, r0, r2, lsl #8
add r0, r0, #5
str r0, [sp]
cmp r0, r1
movhi r0, #9
addhi sp, sp, #4
strhib r0, [r4, #0x455]
ldmhiia sp!, {r3, r4, r5, r6, pc}
ldr r1, _0215c800 ; =data_ov61_0217f428
ldr r1, [r1]
blx r1
cmp r0, #0
str r0, [r4, #0x824]
moveq r0, #9
addeq sp, sp, #4
streqb r0, [r4, #0x455]
ldmeqia sp!, {r3, r4, r5, r6, pc}
ldr r1, [sp]
mov r0, #0
str r1, [r4, #0x828]
str r0, [r4, #0x82c]
strb r0, [r4, #0x456]
b _0215c76c
_0215c760:
cmp r0, #0
addeq sp, sp, #4
ldmeqia sp!, {r3, r4, r5, r6, pc}
_0215c76c:
add r0, sp, #0
mov r1, r5
bl func_ov61_02154f5c
ldr r3, [r4, #0x828]
ldr r2, [r4, #0x82c]
ldr r1, [sp]
sub r2, r3, r2
cmp r1, r2
strhs r2, [sp]
movhs r6, #1
ldr r3, [r4, #0x824]
ldr r1, [r4, #0x82c]
ldr r2, [sp]
add r1, r3, r1
movlo r6, #0
bl func_02007ad8
ldr r0, [sp]
mov r1, r5
bl func_ov61_0215503c
cmp r6, #0
beq _0215c7e4
ldr r1, [r4, #0x824]
mov r0, r4
bl func_ov61_0215b5e4
ldrb r0, [r4, #0x456]
add sp, sp, #4
cmp r0, #0
moveq r0, #0
streq r0, [r4, #0x824]
ldmia sp!, {r3, r4, r5, r6, pc}
_0215c7e4:
ldr r1, [r4, #0x82c]
ldr r0, [sp]
add r0, r1, r0
str r0, [r4, #0x82c]
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0215c6c0
_0215c7fc: .word 0x00004805
_0215c800: .word data_ov61_0217f428
.global func_ov61_0215c804
arm_func_start func_ov61_0215c804
func_ov61_0215c804: ; 0x0215c804
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r4, [r5, #0xc]
ldr r0, [r4, #0x824]
cmp r0, #0
ldrneb r0, [r4, #0x456]
cmpne r0, #0
bne _0215c82c
mov r0, r5
bl func_ov61_0215c6c0
_0215c82c:
ldr r1, [r4, #0x824]
cmp r1, #0
ldrneb r0, [r4, #0x456]
cmpne r0, #0
beq _0215c850
ldr r1, [r4, #0x828]
ldr r0, [r4, #0x82c]
sub r0, r1, r0
ldmia sp!, {r3, r4, r5, pc}
_0215c850:
cmp r1, #0
bne _0215c878
ldrb r0, [r5, #8]
cmp r0, #4
bne _0215c870
ldrb r0, [r4, #0x455]
cmp r0, #9
bne _0215c878
_0215c870:
mvn r0, #0
ldmia sp!, {r3, r4, r5, pc}
_0215c878:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0215c804
.global func_ov61_0215c880
arm_func_start func_ov61_0215c880
func_ov61_0215c880: ; 0x0215c880
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0xc
ldr r4, [sp, #0x30]
mov r9, r1
mov r1, r4
ldr r1, [r1, #0xc]
mov r10, r0
mov r0, #0
str r4, [sp, #0x30]
str r1, [sp, #8]
mov r8, r2
add r5, r9, r3
str r0, [sp, #4]
_0215c8b4:
ldr r0, _0215c9a8 ; =0x00000b4f
ldr r1, _0215c9ac ; =data_ov61_0217f428
cmp r5, r0
movgt r6, r0
movle r6, r5
ldr r1, [r1]
add r0, r6, #0x19
blx r1
movs r4, r0
beq _0215c99c
cmp r9, r6
movhs r7, r6
movlo r7, r9
mov r0, r10
add r1, r4, #5
mov r2, r7
sub r11, r6, r7
bl func_02007ad8
add r1, r4, #5
mov r0, r8
add r1, r1, r7
mov r2, r11
add r10, r10, r7
sub r9, r9, r7
bl func_02007ad8
mov r0, #0x17
strb r0, [r4]
mov r0, #3
strb r0, [r4, #1]
mov r0, #0
strb r0, [r4, #2]
mov r0, r6, asr #0x8
strb r0, [r4, #3]
ldr r0, [sp, #8]
mov r1, r4
add r8, r8, r11
strb r6, [r4, #4]
bl func_ov61_0215b348
ldr r1, [sp, #0x30]
mov r7, r0
mov r2, #0
str r1, [sp]
mov r0, r4
mov r1, r7
mov r3, r2
bl func_ov61_02155204
cmp r0, r7
ldr r1, _0215c9b0 ; =data_ov61_0217f454
mov r0, r4
ldr r1, [r1]
movlo r6, #0
blx r1
ldr r0, [sp, #4]
subs r5, r5, r6
add r0, r0, r6
str r0, [sp, #4]
cmpne r6, #0
bne _0215c8b4
_0215c99c:
ldr r0, [sp, #4]
add sp, sp, #0xc
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0215c880
_0215c9a8: .word 0x00000b4f
_0215c9ac: .word data_ov61_0217f428
_0215c9b0: .word data_ov61_0217f454
.global func_ov61_0215c9b4
arm_func_start func_ov61_0215c9b4
func_ov61_0215c9b4: ; 0x0215c9b4
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #0x20
mov r5, r0
ldr r4, [r5, #0xc]
ldrb r0, [r4, #0x455]
cmp r0, #8
bne _0215ca24
mov ip, #0
mov r6, #0x15
mov lr, #3
mov r3, #2
mov r2, #1
add r1, sp, #4
mov r0, r4
strb r6, [sp, #4]
strb lr, [sp, #5]
strb ip, [sp, #6]
strb ip, [sp, #7]
strb r3, [sp, #8]
strb r2, [sp, #9]
strb ip, [sp, #0xa]
bl func_ov61_0215b348
mov r2, #0
mov r1, r0
add r0, sp, #4
mov r3, r2
str r5, [sp]
bl func_ov61_02155204
_0215ca24:
mov r0, #0
strb r0, [r4, #0x455]
add sp, sp, #0x20
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0215c9b4
.global func_ov61_0215ca34
arm_func_start func_ov61_0215ca34
func_ov61_0215ca34: ; 0x0215ca34
stmdb sp!, {r4, lr}
ldr r4, [r0, #0xc]
mov r0, #0
strb r0, [r4, #0x455]
ldr r0, [r4, #0x824]
cmp r0, #0
beq _0215ca5c
ldr r1, _0215ca68 ; =data_ov61_0217f454
ldr r1, [r1]
blx r1
_0215ca5c:
mov r0, #0
str r0, [r4, #0x824]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0215ca34
_0215ca68: .word data_ov61_0217f454
.global func_ov61_0215ca6c
arm_func_start func_ov61_0215ca6c
func_ov61_0215ca6c: ; 0x0215ca6c
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, _0215ca94 ; =data_02000c18
bl func_02000b60
ldr r0, _0215ca98 ; =data_027e02a0
ldr r0, [r0, #4]
ldr r0, [r0, #0xa4]
cmp r0, #0
strneb r4, [r0, #9]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0215ca6c
_0215ca94: .word data_02000c18
_0215ca98: .word data_027e02a0
.global func_ov61_0215ca9c
arm_func_start func_ov61_0215ca9c
func_ov61_0215ca9c: ; 0x0215ca9c
stmdb sp!, {r4, r5, r6, lr}
mov r5, r0
bl func_0200ee4c
mov r4, #0
ldr r6, _0215cb70 ; =data_ov61_02180e48
ldr r1, _0215cb74 ; =0x000003bd
mov r2, r4
_0215cab8:
ldrb r3, [r6, #0x5a]
cmp r3, #0
beq _0215cad4
ldr r3, [r6, #0x50]
sub r3, r5, r3
cmp r3, r1
strgtb r2, [r6, #0x5a]
_0215cad4:
add r4, r4, #1
cmp r4, #4
add r6, r6, #0x5c
blt _0215cab8
bl func_0200ee60
ldr r0, _0215cb78 ; =data_027e02a0
ldr r4, [r0, #8]
cmp r4, #0
ldmeqia sp!, {r4, r5, r6, pc}
mov r6, #0
_0215cafc:
ldr r1, [r4, #0xa4]
cmp r1, #0
ldrne r0, [r1]
cmpne r0, #0
ldrneb r0, [r1, #9]
cmpne r0, #0
beq _0215cb60
ldrb r0, [r1, #8]
cmp r0, #4
bne _0215cb60
ldr r0, [r1, #0xc]
ldrb r0, [r0, #0x455]
cmp r0, #8
bhs _0215cb60
ldr r0, [r1, #0x10]
sub r0, r5, r0
cmp r0, #0xef
ble _0215cb60
ldr r0, [r1, #4]
cmp r0, #2
bne _0215cb60
strb r6, [r1, #8]
str r6, [r1, #4]
ldr r0, [r1]
bl func_0200d938
_0215cb60:
ldr r4, [r4, #0x68]
cmp r4, #0
bne _0215cafc
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0215ca9c
_0215cb70: .word data_ov61_02180e48
_0215cb74: .word 0x000003bd
_0215cb78: .word data_027e02a0
.global func_ov61_0215cb7c
arm_func_start func_ov61_0215cb7c
func_ov61_0215cb7c: ; 0x0215cb7c
ldr ip, _0215cb90 ; =func_02007a44
ldr r0, _0215cb94 ; =data_ov61_02180e48
mov r1, #0
mov r2, #0x170
bx ip
.align 2, 0
arm_func_end func_ov61_0215cb7c
_0215cb90: .word func_02007a44
_0215cb94: .word data_ov61_02180e48
.global func_ov61_0215cb98
arm_func_start func_ov61_0215cb98
func_ov61_0215cb98: ; 0x0215cb98
ldr ip, _0215cbac ; =func_02007ad8
mov r3, r0
mov r0, r1
mov r1, r3
bx ip
.align 2, 0
arm_func_end func_ov61_0215cb98
_0215cbac: .word func_02007ad8
.global func_ov61_0215cbb0
arm_func_start func_ov61_0215cbb0
func_ov61_0215cbb0: ; 0x0215cbb0
ldr ip, _0215cbc4 ; =func_02007ad8
mov r3, r0
mov r0, r1
mov r1, r3
bx ip
.align 2, 0
arm_func_end func_ov61_0215cbb0
_0215cbc4: .word func_02007ad8
.global func_ov61_0215cbc8
arm_func_start func_ov61_0215cbc8
func_ov61_0215cbc8: ; 0x0215cbc8
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x44
str r0, [sp]
ldr r3, [sp]
add r0, sp, #4
mov r2, #0x40
ldmia r3, {r4, r5, r6, r7}
bl func_ov61_0215cbb0
mov r3, #0
ldr lr, _0215cfdc ; =data_ov61_0217bcf4
mov ip, r3
add r2, sp, #4
_0215cbf8:
ldr r1, _0215cfe0 ; =data_ov61_0217bd74
ldrb r0, [lr]
add r9, r1, r3, lsl #2
eor r1, r6, r7
and r8, r5, r1
ldr r1, _0215cfe0 ; =data_ov61_0217bd74
ldr r0, [r2, r0, lsl #2]
ldr r10, [r1, r3, lsl #2]
eor r1, r7, r8
add r0, r1, r0
add r0, r10, r0
add r1, r4, r0
mov r0, r1, lsr #0x19
orr r0, r0, r1, lsl #7
ldrb r1, [lr, #1]
add r4, r5, r0
eor r0, r5, r6
and r0, r4, r0
ldr r10, [r2, r1, lsl #2]
eor r0, r6, r0
add r0, r0, r10
ldr r8, [r9, #4]
ldrb r10, [lr, #2]
add r0, r8, r0
add r7, r7, r0
mov r0, r7, lsr #0x14
orr r0, r0, r7, lsl #12
add r7, r4, r0
eor r0, r4, r5
and r0, r7, r0
ldr r1, [r9, #8]
ldrb r11, [lr, #3]
ldr r10, [r2, r10, lsl #2]
eor r0, r5, r0
add r0, r0, r10
add r0, r1, r0
add r6, r6, r0
mov r1, r6, lsr #0xf
orr r1, r1, r6, lsl #17
add ip, ip, #1
eor r8, r7, r4
add r6, r7, r1
and r1, r6, r8
ldr r0, [r2, r11, lsl #2]
eor r1, r4, r1
ldr r9, [r9, #0xc]
add r0, r1, r0
add r0, r9, r0
add r1, r5, r0
mov r0, r1, lsr #0xa
orr r0, r0, r1, lsl #22
add lr, lr, #4
add r5, r6, r0
add r3, r3, #4
cmp ip, #4
blt _0215cbf8
ldr r0, _0215cfdc ; =data_ov61_0217bcf4
ldr lr, _0215cfe0 ; =data_ov61_0217bd74
mov r11, #0
add r10, r0, r3
add r9, sp, #4
_0215ccec:
ldrb r0, [r10]
add ip, lr, r3, lsl #2
eor r1, r5, r6
and r1, r7, r1
ldr r8, [lr, r3, lsl #2]
eor r1, r6, r1
ldr r0, [r9, r0, lsl #2]
ldr r2, [ip, #4]
add r0, r1, r0
add r0, r8, r0
add r1, r4, r0
mov r0, r1, lsr #0x1b
orr r1, r0, r1, lsl #5
ldrb r0, [r10, #1]
add r4, r5, r1
eor r1, r4, r5
and r1, r6, r1
eor r1, r5, r1
ldr r0, [r9, r0, lsl #2]
ldr r8, [ip, #8]
add r0, r1, r0
add r0, r2, r0
add r2, r7, r0
ldr r0, [ip, #0xc]
mov r1, r2, lsr #0x17
orr r1, r1, r2, lsl #9
add r7, r4, r1
eor r1, r7, r4
and r1, r5, r1
eor r2, r4, r1
ldrb r1, [r10, #2]
ldrb ip, [r10, #3]
add r10, r10, #4
ldr r1, [r9, r1, lsl #2]
ldr ip, [r9, ip, lsl #2]
add r1, r2, r1
add r1, r8, r1
add r2, r6, r1
mov r1, r2, lsr #0x12
orr r1, r1, r2, lsl #14
add r6, r7, r1
eor r1, r6, r7
and r1, r4, r1
eor r1, r7, r1
add r1, r1, ip
add r0, r0, r1
add r1, r5, r0
mov r0, r1, lsr #0xc
orr r0, r0, r1, lsl #20
add r5, r6, r0
add r3, r3, #4
add r11, r11, #1
cmp r11, #4
blt _0215ccec
ldr r0, _0215cfdc ; =data_ov61_0217bcf4
ldr r1, _0215cfe0 ; =data_ov61_0217bd74
add r2, r0, r3
mov r8, #0
add r0, sp, #4
_0215cdd8:
ldrb r9, [r2]
add r11, r1, r3, lsl #2
eor ip, r5, r6
ldr r10, [r0, r9, lsl #2]
eor ip, r7, ip
ldr r9, [r1, r3, lsl #2]
add r10, ip, r10
add r9, r9, r10
add r9, r4, r9
mov r4, r9, lsr #0x1c
ldrb r10, [r2, #1]
orr r4, r4, r9, lsl #4
add r4, r5, r4
eor r9, r4, r5
eor r9, r6, r9
ldr ip, [r0, r10, lsl #2]
ldr r10, [r11, #4]
add r9, r9, ip
add r9, r10, r9
add r9, r7, r9
mov r7, r9, lsr #0x15
orr r7, r7, r9, lsl #11
ldrb r9, [r2, #2]
add r7, r4, r7
ldr r10, [r11, #8]
ldr ip, [r0, r9, lsl #2]
ldr r9, [r11, #0xc]
eor r11, r7, r4
eor r11, r5, r11
add r11, r11, ip
add r10, r10, r11
add r10, r6, r10
mov r6, r10, lsr #0x10
orr r6, r6, r10, lsl #16
add r6, r7, r6
eor r10, r6, r7
eor r11, r4, r10
ldrb r10, [r2, #3]
add r2, r2, #4
add r3, r3, #4
ldr r10, [r0, r10, lsl #2]
add r8, r8, #1
add r10, r11, r10
add r9, r9, r10
add r9, r5, r9
cmp r8, #4
mov r5, r9, lsr #0x9
orr r5, r5, r9, lsl #23
add r5, r6, r5
blt _0215cdd8
ldr r0, _0215cfdc ; =data_ov61_0217bcf4
mov r9, #0
add r8, r0, r3
add r2, sp, #4
_0215ceb0:
ldr r1, _0215cfe0 ; =data_ov61_0217bd74
ldrb r0, [r8]
add r11, r1, r3, lsl #2
mvn r1, r7
orr r10, r5, r1
ldr r1, _0215cfe0 ; =data_ov61_0217bd74
ldr r0, [r2, r0, lsl #2]
ldr ip, [r1, r3, lsl #2]
eor r1, r6, r10
add r0, r1, r0
add r0, ip, r0
add r1, r4, r0
mov r0, r1, lsr #0x1a
orr r0, r0, r1, lsl #6
ldrb r1, [r8, #1]
add r4, r5, r0
mvn r0, r6
orr r0, r4, r0
ldr ip, [r2, r1, lsl #2]
eor r0, r5, r0
add r0, r0, ip
ldr r10, [r11, #4]
ldrb ip, [r8, #2]
add r0, r10, r0
add r7, r7, r0
mov r0, r7, lsr #0x16
orr r0, r0, r7, lsl #10
add r7, r4, r0
mvn r0, r5
orr r0, r7, r0
ldr r1, [r11, #8]
ldrb lr, [r8, #3]
ldr ip, [r2, ip, lsl #2]
eor r0, r4, r0
add r0, r0, ip
add r0, r1, r0
add r6, r6, r0
mov r1, r6, lsr #0x11
orr r1, r1, r6, lsl #15
add r9, r9, #1
mvn r10, r4
add r6, r7, r1
orr r1, r6, r10
ldr r0, [r2, lr, lsl #2]
eor r1, r7, r1
ldr r11, [r11, #0xc]
add r0, r1, r0
add r0, r11, r0
add r1, r5, r0
mov r0, r1, lsr #0xb
orr r0, r0, r1, lsl #21
add r8, r8, #4
add r5, r6, r0
add r3, r3, #4
cmp r9, #4
blt _0215ceb0
ldr r0, [sp]
ldr r0, [r0]
add r1, r0, r4
ldr r0, [sp]
str r1, [r0]
ldr r0, [r0, #4]
add r1, r0, r5
ldr r0, [sp]
str r1, [r0, #4]
ldr r0, [r0, #8]
add r1, r0, r6
ldr r0, [sp]
str r1, [r0, #8]
ldr r0, [r0, #0xc]
add r1, r0, r7
ldr r0, [sp]
str r1, [r0, #0xc]
add sp, sp, #0x44
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0215cbc8
_0215cfdc: .word data_ov61_0217bcf4
_0215cfe0: .word data_ov61_0217bd74
.global func_ov61_0215cfe4
arm_func_start func_ov61_0215cfe4
func_ov61_0215cfe4: ; 0x0215cfe4
stmdb sp!, {r4, lr}
mov r1, #0
mov r2, #0x58
mov r4, r0
bl func_02007a44
ldr r1, _0215d01c ; =0x67452301
ldr r0, _0215d020 ; =0xefcdab89
str r1, [r4]
ldr r1, _0215d024 ; =0x98badcfe
str r0, [r4, #4]
ldr r0, _0215d028 ; =0x10325476
str r1, [r4, #8]
str r0, [r4, #0xc]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0215cfe4
_0215d01c: .word 0x67452301
_0215d020: .word 0xefcdab89
_0215d024: .word 0x98badcfe
_0215d028: .word 0x10325476
.global func_ov61_0215d02c
arm_func_start func_ov61_0215d02c
func_ov61_0215d02c: ; 0x0215d02c
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r8, r0
ldr r3, [r8, #0x10]
mov r6, r2
add r0, r3, r6, lsl #3
str r0, [r8, #0x10]
cmp r0, r6, lsl #3
ldrlo r0, [r8, #0x14]
mov r2, r3, lsr #0x3
addlo r0, r0, #1
strlo r0, [r8, #0x14]
ldr r0, [r8, #0x14]
and r4, r2, #0x3f
rsb r5, r4, #0x40
add r0, r0, r6, lsr #29
mov r7, r1
str r0, [r8, #0x14]
cmp r6, r5
blo _0215d0c8
add r1, r8, #0x18
mov r0, r7
mov r2, r5
add r1, r1, r4
bl func_02007ad8
mov r0, r8
add r1, r8, #0x18
mov r4, #0
bl func_ov61_0215cbc8
add r0, r5, #0x3f
cmp r0, r6
bhs _0215d0cc
_0215d0a8:
mov r0, r8
add r1, r7, r5
bl func_ov61_0215cbc8
add r5, r5, #0x40
add r0, r5, #0x3f
cmp r0, r6
blo _0215d0a8
b _0215d0cc
_0215d0c8:
mov r5, #0
_0215d0cc:
add r1, r8, #0x18
add r0, r7, r5
add r1, r1, r4
sub r2, r6, r5
bl func_02007ad8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
arm_func_end func_ov61_0215d02c
.global func_ov61_0215d0e4
arm_func_start func_ov61_0215d0e4
func_ov61_0215d0e4: ; 0x0215d0e4
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
mov r0, r4
add r1, r5, #0x10
mov r2, #8
bl func_ov61_0215cb98
ldr r0, [r5, #0x10]
ldr r1, _0215d148 ; =data_ov61_0217bd34
mov r0, r0, lsr #0x3
and r0, r0, #0x3f
cmp r0, #0x38
rsblt r2, r0, #0x38
rsbge r2, r0, #0x78
mov r0, r5
bl func_ov61_0215d02c
mov r0, r5
mov r1, r4
mov r2, #8
bl func_ov61_0215d02c
mov r0, r4
mov r1, r5
mov r2, #0x10
bl func_ov61_0215cb98
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0215d0e4
_0215d148: .word data_ov61_0217bd34
.global func_ov61_0215d14c
arm_func_start func_ov61_0215d14c
func_ov61_0215d14c: ; 0x0215d14c
add r2, r0, #0xd
add ip, r0, #2
and r3, r2, #0xf
eor r2, r0, #8
and ip, ip, #0xf
ldr r3, [r1, r3, lsl #2]
ldr r2, [r1, r2, lsl #2]
ldr ip, [r1, ip, lsl #2]
eor r2, r3, r2
ldr r3, [r1, r0, lsl #2]
eor r2, ip, r2
eor r3, r3, r2
mov r2, r3, lsr #0x1f
orr r2, r2, r3, lsl #1
str r2, [r1, r0, lsl #2]
mov r0, r2
bx lr
arm_func_end func_ov61_0215d14c
.global func_ov61_0215d190
arm_func_start func_ov61_0215d190
func_ov61_0215d190: ; 0x0215d190
stmdb sp!, {r3, lr}
movs r2, r2, lsr #0x2
mov lr, #0
ldmeqia sp!, {r3, pc}
_0215d1a0:
ldr ip, [r1], #4
add lr, lr, #1
mov r3, ip, lsr #0x18
strb r3, [r0]
mov r3, ip, lsr #0x10
strb r3, [r0, #1]
mov r3, ip, lsr #0x8
strb r3, [r0, #2]
strb ip, [r0, #3]
cmp lr, r2
add r0, r0, #4
blo _0215d1a0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0215d190
.global func_ov61_0215d1d4
arm_func_start func_ov61_0215d1d4
func_ov61_0215d1d4: ; 0x0215d1d4
stmdb sp!, {r3, r4, r5, lr}
mov r5, #0
cmp r2, #0
ldmlsia sp!, {r3, r4, r5, pc}
_0215d1e4:
add r4, r1, r5
ldrb r3, [r4, #1]
ldrb ip, [r1, r5]
ldrb lr, [r4, #2]
mov r3, r3, lsl #0x10
orr r3, r3, ip, lsl #24
ldrb ip, [r4, #3]
orr r3, r3, lr, lsl #8
add r5, r5, #4
orr r3, ip, r3
cmp r5, r2
str r3, [r0], #4
blo _0215d1e4
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0215d1d4
.global func_ov61_0215d21c
arm_func_start func_ov61_0215d21c
func_ov61_0215d21c: ; 0x0215d21c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x50
str r0, [sp]
ldr r3, [sp]
add r0, sp, #0x10
ldmia r3, {r4, r5, r7, r8, r9}
mov r2, #0x40
bl func_ov61_0215d1d4
mov r0, #0
ldr r3, _0215d894 ; =0x5a827999
mov r2, r0
add r1, sp, #0x10
_0215d24c:
eor r6, r7, r8
mov r10, r4, lsr #0x1b
and r6, r5, r6
orr r11, r10, r4, lsl #5
eor r6, r8, r6
mov r10, r5, lsr #0x2
orr r10, r10, r5, lsl #30
add r5, r1, r0, lsl #2
add r6, r11, r6
ldr ip, [r1, r0, lsl #2]
ldr r11, [r5, #4]
add r6, ip, r6
add r6, r6, r3
add r9, r9, r6
mov r6, r9, lsr #0x1b
orr r6, r6, r9, lsl #5
eor ip, r10, r7
and ip, r4, ip
eor ip, r7, ip
add r6, r6, ip
add r6, r11, r6
add r6, r6, r3
add r8, r8, r6
mov r6, r4, lsr #0x2
orr r4, r6, r4, lsl #30
ldr r11, [r5, #8]
mov r6, r8, lsr #0x1b
orr r6, r6, r8, lsl #5
eor ip, r4, r10
and ip, r9, ip
eor ip, r10, ip
add r6, r6, ip
add r6, r11, r6
add r6, r6, r3
add r6, r7, r6
mov r7, r9, lsr #0x2
orr r9, r7, r9, lsl #30
ldr r7, [r5, #0xc]
ldr r11, [r5, #0x10]
mov r5, r6, lsr #0x1b
orr r5, r5, r6, lsl #5
eor ip, r9, r4
and ip, r8, ip
eor ip, r4, ip
add r5, r5, ip
add r5, r7, r5
add r5, r5, r3
add r5, r10, r5
mov r7, r8, lsr #0x2
orr r8, r7, r8, lsl #30
mov r7, r5, lsr #0x1b
orr r7, r7, r5, lsl #5
eor r10, r8, r9
and r10, r6, r10
eor r10, r9, r10
add r7, r7, r10
add r7, r11, r7
add r7, r7, r3
add r4, r4, r7
mov r7, r6, lsr #0x2
orr r7, r7, r6, lsl #30
add r0, r0, #5
add r2, r2, #1
cmp r2, #3
blt _0215d24c
eor r0, r7, r8
mov r2, r4, lsr #0x1b
and r0, r5, r0
orr r3, r2, r4, lsl #5
eor r0, r8, r0
add r3, r3, r0
ldr r6, [sp, #0x4c]
ldr r0, _0215d894 ; =0x5a827999
add r3, r6, r3
add r3, r3, r0
mov r2, r5, lsr #0x2
orr r6, r2, r5, lsl #30
mov r0, #0
add r9, r9, r3
bl func_ov61_0215d14c
eor r1, r6, r7
mov r3, r9, lsr #0x1b
and r1, r4, r1
mov r2, r4, lsr #0x2
orr r3, r3, r9, lsl #5
eor r1, r7, r1
add r1, r3, r1
add r3, r1, r0
ldr r0, _0215d894 ; =0x5a827999
add r1, sp, #0x10
add r3, r3, r0
orr r5, r2, r4, lsl #30
mov r0, #1
add r8, r8, r3
bl func_ov61_0215d14c
eor r1, r5, r6
mov r2, r8, lsr #0x1b
and r1, r9, r1
orr r2, r2, r8, lsl #5
eor r1, r6, r1
add r1, r2, r1
add r2, r1, r0
ldr r0, _0215d894 ; =0x5a827999
mov r1, r9, lsr #0x2
add r0, r2, r0
orr r9, r1, r9, lsl #30
add r7, r7, r0
add r1, sp, #0x10
mov r0, #2
bl func_ov61_0215d14c
mov r1, r7, lsr #0x1b
orr r2, r1, r7, lsl #5
eor r1, r9, r5
and r1, r8, r1
eor r1, r5, r1
add r1, r2, r1
add r2, r1, r0
ldr r0, _0215d894 ; =0x5a827999
mov r1, r8, lsr #0x2
add r0, r2, r0
orr r8, r1, r8, lsl #30
add r6, r6, r0
mov r0, #3
add r1, sp, #0x10
bl func_ov61_0215d14c
mov r1, r6, lsr #0x1b
orr r2, r1, r6, lsl #5
eor r1, r8, r9
and r1, r7, r1
eor r1, r9, r1
add r1, r2, r1
add r2, r1, r0
ldr r0, _0215d894 ; =0x5a827999
mov r1, r7, lsr #0x2
add r0, r2, r0
add r5, r5, r0
mov r0, #0
ldr r4, _0215d898 ; =0x6ed9eba1
orr r7, r1, r7, lsl #30
mov r10, #4
str r0, [sp, #4]
add r11, sp, #0x10
_0215d484:
mov r0, r10
mov r1, r11
bl func_ov61_0215d14c
mov r2, r5, lsr #0x1b
eor r1, r6, r7
orr r2, r2, r5, lsl #5
eor r1, r8, r1
add r1, r2, r1
add r0, r1, r0
add r1, r0, r4
mov r0, r6, lsr #0x2
add r9, r9, r1
orr r6, r0, r6, lsl #30
add r0, r10, #1
mov r1, r11
bl func_ov61_0215d14c
mov r1, r9, lsr #0x1b
orr r2, r1, r9, lsl #5
eor r1, r5, r6
eor r1, r7, r1
add r1, r2, r1
add r0, r1, r0
add r0, r0, r4
add r8, r8, r0
mov r0, r5, lsr #0x2
orr r5, r0, r5, lsl #30
add r0, r10, #2
and r10, r0, #0xf
mov r0, r10
mov r1, r11
bl func_ov61_0215d14c
mov r1, r8, lsr #0x1b
orr r2, r1, r8, lsl #5
eor r1, r9, r5
eor r1, r6, r1
add r1, r2, r1
add r0, r1, r0
add r0, r0, r4
add r7, r7, r0
mov r0, r9, lsr #0x2
orr r9, r0, r9, lsl #30
add r0, r10, #1
mov r1, r11
bl func_ov61_0215d14c
mov r1, r7, lsr #0x1b
orr r2, r1, r7, lsl #5
eor r1, r8, r9
eor r1, r5, r1
add r1, r2, r1
add r0, r1, r0
add r0, r0, r4
add r6, r6, r0
mov r0, r8, lsr #0x2
orr r8, r0, r8, lsl #30
add r0, r10, #2
mov r1, r11
bl func_ov61_0215d14c
mov r1, r6, lsr #0x1b
orr r2, r1, r6, lsl #5
eor r1, r7, r8
eor r1, r9, r1
add r1, r2, r1
add r0, r1, r0
add r0, r0, r4
add r5, r5, r0
mov r1, r7, lsr #0x2
ldr r0, [sp, #4]
add r0, r0, #1
str r0, [sp, #4]
cmp r0, #4
orr r7, r1, r7, lsl #30
add r10, r10, #3
blt _0215d484
mov r0, #0
ldr r4, _0215d89c ; =0x8f1bbcdc
str r0, [sp, #8]
add r11, sp, #0x10
_0215d5b8:
mov r0, r10
mov r1, r11
bl func_ov61_0215d14c
orr r2, r7, r8
mov r1, r5, lsr #0x1b
orr r1, r1, r5, lsl #5
and r3, r6, r2
and r2, r7, r8
orr r2, r3, r2
add r1, r1, r2
add r1, r1, r0
mov r0, r6, lsr #0x2
add r1, r1, r4
add r9, r9, r1
orr r6, r0, r6, lsl #30
add r0, r10, #1
mov r1, r11
bl func_ov61_0215d14c
mov r1, r9, lsr #0x1b
orr r1, r1, r9, lsl #5
orr r2, r6, r7
and r3, r5, r2
and r2, r6, r7
orr r2, r3, r2
add r1, r1, r2
add r0, r1, r0
add r0, r0, r4
add r8, r8, r0
mov r0, r5, lsr #0x2
orr r5, r0, r5, lsl #30
add r0, r10, #2
mov r1, r11
bl func_ov61_0215d14c
mov r1, r8, lsr #0x1b
orr r1, r1, r8, lsl #5
orr r2, r5, r6
and r3, r9, r2
and r2, r5, r6
orr r2, r3, r2
add r1, r1, r2
add r0, r1, r0
add r0, r0, r4
add r7, r7, r0
mov r0, r9, lsr #0x2
orr r9, r0, r9, lsl #30
add r0, r10, #3
and r10, r0, #0xf
mov r0, r10
mov r1, r11
bl func_ov61_0215d14c
mov r1, r7, lsr #0x1b
orr r1, r1, r7, lsl #5
orr r2, r9, r5
and r3, r8, r2
and r2, r9, r5
orr r2, r3, r2
add r1, r1, r2
add r0, r1, r0
add r0, r0, r4
add r6, r6, r0
mov r0, r8, lsr #0x2
orr r8, r0, r8, lsl #30
add r0, r10, #1
mov r1, r11
bl func_ov61_0215d14c
mov r1, r6, lsr #0x1b
orr r1, r1, r6, lsl #5
orr r2, r8, r9
and r3, r7, r2
and r2, r8, r9
orr r2, r3, r2
add r1, r1, r2
add r0, r1, r0
add r0, r0, r4
add r5, r5, r0
mov r1, r7, lsr #0x2
ldr r0, [sp, #8]
add r0, r0, #1
str r0, [sp, #8]
cmp r0, #4
orr r7, r1, r7, lsl #30
add r10, r10, #2
blt _0215d5b8
mov r0, #0
ldr r4, _0215d8a0 ; =0xca62c1d6
str r0, [sp, #0xc]
add r11, sp, #0x10
_0215d714:
mov r0, r10
mov r1, r11
bl func_ov61_0215d14c
mov r2, r5, lsr #0x1b
eor r1, r6, r7
orr r2, r2, r5, lsl #5
eor r1, r8, r1
add r1, r2, r1
add r0, r1, r0
add r1, r0, r4
mov r0, r6, lsr #0x2
add r9, r9, r1
orr r6, r0, r6, lsl #30
add r0, r10, #1
mov r1, r11
bl func_ov61_0215d14c
mov r1, r9, lsr #0x1b
orr r2, r1, r9, lsl #5
eor r1, r5, r6
eor r1, r7, r1
add r1, r2, r1
add r0, r1, r0
add r0, r0, r4
add r8, r8, r0
mov r0, r5, lsr #0x2
orr r5, r0, r5, lsl #30
add r0, r10, #2
mov r1, r11
bl func_ov61_0215d14c
mov r1, r8, lsr #0x1b
orr r2, r1, r8, lsl #5
eor r1, r9, r5
eor r1, r6, r1
add r1, r2, r1
add r0, r1, r0
add r0, r0, r4
add r7, r7, r0
mov r0, r9, lsr #0x2
orr r9, r0, r9, lsl #30
add r0, r10, #3
mov r1, r11
bl func_ov61_0215d14c
mov r1, r7, lsr #0x1b
orr r2, r1, r7, lsl #5
eor r1, r8, r9
eor r1, r5, r1
add r1, r2, r1
add r0, r1, r0
add r0, r0, r4
add r6, r6, r0
mov r0, r8, lsr #0x2
orr r8, r0, r8, lsl #30
add r0, r10, #4
and r10, r0, #0xf
mov r0, r10
mov r1, r11
bl func_ov61_0215d14c
mov r1, r6, lsr #0x1b
orr r2, r1, r6, lsl #5
eor r1, r7, r8
eor r1, r9, r1
add r1, r2, r1
add r0, r1, r0
add r0, r0, r4
add r5, r5, r0
mov r1, r7, lsr #0x2
ldr r0, [sp, #0xc]
add r0, r0, #1
str r0, [sp, #0xc]
cmp r0, #4
orr r7, r1, r7, lsl #30
add r10, r10, #1
blt _0215d714
ldr r0, [sp]
ldr r0, [r0]
add r1, r0, r5
ldr r0, [sp]
str r1, [r0]
ldr r0, [r0, #4]
add r1, r0, r6
ldr r0, [sp]
str r1, [r0, #4]
ldr r0, [r0, #8]
add r1, r0, r7
ldr r0, [sp]
str r1, [r0, #8]
ldr r0, [r0, #0xc]
add r1, r0, r8
ldr r0, [sp]
str r1, [r0, #0xc]
ldr r0, [r0, #0x10]
add r1, r0, r9
ldr r0, [sp]
str r1, [r0, #0x10]
add sp, sp, #0x50
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0215d21c
_0215d894: .word 0x5a827999
_0215d898: .word 0x6ed9eba1
_0215d89c: .word 0x8f1bbcdc
_0215d8a0: .word 0xca62c1d6
.global func_ov61_0215d8a4
arm_func_start func_ov61_0215d8a4
func_ov61_0215d8a4: ; 0x0215d8a4
stmdb sp!, {r4, lr}
mov r1, #0
mov r2, #0x5c
mov r4, r0
bl func_02007a44
ldr r0, _0215d8e4 ; =0x67452301
ldr r1, _0215d8e8 ; =0xefcdab89
str r0, [r4]
ldr r0, _0215d8ec ; =0x98badcfe
str r1, [r4, #4]
ldr r1, _0215d8f0 ; =0x10325476
str r0, [r4, #8]
ldr r0, _0215d8f4 ; =0xc3d2e1f0
str r1, [r4, #0xc]
str r0, [r4, #0x10]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0215d8a4
_0215d8e4: .word 0x67452301
_0215d8e8: .word 0xefcdab89
_0215d8ec: .word 0x98badcfe
_0215d8f0: .word 0x10325476
_0215d8f4: .word 0xc3d2e1f0
.global func_ov61_0215d8f8
arm_func_start func_ov61_0215d8f8
func_ov61_0215d8f8: ; 0x0215d8f8
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r8, r0
ldr r3, [r8, #0x18]
mov r6, r2
add r0, r3, r6, lsl #3
str r0, [r8, #0x18]
cmp r0, r6, lsl #3
ldrlo r0, [r8, #0x14]
mov r2, r3, lsr #0x3
addlo r0, r0, #1
strlo r0, [r8, #0x14]
ldr r0, [r8, #0x14]
and r4, r2, #0x3f
rsb r5, r4, #0x40
add r0, r0, r6, lsr #29
mov r7, r1
str r0, [r8, #0x14]
cmp r6, r5
blo _0215d994
add r1, r8, #0x1c
mov r0, r7
mov r2, r5
add r1, r1, r4
bl func_02007ad8
mov r0, r8
add r1, r8, #0x1c
mov r4, #0
bl func_ov61_0215d21c
add r0, r5, #0x3f
cmp r0, r6
bhs _0215d998
_0215d974:
mov r0, r8
add r1, r7, r5
bl func_ov61_0215d21c
add r5, r5, #0x40
add r0, r5, #0x3f
cmp r0, r6
blo _0215d974
b _0215d998
_0215d994:
mov r5, #0
_0215d998:
add r1, r8, #0x1c
add r0, r7, r5
add r1, r1, r4
sub r2, r6, r5
bl func_02007ad8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
arm_func_end func_ov61_0215d8f8
.global func_ov61_0215d9b0
arm_func_start func_ov61_0215d9b0
func_ov61_0215d9b0: ; 0x0215d9b0
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
mov r0, r4
add r1, r5, #0x14
mov r2, #8
bl func_ov61_0215d190
ldr r0, [r5, #0x18]
ldr r1, _0215da14 ; =data_ov61_0217be74
mov r0, r0, lsr #0x3
and r0, r0, #0x3f
cmp r0, #0x38
rsblt r2, r0, #0x38
rsbge r2, r0, #0x78
mov r0, r5
bl func_ov61_0215d8f8
mov r0, r5
mov r1, r4
mov r2, #8
bl func_ov61_0215d8f8
mov r0, r4
mov r1, r5
mov r2, #0x14
bl func_ov61_0215d190
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0215d9b0
_0215da14: .word data_ov61_0217be74
.global func_ov61_0215da18
arm_func_start func_ov61_0215da18
func_ov61_0215da18: ; 0x0215da18
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
ldr r1, _0215da44 ; =data_ov61_0217be75
mov r5, r0
mov r2, #0x2c
bl func_ov61_0215d8f8
mov r0, r4
mov r1, r5
mov r2, #0x14
bl func_ov61_0215d190
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0215da18
_0215da44: .word data_ov61_0217be75
.global func_ov61_0215da48
arm_func_start func_ov61_0215da48
func_ov61_0215da48: ; 0x0215da48
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r3, #0
strb r3, [r0]
strb r3, [r0, #1]
add r4, r0, #2
_0215da5c:
strb r3, [r4, r3]
add r3, r3, #1
cmp r3, #0x100
blt _0215da5c
mov r6, #0
mov r5, r6
mov r7, r6
mov r0, r6
_0215da7c:
ldrb lr, [r4, r7]
ldrb ip, [r1, r6]
add r3, r6, #1
and r6, r3, #0xff
add r3, lr, ip
add r3, r5, r3
and r5, r3, #0xff
ldrb r3, [r4, r5]
cmp r6, r2
movge r6, r0
strb r3, [r4, r7]
add r7, r7, #1
strb lr, [r4, r5]
cmp r7, #0x100
blt _0215da7c
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_0215da48
.global func_ov61_0215dabc
arm_func_start func_ov61_0215dabc
func_ov61_0215dabc: ; 0x0215dabc
stmdb sp!, {r4, r5, r6, lr}
cmp r2, #0
add r4, r0, #2
ldrb ip, [r0]
ldrb lr, [r0, #1]
mov r3, #0
ble _0215db1c
_0215dad8:
add r5, ip, #1
and ip, r5, #0xff
ldrb r6, [r4, ip]
add r5, lr, r6
and lr, r5, #0xff
ldrb r5, [r4, lr]
strb r5, [r4, ip]
add r5, r6, r5
strb r6, [r4, lr]
and r5, r5, #0xff
ldrb r6, [r1, r3]
ldrb r5, [r4, r5]
eor r5, r6, r5
strb r5, [r1, r3]
add r3, r3, #1
cmp r3, r2
blt _0215dad8
_0215db1c:
strb ip, [r0]
strb lr, [r0, #1]
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0215dabc
.global func_ov61_0215db28
arm_func_start func_ov61_0215db28
func_ov61_0215db28: ; 0x0215db28
b _0215db30
_0215db2c:
sub r1, r1, #1
arm_func_end func_ov61_0215db28
_0215db30:
cmp r1, #0
beq _0215db48
add r2, r0, r1, lsl #1
ldrh r2, [r2, #-2]
cmp r2, #0
beq _0215db2c
_0215db48:
mov r0, r1
bx lr
.global func_ov61_0215db50
arm_func_start func_ov61_0215db50
func_ov61_0215db50: ; 0x0215db50
stmdb sp!, {r3, lr}
sub r2, r1, #1
mov r2, r2, lsl #0x1
ldrh r2, [r0, r2]
tst r2, #0x8000
mvnne r0, #0
ldmneia sp!, {r3, pc}
bl func_ov61_0215db28
cmp r0, #0
movne r0, #1
moveq r0, #0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0215db50
.global func_ov61_0215db80
arm_func_start func_ov61_0215db80
func_ov61_0215db80: ; 0x0215db80
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r7, r1
mov r5, r3
mov r8, r0
mov r6, r2
mov r0, r7
mov r1, r5
bl func_ov61_0215db28
mov r4, r0
mov r0, r6
mov r1, r5
bl func_ov61_0215db28
cmp r4, r0
movlt r4, r0
cmp r4, r5
addne r4, r4, #1
mov ip, #0
mov r3, ip
cmp r4, #0
ble _0215dbf8
_0215dbd0:
mov r2, r3, lsl #0x1
ldrh r1, [r7, r2]
ldrh r0, [r6, r2]
add r3, r3, #1
cmp r3, r4
add r0, r1, r0
add r0, ip, r0
strh r0, [r8, r2]
mov ip, r0, lsr #0x10
blt _0215dbd0
_0215dbf8:
cmp r8, r7
cmpne r8, r6
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
sub r1, r5, r3
add r0, r8, r3, lsl #1
mov r2, r1, lsl #0x1
mov r1, #0
bl func_02007a44
ldmia sp!, {r4, r5, r6, r7, r8, pc}
arm_func_end func_ov61_0215db80
.global func_ov61_0215dc1c
arm_func_start func_ov61_0215dc1c
func_ov61_0215dc1c: ; 0x0215dc1c
stmdb sp!, {r4, lr}
cmp r3, #0
mov r4, #0
ble _0215dc50
_0215dc2c:
mov lr, r4, lsl #0x1
ldrh ip, [r1, lr]
add r2, r2, ip
strh r2, [r0, lr]
movs r2, r2, lsr #0x10
beq _0215dc50
add r4, r4, #1
cmp r4, r3
blt _0215dc2c
_0215dc50:
cmp r0, r1
ldmeqia sp!, {r4, pc}
add r4, r4, #1
cmp r4, r3
ldmgeia sp!, {r4, pc}
_0215dc64:
mov ip, r4, lsl #0x1
ldrh r2, [r1, ip]
add r4, r4, #1
cmp r4, r3
strh r2, [r0, ip]
blt _0215dc64
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0215dc1c
.global func_ov61_0215dc80
arm_func_start func_ov61_0215dc80
func_ov61_0215dc80: ; 0x0215dc80
stmdb sp!, {r3, lr}
mov r3, r1
cmp r3, #0
mov ip, #0
ble _0215dcb0
_0215dc94:
mov r2, ip, lsl #0x1
ldrh r1, [r0, r2]
add ip, ip, #1
cmp ip, r3
mvn r1, r1
strh r1, [r0, r2]
blt _0215dc94
_0215dcb0:
mov r1, r0
mov r2, #1
bl func_ov61_0215dc1c
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0215dc80
.global func_ov61_0215dcc0
arm_func_start func_ov61_0215dcc0
func_ov61_0215dcc0: ; 0x0215dcc0
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r7, r1
mov r5, r3
mov r8, r0
mov r6, r2
mov r0, r7
mov r1, r5
bl func_ov61_0215db28
mov r4, r0
mov r0, r6
mov r1, r5
bl func_ov61_0215db28
cmp r4, r0
movlt r4, r0
mov ip, #0
cmp r4, r5
addne r4, r4, #1
mov r3, ip
b _0215dd2c
_0215dd0c:
mov r2, r3, lsl #0x1
ldrh r1, [r7, r2]
ldrh r0, [r6, r2]
add r3, r3, #1
sub r0, r1, r0
add r0, ip, r0
strh r0, [r8, r2]
mov ip, r0, asr #0x10
_0215dd2c:
cmp r3, r4
blt _0215dd0c
cmp r3, r5
bge _0215dd44
cmp ip, #0
bne _0215dd0c
_0215dd44:
cmp r8, r7
cmpne r8, r6
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
sub r1, r5, r3
add r0, r8, r3, lsl #1
mov r2, r1, lsl #0x1
mov r1, #0
bl func_02007a44
ldmia sp!, {r4, r5, r6, r7, r8, pc}
arm_func_end func_ov61_0215dcc0
.global func_ov61_0215dd68
arm_func_start func_ov61_0215dd68
func_ov61_0215dd68: ; 0x0215dd68
stmdb sp!, {r4, lr}
cmp r3, #0
mov r4, #0
ble _0215dda0
_0215dd78:
mov lr, r4, lsl #0x1
ldrh ip, [r1, lr]
sub ip, ip, r2
mov r2, ip, lsr #0x10
strh ip, [r0, lr]
ands r2, r2, #1
beq _0215dda0
add r4, r4, #1
cmp r4, r3
blt _0215dd78
_0215dda0:
cmp r0, r1
ldmeqia sp!, {r4, pc}
add r4, r4, #1
cmp r4, r3
ldmgeia sp!, {r4, pc}
_0215ddb4:
mov ip, r4, lsl #0x1
ldrh r2, [r1, ip]
add r4, r4, #1
cmp r4, r3
strh r2, [r0, ip]
blt _0215ddb4
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0215dd68
.global func_ov61_0215ddd0
arm_func_start func_ov61_0215ddd0
func_ov61_0215ddd0: ; 0x0215ddd0
subs ip, r2, #1
bmi _0215de00
_0215ddd8:
mov r2, ip, lsl #0x1
ldrh r3, [r1, r2]
ldrh r2, [r0, r2]
cmp r2, r3
movhi r0, #1
bxhi lr
mvnlo r0, #0
bxlo lr
subs ip, ip, #1
bpl _0215ddd8
_0215de00:
mov r0, #0
bx lr
arm_func_end func_ov61_0215ddd0
.global func_ov61_0215de08
arm_func_start func_ov61_0215de08
func_ov61_0215de08: ; 0x0215de08
stmdb sp!, {r3, lr}
b _0215de28
_0215de10:
mov lr, r2, lsl #0x1
ldrh ip, [r0, lr]
add r2, r2, #1
add r1, r1, ip
strh r1, [r0, lr]
mov r1, r1, lsr #0x10
_0215de28:
cmp r1, #0
ldmeqia sp!, {r3, pc}
cmp r2, r3
blt _0215de10
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0215de08
.global func_ov61_0215de3c
arm_func_start func_ov61_0215de3c
func_ov61_0215de3c: ; 0x0215de3c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #8
mov r8, r3
mov r10, r1
mov r9, r2
mov r2, r8, lsl #0x1
mov r1, #0
str r0, [sp]
bl func_02007a44
mov r0, r10
mov r1, r8
bl func_ov61_0215db28
mov r11, r0
mov r0, r9
mov r1, r8
bl func_ov61_0215db28
str r0, [sp, #4]
cmp r0, #0
mov r5, #0
addle sp, sp, #8
ldmleia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0215de90:
mov r6, #0
sub r7, r8, r5
mov r4, r5, lsl #0x1
b _0215dec4
_0215dea0:
mov r0, r6, lsl #0x1
ldrh r3, [r10, r0]
ldrh r1, [r9, r4]
ldr r0, [sp]
add r2, r5, r6
mul r1, r3, r1
mov r3, r8
bl func_ov61_0215de08
add r6, r6, #1
_0215dec4:
cmp r6, r11
cmplt r6, r7
blt _0215dea0
ldr r0, [sp, #4]
add r5, r5, #1
cmp r5, r0
blt _0215de90
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_0215de3c
.global func_ov61_0215dee8
arm_func_start func_ov61_0215dee8
func_ov61_0215dee8: ; 0x0215dee8
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r6, r1
mov r4, r3
mov r7, r0
mov r0, r6
mov r1, r4
mov r5, r2
bl func_ov61_0215db28
mov r3, #0
mov ip, r3
cmp r0, #0
ble _0215df38
_0215df18:
mov r2, ip, lsl #0x1
ldrh r1, [r6, r2]
add ip, ip, #1
cmp ip, r0
mla r1, r5, r1, r3
strh r1, [r7, r2]
mov r3, r1, lsr #0x10
blt _0215df18
_0215df38:
cmp ip, r4
movlt r0, ip, lsl #0x1
addlt ip, ip, #1
sub r1, r4, ip
strlth r3, [r7, r0]
mov r2, r1, lsl #0x1
add r0, r7, ip, lsl #1
mov r1, #0
bl func_02007a44
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_0215dee8
.global func_ov61_0215df60
arm_func_start func_ov61_0215df60
func_ov61_0215df60: ; 0x0215df60
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
mov r9, r1
mov r8, r2
mov r10, r0
mov r0, r9
mov r1, r8
bl func_ov61_0215db28
mov r11, r0
cmp r8, r11, lsl #1
mov r0, r11, lsl #0x1
ble _0215dfa0
sub r1, r8, r0
add r0, r10, r0, lsl #1
mov r2, r1, lsl #0x1
mov r1, #0
bl func_02007a44
_0215dfa0:
cmp r11, #0
mov r4, #0
ble _0215dff4
mov r5, r4
sub r2, r8, #1
_0215dfb4:
cmp r5, r8
bge _0215dff4
mov r0, r4, lsl #0x1
ldrh r3, [r9, r0]
mov r0, r5, lsl #0x1
cmp r5, r2
mul r1, r3, r3
strh r1, [r10, r0]
beq _0215dff4
add r4, r4, #1
mov r1, r1, lsr #0x10
add r0, r10, r0
strh r1, [r0, #2]
cmp r4, r11
add r5, r5, #2
blt _0215dfb4
_0215dff4:
mov r6, #0
cmp r11, #0
ldmleia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0215e000:
mov r0, r6, lsl #0x1
add r4, r6, #1
str r0, [sp]
b _0215e070
_0215e010:
mov r0, r4, lsl #0x1
ldrh r1, [r9, r0]
ldr r0, [sp]
ldrh r0, [r9, r0]
mul r7, r1, r0
ldr r0, _0215e090 ; =0x7fff8000
cmp r7, r0
mov r0, r10
bhi _0215e048
mov r2, r5
mov r3, r8
mov r1, r7, lsl #0x1
bl func_ov61_0215de08
b _0215e06c
_0215e048:
mov r1, r7
mov r2, r5
mov r3, r8
bl func_ov61_0215de08
mov r1, r7
mov r2, r5
mov r0, r10
mov r3, r8
bl func_ov61_0215de08
_0215e06c:
add r4, r4, #1
_0215e070:
cmp r4, r11
addlt r5, r6, r4
cmplt r5, r8
blt _0215e010
add r6, r6, #1
cmp r6, r11
blt _0215e000
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0215df60
_0215e090: .word 0x7fff8000
.global func_ov61_0215e094
arm_func_start func_ov61_0215e094
func_ov61_0215e094: ; 0x0215e094
ldrh r1, [r0]
mov r0, #0
bx lr
arm_func_end func_ov61_0215e094
.global func_ov61_0215e0a0
arm_func_start func_ov61_0215e0a0
func_ov61_0215e0a0: ; 0x0215e0a0
ldrh r1, [r0]
ldrh r0, [r0, #-2]
mov r0, r0, lsl #0x10
bx lr
arm_func_end func_ov61_0215e0a0
.global func_ov61_0215e0b0
arm_func_start func_ov61_0215e0b0
func_ov61_0215e0b0: ; 0x0215e0b0
ldrh r1, [r0]
ldrh r2, [r0, #-2]
ldrh r3, [r0, #-4]
orr r0, r3, r2, lsl #16
bx lr
arm_func_end func_ov61_0215e0b0
.global func_ov61_0215e0c4
arm_func_start func_ov61_0215e0c4
func_ov61_0215e0c4: ; 0x0215e0c4
ldrh r2, [r0]
ldrh r3, [r0, #-2]
orr r1, r3, r2, lsl #16
ldrh r2, [r0, #-4]
ldrh r3, [r0, #-6]
orr r0, r3, r2, lsl #16
bx lr
arm_func_end func_ov61_0215e0c4
.global func_ov61_0215e0e0
arm_func_start func_ov61_0215e0e0
func_ov61_0215e0e0: ; 0x0215e0e0
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x20
ldr r9, [sp, #0x48]
ldr r8, [sp, #0x4c]
str r1, [sp, #4]
add r6, r8, r9, lsl #1
str r0, [sp]
mov r10, r2
mov r0, r6
mov r2, r9, lsl #0x2
mov r1, #0
str r3, [sp, #8]
add r7, r6, r9, lsl #1
bl func_02007a44
ldr r0, [sp, #4]
mov r1, r9
bl func_ov61_0215db28
mov r11, r0
mov r0, r10
mov r1, r9
bl func_ov61_0215db28
mov r5, r0
cmp r11, #0
cmpgt r5, #0
ble _0215e278
sub r0, r9, r11
add r0, r5, r0
sub r4, r0, #1
cmp r4, r9
blt _0215e16c
ldr r0, [sp, #4]
mov r1, r7
mov r2, r9, lsl #0x1
bl func_02007ad8
b _0215e278
_0215e16c:
ldr r0, [sp, #4]
add r1, r6, r4, lsl #1
mov r2, r11, lsl #0x1
bl func_02007ad8
cmp r5, #2
ble _0215e1a0
add r0, r10, r5, lsl #1
sub r0, r0, #2
mov r11, r5, lsl #0x1
bl func_ov61_0215e0b0
str r0, [sp, #0x18]
str r1, [sp, #0x10]
b _0215e1d4
_0215e1a0:
add r0, r10, r5, lsl #1
cmp r5, #1
sub r0, r0, #2
ble _0215e1c4
mov r11, r5, lsl #0x1
bl func_ov61_0215e0a0
str r0, [sp, #0x18]
str r1, [sp, #0x10]
b _0215e1d4
_0215e1c4:
mov r11, r5, lsl #0x1
bl func_ov61_0215e094
str r0, [sp, #0x18]
str r1, [sp, #0x10]
_0215e1d4:
cmp r4, r9
bge _0215e278
mov r0, r9, lsl #0x1
sub r0, r0, #1
mov r0, r0, lsl #0x1
str r0, [sp, #0x14]
_0215e1ec:
ldr r2, [sp, #0x14]
mov r1, r6
add r0, r6, #2
bl func_020435b4
add r0, r7, r11
bl func_ov61_0215e0c4
ldr r2, [sp, #0x18]
ldr r3, [sp, #0x10]
bl func_02002bac
mov r5, r0
ldr r0, _0215e2bc ; =0x0000ffff
cmp r5, r0
movhi r5, r0
_0215e220:
mov r2, r5, lsl #0x10
mov r0, r8
mov r1, r10
mov r2, r2, lsr #0x10
mov r3, r9
bl func_ov61_0215dee8
mov r0, r7
mov r1, r8
mov r2, r9
bl func_ov61_0215ddd0
cmp r0, #0
sublt r5, r5, #1
blt _0215e220
mov r0, r7
mov r1, r7
mov r2, r8
mov r3, r9
bl func_ov61_0215dcc0
strh r5, [r6]
add r4, r4, #1
cmp r4, r9
blt _0215e1ec
_0215e278:
ldr r0, [sp]
cmp r0, #0
beq _0215e294
ldr r1, [sp]
mov r0, r6
mov r2, r9, lsl #0x1
bl func_02007ad8
_0215e294:
ldr r0, [sp, #8]
cmp r0, #0
addeq sp, sp, #0x20
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, [sp, #8]
mov r0, r7
mov r2, r9, lsl #0x1
bl func_02007ad8
add sp, sp, #0x20
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0215e0e0
_0215e2bc: .word 0x0000ffff
.global func_ov61_0215e2c0
arm_func_start func_ov61_0215e2c0
func_ov61_0215e2c0: ; 0x0215e2c0
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0xc
ldr r4, _0215e44c ; =data_ov61_0217f428
mov r8, r3
ldr r3, [r4]
mov r10, r0
mov r0, r8, lsl #0x3
ldr r7, [sp, #0x30]
str r1, [sp, #8]
mov r9, r2
blx r3
movs r4, r0
addeq sp, sp, #0xc
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
sub r1, r8, #1
add r0, r10, #2
mov r2, r1, lsl #0x1
mov r1, #0
add r5, r4, r8, lsl #1
bl func_02007a44
mov r2, #1
mov r0, r9
mov r1, r8
strh r2, [r10]
bl func_ov61_0215db28
sub r0, r8, r0
mov r6, r0, lsl #0x4
cmp r6, r8, lsl #4
bhs _0215e374
mov r2, #0x8000
_0215e338:
sub r0, r8, r6, asr #4
add r0, r9, r0, lsl #1
ldrh r0, [r0, #-2]
and r1, r6, #0xf
tst r0, r2, lsr r1
beq _0215e368
ldr r0, [sp, #8]
mov r1, r10
mov r2, r8, lsl #0x1
bl func_02007ad8
add r6, r6, #1
b _0215e374
_0215e368:
add r6, r6, #1
cmp r6, r8, lsl #4
blo _0215e338
_0215e374:
cmp r6, r8, lsl #4
bhs _0215e434
mov r11, r8, lsl #0x1
_0215e380:
mov r0, r4
mov r1, r10
mov r2, r8
bl func_ov61_0215df60
mov r0, r4
mov r1, r10
mov r2, r11
bl func_02007ad8
cmp r7, #0
beq _0215e3c4
str r8, [sp]
mov r0, #0
mov r1, r10
mov r2, r7
mov r3, r10
str r5, [sp, #4]
bl func_ov61_0215e0e0
_0215e3c4:
sub r0, r8, r6, asr #4
add r0, r9, r0, lsl #1
ldrh r1, [r0, #-2]
and r2, r6, #0xf
mov r0, #0x8000
tst r1, r0, lsr r2
beq _0215e428
ldr r2, [sp, #8]
mov r0, r4
mov r1, r10
mov r3, r8
bl func_ov61_0215de3c
mov r0, r4
mov r1, r10
mov r2, r11
bl func_02007ad8
cmp r7, #0
beq _0215e428
str r8, [sp]
mov r0, #0
mov r1, r10
mov r2, r7
mov r3, r10
str r5, [sp, #4]
bl func_ov61_0215e0e0
_0215e428:
add r6, r6, #1
cmp r6, r8, lsl #4
blo _0215e380
_0215e434:
ldr r1, _0215e450 ; =data_ov61_0217f454
mov r0, r4
ldr r1, [r1]
blx r1
add sp, sp, #0xc
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0215e2c0
_0215e44c: .word data_ov61_0217f428
_0215e450: .word data_ov61_0217f454
.global func_ov61_0215e454
arm_func_start func_ov61_0215e454
func_ov61_0215e454: ; 0x0215e454
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x14
ldr r9, [sp, #0x38]
mov r10, r3
add r11, r9, r10, lsl #1
add r4, r11, r10, lsl #1
add r5, r4, r10, lsl #1
add r6, r5, r10, lsl #1
add r7, r6, r10, lsl #1
str r0, [sp, #8]
mov r0, r1
add r1, r7, r10, lsl #1
str r1, [sp, #0x10]
mov r8, r10, lsl #0x1
str r2, [sp, #0xc]
mov r1, r9
mov r2, r8
bl func_02007ad8
ldr r0, [sp, #0xc]
mov r1, r4
mov r2, r8
bl func_02007ad8
mov r0, #1
strh r0, [r4, r8]
mov r0, r9
mov r1, r10
bl func_ov61_0215db50
cmp r0, #0
ble _0215e564
_0215e4c8:
ldr r3, [sp, #0x10]
str r10, [sp]
str r3, [sp, #4]
mov r0, r11
mov r1, r4
mov r2, r9
mov r3, r7
bl func_ov61_0215e0e0
mov r0, r9
mov r1, r4
mov r2, r8
bl func_02007ad8
mov r0, r7
mov r1, r9
mov r2, r8
bl func_02007ad8
mov r0, r7
mov r1, r11
mov r2, r5
mov r3, r10
bl func_ov61_0215de3c
mov r0, r7
mov r1, r6
mov r2, r7
mov r3, r10
bl func_ov61_0215dcc0
mov r0, r5
mov r1, r6
mov r2, r8
bl func_02007ad8
mov r0, r7
mov r1, r5
mov r2, r8
bl func_02007ad8
mov r0, r9
mov r1, r10
bl func_ov61_0215db50
cmp r0, #0
bgt _0215e4c8
_0215e564:
ldr r2, [sp, #0xc]
mov r0, r6
mov r1, r6
mov r3, r10
bl func_ov61_0215db80
ldr r2, [sp, #0xc]
ldr r3, [sp, #8]
ldr r4, [sp, #0x10]
str r10, [sp]
mov r1, r6
mov r0, #0
str r4, [sp, #4]
bl func_ov61_0215e0e0
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_0215e454
.global func_ov61_0215e5a0
arm_func_start func_ov61_0215e5a0
func_ov61_0215e5a0: ; 0x0215e5a0
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r6, r3
mov r4, r6, lsl #0x1
mov r8, r2
mov r2, r4
mov r7, r0
mov r9, r1
ldr r5, [sp, #0x20]
bl func_02007ad8
cmp r8, #1
bne _0215e5e0
mov r0, r7
mov r1, r9
mov r2, r6
bl func_ov61_0215df60
b _0215e5fc
_0215e5e0:
cmp r8, #0
beq _0215e5fc
mov r0, r7
mov r1, r9
mov r2, r8
mov r3, r6
bl func_ov61_0215de3c
_0215e5fc:
ldr r0, [sp, #0x2c]
ldr r2, [sp, #0x28]
mov r1, r7
mov r3, r5
bl func_ov61_0215de3c
sub r1, r6, r5
ldr r0, [sp, #0x2c]
mov r8, r1, lsl #0x1
mov r2, r8
add r0, r0, r5, lsl #1
mov r1, #0
bl func_02007a44
ldr r0, [sp, #0x30]
ldr r1, [sp, #0x2c]
ldr r2, [sp, #0x24]
mov r3, r6
bl func_ov61_0215de3c
mov r0, r7
mov r1, r7
ldr r2, [sp, #0x30]
mov r3, r6
bl func_ov61_0215db80
mov r2, r8
mov r0, r7
add r1, r7, r5, lsl #1
bl func_020435b4
add r0, r7, r6, lsl #1
sub r0, r0, r5, lsl #1
mov r2, r5, lsl #0x1
mov r1, #0
bl func_02007a44
mov r0, r7
ldr r1, [sp, #0x24]
mov r2, r6
bl func_ov61_0215ddd0
cmp r0, #0
beq _0215e69c
cmp r0, #1
beq _0215e6b0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_0215e69c:
mov r0, r7
mov r2, r4
mov r1, #0
bl func_02007a44
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_0215e6b0:
ldr r2, [sp, #0x24]
mov r0, r7
mov r1, r7
mov r3, r6
bl func_ov61_0215dcc0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
arm_func_end func_ov61_0215e5a0
.global func_ov61_0215e6c8
arm_func_start func_ov61_0215e6c8
func_ov61_0215e6c8: ; 0x0215e6c8
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x2c
mov r10, r3
mov r3, #0x16
mul r4, r10, r3
ldr r3, _0215e8cc ; =data_ov61_0217f428
mov r11, r0
ldr r3, [r3]
mov r0, r4
ldr r9, [sp, #0x50]
str r1, [sp, #0x14]
str r2, [sp, #0x18]
blx r3
str r0, [sp, #0x28]
cmp r0, #0
addeq sp, sp, #0x2c
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
mov r2, r4
mov r1, #0
bl func_02007a44
ldr r0, [sp, #0x28]
mov r1, r10
add r6, r0, r10, lsl #1
add r0, r6, r10, lsl #1
add r7, r0, r10, lsl #1
add r8, r7, r10, lsl #1
str r0, [sp, #0x24]
add r0, r8, r10, lsl #1
str r0, [sp, #0x20]
add r5, r0, r10, lsl #1
mov r0, r9
bl func_ov61_0215db28
mov r4, r0
ldr r0, [sp, #0x28]
mov r2, #1
mov r1, r4, lsl #0x1
strh r2, [r0, r1]
ldr r0, [sp, #0x24]
ldr r1, [sp, #0x28]
str r0, [sp]
mov r0, r6
mov r2, r9
mov r3, r10
bl func_ov61_0215e454
ldr r1, [sp, #0x28]
mov r0, r7
mov r2, r6
mov r3, r10
bl func_ov61_0215de3c
mov r0, r6
mov r1, r7
mov r2, #1
mov r3, r10
bl func_ov61_0215dd68
str r10, [sp]
mov r0, r6
mov r1, r6
mov r2, r9
mov r3, #0
str r5, [sp, #4]
bl func_ov61_0215e0e0
ldr r1, [sp, #0x14]
ldr r0, [sp, #0x24]
ldr r2, [sp, #0x28]
mov r3, r10
bl func_ov61_0215de3c
ldr r1, [sp, #0x24]
str r10, [sp]
mov r0, #0
mov r2, r9
mov r3, r1
str r5, [sp, #4]
bl func_ov61_0215e0e0
str r10, [sp]
ldr r1, [sp, #0x28]
mov r0, #0
mov r2, r9
mov r3, r11
str r5, [sp, #4]
bl func_ov61_0215e0e0
movs r0, r4, lsl #0x4
mov r5, #0
str r0, [sp, #0x1c]
beq _0215e890
_0215e818:
stmia sp, {r4, r9}
str r6, [sp, #8]
str r7, [sp, #0xc]
ldr r1, [sp, #0x20]
mov r0, r11
mov r2, #1
mov r3, r10
str r8, [sp, #0x10]
bl func_ov61_0215e5a0
ldr r1, [sp, #0x18]
sub r2, r4, r5, asr #4
add r1, r1, r2, lsl #1
ldrh r2, [r1, #-2]
and r0, r5, #0xf
mov r1, #0x8000
tst r2, r1, lsr r0
beq _0215e880
stmia sp, {r4, r9}
str r6, [sp, #8]
str r7, [sp, #0xc]
ldr r1, [sp, #0x20]
ldr r2, [sp, #0x24]
mov r0, r11
mov r3, r10
str r8, [sp, #0x10]
bl func_ov61_0215e5a0
_0215e880:
ldr r0, [sp, #0x1c]
add r5, r5, #1
cmp r5, r0
blo _0215e818
_0215e890:
stmia sp, {r4, r9}
str r6, [sp, #8]
str r7, [sp, #0xc]
ldr r1, [sp, #0x20]
mov r0, r11
mov r3, r10
mov r2, #0
str r8, [sp, #0x10]
bl func_ov61_0215e5a0
ldr r1, _0215e8d0 ; =data_ov61_0217f454
ldr r0, [sp, #0x28]
ldr r1, [r1]
blx r1
add sp, sp, #0x2c
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0215e6c8
_0215e8cc: .word data_ov61_0217f428
_0215e8d0: .word data_ov61_0217f454
.global func_ov61_0215e8d4
arm_func_start func_ov61_0215e8d4
func_ov61_0215e8d4: ; 0x0215e8d4
stmdb sp!, {r4, r5, r6, lr}
mov r6, r1
mov r5, r2
mov r2, r3, lsl #0x1
mov r1, #0
mov r4, r0
bl func_02007a44
sub r0, r5, #1
cmp r5, #1
add r6, r6, r0
ble _0215e920
_0215e900:
ldrb r1, [r6]
ldrb r0, [r6, #-1]
sub r5, r5, #2
cmp r5, #1
add r0, r1, r0, lsl #8
strh r0, [r4], #2
sub r6, r6, #2
bgt _0215e900
_0215e920:
cmp r5, #0
ldrgtb r0, [r6]
strgth r0, [r4]
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0215e8d4
.global func_ov61_0215e930
arm_func_start func_ov61_0215e930
func_ov61_0215e930: ; 0x0215e930
sub r3, r2, #1
cmp r2, #1
add r0, r0, r3
ble _0215e964
_0215e940:
ldrh r3, [r1]
sub ip, r0, #1
sub r2, r2, #2
strb r3, [r0], #-2
ldrh r3, [r1], #2
cmp r2, #1
mov r3, r3, asr #0x8
strb r3, [ip]
bgt _0215e940
_0215e964:
cmp r2, #0
ldrgth r1, [r1]
strgtb r1, [r0]
bx lr
arm_func_end func_ov61_0215e930
.global func_ov61_0215e974
arm_func_start func_ov61_0215e974
func_ov61_0215e974: ; 0x0215e974
ldr ip, _0215e97c ; =func_02050218
bx ip
.align 2, 0
arm_func_end func_ov61_0215e974
_0215e97c: .word func_02050218
.global func_ov61_0215e980
arm_func_start func_ov61_0215e980
func_ov61_0215e980: ; 0x0215e980
ldr ip, _0215e988 ; =func_02050240
bx ip
.align 2, 0
arm_func_end func_ov61_0215e980
_0215e988: .word func_02050240
.global func_ov61_0215e98c
arm_func_start func_ov61_0215e98c
func_ov61_0215e98c: ; 0x0215e98c
ldr ip, _0215e994 ; =func_020502d4
bx ip
.align 2, 0
arm_func_end func_ov61_0215e98c
_0215e994: .word func_020502d4
.global func_ov61_0215e998
arm_func_start func_ov61_0215e998
func_ov61_0215e998: ; 0x0215e998
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
bl func_0200ee4c
ldr r2, _0215eaac ; =data_ov61_02180fcc
mov r4, r0
ldr r1, [r2]
cmp r1, #0
beq _0215e9c8
bl func_0200ee60
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
_0215e9c8:
cmp r6, #0
bne _0215e9dc
bl func_0200ee60
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
_0215e9dc:
tst r6, #0x1f
beq _0215e9f0
bl func_0200ee60
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
_0215e9f0:
cmp r5, #0x2300
bhs _0215ea04
bl func_0200ee60
mov r0, #6
ldmia sp!, {r4, r5, r6, pc}
_0215ea04:
str r6, [r2]
add r0, r6, #0x2000
mov r1, #1
str r1, [r0, #0x260]
ldr r1, [r2]
mov r0, #0
add r1, r1, #0x2200
strh r0, [r1, #0x80]
ldr r1, [r2]
add r1, r1, #0x2200
strh r0, [r1, #0x68]
ldr r1, [r2]
add r1, r1, #0x2000
strb r0, [r1, #0x26a]
ldr r1, [r2]
add r1, r1, #0x2000
strb r0, [r1, #0x26b]
ldr r1, [r2]
add r1, r1, #0x2200
strh r0, [r1, #0x82]
ldr r1, [r2]
add r1, r1, #0x2200
strh r0, [r1, #0xf8]
bl func_ov61_0215f8fc
bl func_ov61_02160f7c
bl func_0200e880
cmp r0, #0
bne _0215ea78
blx func_0200e834
_0215ea78:
bl func_0200ea5c
cmp r0, #0
bne _0215ea88
blx func_0200ea34
_0215ea88:
ldr r0, _0215eaac ; =data_ov61_02180fcc
ldr r0, [r0]
add r0, r0, #0x2cc
add r0, r0, #0x2000
bl func_0200ea6c
mov r0, r4
bl func_0200ee60
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0215e998
_0215eaac: .word data_ov61_02180fcc
.global func_ov61_0215eab0
arm_func_start func_ov61_0215eab0
func_ov61_0215eab0: ; 0x0215eab0
stmdb sp!, {r3, lr}
bl func_0200ee4c
ldr r2, _0215eb04 ; =data_ov61_02180fcc
ldr r1, [r2]
cmp r1, #0
bne _0215ead4
bl func_0200ee60
mov r0, #1
ldmia sp!, {r3, pc}
_0215ead4:
add r1, r1, #0x2000
ldr r1, [r1, #0x260]
cmp r1, #1
beq _0215eaf0
bl func_0200ee60
mov r0, #1
ldmia sp!, {r3, pc}
_0215eaf0:
mov r1, #0
str r1, [r2]
bl func_0200ee60
mov r0, #0
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0215eab0
_0215eb04: .word data_ov61_02180fcc
.global func_ov61_0215eb08
arm_func_start func_ov61_0215eb08
func_ov61_0215eb08: ; 0x0215eb08
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
bl func_0200ee4c
ldr r1, _0215ed00 ; =data_ov61_02180fcc
mov r4, r0
ldr r1, [r1]
cmp r1, #0
bne _0215eb38
bl func_0200ee60
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
_0215eb38:
add r1, r1, #0x2000
ldr r1, [r1, #0x260]
cmp r1, #1
beq _0215eb5c
cmp r1, #2
beq _0215eb6c
cmp r1, #3
beq _0215eb78
b _0215eb84
_0215eb5c:
mov r0, r6
mov r1, r5
bl func_ov61_0215f644
b _0215eb90
_0215eb6c:
bl func_0200ee60
mov r0, #2
ldmia sp!, {r4, r5, r6, pc}
_0215eb78:
bl func_0200ee60
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
_0215eb84:
bl func_0200ee60
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
_0215eb90:
ldr r0, _0215ed00 ; =data_ov61_02180fcc
ldr r0, [r0]
add r1, r0, #0x2000
ldr r1, [r1, #0x26c]
mov r1, r1, lsl #0x10
mov r1, r1, lsr #0x10
bl func_ov01_020eed40
cmp r0, #6
addls pc, pc, r0, lsl #2
b _0215ebfc
_0215ebb8: ; jump table
b _0215ec14 ; case 0
b _0215ebfc ; case 1
b _0215ebfc ; case 2
b _0215ebd4 ; case 3
b _0215ebec ; case 4
b _0215ebfc ; case 5
b _0215ebfc ; case 6
_0215ebd4:
mov r0, #0xb
bl func_ov61_0215fa44
mov r0, r4
bl func_0200ee60
mov r0, #7
ldmia sp!, {r4, r5, r6, pc}
_0215ebec:
mov r0, r4
bl func_0200ee60
mov r0, #5
ldmia sp!, {r4, r5, r6, pc}
_0215ebfc:
mov r0, #0xb
bl func_ov61_0215fa44
mov r0, r4
bl func_0200ee60
mov r0, #7
ldmia sp!, {r4, r5, r6, pc}
_0215ec14:
bl func_ov01_020efa64
cmp r0, #0
bne _0215ec54
bl func_ov01_020eef50
cmp r0, #0
beq _0215ec44
mov r0, #0xb
bl func_ov61_0215fa44
mov r0, r4
bl func_0200ee60
mov r0, #7
ldmia sp!, {r4, r5, r6, pc}
_0215ec44:
mov r0, r4
bl func_0200ee60
mov r0, #5
ldmia sp!, {r4, r5, r6, pc}
_0215ec54:
ldr r0, _0215ed04 ; =func_ov61_0215fbe8
bl func_ov01_020ef6e8
cmp r0, #0
beq _0215ec7c
mov r0, #0xb
bl func_ov61_0215fa44
mov r0, r4
bl func_0200ee60
mov r0, #7
ldmia sp!, {r4, r5, r6, pc}
_0215ec7c:
ldr r0, _0215ed08 ; =func_ov61_0215fc60
bl func_ov01_020efe20
cmp r0, #2
beq _0215eca0
cmp r0, #3
beq _0215ecd8
cmp r0, #8
beq _0215ecc0
b _0215ecd8
_0215eca0:
mov r0, #2
bl func_ov61_0215fa44
ldr r0, _0215ed00 ; =data_ov61_02180fcc
mov r1, #1
ldr r0, [r0]
add r0, r0, #0x2200
strh r1, [r0, #0x80]
b _0215ecf0
_0215ecc0:
mov r0, #0xc
bl func_ov61_0215fa44
mov r0, r4
bl func_0200ee60
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
_0215ecd8:
mov r0, #0xb
bl func_ov61_0215fa44
mov r0, r4
bl func_0200ee60
mov r0, #7
ldmia sp!, {r4, r5, r6, pc}
_0215ecf0:
mov r0, r4
bl func_0200ee60
mov r0, #3
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0215eb08
_0215ed00: .word data_ov61_02180fcc
_0215ed04: .word func_ov61_0215fbe8
_0215ed08: .word func_ov61_0215fc60
.global func_ov61_0215ed0c
arm_func_start func_ov61_0215ed0c
func_ov61_0215ed0c: ; 0x0215ed0c
stmdb sp!, {r4, lr}
bl func_0200ee4c
ldr r1, _0215edf4 ; =data_ov61_02180fcc
mov r4, r0
ldr r1, [r1]
cmp r1, #0
bne _0215ed34
bl func_0200ee60
mov r0, #1
ldmia sp!, {r4, pc}
_0215ed34:
add r1, r1, #0x2000
ldr r1, [r1, #0x260]
cmp r1, #1
beq _0215ed60
cmp r1, #3
beq _0215ed78
cmp r1, #4
bne _0215ed6c
bl func_0200ee60
mov r0, #2
ldmia sp!, {r4, pc}
_0215ed60:
bl func_0200ee60
mov r0, #0
ldmia sp!, {r4, pc}
_0215ed6c:
bl func_0200ee60
mov r0, #1
ldmia sp!, {r4, pc}
_0215ed78:
ldr r0, _0215edf8 ; =func_ov61_0215fc60
bl func_ov01_020eff00
cmp r0, #2
beq _0215ed9c
cmp r0, #3
beq _0215edcc
cmp r0, #8
beq _0215edbc
b _0215edcc
_0215ed9c:
mov r0, #4
bl func_ov61_0215fa44
ldr r0, _0215edf4 ; =data_ov61_02180fcc
mov r1, #2
ldr r0, [r0]
add r0, r0, #0x2200
strh r1, [r0, #0x80]
b _0215ede4
_0215edbc:
mov r0, r4
bl func_0200ee60
mov r0, #4
ldmia sp!, {r4, pc}
_0215edcc:
mov r0, #0xb
bl func_ov61_0215fa44
mov r0, r4
bl func_0200ee60
mov r0, #7
ldmia sp!, {r4, pc}
_0215ede4:
mov r0, r4
bl func_0200ee60
mov r0, #3
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0215ed0c
_0215edf4: .word data_ov61_02180fcc
_0215edf8: .word func_ov61_0215fc60
.global func_ov61_0215edfc
arm_func_start func_ov61_0215edfc
func_ov61_0215edfc: ; 0x0215edfc
stmdb sp!, {r3, lr}
cmp r0, #0
cmpne r1, #0
bne _0215ee14
bl func_ov61_0215ef94
ldmia sp!, {r3, pc}
_0215ee14:
bl func_ov61_0215ee1c
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0215edfc
.global func_ov61_0215ee1c
arm_func_start func_ov61_0215ee1c
func_ov61_0215ee1c: ; 0x0215ee1c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r6, r1
mov r5, r2
bl func_0200ee4c
ldr r1, _0215ef8c ; =data_ov61_02180fcc
mov r4, r0
ldr r1, [r1]
cmp r1, #0
bne _0215ee50
bl func_0200ee60
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0215ee50:
add r1, r1, #0x2000
ldr r1, [r1, #0x260]
cmp r1, #3
beq _0215eec0
cmp r1, #5
beq _0215ee74
cmp r1, #6
beq _0215ee94
b _0215eeb4
_0215ee74:
mov r0, r7
mov r1, r6
mov r2, r5
bl func_ov61_0215f764
mov r0, r4
bl func_0200ee60
mov r0, #2
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0215ee94:
mov r0, r7
mov r1, r6
mov r2, r5
bl func_ov61_0215f764
mov r0, r4
bl func_0200ee60
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0215eeb4:
bl func_0200ee60
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0215eec0:
mov r0, r7
mov r1, r6
mov r2, r5
bl func_ov61_0215f764
ldr r0, _0215ef8c ; =data_ov61_02180fcc
ldr r0, [r0]
add r1, r0, #0x2200
add r0, r0, #0x2000
ldrh r1, [r1, #0x8c]
ldr r0, [r0, #0x288]
bl func_0200e288
ldr r2, _0215ef8c ; =data_ov61_02180fcc
ldr r0, _0215ef90 ; =func_ov61_0215ff1c
ldr r1, [r2]
add r1, r1, #0x2000
ldr r3, [r1, #0x284]
add r3, r3, #1
str r3, [r1, #0x284]
ldr r1, [r2]
add r1, r1, #0x288
add r1, r1, #0x2000
bl func_ov01_020f02d8
cmp r0, #2
beq _0215ef34
cmp r0, #3
beq _0215ef64
cmp r0, #8
beq _0215ef54
b _0215ef64
_0215ef34:
mov r0, #5
bl func_ov61_0215fa44
ldr r0, _0215ef8c ; =data_ov61_02180fcc
mov r1, #3
ldr r0, [r0]
add r0, r0, #0x2200
strh r1, [r0, #0x80]
b _0215ef7c
_0215ef54:
mov r0, r4
bl func_0200ee60
mov r0, #4
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0215ef64:
mov r0, #0xb
bl func_ov61_0215fa44
mov r0, r4
bl func_0200ee60
mov r0, #7
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0215ef7c:
mov r0, r4
bl func_0200ee60
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0215ee1c
_0215ef8c: .word data_ov61_02180fcc
_0215ef90: .word func_ov61_0215ff1c
.global func_ov61_0215ef94
arm_func_start func_ov61_0215ef94
func_ov61_0215ef94: ; 0x0215ef94
stmdb sp!, {r4, lr}
bl func_0200ee4c
ldr r1, _0215f034 ; =data_ov61_02180fcc
mov r4, r0
ldr r1, [r1]
cmp r1, #0
bne _0215efbc
bl func_0200ee60
mov r0, #1
ldmia sp!, {r4, pc}
_0215efbc:
add r1, r1, #0x2000
ldr r1, [r1, #0x260]
cmp r1, #3
beq _0215f00c
cmp r1, #6
beq _0215efe0
cmp r1, #7
beq _0215f000
b _0215f018
_0215efe0:
mov r0, #7
bl func_ov61_0215fa44
ldr r0, _0215f034 ; =data_ov61_02180fcc
mov r1, #4
ldr r0, [r0]
add r0, r0, #0x2200
strh r1, [r0, #0x80]
b _0215f024
_0215f000:
bl func_0200ee60
mov r0, #2
ldmia sp!, {r4, pc}
_0215f00c:
bl func_0200ee60
mov r0, #0
ldmia sp!, {r4, pc}
_0215f018:
bl func_0200ee60
mov r0, #1
ldmia sp!, {r4, pc}
_0215f024:
mov r0, r4
bl func_0200ee60
mov r0, #3
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0215ef94
_0215f034: .word data_ov61_02180fcc
.global func_ov61_0215f038
arm_func_start func_ov61_0215f038
func_ov61_0215f038: ; 0x0215f038
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r6, r1
mov r5, r2
bl func_0200ee4c
ldr r2, _0215f230 ; =data_ov61_02180fcc
mov r4, r0
ldr ip, [r2]
cmp ip, #0
bne _0215f06c
bl func_0200ee60
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0215f06c:
add r1, ip, #0x2000
ldr r3, [r1, #0x260]
cmp r3, #3
beq _0215f090
cmp r3, #8
beq _0215f180
cmp r3, #9
beq _0215f18c
b _0215f198
_0215f090:
cmp r7, #0
bne _0215f0a4
bl func_0200ee60
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0215f0a4:
ldrh r3, [r7, #0x3c]
cmp r3, #0
beq _0215f0bc
bl func_0200ee60
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0215f0bc:
cmp r6, #0
beq _0215f134
ldrb r3, [r6]
cmp r3, #4
ldrlob r0, [r6, #1]
cmplo r0, #4
blo _0215f0e8
mov r0, r4
bl func_0200ee60
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0215f0e8:
strb r3, [r1, #0x250]
ldr r0, [r2]
ldrb r1, [r6, #1]
add r0, r0, #0x2000
strb r1, [r0, #0x251]
ldr r1, [r2]
mov r2, #0x50
add r0, r1, #0x2000
ldrb r0, [r0, #0x250]
cmp r0, #0
bne _0215f124
add r0, r1, #0x2200
mov r1, #0
bl func_02007a44
b _0215f144
_0215f124:
add r0, r6, #2
add r1, r1, #0x2200
bl func_02007ad8
b _0215f144
_0215f134:
add r0, ip, #0x2200
mov r1, #0
mov r2, #0x52
bl func_02007a44
_0215f144:
ldr r1, _0215f230 ; =data_ov61_02180fcc
mov r0, r7
ldr r1, [r1]
mov r2, #0xc0
add r1, r1, #0x2140
bl func_02007ad8
ldr r1, _0215f230 ; =data_ov61_02180fcc
mov r0, r5
ldr r1, [r1]
add r1, r1, #0x2100
ldrh r2, [r1, #0x6e]
orr r2, r2, #3
strh r2, [r1, #0x70]
bl func_ov61_0215f598
b _0215f1a4
_0215f180:
bl func_0200ee60
mov r0, #2
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0215f18c:
bl func_0200ee60
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0215f198:
bl func_0200ee60
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0215f1a4:
ldr r1, _0215f234 ; =0x0000ffff
ldr r0, _0215f238 ; =func_ov61_0215fc60
mov r3, r1
mov r2, #0x50
str r1, [sp]
bl func_ov01_020f1a60
cmp r0, #2
beq _0215f1d8
cmp r0, #3
beq _0215f208
cmp r0, #8
beq _0215f1f8
b _0215f208
_0215f1d8:
mov r0, #8
bl func_ov61_0215fa44
ldr r0, _0215f230 ; =data_ov61_02180fcc
mov r1, #5
ldr r0, [r0]
add r0, r0, #0x2200
strh r1, [r0, #0x80]
b _0215f220
_0215f1f8:
mov r0, r4
bl func_0200ee60
mov r0, #4
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0215f208:
mov r0, #0xb
bl func_ov61_0215fa44
mov r0, r4
bl func_0200ee60
mov r0, #7
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0215f220:
mov r0, r4
bl func_0200ee60
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0215f038
_0215f230: .word data_ov61_02180fcc
_0215f234: .word 0x0000ffff
_0215f238: .word func_ov61_0215fc60
.global func_ov61_0215f23c
arm_func_start func_ov61_0215f23c
func_ov61_0215f23c: ; 0x0215f23c
stmdb sp!, {r4, lr}
bl func_0200ee4c
ldr r1, _0215f350 ; =data_ov61_02180fcc
mov r4, r0
ldr r1, [r1]
cmp r1, #0
bne _0215f264
bl func_0200ee60
mov r0, #1
ldmia sp!, {r4, pc}
_0215f264:
add r1, r1, #0x2000
ldr r2, [r1, #0x260]
cmp r2, #3
beq _0215f290
cmp r2, #9
beq _0215f2a8
cmp r2, #0xa
bne _0215f29c
bl func_0200ee60
mov r0, #2
ldmia sp!, {r4, pc}
_0215f290:
bl func_0200ee60
mov r0, #0
ldmia sp!, {r4, pc}
_0215f29c:
bl func_0200ee60
mov r0, #1
ldmia sp!, {r4, pc}
_0215f2a8:
ldrb r0, [r1, #0x26b]
cmp r0, #1
bne _0215f2d4
mov r0, #0xa
bl func_ov61_0215fa44
ldr r0, _0215f350 ; =data_ov61_02180fcc
mov r1, #6
ldr r0, [r0]
add r0, r0, #0x2200
strh r1, [r0, #0x80]
b _0215f340
_0215f2d4:
ldr r0, _0215f354 ; =func_ov61_021606b4
bl func_ov01_020f0c54
cmp r0, #2
beq _0215f2f8
cmp r0, #3
beq _0215f328
cmp r0, #8
beq _0215f318
b _0215f328
_0215f2f8:
mov r0, #0xa
bl func_ov61_0215fa44
ldr r0, _0215f350 ; =data_ov61_02180fcc
mov r1, #6
ldr r0, [r0]
add r0, r0, #0x2200
strh r1, [r0, #0x80]
b _0215f340
_0215f318:
mov r0, r4
bl func_0200ee60
mov r0, #4
ldmia sp!, {r4, pc}
_0215f328:
mov r0, #0xb
bl func_ov61_0215fa44
mov r0, r4
bl func_0200ee60
mov r0, #7
ldmia sp!, {r4, pc}
_0215f340:
mov r0, r4
bl func_0200ee60
mov r0, #3
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0215f23c
_0215f350: .word data_ov61_02180fcc
_0215f354: .word func_ov61_021606b4
.global func_ov61_0215f358
arm_func_start func_ov61_0215f358
func_ov61_0215f358: ; 0x0215f358
stmdb sp!, {r3, r4, r5, lr}
bl func_0200ee4c
ldr r1, _0215f55c ; =data_ov61_02180fcc
mov r4, r0
ldr r1, [r1]
cmp r1, #0
bne _0215f380
bl func_0200ee60
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
_0215f380:
add r1, r1, #0x2000
ldr r2, [r1, #0x260]
cmp r2, #0xd
addls pc, pc, r2, lsl #2
b _0215f410
_0215f394: ; jump table
b _0215f410 ; case 0
b _0215f3d8 ; case 1
b _0215f410 ; case 2
b _0215f420 ; case 3
b _0215f410 ; case 4
b _0215f410 ; case 5
b _0215f3e4 ; case 6
b _0215f410 ; case 7
b _0215f410 ; case 8
b _0215f420 ; case 9
b _0215f410 ; case 10
b _0215f410 ; case 11
b _0215f420 ; case 12
b _0215f3cc ; case 13
_0215f3cc:
bl func_0200ee60
mov r0, #2
ldmia sp!, {r3, r4, r5, pc}
_0215f3d8:
bl func_0200ee60
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_0215f3e4:
mov r0, #0xd
bl func_ov61_0215fa44
ldr r1, _0215f55c ; =data_ov61_02180fcc
mov r2, #9
ldr r1, [r1]
mov r0, r4
add r1, r1, #0x2200
strh r2, [r1, #0x80]
bl func_0200ee60
mov r0, #3
ldmia sp!, {r3, r4, r5, pc}
_0215f410:
mov r0, r4
bl func_0200ee60
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
_0215f420:
ldrb r0, [r1, #0x26b]
cmp r0, #1
bne _0215f44c
mov r0, #0xd
bl func_ov61_0215fa44
ldr r0, _0215f55c ; =data_ov61_02180fcc
mov r1, #9
ldr r0, [r0]
add r0, r0, #0x2200
strh r1, [r0, #0x80]
b _0215f54c
_0215f44c:
bl func_ov01_020ef61c
mov r5, r0
mov r1, #2
bl func_0200e288
ldrh r0, [r5]
cmp r0, #0
beq _0215f47c
cmp r0, #1
beq _0215f4b4
cmp r0, #2
beq _0215f4c0
b _0215f4cc
_0215f47c:
bl func_ov01_020eef50
cmp r0, #0
bne _0215f4e8
mov r0, #1
bl func_ov61_0215fa44
ldr r1, _0215f55c ; =data_ov61_02180fcc
mov r2, #0
ldr r1, [r1]
mov r0, r4
add r1, r1, #0x2200
strh r2, [r1, #0x80]
bl func_0200ee60
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_0215f4b4:
ldr r0, _0215f560 ; =func_ov61_0215fc60
bl func_ov01_020efe80
b _0215f4e8
_0215f4c0:
ldr r0, _0215f560 ; =func_ov61_0215fc60
bl func_ov01_020eff00
b _0215f4e8
_0215f4cc:
ldr r1, _0215f55c ; =data_ov61_02180fcc
ldr r0, _0215f564 ; =func_ov61_021607d0
ldr r1, [r1]
mov r2, #1
add r1, r1, #0x2000
strb r2, [r1, #0x26b]
bl func_ov01_020eff9c
_0215f4e8:
cmp r0, #2
beq _0215f504
cmp r0, #3
beq _0215f534
cmp r0, #8
beq _0215f524
b _0215f534
_0215f504:
mov r0, #0xd
bl func_ov61_0215fa44
ldr r0, _0215f55c ; =data_ov61_02180fcc
mov r1, #9
ldr r0, [r0]
add r0, r0, #0x2200
strh r1, [r0, #0x80]
b _0215f54c
_0215f524:
mov r0, r4
bl func_0200ee60
mov r0, #4
ldmia sp!, {r3, r4, r5, pc}
_0215f534:
mov r0, #0xb
bl func_ov61_0215fa44
mov r0, r4
bl func_0200ee60
mov r0, #7
ldmia sp!, {r3, r4, r5, pc}
_0215f54c:
mov r0, r4
bl func_0200ee60
mov r0, #3
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0215f358
_0215f55c: .word data_ov61_02180fcc
_0215f560: .word func_ov61_0215fc60
_0215f564: .word func_ov61_021607d0
.global func_ov61_0215f568
arm_func_start func_ov61_0215f568
func_ov61_0215f568: ; 0x0215f568
stmdb sp!, {r4, lr}
bl func_0200ee4c
ldr r1, _0215f594 ; =data_ov61_02180fcc
mov r4, #0
ldr r1, [r1]
cmp r1, #0
addne r1, r1, #0x2000
ldrne r4, [r1, #0x260]
bl func_0200ee60
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0215f568
_0215f594: .word data_ov61_02180fcc
.global func_ov61_0215f598
arm_func_start func_ov61_0215f598
func_ov61_0215f598: ; 0x0215f598
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
bl func_0200ee4c
ldr r1, _0215f62c ; =data_ov61_02180fcc
mov r2, #0
ldr r3, [r1]
add r1, r3, #0x2000
cmp r3, #0
ldr r4, [r1, #0x264]
bne _0215f5cc
bl func_0200ee60
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_0215f5cc:
tst r5, #0x8000
beq _0215f5ec
ldr r1, _0215f630 ; =0x00003ffe
orr r2, r2, #0xfe
tst r5, r1
orreq r5, r5, #0x82
orr r2, r2, #0x3f00
orreq r5, r5, #0xa000
_0215f5ec:
tst r5, #0x20000
orrne r2, r2, #0x10000
tst r5, #0x80000
orrne r2, r2, #0x40000
tst r5, #0x200000
orrne r2, r2, #0x100000
tst r5, #0x800000
orrne r2, r2, #0x400000
mvn r1, r2
and r1, r4, r1
orr r2, r5, r1
add r1, r3, #0x2000
str r2, [r1, #0x264]
bl func_0200ee60
mov r0, r4
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0215f598
_0215f62c: .word data_ov61_02180fcc
_0215f630: .word 0x00003ffe
.global func_ov61_0215f634
arm_func_start func_ov61_0215f634
func_ov61_0215f634: ; 0x0215f634
ldr r0, _0215f640 ; =data_ov61_02180fcc
ldr r0, [r0]
bx lr
.align 2, 0
arm_func_end func_ov61_0215f634
_0215f640: .word data_ov61_02180fcc
.global func_ov61_0215f644
arm_func_start func_ov61_0215f644
func_ov61_0215f644: ; 0x0215f644
stmdb sp!, {r3, r4, r5, lr}
movs r5, r0
mov r4, r1
bne _0215f694
ldr r1, _0215f760 ; =data_ov61_02180fcc
mov r3, #3
ldr r0, [r1]
mov r2, #0
add r0, r0, #0x2000
str r3, [r0, #0x26c]
ldr r0, [r1]
add r0, r0, #0x2000
str r2, [r0, #0x270]
ldr r0, [r1]
add r0, r0, #0x2000
str r2, [r0, #0x274]
ldr r0, [r1]
add r0, r0, #0x2000
str r2, [r0, #0x278]
b _0215f74c
_0215f694:
ldr r1, _0215f760 ; =data_ov61_02180fcc
ldr r2, [r5]
ldr r0, [r1]
and r2, r2, #3
add r0, r0, #0x2000
str r2, [r0, #0x26c]
ldr r3, [r5, #4]
ldr r0, [r5, #8]
and r2, r3, #3
rsb r2, r2, #4
and r2, r2, #3
add r2, r2, #0xc
cmp r2, r0
ldr r0, [r1]
bls _0215f6ec
mov r2, #0
add r0, r0, #0x2000
str r2, [r0, #0x270]
ldr r0, [r1]
add r0, r0, #0x2000
str r2, [r0, #0x274]
b _0215f738
_0215f6ec:
add r2, r3, #3
bic r2, r2, #3
add r0, r0, #0x2000
str r2, [r0, #0x270]
ldr r2, [r5, #4]
ldr r0, [r1]
and r2, r2, #3
rsb r2, r2, #4
ldr r3, [r5, #8]
and r2, r2, #3
sub r2, r3, r2
add r0, r0, #0x2000
str r2, [r0, #0x274]
ldr r0, [r1]
mov r1, #0
add r2, r0, #0x2000
ldr r0, [r2, #0x270]
ldr r2, [r2, #0x274]
bl func_02007a44
_0215f738:
ldr r0, _0215f760 ; =data_ov61_02180fcc
ldr r1, [r5, #0xc]
ldr r0, [r0]
add r0, r0, #0x2000
str r1, [r0, #0x278]
_0215f74c:
ldr r0, _0215f760 ; =data_ov61_02180fcc
ldr r0, [r0]
add r0, r0, #0x2000
str r4, [r0, #0x27c]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0215f644
_0215f760: .word data_ov61_02180fcc
.global func_ov61_0215f764
arm_func_start func_ov61_0215f764
func_ov61_0215f764: ; 0x0215f764
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r0, r2
mov r4, r1
bl func_ov61_0215f598
ldr r2, _0215f8f0 ; =data_ov61_02180fcc
mov r3, #0x400
ldr r1, [r2]
mov r0, #0
add ip, r1, #0x1500
add r1, r1, #0x2000
str ip, [r1, #0x288]
ldr r1, [r2]
add r1, r1, #0x2200
strh r3, [r1, #0x8c]
bl func_ov61_0215f91c
ldr r1, _0215f8f0 ; =data_ov61_02180fcc
mov r2, #1
mov r2, r2, lsl r0
ldr r0, [r1]
mov r2, r2, asr #0x1
add r0, r0, #0x2200
strh r2, [r0, #0x8e]
ldr r0, [r1]
add r0, r0, #0x2200
ldrh r0, [r0, #0x68]
cmp r0, #0
bne _0215f7d8
bl func_ov01_020efbc0
_0215f7d8:
ldr r2, _0215f8f0 ; =data_ov61_02180fcc
ldr r1, [r2]
add r1, r1, #0x2200
strh r0, [r1, #0x90]
ldr r1, [r2]
add r0, r1, #0x2000
ldr r0, [r0, #0x264]
and r0, r0, #0x300000
cmp r0, #0x300000
movne r2, #1
moveq r2, #0
add r0, r1, #0x2200
strh r2, [r0, #0x98]
cmp r5, #0
mov r2, #6
bne _0215f834
ldr r1, _0215f8f0 ; =data_ov61_02180fcc
ldr r0, _0215f8f4 ; =data_ov61_0217a30c
ldr r1, [r1]
add r1, r1, #0x92
add r1, r1, #0x2200
bl func_02007ad8
b _0215f84c
_0215f834:
ldr r1, _0215f8f0 ; =data_ov61_02180fcc
mov r0, r5
ldr r1, [r1]
add r1, r1, #0x92
add r1, r1, #0x2200
bl func_02007ad8
_0215f84c:
cmp r4, #0
ldrne r0, _0215f8f8 ; =data_ov61_0217a314
mov r2, #0x20
cmpne r4, r0
bne _0215f890
ldr r1, _0215f8f0 ; =data_ov61_02180fcc
ldr r0, _0215f8f8 ; =data_ov61_0217a314
ldr r1, [r1]
add r1, r1, #0x29c
add r1, r1, #0x2000
bl func_02007ad8
ldr r0, _0215f8f0 ; =data_ov61_02180fcc
mov r1, #0
ldr r0, [r0]
add r0, r0, #0x2200
strh r1, [r0, #0x9a]
b _0215f8d8
_0215f890:
ldr r1, _0215f8f0 ; =data_ov61_02180fcc
mov r0, r4
ldr r1, [r1]
add r1, r1, #0x29c
add r1, r1, #0x2000
bl func_02007ad8
mov r1, #0
_0215f8ac:
ldrb r0, [r4]
cmp r0, #0
beq _0215f8c8
add r1, r1, #1
cmp r1, #0x20
add r4, r4, #1
blt _0215f8ac
_0215f8c8:
ldr r0, _0215f8f0 ; =data_ov61_02180fcc
ldr r0, [r0]
add r0, r0, #0x2200
strh r1, [r0, #0x9a]
_0215f8d8:
ldr r0, _0215f8f0 ; =data_ov61_02180fcc
mov r1, #0
ldr r0, [r0]
add r0, r0, #0x2000
str r1, [r0, #0x284]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0215f764
_0215f8f0: .word data_ov61_02180fcc
_0215f8f4: .word data_ov61_0217a30c
_0215f8f8: .word data_ov61_0217a314
.global func_ov61_0215f8fc
arm_func_start func_ov61_0215f8fc
func_ov61_0215f8fc: ; 0x0215f8fc
ldr r0, _0215f914 ; =data_ov61_02180fcc
ldr r1, _0215f918 ; =0x00aaa082
ldr r0, [r0]
add r0, r0, #0x2000
str r1, [r0, #0x264]
bx lr
.align 2, 0
arm_func_end func_ov61_0215f8fc
_0215f914: .word data_ov61_02180fcc
_0215f918: .word 0x00aaa082
.global func_ov61_0215f91c
arm_func_start func_ov61_0215f91c
func_ov61_0215f91c: ; 0x0215f91c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
ldr r2, _0215f9a4 ; =data_ov61_02180fcc
ldr lr, _0215f9a8 ; =0x4ec4ec4f
ldr r2, [r2]
mov r1, r0
add r2, r2, #0x2000
ldr r7, [r2, #0x264]
mov r6, #0
mov r5, #1
mov ip, #0xd
_0215f944:
mov r2, r1, lsr #0x1f
smull r3, r4, lr, r1
add r4, r2, r4, asr #2
smull r2, r3, ip, r4
sub r4, r1, r2
add r2, r4, #1
tst r7, r5, lsl r2
bne _0215f974
add r6, r6, #1
cmp r6, #0xd
add r1, r1, #1
blt _0215f944
_0215f974:
add r3, r0, r6
ldr r2, _0215f9a8 ; =0x4ec4ec4f
mov r0, r3, lsr #0x1f
smull r1, ip, r2, r3
add ip, r0, ip, asr #2
mov r2, #0xd
smull r0, r1, r2, ip
sub ip, r3, r0
add r0, ip, #1
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0215f91c
_0215f9a4: .word data_ov61_02180fcc
_0215f9a8: .word 0x4ec4ec4f
.global func_ov61_0215f9ac
arm_func_start func_ov61_0215f9ac
func_ov61_0215f9ac: ; 0x0215f9ac
stmdb sp!, {r3, r4, r5, lr}
ldr ip, _0215f9ec ; =data_ov61_02180fcc
mov r5, r0
ldr r0, [ip]
mov r4, r1
add r1, r0, #0x2200
ldrsh r0, [r1, #0x80]
mov ip, #0
mov lr, r2
strh ip, [r1, #0x80]
str r3, [sp]
mov r1, r5
mov r2, r4
mov r3, lr
bl func_ov61_0215f9f0
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0215f9ac
_0215f9ec: .word data_ov61_02180fcc
.global func_ov61_0215f9f0
arm_func_start func_ov61_0215f9f0
func_ov61_0215f9f0: ; 0x0215f9f0
stmdb sp!, {r3, lr}
sub sp, sp, #0x10
ldr ip, _0215fa40 ; =data_ov61_02180fcc
ldr ip, [ip]
add ip, ip, #0x2000
ldr lr, [ip, #0x27c]
cmp lr, #0
addeq sp, sp, #0x10
ldmeqia sp!, {r3, pc}
ldr lr, [sp, #0x18]
strh r0, [sp]
str r2, [sp, #4]
str r3, [sp, #8]
str lr, [sp, #0xc]
strh r1, [sp, #2]
ldr r1, [ip, #0x27c]
add r0, sp, #0
blx r1
add sp, sp, #0x10
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0215f9f0
_0215fa40: .word data_ov61_02180fcc
.global func_ov61_0215fa44
arm_func_start func_ov61_0215fa44
func_ov61_0215fa44: ; 0x0215fa44
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
bl func_0200ee4c
ldr r1, _0215fad0 ; =data_ov61_02180fcc
mov r4, r0
ldr r1, [r1]
add r0, r1, #0x2000
ldr r0, [r0, #0x260]
cmp r0, #9
bne _0215fa80
cmp r5, #9
beq _0215fa80
add r0, r1, #0x2cc
add r0, r0, #0x2000
bl func_0200ec14
_0215fa80:
ldr r0, _0215fad0 ; =data_ov61_02180fcc
ldr r0, [r0]
add r0, r0, #0x2000
ldr r1, [r0, #0x260]
cmp r1, #0xb
strne r5, [r0, #0x260]
cmp r5, #9
bne _0215fac4
mov r2, #0
ldr r0, _0215fad0 ; =data_ov61_02180fcc
str r2, [sp]
ldr r0, [r0]
ldr r1, _0215fad4 ; =0x022f5341
add r0, r0, #0x2cc
ldr r3, _0215fad8 ; =func_ov61_0215fb50
add r0, r0, #0x2000
bl func_0200eba8
_0215fac4:
mov r0, r4
bl func_0200ee60
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0215fa44
_0215fad0: .word data_ov61_02180fcc
_0215fad4: .word 0x022f5341
_0215fad8: .word func_ov61_0215fb50
.global func_ov61_0215fadc
arm_func_start func_ov61_0215fadc
func_ov61_0215fadc: ; 0x0215fadc
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
bl func_0200ee4c
ldr r1, _0215fb44 ; =data_ov61_02180fcc
mov r4, r0
ldr r0, [r1]
add r0, r0, #0x2cc
add r0, r0, #0x2000
bl func_0200ec14
ldr r0, _0215fb44 ; =data_ov61_02180fcc
ldr r1, [r0]
add r0, r1, #0x2000
ldr r0, [r0, #0x260]
cmp r0, #9
bne _0215fb34
add r0, r1, #0x2cc
mov r2, #0
ldr r1, _0215fb48 ; =0x022f5341
ldr r3, _0215fb4c ; =func_ov61_0215fb50
add r0, r0, #0x2000
str r2, [sp]
bl func_0200eba8
_0215fb34:
mov r0, r4
bl func_0200ee60
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
.align 2, 0
arm_func_end func_ov61_0215fadc
_0215fb44: .word data_ov61_02180fcc
_0215fb48: .word 0x022f5341
_0215fb4c: .word func_ov61_0215fb50
.global func_ov61_0215fb50
arm_func_start func_ov61_0215fb50
func_ov61_0215fb50: ; 0x0215fb50
stmdb sp!, {r3, lr}
bl func_ov61_02160ff0
bl func_ov61_0215fadc
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0215fb50
.global func_ov61_0215fb60
arm_func_start func_ov61_0215fb60
func_ov61_0215fb60: ; 0x0215fb60
mov r1, r0
mov r0, #0
mov r3, #1
_0215fb6c:
clz r2, r1
rsbs r2, r2, #0x1f
bxlo lr
bic r1, r1, r3, lsl r2
add r0, r0, #1
b _0215fb6c
arm_func_end func_ov61_0215fb60
.global func_ov61_0215fb84
arm_func_start func_ov61_0215fb84
func_ov61_0215fb84: ; 0x0215fb84
clz r0, r0
bx lr
arm_func_end func_ov61_0215fb84
.global func_ov61_0215fb8c
arm_func_start func_ov61_0215fb8c
func_ov61_0215fb8c: ; 0x0215fb8c
stmdb sp!, {r3, lr}
ldr r0, _0215fbe0 ; =data_ov61_02180fcc
ldr r0, [r0]
add r1, r0, #0x2000
ldrb r0, [r1, #0x26b]
cmp r0, #0
ldmneia sp!, {r3, pc}
mov r2, #1
ldr r0, _0215fbe4 ; =func_ov61_021607d0
strb r2, [r1, #0x26b]
bl func_ov01_020eff9c
cmp r0, #2
ldmeqia sp!, {r3, pc}
mov r0, #0xb
bl func_ov61_0215fa44
mov r1, #0
mov r2, r1
mov r0, #7
mov r3, #0x610
bl func_ov61_0215f9ac
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0215fb8c
_0215fbe0: .word data_ov61_02180fcc
_0215fbe4: .word func_ov61_021607d0
.global func_ov61_0215fbe8
arm_func_start func_ov61_0215fbe8
func_ov61_0215fbe8: ; 0x0215fbe8
stmdb sp!, {r3, lr}
ldrh r1, [r0, #2]
cmp r1, #8
ldreqh r1, [r0, #4]
cmpeq r1, #0x16
ldreqh r0, [r0, #6]
cmpeq r0, #0x25
ldmneia sp!, {r3, pc}
ldr r0, _0215fc5c ; =data_ov61_02180fcc
ldr r0, [r0]
add r0, r0, #0x2000
ldr r0, [r0, #0x260]
sub r0, r0, #8
cmp r0, #4
addls pc, pc, r0, lsl #2
ldmia sp!, {r3, pc}
_0215fc28: ; jump table
b _0215fc3c ; case 0
b _0215fc48 ; case 1
b _0215fc50 ; case 2
ldmia sp!, {r3, pc} ; case 3
b _0215fc48 ; case 4
_0215fc3c:
mov r0, #0xc
bl func_ov61_0215fa44
ldmia sp!, {r3, pc}
_0215fc48:
bl func_ov61_0215fb8c
ldmia sp!, {r3, pc}
_0215fc50:
mov r0, #0xc
bl func_ov61_0215fa44
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0215fbe8
_0215fc5c: .word data_ov61_02180fcc
.global func_ov61_0215fc60
arm_func_start func_ov61_0215fc60
func_ov61_0215fc60: ; 0x0215fc60
stmdb sp!, {r3, lr}
ldrh r1, [r0, #2]
mov r2, #0x14
cmp r1, #4
addls pc, pc, r1, lsl #2
b _0215fec0
_0215fc78: ; jump table
b _0215fc8c ; case 0
b _0215fe88 ; case 1
b _0215fec0 ; case 2
b _0215fec0 ; case 3
b _0215fec0 ; case 4
_0215fc8c:
ldrh r0, [r0]
cmp r0, #0x19
bgt _0215fcc4
bge _0215fd88
cmp r0, #6
addls pc, pc, r0, lsl #2
b _0215fe00
_0215fca8: ; jump table
b _0215fe00 ; case 0
b _0215fe00 ; case 1
b _0215fe00 ; case 2
b _0215fce0 ; case 3
b _0215fcf0 ; case 4
b _0215fd44 ; case 5
b _0215fd64 ; case 6
_0215fcc4:
cmp r0, #0x1d
bgt _0215fcd4
beq _0215fd74
b _0215fe00
_0215fcd4:
cmp r0, #0x27
beq _0215fdb0
b _0215fe00
_0215fce0:
ldr r0, _0215fef8 ; =func_ov61_0215fc60
bl func_ov01_020efec0
mov r2, r0
b _0215fe00
_0215fcf0:
bl func_ov01_020eef50
cmp r0, #0
beq _0215fd04
cmp r0, #4
b _0215fd24
_0215fd04:
mov r0, #1
bl func_ov61_0215fa44
mov r0, #0
ldr r3, _0215fefc ; =0x00000663
mov r1, r0
mov r2, r0
bl func_ov61_0215f9ac
ldmia sp!, {r3, pc}
_0215fd24:
mov r0, #0xb
bl func_ov61_0215fa44
mov r1, #0
ldr r3, _0215ff00 ; =0x0000066c
mov r2, r1
mov r0, #7
bl func_ov61_0215f9ac
ldmia sp!, {r3, pc}
_0215fd44:
mov r0, #3
bl func_ov61_0215fa44
mov r0, #0
ldr r3, _0215ff04 ; =0x00000673
mov r1, r0
mov r2, r0
bl func_ov61_0215f9ac
ldmia sp!, {r3, pc}
_0215fd64:
ldr r0, _0215fef8 ; =func_ov61_0215fc60
bl func_ov01_020efe80
mov r2, r0
b _0215fe00
_0215fd74:
ldr r0, _0215fef8 ; =func_ov61_0215fc60
mov r1, #0
bl func_ov01_020f1a10
mov r2, r0
b _0215fe00
_0215fd88:
ldr r1, _0215ff08 ; =data_ov61_02180fcc
ldr r0, _0215fef8 ; =func_ov61_0215fc60
ldr r3, [r1]
add r2, r3, #0x2000
ldrb r1, [r2, #0x250]
ldrb r2, [r2, #0x251]
add r3, r3, #0x2200
bl func_ov01_020f18dc
mov r2, r0
b _0215fe00
_0215fdb0:
ldr r0, _0215ff08 ; =data_ov61_02180fcc
ldr r2, [r0]
add r0, r2, #0x2000
ldr r1, [r0, #0x264]
and r0, r1, #0xc0000
cmp r0, #0xc0000
moveq r0, #1
movne r0, #0
mov r0, r0, lsl #0x10
mov ip, r0, lsr #0x10
and r1, r1, #0x30000
cmp r1, #0x30000
movne r3, #1
add r1, r2, #0x2140
ldr r0, _0215ff0c ; =func_ov61_02160278
moveq r3, #0
mov r2, #0
str ip, [sp]
bl func_ov01_020f0468
mov r2, r0
_0215fe00:
cmp r2, #2
ldmeqia sp!, {r3, pc}
cmp r2, #3
beq _0215fe50
cmp r2, #8
bne _0215fe50
mov r0, #0xc
bl func_ov61_0215fa44
ldr r0, _0215ff08 ; =data_ov61_02180fcc
mov r2, #0
ldr r1, [r0]
add r0, r1, #0x2200
ldrsh r0, [r0, #0x80]
cmp r0, #5
addeq r1, r1, #0x2140
mov r0, #1
movne r1, #0
rsb r3, r0, #0x6b0
bl func_ov61_0215f9ac
ldmia sp!, {r3, pc}
_0215fe50:
mov r0, #0xb
bl func_ov61_0215fa44
ldr r0, _0215ff08 ; =data_ov61_02180fcc
ldr r3, _0215ff10 ; =0x000006b8
ldr r1, [r0]
mov r2, #0
add r0, r1, #0x2200
ldrsh r0, [r0, #0x80]
cmp r0, #5
addeq r1, r1, #0x2140
movne r1, #0
mov r0, #7
bl func_ov61_0215f9ac
ldmia sp!, {r3, pc}
_0215fe88:
mov r0, #0xc
bl func_ov61_0215fa44
ldr r0, _0215ff08 ; =data_ov61_02180fcc
ldr r3, _0215ff14 ; =0x000006de
ldr r1, [r0]
mov r2, #0
add r0, r1, #0x2200
ldrsh r0, [r0, #0x80]
cmp r0, #5
addeq r1, r1, #0x2140
movne r1, #0
mov r0, #1
bl func_ov61_0215f9ac
ldmia sp!, {r3, pc}
_0215fec0:
mov r0, #0xb
bl func_ov61_0215fa44
ldr r0, _0215ff08 ; =data_ov61_02180fcc
ldr r3, _0215ff18 ; =0x000006e8
ldr r1, [r0]
mov r2, #0
add r0, r1, #0x2200
ldrsh r0, [r0, #0x80]
cmp r0, #5
addeq r1, r1, #0x2140
movne r1, #0
mov r0, #7
bl func_ov61_0215f9ac
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0215fc60
_0215fef8: .word func_ov61_0215fc60
_0215fefc: .word 0x00000663
_0215ff00: .word 0x0000066c
_0215ff04: .word 0x00000673
_0215ff08: .word data_ov61_02180fcc
_0215ff0c: .word func_ov61_02160278
_0215ff10: .word 0x000006b8
_0215ff14: .word 0x000006de
_0215ff18: .word 0x000006e8
.global func_ov61_0215ff1c
arm_func_start func_ov61_0215ff1c
func_ov61_0215ff1c: ; 0x0215ff1c
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
sub sp, sp, #4
mov r5, r0
ldrh r0, [r5, #2]
mov r4, #0x14
cmp r0, #4
addls pc, pc, r0, lsl #2
b _021601b4
_0215ff3c: ; jump table
b _0215ff50 ; case 0
b _021601a8 ; case 1
b _021601b4 ; case 2
b _021601b4 ; case 3
b _021601b4 ; case 4
_0215ff50:
ldr r0, _021601d8 ; =data_ov61_02180fcc
ldr r0, [r0]
add r0, r0, #0x2000
ldr r0, [r0, #0x260]
cmp r0, #5
bne _0215ff84
mov r0, #6
bl func_ov61_0215fa44
mov r0, #0
ldr r3, _021601dc ; =0x00000704
mov r1, r0
mov r2, r0
bl func_ov61_0215f9ac
_0215ff84:
ldr r1, _021601d8 ; =data_ov61_02180fcc
ldr r2, [r1]
add r0, r2, #0x2000
ldr r0, [r0, #0x260]
cmp r0, #6
beq _0215ffb0
cmp r0, #7
beq _02160128
cmp r0, #0xd
beq _02160138
b _02160144
_0215ffb0:
add r0, r2, #0x2200
mov r2, #7
strh r2, [r0, #0x80]
ldrh r0, [r5, #8]
cmp r0, #5
bne _0216003c
ldr r0, [r1]
add r1, r0, #0x2200
add r0, r0, #0x2000
ldrh r1, [r1, #0x8c]
ldr r0, [r0, #0x288]
bl func_0200e288
ldrh r0, [r5, #0xe]
mov r4, #0
cmp r0, #0
ble _0216003c
ldr r8, _021601e0 ; =0x0000071a
mov r7, #7
mov r6, r4
_0215fffc:
add r0, r5, r4, lsl #1
add r2, r5, r4, lsl #2
ldrh r1, [r0, #0x50]
ldr r0, [r2, #0x10]
bl func_ov61_02160c7c
str r8, [sp]
add r0, r5, r4, lsl #2
ldr r2, [r0, #0x10]
mov r0, r7
mov r1, r6
mov r3, r5
bl func_ov61_0215f9f0
ldrh r0, [r5, #0xe]
add r4, r4, #1
cmp r4, r0
blt _0215fffc
_0216003c:
ldr r0, _021601d8 ; =data_ov61_02180fcc
ldr r0, [r0]
add r0, r0, #0x2000
ldr r1, [r0, #0x264]
and r0, r1, #0xc00000
cmp r0, #0xc00000
bne _021600a8
ldr r0, _021601e4 ; =0x00003ffe
and r0, r1, r0
bl func_ov61_0215fb60
movs r1, r0
beq _021600a8
ldr r0, _021601d8 ; =data_ov61_02180fcc
ldr r0, [r0]
add r0, r0, #0x2000
ldr r6, [r0, #0x284]
mov r0, r6
bl FastDivide
cmp r1, #0
bne _021600a8
ldr r4, _021601e8 ; =0x00000728
mov r1, #0
mov r2, r6
mov r3, r1
mov r0, #8
str r4, [sp]
bl func_ov61_0215f9f0
_021600a8:
ldrh r0, [r5, #0xa]
bl func_ov61_0215fb84
rsb r0, r0, #0x20
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
bl func_ov61_0215f91c
ldr r1, _021601d8 ; =data_ov61_02180fcc
mov r2, #1
mov r2, r2, lsl r0
ldr r0, [r1]
mov r2, r2, asr #0x1
add r0, r0, #0x2200
strh r2, [r0, #0x8e]
ldr r0, [r1]
add r1, r0, #0x2200
add r0, r0, #0x2000
ldrh r1, [r1, #0x8c]
ldr r0, [r0, #0x288]
bl func_0200e288
ldr r2, _021601d8 ; =data_ov61_02180fcc
ldr r0, _021601ec ; =func_ov61_0215ff1c
ldr r1, [r2]
add r1, r1, #0x2000
ldr r3, [r1, #0x284]
add r3, r3, #1
str r3, [r1, #0x284]
ldr r1, [r2]
add r1, r1, #0x288
add r1, r1, #0x2000
bl func_ov01_020f02d8
mov r4, r0
b _02160144
_02160128:
ldr r0, _021601f0 ; =func_ov61_02160200
bl func_ov01_020f0428
mov r4, r0
b _02160144
_02160138:
bl func_ov61_0215fb8c
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
_02160144:
cmp r4, #2
addeq sp, sp, #4
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc}
cmp r4, #3
beq _02160184
cmp r4, #8
bne _02160184
mov r0, #0xc
bl func_ov61_0215fa44
mov r1, #0
ldr r3, _021601f4 ; =0x00000753
mov r2, r1
mov r0, #1
bl func_ov61_0215f9ac
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
_02160184:
mov r0, #0xb
bl func_ov61_0215fa44
mov r1, #0
ldr r3, _021601f8 ; =0x0000075c
mov r2, r1
mov r0, #7
bl func_ov61_0215f9ac
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
_021601a8:
bl func_ov61_0215fb8c
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
_021601b4:
mov r0, #0xb
bl func_ov61_0215fa44
mov r1, #0
ldr r3, _021601fc ; =0x0000076d
mov r2, r1
mov r0, #7
bl func_ov61_0215f9ac
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_0215ff1c
_021601d8: .word data_ov61_02180fcc
_021601dc: .word 0x00000704
_021601e0: .word 0x0000071a
_021601e4: .word 0x00003ffe
_021601e8: .word 0x00000728
_021601ec: .word func_ov61_0215ff1c
_021601f0: .word func_ov61_02160200
_021601f4: .word 0x00000753
_021601f8: .word 0x0000075c
_021601fc: .word 0x0000076d
.global func_ov61_02160200
arm_func_start func_ov61_02160200
func_ov61_02160200: ; 0x02160200
stmdb sp!, {r3, lr}
ldrh r0, [r0, #2]
cmp r0, #4
addls pc, pc, r0, lsl #2
b _02160250
_02160214: ; jump table
b _02160228 ; case 0
b _02160248 ; case 1
b _02160250 ; case 2
b _02160250 ; case 3
b _02160250 ; case 4
_02160228:
mov r0, #3
bl func_ov61_0215fa44
mov r0, #0
ldr r3, _02160270 ; =0x00000783
mov r1, r0
mov r2, r0
bl func_ov61_0215f9ac
ldmia sp!, {r3, pc}
_02160248:
bl func_ov61_0215fb8c
ldmia sp!, {r3, pc}
_02160250:
mov r0, #0xb
bl func_ov61_0215fa44
mov r1, #0
ldr r3, _02160274 ; =0x00000793
mov r2, r1
mov r0, #7
bl func_ov61_0215f9ac
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02160200
_02160270: .word 0x00000783
_02160274: .word 0x00000793
.global func_ov61_02160278
arm_func_start func_ov61_02160278
func_ov61_02160278: ; 0x02160278
stmdb sp!, {r4, lr}
mov r4, r0
ldrh r0, [r4, #2]
cmp r0, #0xc
addls pc, pc, r0, lsl #2
b _02160498
_02160290: ; jump table
b _021602c4 ; case 0
b _02160474 ; case 1
b _02160498 ; case 2
b _02160498 ; case 3
b _02160498 ; case 4
b _02160498 ; case 5
b _02160488 ; case 6
b _02160498 ; case 7
b _02160498 ; case 8
b _02160498 ; case 9
b _02160498 ; case 10
b _02160488 ; case 11
b _02160488 ; case 12
_021602c4:
ldrh r0, [r4, #8]
cmp r0, #9
bgt _02160304
cmp r0, #0
addge pc, pc, r0, lsl #2
b _0216044c
_021602dc: ; jump table
b _0216044c ; case 0
b _0216044c ; case 1
b _0216044c ; case 2
b _0216044c ; case 3
b _0216044c ; case 4
b _0216044c ; case 5
ldmia sp!, {r4, pc} ; case 6
b _02160380 ; case 7
b _02160310 ; case 8
b _02160310 ; case 9
_02160304:
cmp r0, #0x1a
ldmeqia sp!, {r4, pc}
b _0216044c
_02160310:
ldr r1, _021604c0 ; =data_ov61_02180fcc
ldr r2, [r1]
add r0, r2, #0x2000
ldr r0, [r0, #0x260]
sub r0, r0, #8
cmp r0, #4
addls pc, pc, r0, lsl #2
ldmia sp!, {r4, pc}
_02160330: ; jump table
b _02160350 ; case 0
b _0216035c ; case 1
b _02160344 ; case 2
ldmia sp!, {r4, pc} ; case 3
b _02160378 ; case 4
_02160344:
add r0, r2, #0x2200
mov r1, #0
strh r1, [r0, #0x82]
_02160350:
mov r0, #0xc
bl func_ov61_0215fa44
ldmia sp!, {r4, pc}
_0216035c:
add r0, r2, #0x2200
mov r2, #0
strh r2, [r0, #0x82]
ldr r0, [r1]
mov r1, #6
add r0, r0, #0x2200
strh r1, [r0, #0x80]
_02160378:
bl func_ov61_0215fb8c
ldmia sp!, {r4, pc}
_02160380:
ldr r1, _021604c0 ; =data_ov61_02180fcc
ldr r3, [r1]
add r0, r3, #0x2000
ldr r0, [r0, #0x260]
cmp r0, #0xc
bne _021603a8
mov r0, #8
bl func_ov61_0215fa44
bl func_ov61_0215fb8c
ldmia sp!, {r4, pc}
_021603a8:
ldrh r2, [r4, #0xa]
cmp r2, #1
blo _02160444
ldr r0, _021604c4 ; =0x000007d7
cmp r2, r0
bhi _02160444
add r0, r3, #0x2200
strh r2, [r0, #0x82]
ldr r1, [r1]
ldr r0, _021604c8 ; =func_ov61_021605a4
add r1, r1, #0x1500
mov r2, #0x620
bl func_ov01_020f0ae8
cmp r0, #2
ldmeqia sp!, {r4, pc}
cmp r0, #3
beq _0216041c
cmp r0, #8
bne _0216041c
mov r0, #0xc
bl func_ov61_0215fa44
ldr r0, _021604c0 ; =data_ov61_02180fcc
ldr r3, _021604cc ; =0x000007ed
ldr r1, [r0]
mov r0, #1
add r1, r1, #0x2140
mov r2, #0
bl func_ov61_0215f9ac
ldmia sp!, {r4, pc}
_0216041c:
mov r0, #0xb
bl func_ov61_0215fa44
ldr r0, _021604c0 ; =data_ov61_02180fcc
ldr r3, _021604d0 ; =0x000007f6
ldr r1, [r0]
mov r0, #7
add r1, r1, #0x2140
mov r2, #0
bl func_ov61_0215f9ac
ldmia sp!, {r4, pc}
_02160444:
bl func_ov61_0215fb8c
ldmia sp!, {r4, pc}
_0216044c:
mov r0, #0xb
bl func_ov61_0215fa44
ldr r0, _021604c0 ; =data_ov61_02180fcc
ldrh r2, [r4, #8]
ldr r0, [r0]
ldr r3, _021604d4 ; =0x00000804
add r1, r0, #0x2140
mov r0, #7
bl func_ov61_0215f9ac
ldmia sp!, {r4, pc}
_02160474:
ldr r0, _021604c0 ; =data_ov61_02180fcc
ldrh r1, [r4, #0xe]
ldr r0, [r0]
add r0, r0, #0x2200
strh r1, [r0, #0xf8]
_02160488:
mov r0, #8
bl func_ov61_0215fa44
bl func_ov61_0215fb8c
ldmia sp!, {r4, pc}
_02160498:
mov r0, #0xb
bl func_ov61_0215fa44
ldr r0, _021604c0 ; =data_ov61_02180fcc
ldr r3, _021604d8 ; =0x0000081b
ldr r1, [r0]
mov r0, #7
add r1, r1, #0x2140
mov r2, #0
bl func_ov61_0215f9ac
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02160278
_021604c0: .word data_ov61_02180fcc
_021604c4: .word 0x000007d7
_021604c8: .word func_ov61_021605a4
_021604cc: .word 0x000007ed
_021604d0: .word 0x000007f6
_021604d4: .word 0x00000804
_021604d8: .word 0x0000081b
.global func_ov61_021604dc
arm_func_start func_ov61_021604dc
func_ov61_021604dc: ; 0x021604dc
stmdb sp!, {r3, lr}
ldrh r0, [r0, #2]
cmp r0, #4
addls pc, pc, r0, lsl #2
b _02160570
_021604f0: ; jump table
b _02160504 ; case 0
b _02160560 ; case 1
b _02160570 ; case 2
b _02160560 ; case 3
b _02160570 ; case 4
_02160504:
ldr r0, _02160598 ; =data_ov61_02180fcc
ldr r1, [r0]
add r0, r1, #0x2000
ldr r0, [r0, #0x260]
cmp r0, #0xc
bne _0216052c
mov r0, #0xa
bl func_ov61_0215fa44
bl func_ov61_0215fb8c
ldmia sp!, {r3, pc}
_0216052c:
add r1, r1, #0x2200
mov r2, #0
mov r0, #3
strh r2, [r1, #0x82]
bl func_ov61_0215fa44
ldr r1, _02160598 ; =data_ov61_02180fcc
mov r0, #0
ldr r1, [r1]
ldr r3, _0216059c ; =0x0000083d
mov r2, r0
add r1, r1, #0x2140
bl func_ov61_0215f9ac
ldmia sp!, {r3, pc}
_02160560:
mov r0, #0xa
bl func_ov61_0215fa44
bl func_ov61_0215fb8c
ldmia sp!, {r3, pc}
_02160570:
mov r0, #0xb
bl func_ov61_0215fa44
ldr r0, _02160598 ; =data_ov61_02180fcc
ldr r3, _021605a0 ; =0x0000084f
ldr r1, [r0]
mov r0, #7
add r1, r1, #0x2140
mov r2, #0
bl func_ov61_0215f9ac
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021604dc
_02160598: .word data_ov61_02180fcc
_0216059c: .word 0x0000083d
_021605a0: .word 0x0000084f
.global func_ov61_021605a4
arm_func_start func_ov61_021605a4
func_ov61_021605a4: ; 0x021605a4
stmdb sp!, {r4, lr}
mov r4, r0
ldrh r0, [r4, #2]
cmp r0, #0
beq _021605c0
cmp r0, #4
b _0216067c
_021605c0:
ldrh r0, [r4, #4]
cmp r0, #0xe
beq _021605d8
cmp r0, #0xf
beq _02160628
b _02160654
_021605d8:
ldr r0, _021606a4 ; =data_ov61_02180fcc
ldr r0, [r0]
add r0, r0, #0x2000
ldr r0, [r0, #0x260]
cmp r0, #0xc
bne _02160600
mov r0, #8
bl func_ov61_0215fa44
bl func_ov61_0215fb8c
ldmia sp!, {r4, pc}
_02160600:
mov r0, #9
bl func_ov61_0215fa44
ldr r1, _021606a4 ; =data_ov61_02180fcc
mov r0, #0
ldr r1, [r1]
ldr r3, _021606a8 ; =0x00000872
mov r2, r0
add r1, r1, #0x2140
bl func_ov61_0215f9ac
ldmia sp!, {r4, pc}
_02160628:
ldr r0, [r4, #8]
ldrh r0, [r0, #0xe]
mov r0, r0, asr #0x8
and r0, r0, #0xff
bl func_ov61_02161484
ldr r0, [r4, #8]
mov r1, #0x620
bl func_0200e288
ldr r0, [r4, #8]
bl func_ov61_02160fbc
ldmia sp!, {r4, pc}
_02160654:
mov r0, #0xb
bl func_ov61_0215fa44
ldr r0, _021606a4 ; =data_ov61_02180fcc
ldrh r2, [r4, #4]
ldr r0, [r0]
ldr r3, _021606ac ; =0x00000881
add r1, r0, #0x2140
mov r0, #7
bl func_ov61_0215f9ac
ldmia sp!, {r4, pc}
_0216067c:
mov r0, #0xb
bl func_ov61_0215fa44
ldr r0, _021606a4 ; =data_ov61_02180fcc
ldr r3, _021606b0 ; =0x0000088c
ldr r1, [r0]
mov r0, #7
add r1, r1, #0x2140
mov r2, #0
bl func_ov61_0215f9ac
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021605a4
_021606a4: .word data_ov61_02180fcc
_021606a8: .word 0x00000872
_021606ac: .word 0x00000881
_021606b0: .word 0x0000088c
.global func_ov61_021606b4
arm_func_start func_ov61_021606b4
func_ov61_021606b4: ; 0x021606b4
stmdb sp!, {r3, lr}
ldrh r0, [r0, #2]
cmp r0, #4
addls pc, pc, r0, lsl #2
b _02160798
_021606c8: ; jump table
b _021606dc ; case 0
b _02160788 ; case 1
b _02160798 ; case 2
b _02160788 ; case 3
b _02160798 ; case 4
_021606dc:
ldr r0, _021607c0 ; =data_ov61_02180fcc
ldr r0, [r0]
add r0, r0, #0x2000
ldr r0, [r0, #0x260]
cmp r0, #0xc
bne _02160704
mov r0, #0xa
bl func_ov61_0215fa44
bl func_ov61_0215fb8c
ldmia sp!, {r3, pc}
_02160704:
ldr r0, _021607c4 ; =func_ov61_021604dc
mov r1, #0
bl func_ov01_020f0534
cmp r0, #2
ldmeqia sp!, {r3, pc}
cmp r0, #3
beq _02160750
cmp r0, #8
bne _02160760
mov r0, #0xc
bl func_ov61_0215fa44
ldr r0, _021607c0 ; =data_ov61_02180fcc
ldr r3, _021607c8 ; =0x000008b4
ldr r1, [r0]
mov r0, #1
add r1, r1, #0x2140
mov r2, #0
bl func_ov61_0215f9ac
ldmia sp!, {r3, pc}
_02160750:
mov r0, #0xa
bl func_ov61_0215fa44
bl func_ov61_0215fb8c
ldmia sp!, {r3, pc}
_02160760:
mov r0, #0xb
bl func_ov61_0215fa44
ldr r1, _021607c0 ; =data_ov61_02180fcc
mov r0, #7
ldr r1, [r1]
mov r2, #0
add r1, r1, #0x2140
mov r3, #0x8c0
bl func_ov61_0215f9ac
ldmia sp!, {r3, pc}
_02160788:
mov r0, #0xa
bl func_ov61_0215fa44
bl func_ov61_0215fb8c
ldmia sp!, {r3, pc}
_02160798:
mov r0, #0xb
bl func_ov61_0215fa44
ldr r0, _021607c0 ; =data_ov61_02180fcc
ldr r3, _021607cc ; =0x000008d3
ldr r1, [r0]
mov r0, #7
add r1, r1, #0x2140
mov r2, #0
bl func_ov61_0215f9ac
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021606b4
_021607c0: .word data_ov61_02180fcc
_021607c4: .word func_ov61_021604dc
_021607c8: .word 0x000008b4
_021607cc: .word 0x000008d3
.global func_ov61_021607d0
arm_func_start func_ov61_021607d0
func_ov61_021607d0: ; 0x021607d0
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
ldrh r0, [r0, #2]
cmp r0, #0
bne _02160aa8
ldr r2, _02160acc ; =data_ov61_02180fcc
mov r0, #0
ldr r1, [r2]
add r1, r1, #0x2000
strb r0, [r1, #0x26b]
ldr r1, [r2]
add r1, r1, #0x2200
strh r0, [r1, #0x82]
ldr r3, [r2]
add r1, r3, #0x2000
ldr r1, [r1, #0x260]
cmp r1, #0xd
addls pc, pc, r1, lsl #2
b _02160a78
_0216081c: ; jump table
b _02160a78 ; case 0
b _02160a78 ; case 1
b _02160a78 ; case 2
b _02160a78 ; case 3
b _02160a78 ; case 4
b _02160854 ; case 5
b _02160854 ; case 6
b _02160878 ; case 7
b _0216089c ; case 8
b _021609b4 ; case 9
b _021609e0 ; case 10
b _02160a78 ; case 11
b _021609b4 ; case 12
b _02160a0c ; case 13
_02160854:
mov r0, #3
bl func_ov61_0215fa44
mov r1, #0
ldr r3, _02160ad0 ; =0x000008f5
mov r2, r1
mov r0, #1
bl func_ov61_0215f9ac
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
_02160878:
mov r0, #3
bl func_ov61_0215fa44
mov r0, #0
ldr r3, _02160ad4 ; =0x000008fb
mov r1, r0
mov r2, r0
bl func_ov61_0215f9ac
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
_0216089c:
add r1, r3, #0x2200
ldrh r4, [r1, #0xf8]
strh r0, [r1, #0xf8]
cmp r4, #0x12
bne _02160988
ldr r1, [r2]
add r1, r1, #0x2100
ldrh r3, [r1, #0x70]
and ip, r3, #0x24
cmp ip, #0x24
beq _02160988
orr r3, r3, #0x24
strh r3, [r1, #0x70]
ldr lr, [r2]
add r1, lr, #0x2000
ldr r2, [r1, #0x264]
and r1, r2, #0xc0000
cmp r1, #0xc0000
moveq r0, #1
and r1, r2, #0x30000
cmp r1, #0x30000
mov r0, r0, lsl #0x10
mov ip, r0, lsr #0x10
movne r3, #1
ldr r0, _02160ad8 ; =func_ov61_02160278
moveq r3, #0
add r1, lr, #0x2140
mov r2, #0
str ip, [sp]
bl func_ov01_020f0468
cmp r0, #2
addeq sp, sp, #4
ldmeqia sp!, {r3, r4, pc}
cmp r0, #3
beq _0216095c
cmp r0, #8
bne _0216095c
mov r0, #0xc
bl func_ov61_0215fa44
ldr r0, _02160acc ; =data_ov61_02180fcc
ldr r3, _02160adc ; =0x0000091c
ldr r0, [r0]
mov r2, r4
add r1, r0, #0x2140
mov r0, #1
bl func_ov61_0215f9ac
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
_0216095c:
mov r0, #0xb
bl func_ov61_0215fa44
ldr r0, _02160acc ; =data_ov61_02180fcc
ldr r3, _02160ae0 ; =0x00000925
ldr r0, [r0]
mov r2, r4
add r1, r0, #0x2140
mov r0, #7
bl func_ov61_0215f9ac
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
_02160988:
mov r0, #3
bl func_ov61_0215fa44
ldr r0, _02160acc ; =data_ov61_02180fcc
ldr r3, _02160ae4 ; =0x0000092d
ldr r0, [r0]
mov r2, r4
add r1, r0, #0x2140
mov r0, #1
bl func_ov61_0215f9ac
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
_021609b4:
mov r0, #3
bl func_ov61_0215fa44
ldr r0, _02160acc ; =data_ov61_02180fcc
ldr r3, _02160ae8 ; =0x00000935
ldr r1, [r0]
mov r0, #0
add r1, r1, #0x2140
mov r2, #1
bl func_ov61_0215f9ac
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
_021609e0:
mov r0, #3
bl func_ov61_0215fa44
ldr r1, _02160acc ; =data_ov61_02180fcc
mov r0, #0
ldr r1, [r1]
ldr r3, _02160aec ; =0x0000093c
mov r2, r0
add r1, r1, #0x2140
bl func_ov61_0215f9ac
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
_02160a0c:
ldr r0, _02160af0 ; =func_ov61_0215fc60
bl func_ov01_020eff00
cmp r0, #2
addeq sp, sp, #4
ldmeqia sp!, {r3, r4, pc}
cmp r0, #3
beq _02160a54
cmp r0, #8
bne _02160a54
mov r0, #0xc
bl func_ov61_0215fa44
mov r1, #0
ldr r3, _02160af4 ; =0x0000094a
mov r2, r1
mov r0, #1
bl func_ov61_0215f9ac
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
_02160a54:
mov r0, #0xb
bl func_ov61_0215fa44
mov r1, #0
ldr r3, _02160af8 ; =0x00000953
mov r2, r1
mov r0, #7
bl func_ov61_0215f9ac
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
_02160a78:
mov r0, #0xb
bl func_ov61_0215fa44
ldr r1, _02160acc ; =data_ov61_02180fcc
mov r0, #7
ldr r1, [r1]
rsb r3, r0, #0x960
add r1, r1, #0x2000
ldr r2, [r1, #0x260]
mov r1, #0
bl func_ov61_0215f9ac
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
_02160aa8:
mov r0, #0xb
bl func_ov61_0215fa44
mov r1, #0
mov r2, r1
mov r0, #7
mov r3, #0x960
bl func_ov61_0215f9ac
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
.align 2, 0
arm_func_end func_ov61_021607d0
_02160acc: .word data_ov61_02180fcc
_02160ad0: .word 0x000008f5
_02160ad4: .word 0x000008fb
_02160ad8: .word func_ov61_02160278
_02160adc: .word 0x0000091c
_02160ae0: .word 0x00000925
_02160ae4: .word 0x0000092d
_02160ae8: .word 0x00000935
_02160aec: .word 0x0000093c
_02160af0: .word func_ov61_0215fc60
_02160af4: .word 0x0000094a
_02160af8: .word 0x00000953
.global func_ov61_02160afc
arm_func_start func_ov61_02160afc
func_ov61_02160afc: ; 0x02160afc
stmdb sp!, {r4, lr}
bl func_0200ee4c
mov r4, r0
bl func_ov61_0215f634
cmp r0, #0
bne _02160b20
mov r0, r4
bl func_0200ee60
ldmia sp!, {r4, pc}
_02160b20:
add r1, r0, #0x2000
ldr r0, [r1, #0x270]
cmp r0, #0
beq _02160b44
ldr r2, [r1, #0x274]
cmp r2, #0
ble _02160b44
mov r1, #0
bl func_02007a44
_02160b44:
mov r0, r4
bl func_0200ee60
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02160afc
.global func_ov61_02160b50
arm_func_start func_ov61_02160b50
func_ov61_02160b50: ; 0x02160b50
stmdb sp!, {r3, r4, r5, lr}
bl func_0200ee4c
mov r4, r0
bl func_ov61_0215f634
cmp r0, #0
mov r5, #0
bne _02160b7c
mov r0, r4
bl func_0200ee60
mov r0, r5
ldmia sp!, {r3, r4, r5, pc}
_02160b7c:
add r0, r0, #0x2000
ldr r1, [r0, #0x270]
cmp r1, #0
beq _02160b98
ldr r0, [r0, #0x274]
cmp r0, #0xc
ldrhi r5, [r1]
_02160b98:
mov r0, r4
bl func_0200ee60
mov r0, r5
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02160b50
.global func_ov61_02160ba8
arm_func_start func_ov61_02160ba8
func_ov61_02160ba8: ; 0x02160ba8
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
bl func_0200ee4c
mov r4, r0
bl func_ov61_0215f634
cmp r0, #0
bne _02160bd4
mov r0, r4
bl func_0200ee60
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_02160bd4:
add r1, r0, #0x2000
cmp r5, #0
ldrb r1, [r1, #0x26a]
beq _02160bfc
cmp r1, #0
movne r5, #1
moveq r5, #0
add r0, r0, #0x2000
mov r1, #1
b _02160c10
_02160bfc:
cmp r1, #0
movne r5, #1
moveq r5, #0
add r0, r0, #0x2000
mov r1, #0
_02160c10:
strb r1, [r0, #0x26a]
mov r0, r4
bl func_0200ee60
mov r0, r5
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02160ba8
.global func_ov61_02160c24
arm_func_start func_ov61_02160c24
func_ov61_02160c24: ; 0x02160c24
stmdb sp!, {r3, r4, r5, lr}
mov r4, r0
bl func_0200ee4c
mov r5, r0
bl func_ov61_0215f634
cmp r0, #0
bne _02160c50
mov r0, r5
bl func_0200ee60
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_02160c50:
mov r0, r4
bl func_ov61_02160e70
movs r4, r0
mov r0, r5
bne _02160c70
bl func_0200ee60
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_02160c70:
bl func_0200ee60
add r0, r4, #0x10
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02160c24
.global func_ov61_02160c7c
arm_func_start func_ov61_02160c7c
func_ov61_02160c7c: ; 0x02160c7c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r5, r0
mov r4, r1
bl func_ov61_0215f634
movs r6, r0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
add r0, r6, #0x2000
ldrb r0, [r0, #0x26a]
cmp r0, #0
ldreqh r0, [r5, #0x3c]
cmpeq r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
add r0, r5, #4
bl func_ov61_02160e04
movs r7, r0
bne _02160cc4
bl func_ov61_02160d08
mov r7, r0
_02160cc4:
cmp r7, #0
addeq r0, r6, #0x2000
ldreq r0, [r0, #0x278]
cmpeq r0, #1
bne _02160ce0
bl func_ov61_02160dd4
mov r7, r0
_02160ce0:
cmp r7, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, r5
add r1, r7, #0x10
mov r2, #0xc0
strh r4, [r7, #2]
bl func_02007984
mov r0, r7
bl func_ov61_02160ec0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_02160c7c
.global func_ov61_02160d08
arm_func_start func_ov61_02160d08
func_ov61_02160d08: ; 0x02160d08
stmdb sp!, {r4, lr}
bl func_ov61_0215f634
add r2, r0, #0x2000
ldr r1, [r2, #0x270]
mov r0, #0
cmp r1, #0
ldmeqia sp!, {r4, pc}
ldr r3, [r2, #0x274]
cmp r3, #0xc
ldmlsia sp!, {r4, pc}
ldr r2, _02160dd0 ; =0x4ec4ec4f
sub r3, r3, #0xc
umull r2, ip, r3, r2
movs ip, ip, lsr #0x6
ldmeqia sp!, {r4, pc}
ldr r2, [r1]
cmp ip, r2
ldmlsia sp!, {r4, pc}
mov lr, r0
cmp ip, #0
bls _02160d84
add r4, r1, #0xc
mov r2, #0xd0
_02160d64:
mul r0, lr, r2
ldrb r3, [r4, r0]
add r0, r4, r0
cmp r3, #0
beq _02160d84
add lr, lr, #1
cmp lr, ip
blo _02160d64
_02160d84:
cmp lr, ip
ldmhsia sp!, {r4, pc}
mov r2, #1
strb r2, [r0]
ldr r3, [r1]
mov r2, #0
str r3, [r0, #4]
str r2, [r0, #0xc]
ldr r2, [r1, #8]
str r2, [r0, #8]
str r0, [r1, #8]
ldr r2, [r0, #8]
cmp r2, #0
strne r0, [r2, #0xc]
streq r0, [r1, #4]
ldr r2, [r1]
add r2, r2, #1
str r2, [r1]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02160d08
_02160dd0: .word 0x4ec4ec4f
.global func_ov61_02160dd4
arm_func_start func_ov61_02160dd4
func_ov61_02160dd4: ; 0x02160dd4
stmdb sp!, {r3, lr}
bl func_ov61_0215f634
add r0, r0, #0x2000
ldr r1, [r0, #0x270]
cmp r1, #0
beq _02160dfc
ldr r0, [r0, #0x274]
cmp r0, #0xc
ldrhi r0, [r1, #4]
ldmhiia sp!, {r3, pc}
_02160dfc:
mov r0, #0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02160dd4
.global func_ov61_02160e04
arm_func_start func_ov61_02160e04
func_ov61_02160e04: ; 0x02160e04
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
bl func_ov61_0215f634
add r0, r0, #0x2000
mov r4, #0
cmp r5, #0
ldr r1, [r0, #0x270]
moveq r0, r4
ldmeqia sp!, {r3, r4, r5, pc}
cmp r1, #0
beq _02160e68
ldr r0, [r0, #0x274]
cmp r0, #0xc
bls _02160e68
ldr r4, [r1, #4]
cmp r4, #0
beq _02160e68
_02160e48:
mov r1, r5
add r0, r4, #0x14
bl func_ov61_02161360
cmp r0, #0
bne _02160e68
ldr r4, [r4, #0xc]
cmp r4, #0
bne _02160e48
_02160e68:
mov r0, r4
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02160e04
.global func_ov61_02160e70
arm_func_start func_ov61_02160e70
func_ov61_02160e70: ; 0x02160e70
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_0215f634
add r1, r0, #0x2000
ldr r2, [r1, #0x270]
mov r0, #0
cmp r2, #0
ldmeqia sp!, {r4, pc}
ldr r1, [r1, #0x274]
cmp r1, #0xc
ldmlsia sp!, {r4, pc}
ldr r0, [r2, #4]
cmp r0, #0
ldmeqia sp!, {r4, pc}
_02160ea8:
ldr r1, [r0, #4]
cmp r1, r4
ldrne r0, [r0, #0xc]
cmpne r0, #0
bne _02160ea8
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02160e70
.global func_ov61_02160ec0
arm_func_start func_ov61_02160ec0
func_ov61_02160ec0: ; 0x02160ec0
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_0215f634
add r1, r0, #0x2000
ldr r0, [r1, #0x270]
cmp r4, #0
cmpne r0, #0
ldmeqia sp!, {r4, pc}
ldr r1, [r1, #0x274]
cmp r1, #0xc
ldmlsia sp!, {r4, pc}
ldr r3, [r0, #4]
cmp r3, #0
beq _02160f38
_02160ef8:
cmp r3, r4
bne _02160f2c
ldr r2, [r3, #8]
ldr r1, [r3, #0xc]
cmp r2, #0
strne r1, [r2, #0xc]
streq r1, [r0, #4]
ldr r2, [r3, #0xc]
ldr r1, [r3, #8]
cmp r2, #0
strne r1, [r2, #8]
streq r1, [r0, #8]
b _02160f38
_02160f2c:
ldr r3, [r3, #0xc]
cmp r3, #0
bne _02160ef8
_02160f38:
mov r1, #0
str r1, [r4, #0xc]
ldr r1, [r0, #8]
str r1, [r4, #8]
str r4, [r0, #8]
ldr r1, [r4, #8]
cmp r1, #0
strne r4, [r1, #0xc]
streq r4, [r0, #4]
cmp r3, #0
ldmneia sp!, {r4, pc}
ldr r1, [r0]
str r1, [r4, #4]
ldr r1, [r0]
add r1, r1, #1
str r1, [r0]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02160ec0
.global func_ov61_02160f7c
arm_func_start func_ov61_02160f7c
func_ov61_02160f7c: ; 0x02160f7c
stmdb sp!, {r3, lr}
ldr r1, _02160fb4 ; =data_ov61_02180fd0
ldrb r0, [r1]
cmp r0, #0
ldmneia sp!, {r3, pc}
mov r0, #1
strb r0, [r1]
mov r2, #0
str r2, [r1, #0x24]
str r2, [r1, #8]
ldr r0, _02160fb8 ; =data_ov61_02180fdc
str r2, [r1, #4]
bl func_0200e02c
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02160f7c
_02160fb4: .word data_ov61_02180fd0
_02160fb8: .word data_ov61_02180fdc
.global func_ov61_02160fbc
arm_func_start func_ov61_02160fbc
func_ov61_02160fbc: ; 0x02160fbc
stmdb sp!, {r3, lr}
ldr r1, _02160fec ; =data_ov61_02180fd0
mov r2, r0
ldr ip, [r1, #0x28]
cmp ip, #0
ldmeqia sp!, {r3, pc}
ldrh r3, [r2, #6]
add r0, r2, #0x1e
add r1, r2, #0x18
add r2, r2, #0x2c
blx ip
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02160fbc
_02160fec: .word data_ov61_02180fd0
.global func_ov61_02160ff0
arm_func_start func_ov61_02160ff0
func_ov61_02160ff0: ; 0x02160ff0
stmdb sp!, {r4, lr}
bl func_ov61_0215f634
movs r4, r0
ldmeqia sp!, {r4, pc}
add r0, r4, #0x2000
ldr r1, [r0, #0x260]
cmp r1, #9
ldmneia sp!, {r4, pc}
ldrb r0, [r0, #0x26b]
cmp r0, #1
ldmeqia sp!, {r4, pc}
ldr r0, _02161058 ; =data_ov61_02180fdc
bl func_ov61_021612d8
cmp r0, #0
ldmeqia sp!, {r4, pc}
add r1, r4, #0x144
ldr r0, _0216105c ; =func_ov61_021612c4
add r1, r1, #0x2000
add r2, r4, #0xf00
mov r3, #0
bl func_ov01_020f0b88
cmp r0, #2
ldmeqia sp!, {r4, pc}
ldr r0, _02161058 ; =data_ov61_02180fdc
bl func_ov61_02161328
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02160ff0
_02161058: .word data_ov61_02180fdc
_0216105c: .word func_ov61_021612c4
.global func_ov61_02161060
arm_func_start func_ov61_02161060
func_ov61_02161060: ; 0x02161060
stmdb sp!, {r3, r4, r5, lr}
mov r5, #0
bl func_ov61_0215f634
mov r4, r0
bl func_0200ee4c
cmp r4, #0
beq _02161098
add r1, r4, #0x2000
ldr r2, [r1, #0x260]
cmp r2, #9
ldreqb r1, [r1, #0x26b]
cmpeq r1, #0
addeq r1, r4, #0x144
addeq r5, r1, #0x2000
_02161098:
bl func_0200ee60
mov r0, r5
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02161060
.global func_ov61_021610a4
arm_func_start func_ov61_021610a4
func_ov61_021610a4: ; 0x021610a4
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, #0
mov r5, r0
mov r4, r7
bl func_ov61_0215f634
mov r6, r0
bl func_0200ee4c
cmp r6, #0
beq _021610f0
add r1, r6, #0x2000
ldr r2, [r1, #0x260]
cmp r2, #9
ldreqb r1, [r1, #0x26b]
cmpeq r1, #0
bne _021610f0
add r1, r6, #0x2100
ldrh r4, [r1, #0x4a]
add r1, r6, #0x14c
add r7, r1, #0x2000
_021610f0:
bl func_0200ee60
cmp r5, #0
strneh r4, [r5]
mov r0, r7
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_021610a4
.global func_ov61_02161104
arm_func_start func_ov61_02161104
func_ov61_02161104: ; 0x02161104
stmdb sp!, {r4, lr}
mov r4, r0
bl func_0200ee4c
ldr r1, _02161120 ; =data_ov61_02180fd0
str r4, [r1, #0x28]
bl func_0200ee60
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02161104
_02161120: .word data_ov61_02180fd0
.global func_ov61_02161124
arm_func_start func_ov61_02161124
func_ov61_02161124: ; 0x02161124
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r8, r0
mov r7, r1
mov r6, r2
bl func_0200ee4c
mov r5, r0
bl func_ov61_0215f634
cmp r0, #0
bne _02161158
mov r0, r5
bl func_0200ee60
mvn r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_02161158:
ldr r0, _02161274 ; =data_ov61_02180fdc
bl func_0200e044
bl func_ov61_0215f634
movs r4, r0
bne _02161184
ldr r0, _02161274 ; =data_ov61_02180fdc
bl func_0200e0c8
mov r0, r5
bl func_0200ee60
mvn r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_02161184:
add r0, r4, #0x2000
ldr r1, [r0, #0x260]
cmp r1, #9
bne _021611a0
ldrb r0, [r0, #0x26b]
cmp r0, #1
bne _021611b8
_021611a0:
ldr r0, _02161274 ; =data_ov61_02180fdc
bl func_0200e0c8
mov r0, r5
bl func_0200ee60
mvn r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_021611b8:
mov r0, r7
mov r2, r6
add r1, r4, #0xf00
bl func_02007ad8
mov r3, r6, lsl #0x10
ldr r0, _02161278 ; =func_ov61_02161284
mov r1, r8
add r2, r4, #0xf00
mov r3, r3, lsr #0x10
bl func_ov01_020f0b88
cmp r0, #8
addls pc, pc, r0, lsl #2
b _02161210
_021611ec: ; jump table
b _02161210 ; case 0
b _02161210 ; case 1
b _02161228 ; case 2
b _02161210 ; case 3
b _02161210 ; case 4
b _02161210 ; case 5
b _02161210 ; case 6
b _02161210 ; case 7
b _02161210 ; case 8
_02161210:
ldr r0, _02161274 ; =data_ov61_02180fdc
bl func_0200e0c8
mov r0, r5
bl func_0200ee60
mvn r0, #4
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_02161228:
ldr r0, _0216127c ; =data_ov61_02180fd4
bl func_0200d880
ldr r0, _02161280 ; =data_ov61_02180fd0
ldr r0, [r0, #0x24]
cmp r0, #0
beq _0216125c
cmp r0, #1
ldr r0, _02161274 ; =data_ov61_02180fdc
bl func_0200e0c8
mov r0, r5
bl func_0200ee60
mvn r0, #4
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216125c:
ldr r0, _02161274 ; =data_ov61_02180fdc
bl func_0200e0c8
mov r0, r5
bl func_0200ee60
mov r0, r6
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02161124
_02161274: .word data_ov61_02180fdc
_02161278: .word func_ov61_02161284
_0216127c: .word data_ov61_02180fd4
_02161280: .word data_ov61_02180fd0
.global func_ov61_02161284
arm_func_start func_ov61_02161284
func_ov61_02161284: ; 0x02161284
stmdb sp!, {r3, lr}
ldrh r1, [r0]
cmp r1, #0x12
ldmneia sp!, {r3, pc}
ldrh r2, [r0, #2]
ldr r1, _021612bc ; =data_ov61_02180fd0
str r2, [r1, #0x24]
ldrh r0, [r0, #2]
cmp r0, #0
bne _021612b0
bl func_ov61_0215fadc
_021612b0:
ldr r0, _021612c0 ; =data_ov61_02180fd4
bl func_0200d8d0
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02161284
_021612bc: .word data_ov61_02180fd0
_021612c0: .word data_ov61_02180fd4
.global func_ov61_021612c4
arm_func_start func_ov61_021612c4
func_ov61_021612c4: ; 0x021612c4
ldr ip, _021612d0 ; =func_ov61_02161328
ldr r0, _021612d4 ; =data_ov61_02180fdc
bx ip
.align 2, 0
arm_func_end func_ov61_021612c4
_021612d0: .word func_ov61_02161328
_021612d4: .word data_ov61_02180fdc
.global func_ov61_021612d8
arm_func_start func_ov61_021612d8
func_ov61_021612d8: ; 0x021612d8
ldr r2, [r0, #8]
cmp r2, #0
bne _02161300
ldr r1, _02161324 ; =func_01ffa48c
str r1, [r0, #8]
ldr r1, [r0, #0xc]
add r1, r1, #1
str r1, [r0, #0xc]
mov r0, #1
bx lr
_02161300:
ldr r1, _02161324 ; =func_01ffa48c
cmp r2, r1
movne r0, #0
bxne lr
ldr r1, [r0, #0xc]
add r1, r1, #1
str r1, [r0, #0xc]
mov r0, #1
bx lr
.align 2, 0
arm_func_end func_ov61_021612d8
_02161324: .word func_01ffa48c
.global func_ov61_02161328
arm_func_start func_ov61_02161328
func_ov61_02161328: ; 0x02161328
stmdb sp!, {r3, lr}
ldr r2, [r0, #8]
ldr r1, _0216135c ; =func_01ffa48c
cmp r2, r1
ldmneia sp!, {r3, pc}
ldr r1, [r0, #0xc]
subs r1, r1, #1
str r1, [r0, #0xc]
ldmneia sp!, {r3, pc}
mov r1, #0
str r1, [r0, #8]
bl func_0200d8d0
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02161328
_0216135c: .word func_01ffa48c
.global func_ov61_02161360
arm_func_start func_ov61_02161360
func_ov61_02161360: ; 0x02161360
mov ip, #0
_02161364:
ldrb r3, [r0, ip]
ldrb r2, [r1, ip]
cmp r3, r2
movne r0, #0
bxne lr
add ip, ip, #1
cmp ip, #6
blt _02161364
mov r0, #1
bx lr
arm_func_end func_ov61_02161360
.global func_ov61_0216138c
arm_func_start func_ov61_0216138c
func_ov61_0216138c: ; 0x0216138c
stmdb sp!, {r3, r4, r5, lr}
bl func_0200ee4c
mov r4, r0
bl func_ov61_0215f634
cmp r0, #0
mov r5, #0
beq _021613c0
add r0, r0, #0x2000
ldr r0, [r0, #0x260]
cmp r0, #9
bne _021613c0
bl func_ov61_02161450
mov r5, r0
_021613c0:
mov r0, r4
bl func_0200ee60
mov r0, r5
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0216138c
.global func_ov61_021613d0
arm_func_start func_ov61_021613d0
func_ov61_021613d0: ; 0x021613d0
stmdb sp!, {r3, lr}
ldr r1, _02161448 ; =data_ov61_02180ffc
mov r0, #0
ldrb r1, [r1]
cmp r1, #0x10
bls _02161414
ldr r3, _0216144c ; =data_ov61_02181000
mov r2, r0
_021613f0:
ldrb r1, [r3], #1
add r2, r2, #1
cmp r2, #0x10
add r0, r0, r1
blt _021613f0
mov r1, r0, asr #0x3
add r0, r0, r1, lsr #28
mov r0, r0, asr #0x4
b _02161440
_02161414:
cmp r1, #0
beq _02161440
mov ip, r0
ble _0216143c
ldr r3, _0216144c ; =data_ov61_02181000
_02161428:
ldrb r2, [r3], #1
add ip, ip, #1
cmp ip, r1
add r0, r0, r2
blt _02161428
_0216143c:
bl func_02002c14
_02161440:
and r0, r0, #0xff
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021613d0
_02161448: .word data_ov61_02180ffc
_0216144c: .word data_ov61_02181000
.global func_ov61_02161450
arm_func_start func_ov61_02161450
func_ov61_02161450: ; 0x02161450
stmdb sp!, {r3, lr}
bl func_ov61_021613d0
mov r1, #0
cmp r0, #0x1c
movhs r1, #3
bhs _0216147c
cmp r0, #0x16
movhs r1, #2
bhs _0216147c
cmp r0, #0x10
movhs r1, #1
_0216147c:
mov r0, r1
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02161450
.global func_ov61_02161484
arm_func_start func_ov61_02161484
func_ov61_02161484: ; 0x02161484
stmdb sp!, {r3, lr}
ldr r2, _021614dc ; =data_ov61_02180ffc
tst r0, #2
ldrb ip, [r2]
mov r0, r0, asr #0x2
addeq r0, r0, #0x19
mov r1, ip, lsr #0x1f
and lr, r0, #0xff
rsb r0, r1, ip, lsl #28
ldr r3, _021614e0 ; =data_ov61_02181000
add r0, r1, r0, ror #28
strb lr, [r3, r0]
add r0, ip, #1
cmp ip, #0x10
strlob r0, [r2]
ldmloia sp!, {r3, pc}
mov r1, r0, lsr #0x1f
rsb r0, r1, r0, lsl #28
add r0, r1, r0, ror #28
add r0, r0, #0x10
strb r0, [r2]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02161484
_021614dc: .word data_ov61_02180ffc
_021614e0: .word data_ov61_02181000
.global func_ov61_021614e4
arm_func_start func_ov61_021614e4
func_ov61_021614e4: ; 0x021614e4
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
ldr r7, [sp, #0x28]
ldr r6, [sp, #0x2c]
movs r9, r1
mov r10, r0
mov r11, r2
mov r8, r3
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
cmp r9, #1
mov r4, #0
mov r5, #1
bls _02161528
_02161518:
mov r0, r5, lsl #0x1
add r5, r0, #1
cmp r5, r9
blo _02161518
_02161528:
ldr r2, [r6]
add r0, r2, #1
str r0, [r6]
ldrb r1, [r7]
ldrb r0, [r11, r2]
ldrb r1, [r10, r1]
add r0, r1, r0
strb r0, [r7]
ldr r0, [r6]
cmp r0, r8
blo _02161568
mov r0, #0
str r0, [r6]
ldrb r0, [r7]
add r0, r0, r8
strb r0, [r7]
_02161568:
ldrb r0, [r7]
add r4, r4, #1
cmp r4, #0xb
and r0, r5, r0
bls _02161588
mov r1, r9
bl FastDivide
mov r0, r1
_02161588:
cmp r0, r9
bhi _02161528
and r0, r0, #0xff
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_021614e4
.global func_ov61_02161598
arm_func_start func_ov61_02161598
func_ov61_02161598: ; 0x02161598
mov r1, #1
strb r1, [r0, #0x100]
mov r1, #3
strb r1, [r0, #0x101]
mov r1, #5
strb r1, [r0, #0x102]
mov r1, #7
strb r1, [r0, #0x103]
mov r1, #0xb
strb r1, [r0, #0x104]
mov r1, #0
mov r2, #0xff
_021615c8:
strb r2, [r0, r1]
add r1, r1, #1
cmp r1, #0x100
sub r2, r2, #1
blt _021615c8
bx lr
arm_func_end func_ov61_02161598
.global func_ov61_021615e0
arm_func_start func_ov61_021615e0
func_ov61_021615e0: ; 0x021615e0
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #0x10
mov r7, r2
mov r9, r0
mov r8, r1
cmp r7, #1
bhs _02161608
bl func_ov61_02161598
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02161608:
mov r0, #0
_0216160c:
strb r0, [r9, r0]
add r0, r0, #1
cmp r0, #0x100
blt _0216160c
mov r0, #0
str r0, [sp, #0xc]
strb r0, [sp, #8]
mov r6, #0xff
add r5, sp, #8
add r4, sp, #0xc
_02161634:
str r5, [sp]
mov r0, r9
mov r1, r6
mov r2, r8
mov r3, r7
str r4, [sp, #4]
bl func_ov61_021614e4
ldrb r2, [r9, r6]
ldrb r1, [r9, r0]
strb r1, [r9, r6]
strb r2, [r9, r0]
subs r6, r6, #1
bpl _02161634
ldrb r1, [r9, #1]
mov r0, #0
strb r1, [r9, #0x100]
ldrb r1, [r9, #3]
strb r1, [r9, #0x101]
ldrb r1, [r9, #5]
strb r1, [r9, #0x102]
ldrb r1, [r9, #7]
strb r1, [r9, #0x103]
ldrb r1, [sp, #8]
ldrb r1, [r9, r1]
strb r1, [r9, #0x104]
strb r0, [sp, #8]
str r0, [sp, #0xc]
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
arm_func_end func_ov61_021615e0
.global func_ov61_021616a8
arm_func_start func_ov61_021616a8
func_ov61_021616a8: ; 0x021616a8
stmdb sp!, {r4, lr}
ldrb r4, [r0, #0x100]
add r2, r4, #1
strb r2, [r0, #0x100]
ldrb r3, [r0, #0x101]
ldrb r2, [r0, r4]
add r2, r3, r2
strb r2, [r0, #0x101]
ldrb r3, [r0, #0x104]
and r2, r2, #0xff
ldrb r2, [r0, r2]
ldrb r4, [r0, r3]
strb r2, [r0, r3]
ldrb r3, [r0, #0x103]
ldrb r2, [r0, #0x101]
ldrb r3, [r0, r3]
strb r3, [r0, r2]
ldrb r3, [r0, #0x100]
ldrb r2, [r0, #0x103]
ldrb r3, [r0, r3]
strb r3, [r0, r2]
ldrb r2, [r0, #0x100]
strb r4, [r0, r2]
ldrb r3, [r0, #0x102]
ldrb r2, [r0, r4]
add r4, r3, r2
strb r4, [r0, #0x102]
ldrb r3, [r0, #0x103]
ldrb r2, [r0, #0x104]
ldrb ip, [r0, #0x101]
ldrb lr, [r0, #0x100]
and r4, r4, #0xff
ldrb r3, [r0, r3]
ldrb r2, [r0, r2]
ldrb ip, [r0, ip]
ldrb r4, [r0, r4]
add r2, r3, r2
ldrb r3, [r0, lr]
add r2, ip, r2
and r2, r2, #0xff
add r3, r4, r3
ldrb r2, [r0, r2]
and r3, r3, #0xff
ldrb r3, [r0, r3]
ldrb r2, [r0, r2]
eor r3, r1, r3
eor r2, r3, r2
strb r2, [r0, #0x103]
strb r1, [r0, #0x104]
ldrb r0, [r0, #0x103]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_021616a8
.global func_ov61_02161774
arm_func_start func_ov61_02161774
func_ov61_02161774: ; 0x02161774
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r5, r2
mov r7, r0
mov r6, r1
mov r4, #0
cmp r5, #0
ldmleia sp!, {r3, r4, r5, r6, r7, pc}
_02161790:
ldrb r1, [r6, r4]
mov r0, r7
bl func_ov61_021616a8
strb r0, [r6, r4]
add r4, r4, #1
cmp r4, r5
blt _02161790
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_02161774
.global func_ov61_021617b0
arm_func_start func_ov61_021617b0
func_ov61_021617b0: ; 0x021617b0
ldr r2, [r0, #4]
cmp r2, #0
strne r1, [r2, #0x20]
str r1, [r0, #4]
mov r2, #0
str r2, [r1, #0x20]
ldr r2, [r0]
cmp r2, #0
streq r1, [r0]
ldr r1, [r0, #8]
add r1, r1, #1
str r1, [r0, #8]
bx lr
arm_func_end func_ov61_021617b0
.global func_ov61_021617e4
arm_func_start func_ov61_021617e4
func_ov61_021617e4: ; 0x021617e4
ldr r2, [r0]
str r2, [r1, #0x20]
str r1, [r0]
ldr r2, [r0, #4]
cmp r2, #0
streq r1, [r0, #4]
ldr r1, [r0, #8]
add r1, r1, #1
str r1, [r0, #8]
bx lr
arm_func_end func_ov61_021617e4
.global func_ov61_0216180c
arm_func_start func_ov61_0216180c
func_ov61_0216180c: ; 0x0216180c
ldr r2, [r0]
cmp r2, #0
beq _02161838
ldr r1, [r2, #0x20]
str r1, [r0]
cmp r1, #0
moveq r1, #0
streq r1, [r0, #4]
ldr r1, [r0, #8]
sub r1, r1, #1
str r1, [r0, #8]
_02161838:
mov r0, r2
bx lr
arm_func_end func_ov61_0216180c
.global func_ov61_02161840
arm_func_start func_ov61_02161840
func_ov61_02161840: ; 0x02161840
ldr r2, [r0]
mov r3, #0
cmp r2, #0
beq _021618a4
_02161850:
cmp r2, r1
bne _02161894
cmp r3, #0
ldrne r1, [r2, #0x20]
strne r1, [r3, #0x20]
ldr r1, [r0]
cmp r1, r2
ldreq r1, [r2, #0x20]
streq r1, [r0]
ldr r1, [r0, #4]
cmp r1, r2
streq r3, [r0, #4]
ldr r1, [r0, #8]
sub r1, r1, #1
str r1, [r0, #8]
mov r0, #1
bx lr
_02161894:
mov r3, r2
ldr r2, [r2, #0x20]
cmp r2, #0
bne _02161850
_021618a4:
mov r0, #0
bx lr
arm_func_end func_ov61_02161840
.global func_ov61_021618ac
arm_func_start func_ov61_021618ac
func_ov61_021618ac: ; 0x021618ac
mov r1, #0
str r1, [r0, #4]
str r1, [r0]
str r1, [r0, #8]
bx lr
arm_func_end func_ov61_021618ac
.global func_ov61_021618c0
arm_func_start func_ov61_021618c0
func_ov61_021618c0: ; 0x021618c0
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x110
mov r5, r0
mov r4, r1
add r0, r5, #8
bl func_ov61_021617b0
bl func_ov61_021665e8
str r0, [r4, #0x1c]
mov r0, #2
strb r0, [sp, #9]
ldrb r1, [r4, #0x14]
tst r1, #0x20
addne sp, sp, #0x110
ldmneia sp!, {r3, r4, r5, pc}
ldr r0, [r5]
cmp r0, #1
bne _021619c4
mov r2, #0xfe
mov r1, #0xfd
mov r0, #0
strb r2, [sp, #0x10]
strb r1, [sp, #0x11]
strb r0, [sp, #0x12]
ldrb r2, [r4, #0x1c]
ldrb r1, [r4, #0x1d]
add r3, sp, #0x13
strb r2, [r3]
strb r1, [r3, #1]
ldrb r2, [r4, #0x1e]
ldrb r1, [r4, #0x1f]
strb r2, [r3, #2]
strb r1, [r3, #3]
ldrb r1, [r4, #0x14]
tst r1, #4
beq _021619ac
ldr r1, [r5, #0x40]
strb r1, [sp, #0x17]
ldr r3, [r5, #0x40]
cmp r3, #0
ble _02161984
add r2, sp, #0x10
_02161964:
add r1, r5, r0
ldrb r1, [r1, #0x2c]
add r0, r0, #1
strb r1, [r2, #8]
ldr r3, [r5, #0x40]
add r2, r2, #1
cmp r0, r3
blt _02161964
_02161984:
add r1, sp, #0x10
add r0, r3, #8
mov r2, #0
strb r2, [r1, r0]
ldr r0, [r5, #0x40]
add r0, r0, #9
strb r2, [r1, r0]
ldr r0, [r5, #0x40]
add r2, r0, #0xa
b _02161a34
_021619ac:
mov r0, #0xff
strb r0, [sp, #0x17]
strb r0, [sp, #0x18]
strb r0, [sp, #0x19]
mov r2, #0xa
b _02161a34
_021619c4:
tst r1, #4
add ip, sp, #0x10
beq _02161a08
ldr r3, _02161a98 ; =data_ov61_0217beb4
mov r2, #6
_021619d8:
ldrb r1, [r3]
ldrb r0, [r3, #1]
add r3, r3, #2
strb r1, [ip]
strb r0, [ip, #1]
add ip, ip, #2
subs r2, r2, #1
bne _021619d8
ldrb r0, [r3]
mov r2, #0xd
strb r0, [ip]
b _02161a34
_02161a08:
ldr r3, _02161a9c ; =data_ov61_0217bec4
mov r2, #4
_02161a10:
ldrb r1, [r3]
ldrb r0, [r3, #1]
add r3, r3, #2
strb r1, [ip]
strb r0, [ip, #1]
add ip, ip, #2
subs r2, r2, #1
bne _02161a10
mov r2, #8
_02161a34:
ldr r1, [r4]
ldr r0, [r5, #0x28]
cmp r1, r0
bne _02161a64
ldrb r0, [r4, #0x15]
tst r0, #2
beq _02161a64
ldr r0, [r4, #8]
str r0, [sp, #0xc]
ldrh r0, [r4, #0xc]
strh r0, [sp, #0xa]
b _02161a70
_02161a64:
str r1, [sp, #0xc]
ldrh r0, [r4, #4]
strh r0, [sp, #0xa]
_02161a70:
add r1, sp, #8
str r1, [sp]
mov r0, #8
str r0, [sp, #4]
ldr r0, [r5, #0x20]
add r1, sp, #0x10
mov r3, #0
bl func_ov61_02166c04
add sp, sp, #0x110
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_021618c0
_02161a98: .word data_ov61_0217beb4
_02161a9c: .word data_ov61_0217bec4
.global func_ov61_02161aa0
arm_func_start func_ov61_02161aa0
func_ov61_02161aa0: ; 0x02161aa0
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
mov r4, r2
cmp r3, #0
bne _02161ac8
ldr r0, _02161b10 ; =data_ov61_02181024
ldr r0, [r0]
cmp r0, #1
ldmneia sp!, {r4, r5, r6, pc}
_02161ac8:
bl func_ov61_0216664c
stmia r6, {r4, r5}
mov r2, #0
ldr r3, [sp, #0x10]
str r2, [r6, #0x40]
ldr r1, [sp, #0x14]
str r3, [r6, #0x44]
str r1, [r6, #0x48]
mov r0, #2
mov r1, r0
str r2, [r6, #0x28]
bl func_ov61_02166a84
str r0, [r6, #0x20]
add r0, r6, #0x14
bl func_ov61_021618ac
add r0, r6, #8
bl func_ov61_021618ac
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02161aa0
_02161b10: .word data_ov61_02181024
.global func_ov61_02161b14
arm_func_start func_ov61_02161b14
func_ov61_02161b14: ; 0x02161b14
str r1, [r0, #0x28]
bx lr
arm_func_end func_ov61_02161b14
.global func_ov61_02161b1c
arm_func_start func_ov61_02161b1c
func_ov61_02161b1c: ; 0x02161b1c
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x14
bl func_ov61_021618ac
add r0, r4, #8
bl func_ov61_021618ac
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02161b1c
.global func_ov61_02161b38
arm_func_start func_ov61_02161b38
func_ov61_02161b38: ; 0x02161b38
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, [r4, #0x20]
bl func_ov61_02166a98
mvn r1, #0
add r0, r4, #0x14
str r1, [r4, #0x20]
bl func_ov61_021618ac
add r0, r4, #8
bl func_ov61_021618ac
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02161b38
.global func_ov61_02161b64
arm_func_start func_ov61_02161b64
func_ov61_02161b64: ; 0x02161b64
stmdb sp!, {r3, lr}
ldrb ip, [r1, #0x14]
cmp r3, #0
and ip, ip, #0xc3
strb ip, [r1, #0x14]
bne _02161b8c
ldrb r3, [r1, #0x14]
orr r3, r3, #4
strb r3, [r1, #0x14]
b _02161bac
_02161b8c:
cmp r3, #1
bne _02161ba4
ldrb r3, [r1, #0x14]
orr r3, r3, #8
strb r3, [r1, #0x14]
b _02161bac
_02161ba4:
cmp r3, #2
ldmeqia sp!, {r3, pc}
_02161bac:
ldr ip, [r0, #0x10]
ldr r3, [r0, #4]
cmp ip, r3
bge _02161bc4
bl func_ov61_021618c0
ldmia sp!, {r3, pc}
_02161bc4:
cmp r2, #0
add r0, r0, #0x14
beq _02161bd8
bl func_ov61_021617e4
ldmia sp!, {r3, pc}
_02161bd8:
bl func_ov61_021617b0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02161b64
.global func_ov61_02161be0
arm_func_start func_ov61_02161be0
func_ov61_02161be0: ; 0x02161be0
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
mov r8, r2
ldrsb r2, [r8]
mov r10, r0
mov r9, r1
mov r7, r3
cmp r2, #0
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
ldrb r0, [r9, #0x14]
add r8, r8, #5
sub r7, r7, #5
tst r0, #4
beq _02161c7c
ldr r0, [r10, #0x40]
mov r6, #0
cmp r0, #0
ble _02161c6c
ldr r4, _02161cdc ; =data_ov61_0217e4e8
_02161c28:
mov r0, r8
mov r1, r7
bl func_ov61_02163490
movs r5, r0
bmi _02161c6c
add r0, r10, r6
ldrb r1, [r0, #0x2c]
mov r0, r9
mov r2, r8
ldr r1, [r4, r1, lsl #2]
bl func_ov61_0216218c
ldr r0, [r10, #0x40]
add r6, r6, #1
cmp r6, r0
add r8, r8, r5
sub r7, r7, r5
blt _02161c28
_02161c6c:
ldrb r0, [r9, #0x14]
orr r0, r0, #0x41
strb r0, [r9, #0x14]
b _02161c98
_02161c7c:
mov r0, r9
mov r1, r8
mov r2, r7
bl func_ov61_02162500
ldrb r0, [r9, #0x14]
orr r0, r0, #0x43
strb r0, [r9, #0x14]
_02161c98:
ldrb r0, [r9, #0x14]
and r0, r0, #0xf3
strb r0, [r9, #0x14]
bl func_ov61_021665e8
ldr r2, [r9, #0x1c]
mov r1, r9
sub r0, r0, r2
str r0, [r9, #0x1c]
add r0, r10, #8
bl func_ov61_02161840
ldr r3, [r10, #0x48]
ldr r4, [r10, #0x44]
mov r0, r10
mov r2, r9
mov r1, #0
blx r4
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
.align 2, 0
arm_func_end func_ov61_02161be0
_02161cdc: .word data_ov61_0217e4e8
.global func_ov61_02161ce0
arm_func_start func_ov61_02161ce0
func_ov61_02161ce0: ; 0x02161ce0
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r4, r1
mov r7, r2
mov r5, r0
ldr r1, _02161d74 ; =data_ov61_0217bed0
mov r0, r7
bl strstr
cmp r0, #0
movne r6, #1
moveq r6, #0
mov r0, r4
mov r1, r7
bl func_ov61_02162480
cmp r6, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldrb r0, [r4, #0x14]
tst r0, #4
orrne r0, r0, #0x41
orreq r0, r0, #0x42
strb r0, [r4, #0x14]
ldrb r0, [r4, #0x14]
and r0, r0, #0xf3
strb r0, [r4, #0x14]
bl func_ov61_021665e8
ldr r2, [r4, #0x1c]
mov r1, r4
sub r0, r0, r2
str r0, [r4, #0x1c]
add r0, r5, #8
bl func_ov61_02161840
ldr r3, [r5, #0x48]
ldr ip, [r5, #0x44]
mov r0, r5
mov r2, r4
mov r1, #0
blx ip
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02161ce0
_02161d74: .word data_ov61_0217bed0
.global func_ov61_02161d78
arm_func_start func_ov61_02161d78
func_ov61_02161d78: ; 0x02161d78
mov r0, #1
bx lr
arm_func_end func_ov61_02161d78
.global func_ov61_02161d80
arm_func_start func_ov61_02161d80
func_ov61_02161d80: ; 0x02161d80
stmdb sp!, {r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #0x14
sub sp, sp, #0x800
movs r8, r1
mov r1, #8
mov r9, r0
str r1, [sp, #8]
ldrne r7, [r9, #0x24]
ldreq r7, [r9, #0x20]
mov r0, r7
bl func_ov61_02166914
cmp r0, #0
addeq sp, sp, #0x14
addeq sp, sp, #0x800
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, pc}
_02161dbc:
add r0, sp, #0xc
str r0, [sp]
add r4, sp, #8
ldr r2, _02161f10 ; =0x000007ff
add r1, sp, #0x14
mov r0, r7
mov r3, #0
str r4, [sp, #4]
bl func_ov61_02166bc0
mov r5, r0
mvn r0, #0
cmp r5, r0
addeq sp, sp, #0x14
addeq sp, sp, #0x800
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, pc}
add r4, sp, #0x14
mov r0, #0
strb r0, [r4, r5]
ldr r6, [r9, #8]
cmp r6, #0
beq _02161ef4
_02161e10:
cmp r8, #0
beq _02161e34
ldrb r0, [r6, #0x15]
tst r0, #8
beq _02161e34
ldr r1, [r6, #0x10]
ldr r0, [sp, #0x10]
cmp r1, r0
beq _02161e8c
_02161e34:
ldr r3, [sp, #0x10]
ldr r2, [r6]
cmp r2, r3
bne _02161e5c
ldrh r1, [r6, #4]
ldrh r0, [sp, #0xe]
cmp r1, r0
beq _02161e8c
cmp r8, #0
bne _02161e8c
_02161e5c:
ldr r0, [r9, #0x28]
cmp r2, r0
bne _02161ee8
ldrb r0, [r6, #0x15]
tst r0, #2
beq _02161ee8
ldr r0, [r6, #8]
cmp r0, r3
ldreqh r1, [r6, #0xc]
ldreqh r0, [sp, #0xe]
cmpeq r1, r0
bne _02161ee8
_02161e8c:
cmp r8, #0
beq _02161eb4
mov r0, r9
mov r1, r6
mov r2, r4
mov r3, r5
bl func_ov61_02161d78
cmp r0, #0
bne _02161ef4
b _02161ee8
_02161eb4:
ldr r0, [r9]
add r2, sp, #0x14
cmp r0, #1
mov r0, r9
bne _02161ed8
mov r1, r6
mov r3, r5
bl func_ov61_02161be0
b _02161ef4
_02161ed8:
mov r1, r6
mov r3, r5
bl func_ov61_02161ce0
b _02161ef4
_02161ee8:
ldr r6, [r6, #0x20]
cmp r6, #0
bne _02161e10
_02161ef4:
mov r0, r7
bl func_ov61_02166914
cmp r0, #0
bne _02161dbc
add sp, sp, #0x14
add sp, sp, #0x800
ldmia sp!, {r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_02161d80
_02161f10: .word 0x000007ff
.global func_ov61_02161f14
arm_func_start func_ov61_02161f14
func_ov61_02161f14: ; 0x02161f14
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r6, r0
bl func_ov61_021665e8
ldr r3, [r6, #8]
mov r5, r0
cmp r3, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r4, _02161fa0 ; =0x000009c4
mov r7, #1
_02161f38:
ldr r0, [r3, #0x1c]
add r0, r0, #0x1c4
add r0, r0, #0x800
cmp r5, r0
ldmlsia sp!, {r3, r4, r5, r6, r7, pc}
ldrb r2, [r3, #0x15]
mov r0, r6
mov r1, r7
orr r2, r2, #0x10
strb r2, [r3, #0x15]
ldr r2, [r6, #8]
str r4, [r2, #0x1c]
ldr r3, [r6, #8]
ldrb r2, [r3, #0x15]
and r2, r2, #0xd3
strb r2, [r3, #0x15]
ldr r2, [r6, #8]
ldr r3, [r6, #0x48]
ldr ip, [r6, #0x44]
blx ip
add r0, r6, #8
bl func_ov61_0216180c
ldr r3, [r6, #8]
cmp r3, #0
bne _02161f38
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02161f14
_02161fa0: .word 0x000009c4
.global func_ov61_02161fa4
arm_func_start func_ov61_02161fa4
func_ov61_02161fa4: ; 0x02161fa4
stmdb sp!, {r4, lr}
mov r4, r0
b _02161fc4
_02161fb0:
add r0, r4, #0x14
bl func_ov61_0216180c
mov r1, r0
mov r0, r4
bl func_ov61_021618c0
_02161fc4:
ldr r1, [r4, #0x10]
ldr r0, [r4, #4]
cmp r1, r0
ldmgeia sp!, {r4, pc}
ldr r0, [r4, #0x1c]
cmp r0, #0
bgt _02161fb0
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02161fa4
.global func_ov61_02161fe4
arm_func_start func_ov61_02161fe4
func_ov61_02161fe4: ; 0x02161fe4
stmdb sp!, {r4, lr}
mov r4, r0
ldr r1, [r4, #0x10]
cmp r1, #0
ldmeqia sp!, {r4, pc}
mov r1, #0
bl func_ov61_02161d80
mov r0, r4
bl func_ov61_02161f14
ldr r0, [r4, #0x1c]
cmp r0, #0
ble _0216201c
mov r0, r4
bl func_ov61_02161fa4
_0216201c:
ldr r0, [r4, #0x10]
cmp r0, #0
ldmneia sp!, {r4, pc}
ldr r3, [r4, #0x48]
ldr ip, [r4, #0x44]
mov r0, r4
mov r1, #2
mov r2, #0
blx ip
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02161fe4
.global func_ov61_02162044
arm_func_start func_ov61_02162044
func_ov61_02162044: ; 0x02162044
ldr r3, [r0, #0x40]
cmp r3, #0x14
bxge lr
add r2, r3, #1
str r2, [r0, #0x40]
add r0, r0, r3
strb r1, [r0, #0x2c]
bx lr
arm_func_end func_ov61_02162044
.global func_ov61_02162064
arm_func_start func_ov61_02162064
func_ov61_02162064: ; 0x02162064
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
add r0, r5, #8
mov r4, r1
bl func_ov61_02161840
cmp r0, #0
ldmneia sp!, {r3, r4, r5, pc}
mov r1, r4
add r0, r5, #0x14
bl func_ov61_02161840
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02162064
.global func_ov61_02162090
arm_func_start func_ov61_02162090
func_ov61_02162090: ; 0x02162090
ldr ip, _0216209c ; =func_ov61_021626d8
ldr r0, [r0]
bx ip
.align 2, 0
arm_func_end func_ov61_02162090
_0216209c: .word func_ov61_021626d8
.global func_ov61_021620a0
arm_func_start func_ov61_021620a0
func_ov61_021620a0: ; 0x021620a0
ldr ip, _021620b0 ; =func_0204de94
ldr r0, [r0]
ldr r1, [r1]
bx ip
.align 2, 0
arm_func_end func_ov61_021620a0
_021620b0: .word func_0204de94
.global func_ov61_021620b4
arm_func_start func_ov61_021620b4
func_ov61_021620b4: ; 0x021620b4
ldr ip, _021620c0 ; =func_ov61_0213e13c
ldr r0, [r0]
bx ip
.align 2, 0
arm_func_end func_ov61_021620b4
_021620c0: .word func_ov61_0213e13c
.global func_ov61_021620c4
arm_func_start func_ov61_021620c4
func_ov61_021620c4: ; 0x021620c4
stmdb sp!, {r3, lr}
sub sp, sp, #8
ldr r0, _02162118 ; =data_ov61_02181010
ldr r0, [r0, #8]
cmp r0, #0
bne _02162108
ldr r0, _0216211c ; =func_ov61_021620a0
ldr ip, _02162120 ; =func_ov61_021620b4
str r0, [sp]
ldr r3, _02162124 ; =func_ov61_02162090
mov r0, #8
mov r1, #0x64
mov r2, #2
str ip, [sp, #4]
bl func_ov61_02166064
ldr r1, _02162118 ; =data_ov61_02181010
str r0, [r1, #8]
_02162108:
ldr r0, _02162118 ; =data_ov61_02181010
ldr r0, [r0, #8]
add sp, sp, #8
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021620c4
_02162118: .word data_ov61_02181010
_0216211c: .word func_ov61_021620a0
_02162120: .word func_ov61_021620b4
_02162124: .word func_ov61_02162090
.global func_ov61_02162128
arm_func_start func_ov61_02162128
func_ov61_02162128: ; 0x02162128
stmdb sp!, {r3, lr}
ldr r0, _02162164 ; =data_ov61_02181010
ldr r0, [r0, #8]
cmp r0, #0
ldmeqia sp!, {r3, pc}
bl func_ov61_02166218
cmp r0, #0
ldmneia sp!, {r3, pc}
ldr r0, _02162164 ; =data_ov61_02181010
ldr r0, [r0, #8]
bl func_ov61_021661a4
ldr r0, _02162164 ; =data_ov61_02181010
mov r1, #0
str r1, [r0, #8]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02162128
_02162164: .word data_ov61_02181010
.global func_ov61_02162168
arm_func_start func_ov61_02162168
func_ov61_02162168: ; 0x02162168
stmdb sp!, {r4, lr}
ldr r4, [r0]
ldr r0, [r4, #0x18]
bl func_ov61_021661a4
mov r1, #0
mov r0, r4
str r1, [r4, #0x18]
bl func_ov61_0213e13c
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02162168
.global func_ov61_0216218c
arm_func_start func_ov61_0216218c
func_ov61_0216218c: ; 0x0216218c
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #8
mov r5, r0
mov r4, r2
mov r0, #0
bl func_ov61_021633a4
str r0, [sp]
mov r1, r4
mov r0, #0
bl func_ov61_021633a4
str r0, [sp, #4]
ldr r0, [r5, #0x18]
add r1, sp, #0
bl func_ov61_0216628c
add sp, sp, #8
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0216218c
.global func_ov61_021621cc
arm_func_start func_ov61_021621cc
func_ov61_021621cc: ; 0x021621cc
stmdb sp!, {r4, r5, lr}
sub sp, sp, #0x14
mov r4, r1
mov r5, r0
ldr r1, _02162200 ; =data_ov61_0217bf00
add r0, sp, #0
bl func_020459b8
add r2, sp, #0
mov r0, r5
mov r1, r4
bl func_ov61_0216218c
add sp, sp, #0x14
ldmia sp!, {r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_021621cc
_02162200: .word data_ov61_0217bf00
.global func_ov61_02162204
arm_func_start func_ov61_02162204
func_ov61_02162204: ; 0x02162204
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #8
movs r6, r0
mov r5, r1
mov r4, r2
bne _02162230
ldr r0, _02162264 ; =data_ov61_0217bf04
ldr r1, _02162268 ; =data_ov61_0217bf0c
ldr r2, _0216226c ; =data_ov61_0217bee8
mov r3, #0x97
bl func_02042f80
_02162230:
cmp r6, #0
addeq sp, sp, #8
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
str r5, [sp]
ldr r0, [r6, #0x18]
add r1, sp, #0
bl func_ov61_021663d8
cmp r0, #0
ldrne r4, [r0, #4]
mov r0, r4
add sp, sp, #8
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02162204
_02162264: .word data_ov61_0217bf04
_02162268: .word data_ov61_0217bf0c
_0216226c: .word data_ov61_0217bee8
.global func_ov61_02162270
arm_func_start func_ov61_02162270
func_ov61_02162270: ; 0x02162270
stmdb sp!, {r4, r5, r6, lr}
mov r5, r1
mov r6, r0
ldr r1, _021622f8 ; =data_ov61_0217bf18
mov r0, r5
mov r4, r2
bl strcmp
cmp r0, #0
mov r0, r6
bne _021622a0
bl func_ov61_02162778
ldmia sp!, {r4, r5, r6, pc}
_021622a0:
mov r1, r5
mov r2, #0
bl func_ov61_02162204
cmp r0, #0
beq _021622e8
ldrb r2, [r0]
cmp r2, #0
blt _021622c8
cmp r2, #0x80
blt _021622d0
_021622c8:
mov r1, #0
b _021622e0
_021622d0:
ldr r1, _021622fc ; =data_02056d98
mov r2, r2, lsl #0x1
ldrh r1, [r1, r2]
and r1, r1, #8
_021622e0:
cmp r1, #0
bne _021622f0
_021622e8:
mov r0, r4
ldmia sp!, {r4, r5, r6, pc}
_021622f0:
bl func_0204902c
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02162270
_021622f8: .word data_ov61_0217bf18
_021622fc: .word data_02056d98
.global func_ov61_02162300
arm_func_start func_ov61_02162300
func_ov61_02162300: ; 0x02162300
stmdb sp!, {r3, r4, r5, lr}
mov r5, r2
mov r2, #0
mov r4, r3
bl func_ov61_02162204
cmp r0, #0
beq _02162328
bl func_02048688
mov r5, r0
mov r4, r1
_02162328:
mov r0, r5
mov r1, r4
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02162300
.global func_ov61_02162334
arm_func_start func_ov61_02162334
func_ov61_02162334: ; 0x02162334
ldr r0, [r0]
bx lr
arm_func_end func_ov61_02162334
.global func_ov61_0216233c
arm_func_start func_ov61_0216233c
func_ov61_0216233c: ; 0x0216233c
ldrh r0, [r0, #4]
mov r1, r0, asr #0x8
mov r0, r0, lsl #0x8
and r1, r1, #0xff
and r0, r0, #0xff00
orr r0, r1, r0
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
bx lr
arm_func_end func_ov61_0216233c
.global func_ov61_02162360
arm_func_start func_ov61_02162360
func_ov61_02162360: ; 0x02162360
ldrh r0, [r0, #4]
bx lr
arm_func_end func_ov61_02162360
.global func_ov61_02162368
arm_func_start func_ov61_02162368
func_ov61_02162368: ; 0x02162368
ldrb r0, [r0, #0x15]
and r0, r0, #2
cmp r0, #2
moveq r0, #1
movne r0, #0
bx lr
arm_func_end func_ov61_02162368
.global func_ov61_02162380
arm_func_start func_ov61_02162380
func_ov61_02162380: ; 0x02162380
ldr r0, [r0, #8]
bx lr
arm_func_end func_ov61_02162380
.global func_ov61_02162388
arm_func_start func_ov61_02162388
func_ov61_02162388: ; 0x02162388
ldrh r0, [r0, #0xc]
mov r1, r0, asr #0x8
mov r0, r0, lsl #0x8
and r1, r1, #0xff
and r0, r0, #0xff00
orr r0, r1, r0
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
bx lr
arm_func_end func_ov61_02162388
.global func_ov61_021623ac
arm_func_start func_ov61_021623ac
func_ov61_021623ac: ; 0x021623ac
str r1, [r0, #0x20]
bx lr
arm_func_end func_ov61_021623ac
.global func_ov61_021623b4
arm_func_start func_ov61_021623b4
func_ov61_021623b4: ; 0x021623b4
ldr r0, [r0, #0x20]
bx lr
arm_func_end func_ov61_021623b4
.global func_ov61_021623bc
arm_func_start func_ov61_021623bc
func_ov61_021623bc: ; 0x021623bc
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #8
ldr r1, _02162418 ; =data_ov61_0217a334
add r4, sp, #0
ldr r2, [r1]
ldr r1, [r1, #4]
mov r6, r0
str r2, [sp]
str r1, [sp, #4]
mov r5, #0
_021623e4:
ldr r1, [r4, r5, lsl #2]
mov r0, r6
bl strcmp
cmp r0, #0
addeq sp, sp, #8
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
add r5, r5, #1
cmp r5, #2
blo _021623e4
mov r0, #1
add sp, sp, #8
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_021623bc
_02162418: .word data_ov61_0217a334
.global func_ov61_0216241c
arm_func_start func_ov61_0216241c
func_ov61_0216241c: ; 0x0216241c
cmp r0, #0
ldrne r2, _0216247c ; =data_ov61_02181010
strne r0, [r2]
ldr r2, _0216247c ; =data_ov61_02181010
ldr r0, [r2]
mov ip, r0
b _02162440
_02162438:
add ip, ip, #1
str ip, [r2]
_02162440:
ldrsb r3, [ip]
cmp r3, #0
cmpne r3, r1
bne _02162438
cmp ip, r0
moveq r0, #0
cmp r3, #0
bxeq lr
ldr r1, _0216247c ; =data_ov61_02181010
mov r2, #0
ldr r3, [r1]
strb r2, [ip]
add r2, r3, #1
str r2, [r1]
bx lr
.align 2, 0
arm_func_end func_ov61_0216241c
_0216247c: .word data_ov61_02181010
.global func_ov61_02162480
arm_func_start func_ov61_02162480
func_ov61_02162480: ; 0x02162480
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
mov r10, r0
add r0, r1, #1
mov r1, #0x5c
bl func_ov61_0216241c
movs r8, r0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
mov r4, #0
mov r11, #0x5c
ldr r5, _021624fc ; =data_ov61_0217bf20
mov r7, r4
mov r6, r11
_021624b0:
mov r0, r7
mov r1, r6
bl func_ov61_0216241c
movs r9, r0
mov r0, r8
moveq r9, r5
bl func_ov61_021623bc
cmp r0, #0
beq _021624e4
mov r0, r10
mov r1, r8
mov r2, r9
bl func_ov61_0216218c
_021624e4:
mov r0, r4
mov r1, r11
bl func_ov61_0216241c
movs r8, r0
bne _021624b0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02162480
_021624fc: .word data_ov61_0217bf20
.global func_ov61_02162500
arm_func_start func_ov61_02162500
func_ov61_02162500: ; 0x02162500
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x8c
mov r10, r1
ldrsb r1, [r10]
mov r11, r0
mov r9, r2
cmp r1, #0
beq _02162580
_02162520:
mov r0, r10
mov r1, r9
bl func_ov61_02163490
cmp r0, #0
addlt sp, sp, #0x8c
ldmltia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
mov r4, r10
sub r9, r9, r0
add r10, r10, r0
mov r0, r10
mov r1, r9
bl func_ov61_02163490
cmp r0, #0
addlt sp, sp, #0x8c
ldmltia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
mov r2, r10
mov r1, r4
add r10, r10, r0
sub r9, r9, r0
mov r0, r11
bl func_ov61_0216218c
ldrsb r0, [r10]
cmp r0, #0
bne _02162520
_02162580:
mov r0, #0
add r10, r10, #1
sub r9, r9, #1
str r0, [sp]
_02162590:
cmp r9, #2
addlt sp, sp, #0x8c
ldmltia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldrb r1, [r10]
ldrb r0, [r10, #1]
add r2, sp, #8
add r10, r10, #2
strb r1, [r2]
strb r0, [r2, #1]
ldrh r0, [sp, #8]
str r10, [sp, #4]
sub r9, r9, #2
mov r1, r0, asr #0x8
mov r0, r0, lsl #0x8
and r1, r1, #0xff
and r0, r0, #0xff00
orr r0, r1, r0
strh r0, [sp, #8]
ldrsb r0, [r10]
mov r5, #0
cmp r0, #0
beq _02162620
_021625e8:
mov r0, r10
mov r1, r9
bl func_ov61_02163490
cmp r0, #0
addlt sp, sp, #0x8c
ldmltia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
cmp r0, #0x64
addgt sp, sp, #0x8c
ldmgtia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldrsb r1, [r10, r0]!
add r5, r5, #1
sub r9, r9, r0
cmp r1, #0
bne _021625e8
_02162620:
ldrh r0, [sp, #8]
add r10, r10, #1
sub r9, r9, #1
cmp r0, #0
mov r6, #0
ble _021626b8
_02162638:
ldr r8, [sp, #4]
mov r7, #0
cmp r5, #0
ble _021626a8
_02162648:
mov r0, r10
mov r1, r9
bl func_ov61_02163490
movs r4, r0
addmi sp, sp, #0x8c
ldmmiia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, _021626d4 ; =data_ov61_0217bf24
add r0, sp, #0xa
mov r2, r8
mov r3, r6
bl func_020459b8
mov r0, r11
add r1, sp, #0xa
mov r2, r10
bl func_ov61_0216218c
mov r0, r8
add r10, r10, r4
sub r9, r9, r4
bl strlen
add r0, r0, #1
add r7, r7, #1
add r8, r8, r0
cmp r7, r5
blt _02162648
_021626a8:
ldrh r0, [sp, #8]
add r6, r6, #1
cmp r6, r0
blt _02162638
_021626b8:
ldr r0, [sp]
add r0, r0, #1
str r0, [sp]
cmp r0, #2
blt _02162590
add sp, sp, #0x8c
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02162500
_021626d4: .word data_ov61_0217bf24
.global func_ov61_021626d8
arm_func_start func_ov61_021626d8
func_ov61_021626d8: ; 0x021626d8
stmdb sp!, {r3, lr}
ldrsb lr, [r0]
mov ip, #0
cmp lr, #0
beq _02162718
ldr r3, _02162728 ; =data_02056c98
ldr r2, _0216272c ; =0x9ccf9319
_021626f4:
cmp lr, #0
blt _02162708
cmp lr, #0x80
bge _02162708
ldrb lr, [r3, lr]
_02162708:
mla ip, r2, ip, lr
ldrsb lr, [r0, #1]!
cmp lr, #0
bne _021626f4
_02162718:
mov r0, ip
bl FastDivide
mov r0, r1
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021626d8
_02162728: .word data_02056c98
_0216272c: .word 0x9ccf9319
.global func_ov61_02162730
arm_func_start func_ov61_02162730
func_ov61_02162730: ; 0x02162730
stmdb sp!, {r4, lr}
mov r4, r0
ldr r1, [r4]
mov r0, #0
bl func_ov61_02163414
ldr r1, [r4, #4]
mov r0, #0
bl func_ov61_02163414
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02162730
.global func_ov61_02162754
arm_func_start func_ov61_02162754
func_ov61_02162754: ; 0x02162754
ldr ip, _02162760 ; =func_ov61_021626d8
ldr r0, [r0]
bx ip
.align 2, 0
arm_func_end func_ov61_02162754
_02162760: .word func_ov61_021626d8
.global func_ov61_02162764
arm_func_start func_ov61_02162764
func_ov61_02162764: ; 0x02162764
ldr ip, _02162774 ; =func_0204de94
ldr r0, [r0]
ldr r1, [r1]
bx ip
.align 2, 0
arm_func_end func_ov61_02162764
_02162774: .word func_0204de94
.global func_ov61_02162778
arm_func_start func_ov61_02162778
func_ov61_02162778: ; 0x02162778
ldr r0, [r0, #0x1c]
bx lr
arm_func_end func_ov61_02162778
.global func_ov61_02162780
arm_func_start func_ov61_02162780
func_ov61_02162780: ; 0x02162780
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #8
mov r0, #0x24
mov r6, r1
mov r5, r2
bl func_ov61_0213e10c
movs r4, r0
addeq sp, sp, #8
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
ldr r1, _02162820 ; =func_ov61_02162764
ldr ip, _02162824 ; =func_ov61_02162730
str r1, [sp]
mov r0, #8
ldr r3, _02162828 ; =func_ov61_02162754
mov r1, r0
mov r2, #4
str ip, [sp, #4]
bl func_ov61_02166064
str r0, [r4, #0x18]
cmp r0, #0
bne _021627ec
mov r0, r4
bl func_ov61_0213e13c
add sp, sp, #8
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
_021627ec:
mov r1, #0
strb r1, [r4, #0x14]
strb r1, [r4, #0x15]
str r1, [r4, #0x20]
str r1, [r4, #0x1c]
str r1, [r4, #0x10]
str r6, [r4]
strh r5, [r4, #4]
str r1, [r4, #8]
mov r0, r4
strh r1, [r4, #0xc]
add sp, sp, #8
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02162780
_02162820: .word func_ov61_02162764
_02162824: .word func_ov61_02162730
_02162828: .word func_ov61_02162754
.global func_ov61_0216282c
arm_func_start func_ov61_0216282c
func_ov61_0216282c: ; 0x0216282c
strb r1, [r0, #0x15]
bx lr
arm_func_end func_ov61_0216282c
.global func_ov61_02162834
arm_func_start func_ov61_02162834
func_ov61_02162834: ; 0x02162834
str r1, [r0, #8]
strh r2, [r0, #0xc]
bx lr
arm_func_end func_ov61_02162834
.global func_ov61_02162840
arm_func_start func_ov61_02162840
func_ov61_02162840: ; 0x02162840
str r1, [r0, #0x10]
bx lr
arm_func_end func_ov61_02162840
.global func_ov61_02162848
arm_func_start func_ov61_02162848
func_ov61_02162848: ; 0x02162848
strb r1, [r0, #0x14]
bx lr
arm_func_end func_ov61_02162848
.global func_ov61_02162850
arm_func_start func_ov61_02162850
func_ov61_02162850: ; 0x02162850
ldrb r0, [r0, #0x14]
bx lr
arm_func_end func_ov61_02162850
.global func_ov61_02162858
arm_func_start func_ov61_02162858
func_ov61_02162858: ; 0x02162858
ldr r1, _02162870 ; =data_ov61_02181010
ldr r1, [r1, #4]
cmp r0, r1
moveq r0, #1
movne r0, #0
bx lr
.align 2, 0
arm_func_end func_ov61_02162858
_02162870: .word data_ov61_02181010
.global func_ov61_02162874
arm_func_start func_ov61_02162874
func_ov61_02162874: ; 0x02162874
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r2
mov r4, r3
cmp r1, #6
addls pc, pc, r1, lsl #2
b _021629f8
_02162890: ; jump table
b _021628ac ; case 0
b _02162924 ; case 1
b _02162958 ; case 2
b _0216298c ; case 3
b _021629f8 ; case 4
b _021629d0 ; case 5
b _021629ec ; case 6
_021628ac:
ldr r3, [r4, #0x634]
ldr ip, [r4, #0x630]
mov r0, r4
mov r1, #0
blx ip
ldrb r0, [r5, #0x14]
tst r0, #3
beq _021628d4
tst r0, #0x40
bne _021629f8
_021628d4:
tst r0, #0x2c
ldreq r0, [r4, #0x624]
cmpeq r0, #0
bne _021629f8
ldrb r0, [r5, #0x15]
tst r0, #1
beq _0216290c
ldr r0, [r4, #0x4c]
cmp r0, #0
ldrne r0, [r4, #0x40]
cmpne r0, #0
moveq r3, #1
movne r3, #0
b _02162910
_0216290c:
mov r3, #2
_02162910:
mov r0, r4
mov r1, r5
mov r2, #0
bl func_ov61_02161b64
b _021629f8
_02162924:
ldrb r0, [r5, #0x14]
ldr r3, [r4, #0x634]
ldr ip, [r4, #0x630]
tst r0, #0x43
bne _02162948
mov r0, r4
mov r1, #2
blx ip
b _021629f8
_02162948:
mov r0, r4
mov r1, #1
blx ip
b _021629f8
_02162958:
ldrb r0, [r5, #0x14]
tst r0, #0x2c
beq _02162970
mov r0, r4
mov r1, r5
bl func_ov61_02162064
_02162970:
ldr r3, [r4, #0x634]
ldr ip, [r4, #0x630]
mov r0, r4
mov r2, r5
mov r1, #3
blx ip
b _021629f8
_0216298c:
ldr r1, [r4, #0x620]
cmp r1, #0
beq _0216299c
bl func_ov61_02163dc4
_0216299c:
ldr r0, [r6, #4]
bl func_ov61_02165a68
cmp r0, #0
ldrne r0, [r4, #0x10]
cmpne r0, #0
bne _021629f8
ldr r3, [r4, #0x634]
ldr ip, [r4, #0x630]
mov r0, r4
mov r1, #4
mov r2, #0
blx ip
b _021629f8
_021629d0:
ldr r3, [r4, #0x634]
ldr ip, [r4, #0x630]
mov r0, r4
mov r1, #5
mov r2, #0
blx ip
b _021629f8
_021629ec:
ldr r1, [r4, #0x4ec]
mov r0, r4
bl func_ov61_02161b14
_021629f8:
cmp r5, #0
ldmeqia sp!, {r4, r5, r6, pc}
ldr r1, [r5]
ldr r0, [r4, #0x628]
cmp r1, r0
ldmneia sp!, {r4, r5, r6, pc}
add r0, r4, #0x600
ldrh r1, [r5, #4]
ldrh r0, [r0, #0x2c]
cmp r1, r0
moveq r0, #0
streq r0, [r4, #0x628]
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02162874
.global func_ov61_02162a2c
arm_func_start func_ov61_02162a2c
func_ov61_02162a2c: ; 0x02162a2c
stmdb sp!, {r3, r4, r5, lr}
mov r5, r2
mov r4, r3
cmp r1, #0
beq _02162a6c
cmp r1, #1
beq _02162a54
cmp r1, #2
beq _02162a84
b _02162a98
_02162a54:
ldr r3, [r4, #0x634]
ldr ip, [r4, #0x630]
mov r0, r4
mov r1, #2
blx ip
b _02162a98
_02162a6c:
ldr r3, [r4, #0x634]
ldr ip, [r4, #0x630]
mov r0, r4
mov r1, #1
blx ip
b _02162a98
_02162a84:
ldr r3, [r4, #0x634]
ldr ip, [r4, #0x630]
mov r0, r4
mov r1, #4
blx ip
_02162a98:
cmp r5, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r1, [r5]
ldr r0, [r4, #0x628]
cmp r1, r0
ldmneia sp!, {r3, r4, r5, pc}
add r0, r4, #0x600
ldrh r1, [r5, #4]
ldrh r0, [r0, #0x2c]
cmp r1, r0
moveq r0, #0
streq r0, [r4, #0x628]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02162a2c
.global func_ov61_02162acc
arm_func_start func_ov61_02162acc
func_ov61_02162acc: ; 0x02162acc
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x10
ldr r4, [sp, #0x30]
mov r8, r0
mov r7, r1
mov r6, r2
mov r5, r3
cmp r4, #0
bne _02162b08
ldr r0, _02162b90 ; =data_ov61_02181024
ldr r0, [r0]
cmp r0, #1
addne sp, sp, #0x10
movne r0, #0
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
_02162b08:
ldr r0, _02162b94 ; =0x00000638
bl func_ov61_0213e10c
movs r4, r0
addeq sp, sp, #0x10
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
ldr r1, [sp, #0x34]
ldr r0, [sp, #0x38]
str r1, [r4, #0x630]
str r0, [r4, #0x634]
mov r0, #0
str r0, [r4, #0x624]
ldr r1, [sp, #0x30]
str r5, [sp]
ldr r0, _02162b98 ; =func_ov61_02162874
str r1, [sp, #4]
str r0, [sp, #8]
mov r1, r8
mov r2, r7
mov r3, r6
add r0, r4, #0x4c
str r4, [sp, #0xc]
bl func_ov61_021634c0
ldr r0, _02162b9c ; =func_ov61_02162a2c
ldr r1, [sp, #0x28]
str r0, [sp]
ldr r2, [sp, #0x2c]
ldr r3, [sp, #0x30]
mov r0, r4
str r4, [sp, #4]
bl func_ov61_02161aa0
mov r0, r4
add sp, sp, #0x10
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02162acc
_02162b90: .word data_ov61_02181024
_02162b94: .word 0x00000638
_02162b98: .word func_ov61_02162874
_02162b9c: .word func_ov61_02162a2c
.global func_ov61_02162ba0
arm_func_start func_ov61_02162ba0
func_ov61_02162ba0: ; 0x02162ba0
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x4c
bl func_ov61_02163e28
mov r0, r4
bl func_ov61_02161b38
mov r0, r4
bl func_ov61_0213e13c
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02162ba0
.global func_ov61_02162bc4
arm_func_start func_ov61_02162bc4
func_ov61_02162bc4: ; 0x02162bc4
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x108
ldr r8, [sp, #0x130]
mov r10, r0
str r1, [sp, #4]
add r4, sp, #8
mov r9, r3
mov r1, #0x40
mov r0, #0
_02162be8:
strb r0, [r4]
strb r0, [r4, #1]
strb r0, [r4, #2]
strb r0, [r4, #3]
add r4, r4, #4
subs r1, r1, #1
bne _02162be8
mov r5, #0
str r2, [r10, #0x620]
mov r6, r5
str r5, [r10, #0x40]
cmp r8, #0
ble _02162c70
ldr r4, _02162cec ; =data_ov61_0217e4e8
add r11, sp, #8
_02162c24:
ldrb r0, [r9, r6]
ldr r7, [r4, r0, lsl #2]
mov r0, r7
bl strlen
add r0, r5, r0
add r0, r0, #1
cmp r0, #0x100
bge _02162c70
ldr r1, _02162cf0 ; =data_ov61_0217bf2c
mov r2, r7
add r0, r11, r5
bl func_020459b8
add r5, r5, r0
ldrb r1, [r9, r6]
mov r0, r10
bl func_ov61_02162044
add r6, r6, #1
cmp r6, r8
blt _02162c24
_02162c70:
ldr r4, [sp, #0x13c]
ldr r2, [sp, #0x134]
ldr r3, [sp, #0x138]
add r1, sp, #8
add r0, r10, #0x4c
str r4, [sp]
bl func_ov61_02163aac
cmp r0, #0
addne sp, sp, #0x108
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, [sp, #4]
cmp r1, #0
addne sp, sp, #0x108
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
mov r4, #0xa
b _02162cc0
_02162cb0:
mov r0, r4
bl func_ov61_02166640
mov r0, r10
bl func_ov61_02162df4
_02162cc0:
ldr r1, [r10, #0x4c]
cmp r1, #3
beq _02162cb0
ldr r1, [r10, #0x10]
cmp r1, #0
addle sp, sp, #0x108
ldmleia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
cmp r0, #0
beq _02162cb0
add sp, sp, #0x108
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02162bc4
_02162cec: .word data_ov61_0217e4e8
_02162cf0: .word data_ov61_0217bf2c
.global func_ov61_02162cf4
arm_func_start func_ov61_02162cf4
func_ov61_02162cf4: ; 0x02162cf4
stmdb sp!, {r3, lr}
sub sp, sp, #0x10
ldr lr, [sp, #0x18]
ldr ip, [sp, #0x1c]
str lr, [sp]
str ip, [sp, #4]
mov lr, #0x80
ldr ip, [sp, #0x20]
str lr, [sp, #8]
str ip, [sp, #0xc]
bl func_ov61_02162bc4
add sp, sp, #0x10
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02162cf4
.global func_ov61_02162d28
arm_func_start func_ov61_02162d28
func_ov61_02162d28: ; 0x02162d28
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
mov r5, r0
mov r6, r2
mov r0, r1
mov r4, r3
bl func_ov61_02166cc4
mov r3, r6, asr #0x8
mov r2, r6, lsl #0x8
ldr ip, [sp, #0x18]
mov r1, r0
str ip, [sp]
and r3, r3, #0xff
and r0, r2, #0xff00
orr r0, r3, r0
mov r2, r0, lsl #0x10
mov r3, r4
add r0, r5, #0x4c
mov r2, r2, lsr #0x10
bl func_ov61_02165198
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
arm_func_end func_ov61_02162d28
.global func_ov61_02162d80
arm_func_start func_ov61_02162d80
func_ov61_02162d80: ; 0x02162d80
stmdb sp!, {r4, r5, r6, lr}
mov r5, r0
mov r6, r2
mov r0, r1
mov r4, r3
bl func_ov61_02166cc4
mov r3, r6, asr #0x8
mov r2, r6, lsl #0x8
mov r1, r0
and r3, r3, #0xff
and r0, r2, #0xff00
orr r0, r3, r0
mov r2, r0, lsl #0x10
mov r3, r4
add r0, r5, #0x4c
mov r2, r2, lsr #0x10
bl func_ov61_021652c0
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02162d80
.global func_ov61_02162dc8
arm_func_start func_ov61_02162dc8
func_ov61_02162dc8: ; 0x02162dc8
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x4c
bl func_ov61_02163164
mov r1, r0
mvn r0, #0
cmp r1, r0
ldmeqia sp!, {r4, pc}
add r0, r4, #0x4c
bl func_ov61_0216325c
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02162dc8
.global func_ov61_02162df4
arm_func_start func_ov61_02162df4
func_ov61_02162df4: ; 0x02162df4
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_02161fe4
add r0, r4, #0x4c
bl func_ov61_0216549c
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02162df4
.global func_ov61_02162e0c
arm_func_start func_ov61_02162e0c
func_ov61_02162e0c: ; 0x02162e0c
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x4c
bl func_ov61_02163dc4
mov r0, r4
bl func_ov61_02161b1c
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02162e0c
.global func_ov61_02162e28
arm_func_start func_ov61_02162e28
func_ov61_02162e28: ; 0x02162e28
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_02162e0c
add r0, r4, #0x4c
bl func_ov61_02163324
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02162e28
.global func_ov61_02162e40
arm_func_start func_ov61_02162e40
func_ov61_02162e40: ; 0x02162e40
ldr r1, [r0, #0x10]
cmp r1, #0
movgt r0, #2
bxgt lr
ldr r0, [r0, #0x4c]
cmp r0, #3
cmpne r0, #0
moveq r0, #1
bxeq lr
cmp r0, #1
moveq r0, #0
movne r0, #3
bx lr
arm_func_end func_ov61_02162e40
.global func_ov61_02162e74
arm_func_start func_ov61_02162e74
func_ov61_02162e74: ; 0x02162e74
ldr ip, _02162e80 ; =func_ov61_021632b8
add r0, r0, #0x4c
bx ip
.align 2, 0
arm_func_end func_ov61_02162e74
_02162e80: .word func_ov61_021632b8
.global func_ov61_02162e84
arm_func_start func_ov61_02162e84
func_ov61_02162e84: ; 0x02162e84
ldr ip, _02162e90 ; =func_ov61_021632a8
add r0, r0, #0x4c
bx ip
.align 2, 0
arm_func_end func_ov61_02162e84
_02162e90: .word func_ov61_021632a8
.global func_ov61_02162e94
arm_func_start func_ov61_02162e94
func_ov61_02162e94: ; 0x02162e94
ldr ip, _02162ea0 ; =func_ov61_021630b0
add r0, r0, #0x4c
bx ip
.align 2, 0
arm_func_end func_ov61_02162e94
_02162ea0: .word func_ov61_021630b0
.global func_ov61_02162ea4
arm_func_start func_ov61_02162ea4
func_ov61_02162ea4: ; 0x02162ea4
ldr r0, [r0, #0x4ec]
bx lr
arm_func_end func_ov61_02162ea4
.global func_ov61_02162eac
arm_func_start func_ov61_02162eac
func_ov61_02162eac: ; 0x02162eac
stmdb sp!, {r3, r4, r5, lr}
ldr r2, _02162f04 ; =data_ov61_0218101c
ldr r0, [r0]
ldr r2, [r2]
ldr r5, [r1]
ldr r1, [r2, #0x498]
mov r2, #0
bl func_ov61_02162270
ldr r1, _02162f04 ; =data_ov61_0218101c
mov r4, r0
ldr r1, [r1]
mov r0, r5
ldr r1, [r1, #0x498]
mov r2, #0
bl func_ov61_02162270
ldr r1, _02162f04 ; =data_ov61_0218101c
sub r0, r4, r0
ldr r1, [r1]
ldr r1, [r1, #0x49c]
cmp r1, #0
rsbeq r0, r0, #0
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02162eac
_02162f04: .word data_ov61_0218101c
.global func_ov61_02162f08
arm_func_start func_ov61_02162f08
func_ov61_02162f08: ; 0x02162f08
stmdb sp!, {r4, r5, r6, lr}
ldr r3, _02162fdc ; =data_ov61_0218101c
mov r2, #0
ldr r3, [r3]
ldr r5, [r1]
ldr r0, [r0]
ldr r1, [r3, #0x498]
mov r3, r2
bl func_ov61_02162300
ldr r3, _02162fdc ; =data_ov61_0218101c
mov r2, #0
mov r4, r0
ldr r0, [r3]
mov r6, r1
ldr r1, [r0, #0x498]
mov r0, r5
mov r3, r2
bl func_ov61_02162300
mov r2, r0
mov r3, r1
mov r0, r4
mov r1, r6
bl func_020016e8
ldr r2, _02162fdc ; =data_ov61_0218101c
mov r4, r0
ldr r0, [r2]
mov r5, r1
ldr r0, [r0, #0x49c]
cmp r0, #0
bne _02162f9c
mov r0, #0
mov r1, r0
mov r2, r4
mov r3, r5
bl func_020016e8
mov r4, r0
mov r5, r1
_02162f9c:
mov r0, r4
mov r1, r5
bl func_02000f78
mov r1, #0
bl func_0200200c
movhi r0, #1
ldmhiia sp!, {r4, r5, r6, pc}
mov r0, r4
mov r1, r5
bl func_02000f78
mov r1, #0
bl func_02002068
movlo r0, #1
movhs r0, #0
rsb r0, r0, #0
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02162f08
_02162fdc: .word data_ov61_0218101c
.global func_ov61_02162fe0
arm_func_start func_ov61_02162fe0
func_ov61_02162fe0: ; 0x02162fe0
stmdb sp!, {r3, r4, r5, lr}
ldr r2, _02163040 ; =data_ov61_0218101c
mov r5, r1
ldr r1, [r2]
ldr r0, [r0]
ldr r1, [r1, #0x498]
ldr r2, _02163044 ; =data_ov61_0217bfbc
bl func_ov61_02162204
ldr r1, _02163040 ; =data_ov61_0218101c
mov r4, r0
ldr r1, [r1]
ldr r0, [r5]
ldr r1, [r1, #0x498]
ldr r2, _02163044 ; =data_ov61_0217bfbc
bl func_ov61_02162204
mov r1, r0
mov r0, r4
bl strcmp
ldr r1, _02163040 ; =data_ov61_0218101c
ldr r1, [r1]
ldr r1, [r1, #0x49c]
cmp r1, #0
rsbeq r0, r0, #0
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02162fe0
_02163040: .word data_ov61_0218101c
_02163044: .word data_ov61_0217bfbc
.global func_ov61_02163048
arm_func_start func_ov61_02163048
func_ov61_02163048: ; 0x02163048
stmdb sp!, {r3, r4, r5, lr}
ldr r2, _021630a8 ; =data_ov61_0218101c
mov r5, r1
ldr r1, [r2]
ldr r0, [r0]
ldr r1, [r1, #0x498]
ldr r2, _021630ac ; =data_ov61_0217bfbc
bl func_ov61_02162204
ldr r1, _021630a8 ; =data_ov61_0218101c
mov r4, r0
ldr r1, [r1]
ldr r0, [r5]
ldr r1, [r1, #0x498]
ldr r2, _021630ac ; =data_ov61_0217bfbc
bl func_ov61_02162204
mov r1, r0
mov r0, r4
bl func_0204de94
ldr r1, _021630a8 ; =data_ov61_0218101c
ldr r1, [r1]
ldr r1, [r1, #0x49c]
cmp r1, #0
rsbeq r0, r0, #0
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02163048
_021630a8: .word data_ov61_0218101c
_021630ac: .word data_ov61_0217bfbc
.global func_ov61_021630b0
arm_func_start func_ov61_021630b0
func_ov61_021630b0: ; 0x021630b0
cmp r3, #3
addls pc, pc, r3, lsl #2
b _021630ec
_021630bc: ; jump table
b _021630cc ; case 0
b _021630d4 ; case 1
b _021630dc ; case 2
b _021630e4 ; case 3
_021630cc:
ldr r3, _02163110 ; =func_ov61_02162eac
b _021630f0
_021630d4:
ldr r3, _02163114 ; =func_ov61_02162f08
b _021630f0
_021630dc:
ldr r3, _02163118 ; =func_ov61_02162fe0
b _021630f0
_021630e4:
ldr r3, _0216311c ; =func_ov61_02163048
b _021630f0
_021630ec:
ldr r3, _0216311c ; =func_ov61_02163048
_021630f0:
str r2, [r0, #0x498]
str r1, [r0, #0x49c]
ldr r2, _02163120 ; =data_ov61_0218101c
ldr ip, _02163124 ; =func_ov61_02165da4
str r0, [r2]
mov r1, r3
ldr r0, [r0, #4]
bx ip
.align 2, 0
arm_func_end func_ov61_021630b0
_02163110: .word func_ov61_02162eac
_02163114: .word func_ov61_02162f08
_02163118: .word func_ov61_02162fe0
_0216311c: .word func_ov61_02163048
_02163120: .word data_ov61_0218101c
_02163124: .word func_ov61_02165da4
.global func_ov61_02163128
arm_func_start func_ov61_02163128
func_ov61_02163128: ; 0x02163128
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, [r4, #4]
add r1, sp, #0xc
bl func_ov61_02165ad8
ldr r2, [sp, #0xc]
ldr r3, [r4, #0x494]
ldr ip, [r4, #0x488]
mov r0, r4
mov r1, #0
blx ip
ldmia sp!, {r4, lr}
add sp, sp, #0x10
bx lr
arm_func_end func_ov61_02163128
.global func_ov61_02163164
arm_func_start func_ov61_02163164
func_ov61_02163164: ; 0x02163164
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
ldr r0, [r7, #4]
mov r6, r1
bl func_ov61_02165a68
mov r4, r0
cmp r4, #0
mov r5, #0
ble _021631b0
_02163188:
ldr r0, [r7, #4]
mov r1, r5
bl func_ov61_02165a70
ldr r0, [r0]
cmp r6, r0
moveq r0, r5
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
add r5, r5, #1
cmp r5, r4
blt _02163188
_021631b0:
mvn r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_02163164
.global func_ov61_021631b8
arm_func_start func_ov61_021631b8
func_ov61_021631b8: ; 0x021631b8
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r9, r0
ldr r0, [r9, #4]
mov r8, r1
mov r7, r2
bl func_ov61_02165a68
mov r4, r0
cmp r4, #0
mov r6, #0
ble _02163220
_021631e0:
ldr r0, [r9, #4]
mov r1, r6
bl func_ov61_02165a70
ldr r5, [r0]
mov r0, r5
bl func_ov61_02162334
cmp r8, r0
bne _02163214
mov r0, r5
bl func_ov61_02162360
cmp r7, r0
moveq r0, r6
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02163214:
add r6, r6, #1
cmp r6, r4
blt _021631e0
_02163220:
mvn r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
arm_func_end func_ov61_021631b8
.global func_ov61_02163228
arm_func_start func_ov61_02163228
func_ov61_02163228: ; 0x02163228
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
ldr r1, [r5, #0x5d0]
mov r0, r4
cmp r1, #0
bne _02163250
mov r1, #0
bl func_ov61_021623ac
b _02163254
_02163250:
bl func_ov61_021623ac
_02163254:
str r4, [r5, #0x5d0]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02163228
.global func_ov61_0216325c
arm_func_start func_ov61_0216325c
func_ov61_0216325c: ; 0x0216325c
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
ldr r0, [r6, #4]
mov r5, r1
bl func_ov61_02165a70
ldr r4, [r0]
ldr r3, [r6, #0x494]
ldr ip, [r6, #0x488]
mov r0, r6
mov r2, r4
mov r1, #2
blx ip
ldr r0, [r6, #4]
mov r1, r5
bl func_ov61_02165cec
mov r0, r6
mov r1, r4
bl func_ov61_02163228
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0216325c
.global func_ov61_021632a8
arm_func_start func_ov61_021632a8
func_ov61_021632a8: ; 0x021632a8
ldr ip, _021632b4 ; =func_ov61_02165a68
ldr r0, [r0, #4]
bx ip
.align 2, 0
arm_func_end func_ov61_021632a8
_021632b4: .word func_ov61_02165a68
.global func_ov61_021632b8
arm_func_start func_ov61_021632b8
func_ov61_021632b8: ; 0x021632b8
stmdb sp!, {r3, lr}
ldr r0, [r0, #4]
bl func_ov61_02165a70
ldr r0, [r0]
ldmia sp!, {r3, pc}
arm_func_end func_ov61_021632b8
.global func_ov61_021632cc
arm_func_start func_ov61_021632cc
func_ov61_021632cc: ; 0x021632cc
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
mov r6, r0
ldr r5, [r6, #0x5d0]
cmp r5, #0
addeq sp, sp, #4
ldmeqia sp!, {r3, r4, r5, r6, pc}
str r5, [sp]
beq _02163314
add r4, sp, #0
_021632f4:
mov r0, r5
bl func_ov61_021623b4
mov r5, r0
mov r0, r4
bl func_ov61_02162168
str r5, [sp]
cmp r5, #0
bne _021632f4
_02163314:
mov r0, #0
str r0, [r6, #0x5d0]
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
arm_func_end func_ov61_021632cc
.global func_ov61_02163324
arm_func_start func_ov61_02163324
func_ov61_02163324: ; 0x02163324
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
ldr r0, [r6, #4]
bl func_ov61_02165a68
mov r5, r0
cmp r5, #0
mov r4, #0
ble _02163368
_02163344:
ldr r0, [r6, #4]
mov r1, r4
bl func_ov61_02165a70
ldr r1, [r0]
mov r0, r6
bl func_ov61_02163228
add r4, r4, #1
cmp r4, r5
blt _02163344
_02163368:
ldr r0, [r6, #4]
bl func_ov61_02165f54
mov r0, r6
bl func_ov61_021632cc
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02163324
.global func_ov61_0216337c
arm_func_start func_ov61_0216337c
func_ov61_0216337c: ; 0x0216337c
stmdb sp!, {r4, lr}
mov r4, r0
mov r0, #4
mov r1, #0x64
mov r2, #0
bl func_ov61_02165938
str r0, [r4, #4]
mov r0, #0
str r0, [r4, #0x5d0]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0216337c
.global func_ov61_021633a4
arm_func_start func_ov61_021633a4
func_ov61_021633a4: ; 0x021633a4
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #8
mov r4, r1
mov r5, r0
str r4, [sp]
bl func_ov61_021620c4
add r1, sp, #0
bl func_ov61_021663d8
cmp r0, #0
beq _021633e4
ldr r1, [r0, #4]
add sp, sp, #8
add r1, r1, #1
str r1, [r0, #4]
ldr r0, [r0]
ldmia sp!, {r3, r4, r5, pc}
_021633e4:
mov r0, r4
bl func_ov61_02166654
str r0, [sp]
mov r1, #1
mov r0, r5
str r1, [sp, #4]
bl func_ov61_021620c4
add r1, sp, #0
bl func_ov61_0216628c
ldr r0, [sp]
add sp, sp, #8
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_021633a4
.global func_ov61_02163414
arm_func_start func_ov61_02163414
func_ov61_02163414: ; 0x02163414
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #8
mov r5, r0
str r1, [sp]
bl func_ov61_021620c4
add r1, sp, #0
bl func_ov61_021663d8
movs r4, r0
bne _0216344c
ldr r0, _02163484 ; =data_ov61_0217bfc0
ldr r1, _02163488 ; =data_ov61_0217bfcc
ldr r2, _0216348c ; =data_ov61_0217bf34
mov r3, #0xf4
bl func_02042f80
_0216344c:
cmp r4, #0
addeq sp, sp, #8
ldmeqia sp!, {r3, r4, r5, pc}
ldr r0, [r4, #4]
subs r0, r0, #1
addne sp, sp, #8
str r0, [r4, #4]
ldmneia sp!, {r3, r4, r5, pc}
mov r0, r5
bl func_ov61_021620c4
add r1, sp, #0
bl func_ov61_02166334
add sp, sp, #8
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02163414
_02163484: .word data_ov61_0217bfc0
_02163488: .word data_ov61_0217bfcc
_0216348c: .word data_ov61_0217bf34
.global func_ov61_02163490
arm_func_start func_ov61_02163490
func_ov61_02163490: ; 0x02163490
cmp r1, #0
mov r3, #0
ble _021634b8
_0216349c:
ldrsb r2, [r0, r3]
cmp r2, #0
addeq r0, r3, #1
bxeq lr
add r3, r3, #1
cmp r3, r1
blt _0216349c
_021634b8:
mvn r0, #0
bx lr
arm_func_end func_ov61_02163490
.global func_ov61_021634c0
arm_func_start func_ov61_021634c0
func_ov61_021634c0: ; 0x021634c0
stmdb sp!, {r3, r4, r5, r6, r7, lr}
movs r7, r0
mov r6, r1
mov r5, r2
mov r4, r3
bne _021634ec
ldr r0, _021635d0 ; =data_ov61_0217bfdc
ldr r1, _021635d4 ; =data_ov61_0217bfcc
ldr r2, _021635d8 ; =data_ov61_0217bf64
mov r3, #0x11c
bl func_02042f80
_021634ec:
ldr r0, [sp, #0x1c]
cmp r0, #0
bne _02163508
ldr r0, _021635dc ; =data_ov61_02181024
ldr r0, [r0]
cmp r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
_02163508:
mov r1, #1
mov r0, r7
str r1, [r7]
bl func_ov61_0216337c
mov r0, r7
bl func_ov61_021620c4
mov r1, r6
add r0, r7, #0xc
bl strcpy
mov r1, r5
add r0, r7, #0x30
bl strcpy
mov r1, r4
add r0, r7, #0x54
bl strcpy
ldr r1, [sp, #0x20]
mov r0, #0
str r1, [r7, #0x488]
str r0, [r7, #0x48c]
cmp r1, #0
bne _02163570
ldr r0, _021635e0 ; =data_ov61_0217bfec
ldr r1, _021635d4 ; =data_ov61_0217bfcc
ldr r2, _021635d8 ; =data_ov61_0217bf64
ldr r3, _021635e4 ; =0x00000132
bl func_02042f80
_02163570:
ldr r0, [sp, #0x24]
ldr r1, _021635e8 ; =data_ov61_0217bfbc
str r0, [r7, #0x494]
mov r3, #0
str r1, [r7, #0x498]
str r3, [r7, #0x4a0]
sub r0, r3, #1
str r0, [r7, #0x4b0]
str r3, [r7, #0x7c]
str r3, [r7, #0x80]
str r3, [r7, #8]
str r0, [r7, #0x484]
str r3, [r7, #0x480]
ldr r2, [sp, #0x18]
str r3, [r7, #0x4a4]
mov r0, r7
str r2, [r7, #0x4b8]
bl func_ov61_02164518
mov r0, #0
str r0, [r7, #0x5cc]
bl func_ov61_021665e8
bl func_02045b7c
bl func_ov61_0216664c
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_021634c0
_021635d0: .word data_ov61_0217bfdc
_021635d4: .word data_ov61_0217bfcc
_021635d8: .word data_ov61_0217bf64
_021635dc: .word data_ov61_02181024
_021635e0: .word data_ov61_0217bfec
_021635e4: .word 0x00000132
_021635e8: .word data_ov61_0217bfbc
.global func_ov61_021635ec
arm_func_start func_ov61_021635ec
func_ov61_021635ec: ; 0x021635ec
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r4, r0
ldr r5, [r4, #0x80]
cmp r5, #0
ble _02163678
ldr r0, _021636a0 ; =data_ov61_0217bf30
ldr r6, [r0]
mov r0, r6
bl strlen
cmp r5, r0
bls _02163678
ldr r0, _021636a0 ; =data_ov61_0217bf30
ldr r5, [r4, #0x7c]
ldr r7, [r0]
mov r0, r7
bl strlen
mov r2, r0
mov r0, r5
mov r1, r7
bl strncmp
cmp r0, #0
bne _02163678
mov r0, r6
bl strlen
mov r1, r0
mov r0, r4
add r1, r5, r1
bl func_ov61_02164518
ldr r0, _021636a4 ; =data_ov61_02181014
ldr r3, [r4, #0x494]
ldr r2, [r0]
ldr ip, [r4, #0x488]
mov r0, r4
mov r1, #5
blx ip
_02163678:
ldr r0, _021636a4 ; =data_ov61_02181014
ldr r3, [r4, #0x494]
ldr r2, [r0]
ldr ip, [r4, #0x488]
mov r0, r4
mov r1, #4
blx ip
mov r0, r4
bl func_ov61_02163dc4
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_021635ec
_021636a0: .word data_ov61_0217bf30
_021636a4: .word data_ov61_02181014
.global func_ov61_021636a8
arm_func_start func_ov61_021636a8
func_ov61_021636a8: ; 0x021636a8
stmdb sp!, {r3, lr}
ldrsb lr, [r0]
mov ip, #0
cmp lr, #0
beq _021636e8
ldr r3, _021636f8 ; =data_02056c98
ldr r2, _021636fc ; =0x9ccf9319
_021636c4:
cmp lr, #0
blt _021636d8
cmp lr, #0x80
bge _021636d8
ldrb lr, [r3, lr]
_021636d8:
mla ip, r2, ip, lr
ldrsb lr, [r0, #1]!
cmp lr, #0
bne _021636c4
_021636e8:
mov r0, ip
bl FastDivide
mov r0, r1
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021636a8
_021636f8: .word data_02056c98
_021636fc: .word 0x9ccf9319
.global func_ov61_02163700
arm_func_start func_ov61_02163700
func_ov61_02163700: ; 0x02163700
stmdb sp!, {r4, lr}
sub sp, sp, #0x88
mov r4, r0
add r0, r4, #0xc
mov r1, #0x14
bl func_ov61_021636a8
ldr r1, _02163820 ; =data_ov61_0218101c
mov r3, r0
ldr r1, [r1, #4]
add r0, sp, #8
cmp r1, #0
beq _02163738
bl strcpy
b _02163744
_02163738:
ldr r1, _02163824 ; =data_ov61_0217c000
add r2, r4, #0xc
bl func_020459b8
_02163744:
ldr r1, _02163828 ; =0x0000ee70
mov r2, #2
add r0, sp, #8
strb r2, [sp, #1]
strh r1, [sp, #2]
bl func_ov61_02166cc4
mvn r1, #0
str r0, [sp, #4]
cmp r0, r1
bne _021637b0
add r0, sp, #8
bl func_ov61_021590ac
cmp r0, #0
addeq sp, sp, #0x88
moveq r0, #2
ldmeqia sp!, {r4, pc}
ldr r0, [r0, #0xc]
add r3, sp, #4
ldr r2, [r0]
ldrb r1, [r2]
ldrb r0, [r2, #1]
strb r1, [r3]
strb r0, [r3, #1]
ldrb r1, [r2, #2]
ldrb r0, [r2, #3]
strb r1, [r3, #2]
strb r0, [r3, #3]
_021637b0:
ldr r0, [r4, #0x4b0]
mvn r1, #0
cmp r0, r1
bne _021637e8
mov r0, #2
mov r1, #1
mov r2, #0
bl func_ov61_02166a84
mvn r1, #0
cmp r0, r1
str r0, [r4, #0x4b0]
addeq sp, sp, #0x88
moveq r0, #1
ldmeqia sp!, {r4, pc}
_021637e8:
add r1, sp, #0
mov r2, #8
bl func_ov61_02166b20
cmp r0, #0
addeq sp, sp, #0x88
moveq r0, #0
ldmeqia sp!, {r4, pc}
ldr r0, [r4, #0x4b0]
bl func_ov61_02166a98
mvn r0, #0
str r0, [r4, #0x4b0]
mov r0, #3
add sp, sp, #0x88
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02163700
_02163820: .word data_ov61_0218101c
_02163824: .word data_ov61_0217c000
_02163828: .word 0x0000ee70
.global func_ov61_0216382c
arm_func_start func_ov61_0216382c
func_ov61_0216382c: ; 0x0216382c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
movs r7, r1
ldreq r7, _02163878 ; =data_ov61_0217bfbc
mov r4, r0
mov r0, r7
mov r6, r2
bl strlen
add r5, r0, #1
ldr r0, [r4]
mov r1, r7
mov r2, r5
bl func_02043594
ldr r0, [r6]
add r0, r0, r5
str r0, [r6]
ldr r0, [r4]
add r0, r0, r5
str r0, [r4]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0216382c
_02163878: .word data_ov61_0217bfbc
.global func_ov61_0216387c
arm_func_start func_ov61_0216387c
func_ov61_0216387c: ; 0x0216387c
ldr r3, [r0]
strb r1, [r3]
ldr r1, [r2]
add r1, r1, #1
str r1, [r2]
ldr r1, [r0]
add r1, r1, #1
str r1, [r0]
bx lr
arm_func_end func_ov61_0216387c
.global func_ov61_021638a0
arm_func_start func_ov61_021638a0
func_ov61_021638a0: ; 0x021638a0
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r3, lr}
add ip, sp, #0xc
ldrb r3, [ip]
ldrb r1, [ip, #1]
ldr lr, [r0]
strb r3, [lr]
strb r1, [lr, #1]
ldrb r3, [ip, #2]
ldrb r1, [ip, #3]
strb r3, [lr, #2]
strb r1, [lr, #3]
ldr r1, [r2]
add r1, r1, #4
str r1, [r2]
ldr r1, [r0]
add r1, r1, #4
str r1, [r0]
ldmia sp!, {r3, lr}
add sp, sp, #0x10
bx lr
arm_func_end func_ov61_021638a0
.global func_ov61_021638f4
arm_func_start func_ov61_021638f4
func_ov61_021638f4: ; 0x021638f4
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
ldr r0, [r6]
mov r4, r3
mov r5, r2
bl func_02043594
ldr r0, [r4]
add r0, r0, r5
str r0, [r4]
ldr r0, [r6]
add r0, r0, r5
str r0, [r6]
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_021638f4
.global func_ov61_02163928
arm_func_start func_ov61_02163928
func_ov61_02163928: ; 0x02163928
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
mov r10, r0
bl func_02045b48
ldr r5, _02163a10 ; =0x2c0b02c1
mov r8, #0
smull r2, r4, r5, r0
mov r1, r0, lsr #0x1f
add r4, r1, r4, asr #4
mov r3, #0x5d
smull r1, r2, r3, r4
sub r4, r0, r1
add r0, r4, #0x21
mov r7, #1
strb r0, [r10, #0x74]
mov r11, r8
mov r6, r7
mov r4, r3
_0216396c:
add r9, r10, r7
ldrsb r3, [r9, #0x73]
ldrsb r0, [r10, #0x74]
cmp r3, r0
eor r3, r7, r3
movlt r1, r6
and r3, r3, #1
movge r1, r11
cmp r0, #0x4f
movlt r2, #1
and r0, r0, #1
eor r3, r8, r3
movge r2, #0
eor r0, r0, r3
eor r0, r0, r2
eor r8, r0, r1
bl func_02045b48
smull r2, r3, r5, r0
mov r1, r0, lsr #0x1f
add r3, r1, r3, asr #4
smull r1, r2, r4, r3
sub r3, r0, r1
add r0, r3, #0x21
cmp r8, #0
strb r0, [r9, #0x74]
beq _021639e0
ldrsb r0, [r9, #0x74]
tst r0, #1
beq _021639f4
_021639e0:
cmp r8, #0
ldreqsb r0, [r9, #0x74]
andeq r0, r0, #1
cmpeq r0, #1
bne _02163a00
_021639f4:
ldrsb r0, [r9, #0x74]
add r0, r0, #1
strb r0, [r9, #0x74]
_02163a00:
add r7, r7, #1
cmp r7, #8
blt _0216396c
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02163928
_02163a10: .word 0x2c0b02c1
.global func_ov61_02163a14
arm_func_start func_ov61_02163a14
func_ov61_02163a14: ; 0x02163a14
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
mov r10, r0
mov r9, r1
mov r8, r2
mov r7, #1
mov r11, #2
mov r5, #0
_02163a30:
ldr r0, [r10, #0x4b0]
mov r1, r9
mov r2, r8
mov r3, r5
sub r7, r7, #1
bl func_ov61_02166bf0
mov r6, r0
cmp r6, #0
bgt _02163a9c
cmp r7, #0
blt _02163a9c
mov r0, r10
bl func_ov61_02163dc4
mov r1, #0
mov r2, r1
mov r0, r10
mov r3, r11
str r2, [sp]
bl func_ov61_02163aac
movs r4, r0
beq _02163a94
mov r0, r10
bl func_ov61_021635ec
mov r0, r4
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02163a94:
cmp r7, #0
bge _02163a30
_02163a9c:
cmp r6, #0
movle r0, #3
movgt r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_02163a14
.global func_ov61_02163aac
arm_func_start func_ov61_02163aac
func_ov61_02163aac: ; 0x02163aac
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0x30c
mov r5, r0
ldr r0, [r5]
mov r7, r1
mov r6, r2
mov r4, r3
cmp r0, #1
beq _02163ae4
ldr r0, _02163d08 ; =data_ov61_0217c01c
ldr r1, _02163d0c ; =data_ov61_0217bfcc
ldr r2, _02163d10 ; =data_ov61_0217bfa0
ldr r3, _02163d14 ; =0x0000020a
bl func_02042f80
_02163ae4:
cmp r7, #0
ldreq r7, _02163d18 ; =data_ov61_0217bfbc
cmp r6, #0
ldreq r6, _02163d18 ; =data_ov61_0217bfbc
mov r0, r7
bl strlen
cmp r0, #0x100
addhi sp, sp, #0x30c
movhi r0, #6
ldmhiia sp!, {r4, r5, r6, r7, pc}
mov r0, r6
bl strlen
cmp r0, #0x100
addhi sp, sp, #0x30c
movhi r0, #6
ldmhiia sp!, {r4, r5, r6, r7, pc}
mov r0, r5
bl func_ov61_02163700
cmp r0, #0
addne sp, sp, #0x30c
ldmneia sp!, {r4, r5, r6, r7, pc}
mov r0, r5
str r4, [r5, #0x5c4]
bl func_ov61_02163928
add r3, sp, #0xe
mov ip, #2
add r0, sp, #4
add r2, sp, #8
mov r1, #0
str ip, [sp, #8]
str r3, [sp, #4]
bl func_ov61_0216387c
add r0, sp, #4
add r2, sp, #8
mov r1, #1
bl func_ov61_0216387c
add r0, sp, #4
mov r1, #3
add r2, sp, #8
bl func_ov61_0216387c
ldr r1, [r5, #0x4b8]
add r0, sp, #4
add r2, sp, #8
bl func_ov61_021638a0
add r0, sp, #4
add r1, r5, #0xc
add r2, sp, #8
bl func_ov61_0216382c
add r0, sp, #4
add r1, r5, #0x30
add r2, sp, #8
bl func_ov61_0216382c
add r0, sp, #4
add r1, r5, #0x74
mov r2, #8
add r3, sp, #8
bl func_ov61_021638f4
mov r1, r6
add r0, sp, #4
add r2, sp, #8
bl func_ov61_0216382c
mov r1, r7
add r0, sp, #4
add r2, sp, #8
bl func_ov61_0216382c
mov r1, r4, lsl #0x18
and ip, r1, #0xff000000
mov r1, r4, lsl #0x8
and r3, r1, #0xff0000
mov r1, r4, lsr #0x18
and r2, r1, #0xff
mov r1, r4, lsr #0x8
and r1, r1, #0xff00
orr r1, r2, r1
orr r1, r3, r1
add r0, sp, #4
orr r1, ip, r1
add r2, sp, #8
bl func_ov61_021638a0
ldr r0, [r5, #0x5c4]
tst r0, #8
beq _02163c3c
ldr r1, [r5, #0x4a4]
add r0, sp, #4
add r2, sp, #8
bl func_ov61_021638a0
_02163c3c:
ldr r0, [r5, #0x5c4]
tst r0, #0x80
beq _02163c58
ldr r1, [sp, #0x320]
add r0, sp, #4
add r2, sp, #8
bl func_ov61_021638a0
_02163c58:
ldr r2, [sp, #8]
add r4, sp, #0
mov r0, r2, lsl #0x10
mov r0, r0, lsr #0x10
mov r1, r0, asr #0x8
mov r0, r0, lsl #0x8
and r1, r1, #0xff
and r0, r0, #0xff00
orr r0, r1, r0
strh r0, [sp]
ldrb r3, [r4]
add r1, sp, #0xc
ldrb r0, [r4, #1]
strb r3, [r1]
mov r3, #0
strb r0, [r1, #1]
ldr r0, [r5, #0x4b0]
bl func_ov61_02166bf0
cmp r0, #0
bgt _02163cbc
mov r0, r5
bl func_ov61_02163dc4
add sp, sp, #0x30c
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, pc}
_02163cbc:
mov r0, #3
str r0, [r5]
mov r0, #0
str r0, [r5, #0x5c8]
ldr r0, [r5, #0x7c]
cmp r0, #0
bne _02163cfc
mov r0, #0x1000
bl func_ov61_0213e10c
cmp r0, #0
str r0, [r5, #0x7c]
addeq sp, sp, #0x30c
moveq r0, #5
ldmeqia sp!, {r4, r5, r6, r7, pc}
mov r0, #0
str r0, [r5, #0x80]
_02163cfc:
mov r0, #0
add sp, sp, #0x30c
ldmia sp!, {r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02163aac
_02163d08: .word data_ov61_0217c01c
_02163d0c: .word data_ov61_0217bfcc
_02163d10: .word data_ov61_0217bfa0
_02163d14: .word 0x0000020a
_02163d18: .word data_ov61_0217bfbc
.global func_ov61_02163d1c
arm_func_start func_ov61_02163d1c
func_ov61_02163d1c: ; 0x02163d1c
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r0, [r5, #0x480]
mov r4, #0
cmp r0, #0
ble _02163d54
_02163d34:
add r0, r5, r4, lsl #2
ldr r1, [r0, #0x84]
mov r0, r5
bl func_ov61_02163414
ldr r0, [r5, #0x480]
add r4, r4, #1
cmp r4, r0
blt _02163d34
_02163d54:
mov r0, #0
str r0, [r5, #0x480]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02163d1c
.global func_ov61_02163d60
arm_func_start func_ov61_02163d60
func_ov61_02163d60: ; 0x02163d60
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r0, [r5, #8]
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
mov r4, #0
bl func_ov61_02165a68
cmp r0, #0
ble _02163db0
_02163d84:
ldr r0, [r5, #8]
mov r1, r4
bl func_ov61_02165a70
ldr r1, [r0]
mov r0, r5
bl func_ov61_02163414
ldr r0, [r5, #8]
add r4, r4, #1
bl func_ov61_02165a68
cmp r4, r0
blt _02163d84
_02163db0:
ldr r0, [r5, #8]
bl func_ov61_021659fc
mov r0, #0
str r0, [r5, #8]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02163d60
.global func_ov61_02163dc4
arm_func_start func_ov61_02163dc4
func_ov61_02163dc4: ; 0x02163dc4
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, [r4, #0x7c]
cmp r0, #0
beq _02163ddc
bl func_ov61_0213e13c
_02163ddc:
mov r1, #0
str r1, [r4, #0x7c]
str r1, [r4, #0x80]
ldr r0, [r4, #0x4b0]
sub r1, r1, #1
cmp r0, r1
beq _02163dfc
bl func_ov61_02166a98
_02163dfc:
mvn r1, #0
mov r0, r4
str r1, [r4, #0x4b0]
mov r1, #1
str r1, [r4]
bl func_ov61_02163d60
mvn r1, #0
mov r0, r4
str r1, [r4, #0x484]
bl func_ov61_02163d1c
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02163dc4
.global func_ov61_02163e28
arm_func_start func_ov61_02163e28
func_ov61_02163e28: ; 0x02163e28
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_02163dc4
mov r0, r4
bl func_ov61_02163324
mov r0, r4
bl func_ov61_02162128
ldr r0, [r4, #4]
cmp r0, #0
beq _02163e54
bl func_ov61_021659fc
_02163e54:
mov r0, #0
str r0, [r4, #4]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02163e28
.global func_ov61_02163e60
arm_func_start func_ov61_02163e60
func_ov61_02163e60: ; 0x02163e60
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r9, r0
mov r7, r2
add r0, r9, #0x54
mov r8, r1
bl strlen
mov r5, r0
cmp r7, #0
add r6, r9, #0x54
mov r4, #0
ble _02163ee8
_02163e8c:
mov r0, r4
mov r1, r5
bl func_02002c14
ldrsb r1, [r6, r1]
mov r2, r4, lsr #0x1f
rsb r0, r2, r4, lsl #29
mul r3, r4, r1
mov r1, r3, lsr #0x1f
add r2, r2, r0, ror #29
rsb r0, r1, r3, lsl #29
add r2, r9, r2
add r3, r1, r0, ror #29
ldrsb r0, [r8, r4]
ldrsb r1, [r2, #0x74]
add r2, r9, r3
add r4, r4, #1
eor r0, r1, r0
ldrsb r1, [r2, #0x74]
mov r0, r0, lsl #0x18
cmp r4, r7
eor r0, r1, r0, asr #24
strb r0, [r2, #0x74]
blt _02163e8c
_02163ee8:
add r0, r9, #0xbc
add r0, r0, #0x400
add r1, r9, #0x74
mov r2, #8
bl func_ov61_021615e0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
arm_func_end func_ov61_02163e60
.global func_ov61_02163f00
arm_func_start func_ov61_02163f00
func_ov61_02163f00: ; 0x02163f00
mov r1, #5
tst r0, #2
addne r1, r1, #4
tst r0, #8
addne r1, r1, #4
tst r0, #0x10
addne r1, r1, #2
tst r0, #0x20
addne r1, r1, #2
mov r0, r1
bx lr
arm_func_end func_ov61_02163f00
.global func_ov61_02163f2c
arm_func_start func_ov61_02163f2c
func_ov61_02163f2c: ; 0x02163f2c
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
b _02163f7c
_02163f3c:
mov r0, r5
mov r1, r4
bl func_ov61_02163490
cmp r0, #0
movlt r0, #0
ldmltia sp!, {r3, r4, r5, pc}
sub r4, r4, r0
add r5, r5, r0
mov r0, r5
mov r1, r4
bl func_ov61_02163490
cmp r0, #0
movlt r0, #0
ldmltia sp!, {r3, r4, r5, pc}
add r5, r5, r0
sub r4, r4, r0
_02163f7c:
cmp r4, #0
ble _02163f90
ldrsb r0, [r5]
cmp r0, #0
bne _02163f3c
_02163f90:
cmp r4, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldrsb r0, [r5]
cmp r0, #0
moveq r0, #1
movne r0, #0
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02163f2c
.global func_ov61_02163fb0
arm_func_start func_ov61_02163fb0
func_ov61_02163fb0: ; 0x02163fb0
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r8, r0
ldr r0, [r8, #8]
mov r7, r1
mov r6, r2
bl func_ov61_02165a68
mov r4, r0
cmp r4, #0
mov r5, #0
ble _02164094
mvn r9, #0
_02163fdc:
ldr r0, [r8, #8]
mov r1, r5
bl func_ov61_02165a70
ldr r0, [r0, #4]
cmp r0, #0
beq _02164020
cmp r0, #1
beq _02164008
cmp r0, #2
beq _02164014
b _02164060
_02164008:
add r7, r7, #1
sub r6, r6, #1
b _0216407c
_02164014:
add r7, r7, #2
sub r6, r6, #2
b _0216407c
_02164020:
cmp r6, #1
movlt r0, #0
ldmltia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
ldrb r0, [r7], #1
sub r6, r6, #1
cmp r0, #0xff
bne _0216407c
mov r0, r7
mov r1, r6
bl func_ov61_02163490
cmp r0, r9
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
add r7, r7, r0
sub r6, r6, r0
b _0216407c
_02164060:
ldr r0, _0216409c ; =data_ov61_0217c03c
ldr r1, _021640a0 ; =data_ov61_0217bfcc
ldr r2, _021640a4 ; =data_ov61_0217bf54
ldr r3, _021640a8 ; =0x00000317
bl func_02042f80
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_0216407c:
cmp r6, #0
movlt r0, #0
ldmltia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
add r5, r5, #1
cmp r5, r4
blt _02163fdc
_02164094:
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_02163fb0
_0216409c: .word data_ov61_0217c03c
_021640a0: .word data_ov61_0217bfcc
_021640a4: .word data_ov61_0217bf54
_021640a8: .word 0x00000317
.global func_ov61_021640ac
arm_func_start func_ov61_021640ac
func_ov61_021640ac: ; 0x021640ac
stmdb sp!, {r4, lr}
cmp r2, #5
ldmltia sp!, {r4, pc}
ldrb r4, [r1]
ldrb lr, [r1, #1]
ldrb ip, [r1, #2]
tst r4, #0x10
strb lr, [r3]
strb ip, [r3, #1]
ldrb lr, [r1, #3]
ldrb ip, [r1, #4]
strb lr, [r3, #2]
strb ip, [r3, #3]
beq _02164108
sub r0, r2, #5
cmp r0, #2
ldmltia sp!, {r4, pc}
ldrb r2, [r1, #5]
ldrb r0, [r1, #6]
ldr r1, [sp, #8]
strb r2, [r1]
strb r0, [r1, #1]
ldmia sp!, {r4, pc}
_02164108:
add r0, r0, #0x400
ldrh r1, [r0, #0xa8]
ldr r0, [sp, #8]
strh r1, [r0]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_021640ac
.global func_ov61_0216411c
arm_func_start func_ov61_0216411c
func_ov61_0216411c: ; 0x0216411c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x10
mov r8, r2
ldrb r2, [r8], #5
mov r9, r1
mov r10, r0
mov r7, r3
str r2, [sp]
mov r0, r9
mov r1, r2
str r7, [sp, #4]
ldr r6, [sp, #0x38]
bl func_ov61_0216282c
ldr r0, [sp]
sub r7, r7, #5
tst r0, #0x10
ldr r0, [sp]
addne r8, r8, #2
subne r7, r7, #2
tst r0, #2
moveq r0, #0
streq r0, [sp, #0xc]
beq _021641a4
ldrb r1, [r8]
ldrb r0, [r8, #1]
add r2, sp, #0xc
sub r7, r7, #4
strb r1, [r2]
strb r0, [r2, #1]
ldrb r1, [r8, #2]
ldrb r0, [r8, #3]
add r8, r8, #4
strb r1, [r2, #2]
strb r0, [r2, #3]
_021641a4:
ldr r0, [sp]
tst r0, #0x20
addeq r0, r10, #0x400
ldreqh r0, [r0, #0xa8]
streqh r0, [sp, #8]
beq _021641d8
ldrb r1, [r8]
ldrb r0, [r8, #1]
add r2, sp, #8
add r8, r8, #2
strb r1, [r2]
strb r0, [r2, #1]
sub r7, r7, #2
_021641d8:
ldrh r2, [sp, #8]
ldr r1, [sp, #0xc]
mov r0, r9
bl func_ov61_02162834
ldr r0, [sp]
tst r0, #8
beq _0216422c
ldrb r2, [r8]
ldrb r1, [r8, #1]
add r3, sp, #0xc
mov r0, r9
strb r2, [r3]
strb r1, [r3, #1]
ldrb r2, [r8, #2]
ldrb r1, [r8, #3]
add r8, r8, #4
sub r7, r7, #4
strb r2, [r3, #2]
strb r1, [r3, #3]
ldr r1, [sp, #0xc]
bl func_ov61_02162840
_0216422c:
ldr r0, [sp]
tst r0, #0x40
beq _0216435c
ldr r0, [r10, #8]
bl func_ov61_02165a68
mov r4, r0
cmp r4, #0
mov r5, #0
ble _02164344
add r11, sp, #0xa
_02164254:
ldr r0, [r10, #8]
mov r1, r5
bl func_ov61_02165a70
mov r1, r0
ldr r0, [r1, #4]
cmp r0, #0
beq _021642e4
cmp r0, #1
beq _02164284
cmp r0, #2
beq _0216429c
b _02164338
_02164284:
ldrb r2, [r8], #1
ldr r1, [r1]
mov r0, r9
bl func_ov61_021621cc
sub r7, r7, #1
b _02164338
_0216429c:
ldrb r3, [r8]
ldrb r2, [r8, #1]
mov r0, r9
strb r3, [r11]
strb r2, [r11, #1]
ldrh r3, [sp, #0xa]
ldr r1, [r1]
mov r2, r3, asr #0x8
and r2, r2, #0xff
mov r3, r3, lsl #0x8
and r3, r3, #0xff00
orr r2, r2, r3
mov r2, r2, lsl #0x10
mov r2, r2, lsr #0x10
bl func_ov61_021621cc
add r8, r8, #2
sub r7, r7, #2
b _02164338
_021642e4:
cmp r6, #0
ldrneb r0, [r8], #1
subne r7, r7, #1
moveq r0, #0xff
cmp r0, #0xff
bne _02164324
ldr r1, [r1]
mov r0, r9
mov r2, r8
bl func_ov61_0216218c
mov r0, r8
bl strlen
add r0, r0, #1
add r8, r8, r0
sub r7, r7, r0
b _02164338
_02164324:
add r0, r10, r0, lsl #2
ldr r1, [r1]
ldr r2, [r0, #0x84]
mov r0, r9
bl func_ov61_0216218c
_02164338:
add r5, r5, #1
cmp r5, r4
blt _02164254
_02164344:
mov r0, r9
bl func_ov61_02162850
orr r1, r0, #1
mov r0, r9
and r1, r1, #0xff
bl func_ov61_02162848
_0216435c:
ldr r0, [sp]
tst r0, #0x80
beq _021643d8
b _021643a8
_0216436c:
mov r0, r8
mov r4, r8
bl strlen
add r3, r0, #1
add r8, r8, r3
mov r0, r9
mov r1, r4
mov r2, r8
sub r7, r7, r3
bl func_ov61_0216218c
mov r0, r8
bl strlen
add r0, r0, #1
add r8, r8, r0
sub r7, r7, r0
_021643a8:
ldrsb r0, [r8]
cmp r0, #0
beq _021643bc
cmp r7, #0
bgt _0216436c
_021643bc:
mov r0, r9
sub r7, r7, #1
bl func_ov61_02162850
orr r1, r0, #2
mov r0, r9
and r1, r1, #0xff
bl func_ov61_02162848
_021643d8:
ldr r0, [sp, #4]
sub r0, r0, r7
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_0216411c
.global func_ov61_021643e8
arm_func_start func_ov61_021643e8
func_ov61_021643e8: ; 0x021643e8
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
sub sp, sp, #0xc
mov r4, r2
cmp r4, #1
mov r6, r0
mov r5, r1
addlt sp, sp, #0xc
movlt r0, #0
ldmltia sp!, {r3, r4, r5, r6, r7, r8, pc}
ldrb r8, [r5]
mov r0, r8
bl func_ov61_02163f00
mov r7, r0
cmp r4, r7
addlt sp, sp, #0xc
movlt r0, #0
ldmltia sp!, {r3, r4, r5, r6, r7, r8, pc}
tst r8, #0x40
beq _02164454
mov r0, r6
add r1, r5, r7
sub r2, r4, r7
bl func_ov61_02163fb0
cmp r0, #0
addeq sp, sp, #0xc
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc}
_02164454:
tst r8, #0x80
beq _02164478
add r0, r5, r7
sub r1, r4, r7
bl func_ov61_02163f2c
cmp r0, #0
addeq sp, sp, #0xc
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc}
_02164478:
ldr r1, _02164514 ; =data_ov61_0217c040
add r0, r5, #1
mov r2, #4
bl func_0204366c
cmp r0, #0
addeq sp, sp, #0xc
mvneq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc}
add r7, sp, #4
add r3, sp, #8
mov r0, r6
mov r1, r5
mov r2, r4
str r7, [sp]
bl func_ov61_021640ac
ldrh r2, [sp, #4]
ldr r1, [sp, #8]
mov r0, r6
bl func_ov61_02162780
mov r7, r0
bl func_ov61_02162858
cmp r0, #0
addne sp, sp, #0xc
mvnne r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, r8, pc}
mov ip, #1
mov r0, r6
mov r1, r7
mov r2, r5
mov r3, r4
str ip, [sp]
bl func_ov61_0216411c
mov r4, r0
mov r0, r6
mov r1, r7
bl func_ov61_02163128
mov r0, r4
add sp, sp, #0xc
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_021643e8
_02164514: .word data_ov61_0217c040
.global func_ov61_02164518
arm_func_start func_ov61_02164518
func_ov61_02164518: ; 0x02164518
str r1, [r0, #0x4ac]
bx lr
arm_func_end func_ov61_02164518
.global func_ov61_02164520
arm_func_start func_ov61_02164520
func_ov61_02164520: ; 0x02164520
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #8
mov r7, r0
ldr r1, [r7, #0x5c8]
ldr r5, [r7, #0x7c]
ldr r6, [r7, #0x80]
cmp r1, #4
addls pc, pc, r1, lsl #2
b _021648e0
_02164544: ; jump table
b _02164558 ; case 0
b _021645b8 ; case 1
b _021646b8 ; case 2
b _021647a4 ; case 3
b _02164850 ; case 4
_02164558:
cmp r6, #1
blt _021648e0
ldrb r1, [r5]
eor r1, r1, #0xec
add r3, r1, #2
cmp r6, r3
blt _021648e0
sub r1, r3, #1
ldrb r1, [r5, r1]
eor r2, r1, #0xea
add r4, r3, r2
cmp r6, r4
blt _021648e0
add r1, r5, r3
bl func_ov61_02163e60
add r5, r5, r4
sub r6, r6, r4
add r0, r7, #0xbc
mov r3, #1
mov r1, r5
mov r2, r6
add r0, r0, #0x400
str r3, [r7, #0x5c8]
bl func_ov61_02161774
_021645b8:
cmp r6, #6
blt _021648e0
ldrb r3, [r5]
ldrb r1, [r5, #1]
ldr r2, _02164934 ; =data_ov61_02181014
mov r0, r7
strb r3, [r7, #0x4a0]
strb r1, [r7, #0x4a1]
ldrb r4, [r5, #2]
ldrb r3, [r5, #3]
mov r1, #6
strb r4, [r7, #0x4a2]
strb r3, [r7, #0x4a3]
ldr r2, [r2]
ldr r3, [r7, #0x494]
ldr r4, [r7, #0x488]
blx r4
ldrb r3, [r5, #4]
ldrb r2, [r5, #5]
add r0, r7, #0x400
ldr r1, _02164938 ; =0x0000ffff
strb r3, [r7, #0x4a8]
strb r2, [r7, #0x4a9]
ldrh r0, [r0, #0xa8]
cmp r0, r1
bne _0216466c
add r0, r5, #6
sub r1, r6, #6
bl func_ov61_02163490
mvn r1, #0
cmp r0, r1
beq _021648e0
mov r0, r7
add r1, r5, #6
bl func_ov61_02164518
ldr r0, _02164934 ; =data_ov61_02181014
ldr r3, [r7, #0x494]
ldr r2, [r0]
ldr r4, [r7, #0x488]
mov r0, r7
mov r1, #5
blx r4
ldr r0, [r7, #0x7c]
cmp r0, #0
beq _021648e0
_0216466c:
ldr r0, [r7, #0x5c4]
add r5, r5, #6
tst r0, #2
sub r6, r6, #6
bne _02164694
add r0, r7, #0x400
ldrh r1, [r0, #0xa8]
ldr r0, _02164938 ; =0x0000ffff
cmp r1, r0
bne _021646a8
_02164694:
mov r0, #5
str r0, [r7, #0x5c8]
mov r0, #2
str r0, [r7]
b _021648e0
_021646a8:
mov r0, #2
str r0, [r7, #0x5c8]
sub r0, r0, #3
str r0, [r7, #0x484]
_021646b8:
ldr r1, [r7, #0x484]
mvn r0, #0
cmp r1, r0
bne _02164700
cmp r6, #1
blt _021648e0
ldrb r1, [r5]
mov r0, #8
mov r2, #0
str r1, [r7, #0x484]
bl func_ov61_02165938
cmp r0, #0
str r0, [r7, #8]
addeq sp, sp, #8
moveq r0, #5
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
add r5, r5, #1
sub r6, r6, #1
_02164700:
ldr r0, [r7, #8]
bl func_ov61_02165a68
ldr r1, [r7, #0x484]
cmp r1, r0
ble _02164780
add r8, sp, #0
mvn r4, #0
_0216471c:
cmp r6, #2
blt _02164780
add r0, r5, #1
sub r1, r6, #1
bl func_ov61_02163490
mov r9, r0
cmp r9, r4
beq _02164780
ldrb r2, [r5]
mov r0, r7
add r1, r5, #1
str r2, [sp, #4]
bl func_ov61_021633a4
str r0, [sp]
ldr r0, [r7, #8]
mov r1, r8
bl func_ov61_02165ad8
add r1, r9, #1
ldr r0, [r7, #8]
add r5, r5, r1
sub r6, r6, r1
bl func_ov61_02165a68
ldr r1, [r7, #0x484]
cmp r1, r0
bgt _0216471c
_02164780:
ldr r0, [r7, #8]
bl func_ov61_02165a68
ldr r1, [r7, #0x484]
cmp r1, r0
bgt _021648e0
mov r0, #3
str r0, [r7, #0x5c8]
sub r0, r0, #4
str r0, [r7, #0x484]
_021647a4:
ldr r1, [r7, #0x484]
mvn r0, #0
cmp r1, r0
bne _021647d0
cmp r6, #1
blt _021648e0
ldrb r1, [r5], #1
mov r0, #0
sub r6, r6, #1
str r1, [r7, #0x484]
str r0, [r7, #0x480]
_021647d0:
ldr r1, [r7, #0x484]
ldr r0, [r7, #0x480]
cmp r1, r0
ble _02164838
mvn r8, #0
_021647e4:
mov r0, r5
mov r1, r6
bl func_ov61_02163490
mov r4, r0
cmp r4, r8
beq _02164838
mov r0, r7
mov r1, r5
bl func_ov61_021633a4
ldr r1, [r7, #0x480]
add r5, r5, r4
mov r2, r1
add r1, r1, #1
str r1, [r7, #0x480]
add r1, r7, r2, lsl #2
str r0, [r1, #0x84]
ldr r1, [r7, #0x484]
ldr r0, [r7, #0x480]
sub r6, r6, r4
cmp r1, r0
bgt _021647e4
_02164838:
ldr r1, [r7, #0x484]
ldr r0, [r7, #0x480]
cmp r1, r0
bgt _021648e0
mov r0, #4
str r0, [r7, #0x5c8]
_02164850:
cmp r6, #5
blt _021648e0
mvn r4, #0
sub r8, r4, #1
mov r9, #0
_02164864:
mov r0, r7
mov r1, r5
mov r2, r6
bl func_ov61_021643e8
cmp r0, r8
addeq sp, sp, #8
moveq r0, #5
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
cmp r0, r4
bne _021648c4
mov r0, #5
str r0, [r7, #0x5c8]
mov r0, #2
str r0, [r7]
ldr r0, _02164934 ; =data_ov61_02181014
ldr r3, [r7, #0x494]
ldr r2, [r0]
ldr r4, [r7, #0x488]
mov r0, r7
mov r1, #3
sub r6, r6, #5
add r5, r5, #5
blx r4
b _021648e0
_021648c4:
ldr r1, [r7, #0x7c]
add r5, r5, r0
cmp r1, #0
sub r6, r6, r0
moveq r0, r9
cmp r0, #0
bne _02164864
_021648e0:
cmp r6, #0
bge _021648fc
ldr r0, _0216493c ; =data_ov61_0217c048
ldr r1, _02164940 ; =data_ov61_0217bfcc
ldr r2, _02164944 ; =data_ov61_0217bf8c
ldr r3, _02164948 ; =0x000004af
bl func_02042f80
_021648fc:
ldr r0, [r7, #0x7c]
cmp r0, #0
addeq sp, sp, #8
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
cmp r6, #0
beq _02164924
mov r1, r5
mov r2, r6
bl func_020435b4
_02164924:
str r6, [r7, #0x80]
mov r0, #0
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_02164520
_02164934: .word data_ov61_02181014
_02164938: .word 0x0000ffff
_0216493c: .word data_ov61_0217c048
_02164940: .word data_ov61_0217bfcc
_02164944: .word data_ov61_0217bf8c
_02164948: .word 0x000004af
.global func_ov61_0216494c
arm_func_start func_ov61_0216494c
func_ov61_0216494c: ; 0x0216494c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #8
mov r10, r0
ldr r3, [r10, #8]
mov r9, r1
mov r8, r2
cmp r3, #0
sub r8, r8, #1
ldrb r7, [r9], #1
beq _02164978
bl func_ov61_02163d60
_02164978:
mov r1, r7
mov r0, #8
mov r2, #0
bl func_ov61_02165938
cmp r0, #0
str r0, [r10, #8]
addeq sp, sp, #8
moveq r0, #5
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
cmp r7, #0
mov r6, #0
ble _02164a1c
add r11, sp, #0
mvn r4, #0
_021649b0:
cmp r8, #2
addlt sp, sp, #8
movlt r0, #4
ldmltia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
add r0, r9, #1
sub r1, r8, #1
bl func_ov61_02163490
mov r5, r0
cmp r5, r4
addeq sp, sp, #8
moveq r0, #4
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldrb r2, [r9]
mov r0, r10
add r1, r9, #1
str r2, [sp, #4]
bl func_ov61_021633a4
str r0, [sp]
ldr r0, [r10, #8]
mov r1, r11
bl func_ov61_02165ad8
add r0, r5, #1
add r6, r6, #1
cmp r6, r7
add r9, r9, r0
sub r8, r8, r0
blt _021649b0
_02164a1c:
mov r0, #0
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_0216494c
.global func_ov61_02164a28
arm_func_start func_ov61_02164a28
func_ov61_02164a28: ; 0x02164a28
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x24
mov r8, r2
cmp r8, #2
mov r10, r0
mov r9, r1
addlt sp, sp, #0x24
movlt r0, #4
ldmltia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldrb r0, [r9, #1]
sub r8, r8, #2
mov r11, #0
str r0, [sp, #0xc]
ldrb r0, [r9], #2
str r0, [sp, #0x14]
ldr r0, [sp, #0xc]
cmp r0, #0
ble _02164ba4
add r7, sp, #0x20
add r6, sp, #0x1c
mvn r4, #0
_02164a7c:
mov r0, r9
mov r1, r8
str r9, [sp, #0x10]
bl func_ov61_02163490
cmp r0, r4
addeq sp, sp, #0x24
moveq r0, #4
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
sub r3, r8, r0
cmp r3, #0xb
add r2, r9, r0
addlt sp, sp, #0x24
movlt r0, #4
ldmltia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldrb r1, [r2]
ldrb r0, [r2, #1]
sub r8, r3, #0xa
add r9, r2, #0xa
strb r1, [r7]
strb r0, [r7, #1]
ldrb r5, [r2, #2]
ldrb r3, [r2, #3]
mov r0, r9
mov r1, r8
strb r3, [r7, #3]
strb r5, [r7, #2]
ldrb ip, [r2, #4]
ldrb r5, [r2, #5]
add r3, sp, #0x18
strb ip, [r3]
strb r5, [r3, #1]
ldrb r5, [r2, #6]
ldrb r3, [r2, #7]
strb r5, [r6]
strb r3, [r6, #1]
ldrb r3, [r2, #8]
ldrb r2, [r2, #9]
strb r3, [r6, #2]
strb r2, [r6, #3]
ldr ip, [sp, #0x1c]
mov r2, ip, lsl #0x18
and r5, r2, #0xff000000
mov r2, ip, lsl #0x8
and r3, r2, #0xff0000
mov r2, ip, lsr #0x18
mov ip, ip, lsr #0x8
and r2, r2, #0xff
and ip, ip, #0xff00
orr r2, r2, ip
orr r2, r3, r2
orr r2, r5, r2
str r2, [sp, #0x1c]
bl func_ov61_02163490
mov r5, r0
cmp r5, r4
addeq sp, sp, #0x24
moveq r0, #4
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, [sp, #0x1c]
mov r0, r10
stmia sp, {r1, r9}
ldr r2, [r10, #0x494]
ldr r1, [sp, #0x10]
str r2, [sp, #8]
ldrh r3, [sp, #0x18]
ldr r2, [sp, #0x20]
ldr ip, [r10, #0x490]
blx ip
ldr r0, [sp, #0xc]
add r11, r11, #1
cmp r11, r0
add r9, r9, r5
sub r8, r8, r5
blt _02164a7c
_02164ba4:
ldr r0, [sp, #0x14]
cmp r0, #0
beq _02164bd8
mov r1, #0
str r1, [sp]
str r1, [sp, #4]
ldr r2, [r10, #0x494]
mov r0, r10
str r2, [sp, #8]
ldr r4, [r10, #0x490]
mov r2, r1
mov r3, r1
blx r4
_02164bd8:
mov r0, #0
add sp, sp, #0x24
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_02164a28
.global func_ov61_02164be4
arm_func_start func_ov61_02164be4
func_ov61_02164be4: ; 0x02164be4
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x54
mov r8, r2
cmp r8, #0xb
mov r10, r0
mov r9, r1
addlt sp, sp, #0x54
movlt r0, #4
ldmltia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldrb r2, [r9]
ldrb r1, [r9, #1]
add r3, sp, #0xc
add r4, sp, #8
strb r2, [r3]
strb r1, [r3, #1]
ldrb r2, [r9, #2]
ldrb r1, [r9, #3]
strb r1, [r3, #3]
strb r2, [r3, #2]
ldrb r3, [r9, #4]
ldrb r2, [r9, #5]
ldr r1, [sp, #0xc]
strb r3, [r4]
strb r2, [r4, #1]
ldrh r2, [sp, #8]
bl func_ov61_021631b8
mov r1, r0
mvn r0, #0
cmp r1, r0
addeq sp, sp, #0x54
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
mov r0, r10
bl func_ov61_021632b8
ldrb r2, [r9, #6]
ldrb r1, [r9, #7]
add r3, sp, #0x10
mov r11, r0
strb r2, [r3]
strb r1, [r3, #1]
ldrb r1, [r9, #8]
ldrb r0, [r9, #9]
sub r8, r8, #0xb
mov r7, #0
strb r1, [r3, #2]
strb r0, [r3, #3]
ldr r3, [sp, #0x10]
add r5, sp, #0x14
mov r1, r3, lsr #0x18
mov r0, r3, lsr #0x8
mov r2, r3, lsl #0x8
and r1, r1, #0xff
and r0, r0, #0xff00
mov r3, r3, lsl #0x18
orr r0, r1, r0
and r2, r2, #0xff0000
and r1, r3, #0xff000000
orr r0, r2, r0
orr r0, r1, r0
str r0, [sp, #0x10]
ldrb r6, [r9, #0xa]
add r9, r9, #0xb
mvn r4, #0
b _02164d18
_02164ce4:
cmp r8, #1
blt _02164d24
mov r0, r9
mov r1, r8
bl func_ov61_02163490
cmp r0, r4
addeq sp, sp, #0x54
moveq r0, #4
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
str r9, [r5, r7, lsl #2]
add r9, r9, r0
sub r8, r8, r0
add r7, r7, #1
_02164d18:
cmp r7, r6
cmplt r7, #0x10
blt _02164ce4
_02164d24:
ldr r4, [r10, #0x48c]
cmp r4, #0
addeq sp, sp, #0x54
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
add r1, sp, #0x14
str r1, [sp]
ldr r2, [r10, #0x494]
mov r0, r10
str r2, [sp, #4]
ldr r2, [sp, #0x10]
mov r1, r11
mov r3, r7
blx r4
mov r0, #0
add sp, sp, #0x54
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_02164be4
.global func_ov61_02164d68
arm_func_start func_ov61_02164d68
func_ov61_02164d68: ; 0x02164d68
stmdb sp!, {r4, lr}
sub sp, sp, #8
cmp r2, #6
mov r4, r0
addlt sp, sp, #8
movlt r0, #4
ldmltia sp!, {r4, pc}
ldrb r3, [r1]
ldrb r2, [r1, #1]
add lr, sp, #4
add ip, sp, #0
strb r3, [lr]
strb r2, [lr, #1]
ldrb r3, [r1, #2]
ldrb r2, [r1, #3]
strb r3, [lr, #2]
strb r2, [lr, #3]
ldrb r3, [r1, #4]
ldrb r2, [r1, #5]
ldr r1, [sp, #4]
strb r3, [ip]
strb r2, [ip, #1]
ldrh r2, [sp]
bl func_ov61_021631b8
mov r1, r0
mvn r0, #0
cmp r1, r0
addeq sp, sp, #8
moveq r0, #0
ldmeqia sp!, {r4, pc}
mov r0, r4
bl func_ov61_0216325c
mov r0, #0
add sp, sp, #8
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02164d68
.global func_ov61_02164df4
arm_func_start func_ov61_02164df4
func_ov61_02164df4: ; 0x02164df4
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
sub sp, sp, #0xc
mov r6, r2
cmp r6, #5
mov r8, r0
mov r7, r1
addlt sp, sp, #0xc
movlt r0, #4
ldmltia sp!, {r3, r4, r5, r6, r7, r8, pc}
add r4, sp, #4
add r3, sp, #8
str r4, [sp]
bl func_ov61_021640ac
ldrh r2, [sp, #4]
ldr r1, [sp, #8]
mov r0, r8
bl func_ov61_021631b8
mov r5, r0
mvn r0, #0
cmp r5, r0
bne _02164e74
ldrh r2, [sp, #4]
ldr r1, [sp, #8]
mov r0, r8
bl func_ov61_02162780
mov r4, r0
bl func_ov61_02162858
cmp r0, #0
beq _02164e84
add sp, sp, #0xc
mov r0, #5
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
_02164e74:
mov r0, r8
mov r1, r5
bl func_ov61_021632b8
mov r4, r0
_02164e84:
mov ip, #0
mov r0, r8
mov r1, r4
mov r2, r7
mov r3, r6
str ip, [sp]
bl func_ov61_0216411c
cmp r0, #0
addlt sp, sp, #0xc
movlt r0, #4
ldmltia sp!, {r3, r4, r5, r6, r7, r8, pc}
mvn r0, #0
cmp r5, r0
bne _02164ec8
mov r0, r8
mov r1, r4
bl func_ov61_02163128
_02164ec8:
ldr r3, [r8, #0x494]
ldr r5, [r8, #0x488]
mov r0, r8
mov r2, r4
mov r1, #1
blx r5
mov r0, #0
add sp, sp, #0xc
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
arm_func_end func_ov61_02164df4
.global func_ov61_02164eec
arm_func_start func_ov61_02164eec
func_ov61_02164eec: ; 0x02164eec
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
mov r9, r0
ldr r0, [r9, #0x80]
mov r8, #0
cmp r0, #3
blt _02165088
ldr r5, _021650a0 ; =data_ov61_0217c054
ldr r4, _021650a4 ; =data_ov61_0217bfcc
ldr r10, _021650a8 ; =data_ov61_0217bf78
ldr r11, _021650ac ; =0x000005b4
mov r6, r8
add r7, sp, #0
_02164f1c:
ldr r0, [r9, #0x7c]
ldrb r1, [r0]
ldrb r0, [r0, #1]
strb r1, [r7]
strb r0, [r7, #1]
ldrh r0, [sp]
mov r1, r0, asr #0x8
mov r0, r0, lsl #0x8
and r1, r1, #0xff
and r0, r0, #0xff00
orr r0, r1, r0
strh r0, [sp]
ldrh r2, [sp]
cmp r2, #0x1000
movhi r8, #4
bhi _02165088
ldr r0, [r9, #0x80]
cmp r0, r2
movlt r0, #0
ldmltia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, [r9, #0x7c]
ldrsb r0, [r1, #2]
cmp r0, #6
addls pc, pc, r0, lsl #2
b _0216502c
_02164f80: ; jump table
b _0216502c ; case 0
b _02164f9c ; case 1
b _02164fb4 ; case 2
b _02164fcc ; case 3
b _02164fe8 ; case 4
b _02165000 ; case 5
b _02165018 ; case 6
_02164f9c:
mov r0, r9
add r1, r1, #3
sub r2, r2, #3
bl func_ov61_0216494c
mov r8, r0
b _0216502c
_02164fb4:
mov r0, r9
add r1, r1, #3
sub r2, r2, #3
bl func_ov61_02164df4
mov r8, r0
b _0216502c
_02164fcc:
ldr r0, [r9, #0x4b0]
mov r3, r6
bl func_ov61_02166bf0
cmp r0, #0
bgt _0216502c
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02164fe8:
mov r0, r9
add r1, r1, #3
sub r2, r2, #3
bl func_ov61_02164d68
mov r8, r0
b _0216502c
_02165000:
mov r0, r9
add r1, r1, #3
sub r2, r2, #3
bl func_ov61_02164be4
mov r8, r0
b _0216502c
_02165018:
mov r0, r9
add r1, r1, #3
sub r2, r2, #3
bl func_ov61_02164a28
mov r8, r0
_0216502c:
ldrh r0, [sp]
ldr r1, [r9, #0x80]
subs r0, r1, r0
str r0, [r9, #0x80]
bpl _02165054
mov r0, r5
mov r1, r4
mov r2, r10
mov r3, r11
bl func_02042f80
_02165054:
ldr r2, [r9, #0x80]
cmp r2, #0
ldrne r0, [r9, #0x7c]
cmpne r0, #0
beq _02165074
ldrh r1, [sp]
add r1, r0, r1
bl func_020435b4
_02165074:
cmp r8, #0
bne _02165088
ldr r0, [r9, #0x80]
cmp r0, #3
bge _02164f1c
_02165088:
cmp r8, #0
beq _02165098
mov r0, r9
bl func_ov61_021635ec
_02165098:
mov r0, r8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02164eec
_021650a0: .word data_ov61_0217c054
_021650a4: .word data_ov61_0217bfcc
_021650a8: .word data_ov61_0217bf78
_021650ac: .word 0x000005b4
.global func_ov61_021650b0
arm_func_start func_ov61_021650b0
func_ov61_021650b0: ; 0x021650b0
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
ldr r0, [r6, #0x4b0]
bl func_ov61_02166914
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
ldr r5, [r6, #0x80]
ldr r1, [r6, #0x7c]
ldr r0, [r6, #0x4b0]
add r1, r1, r5
rsb r2, r5, #0x1000
mov r3, #0
bl func_ov61_02166bac
add r1, r0, #1
cmp r1, #1
bhi _02165104
mov r0, r6
bl func_ov61_021635ec
mov r0, #3
ldmia sp!, {r4, r5, r6, pc}
_02165104:
ldr r1, [r6, #0x80]
mov r4, #0
add r0, r1, r0
str r0, [r6, #0x80]
ldr r0, [r6]
cmp r0, #2
beq _0216512c
ldr r0, [r6, #0x5c8]
cmp r0, #0
ble _02165148
_0216512c:
ldr r1, [r6, #0x7c]
ldr r2, [r6, #0x80]
add r0, r6, #0xbc
add r0, r0, #0x400
add r1, r1, r5
sub r2, r2, r5
bl func_ov61_02161774
_02165148:
ldr r0, [r6]
cmp r0, #3
bne _02165160
mov r0, r6
bl func_ov61_02164520
mov r4, r0
_02165160:
cmp r4, #0
movne r0, r4
ldmneia sp!, {r4, r5, r6, pc}
ldr r0, [r6]
cmp r0, #2
bne _02165190
ldr r0, [r6, #0x80]
cmp r0, #0
ble _02165190
mov r0, r6
bl func_ov61_02164eec
ldmia sp!, {r4, r5, r6, pc}
_02165190:
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_021650b0
.global func_ov61_02165198
arm_func_start func_ov61_02165198
func_ov61_02165198: ; 0x02165198
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x18
mov r5, r0
ldr r1, [r5]
mov r4, r3
cmp r1, #1
bne _021651cc
mov r1, #0
mov r2, r1
mov r3, #2
str r1, [sp]
bl func_ov61_02163aac
_021651cc:
ldr r0, [r5]
cmp r0, #1
addeq sp, sp, #0x18
moveq r0, #3
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
addeq sp, sp, #0x10
bxeq lr
ldr r0, [sp, #0x50]
add r6, sp, #0x44
add r0, r0, #9
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
mov r2, r0, asr #0x8
mov r1, r0, lsl #0x8
and r2, r2, #0xff
and r1, r1, #0xff00
orr r1, r2, r1
strh r1, [sp, #4]
add r2, sp, #4
ldrb r3, [r2]
add r0, sp, #0x48
add r1, sp, #6
ldrb r2, [r2, #1]
strb r3, [r1]
mov r11, #2
strb r2, [r1, #1]
ldrb r9, [r6]
add r10, sp, #9
ldrb r8, [r6, #1]
ldrb r7, [r6, #2]
ldrb r6, [r6, #3]
ldrb ip, [r0]
ldrb r3, [r0, #1]
add lr, sp, #0xd
mov r0, r5
mov r2, #9
strb r11, [sp, #8]
strb r9, [r10]
strb r8, [r10, #1]
strb r7, [r10, #2]
strb r6, [r10, #3]
strb ip, [lr]
strb r3, [lr, #1]
bl func_ov61_02163a14
cmp r0, #0
addne sp, sp, #0x18
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
addne sp, sp, #0x10
bxne lr
ldr r0, [r5, #0x4b0]
ldr r2, [sp, #0x50]
mov r1, r4
mov r3, #0
bl func_ov61_02166bf0
cmp r0, #0
movlt r0, #3
movge r0, #0
add sp, sp, #0x18
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
add sp, sp, #0x10
bx lr
arm_func_end func_ov61_02165198
.global func_ov61_021652c0
arm_func_start func_ov61_021652c0
func_ov61_021652c0: ; 0x021652c0
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x10
ldr r5, [sp, #0x44]
mov r7, #0xfd
mov r4, r5, lsr #0x18
mov r8, r5, lsl #0x18
mov r3, r5, lsr #0x8
mov r6, r5, lsl #0x8
and r5, r4, #0xff
and r4, r3, #0xff00
orr r9, r5, r4
and r3, r6, #0xff0000
mov r6, #0xfc
mov r5, #0x1e
mov r4, #0x66
mov lr, #0x6a
mov r11, #0xb2
strb r4, [sp, #7]
and r8, r8, #0xff000000
orr r3, r3, r9
orr r8, r8, r3
add r3, sp, #0x44
str r8, [sp, #0x44]
strb r7, [sp, #4]
ldrb r10, [r3]
add ip, sp, #0xa
ldrb r9, [r3, #1]
ldrb r8, [r3, #2]
ldrb r7, [r3, #3]
add r3, sp, #4
strb r6, [sp, #5]
strb r5, [sp, #6]
strb lr, [sp, #8]
strb r11, [sp, #9]
strb r10, [ip]
strb r9, [ip, #1]
strb r8, [ip, #2]
strb r7, [ip, #3]
mov r4, #0xa
str r4, [sp]
bl func_ov61_02165198
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
add sp, sp, #0x10
bx lr
arm_func_end func_ov61_021652c0
.global func_ov61_02165378
arm_func_start func_ov61_02165378
func_ov61_02165378: ; 0x02165378
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x5f0
mov r1, #8
mov r10, r0
str r1, [sp, #8]
ldr r0, [r10, #0x4b0]
bl func_ov61_02166914
cmp r0, #0
beq _02165440
ldr r6, _02165494 ; =0x000005db
add r9, sp, #0xc
add r8, sp, #8
add r7, sp, #0x14
mov r11, #0
mvn r4, #0
_021653b4:
str r9, [sp]
str r8, [sp, #4]
ldr r0, [r10, #0x4b0]
mov r1, r7
mov r2, r6
mov r3, r11
bl func_ov61_02166bc0
cmp r0, r4
beq _02165430
ldrh r2, [sp, #0xe]
ldr r1, [sp, #0x10]
mov r0, r10
bl func_ov61_021631b8
cmp r0, r4
bne _02165430
ldrh r2, [sp, #0xe]
ldr r1, [sp, #0x10]
mov r0, r10
bl func_ov61_02162780
mov r5, r0
bl func_ov61_02162858
cmp r0, #0
addne sp, sp, #0x5f0
movne r0, #5
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
mov r0, r5
mov r1, #0x11
bl func_ov61_0216282c
mov r0, r10
mov r1, r5
bl func_ov61_02163128
_02165430:
ldr r0, [r10, #0x4b0]
bl func_ov61_02166914
cmp r0, #0
bne _021653b4
_02165440:
bl func_ov61_021665e8
ldr r1, [r10, #0x4b4]
sub r0, r0, r1
cmp r0, #0x7d0
bls _02165488
ldr r0, [r10, #0x4b0]
bl func_ov61_02166a98
mvn r0, #0
str r0, [r10, #0x4b0]
mov r0, #1
str r0, [r10]
ldr r0, _02165498 ; =data_ov61_02181014
ldr r3, [r10, #0x494]
ldr r2, [r0]
ldr r4, [r10, #0x488]
mov r0, r10
mov r1, #3
blx r4
_02165488:
mov r0, #0
add sp, sp, #0x5f0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02165378
_02165494: .word 0x000005db
_02165498: .word data_ov61_02181014
.global func_ov61_0216549c
arm_func_start func_ov61_0216549c
func_ov61_0216549c: ; 0x0216549c
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_021632cc
ldr r0, [r4]
cmp r0, #3
addls pc, pc, r0, lsl #2
b _021654e0
_021654b8: ; jump table
b _021654d4 ; case 0
b _021654e0 ; case 1
b _021654c8 ; case 2
b _021654c8 ; case 3
_021654c8:
mov r0, r4
bl func_ov61_021650b0
ldmia sp!, {r4, pc}
_021654d4:
mov r0, r4
bl func_ov61_02165378
ldmia sp!, {r4, pc}
_021654e0:
mov r0, #0
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0216549c
.global func_ov61_021654e8
arm_func_start func_ov61_021654e8
func_ov61_021654e8: ; 0x021654e8
stmdb sp!, {r3, r4, r5, lr}
mov r1, r1, lsl #0x10
mov r1, r1, lsr #0x10
mov r3, r1, asr #0x8
mov r1, r1, lsl #0x8
mov r4, r2
mov ip, #2
and r2, r3, #0xff
and r1, r1, #0xff00
strb ip, [r4, #1]
orr r1, r2, r1
mov r5, r0
strh r1, [r4, #2]
bl func_ov61_02166cc4
mvn r1, #0
str r0, [r4, #4]
cmp r0, r1
bne _02165554
mov r0, r5
bl func_ov61_021590ac
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r0, [r0, #0xc]
ldr r0, [r0]
ldr r0, [r0]
str r0, [r4, #4]
_02165554:
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_021654e8
.global func_ov61_0216555c
arm_func_start func_ov61_0216555c
func_ov61_0216555c: ; 0x0216555c
stmdb sp!, {r3, lr}
sub sp, sp, #8
ldr r1, _021655a0 ; =data_ov61_0218102c
mov r0, #8
str r1, [sp]
ldr r1, _021655a4 ; =data_ov61_02181024
str r0, [sp, #4]
ldr r0, [r1, #4]
ldr r2, [r1, #0x50]
ldr r1, _021655a8 ; =data_ov61_02181034
mov r3, #0
bl func_ov61_02166c04
bl func_ov61_021665e8
ldr r1, _021655a4 ; =data_ov61_02181024
str r0, [r1, #0x54]
add sp, sp, #8
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0216555c
_021655a0: .word data_ov61_0218102c
_021655a4: .word data_ov61_02181024
_021655a8: .word data_ov61_02181034
.global func_ov61_021655ac
arm_func_start func_ov61_021655ac
func_ov61_021655ac: ; 0x021655ac
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x40
mov r4, r0
ldr r0, _02165688 ; =data_ov61_021810c0
mov r1, r4
bl strcpy
ldr r0, _0216568c ; =data_ov61_02181024
mvn r1, #0
str r1, [r0, #4]
bl func_ov61_0216664c
ldr r0, _02165690 ; =data_ov61_02181080
ldrsb r5, [r0]
cmp r5, #0
bne _021655f4
ldr r1, _02165694 ; =data_ov61_0217c06c
add r0, sp, #0
mov r2, r4
bl func_020459b8
_021655f4:
cmp r5, #0
ldrne r0, _02165690 ; =data_ov61_02181080
ldr r1, _02165698 ; =0x00006cfc
ldr r2, _0216569c ; =data_ov61_0218102c
addeq r0, sp, #0
bl func_ov61_021654e8
cmp r0, #0
addeq sp, sp, #0x40
ldmeqia sp!, {r3, r4, r5, pc}
mov r0, #2
mov r1, r0
mov r2, #0
bl func_ov61_02166a84
ldr r2, _0216568c ; =data_ov61_02181024
mvn r1, #0
cmp r0, r1
str r0, [r2, #4]
addeq sp, sp, #0x40
ldmeqia sp!, {r3, r4, r5, pc}
mov r1, #9
mov r0, r4
strb r1, [r2, #0x10]
bl strlen
mov r5, r0
ldr r0, _021656a0 ; =data_ov61_02181039
mov r1, r4
add r2, r5, #1
bl func_02043594
ldr r0, _0216568c ; =data_ov61_02181024
add r1, r5, #6
str r1, [r0, #0x50]
bl func_ov61_0216555c
ldr r0, _0216568c ; =data_ov61_02181024
mov r1, #0
str r1, [r0, #0x58]
add sp, sp, #0x40
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_021655ac
_02165688: .word data_ov61_021810c0
_0216568c: .word data_ov61_02181024
_02165690: .word data_ov61_02181080
_02165694: .word data_ov61_0217c06c
_02165698: .word 0x00006cfc
_0216569c: .word data_ov61_0218102c
_021656a0: .word data_ov61_02181039
.global func_ov61_021656a4
arm_func_start func_ov61_021656a4
func_ov61_021656a4: ; 0x021656a4
stmdb sp!, {r4, r5, r6, lr}
mov r5, r0
cmp r1, #7
mov r6, r2
mov r4, r3
movlt r0, #1
ldmltia sp!, {r4, r5, r6, pc}
ldr r1, _02165750 ; =data_ov61_02181030
add r0, r6, #4
mov r2, #4
bl func_0204366c
cmp r0, #0
movne r0, #1
ldmneia sp!, {r4, r5, r6, pc}
ldr r0, _02165754 ; =data_ov61_02181024
ldrh r1, [r6, #2]
ldrh r0, [r0, #0xa]
cmp r1, r0
movne r0, #1
ldmneia sp!, {r4, r5, r6, pc}
ldr r1, _02165758 ; =data_ov61_0217c090
mov r0, r5
mov r2, #3
bl func_0204366c
cmp r0, #0
movne r0, #1
ldmneia sp!, {r4, r5, r6, pc}
ldrsb r2, [r5, #3]
ldrsb r1, [r5, #4]
ldrsb r0, [r5, #5]
mov r3, r2, lsl #0x18
mov r2, r1, lsl #0x10
mov r1, r0, lsl #0x8
and r3, r3, #0xff000000
and r2, r2, #0xff0000
ldrb r0, [r5, #6]
orr r2, r3, r2
and r1, r1, #0xff00
orr r1, r2, r1
orr r0, r1, r0
str r0, [r4]
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_021656a4
_02165750: .word data_ov61_02181030
_02165754: .word data_ov61_02181024
_02165758: .word data_ov61_0217c090
.global func_ov61_0216575c
arm_func_start func_ov61_0216575c
func_ov61_0216575c: ; 0x0216575c
stmdb sp!, {r3, lr}
sub sp, sp, #0x58
ldr r2, _02165894 ; =data_ov61_02181024
mov r3, #8
ldr r0, [r2, #4]
sub r1, r3, #9
cmp r0, r1
str r3, [sp, #0xc]
moveq r0, #1
streq r0, [r2]
addeq sp, sp, #0x58
ldmeqia sp!, {r3, pc}
bl func_ov61_02166914
cmp r0, #0
beq _02165834
add r0, sp, #0x10
str r0, [sp]
add r1, sp, #0xc
str r1, [sp, #4]
ldr r0, _02165894 ; =data_ov61_02181024
add r1, sp, #0x18
ldr r0, [r0, #4]
mov r2, #0x40
mov r3, #0
bl func_ov61_02166bc0
mov r1, r0
add r0, sp, #0x18
add r2, sp, #0x10
add r3, sp, #8
bl func_ov61_021656a4
cmp r0, #0
bne _02165834
ldr r0, _02165894 ; =data_ov61_02181024
ldr r0, [r0, #4]
bl func_ov61_02166a98
ldr r0, [sp, #8]
tst r0, #1
beq _02165804
ldr r0, _02165894 ; =data_ov61_02181024
mov r1, #2
str r1, [r0]
b _02165824
_02165804:
tst r0, #2
ldreq r0, _02165894 ; =data_ov61_02181024
moveq r1, #1
streq r1, [r0]
beq _02165824
ldr r0, _02165894 ; =data_ov61_02181024
mov r1, #3
str r1, [r0]
_02165824:
ldr r0, _02165894 ; =data_ov61_02181024
add sp, sp, #0x58
ldr r0, [r0]
ldmia sp!, {r3, pc}
_02165834:
bl func_ov61_021665e8
ldr r1, _02165894 ; =data_ov61_02181024
ldr r2, [r1, #0x54]
add r2, r2, #0x7d0
cmp r0, r2
bls _02165888
ldr r0, [r1, #0x58]
cmp r0, #1
bne _02165874
ldr r0, [r1, #4]
bl func_ov61_02166a98
ldr r1, _02165894 ; =data_ov61_02181024
mov r0, #1
str r0, [r1]
add sp, sp, #0x58
ldmia sp!, {r3, pc}
_02165874:
bl func_ov61_0216555c
ldr r0, _02165894 ; =data_ov61_02181024
ldr r1, [r0, #0x58]
add r1, r1, #1
str r1, [r0, #0x58]
_02165888:
mov r0, #0
add sp, sp, #0x58
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0216575c
_02165894: .word data_ov61_02181024
.global func_ov61_02165898
arm_func_start func_ov61_02165898
func_ov61_02165898: ; 0x02165898
stmdb sp!, {r4, lr}
mov r4, r0
ldr r2, [r4, #0x10]
cmp r2, #0
ldmeqia sp!, {r4, pc}
bl func_ov61_02165a70
ldr r1, [r4, #0x10]
blx r1
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02165898
.global func_ov61_021658bc
arm_func_start func_ov61_021658bc
func_ov61_021658bc: ; 0x021658bc
stmdb sp!, {r4, lr}
mov r4, r0
ldr r1, [r4, #4]
ldr r0, [r4, #0xc]
add r2, r1, r0
str r2, [r4, #4]
ldr r0, [r4, #8]
mul r1, r2, r0
ldr r0, [r4, #0x14]
bl func_ov61_0213e120
str r0, [r4, #0x14]
cmp r0, #0
ldmneia sp!, {r4, pc}
ldr r0, _02165908 ; =data_ov61_0217c14c
ldr r1, _0216590c ; =data_ov61_0217c158
ldr r2, _02165910 ; =data_ov61_0217c0b8
mov r3, #0x41
bl func_02042f80
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021658bc
_02165908: .word data_ov61_0217c14c
_0216590c: .word data_ov61_0217c158
_02165910: .word data_ov61_0217c0b8
.global func_ov61_02165914
arm_func_start func_ov61_02165914
func_ov61_02165914: ; 0x02165914
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
mov r5, r0
mov r1, r2
bl func_ov61_02165a70
ldr r2, [r5, #8]
mov r1, r4
bl func_02043594
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02165914
.global func_ov61_02165938
arm_func_start func_ov61_02165938
func_ov61_02165938: ; 0x02165938
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r0, #0x18
mov r6, r1
mov r5, r2
bl func_ov61_0213e10c
movs r4, r0
bne _0216596c
ldr r0, _021659e8 ; =data_ov61_0217c164
ldr r1, _021659ec ; =data_ov61_0217c158
ldr r2, _021659f0 ; =data_ov61_0217c0a0
mov r3, #0x52
bl func_02042f80
_0216596c:
cmp r7, #0
bne _02165988
ldr r0, _021659f4 ; =data_ov61_0217c16c
ldr r1, _021659ec ; =data_ov61_0217c158
ldr r2, _021659f0 ; =data_ov61_0217c0a0
mov r3, #0x53
bl func_02042f80
_02165988:
cmp r6, #0
moveq r6, #8
mov r0, #0
stmia r4, {r0, r6, r7}
str r6, [r4, #0xc]
str r5, [r4, #0x10]
ldr r1, [r4, #4]
cmp r1, #0
beq _021659dc
ldr r0, [r4, #8]
mul r0, r1, r0
bl func_ov61_0213e10c
str r0, [r4, #0x14]
cmp r0, #0
bne _021659e0
ldr r0, _021659f8 ; =data_ov61_0217c14c
ldr r1, _021659ec ; =data_ov61_0217c158
ldr r2, _021659f0 ; =data_ov61_0217c0a0
mov r3, #0x5e
bl func_02042f80
b _021659e0
_021659dc:
str r0, [r4, #0x14]
_021659e0:
mov r0, r4
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02165938
_021659e8: .word data_ov61_0217c164
_021659ec: .word data_ov61_0217c158
_021659f0: .word data_ov61_0217c0a0
_021659f4: .word data_ov61_0217c16c
_021659f8: .word data_ov61_0217c14c
.global func_ov61_021659fc
arm_func_start func_ov61_021659fc
func_ov61_021659fc: ; 0x021659fc
stmdb sp!, {r3, r4, r5, lr}
movs r5, r0
bne _02165a1c
ldr r0, _02165a5c ; =data_ov61_0217c164
ldr r1, _02165a60 ; =data_ov61_0217c158
ldr r2, _02165a64 ; =data_ov61_0217c0ac
mov r3, #0x69
bl func_02042f80
_02165a1c:
ldr r0, [r5]
mov r4, #0
cmp r0, #0
ble _02165a48
_02165a2c:
mov r0, r5
mov r1, r4
bl func_ov61_02165898
ldr r0, [r5]
add r4, r4, #1
cmp r4, r0
blt _02165a2c
_02165a48:
ldr r0, [r5, #0x14]
bl func_ov61_0213e13c
mov r0, r5
bl func_ov61_0213e13c
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_021659fc
_02165a5c: .word data_ov61_0217c164
_02165a60: .word data_ov61_0217c158
_02165a64: .word data_ov61_0217c0ac
.global func_ov61_02165a68
arm_func_start func_ov61_02165a68
func_ov61_02165a68: ; 0x02165a68
ldr r0, [r0]
bx lr
arm_func_end func_ov61_02165a68
.global func_ov61_02165a70
arm_func_start func_ov61_02165a70
func_ov61_02165a70: ; 0x02165a70
stmdb sp!, {r3, r4, r5, lr}
movs r4, r1
mov r5, r0
bmi _02165a8c
ldr r0, [r5]
cmp r4, r0
blt _02165aa0
_02165a8c:
ldr r0, _02165acc ; =data_ov61_0217c178
ldr r1, _02165ad0 ; =data_ov61_0217c158
ldr r2, _02165ad4 ; =data_ov61_0217c094
mov r3, #0x94
bl func_02042f80
_02165aa0:
cmp r4, #0
blt _02165ab4
ldr r0, [r5]
cmp r4, r0
blt _02165abc
_02165ab4:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_02165abc:
ldr r0, [r5, #0x14]
ldr r1, [r5, #8]
mla r0, r1, r4, r0
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02165a70
_02165acc: .word data_ov61_0217c178
_02165ad0: .word data_ov61_0217c158
_02165ad4: .word data_ov61_0217c094
.global func_ov61_02165ad8
arm_func_start func_ov61_02165ad8
func_ov61_02165ad8: ; 0x02165ad8
stmdb sp!, {r3, r4, r5, lr}
movs r5, r0
mov r4, r1
bne _02165afc
ldr r0, _02165b18 ; =data_ov61_0217c164
ldr r1, _02165b1c ; =data_ov61_0217c158
ldr r2, _02165b20 ; =data_ov61_0217c0c4
mov r3, #0xa0
bl func_02042f80
_02165afc:
cmp r5, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r2, [r5]
mov r0, r5
mov r1, r4
bl func_ov61_02165b24
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02165ad8
_02165b18: .word data_ov61_0217c164
_02165b1c: .word data_ov61_0217c158
_02165b20: .word data_ov61_0217c0c4
.global func_ov61_02165b24
arm_func_start func_ov61_02165b24
func_ov61_02165b24: ; 0x02165b24
stmdb sp!, {r4, r5, r6, r7, r8, lr}
movs r4, r2
mov r6, r0
mov r5, r1
bmi _02165b44
ldr r0, [r6]
cmp r4, r0
ble _02165b58
_02165b44:
ldr r0, _02165bd0 ; =data_ov61_0217c198
ldr r1, _02165bd4 ; =data_ov61_0217c158
ldr r2, _02165bd8 ; =data_ov61_0217c0f0
mov r3, #0xa7
bl func_02042f80
_02165b58:
ldr r1, [r6]
ldr r0, [r6, #4]
cmp r1, r0
bne _02165b70
mov r0, r6
bl func_ov61_021658bc
_02165b70:
ldr r0, [r6]
add r0, r0, #1
sub r8, r0, #1
str r0, [r6]
cmp r4, r8
bge _02165bbc
mov r0, r6
add r1, r4, #1
bl func_ov61_02165a70
mov r7, r0
mov r0, r6
mov r1, r4
bl func_ov61_02165a70
mov r1, r0
ldr r3, [r6, #8]
sub r0, r8, r4
mul r2, r3, r0
mov r0, r7
bl func_020435b4
_02165bbc:
mov r0, r6
mov r1, r5
mov r2, r4
bl func_ov61_02165914
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02165b24
_02165bd0: .word data_ov61_0217c198
_02165bd4: .word data_ov61_0217c158
_02165bd8: .word data_ov61_0217c0f0
.global func_ov61_02165bdc
arm_func_start func_ov61_02165bdc
func_ov61_02165bdc: ; 0x02165bdc
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0xc
movs r4, r2
mov r6, r0
mov r5, r1
bne _02165c08
ldr r0, _02165c50 ; =data_ov61_0217c1b8
ldr r1, _02165c54 ; =data_ov61_0217c158
ldr r2, _02165c58 ; =data_ov61_0217c124
mov r3, #0xb7
bl func_02042f80
_02165c08:
add r0, sp, #8
str r4, [sp]
str r0, [sp, #4]
ldr r1, [r6, #0x14]
ldr r2, [r6]
ldr r3, [r6, #8]
mov r0, r5
bl func_ov61_02165fd8
ldr r2, [r6, #0x14]
ldr r1, [r6, #8]
sub r0, r0, r2
bl func_02002c14
mov r2, r0
mov r0, r6
mov r1, r5
bl func_ov61_02165b24
add sp, sp, #0xc
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02165bdc
_02165c50: .word data_ov61_0217c1b8
_02165c54: .word data_ov61_0217c158
_02165c58: .word data_ov61_0217c124
.global func_ov61_02165c5c
arm_func_start func_ov61_02165c5c
func_ov61_02165c5c: ; 0x02165c5c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
movs r7, r1
mov r4, r0
bmi _02165c78
ldr r0, [r4]
cmp r7, r0
blt _02165c8c
_02165c78:
ldr r0, _02165ce0 ; =data_ov61_0217c178
ldr r1, _02165ce4 ; =data_ov61_0217c158
ldr r2, _02165ce8 ; =data_ov61_0217c0d0
mov r3, #0xc0
bl func_02042f80
_02165c8c:
ldr r0, [r4]
sub r6, r0, #1
cmp r7, r6
bge _02165cd0
mov r0, r4
mov r1, r7
bl func_ov61_02165a70
mov r5, r0
mov r0, r4
add r1, r7, #1
bl func_ov61_02165a70
mov r1, r0
ldr r3, [r4, #8]
sub r0, r6, r7
mul r2, r3, r0
mov r0, r5
bl func_020435b4
_02165cd0:
ldr r0, [r4]
sub r0, r0, #1
str r0, [r4]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02165c5c
_02165ce0: .word data_ov61_0217c178
_02165ce4: .word data_ov61_0217c158
_02165ce8: .word data_ov61_0217c0d0
.global func_ov61_02165cec
arm_func_start func_ov61_02165cec
func_ov61_02165cec: ; 0x02165cec
stmdb sp!, {r3, r4, r5, lr}
movs r4, r1
mov r5, r0
bmi _02165d08
ldr r0, [r5]
cmp r4, r0
blt _02165d1c
_02165d08:
ldr r0, _02165d38 ; =data_ov61_0217c178
ldr r1, _02165d3c ; =data_ov61_0217c158
ldr r2, _02165d40 ; =data_ov61_0217c0e0
mov r3, #0xca
bl func_02042f80
_02165d1c:
mov r0, r5
mov r1, r4
bl func_ov61_02165898
mov r0, r5
mov r1, r4
bl func_ov61_02165c5c
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02165cec
_02165d38: .word data_ov61_0217c178
_02165d3c: .word data_ov61_0217c158
_02165d40: .word data_ov61_0217c0e0
.global func_ov61_02165d44
arm_func_start func_ov61_02165d44
func_ov61_02165d44: ; 0x02165d44
stmdb sp!, {r4, r5, r6, lr}
movs r4, r2
mov r6, r0
mov r5, r1
bmi _02165d64
ldr r0, [r6]
cmp r4, r0
blt _02165d78
_02165d64:
ldr r0, _02165d98 ; =data_ov61_0217c178
ldr r1, _02165d9c ; =data_ov61_0217c158
ldr r2, _02165da0 ; =data_ov61_0217c100
mov r3, #0xd3
bl func_02042f80
_02165d78:
mov r0, r6
mov r1, r4
bl func_ov61_02165898
mov r0, r6
mov r1, r5
mov r2, r4
bl func_ov61_02165914
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02165d44
_02165d98: .word data_ov61_0217c178
_02165d9c: .word data_ov61_0217c158
_02165da0: .word data_ov61_0217c100
.global func_ov61_02165da4
arm_func_start func_ov61_02165da4
func_ov61_02165da4: ; 0x02165da4
ldr ip, _02165dc0 ; =func_020459e4
mov r2, r0
mov r3, r1
ldr r0, [r2, #0x14]
ldr r1, [r2]
ldr r2, [r2, #8]
bx ip
.align 2, 0
arm_func_end func_ov61_02165da4
_02165dc0: .word func_020459e4
.global func_ov61_02165dc4
arm_func_start func_ov61_02165dc4
func_ov61_02165dc4: ; 0x02165dc4
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
sub sp, sp, #0xc
mov ip, #1
movs r7, r0
str ip, [sp, #8]
ldrne r8, [r7]
mov r6, r1
cmpne r8, #0
mov r5, r2
mov r4, r3
addeq sp, sp, #0xc
mvneq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc}
ldr r1, [sp, #0x28]
cmp r1, #0
mov r1, r4
beq _02165e30
bl func_ov61_02165a70
add r1, sp, #8
str r5, [sp]
str r1, [sp, #4]
mov r1, r0
ldr r3, [r7, #8]
mov r0, r6
sub r2, r8, r4
bl func_ov61_02165fd8
b _02165e4c
_02165e30:
bl func_ov61_02165a70
str r5, [sp]
mov r1, r0
ldr r3, [r7, #8]
mov r0, r6
sub r2, r8, r4
bl func_ov61_02165f80
_02165e4c:
cmp r0, #0
ldrne r1, [sp, #8]
cmpne r1, #0
addeq sp, sp, #0xc
mvneq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc}
ldr r2, [r7, #0x14]
ldr r1, [r7, #8]
sub r0, r0, r2
bl func_02002c14
add sp, sp, #0xc
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
arm_func_end func_ov61_02165dc4
.global func_ov61_02165e7c
arm_func_start func_ov61_02165e7c
func_ov61_02165e7c: ; 0x02165e7c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
movs r6, r1
mov r7, r0
mov r5, r2
bne _02165ea4
ldr r0, _02165ed0 ; =data_ov61_0217c1c4
ldr r1, _02165ed4 ; =data_ov61_0217c158
ldr r2, _02165ed8 ; =data_ov61_0217c110
mov r3, #0x104
bl func_02042f80
_02165ea4:
ldr r0, [r7]
subs r4, r0, #1
ldmmiia sp!, {r3, r4, r5, r6, r7, pc}
_02165eb0:
mov r0, r7
mov r1, r4
bl func_ov61_02165a70
mov r1, r5
blx r6
subs r4, r4, #1
bpl _02165eb0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02165e7c
_02165ed0: .word data_ov61_0217c1c4
_02165ed4: .word data_ov61_0217c158
_02165ed8: .word data_ov61_0217c110
.global func_ov61_02165edc
arm_func_start func_ov61_02165edc
func_ov61_02165edc: ; 0x02165edc
stmdb sp!, {r4, r5, r6, r7, r8, lr}
movs r7, r1
mov r8, r0
mov r6, r2
bne _02165f04
ldr r0, _02165f44 ; =data_ov61_0217c1c4
ldr r1, _02165f48 ; =data_ov61_0217c158
ldr r2, _02165f4c ; =data_ov61_0217c138
ldr r3, _02165f50 ; =0x00000121
bl func_02042f80
_02165f04:
ldr r0, [r8]
subs r5, r0, #1
bmi _02165f3c
_02165f10:
mov r0, r8
mov r1, r5
bl func_ov61_02165a70
mov r1, r6
mov r4, r0
blx r7
cmp r0, #0
moveq r0, r4
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
subs r5, r5, #1
bpl _02165f10
_02165f3c:
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02165edc
_02165f44: .word data_ov61_0217c1c4
_02165f48: .word data_ov61_0217c158
_02165f4c: .word data_ov61_0217c138
_02165f50: .word 0x00000121
.global func_ov61_02165f54
arm_func_start func_ov61_02165f54
func_ov61_02165f54: ; 0x02165f54
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
bl func_ov61_02165a68
subs r4, r0, #1
ldmmiia sp!, {r3, r4, r5, pc}
_02165f68:
mov r0, r5
mov r1, r4
bl func_ov61_02165cec
subs r4, r4, #1
bpl _02165f68
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02165f54
.global func_ov61_02165f80
arm_func_start func_ov61_02165f80
func_ov61_02165f80: ; 0x02165f80
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
mov r8, r2
mov r10, r0
mov r9, r1
mov r7, r3
cmp r8, #0
ldr r6, [sp, #0x20]
mov r4, #0
ble _02165fd0
mov r5, r4
_02165fa8:
mov r0, r10
add r1, r9, r5
blx r6
cmp r0, #0
mlaeq r0, r7, r4, r9
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
add r4, r4, #1
cmp r4, r8
add r5, r5, r7
blt _02165fa8
_02165fd0:
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
arm_func_end func_ov61_02165f80
.global func_ov61_02165fd8
arm_func_start func_ov61_02165fd8
func_ov61_02165fd8: ; 0x02165fd8
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
ldr r7, [sp, #0x2c]
mov r4, #0
mov r11, r0
mov r10, r1
mov r9, r3
str r4, [r7]
subs r5, r2, #1
ldr r8, [sp, #0x28]
bmi _02166034
_02166000:
add r0, r4, r5
mov r6, r0, asr #0x1
mla r0, r6, r9, r10
mov r1, r11
blx r8
cmp r0, #0
moveq r1, #1
streq r1, [r7]
cmp r0, #0
addlt r4, r6, #1
subge r5, r6, #1
cmp r4, r5
ble _02166000
_02166034:
mla r0, r4, r9, r10
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_02165fd8
.global func_ov61_0216603c
arm_func_start func_ov61_0216603c
func_ov61_0216603c: ; 0x0216603c
stmdb sp!, {r3, lr}
sub sp, sp, #8
ldr ip, [sp, #0x10]
str r3, [sp]
mov r3, r2
mov r2, #4
str ip, [sp, #4]
bl func_ov61_02166064
add sp, sp, #8
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0216603c
.global func_ov61_02166064
arm_func_start func_ov61_02166064
func_ov61_02166064: ; 0x02166064
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
movs r7, r3
mov r10, r0
mov r9, r1
mov r8, r2
ldr r6, [sp, #0x24]
bne _02166094
ldr r0, _02166184 ; =data_ov61_0217c230
ldr r1, _02166188 ; =data_ov61_0217c238
ldr r2, _0216618c ; =data_ov61_0217c1c8
mov r3, #0x38
bl func_02042f80
_02166094:
ldr r0, [sp, #0x20]
cmp r0, #0
bne _021660b4
ldr r0, _02166190 ; =data_ov61_0217c244
ldr r1, _02166188 ; =data_ov61_0217c238
ldr r2, _0216618c ; =data_ov61_0217c1c8
mov r3, #0x39
bl func_02042f80
_021660b4:
cmp r10, #0
bne _021660d0
ldr r0, _02166194 ; =data_ov61_0217c24c
ldr r1, _02166188 ; =data_ov61_0217c238
ldr r2, _0216618c ; =data_ov61_0217c1c8
mov r3, #0x3a
bl func_02042f80
_021660d0:
cmp r9, #0
bne _021660ec
ldr r0, _02166198 ; =data_ov61_0217c258
ldr r1, _02166188 ; =data_ov61_0217c238
ldr r2, _0216618c ; =data_ov61_0217c1c8
mov r3, #0x3b
bl func_02042f80
_021660ec:
mov r0, #0x14
bl func_ov61_0213e10c
movs r4, r0
bne _02166110
ldr r0, _0216619c ; =data_ov61_0217c264
ldr r1, _02166188 ; =data_ov61_0217c238
ldr r2, _0216618c ; =data_ov61_0217c1c8
mov r3, #0x3e
bl func_02042f80
_02166110:
mov r0, r9, lsl #0x2
bl func_ov61_0213e10c
str r0, [r4]
cmp r0, #0
bne _02166138
ldr r0, _021661a0 ; =data_ov61_0217c26c
ldr r1, _02166188 ; =data_ov61_0217c238
ldr r2, _0216618c ; =data_ov61_0217c1c8
mov r3, #0x41
bl func_02042f80
_02166138:
cmp r9, #0
mov r5, #0
ble _02166168
_02166144:
mov r0, r10
mov r1, r8
mov r2, r6
bl func_ov61_02165938
ldr r1, [r4]
str r0, [r1, r5, lsl #2]
add r5, r5, #1
cmp r5, r9
blt _02166144
_02166168:
str r9, [r4, #4]
ldr r0, [sp, #0x20]
str r6, [r4, #8]
str r0, [r4, #0x10]
mov r0, r4
str r7, [r4, #0xc]
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
.align 2, 0
arm_func_end func_ov61_02166064
_02166184: .word data_ov61_0217c230
_02166188: .word data_ov61_0217c238
_0216618c: .word data_ov61_0217c1c8
_02166190: .word data_ov61_0217c244
_02166194: .word data_ov61_0217c24c
_02166198: .word data_ov61_0217c258
_0216619c: .word data_ov61_0217c264
_021661a0: .word data_ov61_0217c26c
.global func_ov61_021661a4
arm_func_start func_ov61_021661a4
func_ov61_021661a4: ; 0x021661a4
stmdb sp!, {r3, r4, r5, lr}
movs r5, r0
bne _021661c4
ldr r0, _0216620c ; =data_ov61_0217c264
ldr r1, _02166210 ; =data_ov61_0217c238
ldr r2, _02166214 ; =data_ov61_0217c1d4
mov r3, #0x51
bl func_02042f80
_021661c4:
cmp r5, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r0, [r5, #4]
mov r4, #0
cmp r0, #0
ble _021661f8
_021661dc:
ldr r0, [r5]
ldr r0, [r0, r4, lsl #2]
bl func_ov61_021659fc
ldr r0, [r5, #4]
add r4, r4, #1
cmp r4, r0
blt _021661dc
_021661f8:
ldr r0, [r5]
bl func_ov61_0213e13c
mov r0, r5
bl func_ov61_0213e13c
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_021661a4
_0216620c: .word data_ov61_0217c264
_02166210: .word data_ov61_0217c238
_02166214: .word data_ov61_0217c1d4
.global func_ov61_02166218
arm_func_start func_ov61_02166218
func_ov61_02166218: ; 0x02166218
stmdb sp!, {r4, r5, r6, lr}
movs r6, r0
mov r5, #0
bne _0216623c
ldr r0, _02166280 ; =data_ov61_0217c264
ldr r1, _02166284 ; =data_ov61_0217c238
ldr r2, _02166288 ; =data_ov61_0217c1ec
mov r3, #0x61
bl func_02042f80
_0216623c:
cmp r6, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
ldr r0, [r6, #4]
mov r4, #0
cmp r0, #0
ble _02166278
_02166258:
ldr r0, [r6]
ldr r0, [r0, r4, lsl #2]
bl func_ov61_02165a68
ldr r1, [r6, #4]
add r4, r4, #1
cmp r4, r1
add r5, r5, r0
blt _02166258
_02166278:
mov r0, r5
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02166218
_02166280: .word data_ov61_0217c264
_02166284: .word data_ov61_0217c238
_02166288: .word data_ov61_0217c1ec
.global func_ov61_0216628c
arm_func_start func_ov61_0216628c
func_ov61_0216628c: ; 0x0216628c
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
movs r6, r0
mov r5, r1
bne _021662b4
ldr r0, _02166328 ; =data_ov61_0217c264
ldr r1, _0216632c ; =data_ov61_0217c238
ldr r2, _02166330 ; =data_ov61_0217c1e0
mov r3, #0x71
bl func_02042f80
_021662b4:
cmp r6, #0
addeq sp, sp, #4
ldmeqia sp!, {r3, r4, r5, r6, pc}
ldr r1, [r6, #4]
ldr r2, [r6, #0xc]
mov r0, r5
blx r2
mov r3, #0
str r3, [sp]
ldr r1, [r6]
mov r4, r0
ldr r0, [r1, r4, lsl #2]
ldr r2, [r6, #0x10]
mov r1, r5
bl func_ov61_02165dc4
mov r2, r0
mvn r0, #0
cmp r2, r0
ldr r0, [r6]
mov r1, r5
bne _02166318
ldr r0, [r0, r4, lsl #2]
bl func_ov61_02165ad8
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
_02166318:
ldr r0, [r0, r4, lsl #2]
bl func_ov61_02165d44
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0216628c
_02166328: .word data_ov61_0217c264
_0216632c: .word data_ov61_0217c238
_02166330: .word data_ov61_0217c1e0
.global func_ov61_02166334
arm_func_start func_ov61_02166334
func_ov61_02166334: ; 0x02166334
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
movs r6, r0
mov r5, r1
bne _0216635c
ldr r0, _021663cc ; =data_ov61_0217c264
ldr r1, _021663d0 ; =data_ov61_0217c238
ldr r2, _021663d4 ; =data_ov61_0217c1f8
mov r3, #0x82
bl func_02042f80
_0216635c:
cmp r6, #0
addeq sp, sp, #4
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, pc}
ldr r1, [r6, #4]
ldr r2, [r6, #0xc]
mov r0, r5
blx r2
mov r3, #0
str r3, [sp]
ldr r1, [r6]
mov r4, r0
ldr r0, [r1, r4, lsl #2]
ldr r2, [r6, #0x10]
mov r1, r5
bl func_ov61_02165dc4
mov r1, r0
mvn r0, #0
cmp r1, r0
addeq sp, sp, #4
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, pc}
ldr r0, [r6]
ldr r0, [r0, r4, lsl #2]
bl func_ov61_02165cec
mov r0, #1
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02166334
_021663cc: .word data_ov61_0217c264
_021663d0: .word data_ov61_0217c238
_021663d4: .word data_ov61_0217c1f8
.global func_ov61_021663d8
arm_func_start func_ov61_021663d8
func_ov61_021663d8: ; 0x021663d8
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
movs r6, r0
mov r5, r1
bne _02166400
ldr r0, _0216646c ; =data_ov61_0217c264
ldr r1, _02166470 ; =data_ov61_0217c238
ldr r2, _02166474 ; =data_ov61_0217c204
mov r3, #0x94
bl func_02042f80
_02166400:
cmp r6, #0
addeq sp, sp, #4
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, pc}
ldr r1, [r6, #4]
ldr r2, [r6, #0xc]
mov r0, r5
blx r2
mov r3, #0
str r3, [sp]
ldr r1, [r6]
mov r4, r0
ldr r0, [r1, r4, lsl #2]
ldr r2, [r6, #0x10]
mov r1, r5
bl func_ov61_02165dc4
mov r1, r0
mvn r0, #0
cmp r1, r0
addeq sp, sp, #4
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, pc}
ldr r0, [r6]
ldr r0, [r0, r4, lsl #2]
bl func_ov61_02165a70
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_021663d8
_0216646c: .word data_ov61_0217c264
_02166470: .word data_ov61_0217c238
_02166474: .word data_ov61_0217c204
.global func_ov61_02166478
arm_func_start func_ov61_02166478
func_ov61_02166478: ; 0x02166478
stmdb sp!, {r3, r4, r5, r6, r7, lr}
movs r6, r1
mov r7, r0
mov r5, r2
bne _021664a0
ldr r0, _021664d8 ; =data_ov61_0217c27c
ldr r1, _021664dc ; =data_ov61_0217c238
ldr r2, _021664e0 ; =data_ov61_0217c210
mov r3, #0xb6
bl func_02042f80
_021664a0:
ldr r0, [r7, #4]
mov r4, #0
cmp r0, #0
ldmleia sp!, {r3, r4, r5, r6, r7, pc}
_021664b0:
ldr r0, [r7]
mov r1, r6
ldr r0, [r0, r4, lsl #2]
mov r2, r5
bl func_ov61_02165e7c
ldr r0, [r7, #4]
add r4, r4, #1
cmp r4, r0
blt _021664b0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02166478
_021664d8: .word data_ov61_0217c27c
_021664dc: .word data_ov61_0217c238
_021664e0: .word data_ov61_0217c210
.global func_ov61_021664e4
arm_func_start func_ov61_021664e4
func_ov61_021664e4: ; 0x021664e4
stmdb sp!, {r3, r4, r5, r6, r7, lr}
movs r6, r1
mov r7, r0
mov r5, r2
bne _0216650c
ldr r0, _02166550 ; =data_ov61_0217c27c
ldr r1, _02166554 ; =data_ov61_0217c238
ldr r2, _02166558 ; =data_ov61_0217c220
mov r3, #0xd3
bl func_02042f80
_0216650c:
ldr r0, [r7, #4]
mov r4, #0
cmp r0, #0
ble _02166548
_0216651c:
ldr r0, [r7]
mov r1, r6
ldr r0, [r0, r4, lsl #2]
mov r2, r5
bl func_ov61_02165edc
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, [r7, #4]
add r4, r4, #1
cmp r4, r0
blt _0216651c
_02166548:
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_021664e4
_02166550: .word data_ov61_0217c27c
_02166554: .word data_ov61_0217c238
_02166558: .word data_ov61_0217c220
.global func_ov61_0216655c
arm_func_start func_ov61_0216655c
func_ov61_0216655c: ; 0x0216655c
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r5, #0
ldr r4, _02166598 ; =data_ov61_0217c280
mov r8, r0
mov r7, r1
mov r6, r5
_02166574:
ldrb r2, [r8, r5]
mov r1, r4
add r0, r7, r6
bl func_020459b8
add r5, r5, #1
cmp r5, #0x10
add r6, r6, #2
blo _02166574
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_0216655c
_02166598: .word data_ov61_0217c280
.global func_ov61_0216659c
arm_func_start func_ov61_0216659c
func_ov61_0216659c: ; 0x0216659c
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #0x68
mov r6, r0
add r0, sp, #0x10
mov r5, r1
mov r4, r2
bl func_ov61_0215e974
add r0, sp, #0x10
mov r1, r6
mov r2, r5
bl func_ov61_0215e980
add r0, sp, #0
add r1, sp, #0x10
bl func_ov61_0215e98c
add r0, sp, #0
mov r1, r4
bl func_ov61_0216655c
add sp, sp, #0x68
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0216659c
.global func_ov61_021665e8
arm_func_start func_ov61_021665e8
func_ov61_021665e8: ; 0x021665e8
stmdb sp!, {r3, lr}
bl func_0200e880
cmp r0, #1
beq _0216660c
ldr r0, _0216662c ; =data_ov61_0217c2a4
ldr r1, _02166630 ; =data_ov61_0217c2c4
ldr r2, _02166634 ; =data_ov61_0217c294
ldr r3, _02166638 ; =0x00000109
bl func_02042f80
_0216660c:
bl func_0200e8f8
mov r1, r1, lsl #0x6
orr r1, r1, r0, lsr #26
ldr r2, _0216663c ; =0x000082ea
mov r0, r0, lsl #0x6
mov r3, #0
bl func_02002bac
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021665e8
_0216662c: .word data_ov61_0217c2a4
_02166630: .word data_ov61_0217c2c4
_02166634: .word data_ov61_0217c294
_02166638: .word 0x00000109
_0216663c: .word 0x000082ea
.global func_ov61_02166640
arm_func_start func_ov61_02166640
func_ov61_02166640: ; 0x02166640
ldr ip, _02166648 ; =func_0200db28
bx ip
.align 2, 0
arm_func_end func_ov61_02166640
_02166648: .word func_0200db28
.global func_ov61_0216664c
arm_func_start func_ov61_0216664c
func_ov61_0216664c: ; 0x0216664c
bx lr
arm_func_end func_ov61_0216664c
.global func_ov61_02166650
arm_func_start func_ov61_02166650
func_ov61_02166650: ; 0x02166650
bx lr
arm_func_end func_ov61_02166650
.global func_ov61_02166654
arm_func_start func_ov61_02166654
func_ov61_02166654: ; 0x02166654
stmdb sp!, {r3, r4, r5, lr}
movs r5, r0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
bl strlen
add r0, r0, #1
bl func_ov61_0213e10c
movs r4, r0
beq _02166680
mov r1, r5
bl strcpy
_02166680:
mov r0, r4
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02166654
.global func_ov61_02166688
arm_func_start func_ov61_02166688
func_ov61_02166688: ; 0x02166688
ldrsb r3, [r0]
mov r2, r0
cmp r3, #0
beq _021666c0
ldr r1, _021666c8 ; =data_02056c98
_0216669c:
cmp r3, #0
blt _021666b0
cmp r3, #0x80
bge _021666b0
ldrb r3, [r1, r3]
_021666b0:
strb r3, [r0]
ldrsb r3, [r0, #1]!
cmp r3, #0
bne _0216669c
_021666c0:
mov r0, r2
bx lr
.align 2, 0
arm_func_end func_ov61_02166688
_021666c8: .word data_02056c98
.global func_ov61_021666cc
arm_func_start func_ov61_021666cc
func_ov61_021666cc: ; 0x021666cc
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
mov r1, #3
mov r2, #0
mov r5, r0
bl func_ov61_0215932c
cmp r4, #0
bicne r2, r0, #4
orreq r2, r0, #4
mov r0, r5
mov r1, #4
bl func_ov61_0215932c
cmp r0, #0
moveq r0, #1
movne r0, #0
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_021666cc
.global func_ov61_0216670c
arm_func_start func_ov61_0216670c
func_ov61_0216670c: ; 0x0216670c
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r3, lr}
ldr r1, _02166748 ; =0x0000ffff
mov ip, #4
ldr r2, _0216674c ; =0x00001002
add r3, sp, #0xc
str ip, [sp]
bl func_ov61_02166c84
mvn r1, #0
cmp r0, r1
movne r0, #1
moveq r0, #0
ldmia sp!, {r3, lr}
add sp, sp, #0x10
bx lr
.align 2, 0
arm_func_end func_ov61_0216670c
_02166748: .word 0x0000ffff
_0216674c: .word 0x00001002
.global func_ov61_02166750
arm_func_start func_ov61_02166750
func_ov61_02166750: ; 0x02166750
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r3, lr}
ldr r1, _0216678c ; =0x0000ffff
mov ip, #4
add r3, sp, #0xc
rsb r2, r1, #0x11000
str ip, [sp]
bl func_ov61_02166c84
mvn r1, #0
cmp r0, r1
movne r0, #1
moveq r0, #0
ldmia sp!, {r3, lr}
add sp, sp, #0x10
bx lr
.align 2, 0
arm_func_end func_ov61_02166750
_0216678c: .word 0x0000ffff
.global func_ov61_02166790
arm_func_start func_ov61_02166790
func_ov61_02166790: ; 0x02166790
stmdb sp!, {lr}
sub sp, sp, #0xc
mov r1, #4
str r1, [sp, #4]
add ip, sp, #4
ldr r1, _021667d0 ; =0x0000ffff
ldr r2, _021667d4 ; =0x00001002
add r3, sp, #8
str ip, [sp]
bl func_ov61_02166c5c
mvn r1, #0
cmp r0, r1
ldrne r1, [sp, #8]
mov r0, r1
add sp, sp, #0xc
ldmia sp!, {pc}
.align 2, 0
arm_func_end func_ov61_02166790
_021667d0: .word 0x0000ffff
_021667d4: .word 0x00001002
.global func_ov61_021667d8
arm_func_start func_ov61_021667d8
func_ov61_021667d8: ; 0x021667d8
stmdb sp!, {lr}
sub sp, sp, #0xc
ldr r1, _02166818 ; =0x0000ffff
mov r2, #4
str r2, [sp, #4]
add ip, sp, #4
add r3, sp, #8
rsb r2, r1, #0x11000
str ip, [sp]
bl func_ov61_02166c5c
mvn r1, #0
cmp r0, r1
ldrne r1, [sp, #8]
mov r0, r1
add sp, sp, #0xc
ldmia sp!, {pc}
.align 2, 0
arm_func_end func_ov61_021667d8
_02166818: .word 0x0000ffff
.global func_ov61_0216681c
arm_func_start func_ov61_0216681c
func_ov61_0216681c: ; 0x0216681c
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #8
movs r6, r1
mov r1, #0
strh r1, [sp, #4]
str r0, [sp]
ldrnesh r0, [sp, #4]
mov r5, r2
mov r2, #0
orrne r0, r0, #1
strneh r0, [sp, #4]
cmp r5, #0
ldrnesh r0, [sp, #4]
mov r4, r3
mov r3, r2
orrne r0, r0, #8
strneh r0, [sp, #4]
add r0, sp, #0
mov r1, #1
strh r2, [sp, #6]
bl func_ov61_02159678
cmp r0, #0
addlt sp, sp, #8
mvnlt r0, #0
ldmltia sp!, {r4, r5, r6, pc}
cmp r6, #0
beq _021668ac
cmp r0, #0
ble _021668a4
ldrsh r1, [sp, #6]
tst r1, #0x41
movne r1, #1
strne r1, [r6]
bne _021668ac
_021668a4:
mov r1, #0
str r1, [r6]
_021668ac:
cmp r5, #0
beq _021668d8
cmp r0, #0
ble _021668d0
ldrsh r1, [sp, #6]
tst r1, #8
movne r1, #1
strne r1, [r5]
bne _021668d8
_021668d0:
mov r1, #0
str r1, [r5]
_021668d8:
cmp r4, #0
addeq sp, sp, #8
ldmeqia sp!, {r4, r5, r6, pc}
cmp r0, #0
ble _02166904
ldrsh r1, [sp, #6]
tst r1, #0x20
movne r1, #1
addne sp, sp, #8
strne r1, [r4]
ldmneia sp!, {r4, r5, r6, pc}
_02166904:
mov r1, #0
str r1, [r4]
add sp, sp, #8
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0216681c
.global func_ov61_02166914
arm_func_start func_ov61_02166914
func_ov61_02166914: ; 0x02166914
stmdb sp!, {r3, lr}
mov r2, #0
add r1, sp, #0
mov r3, r2
str r2, [sp]
bl func_ov61_0216681c
cmp r0, #1
ldreq r0, [sp]
movne r0, #0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02166914
.global func_ov61_0216693c
arm_func_start func_ov61_0216693c
func_ov61_0216693c: ; 0x0216693c
stmdb sp!, {r3, lr}
mov r1, #0
add r2, sp, #0
mov r3, r1
str r1, [sp]
bl func_ov61_0216681c
cmp r0, #1
ldreq r0, [sp]
movne r0, #0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0216693c
.global func_ov61_02166964
arm_func_start func_ov61_02166964
func_ov61_02166964: ; 0x02166964
stmdb sp!, {r3, lr}
ldr r2, _021669d8 ; =data_ov61_0217c2d0
ldr r0, _021669dc ; =data_ov61_02181100
ldr r1, _021669e0 ; =data_ov61_02181100
str r2, [r0, #8]
str r1, [r0, #0xc]
mov r1, #2
strh r1, [r0, #0x10]
mov r2, #0
ldr r1, _021669e4 ; =data_ov61_0218112c
strh r2, [r0, #0x12]
str r1, [r0, #0x14]
str r2, [r0, #0x18]
bl func_ov61_02158be8
ldr r1, _021669e8 ; =data_ov61_02181118
bl func_ov61_02159658
ldr r1, _021669dc ; =data_ov61_02181100
ldr r0, [r1, #0x18]
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
ldr r2, _021669e8 ; =data_ov61_02181118
mov r0, #4
str r2, [r1, #0x2c]
strh r0, [r1, #0x12]
mov r2, #0
ldr r0, _021669ec ; =data_ov61_02181108
str r2, [r1, #0x30]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02166964
_021669d8: .word data_ov61_0217c2d0
_021669dc: .word data_ov61_02181100
_021669e0: .word data_ov61_02181100
_021669e4: .word data_ov61_0218112c
_021669e8: .word data_ov61_02181118
_021669ec: .word data_ov61_02181108
.global func_ov61_021669f0
arm_func_start func_ov61_021669f0
func_ov61_021669f0: ; 0x021669f0
ldr r3, [r0]
mov r1, r3, lsr #0x18
mov r0, r3, lsr #0x8
mov r2, r3, lsl #0x8
and r1, r1, #0xff
and r0, r0, #0xff00
mov r3, r3, lsl #0x18
orr r0, r1, r0
and r2, r2, #0xff0000
and r1, r3, #0xff000000
orr r0, r2, r0
orr r1, r1, r0
mov r0, r1, lsr #0x18
and r2, r0, #0xff
mov r0, r1, lsr #0x10
and r0, r0, #0xff
cmp r2, #0xa
moveq r0, #1
bxeq lr
cmp r2, #0xac
bne _02166a58
cmp r0, #0x10
blt _02166a58
cmp r0, #0x1f
movle r0, #1
bxle lr
_02166a58:
cmp r2, #0xc0
cmpeq r0, #0xa8
moveq r0, #1
movne r0, #0
bx lr
arm_func_end func_ov61_021669f0
.global func_ov61_02166a6c
arm_func_start func_ov61_02166a6c
func_ov61_02166a6c: ; 0x02166a6c
cmp r0, #0
ldrlt r2, _02166a80 ; =data_ov61_02181100
strlt r0, [r2, #4]
movlt r0, r1
bx lr
.align 2, 0
arm_func_end func_ov61_02166a6c
_02166a80: .word data_ov61_02181100
.global func_ov61_02166a84
arm_func_start func_ov61_02166a84
func_ov61_02166a84: ; 0x02166a84
stmdb sp!, {r3, lr}
bl func_ov61_02158e84
mvn r1, #0
bl func_ov61_02166a6c
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02166a84
.global func_ov61_02166a98
arm_func_start func_ov61_02166a98
func_ov61_02166a98: ; 0x02166a98
stmdb sp!, {r3, lr}
bl func_ov61_021590a0
mvn r1, #0
bl func_ov61_02166a6c
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02166a98
.global func_ov61_02166aac
arm_func_start func_ov61_02166aac
func_ov61_02166aac: ; 0x02166aac
stmdb sp!, {r3, lr}
bl func_ov61_02159094
mvn r1, #0
bl func_ov61_02166a6c
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02166aac
.global func_ov61_02166ac0
arm_func_start func_ov61_02166ac0
func_ov61_02166ac0: ; 0x02166ac0
stmdb sp!, {r4, lr}
sub sp, sp, #8
ldrh r3, [r1, #2]
cmp r3, #0
addeq sp, sp, #8
moveq r0, #0
ldmeqia sp!, {r4, pc}
add r4, sp, #0
mov lr, #4
_02166ae4:
ldrb ip, [r1]
ldrb r3, [r1, #1]
add r1, r1, #2
subs lr, lr, #1
strb ip, [r4]
strb r3, [r4, #1]
add r4, r4, #2
bne _02166ae4
add r1, sp, #0
strb r2, [sp]
bl func_ov61_02158eb0
mvn r1, #0
bl func_ov61_02166a6c
add sp, sp, #8
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02166ac0
.global func_ov61_02166b20
arm_func_start func_ov61_02166b20
func_ov61_02166b20: ; 0x02166b20
stmdb sp!, {r4, lr}
sub sp, sp, #8
add r4, sp, #0
mov lr, #4
_02166b30:
ldrb ip, [r1]
ldrb r3, [r1, #1]
add r1, r1, #2
subs lr, lr, #1
strb ip, [r4]
strb r3, [r4, #1]
add r4, r4, #2
bne _02166b30
add r1, sp, #0
strb r2, [sp]
bl func_ov61_02158edc
mvn r1, #0
bl func_ov61_02166a6c
add sp, sp, #8
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02166b20
.global func_ov61_02166b6c
arm_func_start func_ov61_02166b6c
func_ov61_02166b6c: ; 0x02166b6c
stmdb sp!, {r3, lr}
bl func_ov61_021592a4
mvn r1, #0
bl func_ov61_02166a6c
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02166b6c
.global func_ov61_02166b80
arm_func_start func_ov61_02166b80
func_ov61_02166b80: ; 0x02166b80
stmdb sp!, {r3, r4, r5, lr}
mov r4, r2
ldr r2, [r4]
mov r5, r1
strb r2, [r5]
bl func_ov61_021592b0
ldrb r2, [r5]
mvn r1, #0
str r2, [r4]
bl func_ov61_02166a6c
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02166b80
.global func_ov61_02166bac
arm_func_start func_ov61_02166bac
func_ov61_02166bac: ; 0x02166bac
stmdb sp!, {r3, lr}
bl func_ov61_02158f38
mvn r1, #0
bl func_ov61_02166a6c
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02166bac
.global func_ov61_02166bc0
arm_func_start func_ov61_02166bc0
func_ov61_02166bc0: ; 0x02166bc0
stmdb sp!, {r3, r4, r5, lr}
ldr r4, [sp, #0x14]
ldr r5, [sp, #0x10]
ldr ip, [r4]
strb ip, [r5]
str r5, [sp]
bl func_ov61_02158f5c
ldrb r2, [r5]
mvn r1, #0
str r2, [r4]
bl func_ov61_02166a6c
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02166bc0
.global func_ov61_02166bf0
arm_func_start func_ov61_02166bf0
func_ov61_02166bf0: ; 0x02166bf0
stmdb sp!, {r3, lr}
bl func_ov61_02158fec
mvn r1, #0
bl func_ov61_02166a6c
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02166bf0
.global func_ov61_02166c04
arm_func_start func_ov61_02166c04
func_ov61_02166c04: ; 0x02166c04
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0xc
ldr r5, [sp, #0x20]
add r6, sp, #4
mov r4, #4
_02166c18:
ldrb lr, [r5]
ldrb ip, [r5, #1]
add r5, r5, #2
subs r4, r4, #1
strb lr, [r6]
strb ip, [r6, #1]
add r6, r6, #2
bne _02166c18
ldr lr, [sp, #0x24]
add ip, sp, #4
strb lr, [sp, #4]
str ip, [sp]
bl func_ov61_02159010
mvn r1, #0
bl func_ov61_02166a6c
add sp, sp, #0xc
ldmia sp!, {r3, r4, r5, r6, pc}
arm_func_end func_ov61_02166c04
.global func_ov61_02166c5c
arm_func_start func_ov61_02166c5c
func_ov61_02166c5c: ; 0x02166c5c
stmdb sp!, {r3, lr}
ldr r1, [sp, #8]
mov r0, r3
ldr r2, [r1]
mov r1, #0
bl func_02007a44
mov r0, #0
sub r1, r0, #1
bl func_ov61_02166a6c
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02166c5c
.global func_ov61_02166c84
arm_func_start func_ov61_02166c84
func_ov61_02166c84: ; 0x02166c84
ldr ip, _02166c94 ; =func_ov61_02166a6c
mov r0, #0
sub r1, r0, #1
bx ip
.align 2, 0
arm_func_end func_ov61_02166c84
_02166c94: .word func_ov61_02166a6c
.global func_ov61_02166c98
arm_func_start func_ov61_02166c98
func_ov61_02166c98: ; 0x02166c98
stmdb sp!, {r3, r4, r5, lr}
mov r4, r2
ldr r2, [r4]
mov r5, r1
strb r2, [r5]
bl func_ov61_0215916c
ldrb r2, [r5]
mvn r1, #0
str r2, [r4]
bl func_ov61_02166a6c
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02166c98
.global func_ov61_02166cc4
arm_func_start func_ov61_02166cc4
func_ov61_02166cc4: ; 0x02166cc4
stmdb sp!, {r3, lr}
add r1, sp, #0
bl func_ov61_02159584
cmp r0, #0
mvneq r0, #0
ldrne r0, [sp]
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02166cc4
.global func_ov61_02166ce0
arm_func_start func_ov61_02166ce0
func_ov61_02166ce0: ; 0x02166ce0
ldr r0, _02166cec ; =data_ov61_02181100
ldr r0, [r0, #4]
bx lr
.align 2, 0
arm_func_end func_ov61_02166ce0
_02166cec: .word data_ov61_02181100
.global func_ov61_02166cf0
arm_func_start func_ov61_02166cf0
func_ov61_02166cf0: ; 0x02166cf0
stmdb sp!, {r4, lr}
mov r4, r0
bl func_0200e880
cmp r0, #1
beq _02166d18
ldr r0, _02166d40 ; =data_ov61_0217c2a4
ldr r1, _02166d44 ; =data_ov61_0217c2c4
ldr r2, _02166d48 ; =data_ov61_0217c28c
ldr r3, _02166d4c ; =0x00000667
bl func_02042f80
_02166d18:
bl func_0200e8f8
mov r1, r1, lsl #0x6
orr r1, r1, r0, lsr #26
ldr r2, _02166d50 ; =0x01ff6210
mov r0, r0, lsl #0x6
mov r3, #0
bl func_02002bac
cmp r4, #0
strne r0, [r4]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02166cf0
_02166d40: .word data_ov61_0217c2a4
_02166d44: .word data_ov61_0217c2c4
_02166d48: .word data_ov61_0217c28c
_02166d4c: .word 0x00000667
_02166d50: .word 0x01ff6210
.global func_ov61_02166d54
arm_func_start func_ov61_02166d54
func_ov61_02166d54: ; 0x02166d54
ldr r2, _02166d9c ; =0x000041a7
mov r1, r0, lsl #0x10
mov r0, r0, lsr #0x10
mul r3, r0, r2
mov r1, r1, lsr #0x10
mul r2, r1, r2
mov r0, r3, lsl #0x11
add r0, r2, r0, lsr #1
mvn r1, #0x80000000
cmp r0, r1
bichi r0, r0, #0x80000000
addhi r0, r0, #1
add r0, r0, r3, lsr #15
mvn r1, #0x80000000
cmp r0, r1
bichi r0, r0, #0x80000000
addhi r0, r0, #1
bx lr
.align 2, 0
arm_func_end func_ov61_02166d54
_02166d9c: .word 0x000041a7
.global func_ov61_02166da0
arm_func_start func_ov61_02166da0
func_ov61_02166da0: ; 0x02166da0
stmdb sp!, {r3, lr}
ldr r0, _02166dbc ; =data_ov61_0217c288
ldr r0, [r0]
bl func_ov61_02166d54
ldr r1, _02166dbc ; =data_ov61_0217c288
str r0, [r1]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02166da0
_02166dbc: .word data_ov61_0217c288
.global func_ov61_02166dc0
arm_func_start func_ov61_02166dc0
func_ov61_02166dc0: ; 0x02166dc0
cmp r0, #0
bicne r1, r0, #0x80000000
ldr r0, _02166dd8 ; =data_ov61_0217c288
moveq r1, #1
str r1, [r0]
bx lr
.align 2, 0
arm_func_end func_ov61_02166dc0
_02166dd8: .word data_ov61_0217c288
.global func_ov61_02166ddc
arm_func_start func_ov61_02166ddc
func_ov61_02166ddc: ; 0x02166ddc
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
subs r4, r1, r5
ldmeqia sp!, {r3, r4, r5, pc}
bl func_ov61_02166da0
mov r1, r4
bl func_02002c14
add r0, r1, r5
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02166ddc
.global func_ov61_02166e00
arm_func_start func_ov61_02166e00
func_ov61_02166e00: ; 0x02166e00
stmdb sp!, {r3, lr}
cmp r2, #0
mov ip, #0
ble _02166e28
add lr, sp, #0
_02166e14:
ldrsb r3, [r0, ip]
add ip, ip, #1
cmp ip, r2
strb r3, [lr], #1
blt _02166e14
_02166e28:
cmp ip, #3
bge _02166e4c
add r0, sp, #0
add r2, r0, ip
mov r0, #0
_02166e3c:
add ip, ip, #1
cmp ip, #3
strb r0, [r2], #1
blt _02166e3c
_02166e4c:
ldrb r0, [sp]
mov r0, r0, asr #0x2
strb r0, [r1]
ldrb r2, [sp]
ldrb r0, [sp, #1]
mov r2, r2, lsl #0x1e
mov r0, r0, asr #0x4
orr r0, r0, r2, lsr #26
strb r0, [r1, #1]
ldrb r2, [sp, #1]
ldrb r0, [sp, #2]
mov r2, r2, lsl #0x1c
mov r0, r0, asr #0x6
orr r0, r0, r2, lsr #26
strb r0, [r1, #2]
ldrb r0, [sp, #2]
and r0, r0, #0x3f
strb r0, [r1, #3]
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02166e00
.global func_ov61_02166e98
arm_func_start func_ov61_02166e98
func_ov61_02166e98: ; 0x02166e98
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
mov r7, r1
mov r6, r2
mov r10, r0
mov r5, r7
mov r9, r6
cmp r3, #1
beq _02166ec4
cmp r3, #2
beq _02166ecc
b _02166ed4
_02166ec4:
ldr r4, _02166fc0 ; =data_ov61_0217a33c
b _02166ed8
_02166ecc:
ldr r4, _02166fc4 ; =data_ov61_0217a340
b _02166ed8
_02166ed4:
ldr r4, _02166fc8 ; =data_ov61_0217a344
_02166ed8:
cmp r6, #0
ble _02166f10
mov r8, #3
_02166ee4:
cmp r6, #3
movge r2, r8
movlt r2, r6
mov r0, r10
mov r1, r7
bl func_ov61_02166e00
sub r9, r9, #3
cmp r9, #0
add r7, r7, #4
add r10, r10, #3
bgt _02166ee4
_02166f10:
ldr r1, _02166fcc ; =0x55555556
mov r2, #3
smull r0, r3, r1, r6
add r3, r3, r6, lsr #31
smull r0, r1, r2, r3
sub r3, r6, r0
mov r1, r7
cmp r3, #1
subeq r1, r7, #2
beq _02166f40
cmp r3, #2
subeq r1, r7, #1
_02166f40:
mov r0, #0
strb r0, [r7]
cmp r7, r5
ldmlsia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02166f50:
sub r7, r7, #1
cmp r7, r1
ldrhssb r0, [r4, #2]
strhsb r0, [r7]
bhs _02166fb4
ldrsb r0, [r7]
cmp r0, #0x19
addle r0, r0, #0x41
strleb r0, [r7]
ble _02166fb4
cmp r0, #0x33
addle r0, r0, #0x47
strleb r0, [r7]
ble _02166fb4
cmp r0, #0x3d
suble r0, r0, #4
strleb r0, [r7]
ble _02166fb4
cmp r0, #0x3e
ldreqsb r0, [r4]
streqb r0, [r7]
beq _02166fb4
cmp r0, #0x3f
ldreqsb r0, [r4, #1]
streqb r0, [r7]
_02166fb4:
cmp r7, r5
bhi _02166f50
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
.align 2, 0
arm_func_end func_ov61_02166e98
_02166fc0: .word data_ov61_0217a33c
_02166fc4: .word data_ov61_0217a340
_02166fc8: .word data_ov61_0217a344
_02166fcc: .word 0x55555556
.global func_ov61_02166fd0
arm_func_start func_ov61_02166fd0
func_ov61_02166fd0: ; 0x02166fd0
stmdb sp!, {r3, lr}
ldr r3, _02166ffc ; =data_ov61_02181024
ldr r3, [r3]
cmp r3, #1
movne r0, #2
ldmneia sp!, {r3, pc}
cmp r0, #0
moveq r0, #2
ldmeqia sp!, {r3, pc}
bl func_ov61_02167b74
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02166fd0
_02166ffc: .word data_ov61_02181024
.global func_ov61_02167000
arm_func_start func_ov61_02167000
func_ov61_02167000: ; 0x02167000
stmdb sp!, {r3, lr}
cmp r0, #0
ldrne r1, [r0]
cmpne r1, #0
ldmeqia sp!, {r3, pc}
bl func_ov61_02167cbc
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02167000
.global func_ov61_0216701c
arm_func_start func_ov61_0216701c
func_ov61_0216701c: ; 0x0216701c
stmdb sp!, {r3, lr}
cmp r0, #0
ldrne r1, [r0]
cmpne r1, #0
moveq r0, #2
ldmeqia sp!, {r3, pc}
ldr r1, [r1, #0x108]
cmp r1, #0
movne r0, #0
ldmneia sp!, {r3, pc}
mov r1, #0
bl func_ov61_02168158
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0216701c
.global func_ov61_02167050
arm_func_start func_ov61_02167050
func_ov61_02167050: ; 0x02167050
stmdb sp!, {r3, lr}
cmp r0, #0
ldrne ip, [r0]
cmpne ip, #0
moveq r0, #2
ldmeqia sp!, {r3, pc}
cmp r1, #0
blt _02167078
cmp r1, #6
blt _02167088
_02167078:
ldr r1, _0216709c ; =data_ov61_0217c2f0
bl func_ov61_02171b10
mov r0, #2
ldmia sp!, {r3, pc}
_02167088:
add r0, ip, r1, lsl #3
str r2, [r0, #0x1a4]
str r3, [r0, #0x1a8]
mov r0, #0
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02167050
_0216709c: .word data_ov61_0217c2f0
.global func_ov61_021670a0
arm_func_start func_ov61_021670a0
func_ov61_021670a0: ; 0x021670a0
stmdb sp!, {r3, r4, lr}
sub sp, sp, #0x44
movs lr, r0
ldrne ip, [lr]
cmpne ip, #0
addeq sp, sp, #0x44
moveq r0, #2
ldmeqia sp!, {r3, r4, pc}
cmp r1, #0
ldrnesb r4, [r1]
cmpne r4, #0
addeq sp, sp, #0x44
moveq r0, #2
ldmeqia sp!, {r3, r4, pc}
cmp r2, #0
ldrnesb r4, [r2]
cmpne r4, #0
addeq sp, sp, #0x44
moveq r0, #2
ldmeqia sp!, {r3, r4, pc}
ldr r4, [sp, #0x54]
cmp r4, #0
bne _02167110
ldr r1, _0216719c ; =data_ov61_0217c300
bl func_ov61_02171b10
add sp, sp, #0x44
mov r0, #2
ldmia sp!, {r3, r4, pc}
_02167110:
ldr ip, [ip, #0x108]
cmp ip, #0
beq _02167158
add r3, sp, #0x24
mov r0, #0
mov r2, r3
mov r1, r0
stmia r2!, {r0, r1}
stmia r2!, {r0, r1}
stmia r2!, {r0, r1}
stmia r2, {r0, r1}
ldr r2, [sp, #0x58]
mov r0, lr
mov r1, r3
blx r4
add sp, sp, #0x44
mov r0, #0
ldmia sp!, {r3, r4, pc}
_02167158:
ldr lr, _021671a0 ; =data_ov61_0217c310
mov ip, #0
str lr, [sp]
stmib sp, {r1, r2, ip}
str r3, [sp, #0x10]
str ip, [sp, #0x14]
ldr r1, [sp, #0x50]
ldr ip, [sp, #0x58]
str r1, [sp, #0x18]
str r4, [sp, #0x1c]
mov r1, lr
mov r2, lr
mov r3, lr
str ip, [sp, #0x20]
bl func_ov61_0216a464
add sp, sp, #0x44
ldmia sp!, {r3, r4, pc}
.align 2, 0
arm_func_end func_ov61_021670a0
_0216719c: .word data_ov61_0217c300
_021671a0: .word data_ov61_0217c310
.global func_ov61_021671a4
arm_func_start func_ov61_021671a4
func_ov61_021671a4: ; 0x021671a4
stmdb sp!, {r4, lr}
movs r4, r0
ldrne r1, [r4]
cmpne r1, #0
ldmeqia sp!, {r4, pc}
ldr r1, [r1, #0x108]
cmp r1, #0
ldmneia sp!, {r4, pc}
mov r1, #1
bl func_ov61_0216b504
mov r0, r4
bl func_ov61_02167d18
ldmia sp!, {r4, pc}
arm_func_end func_ov61_021671a4
.global func_ov61_021671d8
arm_func_start func_ov61_021671d8
func_ov61_021671d8: ; 0x021671d8
stmdb sp!, {r3, r4, lr}
sub sp, sp, #0x2c
cmp r0, #0
ldrne r4, [r0]
cmpne r4, #0
addeq sp, sp, #0x2c
moveq r0, #2
ldmeqia sp!, {r3, r4, pc}
ldr ip, [sp, #0x48]
cmp ip, #0
bne _02167218
ldr r1, _02167298 ; =data_ov61_0217c300
bl func_ov61_02171b10
add sp, sp, #0x2c
mov r0, #2
ldmia sp!, {r3, r4, pc}
_02167218:
ldr r4, [r4, #0x108]
cmp r4, #0
beq _02167258
add r1, sp, #0x1c
mov r4, #0
ldr r2, [sp, #0x4c]
ldr r3, _0216729c ; =0x00000601
str r4, [r1, #8]
str r4, [r1]
str r4, [r1, #4]
str r4, [r1, #0xc]
str r3, [sp, #0x24]
blx ip
add sp, sp, #0x2c
mov r0, r4
ldmia sp!, {r3, r4, pc}
_02167258:
ldr r4, [sp, #0x38]
ldr lr, [sp, #0x3c]
str r4, [sp]
ldr r4, [sp, #0x40]
str lr, [sp, #4]
str r4, [sp, #8]
mov r4, #0
ldr lr, [sp, #0x44]
str r4, [sp, #0xc]
str lr, [sp, #0x10]
ldr lr, [sp, #0x4c]
str ip, [sp, #0x14]
str lr, [sp, #0x18]
bl func_ov61_0216f5b0
add sp, sp, #0x2c
ldmia sp!, {r3, r4, pc}
.align 2, 0
arm_func_end func_ov61_021671d8
_02167298: .word data_ov61_0217c300
_0216729c: .word 0x00000601
.global func_ov61_021672a0
arm_func_start func_ov61_021672a0
func_ov61_021672a0: ; 0x021672a0
stmdb sp!, {r4, r5, lr}
sub sp, sp, #0x20c
movs r5, r0
ldrne r4, [r5]
cmpne r4, #0
cmpne r1, #0
addeq sp, sp, #0x20c
moveq r0, #2
ldmeqia sp!, {r4, r5, pc}
ldr lr, [sp, #0x218]
cmp lr, #0
bne _021672e4
ldr r1, _02167374 ; =data_ov61_0217c300
bl func_ov61_02171b10
add sp, sp, #0x20c
mov r0, #2
ldmia sp!, {r4, r5, pc}
_021672e4:
ldr ip, [r4, #0x108]
cmp ip, #0
beq _0216733c
mov r0, #0
add lr, sp, #8
mov r1, r0
mov r2, r0
mov r3, r0
mov ip, #0x10
_02167308:
stmia lr!, {r0, r1, r2, r3}
stmia lr!, {r0, r1, r2, r3}
subs ip, ip, #1
bne _02167308
ldr r2, [sp, #0x21c]
str r0, [lr]
ldr r3, [sp, #0x218]
add r1, sp, #8
mov r0, r5
blx r3
add sp, sp, #0x20c
mov r0, #0
ldmia sp!, {r4, r5, pc}
_0216733c:
ldr ip, [r4, #0x1d8]
cmp ip, #4
bne _0216735c
ldr r1, _02167378 ; =data_ov61_0217c314
bl func_ov61_02171b10
add sp, sp, #0x20c
mov r0, #2
ldmia sp!, {r4, r5, pc}
_0216735c:
ldr ip, [sp, #0x21c]
str lr, [sp]
str ip, [sp, #4]
bl func_ov61_0216d168
add sp, sp, #0x20c
ldmia sp!, {r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_021672a0
_02167374: .word data_ov61_0217c300
_02167378: .word data_ov61_0217c314
.global func_ov61_0216737c
arm_func_start func_ov61_0216737c
func_ov61_0216737c: ; 0x0216737c
stmdb sp!, {r3, lr}
cmp r0, #0
ldrne ip, [r0]
cmpne ip, #0
moveq r0, #2
ldmeqia sp!, {r3, pc}
ldr r3, [ip, #0x108]
cmp r3, #0
movne r0, #0
ldmneia sp!, {r3, pc}
ldr r3, [ip, #0x1d8]
cmp r3, #4
bne _021673c0
ldr r1, _021673c8 ; =data_ov61_0217c314
bl func_ov61_02171b10
mov r0, #2
ldmia sp!, {r3, pc}
_021673c0:
bl func_ov61_0216c8f8
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0216737c
_021673c8: .word data_ov61_0217c314
.global func_ov61_021673cc
arm_func_start func_ov61_021673cc
func_ov61_021673cc: ; 0x021673cc
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
sub sp, sp, #0x400
movs r6, r0
ldrne r4, [r6]
mov r5, r1
cmpne r4, #0
addeq sp, sp, #4
addeq sp, sp, #0x400
moveq r0, #2
ldmeqia sp!, {r3, r4, r5, r6, pc}
ldr r1, [r4, #0x108]
cmp r1, #0
addne sp, sp, #4
addne sp, sp, #0x400
movne r0, #0
ldmneia sp!, {r3, r4, r5, r6, pc}
ldr r1, [r4, #0x1d8]
cmp r1, #4
bne _02167434
ldr r1, _02167520 ; =data_ov61_0217c314
bl func_ov61_02171b10
add sp, sp, #4
add sp, sp, #0x400
mov r0, #2
ldmia sp!, {r3, r4, r5, r6, pc}
_02167434:
cmp r2, #0
bne _02167454
ldr r1, _02167524 ; =data_ov61_0217c344
bl func_ov61_02171b10
add sp, sp, #4
add sp, sp, #0x400
mov r0, #2
ldmia sp!, {r3, r4, r5, r6, pc}
_02167454:
mov r1, r2
ldr r2, _02167528 ; =0x00000401
add r0, sp, #0
bl func_ov61_021715c8
ldrsb r0, [sp]
cmp r0, #0
beq _02167490
add r2, sp, #0
mov r1, #0x2f
_02167478:
ldrsb r0, [r2]
cmp r0, #0x5c
streqb r1, [r2]
ldrsb r0, [r2, #1]!
cmp r0, #0
bne _02167478
_02167490:
ldr r2, _0216752c ; =data_ov61_0217c354
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
ldr r2, _02167530 ; =data_ov61_0217c360
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
ldr r2, [r4, #0x198]
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216939c
ldr r2, _02167534 ; =data_ov61_0217c36c
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r2, r5
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216939c
ldr r2, _02167538 ; =data_ov61_0217c37c
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r0, r6
add r1, r4, #0x1f4
add r2, sp, #0
bl func_ov61_0216936c
ldr r2, _0216753c ; =data_ov61_0217c388
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r0, #0
add sp, sp, #4
add sp, sp, #0x400
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_021673cc
_02167520: .word data_ov61_0217c314
_02167524: .word data_ov61_0217c344
_02167528: .word 0x00000401
_0216752c: .word data_ov61_0217c354
_02167530: .word data_ov61_0217c360
_02167534: .word data_ov61_0217c36c
_02167538: .word data_ov61_0217c37c
_0216753c: .word data_ov61_0217c388
.global func_ov61_02167540
arm_func_start func_ov61_02167540
func_ov61_02167540: ; 0x02167540
stmdb sp!, {r3, lr}
cmp r0, #0
ldrne r3, [r0]
cmpne r3, #0
moveq r0, #2
ldmeqia sp!, {r3, pc}
ldr r2, [r3, #0x108]
cmp r2, #0
movne r0, #0
ldmneia sp!, {r3, pc}
ldr r2, [r3, #0x1d8]
cmp r2, #4
bne _02167584
ldr r1, _0216758c ; =data_ov61_0217c314
bl func_ov61_02171b10
mov r0, #2
ldmia sp!, {r3, pc}
_02167584:
bl func_ov61_02168f2c
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02167540
_0216758c: .word data_ov61_0217c314
.global func_ov61_02167590
arm_func_start func_ov61_02167590
func_ov61_02167590: ; 0x02167590
stmdb sp!, {r3, r4, r5, lr}
movs r4, r0
ldrne r5, [r4]
cmpne r5, #0
moveq r0, #2
ldmeqia sp!, {r3, r4, r5, pc}
ldr r2, [r5, #0x108]
cmp r2, #0
movne r0, #0
ldmneia sp!, {r3, r4, r5, pc}
ldr r2, [r5, #0x1d8]
cmp r2, #4
bne _021675d4
ldr r1, _0216764c ; =data_ov61_0217c314
bl func_ov61_02171b10
mov r0, #2
ldmia sp!, {r3, r4, r5, pc}
_021675d4:
add r2, sp, #0
bl func_ov61_0216f050
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r1, [sp]
ldr r0, [r1, #0x14]
sub r0, r0, #1
str r0, [r1, #0x14]
ldr r0, [r5, #0x100]
cmp r0, #0
bne _02167644
ldr r1, [sp]
ldr r0, [r1, #0x14]
cmp r0, #0
bgt _02167644
ldr r0, [r1, #0x10]
bl func_ov61_0213e13c
ldr r0, [sp]
mov r1, #0
str r1, [r0, #0x10]
ldr r0, [sp]
bl func_ov61_0216f238
cmp r0, #0
beq _02167644
ldr r1, [sp]
mov r0, r4
bl func_ov61_0216f0c0
_02167644:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02167590
_0216764c: .word data_ov61_0217c314
.global func_ov61_02167650
arm_func_start func_ov61_02167650
func_ov61_02167650: ; 0x02167650
cmp r0, #0
ldrne r2, [r0]
cmpne r2, #0
moveq r0, #2
bxeq lr
ldr r0, [r2, #0x108]
cmp r0, #0
mov r0, #0
strne r0, [r1]
ldreq r2, [r2, #0x430]
streq r2, [r1]
bx lr
arm_func_end func_ov61_02167650
.global func_ov61_02167680
arm_func_start func_ov61_02167680
func_ov61_02167680: ; 0x02167680
stmdb sp!, {r4, r5, r6, lr}
movs r4, r0
ldrne r3, [r4]
mov r5, r2
cmpne r3, #0
moveq r0, #2
ldmeqia sp!, {r4, r5, r6, pc}
ldr r2, [r3, #0x108]
cmp r2, #0
beq _021676c0
mov r0, r5
mov r1, #0
mov r2, #0x210
bl func_02043600
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
_021676c0:
cmp r5, #0
bne _021676d8
ldr r1, _021677a8 ; =data_ov61_0217c390
bl func_ov61_02171b10
mov r0, #2
ldmia sp!, {r4, r5, r6, pc}
_021676d8:
cmp r1, #0
ldr r2, [r3, #0x430]
blt _021676ec
cmp r1, r2
blt _02167700
_021676ec:
ldr r1, _021677ac ; =data_ov61_0217c3a0
mov r0, r4
bl func_ov61_02171b10
mov r0, #2
ldmia sp!, {r4, r5, r6, pc}
_02167700:
bl func_ov61_0216f208
movs r6, r0
bne _02167720
ldr r1, _021677ac ; =data_ov61_0217c3a0
mov r0, r4
bl func_ov61_02171b10
mov r0, #2
ldmia sp!, {r4, r5, r6, pc}
_02167720:
ldr r4, [r6, #8]
cmp r4, #0
bne _02167740
ldr r0, _021677b0 ; =data_ov61_0217c3b0
ldr r1, _021677b4 ; =data_ov61_0217c3bc
ldr r2, _021677b8 ; =data_ov61_0217c2dc
ldr r3, _021677bc ; =0x000005cf
bl func_02042f80
_02167740:
ldr r0, [r6]
str r0, [r5]
ldr r0, [r4, #4]
str r0, [r5, #4]
ldr r1, [r4, #8]
cmp r1, #0
moveq r0, #0
streqb r0, [r1]
beq _02167770
add r0, r5, #8
mov r2, #0x100
bl func_ov61_021715c8
_02167770:
ldr r1, [r4, #0xc]
cmp r1, #0
moveq r0, #0
streqb r0, [r1]
beq _02167790
add r0, r5, #0x108
mov r2, #0x100
bl func_ov61_021715c8
_02167790:
ldr r1, [r4, #0x10]
mov r0, #0
str r1, [r5, #0x208]
ldr r1, [r4, #0x14]
str r1, [r5, #0x20c]
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02167680
_021677a8: .word data_ov61_0217c390
_021677ac: .word data_ov61_0217c3a0
_021677b0: .word data_ov61_0217c3b0
_021677b4: .word data_ov61_0217c3bc
_021677b8: .word data_ov61_0217c2dc
_021677bc: .word 0x000005cf
.global func_ov61_021677c0
arm_func_start func_ov61_021677c0
func_ov61_021677c0: ; 0x021677c0
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
mov r4, r2
cmp r0, #0
ldrne r2, [r0]
cmpne r2, #0
addeq sp, sp, #4
moveq r0, #2
ldmeqia sp!, {r3, r4, pc}
ldr r2, [r2, #0x108]
cmp r2, #0
movne r0, #0
addne sp, sp, #4
strne r0, [r4]
ldmneia sp!, {r3, r4, pc}
add r2, sp, #0
bl func_ov61_0216f050
cmp r0, #0
ldrne r0, [sp]
ldrne r0, [r0, #8]
cmpne r0, #0
ldrne r0, [r0]
strne r0, [r4]
mvneq r0, #0
streq r0, [r4]
mov r0, #0
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
arm_func_end func_ov61_021677c0
.global func_ov61_02167830
arm_func_start func_ov61_02167830
func_ov61_02167830: ; 0x02167830
stmdb sp!, {r3, lr}
cmp r0, #0
ldrne r2, [r0]
cmpne r2, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
ldr r2, [r2, #0x108]
cmp r2, #0
movne r0, #0
ldmneia sp!, {r3, pc}
add r2, sp, #0
bl func_ov61_0216f050
cmp r0, #0
ldrne r0, [sp]
ldrne r0, [r0, #8]
cmpne r0, #0
movne r0, #1
moveq r0, #0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02167830
.global func_ov61_0216787c
arm_func_start func_ov61_0216787c
func_ov61_0216787c: ; 0x0216787c
stmdb sp!, {r3, lr}
cmp r0, #0
ldrne r3, [r0]
cmpne r3, #0
moveq r0, #2
ldmeqia sp!, {r3, pc}
ldr r2, [r3, #0x108]
cmp r2, #0
movne r0, #0
ldmneia sp!, {r3, pc}
ldr r2, [r3, #0x1d8]
cmp r2, #4
bne _021678c0
ldr r1, _021678d0 ; =data_ov61_0217c314
bl func_ov61_02171b10
mov r0, #2
ldmia sp!, {r3, pc}
_021678c0:
bl func_ov61_0216901c
cmp r0, #0
moveq r0, #0
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0216787c
_021678d0: .word data_ov61_0217c314
.global func_ov61_021678d4
arm_func_start func_ov61_021678d4
func_ov61_021678d4: ; 0x021678d4
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #0x200
movs r7, r0
ldrne r4, [r7]
mov r6, r1
cmpne r4, #0
mov r5, r3
addeq sp, sp, #0x200
moveq r0, #2
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r1, [r4, #0x108]
cmp r1, #0
addne sp, sp, #0x200
movne r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
ldr r1, [r4, #0x1d8]
cmp r1, #4
bne _02167930
ldr r1, _02167ae0 ; =data_ov61_0217c314
bl func_ov61_02171b10
add sp, sp, #0x200
mov r0, #2
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02167930:
cmp r2, #0
bne _0216794c
ldr r1, _02167ae4 ; =data_ov61_0217c3c4
bl func_ov61_02171b10
add sp, sp, #0x200
mov r0, #2
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216794c:
cmp r5, #0
bne _02167968
ldr r1, _02167ae8 ; =data_ov61_0217c3dc
bl func_ov61_02171b10
add sp, sp, #0x200
mov r0, #2
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02167968:
mov r1, r2
add r0, sp, #0x100
mov r2, #0x100
bl func_ov61_021715c8
add r0, sp, #0x100
ldrsb r0, [r0]
cmp r0, #0
beq _021679a8
add r2, sp, #0x100
mov r1, #0x2f
_02167990:
ldrsb r0, [r2]
cmp r0, #0x5c
streqb r1, [r2]
ldrsb r0, [r2, #1]!
cmp r0, #0
bne _02167990
_021679a8:
add r0, sp, #0
mov r1, r5
mov r2, #0x100
bl func_ov61_021715c8
ldrsb r0, [sp]
cmp r0, #0
beq _021679e4
add r2, sp, #0
mov r1, #0x2f
_021679cc:
ldrsb r0, [r2]
cmp r0, #0x5c
streqb r1, [r2]
ldrsb r0, [r2, #1]!
cmp r0, #0
bne _021679cc
_021679e4:
ldr r0, [r4, #0x214]
cmp r6, r0
bne _02167a20
add r0, sp, #0x100
add r1, r4, #0x218
bl strcmp
cmp r0, #0
bne _02167a20
add r0, sp, #0
add r1, r4, #0x318
bl strcmp
cmp r0, #0
addeq sp, sp, #0x200
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
_02167a20:
add r1, sp, #0x100
add r0, r4, #0x218
mov r2, #0x100
str r6, [r4, #0x214]
bl func_ov61_021715c8
add r1, sp, #0
add r0, r4, #0x318
mov r2, #0x100
bl func_ov61_021715c8
ldr r2, _02167aec ; =data_ov61_0217c3f4
mov r0, r7
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r0, r7
mov r2, r6
add r1, r4, #0x1f4
bl func_ov61_0216939c
ldr r2, _02167af0 ; =data_ov61_0217c360
mov r0, r7
add r1, r4, #0x1f4
bl func_ov61_0216936c
ldr r2, [r4, #0x198]
mov r0, r7
add r1, r4, #0x1f4
bl func_ov61_0216939c
ldr r2, _02167af4 ; =data_ov61_0217c400
mov r0, r7
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r0, r7
add r1, r4, #0x1f4
add r2, sp, #0x100
bl func_ov61_0216936c
ldr r2, _02167af8 ; =data_ov61_0217c410
mov r0, r7
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r0, r7
add r1, r4, #0x1f4
add r2, sp, #0
bl func_ov61_0216936c
ldr r2, _02167afc ; =data_ov61_0217c388
mov r0, r7
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r0, #0
add sp, sp, #0x200
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_021678d4
_02167ae0: .word data_ov61_0217c314
_02167ae4: .word data_ov61_0217c3c4
_02167ae8: .word data_ov61_0217c3dc
_02167aec: .word data_ov61_0217c3f4
_02167af0: .word data_ov61_0217c360
_02167af4: .word data_ov61_0217c400
_02167af8: .word data_ov61_0217c410
_02167afc: .word data_ov61_0217c388
.global func_ov61_02167b00
arm_func_start func_ov61_02167b00
func_ov61_02167b00: ; 0x02167b00
stmdb sp!, {r3, lr}
cmp r0, #0
ldrne ip, [r0]
mov r3, r2
cmpne ip, #0
moveq r0, #2
ldmeqia sp!, {r3, pc}
ldr r2, [ip, #0x108]
cmp r2, #0
movne r0, #0
ldmneia sp!, {r3, pc}
ldr r2, [ip, #0x1d8]
cmp r2, #4
bne _02167b48
ldr r1, _02167b6c ; =data_ov61_0217c314
bl func_ov61_02171b10
mov r0, #2
ldmia sp!, {r3, pc}
_02167b48:
cmp r3, #0
bne _02167b60
ldr r1, _02167b70 ; =data_ov61_0217c41c
bl func_ov61_02171b10
mov r0, #2
ldmia sp!, {r3, pc}
_02167b60:
mov r2, #1
bl func_ov61_02168e44
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02167b00
_02167b6c: .word data_ov61_0217c314
_02167b70: .word data_ov61_0217c41c
.global func_ov61_02167b74
arm_func_start func_ov61_02167b74
func_ov61_02167b74: ; 0x02167b74
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
mov r6, r0
mov r0, #0
str r0, [r6]
mov r0, #0x490
mov r5, r1
mov r4, r2
bl func_ov61_0213e10c
str r0, [sp]
cmp r0, #0
addeq sp, sp, #4
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, pc}
mov r1, #0
mov r2, #0x490
bl func_02043600
ldr r0, [sp]
mov r3, #0
strb r3, [r0]
ldr r0, [sp]
mov r2, #1
str r3, [r0, #0x418]
ldr r1, [sp]
add r0, sp, #0
str r2, [r1, #0x100]
ldr r1, [sp]
str r3, [r1, #0x104]
ldr r1, [sp]
str r3, [r1, #0x108]
ldr r1, [sp]
str r3, [r1, #0x10c]
ldr r1, [sp]
str r5, [r1, #0x46c]
ldr r1, [sp]
str r4, [r1, #0x470]
bl func_ov61_0216edb4
cmp r0, #0
bne _02167c2c
ldr r0, [sp]
bl func_ov61_0213e13c
mov r0, #0
str r0, [sp]
add sp, sp, #4
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, pc}
_02167c2c:
ldr r0, [sp]
mov r1, #0
str r1, [r0, #0x420]
mov r3, r1
_02167c3c:
ldr r0, [sp]
add r0, r0, r1, lsl #3
str r3, [r0, #0x1a4]
ldr r0, [sp]
add r0, r0, r1, lsl #3
add r1, r1, #1
str r3, [r0, #0x1a8]
cmp r1, #6
blt _02167c3c
ldr r2, [sp]
ldr r1, _02167cb8 ; =data_ov61_0217c43c
add r0, sp, #0
str r3, [r2, #0x460]
bl func_ov61_0217163c
add r0, sp, #0
bl func_ov61_02167d18
movs r4, r0
beq _02167c98
add r0, sp, #0
bl func_ov61_02167cbc
add sp, sp, #4
mov r0, r4
ldmia sp!, {r3, r4, r5, r6, pc}
_02167c98:
bl func_ov61_0216664c
bl func_ov61_021665e8
bl func_02045b7c
ldr r1, [sp]
mov r0, #0
str r1, [r6]
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02167b74
_02167cb8: .word data_ov61_0217c43c
.global func_ov61_02167cbc
arm_func_start func_ov61_02167cbc
func_ov61_02167cbc: ; 0x02167cbc
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r4, [r5]
mov r1, #1
bl func_ov61_0216b504
ldr r0, [r4, #0x460]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0x460]
ldr r0, [r4, #0x428]
bl func_ov61_021661a4
mov r0, r4
bl func_ov61_0213e13c
mov r0, #0
str r0, [r5]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02167cbc
.global func_ov61_02167cfc
arm_func_start func_ov61_02167cfc
func_ov61_02167cfc: ; 0x02167cfc
mov r0, #0
str r0, [r1, #8]
str r0, [r1, #0x10]
str r0, [r1, #0x14]
str r0, [r1, #0x18]
mov r0, #1
bx lr
arm_func_end func_ov61_02167cfc
.global func_ov61_02167d18
arm_func_start func_ov61_02167d18
func_ov61_02167d18: ; 0x02167d18
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r4, [r5]
mov r1, #0
strb r1, [r4, #0x110]
strb r1, [r4, #0x12f]
strb r1, [r4, #0x144]
sub r0, r1, #1
str r0, [r4, #0x1d4]
str r1, [r4, #0x1d8]
str r1, [r4, #0x1e4]
str r1, [r4, #0x1e8]
str r1, [r4, #0x1e0]
ldr r0, [r4, #0x1dc]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0x1dc]
str r0, [r4, #0x1f0]
ldr r0, [r4, #0x1ec]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0x1ec]
str r0, [r4, #0x1fc]
str r0, [r4, #0x200]
str r0, [r4, #0x1f8]
ldr r0, [r4, #0x1f4]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0x1f4]
str r0, [r4, #0x448]
str r0, [r4, #0x44c]
str r0, [r4, #0x444]
ldr r0, [r4, #0x440]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0x440]
str r0, [r4, #0x458]
str r0, [r4, #0x45c]
str r0, [r4, #0x454]
ldr r0, [r4, #0x450]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0x450]
sub r0, r0, #1
str r0, [r4, #0x204]
mov r0, #2
str r0, [r4, #0x20c]
ldr r1, [r4, #0x424]
cmp r1, #0
beq _02167df4
_02167de0:
mov r0, r5
bl func_ov61_0216d950
ldr r1, [r4, #0x424]
cmp r1, #0
bne _02167de0
_02167df4:
mov r2, #0
str r2, [r4, #0x424]
ldr r1, _02167e3c ; =func_ov61_02167cfc
mov r0, r5
str r2, [r4, #0x430]
bl func_ov61_0216f19c
mov r0, #0
str r0, [r4, #0x19c]
str r0, [r4, #0x1a0]
str r0, [r4, #0x198]
str r0, [r4, #0x210]
str r0, [r4, #0x41c]
str r0, [r4, #0x434]
sub r1, r0, #1
str r1, [r4, #0x214]
strb r0, [r4, #0x218]
strb r0, [r4, #0x318]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02167d18
_02167e3c: .word func_ov61_02167cfc
.global func_ov61_02167e40
arm_func_start func_ov61_02167e40
func_ov61_02167e40: ; 0x02167e40
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x14
mov r1, #0
mov r4, r0
str r1, [sp, #8]
ldr r10, [r4]
_02167e58:
mov r0, r4
add r1, r10, #0x1f4
bl func_ov61_0216c2e4
mov r1, #1
ldr r0, _0216812c ; =data_ov61_0217c460
str r1, [sp]
str r0, [sp, #4]
ldr r1, [r10, #0x1d4]
add r3, sp, #8
mov r0, r4
add r2, r10, #0x1f4
bl func_ov61_021698fc
cmp r0, #0
addne sp, sp, #0x14
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
add r1, sp, #8
ldr r0, _0216812c ; =data_ov61_0217c460
str r1, [sp]
str r0, [sp, #4]
ldr r1, [r10, #0x1d4]
add r3, sp, #0xc
mov r0, r4
add r2, r10, #0x1dc
bl func_ov61_021696d4
cmp r0, #0
beq _02167ef8
cmp r0, #3
addne sp, sp, #0x14
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r2, _02168130 ; =data_ov61_0217c464
mov r0, r4
mov r1, #5
bl func_ov61_02171aec
mov r0, r4
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x14
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02167ef8:
ldr r0, [r10, #0x1dc]
ldr r1, _02168134 ; =data_ov61_0217c490
bl strstr
movs r5, r0
beq _021680c8
ldr r6, _02168138 ; =data_ov61_0217c4b4
ldr r8, _0216813c ; =data_ov61_0217c498
add r11, sp, #0x10
mov r7, #0x800
mov r9, #0
_02167f20:
strb r9, [r5]
mov r0, r4
mov r1, r8
ldr r2, [r10, #0x1dc]
bl func_ov61_0217163c
ldr r0, [r10, #0x1dc]
sub r1, r5, r0
str r1, [sp, #0xc]
ldr r0, [r10, #0x1f0]
cmp r1, r0
ble _02167f90
ldr r0, [r10, #0x1f0]
cmp r1, #0x800
movlt r1, r7
add r0, r0, r1
str r0, [r10, #0x1f0]
add r1, r0, #1
ldr r0, [r10, #0x1ec]
bl func_ov61_0213e120
cmp r0, #0
bne _02167f8c
ldr r1, _02168140 ; =data_ov61_0217c4a4
mov r0, r4
bl func_ov61_02171b10
add sp, sp, #0x14
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02167f8c:
str r0, [r10, #0x1ec]
_02167f90:
ldr r2, [sp, #0xc]
ldr r0, [r10, #0x1ec]
ldr r1, [r10, #0x1dc]
add r2, r2, #1
bl func_02043594
ldr r0, [r10, #0x1dc]
add r1, r5, #7
ldr r2, [r10, #0x1e4]
sub r0, r1, r0
sub r0, r2, r0
str r0, [r10, #0x1e4]
add r2, r0, #1
ldr r0, [r10, #0x1dc]
bl func_020435b4
ldr r5, [r10, #0x1ec]
mov r1, r6
mov r0, r5
bl strstr
cmp r0, #0
beq _02168038
add r0, r0, #4
bl func_0204902c
mov r5, r0
mov r0, r4
mov r1, r11
mov r2, r5
bl func_ov61_0216d9a0
cmp r0, #0
bne _02168018
ldr r1, _02168144 ; =data_ov61_0217c4bc
mov r2, r5
mov r0, r4
bl func_ov61_0217163c
b _021680b4
_02168018:
mov r0, r4
ldr r1, [sp, #0x10]
ldr r2, [r10, #0x1ec]
bl func_ov61_0216da28
cmp r0, #0
beq _021680b4
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168038:
mov r1, r5
mov r0, r4
mov r2, #1
bl func_ov61_02171648
cmp r0, #0
addne sp, sp, #0x14
movne r0, #4
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r5, [r10, #0x1ec]
ldr r1, _02168148 ; =data_ov61_0217c4e4
mov r0, r5
mov r2, #4
bl strncmp
cmp r0, #0
bne _02168090
mov r1, r5
mov r0, r4
bl func_ov61_021683b4
cmp r0, #0
beq _021680b4
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168090:
ldr r1, _0216814c ; =data_ov61_0217c4ec
mov r0, r5
mov r2, #0xa
bl strncmp
cmp r0, #0
beq _021680b4
ldr r1, _02168150 ; =data_ov61_0217c4f4
mov r0, r4
bl func_ov61_0217163c
_021680b4:
ldr r0, [r10, #0x1dc]
ldr r1, _02168134 ; =data_ov61_0217c490
bl strstr
movs r5, r0
bne _02167f20
_021680c8:
ldr r0, [sp, #8]
cmp r0, #0
beq _02168100
ldr r2, _02168154 ; =data_ov61_0217c524
mov r0, r4
mov r1, #7
bl func_ov61_02171aec
mov r0, r4
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x14
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168100:
mov r0, r4
bl func_ov61_0216d9ec
movs r5, r0
beq _02168118
mov r0, #0xa
bl func_ov61_02166640
_02168118:
cmp r5, #0
bne _02167e58
mov r0, #0
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02167e40
_0216812c: .word data_ov61_0217c460
_02168130: .word data_ov61_0217c464
_02168134: .word data_ov61_0217c490
_02168138: .word data_ov61_0217c4b4
_0216813c: .word data_ov61_0217c498
_02168140: .word data_ov61_0217c4a4
_02168144: .word data_ov61_0217c4bc
_02168148: .word data_ov61_0217c4e4
_0216814c: .word data_ov61_0217c4ec
_02168150: .word data_ov61_0217c4f4
_02168154: .word data_ov61_0217c524
.global func_ov61_02168158
arm_func_start func_ov61_02168158
func_ov61_02168158: ; 0x02168158
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
mov r10, r0
ldr r6, [r10]
mov r9, r1
ldr r0, [r6, #0x1d8]
mov r7, #0
cmp r0, #4
bls _0216818c
ldr r0, _021682f8 ; =data_ov61_0217c54c
ldr r1, _021682fc ; =data_ov61_0217c644
ldr r2, _02168300 ; =data_ov61_0217c430
ldr r3, _02168304 ; =0x000001b6
bl func_02042f80
_0216818c:
ldr r0, [r6, #0x1d8]
cmp r0, #1
bne _0216822c
mov r4, #0
mov r5, #1
mov r11, #0xa
_021681a4:
mov r0, r10
bl func_ov61_0216b39c
movs r7, r0
bne _021681cc
cmp r9, #0
beq _021681cc
ldr r0, [r6, #0x1d8]
cmp r0, #1
moveq r8, r5
beq _021681d0
_021681cc:
mov r8, r4
_021681d0:
cmp r8, #0
beq _021681e0
mov r0, r11
bl func_ov61_02166640
_021681e0:
cmp r8, #0
bne _021681a4
cmp r7, #0
beq _0216822c
add r1, sp, #0
mov r0, r10
mov r2, #1
bl func_ov61_0216d9a0
cmp r0, #0
beq _02168218
ldr r0, [sp]
mov r1, #4
str r1, [r0, #0x1c]
b _0216822c
_02168218:
ldr r0, _02168308 ; =data_ov61_0217c64c
ldr r1, _021682fc ; =data_ov61_0217c644
ldr r2, _02168300 ; =data_ov61_0217c430
mov r3, #0x1dc
bl func_02042f80
_0216822c:
ldr r0, [r6, #0x1d8]
sub r0, r0, #2
cmp r0, #1
bhi _02168264
cmp r7, #0
bne _02168250
mov r0, r10
bl func_ov61_02167e40
mov r7, r0
_02168250:
cmp r7, #0
bne _02168264
mov r0, r10
bl func_ov61_0216e668
mov r7, r0
_02168264:
cmp r7, #0
bne _02168278
mov r0, r10
bl func_ov61_0217124c
mov r7, r0
_02168278:
ldr r1, [r6, #0x424]
str r1, [sp]
cmp r1, #0
beq _021682c4
_02168288:
ldr r0, [r1, #0x1c]
cmp r0, #0
ldreq r0, [r1, #0x20]
streq r0, [sp]
beq _021682b8
mov r0, r10
bl func_ov61_0216d4b0
ldr r1, [sp]
mov r0, r10
ldr r2, [r1, #0x20]
str r2, [sp]
bl func_ov61_0216d950
_021682b8:
ldr r1, [sp]
cmp r1, #0
bne _02168288
_021682c4:
mov r0, r10
mov r1, r9
bl func_ov61_02169fa0
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r0, [r6, #0x41c]
cmp r0, #0
beq _021682f0
mov r0, r10
mov r1, #0
bl func_ov61_0216b504
_021682f0:
mov r0, r7
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02168158
_021682f8: .word data_ov61_0217c54c
_021682fc: .word data_ov61_0217c644
_02168300: .word data_ov61_0217c430
_02168304: .word 0x000001b6
_02168308: .word data_ov61_0217c64c
.global func_ov61_0216830c
arm_func_start func_ov61_0216830c
func_ov61_0216830c: ; 0x0216830c
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
ldr r4, [r6]
ldr r2, _021683a0 ; =data_ov61_0217c660
mov r5, r1
add r1, r4, #0x1f4
bl func_ov61_0216936c
ldr r2, _021683a4 ; =data_ov61_0217c66c
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
ldr r2, [r4, #0x198]
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216939c
ldr r2, _021683a8 ; =data_ov61_0217c678
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r0, r6
add r1, r4, #0x1f4
ldr r2, [r5]
bl func_ov61_0216939c
mov r0, r6
add r1, r4, #0x1f4
ldr r2, _021683ac ; =data_ov61_0217c688
bl func_ov61_0216936c
ldr r2, [r5, #0x10]
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r0, r6
add r1, r4, #0x1f4
ldr r2, _021683b0 ; =data_ov61_0217c690
bl func_ov61_0216936c
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0216830c
_021683a0: .word data_ov61_0217c660
_021683a4: .word data_ov61_0217c66c
_021683a8: .word data_ov61_0217c678
_021683ac: .word data_ov61_0217c688
_021683b0: .word data_ov61_0217c690
.global func_ov61_021683b4
arm_func_start func_ov61_021683b4
func_ov61_021683b4: ; 0x021683b4
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x138
sub sp, sp, #0x1000
mov r7, r1
mov r10, r0
ldr r1, _02168d28 ; =data_ov61_0217c698
add r2, sp, #0x138
mov r0, r7
mov r3, #0x1000
ldr r8, [r10]
bl func_ov61_02171720
cmp r0, #0
bne _02168418
ldr r2, _02168d2c ; =data_ov61_0217c6a0
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168418:
add r0, sp, #0x138
bl func_0204902c
mov r4, r0
ldr r1, _02168d30 ; =data_ov61_0217c6d0
add r2, sp, #0x138
mov r0, r7
mov r3, #0x1000
bl func_ov61_02171720
cmp r0, #0
bne _02168470
ldr r2, _02168d2c ; =data_ov61_0217c6a0
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168470:
add r0, sp, #0x138
bl func_0204902c
mov r6, r0
ldr r1, _02168d34 ; =data_ov61_0217c6d4
add r2, sp, #0x138
mov r0, r7
mov r3, #0x1000
bl func_ov61_02171720
cmp r0, #0
beq _021684a4
add r0, sp, #0x138
bl func_0204902c
b _021684ac
_021684a4:
mov r0, #0
bl func_ov61_02166cf0
_021684ac:
mov r9, r0
cmp r4, #0x64
bgt _021684dc
bge _021687c8
cmp r4, #2
bgt _02168d18
cmp r4, #1
blt _02168d18
beq _021684fc
cmp r4, #2
beq _02168608
b _02168d18
_021684dc:
cmp r4, #0x66
bgt _02168d18
cmp r4, #0x65
blt _02168d18
beq _02168b28
cmp r4, #0x66
beq _02168cb8
b _02168d18
_021684fc:
ldr r1, [r8, #0x1bc]
ldr r0, [r8, #0x1c0]
str r1, [sp, #0x20]
str r0, [sp, #0x24]
cmp r1, #0
beq _02168d18
mov r0, #0xc
bl func_ov61_0213e10c
movs r4, r0
bne _02168540
ldr r1, _02168d38 ; =data_ov61_0217c6dc
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168540:
ldr r1, _02168d3c ; =data_ov61_0217c6ec
add r2, sp, #0x138
mov r0, r7
mov r3, #0x1000
bl func_ov61_02171720
cmp r0, #0
bne _0216858c
ldr r2, _02168d2c ; =data_ov61_0217c6a0
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216858c:
add r0, sp, #0x138
bl strlen
add r0, r0, #1
bl func_ov61_0213e10c
str r0, [r4, #8]
cmp r0, #0
bne _021685c4
ldr r1, _02168d38 ; =data_ov61_0217c6dc
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021685c4:
add r1, sp, #0x138
bl strcpy
stmia r4, {r6, r9}
mov r2, #0
str r2, [sp]
mov r2, #2
add r1, sp, #0x20
str r2, [sp, #4]
mov r0, r10
mov r3, r4
ldmia r1, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
beq _02168d18
add sp, sp, #0x138
add sp, sp, #0x1000
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168608:
mov r0, r10
mov r1, r6
bl func_ov61_0216ef6c
movs r5, r0
bne _02168638
ldr r1, _02168d38 ; =data_ov61_0217c6dc
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168638:
ldr r1, _02168d3c ; =data_ov61_0217c6ec
add r2, sp, #0x138
mov r0, r7
mov r3, #0x1000
bl func_ov61_02171720
cmp r0, #0
bne _02168684
ldr r2, _02168d2c ; =data_ov61_0217c6a0
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168684:
ldr r1, _02168d40 ; =data_ov61_0217c6f4
add r0, sp, #0x138
bl strstr
movs r4, r0
bne _021686c8
ldr r2, _02168d2c ; =data_ov61_0217c6a0
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021686c8:
mov r1, #0
add r0, r4, #8
strb r1, [r4]
bl strlen
cmp r0, #0x20
beq _02168710
ldr r2, _02168d2c ; =data_ov61_0217c6a0
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168710:
ldr r0, [r5, #0x10]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r5, #0x10]
add r0, r4, #8
bl func_ov61_02166654
str r0, [r5, #0x10]
ldr r0, [r5, #0x14]
add r0, r0, #1
str r0, [r5, #0x14]
ldr r1, [r8, #0x1ac]
ldr r0, [r8, #0x1b0]
str r1, [sp, #8]
str r0, [sp, #0xc]
cmp r1, #0
beq _02168d18
ldr r0, _02168d44 ; =0x0000040c
bl func_ov61_0213e10c
movs r4, r0
bne _0216877c
ldr r1, _02168d38 ; =data_ov61_0217c6dc
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216877c:
ldr r2, _02168d48 ; =0x00000401
add r1, sp, #0x138
add r0, r4, #8
bl func_ov61_021715c8
stmia r4, {r6, r9}
mov r2, #0
str r2, [sp]
mov r2, #6
add r1, sp, #8
str r2, [sp, #4]
mov r0, r10
mov r3, r4
ldmia r1, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
beq _02168d18
add sp, sp, #0x138
add sp, sp, #0x1000
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021687c8:
mov r0, r10
mov r1, r6
bl func_ov61_0216ef6c
movs r4, r0
bne _021687f8
ldr r1, _02168d38 ; =data_ov61_0217c6dc
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021687f8:
ldr r0, [r4, #8]
cmp r0, #0
bne _0216886c
mov r0, #0x18
bl func_ov61_0213e10c
str r0, [r4, #8]
cmp r0, #0
bne _02168834
ldr r1, _02168d38 ; =data_ov61_0217c6dc
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168834:
mov r2, #6
mov r1, #0
_0216883c:
strb r1, [r0]
strb r1, [r0, #1]
strb r1, [r0, #2]
strb r1, [r0, #3]
add r0, r0, #4
subs r2, r2, #1
bne _0216883c
ldr r1, [r8, #0x430]
add r0, r1, #1
str r0, [r8, #0x430]
ldr r0, [r4, #8]
str r1, [r0]
_0216886c:
ldr r1, _02168d3c ; =data_ov61_0217c6ec
mov r0, r7
add r2, sp, #0x138
mov r3, #0x1000
ldr r7, [r4, #8]
bl func_ov61_02171720
cmp r0, #0
bne _021688bc
ldr r2, _02168d2c ; =data_ov61_0217c6a0
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021688bc:
ldr r1, _02168d4c ; =data_ov61_0217c700
add r0, sp, #0x138
add r2, sp, #0x28
mov r3, #0x10
bl func_ov61_02171720
cmp r0, #0
bne _02168908
ldr r2, _02168d2c ; =data_ov61_0217c6a0
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168908:
add r0, sp, #0x28
bl func_0204902c
str r0, [r7, #4]
ldr r0, [r7, #8]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r7, #8]
ldr r1, _02168d50 ; =data_ov61_0217c704
add r0, sp, #0x138
add r2, sp, #0x38
mov r3, #0x100
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
streqb r0, [sp, #0x38]
add r0, sp, #0x38
bl func_ov61_02166654
str r0, [r7, #8]
cmp r0, #0
bne _02168974
ldr r1, _02168d38 ; =data_ov61_0217c6dc
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168974:
ldr r0, [r7, #0xc]
bl func_ov61_0213e13c
mov r4, #0
ldr r1, _02168d54 ; =data_ov61_0217c70c
add r0, sp, #0x138
add r2, sp, #0x38
mov r3, #0x100
str r4, [r7, #0xc]
bl func_ov61_02171720
cmp r0, #0
moveq r0, r4
streqb r0, [sp, #0x38]
add r0, sp, #0x38
bl func_ov61_02166654
str r0, [r7, #0xc]
cmp r0, #0
bne _021689d4
ldr r1, _02168d38 ; =data_ov61_0217c6dc
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021689d4:
ldr r1, _02168d58 ; =data_ov61_0217c714
add r0, sp, #0x138
add r2, sp, #0x28
mov r3, #0x10
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
beq _02168a4c
add r0, sp, #0x28
bl func_0204902c
mov r5, r0
add r0, sp, #0x28
bl func_0204902c
mov r4, r0
add r0, sp, #0x28
bl func_0204902c
mov r11, r0
add r0, sp, #0x28
bl func_0204902c
mov r1, r11, lsr #0x18
mov r0, r0, lsr #0x8
mov r2, r4, lsl #0x8
and r1, r1, #0xff
and r0, r0, #0xff00
mov r3, r5, lsl #0x18
orr r0, r1, r0
and r2, r2, #0xff0000
and r1, r3, #0xff000000
orr r0, r2, r0
orr r0, r1, r0
_02168a4c:
ldr r1, _02168d5c ; =data_ov61_0217c71c
str r0, [r7, #0x10]
add r0, sp, #0x138
add r2, sp, #0x28
mov r3, #0x10
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
beq _02168a9c
add r0, sp, #0x28
bl func_0204902c
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
mov r1, r0, asr #0x8
mov r0, r0, lsl #0x8
and r1, r1, #0xff
and r0, r0, #0xff00
orr r0, r1, r0
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
_02168a9c:
str r0, [r7, #0x14]
ldr r1, [r8, #0x1b4]
ldr r0, [r8, #0x1b8]
str r1, [sp, #0x10]
str r0, [sp, #0x14]
cmp r1, #0
beq _02168d18
mov r0, #0xc
bl func_ov61_0213e10c
movs r3, r0
bne _02168ae4
ldr r1, _02168d38 ; =data_ov61_0217c6dc
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168ae4:
str r6, [r3]
ldr r0, [r7]
mov r2, #0
str r0, [r3, #8]
str r9, [r3, #4]
str r2, [sp]
mov r2, #5
add r1, sp, #0x10
str r2, [sp, #4]
mov r0, r10
ldmia r1, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
beq _02168d18
add sp, sp, #0x138
add sp, sp, #0x1000
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168b28:
ldr r1, _02168d3c ; =data_ov61_0217c6ec
add r2, sp, #0x138
mov r0, r7
mov r3, #0x1000
bl func_ov61_02171720
cmp r0, #0
bne _02168b74
ldr r2, _02168d2c ; =data_ov61_0217c6a0
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168b74:
ldr r1, _02168d5c ; =data_ov61_0217c71c
add r0, sp, #0x138
bl strstr
cmp r0, #0
bne _02168bb8
ldr r2, _02168d2c ; =data_ov61_0217c6a0
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168bb8:
ldrsb r1, [r0, #3]
cmp r1, #0
bne _02168bf4
ldr r2, _02168d2c ; =data_ov61_0217c6a0
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168bf4:
add r0, r0, #3
bl func_0204902c
mov r4, r0
ldr r1, _02168d60 ; =data_ov61_0217c720
add r0, sp, #0x138
bl strstr
movs r1, r0
moveq r0, #0
streqb r0, [sp, #0x38]
beq _02168c2c
add r0, sp, #0x38
add r1, r1, #3
mov r2, #0x100
bl func_ov61_021715c8
_02168c2c:
ldr r1, [r8, #0x1c4]
ldr r0, [r8, #0x1c8]
str r1, [sp, #0x18]
str r0, [sp, #0x1c]
cmp r1, #0
beq _02168d18
mov r0, #0x108
bl func_ov61_0213e10c
movs r5, r0
bne _02168c70
ldr r1, _02168d38 ; =data_ov61_0217c6dc
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168c70:
str r6, [r5]
add r1, sp, #0x38
add r0, r5, #8
str r4, [r5, #4]
bl strcpy
mov r2, #0
str r2, [sp]
add r1, sp, #0x18
str r2, [sp, #4]
mov r0, r10
mov r3, r5
ldmia r1, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
beq _02168d18
add sp, sp, #0x138
add sp, sp, #0x1000
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168cb8:
ldr r1, _02168d3c ; =data_ov61_0217c6ec
add r2, sp, #0x138
mov r0, r7
mov r3, #0x1000
bl func_ov61_02171720
cmp r0, #0
bne _02168d04
ldr r2, _02168d2c ; =data_ov61_0217c6a0
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x138
add sp, sp, #0x1000
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02168d04:
ldr r3, _02168d64 ; =data_ov61_0217c724
mov r0, r10
mov r1, r6
mov r2, #0x67
bl func_ov61_02168e44
_02168d18:
mov r0, #0
add sp, sp, #0x138
add sp, sp, #0x1000
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_021683b4
_02168d28: .word data_ov61_0217c698
_02168d2c: .word data_ov61_0217c6a0
_02168d30: .word data_ov61_0217c6d0
_02168d34: .word data_ov61_0217c6d4
_02168d38: .word data_ov61_0217c6dc
_02168d3c: .word data_ov61_0217c6ec
_02168d40: .word data_ov61_0217c6f4
_02168d44: .word 0x0000040c
_02168d48: .word 0x00000401
_02168d4c: .word data_ov61_0217c700
_02168d50: .word data_ov61_0217c704
_02168d54: .word data_ov61_0217c70c
_02168d58: .word data_ov61_0217c714
_02168d5c: .word data_ov61_0217c71c
_02168d60: .word data_ov61_0217c720
_02168d64: .word data_ov61_0217c724
.global func_ov61_02168d68
arm_func_start func_ov61_02168d68
func_ov61_02168d68: ; 0x02168d68
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #0xdb0
mov r7, r0
mov r5, r2
mov r6, r1
ldr r2, _02168e2c ; =0x00000dad
add r0, sp, #0
mov r1, r3
ldr r4, [r7]
bl func_ov61_021715c8
ldr r2, _02168e30 ; =data_ov61_0217c698
mov r0, r7
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r0, r7
mov r2, r5
add r1, r4, #0x1f4
bl func_ov61_0216939c
ldr r2, _02168e34 ; =data_ov61_0217c66c
mov r0, r7
add r1, r4, #0x1f4
bl func_ov61_0216936c
ldr r2, [r4, #0x198]
mov r0, r7
add r1, r4, #0x1f4
bl func_ov61_0216939c
ldr r2, _02168e38 ; =data_ov61_0217c728
mov r0, r7
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r2, r6
mov r0, r7
add r1, r4, #0x1f4
bl func_ov61_0216939c
ldr r2, _02168e3c ; =data_ov61_0217c6ec
mov r0, r7
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r0, r7
add r1, r4, #0x1f4
add r2, sp, #0
bl func_ov61_0216936c
ldr r2, _02168e40 ; =data_ov61_0217c690
mov r0, r7
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r0, #0
add sp, sp, #0xdb0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02168d68
_02168e2c: .word 0x00000dad
_02168e30: .word data_ov61_0217c698
_02168e34: .word data_ov61_0217c66c
_02168e38: .word data_ov61_0217c728
_02168e3c: .word data_ov61_0217c6ec
_02168e40: .word data_ov61_0217c690
.global func_ov61_02168e44
arm_func_start func_ov61_02168e44
func_ov61_02168e44: ; 0x02168e44
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
sub sp, sp, #4
mov r7, r0
mov r6, r1
mov r5, r2
mov r4, r3
bl func_ov61_0216e758
movs r8, r0
bne _02168f08
add r2, sp, #0
mov r0, r7
mov r1, r6
bl func_ov61_0216f050
cmp r0, #0
ldrne r0, [sp]
ldrne r0, [r0, #8]
cmpne r0, #0
ldrne r0, [r0, #0x14]
cmpne r0, #0
mov r0, r7
bne _02168eb0
mov r1, r6
mov r2, r5
mov r3, r4
bl func_ov61_02168d68
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
_02168eb0:
mov r1, r6
mov r2, #1
bl func_ov61_0216e7ac
movs r8, r0
addeq sp, sp, #4
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc}
ldr r0, [sp]
mov r1, r8
ldr r0, [r0, #0x18]
cmp r0, #0
mov r0, r7
bne _02168ef8
bl func_ov61_0216e82c
cmp r0, #0
beq _02168f08
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
_02168ef8:
bl func_ov61_0216e890
cmp r0, #0
addne sp, sp, #4
ldmneia sp!, {r3, r4, r5, r6, r7, r8, pc}
_02168f08:
mov r0, r7
mov r1, r8
mov r2, r5
mov r3, r4
bl func_ov61_0216ea1c
cmp r0, #0
moveq r0, #0
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
arm_func_end func_ov61_02168e44
.global func_ov61_02168f2c
arm_func_start func_ov61_02168f2c
func_ov61_02168f2c: ; 0x02168f2c
stmdb sp!, {r3, r4, r5, lr}
mov r4, r0
add r2, sp, #0
ldr r5, [r4]
bl func_ov61_0216f050
cmp r0, #0
bne _02168f5c
ldr r1, _02168ff4 ; =data_ov61_0217c72c
mov r0, r4
bl func_ov61_02171b10
mov r0, #2
ldmia sp!, {r3, r4, r5, pc}
_02168f5c:
ldr r1, [sp]
ldr r0, [r1, #0x10]
cmp r0, #0
bne _02168f80
ldr r1, _02168ff4 ; =data_ov61_0217c72c
mov r0, r4
bl func_ov61_02171b10
mov r0, #2
ldmia sp!, {r3, r4, r5, pc}
_02168f80:
mov r0, r4
bl func_ov61_0216830c
cmp r0, #0
ldmneia sp!, {r3, r4, r5, pc}
ldr r1, [sp]
ldr r0, [r1, #0x14]
sub r0, r0, #1
str r0, [r1, #0x14]
ldr r0, [r5, #0x100]
cmp r0, #0
bne _02168fec
ldr r1, [sp]
ldr r0, [r1, #0x14]
cmp r0, #0
bgt _02168fec
ldr r0, [r1, #0x10]
bl func_ov61_0213e13c
ldr r0, [sp]
mov r1, #0
str r1, [r0, #0x10]
ldr r0, [sp]
bl func_ov61_0216f238
cmp r0, #0
beq _02168fec
ldr r1, [sp]
mov r0, r4
bl func_ov61_0216f0c0
_02168fec:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02168f2c
_02168ff4: .word data_ov61_0217c72c
.global func_ov61_02168ff8
arm_func_start func_ov61_02168ff8
func_ov61_02168ff8: ; 0x02168ff8
ldr r1, [r1, #8]
cmp r1, #0
beq _02169014
ldr r0, [r1]
cmp r0, r2
subgt r0, r0, #1
strgt r0, [r1]
_02169014:
mov r0, #1
bx lr
arm_func_end func_ov61_02168ff8
.global func_ov61_0216901c
arm_func_start func_ov61_0216901c
func_ov61_0216901c: ; 0x0216901c
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
mov r6, r0
add r2, sp, #0
ldr r4, [r6]
bl func_ov61_0216f050
cmp r0, #0
bne _02169054
ldr r1, _0216919c ; =data_ov61_0217c72c
mov r0, r6
bl func_ov61_02171b10
add sp, sp, #4
mov r0, #2
ldmia sp!, {r3, r4, r5, r6, pc}
_02169054:
ldr r2, _021691a0 ; =data_ov61_0217c740
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
ldr r2, _021691a4 ; =data_ov61_0217c66c
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
ldr r2, [r4, #0x198]
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216939c
ldr r2, _021691a8 ; =data_ov61_0217c74c
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r0, r6
add r1, r4, #0x1f4
ldr r2, [sp]
ldr r2, [r2]
bl func_ov61_0216939c
mov r0, r6
add r1, r4, #0x1f4
ldr r2, _021691ac ; =data_ov61_0217c690
bl func_ov61_0216936c
ldr r0, [sp]
ldr r0, [r0, #8]
cmp r0, #0
beq _02169190
ldr r5, [r0]
cmp r5, #0
bge _021690e8
ldr r0, _021691b0 ; =data_ov61_0217c75c
ldr r1, _021691b4 ; =data_ov61_0217c768
ldr r2, _021691b8 ; =data_ov61_0217c650
ldr r3, _021691bc ; =0x000001fd
bl func_02042f80
_021690e8:
ldr r0, [sp]
ldr r0, [r0, #8]
ldr r0, [r0, #8]
bl func_ov61_0213e13c
ldr r0, [sp]
mov r1, #0
ldr r0, [r0, #8]
str r1, [r0, #8]
ldr r0, [sp]
ldr r0, [r0, #8]
ldr r0, [r0, #0xc]
bl func_ov61_0213e13c
ldr r0, [sp]
mov r1, #0
ldr r0, [r0, #8]
str r1, [r0, #0xc]
ldr r0, [sp]
ldr r0, [r0, #8]
bl func_ov61_0213e13c
ldr r0, [sp]
mov r1, #0
str r1, [r0, #8]
ldr r0, [sp]
bl func_ov61_0216f238
cmp r0, #0
beq _0216915c
ldr r1, [sp]
mov r0, r6
bl func_ov61_0216f0c0
_0216915c:
ldr r0, [r4, #0x430]
subs r0, r0, #1
str r0, [r4, #0x430]
bpl _02169180
ldr r0, _021691c0 ; =data_ov61_0217c774
ldr r1, _021691b4 ; =data_ov61_0217c768
ldr r2, _021691b8 ; =data_ov61_0217c650
mov r3, #0x204
bl func_02042f80
_02169180:
ldr r1, _021691c4 ; =func_ov61_02168ff8
mov r0, r6
mov r2, r5
bl func_ov61_0216f19c
_02169190:
mov r0, #0
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0216901c
_0216919c: .word data_ov61_0217c72c
_021691a0: .word data_ov61_0217c740
_021691a4: .word data_ov61_0217c66c
_021691a8: .word data_ov61_0217c74c
_021691ac: .word data_ov61_0217c690
_021691b0: .word data_ov61_0217c75c
_021691b4: .word data_ov61_0217c768
_021691b8: .word data_ov61_0217c650
_021691bc: .word 0x000001fd
_021691c0: .word data_ov61_0217c774
_021691c4: .word func_ov61_02168ff8
.global func_ov61_021691c8
arm_func_start func_ov61_021691c8
func_ov61_021691c8: ; 0x021691c8
stmdb sp!, {r4, r5, r6, r7, r8, lr}
movs r4, r1
mov r8, r0
mov r7, r2
bne _021691f0
ldr r0, _02169250 ; =data_ov61_0217c828
ldr r1, _02169254 ; =data_ov61_0217c840
ldr r2, _02169258 ; =data_ov61_0217c7d8
mov r3, #0x25
bl func_02042f80
_021691f0:
ldr r5, [r4, #8]
ldmia r4, {r0, r6}
cmp r6, r5
bne _02169228
add r6, r6, #0x800
add r1, r6, #1
bl func_ov61_0213e120
cmp r0, #0
bne _02169228
ldr r1, _0216925c ; =data_ov61_0217c84c
mov r0, r8
bl func_ov61_02171b10
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_02169228:
strb r7, [r0, r5]
add r1, r5, #1
mov r2, #0
strb r2, [r0, r1]
ldr r1, [r4, #8]
add r1, r1, #1
str r1, [r4, #8]
stmia r4, {r0, r6}
mov r0, r2
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_021691c8
_02169250: .word data_ov61_0217c828
_02169254: .word data_ov61_0217c840
_02169258: .word data_ov61_0217c7d8
_0216925c: .word data_ov61_0217c84c
.global func_ov61_02169260
arm_func_start func_ov61_02169260
func_ov61_02169260: ; 0x02169260
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
movs r8, r2
mov r10, r0
mov r9, r1
mov r7, r3
bne _0216928c
ldr r0, _02169354 ; =data_ov61_0217c85c
ldr r1, _02169358 ; =data_ov61_0217c840
ldr r2, _0216935c ; =data_ov61_0217c80c
mov r3, #0x51
bl func_02042f80
_0216928c:
cmp r7, #0
bge _021692a8
ldr r0, _02169360 ; =data_ov61_0217c86c
ldr r1, _02169358 ; =data_ov61_0217c840
ldr r2, _0216935c ; =data_ov61_0217c80c
mov r3, #0x52
bl func_02042f80
_021692a8:
cmp r9, #0
bne _021692c4
ldr r0, _02169364 ; =data_ov61_0217c828
ldr r1, _02169358 ; =data_ov61_0217c840
ldr r2, _0216935c ; =data_ov61_0217c80c
mov r3, #0x53
bl func_02042f80
_021692c4:
cmp r8, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
ldr r4, [r9, #8]
ldr r5, [r9, #4]
ldr r6, [r9]
sub r0, r5, r4
cmp r0, r7
bge _02169320
cmp r7, #0x800
movlt r0, #0x800
movge r0, r7
add r5, r5, r0
mov r0, r6
add r1, r5, #1
bl func_ov61_0213e120
movs r6, r0
bne _02169320
ldr r1, _02169368 ; =data_ov61_0217c84c
mov r0, r10
bl func_ov61_02171b10
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02169320:
mov r1, r8
mov r2, r7
add r0, r6, r4
bl func_02043594
add r1, r4, r7
mov r0, #0
strb r0, [r6, r1]
ldr r1, [r9, #8]
add r1, r1, r7
str r1, [r9, #8]
str r5, [r9, #4]
str r6, [r9]
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
.align 2, 0
arm_func_end func_ov61_02169260
_02169354: .word data_ov61_0217c85c
_02169358: .word data_ov61_0217c840
_0216935c: .word data_ov61_0217c80c
_02169360: .word data_ov61_0217c86c
_02169364: .word data_ov61_0217c828
_02169368: .word data_ov61_0217c84c
.global func_ov61_0216936c
arm_func_start func_ov61_0216936c
func_ov61_0216936c: ; 0x0216936c
stmdb sp!, {r4, r5, r6, lr}
mov r4, r2
mov r6, r0
mov r5, r1
mov r0, r4
bl strlen
mov r3, r0
mov r0, r6
mov r1, r5
mov r2, r4
bl func_ov61_02169260
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0216936c
.global func_ov61_0216939c
arm_func_start func_ov61_0216939c
func_ov61_0216939c: ; 0x0216939c
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x10
mov r4, r1
mov r5, r0
ldr r1, _021693d0 ; =data_ov61_0217c87c
add r0, sp, #0
bl func_020459b8
add r2, sp, #0
mov r0, r5
mov r1, r4
bl func_ov61_0216936c
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0216939c
_021693d0: .word data_ov61_0217c87c
.global func_ov61_021693d4
arm_func_start func_ov61_021693d4
func_ov61_021693d4: ; 0x021693d4
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r8, r1
mov r7, r0
mov r1, r2
mov r2, r3
mov r0, r8
mov r3, #0
ldr r6, [sp, #0x18]
ldr r5, [sp, #0x1c]
ldr r4, [sp, #0x20]
bl func_ov61_02166bf0
mvn r1, #0
cmp r0, r1
bne _02169480
mov r0, r8
bl func_ov61_02166ce0
mvn r2, #5
cmp r0, r2
subne r1, r2, #0x14
cmpne r0, r1
subne r1, r2, #0x46
cmpne r0, r1
beq _02169470
ldrsb r0, [r4]
cmp r0, #0x50
ldreqsb r0, [r4, #1]
cmpeq r0, #0x52
moveq r0, #3
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
ldr r2, _021694bc ; =data_ov61_0217c880
mov r0, r7
mov r1, #5
bl func_ov61_02171aec
mov r0, r7
mov r1, #3
mov r2, #0
bl func_ov61_02169c10
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_02169470:
mov r0, #0
str r0, [r5]
str r0, [r6]
b _021694b4
_02169480:
cmp r0, #0
strne r0, [r5]
movne r0, #0
strne r0, [r6]
bne _021694b4
ldr r1, _021694c0 ; =data_ov61_0217c8a8
mov r0, r7
mov r2, r4
bl func_ov61_0217163c
mov r0, #0
str r0, [r5]
mov r0, #1
str r0, [r6]
_021694b4:
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_021693d4
_021694bc: .word data_ov61_0217c880
_021694c0: .word data_ov61_0217c8a8
.global func_ov61_021694c4
arm_func_start func_ov61_021694c4
func_ov61_021694c4: ; 0x021694c4
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r4, r5, lr}
sub sp, sp, #0x14
mov r4, r1
ldr r1, [r4, #0x28]
mov r5, r0
cmp r1, #0
bne _021694f8
ldr r0, _02169594 ; =data_ov61_0217c8cc
ldr r1, _02169598 ; =data_ov61_0217c840
ldr r2, _0216959c ; =data_ov61_0217c7c4
mov r3, #0xde
bl func_02042f80
_021694f8:
ldr r1, [r4, #0x30]
ldr r0, [r4, #0x34]
subs r0, r1, r0
bne _02169574
ldr r0, [r4, #0x38]
bl func_ov61_02165a68
cmp r0, #0
bne _02169574
add r0, sp, #0x10
str r0, [sp]
add r1, sp, #0xc
ldr r0, _021695a0 ; =data_ov61_0217c8f0
str r1, [sp, #4]
str r0, [sp, #8]
ldr r1, [r4, #8]
add r2, sp, #0x28
mov r0, r5
mov r3, #1
bl func_ov61_021693d4
cmp r0, #0
addne sp, sp, #0x14
ldmneia sp!, {r4, r5, lr}
addne sp, sp, #0x10
bxne lr
ldr r0, [sp, #0xc]
cmp r0, #0
addne sp, sp, #0x14
movne r0, #0
ldmneia sp!, {r4, r5, lr}
addne sp, sp, #0x10
bxne lr
_02169574:
ldrsb r2, [sp, #0x28]
mov r0, r5
add r1, r4, #0x28
bl func_ov61_021691c8
add sp, sp, #0x14
ldmia sp!, {r4, r5, lr}
add sp, sp, #0x10
bx lr
.align 2, 0
arm_func_end func_ov61_021694c4
_02169594: .word data_ov61_0217c8cc
_02169598: .word data_ov61_0217c840
_0216959c: .word data_ov61_0217c7c4
_021695a0: .word data_ov61_0217c8f0
.global func_ov61_021695a4
arm_func_start func_ov61_021695a4
func_ov61_021695a4: ; 0x021695a4
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x14
mov r9, r1
ldr r1, [r9, #0x28]
mov r10, r0
mov r8, r2
mov r7, r3
cmp r1, #0
bne _021695dc
ldr r0, _02169694 ; =data_ov61_0217c8cc
ldr r1, _02169698 ; =data_ov61_0217c840
ldr r2, _0216969c ; =data_ov61_0217c7f0
mov r3, #0xfb
bl func_02042f80
_021695dc:
cmp r7, #0
mov r6, #0
addeq sp, sp, #0x14
moveq r0, r6
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, [r9, #0x30]
ldr r0, [r9, #0x34]
subs r0, r1, r0
bne _02169660
ldr r0, [r9, #0x38]
bl func_ov61_02165a68
cmp r0, #0
bne _02169660
ldr r11, _021696a0 ; =data_ov61_0217c8f0
add r5, sp, #0x10
add r4, sp, #0xc
_0216961c:
str r5, [sp]
stmib sp, {r4, r11}
ldr r1, [r9, #8]
mov r0, r10
mov r3, r7
add r2, r8, r6
bl func_ov61_021693d4
cmp r0, #0
addne sp, sp, #0x14
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r0, [sp, #0xc]
cmp r0, #0
subne r7, r7, r0
addne r6, r6, r0
cmp r0, #0
cmpne r7, #0
bne _0216961c
_02169660:
cmp r7, #0
beq _02169688
mov r0, r10
mov r3, r7
add r1, r9, #0x28
add r2, r8, r6
bl func_ov61_02169260
cmp r0, #0
addne sp, sp, #0x14
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02169688:
mov r0, #0
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_021695a4
_02169694: .word data_ov61_0217c8cc
_02169698: .word data_ov61_0217c840
_0216969c: .word data_ov61_0217c7f0
_021696a0: .word data_ov61_0217c8f0
.global func_ov61_021696a4
arm_func_start func_ov61_021696a4
func_ov61_021696a4: ; 0x021696a4
stmdb sp!, {r4, r5, r6, lr}
mov r4, r2
mov r6, r0
mov r5, r1
mov r0, r4
bl strlen
mov r3, r0
mov r0, r6
mov r1, r5
mov r2, r4
bl func_ov61_021695a4
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_021696a4
.global func_ov61_021696d4
arm_func_start func_ov61_021696d4
func_ov61_021696d4: ; 0x021696d4
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x18
str r0, [sp]
ldr r0, [sp, #0x44]
mov r10, r1
mvn r1, #0
str r2, [sp, #4]
str r3, [sp, #8]
cmp r10, r1
str r0, [sp, #0x44]
bne _02169714
ldr r0, _021698c8 ; =data_ov61_0217c8f4
ldr r1, _021698cc ; =data_ov61_0217c840
ldr r2, _021698d0 ; =data_ov61_0217c7a0
mov r3, #0x150
bl func_02042f80
_02169714:
ldr r0, [sp, #4]
cmp r0, #0
bne _02169734
ldr r0, _021698d4 ; =data_ov61_0217c90c
ldr r1, _021698cc ; =data_ov61_0217c840
ldr r2, _021698d0 ; =data_ov61_0217c7a0
ldr r3, _021698d8 ; =0x00000151
bl func_02042f80
_02169734:
ldr r0, [sp, #8]
cmp r0, #0
bne _02169754
ldr r0, _021698dc ; =data_ov61_0217c920
ldr r1, _021698cc ; =data_ov61_0217c840
ldr r2, _021698d0 ; =data_ov61_0217c7a0
ldr r3, _021698e0 ; =0x00000152
bl func_02042f80
_02169754:
ldr r0, [sp, #0x40]
cmp r0, #0
bne _02169774
ldr r0, _021698e4 ; =data_ov61_0217c934
ldr r1, _021698cc ; =data_ov61_0217c840
ldr r2, _021698d0 ; =data_ov61_0217c7a0
ldr r3, _021698e8 ; =0x00000153
bl func_02042f80
_02169774:
ldr r0, [sp, #4]
mvn r4, #0
ldr r6, [r0, #8]
ldmia r0, {r5, r7}
sub r0, r4, #0x4b
str r0, [sp, #0x14]
sub r0, r4, #0x19
mov r9, #0
str r0, [sp, #0x10]
sub r0, r4, #5
mov r11, r9
str r0, [sp, #0xc]
_021697a4:
add r0, r6, #0x800
cmp r0, r7
ble _021697e0
mov r7, r0
add r1, r0, #1
mov r0, r5
bl func_ov61_0213e120
movs r5, r0
bne _021697e0
ldr r1, _021698ec ; =data_ov61_0217c84c
ldr r0, [sp]
bl func_ov61_02171b10
add sp, sp, #0x18
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021697e0:
mov r0, r10
add r1, r5, r6
sub r2, r7, r6
mov r3, #0
bl func_ov61_02166bac
mov r8, r0
cmp r8, r4
bne _0216983c
mov r0, r10
bl func_ov61_02166ce0
ldr r1, [sp, #0xc]
cmp r0, r1
ldrne r1, [sp, #0x10]
cmpne r0, r1
ldrne r1, [sp, #0x14]
cmpne r0, r1
beq _02169860
ldr r1, _021698f0 ; =data_ov61_0217c948
ldr r0, [sp]
bl func_ov61_02171b10
add sp, sp, #0x18
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216983c:
cmp r8, #0
addne r6, r6, r8
addne r9, r9, r8
bne _02169860
ldr r0, [sp]
ldr r1, _021698f4 ; =data_ov61_0217c974
ldr r2, [sp, #0x44]
mov r11, #1
bl func_ov61_0217163c
_02169860:
mov r0, #0
cmp r8, r4
strb r0, [r5, r6]
beq _02169880
cmp r11, #0
bne _02169880
cmp r9, #0x20000
blt _021697a4
_02169880:
cmp r9, #0
beq _0216989c
ldr r1, _021698f8 ; =data_ov61_0217c998
ldr r0, [sp]
ldr r2, [sp, #0x44]
mov r3, r9
bl func_ov61_0217163c
_0216989c:
ldr r0, [sp, #4]
ldr r1, [sp, #0x40]
str r5, [r0]
str r6, [r0, #8]
str r7, [r0, #4]
ldr r0, [sp, #8]
str r9, [r0]
str r11, [r1]
mov r0, #0
add sp, sp, #0x18
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_021696d4
_021698c8: .word data_ov61_0217c8f4
_021698cc: .word data_ov61_0217c840
_021698d0: .word data_ov61_0217c7a0
_021698d4: .word data_ov61_0217c90c
_021698d8: .word 0x00000151
_021698dc: .word data_ov61_0217c920
_021698e0: .word 0x00000152
_021698e4: .word data_ov61_0217c934
_021698e8: .word 0x00000153
_021698ec: .word data_ov61_0217c84c
_021698f0: .word data_ov61_0217c948
_021698f4: .word data_ov61_0217c974
_021698f8: .word data_ov61_0217c998
.global func_ov61_021698fc
arm_func_start func_ov61_021698fc
func_ov61_021698fc: ; 0x021698fc
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x1c
mov r10, r0
str r2, [sp, #0xc]
mov r9, r1
str r3, [sp, #0x10]
movs r0, r2
ldr r8, [sp, #0x44]
bne _02169934
ldr r0, _02169a58 ; =data_ov61_0217c828
ldr r1, _02169a5c ; =data_ov61_0217c840
ldr r2, _02169a60 ; =data_ov61_0217c7b0
ldr r3, _02169a64 ; =0x000001b9
bl func_02042f80
_02169934:
ldr r0, [sp, #0xc]
mov r4, #0
ldr r11, [r0, #8]
ldr r7, [r0, #0xc]
ldr r6, [r0]
subs r5, r11, r7
addeq sp, sp, #0x1c
moveq r0, r4
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02169958:
add r0, sp, #0x18
str r0, [sp]
add r1, r7, r4
add r0, sp, #0x14
str r0, [sp, #4]
add r2, r6, r1
mov r0, r10
mov r1, r9
mov r3, r5
str r8, [sp, #8]
bl func_ov61_021693d4
cmp r0, #0
addne sp, sp, #0x1c
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r0, [sp, #0x14]
cmp r0, #0
subne r5, r5, r0
addne r4, r4, r0
cmp r0, #0
cmpne r5, #0
bne _02169958
ldr r0, [sp, #0x40]
cmp r0, #0
beq _021699d8
cmp r4, #0
ble _021699dc
mov r0, r6
add r1, r6, r4
add r2, r5, #1
bl func_020435b4
sub r11, r11, r4
b _021699dc
_021699d8:
add r7, r7, r4
_021699dc:
cmp r11, #0
bge _021699f8
ldr r0, _02169a68 ; =data_ov61_0217c9ac
ldr r1, _02169a5c ; =data_ov61_0217c840
ldr r2, _02169a60 ; =data_ov61_0217c7b0
ldr r3, _02169a6c ; =0x000001de
bl func_02042f80
_021699f8:
cmp r7, #0
bge _02169a14
ldr r0, _02169a70 ; =data_ov61_0217c9b8
ldr r1, _02169a5c ; =data_ov61_0217c840
ldr r2, _02169a60 ; =data_ov61_0217c7b0
ldr r3, _02169a74 ; =0x000001df
bl func_02042f80
_02169a14:
cmp r7, r11
ble _02169a30
ldr r0, _02169a78 ; =data_ov61_0217c9c4
ldr r1, _02169a5c ; =data_ov61_0217c840
ldr r2, _02169a60 ; =data_ov61_0217c7b0
mov r3, #0x1e0
bl func_02042f80
_02169a30:
ldr r0, [sp, #0xc]
str r11, [r0, #8]
str r7, [r0, #0xc]
ldr r0, [sp, #0x10]
cmp r0, #0
ldrne r1, [sp, #0x18]
strne r1, [r0]
mov r0, #0
add sp, sp, #0x1c
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_021698fc
_02169a58: .word data_ov61_0217c828
_02169a5c: .word data_ov61_0217c840
_02169a60: .word data_ov61_0217c7b0
_02169a64: .word 0x000001b9
_02169a68: .word data_ov61_0217c9ac
_02169a6c: .word 0x000001de
_02169a70: .word data_ov61_0217c9b8
_02169a74: .word 0x000001df
_02169a78: .word data_ov61_0217c9c4
.global func_ov61_02169a7c
arm_func_start func_ov61_02169a7c
func_ov61_02169a7c: ; 0x02169a7c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #0x10
mov r5, r2
mov r0, #0
mov r6, r1
str r0, [r5]
ldr r1, [r6, #8]
mov r7, r3
cmp r1, #5
addlt sp, sp, #0x10
ldmltia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, [r6]
mov r1, #0xa
bl strchr
movs r4, r0
beq _02169ba0
ldr r1, _02169bac ; =data_ov61_0217c9d0
sub r0, r4, #5
mov r2, #5
bl strncmp
cmp r0, #0
addne sp, sp, #0x10
movne r0, #3
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, #0
strb r0, [r4]
ldr r0, [r6]
ldr r1, _02169bb0 ; =data_ov61_0217c9d8
add r2, sp, #0
mov r3, #0x10
bl func_ov61_02171720
cmp r0, #0
addeq sp, sp, #0x10
moveq r0, #3
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
add r0, sp, #0
bl func_0204902c
str r0, [r7]
ldr r0, [r6]
ldr r1, _02169bb4 ; =data_ov61_0217c9dc
add r2, sp, #0
mov r3, #0x10
bl func_ov61_02171720
cmp r0, #0
addeq sp, sp, #0x10
moveq r0, #3
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
add r0, sp, #0
bl func_0204902c
ldr r2, [r6]
add r1, r0, #1
sub r2, r4, r2
ldr r3, [r6, #8]
add r2, r1, r2
cmp r3, r2
ble _02169b98
ldrsb r2, [r4, r1]
cmp r2, #0
addne sp, sp, #0x10
movne r0, #3
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
add r3, r4, #1
ldr r2, [sp, #0x28]
str r3, [r5]
str r0, [r2]
ldr r0, [r6]
sub r0, r4, r0
add r0, r1, r0
add r0, r0, #1
str r0, [r6, #0xc]
b _02169ba0
_02169b98:
mov r0, #0xa
strb r0, [r4]
_02169ba0:
mov r0, #0
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02169a7c
_02169bac: .word data_ov61_0217c9d0
_02169bb0: .word data_ov61_0217c9d8
_02169bb4: .word data_ov61_0217c9dc
.global func_ov61_02169bb8
arm_func_start func_ov61_02169bb8
func_ov61_02169bb8: ; 0x02169bb8
stmdb sp!, {r4, lr}
movs r4, r1
ldrne r0, [r4]
cmpne r0, #0
ldrne r1, [r4, #0xc]
cmpne r1, #0
moveq r0, #0
ldmeqia sp!, {r4, pc}
ldr r0, [r4, #8]
subs r2, r0, r1
str r2, [r4, #8]
beq _02169bf8
ldr r0, [r4]
ldr r1, [r4, #0xc]
add r1, r0, r1
bl func_020435b4
_02169bf8:
ldr r2, [r4]
ldr r1, [r4, #8]
mov r0, #0
strb r0, [r2, r1]
str r0, [r4, #0xc]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02169bb8
.global func_ov61_02169c10
arm_func_start func_ov61_02169c10
func_ov61_02169c10: ; 0x02169c10
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #0x10
mov r4, r0
ldr r5, [r4]
mov r7, r1
mov r6, r2
cmp r5, #0
bne _02169c44
ldr r0, _02169cf0 ; =data_ov61_0217ca0c
ldr r1, _02169cf4 ; =data_ov61_0217ca20
ldr r2, _02169cf8 ; =data_ov61_0217c9f4
mov r3, #0x23
bl func_02042f80
_02169c44:
cmp r7, #0
bne _02169c60
ldr r0, _02169cfc ; =data_ov61_0217ca30
ldr r1, _02169cf4 ; =data_ov61_0217ca20
ldr r2, _02169cf8 ; =data_ov61_0217c9f4
mov r3, #0x24
bl func_02042f80
_02169c60:
cmp r6, #1
cmpne r6, #0
beq _02169c80
ldr r0, _02169d00 ; =data_ov61_0217ca48
ldr r1, _02169cf4 ; =data_ov61_0217ca20
ldr r2, _02169cf8 ; =data_ov61_0217c9f4
mov r3, #0x25
bl func_02042f80
_02169c80:
cmp r6, #1
moveq r0, #1
streq r0, [r5, #0x41c]
ldr r1, [r5, #0x1a4]
ldr r0, [r5, #0x1a8]
str r1, [sp, #8]
str r0, [sp, #0xc]
cmp r1, #0
addeq sp, sp, #0x10
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, #0x10
bl func_ov61_0213e10c
movs r3, r0
beq _02169cc8
str r7, [r3]
str r6, [r3, #0xc]
ldr r0, [r5, #0x418]
stmib r3, {r0, r5}
_02169cc8:
mov r2, #0
str r2, [sp]
mov r2, #1
add r1, sp, #8
str r2, [sp, #4]
mov r0, r4
ldmia r1, {r1, r2}
bl func_ov61_02169d04
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02169c10
_02169cf0: .word data_ov61_0217ca0c
_02169cf4: .word data_ov61_0217ca20
_02169cf8: .word data_ov61_0217c9f4
_02169cfc: .word data_ov61_0217ca30
_02169d00: .word data_ov61_0217ca48
.global func_ov61_02169d04
arm_func_start func_ov61_02169d04
func_ov61_02169d04: ; 0x02169d04
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r0, #0x18
mov r5, r3
ldr r4, [r6]
bl func_ov61_0213e10c
cmp r0, #0
bne _02169d44
ldr r1, _02169da4 ; =data_ov61_0217ca78
mov r0, r6
bl func_ov61_02171b10
mov r0, #1
ldmia sp!, {r4, r5, r6, lr}
add sp, sp, #0x10
bx lr
_02169d44:
ldr r1, [sp, #0x14]
ldr r2, [sp, #0x18]
str r1, [r0]
ldr r1, [sp, #0x20]
stmib r0, {r2, r5}
cmp r1, #0
ldrne r1, [r1, #0x18]
ldr r2, [sp, #0x24]
moveq r1, #0
str r1, [r0, #0x10]
mov r1, #0
str r2, [r0, #0xc]
str r1, [r0, #0x14]
ldr r1, [r4, #0x438]
cmp r1, #0
streq r0, [r4, #0x438]
ldr r1, [r4, #0x43c]
cmp r1, #0
strne r0, [r1, #0x14]
str r0, [r4, #0x43c]
mov r0, #0
ldmia sp!, {r4, r5, r6, lr}
add sp, sp, #0x10
bx lr
.align 2, 0
arm_func_end func_ov61_02169d04
_02169da4: .word data_ov61_0217ca78
.global func_ov61_02169da8
arm_func_start func_ov61_02169da8
func_ov61_02169da8: ; 0x02169da8
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r7, r1
ldr r1, [r7]
mov r4, r0
cmp r1, #0
bne _02169dd4
ldr r0, _02169f90 ; =data_ov61_0217ca88
ldr r1, _02169f94 ; =data_ov61_0217ca20
ldr r2, _02169f98 ; =data_ov61_0217c9e4
mov r3, #0x6e
bl func_02042f80
_02169dd4:
ldr r0, [r7, #8]
cmp r0, #0
bne _02169df4
ldr r0, _02169f9c ; =data_ov61_0217caa8
ldr r1, _02169f94 ; =data_ov61_0217ca20
ldr r2, _02169f98 ; =data_ov61_0217c9e4
mov r3, #0x6f
bl func_02042f80
_02169df4:
ldr r1, [r7, #8]
ldr r2, [r7, #4]
ldr r3, [r7]
mov r0, r4
blx r3
ldr r0, [r7, #0xc]
cmp r0, #2
bne _02169e30
ldr r0, [r7, #8]
ldr r0, [r0, #8]
bl func_ov61_0213e13c
ldr r0, [r7, #8]
mov r1, #0
str r1, [r0, #8]
b _02169f74
_02169e30:
cmp r0, #3
bne _02169eb0
ldr r6, [r7, #8]
mov r5, #0
ldr r0, [r6, #0x38]
cmp r0, #0
ble _02169e8c
mov r4, r5
mov r8, r5
_02169e54:
ldr r0, [r6, #0x3c]
ldr r0, [r0, r5, lsl #2]
bl func_ov61_0213e13c
ldr r0, [r6, #0x3c]
str r4, [r0, r5, lsl #2]
ldr r0, [r6, #0x40]
ldr r0, [r0, r5, lsl #2]
bl func_ov61_0213e13c
ldr r0, [r6, #0x40]
str r8, [r0, r5, lsl #2]
ldr r0, [r6, #0x38]
add r5, r5, #1
cmp r5, r0
blt _02169e54
_02169e8c:
ldr r0, [r6, #0x3c]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r6, #0x3c]
ldr r0, [r6, #0x40]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r6, #0x40]
b _02169f74
_02169eb0:
cmp r0, #4
bne _02169ed0
ldr r4, [r7, #8]
ldr r0, [r4, #0xc]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0xc]
b _02169f74
_02169ed0:
cmp r0, #7
bne _02169ef8
ldr r4, [r7, #8]
ldr r0, [r4, #0x10]
cmp r0, #0
beq _02169f74
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0x10]
b _02169f74
_02169ef8:
cmp r0, #8
bne _02169f20
ldr r4, [r7, #8]
ldr r0, [r4, #8]
cmp r0, #0
beq _02169f74
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #8]
b _02169f74
_02169f20:
cmp r0, #9
bne _02169f74
ldr r5, [r7, #8]
mov r4, #0
ldr r0, [r5, #4]
cmp r0, #0
ble _02169f64
mov r6, r4
_02169f40:
ldr r0, [r5, #8]
ldr r0, [r0, r4, lsl #2]
bl func_ov61_0213e13c
ldr r0, [r5, #8]
str r6, [r0, r4, lsl #2]
ldr r0, [r5, #4]
add r4, r4, #1
cmp r4, r0
blt _02169f40
_02169f64:
ldr r0, [r5, #8]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r5, #8]
_02169f74:
ldr r0, [r7, #8]
bl func_ov61_0213e13c
mov r1, #0
mov r0, r7
str r1, [r7, #8]
bl func_ov61_0213e13c
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02169da8
_02169f90: .word data_ov61_0217ca88
_02169f94: .word data_ov61_0217ca20
_02169f98: .word data_ov61_0217c9e4
_02169f9c: .word data_ov61_0217caa8
.global func_ov61_02169fa0
arm_func_start func_ov61_02169fa0
func_ov61_02169fa0: ; 0x02169fa0
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
mov r10, r0
movs r9, r1
ldr r4, [r10]
beq _0216a03c
ldr r5, [r4, #0x438]
ldr r6, [r4, #0x43c]
mov r7, #0
str r7, [r4, #0x438]
mov r1, r5
str r7, [r4, #0x43c]
cmp r5, #0
beq _0216a01c
_02169fd4:
ldr r0, [r1, #0x10]
ldr r8, [r1, #0x14]
cmp r0, r9
ldrne r0, [r1, #0xc]
cmpne r0, #1
bne _0216a00c
mov r0, r10
cmp r7, #0
strne r8, [r7, #0x14]
moveq r5, r8
cmp r6, r1
moveq r6, r7
bl func_ov61_02169da8
b _0216a010
_0216a00c:
mov r7, r1
_0216a010:
mov r1, r8
cmp r8, #0
bne _02169fd4
_0216a01c:
ldr r0, [r4, #0x438]
cmp r0, #0
ldrne r0, [r4, #0x43c]
strne r5, [r0, #0x14]
streq r5, [r4, #0x438]
str r6, [r4, #0x43c]
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_0216a03c:
ldr r1, [r4, #0x438]
cmp r1, #0
beq _0216a080
mov r5, #0
_0216a04c:
str r5, [r4, #0x438]
str r5, [r4, #0x43c]
cmp r1, #0
beq _0216a074
_0216a05c:
ldr r6, [r1, #0x14]
mov r0, r10
bl func_ov61_02169da8
mov r1, r6
cmp r6, #0
bne _0216a05c
_0216a074:
ldr r1, [r4, #0x438]
cmp r1, #0
bne _0216a04c
_0216a080:
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
arm_func_end func_ov61_02169fa0
.global func_ov61_0216a088
arm_func_start func_ov61_0216a088
func_ov61_0216a088: ; 0x0216a088
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r8, r1
mov r9, r0
cmp r8, #0
mov r7, #0
ble _0216a0dc
ldr r6, _0216a0e8 ; =data_ov61_0217cb1c
ldr r5, _0216a0ec ; =0x08421085
mov r4, #0x3e
_0216a0ac:
bl func_02045b48
umull r1, r2, r0, r5
sub r1, r0, r2
add r2, r2, r1, lsr #1
mov r2, r2, lsr #0x5
umull r1, r2, r4, r2
sub r2, r0, r1
ldrsb r0, [r6, r2]
strb r0, [r9, r7]
add r7, r7, #1
cmp r7, r8
blt _0216a0ac
_0216a0dc:
mov r0, #0
strb r0, [r9, r7]
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_0216a088
_0216a0e8: .word data_ov61_0217cb1c
_0216a0ec: .word 0x08421085
.global func_ov61_0216a0f0
arm_func_start func_ov61_0216a0f0
func_ov61_0216a0f0: ; 0x0216a0f0
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0xc
mov r6, r0
ldr r4, [r6]
mov r5, r1
ldr r0, [r4, #0x10c]
cmp r0, #0
bne _0216a290
mov r0, #2
mov r1, #1
mov r2, #0
bl func_ov61_02166a84
mvn r1, #0
str r0, [r4, #0x204]
cmp r0, r1
bne _0216a15c
ldr r2, _0216a434 ; =data_ov61_0217cb5c
mov r0, r6
mov r1, #5
bl func_ov61_02171aec
mov r0, r6
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0xc
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, pc}
_0216a15c:
mov r1, #0
bl func_ov61_021666cc
cmp r0, #0
bne _0216a198
ldr r2, _0216a438 ; =data_ov61_0217cb84
mov r0, r6
mov r1, #5
bl func_ov61_02171aec
mov r0, r6
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0xc
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, pc}
_0216a198:
add r1, sp, #4
mov r2, #0
str r2, [r1]
mov r0, #2
str r2, [r1, #4]
strb r0, [sp, #5]
ldr r0, [r4, #0x204]
mov r2, #8
bl func_ov61_02166ac0
mvn r1, #0
cmp r0, r1
mov r1, #5
bne _0216a1f4
ldr r2, _0216a43c ; =data_ov61_0217cbb8
mov r0, r6
bl func_ov61_02171aec
mov r0, r6
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0xc
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, pc}
_0216a1f4:
ldr r0, [r4, #0x204]
bl func_ov61_02166b6c
mvn r1, #0
cmp r0, r1
bne _0216a234
ldr r2, _0216a440 ; =data_ov61_0217cbe0
mov r0, r6
mov r1, #5
bl func_ov61_02171aec
mov r0, r6
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0xc
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, pc}
_0216a234:
mov r0, #8
str r0, [sp]
ldr r0, [r4, #0x204]
add r1, sp, #4
add r2, sp, #0
bl func_ov61_02166c98
mvn r1, #0
cmp r0, r1
bne _0216a284
ldr r2, _0216a444 ; =data_ov61_0217cc0c
mov r0, r6
mov r1, #5
bl func_ov61_02171aec
mov r0, r6
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0xc
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, pc}
_0216a284:
ldrh r0, [sp, #6]
str r0, [r4, #0x208]
b _0216a2a0
_0216a290:
mvn r0, #0
str r0, [r4, #0x204]
mov r0, #0
str r0, [r4, #0x208]
_0216a2a0:
mov r0, #2
mov r1, #1
mov r2, #0
bl func_ov61_02166a84
mvn r1, #0
str r0, [r4, #0x1d4]
cmp r0, r1
bne _0216a2ec
ldr r2, _0216a434 ; =data_ov61_0217cb5c
mov r0, r6
mov r1, #5
bl func_ov61_02171aec
mov r0, r6
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0xc
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, pc}
_0216a2ec:
mov r1, #0
bl func_ov61_021666cc
cmp r0, #0
bne _0216a328
ldr r2, _0216a438 ; =data_ov61_0217cb84
mov r0, r6
mov r1, #5
bl func_ov61_02171aec
mov r0, r6
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0xc
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, pc}
_0216a328:
ldr r0, _0216a448 ; =data_ov61_0217cadc
bl func_ov61_021590ac
cmp r0, #0
bne _0216a364
ldr r2, _0216a44c ; =data_ov61_0217cc3c
mov r0, r6
mov r1, #5
bl func_ov61_02171aec
mov r0, r6
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0xc
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, pc}
_0216a364:
add r3, sp, #4
mov r2, #0
str r2, [r3]
mov r1, #2
str r2, [r3, #4]
strb r1, [sp, #5]
ldr r0, [r0, #0xc]
ldr r0, [r0]
ldr r0, [r0]
str r0, [sp, #8]
cmp r0, #0
bne _0216a3a8
ldr r0, _0216a450 ; =data_ov61_0217cc70
ldr r1, _0216a454 ; =data_ov61_0217cc90
ldr r2, _0216a458 ; =data_ov61_0217cabc
mov r3, #0x90
bl func_02042f80
_0216a3a8:
ldr r0, _0216a45c ; =0x0000cc74
add r1, sp, #4
strh r0, [sp, #6]
ldr r0, [r4, #0x1d4]
mov r2, #8
bl func_ov61_02166b20
mvn r1, #0
cmp r0, r1
bne _0216a41c
ldr r0, [r4, #0x1d4]
bl func_ov61_02166ce0
mvn r2, #5
cmp r0, r2
subne r1, r2, #0x14
cmpne r0, r1
subne r1, r2, #0x46
cmpne r0, r1
beq _0216a41c
ldr r2, _0216a460 ; =data_ov61_0217cca0
mov r0, r6
mov r1, #5
bl func_ov61_02171aec
mov r0, r6
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0xc
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, pc}
_0216a41c:
mov r0, #1
str r0, [r5, #0x14]
str r0, [r4, #0x1d8]
mov r0, #0
add sp, sp, #0xc
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0216a0f0
_0216a434: .word data_ov61_0217cb5c
_0216a438: .word data_ov61_0217cb84
_0216a43c: .word data_ov61_0217cbb8
_0216a440: .word data_ov61_0217cbe0
_0216a444: .word data_ov61_0217cc0c
_0216a448: .word data_ov61_0217cadc
_0216a44c: .word data_ov61_0217cc3c
_0216a450: .word data_ov61_0217cc70
_0216a454: .word data_ov61_0217cc90
_0216a458: .word data_ov61_0217cabc
_0216a45c: .word 0x0000cc74
_0216a460: .word data_ov61_0217cca0
.global func_ov61_0216a464
arm_func_start func_ov61_0216a464
func_ov61_0216a464: ; 0x0216a464
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x10
mov r8, r0
ldr r4, [r8]
mov r7, r1
ldr r1, [r4, #0x1d8]
mov r6, r2
mov r5, r3
cmp r1, #4
bne _0216a49c
bl func_ov61_02167d18
cmp r0, #0
addne sp, sp, #0x10
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
_0216a49c:
ldr r0, [r4, #0x1d8]
cmp r0, #0
beq _0216a4c0
ldr r1, _0216a69c ; =data_ov61_0217ccc8
mov r0, r8
bl func_ov61_02171b10
add sp, sp, #0x10
mov r0, #2
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216a4c0:
ldr r0, [sp, #0x38]
cmp r0, #0
beq _0216a4e0
cmp r0, #1
bne _0216a4ec
mov r0, #1
str r0, [r4, #0x10c]
b _0216a504
_0216a4e0:
mov r0, #0
str r0, [r4, #0x10c]
b _0216a504
_0216a4ec:
ldr r1, _0216a6a0 ; =data_ov61_0217ccdc
mov r0, r8
bl func_ov61_02171b10
add sp, sp, #0x10
mov r0, #2
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216a504:
mov r3, #1
mov r1, r7
add r0, r4, #0x110
mov r2, #0x1f
str r3, [r4, #0x10c]
bl func_ov61_021715c8
add r0, r4, #0x2f
mov r1, r6
add r0, r0, #0x100
mov r2, #0x15
bl func_ov61_021715c8
mov r1, r5
add r0, r4, #0x144
mov r2, #0x33
bl func_ov61_021715c8
add r0, r4, #0x77
ldr r1, [sp, #0x28]
add r0, r0, #0x100
mov r2, #0x1f
bl func_ov61_021715c8
add r0, r4, #0x144
bl func_ov61_02166688
mov r0, #0x308
bl func_ov61_0213e10c
movs r4, r0
bne _0216a584
ldr r1, _0216a6a4 ; =data_ov61_0217ccf0
mov r0, r8
bl func_ov61_02171b10
add sp, sp, #0x10
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216a584:
mov r1, #0
mov r2, #0x308
bl func_02043600
ldr r0, [sp, #0x3c]
ldr r1, [sp, #0x2c]
str r0, [r4, #0x304]
ldrsb r0, [r1]
cmp r0, #0
ldrne r0, [sp, #0x30]
ldrnesb r0, [r0]
cmpne r0, #0
beq _0216a5d4
add r0, r4, #0xc2
mov r2, #0x100
bl func_ov61_021715c8
add r0, r4, #0xc2
ldr r1, [sp, #0x30]
add r0, r0, #0x100
mov r2, #0x100
bl func_ov61_021715c8
_0216a5d4:
ldr r1, [sp, #0x34]
cmp r1, #0
beq _0216a5f0
add r0, r4, #0xc2
add r0, r0, #0x200
mov r2, #0x41
bl func_ov61_021715c8
_0216a5f0:
ldr r1, [sp, #0x40]
ldr r0, [sp, #0x44]
str r1, [sp]
str r0, [sp, #4]
ldr r5, [sp, #0x48]
add r3, sp, #0xc
mov r0, r8
mov r2, r4
mov r1, #0
str r5, [sp, #8]
bl func_ov61_0216d7fc
cmp r0, #0
addne sp, sp, #0x10
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
ldr r1, [sp, #0xc]
mov r0, r8
bl func_ov61_0216a0f0
movs r4, r0
beq _0216a668
ldr r1, [sp, #0xc]
mov r0, r8
str r4, [r1, #0x1c]
ldr r1, [sp, #0xc]
bl func_ov61_0216d4b0
mov r0, r8
mov r1, #0
bl func_ov61_0216b504
add sp, sp, #0x10
mov r0, r4
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216a668:
ldr r1, [sp, #0xc]
ldr r0, [r1, #8]
cmp r0, #0
beq _0216a690
ldr r1, [r1, #0x18]
mov r0, r8
bl func_ov61_02168158
cmp r0, #0
addne sp, sp, #0x10
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
_0216a690:
mov r0, #0
add sp, sp, #0x10
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_0216a464
_0216a69c: .word data_ov61_0217ccc8
_0216a6a0: .word data_ov61_0217ccdc
_0216a6a4: .word data_ov61_0217ccf0
.global func_ov61_0216a6a8
arm_func_start func_ov61_0216a6a8
func_ov61_0216a6a8: ; 0x0216a6a8
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #0x288
mov r5, r1
mov r6, r0
add r0, r5, #0x80
mov r1, #0x20
ldr r4, [r6]
bl func_ov61_0216a088
add r0, r5, #0x100
ldrsb r0, [r0, #0xc2]
cmp r0, #0
addne r0, r5, #0xc2
addeq r0, r4, #0x77
add r7, r0, #0x100
mov r0, r7
bl strlen
mov r1, r0
mov r0, r7
add r2, r5, #0xa1
bl func_ov61_0216659c
ldrsb r0, [r5, #0xc2]
cmp r0, #0
addne r0, r5, #0xc2
bne _0216a738
add r0, r4, #0x100
ldrsb r0, [r0, #0x2f]
cmp r0, #0
addne r0, r4, #0x2f
addne r0, r0, #0x100
bne _0216a738
ldr r1, _0216a9fc ; =data_ov61_0217cd00
add r0, sp, #0x35
add r2, r4, #0x110
add r3, r4, #0x144
bl func_020459b8
add r0, sp, #0x35
_0216a738:
str r0, [sp]
add r0, r5, #0x80
str r0, [sp, #4]
ldr r1, _0216aa00 ; =data_ov61_0217cd08
ldr r3, _0216aa04 ; =data_ov61_0217cd18
add r0, sp, #0x87
str r5, [sp, #8]
add r2, r5, #0xa1
str r2, [sp, #0xc]
bl func_020459b8
add r0, sp, #0x87
bl strlen
mov r1, r0
add r0, sp, #0x87
add r2, sp, #0x14
bl func_ov61_0216659c
ldr r0, [r4, #0x100]
cmp r0, #0
beq _0216a7b8
add r3, sp, #0x10
mov r0, r6
add r1, r4, #0x110
add r2, r4, #0x144
bl func_ov61_0216f134
ldr r0, [sp, #0x10]
cmp r0, #0
beq _0216a7b8
ldr r0, [r0, #4]
str r0, [r4, #0x19c]
ldr r0, [sp, #0x10]
ldr r0, [r0]
str r0, [r4, #0x1a0]
_0216a7b8:
ldr r2, _0216aa08 ; =data_ov61_0217cd4c
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
ldr r2, _0216aa0c ; =data_ov61_0217cd54
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r0, r6
add r1, r4, #0x1f4
add r2, r5, #0x80
bl func_ov61_0216936c
ldrsb r0, [r5, #0xc2]
cmp r0, #0
beq _0216a818
ldr r2, _0216aa10 ; =data_ov61_0217cd60
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r0, r6
add r1, r4, #0x1f4
add r2, r5, #0xc2
bl func_ov61_0216936c
b _0216a890
_0216a818:
add r0, r4, #0x100
ldrsb r0, [r0, #0x2f]
cmp r0, #0
beq _0216a850
ldr r2, _0216aa14 ; =data_ov61_0217cd6c
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
add r2, r4, #0x2f
mov r0, r6
add r1, r4, #0x1f4
add r2, r2, #0x100
bl func_ov61_0216936c
b _0216a890
_0216a850:
ldr r2, _0216aa18 ; =data_ov61_0217cd7c
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r0, r6
add r1, r4, #0x1f4
add r2, r4, #0x110
bl func_ov61_0216936c
ldr r2, _0216aa1c ; =data_ov61_0217cd84
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r0, r6
add r1, r4, #0x1f4
add r2, r4, #0x144
bl func_ov61_0216936c
_0216a890:
ldr r0, [r4, #0x19c]
cmp r0, #0
beq _0216a8bc
ldr r2, _0216aa20 ; =data_ov61_0217cd88
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
ldr r2, [r4, #0x19c]
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216939c
_0216a8bc:
ldr r0, [r4, #0x1a0]
cmp r0, #0
beq _0216a8e8
ldr r2, _0216aa24 ; =data_ov61_0217cd94
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
ldr r2, [r4, #0x1a0]
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216939c
_0216a8e8:
ldr r2, _0216aa28 ; =data_ov61_0217cda0
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
add r2, sp, #0x14
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
ldr r0, [r4, #0x10c]
cmp r0, #1
bne _0216a924
ldr r2, _0216aa2c ; =data_ov61_0217cdac
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
_0216a924:
ldr r2, _0216aa30 ; =data_ov61_0217cdb8
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
ldr r1, [r4, #0x208]
mov r0, r6
mov r1, r1, lsl #0x10
mov r1, r1, lsr #0x10
mov r2, r1, asr #0x8
mov r1, r1, lsl #0x8
and r2, r2, #0xff
and r1, r1, #0xff00
orr r1, r2, r1
mov r1, r1, lsl #0x10
mov r1, r1, lsr #0x10
mov r2, r1, lsl #0x10
add r1, r4, #0x1f4
mov r2, r2, asr #0x10
bl func_ov61_0216939c
ldr r2, _0216aa34 ; =data_ov61_0217cdc0
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216936c
ldr r2, [r4, #0x46c]
mov r0, r6
add r1, r4, #0x1f4
bl func_ov61_0216939c
mov r0, r6
add r1, r4, #0x1f4
ldr r2, _0216aa38 ; =data_ov61_0217cdcc
bl func_ov61_0216936c
mov r0, r6
add r1, r4, #0x1f4
ldr r2, _0216aa3c ; =data_ov61_021810c0
bl func_ov61_0216936c
mov r0, r6
add r1, r4, #0x1f4
ldr r2, _0216aa40 ; =data_ov61_0217cdd8
bl func_ov61_0216936c
mov r0, r6
add r1, r4, #0x1f4
ldr r2, [r4, #0x470]
bl func_ov61_0216939c
mov r0, r6
add r1, r4, #0x1f4
ldr r2, _0216aa44 ; =data_ov61_0217cde8
bl func_ov61_0216936c
mov r0, r6
add r1, r4, #0x1f4
ldr r2, _0216aa48 ; =data_ov61_0217cdf0
bl func_ov61_0216936c
mov r0, #0
add sp, sp, #0x288
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0216a6a8
_0216a9fc: .word data_ov61_0217cd00
_0216aa00: .word data_ov61_0217cd08
_0216aa04: .word data_ov61_0217cd18
_0216aa08: .word data_ov61_0217cd4c
_0216aa0c: .word data_ov61_0217cd54
_0216aa10: .word data_ov61_0217cd60
_0216aa14: .word data_ov61_0217cd6c
_0216aa18: .word data_ov61_0217cd7c
_0216aa1c: .word data_ov61_0217cd84
_0216aa20: .word data_ov61_0217cd88
_0216aa24: .word data_ov61_0217cd94
_0216aa28: .word data_ov61_0217cda0
_0216aa2c: .word data_ov61_0217cdac
_0216aa30: .word data_ov61_0217cdb8
_0216aa34: .word data_ov61_0217cdc0
_0216aa38: .word data_ov61_0217cdcc
_0216aa3c: .word data_ov61_021810c0
_0216aa40: .word data_ov61_0217cdd8
_0216aa44: .word data_ov61_0217cde8
_0216aa48: .word data_ov61_0217cdf0
.global func_ov61_0216aa4c
arm_func_start func_ov61_0216aa4c
func_ov61_0216aa4c: ; 0x0216aa4c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0xe8
mov r10, r0
ldr r5, [r10]
mov r9, r1
add r0, r5, #0x77
add r0, r0, #0x100
bl strlen
mov r7, r0
ldr r0, _0216aca4 ; =0x79707367
bl func_ov61_02166dc0
cmp r7, #0
mov r6, #0
bls _0216aac0
add r8, sp, #0x2d
mov r4, r6
mov r11, #0xff
_0216aa90:
mov r0, r4
mov r1, r11
bl func_ov61_02166ddc
add r1, r5, r6
add r1, r1, #0x100
add r6, r6, #1
ldrsb r1, [r1, #0x77]
mov r0, r0, lsl #0x18
cmp r6, r7
eor r0, r1, r0, asr #24
strb r0, [r8], #1
blo _0216aa90
_0216aac0:
add r0, sp, #0x2d
mov r4, #0
add r1, sp, #0
mov r2, r7
mov r3, #1
strb r4, [r0, r6]
bl func_ov61_02166e98
ldr r2, _0216aca8 ; =data_ov61_0217cdf8
mov r0, r10
add r1, r5, #0x1f4
bl func_ov61_0216936c
ldr r2, _0216acac ; =data_ov61_0217ce04
mov r0, r10
add r1, r5, #0x1f4
bl func_ov61_0216936c
mov r0, r10
add r1, r5, #0x1f4
add r2, r5, #0x144
bl func_ov61_0216936c
ldr r2, _0216acb0 ; =data_ov61_0217ce0c
mov r0, r10
add r1, r5, #0x1f4
bl func_ov61_0216936c
mov r0, r10
add r1, r5, #0x1f4
add r2, r5, #0x110
bl func_ov61_0216936c
ldr r2, _0216acb4 ; =data_ov61_0217ce14
mov r0, r10
add r1, r5, #0x1f4
bl func_ov61_0216936c
mov r0, r10
add r1, r5, #0x1f4
add r2, sp, #0
bl func_ov61_0216936c
ldr r2, _0216acb8 ; =data_ov61_0217cdc0
mov r0, r10
add r1, r5, #0x1f4
bl func_ov61_0216936c
ldr r2, [r5, #0x46c]
mov r0, r10
add r1, r5, #0x1f4
bl func_ov61_0216939c
ldr r2, _0216acbc ; =data_ov61_0217cdcc
mov r0, r10
add r1, r5, #0x1f4
bl func_ov61_0216936c
ldr r2, _0216acc0 ; =data_ov61_021810c0
mov r0, r10
add r1, r5, #0x1f4
bl func_ov61_0216936c
ldr r2, _0216acc4 ; =data_ov61_0217cdd8
mov r0, r10
add r1, r5, #0x1f4
bl func_ov61_0216936c
ldr r2, [r5, #0x470]
mov r0, r10
add r1, r5, #0x1f4
bl func_ov61_0216939c
ldr r2, _0216acc8 ; =data_ov61_0217cd6c
mov r0, r10
add r1, r5, #0x1f4
bl func_ov61_0216936c
add r2, r5, #0x2f
mov r0, r10
add r1, r5, #0x1f4
add r2, r2, #0x100
bl func_ov61_0216936c
add r0, r9, #0x200
ldrsb r0, [r0, #0xc2]
cmp r0, #0
beq _0216ac78
add r0, r9, #0xc2
add r0, r0, #0x200
bl strlen
mov r6, r0
ldr r0, _0216aca4 ; =0x79707367
bl func_ov61_02166dc0
cmp r6, #0
mov r8, r4
bls _0216ac3c
add r7, sp, #0xa6
mov r11, #0xff
_0216ac0c:
mov r0, r4
mov r1, r11
bl func_ov61_02166ddc
add r1, r9, r8
add r1, r1, #0x200
add r8, r8, #1
ldrsb r1, [r1, #0xc2]
mov r0, r0, lsl #0x18
cmp r8, r6
eor r0, r1, r0, asr #24
strb r0, [r7], #1
blo _0216ac0c
_0216ac3c:
add r0, sp, #0xa6
mov r4, #0
add r1, sp, #0x4c
mov r2, r6
mov r3, #1
strb r4, [r0, r8]
bl func_ov61_02166e98
ldr r2, _0216accc ; =data_ov61_0217ce24
mov r0, r10
add r1, r5, #0x1f4
bl func_ov61_0216936c
add r2, sp, #0x4c
mov r0, r10
add r1, r5, #0x1f4
bl func_ov61_0216936c
_0216ac78:
ldr r2, _0216acd0 ; =data_ov61_0217cde8
mov r0, r10
add r1, r5, #0x1f4
bl func_ov61_0216936c
ldr r2, _0216acd4 ; =data_ov61_0217cdf0
mov r0, r10
add r1, r5, #0x1f4
bl func_ov61_0216936c
mov r0, #0
add sp, sp, #0xe8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0216aa4c
_0216aca4: .word 0x79707367
_0216aca8: .word data_ov61_0217cdf8
_0216acac: .word data_ov61_0217ce04
_0216acb0: .word data_ov61_0217ce0c
_0216acb4: .word data_ov61_0217ce14
_0216acb8: .word data_ov61_0217cdc0
_0216acbc: .word data_ov61_0217cdcc
_0216acc0: .word data_ov61_021810c0
_0216acc4: .word data_ov61_0217cdd8
_0216acc8: .word data_ov61_0217cd6c
_0216accc: .word data_ov61_0217ce24
_0216acd0: .word data_ov61_0217cde8
_0216acd4: .word data_ov61_0217cdf0
.global func_ov61_0216acd8
arm_func_start func_ov61_0216acd8
func_ov61_0216acd8: ; 0x0216acd8
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x2a0
mov r6, r2
mov r8, r0
mov r7, r1
mov r1, r6
mov r2, #0
ldr r5, [r8]
bl func_ov61_02171648
cmp r0, #0
beq _0216add0
ldr r2, [r5, #0x418]
ldr r0, _0216b348 ; =0x00000106
cmp r2, r0
bne _0216ad38
ldr r1, [r5, #0x1a0]
cmp r1, #0
beq _0216ad38
mov r0, r8
bl func_ov61_0216f08c
mov r0, #0
str r0, [r5, #0x19c]
str r0, [r5, #0x1a0]
b _0216ad6c
_0216ad38:
ldr r0, _0216b34c ; =0x00000201
cmp r2, r0
bne _0216ad6c
ldr r1, _0216b350 ; =data_ov61_0217ce30
add r2, sp, #0xa0
mov r0, r6
mov r3, #0x200
bl func_ov61_02171720
cmp r0, #0
beq _0216ad6c
add r0, sp, #0xa0
bl func_0204902c
str r0, [r5, #0x1a0]
_0216ad6c:
ldr r1, _0216b354 ; =data_ov61_0217ce38
mov r0, r6
bl strstr
cmp r0, #0
ldr r1, [r5, #0x418]
mov r0, r8
beq _0216adac
mov r2, r5
bl func_ov61_02171aec
mov r0, r8
mov r1, #4
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x2a0
mov r0, #4
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216adac:
mov r2, r5
bl func_ov61_02171aec
mov r0, r8
mov r1, #4
mov r2, #0
bl func_ov61_02169c10
add sp, sp, #0x2a0
mov r0, #4
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216add0:
ldr r0, [r7, #0x14]
ldr r4, [r7, #4]
cmp r0, #1
beq _0216adf4
cmp r0, #2
beq _0216afdc
cmp r0, #3
beq _0216aecc
b _0216b33c
_0216adf4:
ldr r1, _0216b358 ; =data_ov61_0217ce40
mov r0, r6
mov r2, #5
bl strncmp
cmp r0, #0
beq _0216ae38
ldr r2, _0216b35c ; =data_ov61_0217ce48
mov r0, r8
mov r1, #1
bl func_ov61_02171aec
mov r0, r8
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x2a0
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216ae38:
ldr r1, _0216b360 ; =data_ov61_0217cd54
mov r0, r6
mov r2, r4
mov r3, #0x80
bl func_ov61_02171720
cmp r0, #0
bne _0216ae80
ldr r2, _0216b35c ; =data_ov61_0217ce48
mov r0, r8
mov r1, #1
bl func_ov61_02171aec
mov r0, r8
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x2a0
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216ae80:
ldr r0, [r4, #0x304]
mov r1, r4
cmp r0, #0
mov r0, r8
beq _0216aeb0
bl func_ov61_0216aa4c
cmp r0, #0
addne sp, sp, #0x2a0
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
mov r0, #3
str r0, [r7, #0x14]
b _0216b33c
_0216aeb0:
bl func_ov61_0216a6a8
cmp r0, #0
addne sp, sp, #0x2a0
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
mov r0, #2
str r0, [r7, #0x14]
b _0216b33c
_0216aecc:
ldr r1, _0216b364 ; =data_ov61_0217ce78
mov r0, r6
mov r2, #5
bl strncmp
cmp r0, #0
beq _0216af10
ldr r2, _0216b35c ; =data_ov61_0217ce48
mov r0, r8
mov r1, #1
bl func_ov61_02171aec
mov r0, r8
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x2a0
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216af10:
ldr r1, _0216b368 ; =data_ov61_0217cd88
add r2, sp, #0xa0
mov r0, r6
mov r3, #0x200
bl func_ov61_02171720
cmp r0, #0
bne _0216af58
ldr r2, _0216b36c ; =data_ov61_0217ce80
mov r0, r8
mov r1, #1
bl func_ov61_02171aec
mov r0, r8
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x2a0
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216af58:
add r0, sp, #0xa0
bl func_0204902c
str r0, [r5, #0x19c]
ldr r1, _0216b370 ; =data_ov61_0217cd94
add r2, sp, #0xa0
mov r0, r6
mov r3, #0x200
bl func_ov61_02171720
cmp r0, #0
bne _0216afac
ldr r2, _0216b36c ; =data_ov61_0217ce80
mov r0, r8
mov r1, #1
bl func_ov61_02171aec
mov r0, r8
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x2a0
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216afac:
add r0, sp, #0xa0
bl func_0204902c
str r0, [r5, #0x1a0]
mov r0, r8
mov r1, r4
bl func_ov61_0216a6a8
cmp r0, #0
addne sp, sp, #0x2a0
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
mov r0, #2
str r0, [r7, #0x14]
b _0216b33c
_0216afdc:
ldr r1, _0216b374 ; =data_ov61_0217ceb0
mov r0, r6
mov r2, #5
bl strncmp
cmp r0, #0
beq _0216b020
ldr r2, _0216b35c ; =data_ov61_0217ce48
mov r0, r8
mov r1, #1
bl func_ov61_02171aec
mov r0, r8
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x2a0
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216b020:
ldr r1, _0216b378 ; =data_ov61_0217ceb8
add r2, sp, #0xa0
mov r0, r6
mov r3, #0x200
bl func_ov61_02171720
cmp r0, #0
bne _0216b068
ldr r2, _0216b36c ; =data_ov61_0217ce80
mov r0, r8
mov r1, #1
bl func_ov61_02171aec
mov r0, r8
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x2a0
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216b068:
add r0, sp, #0xa0
bl func_0204902c
str r0, [r5, #0x198]
ldr r1, _0216b368 ; =data_ov61_0217cd88
add r2, sp, #0xa0
mov r0, r6
mov r3, #0x200
bl func_ov61_02171720
cmp r0, #0
bne _0216b0bc
ldr r2, _0216b36c ; =data_ov61_0217ce80
mov r0, r8
mov r1, #1
bl func_ov61_02171aec
mov r0, r8
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x2a0
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216b0bc:
add r0, sp, #0xa0
bl func_0204902c
str r0, [r5, #0x19c]
ldr r1, _0216b370 ; =data_ov61_0217cd94
add r2, sp, #0xa0
mov r0, r6
mov r3, #0x200
bl func_ov61_02171720
cmp r0, #0
bne _0216b110
ldr r2, _0216b36c ; =data_ov61_0217ce80
mov r0, r8
mov r1, #1
bl func_ov61_02171aec
mov r0, r8
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x2a0
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216b110:
add r0, sp, #0xa0
bl func_0204902c
str r0, [r5, #0x1a0]
ldr r1, _0216b37c ; =data_ov61_0217cd6c
add r2, sp, #0x18
mov r0, r6
mov r3, #0x15
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
add r2, r5, #0x74
streqb r0, [sp, #0x18]
ldr r1, _0216b380 ; =data_ov61_0217cec4
mov r0, r6
add r2, r2, #0x400
mov r3, #0x19
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
streqb r0, [r5, #0x474]
ldrsb r0, [r4, #0xc2]
cmp r0, #0
addne r0, r4, #0xc2
bne _0216b1a0
add r0, r5, #0x100
ldrsb r0, [r0, #0x2f]
cmp r0, #0
addne r0, r5, #0x2f
addne r0, r0, #0x100
bne _0216b1a0
ldr r1, _0216b384 ; =data_ov61_0217cd00
add r0, sp, #0x4e
add r2, r5, #0x110
add r3, r5, #0x144
bl func_020459b8
add r0, sp, #0x4e
_0216b1a0:
stmia sp, {r0, r4}
add r2, r4, #0x80
str r2, [sp, #8]
add r2, r4, #0xa1
ldr r1, _0216b388 ; =data_ov61_0217cd08
ldr r3, _0216b38c ; =data_ov61_0217cd18
add r0, sp, #0xa0
str r2, [sp, #0xc]
bl func_020459b8
add r0, sp, #0xa0
bl strlen
mov r1, r0
add r0, sp, #0xa0
add r2, sp, #0x2d
bl func_ov61_0216659c
ldr r1, _0216b390 ; =data_ov61_0217cecc
mov r0, r6
add r2, sp, #0xa0
mov r3, #0x200
bl func_ov61_02171720
cmp r0, #0
bne _0216b224
ldr r2, _0216b36c ; =data_ov61_0217ce80
mov r0, r8
mov r1, #1
bl func_ov61_02171aec
mov r0, r8
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x2a0
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216b224:
add r0, sp, #0x2d
add r1, sp, #0xa0
mov r2, #0x20
bl func_0204366c
cmp r0, #0
beq _0216b268
ldr r2, _0216b394 ; =data_ov61_0217ced4
mov r0, r8
mov r1, #0x108
bl func_ov61_02171aec
mov r0, r8
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x2a0
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216b268:
ldr r0, [r5, #0x100]
cmp r0, #0
beq _0216b290
ldr r1, [r5, #0x1a0]
mov r0, r8
bl func_ov61_0216ef6c
ldr r1, [r5, #0x1a0]
str r1, [r0]
ldr r1, [r5, #0x19c]
str r1, [r0, #4]
_0216b290:
mov r0, #3
str r0, [r5, #0x1d8]
ldr r1, [r7, #0xc]
ldr r0, [r7, #0x10]
str r1, [sp, #0x10]
str r0, [sp, #0x14]
cmp r1, #0
beq _0216b330
mov r0, #0x20
bl func_ov61_0213e10c
movs r4, r0
bne _0216b2d8
ldr r1, _0216b398 ; =data_ov61_0217ccf0
mov r0, r8
bl func_ov61_02171b10
add sp, sp, #0x2a0
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216b2d8:
mov r1, #0
mov r2, #0x20
bl func_02043600
ldr r0, [r5, #0x1a0]
mov r3, #0
str r0, [r4, #4]
add r1, sp, #0x18
add r0, r4, #8
mov r2, #0x15
str r3, [r4]
bl func_ov61_021715c8
add r1, sp, #0x10
mov r0, r8
mov r3, r4
str r7, [sp]
mov r2, #0
str r2, [sp, #4]
ldmia r1, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
addne sp, sp, #0x2a0
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
_0216b330:
mov r0, r8
mov r1, r7
bl func_ov61_0216d950
_0216b33c:
mov r0, #0
add sp, sp, #0x2a0
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_0216acd8
_0216b348: .word 0x00000106
_0216b34c: .word 0x00000201
_0216b350: .word data_ov61_0217ce30
_0216b354: .word data_ov61_0217ce38
_0216b358: .word data_ov61_0217ce40
_0216b35c: .word data_ov61_0217ce48
_0216b360: .word data_ov61_0217cd54
_0216b364: .word data_ov61_0217ce78
_0216b368: .word data_ov61_0217cd88
_0216b36c: .word data_ov61_0217ce80
_0216b370: .word data_ov61_0217cd94
_0216b374: .word data_ov61_0217ceb0
_0216b378: .word data_ov61_0217ceb8
_0216b37c: .word data_ov61_0217cd6c
_0216b380: .word data_ov61_0217cec4
_0216b384: .word data_ov61_0217cd00
_0216b388: .word data_ov61_0217cd08
_0216b38c: .word data_ov61_0217cd18
_0216b390: .word data_ov61_0217cecc
_0216b394: .word data_ov61_0217ced4
_0216b398: .word data_ov61_0217ccf0
.global func_ov61_0216b39c
arm_func_start func_ov61_0216b39c
func_ov61_0216b39c: ; 0x0216b39c
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r4, [r5]
add r2, sp, #0
ldr r1, [r4, #0x1d4]
bl func_ov61_02171828
cmp r0, #0
ldmneia sp!, {r3, r4, r5, pc}
ldr r0, [sp]
cmp r0, #4
bne _0216b3f0
ldr r1, _0216b428 ; =0x00000107
ldr r2, _0216b42c ; =data_ov61_0217cef4
mov r0, r5
bl func_ov61_02171aec
mov r0, r5
mov r1, #4
mov r2, #1
bl func_ov61_02169c10
mov r0, #4
ldmia sp!, {r3, r4, r5, pc}
_0216b3f0:
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
cmp r0, #3
beq _0216b418
ldr r0, _0216b430 ; =data_ov61_0217cf1c
ldr r1, _0216b434 ; =data_ov61_0217cc90
ldr r2, _0216b438 ; =data_ov61_0217cacc
ldr r3, _0216b43c ; =0x000002ef
bl func_02042f80
_0216b418:
mov r0, #2
str r0, [r4, #0x1d8]
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0216b39c
_0216b428: .word 0x00000107
_0216b42c: .word data_ov61_0217cef4
_0216b430: .word data_ov61_0217cf1c
_0216b434: .word data_ov61_0217cc90
_0216b438: .word data_ov61_0217cacc
_0216b43c: .word 0x000002ef
.global func_ov61_0216b440
arm_func_start func_ov61_0216b440
func_ov61_0216b440: ; 0x0216b440
stmdb sp!, {r4, r5, r6, lr}
mov r5, r1
ldr r1, [r5, #8]
mov r6, r0
cmp r1, #0
ldr r4, [r6]
beq _0216b4a4
ldr r0, [r4, #0x104]
cmp r0, #0
bne _0216b4a4
ldr r0, [r1, #8]
bl func_ov61_0213e13c
ldr r0, [r5, #8]
mov r1, #0
str r1, [r0, #8]
ldr r0, [r5, #8]
ldr r0, [r0, #0xc]
bl func_ov61_0213e13c
ldr r0, [r5, #8]
mov r1, #0
str r1, [r0, #0xc]
ldr r0, [r5, #8]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r5, #8]
_0216b4a4:
ldr r0, [r5, #0x10]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r5, #0x10]
ldr r0, [r5, #0x18]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r5, #0x18]
str r0, [r5, #0x14]
ldr r0, [r5, #0xc]
cmp r0, #0
beq _0216b4e8
ldr r0, [r4, #0x104]
cmp r0, #1
ldreq r0, [r5, #8]
cmpeq r0, #0
bne _0216b4fc
_0216b4e8:
mov r0, r6
mov r1, r5
bl func_ov61_0216f0c0
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
_0216b4fc:
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0216b440
.global func_ov61_0216b504
arm_func_start func_ov61_0216b504
func_ov61_0216b504: ; 0x0216b504
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0xc
mov r5, r0
ldr r4, [r5]
ldr r2, [r4, #0x1d8]
cmp r2, #4
addeq sp, sp, #0xc
ldmeqia sp!, {r3, r4, r5, r6, pc}
cmp r2, #0
beq _0216b5f0
cmp r1, #0
beq _0216b568
cmp r2, #3
bne _0216b568
ldr r2, _0216b6bc ; =data_ov61_0217cf34
add r1, r4, #0x1f4
bl func_ov61_0216936c
ldr r2, [r4, #0x198]
mov r0, r5
add r1, r4, #0x1f4
bl func_ov61_0216939c
ldr r2, _0216b6c0 ; =data_ov61_0217cdf0
mov r0, r5
add r1, r4, #0x1f4
bl func_ov61_0216936c
_0216b568:
mov r1, #1
ldr r0, _0216b6c4 ; =data_ov61_0217cf48
str r1, [sp]
str r0, [sp, #4]
ldr r1, [r4, #0x1d4]
add r3, sp, #8
mov r0, r5
add r2, r4, #0x1f4
bl func_ov61_021698fc
ldr r0, [r4, #0x1d4]
mvn r1, #0
cmp r0, r1
beq _0216b5b4
mov r1, #2
bl func_ov61_02166aac
ldr r0, [r4, #0x1d4]
bl func_ov61_02166a98
mvn r0, #0
str r0, [r4, #0x1d4]
_0216b5b4:
ldr r0, [r4, #0x204]
mvn r1, #0
cmp r0, r1
beq _0216b5dc
mov r1, #2
bl func_ov61_02166aac
ldr r0, [r4, #0x204]
bl func_ov61_02166a98
mvn r0, #0
str r0, [r4, #0x204]
_0216b5dc:
mov r0, #4
str r0, [r4, #0x1d8]
mov r0, #0
str r0, [r4, #0x19c]
str r0, [r4, #0x1a0]
_0216b5f0:
ldr r0, [r4, #0x1dc]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0x1dc]
ldr r0, [r4, #0x1ec]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0x1ec]
ldr r0, [r4, #0x1f4]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0x1f4]
ldr r0, [r4, #0x440]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0x440]
ldr r0, [r4, #0x450]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0x450]
ldr r1, [r4, #0x424]
cmp r1, #0
beq _0216b660
_0216b64c:
mov r0, r5
bl func_ov61_0216d950
ldr r1, [r4, #0x424]
cmp r1, #0
bne _0216b64c
_0216b660:
mov r0, #0
str r0, [r4, #0x424]
ldr r6, [r4, #0x434]
cmp r6, #0
beq _0216b68c
_0216b674:
mov r1, r6
ldr r6, [r6, #0x3c]
mov r0, r5
bl func_ov61_0216e474
cmp r6, #0
bne _0216b674
_0216b68c:
mov r0, #0
str r0, [r4, #0x434]
ldr r6, _0216b6c8 ; =func_ov61_0216b440
mov r4, r0
_0216b69c:
mov r0, r5
mov r1, r6
mov r2, r4
bl func_ov61_0216f19c
cmp r0, #0
beq _0216b69c
add sp, sp, #0xc
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0216b504
_0216b6bc: .word data_ov61_0217cf34
_0216b6c0: .word data_ov61_0217cdf0
_0216b6c4: .word data_ov61_0217cf48
_0216b6c8: .word func_ov61_0216b440
.global func_ov61_0216b6cc
arm_func_start func_ov61_0216b6cc
func_ov61_0216b6cc: ; 0x0216b6cc
stmdb sp!, {r3, r4, r5, lr}
cmp r0, #0
cmpeq r1, #0
cmpeq r2, #0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, pc}
cmp r0, #0
cmpge r1, #0
cmpge r2, #0
movlt r0, #0
ldmltia sp!, {r3, r4, r5, pc}
cmp r1, #0xc
addls pc, pc, r1, lsl #2
b _0216b7d4
_0216b704: ; jump table
b _0216b738 ; case 0
b _0216b748 ; case 1
b _0216b768 ; case 2
b _0216b748 ; case 3
b _0216b758 ; case 4
b _0216b748 ; case 5
b _0216b758 ; case 6
b _0216b748 ; case 7
b _0216b748 ; case 8
b _0216b758 ; case 9
b _0216b748 ; case 10
b _0216b758 ; case 11
b _0216b748 ; case 12
_0216b738:
cmp r0, #0
beq _0216b7dc
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_0216b748:
cmp r0, #0x1f
ble _0216b7dc
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_0216b758:
cmp r0, #0x1e
ble _0216b7dc
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_0216b768:
mov r4, r2, lsr #0x1f
rsb r3, r4, r2, lsl #30
adds r3, r4, r3, ror #30
bne _0216b794
ldr ip, _0216b824 ; =0x51eb851f
mov lr, #0x64
smull r3, r5, ip, r2
add r5, r4, r5, asr #5
smull r3, ip, lr, r5
subs r5, r2, r3
bne _0216b7b4
_0216b794:
ldr lr, _0216b824 ; =0x51eb851f
mov r3, r2, lsr #0x1f
smull ip, r4, lr, r2
add r4, r3, r4, asr #7
mov lr, #0x190
smull r3, ip, lr, r4
subs r4, r2, r3
bne _0216b7c4
_0216b7b4:
cmp r0, #0x1d
ble _0216b7dc
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_0216b7c4:
cmp r0, #0x1c
ble _0216b7dc
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_0216b7d4:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_0216b7dc:
ldr ip, _0216b828 ; =0x0000076c
cmp r2, ip
movlt r0, #0
ldmltia sp!, {r3, r4, r5, pc}
add r3, ip, #0xb3
cmp r2, r3
movgt r0, #0
ldmgtia sp!, {r3, r4, r5, pc}
bne _0216b81c
cmp r1, #6
movgt r0, #0
ldmgtia sp!, {r3, r4, r5, pc}
bne _0216b81c
cmp r0, #6
movgt r0, #0
ldmgtia sp!, {r3, r4, r5, pc}
_0216b81c:
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0216b6cc
_0216b824: .word 0x51eb851f
_0216b828: .word 0x0000076c
.global func_ov61_0216b82c
arm_func_start func_ov61_0216b82c
func_ov61_0216b82c: ; 0x0216b82c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov lr, r1, asr #0x18
mov ip, r1, asr #0x10
mov r1, r1, lsl #0x10
and r5, ip, #0xff
and r4, lr, #0xff
mov r9, r0
mov r6, r1, lsr #0x10
mov r8, r2
mov r0, r4
mov r1, r5
mov r2, r6
mov r7, r3
bl func_ov61_0216b6cc
cmp r0, #0
bne _0216b880
ldr r0, _0216b8c4 ; =data_ov61_0217cf8c
ldr r1, _0216b8c8 ; =data_ov61_0217cf70
ldr r2, _0216b8cc ; =data_ov61_0217cf4c
mov r3, #0xb7
bl func_02042f80
_0216b880:
mov r0, r4
mov r1, r5
mov r2, r6
bl func_ov61_0216b6cc
cmp r0, #0
bne _0216b8ac
ldr r1, _0216b8d0 ; =data_ov61_0217cf7c
mov r0, r9
bl func_ov61_02171b10
mov r0, #2
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_0216b8ac:
str r4, [r8]
ldr r0, [sp, #0x20]
str r5, [r7]
str r6, [r0]
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_0216b82c
_0216b8c4: .word data_ov61_0217cf8c
_0216b8c8: .word data_ov61_0217cf70
_0216b8cc: .word data_ov61_0217cf4c
_0216b8d0: .word data_ov61_0217cf7c
.global func_ov61_0216b8d4
arm_func_start func_ov61_0216b8d4
func_ov61_0216b8d4: ; 0x0216b8d4
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
ldr r1, [r5]
cmp r1, #0
moveq r0, #0
streqb r0, [r4, #8]
beq _0216b900
add r0, r4, #8
mov r2, #0x1f
bl func_ov61_021715c8
_0216b900:
ldr r1, [r5, #4]
cmp r1, #0
moveq r0, #0
streqb r0, [r4, #0x27]
beq _0216b920
add r0, r4, #0x27
mov r2, #0x15
bl func_ov61_021715c8
_0216b920:
ldr r1, [r5, #8]
cmp r1, #0
moveq r0, #0
streqb r0, [r4, #0x3c]
beq _0216b940
add r0, r4, #0x3c
mov r2, #0x33
bl func_ov61_021715c8
_0216b940:
ldr r1, [r5, #0xc]
cmp r1, #0
moveq r0, #0
streqb r0, [r4, #0x6f]
beq _0216b960
add r0, r4, #0x6f
mov r2, #0x1f
bl func_ov61_021715c8
_0216b960:
ldr r1, [r5, #0x10]
cmp r1, #0
moveq r0, #0
streqb r0, [r4, #0x8e]
beq _0216b980
add r0, r4, #0x8e
mov r2, #0x1f
bl func_ov61_021715c8
_0216b980:
ldr r1, [r5, #0x14]
cmp r1, #0
moveq r0, #0
streqb r0, [r4, #0xad]
beq _0216b9a0
add r0, r4, #0xad
mov r2, #0x4c
bl func_ov61_021715c8
_0216b9a0:
ldr r3, [r5, #0x18]
add r0, r4, #0x100
add r1, r5, #0x1c
mov r2, #0xb
str r3, [r4, #0xfc]
bl func_ov61_021715c8
add r0, r4, #0xb
add r0, r0, #0x100
add r1, r5, #0x27
mov r2, #3
bl func_ov61_021715c8
ldr r0, [r5, #0x2c]
adds r1, r5, #0x34
str r0, [r4, #0x110]
ldr r0, [r5, #0x30]
str r0, [r4, #0x114]
moveq r0, #0
streqb r0, [r4, #0x118]
beq _0216b9f8
add r0, r4, #0x118
mov r2, #0x80
bl func_ov61_021715c8
_0216b9f8:
ldr r0, [r5, #0xb4]
str r0, [r4, #0x198]
ldr r0, [r5, #0xb8]
str r0, [r4, #0x19c]
ldr r0, [r5, #0xbc]
str r0, [r4, #0x1a0]
ldr r0, [r5, #0xc0]
str r0, [r4, #0x1a4]
ldr r0, [r5, #0xc4]
str r0, [r4, #0x1a8]
ldr r1, [r5, #0xc8]
cmp r1, #0
moveq r0, #0
streqb r0, [r4, #0x1ac]
beq _0216ba40
add r0, r4, #0x1ac
mov r2, #0x33
bl func_ov61_021715c8
_0216ba40:
ldr r0, [r5, #0x18]
str r0, [r4, #0xfc]
ldr r0, [r5, #0x2c]
str r0, [r4, #0x110]
ldr r0, [r5, #0x30]
str r0, [r4, #0x114]
ldr r0, [r5, #0xb4]
str r0, [r4, #0x198]
ldr r0, [r5, #0xb8]
str r0, [r4, #0x19c]
ldr r0, [r5, #0xbc]
str r0, [r4, #0x1a0]
ldr r0, [r5, #0xc0]
str r0, [r4, #0x1a4]
ldr r0, [r5, #0xc4]
str r0, [r4, #0x1a8]
ldr r0, [r5, #0xcc]
str r0, [r4, #0x1e0]
ldr r0, [r5, #0xd0]
str r0, [r4, #0x1e4]
ldr r0, [r5, #0xd4]
str r0, [r4, #0x1e8]
ldr r0, [r5, #0xd8]
str r0, [r4, #0x1ec]
ldr r0, [r5, #0xdc]
str r0, [r4, #0x1f0]
ldr r0, [r5, #0xe0]
str r0, [r4, #0x1f4]
ldr r0, [r5, #0xe4]
str r0, [r4, #0x1f8]
ldr r0, [r5, #0xe8]
str r0, [r4, #0x1fc]
ldr r0, [r5, #0xec]
str r0, [r4, #0x200]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0216b8d4
.global func_ov61_0216bacc
arm_func_start func_ov61_0216bacc
func_ov61_0216bacc: ; 0x0216bacc
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x268
mov r4, r2
mov r10, r0
mov r11, r1
mov r1, r4
mov r2, #1
ldr r6, [r10]
bl func_ov61_02171648
cmp r0, #0
addne sp, sp, #0x268
movne r0, #4
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, _0216c254 ; =data_ov61_0217cfa4
mov r0, r4
mov r2, #4
bl strncmp
cmp r0, #0
beq _0216bb44
ldr r2, _0216c258 ; =data_ov61_0217cfac
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x268
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216bb44:
ldr r1, _0216c25c ; =data_ov61_0217cfdc
add r2, sp, #0xec
mov r0, r4
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
bne _0216bb8c
ldr r2, _0216c258 ; =data_ov61_0217cfac
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x268
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216bb8c:
add r0, sp, #0xec
bl func_0204902c
mov r9, r0
cmp r9, #0
bgt _0216bbb4
ldr r0, _0216c260 ; =data_ov61_0217cfe8
ldr r1, _0216c264 ; =data_ov61_0217cf70
ldr r2, _0216c268 ; =data_ov61_0217cf5c
ldr r3, _0216c26c ; =0x0000015a
bl func_02042f80
_0216bbb4:
add r2, sp, #0x10
mov r0, r10
mov r1, r9
bl func_ov61_0216f050
mov r0, #0
add r7, sp, #0x178
mov r1, r0
mov r2, r0
mov r3, r0
mov r5, #7
_0216bbdc:
stmia r7!, {r0, r1, r2, r3}
stmia r7!, {r0, r1, r2, r3}
subs r5, r5, #1
bne _0216bbdc
stmia r7!, {r0, r1, r2, r3}
add r3, sp, #0xb8
add r1, sp, #0x66
add r2, sp, #0xcd
add r5, sp, #0x85
add r0, sp, #0x47
str r3, [sp, #0x17c]
add r3, sp, #0x12c
str r1, [sp, #0x184]
str r5, [sp, #0x180]
add r5, sp, #0x14
str r0, [sp, #0x188]
str r3, [sp, #0x18c]
ldr r1, _0216c270 ; =data_ov61_0217cff8
mov r0, r4
mov r3, #0x1f
str r2, [sp, #0x178]
str r5, [sp, #0x240]
bl func_ov61_02171720
cmp r0, #0
ldreq r0, [sp, #0x178]
moveq r1, #0
streqb r1, [r0]
ldr r2, [sp, #0x17c]
ldr r1, _0216c274 ; =data_ov61_0217d000
mov r0, r4
mov r3, #0x15
bl func_ov61_02171720
cmp r0, #0
ldreq r0, [sp, #0x17c]
moveq r1, #0
streqb r1, [r0]
ldr r2, [sp, #0x180]
ldr r1, _0216c278 ; =data_ov61_0217d010
mov r0, r4
mov r3, #0x33
bl func_ov61_02171720
cmp r0, #0
ldreq r0, [sp, #0x180]
moveq r1, #0
streqb r1, [r0]
ldr r2, [sp, #0x184]
ldr r1, _0216c27c ; =data_ov61_0217d018
mov r0, r4
mov r3, #0x1f
bl func_ov61_02171720
cmp r0, #0
ldreq r0, [sp, #0x184]
moveq r1, #0
streqb r1, [r0]
ldr r2, [sp, #0x188]
ldr r1, _0216c280 ; =data_ov61_0217d024
mov r0, r4
mov r3, #0x1f
bl func_ov61_02171720
cmp r0, #0
ldreq r0, [sp, #0x188]
moveq r1, #0
streqb r1, [r0]
ldr r1, _0216c284 ; =data_ov61_0217d030
add r2, sp, #0xec
mov r0, r4
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
mvneq r0, #0
streq r0, [sp, #0x190]
beq _0216bd08
add r0, sp, #0xec
bl func_0204902c
str r0, [sp, #0x190]
_0216bd08:
ldr r2, [sp, #0x18c]
ldr r1, _0216c288 ; =data_ov61_0217d03c
mov r0, r4
mov r3, #0x4c
bl func_ov61_02171720
cmp r0, #0
ldreq r0, [sp, #0x18c]
moveq r1, #0
streqb r1, [r0]
ldr r1, _0216c28c ; =data_ov61_0217d048
add r2, sp, #0x194
mov r0, r4
mov r3, #0xb
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
add r2, sp, #0x100
streqb r0, [sp, #0x194]
ldr r1, _0216c290 ; =data_ov61_0217d054
add r2, r2, #0x9f
mov r0, r4
mov r3, #3
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
streqb r0, [sp, #0x19f]
ldr r1, _0216c294 ; =data_ov61_0217d064
add r2, sp, #0xec
mov r0, r4
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
streq r0, [sp, #0x1a4]
beq _0216bda4
add r0, sp, #0xec
bl func_02048688
bl func_02000f78
str r0, [sp, #0x1a4]
_0216bda4:
ldr r1, _0216c298 ; =data_ov61_0217d06c
add r2, sp, #0xec
mov r0, r4
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
streq r0, [sp, #0x1a8]
beq _0216bdd8
add r0, sp, #0xec
bl func_02048688
bl func_02000f78
str r0, [sp, #0x1a8]
_0216bdd8:
ldr r1, _0216c29c ; =data_ov61_0217d074
add r2, sp, #0x1ac
mov r0, r4
mov r3, #0x80
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
streqb r0, [sp, #0x1ac]
ldr r1, _0216c2a0 ; =data_ov61_0217d07c
add r2, sp, #0xec
mov r0, r4
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
bne _0216be28
mov r0, #0
str r0, [sp, #0x22c]
str r0, [sp, #0x230]
str r0, [sp, #0x234]
b _0216be58
_0216be28:
add r0, sp, #0xec
bl func_0204902c
add r5, sp, #0x234
mov r1, r0
add r2, sp, #0x22c
add r3, sp, #0x230
mov r0, r10
str r5, [sp]
bl func_ov61_0216b82c
cmp r0, #0
addne sp, sp, #0x268
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216be58:
ldr r1, _0216c2a4 ; =data_ov61_0217d088
add r2, sp, #0xec
mov r0, r4
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
ldreq r0, _0216c2a8 ; =0x00000502
streq r0, [sp, #0x238]
beq _0216bea4
ldrsb r0, [sp, #0xec]
cmp r0, #0x30
moveq r0, #0x500
streq r0, [sp, #0x238]
beq _0216bea4
cmp r0, #0x31
ldreq r0, _0216c2ac ; =0x00000501
streq r0, [sp, #0x238]
ldrne r0, _0216c2a8 ; =0x00000502
strne r0, [sp, #0x238]
_0216bea4:
ldr r1, _0216c2b0 ; =data_ov61_0217d090
add r2, sp, #0xec
mov r0, r4
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
mvneq r0, #0
streq r0, [sp, #0x23c]
beq _0216bed4
add r0, sp, #0xec
bl func_0204902c
str r0, [sp, #0x23c]
_0216bed4:
ldr r2, [sp, #0x240]
ldr r1, _0216c2b4 ; =data_ov61_0217d098
mov r0, r4
mov r3, #0x33
bl func_ov61_02171720
cmp r0, #0
ldreq r0, [sp, #0x240]
moveq r1, #0
streqb r1, [r0]
ldr r1, _0216c2b8 ; =data_ov61_0217d0a0
add r2, sp, #0xec
mov r0, r4
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
streq r0, [sp, #0x244]
beq _0216bf28
add r0, sp, #0xec
bl func_0204902c
str r0, [sp, #0x244]
_0216bf28:
ldr r1, _0216c2bc ; =data_ov61_0217d0a8
add r2, sp, #0xec
mov r0, r4
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
streq r0, [sp, #0x248]
beq _0216bf58
add r0, sp, #0xec
bl func_0204902c
str r0, [sp, #0x248]
_0216bf58:
ldr r1, _0216c2c0 ; =data_ov61_0217d0b0
add r2, sp, #0xec
mov r0, r4
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
streq r0, [sp, #0x24c]
beq _0216bf88
add r0, sp, #0xec
bl func_0204902c
str r0, [sp, #0x24c]
_0216bf88:
ldr r1, _0216c2c4 ; =data_ov61_0217d0b8
add r2, sp, #0xec
mov r0, r4
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
streq r0, [sp, #0x250]
beq _0216bfb8
add r0, sp, #0xec
bl func_0204902c
str r0, [sp, #0x250]
_0216bfb8:
ldr r1, _0216c2c8 ; =data_ov61_0217d0c0
add r2, sp, #0xec
mov r0, r4
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
streq r0, [sp, #0x254]
beq _0216bfe8
add r0, sp, #0xec
bl func_0204902c
str r0, [sp, #0x254]
_0216bfe8:
ldr r1, _0216c2cc ; =data_ov61_0217d0c8
add r2, sp, #0xec
mov r0, r4
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
streq r0, [sp, #0x258]
beq _0216c018
add r0, sp, #0xec
bl func_0204902c
str r0, [sp, #0x258]
_0216c018:
ldr r1, _0216c2d0 ; =data_ov61_0217d0d0
add r2, sp, #0xec
mov r0, r4
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
streq r0, [sp, #0x25c]
beq _0216c048
add r0, sp, #0xec
bl func_0204902c
str r0, [sp, #0x25c]
_0216c048:
ldr r1, _0216c2d4 ; =data_ov61_0217d0d8
add r2, sp, #0xec
mov r0, r4
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
streq r0, [sp, #0x260]
beq _0216c078
add r0, sp, #0xec
bl func_0204902c
str r0, [sp, #0x260]
_0216c078:
ldr r1, _0216c2d8 ; =data_ov61_0217d0e0
add r2, sp, #0xec
mov r0, r4
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
streq r0, [sp, #0x264]
beq _0216c0a8
add r0, sp, #0xec
bl func_0204902c
str r0, [sp, #0x264]
_0216c0a8:
ldr r1, _0216c2dc ; =data_ov61_0217d0e8
add r2, sp, #0xec
mov r0, r4
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
bne _0216c0f0
ldr r2, _0216c258 ; =data_ov61_0217cfac
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x268
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216c0f0:
ldr r7, [r6, #0x434]
ldr r8, [r6, #0x100]
cmp r7, #0
beq _0216c14c
mov r5, #0x66
mov r4, #1
_0216c108:
ldr r0, [r7, #0xc]
cmp r0, r9
ldreq r0, [r7]
cmpeq r0, #0x65
bne _0216c140
ldr r0, [sp, #0x10]
cmp r0, #0
bne _0216c138
mov r0, r10
mov r1, r9
bl func_ov61_0216ef6c
str r0, [sp, #0x10]
_0216c138:
mov r8, r4
str r5, [r7]
_0216c140:
ldr r7, [r7, #0x3c]
cmp r7, #0
bne _0216c108
_0216c14c:
ldr r0, [sp, #0x10]
cmp r0, #0
bne _0216c174
ldr r0, [r6, #0x100]
cmp r0, #0
beq _0216c174
mov r0, r10
mov r1, r9
bl func_ov61_0216ef6c
str r0, [sp, #0x10]
_0216c174:
cmp r8, #0
beq _0216c1a4
ldr r0, [sp, #0x10]
ldr r0, [r0, #0x18]
bl func_ov61_0213e13c
ldr r1, [sp, #0x10]
mov r2, #0
add r0, sp, #0xec
str r2, [r1, #0x18]
bl func_ov61_02166654
ldr r1, [sp, #0x10]
str r0, [r1, #0x18]
_0216c1a4:
ldr r0, [r6, #0x100]
cmp r0, #0
beq _0216c1c0
ldr r1, [sp, #0x10]
add r2, sp, #0x178
mov r0, r10
bl func_ov61_0216d30c
_0216c1c0:
ldr r1, [r11, #0xc]
ldr r0, [r11, #0x10]
str r1, [sp, #8]
str r0, [sp, #0xc]
cmp r1, #0
beq _0216c23c
mov r0, #0x204
bl func_ov61_0213e10c
movs r4, r0
bne _0216c200
ldr r1, _0216c2e0 ; =data_ov61_0217d0f0
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x268
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216c200:
add r0, sp, #0x178
mov r1, r4
bl func_ov61_0216b8d4
mov r2, #0
stmia r4, {r2, r9}
str r11, [sp]
add r1, sp, #8
str r2, [sp, #4]
mov r0, r10
mov r3, r4
ldmia r1, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
addne sp, sp, #0x268
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216c23c:
mov r0, r10
mov r1, r11
bl func_ov61_0216d950
mov r0, #0
add sp, sp, #0x268
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0216bacc
_0216c254: .word data_ov61_0217cfa4
_0216c258: .word data_ov61_0217cfac
_0216c25c: .word data_ov61_0217cfdc
_0216c260: .word data_ov61_0217cfe8
_0216c264: .word data_ov61_0217cf70
_0216c268: .word data_ov61_0217cf5c
_0216c26c: .word 0x0000015a
_0216c270: .word data_ov61_0217cff8
_0216c274: .word data_ov61_0217d000
_0216c278: .word data_ov61_0217d010
_0216c27c: .word data_ov61_0217d018
_0216c280: .word data_ov61_0217d024
_0216c284: .word data_ov61_0217d030
_0216c288: .word data_ov61_0217d03c
_0216c28c: .word data_ov61_0217d048
_0216c290: .word data_ov61_0217d054
_0216c294: .word data_ov61_0217d064
_0216c298: .word data_ov61_0217d06c
_0216c29c: .word data_ov61_0217d074
_0216c2a0: .word data_ov61_0217d07c
_0216c2a4: .word data_ov61_0217d088
_0216c2a8: .word 0x00000502
_0216c2ac: .word 0x00000501
_0216c2b0: .word data_ov61_0217d090
_0216c2b4: .word data_ov61_0217d098
_0216c2b8: .word data_ov61_0217d0a0
_0216c2bc: .word data_ov61_0217d0a8
_0216c2c0: .word data_ov61_0217d0b0
_0216c2c4: .word data_ov61_0217d0b8
_0216c2c8: .word data_ov61_0217d0c0
_0216c2cc: .word data_ov61_0217d0c8
_0216c2d0: .word data_ov61_0217d0d0
_0216c2d4: .word data_ov61_0217d0d8
_0216c2d8: .word data_ov61_0217d0e0
_0216c2dc: .word data_ov61_0217d0e8
_0216c2e0: .word data_ov61_0217d0f0
.global func_ov61_0216c2e4
arm_func_start func_ov61_0216c2e4
func_ov61_0216c2e4: ; 0x0216c2e4
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
ldr r4, [r6]
mov r5, r1
ldr r2, [r4, #0x448]
cmp r2, #0
ble _0216c340
ldr r2, _0216c39c ; =data_ov61_0217d100
bl func_ov61_0216936c
ldr r2, [r4, #0x198]
mov r0, r6
mov r1, r5
bl func_ov61_0216939c
ldr r2, [r4, #0x440]
mov r0, r6
mov r1, r5
bl func_ov61_0216936c
ldr r2, _0216c3a0 ; =data_ov61_0217d118
mov r0, r6
mov r1, r5
bl func_ov61_0216936c
mov r0, #0
str r0, [r4, #0x448]
_0216c340:
ldr r0, [r4, #0x458]
cmp r0, #0
ble _0216c394
ldr r2, _0216c3a4 ; =data_ov61_0217d120
mov r0, r6
mov r1, r5
bl func_ov61_0216936c
ldr r2, [r4, #0x198]
mov r0, r6
mov r1, r5
bl func_ov61_0216939c
ldr r2, [r4, #0x450]
mov r0, r6
mov r1, r5
bl func_ov61_0216936c
ldr r2, _0216c3a0 ; =data_ov61_0217d118
mov r0, r6
mov r1, r5
bl func_ov61_0216936c
mov r0, #0
str r0, [r4, #0x458]
_0216c394:
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0216c2e4
_0216c39c: .word data_ov61_0217d100
_0216c3a0: .word data_ov61_0217d118
_0216c3a4: .word data_ov61_0217d120
.global func_ov61_0216c3a8
arm_func_start func_ov61_0216c3a8
func_ov61_0216c3a8: ; 0x0216c3a8
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
ldr r4, [r6]
mov r5, r2
mov r2, r1
add r1, r4, #0x440
bl func_ov61_0216936c
cmp r0, #0
ldmneia sp!, {r4, r5, r6, pc}
mov r0, r6
mov r2, r5
add r1, r4, #0x440
bl func_ov61_0216936c
cmp r0, #0
moveq r0, #0
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0216c3a8
.global func_ov61_0216c3e8
arm_func_start func_ov61_0216c3e8
func_ov61_0216c3e8: ; 0x0216c3e8
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
ldr r4, [r6]
mov r5, r2
mov r2, r1
add r1, r4, #0x450
bl func_ov61_0216936c
cmp r0, #0
ldmneia sp!, {r4, r5, r6, pc}
mov r0, r6
mov r2, r5
add r1, r4, #0x450
bl func_ov61_0216936c
cmp r0, #0
moveq r0, #0
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0216c3e8
.global func_ov61_0216c428
arm_func_start func_ov61_0216c428
func_ov61_0216c428: ; 0x0216c428
stmdb sp!, {r4, lr}
sub sp, sp, #0x10
sub r1, r1, #6
sub r1, r1, #0x700
mov r4, r0
cmp r1, #0x18
addls pc, pc, r1, lsl #2
b _0216c86c
_0216c448: ; jump table
b _0216c580 ; case 0
b _0216c86c ; case 1
b _0216c4ac ; case 2
b _0216c86c ; case 3
b _0216c86c ; case 4
b _0216c4f4 ; case 5
b _0216c5ac ; case 6
b _0216c5d8 ; case 7
b _0216c604 ; case 8
b _0216c86c ; case 9
b _0216c63c ; case 10
b _0216c86c ; case 11
b _0216c674 ; case 12
b _0216c6ac ; case 13
b _0216c6d8 ; case 14
b _0216c704 ; case 15
b _0216c86c ; case 16
b _0216c86c ; case 17
b _0216c738 ; case 18
b _0216c764 ; case 19
b _0216c790 ; case 20
b _0216c7bc ; case 21
b _0216c7e8 ; case 22
b _0216c814 ; case 23
b _0216c840 ; case 24
_0216c4ac:
cmp r2, #0
bge _0216c4c8
ldr r1, _0216c890 ; =data_ov61_0217d134
bl func_ov61_02171b10
add sp, sp, #0x10
mov r0, #2
ldmia sp!, {r4, pc}
_0216c4c8:
ldr r1, _0216c894 ; =data_ov61_0217d148
add r0, sp, #0
bl func_020459b8
ldr r1, _0216c898 ; =data_ov61_0217d048
add r2, sp, #0
mov r0, r4
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c4f4:
cmp r2, #0x500
beq _0216c518
ldr r1, _0216c89c ; =0x00000501
cmp r2, r1
beq _0216c534
add r1, r1, #1
cmp r2, r1
beq _0216c550
b _0216c56c
_0216c518:
ldr r1, _0216c8a0 ; =data_ov61_0217d088
ldr r2, _0216c8a4 ; =data_ov61_0217d14c
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c534:
ldr r1, _0216c8a0 ; =data_ov61_0217d088
ldr r2, _0216c8a8 ; =data_ov61_0217d150
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c550:
ldr r1, _0216c8a0 ; =data_ov61_0217d088
ldr r2, _0216c8ac ; =data_ov61_0217d154
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c56c:
ldr r1, _0216c8b0 ; =data_ov61_0217d158
bl func_ov61_02171b10
add sp, sp, #0x10
mov r0, #2
ldmia sp!, {r4, pc}
_0216c580:
ldr r1, _0216c894 ; =data_ov61_0217d148
add r0, sp, #0
bl func_020459b8
ldr r1, _0216c8b4 ; =data_ov61_0217d030
add r2, sp, #0
mov r0, r4
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c5ac:
ldr r1, _0216c894 ; =data_ov61_0217d148
add r0, sp, #0
bl func_020459b8
ldr r1, _0216c8b8 ; =data_ov61_0217d168
add r2, sp, #0
mov r0, r4
bl func_ov61_0216c3e8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c5d8:
ldr r1, _0216c894 ; =data_ov61_0217d148
add r0, sp, #0
bl func_020459b8
ldr r1, _0216c8bc ; =data_ov61_0217d178
add r2, sp, #0
mov r0, r4
bl func_ov61_0216c3e8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c604:
mov r0, r2, asr #0x3
add r2, r2, r0, lsr #28
ldr r1, _0216c894 ; =data_ov61_0217d148
add r0, sp, #0
mov r2, r2, asr #0x4
bl func_020459b8
ldr r1, _0216c8c0 ; =data_ov61_0217d184
add r2, sp, #0
mov r0, r4
bl func_ov61_0216c3e8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c63c:
mov r0, r2, asr #0x1
add r2, r2, r0, lsr #30
ldr r1, _0216c894 ; =data_ov61_0217d148
add r0, sp, #0
mov r2, r2, asr #0x2
bl func_020459b8
ldr r1, _0216c8c4 ; =data_ov61_0217d190
add r2, sp, #0
mov r0, r4
bl func_ov61_0216c3e8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c674:
mov r0, r2, asr #0x1
add r2, r2, r0, lsr #30
ldr r1, _0216c894 ; =data_ov61_0217d148
add r0, sp, #0
mov r2, r2, asr #0x2
bl func_020459b8
ldr r1, _0216c8c8 ; =data_ov61_0217d1a0
add r2, sp, #0
mov r0, r4
bl func_ov61_0216c3e8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c6ac:
ldr r1, _0216c894 ; =data_ov61_0217d148
add r0, sp, #0
bl func_020459b8
ldr r1, _0216c8cc ; =data_ov61_0217d1b0
add r2, sp, #0
mov r0, r4
bl func_ov61_0216c3e8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c6d8:
ldr r1, _0216c894 ; =data_ov61_0217d148
add r0, sp, #0
bl func_020459b8
ldr r1, _0216c8d0 ; =data_ov61_0217d1c0
add r2, sp, #0
mov r0, r4
bl func_ov61_0216c3e8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c704:
ldr r1, _0216c894 ; =data_ov61_0217d148
cmp r2, #0
movne r2, #1
add r0, sp, #0
bl func_020459b8
ldr r1, _0216c8d4 ; =data_ov61_0217d1d4
add r2, sp, #0
mov r0, r4
bl func_ov61_0216c3e8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c738:
ldr r1, _0216c894 ; =data_ov61_0217d148
add r0, sp, #0
bl func_020459b8
ldr r1, _0216c8d8 ; =data_ov61_0217d0a0
add r2, sp, #0
mov r0, r4
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c764:
ldr r1, _0216c894 ; =data_ov61_0217d148
add r0, sp, #0
bl func_020459b8
ldr r1, _0216c8dc ; =data_ov61_0217d0a8
add r2, sp, #0
mov r0, r4
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c790:
ldr r1, _0216c894 ; =data_ov61_0217d148
add r0, sp, #0
bl func_020459b8
ldr r1, _0216c8e0 ; =data_ov61_0217d0b0
add r2, sp, #0
mov r0, r4
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c7bc:
ldr r1, _0216c894 ; =data_ov61_0217d148
add r0, sp, #0
bl func_020459b8
ldr r1, _0216c8e4 ; =data_ov61_0217d0b8
add r2, sp, #0
mov r0, r4
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c7e8:
ldr r1, _0216c894 ; =data_ov61_0217d148
add r0, sp, #0
bl func_020459b8
ldr r1, _0216c8e8 ; =data_ov61_0217d0c0
add r2, sp, #0
mov r0, r4
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c814:
ldr r1, _0216c894 ; =data_ov61_0217d148
add r0, sp, #0
bl func_020459b8
ldr r1, _0216c8ec ; =data_ov61_0217d0c8
add r2, sp, #0
mov r0, r4
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c840:
ldr r1, _0216c894 ; =data_ov61_0217d148
add r0, sp, #0
bl func_020459b8
ldr r1, _0216c8f0 ; =data_ov61_0217d0d0
add r2, sp, #0
mov r0, r4
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216c884
add sp, sp, #0x10
ldmia sp!, {r4, pc}
_0216c86c:
ldr r1, _0216c8f4 ; =data_ov61_0217d1e4
mov r0, r4
bl func_ov61_02171b10
add sp, sp, #0x10
mov r0, #2
ldmia sp!, {r4, pc}
_0216c884:
mov r0, #0
add sp, sp, #0x10
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0216c428
_0216c890: .word data_ov61_0217d134
_0216c894: .word data_ov61_0217d148
_0216c898: .word data_ov61_0217d048
_0216c89c: .word 0x00000501
_0216c8a0: .word data_ov61_0217d088
_0216c8a4: .word data_ov61_0217d14c
_0216c8a8: .word data_ov61_0217d150
_0216c8ac: .word data_ov61_0217d154
_0216c8b0: .word data_ov61_0217d158
_0216c8b4: .word data_ov61_0217d030
_0216c8b8: .word data_ov61_0217d168
_0216c8bc: .word data_ov61_0217d178
_0216c8c0: .word data_ov61_0217d184
_0216c8c4: .word data_ov61_0217d190
_0216c8c8: .word data_ov61_0217d1a0
_0216c8cc: .word data_ov61_0217d1b0
_0216c8d0: .word data_ov61_0217d1c0
_0216c8d4: .word data_ov61_0217d1d4
_0216c8d8: .word data_ov61_0217d0a0
_0216c8dc: .word data_ov61_0217d0a8
_0216c8e0: .word data_ov61_0217d0b0
_0216c8e4: .word data_ov61_0217d0b8
_0216c8e8: .word data_ov61_0217d0c0
_0216c8ec: .word data_ov61_0217d0c8
_0216c8f0: .word data_ov61_0217d0d0
_0216c8f4: .word data_ov61_0217d1e4
.global func_ov61_0216c8f8
arm_func_start func_ov61_0216c8f8
func_ov61_0216c8f8: ; 0x0216c8f8
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #0x100
mov r6, r0
movs r5, r2
ldr r4, [r6]
bne _0216c924
ldr r1, _0216d048 ; =data_ov61_0217d1f4
bl func_ov61_02171b10
add sp, sp, #0x100
mov r0, #2
ldmia sp!, {r4, r5, r6, pc}
_0216c924:
sub r1, r1, #0x700
cmp r1, #0x1e
addls pc, pc, r1, lsl #2
b _0216d024
_0216c934: ; jump table
b _0216c9b0 ; case 0
b _0216ca10 ; case 1
b _0216ca74 ; case 2
b _0216cadc ; case 3
b _0216cb40 ; case 4
b _0216cb70 ; case 5
b _0216ccf4 ; case 6
b _0216cba0 ; case 7
b _0216cbd0 ; case 8
b _0216cc00 ; case 9
b _0216d024 ; case 10
b _0216cc58 ; case 11
b _0216d024 ; case 12
b _0216cd24 ; case 13
b _0216cd4c ; case 14
b _0216cd74 ; case 15
b _0216cda4 ; case 16
b _0216cdcc ; case 17
b _0216cdfc ; case 18
b _0216d024 ; case 19
b _0216ce24 ; case 20
b _0216ce4c ; case 21
b _0216ce74 ; case 22
b _0216cea4 ; case 23
b _0216ced4 ; case 24
b _0216cf04 ; case 25
b _0216cf34 ; case 26
b _0216cf64 ; case 27
b _0216cf94 ; case 28
b _0216cfc4 ; case 29
b _0216cff4 ; case 30
_0216c9b0:
ldrsb r1, [r5]
cmp r1, #0
bne _0216c9d0
ldr r1, _0216d048 ; =data_ov61_0217d1f4
bl func_ov61_02171b10
add sp, sp, #0x100
mov r0, #2
ldmia sp!, {r4, r5, r6, pc}
_0216c9d0:
add r0, sp, #0
mov r1, r5
mov r2, #0x1f
bl func_ov61_021715c8
add r1, sp, #0
add r0, r4, #0x110
mov r2, #0x1f
bl func_ov61_021715c8
ldr r1, _0216d04c ; =data_ov61_0217cff8
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216ca10:
ldrsb r1, [r5]
cmp r1, #0
bne _0216ca30
ldr r1, _0216d048 ; =data_ov61_0217d1f4
bl func_ov61_02171b10
add sp, sp, #0x100
mov r0, #2
ldmia sp!, {r4, r5, r6, pc}
_0216ca30:
add r0, sp, #0
mov r1, r5
mov r2, #0x15
bl func_ov61_021715c8
add r0, r4, #0x2f
add r1, sp, #0
add r0, r0, #0x100
mov r2, #0x15
bl func_ov61_021715c8
ldr r1, _0216d050 ; =data_ov61_0217d000
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216ca74:
ldrsb r1, [r5]
cmp r1, #0
bne _0216ca94
ldr r1, _0216d048 ; =data_ov61_0217d1f4
bl func_ov61_02171b10
add sp, sp, #0x100
mov r0, #2
ldmia sp!, {r4, r5, r6, pc}
_0216ca94:
add r0, sp, #0
mov r1, r5
mov r2, #0x33
bl func_ov61_021715c8
add r0, sp, #0
bl func_ov61_02166688
add r1, sp, #0
add r0, r4, #0x144
mov r2, #0x33
bl func_ov61_021715c8
ldr r1, _0216d054 ; =data_ov61_0217d010
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3e8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cadc:
ldrsb r1, [r5]
cmp r1, #0
bne _0216cafc
ldr r1, _0216d048 ; =data_ov61_0217d1f4
bl func_ov61_02171b10
add sp, sp, #0x100
mov r0, #2
ldmia sp!, {r4, r5, r6, pc}
_0216cafc:
add r0, sp, #0
mov r1, r5
mov r2, #0x1f
bl func_ov61_021715c8
add r0, r4, #0x77
add r1, sp, #0
add r0, r0, #0x100
mov r2, #0x1f
bl func_ov61_021715c8
ldr r1, _0216d058 ; =data_ov61_0217d204
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3e8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cb40:
add r0, sp, #0
mov r1, r5
mov r2, #0x1f
bl func_ov61_021715c8
ldr r1, _0216d05c ; =data_ov61_0217d018
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cb70:
add r0, sp, #0
mov r1, r5
mov r2, #0x1f
bl func_ov61_021715c8
ldr r1, _0216d060 ; =data_ov61_0217d024
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cba0:
add r0, sp, #0
mov r1, r5
mov r2, #0x4c
bl func_ov61_021715c8
ldr r1, _0216d064 ; =data_ov61_0217d03c
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cbd0:
add r0, sp, #0
mov r1, r5
mov r2, #0xb
bl func_ov61_021715c8
ldr r1, _0216d068 ; =data_ov61_0217d048
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cc00:
mov r0, r5
bl strlen
cmp r0, #2
beq _0216cc28
ldr r1, _0216d06c ; =data_ov61_0217d210
mov r0, r6
bl func_ov61_02171b10
add sp, sp, #0x100
mov r0, #2
ldmia sp!, {r4, r5, r6, pc}
_0216cc28:
add r0, sp, #0
mov r1, r5
mov r2, #3
bl func_ov61_021715c8
ldr r1, _0216d070 ; =data_ov61_0217d054
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cc58:
ldrsb r1, [r5]
cmp r1, #0
blt _0216cc74
cmp r1, #0x80
bge _0216cc74
ldr r0, _0216d074 ; =data_02056d18
ldrb r1, [r0, r1]
_0216cc74:
mov r0, r1, lsl #0x18
mov r0, r0, asr #0x18
cmp r0, #0x4d
add r2, sp, #0
bne _0216cca0
ldr r0, _0216d078 ; =data_ov61_0217d14c
ldrb r1, [r0]
ldrb r0, [r0, #1]
strb r1, [r2]
strb r0, [r2, #1]
b _0216ccd4
_0216cca0:
cmp r0, #0x46
bne _0216ccc0
ldr r0, _0216d07c ; =data_ov61_0217d150
ldrb r1, [r0]
ldrb r0, [r0, #1]
strb r1, [r2]
strb r0, [r2, #1]
b _0216ccd4
_0216ccc0:
ldr r0, _0216d080 ; =data_ov61_0217d154
ldrb r1, [r0]
ldrb r0, [r0, #1]
strb r1, [r2]
strb r0, [r2, #1]
_0216ccd4:
ldr r1, _0216d084 ; =data_ov61_0217d088
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216ccf4:
add r0, sp, #0
mov r1, r5
mov r2, #0x100
bl func_ov61_021715c8
ldr r1, _0216d088 ; =data_ov61_0217d030
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cd24:
mov r0, r5
bl func_0204902c
mov r2, r0
ldr r1, _0216d08c ; =0x0000070d
mov r0, r6
bl func_ov61_0216c428
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cd4c:
mov r0, r5
bl func_0204902c
mov r2, r0
ldr r1, _0216d090 ; =0x0000070e
mov r0, r6
bl func_ov61_0216c428
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cd74:
add r0, sp, #0
mov r1, r5
mov r2, #0x100
bl func_ov61_021715c8
ldr r1, _0216d094 ; =data_ov61_0217d228
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cda4:
mov r0, r5
bl func_0204902c
mov r2, r0
mov r0, r6
mov r1, #0x710
bl func_ov61_0216c428
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cdcc:
add r0, sp, #0
mov r1, r5
mov r2, #0x100
bl func_ov61_021715c8
ldr r1, _0216d098 ; =data_ov61_0217d23c
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cdfc:
mov r0, r5
bl func_0204902c
mov r2, r0
ldr r1, _0216d09c ; =0x00000712
mov r0, r6
bl func_ov61_0216c428
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216ce24:
mov r0, r5
bl func_0204902c
mov r2, r0
ldr r1, _0216d0a0 ; =0x00000714
mov r0, r6
bl func_ov61_0216c428
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216ce4c:
mov r0, r5
bl func_0204902c
mov r2, r0
ldr r1, _0216d0a4 ; =0x00000715
mov r0, r6
bl func_ov61_0216c428
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216ce74:
add r0, sp, #0
mov r1, r5
mov r2, #0x100
bl func_ov61_021715c8
ldr r1, _0216d0a8 ; =data_ov61_0217d250
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cea4:
add r0, sp, #0
mov r1, r5
mov r2, #0x33
bl func_ov61_021715c8
ldr r1, _0216d0ac ; =data_ov61_0217d098
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216ced4:
add r0, sp, #0
mov r1, r5
mov r2, #0x100
bl func_ov61_021715c8
ldr r1, _0216d0b0 ; =data_ov61_0217d0a0
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cf04:
add r0, sp, #0
mov r1, r5
mov r2, #0x100
bl func_ov61_021715c8
ldr r1, _0216d0b4 ; =data_ov61_0217d0a8
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cf34:
add r0, sp, #0
mov r1, r5
mov r2, #0x100
bl func_ov61_021715c8
ldr r1, _0216d0b8 ; =data_ov61_0217d0b0
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cf64:
add r0, sp, #0
mov r1, r5
mov r2, #0x100
bl func_ov61_021715c8
ldr r1, _0216d0bc ; =data_ov61_0217d0b8
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cf94:
add r0, sp, #0
mov r1, r5
mov r2, #0x100
bl func_ov61_021715c8
ldr r1, _0216d0c0 ; =data_ov61_0217d0c0
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cfc4:
add r0, sp, #0
mov r1, r5
mov r2, #0x100
bl func_ov61_021715c8
ldr r1, _0216d0c4 ; =data_ov61_0217d0c8
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216cff4:
add r0, sp, #0
mov r1, r5
mov r2, #0x100
bl func_ov61_021715c8
ldr r1, _0216d0c8 ; =data_ov61_0217d0d0
add r2, sp, #0
mov r0, r6
bl func_ov61_0216c3a8
cmp r0, #0
beq _0216d03c
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
_0216d024:
ldr r1, _0216d0cc ; =data_ov61_0217d1e4
mov r0, r6
bl func_ov61_02171b10
add sp, sp, #0x100
mov r0, #2
ldmia sp!, {r4, r5, r6, pc}
_0216d03c:
mov r0, #0
add sp, sp, #0x100
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0216c8f8
_0216d048: .word data_ov61_0217d1f4
_0216d04c: .word data_ov61_0217cff8
_0216d050: .word data_ov61_0217d000
_0216d054: .word data_ov61_0217d010
_0216d058: .word data_ov61_0217d204
_0216d05c: .word data_ov61_0217d018
_0216d060: .word data_ov61_0217d024
_0216d064: .word data_ov61_0217d03c
_0216d068: .word data_ov61_0217d048
_0216d06c: .word data_ov61_0217d210
_0216d070: .word data_ov61_0217d054
_0216d074: .word data_02056d18
_0216d078: .word data_ov61_0217d14c
_0216d07c: .word data_ov61_0217d150
_0216d080: .word data_ov61_0217d154
_0216d084: .word data_ov61_0217d088
_0216d088: .word data_ov61_0217d030
_0216d08c: .word 0x0000070d
_0216d090: .word 0x0000070e
_0216d094: .word data_ov61_0217d228
_0216d098: .word data_ov61_0217d23c
_0216d09c: .word 0x00000712
_0216d0a0: .word 0x00000714
_0216d0a4: .word 0x00000715
_0216d0a8: .word data_ov61_0217d250
_0216d0ac: .word data_ov61_0217d098
_0216d0b0: .word data_ov61_0217d0a0
_0216d0b4: .word data_ov61_0217d0a8
_0216d0b8: .word data_ov61_0217d0b0
_0216d0bc: .word data_ov61_0217d0b8
_0216d0c0: .word data_ov61_0217d0c0
_0216d0c4: .word data_ov61_0217d0c8
_0216d0c8: .word data_ov61_0217d0d0
_0216d0cc: .word data_ov61_0217d1e4
.global func_ov61_0216d0d0
arm_func_start func_ov61_0216d0d0
func_ov61_0216d0d0: ; 0x0216d0d0
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
ldr r4, [r7]
mov r5, r2
mov r6, r1
ldr r2, _0216d158 ; =data_ov61_0217d25c
add r1, r4, #0x1f4
bl func_ov61_0216936c
ldr r2, [r4, #0x198]
mov r0, r7
add r1, r4, #0x1f4
bl func_ov61_0216939c
ldr r2, _0216d15c ; =data_ov61_0217cfdc
mov r0, r7
add r1, r4, #0x1f4
bl func_ov61_0216936c
mov r2, r6
mov r0, r7
add r1, r4, #0x1f4
bl func_ov61_0216939c
mov r0, r7
add r1, r4, #0x1f4
ldr r2, _0216d160 ; =data_ov61_0217d274
bl func_ov61_0216936c
mov r2, r5
mov r0, r7
add r1, r4, #0x1f4
bl func_ov61_0216939c
mov r0, r7
add r1, r4, #0x1f4
ldr r2, _0216d164 ; =data_ov61_0217d118
bl func_ov61_0216936c
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0216d0d0
_0216d158: .word data_ov61_0217d25c
_0216d15c: .word data_ov61_0217cfdc
_0216d160: .word data_ov61_0217d274
_0216d164: .word data_ov61_0217d118
.global func_ov61_0216d168
arm_func_start func_ov61_0216d168
func_ov61_0216d168: ; 0x0216d168
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x1c
mov r8, r0
ldr r0, [r8]
mov r4, #0
str r4, [sp, #0x14]
ldr r0, [r0, #0x100]
cmp r2, #1
moveq r4, #1
cmp r0, #0
ldr r5, [sp, #0x38]
moveq r4, #0
cmp r5, #0
mov r7, r1
mov r6, r3
cmpne r4, #0
beq _0216d288
add r2, sp, #0x18
mov r0, r8
mov r1, r7
bl func_ov61_0216f050
cmp r0, #0
ldrne r0, [sp, #0x18]
ldrne r0, [r0, #0xc]
cmpne r0, #0
beq _0216d288
mov r0, #0x204
bl func_ov61_0213e10c
movs r4, r0
bne _0216d1f8
ldr r1, _0216d308 ; =data_ov61_0217d0f0
mov r0, r8
bl func_ov61_02171b10
add sp, sp, #0x1c
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
_0216d1f8:
ldr r0, [sp, #0x18]
mov r1, r4
ldr r0, [r0, #0xc]
bl func_ov61_0216b8d4
mov r2, #0
ldr ip, [sp, #0x3c]
stmia r4, {r2, r7}
mov r0, #1
stmia sp, {r0, r5}
add r3, sp, #0x14
mov r0, r8
mov r1, #2
str r5, [sp, #0xc]
str ip, [sp, #0x10]
str ip, [sp, #8]
bl func_ov61_0216d7fc
cmp r0, #0
addne sp, sp, #0x1c
ldmneia sp!, {r3, r4, r5, r6, r7, r8, pc}
ldr r2, [sp, #0x14]
add r1, sp, #0xc
ldr r5, [r2, #0x18]
mov r0, r8
str r2, [sp]
mov r2, #0
str r2, [sp, #4]
mov r3, r4
ldmia r1, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
addne sp, sp, #0x1c
ldmneia sp!, {r3, r4, r5, r6, r7, r8, pc}
ldr r1, [sp, #0x14]
mov r0, r8
bl func_ov61_0216d950
b _0216d2dc
_0216d288:
str r6, [sp]
ldr r4, [sp, #0x3c]
str r5, [sp, #4]
add r3, sp, #0x14
mov r0, r8
mov r1, #2
mov r2, #0
str r4, [sp, #8]
bl func_ov61_0216d7fc
cmp r0, #0
addne sp, sp, #0x1c
ldmneia sp!, {r3, r4, r5, r6, r7, r8, pc}
ldr r1, [sp, #0x14]
mov r0, r8
ldr r5, [r1, #0x18]
mov r1, r7
mov r2, r5
bl func_ov61_0216d0d0
cmp r0, #0
addne sp, sp, #0x1c
ldmneia sp!, {r3, r4, r5, r6, r7, r8, pc}
_0216d2dc:
cmp r6, #0
beq _0216d2fc
mov r0, r8
mov r1, r5
bl func_ov61_02168158
cmp r0, #0
addne sp, sp, #0x1c
ldmneia sp!, {r3, r4, r5, r6, r7, r8, pc}
_0216d2fc:
mov r0, #0
add sp, sp, #0x1c
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_0216d168
_0216d308: .word data_ov61_0217d0f0
.global func_ov61_0216d30c
arm_func_start func_ov61_0216d30c
func_ov61_0216d30c: ; 0x0216d30c
stmdb sp!, {r4, r5, r6, lr}
ldr r0, [r0]
mov r5, r1
ldr r0, [r0, #0x100]
mov r4, r2
cmp r0, #0
moveq r0, #1
ldmeqia sp!, {r4, r5, r6, pc}
mov r0, r5
bl func_ov61_0216d3e4
mov r0, #0xf0
bl func_ov61_0213e10c
movs r6, r0
str r0, [r5, #0xc]
beq _0216d3d0
mov lr, r4
mov ip, #0xf
_0216d350:
ldmia lr!, {r0, r1, r2, r3}
stmia r6!, {r0, r1, r2, r3}
subs ip, ip, #1
bne _0216d350
ldr r0, [r4]
bl func_ov61_02166654
ldr r1, [r5, #0xc]
str r0, [r1]
ldr r0, [r4, #4]
bl func_ov61_02166654
ldr r1, [r5, #0xc]
str r0, [r1, #4]
ldr r0, [r4, #8]
bl func_ov61_02166654
ldr r1, [r5, #0xc]
str r0, [r1, #8]
ldr r0, [r4, #0xc]
bl func_ov61_02166654
ldr r1, [r5, #0xc]
str r0, [r1, #0xc]
ldr r0, [r4, #0x10]
bl func_ov61_02166654
ldr r1, [r5, #0xc]
str r0, [r1, #0x10]
ldr r0, [r4, #0x14]
bl func_ov61_02166654
ldr r1, [r5, #0xc]
str r0, [r1, #0x14]
ldr r0, [r4, #0xc8]
bl func_ov61_02166654
ldr r1, [r5, #0xc]
str r0, [r1, #0xc8]
_0216d3d0:
ldr r0, [r5, #0xc]
cmp r0, #0
movne r0, #1
moveq r0, #0
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0216d30c
.global func_ov61_0216d3e4
arm_func_start func_ov61_0216d3e4
func_ov61_0216d3e4: ; 0x0216d3e4
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, [r4, #0xc]
cmp r0, #0
ldmeqia sp!, {r4, pc}
ldr r0, [r0]
bl func_ov61_0213e13c
ldr r0, [r4, #0xc]
mov r1, #0
str r1, [r0]
ldr r0, [r4, #0xc]
ldr r0, [r0, #4]
bl func_ov61_0213e13c
ldr r0, [r4, #0xc]
mov r1, #0
str r1, [r0, #4]
ldr r0, [r4, #0xc]
ldr r0, [r0, #8]
bl func_ov61_0213e13c
ldr r0, [r4, #0xc]
mov r1, #0
str r1, [r0, #8]
ldr r0, [r4, #0xc]
ldr r0, [r0, #0xc]
bl func_ov61_0213e13c
ldr r0, [r4, #0xc]
mov r1, #0
str r1, [r0, #0xc]
ldr r0, [r4, #0xc]
ldr r0, [r0, #0x10]
bl func_ov61_0213e13c
ldr r0, [r4, #0xc]
mov r1, #0
str r1, [r0, #0x10]
ldr r0, [r4, #0xc]
ldr r0, [r0, #0x14]
bl func_ov61_0213e13c
ldr r0, [r4, #0xc]
mov r1, #0
str r1, [r0, #0x14]
ldr r0, [r4, #0xc]
ldr r0, [r0, #0xc8]
bl func_ov61_0213e13c
ldr r0, [r4, #0xc]
mov r1, #0
str r1, [r0, #0xc8]
ldr r0, [r4, #0xc]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0xc]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0216d3e4
.global func_ov61_0216d4b0
arm_func_start func_ov61_0216d4b0
func_ov61_0216d4b0: ; 0x0216d4b0
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #0x10
movs r7, r0
mov r6, r1
ldr r4, [r7]
bne _0216d4dc
ldr r0, _0216d7dc ; =data_ov61_0217d2b8
ldr r1, _0216d7e0 ; =data_ov61_0217d2cc
ldr r2, _0216d7e4 ; =data_ov61_0217d290
mov r3, #0x22
bl func_02042f80
_0216d4dc:
ldr r0, [r7]
cmp r0, #0
bne _0216d4fc
ldr r0, _0216d7e8 ; =data_ov61_0217d2dc
ldr r1, _0216d7e0 ; =data_ov61_0217d2cc
ldr r2, _0216d7e4 ; =data_ov61_0217d290
mov r3, #0x23
bl func_02042f80
_0216d4fc:
cmp r6, #0
bne _0216d518
ldr r0, _0216d7ec ; =data_ov61_0217d2f0
ldr r1, _0216d7e0 ; =data_ov61_0217d2cc
ldr r2, _0216d7e4 ; =data_ov61_0217d290
mov r3, #0x24
bl func_02042f80
_0216d518:
ldr r1, [r6, #0xc]
ldr r0, [r6, #0x10]
str r1, [sp, #8]
str r0, [sp, #0xc]
cmp r1, #0
beq _0216d7d0
ldr r0, [r6]
cmp r0, #4
addls pc, pc, r0, lsl #2
b _0216d7bc
_0216d540: ; jump table
b _0216d554 ; case 0
b _0216d5e0 ; case 1
b _0216d65c ; case 2
b _0216d6c8 ; case 3
b _0216d750 ; case 4
_0216d554:
mov r0, #0x20
bl func_ov61_0213e10c
movs r5, r0
bne _0216d57c
ldr r1, _0216d7f0 ; =data_ov61_0217d304
mov r0, r7
bl func_ov61_02171b10
add sp, sp, #0x10
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216d57c:
mov r1, #0
mov r2, #0x20
bl func_02043600
ldr r1, [r6, #0x1c]
ldr r0, _0216d7f4 ; =0x00000201
str r1, [r5]
ldr r1, [r4, #0x418]
cmp r1, r0
bne _0216d5b0
ldr r1, [r4, #0x1a0]
mov r0, #0
str r1, [r5, #4]
str r0, [r4, #0x1a0]
_0216d5b0:
add r1, sp, #8
mov r0, r7
mov r3, r5
str r6, [sp]
mov r2, #0
str r2, [sp, #4]
ldmia r1, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
beq _0216d7d0
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216d5e0:
mov r0, #8
bl func_ov61_0213e10c
movs r3, r0
bne _0216d608
ldr r1, _0216d7f0 ; =data_ov61_0217d304
mov r0, r7
bl func_ov61_02171b10
add sp, sp, #0x10
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216d608:
mov r2, #0
strb r2, [r3]
strb r2, [r3, #1]
strb r2, [r3, #2]
strb r2, [r3, #3]
strb r2, [r3, #4]
strb r2, [r3, #5]
strb r2, [r3, #6]
strb r2, [r3, #7]
ldr r0, [r6, #0x1c]
add r1, sp, #8
str r0, [r3]
str r6, [sp]
str r2, [sp, #4]
mov r0, r7
ldmia r1, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
beq _0216d7d0
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216d65c:
mov r0, #0x204
bl func_ov61_0213e10c
movs r4, r0
bne _0216d684
ldr r1, _0216d7f0 ; =data_ov61_0217d304
mov r0, r7
bl func_ov61_02171b10
add sp, sp, #0x10
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216d684:
mov r1, #0
mov r2, #0x204
bl func_02043600
ldr r0, [r6, #0x1c]
add r1, sp, #8
str r0, [r4]
mov r0, r7
mov r3, r4
str r6, [sp]
mov r2, #0
str r2, [sp, #4]
ldmia r1, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
beq _0216d7d0
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216d6c8:
mov r0, #0x10
bl func_ov61_0213e10c
movs r3, r0
bne _0216d6f0
ldr r1, _0216d7f0 ; =data_ov61_0217d304
mov r0, r7
bl func_ov61_02171b10
add sp, sp, #0x10
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216d6f0:
mov r2, r3
mov r1, #4
mov r0, #0
_0216d6fc:
strb r0, [r2]
strb r0, [r2, #1]
strb r0, [r2, #2]
strb r0, [r2, #3]
add r2, r2, #4
subs r1, r1, #1
bne _0216d6fc
ldr r0, [r6, #0x1c]
mov r2, #0
str r0, [r3]
str r2, [r3, #0xc]
str r6, [sp]
add r1, sp, #8
str r2, [sp, #4]
mov r0, r7
ldmia r1, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
beq _0216d7d0
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216d750:
mov r0, #4
bl func_ov61_0213e10c
movs r3, r0
bne _0216d778
ldr r1, _0216d7f0 ; =data_ov61_0217d304
mov r0, r7
bl func_ov61_02171b10
add sp, sp, #0x10
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216d778:
mov r2, #0
strb r2, [r3]
strb r2, [r3, #1]
strb r2, [r3, #2]
strb r2, [r3, #3]
ldr r0, [r6, #0x1c]
add r1, sp, #8
str r0, [r3]
str r6, [sp]
str r2, [sp, #4]
mov r0, r7
ldmia r1, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
beq _0216d7d0
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216d7bc:
ldr r0, _0216d7f8 ; =data_ov61_0217d314
ldr r1, _0216d7e0 ; =data_ov61_0217d2cc
ldr r2, _0216d7e4 ; =data_ov61_0217d290
mov r3, #0x6b
bl func_02042f80
_0216d7d0:
mov r0, #0
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0216d4b0
_0216d7dc: .word data_ov61_0217d2b8
_0216d7e0: .word data_ov61_0217d2cc
_0216d7e4: .word data_ov61_0217d290
_0216d7e8: .word data_ov61_0217d2dc
_0216d7ec: .word data_ov61_0217d2f0
_0216d7f0: .word data_ov61_0217d304
_0216d7f4: .word 0x00000201
_0216d7f8: .word data_ov61_0217d314
.global func_ov61_0216d7fc
arm_func_start func_ov61_0216d7fc
func_ov61_0216d7fc: ; 0x0216d7fc
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r8, r0
mov r0, #0x24
mov r7, r1
mov r6, r2
mov r5, r3
ldr r4, [r8]
bl func_ov61_0213e10c
cmp r0, #0
bne _0216d838
ldr r1, _0216d8b0 ; =data_ov61_0217d304
mov r0, r8
bl func_ov61_02171b10
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0216d838:
str r7, [r0]
ldr r1, [sp, #0x18]
str r6, [r0, #4]
str r1, [r0, #8]
mov r1, #0
str r1, [r0, #0x14]
cmp r7, #0
moveq r1, #1
streq r1, [r0, #0x18]
beq _0216d880
ldr r2, [r4, #0x20c]
add r1, r2, #1
str r1, [r4, #0x20c]
str r2, [r0, #0x18]
ldr r1, [r4, #0x20c]
cmp r1, #2
movlt r1, #2
strlt r1, [r4, #0x20c]
_0216d880:
mov r3, #0
ldr r2, [sp, #0x1c]
str r3, [r0, #0x1c]
ldr r1, [sp, #0x20]
str r2, [r0, #0xc]
str r1, [r0, #0x10]
ldr r1, [r4, #0x424]
str r1, [r0, #0x20]
str r0, [r4, #0x424]
str r0, [r5]
mov r0, r3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_0216d7fc
_0216d8b0: .word data_ov61_0217d304
.global func_ov61_0216d8b4
arm_func_start func_ov61_0216d8b4
func_ov61_0216d8b4: ; 0x0216d8b4
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
ldr r1, [r4]
ldr r2, [r0]
cmp r1, #3
bne _0216d928
ldr r0, [r2, #0x210]
ldr r5, [r4, #4]
subs r0, r0, #1
str r0, [r2, #0x210]
bpl _0216d8f4
ldr r0, _0216d944 ; =data_ov61_0217d318
ldr r1, _0216d948 ; =data_ov61_0217d2cc
ldr r2, _0216d94c ; =data_ov61_0217d27c
mov r3, #0xb6
bl func_02042f80
_0216d8f4:
ldr r0, [r5, #4]
mov r1, #2
bl func_ov61_02166aac
ldr r0, [r5, #4]
bl func_ov61_02166a98
ldr r0, [r5, #0x18]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r5, #0x18]
ldr r0, [r5, #8]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r5, #8]
_0216d928:
ldr r0, [r4, #4]
bl func_ov61_0213e13c
mov r1, #0
mov r0, r4
str r1, [r4, #4]
bl func_ov61_0213e13c
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0216d8b4
_0216d944: .word data_ov61_0217d318
_0216d948: .word data_ov61_0217d2cc
_0216d94c: .word data_ov61_0217d27c
.global func_ov61_0216d950
arm_func_start func_ov61_0216d950
func_ov61_0216d950: ; 0x0216d950
stmdb sp!, {r3, lr}
ldr r3, [r0]
mov ip, #0
ldr r2, [r3, #0x424]
cmp r2, #0
ldmeqia sp!, {r3, pc}
_0216d968:
cmp r2, r1
bne _0216d98c
cmp ip, #0
ldreq r2, [r2, #0x20]
streq r2, [r3, #0x424]
ldrne r2, [r1, #0x20]
strne r2, [ip, #0x20]
bl func_ov61_0216d8b4
ldmia sp!, {r3, pc}
_0216d98c:
mov ip, r2
ldr r2, [r2, #0x20]
cmp r2, #0
bne _0216d968
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0216d950
.global func_ov61_0216d9a0
arm_func_start func_ov61_0216d9a0
func_ov61_0216d9a0: ; 0x0216d9a0
ldr r0, [r0]
ldr r3, [r0, #0x424]
cmp r3, #0
beq _0216d9d8
_0216d9b0:
ldr r0, [r3, #0x18]
cmp r0, r2
bne _0216d9cc
cmp r1, #0
strne r3, [r1]
mov r0, #1
bx lr
_0216d9cc:
ldr r3, [r3, #0x20]
cmp r3, #0
bne _0216d9b0
_0216d9d8:
cmp r1, #0
movne r0, #0
strne r0, [r1]
mov r0, #0
bx lr
arm_func_end func_ov61_0216d9a0
.global func_ov61_0216d9ec
arm_func_start func_ov61_0216d9ec
func_ov61_0216d9ec: ; 0x0216d9ec
ldr r0, [r0]
ldr r1, [r0, #0x424]
cmp r1, #0
beq _0216da20
_0216d9fc:
ldr r0, [r1, #8]
cmp r0, #0
ldrne r0, [r1]
cmpne r0, #3
movne r0, #1
bxne lr
ldr r1, [r1, #0x20]
cmp r1, #0
bne _0216d9fc
_0216da20:
mov r0, #0
bx lr
arm_func_end func_ov61_0216d9ec
.global func_ov61_0216da28
arm_func_start func_ov61_0216da28
func_ov61_0216da28: ; 0x0216da28
stmdb sp!, {r3, r4, r5, lr}
mov r5, r1
ldr r3, [r5]
mov r4, #0
cmp r3, #4
addls pc, pc, r3, lsl #2
b _0216da88
_0216da44: ; jump table
b _0216da58 ; case 0
b _0216da64 ; case 1
b _0216da70 ; case 2
b _0216da88 ; case 3
b _0216da7c ; case 4
_0216da58:
bl func_ov61_0216acd8
mov r4, r0
b _0216daa8
_0216da64:
bl func_ov61_0216ee0c
mov r4, r0
b _0216daa8
_0216da70:
bl func_ov61_0216bacc
mov r4, r0
b _0216daa8
_0216da7c:
bl func_ov61_021714c4
mov r4, r0
b _0216daa8
_0216da88:
ldr r1, _0216dab8 ; =data_ov61_0217d338
mov r2, r3
bl func_ov61_0217163c
ldr r0, _0216dabc ; =data_ov61_0217d314
ldr r1, _0216dac0 ; =data_ov61_0217d2cc
ldr r2, _0216dac4 ; =data_ov61_0217d2a4
ldr r3, _0216dac8 ; =0x00000146
bl func_02042f80
_0216daa8:
cmp r4, #0
strne r4, [r5, #0x1c]
mov r0, r4
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0216da28
_0216dab8: .word data_ov61_0217d338
_0216dabc: .word data_ov61_0217d314
_0216dac0: .word data_ov61_0217d2cc
_0216dac4: .word data_ov61_0217d2a4
_0216dac8: .word 0x00000146
.global func_ov61_0216dacc
arm_func_start func_ov61_0216dacc
func_ov61_0216dacc: ; 0x0216dacc
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #0x18
mov r6, r1
ldr r2, [r6]
mov r7, r0
sub r2, r2, #0x65
ldr r4, [r7]
cmp r2, #3
addls pc, pc, r2, lsl #2
b _0216dd8c
_0216daf4: ; jump table
b _0216dda0 ; case 0
b _0216db04 ; case 1
b _0216db18 ; case 2
b _0216dc9c ; case 3
_0216db04:
bl func_ov61_0216e890
cmp r0, #0
beq _0216dda0
add sp, sp, #0x18
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216db18:
ldr r1, [r6, #8]
add r2, sp, #0x14
bl func_ov61_02171828
cmp r0, #0
addne sp, sp, #0x18
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, [sp, #0x14]
cmp r0, #4
bne _0216db54
ldr r1, _0216ddf0 ; =data_ov61_0217d438
mov r0, r7
bl func_ov61_02171b10
add sp, sp, #0x18
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216db54:
cmp r0, #3
bne _0216dda0
ldr r1, [r6, #0xc]
add r2, sp, #8
mov r0, r7
mov r5, #1
bl func_ov61_0216f050
cmp r0, #0
bne _0216db90
ldr r1, _0216ddf0 ; =data_ov61_0217d438
mov r0, r7
bl func_ov61_02171b10
add sp, sp, #0x18
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216db90:
ldr r2, _0216ddf4 ; =data_ov61_0217d454
mov r0, r7
add r1, r6, #0x28
bl func_ov61_0216936c
ldr r2, _0216ddf8 ; =data_ov61_0217d45c
mov r0, r7
add r1, r6, #0x28
bl func_ov61_0216936c
ldr r2, [r4, #0x1a0]
mov r0, r7
add r1, r6, #0x28
bl func_ov61_0216939c
ldr r2, _0216ddfc ; =data_ov61_0217d464
mov r0, r7
add r1, r6, #0x28
bl func_ov61_0216936c
mov r0, r7
add r1, r6, #0x28
add r2, r4, #0x110
bl func_ov61_0216936c
mov r0, r7
add r1, r6, #0x28
ldr r2, _0216de00 ; =data_ov61_0217d46c
bl func_ov61_0216936c
mov r0, r7
add r1, r6, #0x28
ldr r2, [sp, #8]
ldr r2, [r2, #0x18]
bl func_ov61_0216936c
mov r0, r7
add r1, r6, #0x28
ldr r2, _0216de04 ; =data_ov61_0217d474
bl func_ov61_0216936c
ldr r2, [r4, #0x434]
cmp r2, #0
beq _0216dc54
ldr r3, [r6, #0xc]
mov r0, #0
_0216dc28:
ldr r1, [r2, #0xc]
cmp r1, r3
bne _0216dc48
cmp r2, r6
beq _0216dc48
ldr r1, [r2]
cmp r1, #0x67
movle r5, r0
_0216dc48:
ldr r2, [r2, #0x3c]
cmp r2, #0
bne _0216dc28
_0216dc54:
cmp r5, #0
beq _0216dc90
ldr r0, [sp, #8]
ldr r0, [r0, #0x18]
bl func_ov61_0213e13c
ldr r0, [sp, #8]
mov r1, #0
str r1, [r0, #0x18]
ldr r0, [sp, #8]
bl func_ov61_0216f238
cmp r0, #0
beq _0216dc90
ldr r1, [sp, #8]
mov r0, r7
bl func_ov61_0216f0c0
_0216dc90:
mov r0, #0x68
str r0, [r6]
b _0216dda0
_0216dc9c:
add r2, sp, #0xc
str r2, [sp]
ldr r1, _0216de08 ; =data_ov61_0217d47c
add r3, sp, #0x10
str r1, [sp, #4]
ldr r1, [r6, #8]
add r2, r6, #0x18
bl func_ov61_021696d4
cmp r0, #0
addne sp, sp, #0x18
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, [r6, #0x18]
ldr r1, _0216de04 ; =data_ov61_0217d474
bl strstr
cmp r0, #0
beq _0216dda0
mov r1, #0
strb r1, [r0]
ldr r4, [r6, #0x18]
ldr r1, _0216de0c ; =data_ov61_0217d480
mov r0, r4
mov r2, #7
bl strncmp
cmp r0, #0
bne _0216dd48
ldr r0, [r6, #0x14]
add r0, r0, #1
str r0, [r6, #0x14]
cmp r0, #1
ble _0216dd2c
ldr r1, _0216de10 ; =data_ov61_0217d488
mov r0, r7
bl func_ov61_02171b10
add sp, sp, #0x18
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216dd2c:
mov r0, r7
mov r1, r6
bl func_ov61_0216e82c
cmp r0, #0
beq _0216dd78
add sp, sp, #0x18
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216dd48:
ldr r1, _0216de14 ; =data_ov61_0217d4ac
mov r0, r4
mov r2, #6
bl strncmp
cmp r0, #0
beq _0216dd78
ldr r1, _0216de18 ; =data_ov61_0217d4b4
mov r0, r7
bl func_ov61_02171b10
add sp, sp, #0x18
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216dd78:
mov r0, #0x69
str r0, [r6]
mov r0, #0
str r0, [r6, #0x20]
b _0216dda0
_0216dd8c:
ldr r0, _0216de1c ; =data_ov61_0217d4d4
ldr r1, _0216de20 ; =data_ov61_0217d4d8
ldr r2, _0216de24 ; =data_ov61_0217d414
mov r3, #0x9f
bl func_02042f80
_0216dda0:
ldr r0, [r6, #0x30]
cmp r0, #0
ble _0216dde4
mov r1, #1
ldr r0, _0216de08 ; =data_ov61_0217d47c
str r1, [sp]
str r0, [sp, #4]
ldr r1, [r6, #8]
add r3, sp, #0xc
mov r0, r7
add r2, r6, #0x28
bl func_ov61_021698fc
ldr r1, [sp, #0xc]
cmp r1, #0
cmpeq r0, #0
movne r0, #0x6a
strne r0, [r6]
_0216dde4:
mov r0, #0
add sp, sp, #0x18
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0216dacc
_0216ddf0: .word data_ov61_0217d438
_0216ddf4: .word data_ov61_0217d454
_0216ddf8: .word data_ov61_0217d45c
_0216ddfc: .word data_ov61_0217d464
_0216de00: .word data_ov61_0217d46c
_0216de04: .word data_ov61_0217d474
_0216de08: .word data_ov61_0217d47c
_0216de0c: .word data_ov61_0217d480
_0216de10: .word data_ov61_0217d488
_0216de14: .word data_ov61_0217d4ac
_0216de18: .word data_ov61_0217d4b4
_0216de1c: .word data_ov61_0217d4d4
_0216de20: .word data_ov61_0217d4d8
_0216de24: .word data_ov61_0217d414
.global func_ov61_0216de28
arm_func_start func_ov61_0216de28
func_ov61_0216de28: ; 0x0216de28
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0x184
mov r5, r1
ldr r1, [r5]
mov r6, r0
cmp r1, #0x68
ldr r4, [r6]
beq _0216de5c
ldr r0, _0216e054 ; =data_ov61_0217d4e4
ldr r1, _0216e058 ; =data_ov61_0217d4d8
ldr r2, _0216e05c ; =data_ov61_0217d3f0
mov r3, #0xc1
bl func_02042f80
_0216de5c:
add r1, sp, #8
ldr r0, _0216e060 ; =data_ov61_0217d47c
str r1, [sp]
str r0, [sp, #4]
ldr r1, [r5, #8]
add r3, sp, #0xc
mov r0, r6
add r2, r5, #0x18
bl func_ov61_021696d4
cmp r0, #0
addne sp, sp, #0x184
ldmneia sp!, {r4, r5, r6, r7, pc}
ldr r0, [sp, #8]
cmp r0, #0
beq _0216deac
mov r0, #0x6a
str r0, [r5]
add sp, sp, #0x184
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, pc}
_0216deac:
ldr r0, [r5, #0x18]
ldr r1, _0216e064 ; =data_ov61_0217d474
bl strstr
cmp r0, #0
beq _0216e048
mov r1, #0
strb r1, [r0]
ldr r7, [r5, #0x18]
ldr r1, _0216e068 ; =data_ov61_0217d454
mov r0, r7
mov r2, #6
bl strncmp
cmp r0, #0
bne _0216e02c
ldr r1, _0216e06c ; =data_ov61_0217d45c
add r2, sp, #0x71
mov r0, r7
mov r3, #0x10
bl func_ov61_02171720
cmp r0, #0
bne _0216df14
mov r0, #0x6a
str r0, [r5]
add sp, sp, #0x184
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, pc}
_0216df14:
add r0, sp, #0x71
bl func_0204902c
mov r7, r0
ldr r0, [r5, #0x18]
ldr r1, _0216e070 ; =data_ov61_0217d464
add r2, sp, #0x52
mov r3, #0x1f
bl func_ov61_02171720
cmp r0, #0
bne _0216df50
mov r0, #0x6a
str r0, [r5]
add sp, sp, #0x184
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, pc}
_0216df50:
ldr r0, [r5, #0x18]
ldr r1, _0216e074 ; =data_ov61_0217d46c
add r2, sp, #0x31
mov r3, #0x21
bl func_ov61_02171720
cmp r0, #0
bne _0216df80
mov r0, #0x6a
str r0, [r5]
add sp, sp, #0x184
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, pc}
_0216df80:
str r7, [sp]
add r2, r4, #0x77
ldr r3, [r4, #0x1a0]
ldr r1, _0216e078 ; =data_ov61_0217d504
add r0, sp, #0x81
add r2, r2, #0x100
bl func_020459b8
add r0, sp, #0x81
bl strlen
mov r1, r0
add r0, sp, #0x81
add r2, sp, #0x10
bl func_ov61_0216659c
add r0, sp, #0x31
add r1, sp, #0x10
bl strcmp
cmp r0, #0
beq _0216dffc
ldr r2, _0216e07c ; =data_ov61_0217d480
mov r0, r6
add r1, r5, #0x28
bl func_ov61_0216936c
ldr r2, _0216e064 ; =data_ov61_0217d474
mov r0, r6
add r1, r5, #0x28
bl func_ov61_0216936c
mov r0, #0x6a
str r0, [r5]
add sp, sp, #0x184
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, pc}
_0216dffc:
ldr r2, _0216e080 ; =data_ov61_0217d4ac
mov r0, r6
add r1, r5, #0x28
bl func_ov61_0216936c
ldr r2, _0216e064 ; =data_ov61_0217d474
mov r0, r6
add r1, r5, #0x28
bl func_ov61_0216936c
mov r0, #0x69
str r0, [r5]
str r7, [r5, #0xc]
b _0216e040
_0216e02c:
mov r0, #0x6a
str r0, [r5]
add sp, sp, #0x184
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, pc}
_0216e040:
mov r0, #0
str r0, [r5, #0x20]
_0216e048:
mov r0, #0
add sp, sp, #0x184
ldmia sp!, {r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0216de28
_0216e054: .word data_ov61_0217d4e4
_0216e058: .word data_ov61_0217d4d8
_0216e05c: .word data_ov61_0217d3f0
_0216e060: .word data_ov61_0217d47c
_0216e064: .word data_ov61_0217d474
_0216e068: .word data_ov61_0217d454
_0216e06c: .word data_ov61_0217d45c
_0216e070: .word data_ov61_0217d464
_0216e074: .word data_ov61_0217d46c
_0216e078: .word data_ov61_0217d504
_0216e07c: .word data_ov61_0217d480
_0216e080: .word data_ov61_0217d4ac
.global func_ov61_0216e084
arm_func_start func_ov61_0216e084
func_ov61_0216e084: ; 0x0216e084
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0xc
mov r9, r1
ldr r1, [r9, #0x30]
mov r10, r0
cmp r1, #0
addne sp, sp, #0xc
movne r0, #0
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r0, [r9, #0x38]
bl func_ov61_02165a68
cmp r0, #0
beq _0216e148
mov r11, #0
ldr r5, _0216e154 ; =data_ov61_0217d47c
mov r8, r11
mov r6, r11
add r4, sp, #8
_0216e0cc:
ldr r0, [r9, #0x38]
mov r1, r8
bl func_ov61_02165a70
mov r7, r0
str r6, [sp]
str r5, [sp, #4]
ldr r1, [r9, #8]
mov r0, r10
mov r2, r7
mov r3, r4
bl func_ov61_021698fc
ldr r1, [sp, #8]
cmp r1, #0
cmpeq r0, #0
beq _0216e11c
mov r0, #0x6a
str r0, [r9]
add sp, sp, #0xc
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216e11c:
ldr r1, [r7, #0xc]
ldr r0, [r7, #8]
cmp r1, r0
bne _0216e148
ldr r0, [r9, #0x38]
mov r1, r11
bl func_ov61_02165cec
ldr r0, [r9, #0x38]
bl func_ov61_02165a68
cmp r0, #0
bne _0216e0cc
_0216e148:
mov r0, #0
add sp, sp, #0xc
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0216e084
_0216e154: .word data_ov61_0217d47c
.global func_ov61_0216e158
arm_func_start func_ov61_0216e158
func_ov61_0216e158: ; 0x0216e158
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x24
mov r8, r1
ldr r1, [r8, #0x30]
mov r9, r0
cmp r1, #0
ldr r7, [r9]
beq _0216e1bc
mov r2, #1
str r2, [sp]
ldr r1, _0216e3cc ; =data_ov61_0217d47c
add r3, sp, #0x1c
str r1, [sp, #4]
ldr r1, [r8, #8]
add r2, r8, #0x28
bl func_ov61_021698fc
ldr r1, [sp, #0x1c]
cmp r1, #0
cmpeq r0, #0
beq _0216e1bc
mov r0, #0x6a
str r0, [r8]
add sp, sp, #0x24
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216e1bc:
ldr r0, [r8, #0x30]
cmp r0, #0
bne _0216e1f4
mov r0, r9
mov r1, r8
bl func_ov61_0216e084
cmp r0, #0
addne sp, sp, #0x24
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r0, [r8]
cmp r0, #0x6a
addeq sp, sp, #0x24
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216e1f4:
add r1, sp, #0x1c
ldr r0, _0216e3cc ; =data_ov61_0217d47c
str r1, [sp]
str r0, [sp, #4]
ldr r1, [r8, #8]
add r3, sp, #0x20
mov r0, r9
add r2, r8, #0x18
bl func_ov61_021696d4
cmp r0, #0
beq _0216e234
mov r0, #0x6a
str r0, [r8]
add sp, sp, #0x24
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216e234:
ldr r0, [sp, #0x20]
cmp r0, #0
ble _0216e250
mov r0, #0
bl func_ov61_02166cf0
add r0, r0, #0x12c
str r0, [r8, #0x10]
_0216e250:
mov r4, #0
mov r10, #2
add r11, sp, #0x14
add r6, sp, #8
_0216e260:
mov r0, r9
add r1, r8, #0x18
add r2, sp, #0x10
add r3, sp, #0xc
str r6, [sp]
bl func_ov61_02169a7c
cmp r0, #0
addne sp, sp, #0x24
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, [sp, #0x10]
cmp r1, #0
beq _0216e3a4
ldr r2, [sp, #0xc]
cmp r2, #0x66
bgt _0216e2ac
bge _0216e364
cmp r2, #1
beq _0216e2e0
b _0216e398
_0216e2ac:
sub r0, r2, #0xc8
cmp r0, #8
addls pc, pc, r0, lsl #2
b _0216e398
_0216e2bc: ; jump table
b _0216e37c ; case 0
b _0216e37c ; case 1
b _0216e37c ; case 2
b _0216e37c ; case 3
b _0216e37c ; case 4
b _0216e37c ; case 5
b _0216e37c ; case 6
b _0216e37c ; case 7
b _0216e37c ; case 8
_0216e2e0:
ldr r1, [r7, #0x1bc]
ldr r0, [r7, #0x1c0]
str r1, [sp, #0x14]
str r0, [sp, #0x18]
cmp r1, #0
beq _0216e398
mov r0, #0xc
bl func_ov61_0213e10c
movs r5, r0
bne _0216e320
ldr r1, _0216e3d0 ; =data_ov61_0217d50c
mov r0, r9
bl func_ov61_02171b10
add sp, sp, #0x24
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216e320:
ldr r0, [r8, #0xc]
str r0, [r5]
ldr r0, [sp, #0x10]
bl func_ov61_02166654
str r0, [r5, #8]
mov r0, #0
bl func_ov61_02166cf0
str r0, [r5, #4]
mov r3, r5
mov r0, r9
stmia sp, {r4, r10}
ldmia r11, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
beq _0216e398
add sp, sp, #0x24
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216e364:
ldr r1, [r8, #0xc]
ldr r3, _0216e3d4 ; =data_ov61_0217d51c
mov r0, r9
mov r2, #0x67
bl func_ov61_02168e44
b _0216e398
_0216e37c:
str r1, [sp]
ldr r1, [sp, #8]
mov r0, r9
str r1, [sp, #4]
mov r1, r8
ldr r3, [r8, #0x18]
bl func_ov61_02171440
_0216e398:
mov r0, r9
add r1, r8, #0x18
bl func_ov61_02169bb8
_0216e3a4:
ldr r0, [sp, #0x10]
cmp r0, #0
bne _0216e260
ldr r0, [sp, #0x1c]
cmp r0, #0
movne r0, #0x6a
strne r0, [r8]
mov r0, #0
add sp, sp, #0x24
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0216e158
_0216e3cc: .word data_ov61_0217d47c
_0216e3d0: .word data_ov61_0217d50c
_0216e3d4: .word data_ov61_0217d51c
.global func_ov61_0216e3d8
arm_func_start func_ov61_0216e3d8
func_ov61_0216e3d8: ; 0x0216e3d8
stmdb sp!, {r4, r5, r6, lr}
mov r5, r1
ldr r1, [r5]
mov r6, r0
cmp r1, #0x64
mov r4, #0
bne _0216e408
ldr r0, _0216e464 ; =data_ov61_0217d520
ldr r1, _0216e468 ; =data_ov61_0217d4d8
ldr r2, _0216e46c ; =data_ov61_0217d390
ldr r3, _0216e470 ; =0x000001d9
bl func_02042f80
_0216e408:
ldr r0, [r5]
cmp r0, #0x69
beq _0216e43c
ldr r0, [r5, #4]
mov r1, r5
cmp r0, #0
mov r0, r6
beq _0216e434
bl func_ov61_0216dacc
mov r4, r0
b _0216e43c
_0216e434:
bl func_ov61_0216de28
mov r4, r0
_0216e43c:
cmp r4, #0
ldreq r0, [r5]
cmpeq r0, #0x69
bne _0216e45c
mov r0, r6
mov r1, r5
bl func_ov61_0216e158
mov r4, r0
_0216e45c:
mov r0, r4
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0216e3d8
_0216e464: .word data_ov61_0217d520
_0216e468: .word data_ov61_0217d4d8
_0216e46c: .word data_ov61_0217d390
_0216e470: .word 0x000001d9
.global func_ov61_0216e474
arm_func_start func_ov61_0216e474
func_ov61_0216e474: ; 0x0216e474
stmdb sp!, {r4, lr}
mov r4, r1
ldr r0, [r4, #8]
mov r1, #2
bl func_ov61_02166aac
ldr r0, [r4, #8]
bl func_ov61_02166a98
ldr r0, [r4, #0x18]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0x18]
ldr r0, [r4, #0x28]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0x28]
ldr r0, [r4, #0x38]
cmp r0, #0
beq _0216e4c8
bl func_ov61_021659fc
mov r0, #0
str r0, [r4, #0x38]
_0216e4c8:
mov r0, r4
bl func_ov61_0213e13c
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0216e474
.global func_ov61_0216e4d4
arm_func_start func_ov61_0216e4d4
func_ov61_0216e4d4: ; 0x0216e4d4
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r5, r0
movs r4, r1
ldr r6, [r5]
bne _0216e4fc
ldr r0, _0216e5d4 ; =data_ov61_0217d548
ldr r1, _0216e5d8 ; =data_ov61_0217d4d8
ldr r2, _0216e5dc ; =data_ov61_0217d380
ldr r3, _0216e5e0 ; =0x00000213
bl func_02042f80
_0216e4fc:
ldr r1, [r6, #0x434]
cmp r1, r4
ldreq r0, [r4, #0x3c]
streq r0, [r6, #0x434]
beq _0216e560
ldr r0, [r1, #0x3c]
cmp r0, r4
beq _0216e558
_0216e51c:
cmp r0, #0
bne _0216e548
ldr r0, _0216e5e4 ; =data_ov61_0217d4d4
ldr r1, _0216e5d8 ; =data_ov61_0217d4d8
ldr r2, _0216e5dc ; =data_ov61_0217d380
ldr r3, _0216e5e8 ; =0x00000225
bl func_02042f80
ldr r1, _0216e5ec ; =data_ov61_0217d558
mov r0, r5
bl func_ov61_0217163c
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216e548:
mov r1, r0
ldr r0, [r0, #0x3c]
cmp r0, r4
bne _0216e51c
_0216e558:
ldr r0, [r4, #0x3c]
str r0, [r1, #0x3c]
_0216e560:
ldr r0, [r4, #0x38]
bl func_ov61_02165a68
cmp r0, #0
beq _0216e5c4
mov r6, #0
mov r7, r6
_0216e578:
ldr r0, [r4, #0x38]
mov r1, r7
bl func_ov61_02165a70
ldr r2, [r0, #0x10]
cmp r2, #0x64
bge _0216e5a8
ldr ip, [r0]
ldr r3, [r0, #0x14]
ldr r1, [r4, #0xc]
mov r0, r5
add r3, ip, r3
bl func_ov61_02168d68
_0216e5a8:
ldr r0, [r4, #0x38]
mov r1, r6
bl func_ov61_02165cec
ldr r0, [r4, #0x38]
bl func_ov61_02165a68
cmp r0, #0
bne _0216e578
_0216e5c4:
mov r0, r5
mov r1, r4
bl func_ov61_0216e474
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0216e4d4
_0216e5d4: .word data_ov61_0217d548
_0216e5d8: .word data_ov61_0217d4d8
_0216e5dc: .word data_ov61_0217d380
_0216e5e0: .word 0x00000213
_0216e5e4: .word data_ov61_0217d4d4
_0216e5e8: .word 0x00000225
_0216e5ec: .word data_ov61_0217d558
.global func_ov61_0216e5f0
arm_func_start func_ov61_0216e5f0
func_ov61_0216e5f0: ; 0x0216e5f0
stmdb sp!, {r4, lr}
mov r4, r0
mov r1, #0x4000
bl func_ov61_0216670c
mov r0, r4
mov r1, #0x8000
bl func_ov61_0216670c
mov r0, r4
mov r1, #0x10000
bl func_ov61_0216670c
mov r0, r4
mov r1, #0x20000
bl func_ov61_0216670c
mov r0, r4
mov r1, #0x40000
bl func_ov61_0216670c
mov r0, r4
mov r1, #0x4000
bl func_ov61_02166750
mov r0, r4
mov r1, #0x8000
bl func_ov61_02166750
mov r0, r4
mov r1, #0x10000
bl func_ov61_02166750
mov r0, r4
bl func_ov61_02166790
mov r0, r4
bl func_ov61_021667d8
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0216e5f0
.global func_ov61_0216e668
arm_func_start func_ov61_0216e668
func_ov61_0216e668: ; 0x0216e668
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r4, r0
ldr r7, [r4]
mvn r1, #0
ldr r0, [r7, #0x204]
cmp r0, r1
beq _0216e6f0
bl func_ov61_02166914
cmp r0, #0
beq _0216e6f0
mov r1, #0
ldr r0, [r7, #0x204]
mov r2, r1
bl func_ov61_02166b80
mov r6, r0
mvn r1, #0
cmp r6, r1
beq _0216e6f0
mov r0, r4
mov r2, #0
bl func_ov61_0216e7ac
movs r5, r0
beq _0216e6e8
mov r0, #0x68
str r0, [r5]
mov r0, r6
str r6, [r5, #8]
mov r1, #0
bl func_ov61_021666cc
ldr r0, [r5, #8]
bl func_ov61_0216e5f0
b _0216e6f0
_0216e6e8:
mov r0, r6
bl func_ov61_02166a98
_0216e6f0:
ldr r7, [r7, #0x434]
cmp r7, #0
beq _0216e750
mov r5, #0
_0216e700:
mov r0, r4
mov r1, r7
ldr r6, [r7, #0x3c]
bl func_ov61_0216e3d8
ldr r1, [r7]
cmp r1, #0x6a
beq _0216e738
cmp r0, #0
bne _0216e738
mov r0, r5
bl func_ov61_02166cf0
ldr r1, [r7, #0x10]
cmp r0, r1
ble _0216e744
_0216e738:
mov r0, r4
mov r1, r7
bl func_ov61_0216e4d4
_0216e744:
mov r7, r6
cmp r6, #0
bne _0216e700
_0216e750:
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_0216e668
.global func_ov61_0216e758
arm_func_start func_ov61_0216e758
func_ov61_0216e758: ; 0x0216e758
ldr r0, [r0]
ldr r0, [r0, #0x434]
cmp r0, #0
beq _0216e788
_0216e768:
ldr r2, [r0, #0xc]
cmp r2, r1
ldreq r2, [r0]
cmpeq r2, #0x69
bxeq lr
ldr r0, [r0, #0x3c]
cmp r0, #0
bne _0216e768
_0216e788:
mov r0, #0
bx lr
arm_func_end func_ov61_0216e758
.global func_ov61_0216e790
arm_func_start func_ov61_0216e790
func_ov61_0216e790: ; 0x0216e790
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, [r4]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0216e790
.global func_ov61_0216e7ac
arm_func_start func_ov61_0216e7ac
func_ov61_0216e7ac: ; 0x0216e7ac
stmdb sp!, {r3, r4, r5, r6, r7, lr}
ldr r5, [r0]
mov r0, #0x40
mov r7, r1
mov r6, r2
bl func_ov61_0213e10c
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
mov r1, #0
mov r2, #0x40
bl func_02043600
mov r0, #0x64
stmia r4, {r0, r6}
sub r0, r0, #0x65
str r0, [r4, #8]
mov r0, #0
str r7, [r4, #0xc]
bl func_ov61_02166cf0
add r0, r0, #0x12c
str r0, [r4, #0x10]
ldr r3, [r5, #0x434]
ldr r2, _0216e828 ; =func_ov61_0216e790
mov r0, #0x18
mov r1, #0
str r3, [r4, #0x3c]
bl func_ov61_02165938
str r0, [r4, #0x38]
mov r0, r4
str r4, [r5, #0x434]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0216e7ac
_0216e828: .word func_ov61_0216e790
.global func_ov61_0216e82c
arm_func_start func_ov61_0216e82c
func_ov61_0216e82c: ; 0x0216e82c
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x10
mov r2, #0
str r2, [sp]
mov r4, r1
str r2, [sp, #4]
add r3, sp, #0xc
mov r1, #2
mov r5, r0
str r2, [sp, #8]
bl func_ov61_0216d7fc
cmp r0, #0
addne sp, sp, #0x10
ldmneia sp!, {r3, r4, r5, pc}
ldr r0, [sp, #0xc]
ldr r1, [r4, #0xc]
ldr r2, [r0, #0x18]
mov r0, r5
bl func_ov61_0216d0d0
cmp r0, #0
moveq r0, #0x65
streq r0, [r4]
moveq r0, #0
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0216e82c
.global func_ov61_0216e890
arm_func_start func_ov61_0216e890
func_ov61_0216e890: ; 0x0216e890
stmdb sp!, {r4, r5, lr}
sub sp, sp, #0xc
mov r4, r1
ldr r1, [r4, #0xc]
add r2, sp, #0
mov r5, r0
bl func_ov61_0216f050
cmp r0, #0
bne _0216e8cc
ldr r1, _0216ea0c ; =data_ov61_0217d438
mov r0, r5
bl func_ov61_02171b10
add sp, sp, #0xc
mov r0, #3
ldmia sp!, {r4, r5, pc}
_0216e8cc:
mov r0, #2
mov r1, #1
mov r2, #0
bl func_ov61_02166a84
mvn r1, #0
str r0, [r4, #8]
cmp r0, r1
bne _0216e918
ldr r2, _0216ea10 ; =data_ov61_0217d57c
mov r0, r5
mov r1, #5
bl func_ov61_02171aec
mov r0, r5
mov r1, #3
mov r2, #0
bl func_ov61_02169c10
add sp, sp, #0xc
mov r0, #3
ldmia sp!, {r4, r5, pc}
_0216e918:
mov r1, #0
bl func_ov61_021666cc
cmp r0, #0
bne _0216e954
ldr r2, _0216ea14 ; =data_ov61_0217d5a4
mov r0, r5
mov r1, #5
bl func_ov61_02171aec
mov r0, r5
mov r1, #3
mov r2, #0
bl func_ov61_02169c10
add sp, sp, #0xc
mov r0, #3
ldmia sp!, {r4, r5, pc}
_0216e954:
ldr r0, [r4, #8]
bl func_ov61_0216e5f0
add r1, sp, #4
mov r2, #0
ldr r3, [sp]
str r2, [r1]
mov r0, #2
str r2, [r1, #4]
strb r0, [sp, #5]
ldr r0, [r3, #8]
mov r2, #8
ldr r0, [r0, #0x10]
str r0, [sp, #8]
ldr r0, [r3, #8]
ldr r0, [r0, #0x14]
strh r0, [sp, #6]
ldr r0, [r4, #8]
bl func_ov61_02166b20
mvn r1, #0
cmp r0, r1
bne _0216e9f8
ldr r0, [r4, #8]
bl func_ov61_02166ce0
mvn r2, #5
cmp r0, r2
subne r1, r2, #0x14
cmpne r0, r1
subne r1, r2, #0x46
cmpne r0, r1
beq _0216e9f8
ldr r2, _0216ea18 ; =data_ov61_0217d5d8
mov r0, r5
mov r1, #5
bl func_ov61_02171aec
mov r0, r5
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0xc
mov r0, #3
ldmia sp!, {r4, r5, pc}
_0216e9f8:
mov r0, #0x67
str r0, [r4]
mov r0, #0
add sp, sp, #0xc
ldmia sp!, {r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0216e890
_0216ea0c: .word data_ov61_0217d438
_0216ea10: .word data_ov61_0217d57c
_0216ea14: .word data_ov61_0217d5a4
_0216ea18: .word data_ov61_0217d5d8
.global func_ov61_0216ea1c
arm_func_start func_ov61_0216ea1c
func_ov61_0216ea1c: ; 0x0216ea1c
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x18
movs r7, r1
mov r8, r0
mov r6, r2
mov r5, r3
bne _0216ea4c
ldr r0, _0216eb8c ; =data_ov61_0217d548
ldr r1, _0216eb90 ; =data_ov61_0217d4d8
ldr r2, _0216eb94 ; =data_ov61_0217d3a0
mov r3, #0x340
bl func_02042f80
_0216ea4c:
cmp r5, #0
bne _0216ea68
ldr r0, _0216eb98 ; =data_ov61_0217d600
ldr r1, _0216eb90 ; =data_ov61_0217d4d8
ldr r2, _0216eb94 ; =data_ov61_0217d3a0
ldr r3, _0216eb9c ; =0x00000341
bl func_02042f80
_0216ea68:
mov r0, r5
bl strlen
mov r4, r0
add r1, sp, #0
mov r3, #0
str r3, [r1, #0x10]
ldr r2, _0216eba0 ; =data_ov61_0217d610
mov r0, r8
str r3, [r1]
str r3, [r1, #4]
str r3, [r1, #8]
str r3, [r1, #0xc]
str r3, [r1, #0x14]
str r6, [sp, #0x10]
bl func_ov61_0216936c
cmp r0, #0
addne sp, sp, #0x18
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
add r1, sp, #0
mov r0, r8
mov r2, r6
bl func_ov61_0216939c
cmp r0, #0
addne sp, sp, #0x18
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
ldr r2, _0216eba4 ; =data_ov61_0217d614
add r1, sp, #0
mov r0, r8
bl func_ov61_0216936c
cmp r0, #0
addne sp, sp, #0x18
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
add r1, sp, #0
mov r0, r8
mov r2, r4
bl func_ov61_0216939c
cmp r0, #0
addne sp, sp, #0x18
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
ldr r2, _0216eba8 ; =data_ov61_0217d61c
add r1, sp, #0
mov r0, r8
bl func_ov61_0216936c
cmp r0, #0
addne sp, sp, #0x18
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
ldr ip, [sp, #8]
add r1, sp, #0
mov r0, r8
mov r2, r5
mov r3, r4
str ip, [sp, #0x14]
bl func_ov61_02169260
cmp r0, #0
addne sp, sp, #0x18
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
add r1, sp, #0
mov r0, r8
mov r2, #0
bl func_ov61_021691c8
cmp r0, #0
addne sp, sp, #0x18
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
ldr r0, [r7, #0x38]
add r1, sp, #0
bl func_ov61_02165ad8
mov r0, #0
bl func_ov61_02166cf0
add r0, r0, #0x12c
str r0, [r7, #0x10]
mov r0, #0
add sp, sp, #0x18
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_0216ea1c
_0216eb8c: .word data_ov61_0217d548
_0216eb90: .word data_ov61_0217d4d8
_0216eb94: .word data_ov61_0217d3a0
_0216eb98: .word data_ov61_0217d600
_0216eb9c: .word 0x00000341
_0216eba0: .word data_ov61_0217d610
_0216eba4: .word data_ov61_0217d614
_0216eba8: .word data_ov61_0217d61c
.global func_ov61_0216ebac
arm_func_start func_ov61_0216ebac
func_ov61_0216ebac: ; 0x0216ebac
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #0x48
mov r9, r0
mov r8, r1
mov r7, r2
cmp r3, #0
ldr r5, [r3]
ldmib r3, {r4, r6}
bne _0216ebe4
ldr r0, _0216ec14 ; =data_ov61_0217d624
ldr r1, _0216ec18 ; =data_ov61_0217d4d8
ldr r2, _0216ec1c ; =data_ov61_0217d3b4
ldr r3, _0216ec20 ; =0x00000376
bl func_02042f80
_0216ebe4:
ldr r1, _0216ec24 ; =data_ov61_0217d630
add r0, sp, #8
mov r2, r7
mov r3, r5
stmia sp, {r4, r6}
bl func_020459b8
add r2, sp, #8
mov r0, r9
mov r1, r8
bl func_ov61_021696a4
add sp, sp, #0x48
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_0216ebac
_0216ec14: .word data_ov61_0217d624
_0216ec18: .word data_ov61_0217d4d8
_0216ec1c: .word data_ov61_0217d3b4
_0216ec20: .word 0x00000376
_0216ec24: .word data_ov61_0217d630
.global func_ov61_0216ec28
arm_func_start func_ov61_0216ec28
func_ov61_0216ec28: ; 0x0216ec28
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #0x20
movs r6, r1
mov r7, r0
mov r5, r2
mov r4, r3
bne _0216ec58
ldr r0, _0216ecfc ; =data_ov61_0217d548
ldr r1, _0216ed00 ; =data_ov61_0217d4d8
ldr r2, _0216ed04 ; =data_ov61_0217d3d0
ldr r3, _0216ed08 ; =0x00000389
bl func_02042f80
_0216ec58:
mvn r0, #0
cmp r5, #0
ldreq r5, _0216ed0c ; =data_ov61_0217d644
cmp r4, r0
bne _0216ec78
mov r0, r5
bl strlen
mov r4, r0
_0216ec78:
ldr r1, _0216ed10 ; =data_ov61_0217d648
add r0, sp, #0
mov r2, r4
bl func_020459b8
add r2, sp, #0
mov r0, r7
mov r1, r6
bl func_ov61_021696a4
cmp r0, #0
addne sp, sp, #0x20
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, r7
mov r1, r6
mov r2, r5
mov r3, r4
bl func_ov61_021695a4
cmp r0, #0
addne sp, sp, #0x20
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, r7
mov r1, r6
mov r2, #0
bl func_ov61_021694c4
cmp r0, #0
addne sp, sp, #0x20
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, #0
bl func_ov61_02166cf0
add r0, r0, #0x12c
str r0, [r6, #0x10]
mov r0, #0
add sp, sp, #0x20
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0216ec28
_0216ecfc: .word data_ov61_0217d548
_0216ed00: .word data_ov61_0217d4d8
_0216ed04: .word data_ov61_0217d3d0
_0216ed08: .word 0x00000389
_0216ed0c: .word data_ov61_0217d644
_0216ed10: .word data_ov61_0217d648
.global func_ov61_0216ed14
arm_func_start func_ov61_0216ed14
func_ov61_0216ed14: ; 0x0216ed14
stmdb sp!, {r3, lr}
ldr r0, [r0]
bl func_02002c14
mov r0, r1
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0216ed14
.global func_ov61_0216ed28
arm_func_start func_ov61_0216ed28
func_ov61_0216ed28: ; 0x0216ed28
ldr r2, [r0]
ldr r0, [r1]
sub r0, r2, r0
bx lr
arm_func_end func_ov61_0216ed28
.global func_ov61_0216ed38
arm_func_start func_ov61_0216ed38
func_ov61_0216ed38: ; 0x0216ed38
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, [r4, #8]
cmp r0, #0
beq _0216ed88
ldr r0, [r0, #8]
bl func_ov61_0213e13c
ldr r0, [r4, #8]
mov r1, #0
str r1, [r0, #8]
ldr r0, [r4, #8]
ldr r0, [r0, #0xc]
bl func_ov61_0213e13c
ldr r0, [r4, #8]
mov r1, #0
str r1, [r0, #0xc]
ldr r0, [r4, #8]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #8]
_0216ed88:
mov r0, r4
bl func_ov61_0216d3e4
ldr r0, [r4, #0x10]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0x10]
ldr r0, [r4, #0x18]
bl func_ov61_0213e13c
mov r0, #0
str r0, [r4, #0x18]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0216ed38
.global func_ov61_0216edb4
arm_func_start func_ov61_0216edb4
func_ov61_0216edb4: ; 0x0216edb4
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
ldr r4, [r0]
mov r0, #0
str r0, [r4, #0x430]
str r0, [r4, #0x42c]
ldr ip, _0216ee00 ; =func_ov61_0216ed38
ldr r2, _0216ee04 ; =func_ov61_0216ed14
ldr r3, _0216ee08 ; =func_ov61_0216ed28
mov r0, #0x1c
mov r1, #4
str ip, [sp]
bl func_ov61_0216603c
str r0, [r4, #0x428]
cmp r0, #0
movne r0, #1
moveq r0, #0
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
.align 2, 0
arm_func_end func_ov61_0216edb4
_0216ee00: .word func_ov61_0216ed38
_0216ee04: .word func_ov61_0216ed14
_0216ee08: .word func_ov61_0216ed28
.global func_ov61_0216ee0c
arm_func_start func_ov61_0216ee0c
func_ov61_0216ee0c: ; 0x0216ee0c
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #0x20
mov r6, r2
mov r4, r1
mov r1, r6
mov r2, #1
mov r5, r0
bl func_ov61_02171648
cmp r0, #0
addne sp, sp, #0x20
movne r0, #4
ldmneia sp!, {r4, r5, r6, pc}
ldr r1, _0216ef5c ; =data_ov61_0217d66c
mov r0, r6
mov r2, #5
bl strncmp
cmp r0, #0
beq _0216ee80
ldr r2, _0216ef60 ; =data_ov61_0217d674
mov r0, r5
mov r1, #1
bl func_ov61_02171aec
mov r0, r5
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x20
mov r0, #3
ldmia sp!, {r4, r5, r6, pc}
_0216ee80:
ldr r1, _0216ef64 ; =data_ov61_0217d6a4
add r2, sp, #0x10
mov r0, r6
mov r3, #0x10
bl func_ov61_02171720
cmp r0, #0
bne _0216eec8
ldr r2, _0216ef60 ; =data_ov61_0217d674
mov r0, r5
mov r1, #1
bl func_ov61_02171aec
mov r0, r5
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x20
mov r0, #3
ldmia sp!, {r4, r5, r6, pc}
_0216eec8:
add r0, sp, #0x10
bl func_0204902c
ldr r2, [r4, #0xc]
ldr r1, [r4, #0x10]
mov r6, r0
str r2, [sp, #8]
str r1, [sp, #0xc]
cmp r2, #0
beq _0216ef44
mov r0, #8
bl func_ov61_0213e10c
movs r3, r0
bne _0216ef14
ldr r1, _0216ef68 ; =data_ov61_0217d6b0
mov r0, r5
bl func_ov61_02171b10
add sp, sp, #0x20
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
_0216ef14:
str r6, [r3, #4]
mov r2, #0
str r2, [r3]
str r4, [sp]
add r1, sp, #8
str r2, [sp, #4]
mov r0, r5
ldmia r1, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
addne sp, sp, #0x20
ldmneia sp!, {r4, r5, r6, pc}
_0216ef44:
mov r0, r5
mov r1, r4
bl func_ov61_0216d950
mov r0, #0
add sp, sp, #0x20
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0216ee0c
_0216ef5c: .word data_ov61_0217d66c
_0216ef60: .word data_ov61_0217d674
_0216ef64: .word data_ov61_0217d6a4
_0216ef68: .word data_ov61_0217d6b0
.global func_ov61_0216ef6c
arm_func_start func_ov61_0216ef6c
func_ov61_0216ef6c: ; 0x0216ef6c
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #0x20
mov r6, r0
mov r5, r1
cmp r5, #0
ldr r4, [r6]
bgt _0216ef9c
ldr r0, _0216f040 ; =data_ov61_0217d6c0
ldr r1, _0216f044 ; =data_ov61_0217d6c8
ldr r2, _0216f048 ; =data_ov61_0217d658
ldr r3, _0216f04c ; =0x000002b5
bl func_02042f80
_0216ef9c:
cmp r5, #0
addle sp, sp, #0x20
movle r0, #0
ldmleia sp!, {r4, r5, r6, pc}
add r2, sp, #0
mov r0, r6
mov r1, r5
bl func_ov61_0216f050
cmp r0, #0
ldrne r0, [sp]
addne sp, sp, #0x20
ldmneia sp!, {r4, r5, r6, pc}
add r1, sp, #4
mov r0, #0
str r0, [r1]
str r0, [r1, #4]
str r0, [r1, #0xc]
str r0, [r1, #0x10]
str r0, [r1, #0x14]
str r0, [r1, #0x18]
str r5, [sp, #4]
str r0, [r1, #8]
str r0, [sp, #8]
str r0, [sp, #0x10]
str r0, [sp, #0x14]
str r0, [sp, #0x1c]
str r0, [sp, #0x18]
ldr r0, [r4, #0x428]
bl func_ov61_0216628c
ldr r0, [r4, #0x42c]
add r2, sp, #0
add r3, r0, #1
mov r0, r6
mov r1, r5
str r3, [r4, #0x42c]
bl func_ov61_0216f050
cmp r0, #0
ldrne r0, [sp]
moveq r0, #0
add sp, sp, #0x20
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0216ef6c
_0216f040: .word data_ov61_0217d6c0
_0216f044: .word data_ov61_0217d6c8
_0216f048: .word data_ov61_0217d658
_0216f04c: .word 0x000002b5
.global func_ov61_0216f050
arm_func_start func_ov61_0216f050
func_ov61_0216f050: ; 0x0216f050
stmdb sp!, {r3, r4, lr}
sub sp, sp, #0x1c
ldr r0, [r0]
mov r4, r2
str r1, [sp]
ldr r0, [r0, #0x428]
add r1, sp, #0
bl func_ov61_021663d8
cmp r4, #0
strne r0, [r4]
cmp r0, #0
movne r0, #1
moveq r0, #0
add sp, sp, #0x1c
ldmia sp!, {r3, r4, pc}
arm_func_end func_ov61_0216f050
.global func_ov61_0216f08c
arm_func_start func_ov61_0216f08c
func_ov61_0216f08c: ; 0x0216f08c
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
add r2, sp, #0
ldr r4, [r0]
bl func_ov61_0216f050
cmp r0, #0
addeq sp, sp, #4
ldmeqia sp!, {r3, r4, pc}
ldr r0, [r4, #0x428]
ldr r1, [sp]
bl func_ov61_02166334
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
arm_func_end func_ov61_0216f08c
.global func_ov61_0216f0c0
arm_func_start func_ov61_0216f0c0
func_ov61_0216f0c0: ; 0x0216f0c0
ldr r0, [r0]
ldr ip, _0216f0d0 ; =func_ov61_02166334
ldr r0, [r0, #0x428]
bx ip
.align 2, 0
arm_func_end func_ov61_0216f0c0
_0216f0d0: .word func_ov61_02166334
.global func_ov61_0216f0d4
arm_func_start func_ov61_0216f0d4
func_ov61_0216f0d4: ; 0x0216f0d4
stmdb sp!, {r4, r5, r6, lr}
mov r6, r1
ldr r4, [r6, #0xc]
mov r5, r2
cmp r4, #0
beq _0216f12c
ldr r0, [r5]
ldr r1, [r4]
bl strcmp
cmp r0, #0
bne _0216f12c
ldr r0, [r5, #4]
ldr r1, [r4, #8]
bl strcmp
cmp r0, #0
bne _0216f12c
ldr r1, [r5, #8]
mov r0, #1
str r6, [r1]
str r0, [r5, #0xc]
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
_0216f12c:
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0216f0d4
.global func_ov61_0216f134
arm_func_start func_ov61_0216f134
func_ov61_0216f134: ; 0x0216f134
stmdb sp!, {r4, lr}
sub sp, sp, #0x10
str r1, [sp]
mov ip, #0
str r2, [sp, #4]
mov r4, r3
ldr r1, _0216f17c ; =func_ov61_0216f0d4
add r2, sp, #0
str ip, [sp, #0xc]
str r4, [sp, #8]
bl func_ov61_0216f19c
ldr r0, [sp, #0xc]
cmp r0, #0
moveq r0, #0
streq r0, [r4]
mov r0, #0
add sp, sp, #0x10
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_0216f134
_0216f17c: .word func_ov61_0216f0d4
.global func_ov61_0216f180
arm_func_start func_ov61_0216f180
func_ov61_0216f180: ; 0x0216f180
stmdb sp!, {r3, lr}
mov ip, r0
ldr r2, [r1, #8]
ldmia r1, {r0, r3}
mov r1, ip
blx r3
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0216f180
.global func_ov61_0216f19c
arm_func_start func_ov61_0216f19c
func_ov61_0216f19c: ; 0x0216f19c
stmdb sp!, {lr}
sub sp, sp, #0xc
ldr r3, [r0]
str r1, [sp, #4]
str r2, [sp, #8]
str r0, [sp]
ldr r0, [r3, #0x428]
ldr r1, _0216f1d8 ; =func_ov61_0216f180
add r2, sp, #0
bl func_ov61_021664e4
cmp r0, #0
moveq r0, #1
movne r0, #0
add sp, sp, #0xc
ldmia sp!, {pc}
.align 2, 0
arm_func_end func_ov61_0216f19c
_0216f1d8: .word func_ov61_0216f180
.global func_ov61_0216f1dc
arm_func_start func_ov61_0216f1dc
func_ov61_0216f1dc: ; 0x0216f1dc
ldr r0, [r1, #8]
cmp r0, #0
beq _0216f200
ldr r3, [r2]
ldr r0, [r0]
cmp r3, r0
streq r1, [r2, #4]
moveq r0, #0
bxeq lr
_0216f200:
mov r0, #1
bx lr
arm_func_end func_ov61_0216f1dc
.global func_ov61_0216f208
arm_func_start func_ov61_0216f208
func_ov61_0216f208: ; 0x0216f208
stmdb sp!, {r3, lr}
sub sp, sp, #8
str r1, [sp]
mov r3, #0
ldr r1, _0216f234 ; =func_ov61_0216f1dc
add r2, sp, #0
str r3, [sp, #4]
bl func_ov61_0216f19c
ldr r0, [sp, #4]
add sp, sp, #8
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0216f208
_0216f234: .word func_ov61_0216f1dc
.global func_ov61_0216f238
arm_func_start func_ov61_0216f238
func_ov61_0216f238: ; 0x0216f238
cmp r0, #0
beq _0216f268
ldr r1, [r0, #0xc]
cmp r1, #0
ldreq r1, [r0, #8]
cmpeq r1, #0
ldreq r1, [r0, #0x18]
cmpeq r1, #0
ldreq r0, [r0, #0x10]
cmpeq r0, #0
moveq r0, #1
bxeq lr
_0216f268:
mov r0, #0
bx lr
arm_func_end func_ov61_0216f238
.global func_ov61_0216f270
arm_func_start func_ov61_0216f270
func_ov61_0216f270: ; 0x0216f270
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #8
mov r5, r1
ldr r4, [r5, #4]
mov r1, #0x1000
mov r6, r0
add r0, r1, #1
str r1, [r4, #0xc]
bl func_ov61_0213e10c
str r0, [r4, #8]
cmp r0, #0
bne _0216f2b8
ldr r1, _0216f448 ; =data_ov61_0217d758
mov r0, r6
bl func_ov61_02171b10
add sp, sp, #8
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
_0216f2b8:
mov r0, #2
mov r1, #1
mov r2, #0
bl func_ov61_02166a84
mvn r1, #0
str r0, [r4, #4]
cmp r0, r1
bne _0216f304
ldr r2, _0216f44c ; =data_ov61_0217d768
mov r0, r6
mov r1, #5
bl func_ov61_02171aec
mov r0, r6
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #8
mov r0, #3
ldmia sp!, {r4, r5, r6, pc}
_0216f304:
mov r1, #0
bl func_ov61_021666cc
cmp r0, #0
bne _0216f340
ldr r2, _0216f450 ; =data_ov61_0217d790
mov r0, r6
mov r1, #5
bl func_ov61_02171aec
mov r0, r6
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #8
mov r0, #3
ldmia sp!, {r4, r5, r6, pc}
_0216f340:
ldr r0, _0216f454 ; =data_ov61_0217d718
bl func_ov61_021590ac
cmp r0, #0
bne _0216f37c
ldr r2, _0216f458 ; =data_ov61_0217d7c4
mov r0, r6
mov r1, #5
bl func_ov61_02171aec
mov r0, r6
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #8
mov r0, #3
ldmia sp!, {r4, r5, r6, pc}
_0216f37c:
add r3, sp, #0
mov r2, #0
str r2, [r3]
mov r1, #2
str r2, [r3, #4]
strb r1, [sp, #1]
ldr r0, [r0, #0xc]
ldr r0, [r0]
ldr r0, [r0]
str r0, [sp, #4]
cmp r0, #0
bne _0216f3c0
ldr r0, _0216f45c ; =data_ov61_0217d7f4
ldr r1, _0216f460 ; =data_ov61_0217d814
ldr r2, _0216f464 ; =data_ov61_0217d700
mov r3, #0x59
bl func_02042f80
_0216f3c0:
ldr r0, _0216f468 ; =0x0000cd74
add r1, sp, #0
strh r0, [sp, #2]
ldr r0, [r4, #4]
mov r2, #8
bl func_ov61_02166b20
mvn r1, #0
cmp r0, r1
bne _0216f434
ldr r0, [r4, #4]
bl func_ov61_02166ce0
mvn r2, #5
cmp r0, r2
subne r1, r2, #0x14
cmpne r0, r1
subne r1, r2, #0x46
cmpne r0, r1
beq _0216f434
ldr r2, _0216f46c ; =data_ov61_0217d820
mov r0, r6
mov r1, #5
bl func_ov61_02171aec
mov r0, r6
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #8
mov r0, #3
ldmia sp!, {r4, r5, r6, pc}
_0216f434:
mov r0, #1
str r0, [r5, #0x14]
mov r0, #0
add sp, sp, #8
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0216f270
_0216f448: .word data_ov61_0217d758
_0216f44c: .word data_ov61_0217d768
_0216f450: .word data_ov61_0217d790
_0216f454: .word data_ov61_0217d718
_0216f458: .word data_ov61_0217d7c4
_0216f45c: .word data_ov61_0217d7f4
_0216f460: .word data_ov61_0217d814
_0216f464: .word data_ov61_0217d700
_0216f468: .word 0x0000cd74
_0216f46c: .word data_ov61_0217d820
.global func_ov61_0216f470
arm_func_start func_ov61_0216f470
func_ov61_0216f470: ; 0x0216f470
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r0, #0x144
mov r6, r1
mov r5, r2
bl func_ov61_0213e10c
movs r4, r0
bne _0216f4a4
ldr r1, _0216f51c ; =data_ov61_0217d758
mov r0, r7
bl func_ov61_02171b10
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216f4a4:
mov r1, #0
mov r2, #0x144
bl func_02043600
str r5, [r4]
mvn r0, #0
str r0, [r4, #4]
mov r0, #0
str r0, [r4, #8]
str r0, [r4, #0x10]
str r0, [r4, #0x14]
str r0, [r4, #0xc]
str r0, [r4, #0x20]
mov r1, #0x1000
str r0, [r4, #0x24]
add r0, r1, #1
str r1, [r4, #0x1c]
bl func_ov61_0213e10c
str r0, [r4, #0x18]
cmp r0, #0
bne _0216f508
ldr r1, _0216f51c ; =data_ov61_0217d758
mov r0, r7
bl func_ov61_02171b10
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_0216f508:
mov r0, #0
str r0, [r4, #0x13c]
str r0, [r4, #0x140]
str r4, [r6]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0216f470
_0216f51c: .word data_ov61_0217d758
.global func_ov61_0216f520
arm_func_start func_ov61_0216f520
func_ov61_0216f520: ; 0x0216f520
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x10
mov r5, r0
ldr r4, [r5]
ldr ip, [sp, #0x20]
ldr lr, [r4, #0x210]
add lr, lr, #1
str lr, [r4, #0x210]
stmia sp, {r2, r3}
mov r2, r1
add r3, sp, #0xc
mov r1, #3
str ip, [sp, #8]
bl func_ov61_0216d7fc
cmp r0, #0
addne sp, sp, #0x10
ldmneia sp!, {r3, r4, r5, pc}
ldr r1, [sp, #0xc]
mov r0, r5
bl func_ov61_0216f270
cmp r0, #0
addne sp, sp, #0x10
ldmneia sp!, {r3, r4, r5, pc}
ldr r1, [sp, #0xc]
ldr r0, [r1, #8]
cmp r0, #0
beq _0216f5a4
ldr r1, [r1, #0x18]
mov r0, r5
bl func_ov61_02168158
cmp r0, #0
addne sp, sp, #0x10
ldmneia sp!, {r3, r4, r5, pc}
_0216f5a4:
mov r0, #0
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_0216f520
.global func_ov61_0216f5b0
arm_func_start func_ov61_0216f5b0
func_ov61_0216f5b0: ; 0x0216f5b0
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #8
movs r8, r1
mov r9, r0
ldrnesb r0, [r8]
mov r7, r2
mov r6, r3
ldr r5, [sp, #0x28]
ldr r4, [sp, #0x2c]
cmpne r0, #0
bne _0216f640
cmp r6, #0
ldrnesb r0, [r6]
cmpne r0, #0
bne _0216f640
cmp r5, #0
ldrnesb r0, [r5]
cmpne r0, #0
bne _0216f640
cmp r4, #0
ldrnesb r0, [r4]
cmpne r0, #0
bne _0216f640
ldr r0, [sp, #0x30]
cmp r0, #0
bne _0216f640
cmp r7, #0
ldrnesb r0, [r7]
cmpne r0, #0
bne _0216f640
ldr r1, _0216f798 ; =data_ov61_0217d848
mov r0, r9
bl func_ov61_02171b10
add sp, sp, #8
mov r0, #2
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_0216f640:
add r1, sp, #4
mov r0, r9
mov r2, #1
bl func_ov61_0216f470
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
cmp r8, #0
bne _0216f674
ldr r0, [sp, #4]
mov r1, #0
strb r1, [r0, #0x28]
b _0216f688
_0216f674:
ldr r0, [sp, #4]
mov r1, r8
add r0, r0, #0x28
mov r2, #0x1f
bl func_ov61_021715c8
_0216f688:
cmp r7, #0
bne _0216f6a0
ldr r0, [sp, #4]
mov r1, #0
strb r1, [r0, #0x47]
b _0216f6b4
_0216f6a0:
ldr r0, [sp, #4]
mov r1, r7
add r0, r0, #0x47
mov r2, #0x15
bl func_ov61_021715c8
_0216f6b4:
cmp r6, #0
bne _0216f6cc
ldr r0, [sp, #4]
mov r1, #0
strb r1, [r0, #0x5c]
b _0216f6e0
_0216f6cc:
ldr r0, [sp, #4]
mov r1, r6
add r0, r0, #0x5c
mov r2, #0x33
bl func_ov61_021715c8
_0216f6e0:
ldr r0, [sp, #4]
add r0, r0, #0x5c
bl func_ov61_02166688
cmp r5, #0
bne _0216f704
ldr r0, [sp, #4]
mov r1, #0
strb r1, [r0, #0x8f]
b _0216f718
_0216f704:
ldr r0, [sp, #4]
mov r1, r5
add r0, r0, #0x8f
mov r2, #0x1f
bl func_ov61_021715c8
_0216f718:
cmp r4, #0
bne _0216f730
ldr r0, [sp, #4]
mov r1, #0
strb r1, [r0, #0xae]
b _0216f744
_0216f730:
ldr r0, [sp, #4]
mov r1, r4
add r0, r0, #0xae
mov r2, #0x1f
bl func_ov61_021715c8
_0216f744:
ldr r0, [sp, #0x34]
ldr r2, [sp, #0x30]
ldr r1, [sp, #4]
cmp r0, #0
movlt r0, #0
strlt r0, [sp, #0x34]
str r2, [r1, #0x130]
ldr r2, [sp, #0x34]
ldr r1, [sp, #4]
ldr r0, [sp, #0x40]
str r2, [r1, #0x134]
str r0, [sp]
ldr r1, [sp, #4]
ldr r2, [sp, #0x38]
ldr r3, [sp, #0x3c]
mov r0, r9
bl func_ov61_0216f520
cmp r0, #0
moveq r0, #0
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_0216f5b0
_0216f798: .word data_ov61_0217d848
.global func_ov61_0216f79c
arm_func_start func_ov61_0216f79c
func_ov61_0216f79c: ; 0x0216f79c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x490
mov r10, r0
ldr r0, [r10]
str r1, [sp, #0x1c]
ldr r1, [r1, #8]
str r0, [sp, #0x28]
ldr r0, [sp, #0x1c]
cmp r1, #0
movne r4, #1
ldr r6, [r0, #4]
moveq r4, #0
_0216f7cc:
mov r1, #1
ldr r0, _021705d4 ; =data_ov61_0217d85c
str r1, [sp]
str r0, [sp, #4]
ldr r1, [r6, #4]
add r3, sp, #0x68
mov r0, r10
add r2, r6, #0x18
bl func_ov61_021698fc
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r0, [sp, #0x1c]
ldr r0, [r0, #0x14]
cmp r0, #1
bne _0216fe30
ldr r1, [r6, #4]
add r2, sp, #0x7c
mov r0, r10
bl func_ov61_02171828
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r0, [sp, #0x7c]
cmp r0, #4
bne _0216f860
ldr r1, _021705d8 ; =0x00000d01
ldr r2, _021705dc ; =data_ov61_0217d860
mov r0, r10
bl func_ov61_02171aec
mov r0, r10
mov r1, #4
mov r2, #0
bl func_ov61_02169c10
add sp, sp, #0x490
mov r0, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216f860:
cmp r0, #3
bne _021711ec
ldr r0, [r6]
cmp r0, #1
bne _0216fa28
ldr r2, _021705e0 ; =data_ov61_0217d88c
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, _021705e4 ; =data_ov61_0217d898
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r0, [sp, #0x28]
add r1, r6, #0x18
ldr r2, [r0, #0x198]
mov r0, r10
bl func_ov61_0216939c
ldr r2, _021705e8 ; =data_ov61_0217d8a4
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, [sp, #0x28]
mov r0, r10
ldr r2, [r2, #0x1a0]
add r1, r6, #0x18
bl func_ov61_0216939c
ldr r2, _021705ec ; =data_ov61_0217d8b0
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, [sp, #0x28]
mov r0, r10
ldr r2, [r2, #0x470]
add r1, r6, #0x18
bl func_ov61_0216939c
ldrsb r0, [r6, #0x28]
cmp r0, #0
beq _0216f91c
ldr r2, _021705f0 ; =data_ov61_0217d8c0
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
add r2, r6, #0x28
bl func_ov61_0216936c
_0216f91c:
ldrsb r0, [r6, #0x47]
cmp r0, #0
beq _0216f948
ldr r2, _021705f4 ; =data_ov61_0217d8c8
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
add r2, r6, #0x47
bl func_ov61_0216936c
_0216f948:
ldrsb r0, [r6, #0x5c]
cmp r0, #0
beq _0216f974
ldr r2, _021705f8 ; =data_ov61_0217d8d8
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
add r2, r6, #0x5c
bl func_ov61_0216936c
_0216f974:
ldrsb r0, [r6, #0x8f]
cmp r0, #0
beq _0216f9a0
ldr r2, _021705fc ; =data_ov61_0217d8e0
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
add r2, r6, #0x8f
bl func_ov61_0216936c
_0216f9a0:
ldrsb r0, [r6, #0xae]
cmp r0, #0
beq _0216f9cc
ldr r2, _02170600 ; =data_ov61_0217d8ec
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
add r2, r6, #0xae
bl func_ov61_0216936c
_0216f9cc:
ldr r0, [r6, #0x130]
cmp r0, #0
beq _0216f9f8
ldr r2, _02170604 ; =data_ov61_0217d8f8
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, [r6, #0x130]
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216939c
_0216f9f8:
ldr r0, [r6, #0x134]
cmp r0, #0
ble _0216fdf0
ldr r2, _02170608 ; =data_ov61_0217d904
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, [r6, #0x134]
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216939c
b _0216fdf0
_0216fa28:
cmp r0, #2
bne _0216fa64
ldr r2, _0217060c ; =data_ov61_0217d90c
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, _021705f8 ; =data_ov61_0217d8d8
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
add r2, r6, #0x5c
bl func_ov61_0216936c
b _0216fdf0
_0216fa64:
cmp r0, #3
bne _0216fae4
ldr r2, _02170610 ; =data_ov61_0217d914
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, _021705f8 ; =data_ov61_0217d8d8
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
add r2, r6, #0x5c
bl func_ov61_0216936c
ldr r2, _02170614 ; =data_ov61_0217d91c
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
add r2, r6, #0xcd
bl func_ov61_0216936c
ldr r2, _021705ec ; =data_ov61_0217d8b0
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, [sp, #0x28]
mov r0, r10
ldr r2, [r2, #0x470]
add r1, r6, #0x18
bl func_ov61_0216939c
b _0216fdf0
_0216fae4:
cmp r0, #4
bne _0216fb68
ldr r2, _02170618 ; =data_ov61_0217d924
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, _021705e4 ; =data_ov61_0217d898
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r0, [sp, #0x28]
add r1, r6, #0x18
ldr r2, [r0, #0x198]
mov r0, r10
bl func_ov61_0216939c
ldr r2, _021705e8 ; =data_ov61_0217d8a4
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, [sp, #0x28]
mov r0, r10
ldr r2, [r2, #0x1a0]
add r1, r6, #0x18
bl func_ov61_0216939c
ldr r2, _0217061c ; =data_ov61_0217d930
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, [r6, #0x138]
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216939c
b _0216fdf0
_0216fb68:
cmp r0, #5
bne _0216fbe4
ldr r2, _02170620 ; =data_ov61_0217d93c
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, _021705f0 ; =data_ov61_0217d8c0
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
add r2, r6, #0x28
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
ldr r2, _021705f8 ; =data_ov61_0217d8d8
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
add r2, r6, #0x5c
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
ldr r2, _02170614 ; =data_ov61_0217d91c
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
add r2, r6, #0xcd
bl func_ov61_0216936c
b _0216fdf0
_0216fbe4:
cmp r0, #6
bne _0216fcf4
ldr r2, _02170624 ; =data_ov61_0217d944
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, _021705f0 ; =data_ov61_0217d8c0
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
add r2, r6, #0x28
bl func_ov61_0216936c
ldr r2, _021705f8 ; =data_ov61_0217d8d8
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
add r2, r6, #0x5c
bl func_ov61_0216936c
ldr r2, _02170614 ; =data_ov61_0217d91c
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
add r2, r6, #0xcd
bl func_ov61_0216936c
ldr r2, _02170628 ; =data_ov61_0217d950
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, [sp, #0x28]
mov r0, r10
ldr r2, [r2, #0x46c]
add r1, r6, #0x18
bl func_ov61_0216939c
ldr r2, _021705ec ; =data_ov61_0217d8b0
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, [sp, #0x28]
mov r0, r10
ldr r2, [r2, #0x470]
add r1, r6, #0x18
bl func_ov61_0216939c
ldr r2, _021705f4 ; =data_ov61_0217d8c8
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
add r2, r6, #0x47
bl func_ov61_0216936c
ldrsb r0, [r6, #0xec]
cmp r0, #0
beq _0216fdf0
ldr r2, _0217062c ; =data_ov61_0217d95c
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
add r2, r6, #0xec
bl func_ov61_0216936c
b _0216fdf0
_0216fcf4:
cmp r0, #7
bne _0216fd7c
ldr r2, _02170630 ; =data_ov61_0217d964
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, _021705e4 ; =data_ov61_0217d898
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r0, [sp, #0x28]
add r1, r6, #0x18
ldr r2, [r0, #0x198]
mov r0, r10
bl func_ov61_0216939c
ldr r2, _021705e8 ; =data_ov61_0217d8a4
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, [sp, #0x28]
mov r0, r10
ldr r2, [r2, #0x1a0]
add r1, r6, #0x18
bl func_ov61_0216939c
ldr r2, _021705ec ; =data_ov61_0217d8b0
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, [sp, #0x28]
mov r0, r10
ldr r2, [r2, #0x470]
add r1, r6, #0x18
bl func_ov61_0216939c
b _0216fdf0
_0216fd7c:
cmp r0, #8
bne _0216fddc
ldr r2, _02170634 ; =data_ov61_0217d970
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, _02170638 ; =data_ov61_0217d980
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
mov r0, r10
add r1, r6, #0x18
add r2, r6, #0x47
bl func_ov61_0216936c
ldr r2, _021705ec ; =data_ov61_0217d8b0
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, [sp, #0x28]
mov r0, r10
ldr r2, [r2, #0x470]
add r1, r6, #0x18
bl func_ov61_0216939c
b _0216fdf0
_0216fddc:
ldr r0, _0217063c ; =data_ov61_0217d990
ldr r1, _02170640 ; =data_ov61_0217d814
ldr r2, _02170644 ; =data_ov61_0217d6d8
ldr r3, _02170648 ; =0x00000275
bl func_02042f80
_0216fdf0:
ldr r2, _0217064c ; =data_ov61_0217d994
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, _02170650 ; =data_ov61_021810c0
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r2, _02170654 ; =data_ov61_0217d9a0
mov r0, r10
add r1, r6, #0x18
bl func_ov61_0216936c
ldr r0, [sp, #0x1c]
mov r1, #4
str r1, [r0, #0x14]
b _021711ec
_0216fe30:
cmp r0, #4
bne _021711ec
add r1, sp, #0x68
ldr r0, _021705d4 ; =data_ov61_0217d85c
str r1, [sp]
str r0, [sp, #4]
ldr r1, [r6, #4]
add r3, sp, #0x6c
mov r0, r10
add r2, r6, #8
bl func_ov61_021696d4
cmp r0, #0
beq _0216fe9c
cmp r0, #3
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, _021705d8 ; =0x00000d01
ldr r2, _02170658 ; =data_ov61_0217d9a8
mov r0, r10
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #0
bl func_ov61_02169c10
add sp, sp, #0x490
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216fe9c:
ldr r0, [r6, #8]
ldr r1, _02170654 ; =data_ov61_0217d9a0
bl strstr
cmp r0, #0
beq _021711ec
mov r0, #0
str r0, [sp, #0x78]
ldr r0, [sp, #0x1c]
mov r1, #5
str r1, [r0, #0x14]
ldr r1, [r6, #8]
mov r0, r10
mov r2, #1
bl func_ov61_02171648
cmp r0, #0
beq _0216fef0
mov r0, #1
str r0, [r6, #0x140]
add sp, sp, #0x490
mov r0, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0216fef0:
ldr r0, [r6]
cmp r0, #1
bne _02170260
ldr r1, _0217065c ; =0x00000601
mov r0, #0
str r0, [sp, #0x2c]
str r0, [sp, #0x80]
str r0, [sp, #0x84]
str r0, [sp, #0x8c]
str r1, [sp, #0x88]
add r4, sp, #0x290
add r5, sp, #0x90
add r11, sp, #0x78
_0216ff24:
str r5, [sp]
ldr r1, [r6, #8]
mov r0, r10
mov r2, r11
mov r3, r4
bl func_ov61_0217191c
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, _02170660 ; =data_ov61_0217d9d4
mov r0, r4
bl strcmp
cmp r0, #0
bne _0216ffb8
str r5, [sp]
ldr r1, [r6, #8]
mov r0, r10
mov r2, r11
mov r3, r4
bl func_ov61_0217191c
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, _02170664 ; =data_ov61_0217d9dc
mov r0, r4
bl strcmp
cmp r0, #0
bne _0216ffac
ldr r1, _0217063c ; =data_ov61_0217d990
mov r0, r5
bl strcmp
cmp r0, #0
movne r0, #0x600
strne r0, [sp, #0x88]
_0216ffac:
mov r0, #1
str r0, [sp, #0x2c]
b _02170198
_0216ffb8:
ldr r1, _02170668 ; =data_ov61_0217d9e4
mov r0, r4
bl strcmp
cmp r0, #0
bne _0217016c
ldr r1, [sp, #0x84]
ldr r0, [sp, #0x8c]
add r2, r1, #1
mov r1, #0xac
mul r1, r2, r1
str r2, [sp, #0x84]
bl func_ov61_0213e120
movs r7, r0
str r7, [sp, #0x8c]
bne _0217000c
ldr r1, _0217066c ; =data_ov61_0217d758
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x490
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0217000c:
ldr r0, [sp, #0x84]
mov r1, #0
sub r2, r0, #1
mov r0, #0xac
mul r8, r2, r0
add r9, r7, r8
mov r0, r9
mov r2, #0xac
bl func_02043600
mov r0, r5
bl func_0204902c
str r0, [r7, r8]
mov r8, #0
_02170040:
ldr r7, [sp, #0x78]
mov r0, r10
str r5, [sp]
ldr r1, [r6, #8]
mov r2, r11
mov r3, r4
bl func_ov61_0217191c
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, _02170670 ; =data_ov61_0217d9e8
mov r0, r4
bl strcmp
cmp r0, #0
bne _02170090
add r0, r9, #4
mov r1, r5
mov r2, #0x1f
bl func_ov61_021715c8
b _02170160
_02170090:
ldr r1, _02170674 ; =data_ov61_0217d9f0
mov r0, r4
bl strcmp
cmp r0, #0
bne _021700b8
add r0, r9, #0x23
mov r1, r5
mov r2, #0x15
bl func_ov61_021715c8
b _02170160
_021700b8:
ldr r1, _02170678 ; =data_ov61_0217d9fc
mov r0, r4
bl strcmp
cmp r0, #0
bne _021700e0
add r0, r9, #0x38
mov r1, r5
mov r2, #0x1f
bl func_ov61_021715c8
b _02170160
_021700e0:
ldr r1, _0217067c ; =data_ov61_0217da08
mov r0, r4
bl strcmp
cmp r0, #0
bne _02170108
add r0, r9, #0x57
mov r1, r5
mov r2, #0x1f
bl func_ov61_021715c8
b _02170160
_02170108:
ldr r1, _02170680 ; =data_ov61_0217da14
mov r0, r4
bl strcmp
cmp r0, #0
bne _02170130
add r0, r9, #0x76
mov r1, r5
mov r2, #0x33
bl func_ov61_021715c8
b _02170160
_02170130:
ldr r1, _02170668 ; =data_ov61_0217d9e4
mov r0, r4
bl strcmp
cmp r0, #0
beq _02170158
ldr r1, _02170660 ; =data_ov61_0217d9d4
mov r0, r4
bl strcmp
cmp r0, #0
bne _02170160
_02170158:
str r7, [sp, #0x78]
mov r8, #1
_02170160:
cmp r8, #0
beq _02170040
b _02170198
_0217016c:
ldr r2, _02170684 ; =data_ov61_0217da1c
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x490
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170198:
ldr r0, [sp, #0x2c]
cmp r0, #0
beq _0216ff24
ldr r0, [sp, #0x1c]
ldr r4, [sp, #0x88]
ldr r3, [r0, #0xc]
ldr r2, [r0, #0x10]
str r3, [sp, #0x70]
str r2, [sp, #0x74]
cmp r3, #0
beq _021701d0
add r1, sp, #0x80
mov r0, r10
blx r3
_021701d0:
cmp r4, #0x600
ldreq r0, [sp, #0x88]
cmpeq r0, #0x600
bne _0217024c
add r0, r6, #0x8f
str r0, [sp]
add r0, r6, #0xae
str r0, [sp, #4]
ldr r1, [r6, #0x130]
mov r0, r10
str r1, [sp, #8]
ldr r3, [sp, #0x84]
ldr r2, [r6, #0x134]
add r1, r6, #0x28
add r2, r3, r2
str r2, [sp, #0xc]
ldr r2, [sp, #0x1c]
ldr r3, [r2, #8]
add r2, r6, #0x47
str r3, [sp, #0x10]
ldr r3, [sp, #0x1c]
ldr r4, [r3, #0xc]
add r3, r6, #0x5c
str r4, [sp, #0x14]
ldr r4, [sp, #0x1c]
ldr r4, [r4, #0x10]
str r4, [sp, #0x18]
bl func_ov61_0216f5b0
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0217024c:
ldr r0, [sp, #0x8c]
bl func_ov61_0213e13c
mov r0, #0
str r0, [sp, #0x8c]
b _021711e0
_02170260:
cmp r0, #2
bne _02170374
ldr r0, [sp, #0x1c]
ldr r1, [r0, #0xc]
ldr r0, [r0, #0x10]
str r1, [sp, #0x30]
str r0, [sp, #0x34]
cmp r1, #0
beq _021711e0
add r0, sp, #0x90
str r0, [sp]
ldr r1, [r6, #8]
add r2, sp, #0x78
add r3, sp, #0x290
mov r0, r10
bl func_ov61_0217191c
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, _02170688 ; =data_ov61_0217da44
add r0, sp, #0x290
bl strcmp
cmp r0, #0
beq _021702ec
ldr r2, _02170684 ; =data_ov61_0217da1c
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x490
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021702ec:
mov r0, #0x3c
bl func_ov61_0213e10c
movs r4, r0
bne _02170314
ldr r1, _0217066c ; =data_ov61_0217d758
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x490
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170314:
mov r0, #0
str r0, [r4]
add r0, r4, #4
add r1, r6, #0x5c
mov r2, #0x33
bl func_ov61_021715c8
ldrsb r0, [sp, #0x90]
ldr r1, [sp, #0x1c]
add r2, sp, #0x30
cmp r0, #0x30
moveq r0, #0
movne r0, #1
str r0, [r4, #0x38]
str r1, [sp]
mov r1, #0
str r1, [sp, #4]
mov r0, r10
mov r3, r4
ldmia r2, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
beq _021711e0
add sp, sp, #0x490
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170374:
cmp r0, #3
bne _0217071c
ldr r0, [sp, #0x1c]
ldr r1, [r0, #0xc]
ldr r0, [r0, #0x10]
str r1, [sp, #0x38]
str r0, [sp, #0x3c]
cmp r1, #0
beq _021711e0
mov r0, #0x44
bl func_ov61_0213e10c
movs r8, r0
bne _021703c0
ldr r1, _0217066c ; =data_ov61_0217d758
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x490
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021703c0:
mov r2, #0
add r0, r8, #4
add r1, r6, #0x5c
str r2, [r8]
bl strcpy
mov r1, #0
str r1, [r8, #0x38]
str r1, [r8, #0x3c]
add r0, sp, #0x90
str r1, [r8, #0x40]
str r0, [sp]
ldr r1, [r6, #8]
add r2, sp, #0x78
add r3, sp, #0x290
mov r0, r10
bl func_ov61_0217191c
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, _0217068c ; =data_ov61_0217da48
add r0, sp, #0x290
bl strcmp
cmp r0, #0
beq _0217044c
ldr r2, _02170684 ; =data_ov61_0217da1c
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x490
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0217044c:
ldr r11, _02170670 ; =data_ov61_0217d9e8
mov r9, #0
add r4, sp, #0x290
add r7, sp, #0x90
add r5, sp, #0x78
_02170460:
str r7, [sp]
ldr r1, [r6, #8]
mov r0, r10
mov r2, r5
mov r3, r4
bl func_ov61_0217191c
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
mov r0, r4
mov r1, r11
bl strcmp
cmp r0, #0
bne _0217052c
ldr r0, [r8, #0x3c]
ldr r1, [r8, #0x38]
add r1, r1, #1
mov r1, r1, lsl #0x2
bl func_ov61_0213e120
cmp r0, #0
bne _021704cc
ldr r1, _0217066c ; =data_ov61_0217d758
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x490
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021704cc:
str r0, [r8, #0x3c]
mov r0, #0x1f
bl func_ov61_0213e10c
cmp r0, #0
bne _021704f8
ldr r1, _0217066c ; =data_ov61_0217d758
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x490
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021704f8:
ldr r3, [r8, #0x3c]
ldr r2, [r8, #0x38]
mov r1, r7
str r0, [r3, r2, lsl #2]
ldr r3, [r8, #0x3c]
ldr r0, [r8, #0x38]
mov r2, #0x1f
ldr r0, [r3, r0, lsl #2]
bl func_ov61_021715c8
ldr r0, [r8, #0x38]
add r0, r0, #1
str r0, [r8, #0x38]
b _021706e0
_0217052c:
ldr r1, _02170674 ; =data_ov61_0217d9f0
mov r0, r4
bl strcmp
cmp r0, #0
bne _0217069c
ldr r0, [r8, #0x38]
cmp r0, #0
ble _021706e0
mov r1, r0, lsl #0x2
ldr r0, [r8, #0x40]
bl func_ov61_0213e120
cmp r0, #0
bne _02170578
ldr r1, _0217066c ; =data_ov61_0217d758
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x490
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170578:
str r0, [r8, #0x40]
mov r0, #0x15
bl func_ov61_0213e10c
cmp r0, #0
bne _021705a4
ldr r1, _0217066c ; =data_ov61_0217d758
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x490
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021705a4:
ldr r3, [r8, #0x40]
ldr r2, [r8, #0x38]
mov r1, r7
add r2, r3, r2, lsl #2
str r0, [r2, #-4]
ldr r3, [r8, #0x40]
ldr r0, [r8, #0x38]
mov r2, #0x15
add r0, r3, r0, lsl #2
ldr r0, [r0, #-4]
bl func_ov61_021715c8
b _021706e0
.align 2, 0
arm_func_end func_ov61_0216f79c
_021705d4: .word data_ov61_0217d85c
_021705d8: .word 0x00000d01
_021705dc: .word data_ov61_0217d860
_021705e0: .word data_ov61_0217d88c
_021705e4: .word data_ov61_0217d898
_021705e8: .word data_ov61_0217d8a4
_021705ec: .word data_ov61_0217d8b0
_021705f0: .word data_ov61_0217d8c0
_021705f4: .word data_ov61_0217d8c8
_021705f8: .word data_ov61_0217d8d8
_021705fc: .word data_ov61_0217d8e0
_02170600: .word data_ov61_0217d8ec
_02170604: .word data_ov61_0217d8f8
_02170608: .word data_ov61_0217d904
_0217060c: .word data_ov61_0217d90c
_02170610: .word data_ov61_0217d914
_02170614: .word data_ov61_0217d91c
_02170618: .word data_ov61_0217d924
_0217061c: .word data_ov61_0217d930
_02170620: .word data_ov61_0217d93c
_02170624: .word data_ov61_0217d944
_02170628: .word data_ov61_0217d950
_0217062c: .word data_ov61_0217d95c
_02170630: .word data_ov61_0217d964
_02170634: .word data_ov61_0217d970
_02170638: .word data_ov61_0217d980
_0217063c: .word data_ov61_0217d990
_02170640: .word data_ov61_0217d814
_02170644: .word data_ov61_0217d6d8
_02170648: .word 0x00000275
_0217064c: .word data_ov61_0217d994
_02170650: .word data_ov61_021810c0
_02170654: .word data_ov61_0217d9a0
_02170658: .word data_ov61_0217d9a8
_0217065c: .word 0x00000601
_02170660: .word data_ov61_0217d9d4
_02170664: .word data_ov61_0217d9dc
_02170668: .word data_ov61_0217d9e4
_0217066c: .word data_ov61_0217d758
_02170670: .word data_ov61_0217d9e8
_02170674: .word data_ov61_0217d9f0
_02170678: .word data_ov61_0217d9fc
_0217067c: .word data_ov61_0217da08
_02170680: .word data_ov61_0217da14
_02170684: .word data_ov61_0217da1c
_02170688: .word data_ov61_0217da44
_0217068c: .word data_ov61_0217da48
_02170690: .word data_ov61_0217da4c
_02170694: .word data_ov61_0217da54
_02170698: .word data_ov61_0217da5c
_0217069c:
ldr r1, _02170690 ; =data_ov61_0217da4c
mov r0, r4
bl strcmp
cmp r0, #0
moveq r9, #1
beq _021706e0
ldr r2, _02170684 ; =data_ov61_0217da1c
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x490
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021706e0:
cmp r9, #0
beq _02170460
ldr r1, [sp, #0x1c]
add r2, sp, #0x38
str r1, [sp]
mov r1, #3
str r1, [sp, #4]
mov r0, r10
mov r3, r8
ldmia r2, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
beq _021711e0
add sp, sp, #0x490
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0217071c:
cmp r0, #4
bne _02170998
ldr r0, [sp, #0x1c]
ldr r1, [r0, #0xc]
ldr r0, [r0, #0x10]
str r1, [sp, #0x40]
str r0, [sp, #0x44]
cmp r1, #0
beq _021711e0
mov r0, #0x10
bl func_ov61_0213e10c
movs r11, r0
bne _02170768
ldr r1, _0217066c ; =data_ov61_0217d758
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x490
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170768:
ldr r1, [r6, #0x138]
mov r0, #0
stmia r11, {r0, r1}
str r0, [r11, #8]
str r0, [sp, #0x20]
str r0, [r11, #0xc]
add r4, sp, #0x290
add r5, sp, #0x90
_02170788:
str r5, [sp]
ldr r1, [r6, #8]
mov r0, r10
add r2, sp, #0x78
mov r3, r4
bl func_ov61_0217191c
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, _02170694 ; =data_ov61_0217da54
mov r0, r4
bl strcmp
cmp r0, #0
moveq r0, #1
streq r0, [sp, #0x20]
beq _02170958
ldr r1, _02170698 ; =data_ov61_0217da5c
mov r0, r4
bl strcmp
cmp r0, #0
bne _0217092c
ldr r0, [r11, #8]
add r2, r0, #1
mov r0, #0x128
mul r1, r2, r0
str r2, [r11, #8]
ldr r0, [r11, #0xc]
bl func_ov61_0213e120
str r0, [r11, #0xc]
movs r8, r0
bne _0217081c
ldr r1, _0217066c ; =data_ov61_0217d758
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x490
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0217081c:
ldr r0, [r11, #8]
mov r1, #0
sub r2, r0, #1
mov r0, #0x128
mul r9, r2, r0
add r7, r8, r9
mov r0, r7
mov r2, #0x128
bl func_02043600
mov r0, #1
str r0, [r7, #0x24]
mov r0, r5
bl func_0204902c
str r0, [r8, r9]
mov r8, #0
_02170858:
ldr r9, [sp, #0x78]
mov r0, r10
str r5, [sp]
ldr r1, [r6, #8]
add r2, sp, #0x78
mov r3, r4
bl func_ov61_0217191c
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, _02171210 ; =data_ov61_0217da60
mov r0, r4
bl strcmp
cmp r0, #0
bne _021708a8
add r0, r7, #0x28
mov r1, r5
mov r2, #0x100
bl func_ov61_021715c8
b _021708cc
_021708a8:
ldr r1, _02170670 ; =data_ov61_0217d9e8
mov r0, r4
bl strcmp
cmp r0, #0
bne _021708cc
add r0, r7, #4
mov r1, r5
mov r2, #0x1f
bl func_ov61_021715c8
_021708cc:
ldr r1, _02171214 ; =data_ov61_0217da68
mov r0, r4
bl strcmp
cmp r0, #0
bne _021708f0
mov r0, r5
bl func_0204902c
str r0, [r7, #0x24]
b _02170920
_021708f0:
ldr r1, _02170698 ; =data_ov61_0217da5c
mov r0, r4
bl strcmp
cmp r0, #0
beq _02170918
ldr r1, _02170694 ; =data_ov61_0217da54
mov r0, r4
bl strcmp
cmp r0, #0
bne _02170920
_02170918:
str r9, [sp, #0x78]
mov r8, #1
_02170920:
cmp r8, #0
beq _02170858
b _02170958
_0217092c:
ldr r2, _02170684 ; =data_ov61_0217da1c
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x490
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170958:
ldr r0, [sp, #0x20]
cmp r0, #0
beq _02170788
ldr r1, [sp, #0x1c]
add r2, sp, #0x40
str r1, [sp]
mov r1, #4
str r1, [sp, #4]
mov r0, r10
mov r3, r11
ldmia r2, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
beq _021711e0
add sp, sp, #0x490
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170998:
cmp r0, #5
bne _02170af4
ldr r0, [sp, #0x1c]
ldr r1, [r0, #0xc]
ldr r0, [r0, #0x10]
str r1, [sp, #0x48]
str r0, [sp, #0x4c]
cmp r1, #0
beq _021711e0
add r0, sp, #0x90
str r0, [sp]
ldr r1, [r6, #8]
add r2, sp, #0x78
add r3, sp, #0x290
mov r0, r10
bl func_ov61_0217191c
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, _02171218 ; =data_ov61_0217da74
add r0, sp, #0x290
bl strcmp
cmp r0, #0
beq _02170a24
ldr r2, _02170684 ; =data_ov61_0217da1c
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x490
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170a24:
add r0, sp, #0x90
bl func_0204902c
movs r4, r0
beq _02170a44
ldr r0, [sp, #0x28]
mov r5, #0
str r4, [r0, #0x418]
b _02170a98
_02170a44:
ldr r0, [r6, #8]
ldr r1, _0217121c ; =data_ov61_0217da78
add r2, sp, #0x90
mov r3, #0x200
bl func_ov61_02171720
cmp r0, #0
bne _02170a8c
ldr r2, _02170684 ; =data_ov61_0217da1c
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x490
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170a8c:
add r0, sp, #0x90
bl func_0204902c
mov r5, r0
_02170a98:
mov r0, #8
bl func_ov61_0213e10c
movs r3, r0
bne _02170ac0
ldr r1, _0217066c ; =data_ov61_0217d758
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x490
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170ac0:
stmia r3, {r4, r5}
ldr r1, [sp, #0x1c]
add r2, sp, #0x48
str r1, [sp]
mov r1, #0
str r1, [sp, #4]
mov r0, r10
ldmia r2, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
beq _021711e0
add sp, sp, #0x490
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170af4:
cmp r0, #6
bne _02170c54
ldr r0, [sp, #0x1c]
ldr r1, [r0, #0xc]
ldr r0, [r0, #0x10]
str r1, [sp, #0x50]
str r0, [sp, #0x54]
cmp r1, #0
beq _021711e0
add r0, sp, #0x90
str r0, [sp]
ldr r1, [r6, #8]
add r2, sp, #0x78
add r3, sp, #0x290
mov r0, r10
bl func_ov61_0217191c
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, _02171220 ; =data_ov61_0217da80
add r0, sp, #0x290
bl strcmp
cmp r0, #0
beq _02170b80
ldr r2, _02170684 ; =data_ov61_0217da1c
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x490
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170b80:
add r0, sp, #0x90
bl func_0204902c
movs r4, r0
ldrne r0, [sp, #0x28]
ldr r1, _0217121c ; =data_ov61_0217da78
strne r4, [r0, #0x418]
ldr r0, [r6, #8]
add r2, sp, #0x90
mov r3, #0x200
bl func_ov61_02171720
cmp r0, #0
bne _02170bec
cmp r4, #0
bne _02170be4
ldr r2, _02170684 ; =data_ov61_0217da1c
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x490
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170be4:
mov r5, #0
b _02170bf8
_02170bec:
add r0, sp, #0x90
bl func_0204902c
mov r5, r0
_02170bf8:
mov r0, #8
bl func_ov61_0213e10c
movs r3, r0
bne _02170c20
ldr r1, _0217066c ; =data_ov61_0217d758
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x490
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170c20:
stmia r3, {r4, r5}
ldr r1, [sp, #0x1c]
add r2, sp, #0x50
str r1, [sp]
mov r1, #0
str r1, [sp, #4]
mov r0, r10
ldmia r2, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
beq _021711e0
add sp, sp, #0x490
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170c54:
cmp r0, #7
bne _02170f90
ldr r0, [sp, #0x1c]
ldr r1, [r0, #0xc]
ldr r0, [r0, #0x10]
str r1, [sp, #0x58]
str r0, [sp, #0x5c]
cmp r1, #0
beq _021711e0
mov r0, #0xc
bl func_ov61_0213e10c
movs r11, r0
bne _02170ca0
ldr r1, _0217066c ; =data_ov61_0217d758
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x490
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170ca0:
mov r1, #0
str r1, [r11]
str r1, [r11, #4]
add r0, sp, #0x90
str r1, [r11, #8]
str r0, [sp]
ldr r1, [r6, #8]
add r2, sp, #0x78
add r3, sp, #0x290
mov r0, r10
bl func_ov61_0217191c
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, _02171224 ; =data_ov61_0217da84
add r0, sp, #0x290
bl strcmp
cmp r0, #0
beq _02170d18
ldr r2, _02170684 ; =data_ov61_0217da1c
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x490
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170d18:
mov r0, #0
str r0, [sp, #0x24]
add r4, sp, #0x290
add r5, sp, #0x90
_02170d28:
str r5, [sp]
ldr r1, [r6, #8]
mov r0, r10
add r2, sp, #0x78
mov r3, r4
bl func_ov61_0217191c
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, _02171228 ; =data_ov61_0217da8c
mov r0, r4
bl strcmp
cmp r0, #0
moveq r0, #1
streq r0, [sp, #0x24]
beq _02170f50
ldr r1, _0217122c ; =data_ov61_0217da94
mov r0, r4
bl strcmp
cmp r0, #0
bne _02170f24
ldr r1, [r11, #4]
ldr r0, [r11, #8]
add r2, r1, #1
mov r1, #0xac
mul r1, r2, r1
bl func_ov61_0213e120
cmp r0, #0
bne _02170db4
ldr r1, _0217066c ; =data_ov61_0217d758
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x490
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170db4:
str r0, [r11, #8]
ldr r2, [r11, #4]
mov r8, r0
mov r0, #0xac
mul r9, r2, r0
add r7, r8, r9
mov r1, #0
mov r0, r7
mov r2, #0xac
bl func_02043600
ldr r1, [r11, #4]
mov r0, r5
add r1, r1, #1
str r1, [r11, #4]
bl func_0204902c
str r0, [r8, r9]
mov r8, #0
_02170df8:
ldr r9, [sp, #0x78]
mov r0, r10
str r5, [sp]
ldr r1, [r6, #8]
add r2, sp, #0x78
mov r3, r4
bl func_ov61_0217191c
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, _02170670 ; =data_ov61_0217d9e8
mov r0, r4
bl strcmp
cmp r0, #0
bne _02170e48
add r0, r7, #4
mov r1, r5
mov r2, #0x1f
bl func_ov61_021715c8
b _02170f18
_02170e48:
ldr r1, _02170674 ; =data_ov61_0217d9f0
mov r0, r4
bl strcmp
cmp r0, #0
bne _02170e70
add r0, r7, #0x23
mov r1, r5
mov r2, #0x15
bl func_ov61_021715c8
b _02170f18
_02170e70:
ldr r1, _02171230 ; =data_ov61_0217da98
mov r0, r4
bl strcmp
cmp r0, #0
bne _02170e98
add r0, r7, #0x38
mov r1, r5
mov r2, #0x1f
bl func_ov61_021715c8
b _02170f18
_02170e98:
ldr r1, _02171234 ; =data_ov61_0217daa0
mov r0, r4
bl strcmp
cmp r0, #0
bne _02170ec0
add r0, r7, #0x57
mov r1, r5
mov r2, #0x1f
bl func_ov61_021715c8
b _02170f18
_02170ec0:
ldr r1, _02170680 ; =data_ov61_0217da14
mov r0, r4
bl strcmp
cmp r0, #0
bne _02170ee8
add r0, r7, #0x76
mov r1, r5
mov r2, #0x33
bl func_ov61_021715c8
b _02170f18
_02170ee8:
ldr r1, _0217122c ; =data_ov61_0217da94
mov r0, r4
bl strcmp
cmp r0, #0
beq _02170f10
ldr r1, _02171228 ; =data_ov61_0217da8c
mov r0, r4
bl strcmp
cmp r0, #0
bne _02170f18
_02170f10:
str r9, [sp, #0x78]
mov r8, #1
_02170f18:
cmp r8, #0
beq _02170df8
b _02170f50
_02170f24:
ldr r2, _02170684 ; =data_ov61_0217da1c
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x490
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170f50:
ldr r0, [sp, #0x24]
cmp r0, #0
beq _02170d28
ldr r1, [sp, #0x1c]
add r2, sp, #0x58
str r1, [sp]
mov r1, #8
str r1, [sp, #4]
mov r0, r10
mov r3, r11
ldmia r2, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
beq _021711e0
add sp, sp, #0x490
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170f90:
cmp r0, #8
bne _021711cc
ldr r0, [sp, #0x1c]
ldr r1, [r0, #0xc]
ldr r0, [r0, #0x10]
str r1, [sp, #0x60]
str r0, [sp, #0x64]
cmp r1, #0
beq _021711e0
mov r0, #0xc
mov r7, #0
bl func_ov61_0213e10c
movs r8, r0
bne _02170fe0
ldr r1, _0217066c ; =data_ov61_0217d758
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x490
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02170fe0:
mov r1, r7
str r1, [r8]
str r1, [r8, #4]
add r0, sp, #0x90
str r1, [r8, #8]
str r0, [sp]
ldr r1, [r6, #8]
add r2, sp, #0x78
add r3, sp, #0x290
mov r0, r10
bl func_ov61_0217191c
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, _02171238 ; =data_ov61_0217daa8
add r0, sp, #0x290
bl strcmp
cmp r0, #0
beq _02171058
ldr r2, _02170684 ; =data_ov61_0217da1c
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x490
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02171058:
add r0, sp, #0x90
bl func_0204902c
str r0, [r8, #4]
mov r0, r0, lsl #0x2
bl func_ov61_0213e10c
str r0, [r8, #8]
cmp r0, #0
bne _02171090
ldr r1, _0217066c ; =data_ov61_0217d758
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x490
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02171090:
mov r9, r7
add r4, sp, #0x290
add r5, sp, #0x90
add r11, sp, #0x78
_021710a0:
str r5, [sp]
ldr r1, [r6, #8]
mov r0, r10
mov r2, r11
mov r3, r4
bl func_ov61_0217191c
cmp r0, #0
addne sp, sp, #0x490
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, _02170670 ; =data_ov61_0217d9e8
mov r0, r4
bl strcmp
cmp r0, #0
bne _02171124
mov r0, #0x15
bl func_ov61_0213e10c
ldr r1, [r8, #8]
str r0, [r1, r7, lsl #2]
ldr r0, [r8, #8]
ldr r0, [r0, r7, lsl #2]
cmp r0, #0
bne _02171110
ldr r1, _0217066c ; =data_ov61_0217d758
mov r0, r10
bl func_ov61_02171b10
add sp, sp, #0x490
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02171110:
mov r1, r5
mov r2, #0x15
bl func_ov61_021715c8
add r7, r7, #1
b _02171190
_02171124:
ldr r1, _0217123c ; =data_ov61_0217daac
mov r0, r4
bl strcmp
cmp r0, #0
bne _02171164
ldr r0, [r8, #4]
cmp r7, r0
beq _02171158
ldr r0, _02171240 ; =data_ov61_0217dab4
ldr r1, _02170640 ; =data_ov61_0217d814
ldr r2, _02170644 ; =data_ov61_0217d6d8
ldr r3, _02171244 ; =0x00000515
bl func_02042f80
_02171158:
str r7, [r8, #4]
mov r9, #1
b _02171190
_02171164:
ldr r2, _02170684 ; =data_ov61_0217da1c
mov r0, r10
mov r1, #1
bl func_ov61_02171aec
mov r0, r10
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x490
mov r0, #3
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02171190:
cmp r9, #0
beq _021710a0
ldr r1, [sp, #0x1c]
add r2, sp, #0x60
str r1, [sp]
mov r1, #9
str r1, [sp, #4]
mov r0, r10
mov r3, r8
ldmia r2, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
beq _021711e0
add sp, sp, #0x490
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021711cc:
ldr r0, _0217063c ; =data_ov61_0217d990
ldr r1, _02170640 ; =data_ov61_0217d814
ldr r2, _02170644 ; =data_ov61_0217d6d8
ldr r3, _02171248 ; =0x0000052a
bl func_02042f80
_021711e0:
mov r0, #1
str r0, [r6, #0x140]
mov r4, #0
_021711ec:
cmp r4, #0
beq _021711fc
mov r0, #0xa
bl func_ov61_02166640
_021711fc:
cmp r4, #0
bne _0216f7cc
mov r0, #0
add sp, sp, #0x490
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
_02171210: .word data_ov61_0217da60
_02171214: .word data_ov61_0217da68
_02171218: .word data_ov61_0217da74
_0217121c: .word data_ov61_0217da78
_02171220: .word data_ov61_0217da80
_02171224: .word data_ov61_0217da84
_02171228: .word data_ov61_0217da8c
_0217122c: .word data_ov61_0217da94
_02171230: .word data_ov61_0217da98
_02171234: .word data_ov61_0217daa0
_02171238: .word data_ov61_0217daa8
_0217123c: .word data_ov61_0217daac
_02171240: .word data_ov61_0217dab4
_02171244: .word 0x00000515
_02171248: .word 0x0000052a
.global func_ov61_0217124c
arm_func_start func_ov61_0217124c
func_ov61_0217124c: ; 0x0217124c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
mov r10, r0
ldr r6, [r10]
mov r9, #0
ldr r0, [r6, #0x210]
cmp r0, #0
ble _02171380
mov r0, r0, lsl #0x2
bl func_ov61_0213e10c
movs r7, r0
bne _0217128c
ldr r1, _02171388 ; =data_ov61_0217d758
mov r0, r10
bl func_ov61_02171b10
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_0217128c:
ldr r8, [r6, #0x424]
cmp r8, #0
beq _02171308
ldr r5, _0217138c ; =data_ov61_0217dad4
ldr r11, _02171390 ; =data_ov61_0217d814
mov r4, #1
_021712a4:
ldr r0, [r8]
cmp r0, #3
bne _021712fc
ldr r0, [r8, #0x14]
cmp r0, #5
beq _021712fc
ldr r0, [r8, #4]
ldr r0, [r0, #0x13c]
cmp r0, #0
bne _021712fc
ldr r0, [r6, #0x210]
cmp r9, r0
blt _021712ec
ldr r2, _02171394 ; =data_ov61_0217d6ec
ldr r3, _02171398 ; =0x00000563
mov r0, r5
mov r1, r11
bl func_02042f80
_021712ec:
str r8, [r7, r9, lsl #2]
ldr r0, [r8, #4]
add r9, r9, #1
str r4, [r0, #0x13c]
_021712fc:
ldr r8, [r8, #0x20]
cmp r8, #0
bne _021712a4
_02171308:
cmp r9, #0
mov r4, #0
ble _02171338
_02171314:
ldr r1, [r7, r4, lsl #2]
mov r0, r10
bl func_ov61_0216f79c
cmp r0, #0
ldrne r1, [r7, r4, lsl #2]
add r4, r4, #1
strne r0, [r1, #0x1c]
cmp r4, r9
blt _02171314
_02171338:
cmp r9, #0
mov r4, #0
ble _02171378
mov r5, r4
_02171348:
ldr r0, [r7, r4, lsl #2]
ldr r0, [r0, #4]
str r5, [r0, #0x13c]
ldr r0, [r0, #0x140]
cmp r0, #0
beq _0217136c
ldr r1, [r7, r4, lsl #2]
mov r0, r10
bl func_ov61_0216d950
_0217136c:
add r4, r4, #1
cmp r4, r9
blt _02171348
_02171378:
mov r0, r7
bl func_ov61_0213e13c
_02171380:
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0217124c
_02171388: .word data_ov61_0217d758
_0217138c: .word data_ov61_0217dad4
_02171390: .word data_ov61_0217d814
_02171394: .word data_ov61_0217d6ec
_02171398: .word 0x00000563
.global func_ov61_0217139c
arm_func_start func_ov61_0217139c
func_ov61_0217139c: ; 0x0217139c
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #0x20
ldr ip, [sp, #0x30]
mov r5, r2
mov r6, r0
cmp ip, #0
ldreq r0, _02171438 ; =data_ov61_0217daf4
mov lr, r1
mov r4, r3
streq r0, [sp, #0x30]
mov r0, r6
mov r1, r5
mov r3, lr
mov r2, #0xc9
bl func_ov61_0216ebac
cmp r0, #0
addne sp, sp, #0x20
ldmneia sp!, {r4, r5, r6, pc}
ldr r1, _0217143c ; =data_ov61_0217daf8
add r0, sp, #0
mov r3, r4
mov r2, #1
bl func_020459b8
add r2, sp, #0
mov r0, r6
mov r1, r5
bl func_ov61_021696a4
cmp r0, #0
addne sp, sp, #0x20
ldmneia sp!, {r4, r5, r6, pc}
ldr r2, [sp, #0x30]
mov r0, r6
mov r1, r5
mvn r3, #0
bl func_ov61_0216ec28
cmp r0, #0
moveq r0, #0
add sp, sp, #0x20
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_0217139c
_02171438: .word data_ov61_0217daf4
_0217143c: .word data_ov61_0217daf8
.global func_ov61_02171440
arm_func_start func_ov61_02171440
func_ov61_02171440: ; 0x02171440
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x50
mov r4, r1
mov r5, r0
mov r0, r3
ldr r1, _021714bc ; =data_ov61_0217db10
add r2, sp, #0x10
mov r3, #0x40
bl func_ov61_02171720
cmp r0, #0
addeq sp, sp, #0x50
ldmeqia sp!, {r3, r4, r5, pc}
ldr r1, _021714c0 ; =data_ov61_0217db18
add ip, sp, #0xc
add r0, sp, #0x10
add r2, sp, #4
add r3, sp, #8
str ip, [sp]
bl func_02046eb0
cmp r0, #3
addne sp, sp, #0x50
ldmneia sp!, {r3, r4, r5, pc}
mov ip, #0
add r1, sp, #4
mov r0, r5
mov r2, r4
mov r3, #2
str ip, [sp]
bl func_ov61_0217139c
add sp, sp, #0x50
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02171440
_021714bc: .word data_ov61_0217db10
_021714c0: .word data_ov61_0217db18
.global func_ov61_021714c4
arm_func_start func_ov61_021714c4
func_ov61_021714c4: ; 0x021714c4
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #0x10
mov r4, r2
mov r5, r1
mov r1, r4
mov r2, #1
mov r6, r0
bl func_ov61_02171648
cmp r0, #0
addne sp, sp, #0x10
movne r0, #4
ldmneia sp!, {r4, r5, r6, pc}
ldr r1, _021715bc ; =data_ov61_0217db24
mov r0, r4
mov r2, #4
bl strncmp
cmp r0, #0
beq _02171538
ldr r2, _021715c0 ; =data_ov61_0217db2c
mov r0, r6
mov r1, #1
bl func_ov61_02171aec
mov r0, r6
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #0x10
mov r0, #3
ldmia sp!, {r4, r5, r6, pc}
_02171538:
ldr r1, [r5, #0xc]
ldr r0, [r5, #0x10]
str r1, [sp, #8]
str r0, [sp, #0xc]
cmp r1, #0
beq _021715a4
mov r0, #4
bl func_ov61_0213e10c
movs r3, r0
bne _02171578
ldr r1, _021715c4 ; =data_ov61_0217db5c
mov r0, r6
bl func_ov61_02171b10
add sp, sp, #0x10
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
_02171578:
mov r2, #0
str r2, [r3]
str r5, [sp]
add r1, sp, #8
str r2, [sp, #4]
mov r0, r6
ldmia r1, {r1, r2}
bl func_ov61_02169d04
cmp r0, #0
addne sp, sp, #0x10
ldmneia sp!, {r4, r5, r6, pc}
_021715a4:
mov r0, r6
mov r1, r5
bl func_ov61_0216d950
mov r0, #0
add sp, sp, #0x10
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_021714c4
_021715bc: .word data_ov61_0217db24
_021715c0: .word data_ov61_0217db2c
_021715c4: .word data_ov61_0217db5c
.global func_ov61_021715c8
arm_func_start func_ov61_021715c8
func_ov61_021715c8: ; 0x021715c8
stmdb sp!, {r4, r5, r6, lr}
movs r6, r0
mov r5, r1
mov r4, r2
bne _021715f0
ldr r0, _0217162c ; =data_ov61_0217db98
ldr r1, _02171630 ; =data_ov61_0217dba8
ldr r2, _02171634 ; =data_ov61_0217db6c
mov r3, #0x2f
bl func_02042f80
_021715f0:
cmp r5, #0
bne _0217160c
ldr r0, _02171638 ; =data_ov61_0217dbb8
ldr r1, _02171630 ; =data_ov61_0217dba8
ldr r2, _02171634 ; =data_ov61_0217db6c
mov r3, #0x30
bl func_02042f80
_0217160c:
mov r0, r6
mov r1, r5
mov r2, r4
bl strncpy
add r0, r6, r4
mov r1, #0
strb r1, [r0, #-1]
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_021715c8
_0217162c: .word data_ov61_0217db98
_02171630: .word data_ov61_0217dba8
_02171634: .word data_ov61_0217db6c
_02171638: .word data_ov61_0217dbb8
.global func_ov61_0217163c
arm_func_start func_ov61_0217163c
func_ov61_0217163c: ; 0x0217163c
stmdb sp!, {r0, r1, r2, r3}
add sp, sp, #0x10
bx lr
arm_func_end func_ov61_0217163c
.global func_ov61_02171648
arm_func_start func_ov61_02171648
func_ov61_02171648: ; 0x02171648
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #0x10
mov r6, r1
mov r7, r0
mov r5, r2
ldr r1, _02171710 ; =data_ov61_0217dbc4
mov r0, r6
mov r2, #7
ldr r4, [r7]
bl strncmp
cmp r0, #0
bne _02171704
ldr r1, _02171714 ; =data_ov61_0217dbcc
add r2, sp, #0
mov r0, r6
mov r3, #0x10
bl func_ov61_02171720
cmp r0, #0
beq _021716a0
add r0, sp, #0
bl func_0204902c
str r0, [r4, #0x418]
_021716a0:
ldr r1, _02171718 ; =data_ov61_0217dbd4
mov r0, r6
mov r2, r4
mov r3, #0x100
bl func_ov61_02171720
cmp r0, #0
moveq r0, #0
streqb r0, [r4]
cmp r5, #0
beq _021716f8
ldr r1, _0217171c ; =data_ov61_0217dbe0
mov r0, r6
bl strstr
cmp r0, #0
movne r0, #1
moveq r0, #0
cmp r0, #0
movne r2, #1
moveq r2, #0
mov r0, r7
mov r1, #4
bl func_ov61_02169c10
_021716f8:
add sp, sp, #0x10
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02171704:
mov r0, #0
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02171648
_02171710: .word data_ov61_0217dbc4
_02171714: .word data_ov61_0217dbcc
_02171718: .word data_ov61_0217dbd4
_0217171c: .word data_ov61_0217dbe0
.global func_ov61_02171720
arm_func_start func_ov61_02171720
func_ov61_02171720: ; 0x02171720
stmdb sp!, {r4, r5, r6, r7, r8, lr}
movs r5, r0
mov r8, r1
mov r4, r2
mov r7, r3
bne _0217174c
ldr r0, _02171804 ; =data_ov61_0217dbe8
ldr r1, _02171808 ; =data_ov61_0217dba8
ldr r2, _0217180c ; =data_ov61_0217db74
ldr r3, _02171810 ; =0x0000010d
bl func_02042f80
_0217174c:
cmp r8, #0
bne _02171768
ldr r0, _02171814 ; =data_ov61_0217dbf8
ldr r1, _02171808 ; =data_ov61_0217dba8
ldr r2, _0217180c ; =data_ov61_0217db74
ldr r3, _02171818 ; =0x0000010e
bl func_02042f80
_02171768:
cmp r4, #0
bne _02171784
ldr r0, _0217181c ; =data_ov61_0217dc04
ldr r1, _02171808 ; =data_ov61_0217dba8
ldr r2, _0217180c ; =data_ov61_0217db74
ldr r3, _02171820 ; =0x0000010f
bl func_02042f80
_02171784:
cmp r7, #0
bgt _021717a0
ldr r0, _02171824 ; =data_ov61_0217dc14
ldr r1, _02171808 ; =data_ov61_0217dba8
ldr r2, _0217180c ; =data_ov61_0217db74
mov r3, #0x110
bl func_02042f80
_021717a0:
ldrsb r6, [r8]
mov r0, r5
mov r1, r8
bl strstr
movs r5, r0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
mov r0, r8
bl strlen
add r1, r5, r0
mov r3, #0
sub r0, r7, #1
b _021717dc
_021717d4:
strb r2, [r4, r3]
add r3, r3, #1
_021717dc:
cmp r3, r0
bge _021717f4
ldrsb r2, [r1, r3]
cmp r2, #0
cmpne r2, r6
bne _021717d4
_021717f4:
mov r0, #0
strb r0, [r4, r3]
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02171720
_02171804: .word data_ov61_0217dbe8
_02171808: .word data_ov61_0217dba8
_0217180c: .word data_ov61_0217db74
_02171810: .word 0x0000010d
_02171814: .word data_ov61_0217dbf8
_02171818: .word 0x0000010e
_0217181c: .word data_ov61_0217dc04
_02171820: .word 0x0000010f
_02171824: .word data_ov61_0217dc14
.global func_ov61_02171828
arm_func_start func_ov61_02171828
func_ov61_02171828: ; 0x02171828
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #8
mov ip, #0
mov r4, r2
mov r5, r0
mov r0, r1
add r2, sp, #4
add r3, sp, #0
mov r1, ip
str ip, [sp, #4]
str ip, [sp]
bl func_ov61_0216681c
mvn r1, #0
cmp r0, r1
bne _0217189c
ldr r1, _0217190c ; =data_ov61_0217dc1c
mov r0, r5
bl func_ov61_0217163c
ldr r2, _02171910 ; =data_ov61_0217dc30
mov r0, r5
mov r1, #5
bl func_ov61_02171aec
mov r0, r5
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
add sp, sp, #8
mov r0, #3
ldmia sp!, {r3, r4, r5, pc}
_0217189c:
cmp r0, #0
ble _021718fc
ldr r0, [sp]
cmp r0, #0
beq _021718d0
ldr r1, _02171914 ; =data_ov61_0217dc68
mov r0, r5
bl func_ov61_0217163c
mov r0, #4
str r0, [r4]
add sp, sp, #8
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_021718d0:
ldr r0, [sp, #4]
cmp r0, #0
beq _021718fc
ldr r1, _02171918 ; =data_ov61_0217dc80
mov r0, r5
bl func_ov61_0217163c
mov r0, #3
str r0, [r4]
add sp, sp, #8
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_021718fc:
mov r0, #0
str r0, [r4]
add sp, sp, #8
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02171828
_0217190c: .word data_ov61_0217dc1c
_02171910: .word data_ov61_0217dc30
_02171914: .word data_ov61_0217dc68
_02171918: .word data_ov61_0217dc80
.global func_ov61_0217191c
arm_func_start func_ov61_0217191c
func_ov61_0217191c: ; 0x0217191c
stmdb sp!, {r4, r5, r6, r7, r8, lr}
movs r7, r1
mov r8, r0
mov r6, r2
mov r5, r3
ldr r4, [sp, #0x18]
bne _0217194c
ldr r0, _02171ac4 ; =data_ov61_0217dc98
ldr r1, _02171ac8 ; =data_ov61_0217dba8
ldr r2, _02171acc ; =data_ov61_0217db84
ldr r3, _02171ad0 ; =0x00000199
bl func_02042f80
_0217194c:
cmp r5, #0
bne _02171968
ldr r0, _02171ad4 ; =data_ov61_0217dbf8
ldr r1, _02171ac8 ; =data_ov61_0217dba8
ldr r2, _02171acc ; =data_ov61_0217db84
ldr r3, _02171ad8 ; =0x0000019a
bl func_02042f80
_02171968:
cmp r4, #0
bne _02171984
ldr r0, _02171adc ; =data_ov61_0217dc04
ldr r1, _02171ac8 ; =data_ov61_0217dba8
ldr r2, _02171acc ; =data_ov61_0217db84
ldr r3, _02171ae0 ; =0x0000019b
bl func_02042f80
_02171984:
ldr r1, [r6]
ldrsb r0, [r7, r1]
add r3, r7, r1
cmp r0, #0x5c
beq _021719c0
ldr r2, _02171ae4 ; =data_ov61_0217dca8
mov r0, r8
mov r1, #1
bl func_ov61_02171aec
mov r0, r8
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_021719c0:
ldrsb r1, [r3, #1]
add r7, r3, #2
mov r2, #0
cmp r1, #0x5c
beq _02171a4c
ldr r0, _02171ae8 ; =0x000001ff
_021719d8:
cmp r1, #0
bne _02171a08
ldr r2, _02171ae4 ; =data_ov61_0217dca8
mov r0, r8
mov r1, #1
bl func_ov61_02171aec
mov r0, r8
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_02171a08:
cmp r2, r0
bne _02171a38
ldr r2, _02171ae4 ; =data_ov61_0217dca8
mov r0, r8
mov r1, #1
bl func_ov61_02171aec
mov r0, r8
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_02171a38:
strb r1, [r5], #1
ldrsb r1, [r7], #1
add r2, r2, #1
cmp r1, #0x5c
bne _021719d8
_02171a4c:
mov r1, #0
strb r1, [r5]
ldr r0, _02171ae8 ; =0x000001ff
b _02171a94
_02171a5c:
cmp r1, r0
bne _02171a8c
ldr r2, _02171ae4 ; =data_ov61_0217dca8
mov r0, r8
mov r1, #1
bl func_ov61_02171aec
mov r0, r8
mov r1, #3
mov r2, #1
bl func_ov61_02169c10
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_02171a8c:
strb r2, [r4], #1
add r1, r1, #1
_02171a94:
ldrsb r2, [r7], #1
cmp r2, #0x5c
cmpne r2, #0
bne _02171a5c
mov r0, #0
strb r0, [r4]
sub r1, r7, r3
ldr r2, [r6]
sub r1, r1, #1
add r1, r2, r1
str r1, [r6]
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_0217191c
_02171ac4: .word data_ov61_0217dc98
_02171ac8: .word data_ov61_0217dba8
_02171acc: .word data_ov61_0217db84
_02171ad0: .word 0x00000199
_02171ad4: .word data_ov61_0217dbf8
_02171ad8: .word 0x0000019a
_02171adc: .word data_ov61_0217dc04
_02171ae0: .word 0x0000019b
_02171ae4: .word data_ov61_0217dca8
_02171ae8: .word 0x000001ff
.global func_ov61_02171aec
arm_func_start func_ov61_02171aec
func_ov61_02171aec: ; 0x02171aec
stmdb sp!, {r3, r4, r5, lr}
ldr r4, [r0]
mov r5, r1
mov r1, r2
mov r0, r4
mov r2, #0x100
bl func_ov61_021715c8
str r5, [r4, #0x418]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02171aec
.global func_ov61_02171b10
arm_func_start func_ov61_02171b10
func_ov61_02171b10: ; 0x02171b10
ldr ip, _02171b20 ; =func_ov61_021715c8
ldr r0, [r0]
mov r2, #0x100
bx ip
.align 2, 0
arm_func_end func_ov61_02171b10
_02171b20: .word func_ov61_021715c8
.global func_ov61_02171b24
arm_func_start func_ov61_02171b24
func_ov61_02171b24: ; 0x02171b24
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0x14
movs r7, r0
ldreq r0, _02171bb0 ; =data_ov61_02181144
mov r6, r1
ldreq r7, [r0, #4]
mov r5, r2
mov r4, r3
cmp r7, #0
bne _02171b60
ldr r0, _02171bb4 ; =data_ov61_0217dcdc
ldr r1, _02171bb8 ; =data_ov61_0217dce0
ldr r2, _02171bbc ; =data_ov61_0217dcc0
mov r3, #0x78
bl func_02042f80
_02171b60:
mov r0, r6
bl func_ov61_02166654
mov r3, #0
mov r2, #1
str r0, [sp]
add r0, sp, #0
mov r1, r4
str r5, [sp, #4]
str r3, [sp, #0xc]
str r2, [sp, #8]
bl func_ov61_02171fe4
ldr r0, [r7]
add r1, sp, #0
bl func_ov61_0216628c
mov r0, r7
mov r1, r6
bl func_ov61_02172080
bl func_ov61_02172060
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02171b24
_02171bb0: .word data_ov61_02181144
_02171bb4: .word data_ov61_0217dcdc
_02171bb8: .word data_ov61_0217dce0
_02171bbc: .word data_ov61_0217dcc0
.global func_ov61_02171bc0
arm_func_start func_ov61_02171bc0
func_ov61_02171bc0: ; 0x02171bc0
stmdb sp!, {r4, lr}
mov r4, r2
bl func_ov61_02172080
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, pc}
mov r2, #0
mov r1, r4
str r2, [r0, #8]
bl func_ov61_02171fe4
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02171bc0
.global func_ov61_02171bec
arm_func_start func_ov61_02171bec
func_ov61_02171bec: ; 0x02171bec
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r6, r1
mov r5, r2
bl func_ov61_02172080
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r1, [r4, #4]
cmp r1, #0
bne _02171c3c
bl func_ov61_02172060
ldr r1, [r5]
ldr r0, [r0]
add r0, r1, r0
bl func_ov61_02171f80
mov r1, r0
mov r0, r4
bl func_ov61_02171fe4
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02171c3c:
cmp r1, #1
bne _02171c6c
bl func_ov61_02172060
mov r3, r0
ldmia r5, {r0, r1}
ldmia r3, {r2, r3}
bl func_02000c60
bl func_ov61_02171f98
mov r1, r0
mov r0, r4
bl func_ov61_02171fe4
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02171c6c:
mov r0, r7
mov r1, r6
mov r2, r5
bl func_ov61_02171e08
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_02171bec
.global func_ov61_02171c80
arm_func_start func_ov61_02171c80
func_ov61_02171c80: ; 0x02171c80
stmdb sp!, {r3, r4, r5, lr}
mov r5, r2
bl func_ov61_02172080
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r1, [r4, #4]
cmp r1, #0
bne _02171cc8
bl func_ov61_02172060
ldr r1, [r0]
ldr r0, [r5]
sub r0, r1, r0
bl func_ov61_02171f80
mov r1, r0
mov r0, r4
bl func_ov61_02171fe4
ldmia sp!, {r3, r4, r5, pc}
_02171cc8:
cmp r1, #1
bne _02171cfc
bl func_ov61_02172060
ldr ip, [r0]
ldr r1, [r0, #4]
mov r0, ip
ldmia r5, {r2, r3}
bl func_020016e8
bl func_ov61_02171f98
mov r1, r0
mov r0, r4
bl func_ov61_02171fe4
ldmia sp!, {r3, r4, r5, pc}
_02171cfc:
bl func_ov61_02172060
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02171c80
.global func_ov61_02171d04
arm_func_start func_ov61_02171d04
func_ov61_02171d04: ; 0x02171d04
stmdb sp!, {r3, r4, r5, lr}
mov r5, r2
bl func_ov61_02172080
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r1, [r4, #4]
cmp r1, #0
bne _02171d4c
bl func_ov61_02172060
ldr r1, [r5]
ldr r0, [r0]
mul r0, r1, r0
bl func_ov61_02171f80
mov r1, r0
mov r0, r4
bl func_ov61_02171fe4
ldmia sp!, {r3, r4, r5, pc}
_02171d4c:
cmp r1, #1
bne _02171d7c
bl func_ov61_02172060
mov r3, r0
ldmia r5, {r0, r1}
ldmia r3, {r2, r3}
bl func_020011d0
bl func_ov61_02171f98
mov r1, r0
mov r0, r4
bl func_ov61_02171fe4
ldmia sp!, {r3, r4, r5, pc}
_02171d7c:
bl func_ov61_02172060
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02171d04
.global func_ov61_02171d84
arm_func_start func_ov61_02171d84
func_ov61_02171d84: ; 0x02171d84
stmdb sp!, {r3, r4, r5, lr}
mov r5, r2
bl func_ov61_02172080
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r1, [r4, #4]
cmp r1, #0
bne _02171dcc
bl func_ov61_02172060
ldr r0, [r0]
ldr r1, [r5]
bl func_02002c14
bl func_ov61_02171f80
mov r1, r0
mov r0, r4
bl func_ov61_02171fe4
ldmia sp!, {r3, r4, r5, pc}
_02171dcc:
cmp r1, #1
bne _02171e00
bl func_ov61_02172060
ldr ip, [r0]
ldr r1, [r0, #4]
mov r0, ip
ldmia r5, {r2, r3}
bl func_0200301c
bl func_ov61_02171f98
mov r1, r0
mov r0, r4
bl func_ov61_02171fe4
ldmia sp!, {r3, r4, r5, pc}
_02171e00:
bl func_ov61_02172060
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02171d84
.global func_ov61_02171e08
arm_func_start func_ov61_02171e08
func_ov61_02171e08: ; 0x02171e08
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r2
bl func_ov61_02172080
movs r6, r0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, [r6, #4]
cmp r0, #2
beq _02171e40
ldr r0, _02171ea0 ; =data_ov61_0217dcec
ldr r1, _02171ea4 ; =data_ov61_0217dce0
ldr r2, _02171ea8 ; =data_ov61_0217dccc
mov r3, #0xd1
bl func_02042f80
_02171e40:
mov r0, r6
bl func_ov61_02172060
mov r5, r0
bl strlen
mov r4, r0
mov r0, r7
bl strlen
add r0, r4, r0
add r0, r0, #1
bl func_ov61_0213e10c
mov r4, r0
mov r1, r5
bl strcpy
mov r0, r4
mov r1, r7
bl strcat
mov r0, r6
mov r1, r4
bl func_ov61_02171fe4
mov r0, r4
bl func_ov61_0213e13c
mov r0, r6
bl func_ov61_02172060
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02171e08
_02171ea0: .word data_ov61_0217dcec
_02171ea4: .word data_ov61_0217dce0
_02171ea8: .word data_ov61_0217dccc
.global func_ov61_02171eac
arm_func_start func_ov61_02171eac
func_ov61_02171eac: ; 0x02171eac
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r2
bl func_ov61_02172080
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r1, [r4, #4]
cmp r1, #0
bne _02171f04
bl func_ov61_02172060
ldr r1, [r4, #8]
add r1, r1, #1
str r1, [r4, #8]
ldr r2, [r7]
ldr r0, [r0]
mla r0, r1, r0, r2
bl func_02002c14
bl func_ov61_02171f80
mov r1, r0
mov r0, r4
bl func_ov61_02171fe4
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02171f04:
cmp r1, #1
bne _02171f78
bl func_ov61_02172060
ldr r1, [r4, #8]
mov r5, r0
add r6, r1, #1
mov r0, r6
str r6, [r4, #8]
bl func_02001154
ldmia r5, {r2, r3}
bl func_020011d0
mov r2, r0
mov r3, r1
ldmia r7, {r0, r1}
bl func_02000c60
mov r5, r0
mov r0, r6
mov r6, r1
bl func_02001154
mov r2, r0
mov r3, r1
mov r0, r5
mov r1, r6
bl func_0200301c
bl func_ov61_02171f98
mov r1, r0
mov r0, r4
bl func_ov61_02171fe4
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02171f78:
bl func_ov61_02172060
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_02171eac
.global func_ov61_02171f80
arm_func_start func_ov61_02171f80
func_ov61_02171f80: ; 0x02171f80
ldr r1, _02171f90 ; =data_ov61_02181144
str r0, [r1]
ldr r0, _02171f94 ; =data_ov61_02181144
bx lr
.align 2, 0
arm_func_end func_ov61_02171f80
_02171f90: .word data_ov61_02181144
_02171f94: .word data_ov61_02181144
.global func_ov61_02171f98
arm_func_start func_ov61_02171f98
func_ov61_02171f98: ; 0x02171f98
ldr r2, _02171fac ; =data_ov61_02181144
str r0, [r2, #8]
ldr r0, _02171fb0 ; =data_ov61_0218114c
str r1, [r2, #0xc]
bx lr
.align 2, 0
arm_func_end func_ov61_02171f98
_02171fac: .word data_ov61_02181144
_02171fb0: .word data_ov61_0218114c
.global func_ov61_02171fb4
arm_func_start func_ov61_02171fb4
func_ov61_02171fb4: ; 0x02171fb4
ldrsb r3, [r0]
mov r2, r0
cmp r3, #0
beq _02171fdc
mov r1, #0x2f
_02171fc8:
cmp r3, #0x5c
streqb r1, [r0]
ldrsb r3, [r0, #1]!
cmp r3, #0
bne _02171fc8
_02171fdc:
mov r0, r2
bx lr
arm_func_end func_ov61_02171fb4
.global func_ov61_02171fe4
arm_func_start func_ov61_02171fe4
func_ov61_02171fe4: ; 0x02171fe4
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r0, [r5, #4]
mov r4, r1
cmp r0, #0
ldreq r0, [r4]
streq r0, [r5, #0xc]
beq _02172054
cmp r0, #1
bne _02172020
ldr r1, [r4]
ldr r0, [r4, #4]
str r1, [r5, #0xc]
str r0, [r5, #0x10]
b _02172054
_02172020:
cmp r0, #2
bne _02172054
ldr r0, [r5, #0xc]
cmp r0, #0
beq _02172038
bl func_ov61_0213e13c
_02172038:
cmp r4, #0
moveq r0, #0
beq _02172050
mov r0, r4
bl func_ov61_02166654
bl func_ov61_02171fb4
_02172050:
str r0, [r5, #0xc]
_02172054:
mov r0, r5
bl func_ov61_02172060
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02171fe4
.global func_ov61_02172060
arm_func_start func_ov61_02172060
func_ov61_02172060: ; 0x02172060
cmp r0, #0
moveq r0, #0
bxeq lr
ldr r1, [r0, #4]
cmp r1, #2
ldreq r0, [r0, #0xc]
addne r0, r0, #0xc
bx lr
arm_func_end func_ov61_02172060
.global func_ov61_02172080
arm_func_start func_ov61_02172080
func_ov61_02172080: ; 0x02172080
stmdb sp!, {r4, r5, lr}
sub sp, sp, #0x14
movs r5, r0
ldreq r0, _021720cc ; =data_ov61_02181144
mov r4, r1
ldreq r5, [r0, #4]
cmp r5, #0
bne _021720b4
ldr r0, _021720d0 ; =data_ov61_0217dcdc
ldr r1, _021720d4 ; =data_ov61_0217dce0
ldr r2, _021720d8 ; =data_ov61_0217dcb8
ldr r3, _021720dc ; =0x00000153
bl func_02042f80
_021720b4:
str r4, [sp]
ldr r0, [r5]
add r1, sp, #0
bl func_ov61_021663d8
add sp, sp, #0x14
ldmia sp!, {r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02172080
_021720cc: .word data_ov61_02181144
_021720d0: .word data_ov61_0217dcdc
_021720d4: .word data_ov61_0217dce0
_021720d8: .word data_ov61_0217dcb8
_021720dc: .word 0x00000153
.global func_ov61_021720e0
arm_func_start func_ov61_021720e0
func_ov61_021720e0: ; 0x021720e0
stmdb sp!, {r3, lr}
ldr r0, _02172148 ; =data_ov61_0217dd08
mvn r1, #0
ldr r0, [r0]
cmp r0, r1
beq _0217210c
mov r1, #2
bl func_ov61_02166aac
ldr r0, _02172148 ; =data_ov61_0217dd08
ldr r0, [r0]
bl func_ov61_02166a98
_0217210c:
ldr r0, _02172148 ; =data_ov61_0217dd08
mvn r1, #0
str r1, [r0]
bl func_ov61_02172a18
ldr r0, _0217214c ; =data_ov61_02181154
ldr r0, [r0, #0xc]
cmp r0, #0
ldmeqia sp!, {r3, pc}
bl func_ov61_0213e13c
ldr r0, _0217214c ; =data_ov61_02181154
mov r1, #0
str r1, [r0, #0xc]
str r1, [r0, #0x2c]
str r1, [r0]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021720e0
_02172148: .word data_ov61_0217dd08
_0217214c: .word data_ov61_02181154
.global func_ov61_02172150
arm_func_start func_ov61_02172150
func_ov61_02172150: ; 0x02172150
ldr r1, _0217216c ; =data_ov61_0217dd08
mvn r0, #0
ldr r1, [r1]
cmp r1, r0
movne r0, #1
moveq r0, #0
bx lr
.align 2, 0
arm_func_end func_ov61_02172150
_0217216c: .word data_ov61_0217dd08
.global func_ov61_02172170
arm_func_start func_ov61_02172170
func_ov61_02172170: ; 0x02172170
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
ldr r0, _021722b8 ; =data_ov61_0217dd08
mvn r1, #0
ldr r0, [r0]
cmp r0, r1
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
ldr r1, _021722bc ; =data_ov61_02181154
ldr r1, [r1, #0x10]
cmp r1, #5
movne r0, #0
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
bl func_ov61_021723f4
cmp r0, #0
beq _0217229c
mov r7, #0
ldr r10, _021722bc ; =data_ov61_02181154
ldr r9, _021722b8 ; =data_ov61_0217dd08
mov r8, #0x100
mov r6, r7
mov r4, r7
_021721c4:
ldr r1, [r10, #0x2c]
ldr r0, [r10]
sub r0, r1, r0
cmp r0, #0x80
bge _02172208
cmp r1, #0x100
strlt r8, [r10, #0x2c]
movge r0, r1, lsl #0x1
strge r0, [r10, #0x2c]
ldr r1, [r10, #0x2c]
ldr r0, [r10, #0xc]
add r1, r1, #1
bl func_ov61_0213e120
str r0, [r10, #0xc]
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02172208:
ldr r5, [r10]
ldr r1, [r10, #0xc]
ldr r2, [r10, #0x2c]
ldr r0, [r9]
mov r3, r7
add r1, r1, r5
sub r2, r2, r5
bl func_ov61_02166bac
cmp r0, #0
bgt _0217223c
bl func_ov61_021720e0
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_0217223c:
ldr r1, [r10]
add r1, r1, r0
str r1, [r10]
ldr r0, [r10, #0xc]
strb r6, [r0, r1]
ldr r0, [r10, #0xc]
ldr r1, [r10]
bl func_ov61_0217288c
ldr r1, [r10]
mov r5, r0
cmp r5, r1
streq r4, [r10]
beq _0217228c
ldr r0, [r10, #0xc]
sub r2, r1, r5
add r1, r0, r5
bl func_020435b4
ldr r0, [r10]
sub r0, r0, r5
str r0, [r10]
_0217228c:
ldr r0, [r9]
bl func_ov61_021723f4
cmp r0, #0
bne _021721c4
_0217229c:
ldr r1, _021722b8 ; =data_ov61_0217dd08
mvn r0, #0
ldr r1, [r1]
cmp r1, r0
moveq r0, #0
movne r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
.align 2, 0
arm_func_end func_ov61_02172170
_021722b8: .word data_ov61_0217dd08
_021722bc: .word data_ov61_02181154
.global func_ov61_021722c0
arm_func_start func_ov61_021722c0
func_ov61_021722c0: ; 0x021722c0
stmdb sp!, {r4, lr}
ldr r2, _02172304 ; =data_ov61_0217dd08
cmp r1, #0
ldr r4, [r2, #8]
mov lr, #0
ldmleia sp!, {r4, pc}
_021722d8:
ldrsb ip, [r0, lr]
ldrsb r3, [r4]
eor r3, ip, r3
strb r3, [r0, lr]
ldrsb r3, [r4, #1]!
add lr, lr, #1
cmp r3, #0
ldreq r4, [r2, #8]
cmp lr, r1
blt _021722d8
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021722c0
_02172304: .word data_ov61_0217dd08
.global func_ov61_02172308
arm_func_start func_ov61_02172308
func_ov61_02172308: ; 0x02172308
stmdb sp!, {r4, lr}
sub sp, sp, #0x100
ldr lr, _021723cc ; =data_ov61_0217a4e3
add ip, sp, #0
mov r4, r0
mov r3, #0x80
_02172320:
ldrb r2, [lr]
ldrb r0, [lr, #1]
add lr, lr, #2
strb r2, [ip]
strb r0, [ip, #1]
add ip, ip, #2
subs r3, r3, #1
bne _02172320
ldr r2, _021723d0 ; =data_ov61_02181154
add r0, sp, #0
ldr r3, [r2, #0x24]
eor r3, r3, #1
str r3, [r2, #0x24]
bl strcat
ldr r1, _021723d4 ; =data_ov61_0217dd78
add r0, sp, #0
bl strcat
add r1, sp, #0
mov r0, r4
bl strstr
movs r4, r0
addeq sp, sp, #0x100
moveq r0, #0
ldmeqia sp!, {r4, pc}
add r0, sp, #0
bl strlen
ldr r1, _021723d0 ; =data_ov61_02181154
ldr r2, _021723d8 ; =data_ov61_02181184
ldr r1, [r1, #0x24]
add r3, r4, r0
add r0, r2, r1, lsl #8
mov r2, r0
b _021723ac
_021723a4:
ldrsb r1, [r3], #1
strb r1, [r2], #1
_021723ac:
ldrsb r1, [r3]
cmp r1, #0
cmpne r1, #0x5c
bne _021723a4
mov r1, #0
strb r1, [r2]
add sp, sp, #0x100
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02172308
_021723cc: .word data_ov61_0217a4e3
_021723d0: .word data_ov61_02181154
_021723d4: .word data_ov61_0217dd78
_021723d8: .word data_ov61_02181184
.global func_ov61_021723dc
arm_func_start func_ov61_021723dc
func_ov61_021723dc: ; 0x021723dc
stmdb sp!, {r3, lr}
bl func_ov61_02172308
cmp r0, #0
ldreq r0, _021723f0 ; =data_ov61_0217dd74
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021723dc
_021723f0: .word data_ov61_0217dd74
.global func_ov61_021723f4
arm_func_start func_ov61_021723f4
func_ov61_021723f4: ; 0x021723f4
ldr ip, _021723fc ; =func_ov61_02166914
bx ip
.align 2, 0
arm_func_end func_ov61_021723f4
_021723fc: .word func_ov61_02166914
.global func_ov61_02172400
arm_func_start func_ov61_02172400
func_ov61_02172400: ; 0x02172400
sub r3, r1, #6
mov r2, r0
cmp r3, #0
ble _02172460
_02172410:
ldrsb r1, [r2]
cmp r1, #0x5c
ldreqsb r1, [r2, #1]
cmpeq r1, #0x66
ldreqsb r1, [r2, #2]
cmpeq r1, #0x69
ldreqsb r1, [r2, #3]
cmpeq r1, #0x6e
ldreqsb r1, [r2, #4]
cmpeq r1, #0x61
ldreqsb r1, [r2, #5]
cmpeq r1, #0x6c
ldreqsb r1, [r2, #6]
cmpeq r1, #0x5c
moveq r0, r2
bxeq lr
add r2, r2, #1
sub r1, r2, r0
cmp r1, r3
blt _02172410
_02172460:
mov r0, #0
bx lr
arm_func_end func_ov61_02172400
.global func_ov61_02172468
arm_func_start func_ov61_02172468
func_ov61_02172468: ; 0x02172468
stmdb sp!, {r4, r5, r6, r7, r8, lr}
ldr r3, _021724e8 ; =data_ov61_02181154
mov r7, r0
ldr r0, [r3, #4]
mov r6, r1
cmp r0, #0
mov r5, r2
mvneq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
mov r4, #0
bl func_ov61_02165a68
cmp r0, #0
ble _021724e0
ldr r8, _021724e8 ; =data_ov61_02181154
_021724a0:
ldr r0, [r8, #4]
mov r1, r4
bl func_ov61_02165a70
ldr r1, [r0]
cmp r1, r7
ldreq r1, [r0, #4]
cmpeq r1, r6
ldreq r0, [r0, #8]
cmpeq r0, r5
moveq r0, r4
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
ldr r0, [r8, #4]
add r4, r4, #1
bl func_ov61_02165a68
cmp r4, r0
blt _021724a0
_021724e0:
mvn r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02172468
_021724e8: .word data_ov61_02181154
.global func_ov61_021724ec
arm_func_start func_ov61_021724ec
func_ov61_021724ec: ; 0x021724ec
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
ldr r1, _0217258c ; =data_ov61_0217dd7c
mov r6, r0
bl func_ov61_021723dc
bl func_0204902c
mov r5, r0
ldr r1, _02172590 ; =data_ov61_0217dd84
mov r0, r6
bl func_ov61_021723dc
bl func_0204902c
mov r4, r0
ldr r1, _02172594 ; =data_ov61_0217dd88
mov r0, r6
bl func_ov61_021723dc
mov r6, r0
mov r0, #0
mov r1, r4
mov r2, r0
bl func_ov61_02172468
mov r4, r0
mvn r0, #0
cmp r4, r0
addeq sp, sp, #4
ldmeqia sp!, {r3, r4, r5, r6, pc}
ldr r0, _02172598 ; =data_ov61_02181154
mov r1, r4
ldr r0, [r0, #4]
bl func_ov61_02165a70
cmp r5, #0
movgt r1, #1
str r5, [r0, #8]
mov r2, #0
movle r1, #0
mov r0, r4
mov r3, r6
str r2, [sp]
bl func_ov61_02172914
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_021724ec
_0217258c: .word data_ov61_0217dd7c
_02172590: .word data_ov61_0217dd84
_02172594: .word data_ov61_0217dd88
_02172598: .word data_ov61_02181154
.global func_ov61_0217259c
arm_func_start func_ov61_0217259c
func_ov61_0217259c: ; 0x0217259c
stmdb sp!, {r3, r4, r5, lr}
ldr r1, _0217261c ; =data_ov61_0217dd90
mov r5, r0
bl func_ov61_021723dc
bl func_0204902c
mov r4, r0
ldr r1, _02172620 ; =data_ov61_0217dd84
mov r0, r5
bl func_ov61_021723dc
bl func_0204902c
mov r1, r0
mov r0, #3
mov r2, #0
bl func_ov61_02172468
mov r5, r0
mvn r0, #0
cmp r5, r0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r0, _02172624 ; =data_ov61_02181154
mov r1, r5
ldr r0, [r0, #4]
bl func_ov61_02165a70
cmp r4, #0
movgt r1, #1
mov r2, #0
str r4, [r0, #8]
movle r1, #0
mov r0, r5
mov r3, r2
str r2, [sp]
bl func_ov61_02172914
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0217259c
_0217261c: .word data_ov61_0217dd90
_02172620: .word data_ov61_0217dd84
_02172624: .word data_ov61_02181154
.global func_ov61_02172628
arm_func_start func_ov61_02172628
func_ov61_02172628: ; 0x02172628
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
sub sp, sp, #4
ldr r1, _021726f0 ; =data_ov61_0217dd98
mov r4, r0
bl func_ov61_021723dc
bl func_0204902c
mov r7, r0
ldr r1, _021726f4 ; =data_ov61_0217dd84
mov r0, r4
bl func_ov61_021723dc
bl func_0204902c
mov r6, r0
ldr r1, _021726f8 ; =data_ov61_0217dda0
mov r0, r4
bl func_ov61_021723dc
bl func_0204902c
mov r5, r0
ldr r1, _021726fc ; =data_ov61_0217dda4
mov r0, r4
bl func_ov61_021723dc
bl func_0204902c
mov r8, r0
mov r1, r6
mov r2, r5
mov r0, #1
bl func_ov61_02172468
mov r5, r0
mvn r0, #0
cmp r5, r0
addeq sp, sp, #4
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc}
ldr r1, _02172700 ; =data_ov61_0217dda8
mov r0, r4
bl func_ov61_021723dc
bl func_0204902c
mov r6, r0
ldr r1, _02172704 ; =data_ov61_0217ddb0
mov r0, r4
bl strstr
cmp r0, #0
ldreq r3, _02172708 ; =data_ov61_0217dd74
moveq r6, #0
addne r3, r0, #6
mov r0, r5
mov r1, r7
mov r2, r8
str r6, [sp]
bl func_ov61_02172914
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02172628
_021726f0: .word data_ov61_0217dd98
_021726f4: .word data_ov61_0217dd84
_021726f8: .word data_ov61_0217dda0
_021726fc: .word data_ov61_0217dda4
_02172700: .word data_ov61_0217dda8
_02172704: .word data_ov61_0217ddb0
_02172708: .word data_ov61_0217dd74
.global func_ov61_0217270c
arm_func_start func_ov61_0217270c
func_ov61_0217270c: ; 0x0217270c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
ldr r1, _02172794 ; =data_ov61_0217ddb8
mov r7, r0
bl func_ov61_021723dc
bl func_0204902c
mov r6, r0
ldr r1, _02172798 ; =data_ov61_0217dda0
mov r0, r7
bl func_ov61_021723dc
bl func_0204902c
mov r5, r0
ldr r1, _0217279c ; =data_ov61_0217dd84
mov r0, r7
bl func_ov61_021723dc
bl func_0204902c
mov r4, r0
ldr r1, _021727a0 ; =data_ov61_0217dda4
mov r0, r7
bl func_ov61_021723dc
bl func_0204902c
mov r1, r4
mov r4, r0
mov r2, r5
mov r0, #2
bl func_ov61_02172468
mvn r1, #0
cmp r0, r1
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
mov r3, #0
mov r1, r6
mov r2, r4
str r3, [sp]
bl func_ov61_02172914
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0217270c
_02172794: .word data_ov61_0217ddb8
_02172798: .word data_ov61_0217dda0
_0217279c: .word data_ov61_0217dd84
_021727a0: .word data_ov61_0217dda4
.global func_ov61_021727a4
arm_func_start func_ov61_021727a4
func_ov61_021727a4: ; 0x021727a4
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
ldr r1, _0217287c ; =data_ov61_0217ddc0
mov r5, r0
mov r3, #0
mov r2, #8
strb r3, [r5, r4]
bl strncmp
cmp r0, #0
bne _021727dc
mov r0, r5
mov r1, r4
bl func_ov61_021724ec
ldmia sp!, {r3, r4, r5, pc}
_021727dc:
ldr r1, _02172880 ; =data_ov61_0217ddcc
mov r0, r5
mov r2, #9
bl strncmp
cmp r0, #0
bne _02172804
mov r0, r5
mov r1, r4
bl func_ov61_0217259c
ldmia sp!, {r3, r4, r5, pc}
_02172804:
ldr r1, _02172880 ; =data_ov61_0217ddcc
mov r0, r5
mov r2, #9
bl strncmp
cmp r0, #0
bne _0217282c
mov r0, r5
mov r1, r4
bl func_ov61_0217259c
ldmia sp!, {r3, r4, r5, pc}
_0217282c:
ldr r1, _02172884 ; =data_ov61_0217ddd8
mov r0, r5
mov r2, #8
bl strncmp
cmp r0, #0
bne _02172854
mov r0, r5
mov r1, r4
bl func_ov61_02172628
ldmia sp!, {r3, r4, r5, pc}
_02172854:
ldr r1, _02172888 ; =data_ov61_0217dde4
mov r0, r5
mov r2, #8
bl strncmp
cmp r0, #0
ldmneia sp!, {r3, r4, r5, pc}
mov r0, r5
mov r1, r4
bl func_ov61_0217270c
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_021727a4
_0217287c: .word data_ov61_0217ddc0
_02172880: .word data_ov61_0217ddcc
_02172884: .word data_ov61_0217ddd8
_02172888: .word data_ov61_0217dde4
.global func_ov61_0217288c
arm_func_start func_ov61_0217288c
func_ov61_0217288c: ; 0x0217288c
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
mov r9, r1
mov r10, r0
mov r7, r9
bl func_ov61_02172400
mov r6, r0
ldr r5, _0217290c ; =data_ov61_0217dd54
ldr r4, _02172910 ; =data_ov61_0217dd08
b _021728f4
_021728b0:
sub r8, r6, r10
mov r0, r10
mov r1, r8
str r5, [r4, #8]
bl func_ov61_021722c0
mov r0, r10
mov r1, r8
bl func_ov61_021727a4
add r0, r8, #7
sub r9, r9, r0
cmp r9, #0
add r10, r6, #7
ble _021728f4
mov r0, r10
mov r1, r9
bl func_ov61_02172400
mov r6, r0
_021728f4:
cmp r9, #0
ble _02172904
cmp r6, #0
bne _021728b0
_02172904:
sub r0, r7, r9
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
.align 2, 0
arm_func_end func_ov61_0217288c
_0217290c: .word data_ov61_0217dd54
_02172910: .word data_ov61_0217dd08
.global func_ov61_02172914
arm_func_start func_ov61_02172914
func_ov61_02172914: ; 0x02172914
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0x14
movs r7, r0
mov r6, r1
mov r5, r2
mov r4, r3
addmi sp, sp, #0x14
ldmmiia sp!, {r4, r5, r6, r7, pc}
ldr r0, _02172a14 ; =data_ov61_02181154
ldr r0, [r0, #4]
bl func_ov61_02165a68
cmp r7, r0
addge sp, sp, #0x14
ldmgeia sp!, {r4, r5, r6, r7, pc}
ldr r0, _02172a14 ; =data_ov61_02181154
mov r1, r7
ldr r0, [r0, #4]
bl func_ov61_02165a70
mov r3, r0
ldr ip, [r3, #0x18]
cmp ip, #0
beq _021729fc
ldr r0, [r3]
cmp r0, #3
addls pc, pc, r0, lsl #2
b _021729fc
_0217297c: ; jump table
b _0217298c ; case 0
b _021729a8 ; case 1
b _021729d0 ; case 2
b _021729ec ; case 3
_0217298c:
ldr r0, [r3, #0x14]
mov r2, r6
str r0, [sp]
ldmib r3, {r0, r1}
mov r3, r4
blx ip
b _021729fc
_021729a8:
str r6, [sp]
str r5, [sp, #4]
ldr r0, [sp, #0x28]
str r4, [sp, #8]
str r0, [sp, #0xc]
ldr r0, [r3, #0x14]
str r0, [sp, #0x10]
ldmib r3, {r0, r1, r2, r3}
blx ip
b _021729fc
_021729d0:
str r6, [sp]
str r5, [sp, #4]
ldr r0, [r3, #0x14]
str r0, [sp, #8]
ldmib r3, {r0, r1, r2, r3}
blx ip
b _021729fc
_021729ec:
ldmib r3, {r0, r1}
ldr r3, [r3, #0x14]
mov r2, r6
blx ip
_021729fc:
ldr r0, _02172a14 ; =data_ov61_02181154
mov r1, r7
ldr r0, [r0, #4]
bl func_ov61_02165cec
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02172914
_02172a14: .word data_ov61_02181154
.global func_ov61_02172a18
arm_func_start func_ov61_02172a18
func_ov61_02172a18: ; 0x02172a18
stmdb sp!, {r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #0x24
ldr r0, _02172afc ; =data_ov61_02181154
ldr r0, [r0, #4]
cmp r0, #0
addeq sp, sp, #0x24
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, pc}
bl func_ov61_02165a68
subs r4, r0, #1
bmi _02172adc
ldr r5, _02172b00 ; =data_ov61_0217a360
add r3, sp, #4
mov r2, #8
_02172a4c:
ldrb r1, [r5]
ldrb r0, [r5, #1]
add r5, r5, #2
strb r1, [r3]
strb r0, [r3, #1]
add r3, r3, #2
subs r2, r2, #1
bne _02172a4c
ldr r9, _02172b04 ; =data_ov61_0217dd64
ldr r5, _02172b08 ; =data_ov61_0217dd08
add r8, sp, #0x14
mov r7, #0xf
mov r6, #0
_02172a80:
add ip, sp, #4
add r3, sp, #0x14
mov r2, #8
_02172a8c:
ldrb r1, [ip]
ldrb r0, [ip, #1]
add ip, ip, #2
strb r1, [r3]
strb r0, [r3, #1]
add r3, r3, #2
subs r2, r2, #1
bne _02172a8c
mov r0, r8
mov r1, r7
str r9, [r5, #8]
bl func_ov61_021722c0
mov r0, r4
mov r1, r6
mov r2, r6
mov r3, r8
str r6, [sp]
bl func_ov61_02172914
subs r4, r4, #1
bpl _02172a80
_02172adc:
ldr r0, _02172afc ; =data_ov61_02181154
ldr r0, [r0, #4]
bl func_ov61_021659fc
ldr r0, _02172afc ; =data_ov61_02181154
mov r1, #0
str r1, [r0, #4]
add sp, sp, #0x24
ldmia sp!, {r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_02172a18
_02172afc: .word data_ov61_02181154
_02172b00: .word data_ov61_0217a360
_02172b04: .word data_ov61_0217dd64
_02172b08: .word data_ov61_0217dd08
.global func_ov61_02172b0c
arm_func_start func_ov61_02172b0c
func_ov61_02172b0c: ; 0x02172b0c
stmdb sp!, {r3, lr}
cmp r0, #0
ldreq r0, _02172b38 ; =data_ov61_02181154
ldreq r0, [r0, #0x28]
cmp r0, #0
moveq r0, r1
ldmeqia sp!, {r3, pc}
ldr r0, [r0, #0x20]
bl func_ov61_02165a70
ldr r0, [r0]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02172b0c
_02172b38: .word data_ov61_02181154
.global func_ov61_02172b3c
arm_func_start func_ov61_02172b3c
func_ov61_02172b3c: ; 0x02172b3c
stmdb sp!, {r3, lr}
cmp r0, #0
ldreq r0, _02172b68 ; =data_ov61_02181154
ldreq r0, [r0, #0x28]
cmp r0, #0
moveq r0, r1
ldmeqia sp!, {r3, pc}
ldr r0, [r0, #0x1c]
bl func_ov61_02165a70
ldr r0, [r0]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02172b3c
_02172b68: .word data_ov61_02181154
.global func_ov61_02172b6c
arm_func_start func_ov61_02172b6c
func_ov61_02172b6c: ; 0x02172b6c
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r3, r4, r5, lr}
movs r5, r0
ldreq r0, _02172bd0 ; =data_ov61_02181154
mov r4, r1
ldreq r5, [r0, #0x28]
mov r3, r2
cmp r5, #0
addeq r0, sp, #0x1c
beq _02172bc0
ldr r0, [r5, #0xc]
add r2, sp, #0x1c
mov r1, r4
blx r3
cmp r0, #0
bne _02172bc0
ldr r0, [r5, #0xc]
add r3, sp, #0x1c
mov r1, r4
mov r2, #0
bl func_ov61_02171b24
_02172bc0:
ldr r0, [r0]
ldmia sp!, {r3, r4, r5, lr}
add sp, sp, #0x10
bx lr
.align 2, 0
arm_func_end func_ov61_02172b6c
_02172bd0: .word data_ov61_02181154
.global func_ov61_02172bd4
arm_func_start func_ov61_02172bd4
func_ov61_02172bd4: ; 0x02172bd4
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r3, r4, r5, lr}
movs r5, r0
ldreq r0, _02172c40 ; =data_ov61_02181154
mov r4, r1
ldreq r5, [r0, #0x28]
mov r3, r2
cmp r5, #0
addeq r0, sp, #0x1c
beq _02172c28
ldr r0, [r5, #0xc]
add r2, sp, #0x1c
mov r1, r4
blx r3
cmp r0, #0
bne _02172c28
ldr r0, [r5, #0xc]
add r3, sp, #0x1c
mov r1, r4
mov r2, #1
bl func_ov61_02171b24
_02172c28:
ldr r2, [r0]
ldr r1, [r0, #4]
mov r0, r2
ldmia sp!, {r3, r4, r5, lr}
add sp, sp, #0x10
bx lr
.align 2, 0
arm_func_end func_ov61_02172bd4
_02172c40: .word data_ov61_02181154
.global func_ov61_02172c44
arm_func_start func_ov61_02172c44
func_ov61_02172c44: ; 0x02172c44
stmdb sp!, {r4, r5, r6, lr}
movs r6, r0
ldreq r0, _02172c9c ; =data_ov61_02181154
mov r5, r1
ldreq r6, [r0, #0x28]
mov r4, r3
cmp r6, #0
mov ip, r2
moveq r0, r4
ldmeqia sp!, {r4, r5, r6, pc}
ldr r0, [r6, #0xc]
mov r1, r5
mov r2, r4
blx ip
cmp r0, #0
ldmneia sp!, {r4, r5, r6, pc}
ldr r0, [r6, #0xc]
mov r1, r5
mov r3, r4
mov r2, #2
bl func_ov61_02171b24
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02172c44
_02172c9c: .word data_ov61_02181154
.global func_ov61_02172ca0
arm_func_start func_ov61_02172ca0
func_ov61_02172ca0: ; 0x02172ca0
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0x44
mov r6, r1
ldr r1, [sp, #0x58]
mov r7, r0
mov r5, r2
mov r4, r3
bl func_ov61_02172b0c
mov r3, r0
ldr r1, _02172cf8 ; =data_ov61_0217ddf0
add r0, sp, #4
mov r2, r6
bl func_020459b8
ldr ip, [sp, #0x58]
mov r0, r7
mov r2, r5
mov r3, r4
add r1, sp, #4
str ip, [sp]
bl func_ov61_02172b6c
add sp, sp, #0x44
ldmia sp!, {r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02172ca0
_02172cf8: .word data_ov61_0217ddf0
.global func_ov61_02172cfc
arm_func_start func_ov61_02172cfc
func_ov61_02172cfc: ; 0x02172cfc
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x48
mov r7, r1
ldr r1, [sp, #0x64]
mov r8, r0
mov r6, r2
mov r5, r3
ldr r4, [sp, #0x60]
bl func_ov61_02172b0c
mov r3, r0
ldr r1, _02172d58 ; =data_ov61_0217ddf0
add r0, sp, #8
mov r2, r7
bl func_020459b8
ldr ip, [sp, #0x64]
mov r3, r5
mov r0, r8
mov r2, r6
add r1, sp, #8
stmia sp, {r4, ip}
bl func_ov61_02172bd4
add sp, sp, #0x48
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02172cfc
_02172d58: .word data_ov61_0217ddf0
.global func_ov61_02172d5c
arm_func_start func_ov61_02172d5c
func_ov61_02172d5c: ; 0x02172d5c
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0x44
mov r6, r1
ldr r1, [sp, #0x58]
mov r7, r0
mov r5, r2
mov r4, r3
bl func_ov61_02172b0c
mov r3, r0
ldr r1, _02172db4 ; =data_ov61_0217ddf0
add r0, sp, #4
mov r2, r6
bl func_020459b8
ldr ip, [sp, #0x58]
mov r0, r7
mov r2, r5
mov r3, r4
add r1, sp, #4
str ip, [sp]
bl func_ov61_02172c44
add sp, sp, #0x44
ldmia sp!, {r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02172d5c
_02172db4: .word data_ov61_0217ddf0
.global func_ov61_02172db8
arm_func_start func_ov61_02172db8
func_ov61_02172db8: ; 0x02172db8
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0x44
mov r6, r1
ldr r1, [sp, #0x58]
mov r7, r0
mov r5, r2
mov r4, r3
bl func_ov61_02172b3c
mov r3, r0
ldr r1, _02172e10 ; =data_ov61_0217ddf8
add r0, sp, #4
mov r2, r6
bl func_020459b8
ldr ip, [sp, #0x58]
mov r0, r7
mov r2, r5
mov r3, r4
add r1, sp, #4
str ip, [sp]
bl func_ov61_02172b6c
add sp, sp, #0x44
ldmia sp!, {r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02172db8
_02172e10: .word data_ov61_0217ddf8
.global func_ov61_02172e14
arm_func_start func_ov61_02172e14
func_ov61_02172e14: ; 0x02172e14
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x48
mov r7, r1
ldr r1, [sp, #0x64]
mov r8, r0
mov r6, r2
mov r5, r3
ldr r4, [sp, #0x60]
bl func_ov61_02172b3c
mov r3, r0
ldr r1, _02172e70 ; =data_ov61_0217ddf8
add r0, sp, #8
mov r2, r7
bl func_020459b8
ldr ip, [sp, #0x64]
mov r3, r5
mov r0, r8
mov r2, r6
add r1, sp, #8
stmia sp, {r4, ip}
bl func_ov61_02172bd4
add sp, sp, #0x48
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02172e14
_02172e70: .word data_ov61_0217ddf8
.global func_ov61_02172e74
arm_func_start func_ov61_02172e74
func_ov61_02172e74: ; 0x02172e74
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0x44
mov r6, r1
ldr r1, [sp, #0x58]
mov r7, r0
mov r5, r2
mov r4, r3
bl func_ov61_02172b3c
mov r3, r0
ldr r1, _02172ecc ; =data_ov61_0217ddf8
add r0, sp, #4
mov r2, r6
bl func_020459b8
ldr ip, [sp, #0x58]
mov r0, r7
mov r2, r5
mov r3, r4
add r1, sp, #4
str ip, [sp]
bl func_ov61_02172c44
add sp, sp, #0x44
ldmia sp!, {r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02172e74
_02172ecc: .word data_ov61_0217ddf8
.global func_ov61_02172ed0
arm_func_start func_ov61_02172ed0
func_ov61_02172ed0: ; 0x02172ed0
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
ldrb r5, [r0]
mov lr, #0
mov r4, #1
and r6, r5, #1
mov r3, lr
mov ip, r4
mov r1, lr
mov r2, r4
_02172ef4:
add r7, r0, r4
ldrb r10, [r7, #-1]
cmp r10, r5
eor r10, r4, r10
movlo r8, ip
and r10, r10, #1
movhs r8, r3
cmp r5, #0x4f
movlo r9, r2
eor r10, lr, r10
movhs r9, r1
eor r10, r6, r10
eor r9, r10, r9
eors lr, r9, r8
beq _02172f3c
ldrb r8, [r7]
tst r8, #1
beq _02172f50
_02172f3c:
cmp lr, #0
ldreqb r7, [r7]
andeq r7, r7, #1
cmpeq r7, #1
bne _02172f58
_02172f50:
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02172f58:
add r4, r4, #1
cmp r4, #0x20
blt _02172ef4
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
arm_func_end func_ov61_02172ed0
.global func_ov61_02172f6c
arm_func_start func_ov61_02172f6c
func_ov61_02172f6c: ; 0x02172f6c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
movs r10, r0
bne _02172f8c
ldr r0, _02173078 ; =data_ov61_0217de38
ldr r1, _0217307c ; =data_ov61_0217de40
ldr r2, _02173080 ; =data_ov61_0217de00
mov r3, #0x2b
bl func_02042f80
_02172f8c:
bl func_ov61_021665e8
bl func_02045b7c
bl func_02045b48
ldr r5, _02173084 ; =0x2c0b02c1
mov r1, r0, lsr #0x1f
smull r2, r4, r5, r0
mov r8, #0
mov r7, #1
add r4, r1, r4, asr #4
mov r3, #0x5d
smull r1, r2, r3, r4
sub r4, r0, r1
add r0, r4, #0x21
strb r0, [r10]
mov r11, r8
mov r6, r7
mov r4, r3
_02172fd0:
add r9, r10, r7
ldrb r3, [r9, #-1]
ldrb r0, [r10]
cmp r3, r0
eor r3, r7, r3
movlo r1, r6
and r3, r3, #1
movhs r1, r11
cmp r0, #0x4f
movlo r2, #1
and r0, r0, #1
eor r3, r8, r3
movhs r2, #0
eor r0, r0, r3
eor r0, r0, r2
eor r8, r0, r1
bl func_02045b48
smull r2, r3, r5, r0
mov r1, r0, lsr #0x1f
add r3, r1, r3, asr #4
smull r1, r2, r4, r3
sub r3, r0, r1
add r0, r3, #0x21
cmp r8, #0
strb r0, [r9]
beq _02173044
ldrb r0, [r9]
tst r0, #1
beq _02173058
_02173044:
cmp r8, #0
ldreqb r0, [r9]
andeq r0, r0, #1
cmpeq r0, #1
bne _02173064
_02173058:
ldrb r0, [r9]
add r0, r0, #1
strb r0, [r9]
_02173064:
add r7, r7, #1
cmp r7, #0x20
blt _02172fd0
mov r0, r10
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02172f6c
_02173078: .word data_ov61_0217de38
_0217307c: .word data_ov61_0217de40
_02173080: .word data_ov61_0217de00
_02173084: .word 0x2c0b02c1
.global func_ov61_02173088
arm_func_start func_ov61_02173088
func_ov61_02173088: ; 0x02173088
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
mov r5, r0
ldr r0, _02173188 ; =data_ov61_0217de14
mov r4, r1
bl strlen
mov r7, r0
mov r0, r4
bl func_ov61_02172ed0
mov r10, #0
mov r11, r0
mov r8, r10
_021730b4:
cmp r11, #0
cmpne r10, #0
cmpne r10, #0xd
bne _021730ec
bl func_02045b48
ldr r1, _0217318c ; =0x2c0b02c1
mov r2, r0, lsr #0x1f
smull r3, r6, r1, r0
add r6, r2, r6, asr #4
mov r1, #0x5d
smull r2, r3, r1, r6
sub r6, r0, r2
add r0, r6, #0x21
b _02173168
_021730ec:
cmp r10, #1
cmpne r10, #0xe
ldreqsb r6, [r4, r10]
addne r0, r4, r10
ldrb r9, [r4, r10]
ldrnesb r6, [r0, #-1]
mov r1, r7
add r0, r10, r9
bl func_02002c14
mul r0, r6, r8
mov r6, r1
mov r1, r7
bl func_02002c14
ldr r0, _02173188 ; =data_ov61_0217de14
ldrsb r3, [r0, r6]
ldrsb r2, [r0, r1]
mla r0, r10, r9, r3
mov r1, r0, lsr #0x1f
rsb r0, r1, r0, lsl #27
add r0, r1, r0, ror #27
ldrb r0, [r4, r0]
eor r0, r0, r2
bl func_02042f68
ldr r1, _0217318c ; =0x2c0b02c1
smull r2, r3, r1, r0
mov r1, r0, lsr #0x1f
add r3, r1, r3, asr #4
mov r1, #0x5d
smull r2, r3, r1, r3
sub r3, r0, r2
add r0, r3, #0x21
_02173168:
strb r0, [r5, r10]
add r0, r8, #0x47
add r10, r10, #1
cmp r10, #0x20
add r8, r0, #0x4600
blt _021730b4
mov r0, r5
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02173088
_02173188: .word data_ov61_0217de14
_0217318c: .word 0x2c0b02c1
.global func_ov61_02173190
arm_func_start func_ov61_02173190
func_ov61_02173190: ; 0x02173190
mov ip, #0
_02173194:
cmp ip, #0
cmpne ip, #0xd
ldrneb r3, [r0, ip]
ldrneb r2, [r1, ip]
cmpne r3, r2
movne r0, #0
bxne lr
add ip, ip, #1
cmp ip, #0x20
blt _02173194
mov r0, #1
bx lr
arm_func_end func_ov61_02173190
.global func_ov61_021731c4
arm_func_start func_ov61_021731c4
func_ov61_021731c4: ; 0x021731c4
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
mov r5, r0
mov r0, r4
bl func_ov61_0213e10c
str r0, [r5]
cmp r0, #0
moveq r0, #0
strne r4, [r5, #4]
movne r0, #1
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_021731c4
.global func_ov61_021731f0
arm_func_start func_ov61_021731f0
func_ov61_021731f0: ; 0x021731f0
ldr r1, [r0, #4]
ldr r0, [r0, #8]
sub r0, r1, r0
bx lr
arm_func_end func_ov61_021731f0
.global func_ov61_02173200
arm_func_start func_ov61_02173200
func_ov61_02173200: ; 0x02173200
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldmib r5, {r0, r2}
mov r4, r1
cmp r2, r0
blt _0217322c
ldr r0, _02173244 ; =data_ov61_0217dea0
ldr r1, _02173248 ; =data_ov61_0217debc
ldr r2, _0217324c ; =data_ov61_0217de74
mov r3, #0x23
bl func_02042f80
_0217322c:
ldr r1, [r5, #8]
add r0, r1, #1
str r0, [r5, #8]
ldr r0, [r5]
strb r4, [r0, r1]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02173200
_02173244: .word data_ov61_0217dea0
_02173248: .word data_ov61_0217debc
_0217324c: .word data_ov61_0217de74
.global func_ov61_02173250
arm_func_start func_ov61_02173250
func_ov61_02173250: ; 0x02173250
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldmib r5, {r0, r2}
add r2, r2, #2
mov r4, r1
cmp r2, r0
ble _02173280
ldr r0, _021732b0 ; =data_ov61_0217dec8
ldr r1, _021732b4 ; =data_ov61_0217debc
ldr r2, _021732b8 ; =data_ov61_0217de88
mov r3, #0x2e
bl func_02042f80
_02173280:
ldr r2, [r5, #8]
mov r1, r4, asr #0x8
add r0, r2, #1
str r0, [r5, #8]
ldr r0, [r5]
strb r1, [r0, r2]
ldr r1, [r5, #8]
add r0, r1, #1
str r0, [r5, #8]
ldr r0, [r5]
strb r4, [r0, r1]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02173250
_021732b0: .word data_ov61_0217dec8
_021732b4: .word data_ov61_0217debc
_021732b8: .word data_ov61_0217de88
.global func_ov61_021732bc
arm_func_start func_ov61_021732bc
func_ov61_021732bc: ; 0x021732bc
stmdb sp!, {r4, r5, r6, lr}
movs r5, r1
mov r4, r2
mov r6, r0
cmpne r4, #0
ldmeqia sp!, {r4, r5, r6, pc}
mvn r0, #0
cmp r4, r0
bne _021732ec
mov r0, r5
bl strlen
mov r4, r0
_021732ec:
ldmib r6, {r0, r1}
add r1, r1, r4
cmp r1, r0
ble _02173310
ldr r0, _02173338 ; =data_ov61_0217deec
ldr r1, _0217333c ; =data_ov61_0217debc
ldr r2, _02173340 ; =data_ov61_0217de60
mov r3, #0x40
bl func_02042f80
_02173310:
ldr r3, [r6]
ldr r0, [r6, #8]
mov r1, r5
mov r2, r4
add r0, r3, r0
bl func_02043594
ldr r0, [r6, #8]
add r0, r0, r4
str r0, [r6, #8]
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_021732bc
_02173338: .word data_ov61_0217deec
_0217333c: .word data_ov61_0217debc
_02173340: .word data_ov61_0217de60
.global func_ov61_02173344
arm_func_start func_ov61_02173344
func_ov61_02173344: ; 0x02173344
stmdb sp!, {r4, r5, r6, lr}
mov r5, r1
mvn r1, #0
mov r6, r0
cmp r5, r1
ldreq r0, [r6, #8]
mov r4, r2
subeq r5, r0, r4
ldr r0, [r6, #8]
cmp r5, r0
ble _02173384
ldr r0, _021733d4 ; =data_ov61_0217df10
ldr r1, _021733d8 ; =data_ov61_0217debc
ldr r2, _021733dc ; =data_ov61_0217de4c
mov r3, #0x4f
bl func_02042f80
_02173384:
ldr r0, [r6, #8]
sub r0, r0, r5
cmp r4, r0
ble _021733a8
ldr r0, _021733e0 ; =data_ov61_0217df28
ldr r1, _021733d8 ; =data_ov61_0217debc
ldr r2, _021733dc ; =data_ov61_0217de4c
mov r3, #0x50
bl func_02042f80
_021733a8:
ldr r0, [r6]
ldr r1, [r6, #8]
add r0, r0, r5
sub r2, r1, r5
add r1, r0, r4
sub r2, r2, r4
bl func_020435b4
ldr r0, [r6, #8]
sub r0, r0, r4
str r0, [r6, #8]
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02173344
_021733d4: .word data_ov61_0217df10
_021733d8: .word data_ov61_0217debc
_021733dc: .word data_ov61_0217de4c
_021733e0: .word data_ov61_0217df28
.global func_ov61_021733e4
arm_func_start func_ov61_021733e4
func_ov61_021733e4: ; 0x021733e4
stmdb sp!, {r4, lr}
movs r4, r0
bne _02173404
ldr r0, _02173474 ; =data_ov61_0217e040
ldr r1, _02173478 ; =data_ov61_0217e048
ldr r2, _0217347c ; =data_ov61_0217dfd0
mov r3, #0x1b
bl func_02042f80
_02173404:
cmp r4, #0
moveq r0, #1
ldmeqia sp!, {r4, pc}
ldr r0, [r4, #0x24]
cmp r0, #0
moveq r0, #1
ldmeqia sp!, {r4, pc}
ldr r1, [r4, #0x1c]
mov r0, r4
add r1, r1, #1
str r1, [r4, #0x1c]
ldr r1, [r4, #0x24]
blx r1
ldr r0, [r4, #0x1c]
sub r0, r0, #1
str r0, [r4, #0x1c]
ldr r0, [r4, #0x14]
cmp r0, #0
beq _0217346c
ldr r0, [r4, #0x1c]
cmp r0, #0
bne _0217346c
mov r0, r4
bl func_ov61_021763c4
mov r0, #0
ldmia sp!, {r4, pc}
_0217346c:
mov r0, #1
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021733e4
_02173474: .word data_ov61_0217e040
_02173478: .word data_ov61_0217e048
_0217347c: .word data_ov61_0217dfd0
.global func_ov61_02173480
arm_func_start func_ov61_02173480
func_ov61_02173480: ; 0x02173480
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0xc
mov r6, r1
movs r7, r0
mov r5, r2
mov r4, r3
cmpne r6, #0
bne _021734b4
ldr r0, _02173590 ; =data_ov61_0217e058
ldr r1, _02173594 ; =data_ov61_0217e048
ldr r2, _02173598 ; =data_ov61_0217e004
mov r3, #0x3d
bl func_02042f80
_021734b4:
cmp r7, #0
cmpne r6, #0
addeq sp, sp, #0xc
moveq r0, #1
ldmeqia sp!, {r4, r5, r6, r7, pc}
ldr r0, [r7, #0x20]
cmp r0, #0
addeq sp, sp, #0xc
moveq r0, #1
ldmeqia sp!, {r4, r5, r6, r7, pc}
ldr r1, [r7, #0x1c]
ldr r0, [sp, #0x28]
add r1, r1, #1
cmp r0, #0
ldrne r0, [sp, #0x24]
str r1, [r7, #0x1c]
ldr r2, [r6, #0x24]
cmpne r0, #0
moveq r0, #0
streq r0, [sp, #0x24]
streq r0, [sp, #0x28]
add r2, r2, #1
str r2, [r6, #0x24]
ldr r0, [sp, #0x20]
ldr r1, [sp, #0x24]
str r0, [sp]
str r1, [sp, #4]
ldr r0, [sp, #0x28]
mov r1, r6
str r0, [sp, #8]
ldr ip, [r7, #0x20]
mov r0, r7
mov r2, r5
mov r3, r4
blx ip
ldr r0, [r7, #0x1c]
sub r0, r0, #1
str r0, [r7, #0x1c]
ldr r0, [r6, #0x24]
sub r0, r0, #1
str r0, [r6, #0x24]
ldr r0, [r7, #0x14]
cmp r0, #0
beq _02173584
ldr r0, [r7, #0x1c]
cmp r0, #0
bne _02173584
mov r0, r7
bl func_ov61_021763c4
add sp, sp, #0xc
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, pc}
_02173584:
mov r0, #1
add sp, sp, #0xc
ldmia sp!, {r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02173480
_02173590: .word data_ov61_0217e058
_02173594: .word data_ov61_0217e048
_02173598: .word data_ov61_0217e004
.global func_ov61_0217359c
arm_func_start func_ov61_0217359c
func_ov61_0217359c: ; 0x0217359c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
movs r7, r0
mov r6, r1
mov r5, r2
mov r4, r3
bne _021735c8
ldr r0, _02173678 ; =data_ov61_0217e070
ldr r1, _0217367c ; =data_ov61_0217e048
ldr r2, _02173680 ; =data_ov61_0217dfa0
mov r3, #0x69
bl func_02042f80
_021735c8:
cmp r7, #0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
str r6, [r7, #0x18]
ldr r0, [r7, #0x28]
cmp r0, #0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r1, [r7, #0x24]
cmp r4, #0
add r1, r1, #1
str r1, [r7, #0x24]
ldr ip, [r7, #8]
cmpne r5, #0
ldr r3, [ip, #0x1c]
moveq r5, #0
add r3, r3, #1
str r3, [ip, #0x1c]
moveq r4, r5
mov r2, r5
ldr r5, [r7, #0x28]
mov r0, r7
mov r1, r6
mov r3, r4
blx r5
ldr r0, [r7, #0x24]
sub r0, r0, #1
str r0, [r7, #0x24]
ldr r1, [r7, #8]
ldr r0, [r1, #0x1c]
sub r0, r0, #1
str r0, [r1, #0x1c]
ldr r0, [r7, #8]
ldr r1, [r0, #0x14]
cmp r1, #0
beq _02173670
ldr r1, [r0, #0x1c]
cmp r1, #0
bne _02173670
bl func_ov61_021763c4
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02173670:
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0217359c
_02173678: .word data_ov61_0217e070
_0217367c: .word data_ov61_0217e048
_02173680: .word data_ov61_0217dfa0
.global func_ov61_02173684
arm_func_start func_ov61_02173684
func_ov61_02173684: ; 0x02173684
stmdb sp!, {r3, r4, r5, r6, r7, lr}
movs r7, r0
mov r6, r1
mov r5, r2
mov r4, r3
bne _021736b0
ldr r0, _0217375c ; =data_ov61_0217e070
ldr r1, _02173760 ; =data_ov61_0217e048
ldr r2, _02173764 ; =data_ov61_0217df88
mov r3, #0x94
bl func_02042f80
_021736b0:
cmp r7, #0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, [r7, #0x2c]
cmp r0, #0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r1, [r7, #0x24]
cmp r5, #0
add r1, r1, #1
str r1, [r7, #0x24]
ldr ip, [r7, #8]
cmpne r6, #0
ldr r3, [ip, #0x1c]
moveq r6, #0
add r3, r3, #1
moveq r5, r6
str r3, [ip, #0x1c]
mov r2, r5
ldr r5, [r7, #0x2c]
mov r0, r7
mov r1, r6
mov r3, r4
blx r5
ldr r0, [r7, #0x24]
sub r0, r0, #1
str r0, [r7, #0x24]
ldr r1, [r7, #8]
ldr r0, [r1, #0x1c]
sub r0, r0, #1
str r0, [r1, #0x1c]
ldr r0, [r7, #8]
ldr r1, [r0, #0x14]
cmp r1, #0
beq _02173754
ldr r1, [r0, #0x1c]
cmp r1, #0
bne _02173754
bl func_ov61_021763c4
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02173754:
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02173684
_0217375c: .word data_ov61_0217e070
_02173760: .word data_ov61_0217e048
_02173764: .word data_ov61_0217df88
.global func_ov61_02173768
arm_func_start func_ov61_02173768
func_ov61_02173768: ; 0x02173768
stmdb sp!, {r3, r4, r5, lr}
movs r4, r0
mov r5, r1
bne _0217378c
ldr r0, _02173820 ; =data_ov61_0217e070
ldr r1, _02173824 ; =data_ov61_0217e048
ldr r2, _02173828 ; =data_ov61_0217df74
mov r3, #0xba
bl func_02042f80
_0217378c:
cmp r4, #0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, pc}
ldr r0, [r4, #0x30]
cmp r0, #0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, pc}
ldr r1, [r4, #0x24]
mov r0, r4
add r1, r1, #1
str r1, [r4, #0x24]
ldr r3, [r4, #8]
mov r1, r5
ldr r2, [r3, #0x1c]
add r2, r2, #1
str r2, [r3, #0x1c]
ldr r2, [r4, #0x30]
blx r2
ldr r0, [r4, #0x24]
sub r0, r0, #1
str r0, [r4, #0x24]
ldr r1, [r4, #8]
ldr r0, [r1, #0x1c]
sub r0, r0, #1
str r0, [r1, #0x1c]
ldr r0, [r4, #8]
ldr r1, [r0, #0x14]
cmp r1, #0
beq _02173818
ldr r1, [r0, #0x1c]
cmp r1, #0
bne _02173818
bl func_ov61_021763c4
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_02173818:
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02173768
_02173820: .word data_ov61_0217e070
_02173824: .word data_ov61_0217e048
_02173828: .word data_ov61_0217df74
.global func_ov61_0217382c
arm_func_start func_ov61_0217382c
func_ov61_0217382c: ; 0x0217382c
stmdb sp!, {r3, r4, r5, lr}
movs r4, r0
mov r5, r1
bne _02173850
ldr r0, _021738e4 ; =data_ov61_0217e070
ldr r1, _021738e8 ; =data_ov61_0217e048
ldr r2, _021738ec ; =data_ov61_0217df60
mov r3, #0xd9
bl func_02042f80
_02173850:
cmp r4, #0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, pc}
ldr r0, [r4, #0x34]
cmp r0, #0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, pc}
ldr r1, [r4, #0x24]
mov r0, r4
add r1, r1, #1
str r1, [r4, #0x24]
ldr r3, [r4, #8]
mov r1, r5
ldr r2, [r3, #0x1c]
add r2, r2, #1
str r2, [r3, #0x1c]
ldr r2, [r4, #0x34]
blx r2
ldr r0, [r4, #0x24]
sub r0, r0, #1
str r0, [r4, #0x24]
ldr r1, [r4, #8]
ldr r0, [r1, #0x1c]
sub r0, r0, #1
str r0, [r1, #0x1c]
ldr r0, [r4, #8]
ldr r1, [r0, #0x14]
cmp r1, #0
beq _021738dc
ldr r1, [r0, #0x1c]
cmp r1, #0
bne _021738dc
bl func_ov61_021763c4
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
_021738dc:
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_0217382c
_021738e4: .word data_ov61_0217e070
_021738e8: .word data_ov61_0217e048
_021738ec: .word data_ov61_0217df60
.global func_ov61_021738f0
arm_func_start func_ov61_021738f0
func_ov61_021738f0: ; 0x021738f0
stmdb sp!, {r3, r4, r5, r6, r7, lr}
movs r7, r0
mov r6, r1
mov r5, r2
mov r4, r3
bne _0217391c
ldr r0, _021739d8 ; =data_ov61_0217e070
ldr r1, _021739dc ; =data_ov61_0217e048
ldr r2, _021739e0 ; =data_ov61_0217dfb8
ldr r3, _021739e4 ; =0x00000101
bl func_02042f80
_0217391c:
cmp r7, #0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, [r7, #0x98]
mov r1, r6
bl func_ov61_02165a70
movs lr, r0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, [r7, #0x24]
cmp r4, #0
add r0, r0, #1
str r0, [r7, #0x24]
ldr ip, [r7, #8]
cmpne r5, #0
ldr r3, [ip, #0x1c]
moveq r5, #0
add r3, r3, #1
ldr r2, [sp, #0x18]
str r3, [ip, #0x1c]
str r2, [sp]
moveq r4, r5
mov r1, r6
ldr r6, [lr]
mov r0, r7
mov r2, r5
mov r3, r4
blx r6
ldr r0, [r7, #0x24]
sub r0, r0, #1
str r0, [r7, #0x24]
ldr r1, [r7, #8]
ldr r0, [r1, #0x1c]
sub r0, r0, #1
str r0, [r1, #0x1c]
ldr r0, [r7, #8]
ldr r1, [r0, #0x14]
cmp r1, #0
beq _021739d0
ldr r1, [r0, #0x1c]
cmp r1, #0
bne _021739d0
bl func_ov61_021763c4
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021739d0:
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_021738f0
_021739d8: .word data_ov61_0217e070
_021739dc: .word data_ov61_0217e048
_021739e0: .word data_ov61_0217dfb8
_021739e4: .word 0x00000101
.global func_ov61_021739e8
arm_func_start func_ov61_021739e8
func_ov61_021739e8: ; 0x021739e8
stmdb sp!, {r3, r4, r5, r6, r7, lr}
movs r7, r0
mov r6, r1
mov r5, r2
mov r4, r3
bne _02173a14
ldr r0, _02173ad0 ; =data_ov61_0217e070
ldr r1, _02173ad4 ; =data_ov61_0217e048
ldr r2, _02173ad8 ; =data_ov61_0217dfe8
ldr r3, _02173adc ; =0x0000012d
bl func_02042f80
_02173a14:
cmp r7, #0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, [r7, #0x9c]
mov r1, r6
bl func_ov61_02165a70
movs lr, r0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, [r7, #0x24]
cmp r4, #0
add r0, r0, #1
str r0, [r7, #0x24]
ldr ip, [r7, #8]
cmpne r5, #0
ldr r3, [ip, #0x1c]
moveq r5, #0
add r3, r3, #1
ldr r2, [sp, #0x18]
str r3, [ip, #0x1c]
str r2, [sp]
moveq r4, r5
mov r1, r6
ldr r6, [lr]
mov r0, r7
mov r2, r5
mov r3, r4
blx r6
ldr r0, [r7, #0x24]
sub r0, r0, #1
str r0, [r7, #0x24]
ldr r1, [r7, #8]
ldr r0, [r1, #0x1c]
sub r0, r0, #1
str r0, [r1, #0x1c]
ldr r0, [r7, #8]
ldr r1, [r0, #0x14]
cmp r1, #0
beq _02173ac8
ldr r1, [r0, #0x1c]
cmp r1, #0
bne _02173ac8
bl func_ov61_021763c4
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02173ac8:
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_021739e8
_02173ad0: .word data_ov61_0217e070
_02173ad4: .word data_ov61_0217e048
_02173ad8: .word data_ov61_0217dfe8
_02173adc: .word 0x0000012d
.global func_ov61_02173ae0
arm_func_start func_ov61_02173ae0
func_ov61_02173ae0: ; 0x02173ae0
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0xc
movs r7, r0
mov r6, r1
mov r5, r2
mov r4, r3
bne _02173b10
ldr r0, _02173bf8 ; =data_ov61_0217e040
ldr r1, _02173bfc ; =data_ov61_0217e048
ldr r2, _02173c00 ; =data_ov61_0217df4c
mov r3, #0x160
bl func_02042f80
_02173b10:
cmp r7, #0
addeq sp, sp, #0xc
moveq r0, #1
ldmeqia sp!, {r4, r5, r6, r7, pc}
ldr r0, [sp, #0x2c]
cmp r0, #0
ldrne ip, [r7, #0x28]
ldreq ip, [r7, #0x2c]
cmp ip, #0
addeq sp, sp, #0xc
moveq r0, #1
ldmeqia sp!, {r4, r5, r6, r7, pc}
ldr r0, [sp, #0x28]
ldr r1, [sp, #0x20]
cmp r0, #0
ldrne r0, [sp, #0x24]
mov r2, r5
cmpne r0, #0
moveq r0, #0
streq r0, [sp, #0x28]
streq r0, [sp, #0x24]
ldr r0, [r7, #0x1c]
cmp r6, #0
add r0, r0, #1
str r0, [r7, #0x1c]
ldrne r0, [r6, #0x24]
ldr lr, [sp, #0x28]
addne r0, r0, #1
strne r0, [r6, #0x24]
str r1, [sp]
ldr r0, [sp, #0x24]
mov r1, r6
str r0, [sp, #4]
mov r0, r7
mov r3, r4
str lr, [sp, #8]
blx ip
ldr r0, [r7, #0x1c]
cmp r6, #0
sub r0, r0, #1
str r0, [r7, #0x1c]
ldrne r0, [r6, #0x24]
subne r0, r0, #1
strne r0, [r6, #0x24]
ldr r0, [r7, #0x14]
cmp r0, #0
beq _02173bec
ldr r0, [r7, #0x1c]
cmp r0, #0
bne _02173bec
mov r0, r7
bl func_ov61_021763c4
add sp, sp, #0xc
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, pc}
_02173bec:
mov r0, #1
add sp, sp, #0xc
ldmia sp!, {r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02173ae0
_02173bf8: .word data_ov61_0217e040
_02173bfc: .word data_ov61_0217e048
_02173c00: .word data_ov61_0217df4c
.global func_ov61_02173c04
arm_func_start func_ov61_02173c04
func_ov61_02173c04: ; 0x02173c04
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
sub sp, sp, #4
ldr r4, [sp, #0x24]
movs r8, r0
mov r0, #0
mov r7, r1
mov r6, r2
mov r5, r3
str r0, [r4]
bne _02173c40
ldr r0, _02173cec ; =data_ov61_0217e040
ldr r1, _02173cf0 ; =data_ov61_0217e048
ldr r2, _02173cf4 ; =data_ov61_0217e020
ldr r3, _02173cf8 ; =0x00000197
bl func_02042f80
_02173c40:
cmp r8, #0
addeq sp, sp, #4
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc}
ldr r0, [r8, #0x30]
cmp r0, #0
addeq sp, sp, #4
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc}
ldr r0, [sp, #0x20]
ldr r1, [r8, #0x1c]
cmp r0, #0
cmpne r5, #0
moveq r5, #0
streq r5, [sp, #0x20]
add r1, r1, #1
str r1, [r8, #0x1c]
ldr r0, [sp, #0x20]
mov r1, r7
str r0, [sp]
ldr ip, [r8, #0x30]
mov r0, r8
mov r2, r6
mov r3, r5
blx ip
str r0, [r4]
ldr r0, [r8, #0x1c]
sub r0, r0, #1
str r0, [r8, #0x1c]
ldr r0, [r8, #0x14]
cmp r0, #0
beq _02173ce0
ldr r0, [r8, #0x1c]
cmp r0, #0
bne _02173ce0
mov r0, r8
bl func_ov61_021763c4
add sp, sp, #4
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
_02173ce0:
mov r0, #1
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02173c04
_02173cec: .word data_ov61_0217e040
_02173cf0: .word data_ov61_0217e048
_02173cf4: .word data_ov61_0217e020
_02173cf8: .word 0x00000197
.global func_ov61_02173cfc
arm_func_start func_ov61_02173cfc
func_ov61_02173cfc: ; 0x02173cfc
stmdb sp!, {r4, lr}
mov r4, r1
bl func_ov61_02176420
cmp r0, #0
ldmneia sp!, {r4, pc}
ldr r1, [r4]
mov r0, #0
str r0, [r1, #0xc]
ldr r1, [r4]
mov r2, #1
str r2, [r1, #0x10]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02173cfc
.global func_ov61_02173d2c
arm_func_start func_ov61_02173d2c
func_ov61_02173d2c: ; 0x02173d2c
stmdb sp!, {r4, lr}
mov r4, r1
bl func_ov61_02176420
cmp r0, #0
ldmneia sp!, {r4, pc}
ldr r0, [r4]
mov r1, #2
str r1, [r0, #0xc]
ldr r1, [r4]
mov r0, #0
str r0, [r1, #0x10]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02173d2c
.global func_ov61_02173d5c
arm_func_start func_ov61_02173d5c
func_ov61_02173d5c: ; 0x02173d5c
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x20
mov r5, r0
add r0, sp, #0x34
add r1, sp, #0x38
mov r4, r3
bl func_ov61_02176bd8
ldr r0, [sp, #0x38]
cmp r0, #0
ble _02173dbc
bl func_ov61_0213e10c
cmp r0, #0
str r0, [r5, #0x38]
addeq sp, sp, #0x20
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, lr}
addeq sp, sp, #0x10
bxeq lr
ldr r1, [sp, #0x34]
ldr r2, [sp, #0x38]
bl func_02043594
ldr r0, [sp, #0x38]
str r0, [r5, #0x3c]
_02173dbc:
cmp r4, #0
addne ip, r5, #0x28
ldmneia r4, {r0, r1, r2, r3}
stmneia ip, {r0, r1, r2, r3}
add r0, sp, #0
bl func_ov61_02172f6c
add r1, sp, #0
add r0, r5, #0x68
bl func_ov61_02173088
add r1, sp, #0
mov r0, r5
bl func_ov61_02175b60
mov r0, #0
str r0, [r5, #0xc]
add sp, sp, #0x20
ldmia sp!, {r3, r4, r5, lr}
add sp, sp, #0x10
bx lr
arm_func_end func_ov61_02173d5c
.global func_ov61_02173e04
arm_func_start func_ov61_02173e04
func_ov61_02173e04: ; 0x02173e04
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r2, [r5, #0x14]
mov r4, r1
cmp r2, #0
movne r0, #0
strne r0, [r5, #0x14]
ldmneia sp!, {r3, r4, r5, pc}
mov r2, #0
str r2, [r5, #0x14]
ldr r1, [r5, #0xc]
cmp r1, #4
movne r0, r2
ldmneia sp!, {r3, r4, r5, pc}
bl func_ov61_02175cc4
mov r0, #5
cmp r4, #0
str r0, [r5, #0xc]
addne ip, r5, #0x28
ldmneia r4, {r0, r1, r2, r3}
stmneia ip, {r0, r1, r2, r3}
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02173e04
.global func_ov61_02173e60
arm_func_start func_ov61_02173e60
func_ov61_02173e60: ; 0x02173e60
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r4, lr}
mov r4, r0
mov r0, #0
str r0, [r4, #0x14]
ldr r0, [r4, #0xc]
cmp r0, #4
ldmneia sp!, {r4, lr}
addne sp, sp, #0x10
bxne lr
add r0, sp, #0xc
add r1, sp, #0x10
bl func_ov61_02176bd8
ldr r1, [sp, #0xc]
ldr r2, [sp, #0x10]
mov r0, r4
bl func_ov61_02175d20
mov r0, #6
str r0, [r4, #0xc]
ldmia sp!, {r4, lr}
add sp, sp, #0x10
bx lr
arm_func_end func_ov61_02173e60
.global func_ov61_02173eb8
arm_func_start func_ov61_02173eb8
func_ov61_02173eb8: ; 0x02173eb8
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
mov r4, r0
str r2, [sp]
mov r3, r1
ldrh r2, [r4, #4]
ldr r0, [r4, #8]
ldr r1, [r4]
bl func_ov61_021766f4
cmp r0, #0
addeq sp, sp, #4
moveq r0, #0
ldmeqia sp!, {r3, r4, pc}
bl func_ov61_021665e8
str r0, [r4, #0x88]
mov r0, #1
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
arm_func_end func_ov61_02173eb8
.global func_ov61_02173f00
arm_func_start func_ov61_02173f00
func_ov61_02173f00: ; 0x02173f00
stmdb sp!, {r4, lr}
mov r4, r0
ldr r2, [r4, #0xc]
cmp r2, #5
bge _02173f98
ldr r0, [r4, #0x10]
mov r3, #0
cmp r0, #0
beq _02173f44
ldr r2, [r4, #0x20]
cmp r2, #0
beq _02173f60
ldr r0, [r4, #0x1c]
sub r0, r1, r0
cmp r0, r2
movhi r3, #1
b _02173f60
_02173f44:
cmp r2, #4
bge _02173f60
ldr r2, [r4, #0x1c]
ldr r0, _02173fa0 ; =0x0000ea60
sub r1, r1, r2
cmp r1, r0
movhi r3, #1
_02173f60:
cmp r3, #0
beq _02173f98
mov r0, r4
bl func_ov61_02176018
mov r0, r4
bl func_ov61_02174138
mov r2, #0
mov r0, r4
mov r3, r2
mov r1, #6
bl func_ov61_0217359c
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, pc}
_02173f98:
mov r0, #1
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02173f00
_02173fa0: .word 0x0000ea60
.global func_ov61_02173fa4
arm_func_start func_ov61_02173fa4
func_ov61_02173fa4: ; 0x02173fa4
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
ldr r0, [r7, #0x60]
mov r6, r1
bl func_ov61_02165a68
mov r5, r0
cmp r5, #0
mov r4, #0
ble _02174008
_02173fc8:
ldr r0, [r7, #0x60]
mov r1, r4
bl func_ov61_02165a70
mov r1, r0
ldr r0, [r1, #0xc]
sub r0, r6, r0
cmp r0, #0x3e8
bls _02173ffc
mov r0, r7
bl func_ov61_02176080
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
_02173ffc:
add r4, r4, #1
cmp r4, r5
blt _02173fc8
_02174008:
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_02173fa4
.global func_ov61_02174010
arm_func_start func_ov61_02174010
func_ov61_02174010: ; 0x02174010
stmdb sp!, {r3, lr}
ldr r2, [r0, #0x90]
cmp r2, #0
moveq r0, #1
ldmeqia sp!, {r3, pc}
ldr r2, [r0, #0x94]
sub r1, r1, r2
cmp r1, #0x64
bls _02174044
bl func_ov61_02175f14
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_02174044:
mov r0, #1
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02174010
.global func_ov61_0217404c
arm_func_start func_ov61_0217404c
func_ov61_0217404c: ; 0x0217404c
stmdb sp!, {r3, lr}
ldr r3, [r0, #0x88]
ldr r2, _0217407c ; =0x00007530
sub r1, r1, r3
cmp r1, r2
bls _02174074
bl func_ov61_02175df0
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_02174074:
mov r0, #1
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_0217404c
_0217407c: .word 0x00007530
.global func_ov61_02174080
arm_func_start func_ov61_02174080
func_ov61_02174080: ; 0x02174080
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
bl func_ov61_02173f00
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
mov r0, r5
mov r1, r4
bl func_ov61_0217404c
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
mov r0, r5
mov r1, r4
bl func_ov61_02173fa4
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
mov r0, r5
mov r1, r4
bl func_ov61_02174010
cmp r0, #0
movne r0, #1
moveq r0, #0
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02174080
.global func_ov61_021740e8
arm_func_start func_ov61_021740e8
func_ov61_021740e8: ; 0x021740e8
stmdb sp!, {r4, lr}
mov r4, r0
cmp r1, #0
beq _02174128
ldr r1, [r4, #0xc]
cmp r1, #7
ldmgeia sp!, {r4, pc}
bl func_ov61_02174138
mov r0, r4
bl func_ov61_02176018
mov r0, r4
mov r1, #0
bl func_ov61_02173768
mov r0, r4
bl func_ov61_02176630
ldmia sp!, {r4, pc}
_02174128:
mov r1, #6
str r1, [r4, #0xc]
bl func_ov61_02175d94
ldmia sp!, {r4, pc}
arm_func_end func_ov61_021740e8
.global func_ov61_02174138
arm_func_start func_ov61_02174138
func_ov61_02174138: ; 0x02174138
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r3, lr}
ldr r1, [sp, #8]
ldr r0, [r1, #0xc]
cmp r0, #7
ldmeqia sp!, {r3, lr}
addeq sp, sp, #0x10
bxeq lr
mov r0, #7
str r0, [r1, #0xc]
ldr r0, [sp, #8]
add r1, sp, #8
ldr r0, [r0, #8]
ldr r0, [r0, #0xc]
bl func_ov61_02166334
ldr r0, [sp, #8]
add r1, sp, #8
ldr r0, [r0, #8]
ldr r0, [r0, #0x10]
bl func_ov61_02165ad8
ldmia sp!, {r3, lr}
add sp, sp, #0x10
bx lr
arm_func_end func_ov61_02174138
.global func_ov61_02174194
arm_func_start func_ov61_02174194
func_ov61_02174194: ; 0x02174194
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, [r4, #0x38]
cmp r0, #0
beq _021741ac
bl func_ov61_0213e13c
_021741ac:
ldr r0, [r4, #0x44]
cmp r0, #0
beq _021741bc
bl func_ov61_0213e13c
_021741bc:
ldr r0, [r4, #0x50]
cmp r0, #0
beq _021741cc
bl func_ov61_0213e13c
_021741cc:
ldr r0, [r4, #0x5c]
cmp r0, #0
beq _021741dc
bl func_ov61_021659fc
_021741dc:
ldr r0, [r4, #0x60]
cmp r0, #0
beq _021741ec
bl func_ov61_021659fc
_021741ec:
ldr r0, [r4, #0x98]
cmp r0, #0
beq _021741fc
bl func_ov61_021659fc
_021741fc:
ldr r0, [r4, #0x9c]
cmp r0, #0
beq _0217420c
bl func_ov61_021659fc
_0217420c:
mov r0, r4
bl func_ov61_0213e13c
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02174194
.global func_ov61_02174218
arm_func_start func_ov61_02174218
func_ov61_02174218: ; 0x02174218
stmdb sp!, {r3, lr}
ldr ip, [sp, #8]
str ip, [sp]
bl func_ov61_021761a4
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02174218
.global func_ov61_0217422c
arm_func_start func_ov61_0217422c
func_ov61_0217422c: ; 0x0217422c
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_021744b8
mov r0, r4
bl func_ov61_021763c4
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0217422c
.global func_ov61_02174244
arm_func_start func_ov61_02174244
func_ov61_02174244: ; 0x02174244
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_02175810
cmp r0, #0
ldmeqia sp!, {r4, pc}
mov r0, r4
bl func_ov61_021768f4
cmp r0, #0
ldmeqia sp!, {r4, pc}
mov r0, r4
bl func_ov61_02176930
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02174244
.global func_ov61_02174274
arm_func_start func_ov61_02174274
func_ov61_02174274: ; 0x02174274
ldr ip, _0217427c ; =func_ov61_02176408
bx ip
.align 2, 0
arm_func_end func_ov61_02174274
_0217427c: .word func_ov61_02176408
.global func_ov61_02174280
arm_func_start func_ov61_02174280
func_ov61_02174280: ; 0x02174280
ldr ip, _02174288 ; =func_ov61_02173e04
bx ip
.align 2, 0
arm_func_end func_ov61_02174280
_02174288: .word func_ov61_02173e04
.global func_ov61_0217428c
arm_func_start func_ov61_0217428c
func_ov61_0217428c: ; 0x0217428c
ldr ip, _02174294 ; =func_ov61_02173e60
bx ip
.align 2, 0
arm_func_end func_ov61_0217428c
_02174294: .word func_ov61_02173e60
.global func_ov61_02174298
arm_func_start func_ov61_02174298
func_ov61_02174298: ; 0x02174298
stmdb sp!, {r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #0xc
mov r6, r0
mov r5, r1
mov r0, r2
add r1, sp, #4
add r2, sp, #0
mov r4, r3
bl func_ov61_02176a54
cmp r0, #0
ldrne r2, [sp, #4]
cmpne r2, #0
ldrneh r3, [sp]
cmpne r3, #0
addeq sp, sp, #0xc
moveq r0, #4
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, pc}
mov r1, r2, lsr #0x18
mov r0, r2, lsr #0x8
mov r7, r2, lsl #0x8
and r1, r1, #0xff
and r0, r0, #0xff00
mov r8, r2, lsl #0x18
orr r0, r1, r0
and r7, r7, #0xff0000
and r1, r8, #0xff000000
orr r0, r7, r0
orr r0, r1, r0
and r0, r0, #0xe0000000
cmp r0, #0xe0000000
addeq sp, sp, #0xc
moveq r0, #4
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, pc}
add r1, sp, #8
mov r0, r6
bl func_ov61_02173cfc
cmp r0, #0
addne sp, sp, #0xc
ldmneia sp!, {r4, r5, r6, r7, r8, r9, pc}
ldr r1, [sp, #0x2c]
ldr r0, [sp, #8]
ldr r2, [sp, #0x28]
str r1, [r0, #0x20]
ldr r0, [sp, #8]
ldr r3, [sp, #0x30]
mov r1, r4
bl func_ov61_02173d5c
movs r4, r0
beq _02174370
ldr r0, [sp, #8]
bl func_ov61_02176630
add sp, sp, #0xc
mov r0, r4
ldmia sp!, {r4, r5, r6, r7, r8, r9, pc}
_02174370:
ldr r0, [sp, #0x34]
cmp r0, #0
bne _02174394
cmp r5, #0
ldrne r0, [sp, #8]
add sp, sp, #0xc
strne r0, [r5]
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, pc}
_02174394:
ldr r1, [sp, #8]
mov r8, #1
ldr r0, [r1, #0x24]
mov r7, #0
add r0, r0, #1
str r0, [r1, #0x24]
mov r4, r8
_021743b0:
mov r0, r6
bl func_ov61_02174244
ldr r0, [sp, #8]
ldr r0, [r0, #0xc]
cmp r0, #5
movge r9, r8
movlt r9, r7
cmp r9, #0
bne _021743dc
mov r0, r4
bl func_ov61_02166640
_021743dc:
cmp r9, #0
beq _021743b0
ldr r1, [sp, #8]
ldr r0, [r1, #0x24]
sub r0, r0, #1
str r0, [r1, #0x24]
ldr r1, [sp, #8]
ldr r0, [r1, #0xc]
cmp r0, #5
streq r1, [r5]
ldr r0, [sp, #8]
ldr r0, [r0, #0x18]
add sp, sp, #0xc
ldmia sp!, {r4, r5, r6, r7, r8, r9, pc}
arm_func_end func_ov61_02174298
.global func_ov61_02174414
arm_func_start func_ov61_02174414
func_ov61_02174414: ; 0x02174414
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r0, [r5, #0xc]
mov r4, r3
cmp r0, #5
ldmneia sp!, {r3, r4, r5, lr}
addne sp, sp, #0x10
bxne lr
add r0, sp, #0x14
add r1, sp, #0x18
bl func_ov61_02176bd8
ldr r0, [r5, #0x98]
bl func_ov61_02165a68
cmp r0, #0
beq _02174478
str r4, [sp]
ldr r2, [sp, #0x14]
ldr r3, [sp, #0x18]
mov r0, r5
mov r1, #0
bl func_ov61_021738f0
ldmia sp!, {r3, r4, r5, lr}
add sp, sp, #0x10
bx lr
_02174478:
ldr r1, [sp, #0x14]
ldr r2, [sp, #0x18]
mov r0, r5
mov r3, r4
bl func_ov61_021760ec
ldmia sp!, {r3, r4, r5, lr}
add sp, sp, #0x10
bx lr
arm_func_end func_ov61_02174414
.global func_ov61_02174498
arm_func_start func_ov61_02174498
func_ov61_02174498: ; 0x02174498
ldr ip, _021744a4 ; =func_ov61_021740e8
mov r1, #1
bx ip
.align 2, 0
arm_func_end func_ov61_02174498
_021744a4: .word func_ov61_021740e8
.global func_ov61_021744a8
arm_func_start func_ov61_021744a8
func_ov61_021744a8: ; 0x021744a8
ldr ip, _021744b4 ; =func_ov61_02174498
ldr r0, [r0]
bx ip
.align 2, 0
arm_func_end func_ov61_021744a8
_021744b4: .word func_ov61_02174498
.global func_ov61_021744b8
arm_func_start func_ov61_021744b8
func_ov61_021744b8: ; 0x021744b8
stmdb sp!, {r3, lr}
ldr r1, _021744f4 ; =data_ov61_02181584
ldr r2, [r1]
cmp r2, #1
ldmeqia sp!, {r3, pc}
mov r2, #1
str r2, [r1]
ldr r0, [r0, #0xc]
ldr r1, _021744f8 ; =func_ov61_021744a8
mov r2, #0
bl func_ov61_02166478
ldr r0, _021744f4 ; =data_ov61_02181584
mov r1, #0
str r1, [r0]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021744b8
_021744f4: .word data_ov61_02181584
_021744f8: .word func_ov61_021744a8
.global func_ov61_021744fc
arm_func_start func_ov61_021744fc
func_ov61_021744fc: ; 0x021744fc
ldrh r0, [r0, #8]
bx lr
arm_func_end func_ov61_021744fc
.global func_ov61_02174504
arm_func_start func_ov61_02174504
func_ov61_02174504: ; 0x02174504
ldr r1, [r0, #0x54]
ldr r0, [r0, #0x58]
sub r0, r1, r0
bx lr
arm_func_end func_ov61_02174504
.global func_ov61_02174514
arm_func_start func_ov61_02174514
func_ov61_02174514: ; 0x02174514
ldr r0, [r0]
bx lr
arm_func_end func_ov61_02174514
.global func_ov61_0217451c
arm_func_start func_ov61_0217451c
func_ov61_0217451c: ; 0x0217451c
str r1, [r0, #0x30]
bx lr
arm_func_end func_ov61_0217451c
.global func_ov61_02174524
arm_func_start func_ov61_02174524
func_ov61_02174524: ; 0x02174524
stmdb sp!, {r3, r4, r5, lr}
movs r5, r0
mov r4, r1
bne _02174548
ldr r0, _02174550 ; =data_ov61_0217e0b8
ldr r1, _02174554 ; =data_ov61_0217e0ac
ldr r2, _02174558 ; =data_ov61_0217e07c
ldr r3, _0217455c ; =0x000001a3
bl func_02042f80
_02174548:
str r4, [r5, #0x40]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02174524
_02174550: .word data_ov61_0217e0b8
_02174554: .word data_ov61_0217e0ac
_02174558: .word data_ov61_0217e07c
_0217455c: .word 0x000001a3
.global func_ov61_02174560
arm_func_start func_ov61_02174560
func_ov61_02174560: ; 0x02174560
stmdb sp!, {r4, lr}
movs r4, r0
bne _02174580
ldr r0, _02174588 ; =data_ov61_0217e0b8
ldr r1, _0217458c ; =data_ov61_0217e0ac
ldr r2, _02174590 ; =data_ov61_0217e094
ldr r3, _02174594 ; =0x000001aa
bl func_02042f80
_02174580:
ldr r0, [r4, #0x40]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02174560
_02174588: .word data_ov61_0217e0b8
_0217458c: .word data_ov61_0217e0ac
_02174590: .word data_ov61_0217e094
_02174594: .word 0x000001aa
.global func_ov61_02174598
arm_func_start func_ov61_02174598
func_ov61_02174598: ; 0x02174598
ldrb r2, [r0, r1]
add r1, r1, #1
ldrb r1, [r0, r1]
mov r0, r2, lsl #0x8
and r0, r0, #0xff00
mov r0, r0, lsl #0x10
orr r0, r1, r0, lsr #16
bx lr
arm_func_end func_ov61_02174598
.global func_ov61_021745b8
arm_func_start func_ov61_021745b8
func_ov61_021745b8: ; 0x021745b8
mov r3, r2, asr #0x8
strb r3, [r0, r1]
add r1, r1, #1
strb r2, [r0, r1]
bx lr
arm_func_end func_ov61_021745b8
.global func_ov61_021745cc
arm_func_start func_ov61_021745cc
func_ov61_021745cc: ; 0x021745cc
sub r0, r0, r1
mov r0, r0, lsl #0x10
mov r0, r0, asr #0x10
bx lr
arm_func_end func_ov61_021745cc
.global func_ov61_021745dc
arm_func_start func_ov61_021745dc
func_ov61_021745dc: ; 0x021745dc
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
ldr r3, [r6, #0xc]
mov r5, r1
mov r4, r2
cmp r3, #5
bge _02174644
ldr r1, [r6, #0x10]
cmp r1, #0
beq _0217462c
bl func_ov61_02174138
mov r2, #0
mov r0, r6
mov r1, r5
mov r3, r2
bl func_ov61_0217359c
cmp r0, #0
bne _02174668
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
_0217462c:
cmp r3, #4
moveq r0, #1
streq r0, [r6, #0x14]
mov r0, r6
bl func_ov61_02174138
b _02174668
_02174644:
cmp r3, #7
beq _02174668
bl func_ov61_02174138
mov r0, r6
mov r1, r4
bl func_ov61_02173768
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
_02174668:
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_021745dc
.global func_ov61_02174670
arm_func_start func_ov61_02174670
func_ov61_02174670: ; 0x02174670
ldr ip, _02174680 ; =func_ov61_021745dc
mov r1, #7
mov r2, #2
bx ip
.align 2, 0
arm_func_end func_ov61_02174670
_02174680: .word func_ov61_021745dc
.global func_ov61_02174684
arm_func_start func_ov61_02174684
func_ov61_02174684: ; 0x02174684
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_02176018
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, pc}
mov r0, r4
mov r1, #1
mov r2, #4
bl func_ov61_021745dc
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02174684
.global func_ov61_021746b0
arm_func_start func_ov61_021746b0
func_ov61_021746b0: ; 0x021746b0
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r4, r0
ldr r0, [r4, #0x60]
mov r7, r1
bl func_ov61_02165a68
movs r5, r0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
cmp r5, #0
mov r6, #0
ble _02174704
_021746dc:
ldr r0, [r4, #0x60]
mov r1, r6
bl func_ov61_02165a70
ldrh r0, [r0, #8]
mov r1, r7
bl func_ov61_021745cc
cmp r0, #0
addlt r6, r6, #1
cmplt r6, r5
blt _021746dc
_02174704:
cmp r6, #0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
cmp r6, #0
sub r6, r6, #1
beq _02174734
_0217471c:
ldr r0, [r4, #0x60]
mov r1, r6
bl func_ov61_02165cec
cmp r6, #0
sub r6, r6, #1
bne _0217471c
_02174734:
ldr r0, [r4, #0x60]
bl func_ov61_02165a68
movs r6, r0
bne _02174754
mov r0, #0
str r0, [r4, #0x58]
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02174754:
ldr r0, [r4, #0x60]
mov r1, #0
bl func_ov61_02165a70
cmp r6, #0
ldr r5, [r0]
mov r7, #0
ble _02174794
_02174770:
ldr r0, [r4, #0x60]
mov r1, r7
bl func_ov61_02165a70
ldr r1, [r0]
add r7, r7, #1
sub r1, r1, r5
str r1, [r0]
cmp r7, r6
blt _02174770
_02174794:
mov r2, r5
add r0, r4, #0x50
mov r1, #0
bl func_ov61_02173344
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_021746b0
.global func_ov61_021747ac
arm_func_start func_ov61_021747ac
func_ov61_021747ac: ; 0x021747ac
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
mov r6, r0
ldr r0, [r6, #0xc]
mov r5, r1
cmp r0, #5
cmpne r0, #6
mov r4, r2
addne sp, sp, #4
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, pc}
ldr r0, [r6, #0x9c]
bl func_ov61_02165a68
cmp r0, #0
beq _02174814
mov r1, #0
mov r0, r6
mov r2, r5
mov r3, r4
str r1, [sp]
bl func_ov61_021739e8
cmp r0, #0
movne r0, #1
add sp, sp, #4
moveq r0, #0
ldmia sp!, {r3, r4, r5, r6, pc}
_02174814:
mov r0, r6
mov r1, r5
mov r2, r4
mov r3, #0
bl func_ov61_02173684
cmp r0, #0
movne r0, #1
moveq r0, #0
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
arm_func_end func_ov61_021747ac
.global func_ov61_0217483c
arm_func_start func_ov61_0217483c
func_ov61_0217483c: ; 0x0217483c
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
mov r6, r0
ldr r3, [r6, #0xc]
mov r5, r1
cmp r3, #5
mov r4, r2
cmpne r3, #6
beq _02174878
bl func_ov61_02174670
cmp r0, #0
bne _021748dc
add sp, sp, #4
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, pc}
_02174878:
ldr r0, [r6, #0x9c]
bl func_ov61_02165a68
cmp r0, #0
beq _021748b8
mov ip, #1
mov r0, r6
mov r2, r5
mov r3, r4
mov r1, #0
str ip, [sp]
bl func_ov61_021739e8
cmp r0, #0
movne r0, #1
add sp, sp, #4
moveq r0, #0
ldmia sp!, {r3, r4, r5, r6, pc}
_021748b8:
mov r0, r6
mov r1, r5
mov r2, r4
mov r3, #1
bl func_ov61_02173684
cmp r0, #0
addeq sp, sp, #4
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, pc}
_021748dc:
mov r0, #1
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
arm_func_end func_ov61_0217483c
.global func_ov61_021748e8
arm_func_start func_ov61_021748e8
func_ov61_021748e8: ; 0x021748e8
stmdb sp!, {r4, lr}
sub sp, sp, #0x40
mov r4, r0
ldr r3, [r4, #0xc]
cmp r3, #2
beq _02174918
bl func_ov61_02174670
cmp r0, #0
movne r0, #1
add sp, sp, #0x40
moveq r0, #0
ldmia sp!, {r4, pc}
_02174918:
cmp r2, #0x20
bge _02174938
bl func_ov61_02174670
cmp r0, #0
movne r0, #1
add sp, sp, #0x40
moveq r0, #0
ldmia sp!, {r4, pc}
_02174938:
add r0, sp, #0x20
bl func_ov61_02173088
add r0, sp, #0
bl func_ov61_02172f6c
add r1, sp, #0
add r0, r4, #0x68
bl func_ov61_02173088
add r1, sp, #0x20
add r2, sp, #0
mov r0, r4
bl func_ov61_02175bc0
cmp r0, #0
moveq r0, #0
movne r0, #3
strne r0, [r4, #0xc]
movne r0, #1
add sp, sp, #0x40
ldmia sp!, {r4, pc}
arm_func_end func_ov61_021748e8
.global func_ov61_02174980
arm_func_start func_ov61_02174980
func_ov61_02174980: ; 0x02174980
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x20
mov r5, r0
ldr r3, [r5, #0xc]
mov r4, r1
cmp r3, #0
beq _021749b4
bl func_ov61_02174670
cmp r0, #0
movne r0, #1
add sp, sp, #0x20
moveq r0, #0
ldmia sp!, {r3, r4, r5, pc}
_021749b4:
cmp r2, #0x40
bge _021749d4
bl func_ov61_02174670
cmp r0, #0
movne r0, #1
add sp, sp, #0x20
moveq r0, #0
ldmia sp!, {r3, r4, r5, pc}
_021749d4:
mov r0, r4
add r1, r5, #0x68
bl func_ov61_02173190
cmp r0, #0
bne _02174a04
mov r0, r5
bl func_ov61_02174670
cmp r0, #0
movne r0, #1
add sp, sp, #0x20
moveq r0, #0
ldmia sp!, {r3, r4, r5, pc}
_02174a04:
add r0, sp, #0
add r1, r4, #0x20
bl func_ov61_02173088
ldr r2, [r5, #0x38]
ldr r3, [r5, #0x3c]
add r1, sp, #0
mov r0, r5
bl func_ov61_02175c4c
cmp r0, #0
addeq sp, sp, #0x20
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r0, [r5, #0x38]
cmp r0, #0
beq _02174a4c
bl func_ov61_0213e13c
mov r0, #0
str r0, [r5, #0x38]
_02174a4c:
mov r0, #1
str r0, [r5, #0xc]
add sp, sp, #0x20
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02174980
.global func_ov61_02174a5c
arm_func_start func_ov61_02174a5c
func_ov61_02174a5c: ; 0x02174a5c
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0xc
mov r6, r0
ldr r3, [r6, #0xc]
mov r5, r1
mov r4, r2
cmp r3, #3
beq _02174a94
bl func_ov61_02174670
cmp r0, #0
movne r0, #1
add sp, sp, #0xc
moveq r0, #0
ldmia sp!, {r3, r4, r5, r6, pc}
_02174a94:
cmp r4, #0x20
bge _02174ab4
bl func_ov61_02174670
cmp r0, #0
movne r0, #1
add sp, sp, #0xc
moveq r0, #0
ldmia sp!, {r3, r4, r5, r6, pc}
_02174ab4:
mov r0, r5
add r1, r6, #0x68
bl func_ov61_02173190
cmp r0, #0
bne _02174ae4
mov r0, r6
bl func_ov61_02174670
cmp r0, #0
movne r0, #1
add sp, sp, #0xc
moveq r0, #0
ldmia sp!, {r3, r4, r5, r6, pc}
_02174ae4:
ldr r0, [r6, #8]
ldr r0, [r0, #0x20]
cmp r0, #0
bne _02174b20
mov r0, r6
bl func_ov61_02176018
cmp r0, #0
addeq sp, sp, #0xc
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, pc}
mov r0, r6
bl func_ov61_02174138
add sp, sp, #0xc
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, pc}
_02174b20:
mov r0, #4
str r0, [r6, #0xc]
bl func_ov61_021665e8
ldr r2, [r6, #0x8c]
add r1, r5, #0x20
sub r0, r0, r2
stmia sp, {r0, r1}
sub r0, r4, #0x20
str r0, [sp, #8]
ldrh r3, [r6, #4]
ldr r0, [r6, #8]
ldr r2, [r6]
mov r1, r6
bl func_ov61_02173480
cmp r0, #0
movne r0, #1
moveq r0, #0
add sp, sp, #0xc
ldmia sp!, {r3, r4, r5, r6, pc}
arm_func_end func_ov61_02174a5c
.global func_ov61_02174b6c
arm_func_start func_ov61_02174b6c
func_ov61_02174b6c: ; 0x02174b6c
stmdb sp!, {r3, lr}
ldr r1, [r0, #0xc]
cmp r1, #1
beq _02174b90
bl func_ov61_02174670
cmp r0, #0
movne r0, #1
moveq r0, #0
ldmia sp!, {r3, pc}
_02174b90:
mov r1, #0
mov ip, #5
mov r2, r1
mov r3, r1
str ip, [r0, #0xc]
bl func_ov61_0217359c
cmp r0, #0
movne r0, #1
moveq r0, #0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02174b6c
.global func_ov61_02174bb8
arm_func_start func_ov61_02174bb8
func_ov61_02174bb8: ; 0x02174bb8
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
ldr r3, [r6, #0xc]
mov r5, r1
mov r4, r2
cmp r3, #1
beq _02174be8
bl func_ov61_02174670
cmp r0, #0
movne r0, #1
moveq r0, #0
ldmia sp!, {r4, r5, r6, pc}
_02174be8:
bl func_ov61_02174138
mov r0, r6
bl func_ov61_02176018
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
mov r0, r6
mov r2, r5
mov r3, r4
mov r1, #2
bl func_ov61_0217359c
cmp r0, #0
movne r0, #1
moveq r0, #0
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02174bb8
.global func_ov61_02174c24
arm_func_start func_ov61_02174c24
func_ov61_02174c24: ; 0x02174c24
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_02176018
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, pc}
ldr r0, [r4, #0xc]
mov r1, #2
cmp r0, #6
moveq r2, #0
movne r2, #1
mov r0, r4
bl func_ov61_021745dc
cmp r0, #0
moveq r0, #0
movne r0, #1
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02174c24
.global func_ov61_02174c68
arm_func_start func_ov61_02174c68
func_ov61_02174c68: ; 0x02174c68
stmdb sp!, {r3, lr}
ldrh ip, [r0, #0x66]
cmp r1, #0
add ip, ip, #1
strh ip, [r0, #0x66]
bne _02174c9c
mov r1, r2
mov r2, r3
bl func_ov61_0217483c
cmp r0, #0
bne _02174d60
mov r0, #0
ldmia sp!, {r3, pc}
_02174c9c:
cmp r1, #1
bne _02174cc0
mov r1, r2
mov r2, r3
bl func_ov61_021748e8
cmp r0, #0
bne _02174d60
mov r0, #0
ldmia sp!, {r3, pc}
_02174cc0:
cmp r1, #2
bne _02174ce4
mov r1, r2
mov r2, r3
bl func_ov61_02174980
cmp r0, #0
bne _02174d60
mov r0, #0
ldmia sp!, {r3, pc}
_02174ce4:
cmp r1, #3
bne _02174d08
mov r1, r2
mov r2, r3
bl func_ov61_02174a5c
cmp r0, #0
bne _02174d60
mov r0, #0
ldmia sp!, {r3, pc}
_02174d08:
cmp r1, #4
bne _02174d24
bl func_ov61_02174b6c
cmp r0, #0
bne _02174d60
mov r0, #0
ldmia sp!, {r3, pc}
_02174d24:
cmp r1, #5
bne _02174d48
mov r1, r2
mov r2, r3
bl func_ov61_02174bb8
cmp r0, #0
bne _02174d60
mov r0, #0
ldmia sp!, {r3, pc}
_02174d48:
cmp r1, #6
bne _02174d60
bl func_ov61_02174c24
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_02174d60:
mov r0, #1
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02174c68
.global func_ov61_02174d68
arm_func_start func_ov61_02174d68
func_ov61_02174d68: ; 0x02174d68
ldr ip, _02174d78 ; =func_ov61_021745cc
ldrh r0, [r0, #0xc]
ldrh r1, [r1, #0xc]
bx ip
.align 2, 0
arm_func_end func_ov61_02174d68
_02174d78: .word func_ov61_021745cc
.global func_ov61_02174d7c
arm_func_start func_ov61_02174d7c
func_ov61_02174d7c: ; 0x02174d7c
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
sub sp, sp, #0x10
mov r9, r0
ldr r0, [r9, #0x5c]
mov r8, r1
mov r7, r2
mov r6, r3
ldr r5, [sp, #0x34]
bl func_ov61_02165a68
mov r4, r0
cmp r4, #0
mov r10, #0
ble _02174df8
_02174db0:
ldr r0, [r9, #0x5c]
mov r1, r10
bl func_ov61_02165a70
ldrh r0, [r0, #0xc]
cmp r0, r7
bne _02174ddc
mov r0, #0
str r0, [r5]
add sp, sp, #0x10
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02174ddc:
mov r1, r7
bl func_ov61_021745cc
cmp r0, #0
bgt _02174df8
add r10, r10, #1
cmp r10, r4
blt _02174db0
_02174df8:
add r0, r9, #0x44
bl func_ov61_021731f0
ldr r2, [sp, #0x30]
cmp r0, r2
movlt r0, #1
addlt sp, sp, #0x10
strlt r0, [r5]
ldmltia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
ldr r0, [r9, #0x4c]
add r1, sp, #0
str r2, [sp, #4]
str r8, [sp, #8]
strh r7, [sp, #0xc]
str r0, [sp]
ldr r0, [r9, #0x5c]
ldr r2, _02174f2c ; =func_ov61_02174d68
bl func_ov61_02165bdc
ldr r0, [r9, #0x5c]
bl func_ov61_02165a68
add r1, r4, #1
cmp r1, r0
movne r0, #1
addne sp, sp, #0x10
strne r0, [r5]
ldmneia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
ldr r2, [sp, #0x30]
mov r1, r6
add r0, r9, #0x44
bl func_ov61_021732bc
cmp r4, #0
bne _02174ea0
sub r0, r7, #1
mov r2, r0, lsl #0x10
ldrh r1, [r9, #0x66]
mov r0, r9
mov r2, r2, lsr #0x10
bl func_ov61_02175f78
cmp r0, #0
bne _02174f18
add sp, sp, #0x10
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02174ea0:
ldr r0, [r9, #0x5c]
mov r1, r4
bl func_ov61_02165a70
ldrh r0, [r0, #0xc]
cmp r0, r7
bne _02174f18
ldr r0, [r9, #0x5c]
sub r1, r4, #1
bl func_ov61_02165a70
mov r4, r0
ldrh r1, [r4, #0xc]
mov r0, r7
bl func_ov61_021745cc
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
cmp r0, #1
bls _02174f18
ldrh r1, [r4, #0xc]
sub r0, r7, #1
mov r2, r0, lsl #0x10
add r0, r1, #1
mov r1, r0, lsl #0x10
mov r0, r9
mov r1, r1, lsr #0x10
mov r2, r2, lsr #0x10
bl func_ov61_02175f78
cmp r0, #0
addeq sp, sp, #0x10
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
_02174f18:
mov r0, #0
str r0, [r5]
mov r0, #1
add sp, sp, #0x10
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, pc}
.align 2, 0
arm_func_end func_ov61_02174d7c
_02174f2c: .word func_ov61_02174d68
.global func_ov61_02174f30
arm_func_start func_ov61_02174f30
func_ov61_02174f30: ; 0x02174f30
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r9, r0
ldr r0, [r9, #0x5c]
ldmia r1, {r4, r5}
mov r1, r2
mov r8, #0
bl func_ov61_02165cec
ldr r0, [r9, #0x5c]
bl func_ov61_02165a68
mov r6, r0
cmp r6, #0
mov r7, r8
ble _02174fa0
_02174f64:
ldr r0, [r9, #0x5c]
mov r1, r7
bl func_ov61_02165a70
ldr r1, [r0]
cmp r1, r4
ble _02174f94
sub r1, r1, r5
str r1, [r0]
ldr r0, [r0, #4]
add r0, r1, r0
cmp r8, r0
movle r8, r0
_02174f94:
add r7, r7, #1
cmp r7, r6
blt _02174f64
_02174fa0:
mov r1, r4
mov r2, r5
add r0, r9, #0x44
bl func_ov61_02173344
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
arm_func_end func_ov61_02174f30
.global func_ov61_02174fb4
arm_func_start func_ov61_02174fb4
func_ov61_02174fb4: ; 0x02174fb4
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
_02174fbc:
ldr r0, [r6, #0x5c]
bl func_ov61_02165a68
subs r5, r0, #1
bmi _0217502c
_02174fcc:
ldr r0, [r6, #0x5c]
mov r1, r5
bl func_ov61_02165a70
mov r4, r0
ldrh r1, [r4, #0xc]
ldrh r0, [r6, #0x66]
cmp r1, r0
bne _02175024
ldr ip, [r6, #0x44]
ldr r1, [r4, #8]
ldmia r4, {r2, r3}
mov r0, r6
add r2, ip, r2
bl func_ov61_02174c68
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
mov r0, r6
mov r1, r4
mov r2, r5
bl func_ov61_02174f30
b _02174fbc
_02175024:
subs r5, r5, #1
bpl _02174fcc
_0217502c:
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_02174fb4
.global func_ov61_02175034
arm_func_start func_ov61_02175034
func_ov61_02175034: ; 0x02175034
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, [r4, #0x90]
cmp r0, #0
ldmneia sp!, {r4, pc}
mov r0, #1
str r0, [r4, #0x90]
bl func_ov61_021665e8
str r0, [r4, #0x94]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02175034
.global func_ov61_0217505c
arm_func_start func_ov61_0217505c
func_ov61_0217505c: ; 0x0217505c
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
sub sp, sp, #0xc
mov r6, r3
mov r4, r0
mov r8, r1
mov r7, r2
cmp r6, #7
bge _02175094
bl func_ov61_02174670
cmp r0, #0
movne r0, #1
add sp, sp, #0xc
moveq r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
_02175094:
mov r0, r7
mov r1, #3
bl func_ov61_02174598
mov r5, r0
mov r0, r7
mov r1, #5
bl func_ov61_02174598
mov r1, r0
mov r0, r4
bl func_ov61_021746b0
cmp r0, #0
addeq sp, sp, #0xc
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc}
ldrh r1, [r4, #0x66]
cmp r5, r1
bne _02175120
mov r0, r4
bl func_ov61_02175034
mov r0, r4
mov r1, r8
add r2, r7, #7
sub r3, r6, #7
bl func_ov61_02174c68
cmp r0, #0
addeq sp, sp, #0xc
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc}
mov r0, r4
bl func_ov61_02174fb4
cmp r0, #0
movne r0, #1
add sp, sp, #0xc
moveq r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
_02175120:
mov r0, r5
bl func_ov61_021745cc
cmp r0, #0
bge _02175144
mov r0, r4
bl func_ov61_02175034
add sp, sp, #0xc
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
_02175144:
sub r0, r6, #7
str r0, [sp]
add ip, sp, #8
mov r0, r4
mov r1, r8
mov r2, r5
add r3, r7, #7
str ip, [sp, #4]
bl func_ov61_02174d7c
cmp r0, #0
addeq sp, sp, #0xc
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc}
ldr r0, [sp, #8]
cmp r0, #0
beq _0217519c
mov r0, r4
bl func_ov61_02174684
cmp r0, #0
addeq sp, sp, #0xc
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc}
_0217519c:
mov r0, #1
add sp, sp, #0xc
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
arm_func_end func_ov61_0217505c
.global func_ov61_021751a8
arm_func_start func_ov61_021751a8
func_ov61_021751a8: ; 0x021751a8
stmdb sp!, {r4, lr}
mov r4, r0
cmp r2, #2
beq _021751cc
bl func_ov61_02174670
cmp r0, #0
movne r0, #1
moveq r0, #0
ldmia sp!, {r4, pc}
_021751cc:
mov r0, r1
mov r1, #0
bl func_ov61_02174598
mov r1, r0
mov r0, r4
bl func_ov61_021746b0
cmp r0, #0
movne r0, #1
moveq r0, #0
ldmia sp!, {r4, pc}
arm_func_end func_ov61_021751a8
.global func_ov61_021751f4
arm_func_start func_ov61_021751f4
func_ov61_021751f4: ; 0x021751f4
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r7, r1
mov r4, r0
mov r0, r7
mov r1, #0
mov r5, r2
bl func_ov61_02174598
mov r6, r0
cmp r5, #2
moveq r7, r6
beq _02175254
cmp r5, #4
bne _0217523c
mov r0, r7
mov r1, #2
bl func_ov61_02174598
mov r7, r0
b _02175254
_0217523c:
mov r0, r4
bl func_ov61_02174670
cmp r0, #0
movne r0, #1
moveq r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02175254:
ldr r0, [r4, #0x60]
bl func_ov61_02165a68
mov r8, r0
cmp r8, #0
mov r9, #0
ble _021752c8
_0217526c:
ldr r0, [r4, #0x60]
mov r1, r9
bl func_ov61_02165a70
mov r5, r0
ldrh r0, [r5, #8]
mov r1, r6
bl func_ov61_021745cc
cmp r0, #0
blt _021752bc
ldrh r0, [r5, #8]
mov r1, r7
bl func_ov61_021745cc
cmp r0, #0
bgt _021752bc
mov r0, r4
mov r1, r5
bl func_ov61_02176080
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_021752bc:
add r9, r9, #1
cmp r9, r8
blt _0217526c
_021752c8:
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
arm_func_end func_ov61_021751f4
.global func_ov61_021752d0
arm_func_start func_ov61_021752d0
func_ov61_021752d0: ; 0x021752d0
ldr ip, _021752d8 ; =func_ov61_02176004
bx ip
.align 2, 0
arm_func_end func_ov61_021752d0
_021752d8: .word func_ov61_02176004
.global func_ov61_021752dc
arm_func_start func_ov61_021752dc
func_ov61_021752dc: ; 0x021752dc
stmdb sp!, {r3, r4, r5, lr}
mov r4, r0
ldr r0, [r4, #0x34]
mov r5, r1
cmp r0, #0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, pc}
cmp r2, #8
movne r0, #1
ldmneia sp!, {r3, r4, r5, pc}
ldr r1, _0217536c ; =data_ov61_0217e0dc
mov r0, r5
mov r2, #4
bl func_0204366c
cmp r0, #0
movne r0, #1
ldmneia sp!, {r3, r4, r5, pc}
ldrb r1, [r5, #4]
ldrb r0, [r5, #5]
add r2, sp, #0
strb r1, [r2]
strb r0, [r2, #1]
ldrb r1, [r5, #6]
ldrb r0, [r5, #7]
strb r1, [r2, #2]
strb r0, [r2, #3]
bl func_ov61_021665e8
mov r2, r0
ldr r1, [sp]
mov r0, r4
sub r1, r2, r1
bl func_ov61_0217382c
cmp r0, #0
movne r0, #1
moveq r0, #0
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_021752dc
_0217536c: .word data_ov61_0217e0dc
.global func_ov61_02175370
arm_func_start func_ov61_02175370
func_ov61_02175370: ; 0x02175370
stmdb sp!, {r3, lr}
ldr r1, [r0, #0xc]
cmp r1, #7
moveq r0, #1
ldmeqia sp!, {r3, pc}
cmp r1, #6
moveq r2, #0
movne r2, #1
mov r1, #2
bl func_ov61_021745dc
cmp r0, #0
moveq r0, #0
movne r0, #1
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02175370
.global func_ov61_021753a8
arm_func_start func_ov61_021753a8
func_ov61_021753a8: ; 0x021753a8
stmdb sp!, {r3, lr}
cmp r1, #0x64
sub ip, r3, #3
bne _021753d4
add r1, r2, #3
mov r2, ip
bl func_ov61_021751a8
cmp r0, #0
bne _02175458
mov r0, #0
ldmia sp!, {r3, pc}
_021753d4:
cmp r1, #0x65
bne _021753f8
add r1, r2, #3
mov r2, ip
bl func_ov61_021751f4
cmp r0, #0
bne _02175458
mov r0, #0
ldmia sp!, {r3, pc}
_021753f8:
cmp r1, #0x66
bne _0217541c
mov r1, r2
mov r2, r3
bl func_ov61_021752d0
cmp r0, #0
bne _02175458
mov r0, #0
ldmia sp!, {r3, pc}
_0217541c:
cmp r1, #0x67
bne _02175440
add r1, r2, #3
mov r2, ip
bl func_ov61_021752dc
cmp r0, #0
bne _02175458
mov r0, #0
ldmia sp!, {r3, pc}
_02175440:
cmp r1, #0x68
bne _02175458
bl func_ov61_02175370
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
_02175458:
mov r0, #1
ldmia sp!, {r3, pc}
arm_func_end func_ov61_021753a8
.global func_ov61_02175460
arm_func_start func_ov61_02175460
func_ov61_02175460: ; 0x02175460
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #0x18
ldr r5, [sp, #0x38]
mov r6, r3
mov r8, r1
mov r7, r2
mov r1, r6
mov r2, r5
mov r9, r0
bl func_ov61_0217616c
str r0, [sp, #0x14]
ldr r0, [r9, #0x2c]
cmp r0, #0
beq _021754cc
mov r0, #0
stmia sp, {r0, r8}
str r7, [sp, #8]
str r0, [sp, #0xc]
ldr r1, [sp, #0x14]
mov r0, r9
mov r2, r6
mov r3, r5
bl func_ov61_02173ae0
cmp r0, #0
addeq sp, sp, #0x18
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_021754cc:
cmp r7, #2
ble _021754f0
ldr r1, _0217570c ; =data_ov61_0217e0e4
mov r0, r8
mov r2, #2
bl func_0204366c
cmp r0, #0
moveq r4, #1
beq _021754f4
_021754f0:
mov r4, #0
_021754f4:
ldr r0, [sp, #0x14]
cmp r0, #0
bne _021755f8
add ip, sp, #0x10
mov r0, r9
mov r1, r6
mov r2, r5
mov r3, r8
stmia sp, {r7, ip}
bl func_ov61_02173c04
cmp r0, #0
addeq sp, sp, #0x18
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
ldr r0, [sp, #0x10]
cmp r0, #0
addne sp, sp, #0x18
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
cmp r4, #0
beq _02175554
ldrb r0, [r8, #2]
cmp r0, #1
beq _02175594
_02175554:
cmp r4, #0
beq _02175568
ldrb r0, [r8, #2]
cmp r0, #0x68
beq _02175588
_02175568:
mov r0, r9
mov r1, r6
mov r2, r5
bl func_ov61_02176034
cmp r0, #0
addeq sp, sp, #0x18
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02175588:
add sp, sp, #0x18
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02175594:
ldr r0, [r9, #0x20]
cmp r0, #0
addeq sp, sp, #0x18
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
add r1, sp, #0x14
mov r0, r9
mov r2, r6
mov r3, r5
bl func_ov61_02173d2c
cmp r0, #0
beq _021755f8
cmp r0, #5
beq _021755ec
mov r0, r9
mov r1, r6
mov r2, r5
bl func_ov61_02176034
cmp r0, #0
addeq sp, sp, #0x18
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_021755ec:
add sp, sp, #0x18
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_021755f8:
ldr r5, [sp, #0x14]
ldr r0, [r5, #0xc]
cmp r0, #7
bne _02175640
cmp r4, #0
beq _0217561c
ldrb r0, [r8, #2]
cmp r0, #0x68
beq _02175634
_0217561c:
mov r0, r5
bl func_ov61_02176018
cmp r0, #0
addeq sp, sp, #0x18
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02175634:
add sp, sp, #0x18
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02175640:
cmp r4, #0
beq _02175670
cmp r7, #4
blt _02175670
ldr r1, _0217570c ; =data_ov61_0217e0e4
add r0, r8, #2
mov r2, #2
bl func_0204366c
cmp r0, #0
addeq r8, r8, #2
subeq r7, r7, #2
moveq r4, #0
_02175670:
cmp r4, #0
bne _0217569c
mov r0, r5
mov r1, r8
mov r2, r7
bl func_ov61_021747ac
cmp r0, #0
movne r0, #1
add sp, sp, #0x18
moveq r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_0217569c:
ldrb r1, [r8, #2]
cmp r1, #0
bge _021756c4
mov r0, r5
bl func_ov61_02174670
cmp r0, #0
movne r0, #1
add sp, sp, #0x18
moveq r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_021756c4:
cmp r1, #8
mov r0, r5
mov r2, r8
bge _021756f0
mov r3, r7
bl func_ov61_0217505c
cmp r0, #0
movne r0, #1
add sp, sp, #0x18
moveq r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_021756f0:
mov r3, r7
bl func_ov61_021753a8
cmp r0, #0
movne r0, #1
moveq r0, #0
add sp, sp, #0x18
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_02175460
_0217570c: .word data_ov61_0217e0e4
.global func_ov61_02175710
arm_func_start func_ov61_02175710
func_ov61_02175710: ; 0x02175710
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #0x10
mov r7, r0
mov r6, r1
mov r5, r2
bl func_ov61_0217616c
ldr r1, [r7, #0x2c]
mov r4, r0
cmp r1, #0
beq _02175774
mov r0, #1
str r0, [sp]
mov ip, #0
str ip, [sp, #4]
str ip, [sp, #8]
mov r0, r7
mov r1, r4
mov r2, r6
mov r3, r5
str ip, [sp, #0xc]
bl func_ov61_02173ae0
cmp r0, #0
addeq sp, sp, #0x10
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
_02175774:
cmp r4, #0
addeq sp, sp, #0x10
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, [r4, #0xc]
cmp r0, #0
bne _021757e4
ldr r0, [r4, #0x20]
cmp r0, #0
beq _021757b4
bl func_ov61_021665e8
ldr r2, [r4, #0x1c]
ldr r1, [r4, #0x20]
sub r0, r0, r2
cmp r0, r1
bhs _021757c0
_021757b4:
add sp, sp, #0x10
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021757c0:
mov r0, r4
mov r1, #6
mov r2, #1
bl func_ov61_021745dc
cmp r0, #0
bne _02175804
add sp, sp, #0x10
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021757e4:
mov r0, r4
mov r1, #2
mov r2, #1
bl func_ov61_021745dc
cmp r0, #0
addeq sp, sp, #0x10
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
_02175804:
mov r0, #1
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_02175710
.global func_ov61_02175810
arm_func_start func_ov61_02175810
func_ov61_02175810: ; 0x02175810
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x5f0
mov r10, r0
ldr r0, [r10]
bl func_ov61_02166914
cmp r0, #0
beq _02175930
mvn r5, #0xe
sub r4, r5, #0x14
add r6, r5, #0xe
add r7, sp, #0x14
mov r9, #8
add r8, sp, #0xc
add r11, sp, #8
_02175848:
str r9, [sp, #8]
stmia sp, {r8, r11}
ldr r0, [r10]
ldr r2, _0217593c ; =0x000005dc
mov r1, r7
mov r3, #0
bl func_ov61_02166bc0
mov r2, r0
cmp r2, r6
bne _021758dc
ldr r0, [r10]
bl func_ov61_02166ce0
cmp r0, r5
bne _021758c0
ldrh ip, [sp, #0xe]
ldr r1, [sp, #0x10]
mov r0, r10
mov r2, ip, asr #0x8
and r3, r2, #0xff
mov r2, ip, lsl #0x8
and r2, r2, #0xff00
orr r2, r3, r2
mov r2, r2, lsl #0x10
mov r2, r2, lsr #0x10
bl func_ov61_02175710
cmp r0, #0
bne _02175920
add sp, sp, #0x5f0
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021758c0:
cmp r0, r4
beq _02175920
mov r0, r10
bl func_ov61_02176968
add sp, sp, #0x5f0
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_021758dc:
ldrh ip, [sp, #0xe]
mov r0, r10
mov r1, r7
mov r3, ip, asr #0x8
mov ip, ip, lsl #0x8
and r3, r3, #0xff
and ip, ip, #0xff00
orr r3, r3, ip
mov r3, r3, lsl #0x10
mov r3, r3, lsr #0x10
str r3, [sp]
ldr r3, [sp, #0x10]
bl func_ov61_02175460
cmp r0, #0
addeq sp, sp, #0x5f0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02175920:
ldr r0, [r10]
bl func_ov61_02166914
cmp r0, #0
bne _02175848
_02175930:
mov r0, #1
add sp, sp, #0x5f0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02175810
_0217593c: .word 0x000005dc
.global func_ov61_02175940
arm_func_start func_ov61_02175940
func_ov61_02175940: ; 0x02175940
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x10
add r4, sp, #0
mov r3, #0
mov r5, r0
str r3, [r4]
str r3, [r4, #4]
str r3, [r4, #8]
str r3, [r4, #0xc]
ldr r0, [r5, #0x58]
str r0, [sp]
str r2, [sp, #4]
strh r1, [sp, #8]
bl func_ov61_021665e8
str r0, [sp, #0xc]
ldr r0, [r5, #0x60]
bl func_ov61_02165a68
mov r4, r0
ldr r0, [r5, #0x60]
add r1, sp, #0
bl func_ov61_02165ad8
ldr r0, [r5, #0x60]
bl func_ov61_02165a68
add r1, r4, #1
cmp r1, r0
moveq r0, #1
movne r0, #0
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02175940
.global func_ov61_021759b4
arm_func_start func_ov61_021759b4
func_ov61_021759b4: ; 0x021759b4
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r5, r2
add r0, r7, #0x50
mov r6, r1
mov r4, r3
bl func_ov61_021731f0
cmp r0, r5
bge _021759f4
mov r0, r7
bl func_ov61_02174684
cmp r0, #0
moveq r0, #0
movne r0, #1
strne r0, [r4]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_021759f4:
ldrh r1, [r7, #0x64]
mov r0, r7
mov r2, r5
bl func_ov61_02175940
cmp r0, #0
bne _02175a28
mov r0, r7
bl func_ov61_02174684
cmp r0, #0
moveq r0, #0
movne r0, #1
strne r0, [r4]
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02175a28:
ldr r1, _02175a74 ; =data_ov61_0217e0e4
add r0, r7, #0x50
mov r2, #2
bl func_ov61_021732bc
add r0, r7, #0x50
and r1, r6, #0xff
bl func_ov61_02173200
ldrh r1, [r7, #0x64]
add r0, r7, #0x50
add r2, r1, #1
strh r2, [r7, #0x64]
bl func_ov61_02173250
ldrh r1, [r7, #0x66]
add r0, r7, #0x50
bl func_ov61_02173250
mov r0, #0
str r0, [r4]
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_021759b4
_02175a74: .word data_ov61_0217e0e4
.global func_ov61_02175a78
arm_func_start func_ov61_02175a78
func_ov61_02175a78: ; 0x02175a78
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r0, [r5, #0x60]
bl func_ov61_02165a68
mov r4, r0
cmp r4, #0
bgt _02175aa8
ldr r0, _02175adc ; =data_ov61_0217e0e8
ldr r1, _02175ae0 ; =data_ov61_0217e0f0
ldr r2, _02175ae4 ; =data_ov61_0217e0c4
ldr r3, _02175ae8 ; =0x00000475
bl func_02042f80
_02175aa8:
ldr r0, [r5, #0x60]
sub r1, r4, #1
bl func_ov61_02165a70
ldmia r0, {r1, r2}
ldr r3, [r5, #0x50]
mov r0, r5
add r1, r3, r1
bl func_ov61_02173eb8
cmp r0, #0
mov r0, #0
strne r0, [r5, #0x90]
movne r0, #1
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02175a78
_02175adc: .word data_ov61_0217e0e8
_02175ae0: .word data_ov61_0217e0f0
_02175ae4: .word data_ov61_0217e0c4
_02175ae8: .word 0x00000475
.global func_ov61_02175aec
arm_func_start func_ov61_02175aec
func_ov61_02175aec: ; 0x02175aec
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
mov r4, r2
mov r5, r1
add r3, sp, #0
add r2, r4, #7
mov r1, #0
mov r6, r0
bl func_ov61_021759b4
cmp r0, #0
addeq sp, sp, #4
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, pc}
ldr r0, [sp]
cmp r0, #0
addne sp, sp, #4
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, pc}
mov r1, r5
mov r2, r4
add r0, r6, #0x50
bl func_ov61_021732bc
mov r0, r6
bl func_ov61_02175a78
cmp r0, #0
movne r0, #1
moveq r0, #0
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
arm_func_end func_ov61_02175aec
.global func_ov61_02175b60
arm_func_start func_ov61_02175b60
func_ov61_02175b60: ; 0x02175b60
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
add r3, sp, #0
mov r1, #1
mov r2, #0x27
mov r5, r0
bl func_ov61_021759b4
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r0, [sp]
cmp r0, #0
movne r0, #1
ldmneia sp!, {r3, r4, r5, pc}
mov r1, r4
add r0, r5, #0x50
mov r2, #0x20
bl func_ov61_021732bc
mov r0, r5
bl func_ov61_02175a78
cmp r0, #0
movne r0, #1
moveq r0, #0
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02175b60
.global func_ov61_02175bc0
arm_func_start func_ov61_02175bc0
func_ov61_02175bc0: ; 0x02175bc0
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
mov r5, r1
mov r4, r2
add r3, sp, #0
mov r1, #2
mov r2, #0x47
mov r6, r0
bl func_ov61_021759b4
cmp r0, #0
addeq sp, sp, #4
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, pc}
ldr r0, [sp]
cmp r0, #0
addne sp, sp, #4
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, pc}
mov r1, r5
add r0, r6, #0x50
mov r2, #0x20
bl func_ov61_021732bc
mov r1, r4
add r0, r6, #0x50
mov r2, #0x20
bl func_ov61_021732bc
mov r0, r6
bl func_ov61_02175a78
cmp r0, #0
ldrne r1, [r6, #0x88]
moveq r0, #0
movne r0, #1
strne r1, [r6, #0x8c]
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
arm_func_end func_ov61_02175bc0
.global func_ov61_02175c4c
arm_func_start func_ov61_02175c4c
func_ov61_02175c4c: ; 0x02175c4c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r4, r3
mov r6, r1
mov r5, r2
add r3, sp, #0
add r2, r4, #0x27
mov r1, #3
mov r7, r0
bl func_ov61_021759b4
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, [sp]
cmp r0, #0
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
mov r1, r6
add r0, r7, #0x50
mov r2, #0x20
bl func_ov61_021732bc
mov r1, r5
mov r2, r4
add r0, r7, #0x50
bl func_ov61_021732bc
mov r0, r7
bl func_ov61_02175a78
cmp r0, #0
movne r0, #1
moveq r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_02175c4c
.global func_ov61_02175cc4
arm_func_start func_ov61_02175cc4
func_ov61_02175cc4: ; 0x02175cc4
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
add r3, sp, #0
mov r1, #4
mov r2, #7
mov r4, r0
bl func_ov61_021759b4
cmp r0, #0
addeq sp, sp, #4
moveq r0, #0
ldmeqia sp!, {r3, r4, pc}
ldr r0, [sp]
cmp r0, #0
addne sp, sp, #4
movne r0, #1
ldmneia sp!, {r3, r4, pc}
mov r0, r4
bl func_ov61_02175a78
cmp r0, #0
movne r0, #1
moveq r0, #0
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
arm_func_end func_ov61_02175cc4
.global func_ov61_02175d20
arm_func_start func_ov61_02175d20
func_ov61_02175d20: ; 0x02175d20
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
mov r4, r2
mov r5, r1
add r3, sp, #0
add r2, r4, #7
mov r1, #5
mov r6, r0
bl func_ov61_021759b4
cmp r0, #0
addeq sp, sp, #4
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, pc}
ldr r0, [sp]
cmp r0, #0
addne sp, sp, #4
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, pc}
mov r1, r5
mov r2, r4
add r0, r6, #0x50
bl func_ov61_021732bc
mov r0, r6
bl func_ov61_02175a78
cmp r0, #0
movne r0, #1
moveq r0, #0
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
arm_func_end func_ov61_02175d20
.global func_ov61_02175d94
arm_func_start func_ov61_02175d94
func_ov61_02175d94: ; 0x02175d94
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
add r3, sp, #0
mov r1, #6
mov r2, #7
mov r4, r0
bl func_ov61_021759b4
cmp r0, #0
addeq sp, sp, #4
moveq r0, #0
ldmeqia sp!, {r3, r4, pc}
ldr r0, [sp]
cmp r0, #0
addne sp, sp, #4
movne r0, #1
ldmneia sp!, {r3, r4, pc}
mov r0, r4
bl func_ov61_02175a78
cmp r0, #0
movne r0, #1
moveq r0, #0
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
arm_func_end func_ov61_02175d94
.global func_ov61_02175df0
arm_func_start func_ov61_02175df0
func_ov61_02175df0: ; 0x02175df0
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
mov r1, #7
add r3, sp, #0
mov r2, r1
mov r4, r0
bl func_ov61_021759b4
cmp r0, #0
addeq sp, sp, #4
moveq r0, #0
ldmeqia sp!, {r3, r4, pc}
ldr r0, [sp]
cmp r0, #0
addne sp, sp, #4
movne r0, #1
ldmneia sp!, {r3, r4, pc}
mov r0, r4
bl func_ov61_02175a78
cmp r0, #0
movne r0, #1
moveq r0, #0
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
arm_func_end func_ov61_02175df0
.global func_ov61_02175e4c
arm_func_start func_ov61_02175e4c
func_ov61_02175e4c: ; 0x02175e4c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r7, r2
mov r9, r0
mov r8, r1
cmp r7, #2
blt _02175e7c
ldr r1, _02175f10 ; =data_ov61_0217e0e4
mov r0, r8
mov r2, #2
bl func_0204366c
cmp r0, #0
beq _02175e9c
_02175e7c:
mov r0, r9
mov r1, r8
mov r2, r7
bl func_ov61_02173eb8
cmp r0, #0
moveq r0, #0
movne r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02175e9c:
add r6, r7, #2
add r0, r9, #0x50
bl func_ov61_021731f0
cmp r0, r6
movlt r0, #1
ldmltia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
ldr r1, _02175f10 ; =data_ov61_0217e0e4
add r0, r9, #0x50
ldr r5, [r9, #0x50]
ldr r4, [r9, #0x58]
mov r2, #2
bl func_ov61_021732bc
mov r1, r8
mov r2, r7
add r0, r9, #0x50
bl func_ov61_021732bc
mov r0, r9
mov r2, r6
add r1, r5, r4
bl func_ov61_02173eb8
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
mov r2, r6
add r0, r9, #0x50
mvn r1, #0
bl func_ov61_02173344
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_02175e4c
_02175f10: .word data_ov61_0217e0e4
.global func_ov61_02175f14
arm_func_start func_ov61_02175f14
func_ov61_02175f14: ; 0x02175f14
stmdb sp!, {r4, lr}
sub sp, sp, #8
ldr r1, _02175f74 ; =data_ov61_0217e0e4
mov r4, r0
ldrb r3, [r1]
ldrb r2, [r1, #1]
add r0, sp, #0
mov r1, #0x64
strb r1, [sp, #2]
strb r3, [r0]
strb r2, [r0, #1]
ldrh r2, [r4, #0x66]
mov r1, #3
bl func_ov61_021745b8
add r1, sp, #0
mov r0, r4
mov r2, #5
bl func_ov61_02173eb8
cmp r0, #0
mov r0, #0
strne r0, [r4, #0x90]
movne r0, #1
add sp, sp, #8
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02175f14
_02175f74: .word data_ov61_0217e0e4
.global func_ov61_02175f78
arm_func_start func_ov61_02175f78
func_ov61_02175f78: ; 0x02175f78
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #8
ldr r3, _02176000 ; =data_ov61_0217e0e4
mov r4, r1
ldrb lr, [r3]
ldrb ip, [r3, #1]
mov r5, r0
add r0, sp, #0
mov r7, r2
mov r3, #0x65
mov r2, r4
mov r6, #0
mov r1, #3
strb lr, [r0]
strb ip, [r0, #1]
strb r3, [sp, #2]
bl func_ov61_021745b8
cmp r4, r7
add r6, r6, #5
beq _02175fdc
add r0, sp, #0
mov r1, r6
mov r2, r7
bl func_ov61_021745b8
add r6, r6, #2
_02175fdc:
add r1, sp, #0
mov r0, r5
mov r2, r6
bl func_ov61_02173eb8
cmp r0, #0
moveq r0, #0
movne r0, #1
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02175f78
_02176000: .word data_ov61_0217e0e4
.global func_ov61_02176004
arm_func_start func_ov61_02176004
func_ov61_02176004: ; 0x02176004
ldr ip, _02176014 ; =func_ov61_02173eb8
mov r3, #0x67
strb r3, [r1, #2]
bx ip
.align 2, 0
arm_func_end func_ov61_02176004
_02176014: .word func_ov61_02173eb8
.global func_ov61_02176018
arm_func_start func_ov61_02176018
func_ov61_02176018: ; 0x02176018
ldr ip, _02176030 ; =func_ov61_02176034
mov r1, r0
ldrh r2, [r1, #4]
ldr r0, [r1, #8]
ldr r1, [r1]
bx ip
.align 2, 0
arm_func_end func_ov61_02176018
_02176030: .word func_ov61_02176034
.global func_ov61_02176034
arm_func_start func_ov61_02176034
func_ov61_02176034: ; 0x02176034
stmdb sp!, {r4, lr}
sub sp, sp, #8
ldr lr, _0217607c ; =data_ov61_0217e0e4
mov ip, #0x68
ldrb r4, [lr]
ldrb lr, [lr, #1]
add r3, sp, #4
strb ip, [sp, #6]
strb r4, [r3]
strb lr, [r3, #1]
mov ip, #3
str ip, [sp]
bl func_ov61_021766f4
cmp r0, #0
movne r0, #1
moveq r0, #0
add sp, sp, #8
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02176034
_0217607c: .word data_ov61_0217e0e4
.global func_ov61_02176080
arm_func_start func_ov61_02176080
func_ov61_02176080: ; 0x02176080
stmdb sp!, {r3, r4, r5, lr}
mov r4, r0
mov r5, r1
ldr r1, [r5]
ldrh r2, [r4, #0x66]
ldr r0, [r4, #0x50]
add r1, r1, #5
bl func_ov61_021745b8
ldr r3, [r4, #0x50]
ldmia r5, {r1, r2}
mov r0, r4
add r1, r3, r1
bl func_ov61_02173eb8
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r0, [r4, #0x88]
str r0, [r5, #0xc]
ldr r0, [r5]
ldr r1, [r4, #0x50]
add r0, r0, #2
ldrb r0, [r1, r0]
cmp r0, #2
ldreq r0, [r4, #0x88]
streq r0, [r4, #0x8c]
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02176080
.global func_ov61_021760ec
arm_func_start func_ov61_021760ec
func_ov61_021760ec: ; 0x021760ec
stmdb sp!, {r3, lr}
cmp r3, #0
beq _02176100
bl func_ov61_02175aec
ldmia sp!, {r3, pc}
_02176100:
bl func_ov61_02175e4c
ldmia sp!, {r3, pc}
arm_func_end func_ov61_021760ec
.global func_ov61_02176108
arm_func_start func_ov61_02176108
func_ov61_02176108: ; 0x02176108
stmdb sp!, {r3, lr}
ldr r2, [r0]
ldrh r0, [r2, #4]
ldr r2, [r2]
mul r0, r2, r0
bl FastDivide
mov r0, r1
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02176108
.global func_ov61_02176128
arm_func_start func_ov61_02176128
func_ov61_02176128: ; 0x02176128
ldr r3, [r0]
ldr r2, [r1]
ldr r0, [r3]
ldr r1, [r2]
cmp r0, r1
subne r0, r0, r1
bxne lr
ldrh r1, [r3, #4]
ldrh r0, [r2, #4]
sub r0, r1, r0
mov r0, r0, lsl #0x10
mov r0, r0, asr #0x10
bx lr
arm_func_end func_ov61_02176128
.global func_ov61_0217615c
arm_func_start func_ov61_0217615c
func_ov61_0217615c: ; 0x0217615c
ldr ip, _02176168 ; =func_ov61_02174194
ldr r0, [r0]
bx ip
.align 2, 0
arm_func_end func_ov61_0217615c
_02176168: .word func_ov61_02174194
.global func_ov61_0217616c
arm_func_start func_ov61_0217616c
func_ov61_0217616c: ; 0x0217616c
stmdb sp!, {lr}
sub sp, sp, #0xa4
add r3, sp, #4
str r1, [sp, #4]
strh r2, [sp, #8]
str r3, [sp]
ldr r0, [r0, #0xc]
add r1, sp, #0
bl func_ov61_021663d8
cmp r0, #0
ldrne r0, [r0]
moveq r0, #0
add sp, sp, #0xa4
ldmia sp!, {pc}
arm_func_end func_ov61_0217616c
.global func_ov61_021761a4
arm_func_start func_ov61_021761a4
func_ov61_021761a4: ; 0x021761a4
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0x1c
mov r4, r1
mov r6, r3
mov r5, r0
mov r7, r2
bl func_ov61_0216664c
cmp r6, #0
moveq r6, #0x10000
cmp r7, #0
add r1, sp, #0x10
add r2, sp, #8
mov r0, r4
moveq r7, #0x10000
bl func_ov61_02176a54
cmp r0, #0
addeq sp, sp, #0x1c
moveq r0, #4
ldmeqia sp!, {r4, r5, r6, r7, pc}
mov r0, #0x44
bl func_ov61_0213e10c
movs r4, r0
addeq sp, sp, #0x1c
moveq r0, #1
ldmeqia sp!, {r4, r5, r6, r7, pc}
mov r1, #0
mov r2, #0x44
bl func_02043600
mvn r0, #0
str r0, [r4]
str r6, [r4, #0x3c]
ldr r1, [sp, #0x30]
str r7, [r4, #0x38]
str r1, [r4, #0x24]
ldr r0, _021763b8 ; =func_ov61_02176128
ldr r3, _021763bc ; =func_ov61_02176108
str r0, [sp]
mov ip, #0
mov r0, #4
mov r1, #0x20
mov r2, #2
str ip, [sp, #4]
bl func_ov61_02166064
str r0, [r4, #0xc]
cmp r0, #0
bne _02176270
mov r0, r4
bl func_ov61_0213e13c
add sp, sp, #0x1c
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, pc}
_02176270:
mov r0, #4
ldr r2, _021763c0 ; =func_ov61_0217615c
mov r1, r0
bl func_ov61_02165938
str r0, [r4, #0x10]
cmp r0, #0
bne _021762a8
ldr r0, [r4, #0xc]
bl func_ov61_021661a4
mov r0, r4
bl func_ov61_0213e13c
add sp, sp, #0x1c
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, pc}
_021762a8:
mov r0, #2
mov r1, r0
mov r2, #0
bl func_ov61_02166a84
mvn r1, #0
str r0, [r4]
cmp r0, r1
bne _021762ec
ldr r0, [r4, #0xc]
bl func_ov61_021661a4
ldr r0, [r4, #0x10]
bl func_ov61_021659fc
mov r0, r4
bl func_ov61_0213e13c
add sp, sp, #0x1c
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, pc}
_021762ec:
ldrh r0, [sp, #8]
add r1, sp, #0x14
mov ip, #0
mov r2, r0, asr #0x8
mov r0, r0, lsl #0x8
and r2, r2, #0xff
and r0, r0, #0xff00
orr r0, r2, r0
str ip, [r1]
mov r2, #2
strb r2, [sp, #0x15]
ldr r3, [sp, #0x10]
str ip, [r1, #4]
str r3, [sp, #0x18]
strh r0, [sp, #0x16]
ldr r0, [r4]
mov r2, #8
bl func_ov61_02166ac0
mvn r1, #0
cmp r0, r1
bne _0217636c
ldr r0, [r4]
bl func_ov61_02166a98
ldr r0, [r4, #0xc]
bl func_ov61_021661a4
ldr r0, [r4, #0x10]
bl func_ov61_021659fc
mov r0, r4
bl func_ov61_0213e13c
add sp, sp, #0x1c
mov r0, #3
ldmia sp!, {r4, r5, r6, r7, pc}
_0217636c:
mov r0, #8
str r0, [sp, #0xc]
ldr r0, [r4]
add r1, sp, #0x14
add r2, sp, #0xc
bl func_ov61_02166c98
ldr r1, [sp, #0x18]
mov r0, #0
str r1, [r4, #4]
ldrh r1, [sp, #0x16]
mov r2, r1, asr #0x8
mov r1, r1, lsl #0x8
and r2, r2, #0xff
and r1, r1, #0xff00
orr r1, r2, r1
strh r1, [r4, #8]
str r4, [r5]
add sp, sp, #0x1c
ldmia sp!, {r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_021761a4
_021763b8: .word func_ov61_02176128
_021763bc: .word func_ov61_02176108
_021763c0: .word func_ov61_0217615c
.global func_ov61_021763c4
arm_func_start func_ov61_021763c4
func_ov61_021763c4: ; 0x021763c4
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, [r4, #0x1c]
cmp r0, #0
movne r0, #1
strne r0, [r4, #0x14]
ldmneia sp!, {r4, pc}
ldr r0, [r4]
bl func_ov61_02166a98
ldr r0, [r4, #0xc]
bl func_ov61_021661a4
ldr r0, [r4, #0x10]
bl func_ov61_021659fc
mov r0, r4
bl func_ov61_0213e13c
bl func_ov61_02166650
ldmia sp!, {r4, pc}
arm_func_end func_ov61_021763c4
.global func_ov61_02176408
arm_func_start func_ov61_02176408
func_ov61_02176408: ; 0x02176408
str r1, [r0, #0x20]
bx lr
arm_func_end func_ov61_02176408
.global func_ov61_02176410
arm_func_start func_ov61_02176410
func_ov61_02176410: ; 0x02176410
ldr ip, _0217641c ; =func_ov61_0213e10c
mov r0, #0xa0
bx ip
.align 2, 0
arm_func_end func_ov61_02176410
_0217641c: .word func_ov61_0213e10c
.global func_ov61_02176420
arm_func_start func_ov61_02176420
func_ov61_02176420: ; 0x02176420
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r4, r3
mov r5, r2
mov r3, #0
mov r6, r1
mov r1, r5
mov r2, r4
mov r7, r0
str r3, [sp]
bl func_ov61_0217616c
cmp r0, #0
movne r0, #5
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
bl func_ov61_02176410
str r0, [sp]
cmp r0, #0
beq _021765b0
mov r1, #0
mov r2, #0xa0
bl func_02043600
ldr r0, [sp]
str r5, [r0]
ldr r0, [sp]
strh r4, [r0, #4]
ldr r0, [sp]
str r7, [r0, #8]
bl func_ov61_021665e8
ldr r2, [sp]
mov r1, #0
str r0, [r2, #0x1c]
ldr r2, [sp]
ldr r0, [r2, #0x1c]
str r0, [r2, #0x88]
ldr r0, [sp]
strh r1, [r0, #0x64]
ldr r0, [sp]
strh r1, [r0, #0x66]
ldr r0, [sp]
ldr r1, [r7, #0x3c]
add r0, r0, #0x44
bl func_ov61_021731c4
cmp r0, #0
beq _021765b0
ldr r0, [sp]
ldr r1, [r7, #0x38]
add r0, r0, #0x50
bl func_ov61_021731c4
cmp r0, #0
beq _021765b0
mov r0, #0x10
mov r1, #0x40
mov r2, #0
bl func_ov61_02165938
ldr r1, [sp]
str r0, [r1, #0x5c]
ldr r0, [sp]
ldr r0, [r0, #0x5c]
cmp r0, #0
beq _021765b0
mov r0, #0x10
mov r1, #0x40
mov r2, #0
bl func_ov61_02165938
ldr r1, [sp]
str r0, [r1, #0x60]
ldr r0, [sp]
ldr r0, [r0, #0x60]
cmp r0, #0
beq _021765b0
mov r0, #4
mov r1, #2
mov r2, #0
bl func_ov61_02165938
ldr r1, [sp]
str r0, [r1, #0x98]
ldr r0, [sp]
ldr r0, [r0, #0x98]
cmp r0, #0
beq _021765b0
mov r0, #4
mov r1, #2
mov r2, #0
bl func_ov61_02165938
ldr r1, [sp]
str r0, [r1, #0x9c]
ldr r0, [sp]
ldr r0, [r0, #0x9c]
cmp r0, #0
beq _021765b0
ldr r0, [r7, #0xc]
add r1, sp, #0
bl func_ov61_0216628c
mov r0, r7
mov r1, r5
mov r2, r4
bl func_ov61_0217616c
str r0, [r6]
cmp r0, #0
movne r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
_021765b0:
ldr r0, [sp]
cmp r0, #0
beq _02176628
ldr r0, [r0, #0x44]
bl func_ov61_0213e13c
ldr r0, [sp]
ldr r0, [r0, #0x50]
bl func_ov61_0213e13c
ldr r0, [sp]
ldr r0, [r0, #0x5c]
cmp r0, #0
beq _021765e4
bl func_ov61_021659fc
_021765e4:
ldr r0, [sp]
ldr r0, [r0, #0x60]
cmp r0, #0
beq _021765f8
bl func_ov61_021659fc
_021765f8:
ldr r0, [sp]
ldr r0, [r0, #0x98]
cmp r0, #0
beq _0217660c
bl func_ov61_021659fc
_0217660c:
ldr r0, [sp]
ldr r0, [r0, #0x9c]
cmp r0, #0
beq _02176620
bl func_ov61_021659fc
_02176620:
ldr r0, [sp]
bl func_ov61_0213e13c
_02176628:
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_02176420
.global func_ov61_02176630
arm_func_start func_ov61_02176630
func_ov61_02176630: ; 0x02176630
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r4, r5, r6, lr}
ldr r1, [sp, #0x10]
ldr r0, [r1, #0x14]
cmp r0, #0
ldreq r0, [r1, #0x24]
cmpeq r0, #0
ldmneia sp!, {r4, r5, r6, lr}
addne sp, sp, #0x10
bxne lr
ldr r0, [r1, #0xc]
cmp r0, #7
ldr r0, [r1, #8]
bne _021766dc
ldr r0, [r0, #0x10]
bl func_ov61_02165a68
mov r4, r0
mov r5, #0
cmp r4, #0
ldmleia sp!, {r4, r5, r6, lr}
addle sp, sp, #0x10
bxle lr
_02176688:
ldr r6, [sp, #0x10]
mov r1, r5
ldr r0, [r6, #8]
ldr r0, [r0, #0x10]
bl func_ov61_02165a70
ldr r0, [r0]
cmp r6, r0
bne _021766c4
ldr r0, [r6, #8]
mov r1, r5
ldr r0, [r0, #0x10]
bl func_ov61_02165cec
ldmia sp!, {r4, r5, r6, lr}
add sp, sp, #0x10
bx lr
_021766c4:
add r5, r5, #1
cmp r5, r4
blt _02176688
ldmia sp!, {r4, r5, r6, lr}
add sp, sp, #0x10
bx lr
_021766dc:
ldr r0, [r0, #0xc]
add r1, sp, #0x10
bl func_ov61_02166334
ldmia sp!, {r4, r5, r6, lr}
add sp, sp, #0x10
bx lr
arm_func_end func_ov61_02176630
.global func_ov61_021766f4
arm_func_start func_ov61_021766f4
func_ov61_021766f4: ; 0x021766f4
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #0x18
mov r6, r0
mov r5, r1
add r0, sp, #0x34
add r1, sp, #0x38
mov r4, r2
bl func_ov61_02176bd8
ldr r0, [r6]
bl func_ov61_0216693c
cmp r0, #0
addeq sp, sp, #0x18
moveq r0, #1
ldmeqia sp!, {r4, r5, r6, lr}
addeq sp, sp, #0x10
bxeq lr
mov r1, r4, asr #0x8
mov r0, r4, lsl #0x8
add r2, sp, #0x10
mov r3, #0
str r3, [r2, #4]
and r1, r1, #0xff
and r0, r0, #0xff00
orr r0, r1, r0
str r3, [r2]
mov r1, #2
strh r0, [sp, #0x12]
strb r1, [sp, #0x11]
str r5, [sp, #0x14]
str r2, [sp]
mov r0, #8
str r0, [sp, #4]
ldr r0, [r6]
ldr r1, [sp, #0x34]
ldr r2, [sp, #0x38]
bl func_ov61_02166c04
mvn r1, #0
cmp r0, r1
bne _02176820
ldr r0, [r6]
bl func_ov61_02166ce0
mvn r2, #0xe
cmp r0, r2
bne _021767d4
mov r0, r6
mov r1, r5
mov r2, r4
bl func_ov61_02175710
cmp r0, #0
bne _02176888
add sp, sp, #0x18
mov r0, #0
ldmia sp!, {r4, r5, r6, lr}
add sp, sp, #0x10
bx lr
_021767d4:
sub r1, r2, #0x1b
cmp r0, r1
addne r1, r2, #9
cmpne r0, r1
addeq sp, sp, #0x18
moveq r0, #1
ldmeqia sp!, {r4, r5, r6, lr}
addeq sp, sp, #0x10
bxeq lr
sub r1, r2, #0x14
cmp r0, r1
beq _02176888
mov r0, r6
bl func_ov61_02176968
add sp, sp, #0x18
mov r0, #0
ldmia sp!, {r4, r5, r6, lr}
add sp, sp, #0x10
bx lr
_02176820:
ldr r0, [r6, #0x28]
cmp r0, #0
beq _02176888
mov r0, r6
mov r1, r5
mov r2, r4
bl func_ov61_0217616c
mov r1, #0
str r1, [sp]
ldr r2, [sp, #0x34]
mov r1, r0
str r2, [sp, #4]
ldr ip, [sp, #0x38]
mov r3, r4
mov r0, r6
mov r2, r5
str ip, [sp, #8]
mov r4, #1
str r4, [sp, #0xc]
bl func_ov61_02173ae0
cmp r0, #0
addeq sp, sp, #0x18
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, lr}
addeq sp, sp, #0x10
bxeq lr
_02176888:
mov r0, #1
add sp, sp, #0x18
ldmia sp!, {r4, r5, r6, lr}
add sp, sp, #0x10
bx lr
arm_func_end func_ov61_021766f4
.global func_ov61_0217689c
arm_func_start func_ov61_0217689c
func_ov61_0217689c: ; 0x0217689c
stmdb sp!, {r4, lr}
ldr r4, [r0]
ldr r1, [r1]
ldr r0, [r4, #0xc]
cmp r0, #7
beq _021768c8
mov r0, r4
bl func_ov61_02174080
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, pc}
_021768c8:
ldr r0, [r4, #0xc]
cmp r0, #7
ldreq r0, [r4, #0x14]
cmpeq r0, #0
ldreq r0, [r4, #0x24]
cmpeq r0, #0
bne _021768ec
mov r0, r4
bl func_ov61_02176630
_021768ec:
mov r0, #1
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0217689c
.global func_ov61_021768f4
arm_func_start func_ov61_021768f4
func_ov61_021768f4: ; 0x021768f4
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
mov r4, r0
bl func_ov61_021665e8
str r0, [sp]
ldr r0, [r4, #0xc]
ldr r1, _0217692c ; =func_ov61_0217689c
add r2, sp, #0
bl func_ov61_021664e4
cmp r0, #0
moveq r0, #1
movne r0, #0
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
.align 2, 0
arm_func_end func_ov61_021768f4
_0217692c: .word func_ov61_0217689c
.global func_ov61_02176930
arm_func_start func_ov61_02176930
func_ov61_02176930: ; 0x02176930
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r0, [r5, #0x10]
bl func_ov61_02165a68
subs r4, r0, #1
ldmmiia sp!, {r3, r4, r5, pc}
_02176948:
ldr r0, [r5, #0x10]
mov r1, r4
bl func_ov61_02165a70
ldr r0, [r0]
bl func_ov61_02176630
subs r4, r4, #1
bpl _02176948
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02176930
.global func_ov61_02176968
arm_func_start func_ov61_02176968
func_ov61_02176968: ; 0x02176968
stmdb sp!, {r4, lr}
mov r4, r0
ldr r1, [r4, #0x18]
cmp r1, #0
ldmneia sp!, {r4, pc}
mov r1, #1
str r1, [r4, #0x18]
bl func_ov61_021744b8
mov r0, r4
bl func_ov61_021733e4
cmp r0, #0
ldmeqia sp!, {r4, pc}
mov r0, r4
bl func_ov61_021763c4
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02176968
.global func_ov61_021769a4
arm_func_start func_ov61_021769a4
func_ov61_021769a4: ; 0x021769a4
stmdb sp!, {r3, r4, r5, lr}
movs r4, r2
mov r5, r1
bne _021769d0
ldr r2, _02176a40 ; =data_ov61_02181588
ldr r3, _02176a44 ; =data_ov61_0218158c
ldr ip, [r2]
mov r1, #0x16
eor ip, ip, #1
mla r4, ip, r1, r3
str ip, [r2]
_021769d0:
cmp r0, #0
beq _02176a18
str r0, [sp]
cmp r5, #0
beq _02176a00
bl func_ov61_02159554
mov r2, r0
ldr r1, _02176a48 ; =data_ov61_0217e114
mov r0, r4
mov r3, r5
bl func_020459b8
b _02176a38
_02176a00:
bl func_ov61_02159554
mov r2, r0
ldr r1, _02176a4c ; =data_ov61_0217e11c
mov r0, r4
bl func_020459b8
b _02176a38
_02176a18:
cmp r5, #0
moveq r0, #0
streqb r0, [r4]
beq _02176a38
ldr r1, _02176a50 ; =data_ov61_0217e120
mov r0, r4
mov r2, r5
bl func_020459b8
_02176a38:
mov r0, r4
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_021769a4
_02176a40: .word data_ov61_02181588
_02176a44: .word data_ov61_0218158c
_02176a48: .word data_ov61_0217e114
_02176a4c: .word data_ov61_0217e11c
_02176a50: .word data_ov61_0217e120
.global func_ov61_02176a54
arm_func_start func_ov61_02176a54
func_ov61_02176a54: ; 0x02176a54
stmdb sp!, {r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #0x104
movs r8, r0
mov r7, r1
ldrnesb r1, [r8]
mov r6, r2
cmpne r1, #0
moveq r4, #0
moveq r5, r4
beq _02176ba8
mov r1, #0x3a
bl strchr
movs r5, r0
moveq r5, #0
beq _02176b64
cmp r5, r8
moveq r8, #0
moveq r4, r8
beq _02176adc
sub r9, r5, r8
cmp r9, #0x100
blt _02176ac0
ldr r0, _02176bc4 ; =data_ov61_0217e124
ldr r1, _02176bc8 ; =data_ov61_0217e144
ldr r2, _02176bcc ; =data_ov61_0217e100
mov r3, #0x81
bl func_02042f80
_02176ac0:
add r0, sp, #0
mov r1, r8
mov r2, r9
bl func_02043594
add r8, sp, #0
mov r0, #0
strb r0, [r8, r9]
_02176adc:
ldrsb r0, [r5, #1]
add r3, r5, #1
cmp r0, #0
beq _02176b34
ldr r1, _02176bd0 ; =data_02056d98
mov r2, #0
_02176af4:
cmp r0, #0
blt _02176b04
cmp r0, #0x80
blt _02176b0c
_02176b04:
mov r0, r2
b _02176b18
_02176b0c:
mov r0, r0, lsl #0x1
ldrh r0, [r1, r0]
and r0, r0, #8
_02176b18:
cmp r0, #0
addeq sp, sp, #0x104
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, pc}
ldrsb r0, [r3, #1]!
cmp r0, #0
bne _02176af4
_02176b34:
add r0, r5, #1
bl func_0204902c
cmp r0, #0
blt _02176b50
ldr r1, _02176bd4 ; =0x0000ffff
cmp r0, r1
ble _02176b5c
_02176b50:
add sp, sp, #0x104
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, r9, pc}
_02176b5c:
mov r0, r0, lsl #0x10
mov r5, r0, lsr #0x10
_02176b64:
cmp r8, #0
beq _02176ba8
mov r0, r8
bl func_ov61_02166cc4
mov r4, r0
mvn r0, #0
cmp r4, r0
bne _02176ba8
mov r0, r8
bl func_ov61_021590ac
cmp r0, #0
addeq sp, sp, #0x104
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, pc}
ldr r0, [r0, #0xc]
ldr r0, [r0]
ldr r4, [r0]
_02176ba8:
cmp r7, #0
strne r4, [r7]
cmp r6, #0
strneh r5, [r6]
mov r0, #1
add sp, sp, #0x104
ldmia sp!, {r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_02176a54
_02176bc4: .word data_ov61_0217e124
_02176bc8: .word data_ov61_0217e144
_02176bcc: .word data_ov61_0217e100
_02176bd0: .word data_02056d98
_02176bd4: .word 0x0000ffff
.global func_ov61_02176bd8
arm_func_start func_ov61_02176bd8
func_ov61_02176bd8: ; 0x02176bd8
stmdb sp!, {r4, lr}
ldr r2, [r0]
mov r4, r1
cmp r2, #0
bne _02176c00
ldr r2, _02176c24 ; =data_ov61_0217e154
mov r1, #0
str r2, [r0]
str r1, [r4]
ldmia sp!, {r4, pc}
_02176c00:
ldr r1, [r4]
mvn r0, #0
cmp r1, r0
ldmneia sp!, {r4, pc}
mov r0, r2
bl strlen
add r0, r0, #1
str r0, [r4]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02176bd8
_02176c24: .word data_ov61_0217e154
.global func_ov61_02176c28
arm_func_start func_ov61_02176c28
func_ov61_02176c28: ; 0x02176c28
stmdb sp!, {r4, r5, r6, lr}
ldr r1, _02176c8c ; =data_ov61_021815b8
mov r6, r0
ldr r0, [r1, #0x10]
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
mov r5, #0
bl func_ov61_02165a68
cmp r0, #0
ble _02176c84
ldr r4, _02176c8c ; =data_ov61_021815b8
_02176c58:
ldr r0, [r4, #0x10]
mov r1, r5
bl func_ov61_02165a70
ldr r1, [r0, #8]
cmp r1, r6
ldmeqia sp!, {r4, r5, r6, pc}
ldr r0, [r4, #0x10]
add r5, r5, #1
bl func_ov61_02165a68
cmp r5, r0
blt _02176c58
_02176c84:
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02176c28
_02176c8c: .word data_ov61_021815b8
.global func_ov61_02176c90
arm_func_start func_ov61_02176c90
func_ov61_02176c90: ; 0x02176c90
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, [r4]
mvn r1, #0
cmp r0, r1
beq _02176cac
bl func_ov61_02166a98
_02176cac:
mvn r0, #0
str r0, [r4]
mov r0, #4
str r0, [r4, #0x10]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02176c90
.global func_ov61_02176cc0
arm_func_start func_ov61_02176cc0
func_ov61_02176cc0: ; 0x02176cc0
stmdb sp!, {r3, lr}
sub sp, sp, #0x40
mov r0, #0
add r3, sp, #0
mov r1, r0
stmia r3!, {r0, r1}
stmia r3!, {r0, r1}
stmia r3!, {r0, r1}
stmia r3!, {r0, r1}
stmia r3!, {r0, r1}
stmia r3!, {r0, r1}
ldr r2, _02176d50 ; =data_ov61_021815b8
stmia r3!, {r0, r1}
ldr r2, [r2, #0x10]
stmia r3, {r0, r1}
cmp r2, #0
bne _02176d1c
ldr r2, _02176d54 ; =func_ov61_02176c90
mov r0, #0x40
mov r1, #4
bl func_ov61_02165938
ldr r1, _02176d50 ; =data_ov61_021815b8
str r0, [r1, #0x10]
_02176d1c:
ldr r0, _02176d50 ; =data_ov61_021815b8
add r1, sp, #0
ldr r0, [r0, #0x10]
bl func_ov61_02165ad8
ldr r0, _02176d50 ; =data_ov61_021815b8
ldr r0, [r0, #0x10]
bl func_ov61_02165a68
ldr r2, _02176d50 ; =data_ov61_021815b8
sub r1, r0, #1
ldr r0, [r2, #0x10]
bl func_ov61_02165a70
add sp, sp, #0x40
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02176cc0
_02176d50: .word data_ov61_021815b8
_02176d54: .word func_ov61_02176c90
.global func_ov61_02176d58
arm_func_start func_ov61_02176d58
func_ov61_02176d58: ; 0x02176d58
stmdb sp!, {r4, r5, r6, lr}
ldr r1, _02176dbc ; =data_ov61_021815b8
mov r6, r0
ldr r0, [r1, #0x10]
mov r5, #0
bl func_ov61_02165a68
cmp r0, #0
ldmleia sp!, {r4, r5, r6, pc}
ldr r4, _02176dbc ; =data_ov61_021815b8
_02176d7c:
ldr r0, [r4, #0x10]
mov r1, r5
bl func_ov61_02165a70
cmp r6, r0
bne _02176da4
ldr r0, _02176dbc ; =data_ov61_021815b8
mov r1, r5
ldr r0, [r0, #0x10]
bl func_ov61_02165c5c
ldmia sp!, {r4, r5, r6, pc}
_02176da4:
ldr r0, [r4, #0x10]
add r5, r5, #1
bl func_ov61_02165a68
cmp r5, r0
blt _02176d7c
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02176d58
_02176dbc: .word data_ov61_021815b8
.global func_ov61_02176dc0
arm_func_start func_ov61_02176dc0
func_ov61_02176dc0: ; 0x02176dc0
stmdb sp!, {r3, lr}
ldr r0, _02176de8 ; =data_ov61_021815b8
ldr r0, [r0, #0x10]
cmp r0, #0
ldmeqia sp!, {r3, pc}
bl func_ov61_021659fc
ldr r0, _02176de8 ; =data_ov61_021815b8
mov r1, #0
str r1, [r0, #0x10]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02176dc0
_02176de8: .word data_ov61_021815b8
.global func_ov61_02176dec
arm_func_start func_ov61_02176dec
func_ov61_02176dec: ; 0x02176dec
stmdb sp!, {r3, lr}
ldr r1, _02176e0c ; =data_ov61_0217e158
mov r2, #6
bl func_0204366c
cmp r0, #0
moveq r0, #1
movne r0, #0
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_02176dec
_02176e0c: .word data_ov61_0217e158
.global func_ov61_02176e10
arm_func_start func_ov61_02176e10
func_ov61_02176e10: ; 0x02176e10
stmdb sp!, {r3, lr}
sub sp, sp, #0x10
mov ip, r2, asr #0x8
mov r2, r2, lsl #0x8
str r1, [sp, #0xc]
mov r1, r3
and r3, ip, #0xff
and r2, r2, #0xff00
orr r2, r3, r2
mov lr, #2
strh r2, [sp, #0xa]
add r3, sp, #8
strb lr, [sp, #9]
str r3, [sp]
mov ip, #8
ldr r2, [sp, #0x18]
mov r3, #0
str ip, [sp, #4]
bl func_ov61_02166c04
add sp, sp, #0x10
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02176e10
.global func_ov61_02176e64
arm_func_start func_ov61_02176e64
func_ov61_02176e64: ; 0x02176e64
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, #0
bl func_ov61_02166964
movs r6, r0
moveq r0, r7
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r4, _02176ec4 ; =0x0100007f
mov r5, r7
_02176e84:
ldr r0, [r6, #0xc]
ldr r0, [r0, r5, lsl #2]
cmp r0, #0
beq _02176ebc
ldr r1, [r0]
cmp r1, r4
beq _02176eb4
mov r7, r1
bl func_ov61_021669f0
cmp r0, #0
movne r0, r7
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
_02176eb4:
add r5, r5, #1
b _02176e84
_02176ebc:
mov r0, r7
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02176e64
_02176ec4: .word 0x0100007f
.global func_ov61_02176ec8
arm_func_start func_ov61_02176ec8
func_ov61_02176ec8: ; 0x02176ec8
stmdb sp!, {lr}
sub sp, sp, #0xc
mov r3, #8
add r1, sp, #4
add r2, sp, #0
str r3, [sp]
bl func_ov61_02166c98
mvn r1, #0
cmp r0, r1
moveq r0, #0
ldrneh r0, [sp, #6]
add sp, sp, #0xc
ldmia sp!, {pc}
arm_func_end func_ov61_02176ec8
.global func_ov61_02176efc
arm_func_start func_ov61_02176efc
func_ov61_02176efc: ; 0x02176efc
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x5c
ldr r2, _02177134 ; =data_ov61_0217e158
mov r1, #0
ldrb lr, [r2]
ldrb ip, [r2, #1]
add r5, sp, #4
ldrb r8, [r2, #2]
ldrb r7, [r2, #3]
ldrb r4, [r2, #4]
ldrb r3, [r2, #5]
mov r2, #2
mov r6, r0
strb lr, [r5]
strb ip, [r5, #1]
strb r8, [r5, #2]
strb r7, [r5, #3]
strb r4, [r5, #4]
strb r3, [r5, #5]
strb r1, [r5, #7]
strb r2, [r5, #6]
ldr r2, [r6, #0xc]
sub r0, r1, #1
strb r2, [r5, #0xd]
ldr r7, [r6, #8]
mov r3, r7, lsr #0x18
mov r2, r7, lsr #0x8
mov r4, r7, lsl #0x8
and r3, r3, #0xff
and r2, r2, #0xff00
mov r7, r7, lsl #0x18
orr r2, r3, r2
and r4, r4, #0xff0000
and r3, r7, #0xff000000
orr r2, r4, r2
orr r2, r3, r2
str r2, [r5, #8]
ldr r2, [r6, #4]
cmp r2, r0
movne r1, #1
strb r1, [r5, #0xe]
bl func_ov61_02176e64
mov r7, r0
bl func_ov61_02176e64
mov r8, r0
bl func_ov61_02176e64
mov r4, r0
bl func_ov61_02176e64
mov r2, #0
mov r1, r7, lsl #0x18
and r7, r1, #0xff000000
mov r1, r8, lsl #0x8
mov r0, r0, lsr #0x8
and r3, r1, #0xff0000
mov r1, r4, lsr #0x18
and r1, r1, #0xff
and r0, r0, #0xff00
orr r0, r1, r0
orr r0, r3, r0
orr r3, r7, r0
mov r1, r3, lsr #0x18
strb r1, [sp, #0x13]
mov r1, r3, lsr #0x8
mov r0, r3, lsr #0x10
strb r1, [sp, #0x15]
strb r0, [sp, #0x14]
ldr r1, _02177138 ; =data_ov61_021810c0
add r0, sp, #0x19
strb r3, [sp, #0x16]
strb r2, [sp, #0x17]
strb r2, [sp, #0x18]
bl strcpy
ldr r0, _02177138 ; =data_ov61_021810c0
bl strlen
ldrb r1, [r5, #0xe]
add r4, r0, #0x16
cmp r1, #0
beq _02177064
ldr r0, [r6, #0x14]
cmp r0, #0
bne _02177064
mov r0, #0
strb r0, [r5, #0xc]
str r4, [sp]
ldr r1, _0217713c ; =data_ov61_021815b8
ldr r0, [r6, #4]
ldr r1, [r1, #0xc]
ldr r2, _02177140 ; =0x00006cfd
mov r3, r5
bl func_ov61_02176e10
_02177064:
ldr r0, [r6, #0x18]
cmp r0, #0
bne _02177094
mov r0, #1
strb r0, [r5, #0xc]
str r4, [sp]
ldr r1, _0217713c ; =data_ov61_021815b8
ldr r0, [r6]
ldr r1, [r1, #0xc]
ldr r2, _02177140 ; =0x00006cfd
mov r3, r5
bl func_ov61_02176e10
_02177094:
ldrb r0, [r5, #0xe]
cmp r0, #0
ldrne r8, [r6, #4]
ldreq r8, [r6]
cmp r0, #0
ldrne r0, [r6, #4]
ldreq r0, [r6]
bl func_ov61_02176ec8
mov r7, r0
mov r0, r8
bl func_ov61_02176ec8
mov r1, r7, asr #0x8
mov r0, r0, lsl #0x8
and r1, r1, #0xff
and r0, r0, #0xff00
orr r0, r1, r0
mov r0, r0, lsl #0x10
mov r1, r0, lsr #0x10
mov r0, r1, asr #0x8
strb r1, [sp, #0x18]
strb r0, [sp, #0x17]
ldr r0, [r6, #0x1c]
cmp r0, #0
bne _02177118
mov r0, #2
strb r0, [r5, #0xc]
str r4, [sp]
ldr r1, _0217713c ; =data_ov61_021815b8
ldr r0, [r6]
ldr r1, [r1, #8]
ldr r2, _02177140 ; =0x00006cfd
mov r3, r5
bl func_ov61_02176e10
_02177118:
bl func_ov61_021665e8
add r0, r0, #0x1f4
str r0, [r6, #0x28]
mov r0, #0x1e
str r0, [r6, #0x24]
add sp, sp, #0x5c
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02176efc
_02177134: .word data_ov61_0217e158
_02177138: .word data_ov61_021810c0
_0217713c: .word data_ov61_021815b8
_02177140: .word 0x00006cfd
.global func_ov61_02177144
arm_func_start func_ov61_02177144
func_ov61_02177144: ; 0x02177144
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x18
ldr r1, _02177260 ; =data_ov61_0217e158
mov r2, #2
ldrb r7, [r1]
ldrb r6, [r1, #1]
add r8, sp, #4
ldrb r5, [r1, #2]
ldrb lr, [r1, #3]
ldrb ip, [r1, #4]
ldrb r3, [r1, #5]
mov r1, #7
mov r4, r0
strb r7, [r8]
strb r6, [r8, #1]
strb r5, [r8, #2]
strb lr, [r8, #3]
strb ip, [r8, #4]
strb r2, [sp, #0xa]
strb r1, [sp, #0xb]
strb r3, [r8, #5]
ldr r3, [r4, #8]
mov r1, r3, lsr #0x18
mov r0, r3, lsr #0x8
mov r2, r3, lsl #0x8
and r1, r1, #0xff
and r0, r0, #0xff00
mov r3, r3, lsl #0x18
orr r0, r1, r0
and r2, r2, #0xff0000
and r1, r3, #0xff000000
orr r0, r2, r0
orr r0, r1, r0
str r0, [sp, #0xc]
ldr r0, [r4, #0x2c]
add r3, sp, #4
str r0, [sp, #0x10]
ldrh r0, [r4, #0x30]
mov r1, r0, asr #0x8
mov r0, r0, lsl #0x8
and r1, r1, #0xff
and r0, r0, #0xff00
orr r0, r1, r0
strh r0, [sp, #0x14]
ldrb r0, [r4, #0x32]
mvn r1, #0
strb r0, [sp, #0x16]
ldr r0, [r4, #0x10]
cmp r0, #2
movne r0, #1
moveq r0, #0
strb r0, [sp, #0x17]
ldr r0, [r4, #4]
cmp r0, r1
ldreq r0, [r4]
mov r1, #0x14
str r1, [sp]
ldrh r2, [r4, #0x30]
ldr r1, [r4, #0x2c]
bl func_ov61_02176e10
bl func_ov61_021665e8
add r0, r0, #0x2bc
str r0, [r4, #0x28]
mov r0, #0xc
str r0, [r4, #0x24]
ldrb r0, [r4, #0x32]
cmp r0, #0
movne r0, #1
strneb r0, [r4, #0x33]
add sp, sp, #0x18
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02177144
_02177260: .word data_ov61_0217e158
.global func_ov61_02177264
arm_func_start func_ov61_02177264
func_ov61_02177264: ; 0x02177264
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_02166cc4
mvn r1, #0
cmp r0, r1
ldmneia sp!, {r4, pc}
mov r0, r4
bl func_ov61_021590ac
cmp r0, #0
moveq r0, #0
ldrne r0, [r0, #0xc]
ldrne r0, [r0]
ldrne r0, [r0]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02177264
.global func_ov61_0217729c
arm_func_start func_ov61_0217729c
func_ov61_0217729c: ; 0x0217729c
stmdb sp!, {lr}
sub sp, sp, #0x84
cmp r0, #0
bne _021772c8
ldr r2, _021772d4 ; =data_ov61_0217e160
str r1, [sp]
ldr r3, _021772d8 ; =data_ov61_021810c0
add r0, sp, #4
mov r1, #0x80
bl func_02045990
add r0, sp, #4
_021772c8:
bl func_ov61_02177264
add sp, sp, #0x84
ldmia sp!, {pc}
.align 2, 0
arm_func_end func_ov61_0217729c
_021772d4: .word data_ov61_0217e160
_021772d8: .word data_ov61_021810c0
.global func_ov61_021772dc
arm_func_start func_ov61_021772dc
func_ov61_021772dc: ; 0x021772dc
stmdb sp!, {r3, lr}
ldr r0, _02177348 ; =data_ov61_021815b8
ldr r1, [r0, #0xc]
cmp r1, #0
bne _02177304
ldr r0, [r0, #4]
ldr r1, _0217734c ; =data_ov61_0217e168
bl func_ov61_0217729c
ldr r1, _02177348 ; =data_ov61_021815b8
str r0, [r1, #0xc]
_02177304:
ldr r0, _02177348 ; =data_ov61_021815b8
ldr r1, [r0, #8]
cmp r1, #0
bne _02177328
ldr r0, [r0]
ldr r1, _02177350 ; =data_ov61_0217e184
bl func_ov61_0217729c
ldr r1, _02177348 ; =data_ov61_021815b8
str r0, [r1, #8]
_02177328:
ldr r0, _02177348 ; =data_ov61_021815b8
ldr r1, [r0, #0xc]
cmp r1, #0
ldrne r0, [r0, #8]
cmpne r0, #0
moveq r0, #0
movne r0, #1
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021772dc
_02177348: .word data_ov61_021815b8
_0217734c: .word data_ov61_0217e168
_02177350: .word data_ov61_0217e184
.global func_ov61_02177354
arm_func_start func_ov61_02177354
func_ov61_02177354: ; 0x02177354
stmdb sp!, {r4, r5, r6, r7, r8, lr}
ldr ip, _02177418 ; =data_ov61_02181024
mov r8, r0
ldr r0, [ip]
mov r7, r1
cmp r0, #1
mov r6, r2
mov r5, r3
movne r0, #2
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
bl func_ov61_021772dc
cmp r0, #0
moveq r0, #3
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
bl func_ov61_02176cc0
movs r4, r0
moveq r0, #1
ldmeqia sp!, {r4, r5, r6, r7, r8, pc}
str r8, [r4, #4]
str r6, [r4, #0xc]
str r7, [r4, #8]
ldr r1, [sp, #0x18]
str r5, [r4, #0x34]
ldr r2, [sp, #0x1c]
str r1, [r4, #0x38]
mov r0, #2
str r2, [r4, #0x3c]
mov r1, r0
mov r2, #0
bl func_ov61_02166a84
mov r2, #0
str r0, [r4]
str r2, [r4, #0x20]
strb r2, [r4, #0x32]
strb r2, [r4, #0x33]
str r2, [r4, #0x2c]
strh r2, [r4, #0x30]
str r2, [r4, #0x24]
ldr r1, [r4]
sub r0, r2, #1
cmp r1, r0
mov r0, r4
bne _0217740c
bl func_ov61_02176d58
mov r0, #2
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0217740c:
bl func_ov61_02176efc
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02177354
_02177418: .word data_ov61_02181024
.global func_ov61_0217741c
arm_func_start func_ov61_0217741c
func_ov61_0217741c: ; 0x0217741c
stmdb sp!, {r4, lr}
bl func_ov61_02176c28
movs r4, r0
ldmeqia sp!, {r4, pc}
ldr r0, [r4]
mvn r1, #0
cmp r0, r1
beq _02177440
bl func_ov61_02166a98
_02177440:
mvn r0, #0
str r0, [r4]
mov r0, #4
str r0, [r4, #0x10]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0217741c
.global func_ov61_02177454
arm_func_start func_ov61_02177454
func_ov61_02177454: ; 0x02177454
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, lr}
sub sp, sp, #0x1c
mov r2, #8
mov r9, r0
str r2, [sp, #0x10]
ldr r1, [r9, #0x10]
cmp r1, #4
bne _02177480
bl func_ov61_02176d58
add sp, sp, #0x1c
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, pc}
_02177480:
ldr r0, [r9]
sub r1, r2, #9
cmp r0, r1
beq _021774fc
ldr r6, _02177640 ; =data_ov61_021815cc
add r8, sp, #0x14
add r7, sp, #0x10
mov r5, #0x200
mov r4, #0
mvn r10, #0
_021774a8:
bl func_ov61_02166914
cmp r0, #0
beq _021774fc
str r8, [sp]
str r7, [sp, #4]
ldr r0, [r9]
mov r1, r6
mov r2, r5
mov r3, r4
bl func_ov61_02166bc0
mov r1, r0
cmp r1, r10
beq _021774fc
mov r0, r6
mov r2, r8
bl func_ov61_021779dc
ldr r0, [r9, #0x10]
cmp r0, #4
ldrne r0, [r9]
cmpne r0, r10
bne _021774a8
_021774fc:
ldr r0, [r9, #0x10]
cmp r0, #0
cmpne r0, #2
bne _02177574
bl func_ov61_021665e8
ldr r1, [r9, #0x28]
cmp r0, r1
bls _02177574
ldr r1, [r9, #0x20]
ldr r0, [r9, #0x24]
cmp r1, r0
ble _02177550
mov r0, #2
ldr r3, [r9, #0x3c]
ldr r4, [r9, #0x38]
sub r1, r0, #3
mov r2, #0
blx r4
ldr r0, [r9, #8]
bl func_ov61_0217741c
b _02177574
_02177550:
add r0, r1, #1
str r0, [r9, #0x20]
ldr r0, [r9, #0x10]
cmp r0, #0
mov r0, r9
bne _02177570
bl func_ov61_02176efc
b _02177574
_02177570:
bl func_ov61_02177144
_02177574:
ldr r0, [r9, #0x10]
cmp r0, #3
bne _021775f4
bl func_ov61_021665e8
ldr r1, [r9, #0x28]
cmp r0, r1
bls _021775f4
ldr r1, [r9, #4]
mvn r0, #0
cmp r1, r0
bne _021775ec
mov r0, #2
strb r0, [sp, #9]
ldrh r1, [r9, #0x30]
add r2, sp, #8
mov r0, #0
mov r3, r1, asr #0x8
mov r1, r1, lsl #0x8
and r3, r3, #0xff
and r1, r1, #0xff00
orr r1, r3, r1
strh r1, [sp, #0xa]
ldr r1, [r9, #0x2c]
str r1, [sp, #0xc]
ldr r1, [r9]
ldr r3, [r9, #0x3c]
ldr r4, [r9, #0x38]
blx r4
mvn r0, #0
str r0, [r9]
_021775ec:
ldr r0, [r9, #8]
bl func_ov61_0217741c
_021775f4:
ldr r0, [r9, #0x10]
cmp r0, #1
addne sp, sp, #0x1c
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, pc}
bl func_ov61_021665e8
ldr r1, [r9, #0x28]
cmp r0, r1
addls sp, sp, #0x1c
ldmlsia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, pc}
mov r0, #1
ldr r3, [r9, #0x3c]
ldr r4, [r9, #0x38]
sub r1, r0, #2
mov r2, #0
blx r4
ldr r0, [r9, #8]
bl func_ov61_0217741c
add sp, sp, #0x1c
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, pc}
.align 2, 0
arm_func_end func_ov61_02177454
_02177640: .word data_ov61_021815cc
.global func_ov61_02177644
arm_func_start func_ov61_02177644
func_ov61_02177644: ; 0x02177644
stmdb sp!, {r3, r4, r5, lr}
ldr r0, _02177684 ; =data_ov61_021815b8
ldr r0, [r0, #0x10]
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
bl func_ov61_02165a68
subs r5, r0, #1
ldmmiia sp!, {r3, r4, r5, pc}
ldr r4, _02177684 ; =data_ov61_021815b8
_02177668:
ldr r0, [r4, #0x10]
mov r1, r5
bl func_ov61_02165a70
bl func_ov61_02177454
subs r5, r5, #1
bpl _02177668
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02177644
_02177684: .word data_ov61_021815b8
.global func_ov61_02177688
arm_func_start func_ov61_02177688
func_ov61_02177688: ; 0x02177688
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x1c
ldr r2, _02177750 ; =data_ov61_0217e158
mov r4, #2
ldrb r8, [r2]
ldrb r7, [r2, #1]
add r3, sp, #4
ldrb r6, [r2, #2]
ldrb lr, [r2, #3]
ldrb ip, [r2, #4]
ldrb r5, [r2, #5]
mov r2, #6
strb r2, [sp, #0xb]
strb r8, [r3]
strb r7, [r3, #1]
strb r6, [r3, #2]
strb lr, [r3, #3]
strb ip, [r3, #4]
strb r5, [r3, #5]
strb r4, [sp, #0xa]
ldr r4, [r0, #0xc]
mov r2, #0x15
strb r4, [sp, #0x11]
ldr r5, [r0, #8]
mov lr, r5, lsr #0x18
mov ip, r5, lsr #0x8
mov r4, r5, lsl #0x8
mov r5, r5, lsl #0x18
and lr, lr, #0xff
and ip, ip, #0xff00
and r4, r4, #0xff0000
orr ip, lr, ip
and r5, r5, #0xff000000
orr r4, r4, ip
orr r4, r5, r4
str r4, [sp, #0xc]
ldrh lr, [r1, #2]
str r2, [sp]
mov ip, lr, asr #0x8
mov r2, lr, lsl #0x8
and ip, ip, #0xff
and r2, r2, #0xff00
orr r2, ip, r2
mov r2, r2, lsl #0x10
ldr r0, [r0]
ldr r1, [r1, #4]
mov r2, r2, lsr #0x10
bl func_ov61_02176e10
add sp, sp, #0x1c
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02177688
_02177750: .word data_ov61_0217e158
.global func_ov61_02177754
arm_func_start func_ov61_02177754
func_ov61_02177754: ; 0x02177754
stmdb sp!, {r3, r4, r5, lr}
mov r5, r1
ldrb r1, [r5, #0x13]
mov r4, r0
cmp r1, #0
bne _02177774
mov r1, r2
bl func_ov61_02177688
_02177774:
ldr r0, [r4, #0x10]
cmp r0, #2
ldmgeia sp!, {r3, r4, r5, pc}
ldrb r1, [r5, #0x13]
cmp r1, #0
beq _021777c4
mov r0, #3
cmp r1, #1
moveq r0, #1
beq _021777a4
cmp r1, #2
moveq r0, #2
_021777a4:
ldr r3, [r4, #0x3c]
ldr ip, [r4, #0x38]
mvn r1, #0
mov r2, #0
blx ip
ldr r0, [r4, #8]
bl func_ov61_0217741c
ldmia sp!, {r3, r4, r5, pc}
_021777c4:
ldr r1, [r5, #0xc]
mov r0, #2
str r1, [r4, #0x2c]
ldrh r2, [r5, #0x10]
mov r1, #0
mov r3, r2, asr #0x8
mov r2, r2, lsl #0x8
and r3, r3, #0xff
and r2, r2, #0xff00
orr r2, r3, r2
strh r2, [r4, #0x30]
str r1, [r4, #0x20]
str r0, [r4, #0x10]
ldr r1, [r4, #0x3c]
ldr r2, [r4, #0x34]
blx r2
mov r0, r4
bl func_ov61_02177144
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02177754
.global func_ov61_02177810
arm_func_start func_ov61_02177810
func_ov61_02177810: ; 0x02177810
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r3, [r5, #0x10]
mov r4, r2
cmp r3, #2
ldmltia sp!, {r3, r4, r5, pc}
ldr r3, [r4, #4]
mov r2, #1
str r3, [r5, #0x2c]
ldrh r3, [r4, #2]
mov ip, r3, asr #0x8
mov r3, r3, lsl #0x8
and ip, ip, #0xff
and r3, r3, #0xff00
orr r3, ip, r3
strh r3, [r5, #0x30]
strb r2, [r5, #0x32]
ldrb r2, [r1, #0x12]
cmp r2, #0
bne _02177868
bl func_ov61_02177144
ldmia sp!, {r3, r4, r5, pc}
_02177868:
ldr r2, [r5, #0x10]
cmp r2, #2
bne _021778c4
ldrb r1, [r5, #0x33]
cmp r1, #0
bne _02177884
bl func_ov61_02177144
_02177884:
mov r0, #3
str r0, [r5, #0x10]
bl func_ov61_021665e8
add r0, r0, #0x388
add r0, r0, #0x1000
str r0, [r5, #0x28]
ldr r1, [r5, #4]
mvn r0, #0
cmp r1, r0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r3, [r5, #0x3c]
ldr r5, [r5, #0x38]
mov r2, r4
mov r0, #0
blx r5
ldmia sp!, {r3, r4, r5, pc}
_021778c4:
ldrb r1, [r1, #0x13]
cmp r1, #0
ldmneia sp!, {r3, r4, r5, pc}
bl func_ov61_02177144
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02177810
.global func_ov61_021778d8
arm_func_start func_ov61_021778d8
func_ov61_021778d8: ; 0x021778d8
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
mov r3, r1
ldrb r1, [r3, #7]
mov r4, r0
cmp r1, #1
beq _02177904
cmp r1, #2
beq _02177998
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
_02177904:
ldrb r0, [r3, #0xc]
cmp r0, #2
addhi sp, sp, #4
ldmhiia sp!, {r3, r4, pc}
add r0, r4, r0, lsl #2
mov r2, #1
str r2, [r0, #0x14]
ldr r0, [r4, #0x10]
cmp r0, #0
addne sp, sp, #4
ldmneia sp!, {r3, r4, pc}
ldr r0, [r4, #0x18]
cmp r0, #0
ldrne r0, [r4, #0x1c]
cmpne r0, #0
addeq sp, sp, #4
ldmeqia sp!, {r3, r4, pc}
ldr r1, [r4, #4]
sub r0, r2, #2
cmp r1, r0
beq _02177968
ldr r0, [r4, #0x14]
cmp r0, #0
addeq sp, sp, #4
ldmeqia sp!, {r3, r4, pc}
_02177968:
mov r0, #1
str r0, [r4, #0x10]
bl func_ov61_021665e8
add r0, r0, #0x710
add r0, r0, #0x2000
str r0, [r4, #0x28]
ldr r0, [r4, #0x10]
ldr r1, [r4, #0x3c]
ldr r2, [r4, #0x34]
blx r2
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
_02177998:
mov r0, #3
strb r0, [r3, #7]
ldrh r0, [r2, #2]
mov ip, #0x15
mov r1, r0, asr #0x8
mov r0, r0, lsl #0x8
str ip, [sp]
and r1, r1, #0xff
and r0, r0, #0xff00
orr r0, r1, r0
mov ip, r0, lsl #0x10
ldr r1, [r2, #4]
ldr r0, [r4]
mov r2, ip, lsr #0x10
bl func_ov61_02176e10
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
arm_func_end func_ov61_021778d8
.global func_ov61_021779dc
arm_func_start func_ov61_021779dc
func_ov61_021779dc: ; 0x021779dc
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0x2c
mov r6, r0
mov r7, r1
mov r5, r2
bl func_ov61_02176dec
cmp r0, #0
addeq sp, sp, #0x2c
ldmeqia sp!, {r4, r5, r6, r7, pc}
ldrb r4, [r6, #7]
cmp r4, #5
cmpne r4, #7
bne _02177aac
cmp r7, #0x14
addlt sp, sp, #0x2c
ldmltia sp!, {r4, r5, r6, r7, pc}
add r3, sp, #0x18
mov r2, #0xa
_02177a24:
ldrb r1, [r6]
ldrb r0, [r6, #1]
add r6, r6, #2
subs r2, r2, #1
strb r1, [r3]
strb r0, [r3, #1]
add r3, r3, #2
bne _02177a24
ldr r3, [sp, #0x20]
mov r1, r3, lsr #0x18
mov r0, r3, lsr #0x8
mov r2, r3, lsl #0x8
and r1, r1, #0xff
and r0, r0, #0xff00
mov r3, r3, lsl #0x18
orr r0, r1, r0
and r2, r2, #0xff0000
and r1, r3, #0xff000000
orr r0, r2, r0
orr r0, r1, r0
bl func_ov61_02176c28
cmp r0, #0
addeq sp, sp, #0x2c
ldmeqia sp!, {r4, r5, r6, r7, pc}
cmp r4, #5
add r1, sp, #0x18
mov r2, r5
bne _02177aa0
bl func_ov61_02177754
add sp, sp, #0x2c
ldmia sp!, {r4, r5, r6, r7, pc}
_02177aa0:
bl func_ov61_02177810
add sp, sp, #0x2c
ldmia sp!, {r4, r5, r6, r7, pc}
_02177aac:
cmp r7, #0x15
addlt sp, sp, #0x2c
ldmltia sp!, {r4, r5, r6, r7, pc}
add r3, sp, #0
mov r2, #0xa
_02177ac0:
ldrb r1, [r6]
ldrb r0, [r6, #1]
add r6, r6, #2
subs r2, r2, #1
strb r1, [r3]
strb r0, [r3, #1]
add r3, r3, #2
bne _02177ac0
ldrb r0, [r6]
strb r0, [r3]
ldr r3, [sp, #8]
mov r1, r3, lsr #0x18
mov r0, r3, lsr #0x8
mov r2, r3, lsl #0x8
and r1, r1, #0xff
and r0, r0, #0xff00
mov r3, r3, lsl #0x18
orr r0, r1, r0
and r2, r2, #0xff0000
and r1, r3, #0xff000000
orr r0, r2, r0
orr r0, r1, r0
bl func_ov61_02176c28
cmp r0, #0
addeq sp, sp, #0x2c
ldmeqia sp!, {r4, r5, r6, r7, pc}
add r1, sp, #0
mov r2, r5
bl func_ov61_021778d8
add sp, sp, #0x2c
ldmia sp!, {r4, r5, r6, r7, pc}
arm_func_end func_ov61_021779dc
.global func_ov61_02177b3c
arm_func_start func_ov61_02177b3c
func_ov61_02177b3c: ; 0x02177b3c
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x40
movs r5, r0
mov r8, r1
mov r4, r2
mov r7, r3
ldreq r6, _02177ce8 ; =data_ov61_0217e1a4
beq _02177b6c
mov r0, #0x110
bl func_ov61_0213e10c
mov r6, r0
str r0, [r5]
_02177b6c:
bl func_ov61_021665e8
bl func_02045b7c
mov r1, r7
add r0, r6, #4
bl strcpy
ldr r1, [sp, #0x58]
add r0, r6, #0x44
bl strcpy
str r4, [r6, #0xc0]
mov r5, #0
str r5, [r6, #0xac]
str r5, [r6, #0xb0]
str r8, [r6]
mov r1, #1
str r1, [r6, #0xb8]
ldr r0, [sp, #0x7c]
ldr r1, [sp, #0x64]
str r0, [r6, #0x10c]
str r1, [r6, #0x88]
ldr r0, [sp, #0x68]
ldr r1, [sp, #0x6c]
str r0, [r6, #0x8c]
str r1, [r6, #0x90]
ldr r0, [sp, #0x70]
ldr r1, [sp, #0x74]
str r0, [r6, #0x94]
ldr r0, [sp, #0x78]
str r1, [r6, #0x98]
str r0, [r6, #0x9c]
str r5, [r6, #0xa0]
str r5, [r6, #0xa4]
ldr r0, [sp, #0x5c]
str r5, [r6, #0xd4]
str r0, [r6, #0xbc]
ldr r0, [sp, #0x60]
str r5, [r6, #0xc4]
str r0, [r6, #0xc8]
str r5, [r6, #0x104]
add r0, r6, #0x100
strh r5, [r0, #8]
str r5, [r6, #0xa8]
ldr r4, _02177cec ; =0x80808081
str r5, [r6, #0xb4]
mov r8, #0xff
_02177c1c:
bl func_02045b48
smull r1, r2, r4, r0
add r3, r6, r5
add r5, r5, #1
add r2, r0, r2
mov r1, r0, lsr #0x1f
add r2, r1, r2, asr #7
smull r1, r2, r8, r2
sub r2, r0, r1
strb r2, [r3, #0x84]
cmp r5, #4
blt _02177c1c
mov r2, #0
mvn r1, #0
_02177c54:
add r0, r6, r2, lsl #2
add r2, r2, #1
str r1, [r0, #0xd8]
cmp r2, #0xa
blt _02177c54
mov r1, #0
ldr r0, _02177cf0 ; =data_ov61_021817cc
str r1, [r6, #0x100]
ldr r0, [r0]
cmp r0, #0
bne _02177c84
bl func_ov61_021780d8
_02177c84:
ldr r0, [sp, #0x5c]
cmp r0, #0
beq _02177cd0
ldr r0, _02177cf4 ; =data_ov61_021817e4
ldrsb r4, [r0]
cmp r4, #0
bne _02177cb0
ldr r1, _02177cf8 ; =data_ov61_0217e2b4
add r0, sp, #0
mov r2, r7
bl func_020459b8
_02177cb0:
cmp r4, #0
ldrne r0, _02177cf4 ; =data_ov61_021817e4
ldr r1, _02177cfc ; =0x00006cfc
addeq r0, sp, #0
add r2, r6, #0xcc
mov r3, #0
bl func_ov61_0217814c
b _02177cd4
_02177cd0:
mov r0, #1
_02177cd4:
cmp r0, #0
moveq r0, #3
movne r0, #0
add sp, sp, #0x40
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_02177b3c
_02177ce8: .word data_ov61_0217e1a4
_02177cec: .word 0x80808081
_02177cf0: .word data_ov61_021817cc
_02177cf4: .word data_ov61_021817e4
_02177cf8: .word data_ov61_0217e2b4
_02177cfc: .word 0x00006cfc
.global func_ov61_02177d00
arm_func_start func_ov61_02177d00
func_ov61_02177d00: ; 0x02177d00
cmp r0, #0
ldreq r0, _02177d14 ; =data_ov61_0217e1a0
ldreq r0, [r0]
str r1, [r0, #0xa0]
bx lr
.align 2, 0
arm_func_end func_ov61_02177d00
_02177d14: .word data_ov61_0217e1a0
.global func_ov61_02177d18
arm_func_start func_ov61_02177d18
func_ov61_02177d18: ; 0x02177d18
cmp r0, #0
ldreq r0, _02177d2c ; =data_ov61_0217e1a0
ldreq r0, [r0]
str r1, [r0, #0xa4]
bx lr
.align 2, 0
arm_func_end func_ov61_02177d18
_02177d2c: .word data_ov61_0217e1a0
.global func_ov61_02177d30
arm_func_start func_ov61_02177d30
func_ov61_02177d30: ; 0x02177d30
cmp r0, #0
ldreq r0, _02177d44 ; =data_ov61_0217e1a0
ldreq r0, [r0]
str r1, [r0, #0xa8]
bx lr
.align 2, 0
arm_func_end func_ov61_02177d30
_02177d44: .word data_ov61_0217e1a0
.global func_ov61_02177d48
arm_func_start func_ov61_02177d48
func_ov61_02177d48: ; 0x02177d48
stmdb sp!, {r4, lr}
movs r4, r0
ldreq r0, _02177d78 ; =data_ov61_0217e1a0
ldreq r4, [r0]
ldr r0, [r4, #0xbc]
cmp r0, #0
beq _02177d6c
mov r0, r4
bl func_ov61_02177e28
_02177d6c:
mov r0, r4
bl func_ov61_02177d7c
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02177d48
_02177d78: .word data_ov61_0217e1a0
.global func_ov61_02177d7c
arm_func_start func_ov61_02177d7c
func_ov61_02177d7c: ; 0x02177d7c
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x14
mov r1, #8
mov r10, r0
str r1, [sp, #8]
ldr r0, [r10, #0xc4]
cmp r0, #0
addeq sp, sp, #0x14
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r0, [r10]
bl func_ov61_02166914
cmp r0, #0
addeq sp, sp, #0x14
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
mov r5, #0
ldr r7, _02177e24 ; =data_ov61_02181824
add r9, sp, #0xc
add r8, sp, #8
mov r6, #0xff
mov r11, r5
mvn r4, #0
_02177dd0:
str r9, [sp]
str r8, [sp, #4]
ldr r0, [r10]
mov r1, r7
mov r2, r6
mov r3, r11
bl func_ov61_02166bc0
mov r2, r0
cmp r2, r4
beq _02177e0c
mov r0, r10
mov r1, r7
mov r3, r9
strb r5, [r7, r2]
bl func_ov61_02178d08
_02177e0c:
ldr r0, [r10]
bl func_ov61_02166914
cmp r0, #0
bne _02177dd0
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02177d7c
_02177e24: .word data_ov61_02181824
.global func_ov61_02177e28
arm_func_start func_ov61_02177e28
func_ov61_02177e28: ; 0x02177e28
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
bl func_ov61_021665e8
ldr r2, [r5]
mvn r1, #0
mov r4, r0
cmp r2, r1
ldmeqia sp!, {r3, r4, r5, pc}
ldr r2, [r5, #0xb8]
cmp r2, #0
ble _02177eac
ldr r1, [r5, #0xac]
ldr r0, _02177f2c ; =0x00002710
sub r1, r4, r1
cmp r1, r0
bls _02177eac
cmp r2, #4
blt _02177e90
mov r0, #0
str r0, [r5, #0xb8]
ldr r2, [r5, #0x10c]
ldr r3, [r5, #0x9c]
ldr r1, _02177f30 ; =data_ov61_0217e2d4
mov r0, #5
blx r3
ldmia sp!, {r3, r4, r5, pc}
_02177e90:
mov r0, r5
mov r1, #3
bl func_ov61_0217907c
ldr r0, [r5, #0xb8]
add r0, r0, #1
str r0, [r5, #0xb8]
b _02177f0c
_02177eac:
ldr r0, [r5, #0xb4]
cmp r0, #0
beq _02177edc
ldr r1, [r5, #0xac]
ldr r0, _02177f2c ; =0x00002710
sub r1, r4, r1
cmp r1, r0
bls _02177edc
mov r0, r5
mov r1, #1
bl func_ov61_0217907c
b _02177f0c
_02177edc:
ldr r2, [r5, #0xac]
ldr r0, _02177f34 ; =0x0000ea60
sub r1, r4, r2
cmp r1, r0
bhi _02177f00
cmp r2, #0
beq _02177f00
cmp r4, r2
bhs _02177f0c
_02177f00:
mov r0, r5
mov r1, #0
bl func_ov61_0217907c
_02177f0c:
ldr r1, [r5, #0xb0]
ldr r0, _02177f38 ; =0x00004e20
sub r1, r4, r1
cmp r1, r0
ldmlsia sp!, {r3, r4, r5, pc}
mov r0, r5
bl func_ov61_0217901c
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02177e28
_02177f2c: .word 0x00002710
_02177f30: .word data_ov61_0217e2d4
_02177f34: .word 0x0000ea60
_02177f38: .word 0x00004e20
.global func_ov61_02177f3c
arm_func_start func_ov61_02177f3c
func_ov61_02177f3c: ; 0x02177f3c
stmdb sp!, {r4, lr}
movs r4, r0
ldreq r0, _02177f90 ; =data_ov61_0217e1a0
ldreq r4, [r0]
ldr r0, [r4, #0xbc]
cmp r0, #0
ldmeqia sp!, {r4, pc}
bl func_ov61_021665e8
ldr r2, [r4, #0xac]
ldr r1, _02177f94 ; =0x00002710
sub r0, r0, r2
cmp r0, r1
movlo r0, #1
strlo r0, [r4, #0xb4]
ldmloia sp!, {r4, pc}
mov r0, r4
mov r1, #1
bl func_ov61_0217907c
mov r0, #0
str r0, [r4, #0xb4]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02177f3c
_02177f90: .word data_ov61_0217e1a0
_02177f94: .word 0x00002710
.global func_ov61_02177f98
arm_func_start func_ov61_02177f98
func_ov61_02177f98: ; 0x02177f98
stmdb sp!, {r4, lr}
movs r4, r0
ldreq r0, _02178014 ; =data_ov61_0217e1a0
ldreq r4, [r0]
ldr r0, [r4, #0xbc]
cmp r0, #0
beq _02177fc0
mov r0, r4
mov r1, #2
bl func_ov61_0217907c
_02177fc0:
ldr r0, [r4]
mvn r1, #0
cmp r0, r1
ldrne r1, [r4, #0xc4]
cmpne r1, #0
beq _02177fdc
bl func_ov61_02166a98
_02177fdc:
mvn r0, #0
str r0, [r4]
mov r0, #0
str r0, [r4, #0xac]
ldr r0, [r4, #0xc4]
cmp r0, #0
beq _02177ffc
bl func_ov61_02166650
_02177ffc:
ldr r0, _02178018 ; =data_ov61_0217e1a4
cmp r4, r0
ldmeqia sp!, {r4, pc}
mov r0, r4
bl func_ov61_0213e13c
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02177f98
_02178014: .word data_ov61_0217e1a0
_02178018: .word data_ov61_0217e1a4
.global func_ov61_0217801c
arm_func_start func_ov61_0217801c
func_ov61_0217801c: ; 0x0217801c
ldr r3, [r0, #0x100]
cmp r3, #0xfe
bxge lr
cmp r1, #1
bxlt lr
cmp r1, #0xfe
bxgt lr
add r2, r3, #1
str r2, [r0, #0x100]
strb r1, [r0, r3]
bx lr
arm_func_end func_ov61_0217801c
.global func_ov61_02178048
arm_func_start func_ov61_02178048
func_ov61_02178048: ; 0x02178048
stmdb sp!, {r3, r4, lr}
sub sp, sp, #0x14
mov r2, r1
mov r4, r0
ldr r1, _02178078 ; =data_ov61_0217e30c
add r0, sp, #0
bl func_020459b8
add r1, sp, #0
mov r0, r4
bl func_ov61_0217807c
add sp, sp, #0x14
ldmia sp!, {r3, r4, pc}
.align 2, 0
arm_func_end func_ov61_02178048
_02178078: .word data_ov61_0217e30c
.global func_ov61_0217807c
arm_func_start func_ov61_0217807c
func_ov61_0217807c: ; 0x0217807c
stmdb sp!, {r4, r5, r6, lr}
mov r6, r1
mov r4, r0
mov r0, r6
bl strlen
ldr r3, [r4, #0x800]
add r5, r0, #1
rsb r0, r3, #0x800
cmp r5, r0
movgt r5, r0
cmp r5, #0
ldmeqia sp!, {r4, r5, r6, pc}
mov r1, r6
mov r2, r5
add r0, r4, r3
bl func_02043594
ldr r0, [r4, #0x800]
mov r1, #0
add r0, r0, r5
str r0, [r4, #0x800]
sub r0, r0, #1
strb r1, [r4, r0]
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_0217807c
.global func_ov61_021780d8
arm_func_start func_ov61_021780d8
func_ov61_021780d8: ; 0x021780d8
stmdb sp!, {r4, r5, r6, lr}
bl func_ov61_02166964
cmp r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
ldr r1, _02178144 ; =data_ov61_021817cc
mov r6, #0
ldr ip, _02178148 ; =data_ov61_021817d0
str r6, [r1]
_021780f8:
ldr r2, [r0, #0xc]
mov r5, r6, lsl #0x2
ldr r4, [r2, r6, lsl #2]
cmp r4, #0
ldmeqia sp!, {r4, r5, r6, pc}
ldrb r3, [r4]
ldrb r2, [r4, #1]
add r6, r6, #1
add lr, ip, r5
strb r3, [ip, r5]
strb r2, [lr, #1]
ldrb r3, [r4, #2]
ldrb r2, [r4, #3]
cmp r6, #5
strb r3, [lr, #2]
strb r2, [lr, #3]
str r6, [r1]
blt _021780f8
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_021780d8
_02178144: .word data_ov61_021817cc
_02178148: .word data_ov61_021817d0
.global func_ov61_0217814c
arm_func_start func_ov61_0217814c
func_ov61_0217814c: ; 0x0217814c
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r1, r1, lsl #0x10
mov r1, r1, lsr #0x10
mov r4, r1, asr #0x8
mov r1, r1, lsl #0x8
mov r6, r2
mov r5, #2
and r2, r4, #0xff
and r1, r1, #0xff00
strb r5, [r6, #1]
orr r1, r2, r1
strh r1, [r6, #2]
mov r4, #0
movs r7, r0
mov r5, r3
streq r4, [r6, #4]
beq _02178198
bl func_ov61_02166cc4
str r0, [r6, #4]
_02178198:
ldr r1, [r6, #4]
mvn r0, #0
cmp r1, r0
bne _021781e0
ldr r1, _021781f0 ; =data_ov61_0217e310
mov r0, r7
bl strcmp
cmp r0, #0
beq _021781e0
mov r0, r7
bl func_ov61_021590ac
movs r4, r0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r0, [r4, #0xc]
ldr r0, [r0]
ldr r0, [r0]
str r0, [r6, #4]
_021781e0:
cmp r5, #0
strne r4, [r5]
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_0217814c
_021781f0: .word data_ov61_0217e310
.global func_ov61_021781f4
arm_func_start func_ov61_021781f4
func_ov61_021781f4: ; 0x021781f4
ldrb r3, [r0]
ldrb r2, [r1]
strb r2, [r0]
strb r3, [r1]
bx lr
arm_func_end func_ov61_021781f4
.global func_ov61_02178208
arm_func_start func_ov61_02178208
func_ov61_02178208: ; 0x02178208
cmp r0, #0x1a
addlo r0, r0, #0x41
andlo r0, r0, #0xff
bxlo lr
cmp r0, #0x34
addlo r0, r0, #0x47
andlo r0, r0, #0xff
bxlo lr
cmp r0, #0x3e
sublo r0, r0, #4
andlo r0, r0, #0xff
bxlo lr
moveq r0, #0x2b
bxeq lr
cmp r0, #0x3f
moveq r0, #0x2f
movne r0, #0
bx lr
arm_func_end func_ov61_02178208
.global func_ov61_02178250
arm_func_start func_ov61_02178250
func_ov61_02178250: ; 0x02178250
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #8
mov r7, r1
mov r8, r0
mov r6, r2
cmp r7, #0
mov r4, #0
ble _02178304
_02178270:
mov r2, #0
add r3, sp, #4
mov r0, r2
_0217827c:
cmp r4, r7
ldrltb r1, [r8], #1
add r2, r2, #1
add r4, r4, #1
strltb r1, [r3]
strgeb r0, [r3]
cmp r2, #2
add r3, r3, #1
ble _0217827c
ldrb r0, [sp, #4]
ldrb r5, [sp, #5]
ldrb r2, [sp, #6]
mov r3, r0, lsl #0x1e
mov r1, r5, asr #0x4
add ip, r1, r3, lsr #26
and r1, r2, #0x3f
mov r3, r5, lsl #0x1c
mov r2, r2, asr #0x6
mov r0, r0, asr #0x2
add r2, r2, r3, lsr #26
add r5, sp, #0
strb r0, [sp]
strb ip, [sp, #1]
strb r2, [sp, #2]
strb r1, [sp, #3]
mov r9, #0
_021782e4:
ldrb r0, [r5], #1
bl func_ov61_02178208
add r9, r9, #1
cmp r9, #3
strb r0, [r6], #1
ble _021782e4
cmp r4, r7
blt _02178270
_02178304:
mov r0, #0
strb r0, [r6]
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
arm_func_end func_ov61_02178250
.global func_ov61_02178314
arm_func_start func_ov61_02178314
func_ov61_02178314: ; 0x02178314
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x104
str r1, [sp]
add r4, sp, #4
mov r10, r0
mov r9, r2
mov r8, r3
mov r1, #0
_02178334:
add r0, r1, #1
mov r0, r0, lsl #0x10
strb r1, [r4], #1
mov r1, r0, asr #0x10
cmp r1, #0x100
blt _02178334
mov r4, #0
add r6, sp, #4
mov r5, r4
mov r7, r4
mov r11, r6
_02178360:
ldrb r3, [r6]
ldrb r2, [r10, r4]
ldr r1, [sp]
add r0, r4, #1
add r2, r3, r2
add r2, r5, r2
mov r3, r2, lsr #0x1f
rsb r2, r3, r2, lsl #24
add r2, r3, r2, ror #24
and r5, r2, #0xff
bl func_02002c14
and r4, r1, #0xff
mov r0, r6
add r1, r11, r5
bl func_ov61_021781f4
add r0, r7, #1
mov r0, r0, lsl #0x10
mov r7, r0, asr #0x10
cmp r7, #0x100
add r6, r6, #1
blt _02178360
mov r6, #0
cmp r8, #0
mov r7, r6
mov r5, r6
addle sp, sp, #0x104
ldmleia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
add r4, sp, #4
_021783d0:
ldrb r0, [r9, r5]
add r0, r6, r0
add r0, r0, #1
mov r1, r0, lsr #0x1f
rsb r0, r1, r0, lsl #24
add r0, r1, r0, ror #24
and r6, r0, #0xff
ldrb r1, [r4, r6]
add r0, r4, r6
add r1, r1, r7
mov r2, r1, lsr #0x1f
rsb r1, r2, r1, lsl #24
add r1, r2, r1, ror #24
and r7, r1, #0xff
add r1, r4, r7
bl func_ov61_021781f4
ldrb r3, [r4, r6]
ldrb r1, [r4, r7]
add r0, r5, #1
mov r2, r0, lsl #0x10
add r0, r3, r1
mov r1, r0, lsr #0x1f
rsb r0, r1, r0, lsl #24
add r0, r1, r0, ror #24
and r0, r0, #0xff
ldrb r1, [r9, r5]
ldrb r0, [r4, r0]
cmp r8, r2, asr #16
eor r0, r1, r0
strb r0, [r9, r5]
mov r5, r2, asr #0x10
bgt _021783d0
add sp, sp, #0x104
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
arm_func_end func_ov61_02178314
.global func_ov61_02178458
arm_func_start func_ov61_02178458
func_ov61_02178458: ; 0x02178458
strb r1, [r0]
ldrb ip, [r2]
ldrb r3, [r2, #1]
mov r1, #5
strb ip, [r0, #1]
strb r3, [r0, #2]
ldrb r3, [r2, #2]
ldrb r2, [r2, #3]
strb r3, [r0, #3]
strb r2, [r0, #4]
str r1, [r0, #0x800]
bx lr
arm_func_end func_ov61_02178458
.global func_ov61_02178488
arm_func_start func_ov61_02178488
func_ov61_02178488: ; 0x02178488
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0x44
mov r5, r3
cmp r5, #1
mov r6, r0
mov r4, r1
addlt sp, sp, #0x44
ldmltia sp!, {r3, r4, r5, r6, pc}
cmp r5, #0x41
addgt sp, sp, #0x44
ldmgtia sp!, {r3, r4, r5, r6, pc}
sub r0, r5, #1
ldrsb r0, [r2, r0]
cmp r0, #0
addne sp, sp, #0x44
ldmneia sp!, {r3, r4, r5, r6, pc}
add r0, sp, #0
mov r1, r2
bl strcpy
add r0, r6, #0x44
bl strlen
mov r1, r0
add r2, sp, #0
add r0, r6, #0x44
sub r3, r5, #1
bl func_ov61_02178314
ldr r2, [r4, #0x800]
sub r1, r5, #1
add r0, sp, #0
add r2, r4, r2
bl func_ov61_02178250
ldr r0, [r4, #0x800]
add r0, r4, r0
bl strlen
ldr r1, [r4, #0x800]
add r0, r0, #1
add r0, r1, r0
str r0, [r4, #0x800]
add sp, sp, #0x44
ldmia sp!, {r3, r4, r5, r6, pc}
arm_func_end func_ov61_02178488
.global func_ov61_02178528
arm_func_start func_ov61_02178528
func_ov61_02178528: ; 0x02178528
stmdb sp!, {r4, lr}
sub sp, sp, #8
mov r4, r0
mov r0, r1
ldr r1, _021785d4 ; =data_ov61_0217e320
add r2, sp, #4
add r3, sp, #0
bl func_02046eb0
ldr r0, [sp, #4]
ldr lr, [sp]
mov r2, r0, lsr #0x18
mov r1, r0, lsr #0x8
mov r3, r0, lsl #0x8
mov ip, r0, lsl #0x18
and r2, r2, #0xff
and r1, r1, #0xff00
orr r1, r2, r1
and r3, r3, #0xff0000
mov r0, lr, lsl #0x10
and r2, ip, #0xff000000
orr r1, r3, r1
orrs r2, r2, r1
mov r1, r0, lsr #0x10
str r2, [sp, #4]
cmpne r1, #0
addeq sp, sp, #8
ldmeqia sp!, {r4, pc}
ldr r0, [r4, #0x104]
cmp r0, r2
addeq r0, r4, #0x100
ldreqh r0, [r0, #8]
cmpeq r0, r1
addeq sp, sp, #8
ldmeqia sp!, {r4, pc}
str r2, [r4, #0x104]
add r0, r4, #0x100
strh r1, [r0, #8]
ldr r0, [sp, #4]
ldr r2, [r4, #0x10c]
ldr r3, [r4, #0xa8]
blx r3
add sp, sp, #8
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02178528
_021785d4: .word data_ov61_0217e320
.global func_ov61_021785d8
arm_func_start func_ov61_021785d8
func_ov61_021785d8: ; 0x021785d8
stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x10c
movs r11, r3
mov r3, #0
ldr r7, [sp, #0x130]
str r3, [sp, #0x108]
mov r10, r0
mov r9, r1
mov r8, r2
addeq sp, sp, #0x10c
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
sub r0, r8, #1
cmp r0, #1
bhi _02178684
ldr r0, [r9, #0x800]
rsb r0, r0, #0x800
cmp r0, #2
addlo sp, sp, #0x10c
ldmloia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
ldr r1, [r10, #0x10c]
ldr r2, [r10, #0x98]
mov r0, r8
blx r2
str r0, [sp]
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
mov r1, r0, asr #0x8
mov r0, r0, lsl #0x8
and r1, r1, #0xff
and r0, r0, #0xff00
orr r0, r1, r0
strh r0, [sp, #4]
add r0, sp, #4
ldrb r1, [r0]
ldr r2, [r9, #0x800]
ldrb r0, [r0, #1]
add r3, r9, r2
strb r1, [r9, r2]
strb r0, [r3, #1]
ldr r0, [r9, #0x800]
add r0, r0, #2
str r0, [r9, #0x800]
b _0217868c
_02178684:
mov r0, #1
str r0, [sp]
_0217868c:
cmp r11, #0xff
bne _02178760
ldr r2, [r10, #0x10c]
ldr r3, [r10, #0x94]
add r1, sp, #8
mov r0, r8
blx r3
ldr r0, [sp, #0x108]
mov r5, #0
cmp r0, #0
ble _02178728
ldr r11, _02178824 ; =data_ov61_0217e32c
ldr r4, _02178828 ; =data_ov61_0217e4e8
add r7, sp, #8
_021786c4:
ldrb r0, [r7]
ldr r1, [r4, r0, lsl #2]
mov r0, r9
cmp r1, #0
moveq r1, r11
bl func_ov61_0217807c
cmp r8, #0
bne _02178714
ldrb r0, [r7]
ldr r2, [r10, #0x10c]
ldr r3, [r10, #0x88]
mov r1, r9
ldr r6, [r9, #0x800]
blx r3
ldr r0, [r9, #0x800]
cmp r6, r0
bne _02178714
ldr r1, _0217882c ; =data_ov61_0217e334
mov r0, r9
bl func_ov61_0217807c
_02178714:
ldr r0, [sp, #0x108]
add r5, r5, #1
cmp r5, r0
add r7, r7, #1
blt _021786c4
_02178728:
ldr r1, [r9, #0x800]
rsb r0, r1, #0x800
cmp r0, #1
addlt sp, sp, #0x10c
ldmltia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
add r0, r1, #1
str r0, [r9, #0x800]
mov r0, #0
strb r0, [r9, r1]
ldr r11, [sp, #0x108]
cmp r8, #0
add r7, sp, #8
addeq sp, sp, #0x10c
ldmeqia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02178760:
ldr r0, [sp]
mov r4, #0
cmp r0, #0
addle sp, sp, #0x10c
ldmleia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
_02178774:
mov r5, #0
cmp r11, #0
ble _0217880c
_02178780:
cmp r8, #0
ldr r6, [r9, #0x800]
bne _021787a4
ldrb r0, [r7, r5]
ldr r2, [r10, #0x10c]
ldr r3, [r10, #0x88]
mov r1, r9
blx r3
b _021787e8
_021787a4:
cmp r8, #1
bne _021787c8
ldrb r0, [r7, r5]
ldr r3, [r10, #0x10c]
ldr ip, [r10, #0x8c]
mov r1, r4
mov r2, r9
blx ip
b _021787e8
_021787c8:
cmp r8, #2
bne _021787e8
ldrb r0, [r7, r5]
ldr r3, [r10, #0x10c]
ldr ip, [r10, #0x90]
mov r1, r4
mov r2, r9
blx ip
_021787e8:
ldr r0, [r9, #0x800]
cmp r6, r0
bne _02178800
ldr r1, _0217882c ; =data_ov61_0217e334
mov r0, r9
bl func_ov61_0217807c
_02178800:
add r5, r5, #1
cmp r5, r11
blt _02178780
_0217880c:
ldr r0, [sp]
add r4, r4, #1
cmp r4, r0
blt _02178774
add sp, sp, #0x10c
ldmia sp!, {r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_021785d8
_02178824: .word data_ov61_0217e32c
_02178828: .word data_ov61_0217e4e8
_0217882c: .word data_ov61_0217e334
.global func_ov61_02178830
arm_func_start func_ov61_02178830
func_ov61_02178830: ; 0x02178830
stmdb sp!, {r3, r4, r5, lr}
str r3, [sp]
mov r3, r2
mov r2, #0
mov r5, r0
mov r4, r1
bl func_ov61_021785d8
ldr ip, [sp, #0x14]
ldr r3, [sp, #0x10]
mov r0, r5
mov r1, r4
mov r2, #1
str ip, [sp]
bl func_ov61_021785d8
ldr r0, [sp, #0x1c]
ldr r3, [sp, #0x18]
str r0, [sp]
mov r0, r5
mov r1, r4
mov r2, #2
bl func_ov61_021785d8
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02178830
.global func_ov61_02178888
arm_func_start func_ov61_02178888
func_ov61_02178888: ; 0x02178888
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #0x10
mov r5, #0
cmp r3, #3
mov r6, r5
mov r7, r5
addlt sp, sp, #0x10
ldmltia sp!, {r3, r4, r5, r6, r7, pc}
ldrb ip, [r2], #1
sub r3, r3, #1
cmp ip, #0
cmpne ip, #0xff
movne r5, r2
subne r3, r3, ip
addne r2, r2, ip
cmp r3, #2
addlt sp, sp, #0x10
ldmltia sp!, {r3, r4, r5, r6, r7, pc}
ldrb lr, [r2], #1
sub r3, r3, #1
cmp lr, #0
cmpne lr, #0xff
movne r6, r2
subne r3, r3, lr
addne r2, r2, lr
cmp r3, #1
addlt sp, sp, #0x10
ldmltia sp!, {r3, r4, r5, r6, r7, pc}
ldrb r4, [r2]
sub r3, r3, #1
cmp r4, #0
cmpne r4, #0xff
subne r3, r3, r4
addne r7, r2, #1
cmp r3, #0
addlt sp, sp, #0x10
ldmltia sp!, {r3, r4, r5, r6, r7, pc}
str lr, [sp]
str r6, [sp, #4]
str r4, [sp, #8]
mov r2, ip
mov r3, r5
str r7, [sp, #0xc]
bl func_ov61_02178830
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov61_02178888
.global func_ov61_02178940
arm_func_start func_ov61_02178940
func_ov61_02178940: ; 0x02178940
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x188
mov r8, r2
sub r2, r8, #1
mov r3, #0
cmp r2, #1
mov r10, r0
mov r9, r1
str r3, [sp, #0x104]
movhi r11, #1
bhi _02178980
ldr r1, [r10, #0x10c]
ldr r2, [r10, #0x98]
mov r0, r8
blx r2
mov r11, r0
_02178980:
ldr r2, [r10, #0x10c]
ldr r3, [r10, #0x94]
add r1, sp, #4
mov r0, r8
blx r3
ldr r1, [sp, #0x104]
mov r0, #0
str r0, [sp]
cmp r1, #0
addle sp, sp, #0x188
ldmleia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
add r6, sp, #4
_021789b0:
ldrb r1, [r6]
ldr r0, _02178b08 ; =data_ov61_0217e4e8
ldr r5, [r0, r1, lsl #2]
cmp r5, #0
ldreq r5, _02178b0c ; =data_ov61_0217e32c
cmp r8, #0
bne _02178a2c
mov r0, r9
mov r1, r5
bl func_ov61_0217807c
ldr r0, [r9, #0x800]
mov r1, #0x5c
add r0, r9, r0
strb r1, [r0, #-1]
ldrb r0, [r6]
ldr r2, [r10, #0x10c]
ldr r3, [r10, #0x88]
mov r1, r9
ldr r4, [r9, #0x800]
blx r3
ldr r0, [r9, #0x800]
cmp r4, r0
bne _02178a18
ldr r1, _02178b10 ; =data_ov61_0217e334
mov r0, r9
bl func_ov61_0217807c
_02178a18:
ldr r0, [r9, #0x800]
mov r1, #0x5c
add r0, r9, r0
strb r1, [r0, #-1]
b _02178ae4
_02178a2c:
cmp r11, #0
mov r4, #0
ble _02178ae4
_02178a38:
ldr r1, _02178b14 ; =data_ov61_0217e338
add r0, sp, #0x108
mov r2, r5
mov r3, r4
bl func_020459b8
mov r0, r9
add r1, sp, #0x108
bl func_ov61_0217807c
ldr r0, [r9, #0x800]
cmp r8, #1
add r1, r9, r0
mov r0, #0x5c
strb r0, [r1, #-1]
ldr r7, [r9, #0x800]
bne _02178a90
ldrb r0, [r6]
mov r1, r4
mov r2, r9
ldr r3, [r10, #0x10c]
ldr ip, [r10, #0x8c]
blx ip
b _02178ab0
_02178a90:
cmp r8, #2
bne _02178ab0
ldrb r0, [r6]
mov r1, r4
mov r2, r9
ldr r3, [r10, #0x10c]
ldr ip, [r10, #0x90]
blx ip
_02178ab0:
ldr r0, [r9, #0x800]
cmp r7, r0
bne _02178ac8
ldr r1, _02178b10 ; =data_ov61_0217e334
mov r0, r9
bl func_ov61_0217807c
_02178ac8:
ldr r0, [r9, #0x800]
add r4, r4, #1
add r1, r9, r0
mov r0, #0x5c
strb r0, [r1, #-1]
cmp r4, r11
blt _02178a38
_02178ae4:
ldr r0, [sp]
ldr r1, [sp, #0x104]
add r0, r0, #1
str r0, [sp]
cmp r0, r1
add r6, r6, #1
blt _021789b0
add sp, sp, #0x188
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_02178940
_02178b08: .word data_ov61_0217e4e8
_02178b0c: .word data_ov61_0217e32c
_02178b10: .word data_ov61_0217e334
_02178b14: .word data_ov61_0217e338
.global func_ov61_02178b18
arm_func_start func_ov61_02178b18
func_ov61_02178b18: ; 0x02178b18
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
mov r2, #1
mov r5, r0
str r2, [r4, #0x800]
mov r3, #0x5c
mov r2, #0
strb r3, [r4]
bl func_ov61_02178940
mov r0, r5
mov r1, r4
mov r2, #1
bl func_ov61_02178940
mov r0, r5
mov r1, r4
mov r2, #2
bl func_ov61_02178940
ldr r1, _02178b78 ; =data_ov61_0217e340
mov r0, r4
bl func_ov61_0217807c
ldr r0, [r4, #0x800]
sub r0, r0, #1
str r0, [r4, #0x800]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02178b18
_02178b78: .word data_ov61_0217e340
.global func_ov61_02178b7c
arm_func_start func_ov61_02178b7c
func_ov61_02178b7c: ; 0x02178b7c
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0xc
ldr ip, _02178ca0 ; =data_ov61_0217a5e4
mov r3, r0
ldrb r4, [ip]
ldrb r0, [ip, #1]
ldrb lr, [ip, #2]
strb r4, [sp, #4]
strb r0, [sp, #5]
ldrb r0, [ip, #3]
cmp r2, #0xa
add r6, sp, #4
strb lr, [sp, #6]
strb r0, [sp, #7]
ldrb lr, [ip, #4]
ldrb r0, [ip, #5]
mov r5, #1
strb lr, [sp, #8]
strb r0, [sp, #9]
blt _02178bf8
mov r4, #0
_02178bd0:
ldrb ip, [r6]
ldrb r0, [r1, r4]
cmp ip, r0
movne r5, #0
bne _02178bfc
add r4, r4, #1
cmp r4, #6
add r6, r6, #1
blt _02178bd0
b _02178bfc
_02178bf8:
mov r5, #0
_02178bfc:
cmp r5, #0
beq _02178c78
ldrb r2, [r1, #6]
ldrb r0, [r1, #7]
add ip, sp, #0
strb r2, [ip]
strb r0, [ip, #1]
ldrb r2, [r1, #8]
ldrb r0, [r1, #9]
strb r0, [ip, #3]
strb r2, [ip, #2]
ldr r2, [r3, #0xa0]
cmp r2, #0
addeq sp, sp, #0xc
ldmeqia sp!, {r3, r4, r5, r6, pc}
ldr lr, [sp]
ldr r1, [r3, #0x10c]
mov r3, lr, lsr #0x18
mov r0, lr, lsr #0x8
mov ip, lr, lsl #0x8
and r3, r3, #0xff
and r0, r0, #0xff00
mov lr, lr, lsl #0x18
orr r0, r3, r0
and ip, ip, #0xff0000
and r3, lr, #0xff000000
orr r0, ip, r0
orr r0, r3, r0
blx r2
add sp, sp, #0xc
ldmia sp!, {r3, r4, r5, r6, pc}
_02178c78:
ldr ip, [r3, #0xa4]
cmp ip, #0
addeq sp, sp, #0xc
ldmeqia sp!, {r3, r4, r5, r6, pc}
mov r0, r1
mov r1, r2
ldr r2, [r3, #0x10c]
blx ip
add sp, sp, #0xc
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_02178b7c
_02178ca0: .word data_ov61_0217a5e4
.global func_ov61_02178ca4
arm_func_start func_ov61_02178ca4
func_ov61_02178ca4: ; 0x02178ca4
stmdb sp!, {r4, lr}
mov r3, #0
_02178cac:
add r2, r0, r3, lsl #2
ldr r2, [r2, #0xd8]
cmp r1, r2
moveq r0, #1
ldmeqia sp!, {r4, pc}
add r3, r3, #1
cmp r3, #0xa
blt _02178cac
ldr r2, [r0, #0x100]
ldr ip, _02178d04 ; =0x66666667
add lr, r2, #1
smull r3, r4, ip, lr
mov r2, lr, lsr #0x1f
add r4, r2, r4, asr #2
mov ip, #0xa
smull r2, r3, ip, r4
sub r4, lr, r2
str r4, [r0, #0x100]
add r0, r0, r4, lsl #2
str r1, [r0, #0xd8]
mov r0, #0
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02178ca4
_02178d04: .word 0x66666667
.global func_ov61_02178d08
arm_func_start func_ov61_02178d08
func_ov61_02178d08: ; 0x02178d08
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
sub sp, sp, #0x810
movs r8, r0
mov r0, #0
str r0, [sp, #0x80c]
ldreq r0, _02179018 ; =data_ov61_0217e1a0
mov r7, r2
ldreq r8, [r0]
ldrsb r0, [r1]
mov r6, r3
cmp r0, #0x3b
bne _02178d60
ldr r3, [r8, #0xd4]
cmp r3, #0
addeq sp, sp, #0x810
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
mov r0, r1
mov r1, r7
mov r2, r6
blx r3
add sp, sp, #0x810
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02178d60:
cmp r0, #0x5c
bne _02178d9c
add r1, sp, #0xc
mov r0, r8
bl func_ov61_02178b18
str r6, [sp]
mov r0, #8
str r0, [sp, #4]
ldr r0, [r8]
ldr r2, [sp, #0x80c]
add r1, sp, #0xc
mov r3, #0
bl func_ov61_02166c04
add sp, sp, #0x810
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02178d9c:
cmp r7, #7
addlt sp, sp, #0x810
ldmltia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
and r0, r0, #0xff
cmp r0, #0xfe
ldreqb r0, [r1, #1]
cmpeq r0, #0xfd
addne sp, sp, #0x810
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
ldr r0, [r8, #0xb8]
add r4, r1, #3
cmp r0, #0
movgt r0, #0
strgt r0, [r8, #0xb8]
ldrsb r9, [r1, #2]
add r5, r1, #7
add r0, sp, #0xc
mov r1, r9
mov r2, r4
sub r7, r7, #7
bl func_ov61_02178458
cmp r9, #8
addls pc, pc, r9, lsl #2
b _02178fe8
_02178dfc: ; jump table
b _02178e20 ; case 0
b _02178e38 ; case 1
b _02178e74 ; case 2
b _02178fe8 ; case 3
b _02178eac ; case 4
b _02178fe8 ; case 5
b _02178f20 ; case 6
b _02178fe8 ; case 7
b _02178fe8 ; case 8
_02178e20:
add r1, sp, #0xc
mov r0, r8
mov r2, r5
mov r3, r7
bl func_ov61_02178888
b _02178ff0
_02178e38:
cmp r7, #0xd
blt _02178e5c
ldr r0, [r8, #0xa8]
cmp r0, #0
beq _02178e5c
add r1, r5, r7
mov r0, r8
sub r1, r1, #0xd
bl func_ov61_02178528
_02178e5c:
add r1, sp, #0xc
mov r0, r8
mov r2, r5
mov r3, r7
bl func_ov61_02178488
b _02178ff0
_02178e74:
ldr r0, [sp, #0x80c]
cmp r7, #0x20
movgt r7, #0x20
add r3, sp, #0xc
mov r4, #5
mov r1, r5
mov r2, r7
add r0, r3, r0
strb r4, [sp, #0xc]
bl func_02043594
ldr r0, [sp, #0x80c]
add r0, r0, r7
str r0, [sp, #0x80c]
b _02178ff0
_02178eac:
ldr r1, [r8, #0xb8]
mvn r0, #0
cmp r1, r0
addeq sp, sp, #0x810
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
mov r2, #0
str r2, [sp, #8]
_02178ec8:
add r0, r8, r2
ldrsb r1, [r4, r2]
ldrsb r0, [r0, #0x84]
cmp r1, r0
addne sp, sp, #0x810
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
add r2, r2, #1
str r2, [sp, #8]
cmp r2, #4
blt _02178ec8
cmp r7, #2
addlt sp, sp, #0x810
ldmltia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
mvn r0, #0
str r0, [r8, #0xb8]
ldrsb r0, [r5]
ldr r2, [r8, #0x10c]
ldr r3, [r8, #0x9c]
add r1, r5, #1
blx r3
add sp, sp, #0x810
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02178f20:
mov r2, #0
str r2, [sp, #8]
_02178f28:
add r0, r8, r2
ldrsb r1, [r4, r2]
ldrsb r0, [r0, #0x84]
cmp r1, r0
addne sp, sp, #0x810
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
add r2, r2, #1
str r2, [sp, #8]
cmp r2, #4
blt _02178f28
cmp r7, #4
addlt sp, sp, #0x810
ldmltia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
mov r0, #7
strb r0, [sp, #0xc]
ldrb r1, [r5]
ldrb r0, [r5, #1]
ldr r2, [sp, #0x80c]
add r4, sp, #0xc
strb r1, [r4, r2]
add r4, r4, r2
strb r0, [r4, #1]
ldrb r2, [r5, #2]
ldrb r1, [r5, #3]
add r3, sp, #8
mov r0, r8
strb r2, [r4, #2]
strb r1, [r4, #3]
ldr r1, [sp, #0x80c]
add r1, r1, #4
str r1, [sp, #0x80c]
ldrb r2, [r5]
ldrb r1, [r5, #1]
strb r2, [r3]
strb r1, [r3, #1]
ldrb r2, [r5, #2]
ldrb r1, [r5, #3]
strb r2, [r3, #2]
strb r1, [r3, #3]
ldr r1, [sp, #8]
bl func_ov61_02178ca4
cmp r0, #0
bne _02178ff0
mov r0, r8
add r1, r5, #4
sub r2, r7, #4
bl func_ov61_02178b7c
b _02178ff0
_02178fe8:
add sp, sp, #0x810
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02178ff0:
str r6, [sp]
mov r0, #8
str r0, [sp, #4]
ldr r0, [r8]
ldr r2, [sp, #0x80c]
add r1, sp, #0xc
mov r3, #0
bl func_ov61_02166c04
add sp, sp, #0x810
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_02178d08
_02179018: .word data_ov61_0217e1a0
.global func_ov61_0217901c
arm_func_start func_ov61_0217901c
func_ov61_0217901c: ; 0x0217901c
stmdb sp!, {r3, r4, lr}
sub sp, sp, #0xc
sub sp, sp, #0x800
mov r4, r0
mov r3, #0
add r0, sp, #8
add r2, r4, #0x84
mov r1, #8
str r3, [sp, #0x808]
bl func_ov61_02178458
add r0, r4, #0xcc
str r0, [sp]
mov r0, #8
str r0, [sp, #4]
ldr r0, [r4]
ldr r2, [sp, #0x808]
add r1, sp, #8
mov r3, #0
bl func_ov61_02166c04
bl func_ov61_021665e8
str r0, [r4, #0xb0]
add sp, sp, #0xc
add sp, sp, #0x800
ldmia sp!, {r3, r4, pc}
arm_func_end func_ov61_0217901c
.global func_ov61_0217907c
arm_func_start func_ov61_0217907c
func_ov61_0217907c: ; 0x0217907c
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, lr}
sub sp, sp, #0x28
sub sp, sp, #0x800
mov r10, r0
mov r9, r1
mov r3, #0
add r0, sp, #0x24
add r2, r10, #0x84
mov r1, #3
str r3, [sp, #0x824]
bl func_ov61_02178458
ldr r4, _0217925c ; =data_ov61_021817cc
mov r8, #0
ldr r0, [r4]
cmp r0, #0
ble _0217910c
ldr r11, _02179260 ; =data_ov61_0217e354
ldr r5, _02179264 ; =data_ov61_021817d0
add r7, sp, #0x10
add r6, sp, #0x24
_021790cc:
mov r0, r7
mov r1, r11
mov r2, r8
bl func_020459b8
mov r0, r6
mov r1, r7
bl func_ov61_0217807c
ldr r0, [r5, r8, lsl #2]
bl func_ov61_02159554
mov r1, r0
mov r0, r6
bl func_ov61_0217807c
add r8, r8, #1
ldr r0, [r4]
cmp r8, r0
blt _021790cc
_0217910c:
ldr r1, _02179268 ; =data_ov61_0217e360
add r0, sp, #0x24
bl func_ov61_0217807c
ldr r1, [r10, #0xc0]
add r0, sp, #0x24
bl func_ov61_02178048
ldr r1, _0217926c ; =data_ov61_0217e36c
add r0, sp, #0x24
bl func_ov61_0217807c
ldr r0, [r10, #0xc8]
cmp r0, #0
ldrne r1, _02179270 ; =data_ov61_0217e374
add r0, sp, #0x24
ldreq r1, _02179274 ; =data_ov61_0217e378
bl func_ov61_0217807c
cmp r9, #0
beq _02179168
ldr r1, _02179278 ; =data_ov61_0217e37c
add r0, sp, #0x24
bl func_ov61_0217807c
add r0, sp, #0x24
mov r1, r9
bl func_ov61_02178048
_02179168:
ldr r1, _0217927c ; =data_ov61_0217e38c
add r0, sp, #0x24
bl func_ov61_0217807c
add r0, sp, #0x24
add r1, r10, #4
bl func_ov61_0217807c
ldr r0, [r10, #0xa8]
cmp r0, #0
beq _021791c0
ldr r1, _02179280 ; =data_ov61_0217e398
add r0, sp, #0x24
bl func_ov61_0217807c
ldr r1, [r10, #0x104]
add r0, sp, #0x24
bl func_ov61_02178048
ldr r1, _02179284 ; =data_ov61_0217e3a4
add r0, sp, #0x24
bl func_ov61_0217807c
add r0, r10, #0x100
ldrh r1, [r0, #8]
add r0, sp, #0x24
bl func_ov61_02178048
_021791c0:
cmp r9, #2
beq _021791f0
mov r2, #0xff
str r2, [sp]
mov r3, #0
str r3, [sp, #4]
str r2, [sp, #8]
add r1, sp, #0x24
mov r0, r10
str r3, [sp, #0xc]
bl func_ov61_02178830
b _02179214
_021791f0:
ldr r2, [sp, #0x824]
rsb r0, r2, #0x800
cmp r0, #1
blt _02179214
add r1, r2, #1
str r1, [sp, #0x824]
add r0, sp, #0x24
mov r1, #0
strb r1, [r0, r2]
_02179214:
add r0, r10, #0xcc
str r0, [sp]
mov r0, #8
str r0, [sp, #4]
ldr r0, [r10]
ldr r2, [sp, #0x824]
add r1, sp, #0x24
mov r3, #0
bl func_ov61_02166c04
bl func_ov61_021665e8
str r0, [r10, #0xac]
str r0, [r10, #0xb0]
cmp r9, #0
movne r0, #0
strne r0, [r10, #0xb4]
add sp, sp, #0x28
add sp, sp, #0x800
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, r10, r11, pc}
.align 2, 0
arm_func_end func_ov61_0217907c
_0217925c: .word data_ov61_021817cc
_02179260: .word data_ov61_0217e354
_02179264: .word data_ov61_021817d0
_02179268: .word data_ov61_0217e360
_0217926c: .word data_ov61_0217e36c
_02179270: .word data_ov61_0217e374
_02179274: .word data_ov61_0217e378
_02179278: .word data_ov61_0217e37c
_0217927c: .word data_ov61_0217e38c
_02179280: .word data_ov61_0217e398
_02179284: .word data_ov61_0217e3a4
.global func_ov61_02179288
arm_func_start func_ov61_02179288
func_ov61_02179288: ; 0x02179288
cmp r0, #0x32
bxlt lr
cmp r0, #0xfe
bxgt lr
ldr r2, _021792a4 ; =data_ov61_0217e4e8
str r1, [r2, r0, lsl #2]
bx lr
.align 2, 0
arm_func_end func_ov61_02179288
_021792a4: .word data_ov61_0217e4e8
.global func_ov61_021792a8
arm_func_start func_ov61_021792a8
func_ov61_021792a8: ; 0x021792a8
stmdb sp!, {r3, lr}
ldr r3, _021792c4 ; =data_ov61_02181940
mov r0, r1
ldr r3, [r3, #0x90]
mov r1, r2
blx r3
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021792a8
_021792c4: .word data_ov61_02181940
.global func_ov61_021792c8
arm_func_start func_ov61_021792c8
func_ov61_021792c8: ; 0x021792c8
stmdb sp!, {r3, lr}
cmp r1, #0
ldmeqia sp!, {r3, pc}
ldr r2, _021792e8 ; =data_ov61_02181940
mov r0, r1
ldr r1, [r2, #0x94]
blx r1
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov61_021792c8
_021792e8: .word data_ov61_02181940
.global func_ov61_021792ec
arm_func_start func_ov61_021792ec
func_ov61_021792ec: ; 0x021792ec
ldr r0, _021792f8 ; =data_ov61_02181940
ldr r0, [r0, #0x98]
bx lr
.align 2, 0
arm_func_end func_ov61_021792ec
_021792f8: .word data_ov61_02181940
.global func_ov61_021792fc
arm_func_start func_ov61_021792fc
func_ov61_021792fc: ; 0x021792fc
stmdb sp!, {r4, r5, lr}
sub sp, sp, #0xc
mov r5, r0
bl func_ov61_021792ec
cmp r5, #0
mov r4, r0
addne sp, sp, #0xc
ldmneia sp!, {r4, r5, pc}
ldr r0, _02179380 ; =func_ov61_021795f8
mov r1, #0
bl func_ov61_0213f28c
ldr r0, _02179384 ; =func_ov61_0217961c
bl func_ov61_0214a5c4
ldr r0, _02179388 ; =func_ov61_02179638
bl func_ov61_0214a5e4
mov r0, #0
str r0, [sp]
ldr r2, _0217938c ; =func_ov61_021793c0
ldr r1, _02179390 ; =func_ov61_021793a0
str r2, [sp, #4]
str r0, [sp, #8]
mov r2, r0
ldr r3, _02179394 ; =func_ov61_021793bc
bl func_ov61_0213ef98
ldr r0, _02179398 ; =func_ov61_02179424
mov r1, #0
bl func_ov61_02140d08
ldr r0, _0217939c ; =func_ov61_021796b0
bl func_ov61_0214a624
mov r0, #4
str r0, [r4, #0xe3c]
add sp, sp, #0xc
ldmia sp!, {r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_021792fc
_02179380: .word func_ov61_021795f8
_02179384: .word func_ov61_0217961c
_02179388: .word func_ov61_02179638
_0217938c: .word func_ov61_021793c0
_02179390: .word func_ov61_021793a0
_02179394: .word func_ov61_021793bc
_02179398: .word func_ov61_02179424
_0217939c: .word func_ov61_021796b0
.global func_ov61_021793a0
arm_func_start func_ov61_021793a0
func_ov61_021793a0: ; 0x021793a0
stmdb sp!, {r3, lr}
cmp r0, #0
ldmneia sp!, {r3, pc}
bl func_ov61_021792ec
mov r1, #5
str r1, [r0, #0xe3c]
ldmia sp!, {r3, pc}
arm_func_end func_ov61_021793a0
.global func_ov61_021793bc
arm_func_start func_ov61_021793bc
func_ov61_021793bc: ; 0x021793bc
bx lr
arm_func_end func_ov61_021793bc
.global func_ov61_021793c0
arm_func_start func_ov61_021793c0
func_ov61_021793c0: ; 0x021793c0
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
mov r5, r1
bl func_ov61_021792ec
mov r4, r0
ldr r2, [r4, #0xe1c]
cmp r2, #0
beq _021793ec
mov r0, r6
mov r1, r5
blx r2
_021793ec:
ldr r0, [r4, #0xe3c]
cmp r0, #6
ldreq r0, [r4, #0xe20]
cmpeq r0, #0
ldreqb r0, [r4, #0xe40]
cmpeq r6, r0
ldmneia sp!, {r4, r5, r6, pc}
mov r0, r4
bl func_ov61_02179ee4
mov r0, r4
mov r2, r5
mov r1, #0
bl func_ov61_02179ce4
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov61_021793c0
.global func_ov61_02179424
arm_func_start func_ov61_02179424
func_ov61_02179424: ; 0x02179424
bx lr
arm_func_end func_ov61_02179424
.global func_ov61_02179428
arm_func_start func_ov61_02179428
func_ov61_02179428: ; 0x02179428
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
ldr r1, _0217953c ; =data_ov61_0217a5ec
mvn r2, #0
ldr r1, [r1, #8]
mov r9, r0
bl func_ov61_0214231c
movs r4, r0
mvnmi r0, #0
ldmmiia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
ldr r1, _0217953c ; =data_ov61_0217a5ec
mov r0, r9
ldr r1, [r1, #0xc]
mvn r2, #0
bl func_ov61_0214231c
movs r5, r0
bmi _02179470
cmp r5, #9
ble _02179478
_02179470:
mvn r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02179478:
bl func_ov61_021792ec
ldr r1, _0217953c ; =data_ov61_0217a5ec
mov r6, r0
ldr r1, [r1, #0x14]
mov r0, r9
mov r2, #0
bl func_ov61_0214231c
ldr r1, [r6, #0xe30]
subs r0, r1, r0
rsbmi r0, r0, #0
cmp r0, #1
mvngt r0, #0
ldmgtia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
ldr r1, _0217953c ; =data_ov61_0217a5ec
mov r0, r9
ldr r1, [r1, #0x10]
mov r2, #4
bl func_ov61_0214231c
mov r7, r0
cmp r7, #3
ldr r8, [r6, #0xe20]
cmpne r7, #1
bne _021794f8
ldr r1, _0217953c ; =data_ov61_0217a5ec
mov r0, r9
ldr r1, [r1, #4]
mvn r2, #0
bl func_ov61_0214231c
ldr r1, [r6, #0xe24]
cmp r1, r0
mvnne r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_021794f8:
ldr r0, [r6, #0xe2c]
cmp r5, r0
beq _02179524
cmp r8, #1
cmpne r8, #2
beq _0217951c
sub r0, r7, #1
cmp r0, #1
bhi _02179524
_0217951c:
mvn r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
_02179524:
ldr r0, [r6, #0xe28]
subs r1, r4, r0
ldr r0, _02179540 ; =0x00002711
rsbmi r1, r1, #0
sub r0, r0, r1
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_02179428
_0217953c: .word data_ov61_0217a5ec
_02179540: .word 0x00002711
.global func_ov61_02179544
arm_func_start func_ov61_02179544
func_ov61_02179544: ; 0x02179544
stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr}
mov r6, r0
mov r5, r1
bl func_ov61_021792ec
mov r4, r0
cmp r6, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
cmp r5, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
mov r0, #0x88
mov r9, #0
mul r7, r9, r0
ldr r8, _021795ec ; =data_ov61_02181940
mov r6, r0
ldr r5, _021795f0 ; =0x00002710
b _021795b8
_02179584:
mov r0, r9
bl func_ov61_0213f4ac
cmp r0, #0
beq _021795b0
mov r0, r9
mov r2, r6
add r1, r8, r7
bl func_ov61_0214a578
mov r0, r9
mov r1, r5
bl func_ov61_0214a6d0
_021795b0:
add r0, r9, #1
and r9, r0, #0xff
_021795b8:
cmp r9, #2
blo _02179584
ldr r0, _021795f4 ; =func_ov61_0217968c
bl func_ov61_0214a604
bl func_ov61_0213f478
strh r0, [r4, #0x1c]
ldr r0, [r4, #8]
cmp r0, #0
beq _021795e0
blx r0
_021795e0:
mov r0, #7
str r0, [r4, #0xe3c]
ldmia sp!, {r3, r4, r5, r6, r7, r8, r9, pc}
.align 2, 0
arm_func_end func_ov61_02179544
_021795ec: .word data_ov61_02181940
_021795f0: .word 0x00002710
_021795f4: .word func_ov61_0217968c
.global func_ov61_021795f8
arm_func_start func_ov61_021795f8
func_ov61_021795f8: ; 0x021795f8
stmdb sp!, {r4, lr}
mov r4, r3
bl func_ov61_021792ec
mov r1, #1
ldrh r2, [r0, #0x1c]
mvn r1, r1, lsl r4
and r1, r2, r1
strh r1, [r0, #0x1c]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_021795f8
.global func_ov61_0217961c
arm_func_start func_ov61_0217961c
func_ov61_0217961c: ; 0x0217961c
stmdb sp!, {r3, lr}
bl func_ov61_021792ec
ldr r0, [r0, #0xc]
cmp r0, #0
ldmeqia sp!, {r3, pc}
blx r0
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0217961c
.global func_ov61_02179638
arm_func_start func_ov61_02179638
func_ov61_02179638: ; 0x02179638
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r6, r1
mov r5, r2
bl func_ov61_021792ec
ldr r1, _02179688 ; =data_ov61_021819c8
mov r4, r0
ldr r1, [r1, r7, lsl #2]
mov r0, r6
mov r2, r5
bl func_02007ad8
ldr r3, [r4, #0x10]
cmp r3, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r1, _02179688 ; =data_ov61_021819c8
mov r0, r7
ldr r1, [r1, r7, lsl #2]
mov r2, r5
blx r3
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02179638
_02179688: .word data_ov61_021819c8
.global func_ov61_0217968c
arm_func_start func_ov61_0217968c
func_ov61_0217968c: ; 0x0217968c
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_021792ec
mov r1, #1
ldrh r2, [r0, #0x1c]
mvn r1, r1, lsl r4
and r1, r2, r1
strh r1, [r0, #0x1c]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_0217968c
.global func_ov61_021796b0
arm_func_start func_ov61_021796b0
func_ov61_021796b0: ; 0x021796b0
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_021792ec
ldr r0, [r0, #0xe48]
cmp r4, r0
ble _021796d0
bl func_ov61_021792ec
str r4, [r0, #0xe48]
_021796d0:
bl func_ov61_021792ec
str r4, [r0, #0xe44]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_021796b0
.global func_ov61_021796dc
arm_func_start func_ov61_021796dc
func_ov61_021796dc: ; 0x021796dc
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov12_021135e0
ldr r0, _0217972c ; =data_ov61_0217e928
mov r1, #0
str r0, [r4]
str r1, [r4, #0xe1c]
mov r0, #4
str r0, [r4, #0xe20]
str r1, [r4, #0xe34]
strb r1, [r4, #0xe38]
str r1, [r4, #0xe3c]
str r1, [r4, #0xe44]
ldr r0, _02179730 ; =data_ov61_02181940
str r1, [r4, #0xe48]
str r4, [r0, #0x98]
blx func_0202ab48
str r0, [r4, #0xe24]
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_021796dc
_0217972c: .word data_ov61_0217e928
_02179730: .word data_ov61_02181940
.global func_ov61_02179734
arm_func_start func_ov61_02179734
func_ov61_02179734: ; 0x02179734
stmdb sp!, {r4, lr}
ldr r1, _0217976c ; =data_ov61_0217e928
mov r4, r0
str r1, [r4]
ldr r1, [r0]
ldr r1, [r1, #0x1c]
blx r1
ldr r1, _02179770 ; =data_ov61_02181940
mov r2, #0
mov r0, r4
str r2, [r1, #0x98]
bl func_ov12_021136bc
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02179734
_0217976c: .word data_ov61_0217e928
_02179770: .word data_ov61_02181940
.global func_ov61_02179774
arm_func_start func_ov61_02179774
func_ov61_02179774: ; 0x02179774
stmdb sp!, {r4, lr}
ldr r1, _021797b4 ; =data_ov61_0217e928
mov r4, r0
str r1, [r4]
ldr r1, [r0]
ldr r1, [r1, #0x1c]
blx r1
ldr r1, _021797b8 ; =data_ov61_02181940
mov r2, #0
mov r0, r4
str r2, [r1, #0x98]
bl func_ov12_021136bc
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov61_02179774
_021797b4: .word data_ov61_0217e928
_021797b8: .word data_ov61_02181940
.global func_ov61_021797bc
arm_func_start func_ov61_021797bc
func_ov61_021797bc: ; 0x021797bc
stmdb sp!, {r4, r5, r6, lr}
ldr r3, [r0]
mov r6, r0
ldr r3, [r3, #0x34]
mov r5, r1
mov r4, r2
blx r3
cmp r0, #0
movne r0, #1
ldmneia sp!, {r4, r5, r6, pc}
ldr r2, _02179818 ; =data_ov61_02181940
ldr r0, _0217981c ; =func_ov61_021792a8
str r5, [r2, #0x90]
ldr r1, _02179820 ; =func_ov61_021792c8
str r4, [r2, #0x94]
bl func_ov61_0213e020
mov r0, r6
bl func_ov61_0217a010
mov r0, #0
strb r0, [r6, #0xe41]
mov r0, #1
str r0, [r6, #0xe3c]
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov61_021797bc
_02179818: .word data_ov61_02181940
_0217981c: .word func_ov61_021792a8
_02179820: .word func_ov61_021792c8
.global func_ov61_02179824
arm_func_start func_ov61_02179824
func_ov61_02179824: ; 0x02179824
ldr r0, [r0, #0xe3c]
cmp r0, #0
movgt r0, #1
movle r0, #0
bx lr
arm_func_end func_ov61_02179824
.global func_ov61_02179838
arm_func_start func_ov61_02179838
func_ov61_02179838: ; 0x02179838
stmdb sp!, {r3, lr}
mov r1, #1
strb r1, [r0, #0xe41]
ldr r1, [r0]
ldr r1, [r1, #0x18]
blx r1
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02179838
.global func_ov61_02179854
arm_func_start func_ov61_02179854
func_ov61_02179854: ; 0x02179854
stmdb sp!, {r4, lr}
ldr r1, [r0]
mov r4, r0
ldr r1, [r1, #0x34]
blx r1
cmp r0, #0
ldmeqia sp!, {r4, pc}
mov r0, r4
ldr r1, [r0]
ldr r1, [r1, #0x38]
blx r1
cmp r0, #0
ldmneia sp!, {r4, pc}
mov r1, #0
strh r1, [r4, #0x18]
str r1, [r4, #0x14]
mov r0, r4
strh r1, [r4, #0x1a]
bl func_ov61_02179bb0
cmp r0, #0
movne r0, #1
strne r0, [r4, #0x20]
mov r0, #0
str r0, [r4, #0xe44]
str r0, [r4, #0xe48]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02179854
.global func_ov61_021798bc
arm_func_start func_ov61_021798bc
func_ov61_021798bc: ; 0x021798bc
ldr r0, [r0, #0xe3c]
cmp r0, #1
movgt r0, #1
movle r0, #0
bx lr
arm_func_end func_ov61_021798bc
.global func_ov61_021798d0
arm_func_start func_ov61_021798d0
func_ov61_021798d0: ; 0x021798d0
stmdb sp!, {r4, lr}
ldr r1, [r0]
mov r4, r0
ldr r1, [r1, #0x38]
blx r1
cmp r0, #0
ldmeqia sp!, {r4, pc}
mov r0, r4
bl func_ov61_02179c78
ldmia sp!, {r4, pc}
arm_func_end func_ov61_021798d0
.global func_ov61_021798f8
arm_func_start func_ov61_021798f8
func_ov61_021798f8: ; 0x021798f8
stmdb sp!, {r4, lr}
ldr r1, [r0]
mov r4, r0
ldr r1, [r1, #0xc]
blx r1
mov r0, #0
strh r0, [r4, #0x18]
str r0, [r4, #0x14]
strh r0, [r4, #0x1a]
mov r0, #1
str r0, [r4, #0x20]
bl func_0200e8f8
mov r0, r4
ldr r1, [r0]
ldr r1, [r1, #0x34]
blx r1
cmp r0, #0
ldmeqia sp!, {r4, pc}
_02179940:
blx func_0202bac4
mov r0, r4
ldr r1, [r0]
ldr r1, [r1, #0x20]
blx r1
mov r0, r4
ldr r1, [r0]
ldr r1, [r1, #0x34]
blx r1
cmp r0, #0
bne _02179940
ldmia sp!, {r4, pc}
arm_func_end func_ov61_021798f8
.global func_ov61_02179970
arm_func_start func_ov61_02179970
func_ov61_02179970: ; 0x02179970
stmdb sp!, {r4, lr}
sub sp, sp, #8
mov r4, r0
ldr r1, [r4, #0xe3c]
cmp r1, #8
addls pc, pc, r1, lsl #2
b _02179a30
_0217998c: ; jump table
b _02179a30 ; case 0
b _02179a14 ; case 1
b _021799b0 ; case 2
b _021799e8 ; case 3
b _021799e8 ; case 4
b _021799e8 ; case 5
b _021799e8 ; case 6
b _021799e8 ; case 7
b _021799f0 ; case 8
_021799b0:
bl func_ov61_0213e2f4
bl func_ov61_0213e2b4
cmp r0, #0
beq _02179a30
mov r0, #0
bl func_ov61_0213dec0
cmp r0, #0
bne _02179a30
bl func_ov61_0213e36c
cmp r0, #4
bne _02179a30
mov r0, r4
bl func_ov61_02179bf8
b _02179a30
_021799e8:
bl func_ov61_0213ec40
b _02179a30
_021799f0:
bl func_ov61_0213e47c
cmp r0, #0
beq _02179a30
mov r1, #0
strh r1, [r4, #0x1c]
mov r0, #1
str r0, [r4, #0xe3c]
str r1, [r4, #0x20]
b _02179a30
_02179a14:
ldrb r1, [r4, #0xe41]
cmp r1, #0
beq _02179a30
bl func_ov61_0217a100
mov r0, #0
strb r0, [r4, #0xe41]
str r0, [r4, #0xe3c]
_02179a30:
ldr r0, [r4, #0x20]
cmp r0, #2
moveq r0, #1
movne r0, #0
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r4, pc}
add r0, sp, #4
add r1, sp, #0
bl func_ov61_0213dee0
cmp r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r4, pc}
ldr r0, [sp]
cmp r0, #1
beq _02179a84
cmp r0, #2
beq _02179a8c
cmp r0, #7
beq _02179a94
b _02179a9c
_02179a84:
mov r0, #0
str r0, [sp, #4]
_02179a8c:
mov r2, #1
b _02179aa0
_02179a94:
mov r2, #3
b _02179aa0
_02179a9c:
mov r2, #2
_02179aa0:
ldr r0, [sp, #4]
ldr r1, [r4, #0xe3c]
rsb r0, r0, #0
strh r2, [r4, #0x18]
str r0, [r4, #0x14]
mov r0, #0
strh r0, [r4, #0x1a]
mov r0, #2
str r0, [r4, #0x20]
add sp, sp, #8
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02179970
.global func_ov61_02179acc
arm_func_start func_ov61_02179acc
func_ov61_02179acc: ; 0x02179acc
ldr r0, _02179ad8 ; =data_ov61_021819c8
str r2, [r0, r1, lsl #2]
bx lr
.align 2, 0
arm_func_end func_ov61_02179acc
_02179ad8: .word data_ov61_021819c8
.global func_ov61_02179adc
arm_func_start func_ov61_02179adc
func_ov61_02179adc: ; 0x02179adc
stmdb sp!, {r3, r4, r5, lr}
mov r5, r1
mov r4, r2
cmp r3, #0
beq _02179b04
bl func_ov61_0213f478
mov r1, r5
mov r2, r4
bl func_ov61_0214a408
ldmia sp!, {r3, r4, r5, pc}
_02179b04:
bl func_ov61_0213f478
mov r1, r5
mov r2, r4
bl func_ov61_0214a508
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov61_02179adc
.global func_ov61_02179b18
arm_func_start func_ov61_02179b18
func_ov61_02179b18: ; 0x02179b18
stmdb sp!, {r4, lr}
mov r4, #0
_02179b20:
mov r0, r4
bl func_ov61_0213f4ac
cmp r0, #0
beq _02179b44
mov r0, r4
bl func_ov61_0214a238
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, pc}
_02179b44:
add r0, r4, #1
and r4, r0, #0xff
cmp r4, #2
blo _02179b20
mov r0, #1
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02179b18
.global func_ov61_02179b5c
arm_func_start func_ov61_02179b5c
func_ov61_02179b5c: ; 0x02179b5c
ldr ip, _02179b64 ; =func_ov61_0213e518
bx ip
.align 2, 0
arm_func_end func_ov61_02179b5c
_02179b64: .word func_ov61_0213e518
.global func_ov61_02179b68
arm_func_start func_ov61_02179b68
func_ov61_02179b68: ; 0x02179b68
stmdb sp!, {r3, r4, r5, lr}
mov r4, r0
ldr r0, [r4, #4]
ldr r1, _02179bac ; =0x415a454a
blx func_ov00_020777ec
ldr r4, [r4, #4]
mov r5, #0
_02179b84:
add r0, r4, #0x40
blx func_ov00_020777d0
cmp r0, #0
beq _02179b9c
add r0, r4, #0x40
blx func_ov00_02077518
_02179b9c:
add r5, r5, #1
cmp r5, #0x20
blt _02179b84
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov61_02179b68
_02179bac: .word 0x415a454a
.global func_ov61_02179bb0
arm_func_start func_ov61_02179bb0
func_ov61_02179bb0: ; 0x02179bb0
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov61_0217a100
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, pc}
add r0, r4, #0x24
mov r1, #2
mov r2, #1
mov r3, #0x14
bl func_ov61_0213e154
mov r0, #2
bl func_ov61_0213e1b4
bl func_ov61_0213e204
mov r0, #2
str r0, [r4, #0xe3c]
mov r0, #1
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02179bb0
.global func_ov61_02179bf8
arm_func_start func_ov61_02179bf8
func_ov61_02179bf8: ; 0x02179bf8
stmdb sp!, {r3, r4, lr}
sub sp, sp, #0x14
mov r4, r0
ldr r1, [r4, #4]
ldr r0, _02179c6c ; =data_ov61_0217e9ec
mov r2, #0x2800
stmia sp, {r0, r2}
str r2, [sp, #8]
add r0, r1, #0x40
str r0, [sp, #0xc]
mov r0, #0x20
str r0, [sp, #0x10]
ldr r3, _02179c70 ; =data_ov61_0217e9e0
add r0, r4, #0x30
add r2, r2, #0x2d8
bl func_ov61_0213e854
ldr r0, [r4, #4]
mov r1, #0
ldr r2, _02179c74 ; =func_ov61_021792fc
mov r3, r1
add r0, r0, #0x480
bl func_ov61_0213ee90
cmp r0, #0
moveq r0, #0
movne r0, #3
strne r0, [r4, #0xe3c]
movne r0, #1
add sp, sp, #0x14
ldmia sp!, {r3, r4, pc}
.align 2, 0
arm_func_end func_ov61_02179bf8
_02179c6c: .word data_ov61_0217e9ec
_02179c70: .word data_ov61_0217e9e0
_02179c74: .word func_ov61_021792fc
.global func_ov61_02179c78
arm_func_start func_ov61_02179c78
func_ov61_02179c78: ; 0x02179c78
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, [r4, #0xe3c]
cmp r0, #8
ldmgeia sp!, {r4, pc}
bl func_ov61_0213dfcc
ldr r0, [r4, #0x20]
cmp r0, #2
moveq r0, #1
movne r0, #0
cmp r0, #0
beq _02179cc0
mov r0, #0
strh r0, [r4, #0x18]
str r0, [r4, #0x14]
strh r0, [r4, #0x1a]
mov r0, #1
str r0, [r4, #0x20]
_02179cc0:
ldr r0, [r4, #0xe3c]
cmp r0, #3
blt _02179cd8
mov r0, r4
bl func_ov61_02179ee4
bl func_ov61_0213ead8
_02179cd8:
mov r0, #8
str r0, [r4, #0xe3c]
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02179c78
.global func_ov61_02179ce4
arm_func_start func_ov61_02179ce4
func_ov61_02179ce4: ; 0x02179ce4
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #0xb0
mov r7, r0
ldr r0, [r7, #0xe3c]
cmp r0, #5
addne sp, sp, #0xb0
movne r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, pc}
str r1, [r7, #0xe20]
cmp r1, #0
bne _02179d40
ldr r0, _02179ecc ; =func_ov61_02179544
strb r2, [r7, #0xe40]
str r0, [sp]
mov r3, #0
str r3, [sp, #4]
str r3, [sp, #8]
add r0, r7, #0xe40
mov r1, #1
mov r2, #2
str r3, [sp, #0xc]
bl func_ov61_0213f0e0
b _02179eb8
_02179d40:
cmp r1, #5
mov r0, #0
bne _02179d74
ldr r1, _02179ecc ; =func_ov61_02179544
mov r3, r0
str r1, [sp]
str r0, [sp, #4]
str r0, [sp, #8]
mov r1, r0
mov r2, #2
str r0, [sp, #0xc]
bl func_ov61_0213f0e0
b _02179eb8
_02179d74:
ldr r1, _02179ed0 ; =data_ov61_0217a5ec
ldr r5, [r1, #0x18]
ldr r4, [r1]
mov r2, r5
mov r1, r4
bl func_ov61_021421ec
ldr r1, _02179ed0 ; =data_ov61_0217a5ec
add r0, r7, #0x224
ldr r6, [r1, #4]
add r2, r0, #0xc00
mov r1, r6
mov r0, #0
bl func_ov61_021420c0
ldr r0, [r7, #4]
ldr r1, _02179ed0 ; =data_ov61_0217a5ec
add r0, r0, #0x400
ldrh r2, [r0, #0x98]
add r0, r7, #0x228
ldr r1, [r1, #8]
str r2, [r7, #0xe28]
add r2, r0, #0xc00
mov r0, #0
bl func_ov61_021420c0
ldr r0, [r7, #4]
ldr r1, _02179ed0 ; =data_ov61_0217a5ec
ldrb r0, [r0, #0x49d]
ldr r1, [r1, #0xc]
str r0, [r7, #0xe2c]
cmp r0, #9
moveq r0, #8
streq r0, [r7, #0xe2c]
add r0, r7, #0x22c
add r2, r0, #0xc00
mov r0, #0
bl func_ov61_021420c0
ldr r0, _02179ed0 ; =data_ov61_0217a5ec
add r2, r7, #0xe20
ldr r1, [r0, #0x10]
mov r0, #0
bl func_ov61_021420c0
ldr r0, [r7, #4]
add r0, r0, #0x480
bl func_ov01_020f5578
ldr r1, _02179ed0 ; =data_ov61_0217a5ec
str r0, [r7, #0xe30]
ldr r1, [r1, #0x14]
mov r0, #0
add r2, r7, #0xe30
bl func_ov61_021420c0
mov r1, r4
add r0, sp, #0x30
bl strcpy
ldr r1, _02179ed4 ; =data_ov61_0217e9f4
add r0, sp, #0x30
bl strcat
mov r1, r5
add r0, sp, #0x30
bl strcat
ldr r1, _02179ed8 ; =data_ov61_0217e9f8
add r0, sp, #0x30
bl strcat
ldr r0, [r7, #0xe20]
cmp r0, #3
cmpne r0, #1
bne _02179e98
ldr r3, [r7, #0xe24]
ldr r1, _02179edc ; =data_ov61_0217e9fc
add r0, sp, #0x10
mov r2, r6
bl func_020459b8
add r0, sp, #0x30
add r1, sp, #0x10
bl strcat
_02179e98:
ldr r0, _02179ee0 ; =func_ov61_02179428
ldr r2, _02179ecc ; =func_ov61_02179544
str r0, [sp]
mov r3, #0
add r1, sp, #0x30
mov r0, #2
str r3, [sp, #4]
bl func_ov61_0213f040
_02179eb8:
mov r0, #6
str r0, [r7, #0xe3c]
mov r0, #1
add sp, sp, #0xb0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov61_02179ce4
_02179ecc: .word func_ov61_02179544
_02179ed0: .word data_ov61_0217a5ec
_02179ed4: .word data_ov61_0217e9f4
_02179ed8: .word data_ov61_0217e9f8
_02179edc: .word data_ov61_0217e9fc
_02179ee0: .word func_ov61_02179428
.global func_ov61_02179ee4
arm_func_start func_ov61_02179ee4
func_ov61_02179ee4: ; 0x02179ee4
stmdb sp!, {r3, lr}
ldr r1, [r0]
ldr r1, [r1, #0x14]
blx r1
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02179ee4
.global func_ov61_02179ef8
arm_func_start func_ov61_02179ef8
func_ov61_02179ef8: ; 0x02179ef8
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, [r4, #0xe3c]
cmp r0, #7
bne _02179f18
bl func_ov61_0213f2b8
bl func_ov61_02142004
b _02179f3c
_02179f18:
ldr r0, [r4, #0xe3c]
cmp r0, #6
bne _02179f2c
bl func_ov61_02142054
b _02179f3c
_02179f2c:
ldr r0, [r4, #0xe3c]
cmp r0, #5
movne r0, #0
ldmneia sp!, {r4, pc}
_02179f3c:
ldr r0, [r4, #0x20]
cmp r0, #2
moveq r0, #1
movne r0, #0
cmp r0, #0
beq _02179f70
bl func_ov61_0213dfcc
mov r0, #0
strh r0, [r4, #0x18]
str r0, [r4, #0x14]
strh r0, [r4, #0x1a]
mov r0, #1
str r0, [r4, #0x20]
_02179f70:
mov r0, #0
strh r0, [r4, #0x1c]
mov r0, #5
str r0, [r4, #0xe3c]
mov r0, #1
ldmia sp!, {r4, pc}
arm_func_end func_ov61_02179ef8
.global func_ov61_02179f88
arm_func_start func_ov61_02179f88
func_ov61_02179f88: ; 0x02179f88
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
mov r4, r0
add r0, sp, #0
bl func_ov61_0213dec0
cmp r0, #0
addne sp, sp, #4
movne r0, #2
ldmneia sp!, {r3, r4, pc}
ldr r0, [r4, #0xe3c]
cmp r0, #5
blt _02179fd0
bl func_ov61_0213e570
cmp r0, #2
moveq r0, #3
add sp, sp, #4
movne r0, #1
ldmia sp!, {r3, r4, pc}
_02179fd0:
mov r0, #0
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
arm_func_end func_ov61_02179f88
.global func_ov61_02179fdc
arm_func_start func_ov61_02179fdc
func_ov61_02179fdc: ; 0x02179fdc
stmdb sp!, {r3, lr}
ldr r2, [r0, #0xe20]
cmp r2, #0
cmpne r2, #5
bne _02179ffc
ldr r0, [r0, #4]
blx func_ov00_020779d8
ldmia sp!, {r3, pc}
_02179ffc:
mov r0, r1
mov r1, #0
mov r2, #0xc
bl func_02007a44
ldmia sp!, {r3, pc}
arm_func_end func_ov61_02179fdc
.global func_ov61_0217a010
arm_func_start func_ov61_0217a010
func_ov61_0217a010: ; 0x0217a010
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r6, r0
ldrb r0, [r6, #0xe38]
cmp r0, #0
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
ldr r0, [r6, #0xe34]
cmp r0, #0
bne _0217a048
ldr r1, _0217a0e0 ; =data_ov61_02181940
mov r0, #0xf00
ldr r2, [r1, #0x90]
mov r1, #0x20
blx r2
str r0, [r6, #0xe34]
_0217a048:
ldr r0, [r6, #0xe34]
cmp r0, #0
beq _0217a0b8
mov r1, #2
bl func_ov01_020eed40
cmp r0, #0
bne _0217a0b8
ldr r0, _0217a0e4 ; =func_ov61_0217a0ec
bl func_ov01_020efe20
cmp r0, #2
bne _0217a0b8
bl func_0200e8f8
ldrb r2, [r6, #0xe38]
mov r4, r0
mov r5, r1
cmp r2, #0
bne _0217a0b8
ldr r7, _0217a0e8 ; =0x0027f3a9
mov r8, #0
_0217a094:
bl func_0200e8f8
subs r2, r0, r4
sbc r0, r1, r5
cmp r0, r8
cmpeq r2, r7
bhi _0217a0b8
ldrb r0, [r6, #0xe38]
cmp r0, #0
beq _0217a094
_0217a0b8:
ldrb r0, [r6, #0xe38]
cmp r0, #0
ldmneia sp!, {r4, r5, r6, r7, r8, pc}
mov r0, #2
strh r0, [r6, #0x18]
mov r0, #0
str r0, [r6, #0x14]
mov r0, #1
strh r0, [r6, #0x1a]
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_0217a010
_0217a0e0: .word data_ov61_02181940
_0217a0e4: .word func_ov61_0217a0ec
_0217a0e8: .word 0x0027f3a9
.global func_ov61_0217a0ec
arm_func_start func_ov61_0217a0ec
func_ov61_0217a0ec: ; 0x0217a0ec
stmdb sp!, {r3, lr}
bl func_ov61_021792ec
mov r1, #1
strb r1, [r0, #0xe38]
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0217a0ec
.global func_ov61_0217a100
arm_func_start func_ov61_0217a100
func_ov61_0217a100: ; 0x0217a100
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r6, r0
ldrb r0, [r6, #0xe38]
cmp r0, #0
beq _0217a1b8
ldr r0, _0217a1c0 ; =func_ov61_0217a1cc
bl func_ov01_020efe80
cmp r0, #2
bne _0217a1a0
bl func_0200e8f8
ldrb r2, [r6, #0xe38]
mov r4, r0
mov r5, r1
cmp r2, #0
beq _0217a168
ldr r7, _0217a1c4 ; =0x0027f3a9
mov r8, #0
_0217a144:
bl func_0200e8f8
subs r2, r0, r4
sbc r0, r1, r5
cmp r0, r8
cmpeq r2, r7
bhi _0217a168
ldrb r0, [r6, #0xe38]
cmp r0, #0
bne _0217a144
_0217a168:
ldrb r0, [r6, #0xe38]
cmp r0, #0
bne _0217a1a0
bl func_ov01_020eef50
cmp r0, #0
bne _0217a1a0
ldr r1, _0217a1c8 ; =data_ov61_02181940
ldr r0, [r6, #0xe34]
ldr r1, [r1, #0x94]
blx r1
mov r0, #0
str r0, [r6, #0xe34]
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0217a1a0:
mov r1, #2
strh r1, [r6, #0x18]
mov r0, #0
str r0, [r6, #0x14]
strh r1, [r6, #0x1a]
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0217a1b8:
mov r0, #1
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov61_0217a100
_0217a1c0: .word func_ov61_0217a1cc
_0217a1c4: .word 0x0027f3a9
_0217a1c8: .word data_ov61_02181940
.global func_ov61_0217a1cc
arm_func_start func_ov61_0217a1cc
func_ov61_0217a1cc: ; 0x0217a1cc
stmdb sp!, {r3, lr}
bl func_ov61_021792ec
mov r1, #0
strb r1, [r0, #0xe38]
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0217a1cc
.global func_ov61_0217a1e0
arm_func_start func_ov61_0217a1e0
func_ov61_0217a1e0: ; 0x0217a1e0
ldr ip, _0217a1e8 ; =func_ov61_0213f40c
bx ip
.align 2, 0
arm_func_end func_ov61_0217a1e0
_0217a1e8: .word func_ov61_0213f40c
.global func_ov61_0217a1ec
arm_func_start func_ov61_0217a1ec
func_ov61_0217a1ec: ; 0x0217a1ec
stmdb sp!, {r3, lr}
bl func_ov61_0213f3c4
and r0, r0, #0xff
ldmia sp!, {r3, pc}
arm_func_end func_ov61_0217a1ec
.global func_ov61_0217a1fc
arm_func_start func_ov61_0217a1fc
func_ov61_0217a1fc: ; 0x0217a1fc
ldr r0, [r0, #0xe3c]
cmp r0, #7
moveq r0, #1
movne r0, #0
bx lr
arm_func_end func_ov61_0217a1fc
.rodata
.global data_ov61_0217a210
data_ov61_0217a210: ; 0x0217a210
.byte 0x03, 0x00, 0x00, 0x00
.global data_ov61_0217a214
data_ov61_0217a214: ; 0x0217a214
.byte 0x03, 0x00, 0x00, 0x00
.global data_ov61_0217a218
data_ov61_0217a218: ; 0x0217a218
.byte 0x02, 0x00, 0x00, 0x00
.global data_ov61_0217a21c
data_ov61_0217a21c: ; 0x0217a21c
.byte 0x02, 0x00, 0x00, 0x00
.global data_ov61_0217a220
data_ov61_0217a220: ; 0x0217a220
.byte 0x01, 0x00, 0x00, 0x00
.global data_ov61_0217a224
data_ov61_0217a224: ; 0x0217a224
.byte 0x01, 0x00, 0x00, 0x00
.global data_ov61_0217a228
data_ov61_0217a228: ; 0x0217a228
.ascii "Wayport2"
.global data_ov61_0217a230
data_ov61_0217a230: ; 0x0217a230
.ascii "FREESPOT"
.global data_ov61_0217a238
data_ov61_0217a238: ; 0x0217a238
.ascii "NINTENDOWFC"
.byte 0x00
.global data_ov61_0217a244
data_ov61_0217a244: ; 0x0217a244
.byte 0x02, 0x80, 0x00, 0x00
.global data_ov61_0217a248
data_ov61_0217a248: ; 0x0217a248
.byte 0x04, 0x80, 0x00, 0x00
.global data_ov61_0217a24c
data_ov61_0217a24c: ; 0x0217a24c
.byte 0x08, 0x80, 0x00, 0x00
.global data_ov61_0217a250
data_ov61_0217a250: ; 0x0217a250
.byte 0x10, 0x80, 0x00, 0x00
.global data_ov61_0217a254
data_ov61_0217a254: ; 0x0217a254
.byte 0x20, 0x80, 0x00, 0x00
.global data_ov61_0217a258
data_ov61_0217a258: ; 0x0217a258
.byte 0x40, 0x80, 0x00, 0x00
.global data_ov61_0217a25c
data_ov61_0217a25c: ; 0x0217a25c
.byte 0x80, 0x80, 0x00, 0x00
.global data_ov61_0217a260
data_ov61_0217a260: ; 0x0217a260
.byte 0x00, 0x81, 0x00, 0x00
.global data_ov61_0217a264
data_ov61_0217a264: ; 0x0217a264
.byte 0x00, 0x82, 0x00, 0x00
.global data_ov61_0217a268
data_ov61_0217a268: ; 0x0217a268
.byte 0x00, 0x84, 0x00, 0x00
.global data_ov61_0217a26c
data_ov61_0217a26c: ; 0x0217a26c
.byte 0x00, 0x88, 0x00, 0x00
.global data_ov61_0217a270
data_ov61_0217a270: ; 0x0217a270
.byte 0x00, 0x90, 0x00, 0x00
.global data_ov61_0217a274
data_ov61_0217a274: ; 0x0217a274
.byte 0x00, 0xa0, 0x00, 0x00
.global data_ov61_0217a278
data_ov61_0217a278: ; 0x0217a278
.byte 0x00, 0x00, 0x00, 0x01
.global data_ov61_0217a27c
data_ov61_0217a27c: ; 0x0217a27c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a280
data_ov61_0217a280: ; 0x0217a280
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a284
data_ov61_0217a284: ; 0x0217a284
.byte 0x01, 0x00, 0x00, 0x00
.global data_ov61_0217a288
data_ov61_0217a288: ; 0x0217a288
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a28c
data_ov61_0217a28c: ; 0x0217a28c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a290
data_ov61_0217a290: ; 0x0217a290
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a294
data_ov61_0217a294: ; 0x0217a294
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a298
data_ov61_0217a298: ; 0x0217a298
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a29c
data_ov61_0217a29c: ; 0x0217a29c
.byte 0x00, 0x10, 0x00, 0x00
.global data_ov61_0217a2a0
data_ov61_0217a2a0: ; 0x0217a2a0
.byte 0x00, 0x10, 0x00, 0x00
.global data_ov61_0217a2a4
data_ov61_0217a2a4: ; 0x0217a2a4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a2a8
data_ov61_0217a2a8: ; 0x0217a2a8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a2ac
data_ov61_0217a2ac: ; 0x0217a2ac
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a2b0
data_ov61_0217a2b0: ; 0x0217a2b0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a2b4
data_ov61_0217a2b4: ; 0x0217a2b4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a2b8
data_ov61_0217a2b8: ; 0x0217a2b8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a2bc
data_ov61_0217a2bc: ; 0x0217a2bc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a2c0
data_ov61_0217a2c0: ; 0x0217a2c0
.word data_ov61_0217a844
.global data_ov61_0217a2c4
data_ov61_0217a2c4: ; 0x0217a2c4
.byte 0x04, 0x00, 0x00, 0x00
.global data_ov61_0217a2c8
data_ov61_0217a2c8: ; 0x0217a2c8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a2cc
data_ov61_0217a2cc: ; 0x0217a2cc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a2d0
data_ov61_0217a2d0: ; 0x0217a2d0
.byte 0x61
.global data_ov61_0217a2d1
data_ov61_0217a2d1: ; 0x0217a2d1
.byte 0x61
.global data_ov61_0217a2d2
data_ov61_0217a2d2: ; 0x0217a2d2
.byte 0x61
.global data_ov61_0217a2d3
data_ov61_0217a2d3: ; 0x0217a2d3
.byte 0x17
.global data_ov61_0217a2d4
data_ov61_0217a2d4: ; 0x0217a2d4
.byte 0x14
.global data_ov61_0217a2d5
data_ov61_0217a2d5: ; 0x0217a2d5
.byte 0x11
.global data_ov61_0217a2d6
data_ov61_0217a2d6: ; 0x0217a2d6
.byte 0x0d
.global data_ov61_0217a2d7
data_ov61_0217a2d7: ; 0x0217a2d7
.byte 0x0b
.global data_ov61_0217a2d8
data_ov61_0217a2d8: ; 0x0217a2d8
.byte 0x06
.global data_ov61_0217a2d9
data_ov61_0217a2d9: ; 0x0217a2d9
.byte 0x0f
.global data_ov61_0217a2da
data_ov61_0217a2da: ; 0x0217a2da
.byte 0x0e
.global data_ov61_0217a2db
data_ov61_0217a2db: ; 0x0217a2db
.byte 0x09
.global data_ov61_0217a2dc
data_ov61_0217a2dc: ; 0x0217a2dc
.byte 0x15
.global data_ov61_0217a2dd
data_ov61_0217a2dd: ; 0x0217a2dd
.byte 0x0c
.global data_ov61_0217a2de
data_ov61_0217a2de: ; 0x0217a2de
.byte 0x04
.global data_ov61_0217a2df
data_ov61_0217a2df: ; 0x0217a2df
.byte 0x02
.global data_ov61_0217a2e0
data_ov61_0217a2e0: ; 0x0217a2e0
.byte 0x01
.global data_ov61_0217a2e1
data_ov61_0217a2e1: ; 0x0217a2e1
.byte 0x12
.global data_ov61_0217a2e2
data_ov61_0217a2e2: ; 0x0217a2e2
.byte 0x10
.global data_ov61_0217a2e3
data_ov61_0217a2e3: ; 0x0217a2e3
.byte 0x05
.global data_ov61_0217a2e4
data_ov61_0217a2e4: ; 0x0217a2e4
.byte 0x03
.global data_ov61_0217a2e5
data_ov61_0217a2e5: ; 0x0217a2e5
.byte 0x13
.global data_ov61_0217a2e6
data_ov61_0217a2e6: ; 0x0217a2e6
.byte 0x0a
.global data_ov61_0217a2e7
data_ov61_0217a2e7: ; 0x0217a2e7
.byte 0x07
.global data_ov61_0217a2e8
data_ov61_0217a2e8: ; 0x0217a2e8
.byte 0x08
.global data_ov61_0217a2e9
data_ov61_0217a2e9: ; 0x0217a2e9
.byte 0x00
.global data_ov61_0217a2ea
data_ov61_0217a2ea: ; 0x0217a2ea
.byte 0x16
.global data_ov61_0217a2eb
data_ov61_0217a2eb: ; 0x0217a2eb
.byte 0x00
.global data_ov61_0217a2ec
data_ov61_0217a2ec: ; 0x0217a2ec
.byte 0x05
.global data_ov61_0217a2ed
data_ov61_0217a2ed: ; 0x0217a2ed
.byte 0x01
.global data_ov61_0217a2ee
data_ov61_0217a2ee: ; 0x0217a2ee
.byte 0x0c
.global data_ov61_0217a2ef
data_ov61_0217a2ef: ; 0x0217a2ef
.byte 0x04
.global data_ov61_0217a2f0
data_ov61_0217a2f0: ; 0x0217a2f0
.byte 0x02
.global data_ov61_0217a2f1
data_ov61_0217a2f1: ; 0x0217a2f1
.byte 0x03
.global data_ov61_0217a2f2
data_ov61_0217a2f2: ; 0x0217a2f2
.byte 0x0a
.global data_ov61_0217a2f3
data_ov61_0217a2f3: ; 0x0217a2f3
.byte 0x00
.global data_ov61_0217a2f4
data_ov61_0217a2f4: ; 0x0217a2f4
.byte 0x0b
.global data_ov61_0217a2f5
data_ov61_0217a2f5: ; 0x0217a2f5
.byte 0x07
.global data_ov61_0217a2f6
data_ov61_0217a2f6: ; 0x0217a2f6
.byte 0x09
.global data_ov61_0217a2f7
data_ov61_0217a2f7: ; 0x0217a2f7
.byte 0x08
.global data_ov61_0217a2f8
data_ov61_0217a2f8: ; 0x0217a2f8
.byte 0x06
.global data_ov61_0217a2f9
data_ov61_0217a2f9: ; 0x0217a2f9
.byte 0x00
.global data_ov61_0217a2fa
data_ov61_0217a2fa: ; 0x0217a2fa
.byte 0x00
.global data_ov61_0217a2fb
data_ov61_0217a2fb: ; 0x0217a2fb
.byte 0x00
.global data_ov61_0217a2fc
data_ov61_0217a2fc: ; 0x0217a2fc
.byte 0x0a
.global data_ov61_0217a2fd
data_ov61_0217a2fd: ; 0x0217a2fd
.byte 0x0d
.global data_ov61_0217a2fe
data_ov61_0217a2fe: ; 0x0217a2fe
.byte 0x0e
.global data_ov61_0217a2ff
data_ov61_0217a2ff: ; 0x0217a2ff
.byte 0x08
.global data_ov61_0217a300
data_ov61_0217a300: ; 0x0217a300
.byte 0x09
.global data_ov61_0217a301
data_ov61_0217a301: ; 0x0217a301
.byte 0x03
.global data_ov61_0217a302
data_ov61_0217a302: ; 0x0217a302
.byte 0x06
.global data_ov61_0217a303
data_ov61_0217a303: ; 0x0217a303
.byte 0x00
.global data_ov61_0217a304
data_ov61_0217a304: ; 0x0217a304
.byte 0x0c
.global data_ov61_0217a305
data_ov61_0217a305: ; 0x0217a305
.byte 0x05
.global data_ov61_0217a306
data_ov61_0217a306: ; 0x0217a306
.byte 0x02
.global data_ov61_0217a307
data_ov61_0217a307: ; 0x0217a307
.byte 0x07
.global data_ov61_0217a308
data_ov61_0217a308: ; 0x0217a308
.byte 0x0b
.global data_ov61_0217a309
data_ov61_0217a309: ; 0x0217a309
.byte 0x01
.global data_ov61_0217a30a
data_ov61_0217a30a: ; 0x0217a30a
.byte 0x0f
.global data_ov61_0217a30b
data_ov61_0217a30b: ; 0x0217a30b
.byte 0x04
.global data_ov61_0217a30c
data_ov61_0217a30c: ; 0x0217a30c
.byte 0xff, 0xff
.global data_ov61_0217a30e
data_ov61_0217a30e: ; 0x0217a30e
.byte 0xff, 0xff
.global data_ov61_0217a310
data_ov61_0217a310: ; 0x0217a310
.byte 0xff, 0xff
.global data_ov61_0217a312
data_ov61_0217a312: ; 0x0217a312
.byte 0x00, 0x00
.global data_ov61_0217a314
data_ov61_0217a314: ; 0x0217a314
.byte 0xff, 0xff, 0xff, 0xff
.global data_ov61_0217a318
data_ov61_0217a318: ; 0x0217a318
.byte 0xff, 0xff, 0xff, 0xff
.global data_ov61_0217a31c
data_ov61_0217a31c: ; 0x0217a31c
.byte 0xff, 0xff, 0xff, 0xff
.global data_ov61_0217a320
data_ov61_0217a320: ; 0x0217a320
.byte 0xff, 0xff, 0xff, 0xff
.global data_ov61_0217a324
data_ov61_0217a324: ; 0x0217a324
.byte 0xff, 0xff, 0xff, 0xff
.global data_ov61_0217a328
data_ov61_0217a328: ; 0x0217a328
.byte 0xff, 0xff, 0xff, 0xff
.global data_ov61_0217a32c
data_ov61_0217a32c: ; 0x0217a32c
.byte 0xff, 0xff, 0xff, 0xff
.global data_ov61_0217a330
data_ov61_0217a330: ; 0x0217a330
.byte 0xff, 0xff, 0xff, 0xff
.global data_ov61_0217a334
data_ov61_0217a334: ; 0x0217a334
.word data_ov61_0217bee0
.global data_ov61_0217a338
data_ov61_0217a338: ; 0x0217a338
.word data_ov61_0217bed8
.global data_ov61_0217a33c
data_ov61_0217a33c: ; 0x0217a33c
.ascii "[]_"
.byte 0x00
.global data_ov61_0217a340
data_ov61_0217a340: ; 0x0217a340
.ascii "-_="
.byte 0x00
.global data_ov61_0217a344
data_ov61_0217a344: ; 0x0217a344
.ascii "+/="
.byte 0x00
.global data_ov61_0217a348
data_ov61_0217a348: ; 0x0217a348
.ascii "\\mod\\%d"
.byte 0x00
.global data_ov61_0217a350
data_ov61_0217a350: ; 0x0217a350
.byte 0x13, 0x1d, 0x01, 0x04
.global data_ov61_0217a354
data_ov61_0217a354: ; 0x0217a354
.byte 0x00, 0x00, 0x00, 0x28
.global data_ov61_0217a358
data_ov61_0217a358: ; 0x0217a358
.byte 0x1f, 0x06, 0x45, 0x34
.global data_ov61_0217a35c
data_ov61_0217a35c: ; 0x0217a35c
.byte 0x3f, 0x01, 0x1b, 0x00
.global data_ov61_0217a360
data_ov61_0217a360: ; 0x0217a360
.byte 0x13
.global data_ov61_0217a361
data_ov61_0217a361: ; 0x0217a361
.byte 0x1d
.global data_ov61_0217a362
data_ov61_0217a362: ; 0x0217a362
.byte 0x01
.global data_ov61_0217a363
data_ov61_0217a363: ; 0x0217a363
.byte 0x04
.global data_ov61_0217a364
data_ov61_0217a364: ; 0x0217a364
.byte 0x00
.global data_ov61_0217a365
data_ov61_0217a365: ; 0x0217a365
.byte 0x00
.global data_ov61_0217a366
data_ov61_0217a366: ; 0x0217a366
.byte 0x00
.global data_ov61_0217a367
data_ov61_0217a367: ; 0x0217a367
.byte 0x28
.global data_ov61_0217a368
data_ov61_0217a368: ; 0x0217a368
.byte 0x1f
.global data_ov61_0217a369
data_ov61_0217a369: ; 0x0217a369
.byte 0x06
.global data_ov61_0217a36a
data_ov61_0217a36a: ; 0x0217a36a
.byte 0x45
.global data_ov61_0217a36b
data_ov61_0217a36b: ; 0x0217a36b
.byte 0x34
.global data_ov61_0217a36c
data_ov61_0217a36c: ; 0x0217a36c
.byte 0x3f
.global data_ov61_0217a36d
data_ov61_0217a36d: ; 0x0217a36d
.byte 0x01
.global data_ov61_0217a36e
data_ov61_0217a36e: ; 0x0217a36e
.byte 0x1b
.global data_ov61_0217a36f
data_ov61_0217a36f: ; 0x0217a36f
.byte 0x00
.global data_ov61_0217a370
data_ov61_0217a370: ; 0x0217a370
.byte 0x0c
.global data_ov61_0217a371
data_ov61_0217a371: ; 0x0217a371
.byte 0x13
.global data_ov61_0217a372
data_ov61_0217a372: ; 0x0217a372
.byte 0x1a
.global data_ov61_0217a373
data_ov61_0217a373: ; 0x0217a373
.byte 0x1e
.global data_ov61_0217a374
data_ov61_0217a374: ; 0x0217a374
.byte 0x0d
.global data_ov61_0217a375
data_ov61_0217a375: ; 0x0217a375
.byte 0x13
.global data_ov61_0217a376
data_ov61_0217a376: ; 0x0217a376
.byte 0x28
.global data_ov61_0217a377
data_ov61_0217a377: ; 0x0217a377
.byte 0x1d
.global data_ov61_0217a378
data_ov61_0217a378: ; 0x0217a378
.byte 0x00
.global data_ov61_0217a379
data_ov61_0217a379: ; 0x0217a379
.byte 0x01
.global data_ov61_0217a37a
data_ov61_0217a37a: ; 0x0217a37a
.byte 0x01
.global data_ov61_0217a37b
data_ov61_0217a37b: ; 0x0217a37b
.byte 0x24
.global data_ov61_0217a37c
data_ov61_0217a37c: ; 0x0217a37c
.byte 0x75
.global data_ov61_0217a37d
data_ov61_0217a37d: ; 0x0217a37d
.byte 0x16
.global data_ov61_0217a37e
data_ov61_0217a37e: ; 0x0217a37e
.byte 0x33
.global data_ov61_0217a37f
data_ov61_0217a37f: ; 0x0217a37f
.byte 0x18
.global data_ov61_0217a380
data_ov61_0217a380: ; 0x0217a380
.byte 0x00
.global data_ov61_0217a381
data_ov61_0217a381: ; 0x0217a381
.byte 0x10
.global data_ov61_0217a382
data_ov61_0217a382: ; 0x0217a382
.byte 0x04
.global data_ov61_0217a383
data_ov61_0217a383: ; 0x0217a383
.byte 0x1d
.global data_ov61_0217a384
data_ov61_0217a384: ; 0x0217a384
.byte 0x55
.global data_ov61_0217a385
data_ov61_0217a385: ; 0x0217a385
.byte 0x1b
.global data_ov61_0217a386
data_ov61_0217a386: ; 0x0217a386
.byte 0x39
.global data_ov61_0217a387
data_ov61_0217a387: ; 0x0217a387
.byte 0x14
.global data_ov61_0217a388
data_ov61_0217a388: ; 0x0217a388
.byte 0x39
.global data_ov61_0217a389
data_ov61_0217a389: ; 0x0217a389
.byte 0x16
.global data_ov61_0217a38a
data_ov61_0217a38a: ; 0x0217a38a
.byte 0x33
.global data_ov61_0217a38b
data_ov61_0217a38b: ; 0x0217a38b
.byte 0x4f
.global data_ov61_0217a38c
data_ov61_0217a38c: ; 0x0217a38c
.byte 0x01
.global data_ov61_0217a38d
data_ov61_0217a38d: ; 0x0217a38d
.byte 0x00
.global data_ov61_0217a38e
data_ov61_0217a38e: ; 0x0217a38e
.byte 0x0c
.global data_ov61_0217a38f
data_ov61_0217a38f: ; 0x0217a38f
.byte 0x1c
.global data_ov61_0217a390
data_ov61_0217a390: ; 0x0217a390
.byte 0x0a
.global data_ov61_0217a391
data_ov61_0217a391: ; 0x0217a391
.byte 0x1d
.global data_ov61_0217a392
data_ov61_0217a392: ; 0x0217a392
.byte 0x02
.global data_ov61_0217a393
data_ov61_0217a393: ; 0x0217a393
.byte 0x02
.global data_ov61_0217a394
data_ov61_0217a394: ; 0x0217a394
.byte 0x19
.global data_ov61_0217a395
data_ov61_0217a395: ; 0x0217a395
.byte 0x24
.global data_ov61_0217a396
data_ov61_0217a396: ; 0x0217a396
.byte 0x2c
.global data_ov61_0217a397
data_ov61_0217a397: ; 0x0217a397
.byte 0x34
.global data_ov61_0217a398
data_ov61_0217a398: ; 0x0217a398
.byte 0x06
.global data_ov61_0217a399
data_ov61_0217a399: ; 0x0217a399
.byte 0x17
.global data_ov61_0217a39a
data_ov61_0217a39a: ; 0x0217a39a
.byte 0x3e
.global data_ov61_0217a39b
data_ov61_0217a39b: ; 0x0217a39b
.byte 0x1c
.global data_ov61_0217a39c
data_ov61_0217a39c: ; 0x0217a39c
.byte 0x06
.global data_ov61_0217a39d
data_ov61_0217a39d: ; 0x0217a39d
.byte 0x0e
.global data_ov61_0217a39e
data_ov61_0217a39e: ; 0x0217a39e
.byte 0x39
.global data_ov61_0217a39f
data_ov61_0217a39f: ; 0x0217a39f
.byte 0x46
.global data_ov61_0217a3a0
data_ov61_0217a3a0: ; 0x0217a3a0
.byte 0x10
.global data_ov61_0217a3a1
data_ov61_0217a3a1: ; 0x0217a3a1
.byte 0x1d
.global data_ov61_0217a3a2
data_ov61_0217a3a2: ; 0x0217a3a2
.byte 0x03
.global data_ov61_0217a3a3
data_ov61_0217a3a3: ; 0x0217a3a3
.byte 0x0d
.global data_ov61_0217a3a4
data_ov61_0217a3a4: ; 0x0217a3a4
.byte 0x16
.global data_ov61_0217a3a5
data_ov61_0217a3a5: ; 0x0217a3a5
.byte 0x0b
.global data_ov61_0217a3a6
data_ov61_0217a3a6: ; 0x0217a3a6
.byte 0x3b
.global data_ov61_0217a3a7
data_ov61_0217a3a7: ; 0x0217a3a7
.byte 0x17
.global data_ov61_0217a3a8
data_ov61_0217a3a8: ; 0x0217a3a8
.byte 0x16
.global data_ov61_0217a3a9
data_ov61_0217a3a9: ; 0x0217a3a9
.byte 0x36
.global data_ov61_0217a3aa
data_ov61_0217a3aa: ; 0x0217a3aa
.byte 0x40
.global data_ov61_0217a3ab
data_ov61_0217a3ab: ; 0x0217a3ab
.byte 0x07
.global data_ov61_0217a3ac
data_ov61_0217a3ac: ; 0x0217a3ac
.byte 0x00
.global data_ov61_0217a3ad
data_ov61_0217a3ad: ; 0x0217a3ad
.byte 0x0c
.global data_ov61_0217a3ae
data_ov61_0217a3ae: ; 0x0217a3ae
.byte 0x15
.global data_ov61_0217a3af
data_ov61_0217a3af: ; 0x0217a3af
.byte 0x0a
.global data_ov61_0217a3b0
data_ov61_0217a3b0: ; 0x0217a3b0
.byte 0x1e
.global data_ov61_0217a3b1
data_ov61_0217a3b1: ; 0x0217a3b1
.byte 0x15
.global data_ov61_0217a3b2
data_ov61_0217a3b2: ; 0x0217a3b2
.byte 0x0a
.global data_ov61_0217a3b3
data_ov61_0217a3b3: ; 0x0217a3b3
.byte 0x10
.global data_ov61_0217a3b4
data_ov61_0217a3b4: ; 0x0217a3b4
.byte 0x1d
.global data_ov61_0217a3b5
data_ov61_0217a3b5: ; 0x0217a3b5
.byte 0x2c
.global data_ov61_0217a3b6
data_ov61_0217a3b6: ; 0x0217a3b6
.byte 0x06
.global data_ov61_0217a3b7
data_ov61_0217a3b7: ; 0x0217a3b7
.byte 0x0c
.global data_ov61_0217a3b8
data_ov61_0217a3b8: ; 0x0217a3b8
.byte 0x1b
.global data_ov61_0217a3b9
data_ov61_0217a3b9: ; 0x0217a3b9
.byte 0x3b
.global data_ov61_0217a3ba
data_ov61_0217a3ba: ; 0x0217a3ba
.byte 0x2e
.global data_ov61_0217a3bb
data_ov61_0217a3bb: ; 0x0217a3bb
.byte 0x4a
.global data_ov61_0217a3bc
data_ov61_0217a3bc: ; 0x0217a3bc
.byte 0x19
.global data_ov61_0217a3bd
data_ov61_0217a3bd: ; 0x0217a3bd
.byte 0x39
.global data_ov61_0217a3be
data_ov61_0217a3be: ; 0x0217a3be
.byte 0x08
.global data_ov61_0217a3bf
data_ov61_0217a3bf: ; 0x0217a3bf
.byte 0x11
.global data_ov61_0217a3c0
data_ov61_0217a3c0: ; 0x0217a3c0
.byte 0x38
.global data_ov61_0217a3c1
data_ov61_0217a3c1: ; 0x0217a3c1
.byte 0x18
.global data_ov61_0217a3c2
data_ov61_0217a3c2: ; 0x0217a3c2
.byte 0x09
.global data_ov61_0217a3c3
data_ov61_0217a3c3: ; 0x0217a3c3
.byte 0x16
.global data_ov61_0217a3c4
data_ov61_0217a3c4: ; 0x0217a3c4
.byte 0x10
.global data_ov61_0217a3c5
data_ov61_0217a3c5: ; 0x0217a3c5
.byte 0x0c
.global data_ov61_0217a3c6
data_ov61_0217a3c6: ; 0x0217a3c6
.byte 0x57
.global data_ov61_0217a3c7
data_ov61_0217a3c7: ; 0x0217a3c7
.byte 0x1c
.global data_ov61_0217a3c8
data_ov61_0217a3c8: ; 0x0217a3c8
.byte 0x36
.global data_ov61_0217a3c9
data_ov61_0217a3c9: ; 0x0217a3c9
.byte 0x09
.global data_ov61_0217a3ca
data_ov61_0217a3ca: ; 0x0217a3ca
.byte 0x0a
.global data_ov61_0217a3cb
data_ov61_0217a3cb: ; 0x0217a3cb
.byte 0x10
.global data_ov61_0217a3cc
data_ov61_0217a3cc: ; 0x0217a3cc
.byte 0x1d
.global data_ov61_0217a3cd
data_ov61_0217a3cd: ; 0x0217a3cd
.byte 0x55
.global data_ov61_0217a3ce
data_ov61_0217a3ce: ; 0x0217a3ce
.byte 0x0c
.global data_ov61_0217a3cf
data_ov61_0217a3cf: ; 0x0217a3cf
.byte 0x00
.global data_ov61_0217a3d0
data_ov61_0217a3d0: ; 0x0217a3d0
.byte 0x0c
.global data_ov61_0217a3d1
data_ov61_0217a3d1: ; 0x0217a3d1
.byte 0x13
.global data_ov61_0217a3d2
data_ov61_0217a3d2: ; 0x0217a3d2
.byte 0x1a
.global data_ov61_0217a3d3
data_ov61_0217a3d3: ; 0x0217a3d3
.byte 0x1e
.global data_ov61_0217a3d4
data_ov61_0217a3d4: ; 0x0217a3d4
.byte 0x0d
.global data_ov61_0217a3d5
data_ov61_0217a3d5: ; 0x0217a3d5
.byte 0x13
.global data_ov61_0217a3d6
data_ov61_0217a3d6: ; 0x0217a3d6
.byte 0x28
.global data_ov61_0217a3d7
data_ov61_0217a3d7: ; 0x0217a3d7
.byte 0x1d
.global data_ov61_0217a3d8
data_ov61_0217a3d8: ; 0x0217a3d8
.byte 0x11
.global data_ov61_0217a3d9
data_ov61_0217a3d9: ; 0x0217a3d9
.byte 0x1d
.global data_ov61_0217a3da
data_ov61_0217a3da: ; 0x0217a3da
.byte 0x11
.global data_ov61_0217a3db
data_ov61_0217a3db: ; 0x0217a3db
.byte 0x10
.global data_ov61_0217a3dc
data_ov61_0217a3dc: ; 0x0217a3dc
.byte 0x24
.global data_ov61_0217a3dd
data_ov61_0217a3dd: ; 0x0217a3dd
.byte 0x1d
.global data_ov61_0217a3de
data_ov61_0217a3de: ; 0x0217a3de
.byte 0x04
.global data_ov61_0217a3df
data_ov61_0217a3df: ; 0x0217a3df
.byte 0x0f
.global data_ov61_0217a3e0
data_ov61_0217a3e0: ; 0x0217a3e0
.byte 0x0b
.global data_ov61_0217a3e1
data_ov61_0217a3e1: ; 0x0217a3e1
.byte 0x3f
.global data_ov61_0217a3e2
data_ov61_0217a3e2: ; 0x0217a3e2
.byte 0x51
.global data_ov61_0217a3e3
data_ov61_0217a3e3: ; 0x0217a3e3
.byte 0x32
.global data_ov61_0217a3e4
data_ov61_0217a3e4: ; 0x0217a3e4
.byte 0x2c
.global data_ov61_0217a3e5
data_ov61_0217a3e5: ; 0x0217a3e5
.byte 0x1a
.global data_ov61_0217a3e6
data_ov61_0217a3e6: ; 0x0217a3e6
.byte 0x00
.global data_ov61_0217a3e7
data_ov61_0217a3e7: ; 0x0217a3e7
.byte 0x0b
.global data_ov61_0217a3e8
data_ov61_0217a3e8: ; 0x0217a3e8
.byte 0x20
.global data_ov61_0217a3e9
data_ov61_0217a3e9: ; 0x0217a3e9
.byte 0x2e
.global data_ov61_0217a3ea
data_ov61_0217a3ea: ; 0x0217a3ea
.byte 0x4a
.global data_ov61_0217a3eb
data_ov61_0217a3eb: ; 0x0217a3eb
.byte 0x19
.global data_ov61_0217a3ec
data_ov61_0217a3ec: ; 0x0217a3ec
.byte 0x39
.global data_ov61_0217a3ed
data_ov61_0217a3ed: ; 0x0217a3ed
.byte 0x0f
.global data_ov61_0217a3ee
data_ov61_0217a3ee: ; 0x0217a3ee
.byte 0x1d
.global data_ov61_0217a3ef
data_ov61_0217a3ef: ; 0x0217a3ef
.byte 0x25
.global data_ov61_0217a3f0
data_ov61_0217a3f0: ; 0x0217a3f0
.byte 0x2c
.global data_ov61_0217a3f1
data_ov61_0217a3f1: ; 0x0217a3f1
.byte 0x4d
.global data_ov61_0217a3f2
data_ov61_0217a3f2: ; 0x0217a3f2
.byte 0x01
.global data_ov61_0217a3f3
data_ov61_0217a3f3: ; 0x0217a3f3
.byte 0x00
.global data_ov61_0217a3f4
data_ov61_0217a3f4: ; 0x0217a3f4
.byte 0x0c
.global data_ov61_0217a3f5
data_ov61_0217a3f5: ; 0x0217a3f5
.byte 0x07
.global data_ov61_0217a3f6
data_ov61_0217a3f6: ; 0x0217a3f6
.byte 0x1f
.global data_ov61_0217a3f7
data_ov61_0217a3f7: ; 0x0217a3f7
.byte 0x0e
.global data_ov61_0217a3f8
data_ov61_0217a3f8: ; 0x0217a3f8
.byte 0x02
.global data_ov61_0217a3f9
data_ov61_0217a3f9: ; 0x0217a3f9
.byte 0x02
.global data_ov61_0217a3fa
data_ov61_0217a3fa: ; 0x0217a3fa
.byte 0x19
.global data_ov61_0217a3fb
data_ov61_0217a3fb: ; 0x0217a3fb
.byte 0x24
.global data_ov61_0217a3fc
data_ov61_0217a3fc: ; 0x0217a3fc
.byte 0x2c
.global data_ov61_0217a3fd
data_ov61_0217a3fd: ; 0x0217a3fd
.byte 0x34
.global data_ov61_0217a3fe
data_ov61_0217a3fe: ; 0x0217a3fe
.byte 0x16
.global data_ov61_0217a3ff
data_ov61_0217a3ff: ; 0x0217a3ff
.byte 0x1d
.global data_ov61_0217a400
data_ov61_0217a400: ; 0x0217a400
.byte 0x23
.global data_ov61_0217a401
data_ov61_0217a401: ; 0x0217a401
.byte 0x01
.global data_ov61_0217a402
data_ov61_0217a402: ; 0x0217a402
.byte 0x04
.global data_ov61_0217a403
data_ov61_0217a403: ; 0x0217a403
.byte 0x0f
.global data_ov61_0217a404
data_ov61_0217a404: ; 0x0217a404
.byte 0x1c
.global data_ov61_0217a405
data_ov61_0217a405: ; 0x0217a405
.byte 0x3f
.global data_ov61_0217a406
data_ov61_0217a406: ; 0x0217a406
.byte 0x51
.global data_ov61_0217a407
data_ov61_0217a407: ; 0x0217a407
.byte 0x25
.global data_ov61_0217a408
data_ov61_0217a408: ; 0x0217a408
.byte 0x2c
.global data_ov61_0217a409
data_ov61_0217a409: ; 0x0217a409
.byte 0x0c
.global data_ov61_0217a40a
data_ov61_0217a40a: ; 0x0217a40a
.byte 0x0a
.global data_ov61_0217a40b
data_ov61_0217a40b: ; 0x0217a40b
.byte 0x16
.global data_ov61_0217a40c
data_ov61_0217a40c: ; 0x0217a40c
.byte 0x35
.global data_ov61_0217a40d
data_ov61_0217a40d: ; 0x0217a40d
.byte 0x2e
.global data_ov61_0217a40e
data_ov61_0217a40e: ; 0x0217a40e
.byte 0x4a
.global data_ov61_0217a40f
data_ov61_0217a40f: ; 0x0217a40f
.byte 0x0e
.global data_ov61_0217a410
data_ov61_0217a410: ; 0x0217a410
.byte 0x39
.global data_ov61_0217a411
data_ov61_0217a411: ; 0x0217a411
.byte 0x04
.global data_ov61_0217a412
data_ov61_0217a412: ; 0x0217a412
.byte 0x15
.global data_ov61_0217a413
data_ov61_0217a413: ; 0x0217a413
.byte 0x2c
.global data_ov61_0217a414
data_ov61_0217a414: ; 0x0217a414
.byte 0x15
.global data_ov61_0217a415
data_ov61_0217a415: ; 0x0217a415
.byte 0x0c
.global data_ov61_0217a416
data_ov61_0217a416: ; 0x0217a416
.byte 0x04
.global data_ov61_0217a417
data_ov61_0217a417: ; 0x0217a417
.byte 0x0c
.global data_ov61_0217a418
data_ov61_0217a418: ; 0x0217a418
.byte 0x31
.global data_ov61_0217a419
data_ov61_0217a419: ; 0x0217a419
.byte 0x2e
.global data_ov61_0217a41a
data_ov61_0217a41a: ; 0x0217a41a
.byte 0x4a
.global data_ov61_0217a41b
data_ov61_0217a41b: ; 0x0217a41b
.byte 0x19
.global data_ov61_0217a41c
data_ov61_0217a41c: ; 0x0217a41c
.byte 0x00
.global data_ov61_0217a41d
data_ov61_0217a41d: ; 0x0217a41d
.byte 0x0c
.global data_ov61_0217a41e
data_ov61_0217a41e: ; 0x0217a41e
.byte 0x13
.global data_ov61_0217a41f
data_ov61_0217a41f: ; 0x0217a41f
.byte 0x1a
.global data_ov61_0217a420
data_ov61_0217a420: ; 0x0217a420
.byte 0x1e
.global data_ov61_0217a421
data_ov61_0217a421: ; 0x0217a421
.byte 0x0d
.global data_ov61_0217a422
data_ov61_0217a422: ; 0x0217a422
.byte 0x13
.global data_ov61_0217a423
data_ov61_0217a423: ; 0x0217a423
.byte 0x28
.global data_ov61_0217a424
data_ov61_0217a424: ; 0x0217a424
.byte 0x1d
.global data_ov61_0217a425
data_ov61_0217a425: ; 0x0217a425
.byte 0x1e
.global data_ov61_0217a426
data_ov61_0217a426: ; 0x0217a426
.byte 0x01
.global data_ov61_0217a427
data_ov61_0217a427: ; 0x0217a427
.byte 0x06
.global data_ov61_0217a428
data_ov61_0217a428: ; 0x0217a428
.byte 0x13
.global data_ov61_0217a429
data_ov61_0217a429: ; 0x0217a429
.byte 0x0c
.global data_ov61_0217a42a
data_ov61_0217a42a: ; 0x0217a42a
.byte 0x57
.global data_ov61_0217a42b
data_ov61_0217a42b: ; 0x0217a42b
.byte 0x1c
.global data_ov61_0217a42c
data_ov61_0217a42c: ; 0x0217a42c
.byte 0x36
.global data_ov61_0217a42d
data_ov61_0217a42d: ; 0x0217a42d
.byte 0x0e
.global data_ov61_0217a42e
data_ov61_0217a42e: ; 0x0217a42e
.byte 0x06
.global data_ov61_0217a42f
data_ov61_0217a42f: ; 0x0217a42f
.byte 0x0d
.global data_ov61_0217a430
data_ov61_0217a430: ; 0x0217a430
.byte 0x29
.global data_ov61_0217a431
data_ov61_0217a431: ; 0x0217a431
.byte 0x11
.global data_ov61_0217a432
data_ov61_0217a432: ; 0x0217a432
.byte 0x1b
.global data_ov61_0217a433
data_ov61_0217a433: ; 0x0217a433
.byte 0x0d
.global data_ov61_0217a434
data_ov61_0217a434: ; 0x0217a434
.byte 0x24
.global data_ov61_0217a435
data_ov61_0217a435: ; 0x0217a435
.byte 0x75
.global data_ov61_0217a436
data_ov61_0217a436: ; 0x0217a436
.byte 0x01
.global data_ov61_0217a437
data_ov61_0217a437: ; 0x0217a437
.byte 0x33
.global data_ov61_0217a438
data_ov61_0217a438: ; 0x0217a438
.byte 0x18
.global data_ov61_0217a439
data_ov61_0217a439: ; 0x0217a439
.byte 0x00
.global data_ov61_0217a43a
data_ov61_0217a43a: ; 0x0217a43a
.byte 0x10
.global data_ov61_0217a43b
data_ov61_0217a43b: ; 0x0217a43b
.byte 0x04
.global data_ov61_0217a43c
data_ov61_0217a43c: ; 0x0217a43c
.byte 0x1d
.global data_ov61_0217a43d
data_ov61_0217a43d: ; 0x0217a43d
.byte 0x55
.global data_ov61_0217a43e
data_ov61_0217a43e: ; 0x0217a43e
.byte 0x1b
.global data_ov61_0217a43f
data_ov61_0217a43f: ; 0x0217a43f
.byte 0x39
.global data_ov61_0217a440
data_ov61_0217a440: ; 0x0217a440
.byte 0x14
.global data_ov61_0217a441
data_ov61_0217a441: ; 0x0217a441
.byte 0x39
.global data_ov61_0217a442
data_ov61_0217a442: ; 0x0217a442
.byte 0x16
.global data_ov61_0217a443
data_ov61_0217a443: ; 0x0217a443
.byte 0x33
.global data_ov61_0217a444
data_ov61_0217a444: ; 0x0217a444
.byte 0x4f
.global data_ov61_0217a445
data_ov61_0217a445: ; 0x0217a445
.byte 0x01
.global data_ov61_0217a446
data_ov61_0217a446: ; 0x0217a446
.byte 0x00
.global data_ov61_0217a447
data_ov61_0217a447: ; 0x0217a447
.byte 0x0c
.global data_ov61_0217a448
data_ov61_0217a448: ; 0x0217a448
.byte 0x13
.global data_ov61_0217a449
data_ov61_0217a449: ; 0x0217a449
.byte 0x1a
.global data_ov61_0217a44a
data_ov61_0217a44a: ; 0x0217a44a
.byte 0x1e
.global data_ov61_0217a44b
data_ov61_0217a44b: ; 0x0217a44b
.byte 0x0d
.global data_ov61_0217a44c
data_ov61_0217a44c: ; 0x0217a44c
.byte 0x3f
.global data_ov61_0217a44d
data_ov61_0217a44d: ; 0x0217a44d
.byte 0x28
.global data_ov61_0217a44e
data_ov61_0217a44e: ; 0x0217a44e
.byte 0x26
.global data_ov61_0217a44f
data_ov61_0217a44f: ; 0x0217a44f
.byte 0x11
.global data_ov61_0217a450
data_ov61_0217a450: ; 0x0217a450
.byte 0x05
.global data_ov61_0217a451
data_ov61_0217a451: ; 0x0217a451
.byte 0x00
.global data_ov61_0217a452
data_ov61_0217a452: ; 0x0217a452
.byte 0x16
.global data_ov61_0217a453
data_ov61_0217a453: ; 0x0217a453
.byte 0x31
.global data_ov61_0217a454
data_ov61_0217a454: ; 0x0217a454
.byte 0x1f
.global data_ov61_0217a455
data_ov61_0217a455: ; 0x0217a455
.byte 0x0a
.global data_ov61_0217a456
data_ov61_0217a456: ; 0x0217a456
.byte 0x36
.global data_ov61_0217a457
data_ov61_0217a457: ; 0x0217a457
.byte 0x40
.global data_ov61_0217a458
data_ov61_0217a458: ; 0x0217a458
.byte 0x10
.global data_ov61_0217a459
data_ov61_0217a459: ; 0x0217a459
.byte 0x28
.global data_ov61_0217a45a
data_ov61_0217a45a: ; 0x0217a45a
.byte 0x33
.global data_ov61_0217a45b
data_ov61_0217a45b: ; 0x0217a45b
.byte 0x15
.global data_ov61_0217a45c
data_ov61_0217a45c: ; 0x0217a45c
.byte 0x1b
.global data_ov61_0217a45d
data_ov61_0217a45d: ; 0x0217a45d
.byte 0x15
.global data_ov61_0217a45e
data_ov61_0217a45e: ; 0x0217a45e
.byte 0x17
.global data_ov61_0217a45f
data_ov61_0217a45f: ; 0x0217a45f
.byte 0x3e
.global data_ov61_0217a460
data_ov61_0217a460: ; 0x0217a460
.byte 0x01
.global data_ov61_0217a461
data_ov61_0217a461: ; 0x0217a461
.byte 0x0a
.global data_ov61_0217a462
data_ov61_0217a462: ; 0x0217a462
.byte 0x36
.global data_ov61_0217a463
data_ov61_0217a463: ; 0x0217a463
.byte 0x40
.global data_ov61_0217a464
data_ov61_0217a464: ; 0x0217a464
.byte 0x10
.global data_ov61_0217a465
data_ov61_0217a465: ; 0x0217a465
.byte 0x28
.global data_ov61_0217a466
data_ov61_0217a466: ; 0x0217a466
.byte 0x31
.global data_ov61_0217a467
data_ov61_0217a467: ; 0x0217a467
.byte 0x1f
.global data_ov61_0217a468
data_ov61_0217a468: ; 0x0217a468
.byte 0x1a
.global data_ov61_0217a469
data_ov61_0217a469: ; 0x0217a469
.byte 0x11
.global data_ov61_0217a46a
data_ov61_0217a46a: ; 0x0217a46a
.byte 0x24
.global data_ov61_0217a46b
data_ov61_0217a46b: ; 0x0217a46b
.byte 0x75
.global data_ov61_0217a46c
data_ov61_0217a46c: ; 0x0217a46c
.byte 0x16
.global data_ov61_0217a46d
data_ov61_0217a46d: ; 0x0217a46d
.byte 0x33
.global data_ov61_0217a46e
data_ov61_0217a46e: ; 0x0217a46e
.byte 0x03
.global data_ov61_0217a46f
data_ov61_0217a46f: ; 0x0217a46f
.byte 0x01
.global data_ov61_0217a470
data_ov61_0217a470: ; 0x0217a470
.byte 0x3f
.global data_ov61_0217a471
data_ov61_0217a471: ; 0x0217a471
.byte 0x45
.global data_ov61_0217a472
data_ov61_0217a472: ; 0x0217a472
.byte 0x00
.global data_ov61_0217a473
data_ov61_0217a473: ; 0x0217a473
.byte 0x0c
.global data_ov61_0217a474
data_ov61_0217a474: ; 0x0217a474
.byte 0x15
.global data_ov61_0217a475
data_ov61_0217a475: ; 0x0217a475
.byte 0x0a
.global data_ov61_0217a476
data_ov61_0217a476: ; 0x0217a476
.byte 0x1e
.global data_ov61_0217a477
data_ov61_0217a477: ; 0x0217a477
.byte 0x15
.global data_ov61_0217a478
data_ov61_0217a478: ; 0x0217a478
.byte 0x07
.global data_ov61_0217a479
data_ov61_0217a479: ; 0x0217a479
.byte 0x28
.global data_ov61_0217a47a
data_ov61_0217a47a: ; 0x0217a47a
.byte 0x1d
.global data_ov61_0217a47b
data_ov61_0217a47b: ; 0x0217a47b
.byte 0x00
.global data_ov61_0217a47c
data_ov61_0217a47c: ; 0x0217a47c
.byte 0x01
.global data_ov61_0217a47d
data_ov61_0217a47d: ; 0x0217a47d
.byte 0x01
.global data_ov61_0217a47e
data_ov61_0217a47e: ; 0x0217a47e
.byte 0x24
.global data_ov61_0217a47f
data_ov61_0217a47f: ; 0x0217a47f
.byte 0x75
.global data_ov61_0217a480
data_ov61_0217a480: ; 0x0217a480
.byte 0x16
.global data_ov61_0217a481
data_ov61_0217a481: ; 0x0217a481
.byte 0x33
.global data_ov61_0217a482
data_ov61_0217a482: ; 0x0217a482
.byte 0x1a
.global data_ov61_0217a483
data_ov61_0217a483: ; 0x0217a483
.byte 0x11
.global data_ov61_0217a484
data_ov61_0217a484: ; 0x0217a484
.byte 0x1a
.global data_ov61_0217a485
data_ov61_0217a485: ; 0x0217a485
.byte 0x04
.global data_ov61_0217a486
data_ov61_0217a486: ; 0x0217a486
.byte 0x24
.global data_ov61_0217a487
data_ov61_0217a487: ; 0x0217a487
.byte 0x2c
.global data_ov61_0217a488
data_ov61_0217a488: ; 0x0217a488
.byte 0x4d
.global data_ov61_0217a489
data_ov61_0217a489: ; 0x0217a489
.byte 0x01
.global data_ov61_0217a48a
data_ov61_0217a48a: ; 0x0217a48a
.byte 0x24
.global data_ov61_0217a48b
data_ov61_0217a48b: ; 0x0217a48b
.byte 0x34
.global data_ov61_0217a48c
data_ov61_0217a48c: ; 0x0217a48c
.byte 0x1b
.global data_ov61_0217a48d
data_ov61_0217a48d: ; 0x0217a48d
.byte 0x01
.global data_ov61_0217a48e
data_ov61_0217a48e: ; 0x0217a48e
.byte 0x0e
.global data_ov61_0217a48f
data_ov61_0217a48f: ; 0x0217a48f
.byte 0x00
.global data_ov61_0217a490
data_ov61_0217a490: ; 0x0217a490
.byte 0x1b
.global data_ov61_0217a491
data_ov61_0217a491: ; 0x0217a491
.byte 0x28
.global data_ov61_0217a492
data_ov61_0217a492: ; 0x0217a492
.byte 0x64
.global data_ov61_0217a493
data_ov61_0217a493: ; 0x0217a493
.byte 0x14
.global data_ov61_0217a494
data_ov61_0217a494: ; 0x0217a494
.byte 0x34
.global data_ov61_0217a495
data_ov61_0217a495: ; 0x0217a495
.byte 0x0e
.global data_ov61_0217a496
data_ov61_0217a496: ; 0x0217a496
.byte 0x1d
.global data_ov61_0217a497
data_ov61_0217a497: ; 0x0217a497
.byte 0x29
.global data_ov61_0217a498
data_ov61_0217a498: ; 0x0217a498
.byte 0x01
.global data_ov61_0217a499
data_ov61_0217a499: ; 0x0217a499
.byte 0x33
.global data_ov61_0217a49a
data_ov61_0217a49a: ; 0x0217a49a
.byte 0x4f
.global data_ov61_0217a49b
data_ov61_0217a49b: ; 0x0217a49b
.byte 0x16
.global data_ov61_0217a49c
data_ov61_0217a49c: ; 0x0217a49c
.byte 0x3f
.global data_ov61_0217a49d
data_ov61_0217a49d: ; 0x0217a49d
.byte 0x18
.global data_ov61_0217a49e
data_ov61_0217a49e: ; 0x0217a49e
.byte 0x28
.global data_ov61_0217a49f
data_ov61_0217a49f: ; 0x0217a49f
.byte 0x14
.global data_ov61_0217a4a0
data_ov61_0217a4a0: ; 0x0217a4a0
.byte 0x34
.global data_ov61_0217a4a1
data_ov61_0217a4a1: ; 0x0217a4a1
.byte 0x40
.global data_ov61_0217a4a2
data_ov61_0217a4a2: ; 0x0217a4a2
.byte 0x1c
.global data_ov61_0217a4a3
data_ov61_0217a4a3: ; 0x0217a4a3
.byte 0x00
.global data_ov61_0217a4a4
data_ov61_0217a4a4: ; 0x0217a4a4
.byte 0x0c
.global data_ov61_0217a4a5
data_ov61_0217a4a5: ; 0x0217a4a5
.byte 0x01
.global data_ov61_0217a4a6
data_ov61_0217a4a6: ; 0x0217a4a6
.byte 0x0a
.global data_ov61_0217a4a7
data_ov61_0217a4a7: ; 0x0217a4a7
.byte 0x1e
.global data_ov61_0217a4a8
data_ov61_0217a4a8: ; 0x0217a4a8
.byte 0x15
.global data_ov61_0217a4a9
data_ov61_0217a4a9: ; 0x0217a4a9
.byte 0x07
.global data_ov61_0217a4aa
data_ov61_0217a4aa: ; 0x0217a4aa
.byte 0x28
.global data_ov61_0217a4ab
data_ov61_0217a4ab: ; 0x0217a4ab
.byte 0x1d
.global data_ov61_0217a4ac
data_ov61_0217a4ac: ; 0x0217a4ac
.byte 0x00
.global data_ov61_0217a4ad
data_ov61_0217a4ad: ; 0x0217a4ad
.byte 0x01
.global data_ov61_0217a4ae
data_ov61_0217a4ae: ; 0x0217a4ae
.byte 0x01
.global data_ov61_0217a4af
data_ov61_0217a4af: ; 0x0217a4af
.byte 0x24
.global data_ov61_0217a4b0
data_ov61_0217a4b0: ; 0x0217a4b0
.byte 0x75
.global data_ov61_0217a4b1
data_ov61_0217a4b1: ; 0x0217a4b1
.byte 0x16
.global data_ov61_0217a4b2
data_ov61_0217a4b2: ; 0x0217a4b2
.byte 0x33
.global data_ov61_0217a4b3
data_ov61_0217a4b3: ; 0x0217a4b3
.byte 0x1a
.global data_ov61_0217a4b4
data_ov61_0217a4b4: ; 0x0217a4b4
.byte 0x11
.global data_ov61_0217a4b5
data_ov61_0217a4b5: ; 0x0217a4b5
.byte 0x1a
.global data_ov61_0217a4b6
data_ov61_0217a4b6: ; 0x0217a4b6
.byte 0x04
.global data_ov61_0217a4b7
data_ov61_0217a4b7: ; 0x0217a4b7
.byte 0x24
.global data_ov61_0217a4b8
data_ov61_0217a4b8: ; 0x0217a4b8
.byte 0x2c
.global data_ov61_0217a4b9
data_ov61_0217a4b9: ; 0x0217a4b9
.byte 0x4d
.global data_ov61_0217a4ba
data_ov61_0217a4ba: ; 0x0217a4ba
.byte 0x01
.global data_ov61_0217a4bb
data_ov61_0217a4bb: ; 0x0217a4bb
.byte 0x24
.global data_ov61_0217a4bc
data_ov61_0217a4bc: ; 0x0217a4bc
.byte 0x34
.global data_ov61_0217a4bd
data_ov61_0217a4bd: ; 0x0217a4bd
.byte 0x1b
.global data_ov61_0217a4be
data_ov61_0217a4be: ; 0x0217a4be
.byte 0x01
.global data_ov61_0217a4bf
data_ov61_0217a4bf: ; 0x0217a4bf
.byte 0x0e
.global data_ov61_0217a4c0
data_ov61_0217a4c0: ; 0x0217a4c0
.byte 0x00
.global data_ov61_0217a4c1
data_ov61_0217a4c1: ; 0x0217a4c1
.byte 0x1b
.global data_ov61_0217a4c2
data_ov61_0217a4c2: ; 0x0217a4c2
.byte 0x28
.global data_ov61_0217a4c3
data_ov61_0217a4c3: ; 0x0217a4c3
.byte 0x64
.global data_ov61_0217a4c4
data_ov61_0217a4c4: ; 0x0217a4c4
.byte 0x14
.global data_ov61_0217a4c5
data_ov61_0217a4c5: ; 0x0217a4c5
.byte 0x34
.global data_ov61_0217a4c6
data_ov61_0217a4c6: ; 0x0217a4c6
.byte 0x0e
.global data_ov61_0217a4c7
data_ov61_0217a4c7: ; 0x0217a4c7
.byte 0x0e
.global data_ov61_0217a4c8
data_ov61_0217a4c8: ; 0x0217a4c8
.byte 0x0c
.global data_ov61_0217a4c9
data_ov61_0217a4c9: ; 0x0217a4c9
.byte 0x57
.global data_ov61_0217a4ca
data_ov61_0217a4ca: ; 0x0217a4ca
.byte 0x0b
.global data_ov61_0217a4cb
data_ov61_0217a4cb: ; 0x0217a4cb
.byte 0x36
.global data_ov61_0217a4cc
data_ov61_0217a4cc: ; 0x0217a4cc
.byte 0x09
.global data_ov61_0217a4cd
data_ov61_0217a4cd: ; 0x0217a4cd
.byte 0x0a
.global data_ov61_0217a4ce
data_ov61_0217a4ce: ; 0x0217a4ce
.byte 0x10
.global data_ov61_0217a4cf
data_ov61_0217a4cf: ; 0x0217a4cf
.byte 0x1d
.global data_ov61_0217a4d0
data_ov61_0217a4d0: ; 0x0217a4d0
.byte 0x55
.global data_ov61_0217a4d1
data_ov61_0217a4d1: ; 0x0217a4d1
.byte 0x0c
.global data_ov61_0217a4d2
data_ov61_0217a4d2: ; 0x0217a4d2
.byte 0x39
.global data_ov61_0217a4d3
data_ov61_0217a4d3: ; 0x0217a4d3
.byte 0x14
.global data_ov61_0217a4d4
data_ov61_0217a4d4: ; 0x0217a4d4
.byte 0x35
.global data_ov61_0217a4d5
data_ov61_0217a4d5: ; 0x0217a4d5
.byte 0x1c
.global data_ov61_0217a4d6
data_ov61_0217a4d6: ; 0x0217a4d6
.byte 0x08
.global data_ov61_0217a4d7
data_ov61_0217a4d7: ; 0x0217a4d7
.byte 0x1e
.global data_ov61_0217a4d8
data_ov61_0217a4d8: ; 0x0217a4d8
.byte 0x0d
.global data_ov61_0217a4d9
data_ov61_0217a4d9: ; 0x0217a4d9
.byte 0x3f
.global data_ov61_0217a4da
data_ov61_0217a4da: ; 0x0217a4da
.byte 0x51
.global data_ov61_0217a4db
data_ov61_0217a4db: ; 0x0217a4db
.byte 0x25
.global data_ov61_0217a4dc
data_ov61_0217a4dc: ; 0x0217a4dc
.byte 0x2c
.global data_ov61_0217a4dd
data_ov61_0217a4dd: ; 0x0217a4dd
.byte 0x0c
.global data_ov61_0217a4de
data_ov61_0217a4de: ; 0x0217a4de
.byte 0x04
.global data_ov61_0217a4df
data_ov61_0217a4df: ; 0x0217a4df
.byte 0x0c
.global data_ov61_0217a4e0
data_ov61_0217a4e0: ; 0x0217a4e0
.byte 0x31
.global data_ov61_0217a4e1
data_ov61_0217a4e1: ; 0x0217a4e1
.byte 0x2e
.global data_ov61_0217a4e2
data_ov61_0217a4e2: ; 0x0217a4e2
.byte 0x00
.global data_ov61_0217a4e3
data_ov61_0217a4e3: ; 0x0217a4e3
.byte 0x5c
.global data_ov61_0217a4e4
data_ov61_0217a4e4: ; 0x0217a4e4
.byte 0x00
.global data_ov61_0217a4e5
data_ov61_0217a4e5: ; 0x0217a4e5
.byte 0x00
.global data_ov61_0217a4e6
data_ov61_0217a4e6: ; 0x0217a4e6
.byte 0x00
.global data_ov61_0217a4e7
data_ov61_0217a4e7: ; 0x0217a4e7
.byte 0x00
.global data_ov61_0217a4e8
data_ov61_0217a4e8: ; 0x0217a4e8
.byte 0x00
.global data_ov61_0217a4e9
data_ov61_0217a4e9: ; 0x0217a4e9
.byte 0x00
.global data_ov61_0217a4ea
data_ov61_0217a4ea: ; 0x0217a4ea
.byte 0x00
.global data_ov61_0217a4eb
data_ov61_0217a4eb: ; 0x0217a4eb
.byte 0x00
.global data_ov61_0217a4ec
data_ov61_0217a4ec: ; 0x0217a4ec
.byte 0x00
.global data_ov61_0217a4ed
data_ov61_0217a4ed: ; 0x0217a4ed
.byte 0x00
.global data_ov61_0217a4ee
data_ov61_0217a4ee: ; 0x0217a4ee
.byte 0x00
.global data_ov61_0217a4ef
data_ov61_0217a4ef: ; 0x0217a4ef
.byte 0x00
.global data_ov61_0217a4f0
data_ov61_0217a4f0: ; 0x0217a4f0
.byte 0x00
.global data_ov61_0217a4f1
data_ov61_0217a4f1: ; 0x0217a4f1
.byte 0x00
.global data_ov61_0217a4f2
data_ov61_0217a4f2: ; 0x0217a4f2
.byte 0x00
.global data_ov61_0217a4f3
data_ov61_0217a4f3: ; 0x0217a4f3
.byte 0x00
.global data_ov61_0217a4f4
data_ov61_0217a4f4: ; 0x0217a4f4
.byte 0x00
.global data_ov61_0217a4f5
data_ov61_0217a4f5: ; 0x0217a4f5
.byte 0x00
.global data_ov61_0217a4f6
data_ov61_0217a4f6: ; 0x0217a4f6
.byte 0x00
.global data_ov61_0217a4f7
data_ov61_0217a4f7: ; 0x0217a4f7
.byte 0x00
.global data_ov61_0217a4f8
data_ov61_0217a4f8: ; 0x0217a4f8
.byte 0x00
.global data_ov61_0217a4f9
data_ov61_0217a4f9: ; 0x0217a4f9
.byte 0x00
.global data_ov61_0217a4fa
data_ov61_0217a4fa: ; 0x0217a4fa
.byte 0x00
.global data_ov61_0217a4fb
data_ov61_0217a4fb: ; 0x0217a4fb
.byte 0x00
.global data_ov61_0217a4fc
data_ov61_0217a4fc: ; 0x0217a4fc
.byte 0x00
.global data_ov61_0217a4fd
data_ov61_0217a4fd: ; 0x0217a4fd
.byte 0x00
.global data_ov61_0217a4fe
data_ov61_0217a4fe: ; 0x0217a4fe
.byte 0x00
.global data_ov61_0217a4ff
data_ov61_0217a4ff: ; 0x0217a4ff
.byte 0x00
.global data_ov61_0217a500
data_ov61_0217a500: ; 0x0217a500
.byte 0x00
.global data_ov61_0217a501
data_ov61_0217a501: ; 0x0217a501
.byte 0x00
.global data_ov61_0217a502
data_ov61_0217a502: ; 0x0217a502
.byte 0x00
.global data_ov61_0217a503
data_ov61_0217a503: ; 0x0217a503
.byte 0x00
.global data_ov61_0217a504
data_ov61_0217a504: ; 0x0217a504
.byte 0x00
.global data_ov61_0217a505
data_ov61_0217a505: ; 0x0217a505
.byte 0x00
.global data_ov61_0217a506
data_ov61_0217a506: ; 0x0217a506
.byte 0x00
.global data_ov61_0217a507
data_ov61_0217a507: ; 0x0217a507
.byte 0x00
.global data_ov61_0217a508
data_ov61_0217a508: ; 0x0217a508
.byte 0x00
.global data_ov61_0217a509
data_ov61_0217a509: ; 0x0217a509
.byte 0x00
.global data_ov61_0217a50a
data_ov61_0217a50a: ; 0x0217a50a
.byte 0x00
.global data_ov61_0217a50b
data_ov61_0217a50b: ; 0x0217a50b
.byte 0x00
.global data_ov61_0217a50c
data_ov61_0217a50c: ; 0x0217a50c
.byte 0x00
.global data_ov61_0217a50d
data_ov61_0217a50d: ; 0x0217a50d
.byte 0x00
.global data_ov61_0217a50e
data_ov61_0217a50e: ; 0x0217a50e
.byte 0x00
.global data_ov61_0217a50f
data_ov61_0217a50f: ; 0x0217a50f
.byte 0x00
.global data_ov61_0217a510
data_ov61_0217a510: ; 0x0217a510
.byte 0x00
.global data_ov61_0217a511
data_ov61_0217a511: ; 0x0217a511
.byte 0x00
.global data_ov61_0217a512
data_ov61_0217a512: ; 0x0217a512
.byte 0x00
.global data_ov61_0217a513
data_ov61_0217a513: ; 0x0217a513
.byte 0x00
.global data_ov61_0217a514
data_ov61_0217a514: ; 0x0217a514
.byte 0x00
.global data_ov61_0217a515
data_ov61_0217a515: ; 0x0217a515
.byte 0x00
.global data_ov61_0217a516
data_ov61_0217a516: ; 0x0217a516
.byte 0x00
.global data_ov61_0217a517
data_ov61_0217a517: ; 0x0217a517
.byte 0x00
.global data_ov61_0217a518
data_ov61_0217a518: ; 0x0217a518
.byte 0x00
.global data_ov61_0217a519
data_ov61_0217a519: ; 0x0217a519
.byte 0x00
.global data_ov61_0217a51a
data_ov61_0217a51a: ; 0x0217a51a
.byte 0x00
.global data_ov61_0217a51b
data_ov61_0217a51b: ; 0x0217a51b
.byte 0x00
.global data_ov61_0217a51c
data_ov61_0217a51c: ; 0x0217a51c
.byte 0x00
.global data_ov61_0217a51d
data_ov61_0217a51d: ; 0x0217a51d
.byte 0x00
.global data_ov61_0217a51e
data_ov61_0217a51e: ; 0x0217a51e
.byte 0x00
.global data_ov61_0217a51f
data_ov61_0217a51f: ; 0x0217a51f
.byte 0x00
.global data_ov61_0217a520
data_ov61_0217a520: ; 0x0217a520
.byte 0x00
.global data_ov61_0217a521
data_ov61_0217a521: ; 0x0217a521
.byte 0x00
.global data_ov61_0217a522
data_ov61_0217a522: ; 0x0217a522
.byte 0x00
.global data_ov61_0217a523
data_ov61_0217a523: ; 0x0217a523
.byte 0x00
.global data_ov61_0217a524
data_ov61_0217a524: ; 0x0217a524
.byte 0x00
.global data_ov61_0217a525
data_ov61_0217a525: ; 0x0217a525
.byte 0x00
.global data_ov61_0217a526
data_ov61_0217a526: ; 0x0217a526
.byte 0x00
.global data_ov61_0217a527
data_ov61_0217a527: ; 0x0217a527
.byte 0x00
.global data_ov61_0217a528
data_ov61_0217a528: ; 0x0217a528
.byte 0x00
.global data_ov61_0217a529
data_ov61_0217a529: ; 0x0217a529
.byte 0x00
.global data_ov61_0217a52a
data_ov61_0217a52a: ; 0x0217a52a
.byte 0x00
.global data_ov61_0217a52b
data_ov61_0217a52b: ; 0x0217a52b
.byte 0x00
.global data_ov61_0217a52c
data_ov61_0217a52c: ; 0x0217a52c
.byte 0x00
.global data_ov61_0217a52d
data_ov61_0217a52d: ; 0x0217a52d
.byte 0x00
.global data_ov61_0217a52e
data_ov61_0217a52e: ; 0x0217a52e
.byte 0x00
.global data_ov61_0217a52f
data_ov61_0217a52f: ; 0x0217a52f
.byte 0x00
.global data_ov61_0217a530
data_ov61_0217a530: ; 0x0217a530
.byte 0x00
.global data_ov61_0217a531
data_ov61_0217a531: ; 0x0217a531
.byte 0x00
.global data_ov61_0217a532
data_ov61_0217a532: ; 0x0217a532
.byte 0x00
.global data_ov61_0217a533
data_ov61_0217a533: ; 0x0217a533
.byte 0x00
.global data_ov61_0217a534
data_ov61_0217a534: ; 0x0217a534
.byte 0x00
.global data_ov61_0217a535
data_ov61_0217a535: ; 0x0217a535
.byte 0x00
.global data_ov61_0217a536
data_ov61_0217a536: ; 0x0217a536
.byte 0x00
.global data_ov61_0217a537
data_ov61_0217a537: ; 0x0217a537
.byte 0x00
.global data_ov61_0217a538
data_ov61_0217a538: ; 0x0217a538
.byte 0x00
.global data_ov61_0217a539
data_ov61_0217a539: ; 0x0217a539
.byte 0x00
.global data_ov61_0217a53a
data_ov61_0217a53a: ; 0x0217a53a
.byte 0x00
.global data_ov61_0217a53b
data_ov61_0217a53b: ; 0x0217a53b
.byte 0x00
.global data_ov61_0217a53c
data_ov61_0217a53c: ; 0x0217a53c
.byte 0x00
.global data_ov61_0217a53d
data_ov61_0217a53d: ; 0x0217a53d
.byte 0x00
.global data_ov61_0217a53e
data_ov61_0217a53e: ; 0x0217a53e
.byte 0x00
.global data_ov61_0217a53f
data_ov61_0217a53f: ; 0x0217a53f
.byte 0x00
.global data_ov61_0217a540
data_ov61_0217a540: ; 0x0217a540
.byte 0x00
.global data_ov61_0217a541
data_ov61_0217a541: ; 0x0217a541
.byte 0x00
.global data_ov61_0217a542
data_ov61_0217a542: ; 0x0217a542
.byte 0x00
.global data_ov61_0217a543
data_ov61_0217a543: ; 0x0217a543
.byte 0x00
.global data_ov61_0217a544
data_ov61_0217a544: ; 0x0217a544
.byte 0x00
.global data_ov61_0217a545
data_ov61_0217a545: ; 0x0217a545
.byte 0x00
.global data_ov61_0217a546
data_ov61_0217a546: ; 0x0217a546
.byte 0x00
.global data_ov61_0217a547
data_ov61_0217a547: ; 0x0217a547
.byte 0x00
.global data_ov61_0217a548
data_ov61_0217a548: ; 0x0217a548
.byte 0x00
.global data_ov61_0217a549
data_ov61_0217a549: ; 0x0217a549
.byte 0x00
.global data_ov61_0217a54a
data_ov61_0217a54a: ; 0x0217a54a
.byte 0x00
.global data_ov61_0217a54b
data_ov61_0217a54b: ; 0x0217a54b
.byte 0x00
.global data_ov61_0217a54c
data_ov61_0217a54c: ; 0x0217a54c
.byte 0x00
.global data_ov61_0217a54d
data_ov61_0217a54d: ; 0x0217a54d
.byte 0x00
.global data_ov61_0217a54e
data_ov61_0217a54e: ; 0x0217a54e
.byte 0x00
.global data_ov61_0217a54f
data_ov61_0217a54f: ; 0x0217a54f
.byte 0x00
.global data_ov61_0217a550
data_ov61_0217a550: ; 0x0217a550
.byte 0x00
.global data_ov61_0217a551
data_ov61_0217a551: ; 0x0217a551
.byte 0x00
.global data_ov61_0217a552
data_ov61_0217a552: ; 0x0217a552
.byte 0x00
.global data_ov61_0217a553
data_ov61_0217a553: ; 0x0217a553
.byte 0x00
.global data_ov61_0217a554
data_ov61_0217a554: ; 0x0217a554
.byte 0x00
.global data_ov61_0217a555
data_ov61_0217a555: ; 0x0217a555
.byte 0x00
.global data_ov61_0217a556
data_ov61_0217a556: ; 0x0217a556
.byte 0x00
.global data_ov61_0217a557
data_ov61_0217a557: ; 0x0217a557
.byte 0x00
.global data_ov61_0217a558
data_ov61_0217a558: ; 0x0217a558
.byte 0x00
.global data_ov61_0217a559
data_ov61_0217a559: ; 0x0217a559
.byte 0x00
.global data_ov61_0217a55a
data_ov61_0217a55a: ; 0x0217a55a
.byte 0x00
.global data_ov61_0217a55b
data_ov61_0217a55b: ; 0x0217a55b
.byte 0x00
.global data_ov61_0217a55c
data_ov61_0217a55c: ; 0x0217a55c
.byte 0x00
.global data_ov61_0217a55d
data_ov61_0217a55d: ; 0x0217a55d
.byte 0x00
.global data_ov61_0217a55e
data_ov61_0217a55e: ; 0x0217a55e
.byte 0x00
.global data_ov61_0217a55f
data_ov61_0217a55f: ; 0x0217a55f
.byte 0x00
.global data_ov61_0217a560
data_ov61_0217a560: ; 0x0217a560
.byte 0x00
.global data_ov61_0217a561
data_ov61_0217a561: ; 0x0217a561
.byte 0x00
.global data_ov61_0217a562
data_ov61_0217a562: ; 0x0217a562
.byte 0x00
.global data_ov61_0217a563
data_ov61_0217a563: ; 0x0217a563
.byte 0x00
.global data_ov61_0217a564
data_ov61_0217a564: ; 0x0217a564
.byte 0x00
.global data_ov61_0217a565
data_ov61_0217a565: ; 0x0217a565
.byte 0x00
.global data_ov61_0217a566
data_ov61_0217a566: ; 0x0217a566
.byte 0x00
.global data_ov61_0217a567
data_ov61_0217a567: ; 0x0217a567
.byte 0x00
.global data_ov61_0217a568
data_ov61_0217a568: ; 0x0217a568
.byte 0x00
.global data_ov61_0217a569
data_ov61_0217a569: ; 0x0217a569
.byte 0x00
.global data_ov61_0217a56a
data_ov61_0217a56a: ; 0x0217a56a
.byte 0x00
.global data_ov61_0217a56b
data_ov61_0217a56b: ; 0x0217a56b
.byte 0x00
.global data_ov61_0217a56c
data_ov61_0217a56c: ; 0x0217a56c
.byte 0x00
.global data_ov61_0217a56d
data_ov61_0217a56d: ; 0x0217a56d
.byte 0x00
.global data_ov61_0217a56e
data_ov61_0217a56e: ; 0x0217a56e
.byte 0x00
.global data_ov61_0217a56f
data_ov61_0217a56f: ; 0x0217a56f
.byte 0x00
.global data_ov61_0217a570
data_ov61_0217a570: ; 0x0217a570
.byte 0x00
.global data_ov61_0217a571
data_ov61_0217a571: ; 0x0217a571
.byte 0x00
.global data_ov61_0217a572
data_ov61_0217a572: ; 0x0217a572
.byte 0x00
.global data_ov61_0217a573
data_ov61_0217a573: ; 0x0217a573
.byte 0x00
.global data_ov61_0217a574
data_ov61_0217a574: ; 0x0217a574
.byte 0x00
.global data_ov61_0217a575
data_ov61_0217a575: ; 0x0217a575
.byte 0x00
.global data_ov61_0217a576
data_ov61_0217a576: ; 0x0217a576
.byte 0x00
.global data_ov61_0217a577
data_ov61_0217a577: ; 0x0217a577
.byte 0x00
.global data_ov61_0217a578
data_ov61_0217a578: ; 0x0217a578
.byte 0x00
.global data_ov61_0217a579
data_ov61_0217a579: ; 0x0217a579
.byte 0x00
.global data_ov61_0217a57a
data_ov61_0217a57a: ; 0x0217a57a
.byte 0x00
.global data_ov61_0217a57b
data_ov61_0217a57b: ; 0x0217a57b
.byte 0x00
.global data_ov61_0217a57c
data_ov61_0217a57c: ; 0x0217a57c
.byte 0x00
.global data_ov61_0217a57d
data_ov61_0217a57d: ; 0x0217a57d
.byte 0x00
.global data_ov61_0217a57e
data_ov61_0217a57e: ; 0x0217a57e
.byte 0x00
.global data_ov61_0217a57f
data_ov61_0217a57f: ; 0x0217a57f
.byte 0x00
.global data_ov61_0217a580
data_ov61_0217a580: ; 0x0217a580
.byte 0x00
.global data_ov61_0217a581
data_ov61_0217a581: ; 0x0217a581
.byte 0x00
.global data_ov61_0217a582
data_ov61_0217a582: ; 0x0217a582
.byte 0x00
.global data_ov61_0217a583
data_ov61_0217a583: ; 0x0217a583
.byte 0x00
.global data_ov61_0217a584
data_ov61_0217a584: ; 0x0217a584
.byte 0x00
.global data_ov61_0217a585
data_ov61_0217a585: ; 0x0217a585
.byte 0x00
.global data_ov61_0217a586
data_ov61_0217a586: ; 0x0217a586
.byte 0x00
.global data_ov61_0217a587
data_ov61_0217a587: ; 0x0217a587
.byte 0x00
.global data_ov61_0217a588
data_ov61_0217a588: ; 0x0217a588
.byte 0x00
.global data_ov61_0217a589
data_ov61_0217a589: ; 0x0217a589
.byte 0x00
.global data_ov61_0217a58a
data_ov61_0217a58a: ; 0x0217a58a
.byte 0x00
.global data_ov61_0217a58b
data_ov61_0217a58b: ; 0x0217a58b
.byte 0x00
.global data_ov61_0217a58c
data_ov61_0217a58c: ; 0x0217a58c
.byte 0x00
.global data_ov61_0217a58d
data_ov61_0217a58d: ; 0x0217a58d
.byte 0x00
.global data_ov61_0217a58e
data_ov61_0217a58e: ; 0x0217a58e
.byte 0x00
.global data_ov61_0217a58f
data_ov61_0217a58f: ; 0x0217a58f
.byte 0x00
.global data_ov61_0217a590
data_ov61_0217a590: ; 0x0217a590
.byte 0x00
.global data_ov61_0217a591
data_ov61_0217a591: ; 0x0217a591
.byte 0x00
.global data_ov61_0217a592
data_ov61_0217a592: ; 0x0217a592
.byte 0x00
.global data_ov61_0217a593
data_ov61_0217a593: ; 0x0217a593
.byte 0x00
.global data_ov61_0217a594
data_ov61_0217a594: ; 0x0217a594
.byte 0x00
.global data_ov61_0217a595
data_ov61_0217a595: ; 0x0217a595
.byte 0x00
.global data_ov61_0217a596
data_ov61_0217a596: ; 0x0217a596
.byte 0x00
.global data_ov61_0217a597
data_ov61_0217a597: ; 0x0217a597
.byte 0x00
.global data_ov61_0217a598
data_ov61_0217a598: ; 0x0217a598
.byte 0x00
.global data_ov61_0217a599
data_ov61_0217a599: ; 0x0217a599
.byte 0x00
.global data_ov61_0217a59a
data_ov61_0217a59a: ; 0x0217a59a
.byte 0x00
.global data_ov61_0217a59b
data_ov61_0217a59b: ; 0x0217a59b
.byte 0x00
.global data_ov61_0217a59c
data_ov61_0217a59c: ; 0x0217a59c
.byte 0x00
.global data_ov61_0217a59d
data_ov61_0217a59d: ; 0x0217a59d
.byte 0x00
.global data_ov61_0217a59e
data_ov61_0217a59e: ; 0x0217a59e
.byte 0x00
.global data_ov61_0217a59f
data_ov61_0217a59f: ; 0x0217a59f
.byte 0x00
.global data_ov61_0217a5a0
data_ov61_0217a5a0: ; 0x0217a5a0
.byte 0x00
.global data_ov61_0217a5a1
data_ov61_0217a5a1: ; 0x0217a5a1
.byte 0x00
.global data_ov61_0217a5a2
data_ov61_0217a5a2: ; 0x0217a5a2
.byte 0x00
.global data_ov61_0217a5a3
data_ov61_0217a5a3: ; 0x0217a5a3
.byte 0x00
.global data_ov61_0217a5a4
data_ov61_0217a5a4: ; 0x0217a5a4
.byte 0x00
.global data_ov61_0217a5a5
data_ov61_0217a5a5: ; 0x0217a5a5
.byte 0x00
.global data_ov61_0217a5a6
data_ov61_0217a5a6: ; 0x0217a5a6
.byte 0x00
.global data_ov61_0217a5a7
data_ov61_0217a5a7: ; 0x0217a5a7
.byte 0x00
.global data_ov61_0217a5a8
data_ov61_0217a5a8: ; 0x0217a5a8
.byte 0x00
.global data_ov61_0217a5a9
data_ov61_0217a5a9: ; 0x0217a5a9
.byte 0x00
.global data_ov61_0217a5aa
data_ov61_0217a5aa: ; 0x0217a5aa
.byte 0x00
.global data_ov61_0217a5ab
data_ov61_0217a5ab: ; 0x0217a5ab
.byte 0x00
.global data_ov61_0217a5ac
data_ov61_0217a5ac: ; 0x0217a5ac
.byte 0x00
.global data_ov61_0217a5ad
data_ov61_0217a5ad: ; 0x0217a5ad
.byte 0x00
.global data_ov61_0217a5ae
data_ov61_0217a5ae: ; 0x0217a5ae
.byte 0x00
.global data_ov61_0217a5af
data_ov61_0217a5af: ; 0x0217a5af
.byte 0x00
.global data_ov61_0217a5b0
data_ov61_0217a5b0: ; 0x0217a5b0
.byte 0x00
.global data_ov61_0217a5b1
data_ov61_0217a5b1: ; 0x0217a5b1
.byte 0x00
.global data_ov61_0217a5b2
data_ov61_0217a5b2: ; 0x0217a5b2
.byte 0x00
.global data_ov61_0217a5b3
data_ov61_0217a5b3: ; 0x0217a5b3
.byte 0x00
.global data_ov61_0217a5b4
data_ov61_0217a5b4: ; 0x0217a5b4
.byte 0x00
.global data_ov61_0217a5b5
data_ov61_0217a5b5: ; 0x0217a5b5
.byte 0x00
.global data_ov61_0217a5b6
data_ov61_0217a5b6: ; 0x0217a5b6
.byte 0x00
.global data_ov61_0217a5b7
data_ov61_0217a5b7: ; 0x0217a5b7
.byte 0x00
.global data_ov61_0217a5b8
data_ov61_0217a5b8: ; 0x0217a5b8
.byte 0x00
.global data_ov61_0217a5b9
data_ov61_0217a5b9: ; 0x0217a5b9
.byte 0x00
.global data_ov61_0217a5ba
data_ov61_0217a5ba: ; 0x0217a5ba
.byte 0x00
.global data_ov61_0217a5bb
data_ov61_0217a5bb: ; 0x0217a5bb
.byte 0x00
.global data_ov61_0217a5bc
data_ov61_0217a5bc: ; 0x0217a5bc
.byte 0x00
.global data_ov61_0217a5bd
data_ov61_0217a5bd: ; 0x0217a5bd
.byte 0x00
.global data_ov61_0217a5be
data_ov61_0217a5be: ; 0x0217a5be
.byte 0x00
.global data_ov61_0217a5bf
data_ov61_0217a5bf: ; 0x0217a5bf
.byte 0x00
.global data_ov61_0217a5c0
data_ov61_0217a5c0: ; 0x0217a5c0
.byte 0x00
.global data_ov61_0217a5c1
data_ov61_0217a5c1: ; 0x0217a5c1
.byte 0x00
.global data_ov61_0217a5c2
data_ov61_0217a5c2: ; 0x0217a5c2
.byte 0x00
.global data_ov61_0217a5c3
data_ov61_0217a5c3: ; 0x0217a5c3
.byte 0x00
.global data_ov61_0217a5c4
data_ov61_0217a5c4: ; 0x0217a5c4
.byte 0x00
.global data_ov61_0217a5c5
data_ov61_0217a5c5: ; 0x0217a5c5
.byte 0x00
.global data_ov61_0217a5c6
data_ov61_0217a5c6: ; 0x0217a5c6
.byte 0x00
.global data_ov61_0217a5c7
data_ov61_0217a5c7: ; 0x0217a5c7
.byte 0x00
.global data_ov61_0217a5c8
data_ov61_0217a5c8: ; 0x0217a5c8
.byte 0x00
.global data_ov61_0217a5c9
data_ov61_0217a5c9: ; 0x0217a5c9
.byte 0x00
.global data_ov61_0217a5ca
data_ov61_0217a5ca: ; 0x0217a5ca
.byte 0x00
.global data_ov61_0217a5cb
data_ov61_0217a5cb: ; 0x0217a5cb
.byte 0x00
.global data_ov61_0217a5cc
data_ov61_0217a5cc: ; 0x0217a5cc
.byte 0x00
.global data_ov61_0217a5cd
data_ov61_0217a5cd: ; 0x0217a5cd
.byte 0x00
.global data_ov61_0217a5ce
data_ov61_0217a5ce: ; 0x0217a5ce
.byte 0x00
.global data_ov61_0217a5cf
data_ov61_0217a5cf: ; 0x0217a5cf
.byte 0x00
.global data_ov61_0217a5d0
data_ov61_0217a5d0: ; 0x0217a5d0
.byte 0x00
.global data_ov61_0217a5d1
data_ov61_0217a5d1: ; 0x0217a5d1
.byte 0x00
.global data_ov61_0217a5d2
data_ov61_0217a5d2: ; 0x0217a5d2
.byte 0x00
.global data_ov61_0217a5d3
data_ov61_0217a5d3: ; 0x0217a5d3
.byte 0x00
.global data_ov61_0217a5d4
data_ov61_0217a5d4: ; 0x0217a5d4
.byte 0x00
.global data_ov61_0217a5d5
data_ov61_0217a5d5: ; 0x0217a5d5
.byte 0x00
.global data_ov61_0217a5d6
data_ov61_0217a5d6: ; 0x0217a5d6
.byte 0x00
.global data_ov61_0217a5d7
data_ov61_0217a5d7: ; 0x0217a5d7
.byte 0x00
.global data_ov61_0217a5d8
data_ov61_0217a5d8: ; 0x0217a5d8
.byte 0x00
.global data_ov61_0217a5d9
data_ov61_0217a5d9: ; 0x0217a5d9
.byte 0x00
.global data_ov61_0217a5da
data_ov61_0217a5da: ; 0x0217a5da
.byte 0x00
.global data_ov61_0217a5db
data_ov61_0217a5db: ; 0x0217a5db
.byte 0x00
.global data_ov61_0217a5dc
data_ov61_0217a5dc: ; 0x0217a5dc
.byte 0x00
.global data_ov61_0217a5dd
data_ov61_0217a5dd: ; 0x0217a5dd
.byte 0x00
.global data_ov61_0217a5de
data_ov61_0217a5de: ; 0x0217a5de
.byte 0x00
.global data_ov61_0217a5df
data_ov61_0217a5df: ; 0x0217a5df
.byte 0x00
.global data_ov61_0217a5e0
data_ov61_0217a5e0: ; 0x0217a5e0
.byte 0x00
.global data_ov61_0217a5e1
data_ov61_0217a5e1: ; 0x0217a5e1
.byte 0x00
.global data_ov61_0217a5e2
data_ov61_0217a5e2: ; 0x0217a5e2
.byte 0x00
.global data_ov61_0217a5e3
data_ov61_0217a5e3: ; 0x0217a5e3
.byte 0x00
.global data_ov61_0217a5e4
data_ov61_0217a5e4: ; 0x0217a5e4
.byte 0xfd
.global data_ov61_0217a5e5
data_ov61_0217a5e5: ; 0x0217a5e5
.byte 0xfc
.global data_ov61_0217a5e6
data_ov61_0217a5e6: ; 0x0217a5e6
.byte 0x1e
.global data_ov61_0217a5e7
data_ov61_0217a5e7: ; 0x0217a5e7
.byte 0x66
.global data_ov61_0217a5e8
data_ov61_0217a5e8: ; 0x0217a5e8
.byte 0x6a
.global data_ov61_0217a5e9
data_ov61_0217a5e9: ; 0x0217a5e9
.byte 0xb2
.global data_ov61_0217a5ea
data_ov61_0217a5ea: ; 0x0217a5ea
.byte 0x00
.global data_ov61_0217a5eb
data_ov61_0217a5eb: ; 0x0217a5eb
.byte 0x00
.global data_ov61_0217a5ec
data_ov61_0217a5ec: ; 0x0217a5ec
.word data_ov61_0217e974
.global data_ov61_0217a5f0
data_ov61_0217a5f0: ; 0x0217a5f0
.word data_ov61_0217e980
.global data_ov61_0217a5f4
data_ov61_0217a5f4: ; 0x0217a5f4
.word data_ov61_0217e990
.global data_ov61_0217a5f8
data_ov61_0217a5f8: ; 0x0217a5f8
.word data_ov61_0217e99c
.global data_ov61_0217a5fc
data_ov61_0217a5fc: ; 0x0217a5fc
.word data_ov61_0217e9a8
.global data_ov61_0217a600
data_ov61_0217a600: ; 0x0217a600
.word data_ov61_0217e9b4
.global data_ov61_0217a604
data_ov61_0217a604: ; 0x0217a604
.word data_ov61_0217e9c4
.global data_ov61_0217a608
.section .init, 4, 1, 4
.section .ctor, 4, 1, 4
.data
.global data_ov61_0217a620
data_ov61_0217a620: ; 0x0217a620
.ascii "https://nas.test.nintendowifi.net/ac"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a648
data_ov61_0217a648: ; 0x0217a648
.ascii "https://nas.dev.nintendowifi.net/ac"
.byte 0x00
.global data_ov61_0217a66c
data_ov61_0217a66c: ; 0x0217a66c
.ascii "https://nas.nintendowifi.net/ac"
.byte 0x00
.global data_ov61_0217a68c
data_ov61_0217a68c: ; 0x0217a68c
.ascii "%c%s%c%s"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a698
data_ov61_0217a698: ; 0x0217a698
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a69c
data_ov61_0217a69c: ; 0x0217a69c
.ascii "GPCM"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a6a4
data_ov61_0217a6a4: ; 0x0217a6a4
.ascii "MAT"
.byte 0x00
.global data_ov61_0217a6a8
data_ov61_0217a6a8: ; 0x0217a6a8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a6ac
data_ov61_0217a6ac: ; 0x0217a6ac
.ascii "SCM"
.byte 0x00
.global data_ov61_0217a6b0
data_ov61_0217a6b0: ; 0x0217a6b0
.ascii "SCN"
.byte 0x00
.global data_ov61_0217a6b4
data_ov61_0217a6b4: ; 0x0217a6b4
.ascii "I have authorized your request to add me to your list"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217a6ec
data_ov61_0217a6ec: ; 0x0217a6ec
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a6f0
data_ov61_0217a6f0: ; 0x0217a6f0
.ascii "%c%c%c%c"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a6fc
data_ov61_0217a6fc: ; 0x0217a6fc
.ascii " and ()"
.byte 0x00
.global data_ov61_0217a704
data_ov61_0217a704: ; 0x0217a704
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a708
data_ov61_0217a708: ; 0x0217a708
.ascii "%u"
.byte 0x00, 0x00
.global data_ov61_0217a70c
data_ov61_0217a70c: ; 0x0217a70c
.ascii "FME"
.byte 0x00
.global data_ov61_0217a710
data_ov61_0217a710: ; 0x0217a710
.ascii "Y"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217a714
data_ov61_0217a714: ; 0x0217a714
.ascii "N"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217a718
data_ov61_0217a718: ; 0x0217a718
.ascii "MDF"
.byte 0x00
.global data_ov61_0217a71c
data_ov61_0217a71c: ; 0x0217a71c
.ascii "VER"
.byte 0x00
.global data_ov61_0217a720
data_ov61_0217a720: ; 0x0217a720
.ascii "Init state"
.byte 0x00, 0x00
.global data_ov61_0217a72c
data_ov61_0217a72c: ; 0x0217a72c
.ascii "Server full"
.byte 0x00
.global data_ov61_0217a738
data_ov61_0217a738: ; 0x0217a738
.ascii "Unknown connect attempt"
.byte 0x00
.global data_ov61_0217a750
data_ov61_0217a750: ; 0x0217a750
.ascii "SCM"
.byte 0x00
.global data_ov61_0217a754
data_ov61_0217a754: ; 0x0217a754
.ascii "SCN"
.byte 0x00
.global data_ov61_0217a758
data_ov61_0217a758: ; 0x0217a758
.ascii "dwc_pid"
.byte 0x00
.global data_ov61_0217a760
data_ov61_0217a760: ; 0x0217a760
.ascii "dwc_mtype"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217a76c
data_ov61_0217a76c: ; 0x0217a76c
.ascii "dwc_mresv"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217a778
data_ov61_0217a778: ; 0x0217a778
.ascii "dwc_mver"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a784
data_ov61_0217a784: ; 0x0217a784
.ascii "dwc_eval"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a790
data_ov61_0217a790: ; 0x0217a790
.ascii "%s and (%s)"
.byte 0x00
.global data_ov61_0217a79c
data_ov61_0217a79c: ; 0x0217a79c
.ascii "%s = %u"
.byte 0x00
.global data_ov61_0217a7a4
data_ov61_0217a7a4: ; 0x0217a7a4
.ascii "%s = %d and %s != %u and maxplayers = %d and numplayers < %d and %s = %d and %s != %s"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217a7fc
data_ov61_0217a7fc: ; 0x0217a7fc
.ascii "/%u"
.byte 0x00
.global data_ov61_0217a800
data_ov61_0217a800: ; 0x0217a800
.ascii "SBCM"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a808
data_ov61_0217a808: ; 0x0217a808
.ascii "%s%dv%s"
.byte 0x00
.global data_ov61_0217a810
data_ov61_0217a810: ; 0x0217a810
.ascii "GPCM"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a818
data_ov61_0217a818: ; 0x0217a818
.ascii "MAT"
.byte 0x00
.global data_ov61_0217a81c
data_ov61_0217a81c: ; 0x0217a81c
.ascii "numplayers"
.byte 0x00, 0x00
.global data_ov61_0217a828
data_ov61_0217a828: ; 0x0217a828
.ascii "maxplayers"
.byte 0x00, 0x00
.global data_ov61_0217a834
data_ov61_0217a834: ; 0x0217a834
.ascii "DT"
.byte 0x00, 0x00
.global data_ov61_0217a838
data_ov61_0217a838: ; 0x0217a838
.ascii "NWCUSBAP"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a844
data_ov61_0217a844: ; 0x0217a844
.ascii "NINTENDO-DS"
.byte 0x00
.global data_ov61_0217a850
data_ov61_0217a850: ; 0x0217a850
.word data_ov61_0217a89c
.global data_ov61_0217a854
data_ov61_0217a854: ; 0x0217a854
.word data_ov61_0217a860
.global data_ov61_0217a858
data_ov61_0217a858: ; 0x0217a858
.word data_ov61_0217a880
.global data_ov61_0217a85c
data_ov61_0217a85c: ; 0x0217a85c
.word data_ov61_0217a870
.global data_ov61_0217a860
data_ov61_0217a860: ; 0x0217a860
.ascii "gwi'6&fs=0Nf~"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217a870
data_ov61_0217a870: ; 0x0217a870
.ascii "%(egEr)ag(s&m"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217a880
data_ov61_0217a880: ; 0x0217a880
.ascii "952uybjnpmu903bia@bk5m[-"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a89c
data_ov61_0217a89c: ; 0x0217a89c
.ascii "38g6zxjk20gvmv]6^=j&%vY1"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a8b8
data_ov61_0217a8b8: ; 0x0217a8b8
.ascii "NDWCSHAP"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a8c4
data_ov61_0217a8c4: ; 0x0217a8c4
.ascii "NWCUSBAP"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a8d0
data_ov61_0217a8d0: ; 0x0217a8d0
.word data_ov61_0217a8ec
.global data_ov61_0217a8d4
data_ov61_0217a8d4: ; 0x0217a8d4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a8d8
data_ov61_0217a8d8: ; 0x0217a8d8
.byte 0x00, 0x10, 0x00, 0x00
.global data_ov61_0217a8dc
data_ov61_0217a8dc: ; 0x0217a8dc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a8e0
data_ov61_0217a8e0: ; 0x0217a8e0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a8e4
data_ov61_0217a8e4: ; 0x0217a8e4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a8e8
data_ov61_0217a8e8: ; 0x0217a8e8
.byte 0x20, 0x4e, 0x00, 0x00
.global data_ov61_0217a8ec
data_ov61_0217a8ec: ; 0x0217a8ec
.ascii "https://nas.test.nintendowifi.net/ac"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a914
data_ov61_0217a914: ; 0x0217a914
.ascii "ALLOC DWCauth"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217a924
data_ov61_0217a924: ; 0x0217a924
.ascii "FREE DWCauth"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a934
data_ov61_0217a934: ; 0x0217a934
.ascii "https://nas.nintendowifi.net/ac"
.byte 0x00
.global data_ov61_0217a954
data_ov61_0217a954: ; 0x0217a954
.ascii "ALLOC bmwork"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a964
data_ov61_0217a964: ; 0x0217a964
.ascii "FREE bmwork"
.byte 0x00
.global data_ov61_0217a970
data_ov61_0217a970: ; 0x0217a970
.ascii "Date"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a978
data_ov61_0217a978: ; 0x0217a978
.ascii "httpresult"
.byte 0x00, 0x00
.global data_ov61_0217a984
data_ov61_0217a984: ; 0x0217a984
.ascii "returncd"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a990
data_ov61_0217a990: ; 0x0217a990
.ascii "token"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217a998
data_ov61_0217a998: ; 0x0217a998
.ascii "locator"
.byte 0x00
.global data_ov61_0217a9a0
data_ov61_0217a9a0: ; 0x0217a9a0
.ascii "challenge"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217a9ac
data_ov61_0217a9ac: ; 0x0217a9ac
.ascii "datetime"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217a9b8
data_ov61_0217a9b8: ; 0x0217a9b8
.ascii "Set-Cookie"
.byte 0x00, 0x00
.global data_ov61_0217a9c4
data_ov61_0217a9c4: ; 0x0217a9c4
.ascii "acctcreate"
.byte 0x00, 0x00
.global data_ov61_0217a9d0
data_ov61_0217a9d0: ; 0x0217a9d0
.ascii "action"
.byte 0x00, 0x00
.global data_ov61_0217a9d8
data_ov61_0217a9d8: ; 0x0217a9d8
.ascii "login"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217a9e0
data_ov61_0217a9e0: ; 0x0217a9e0
.ascii "gsbrcd"
.byte 0x00, 0x00
.global data_ov61_0217a9e8
data_ov61_0217a9e8: ; 0x0217a9e8
.ascii "Y"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217a9ec
data_ov61_0217a9ec: ; 0x0217a9ec
.ascii "iswfc"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217a9f4
data_ov61_0217a9f4: ; 0x0217a9f4
.ascii "ingamesn"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217aa00
data_ov61_0217aa00: ; 0x0217aa00
.ascii "%013llu"
.byte 0x00
.global data_ov61_0217aa08
data_ov61_0217aa08: ; 0x0217aa08
.ascii "%03u"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217aa10
data_ov61_0217aa10: ; 0x0217aa10
.ascii "%02x"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217aa18
data_ov61_0217aa18: ; 0x0217aa18
.ascii "%02x%02x"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217aa24
data_ov61_0217aa24: ; 0x0217aa24
.ascii "%02d%02d%02d%02d%02d%02d"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217aa40
data_ov61_0217aa40: ; 0x0217aa40
.ascii "%02d:0000000-00"
.byte 0x00
.global data_ov61_0217aa50
data_ov61_0217aa50: ; 0x0217aa50
.ascii "%03d%03d"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217aa5c
data_ov61_0217aa5c: ; 0x0217aa5c
.ascii "sdkver"
.byte 0x00, 0x00
.global data_ov61_0217aa64
data_ov61_0217aa64: ; 0x0217aa64
.ascii "userid"
.byte 0x00, 0x00
.global data_ov61_0217aa6c
data_ov61_0217aa6c: ; 0x0217aa6c
.ascii "passwd"
.byte 0x00, 0x00
.global data_ov61_0217aa74
data_ov61_0217aa74: ; 0x0217aa74
.ascii "bssid"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217aa7c
data_ov61_0217aa7c: ; 0x0217aa7c
.ascii "apinfo"
.byte 0x00, 0x00
.global data_ov61_0217aa84
data_ov61_0217aa84: ; 0x0217aa84
.ascii "gamecd"
.byte 0x00, 0x00
.global data_ov61_0217aa8c
data_ov61_0217aa8c: ; 0x0217aa8c
.ascii "makercd"
.byte 0x00
.global data_ov61_0217aa94
data_ov61_0217aa94: ; 0x0217aa94
.ascii "unitcd"
.byte 0x00, 0x00
.global data_ov61_0217aa9c
data_ov61_0217aa9c: ; 0x0217aa9c
.ascii "macadr"
.byte 0x00, 0x00
.global data_ov61_0217aaa4
data_ov61_0217aaa4: ; 0x0217aaa4
.ascii "lang"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217aaac
data_ov61_0217aaac: ; 0x0217aaac
.ascii "birth"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217aab4
data_ov61_0217aab4: ; 0x0217aab4
.ascii "devtime"
.byte 0x00
.global data_ov61_0217aabc
data_ov61_0217aabc: ; 0x0217aabc
.ascii "devname"
.byte 0x00
.global data_ov61_0217aac4
data_ov61_0217aac4: ; 0x0217aac4
.ascii "ssid"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217aacc
data_ov61_0217aacc: ; 0x0217aacc
.ascii "Nitro WiFi SDK/%d.%d"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217aae4
data_ov61_0217aae4: ; 0x0217aae4
.ascii "User-Agent"
.byte 0x00, 0x00
.global data_ov61_0217aaf0
data_ov61_0217aaf0: ; 0x0217aaf0
.ascii "HTTP_X_GAMECD"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ab00
data_ov61_0217ab00: ; 0x0217ab00
.word data_ov61_0217b89c
.global data_ov61_0217ab04
data_ov61_0217ab04: ; 0x0217ab04
.word data_ov61_0217b770
.global data_ov61_0217ab08
data_ov61_0217ab08: ; 0x0217ab08
.word data_ov61_0217ba50
.global data_ov61_0217ab0c
data_ov61_0217ab0c: ; 0x0217ab0c
.word data_ov61_0217bb2c
.global data_ov61_0217ab10
data_ov61_0217ab10: ; 0x0217ab10
.word data_ov61_0217b008
.global data_ov61_0217ab14
data_ov61_0217ab14: ; 0x0217ab14
.word data_ov61_0217b2a4
.global data_ov61_0217ab18
data_ov61_0217ab18: ; 0x0217ab18
.word data_ov61_0217b38c
.global data_ov61_0217ab1c
data_ov61_0217ab1c: ; 0x0217ab1c
.word data_ov61_0217b154
.global data_ov61_0217ab20
data_ov61_0217ab20: ; 0x0217ab20
.word data_ov61_0217b658
.global data_ov61_0217ab24
data_ov61_0217ab24: ; 0x0217ab24
.word data_ov61_0217b538
.global data_ov61_0217ab28
data_ov61_0217ab28: ; 0x0217ab28
.word data_ov61_0217b450
.global data_ov61_0217ab2c
data_ov61_0217ab2c: ; 0x0217ab2c
.ascii "ALLOC http->lowrecvbuf"
.byte 0x00, 0x00
.global data_ov61_0217ab44
data_ov61_0217ab44: ; 0x0217ab44
.ascii "ALLOC http->lowsendbuf"
.byte 0x00, 0x00
.global data_ov61_0217ab5c
data_ov61_0217ab5c: ; 0x0217ab5c
.ascii "Connection"
.byte 0x00, 0x00
.global data_ov61_0217ab68
data_ov61_0217ab68: ; 0x0217ab68
.ascii "close"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ab70
data_ov61_0217ab70: ; 0x0217ab70
.byte 0x0d, 0x0a, 0x0d, 0x0a
.global data_ov61_0217ab74
data_ov61_0217ab74: ; 0x0217ab74
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217ab78
data_ov61_0217ab78: ; 0x0217ab78
.ascii "%d"
.byte 0x00, 0x00
.global data_ov61_0217ab7c
data_ov61_0217ab7c: ; 0x0217ab7c
.ascii "Content-Length"
.byte 0x00, 0x00
.global data_ov61_0217ab8c
data_ov61_0217ab8c: ; 0x0217ab8c
.ascii "Content-Length: "
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217aba0
data_ov61_0217aba0: ; 0x0217aba0
.byte 0x0d, 0x0a, 0x00, 0x00
.global data_ov61_0217aba4
data_ov61_0217aba4: ; 0x0217aba4
.ascii "FREE http->lowrecvbuf"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217abbc
data_ov61_0217abbc: ; 0x0217abbc
.ascii "FREE http->lowsendbuf"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217abd4
data_ov61_0217abd4: ; 0x0217abd4
.ascii "POST /%s HTTP/1.0\r\nContent-type: application/x-www-form-urlencoded\r\nHost: %s\r\n\r\n"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217ac28
data_ov61_0217ac28: ; 0x0217ac28
.ascii "GET /%s HTTP/1.0\r\nHost: %s\r\n\r\n"
.byte 0x00, 0x00
.global data_ov61_0217ac48
data_ov61_0217ac48: ; 0x0217ac48
.ascii "%s: %s\r\n"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217ac54
data_ov61_0217ac54: ; 0x0217ac54
.ascii "%s="
.byte 0x00
.global data_ov61_0217ac58
data_ov61_0217ac58: ; 0x0217ac58
.ascii "&%s="
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217ac60
data_ov61_0217ac60: ; 0x0217ac60
.ascii "%s"
.byte 0x00, 0x00
.global data_ov61_0217ac64
data_ov61_0217ac64: ; 0x0217ac64
.ascii "ALLOC buf->buffer"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ac78
data_ov61_0217ac78: ; 0x0217ac78
.ascii "FREE buf->buffer"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217ac8c
data_ov61_0217ac8c: ; 0x0217ac8c
.ascii "ALLOC newptr"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217ac9c
data_ov61_0217ac9c: ; 0x0217ac9c
.ascii "http://"
.byte 0x00
.global data_ov61_0217aca4
data_ov61_0217aca4: ; 0x0217aca4
.ascii "https://"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217acb0
data_ov61_0217acb0: ; 0x0217acb0
.ascii ":"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217acb4
data_ov61_0217acb4: ; 0x0217acb4
.ascii "/"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217acb8
data_ov61_0217acb8: ; 0x0217acb8
.ascii "ALLOC result->entry[i].label"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217acd8
data_ov61_0217acd8: ; 0x0217acd8
.ascii "ALLOC result->entry[i].value"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217acf8
data_ov61_0217acf8: ; 0x0217acf8
.ascii "FREE result->entry[i].label"
.byte 0x00
.global data_ov61_0217ad14
data_ov61_0217ad14: ; 0x0217ad14
.ascii "FREE result->entry[i].value"
.byte 0x00
.global data_ov61_0217ad30
data_ov61_0217ad30: ; 0x0217ad30
.ascii " "
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ad34
data_ov61_0217ad34: ; 0x0217ad34
.ascii "httpresult"
.byte 0x00, 0x00
.global data_ov61_0217ad40
data_ov61_0217ad40: ; 0x0217ad40
.ascii "200"
.byte 0x00
.global data_ov61_0217ad44
data_ov61_0217ad44: ; 0x0217ad44
.ascii ": "
.byte 0x00, 0x00
.global data_ov61_0217ad48
data_ov61_0217ad48: ; 0x0217ad48
.ascii "="
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ad4c
data_ov61_0217ad4c: ; 0x0217ad4c
.ascii "&"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ad50
data_ov61_0217ad50: ; 0x0217ad50
.ascii "FREE array_entry[i].label"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ad6c
data_ov61_0217ad6c: ; 0x0217ad6c
.ascii "FREE array_entry[i].value"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ad88
data_ov61_0217ad88: ; 0x0217ad88
.word data_ov61_0217ad8c
.global data_ov61_0217ad8c
data_ov61_0217ad8c: ; 0x0217ad8c
.ascii "http://conntest.nintendowifi.net/"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217adb0
data_ov61_0217adb0: ; 0x0217adb0
.ascii "ALLOC DWCnetcheck"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217adc4
data_ov61_0217adc4: ; 0x0217adc4
.ascii "ALLOC DWChttp"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217add4
data_ov61_0217add4: ; 0x0217add4
.ascii "FREE DWChttp"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217ade4
data_ov61_0217ade4: ; 0x0217ade4
.ascii "FREE DWCnetcheck->body_302"
.byte 0x00, 0x00
.global data_ov61_0217ae00
data_ov61_0217ae00: ; 0x0217ae00
.ascii "FREE DWCnetcheck->body_wayport"
.byte 0x00, 0x00
.global data_ov61_0217ae20
data_ov61_0217ae20: ; 0x0217ae20
.ascii "FREE DWCnetcheck"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217ae34
data_ov61_0217ae34: ; 0x0217ae34
.ascii "ALLOC DWCnetcheck->body_302"
.byte 0x00
.global data_ov61_0217ae50
data_ov61_0217ae50: ; 0x0217ae50
.ascii "ALLOC url"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ae5c
data_ov61_0217ae5c: ; 0x0217ae5c
.ascii "ALLOC data_len"
.byte 0x00, 0x00
.global data_ov61_0217ae6c
data_ov61_0217ae6c: ; 0x0217ae6c
.ascii "ALLOC wait_len"
.byte 0x00, 0x00
.global data_ov61_0217ae7c
data_ov61_0217ae7c: ; 0x0217ae7c
.ascii "ALLOC DWCnetcheck->body_wayport"
.byte 0x00
.global data_ov61_0217ae9c
data_ov61_0217ae9c: ; 0x0217ae9c
.ascii "httpresult"
.byte 0x00, 0x00
.global data_ov61_0217aea8
data_ov61_0217aea8: ; 0x0217aea8
.ascii "https://nas.nintendowifi.net/ac"
.byte 0x00
.global data_ov61_0217aec8
data_ov61_0217aec8: ; 0x0217aec8
.ascii "action"
.byte 0x00, 0x00
.global data_ov61_0217aed0
data_ov61_0217aed0: ; 0x0217aed0
.ascii "message"
.byte 0x00
.global data_ov61_0217aed8
data_ov61_0217aed8: ; 0x0217aed8
.ascii "HotSpotResponse"
.byte 0x00
.global data_ov61_0217aee8
data_ov61_0217aee8: ; 0x0217aee8
.ascii "parse"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217aef0
data_ov61_0217aef0: ; 0x0217aef0
.ascii "HTML"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217aef8
data_ov61_0217aef8: ; 0x0217aef8
.ascii "returncd"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217af04
data_ov61_0217af04: ; 0x0217af04
.ascii "url"
.byte 0x00
.global data_ov61_0217af08
data_ov61_0217af08: ; 0x0217af08
.ascii "data"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217af10
data_ov61_0217af10: ; 0x0217af10
.ascii "wait"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217af18
data_ov61_0217af18: ; 0x0217af18
.ascii "FREE url"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217af24
data_ov61_0217af24: ; 0x0217af24
.ascii "FREE data"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217af30
data_ov61_0217af30: ; 0x0217af30
.ascii "FREE wait"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217af3c
data_ov61_0217af3c: ; 0x0217af3c
.ascii "Dec"
.byte 0x00
.global data_ov61_0217af40
data_ov61_0217af40: ; 0x0217af40
.ascii "Jul"
.byte 0x00
.global data_ov61_0217af44
data_ov61_0217af44: ; 0x0217af44
.ascii "Oct"
.byte 0x00
.global data_ov61_0217af48
data_ov61_0217af48: ; 0x0217af48
.ascii "Sep"
.byte 0x00
.global data_ov61_0217af4c
data_ov61_0217af4c: ; 0x0217af4c
.ascii "Aug"
.byte 0x00
.global data_ov61_0217af50
data_ov61_0217af50: ; 0x0217af50
.ascii "Nov"
.byte 0x00
.global data_ov61_0217af54
data_ov61_0217af54: ; 0x0217af54
.ascii "Jun"
.byte 0x00
.global data_ov61_0217af58
data_ov61_0217af58: ; 0x0217af58
.ascii "May"
.byte 0x00
.global data_ov61_0217af5c
data_ov61_0217af5c: ; 0x0217af5c
.ascii "Apr"
.byte 0x00
.global data_ov61_0217af60
data_ov61_0217af60: ; 0x0217af60
.ascii "Mar"
.byte 0x00
.global data_ov61_0217af64
data_ov61_0217af64: ; 0x0217af64
.ascii "Feb"
.byte 0x00
.global data_ov61_0217af68
data_ov61_0217af68: ; 0x0217af68
.ascii "Jan"
.byte 0x00
.global data_ov61_0217af6c
data_ov61_0217af6c: ; 0x0217af6c
.word data_ov61_0217af68
.global data_ov61_0217af70
data_ov61_0217af70: ; 0x0217af70
.word data_ov61_0217af64
.global data_ov61_0217af74
data_ov61_0217af74: ; 0x0217af74
.word data_ov61_0217af60
.global data_ov61_0217af78
data_ov61_0217af78: ; 0x0217af78
.word data_ov61_0217af5c
.global data_ov61_0217af7c
data_ov61_0217af7c: ; 0x0217af7c
.word data_ov61_0217af58
.global data_ov61_0217af80
data_ov61_0217af80: ; 0x0217af80
.word data_ov61_0217af54
.global data_ov61_0217af84
data_ov61_0217af84: ; 0x0217af84
.word data_ov61_0217af40
.global data_ov61_0217af88
data_ov61_0217af88: ; 0x0217af88
.word data_ov61_0217af4c
.global data_ov61_0217af8c
data_ov61_0217af8c: ; 0x0217af8c
.word data_ov61_0217af48
.global data_ov61_0217af90
data_ov61_0217af90: ; 0x0217af90
.word data_ov61_0217af44
.global data_ov61_0217af94
data_ov61_0217af94: ; 0x0217af94
.word data_ov61_0217af50
.global data_ov61_0217af98
data_ov61_0217af98: ; 0x0217af98
.word data_ov61_0217af3c
.global data_ov61_0217af9c
data_ov61_0217af9c: ; 0x0217af9c
.ascii "Fri, 03 Mar 2006 01:28:13 GMT"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217afbc
data_ov61_0217afbc: ; 0x0217afbc
.word data_ov61_0217afc0
.global data_ov61_0217afc0
data_ov61_0217afc0: ; 0x0217afc0
.ascii "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.-"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217b004
data_ov61_0217b004: ; 0x0217b004
.byte 0x01, 0x00, 0x01, 0x00
.global data_ov61_0217b008
data_ov61_0217b008: ; 0x0217b008
.word data_ov61_0217b01c
.global data_ov61_0217b00c
data_ov61_0217b00c: ; 0x0217b00c
.byte 0x00, 0x01, 0x00, 0x00
.global data_ov61_0217b010
data_ov61_0217b010: ; 0x0217b010
.word data_ov61_0217b050
.global data_ov61_0217b014
data_ov61_0217b014: ; 0x0217b014
.byte 0x03, 0x00, 0x00, 0x00
.global data_ov61_0217b018
data_ov61_0217b018: ; 0x0217b018
.word data_ov61_0217b004
.global data_ov61_0217b01c
data_ov61_0217b01c: ; 0x0217b01c
.ascii "BE, GlobalSign nv-sa, Root CA, GlobalSign Root CA"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217b050
data_ov61_0217b050: ; 0x0217b050
.byte 0xda, 0x0e, 0xe6, 0x99
.global data_ov61_0217b054
data_ov61_0217b054: ; 0x0217b054
.byte 0x8d, 0xce, 0xa3, 0xe3
.global data_ov61_0217b058
data_ov61_0217b058: ; 0x0217b058
.byte 0x4f, 0x8a, 0x7e, 0xfb
.global data_ov61_0217b05c
data_ov61_0217b05c: ; 0x0217b05c
.byte 0xf1, 0x8b, 0x83, 0x25
.global data_ov61_0217b060
data_ov61_0217b060: ; 0x0217b060
.byte 0x6b, 0xea, 0x48, 0x1f
.global data_ov61_0217b064
data_ov61_0217b064: ; 0x0217b064
.byte 0xf1, 0x2a, 0xb0, 0xb9
.global data_ov61_0217b068
data_ov61_0217b068: ; 0x0217b068
.byte 0x95, 0x11, 0x04, 0xbd
.global data_ov61_0217b06c
data_ov61_0217b06c: ; 0x0217b06c
.byte 0xf0, 0x63, 0xd1, 0xe2
.global data_ov61_0217b070
data_ov61_0217b070: ; 0x0217b070
.byte 0x67, 0x66, 0xcf, 0x1c
.global data_ov61_0217b074
data_ov61_0217b074: ; 0x0217b074
.byte 0xdd, 0xcf, 0x1b, 0x48
.global data_ov61_0217b078
data_ov61_0217b078: ; 0x0217b078
.byte 0x2b, 0xee, 0x8d, 0x89
.global data_ov61_0217b07c
data_ov61_0217b07c: ; 0x0217b07c
.byte 0x8e, 0x9a, 0xaf, 0x29
.global data_ov61_0217b080
data_ov61_0217b080: ; 0x0217b080
.byte 0x80, 0x65, 0xab, 0xe9
.global data_ov61_0217b084
data_ov61_0217b084: ; 0x0217b084
.byte 0xc7, 0x2d, 0x12, 0xcb
.global data_ov61_0217b088
data_ov61_0217b088: ; 0x0217b088
.byte 0xab, 0x1c, 0x4c, 0x70
.global data_ov61_0217b08c
data_ov61_0217b08c: ; 0x0217b08c
.byte 0x07, 0xa1, 0x3d, 0x0a
.global data_ov61_0217b090
data_ov61_0217b090: ; 0x0217b090
.byte 0x30, 0xcd, 0x15, 0x8d
.global data_ov61_0217b094
data_ov61_0217b094: ; 0x0217b094
.byte 0x4f, 0xf8, 0xdd, 0xd4
.global data_ov61_0217b098
data_ov61_0217b098: ; 0x0217b098
.byte 0x8c, 0x50, 0x15, 0x1c
.global data_ov61_0217b09c
data_ov61_0217b09c: ; 0x0217b09c
.byte 0xef, 0x50, 0xee, 0xc4
.global data_ov61_0217b0a0
data_ov61_0217b0a0: ; 0x0217b0a0
.byte 0x2e, 0xf7, 0xfc, 0xe9
.global data_ov61_0217b0a4
data_ov61_0217b0a4: ; 0x0217b0a4
.byte 0x52, 0xf2, 0x91, 0x7d
.global data_ov61_0217b0a8
data_ov61_0217b0a8: ; 0x0217b0a8
.byte 0xe0, 0x6d, 0xd5, 0x35
.global data_ov61_0217b0ac
data_ov61_0217b0ac: ; 0x0217b0ac
.byte 0x30, 0x8e, 0x5e, 0x43
.global data_ov61_0217b0b0
data_ov61_0217b0b0: ; 0x0217b0b0
.byte 0x73, 0xf2, 0x41, 0xe9
.global data_ov61_0217b0b4
data_ov61_0217b0b4: ; 0x0217b0b4
.byte 0xd5, 0x6a, 0xe3, 0xb2
.global data_ov61_0217b0b8
data_ov61_0217b0b8: ; 0x0217b0b8
.byte 0x89, 0x3a, 0x56, 0x39
.global data_ov61_0217b0bc
data_ov61_0217b0bc: ; 0x0217b0bc
.byte 0x38, 0x6f, 0x06, 0x3c
.global data_ov61_0217b0c0
data_ov61_0217b0c0: ; 0x0217b0c0
.byte 0x88, 0x69, 0x5b, 0x2a
.global data_ov61_0217b0c4
data_ov61_0217b0c4: ; 0x0217b0c4
.byte 0x4d, 0xc5, 0xa7, 0x54
.global data_ov61_0217b0c8
data_ov61_0217b0c8: ; 0x0217b0c8
.byte 0xb8, 0x6c, 0x89, 0xcc
.global data_ov61_0217b0cc
data_ov61_0217b0cc: ; 0x0217b0cc
.byte 0x9b, 0xf9, 0x3c, 0xca
.global data_ov61_0217b0d0
data_ov61_0217b0d0: ; 0x0217b0d0
.byte 0xe5, 0xfd, 0x89, 0xf5
.global data_ov61_0217b0d4
data_ov61_0217b0d4: ; 0x0217b0d4
.byte 0x12, 0x3c, 0x92, 0x78
.global data_ov61_0217b0d8
data_ov61_0217b0d8: ; 0x0217b0d8
.byte 0x96, 0xd6, 0xdc, 0x74
.global data_ov61_0217b0dc
data_ov61_0217b0dc: ; 0x0217b0dc
.byte 0x6e, 0x93, 0x44, 0x61
.global data_ov61_0217b0e0
data_ov61_0217b0e0: ; 0x0217b0e0
.byte 0xd1, 0x8d, 0xc7, 0x46
.global data_ov61_0217b0e4
data_ov61_0217b0e4: ; 0x0217b0e4
.byte 0xb2, 0x75, 0x0e, 0x86
.global data_ov61_0217b0e8
data_ov61_0217b0e8: ; 0x0217b0e8
.byte 0xe8, 0x19, 0x8a, 0xd5
.global data_ov61_0217b0ec
data_ov61_0217b0ec: ; 0x0217b0ec
.byte 0x6d, 0x6c, 0xd5, 0x78
.global data_ov61_0217b0f0
data_ov61_0217b0f0: ; 0x0217b0f0
.byte 0x16, 0x95, 0xa2, 0xe9
.global data_ov61_0217b0f4
data_ov61_0217b0f4: ; 0x0217b0f4
.byte 0xc8, 0x0a, 0x38, 0xeb
.global data_ov61_0217b0f8
data_ov61_0217b0f8: ; 0x0217b0f8
.byte 0xf2, 0x24, 0x13, 0x4f
.global data_ov61_0217b0fc
data_ov61_0217b0fc: ; 0x0217b0fc
.byte 0x73, 0x54, 0x93, 0x13
.global data_ov61_0217b100
data_ov61_0217b100: ; 0x0217b100
.byte 0x85, 0x3a, 0x1b, 0xbc
.global data_ov61_0217b104
data_ov61_0217b104: ; 0x0217b104
.byte 0x1e, 0x34, 0xb5, 0x8b
.global data_ov61_0217b108
data_ov61_0217b108: ; 0x0217b108
.byte 0x05, 0x8c, 0xb9, 0x77
.global data_ov61_0217b10c
data_ov61_0217b10c: ; 0x0217b10c
.byte 0x8b, 0xb1, 0xdb, 0x1f
.global data_ov61_0217b110
data_ov61_0217b110: ; 0x0217b110
.byte 0x20, 0x91, 0xab, 0x09
.global data_ov61_0217b114
data_ov61_0217b114: ; 0x0217b114
.byte 0x53, 0x6e, 0x90, 0xce
.global data_ov61_0217b118
data_ov61_0217b118: ; 0x0217b118
.byte 0x7b, 0x37, 0x74, 0xb9
.global data_ov61_0217b11c
data_ov61_0217b11c: ; 0x0217b11c
.byte 0x70, 0x47, 0x91, 0x22
.global data_ov61_0217b120
data_ov61_0217b120: ; 0x0217b120
.byte 0x51, 0x63, 0x16, 0x79
.global data_ov61_0217b124
data_ov61_0217b124: ; 0x0217b124
.byte 0xae, 0xb1, 0xae, 0x41
.global data_ov61_0217b128
data_ov61_0217b128: ; 0x0217b128
.byte 0x26, 0x08, 0xc8, 0x19
.global data_ov61_0217b12c
data_ov61_0217b12c: ; 0x0217b12c
.byte 0x2b, 0xd1, 0x46, 0xaa
.global data_ov61_0217b130
data_ov61_0217b130: ; 0x0217b130
.byte 0x48, 0xd6, 0x64, 0x2a
.global data_ov61_0217b134
data_ov61_0217b134: ; 0x0217b134
.byte 0xd7, 0x83, 0x34, 0xff
.global data_ov61_0217b138
data_ov61_0217b138: ; 0x0217b138
.byte 0x2c, 0x2a, 0xc1, 0x6c
.global data_ov61_0217b13c
data_ov61_0217b13c: ; 0x0217b13c
.byte 0x19, 0x43, 0x4a, 0x07
.global data_ov61_0217b140
data_ov61_0217b140: ; 0x0217b140
.byte 0x85, 0xe7, 0xd3, 0x7c
.global data_ov61_0217b144
data_ov61_0217b144: ; 0x0217b144
.byte 0xf6, 0x21, 0x68, 0xef
.global data_ov61_0217b148
data_ov61_0217b148: ; 0x0217b148
.byte 0xea, 0xf2, 0x52, 0x9f
.global data_ov61_0217b14c
data_ov61_0217b14c: ; 0x0217b14c
.byte 0x7f, 0x93, 0x90, 0xcf
.global data_ov61_0217b150
data_ov61_0217b150: ; 0x0217b150
.byte 0x01, 0x00, 0x01, 0x00
.global data_ov61_0217b154
data_ov61_0217b154: ; 0x0217b154
.word data_ov61_0217b168
.global data_ov61_0217b158
data_ov61_0217b158: ; 0x0217b158
.byte 0x00, 0x01, 0x00, 0x00
.global data_ov61_0217b15c
data_ov61_0217b15c: ; 0x0217b15c
.word data_ov61_0217b1a0
.global data_ov61_0217b160
data_ov61_0217b160: ; 0x0217b160
.byte 0x03, 0x00, 0x00, 0x00
.global data_ov61_0217b164
data_ov61_0217b164: ; 0x0217b164
.word data_ov61_0217b150
.global data_ov61_0217b168
data_ov61_0217b168: ; 0x0217b168
.ascii "IE, Baltimore, CyberTrust, Baltimore CyberTrust Root"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217b1a0
data_ov61_0217b1a0: ; 0x0217b1a0
.byte 0xa3, 0x04, 0xbb, 0x22
.global data_ov61_0217b1a4
data_ov61_0217b1a4: ; 0x0217b1a4
.byte 0xab, 0x98, 0x3d, 0x57
.global data_ov61_0217b1a8
data_ov61_0217b1a8: ; 0x0217b1a8
.byte 0xe8, 0x26, 0x72, 0x9a
.global data_ov61_0217b1ac
data_ov61_0217b1ac: ; 0x0217b1ac
.byte 0xb5, 0x79, 0xd4, 0x29
.global data_ov61_0217b1b0
data_ov61_0217b1b0: ; 0x0217b1b0
.byte 0xe2, 0xe1, 0xe8, 0x95
.global data_ov61_0217b1b4
data_ov61_0217b1b4: ; 0x0217b1b4
.byte 0x80, 0xb1, 0xb0, 0xe3
.global data_ov61_0217b1b8
data_ov61_0217b1b8: ; 0x0217b1b8
.byte 0x5b, 0x8e, 0x2b, 0x29
.global data_ov61_0217b1bc
data_ov61_0217b1bc: ; 0x0217b1bc
.byte 0x9a, 0x64, 0xdf, 0xa1
.global data_ov61_0217b1c0
data_ov61_0217b1c0: ; 0x0217b1c0
.byte 0x5d, 0xed, 0xb0, 0x09
.global data_ov61_0217b1c4
data_ov61_0217b1c4: ; 0x0217b1c4
.byte 0x05, 0x6d, 0xdb, 0x28
.global data_ov61_0217b1c8
data_ov61_0217b1c8: ; 0x0217b1c8
.byte 0x2e, 0xce, 0x62, 0xa2
.global data_ov61_0217b1cc
data_ov61_0217b1cc: ; 0x0217b1cc
.byte 0x62, 0xfe, 0xb4, 0x88
.global data_ov61_0217b1d0
data_ov61_0217b1d0: ; 0x0217b1d0
.byte 0xda, 0x12, 0xeb, 0x38
.global data_ov61_0217b1d4
data_ov61_0217b1d4: ; 0x0217b1d4
.byte 0xeb, 0x21, 0x9d, 0xc0
.global data_ov61_0217b1d8
data_ov61_0217b1d8: ; 0x0217b1d8
.byte 0x41, 0x2b, 0x01, 0x52
.global data_ov61_0217b1dc
data_ov61_0217b1dc: ; 0x0217b1dc
.byte 0x7b, 0x88, 0x77, 0xd3
.global data_ov61_0217b1e0
data_ov61_0217b1e0: ; 0x0217b1e0
.byte 0x1c, 0x8f, 0xc7, 0xba
.global data_ov61_0217b1e4
data_ov61_0217b1e4: ; 0x0217b1e4
.byte 0xb9, 0x88, 0xb5, 0x6a
.global data_ov61_0217b1e8
data_ov61_0217b1e8: ; 0x0217b1e8
.byte 0x09, 0xe7, 0x73, 0xe8
.global data_ov61_0217b1ec
data_ov61_0217b1ec: ; 0x0217b1ec
.byte 0x11, 0x40, 0xa7, 0xd1
.global data_ov61_0217b1f0
data_ov61_0217b1f0: ; 0x0217b1f0
.byte 0xcc, 0xca, 0x62, 0x8d
.global data_ov61_0217b1f4
data_ov61_0217b1f4: ; 0x0217b1f4
.byte 0x2d, 0xe5, 0x8f, 0x0b
.global data_ov61_0217b1f8
data_ov61_0217b1f8: ; 0x0217b1f8
.byte 0xa6, 0x50, 0xd2, 0xa8
.global data_ov61_0217b1fc
data_ov61_0217b1fc: ; 0x0217b1fc
.byte 0x50, 0xc3, 0x28, 0xea
.global data_ov61_0217b200
data_ov61_0217b200: ; 0x0217b200
.byte 0xf5, 0xab, 0x25, 0x87
.global data_ov61_0217b204
data_ov61_0217b204: ; 0x0217b204
.byte 0x8a, 0x9a, 0x96, 0x1c
.global data_ov61_0217b208
data_ov61_0217b208: ; 0x0217b208
.byte 0xa9, 0x67, 0xb8, 0x3f
.global data_ov61_0217b20c
data_ov61_0217b20c: ; 0x0217b20c
.byte 0x0c, 0xd5, 0xf7, 0xf9
.global data_ov61_0217b210
data_ov61_0217b210: ; 0x0217b210
.byte 0x52, 0x13, 0x2f, 0xc2
.global data_ov61_0217b214
data_ov61_0217b214: ; 0x0217b214
.byte 0x1b, 0xd5, 0x70, 0x70
.global data_ov61_0217b218
data_ov61_0217b218: ; 0x0217b218
.byte 0xf0, 0x8f, 0xc0, 0x12
.global data_ov61_0217b21c
data_ov61_0217b21c: ; 0x0217b21c
.byte 0xca, 0x06, 0xcb, 0x9a
.global data_ov61_0217b220
data_ov61_0217b220: ; 0x0217b220
.byte 0xe1, 0xd9, 0xca, 0x33
.global data_ov61_0217b224
data_ov61_0217b224: ; 0x0217b224
.byte 0x7a, 0x77, 0xd6, 0xf8
.global data_ov61_0217b228
data_ov61_0217b228: ; 0x0217b228
.byte 0xec, 0xb9, 0xf1, 0x68
.global data_ov61_0217b22c
data_ov61_0217b22c: ; 0x0217b22c
.byte 0x44, 0x42, 0x48, 0x13
.global data_ov61_0217b230
data_ov61_0217b230: ; 0x0217b230
.byte 0xd2, 0xc0, 0xc2, 0xa4
.global data_ov61_0217b234
data_ov61_0217b234: ; 0x0217b234
.byte 0xae, 0x5e, 0x60, 0xfe
.global data_ov61_0217b238
data_ov61_0217b238: ; 0x0217b238
.byte 0xb6, 0xa6, 0x05, 0xfc
.global data_ov61_0217b23c
data_ov61_0217b23c: ; 0x0217b23c
.byte 0xb4, 0xdd, 0x07, 0x59
.global data_ov61_0217b240
data_ov61_0217b240: ; 0x0217b240
.byte 0x02, 0xd4, 0x59, 0x18
.global data_ov61_0217b244
data_ov61_0217b244: ; 0x0217b244
.byte 0x98, 0x63, 0xf5, 0xa5
.global data_ov61_0217b248
data_ov61_0217b248: ; 0x0217b248
.byte 0x63, 0xe0, 0x90, 0x0c
.global data_ov61_0217b24c
data_ov61_0217b24c: ; 0x0217b24c
.byte 0x7d, 0x5d, 0xb2, 0x06
.global data_ov61_0217b250
data_ov61_0217b250: ; 0x0217b250
.byte 0x7a, 0xf3, 0x85, 0xea
.global data_ov61_0217b254
data_ov61_0217b254: ; 0x0217b254
.byte 0xeb, 0xd4, 0x03, 0xae
.global data_ov61_0217b258
data_ov61_0217b258: ; 0x0217b258
.byte 0x5e, 0x84, 0x3e, 0x5f
.global data_ov61_0217b25c
data_ov61_0217b25c: ; 0x0217b25c
.byte 0xff, 0x15, 0xed, 0x69
.global data_ov61_0217b260
data_ov61_0217b260: ; 0x0217b260
.byte 0xbc, 0xf9, 0x39, 0x36
.global data_ov61_0217b264
data_ov61_0217b264: ; 0x0217b264
.byte 0x72, 0x75, 0xcf, 0x77
.global data_ov61_0217b268
data_ov61_0217b268: ; 0x0217b268
.byte 0x52, 0x4d, 0xf3, 0xc9
.global data_ov61_0217b26c
data_ov61_0217b26c: ; 0x0217b26c
.byte 0x90, 0x2c, 0xb9, 0x3d
.global data_ov61_0217b270
data_ov61_0217b270: ; 0x0217b270
.byte 0xe5, 0xc9, 0x23, 0x53
.global data_ov61_0217b274
data_ov61_0217b274: ; 0x0217b274
.byte 0x3f, 0x1f, 0x24, 0x98
.global data_ov61_0217b278
data_ov61_0217b278: ; 0x0217b278
.byte 0x21, 0x5c, 0x07, 0x99
.global data_ov61_0217b27c
data_ov61_0217b27c: ; 0x0217b27c
.byte 0x29, 0xbd, 0xc6, 0x3a
.global data_ov61_0217b280
data_ov61_0217b280: ; 0x0217b280
.byte 0xec, 0xe7, 0x6e, 0x86
.global data_ov61_0217b284
data_ov61_0217b284: ; 0x0217b284
.byte 0x3a, 0x6b, 0x97, 0x74
.global data_ov61_0217b288
data_ov61_0217b288: ; 0x0217b288
.byte 0x63, 0x33, 0xbd, 0x68
.global data_ov61_0217b28c
data_ov61_0217b28c: ; 0x0217b28c
.byte 0x18, 0x31, 0xf0, 0x78
.global data_ov61_0217b290
data_ov61_0217b290: ; 0x0217b290
.byte 0x8d, 0x76, 0xbf, 0xfc
.global data_ov61_0217b294
data_ov61_0217b294: ; 0x0217b294
.byte 0x9e, 0x8e, 0x5d, 0x2a
.global data_ov61_0217b298
data_ov61_0217b298: ; 0x0217b298
.byte 0x86, 0xa7, 0x4d, 0x90
.global data_ov61_0217b29c
data_ov61_0217b29c: ; 0x0217b29c
.byte 0xdc, 0x27, 0x1a, 0x39
.global data_ov61_0217b2a0
data_ov61_0217b2a0: ; 0x0217b2a0
.byte 0x01, 0x00, 0x01, 0x00
.global data_ov61_0217b2a4
data_ov61_0217b2a4: ; 0x0217b2a4
.word data_ov61_0217b2b8
.global data_ov61_0217b2a8
data_ov61_0217b2a8: ; 0x0217b2a8
.byte 0x80, 0x00, 0x00, 0x00
.global data_ov61_0217b2ac
data_ov61_0217b2ac: ; 0x0217b2ac
.word data_ov61_0217b308
.global data_ov61_0217b2b0
data_ov61_0217b2b0: ; 0x0217b2b0
.byte 0x03, 0x00, 0x00, 0x00
.global data_ov61_0217b2b4
data_ov61_0217b2b4: ; 0x0217b2b4
.word data_ov61_0217b2a0
.global data_ov61_0217b2b8
data_ov61_0217b2b8: ; 0x0217b2b8
.ascii "US, GTE Corporation, GTE CyberTrust Solutions, Inc., GTE CyberTrust Global Root"
.byte 0x00
.global data_ov61_0217b308
data_ov61_0217b308: ; 0x0217b308
.byte 0x95, 0x0f, 0xa0, 0xb6
.global data_ov61_0217b30c
data_ov61_0217b30c: ; 0x0217b30c
.byte 0xf0, 0x50, 0x9c, 0xe8
.global data_ov61_0217b310
data_ov61_0217b310: ; 0x0217b310
.byte 0x7a, 0xc7, 0x88, 0xcd
.global data_ov61_0217b314
data_ov61_0217b314: ; 0x0217b314
.byte 0xdd, 0x17, 0x0e, 0x2e
.global data_ov61_0217b318
data_ov61_0217b318: ; 0x0217b318
.byte 0xb0, 0x94, 0xd0, 0x1b
.global data_ov61_0217b31c
data_ov61_0217b31c: ; 0x0217b31c
.byte 0x3d, 0x0e, 0xf6, 0x94
.global data_ov61_0217b320
data_ov61_0217b320: ; 0x0217b320
.byte 0xc0, 0x8a, 0x94, 0xc7
.global data_ov61_0217b324
data_ov61_0217b324: ; 0x0217b324
.byte 0x06, 0xc8, 0x90, 0x97
.global data_ov61_0217b328
data_ov61_0217b328: ; 0x0217b328
.byte 0xc8, 0xb8, 0x64, 0x1a
.global data_ov61_0217b32c
data_ov61_0217b32c: ; 0x0217b32c
.byte 0x7a, 0x7e, 0x6c, 0x3c
.global data_ov61_0217b330
data_ov61_0217b330: ; 0x0217b330
.byte 0x53, 0xe1, 0x37, 0x28
.global data_ov61_0217b334
data_ov61_0217b334: ; 0x0217b334
.byte 0x73, 0x60, 0x7f, 0xb2
.global data_ov61_0217b338
data_ov61_0217b338: ; 0x0217b338
.byte 0x97, 0x53, 0x07, 0x9f
.global data_ov61_0217b33c
data_ov61_0217b33c: ; 0x0217b33c
.byte 0x53, 0xf9, 0x6d, 0x58
.global data_ov61_0217b340
data_ov61_0217b340: ; 0x0217b340
.byte 0x94, 0xd2, 0xaf, 0x8d
.global data_ov61_0217b344
data_ov61_0217b344: ; 0x0217b344
.byte 0x6d, 0x88, 0x67, 0x80
.global data_ov61_0217b348
data_ov61_0217b348: ; 0x0217b348
.byte 0xe6, 0xed, 0xb2, 0x95
.global data_ov61_0217b34c
data_ov61_0217b34c: ; 0x0217b34c
.byte 0xcf, 0x72, 0x31, 0xca
.global data_ov61_0217b350
data_ov61_0217b350: ; 0x0217b350
.byte 0xa5, 0x1c, 0x72, 0xba
.global data_ov61_0217b354
data_ov61_0217b354: ; 0x0217b354
.byte 0x5c, 0x02, 0xe7, 0x64
.global data_ov61_0217b358
data_ov61_0217b358: ; 0x0217b358
.byte 0x42, 0xe7, 0xf9, 0xa9
.global data_ov61_0217b35c
data_ov61_0217b35c: ; 0x0217b35c
.byte 0x2c, 0xd6, 0x3a, 0x0d
.global data_ov61_0217b360
data_ov61_0217b360: ; 0x0217b360
.byte 0xac, 0x8d, 0x42, 0xaa
.global data_ov61_0217b364
data_ov61_0217b364: ; 0x0217b364
.byte 0x24, 0x01, 0x39, 0xe6
.global data_ov61_0217b368
data_ov61_0217b368: ; 0x0217b368
.byte 0x9c, 0x3f, 0x01, 0x85
.global data_ov61_0217b36c
data_ov61_0217b36c: ; 0x0217b36c
.byte 0x57, 0x0d, 0x58, 0x87
.global data_ov61_0217b370
data_ov61_0217b370: ; 0x0217b370
.byte 0x45, 0xf8, 0xd3, 0x85
.global data_ov61_0217b374
data_ov61_0217b374: ; 0x0217b374
.byte 0xaa, 0x93, 0x69, 0x26
.global data_ov61_0217b378
data_ov61_0217b378: ; 0x0217b378
.byte 0x85, 0x70, 0x48, 0x80
.global data_ov61_0217b37c
data_ov61_0217b37c: ; 0x0217b37c
.byte 0x3f, 0x12, 0x15, 0xc7
.global data_ov61_0217b380
data_ov61_0217b380: ; 0x0217b380
.byte 0x79, 0xb4, 0x1f, 0x05
.global data_ov61_0217b384
data_ov61_0217b384: ; 0x0217b384
.byte 0x2f, 0x3b, 0x62, 0x99
.global data_ov61_0217b388
data_ov61_0217b388: ; 0x0217b388
.byte 0x01, 0x00, 0x01, 0x00
.global data_ov61_0217b38c
data_ov61_0217b38c: ; 0x0217b38c
.word data_ov61_0217b3a0
.global data_ov61_0217b390
data_ov61_0217b390: ; 0x0217b390
.byte 0x80, 0x00, 0x00, 0x00
.global data_ov61_0217b394
data_ov61_0217b394: ; 0x0217b394
.word data_ov61_0217b3cc
.global data_ov61_0217b398
data_ov61_0217b398: ; 0x0217b398
.byte 0x03, 0x00, 0x00, 0x00
.global data_ov61_0217b39c
data_ov61_0217b39c: ; 0x0217b39c
.word data_ov61_0217b388
.global data_ov61_0217b3a0
data_ov61_0217b3a0: ; 0x0217b3a0
.ascii "US, GTE Corporation, GTE CyberTrust Root"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217b3cc
data_ov61_0217b3cc: ; 0x0217b3cc
.byte 0xb8, 0xe6, 0x4f, 0xba
.global data_ov61_0217b3d0
data_ov61_0217b3d0: ; 0x0217b3d0
.byte 0xdb, 0x98, 0x7c, 0x71
.global data_ov61_0217b3d4
data_ov61_0217b3d4: ; 0x0217b3d4
.byte 0x7c, 0xaf, 0x44, 0xb7
.global data_ov61_0217b3d8
data_ov61_0217b3d8: ; 0x0217b3d8
.byte 0xd3, 0x0f, 0x46, 0xd9
.global data_ov61_0217b3dc
data_ov61_0217b3dc: ; 0x0217b3dc
.byte 0x64, 0xe5, 0x93, 0xc1
.global data_ov61_0217b3e0
data_ov61_0217b3e0: ; 0x0217b3e0
.byte 0x42, 0x8e, 0xc7, 0xba
.global data_ov61_0217b3e4
data_ov61_0217b3e4: ; 0x0217b3e4
.byte 0x49, 0x8d, 0x35, 0x2d
.global data_ov61_0217b3e8
data_ov61_0217b3e8: ; 0x0217b3e8
.byte 0x7a, 0xe7, 0x8b, 0xbd
.global data_ov61_0217b3ec
data_ov61_0217b3ec: ; 0x0217b3ec
.byte 0xe5, 0x05, 0x31, 0x59
.global data_ov61_0217b3f0
data_ov61_0217b3f0: ; 0x0217b3f0
.byte 0xc6, 0xb1, 0x2f, 0x0a
.global data_ov61_0217b3f4
data_ov61_0217b3f4: ; 0x0217b3f4
.byte 0x0c, 0xfb, 0x9f, 0xa7
.global data_ov61_0217b3f8
data_ov61_0217b3f8: ; 0x0217b3f8
.byte 0x3f, 0xa2, 0x09, 0x66
.global data_ov61_0217b3fc
data_ov61_0217b3fc: ; 0x0217b3fc
.byte 0x84, 0x56, 0x1e, 0x37
.global data_ov61_0217b400
data_ov61_0217b400: ; 0x0217b400
.byte 0x29, 0x1b, 0x87, 0xe9
.global data_ov61_0217b404
data_ov61_0217b404: ; 0x0217b404
.byte 0x7e, 0x0c, 0xca, 0x9a
.global data_ov61_0217b408
data_ov61_0217b408: ; 0x0217b408
.byte 0x9f, 0xa5, 0x7f, 0xf5
.global data_ov61_0217b40c
data_ov61_0217b40c: ; 0x0217b40c
.byte 0x15, 0x94, 0xa3, 0xd5
.global data_ov61_0217b410
data_ov61_0217b410: ; 0x0217b410
.byte 0xa2, 0x46, 0x82, 0xd8
.global data_ov61_0217b414
data_ov61_0217b414: ; 0x0217b414
.byte 0x68, 0x4c, 0xd1, 0x37
.global data_ov61_0217b418
data_ov61_0217b418: ; 0x0217b418
.byte 0x15, 0x06, 0x68, 0xaf
.global data_ov61_0217b41c
data_ov61_0217b41c: ; 0x0217b41c
.byte 0xbd, 0xf8, 0xb0, 0xb3
.global data_ov61_0217b420
data_ov61_0217b420: ; 0x0217b420
.byte 0xf0, 0x29, 0xf5, 0x95
.global data_ov61_0217b424
data_ov61_0217b424: ; 0x0217b424
.byte 0x5a, 0x09, 0x16, 0x61
.global data_ov61_0217b428
data_ov61_0217b428: ; 0x0217b428
.byte 0x77, 0x0a, 0x22, 0x25
.global data_ov61_0217b42c
data_ov61_0217b42c: ; 0x0217b42c
.byte 0xd4, 0x4f, 0x45, 0xaa
.global data_ov61_0217b430
data_ov61_0217b430: ; 0x0217b430
.byte 0xc7, 0xbd, 0xe5, 0x96
.global data_ov61_0217b434
data_ov61_0217b434: ; 0x0217b434
.byte 0xdf, 0xf9, 0xd4, 0xa8
.global data_ov61_0217b438
data_ov61_0217b438: ; 0x0217b438
.byte 0x8e, 0x42, 0xcc, 0x24
.global data_ov61_0217b43c
data_ov61_0217b43c: ; 0x0217b43c
.byte 0xc0, 0x1e, 0x91, 0x27
.global data_ov61_0217b440
data_ov61_0217b440: ; 0x0217b440
.byte 0x4a, 0xb5, 0x6d, 0x06
.global data_ov61_0217b444
data_ov61_0217b444: ; 0x0217b444
.byte 0x80, 0x63, 0x39, 0xc4
.global data_ov61_0217b448
data_ov61_0217b448: ; 0x0217b448
.byte 0xa2, 0x5e, 0x38, 0x03
.global data_ov61_0217b44c
data_ov61_0217b44c: ; 0x0217b44c
.byte 0x01, 0x00, 0x01, 0x00
.global data_ov61_0217b450
data_ov61_0217b450: ; 0x0217b450
.word data_ov61_0217b464
.global data_ov61_0217b454
data_ov61_0217b454: ; 0x0217b454
.byte 0x80, 0x00, 0x00, 0x00
.global data_ov61_0217b458
data_ov61_0217b458: ; 0x0217b458
.word data_ov61_0217b4b4
.global data_ov61_0217b45c
data_ov61_0217b45c: ; 0x0217b45c
.byte 0x03, 0x00, 0x00, 0x00
.global data_ov61_0217b460
data_ov61_0217b460: ; 0x0217b460
.word data_ov61_0217b44c
.global data_ov61_0217b464
data_ov61_0217b464: ; 0x0217b464
.ascii "US, Washington, Nintendo of America Inc, NOA, Nintendo CA, ca@noa.nintendo.com"
.byte 0x00, 0x00
.global data_ov61_0217b4b4
data_ov61_0217b4b4: ; 0x0217b4b4
.byte 0xb3, 0xcd, 0x79, 0x97
.global data_ov61_0217b4b8
data_ov61_0217b4b8: ; 0x0217b4b8
.byte 0x77, 0x5d, 0x8a, 0xaf
.global data_ov61_0217b4bc
data_ov61_0217b4bc: ; 0x0217b4bc
.byte 0x86, 0xa8, 0xe8, 0xd7
.global data_ov61_0217b4c0
data_ov61_0217b4c0: ; 0x0217b4c0
.byte 0x73, 0x1c, 0x77, 0xdf
.global data_ov61_0217b4c4
data_ov61_0217b4c4: ; 0x0217b4c4
.byte 0x10, 0x90, 0x1f, 0x81
.global data_ov61_0217b4c8
data_ov61_0217b4c8: ; 0x0217b4c8
.byte 0xf8, 0x41, 0x9e, 0x21
.global data_ov61_0217b4cc
data_ov61_0217b4cc: ; 0x0217b4cc
.byte 0x55, 0xdf, 0xbc, 0xfc
.global data_ov61_0217b4d0
data_ov61_0217b4d0: ; 0x0217b4d0
.byte 0x63, 0xfb, 0x19, 0x43
.global data_ov61_0217b4d4
data_ov61_0217b4d4: ; 0x0217b4d4
.byte 0xf1, 0xf6, 0xc4, 0x72
.global data_ov61_0217b4d8
data_ov61_0217b4d8: ; 0x0217b4d8
.byte 0x42, 0x49, 0xbd, 0xad
.global data_ov61_0217b4dc
data_ov61_0217b4dc: ; 0x0217b4dc
.byte 0x44, 0x68, 0x4e, 0xf3
.global data_ov61_0217b4e0
data_ov61_0217b4e0: ; 0x0217b4e0
.byte 0xda, 0x1d, 0xe6, 0x4d
.global data_ov61_0217b4e4
data_ov61_0217b4e4: ; 0x0217b4e4
.byte 0xd8, 0xf9, 0x59, 0x88
.global data_ov61_0217b4e8
data_ov61_0217b4e8: ; 0x0217b4e8
.byte 0xdc, 0xae, 0x3e, 0x9b
.global data_ov61_0217b4ec
data_ov61_0217b4ec: ; 0x0217b4ec
.byte 0x38, 0x09, 0xca, 0x7f
.global data_ov61_0217b4f0
data_ov61_0217b4f0: ; 0x0217b4f0
.byte 0xff, 0xdc, 0x24, 0xa2
.global data_ov61_0217b4f4
data_ov61_0217b4f4: ; 0x0217b4f4
.byte 0x44, 0x78, 0x78, 0x49
.global data_ov61_0217b4f8
data_ov61_0217b4f8: ; 0x0217b4f8
.byte 0x93, 0xd4, 0x84, 0x40
.global data_ov61_0217b4fc
data_ov61_0217b4fc: ; 0x0217b4fc
.byte 0x10, 0xb8, 0xec, 0x3e
.global data_ov61_0217b500
data_ov61_0217b500: ; 0x0217b500
.byte 0xdb, 0x2d, 0x93, 0xc8
.global data_ov61_0217b504
data_ov61_0217b504: ; 0x0217b504
.byte 0x11, 0xc8, 0xfd, 0x78
.global data_ov61_0217b508
data_ov61_0217b508: ; 0x0217b508
.byte 0x2d, 0x61, 0xad, 0x31
.global data_ov61_0217b50c
data_ov61_0217b50c: ; 0x0217b50c
.byte 0xae, 0x86, 0x26, 0xb0
.global data_ov61_0217b510
data_ov61_0217b510: ; 0x0217b510
.byte 0xfd, 0x5a, 0x3f, 0xa1
.global data_ov61_0217b514
data_ov61_0217b514: ; 0x0217b514
.byte 0x3d, 0xbf, 0xe2, 0x4b
.global data_ov61_0217b518
data_ov61_0217b518: ; 0x0217b518
.byte 0x49, 0xec, 0xce, 0x66
.global data_ov61_0217b51c
data_ov61_0217b51c: ; 0x0217b51c
.byte 0x98, 0x58, 0x26, 0x12
.global data_ov61_0217b520
data_ov61_0217b520: ; 0x0217b520
.byte 0xc0, 0xfb, 0xf4, 0x77
.global data_ov61_0217b524
data_ov61_0217b524: ; 0x0217b524
.byte 0x65, 0x1b, 0xea, 0xfb
.global data_ov61_0217b528
data_ov61_0217b528: ; 0x0217b528
.byte 0xcb, 0x7f, 0xe0, 0x8c
.global data_ov61_0217b52c
data_ov61_0217b52c: ; 0x0217b52c
.byte 0xcb, 0x02, 0xa3, 0x4e
.global data_ov61_0217b530
data_ov61_0217b530: ; 0x0217b530
.byte 0x5e, 0x8c, 0xea, 0x9b
.global data_ov61_0217b534
data_ov61_0217b534: ; 0x0217b534
.byte 0x01, 0x00, 0x01, 0x00
.global data_ov61_0217b538
data_ov61_0217b538: ; 0x0217b538
.word data_ov61_0217b5cc
.global data_ov61_0217b53c
data_ov61_0217b53c: ; 0x0217b53c
.byte 0x80, 0x00, 0x00, 0x00
.global data_ov61_0217b540
data_ov61_0217b540: ; 0x0217b540
.word data_ov61_0217b54c
.global data_ov61_0217b544
data_ov61_0217b544: ; 0x0217b544
.byte 0x03, 0x00, 0x00, 0x00
.global data_ov61_0217b548
data_ov61_0217b548: ; 0x0217b548
.word data_ov61_0217b534
.global data_ov61_0217b54c
data_ov61_0217b54c: ; 0x0217b54c
.byte 0xd2, 0x36, 0x36, 0x6a
.global data_ov61_0217b550
data_ov61_0217b550: ; 0x0217b550
.byte 0x8b, 0xd7, 0xc2, 0x5b
.global data_ov61_0217b554
data_ov61_0217b554: ; 0x0217b554
.byte 0x9e, 0xda, 0x81, 0x41
.global data_ov61_0217b558
data_ov61_0217b558: ; 0x0217b558
.byte 0x62, 0x8f, 0x38, 0xee
.global data_ov61_0217b55c
data_ov61_0217b55c: ; 0x0217b55c
.byte 0x49, 0x04, 0x55, 0xd6
.global data_ov61_0217b560
data_ov61_0217b560: ; 0x0217b560
.byte 0xd0, 0xef, 0x1c, 0x1b
.global data_ov61_0217b564
data_ov61_0217b564: ; 0x0217b564
.byte 0x95, 0x16, 0x47, 0xef
.global data_ov61_0217b568
data_ov61_0217b568: ; 0x0217b568
.byte 0x18, 0x48, 0x35, 0x3a
.global data_ov61_0217b56c
data_ov61_0217b56c: ; 0x0217b56c
.byte 0x52, 0xf4, 0x2b, 0x6a
.global data_ov61_0217b570
data_ov61_0217b570: ; 0x0217b570
.byte 0x06, 0x8f, 0x3b, 0x2f
.global data_ov61_0217b574
data_ov61_0217b574: ; 0x0217b574
.byte 0xea, 0x56, 0xe3, 0xaf
.global data_ov61_0217b578
data_ov61_0217b578: ; 0x0217b578
.byte 0x86, 0x8d, 0x9e, 0x17
.global data_ov61_0217b57c
data_ov61_0217b57c: ; 0x0217b57c
.byte 0xf7, 0x9e, 0xb4, 0x65
.global data_ov61_0217b580
data_ov61_0217b580: ; 0x0217b580
.byte 0x75, 0x02, 0x4d, 0xef
.global data_ov61_0217b584
data_ov61_0217b584: ; 0x0217b584
.byte 0xcb, 0x09, 0xa2, 0x21
.global data_ov61_0217b588
data_ov61_0217b588: ; 0x0217b588
.byte 0x51, 0xd8, 0x9b, 0xd0
.global data_ov61_0217b58c
data_ov61_0217b58c: ; 0x0217b58c
.byte 0x67, 0xd0, 0xba, 0x0d
.global data_ov61_0217b590
data_ov61_0217b590: ; 0x0217b590
.byte 0x92, 0x06, 0x14, 0x73
.global data_ov61_0217b594
data_ov61_0217b594: ; 0x0217b594
.byte 0xd4, 0x93, 0xcb, 0x97
.global data_ov61_0217b598
data_ov61_0217b598: ; 0x0217b598
.byte 0x2a, 0x00, 0x9c, 0x5c
.global data_ov61_0217b59c
data_ov61_0217b59c: ; 0x0217b59c
.byte 0x4e, 0x0c, 0xbc, 0xfa
.global data_ov61_0217b5a0
data_ov61_0217b5a0: ; 0x0217b5a0
.byte 0x15, 0x52, 0xfc, 0xf2
.global data_ov61_0217b5a4
data_ov61_0217b5a4: ; 0x0217b5a4
.byte 0x44, 0x6e, 0xda, 0x11
.global data_ov61_0217b5a8
data_ov61_0217b5a8: ; 0x0217b5a8
.byte 0x4a, 0x6e, 0x08, 0x9f
.global data_ov61_0217b5ac
data_ov61_0217b5ac: ; 0x0217b5ac
.byte 0x2f, 0x2d, 0xe3, 0xf9
.global data_ov61_0217b5b0
data_ov61_0217b5b0: ; 0x0217b5b0
.byte 0xaa, 0x3a, 0x86, 0x73
.global data_ov61_0217b5b4
data_ov61_0217b5b4: ; 0x0217b5b4
.byte 0xb6, 0x46, 0x53, 0x58
.global data_ov61_0217b5b8
data_ov61_0217b5b8: ; 0x0217b5b8
.byte 0xc8, 0x89, 0x05, 0xbd
.global data_ov61_0217b5bc
data_ov61_0217b5bc: ; 0x0217b5bc
.byte 0x83, 0x11, 0xb8, 0x73
.global data_ov61_0217b5c0
data_ov61_0217b5c0: ; 0x0217b5c0
.byte 0x3f, 0xaa, 0x07, 0x8d
.global data_ov61_0217b5c4
data_ov61_0217b5c4: ; 0x0217b5c4
.byte 0xf4, 0x42, 0x4d, 0xe7
.global data_ov61_0217b5c8
data_ov61_0217b5c8: ; 0x0217b5c8
.byte 0x40, 0x9d, 0x1c, 0x37
.global data_ov61_0217b5cc
data_ov61_0217b5cc: ; 0x0217b5cc
.ascii "ZA, Western Cape, Cape Town, Thawte Consulting cc, Certification Services Division, Thawte Premium Server CA, premium-server@thawte.com"
.byte 0x00
.global data_ov61_0217b654
data_ov61_0217b654: ; 0x0217b654
.byte 0x01, 0x00, 0x01, 0x00
.global data_ov61_0217b658
data_ov61_0217b658: ; 0x0217b658
.word data_ov61_0217b66c
.global data_ov61_0217b65c
data_ov61_0217b65c: ; 0x0217b65c
.byte 0x80, 0x00, 0x00, 0x00
.global data_ov61_0217b660
data_ov61_0217b660: ; 0x0217b660
.word data_ov61_0217b6ec
.global data_ov61_0217b664
data_ov61_0217b664: ; 0x0217b664
.byte 0x03, 0x00, 0x00, 0x00
.global data_ov61_0217b668
data_ov61_0217b668: ; 0x0217b668
.word data_ov61_0217b654
.global data_ov61_0217b66c
data_ov61_0217b66c: ; 0x0217b66c
.ascii "ZA, Western Cape, Cape Town, Thawte Consulting cc, Certification Services Division, Thawte Server CA, server-certs@thawte.com"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217b6ec
data_ov61_0217b6ec: ; 0x0217b6ec
.byte 0xd3, 0xa4, 0x50, 0x6e
.global data_ov61_0217b6f0
data_ov61_0217b6f0: ; 0x0217b6f0
.byte 0xc8, 0xff, 0x56, 0x6b
.global data_ov61_0217b6f4
data_ov61_0217b6f4: ; 0x0217b6f4
.byte 0xe6, 0xcf, 0x5d, 0xb6
.global data_ov61_0217b6f8
data_ov61_0217b6f8: ; 0x0217b6f8
.byte 0xea, 0x0c, 0x68, 0x75
.global data_ov61_0217b6fc
data_ov61_0217b6fc: ; 0x0217b6fc
.byte 0x47, 0xa2, 0xaa, 0xc2
.global data_ov61_0217b700
data_ov61_0217b700: ; 0x0217b700
.byte 0xda, 0x84, 0x25, 0xfc
.global data_ov61_0217b704
data_ov61_0217b704: ; 0x0217b704
.byte 0xa8, 0xf4, 0x47, 0x51
.global data_ov61_0217b708
data_ov61_0217b708: ; 0x0217b708
.byte 0xda, 0x85, 0xb5, 0x20
.global data_ov61_0217b70c
data_ov61_0217b70c: ; 0x0217b70c
.byte 0x74, 0x94, 0x86, 0x1e
.global data_ov61_0217b710
data_ov61_0217b710: ; 0x0217b710
.byte 0x0f, 0x75, 0xc9, 0xe9
.global data_ov61_0217b714
data_ov61_0217b714: ; 0x0217b714
.byte 0x08, 0x61, 0xf5, 0x06
.global data_ov61_0217b718
data_ov61_0217b718: ; 0x0217b718
.byte 0x6d, 0x30, 0x6e, 0x15
.global data_ov61_0217b71c
data_ov61_0217b71c: ; 0x0217b71c
.byte 0x19, 0x02, 0xe9, 0x52
.global data_ov61_0217b720
data_ov61_0217b720: ; 0x0217b720
.byte 0xc0, 0x62, 0xdb, 0x4d
.global data_ov61_0217b724
data_ov61_0217b724: ; 0x0217b724
.byte 0x99, 0x9e, 0xe2, 0x6a
.global data_ov61_0217b728
data_ov61_0217b728: ; 0x0217b728
.byte 0x0c, 0x44, 0x38, 0xcd
.global data_ov61_0217b72c
data_ov61_0217b72c: ; 0x0217b72c
.byte 0xfe, 0xbe, 0xe3, 0x64
.global data_ov61_0217b730
data_ov61_0217b730: ; 0x0217b730
.byte 0x09, 0x70, 0xc5, 0xfe
.global data_ov61_0217b734
data_ov61_0217b734: ; 0x0217b734
.byte 0xb1, 0x6b, 0x29, 0xb6
.global data_ov61_0217b738
data_ov61_0217b738: ; 0x0217b738
.byte 0x2f, 0x49, 0xc8, 0x3b
.global data_ov61_0217b73c
data_ov61_0217b73c: ; 0x0217b73c
.byte 0xd4, 0x27, 0x04, 0x25
.global data_ov61_0217b740
data_ov61_0217b740: ; 0x0217b740
.byte 0x10, 0x97, 0x2f, 0xe7
.global data_ov61_0217b744
data_ov61_0217b744: ; 0x0217b744
.byte 0x90, 0x6d, 0xc0, 0x28
.global data_ov61_0217b748
data_ov61_0217b748: ; 0x0217b748
.byte 0x42, 0x99, 0xd7, 0x4c
.global data_ov61_0217b74c
data_ov61_0217b74c: ; 0x0217b74c
.byte 0x43, 0xde, 0xc3, 0xf5
.global data_ov61_0217b750
data_ov61_0217b750: ; 0x0217b750
.byte 0x21, 0x6d, 0x54, 0x9f
.global data_ov61_0217b754
data_ov61_0217b754: ; 0x0217b754
.byte 0x5d, 0xc3, 0x58, 0xe1
.global data_ov61_0217b758
data_ov61_0217b758: ; 0x0217b758
.byte 0xc0, 0xe4, 0xd9, 0x5b
.global data_ov61_0217b75c
data_ov61_0217b75c: ; 0x0217b75c
.byte 0xb0, 0xb8, 0xdc, 0xb4
.global data_ov61_0217b760
data_ov61_0217b760: ; 0x0217b760
.byte 0x7b, 0xdf, 0x36, 0x3a
.global data_ov61_0217b764
data_ov61_0217b764: ; 0x0217b764
.byte 0xc2, 0xb5, 0x66, 0x22
.global data_ov61_0217b768
data_ov61_0217b768: ; 0x0217b768
.byte 0x12, 0xd6, 0x87, 0x0d
.global data_ov61_0217b76c
data_ov61_0217b76c: ; 0x0217b76c
.byte 0x01, 0x00, 0x01, 0x00
.global data_ov61_0217b770
data_ov61_0217b770: ; 0x0217b770
.word data_ov61_0217b804
.global data_ov61_0217b774
data_ov61_0217b774: ; 0x0217b774
.byte 0x80, 0x00, 0x00, 0x00
.global data_ov61_0217b778
data_ov61_0217b778: ; 0x0217b778
.word data_ov61_0217b784
.global data_ov61_0217b77c
data_ov61_0217b77c: ; 0x0217b77c
.byte 0x03, 0x00, 0x00, 0x00
.global data_ov61_0217b780
data_ov61_0217b780: ; 0x0217b780
.word data_ov61_0217b76c
.global data_ov61_0217b784
data_ov61_0217b784: ; 0x0217b784
.byte 0xcc, 0x5e, 0xd1, 0x11
.global data_ov61_0217b788
data_ov61_0217b788: ; 0x0217b788
.byte 0x5d, 0x5c, 0x69, 0xd0
.global data_ov61_0217b78c
data_ov61_0217b78c: ; 0x0217b78c
.byte 0xab, 0xd3, 0xb9, 0x6a
.global data_ov61_0217b790
data_ov61_0217b790: ; 0x0217b790
.byte 0x4c, 0x99, 0x1f, 0x59
.global data_ov61_0217b794
data_ov61_0217b794: ; 0x0217b794
.byte 0x98, 0x30, 0x8e, 0x16
.global data_ov61_0217b798
data_ov61_0217b798: ; 0x0217b798
.byte 0x85, 0x20, 0x46, 0x6d
.global data_ov61_0217b79c
data_ov61_0217b79c: ; 0x0217b79c
.byte 0x47, 0x3f, 0xd4, 0x85
.global data_ov61_0217b7a0
data_ov61_0217b7a0: ; 0x0217b7a0
.byte 0x20, 0x84, 0xe1, 0x6d
.global data_ov61_0217b7a4
data_ov61_0217b7a4: ; 0x0217b7a4
.byte 0xb3, 0xf8, 0xa4, 0xed
.global data_ov61_0217b7a8
data_ov61_0217b7a8: ; 0x0217b7a8
.byte 0x0c, 0xf1, 0x17, 0x0f
.global data_ov61_0217b7ac
data_ov61_0217b7ac: ; 0x0217b7ac
.byte 0x3b, 0xf9, 0xa7, 0xf9
.global data_ov61_0217b7b0
data_ov61_0217b7b0: ; 0x0217b7b0
.byte 0x25, 0xd7, 0xc1, 0xcf
.global data_ov61_0217b7b4
data_ov61_0217b7b4: ; 0x0217b7b4
.byte 0x84, 0x63, 0xf2, 0x7c
.global data_ov61_0217b7b8
data_ov61_0217b7b8: ; 0x0217b7b8
.byte 0x63, 0xcf, 0xa2, 0x47
.global data_ov61_0217b7bc
data_ov61_0217b7bc: ; 0x0217b7bc
.byte 0xf2, 0xc6, 0x5b, 0x33
.global data_ov61_0217b7c0
data_ov61_0217b7c0: ; 0x0217b7c0
.byte 0x8e, 0x64, 0x40, 0x04
.global data_ov61_0217b7c4
data_ov61_0217b7c4: ; 0x0217b7c4
.byte 0x68, 0xc1, 0x80, 0xb9
.global data_ov61_0217b7c8
data_ov61_0217b7c8: ; 0x0217b7c8
.byte 0x64, 0x1c, 0x45, 0x77
.global data_ov61_0217b7cc
data_ov61_0217b7cc: ; 0x0217b7cc
.byte 0xc7, 0xd8, 0x6e, 0xf5
.global data_ov61_0217b7d0
data_ov61_0217b7d0: ; 0x0217b7d0
.byte 0x95, 0x29, 0x3c, 0x50
.global data_ov61_0217b7d4
data_ov61_0217b7d4: ; 0x0217b7d4
.byte 0xe8, 0x34, 0xd7, 0x78
.global data_ov61_0217b7d8
data_ov61_0217b7d8: ; 0x0217b7d8
.byte 0x1f, 0xa8, 0xba, 0x6d
.global data_ov61_0217b7dc
data_ov61_0217b7dc: ; 0x0217b7dc
.byte 0x43, 0x91, 0x95, 0x8f
.global data_ov61_0217b7e0
data_ov61_0217b7e0: ; 0x0217b7e0
.byte 0x45, 0x57, 0x5e, 0x7e
.global data_ov61_0217b7e4
data_ov61_0217b7e4: ; 0x0217b7e4
.byte 0xc5, 0xfb, 0xca, 0xa4
.global data_ov61_0217b7e8
data_ov61_0217b7e8: ; 0x0217b7e8
.byte 0x04, 0xeb, 0xea, 0x97
.global data_ov61_0217b7ec
data_ov61_0217b7ec: ; 0x0217b7ec
.byte 0x37, 0x54, 0x30, 0x6f
.global data_ov61_0217b7f0
data_ov61_0217b7f0: ; 0x0217b7f0
.byte 0xbb, 0x01, 0x47, 0x32
.global data_ov61_0217b7f4
data_ov61_0217b7f4: ; 0x0217b7f4
.byte 0x33, 0xcd, 0xdc, 0x57
.global data_ov61_0217b7f8
data_ov61_0217b7f8: ; 0x0217b7f8
.byte 0x9b, 0x64, 0x69, 0x61
.global data_ov61_0217b7fc
data_ov61_0217b7fc: ; 0x0217b7fc
.byte 0xf8, 0x9b, 0x1d, 0x1c
.global data_ov61_0217b800
data_ov61_0217b800: ; 0x0217b800
.byte 0x89, 0x4f, 0x5c, 0x67
.global data_ov61_0217b804
data_ov61_0217b804: ; 0x0217b804
.ascii "US, VeriSign, Inc., Class 3 Public Primary Certification Authority - G2, (c) 1998 VeriSign, Inc. - For authorized use only, VeriSign Trust Network"
.byte 0x00, 0x00
.global data_ov61_0217b898
data_ov61_0217b898: ; 0x0217b898
.byte 0x01, 0x00, 0x01, 0x00
.global data_ov61_0217b89c
data_ov61_0217b89c: ; 0x0217b89c
.word data_ov61_0217b8b0
.global data_ov61_0217b8a0
data_ov61_0217b8a0: ; 0x0217b8a0
.byte 0x00, 0x01, 0x00, 0x00
.global data_ov61_0217b8a4
data_ov61_0217b8a4: ; 0x0217b8a4
.word data_ov61_0217b94c
.global data_ov61_0217b8a8
data_ov61_0217b8a8: ; 0x0217b8a8
.byte 0x03, 0x00, 0x00, 0x00
.global data_ov61_0217b8ac
data_ov61_0217b8ac: ; 0x0217b8ac
.word data_ov61_0217b898
.global data_ov61_0217b8b0
data_ov61_0217b8b0: ; 0x0217b8b0
.ascii "US, VeriSign, Inc., VeriSign Trust Network, (c) 1999 VeriSign, Inc. - For authorized use only, VeriSign Class 3 Public Primary Certification Authority - G3"
.byte 0x00
.global data_ov61_0217b94c
data_ov61_0217b94c: ; 0x0217b94c
.byte 0xcb, 0xba, 0x9c, 0x52
.global data_ov61_0217b950
data_ov61_0217b950: ; 0x0217b950
.byte 0xfc, 0x78, 0x1f, 0x1a
.global data_ov61_0217b954
data_ov61_0217b954: ; 0x0217b954
.byte 0x1e, 0x6f, 0x1b, 0x37
.global data_ov61_0217b958
data_ov61_0217b958: ; 0x0217b958
.byte 0x73, 0xbd, 0xf8, 0xc9
.global data_ov61_0217b95c
data_ov61_0217b95c: ; 0x0217b95c
.byte 0x6b, 0x94, 0x12, 0x30
.global data_ov61_0217b960
data_ov61_0217b960: ; 0x0217b960
.byte 0x4f, 0xf0, 0x36, 0x47
.global data_ov61_0217b964
data_ov61_0217b964: ; 0x0217b964
.byte 0xf5, 0xd0, 0x91, 0x0a
.global data_ov61_0217b968
data_ov61_0217b968: ; 0x0217b968
.byte 0xf5, 0x17, 0xc8, 0xa5
.global data_ov61_0217b96c
data_ov61_0217b96c: ; 0x0217b96c
.byte 0x61, 0xc1, 0x16, 0x40
.global data_ov61_0217b970
data_ov61_0217b970: ; 0x0217b970
.byte 0x4d, 0xfb, 0x8a, 0x61
.global data_ov61_0217b974
data_ov61_0217b974: ; 0x0217b974
.byte 0x90, 0xe5, 0x76, 0x20
.global data_ov61_0217b978
data_ov61_0217b978: ; 0x0217b978
.byte 0xc1, 0x11, 0x06, 0x7d
.global data_ov61_0217b97c
data_ov61_0217b97c: ; 0x0217b97c
.byte 0xab, 0x2c, 0x6e, 0xa6
.global data_ov61_0217b980
data_ov61_0217b980: ; 0x0217b980
.byte 0xf5, 0x11, 0x41, 0x8e
.global data_ov61_0217b984
data_ov61_0217b984: ; 0x0217b984
.byte 0xfa, 0x2d, 0xad, 0x2a
.global data_ov61_0217b988
data_ov61_0217b988: ; 0x0217b988
.byte 0x61, 0x59, 0xa4, 0x67
.global data_ov61_0217b98c
data_ov61_0217b98c: ; 0x0217b98c
.byte 0x26, 0x4c, 0xd0, 0xe8
.global data_ov61_0217b990
data_ov61_0217b990: ; 0x0217b990
.byte 0xbc, 0x52, 0x5b, 0x70
.global data_ov61_0217b994
data_ov61_0217b994: ; 0x0217b994
.byte 0x20, 0x04, 0x58, 0xd1
.global data_ov61_0217b998
data_ov61_0217b998: ; 0x0217b998
.byte 0x7a, 0xc9, 0xa4, 0x69
.global data_ov61_0217b99c
data_ov61_0217b99c: ; 0x0217b99c
.byte 0xbc, 0x83, 0x17, 0x64
.global data_ov61_0217b9a0
data_ov61_0217b9a0: ; 0x0217b9a0
.byte 0xad, 0x05, 0x8b, 0xbc
.global data_ov61_0217b9a4
data_ov61_0217b9a4: ; 0x0217b9a4
.byte 0xd0, 0x58, 0xce, 0x8d
.global data_ov61_0217b9a8
data_ov61_0217b9a8: ; 0x0217b9a8
.byte 0x8c, 0xf5, 0xeb, 0xf0
.global data_ov61_0217b9ac
data_ov61_0217b9ac: ; 0x0217b9ac
.byte 0x42, 0x49, 0x0b, 0x9d
.global data_ov61_0217b9b0
data_ov61_0217b9b0: ; 0x0217b9b0
.byte 0x97, 0x27, 0x67, 0x32
.global data_ov61_0217b9b4
data_ov61_0217b9b4: ; 0x0217b9b4
.byte 0x6e, 0xe1, 0xae, 0x93
.global data_ov61_0217b9b8
data_ov61_0217b9b8: ; 0x0217b9b8
.byte 0x15, 0x1c, 0x70, 0xbc
.global data_ov61_0217b9bc
data_ov61_0217b9bc: ; 0x0217b9bc
.byte 0x20, 0x4d, 0x2f, 0x18
.global data_ov61_0217b9c0
data_ov61_0217b9c0: ; 0x0217b9c0
.byte 0xde, 0x92, 0x88, 0xe8
.global data_ov61_0217b9c4
data_ov61_0217b9c4: ; 0x0217b9c4
.byte 0x6c, 0x85, 0x57, 0x11
.global data_ov61_0217b9c8
data_ov61_0217b9c8: ; 0x0217b9c8
.byte 0x1a, 0xe9, 0x7e, 0xe3
.global data_ov61_0217b9cc
data_ov61_0217b9cc: ; 0x0217b9cc
.byte 0x26, 0x11, 0x54, 0xa2
.global data_ov61_0217b9d0
data_ov61_0217b9d0: ; 0x0217b9d0
.byte 0x45, 0x96, 0x55, 0x83
.global data_ov61_0217b9d4
data_ov61_0217b9d4: ; 0x0217b9d4
.byte 0xca, 0x30, 0x89, 0xe8
.global data_ov61_0217b9d8
data_ov61_0217b9d8: ; 0x0217b9d8
.byte 0xdc, 0xd8, 0xa3, 0xed
.global data_ov61_0217b9dc
data_ov61_0217b9dc: ; 0x0217b9dc
.byte 0x2a, 0x80, 0x3f, 0x7f
.global data_ov61_0217b9e0
data_ov61_0217b9e0: ; 0x0217b9e0
.byte 0x79, 0x65, 0x57, 0x3e
.global data_ov61_0217b9e4
data_ov61_0217b9e4: ; 0x0217b9e4
.byte 0x15, 0x20, 0x66, 0x08
.global data_ov61_0217b9e8
data_ov61_0217b9e8: ; 0x0217b9e8
.byte 0x2f, 0x95, 0x93, 0xbf
.global data_ov61_0217b9ec
data_ov61_0217b9ec: ; 0x0217b9ec
.byte 0xaa, 0x47, 0x2f, 0xa8
.global data_ov61_0217b9f0
data_ov61_0217b9f0: ; 0x0217b9f0
.byte 0x46, 0x97, 0xf0, 0x12
.global data_ov61_0217b9f4
data_ov61_0217b9f4: ; 0x0217b9f4
.byte 0xe2, 0xfe, 0xc2, 0x0a
.global data_ov61_0217b9f8
data_ov61_0217b9f8: ; 0x0217b9f8
.byte 0x2b, 0x51, 0xe6, 0x76
.global data_ov61_0217b9fc
data_ov61_0217b9fc: ; 0x0217b9fc
.byte 0xe6, 0xb7, 0x46, 0xb7
.global data_ov61_0217ba00
data_ov61_0217ba00: ; 0x0217ba00
.byte 0xe2, 0x0d, 0xa6, 0xcc
.global data_ov61_0217ba04
data_ov61_0217ba04: ; 0x0217ba04
.byte 0xa8, 0xc3, 0x4c, 0x59
.global data_ov61_0217ba08
data_ov61_0217ba08: ; 0x0217ba08
.byte 0x55, 0x89, 0xe6, 0xe8
.global data_ov61_0217ba0c
data_ov61_0217ba0c: ; 0x0217ba0c
.byte 0x53, 0x5c, 0x1c, 0xea
.global data_ov61_0217ba10
data_ov61_0217ba10: ; 0x0217ba10
.byte 0x9d, 0xf0, 0x62, 0x16
.global data_ov61_0217ba14
data_ov61_0217ba14: ; 0x0217ba14
.byte 0x0b, 0xa7, 0xc9, 0x5f
.global data_ov61_0217ba18
data_ov61_0217ba18: ; 0x0217ba18
.byte 0x0c, 0xf0, 0xde, 0xc2
.global data_ov61_0217ba1c
data_ov61_0217ba1c: ; 0x0217ba1c
.byte 0x76, 0xce, 0xaf, 0xf7
.global data_ov61_0217ba20
data_ov61_0217ba20: ; 0x0217ba20
.byte 0x6a, 0xf2, 0xfa, 0x41
.global data_ov61_0217ba24
data_ov61_0217ba24: ; 0x0217ba24
.byte 0xa6, 0xa2, 0x33, 0x14
.global data_ov61_0217ba28
data_ov61_0217ba28: ; 0x0217ba28
.byte 0xc9, 0xe5, 0x7a, 0x63
.global data_ov61_0217ba2c
data_ov61_0217ba2c: ; 0x0217ba2c
.byte 0xd3, 0x9e, 0x62, 0x37
.global data_ov61_0217ba30
data_ov61_0217ba30: ; 0x0217ba30
.byte 0xd5, 0x85, 0x65, 0x9e
.global data_ov61_0217ba34
data_ov61_0217ba34: ; 0x0217ba34
.byte 0x0e, 0xe6, 0x53, 0x24
.global data_ov61_0217ba38
data_ov61_0217ba38: ; 0x0217ba38
.byte 0x74, 0x1b, 0x5e, 0x1d
.global data_ov61_0217ba3c
data_ov61_0217ba3c: ; 0x0217ba3c
.byte 0x12, 0x53, 0x5b, 0xc7
.global data_ov61_0217ba40
data_ov61_0217ba40: ; 0x0217ba40
.byte 0x2c, 0xe7, 0x83, 0x49
.global data_ov61_0217ba44
data_ov61_0217ba44: ; 0x0217ba44
.byte 0x3b, 0x15, 0xae, 0x8a
.global data_ov61_0217ba48
data_ov61_0217ba48: ; 0x0217ba48
.byte 0x68, 0xb9, 0x57, 0x97
.global data_ov61_0217ba4c
data_ov61_0217ba4c: ; 0x0217ba4c
.byte 0x01, 0x00, 0x01, 0x00
.global data_ov61_0217ba50
data_ov61_0217ba50: ; 0x0217ba50
.word data_ov61_0217ba64
.global data_ov61_0217ba54
data_ov61_0217ba54: ; 0x0217ba54
.byte 0x80, 0x00, 0x00, 0x00
.global data_ov61_0217ba58
data_ov61_0217ba58: ; 0x0217ba58
.word data_ov61_0217baa8
.global data_ov61_0217ba5c
data_ov61_0217ba5c: ; 0x0217ba5c
.byte 0x03, 0x00, 0x00, 0x00
.global data_ov61_0217ba60
data_ov61_0217ba60: ; 0x0217ba60
.word data_ov61_0217ba4c
.global data_ov61_0217ba64
data_ov61_0217ba64: ; 0x0217ba64
.ascii "US, VeriSign, Inc., Class 3 Public Primary Certification Authority"
.byte 0x00, 0x00
.global data_ov61_0217baa8
data_ov61_0217baa8: ; 0x0217baa8
.byte 0xc9, 0x5c, 0x59, 0x9e
.global data_ov61_0217baac
data_ov61_0217baac: ; 0x0217baac
.byte 0xf2, 0x1b, 0x8a, 0x01
.global data_ov61_0217bab0
data_ov61_0217bab0: ; 0x0217bab0
.byte 0x14, 0xb4, 0x10, 0xdf
.global data_ov61_0217bab4
data_ov61_0217bab4: ; 0x0217bab4
.byte 0x04, 0x40, 0xdb, 0xe3
.global data_ov61_0217bab8
data_ov61_0217bab8: ; 0x0217bab8
.byte 0x57, 0xaf, 0x6a, 0x45
.global data_ov61_0217babc
data_ov61_0217babc: ; 0x0217babc
.byte 0x40, 0x8f, 0x84, 0x0c
.global data_ov61_0217bac0
data_ov61_0217bac0: ; 0x0217bac0
.byte 0x0b, 0xd1, 0x33, 0xd9
.global data_ov61_0217bac4
data_ov61_0217bac4: ; 0x0217bac4
.byte 0xd9, 0x11, 0xcf, 0xee
.global data_ov61_0217bac8
data_ov61_0217bac8: ; 0x0217bac8
.byte 0x02, 0x58, 0x1f, 0x25
.global data_ov61_0217bacc
data_ov61_0217bacc: ; 0x0217bacc
.byte 0xf7, 0x2a, 0xa8, 0x44
.global data_ov61_0217bad0
data_ov61_0217bad0: ; 0x0217bad0
.byte 0x05, 0xaa, 0xec, 0x03
.global data_ov61_0217bad4
data_ov61_0217bad4: ; 0x0217bad4
.byte 0x1f, 0x78, 0x7f, 0x9e
.global data_ov61_0217bad8
data_ov61_0217bad8: ; 0x0217bad8
.byte 0x93, 0xb9, 0x9a, 0x00
.global data_ov61_0217badc
data_ov61_0217badc: ; 0x0217badc
.byte 0xaa, 0x23, 0x7d, 0xd6
.global data_ov61_0217bae0
data_ov61_0217bae0: ; 0x0217bae0
.byte 0xac, 0x85, 0xa2, 0x63
.global data_ov61_0217bae4
data_ov61_0217bae4: ; 0x0217bae4
.byte 0x45, 0xc7, 0x72, 0x27
.global data_ov61_0217bae8
data_ov61_0217bae8: ; 0x0217bae8
.byte 0xcc, 0xf4, 0x4c, 0xc6
.global data_ov61_0217baec
data_ov61_0217baec: ; 0x0217baec
.byte 0x75, 0x71, 0xd2, 0x39
.global data_ov61_0217baf0
data_ov61_0217baf0: ; 0x0217baf0
.byte 0xef, 0x4f, 0x42, 0xf0
.global data_ov61_0217baf4
data_ov61_0217baf4: ; 0x0217baf4
.byte 0x75, 0xdf, 0x0a, 0x90
.global data_ov61_0217baf8
data_ov61_0217baf8: ; 0x0217baf8
.byte 0xc6, 0x8e, 0x20, 0x6f
.global data_ov61_0217bafc
data_ov61_0217bafc: ; 0x0217bafc
.byte 0x98, 0x0f, 0xf8, 0xac
.global data_ov61_0217bb00
data_ov61_0217bb00: ; 0x0217bb00
.byte 0x23, 0x5f, 0x70, 0x29
.global data_ov61_0217bb04
data_ov61_0217bb04: ; 0x0217bb04
.byte 0x36, 0xa4, 0xc9, 0x86
.global data_ov61_0217bb08
data_ov61_0217bb08: ; 0x0217bb08
.byte 0xe7, 0xb1, 0x9a, 0x20
.global data_ov61_0217bb0c
data_ov61_0217bb0c: ; 0x0217bb0c
.byte 0xcb, 0x53, 0xa5, 0x85
.global data_ov61_0217bb10
data_ov61_0217bb10: ; 0x0217bb10
.byte 0xe7, 0x3d, 0xbe, 0x7d
.global data_ov61_0217bb14
data_ov61_0217bb14: ; 0x0217bb14
.byte 0x9a, 0xfe, 0x24, 0x45
.global data_ov61_0217bb18
data_ov61_0217bb18: ; 0x0217bb18
.byte 0x33, 0xdc, 0x76, 0x15
.global data_ov61_0217bb1c
data_ov61_0217bb1c: ; 0x0217bb1c
.byte 0xed, 0x0f, 0xa2, 0x71
.global data_ov61_0217bb20
data_ov61_0217bb20: ; 0x0217bb20
.byte 0x64, 0x4c, 0x65, 0x2e
.global data_ov61_0217bb24
data_ov61_0217bb24: ; 0x0217bb24
.byte 0x81, 0x68, 0x45, 0xa7
.global data_ov61_0217bb28
data_ov61_0217bb28: ; 0x0217bb28
.byte 0x01, 0x00, 0x01, 0x00
.global data_ov61_0217bb2c
data_ov61_0217bb2c: ; 0x0217bb2c
.word data_ov61_0217bb40
.global data_ov61_0217bb30
data_ov61_0217bb30: ; 0x0217bb30
.byte 0x7d, 0x00, 0x00, 0x00
.global data_ov61_0217bb34
data_ov61_0217bb34: ; 0x0217bb34
.word data_ov61_0217bb84
.global data_ov61_0217bb38
data_ov61_0217bb38: ; 0x0217bb38
.byte 0x03, 0x00, 0x00, 0x00
.global data_ov61_0217bb3c
data_ov61_0217bb3c: ; 0x0217bb3c
.word data_ov61_0217bb28
.global data_ov61_0217bb40
data_ov61_0217bb40: ; 0x0217bb40
.ascii "US, RSA Data Security, Inc., Secure Server Certification Authority"
.byte 0x00, 0x00
.global data_ov61_0217bb84
data_ov61_0217bb84: ; 0x0217bb84
.byte 0x92, 0xce, 0x7a, 0xc1
.global data_ov61_0217bb88
data_ov61_0217bb88: ; 0x0217bb88
.byte 0xae, 0x83, 0x3e, 0x5a
.global data_ov61_0217bb8c
data_ov61_0217bb8c: ; 0x0217bb8c
.byte 0xaa, 0x89, 0x83, 0x57
.global data_ov61_0217bb90
data_ov61_0217bb90: ; 0x0217bb90
.byte 0xac, 0x25, 0x01, 0x76
.global data_ov61_0217bb94
data_ov61_0217bb94: ; 0x0217bb94
.byte 0x0c, 0xad, 0xae, 0x8e
.global data_ov61_0217bb98
data_ov61_0217bb98: ; 0x0217bb98
.byte 0x2c, 0x37, 0xce, 0xeb
.global data_ov61_0217bb9c
data_ov61_0217bb9c: ; 0x0217bb9c
.byte 0x35, 0x78, 0x64, 0x54
.global data_ov61_0217bba0
data_ov61_0217bba0: ; 0x0217bba0
.byte 0x03, 0xe5, 0x84, 0x40
.global data_ov61_0217bba4
data_ov61_0217bba4: ; 0x0217bba4
.byte 0x51, 0xc9, 0xbf, 0x8f
.global data_ov61_0217bba8
data_ov61_0217bba8: ; 0x0217bba8
.byte 0x08, 0xe2, 0x8a, 0x82
.global data_ov61_0217bbac
data_ov61_0217bbac: ; 0x0217bbac
.byte 0x08, 0xd2, 0x16, 0x86
.global data_ov61_0217bbb0
data_ov61_0217bbb0: ; 0x0217bbb0
.byte 0x37, 0x55, 0xe9, 0xb1
.global data_ov61_0217bbb4
data_ov61_0217bbb4: ; 0x0217bbb4
.byte 0x21, 0x02, 0xad, 0x76
.global data_ov61_0217bbb8
data_ov61_0217bbb8: ; 0x0217bbb8
.byte 0x68, 0x81, 0x9a, 0x05
.global data_ov61_0217bbbc
data_ov61_0217bbbc: ; 0x0217bbbc
.byte 0xa2, 0x4b, 0xc9, 0x4b
.global data_ov61_0217bbc0
data_ov61_0217bbc0: ; 0x0217bbc0
.byte 0x25, 0x66, 0x22, 0x56
.global data_ov61_0217bbc4
data_ov61_0217bbc4: ; 0x0217bbc4
.byte 0x6c, 0x88, 0x07, 0x8f
.global data_ov61_0217bbc8
data_ov61_0217bbc8: ; 0x0217bbc8
.byte 0xf7, 0x81, 0x59, 0x6d
.global data_ov61_0217bbcc
data_ov61_0217bbcc: ; 0x0217bbcc
.byte 0x84, 0x07, 0x65, 0x70
.global data_ov61_0217bbd0
data_ov61_0217bbd0: ; 0x0217bbd0
.byte 0x13, 0x71, 0x76, 0x3e
.global data_ov61_0217bbd4
data_ov61_0217bbd4: ; 0x0217bbd4
.byte 0x9b, 0x77, 0x4c, 0xe3
.global data_ov61_0217bbd8
data_ov61_0217bbd8: ; 0x0217bbd8
.byte 0x50, 0x89, 0x56, 0x98
.global data_ov61_0217bbdc
data_ov61_0217bbdc: ; 0x0217bbdc
.byte 0x48, 0xb9, 0x1d, 0xa7
.global data_ov61_0217bbe0
data_ov61_0217bbe0: ; 0x0217bbe0
.byte 0x29, 0x1a, 0x13, 0x2e
.global data_ov61_0217bbe4
data_ov61_0217bbe4: ; 0x0217bbe4
.byte 0x4a, 0x11, 0x59, 0x9c
.global data_ov61_0217bbe8
data_ov61_0217bbe8: ; 0x0217bbe8
.byte 0x1e, 0x15, 0xd5, 0x49
.global data_ov61_0217bbec
data_ov61_0217bbec: ; 0x0217bbec
.byte 0x54, 0x2c, 0x73, 0x3a
.global data_ov61_0217bbf0
data_ov61_0217bbf0: ; 0x0217bbf0
.byte 0x69, 0x82, 0xb1, 0x97
.global data_ov61_0217bbf4
data_ov61_0217bbf4: ; 0x0217bbf4
.byte 0x39, 0x9c, 0x6d, 0x70
.global data_ov61_0217bbf8
data_ov61_0217bbf8: ; 0x0217bbf8
.byte 0x67, 0x48, 0xe5, 0xdd
.global data_ov61_0217bbfc
data_ov61_0217bbfc: ; 0x0217bbfc
.byte 0x2d, 0xd6, 0xc8, 0x1e
.global data_ov61_0217bc00
data_ov61_0217bc00: ; 0x0217bc00
.byte 0x7b, 0x00, 0x00, 0x00
.global data_ov61_0217bc04
data_ov61_0217bc04: ; 0x0217bc04
.byte 0x10, 0x00, 0x00, 0x00
.global data_ov61_0217bc08
data_ov61_0217bc08: ; 0x0217bc08
.byte 0xff, 0xff
.global data_ov61_0217bc0a
data_ov61_0217bc0a: ; 0x0217bc0a
.byte 0xff, 0xff
.global data_ov61_0217bc0c
data_ov61_0217bc0c: ; 0x0217bc0c
.byte 0xff, 0xff
.global data_ov61_0217bc0e
data_ov61_0217bc0e: ; 0x0217bc0e
.byte 0x00, 0x00
.global data_ov61_0217bc10
data_ov61_0217bc10: ; 0x0217bc10
.byte 0xaa, 0xaa
.global data_ov61_0217bc12
data_ov61_0217bc12: ; 0x0217bc12
.byte 0x03, 0x00
.global data_ov61_0217bc14
data_ov61_0217bc14: ; 0x0217bc14
.byte 0x00, 0x00
.global data_ov61_0217bc16
data_ov61_0217bc16: ; 0x0217bc16
.byte 0x08, 0x00
.global data_ov61_0217bc18
data_ov61_0217bc18: ; 0x0217bc18
.byte 0x00, 0x00
.global data_ov61_0217bc1a
data_ov61_0217bc1a: ; 0x0217bc1a
.byte 0x00, 0x00
.global data_ov61_0217bc1c
data_ov61_0217bc1c: ; 0x0217bc1c
.ascii "NintendoDS"
.byte 0x00, 0x00
.global data_ov61_0217bc28
data_ov61_0217bc28: ; 0x0217bc28
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bc2c
data_ov61_0217bc2c: ; 0x0217bc2c
.byte 0xe6, 0xff, 0xff, 0xff
.global data_ov61_0217bc30
data_ov61_0217bc30: ; 0x0217bc30
.byte 0x01, 0x01
.global data_ov61_0217bc32
data_ov61_0217bc32: ; 0x0217bc32
.byte 0xc0, 0x05
.global data_ov61_0217bc34
data_ov61_0217bc34: ; 0x0217bc34
.byte 0x01, 0x00
.global data_ov61_0217bc36
data_ov61_0217bc36: ; 0x0217bc36
.byte 0x00, 0x00
.global data_ov61_0217bc38
data_ov61_0217bc38: ; 0x0217bc38
.byte 0x00, 0x00
.global data_ov61_0217bc3a
data_ov61_0217bc3a: ; 0x0217bc3a
.byte 0x00, 0x00
.global data_ov61_0217bc3c
data_ov61_0217bc3c: ; 0x0217bc3c
.byte 0x00, 0x00
.global data_ov61_0217bc3e
data_ov61_0217bc3e: ; 0x0217bc3e
.byte 0x00, 0x08
.global data_ov61_0217bc40
data_ov61_0217bc40: ; 0x0217bc40
.byte 0x00, 0x08
.global data_ov61_0217bc42
data_ov61_0217bc42: ; 0x0217bc42
.byte 0x0c, 0x20
.global data_ov61_0217bc44
data_ov61_0217bc44: ; 0x0217bc44
.byte 0x00, 0x00
.global data_ov61_0217bc46
data_ov61_0217bc46: ; 0x0217bc46
.byte 0x00, 0x00
.global data_ov61_0217bc48
data_ov61_0217bc48: ; 0x0217bc48
.byte 0x00, 0x01
.global data_ov61_0217bc4a
data_ov61_0217bc4a: ; 0x0217bc4a
.byte 0x00, 0x00
.global data_ov61_0217bc4c
data_ov61_0217bc4c: ; 0x0217bc4c
.byte 0x00, 0x00
.global data_ov61_0217bc4e
data_ov61_0217bc4e: ; 0x0217bc4e
.byte 0x66, 0x04
.global data_ov61_0217bc50
data_ov61_0217bc50: ; 0x0217bc50
.byte 0x00, 0x00
.global data_ov61_0217bc52
data_ov61_0217bc52: ; 0x0217bc52
.byte 0x00, 0x00
.global data_ov61_0217bc54
data_ov61_0217bc54: ; 0x0217bc54
.byte 0x61, 0x08
.global data_ov61_0217bc56
data_ov61_0217bc56: ; 0x0217bc56
.byte 0x00, 0x00
.global data_ov61_0217bc58
data_ov61_0217bc58: ; 0x0217bc58
.byte 0x00, 0x08
.global data_ov61_0217bc5a
data_ov61_0217bc5a: ; 0x0217bc5a
.byte 0x0c, 0x20
.global data_ov61_0217bc5c
data_ov61_0217bc5c: ; 0x0217bc5c
.byte 0x00, 0x08
.global data_ov61_0217bc5e
data_ov61_0217bc5e: ; 0x0217bc5e
.byte 0x0d, 0x20
.global data_ov61_0217bc60
data_ov61_0217bc60: ; 0x0217bc60
.byte 0x02, 0x00
.global data_ov61_0217bc62
data_ov61_0217bc62: ; 0x0217bc62
.byte 0x00, 0x00
.global data_ov61_0217bc64
data_ov61_0217bc64: ; 0x0217bc64
.byte 0x00, 0x00
.global data_ov61_0217bc66
data_ov61_0217bc66: ; 0x0217bc66
.byte 0xea, 0x05
.global data_ov61_0217bc68
data_ov61_0217bc68: ; 0x0217bc68
.byte 0x00, 0x00
.global data_ov61_0217bc6a
data_ov61_0217bc6a: ; 0x0217bc6a
.byte 0x00, 0x00
.global data_ov61_0217bc6c
data_ov61_0217bc6c: ; 0x0217bc6c
.byte 0xeb, 0x06
.global data_ov61_0217bc6e
data_ov61_0217bc6e: ; 0x0217bc6e
.byte 0x00, 0x00
.global data_ov61_0217bc70
data_ov61_0217bc70: ; 0x0217bc70
.byte 0x00, 0x00
.global data_ov61_0217bc72
data_ov61_0217bc72: ; 0x0217bc72
.byte 0x00, 0x00
.global data_ov61_0217bc74
data_ov61_0217bc74: ; 0x0217bc74
.byte 0x00, 0x08
.global data_ov61_0217bc76
data_ov61_0217bc76: ; 0x0217bc76
.byte 0x0d, 0x20
.global data_ov61_0217bc78
data_ov61_0217bc78: ; 0x0217bc78
.ascii "%d.%d.%d.%d"
.byte 0x00
.global data_ov61_0217bc84
data_ov61_0217bc84: ; 0x0217bc84
.byte 0x04, 0x00
.global data_ov61_0217bc86
data_ov61_0217bc86: ; 0x0217bc86
.byte 0x05, 0x00
.global data_ov61_0217bc88
data_ov61_0217bc88: ; 0x0217bc88
.byte 0xff, 0xff, 0xff, 0xff
.global data_ov61_0217bc8c
data_ov61_0217bc8c: ; 0x0217bc8c
.word data_ov61_0217bca4
.global data_ov61_0217bc90
data_ov61_0217bc90: ; 0x0217bc90
.word data_ov61_0217bcb4
.global data_ov61_0217bc94
data_ov61_0217bc94: ; 0x0217bc94
.word data_ov61_0217bcac
.global data_ov61_0217bc98
data_ov61_0217bc98: ; 0x0217bc98
.word data_ov61_0217bcc0
.global data_ov61_0217bc9c
data_ov61_0217bc9c: ; 0x0217bc9c
.word data_ov61_0217bccc
.global data_ov61_0217bca0
data_ov61_0217bca0: ; 0x0217bca0
.word data_ov61_0217bca8
.global data_ov61_0217bca4
data_ov61_0217bca4: ; 0x0217bca4
.byte 0xff, 0xff, 0xff, 0x00
.global data_ov61_0217bca8
data_ov61_0217bca8: ; 0x0217bca8
.byte 0x55
.global data_ov61_0217bca9
data_ov61_0217bca9: ; 0x0217bca9
.byte 0x04
.global data_ov61_0217bcaa
data_ov61_0217bcaa: ; 0x0217bcaa
.byte 0x03
.global data_ov61_0217bcab
data_ov61_0217bcab: ; 0x0217bcab
.byte 0x00
.global data_ov61_0217bcac
data_ov61_0217bcac: ; 0x0217bcac
.byte 0x55
.global data_ov61_0217bcad
data_ov61_0217bcad: ; 0x0217bcad
.byte 0x08
.global data_ov61_0217bcae
data_ov61_0217bcae: ; 0x0217bcae
.byte 0x01
.global data_ov61_0217bcaf
data_ov61_0217bcaf: ; 0x0217bcaf
.byte 0x01
.global data_ov61_0217bcb0
data_ov61_0217bcb0: ; 0x0217bcb0
.byte 0x00
.global data_ov61_0217bcb1
data_ov61_0217bcb1: ; 0x0217bcb1
.byte 0x00
.global data_ov61_0217bcb2
data_ov61_0217bcb2: ; 0x0217bcb2
.byte 0x00
.global data_ov61_0217bcb3
data_ov61_0217bcb3: ; 0x0217bcb3
.byte 0x00
.global data_ov61_0217bcb4
data_ov61_0217bcb4: ; 0x0217bcb4
.byte 0x2a
.global data_ov61_0217bcb5
data_ov61_0217bcb5: ; 0x0217bcb5
.byte 0x86
.global data_ov61_0217bcb6
data_ov61_0217bcb6: ; 0x0217bcb6
.byte 0x48
.global data_ov61_0217bcb7
data_ov61_0217bcb7: ; 0x0217bcb7
.byte 0x86
.global data_ov61_0217bcb8
data_ov61_0217bcb8: ; 0x0217bcb8
.byte 0xf7
.global data_ov61_0217bcb9
data_ov61_0217bcb9: ; 0x0217bcb9
.byte 0x0d
.global data_ov61_0217bcba
data_ov61_0217bcba: ; 0x0217bcba
.byte 0x01
.global data_ov61_0217bcbb
data_ov61_0217bcbb: ; 0x0217bcbb
.byte 0x01
.global data_ov61_0217bcbc
data_ov61_0217bcbc: ; 0x0217bcbc
.byte 0x01
.global data_ov61_0217bcbd
data_ov61_0217bcbd: ; 0x0217bcbd
.byte 0x00
.global data_ov61_0217bcbe
data_ov61_0217bcbe: ; 0x0217bcbe
.byte 0x00
.global data_ov61_0217bcbf
data_ov61_0217bcbf: ; 0x0217bcbf
.byte 0x00
.global data_ov61_0217bcc0
data_ov61_0217bcc0: ; 0x0217bcc0
.byte 0x2a
.global data_ov61_0217bcc1
data_ov61_0217bcc1: ; 0x0217bcc1
.byte 0x86
.global data_ov61_0217bcc2
data_ov61_0217bcc2: ; 0x0217bcc2
.byte 0x48
.global data_ov61_0217bcc3
data_ov61_0217bcc3: ; 0x0217bcc3
.byte 0x86
.global data_ov61_0217bcc4
data_ov61_0217bcc4: ; 0x0217bcc4
.byte 0xf7
.global data_ov61_0217bcc5
data_ov61_0217bcc5: ; 0x0217bcc5
.byte 0x0d
.global data_ov61_0217bcc6
data_ov61_0217bcc6: ; 0x0217bcc6
.byte 0x01
.global data_ov61_0217bcc7
data_ov61_0217bcc7: ; 0x0217bcc7
.byte 0x01
.global data_ov61_0217bcc8
data_ov61_0217bcc8: ; 0x0217bcc8
.byte 0x04
.global data_ov61_0217bcc9
data_ov61_0217bcc9: ; 0x0217bcc9
.byte 0x00
.global data_ov61_0217bcca
data_ov61_0217bcca: ; 0x0217bcca
.byte 0x00
.global data_ov61_0217bccb
data_ov61_0217bccb: ; 0x0217bccb
.byte 0x00
.global data_ov61_0217bccc
data_ov61_0217bccc: ; 0x0217bccc
.byte 0x2a
.global data_ov61_0217bccd
data_ov61_0217bccd: ; 0x0217bccd
.byte 0x86
.global data_ov61_0217bcce
data_ov61_0217bcce: ; 0x0217bcce
.byte 0x48
.global data_ov61_0217bccf
data_ov61_0217bccf: ; 0x0217bccf
.byte 0x86
.global data_ov61_0217bcd0
data_ov61_0217bcd0: ; 0x0217bcd0
.byte 0xf7
.global data_ov61_0217bcd1
data_ov61_0217bcd1: ; 0x0217bcd1
.byte 0x0d
.global data_ov61_0217bcd2
data_ov61_0217bcd2: ; 0x0217bcd2
.byte 0x01
.global data_ov61_0217bcd3
data_ov61_0217bcd3: ; 0x0217bcd3
.byte 0x01
.global data_ov61_0217bcd4
data_ov61_0217bcd4: ; 0x0217bcd4
.byte 0x05
.global data_ov61_0217bcd5
data_ov61_0217bcd5: ; 0x0217bcd5
.byte 0x00
.global data_ov61_0217bcd6
data_ov61_0217bcd6: ; 0x0217bcd6
.byte 0x00
.global data_ov61_0217bcd7
data_ov61_0217bcd7: ; 0x0217bcd7
.byte 0x00
.global data_ov61_0217bcd8
data_ov61_0217bcd8: ; 0x0217bcd8
.ascii "A"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217bcdc
data_ov61_0217bcdc: ; 0x0217bcdc
.ascii "BB"
.byte 0x00, 0x00
.global data_ov61_0217bce0
data_ov61_0217bce0: ; 0x0217bce0
.ascii "CCC"
.byte 0x00
.global data_ov61_0217bce4
data_ov61_0217bce4: ; 0x0217bce4
.ascii "SRVR"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bcec
data_ov61_0217bcec: ; 0x0217bcec
.ascii "CLNT"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bcf4
data_ov61_0217bcf4: ; 0x0217bcf4
.byte 0x00
.global data_ov61_0217bcf5
data_ov61_0217bcf5: ; 0x0217bcf5
.byte 0x01
.global data_ov61_0217bcf6
data_ov61_0217bcf6: ; 0x0217bcf6
.byte 0x02
.global data_ov61_0217bcf7
data_ov61_0217bcf7: ; 0x0217bcf7
.byte 0x03
.global data_ov61_0217bcf8
data_ov61_0217bcf8: ; 0x0217bcf8
.byte 0x04
.global data_ov61_0217bcf9
data_ov61_0217bcf9: ; 0x0217bcf9
.byte 0x05
.global data_ov61_0217bcfa
data_ov61_0217bcfa: ; 0x0217bcfa
.byte 0x06
.global data_ov61_0217bcfb
data_ov61_0217bcfb: ; 0x0217bcfb
.byte 0x07
.global data_ov61_0217bcfc
data_ov61_0217bcfc: ; 0x0217bcfc
.byte 0x08
.global data_ov61_0217bcfd
data_ov61_0217bcfd: ; 0x0217bcfd
.byte 0x09
.global data_ov61_0217bcfe
data_ov61_0217bcfe: ; 0x0217bcfe
.byte 0x0a
.global data_ov61_0217bcff
data_ov61_0217bcff: ; 0x0217bcff
.byte 0x0b
.global data_ov61_0217bd00
data_ov61_0217bd00: ; 0x0217bd00
.byte 0x0c
.global data_ov61_0217bd01
data_ov61_0217bd01: ; 0x0217bd01
.byte 0x0d
.global data_ov61_0217bd02
data_ov61_0217bd02: ; 0x0217bd02
.byte 0x0e
.global data_ov61_0217bd03
data_ov61_0217bd03: ; 0x0217bd03
.byte 0x0f
.global data_ov61_0217bd04
data_ov61_0217bd04: ; 0x0217bd04
.byte 0x01
.global data_ov61_0217bd05
data_ov61_0217bd05: ; 0x0217bd05
.byte 0x06
.global data_ov61_0217bd06
data_ov61_0217bd06: ; 0x0217bd06
.byte 0x0b
.global data_ov61_0217bd07
data_ov61_0217bd07: ; 0x0217bd07
.byte 0x00
.global data_ov61_0217bd08
data_ov61_0217bd08: ; 0x0217bd08
.byte 0x05
.global data_ov61_0217bd09
data_ov61_0217bd09: ; 0x0217bd09
.byte 0x0a
.global data_ov61_0217bd0a
data_ov61_0217bd0a: ; 0x0217bd0a
.byte 0x0f
.global data_ov61_0217bd0b
data_ov61_0217bd0b: ; 0x0217bd0b
.byte 0x04
.global data_ov61_0217bd0c
data_ov61_0217bd0c: ; 0x0217bd0c
.byte 0x09
.global data_ov61_0217bd0d
data_ov61_0217bd0d: ; 0x0217bd0d
.byte 0x0e
.global data_ov61_0217bd0e
data_ov61_0217bd0e: ; 0x0217bd0e
.byte 0x03
.global data_ov61_0217bd0f
data_ov61_0217bd0f: ; 0x0217bd0f
.byte 0x08
.global data_ov61_0217bd10
data_ov61_0217bd10: ; 0x0217bd10
.byte 0x0d
.global data_ov61_0217bd11
data_ov61_0217bd11: ; 0x0217bd11
.byte 0x02
.global data_ov61_0217bd12
data_ov61_0217bd12: ; 0x0217bd12
.byte 0x07
.global data_ov61_0217bd13
data_ov61_0217bd13: ; 0x0217bd13
.byte 0x0c
.global data_ov61_0217bd14
data_ov61_0217bd14: ; 0x0217bd14
.byte 0x05
.global data_ov61_0217bd15
data_ov61_0217bd15: ; 0x0217bd15
.byte 0x08
.global data_ov61_0217bd16
data_ov61_0217bd16: ; 0x0217bd16
.byte 0x0b
.global data_ov61_0217bd17
data_ov61_0217bd17: ; 0x0217bd17
.byte 0x0e
.global data_ov61_0217bd18
data_ov61_0217bd18: ; 0x0217bd18
.byte 0x01
.global data_ov61_0217bd19
data_ov61_0217bd19: ; 0x0217bd19
.byte 0x04
.global data_ov61_0217bd1a
data_ov61_0217bd1a: ; 0x0217bd1a
.byte 0x07
.global data_ov61_0217bd1b
data_ov61_0217bd1b: ; 0x0217bd1b
.byte 0x0a
.global data_ov61_0217bd1c
data_ov61_0217bd1c: ; 0x0217bd1c
.byte 0x0d
.global data_ov61_0217bd1d
data_ov61_0217bd1d: ; 0x0217bd1d
.byte 0x00
.global data_ov61_0217bd1e
data_ov61_0217bd1e: ; 0x0217bd1e
.byte 0x03
.global data_ov61_0217bd1f
data_ov61_0217bd1f: ; 0x0217bd1f
.byte 0x06
.global data_ov61_0217bd20
data_ov61_0217bd20: ; 0x0217bd20
.byte 0x09
.global data_ov61_0217bd21
data_ov61_0217bd21: ; 0x0217bd21
.byte 0x0c
.global data_ov61_0217bd22
data_ov61_0217bd22: ; 0x0217bd22
.byte 0x0f
.global data_ov61_0217bd23
data_ov61_0217bd23: ; 0x0217bd23
.byte 0x02
.global data_ov61_0217bd24
data_ov61_0217bd24: ; 0x0217bd24
.byte 0x00
.global data_ov61_0217bd25
data_ov61_0217bd25: ; 0x0217bd25
.byte 0x07
.global data_ov61_0217bd26
data_ov61_0217bd26: ; 0x0217bd26
.byte 0x0e
.global data_ov61_0217bd27
data_ov61_0217bd27: ; 0x0217bd27
.byte 0x05
.global data_ov61_0217bd28
data_ov61_0217bd28: ; 0x0217bd28
.byte 0x0c
.global data_ov61_0217bd29
data_ov61_0217bd29: ; 0x0217bd29
.byte 0x03
.global data_ov61_0217bd2a
data_ov61_0217bd2a: ; 0x0217bd2a
.byte 0x0a
.global data_ov61_0217bd2b
data_ov61_0217bd2b: ; 0x0217bd2b
.byte 0x01
.global data_ov61_0217bd2c
data_ov61_0217bd2c: ; 0x0217bd2c
.byte 0x08
.global data_ov61_0217bd2d
data_ov61_0217bd2d: ; 0x0217bd2d
.byte 0x0f
.global data_ov61_0217bd2e
data_ov61_0217bd2e: ; 0x0217bd2e
.byte 0x06
.global data_ov61_0217bd2f
data_ov61_0217bd2f: ; 0x0217bd2f
.byte 0x0d
.global data_ov61_0217bd30
data_ov61_0217bd30: ; 0x0217bd30
.byte 0x04
.global data_ov61_0217bd31
data_ov61_0217bd31: ; 0x0217bd31
.byte 0x0b
.global data_ov61_0217bd32
data_ov61_0217bd32: ; 0x0217bd32
.byte 0x02
.global data_ov61_0217bd33
data_ov61_0217bd33: ; 0x0217bd33
.byte 0x09
.global data_ov61_0217bd34
data_ov61_0217bd34: ; 0x0217bd34
.byte 0x80, 0x00, 0x00, 0x00
.global data_ov61_0217bd38
data_ov61_0217bd38: ; 0x0217bd38
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bd3c
data_ov61_0217bd3c: ; 0x0217bd3c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bd40
data_ov61_0217bd40: ; 0x0217bd40
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bd44
data_ov61_0217bd44: ; 0x0217bd44
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bd48
data_ov61_0217bd48: ; 0x0217bd48
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bd4c
data_ov61_0217bd4c: ; 0x0217bd4c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bd50
data_ov61_0217bd50: ; 0x0217bd50
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bd54
data_ov61_0217bd54: ; 0x0217bd54
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bd58
data_ov61_0217bd58: ; 0x0217bd58
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bd5c
data_ov61_0217bd5c: ; 0x0217bd5c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bd60
data_ov61_0217bd60: ; 0x0217bd60
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bd64
data_ov61_0217bd64: ; 0x0217bd64
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bd68
data_ov61_0217bd68: ; 0x0217bd68
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bd6c
data_ov61_0217bd6c: ; 0x0217bd6c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bd70
data_ov61_0217bd70: ; 0x0217bd70
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bd74
data_ov61_0217bd74: ; 0x0217bd74
.byte 0x78, 0xa4, 0x6a, 0xd7
.global data_ov61_0217bd78
data_ov61_0217bd78: ; 0x0217bd78
.byte 0x56, 0xb7, 0xc7, 0xe8
.global data_ov61_0217bd7c
data_ov61_0217bd7c: ; 0x0217bd7c
.byte 0xdb, 0x70, 0x20, 0x24
.global data_ov61_0217bd80
data_ov61_0217bd80: ; 0x0217bd80
.byte 0xee, 0xce, 0xbd, 0xc1
.global data_ov61_0217bd84
data_ov61_0217bd84: ; 0x0217bd84
.byte 0xaf, 0x0f, 0x7c, 0xf5
.global data_ov61_0217bd88
data_ov61_0217bd88: ; 0x0217bd88
.byte 0x2a, 0xc6, 0x87, 0x47
.global data_ov61_0217bd8c
data_ov61_0217bd8c: ; 0x0217bd8c
.byte 0x13, 0x46, 0x30, 0xa8
.global data_ov61_0217bd90
data_ov61_0217bd90: ; 0x0217bd90
.byte 0x01, 0x95, 0x46, 0xfd
.global data_ov61_0217bd94
data_ov61_0217bd94: ; 0x0217bd94
.byte 0xd8, 0x98, 0x80, 0x69
.global data_ov61_0217bd98
data_ov61_0217bd98: ; 0x0217bd98
.byte 0xaf, 0xf7, 0x44, 0x8b
.global data_ov61_0217bd9c
data_ov61_0217bd9c: ; 0x0217bd9c
.byte 0xb1, 0x5b, 0xff, 0xff
.global data_ov61_0217bda0
data_ov61_0217bda0: ; 0x0217bda0
.byte 0xbe, 0xd7, 0x5c, 0x89
.global data_ov61_0217bda4
data_ov61_0217bda4: ; 0x0217bda4
.byte 0x22, 0x11, 0x90, 0x6b
.global data_ov61_0217bda8
data_ov61_0217bda8: ; 0x0217bda8
.byte 0x93, 0x71, 0x98, 0xfd
.global data_ov61_0217bdac
data_ov61_0217bdac: ; 0x0217bdac
.byte 0x8e, 0x43, 0x79, 0xa6
.global data_ov61_0217bdb0
data_ov61_0217bdb0: ; 0x0217bdb0
.byte 0x21, 0x08, 0xb4, 0x49
.global data_ov61_0217bdb4
data_ov61_0217bdb4: ; 0x0217bdb4
.byte 0x62, 0x25, 0x1e, 0xf6
.global data_ov61_0217bdb8
data_ov61_0217bdb8: ; 0x0217bdb8
.byte 0x40, 0xb3, 0x40, 0xc0
.global data_ov61_0217bdbc
data_ov61_0217bdbc: ; 0x0217bdbc
.byte 0x51, 0x5a, 0x5e, 0x26
.global data_ov61_0217bdc0
data_ov61_0217bdc0: ; 0x0217bdc0
.byte 0xaa, 0xc7, 0xb6, 0xe9
.global data_ov61_0217bdc4
data_ov61_0217bdc4: ; 0x0217bdc4
.byte 0x5d, 0x10, 0x2f, 0xd6
.global data_ov61_0217bdc8
data_ov61_0217bdc8: ; 0x0217bdc8
.byte 0x53, 0x14, 0x44, 0x02
.global data_ov61_0217bdcc
data_ov61_0217bdcc: ; 0x0217bdcc
.byte 0x81, 0xe6, 0xa1, 0xd8
.global data_ov61_0217bdd0
data_ov61_0217bdd0: ; 0x0217bdd0
.byte 0xc8, 0xfb, 0xd3, 0xe7
.global data_ov61_0217bdd4
data_ov61_0217bdd4: ; 0x0217bdd4
.byte 0xe6, 0xcd, 0xe1, 0x21
.global data_ov61_0217bdd8
data_ov61_0217bdd8: ; 0x0217bdd8
.byte 0xd6, 0x07, 0x37, 0xc3
.global data_ov61_0217bddc
data_ov61_0217bddc: ; 0x0217bddc
.byte 0x87, 0x0d, 0xd5, 0xf4
.global data_ov61_0217bde0
data_ov61_0217bde0: ; 0x0217bde0
.byte 0xed, 0x14, 0x5a, 0x45
.global data_ov61_0217bde4
data_ov61_0217bde4: ; 0x0217bde4
.byte 0x05, 0xe9, 0xe3, 0xa9
.global data_ov61_0217bde8
data_ov61_0217bde8: ; 0x0217bde8
.byte 0xf8, 0xa3, 0xef, 0xfc
.global data_ov61_0217bdec
data_ov61_0217bdec: ; 0x0217bdec
.byte 0xd9, 0x02, 0x6f, 0x67
.global data_ov61_0217bdf0
data_ov61_0217bdf0: ; 0x0217bdf0
.byte 0x8a, 0x4c, 0x2a, 0x8d
.global data_ov61_0217bdf4
data_ov61_0217bdf4: ; 0x0217bdf4
.byte 0x42, 0x39, 0xfa, 0xff
.global data_ov61_0217bdf8
data_ov61_0217bdf8: ; 0x0217bdf8
.byte 0x81, 0xf6, 0x71, 0x87
.global data_ov61_0217bdfc
data_ov61_0217bdfc: ; 0x0217bdfc
.byte 0x22, 0x61, 0x9d, 0x6d
.global data_ov61_0217be00
data_ov61_0217be00: ; 0x0217be00
.byte 0x0c, 0x38, 0xe5, 0xfd
.global data_ov61_0217be04
data_ov61_0217be04: ; 0x0217be04
.byte 0x44, 0xea, 0xbe, 0xa4
.global data_ov61_0217be08
data_ov61_0217be08: ; 0x0217be08
.byte 0xa9, 0xcf, 0xde, 0x4b
.global data_ov61_0217be0c
data_ov61_0217be0c: ; 0x0217be0c
.byte 0x60, 0x4b, 0xbb, 0xf6
.global data_ov61_0217be10
data_ov61_0217be10: ; 0x0217be10
.byte 0x70, 0xbc, 0xbf, 0xbe
.global data_ov61_0217be14
data_ov61_0217be14: ; 0x0217be14
.byte 0xc6, 0x7e, 0x9b, 0x28
.global data_ov61_0217be18
data_ov61_0217be18: ; 0x0217be18
.byte 0xfa, 0x27, 0xa1, 0xea
.global data_ov61_0217be1c
data_ov61_0217be1c: ; 0x0217be1c
.byte 0x85, 0x30, 0xef, 0xd4
.global data_ov61_0217be20
data_ov61_0217be20: ; 0x0217be20
.byte 0x05, 0x1d, 0x88, 0x04
.global data_ov61_0217be24
data_ov61_0217be24: ; 0x0217be24
.byte 0x39, 0xd0, 0xd4, 0xd9
.global data_ov61_0217be28
data_ov61_0217be28: ; 0x0217be28
.byte 0xe5, 0x99, 0xdb, 0xe6
.global data_ov61_0217be2c
data_ov61_0217be2c: ; 0x0217be2c
.byte 0xf8, 0x7c, 0xa2, 0x1f
.global data_ov61_0217be30
data_ov61_0217be30: ; 0x0217be30
.byte 0x65, 0x56, 0xac, 0xc4
.global data_ov61_0217be34
data_ov61_0217be34: ; 0x0217be34
.byte 0x44, 0x22, 0x29, 0xf4
.global data_ov61_0217be38
data_ov61_0217be38: ; 0x0217be38
.byte 0x97, 0xff, 0x2a, 0x43
.global data_ov61_0217be3c
data_ov61_0217be3c: ; 0x0217be3c
.byte 0xa7, 0x23, 0x94, 0xab
.global data_ov61_0217be40
data_ov61_0217be40: ; 0x0217be40
.byte 0x39, 0xa0, 0x93, 0xfc
.global data_ov61_0217be44
data_ov61_0217be44: ; 0x0217be44
.byte 0xc3, 0x59, 0x5b, 0x65
.global data_ov61_0217be48
data_ov61_0217be48: ; 0x0217be48
.byte 0x92, 0xcc, 0x0c, 0x8f
.global data_ov61_0217be4c
data_ov61_0217be4c: ; 0x0217be4c
.byte 0x7d, 0xf4, 0xef, 0xff
.global data_ov61_0217be50
data_ov61_0217be50: ; 0x0217be50
.byte 0xd1, 0x5d, 0x84, 0x85
.global data_ov61_0217be54
data_ov61_0217be54: ; 0x0217be54
.byte 0x4f, 0x7e, 0xa8, 0x6f
.global data_ov61_0217be58
data_ov61_0217be58: ; 0x0217be58
.byte 0xe0, 0xe6, 0x2c, 0xfe
.global data_ov61_0217be5c
data_ov61_0217be5c: ; 0x0217be5c
.byte 0x14, 0x43, 0x01, 0xa3
.global data_ov61_0217be60
data_ov61_0217be60: ; 0x0217be60
.byte 0xa1, 0x11, 0x08, 0x4e
.global data_ov61_0217be64
data_ov61_0217be64: ; 0x0217be64
.byte 0x82, 0x7e, 0x53, 0xf7
.global data_ov61_0217be68
data_ov61_0217be68: ; 0x0217be68
.byte 0x35, 0xf2, 0x3a, 0xbd
.global data_ov61_0217be6c
data_ov61_0217be6c: ; 0x0217be6c
.byte 0xbb, 0xd2, 0xd7, 0x2a
.global data_ov61_0217be70
data_ov61_0217be70: ; 0x0217be70
.byte 0x91, 0xd3, 0x86, 0xeb
.global data_ov61_0217be74
data_ov61_0217be74: ; 0x0217be74
.byte 0x80
.global data_ov61_0217be75
data_ov61_0217be75: ; 0x0217be75
.byte 0x00
.global data_ov61_0217be76
data_ov61_0217be76: ; 0x0217be76
.byte 0x00
.global data_ov61_0217be77
data_ov61_0217be77: ; 0x0217be77
.byte 0x00
.global data_ov61_0217be78
data_ov61_0217be78: ; 0x0217be78
.byte 0x00
.global data_ov61_0217be79
data_ov61_0217be79: ; 0x0217be79
.byte 0x00
.global data_ov61_0217be7a
data_ov61_0217be7a: ; 0x0217be7a
.byte 0x00
.global data_ov61_0217be7b
data_ov61_0217be7b: ; 0x0217be7b
.byte 0x00
.global data_ov61_0217be7c
data_ov61_0217be7c: ; 0x0217be7c
.byte 0x00
.global data_ov61_0217be7d
data_ov61_0217be7d: ; 0x0217be7d
.byte 0x00
.global data_ov61_0217be7e
data_ov61_0217be7e: ; 0x0217be7e
.byte 0x00
.global data_ov61_0217be7f
data_ov61_0217be7f: ; 0x0217be7f
.byte 0x00
.global data_ov61_0217be80
data_ov61_0217be80: ; 0x0217be80
.byte 0x00
.global data_ov61_0217be81
data_ov61_0217be81: ; 0x0217be81
.byte 0x00
.global data_ov61_0217be82
data_ov61_0217be82: ; 0x0217be82
.byte 0x00
.global data_ov61_0217be83
data_ov61_0217be83: ; 0x0217be83
.byte 0x00
.global data_ov61_0217be84
data_ov61_0217be84: ; 0x0217be84
.byte 0x00
.global data_ov61_0217be85
data_ov61_0217be85: ; 0x0217be85
.byte 0x00
.global data_ov61_0217be86
data_ov61_0217be86: ; 0x0217be86
.byte 0x00
.global data_ov61_0217be87
data_ov61_0217be87: ; 0x0217be87
.byte 0x00
.global data_ov61_0217be88
data_ov61_0217be88: ; 0x0217be88
.byte 0x00
.global data_ov61_0217be89
data_ov61_0217be89: ; 0x0217be89
.byte 0x00
.global data_ov61_0217be8a
data_ov61_0217be8a: ; 0x0217be8a
.byte 0x00
.global data_ov61_0217be8b
data_ov61_0217be8b: ; 0x0217be8b
.byte 0x00
.global data_ov61_0217be8c
data_ov61_0217be8c: ; 0x0217be8c
.byte 0x00
.global data_ov61_0217be8d
data_ov61_0217be8d: ; 0x0217be8d
.byte 0x00
.global data_ov61_0217be8e
data_ov61_0217be8e: ; 0x0217be8e
.byte 0x00
.global data_ov61_0217be8f
data_ov61_0217be8f: ; 0x0217be8f
.byte 0x00
.global data_ov61_0217be90
data_ov61_0217be90: ; 0x0217be90
.byte 0x00
.global data_ov61_0217be91
data_ov61_0217be91: ; 0x0217be91
.byte 0x00
.global data_ov61_0217be92
data_ov61_0217be92: ; 0x0217be92
.byte 0x00
.global data_ov61_0217be93
data_ov61_0217be93: ; 0x0217be93
.byte 0x00
.global data_ov61_0217be94
data_ov61_0217be94: ; 0x0217be94
.byte 0x00
.global data_ov61_0217be95
data_ov61_0217be95: ; 0x0217be95
.byte 0x00
.global data_ov61_0217be96
data_ov61_0217be96: ; 0x0217be96
.byte 0x00
.global data_ov61_0217be97
data_ov61_0217be97: ; 0x0217be97
.byte 0x00
.global data_ov61_0217be98
data_ov61_0217be98: ; 0x0217be98
.byte 0x00
.global data_ov61_0217be99
data_ov61_0217be99: ; 0x0217be99
.byte 0x00
.global data_ov61_0217be9a
data_ov61_0217be9a: ; 0x0217be9a
.byte 0x00
.global data_ov61_0217be9b
data_ov61_0217be9b: ; 0x0217be9b
.byte 0x00
.global data_ov61_0217be9c
data_ov61_0217be9c: ; 0x0217be9c
.byte 0x00
.global data_ov61_0217be9d
data_ov61_0217be9d: ; 0x0217be9d
.byte 0x00
.global data_ov61_0217be9e
data_ov61_0217be9e: ; 0x0217be9e
.byte 0x00
.global data_ov61_0217be9f
data_ov61_0217be9f: ; 0x0217be9f
.byte 0x00
.global data_ov61_0217bea0
data_ov61_0217bea0: ; 0x0217bea0
.byte 0x00
.global data_ov61_0217bea1
data_ov61_0217bea1: ; 0x0217bea1
.byte 0x00
.global data_ov61_0217bea2
data_ov61_0217bea2: ; 0x0217bea2
.byte 0x00
.global data_ov61_0217bea3
data_ov61_0217bea3: ; 0x0217bea3
.byte 0x00
.global data_ov61_0217bea4
data_ov61_0217bea4: ; 0x0217bea4
.byte 0x00
.global data_ov61_0217bea5
data_ov61_0217bea5: ; 0x0217bea5
.byte 0x00
.global data_ov61_0217bea6
data_ov61_0217bea6: ; 0x0217bea6
.byte 0x00
.global data_ov61_0217bea7
data_ov61_0217bea7: ; 0x0217bea7
.byte 0x00
.global data_ov61_0217bea8
data_ov61_0217bea8: ; 0x0217bea8
.byte 0x00
.global data_ov61_0217bea9
data_ov61_0217bea9: ; 0x0217bea9
.byte 0x00
.global data_ov61_0217beaa
data_ov61_0217beaa: ; 0x0217beaa
.byte 0x00
.global data_ov61_0217beab
data_ov61_0217beab: ; 0x0217beab
.byte 0x00
.global data_ov61_0217beac
data_ov61_0217beac: ; 0x0217beac
.byte 0x00
.global data_ov61_0217bead
data_ov61_0217bead: ; 0x0217bead
.byte 0x00
.global data_ov61_0217beae
data_ov61_0217beae: ; 0x0217beae
.byte 0x00
.global data_ov61_0217beaf
data_ov61_0217beaf: ; 0x0217beaf
.byte 0x00
.global data_ov61_0217beb0
data_ov61_0217beb0: ; 0x0217beb0
.byte 0x00
.global data_ov61_0217beb1
data_ov61_0217beb1: ; 0x0217beb1
.byte 0x00
.global data_ov61_0217beb2
data_ov61_0217beb2: ; 0x0217beb2
.byte 0x00
.global data_ov61_0217beb3
data_ov61_0217beb3: ; 0x0217beb3
.byte 0x00
.global data_ov61_0217beb4
data_ov61_0217beb4: ; 0x0217beb4
.ascii "\\basic\\\\info\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217bec4
data_ov61_0217bec4: ; 0x0217bec4
.ascii "\\status\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bed0
data_ov61_0217bed0: ; 0x0217bed0
.ascii "\\final\\"
.byte 0x00
.global data_ov61_0217bed8
data_ov61_0217bed8: ; 0x0217bed8
.ascii "final"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217bee0
data_ov61_0217bee0: ; 0x0217bee0
.ascii "queryid"
.byte 0x00
.global data_ov61_0217bee8
data_ov61_0217bee8: ; 0x0217bee8
.ascii "SBServerGetStringValueA"
.byte 0x00
.global data_ov61_0217bf00
data_ov61_0217bf00: ; 0x0217bf00
.ascii "%d"
.byte 0x00, 0x00
.global data_ov61_0217bf04
data_ov61_0217bf04: ; 0x0217bf04
.ascii "server"
.byte 0x00, 0x00
.global data_ov61_0217bf0c
data_ov61_0217bf0c: ; 0x0217bf0c
.ascii "sb_server.c"
.byte 0x00
.global data_ov61_0217bf18
data_ov61_0217bf18: ; 0x0217bf18
.ascii "ping"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bf20
data_ov61_0217bf20: ; 0x0217bf20
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bf24
data_ov61_0217bf24: ; 0x0217bf24
.ascii "%s%d"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bf2c
data_ov61_0217bf2c: ; 0x0217bf2c
.ascii "\\%s"
.byte 0x00
.global data_ov61_0217bf30
data_ov61_0217bf30: ; 0x0217bf30
.word data_ov61_0217bf44
.global data_ov61_0217bf34
data_ov61_0217bf34: ; 0x0217bf34
.ascii "SBReleaseStr"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bf44
data_ov61_0217bf44: ; 0x0217bf44
.ascii "Query Error: "
.byte 0x00, 0x00, 0x00
.global data_ov61_0217bf54
data_ov61_0217bf54: ; 0x0217bf54
.ascii "AllKeysPresent"
.byte 0x00, 0x00
.global data_ov61_0217bf64
data_ov61_0217bf64: ; 0x0217bf64
.ascii "SBServerListInit"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bf78
data_ov61_0217bf78: ; 0x0217bf78
.ascii "ProcessAdHocData"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bf8c
data_ov61_0217bf8c: ; 0x0217bf8c
.ascii "ProcessMainListData"
.byte 0x00
.global data_ov61_0217bfa0
data_ov61_0217bfa0: ; 0x0217bfa0
.ascii "SBServerListConnectAndQuery"
.byte 0x00
.global data_ov61_0217bfbc
data_ov61_0217bfbc: ; 0x0217bfbc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217bfc0
data_ov61_0217bfc0: ; 0x0217bfc0
.ascii "val != NULL"
.byte 0x00
.global data_ov61_0217bfcc
data_ov61_0217bfcc: ; 0x0217bfcc
.ascii "sb_serverlist.c"
.byte 0x00
.global data_ov61_0217bfdc
data_ov61_0217bfdc: ; 0x0217bfdc
.ascii "slist != NULL"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217bfec
data_ov61_0217bfec: ; 0x0217bfec
.ascii "callback != NULL"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c000
data_ov61_0217c000: ; 0x0217c000
.ascii "%s.ms%d.gs.nintendowifi.net"
.byte 0x00
.global data_ov61_0217c01c
data_ov61_0217c01c: ; 0x0217c01c
.ascii "slist->state == sl_disconnected"
.byte 0x00
.global data_ov61_0217c03c
data_ov61_0217c03c: ; 0x0217c03c
.ascii "0"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c040
data_ov61_0217c040: ; 0x0217c040
.byte 0xff, 0xff, 0xff, 0xff
.global data_ov61_0217c044
data_ov61_0217c044: ; 0x0217c044
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c048
data_ov61_0217c048: ; 0x0217c048
.ascii "inlen >= 0"
.byte 0x00, 0x00
.global data_ov61_0217c054
data_ov61_0217c054: ; 0x0217c054
.ascii "slist->inbufferlen >= 0"
.byte 0x00
.global data_ov61_0217c06c
data_ov61_0217c06c: ; 0x0217c06c
.ascii "%s.available.gs.nintendowifi.net"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c090
data_ov61_0217c090: ; 0x0217c090
.byte 0xfe, 0xfd, 0x09, 0x00
.global data_ov61_0217c094
data_ov61_0217c094: ; 0x0217c094
.ascii "ArrayNth"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c0a0
data_ov61_0217c0a0: ; 0x0217c0a0
.ascii "ArrayNew"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c0ac
data_ov61_0217c0ac: ; 0x0217c0ac
.ascii "ArrayFree"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c0b8
data_ov61_0217c0b8: ; 0x0217c0b8
.ascii "ArrayGrow"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c0c4
data_ov61_0217c0c4: ; 0x0217c0c4
.ascii "ArrayAppend"
.byte 0x00
.global data_ov61_0217c0d0
data_ov61_0217c0d0: ; 0x0217c0d0
.ascii "ArrayRemoveAt"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c0e0
data_ov61_0217c0e0: ; 0x0217c0e0
.ascii "ArrayDeleteAt"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c0f0
data_ov61_0217c0f0: ; 0x0217c0f0
.ascii "ArrayInsertAt"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c100
data_ov61_0217c100: ; 0x0217c100
.ascii "ArrayReplaceAt"
.byte 0x00, 0x00
.global data_ov61_0217c110
data_ov61_0217c110: ; 0x0217c110
.ascii "ArrayMapBackwards"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c124
data_ov61_0217c124: ; 0x0217c124
.ascii "ArrayInsertSorted"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c138
data_ov61_0217c138: ; 0x0217c138
.ascii "ArrayMapBackwards2"
.byte 0x00, 0x00
.global data_ov61_0217c14c
data_ov61_0217c14c: ; 0x0217c14c
.ascii "array->list"
.byte 0x00
.global data_ov61_0217c158
data_ov61_0217c158: ; 0x0217c158
.ascii "darray.c"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c164
data_ov61_0217c164: ; 0x0217c164
.ascii "array"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c16c
data_ov61_0217c16c: ; 0x0217c16c
.ascii "elemSize"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c178
data_ov61_0217c178: ; 0x0217c178
.ascii "(n >= 0) && (n < array->count)"
.byte 0x00, 0x00
.global data_ov61_0217c198
data_ov61_0217c198: ; 0x0217c198
.ascii "(n >= 0) && (n <= array->count)"
.byte 0x00
.global data_ov61_0217c1b8
data_ov61_0217c1b8: ; 0x0217c1b8
.ascii "comparator"
.byte 0x00, 0x00
.global data_ov61_0217c1c4
data_ov61_0217c1c4: ; 0x0217c1c4
.ascii "fn"
.byte 0x00, 0x00
.global data_ov61_0217c1c8
data_ov61_0217c1c8: ; 0x0217c1c8
.ascii "TableNew2"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c1d4
data_ov61_0217c1d4: ; 0x0217c1d4
.ascii "TableFree"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c1e0
data_ov61_0217c1e0: ; 0x0217c1e0
.ascii "TableEnter"
.byte 0x00, 0x00
.global data_ov61_0217c1ec
data_ov61_0217c1ec: ; 0x0217c1ec
.ascii "TableCount"
.byte 0x00, 0x00
.global data_ov61_0217c1f8
data_ov61_0217c1f8: ; 0x0217c1f8
.ascii "TableRemove"
.byte 0x00
.global data_ov61_0217c204
data_ov61_0217c204: ; 0x0217c204
.ascii "TableLookup"
.byte 0x00
.global data_ov61_0217c210
data_ov61_0217c210: ; 0x0217c210
.ascii "TableMapSafe"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c220
data_ov61_0217c220: ; 0x0217c220
.ascii "TableMapSafe2"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c230
data_ov61_0217c230: ; 0x0217c230
.ascii "hashFn"
.byte 0x00, 0x00
.global data_ov61_0217c238
data_ov61_0217c238: ; 0x0217c238
.ascii "hashtable.c"
.byte 0x00
.global data_ov61_0217c244
data_ov61_0217c244: ; 0x0217c244
.ascii "compFn"
.byte 0x00, 0x00
.global data_ov61_0217c24c
data_ov61_0217c24c: ; 0x0217c24c
.ascii "elemSize"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c258
data_ov61_0217c258: ; 0x0217c258
.ascii "nBuckets"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c264
data_ov61_0217c264: ; 0x0217c264
.ascii "table"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c26c
data_ov61_0217c26c: ; 0x0217c26c
.ascii "table->buckets"
.byte 0x00, 0x00
.global data_ov61_0217c27c
data_ov61_0217c27c: ; 0x0217c27c
.ascii "fn"
.byte 0x00, 0x00
.global data_ov61_0217c280
data_ov61_0217c280: ; 0x0217c280
.ascii "%02x"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c288
data_ov61_0217c288: ; 0x0217c288
.byte 0x01, 0x00, 0x00, 0x00
.global data_ov61_0217c28c
data_ov61_0217c28c: ; 0x0217c28c
.ascii "time"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c294
data_ov61_0217c294: ; 0x0217c294
.ascii "current_time"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c2a4
data_ov61_0217c2a4: ; 0x0217c2a4
.ascii "OS_IsTickAvailable() == TRUE"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c2c4
data_ov61_0217c2c4: ; 0x0217c2c4
.ascii "nonport.c"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c2d0
data_ov61_0217c2d0: ; 0x0217c2d0
.ascii "localhost"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c2dc
data_ov61_0217c2dc: ; 0x0217c2dc
.ascii "gpGetBuddyStatus"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c2f0
data_ov61_0217c2f0: ; 0x0217c2f0
.ascii "Invalid func."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c300
data_ov61_0217c300: ; 0x0217c300
.ascii "No callback."
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c310
data_ov61_0217c310: ; 0x0217c310
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c314
data_ov61_0217c314: ; 0x0217c314
.ascii "The connection has already been disconnected."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c344
data_ov61_0217c344: ; 0x0217c344
.ascii "Invalid reason."
.byte 0x00
.global data_ov61_0217c354
data_ov61_0217c354: ; 0x0217c354
.ascii "\\addbuddy\\"
.byte 0x00, 0x00
.global data_ov61_0217c360
data_ov61_0217c360: ; 0x0217c360
.ascii "\\sesskey\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c36c
data_ov61_0217c36c: ; 0x0217c36c
.ascii "\\newprofileid\\"
.byte 0x00, 0x00
.global data_ov61_0217c37c
data_ov61_0217c37c: ; 0x0217c37c
.ascii "\\reason\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c388
data_ov61_0217c388: ; 0x0217c388
.ascii "\\final\\"
.byte 0x00
.global data_ov61_0217c390
data_ov61_0217c390: ; 0x0217c390
.ascii "Invalid status."
.byte 0x00
.global data_ov61_0217c3a0
data_ov61_0217c3a0: ; 0x0217c3a0
.ascii "Invalid index."
.byte 0x00, 0x00
.global data_ov61_0217c3b0
data_ov61_0217c3b0: ; 0x0217c3b0
.ascii "buddyStatus"
.byte 0x00
.global data_ov61_0217c3bc
data_ov61_0217c3bc: ; 0x0217c3bc
.ascii "gp.c"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c3c4
data_ov61_0217c3c4: ; 0x0217c3c4
.ascii "Invalid statusString."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c3dc
data_ov61_0217c3dc: ; 0x0217c3dc
.ascii "Invalid locationString."
.byte 0x00
.global data_ov61_0217c3f4
data_ov61_0217c3f4: ; 0x0217c3f4
.ascii "\\status\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c400
data_ov61_0217c400: ; 0x0217c400
.ascii "\\statstring\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c410
data_ov61_0217c410: ; 0x0217c410
.ascii "\\locstring\\"
.byte 0x00
.global data_ov61_0217c41c
data_ov61_0217c41c: ; 0x0217c41c
.ascii "Invalid message."
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c430
data_ov61_0217c430: ; 0x0217c430
.ascii "gpiProcess"
.byte 0x00, 0x00
.global data_ov61_0217c43c
data_ov61_0217c43c: ; 0x0217c43c
.ascii "\n\n\n\n\n*************\ngpiInitialize\n"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c460
data_ov61_0217c460: ; 0x0217c460
.ascii "CM"
.byte 0x00, 0x00
.global data_ov61_0217c464
data_ov61_0217c464: ; 0x0217c464
.ascii "There was an error reading from the server."
.byte 0x00
.global data_ov61_0217c490
data_ov61_0217c490: ; 0x0217c490
.ascii "\\final\\"
.byte 0x00
.global data_ov61_0217c498
data_ov61_0217c498: ; 0x0217c498
.ascii "CMD: %s\n"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c4a4
data_ov61_0217c4a4: ; 0x0217c4a4
.ascii "Out of memory."
.byte 0x00, 0x00
.global data_ov61_0217c4b4
data_ov61_0217c4b4: ; 0x0217c4b4
.ascii "\\id\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c4bc
data_ov61_0217c4bc: ; 0x0217c4bc
.ascii "No matching operation found for id %d\n"
.byte 0x00, 0x00
.global data_ov61_0217c4e4
data_ov61_0217c4e4: ; 0x0217c4e4
.ascii "\\bm\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c4ec
data_ov61_0217c4ec: ; 0x0217c4ec
.ascii "\\ka\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c4f4
data_ov61_0217c4f4: ; 0x0217c4f4
.ascii "Received an unrecognized, unsolicited message.\n"
.byte 0x00
.global data_ov61_0217c524
data_ov61_0217c524: ; 0x0217c524
.ascii "The server has closed the connection."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c54c
data_ov61_0217c54c: ; 0x0217c54c
.ascii "(iconnection->connectState == GPI_NOT_CONNECTED) || (iconnection->connectState == GPI_CONNECTING) || (iconnection->connectState == GPI_NEGOTIATING) || (iconnection->connectState == GPI_CONNECTED) || (iconnection->connectState == GPI_DISCONNECTED)"
.byte 0x00, 0x00
.global data_ov61_0217c644
data_ov61_0217c644: ; 0x0217c644
.ascii "gpi.c"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c64c
data_ov61_0217c64c: ; 0x0217c64c
.ascii "0"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c650
data_ov61_0217c650: ; 0x0217c650
.ascii "gpiDeleteBuddy"
.byte 0x00, 0x00
.global data_ov61_0217c660
data_ov61_0217c660: ; 0x0217c660
.ascii "\\authadd\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c66c
data_ov61_0217c66c: ; 0x0217c66c
.ascii "\\sesskey\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c678
data_ov61_0217c678: ; 0x0217c678
.ascii "\\fromprofileid\\"
.byte 0x00
.global data_ov61_0217c688
data_ov61_0217c688: ; 0x0217c688
.ascii "\\sig\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c690
data_ov61_0217c690: ; 0x0217c690
.ascii "\\final\\"
.byte 0x00
.global data_ov61_0217c698
data_ov61_0217c698: ; 0x0217c698
.ascii "\\bm\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c6a0
data_ov61_0217c6a0: ; 0x0217c6a0
.ascii "Unexpected data was received from the server."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c6d0
data_ov61_0217c6d0: ; 0x0217c6d0
.ascii "\\f\\"
.byte 0x00
.global data_ov61_0217c6d4
data_ov61_0217c6d4: ; 0x0217c6d4
.ascii "\\date\\"
.byte 0x00, 0x00
.global data_ov61_0217c6dc
data_ov61_0217c6dc: ; 0x0217c6dc
.ascii "Out of memory."
.byte 0x00, 0x00
.global data_ov61_0217c6ec
data_ov61_0217c6ec: ; 0x0217c6ec
.ascii "\\msg\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c6f4
data_ov61_0217c6f4: ; 0x0217c6f4
.ascii "|signed|"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c700
data_ov61_0217c700: ; 0x0217c700
.ascii "|s|"
.byte 0x00
.global data_ov61_0217c704
data_ov61_0217c704: ; 0x0217c704
.ascii "|ss|"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c70c
data_ov61_0217c70c: ; 0x0217c70c
.ascii "|ls|"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c714
data_ov61_0217c714: ; 0x0217c714
.ascii "|ip|"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c71c
data_ov61_0217c71c: ; 0x0217c71c
.ascii "|p|"
.byte 0x00
.global data_ov61_0217c720
data_ov61_0217c720: ; 0x0217c720
.ascii "|l|"
.byte 0x00
.global data_ov61_0217c724
data_ov61_0217c724: ; 0x0217c724
.ascii "1"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c728
data_ov61_0217c728: ; 0x0217c728
.ascii "\\t\\"
.byte 0x00
.global data_ov61_0217c72c
data_ov61_0217c72c: ; 0x0217c72c
.ascii "Invalid profile."
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c740
data_ov61_0217c740: ; 0x0217c740
.ascii "\\delbuddy\\"
.byte 0x00, 0x00
.global data_ov61_0217c74c
data_ov61_0217c74c: ; 0x0217c74c
.ascii "\\delprofileid\\"
.byte 0x00, 0x00
.global data_ov61_0217c75c
data_ov61_0217c75c: ; 0x0217c75c
.ascii "index >= 0"
.byte 0x00, 0x00
.global data_ov61_0217c768
data_ov61_0217c768: ; 0x0217c768
.ascii "gpiBuddy.c"
.byte 0x00, 0x00
.global data_ov61_0217c774
data_ov61_0217c774: ; 0x0217c774
.ascii "iconnection->profileList.numBuddies >= 0"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c7a0
data_ov61_0217c7a0: ; 0x0217c7a0
.ascii "gpiRecvToBuffer"
.byte 0x00
.global data_ov61_0217c7b0
data_ov61_0217c7b0: ; 0x0217c7b0
.ascii "gpiSendFromBuffer"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c7c4
data_ov61_0217c7c4: ; 0x0217c7c4
.ascii "gpiSendOrBufferChar"
.byte 0x00
.global data_ov61_0217c7d8
data_ov61_0217c7d8: ; 0x0217c7d8
.ascii "gpiAppendCharToBuffer"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c7f0
data_ov61_0217c7f0: ; 0x0217c7f0
.ascii "gpiSendOrBufferStringLen"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c80c
data_ov61_0217c80c: ; 0x0217c80c
.ascii "gpiAppendStringToBufferLen"
.byte 0x00, 0x00
.global data_ov61_0217c828
data_ov61_0217c828: ; 0x0217c828
.ascii "outputBuffer != NULL"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c840
data_ov61_0217c840: ; 0x0217c840
.ascii "gpiBuffer.c"
.byte 0x00
.global data_ov61_0217c84c
data_ov61_0217c84c: ; 0x0217c84c
.ascii "Out of memory."
.byte 0x00, 0x00
.global data_ov61_0217c85c
data_ov61_0217c85c: ; 0x0217c85c
.ascii "string != NULL"
.byte 0x00, 0x00
.global data_ov61_0217c86c
data_ov61_0217c86c: ; 0x0217c86c
.ascii "stringLen >= 0"
.byte 0x00, 0x00
.global data_ov61_0217c87c
data_ov61_0217c87c: ; 0x0217c87c
.ascii "%d"
.byte 0x00, 0x00
.global data_ov61_0217c880
data_ov61_0217c880: ; 0x0217c880
.ascii "There was an error sending on a socket."
.byte 0x00
.global data_ov61_0217c8a8
data_ov61_0217c8a8: ; 0x0217c8a8
.ascii "SENDXXXX(%s): Connection closed\n"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c8cc
data_ov61_0217c8cc: ; 0x0217c8cc
.ascii "peer->outputBuffer.buffer != NULL"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c8f0
data_ov61_0217c8f0: ; 0x0217c8f0
.ascii "PT"
.byte 0x00, 0x00
.global data_ov61_0217c8f4
data_ov61_0217c8f4: ; 0x0217c8f4
.ascii "sock != INVALID_SOCKET"
.byte 0x00, 0x00
.global data_ov61_0217c90c
data_ov61_0217c90c: ; 0x0217c90c
.ascii "inputBuffer != NULL"
.byte 0x00
.global data_ov61_0217c920
data_ov61_0217c920: ; 0x0217c920
.ascii "bytesRead != NULL"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c934
data_ov61_0217c934: ; 0x0217c934
.ascii "connClosed != NULL"
.byte 0x00, 0x00
.global data_ov61_0217c948
data_ov61_0217c948: ; 0x0217c948
.ascii "There was an error reading from a socket."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c974
data_ov61_0217c974: ; 0x0217c974
.ascii "RECVXXXX(%s): Connection closed\n"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c998
data_ov61_0217c998: ; 0x0217c998
.ascii "RECVTOTL(%s): %d\n"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c9ac
data_ov61_0217c9ac: ; 0x0217c9ac
.ascii "len >= 0"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c9b8
data_ov61_0217c9b8: ; 0x0217c9b8
.ascii "pos >= 0"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217c9c4
data_ov61_0217c9c4: ; 0x0217c9c4
.ascii "pos <= len"
.byte 0x00, 0x00
.global data_ov61_0217c9d0
data_ov61_0217c9d0: ; 0x0217c9d0
.ascii "\\msg\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c9d8
data_ov61_0217c9d8: ; 0x0217c9d8
.ascii "\\m\\"
.byte 0x00
.global data_ov61_0217c9dc
data_ov61_0217c9dc: ; 0x0217c9dc
.ascii "\\len\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217c9e4
data_ov61_0217c9e4: ; 0x0217c9e4
.ascii "gpiCallCallback"
.byte 0x00
.global data_ov61_0217c9f4
data_ov61_0217c9f4: ; 0x0217c9f4
.ascii "gpiCallErrorCallback"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217ca0c
data_ov61_0217ca0c: ; 0x0217ca0c
.ascii "iconnection != NULL"
.byte 0x00
.global data_ov61_0217ca20
data_ov61_0217ca20: ; 0x0217ca20
.ascii "gpiCallback.c"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ca30
data_ov61_0217ca30: ; 0x0217ca30
.ascii "result != GP_NO_ERROR"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ca48
data_ov61_0217ca48: ; 0x0217ca48
.ascii "(fatal == GP_FATAL) || (fatal == GP_NON_FATAL)"
.byte 0x00, 0x00
.global data_ov61_0217ca78
data_ov61_0217ca78: ; 0x0217ca78
.ascii "Out of memory."
.byte 0x00, 0x00
.global data_ov61_0217ca88
data_ov61_0217ca88: ; 0x0217ca88
.ascii "data->callback.callback != NULL"
.byte 0x00
.global data_ov61_0217caa8
data_ov61_0217caa8: ; 0x0217caa8
.ascii "data->arg != NULL"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217cabc
data_ov61_0217cabc: ; 0x0217cabc
.ascii "gpiStartConnect"
.byte 0x00
.global data_ov61_0217cacc
data_ov61_0217cacc: ; 0x0217cacc
.ascii "gpiCheckConnect"
.byte 0x00
.global data_ov61_0217cadc
data_ov61_0217cadc: ; 0x0217cadc
.ascii "gpcm.gs.nintendowifi.net"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217caf8
data_ov61_0217caf8: ; 0x0217caf8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cafc
data_ov61_0217cafc: ; 0x0217cafc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cb00
data_ov61_0217cb00: ; 0x0217cb00
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cb04
data_ov61_0217cb04: ; 0x0217cb04
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cb08
data_ov61_0217cb08: ; 0x0217cb08
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cb0c
data_ov61_0217cb0c: ; 0x0217cb0c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cb10
data_ov61_0217cb10: ; 0x0217cb10
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cb14
data_ov61_0217cb14: ; 0x0217cb14
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cb18
data_ov61_0217cb18: ; 0x0217cb18
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cb1c
data_ov61_0217cb1c: ; 0x0217cb1c
.ascii "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
.byte 0x00, 0x00
.global data_ov61_0217cb5c
data_ov61_0217cb5c: ; 0x0217cb5c
.ascii "There was an error creating a socket."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217cb84
data_ov61_0217cb84: ; 0x0217cb84
.ascii "There was an error making a socket non-blocking."
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cbb8
data_ov61_0217cbb8: ; 0x0217cbb8
.ascii "There was an error binding a socket."
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cbe0
data_ov61_0217cbe0: ; 0x0217cbe0
.ascii "There was an error listening on a socket."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217cc0c
data_ov61_0217cc0c: ; 0x0217cc0c
.ascii "There was an error getting a socket's addres."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217cc3c
data_ov61_0217cc3c: ; 0x0217cc3c
.ascii "Could not resolve connection mananger host name."
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cc70
data_ov61_0217cc70: ; 0x0217cc70
.ascii "address.sin_addr.s_addr != 0"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cc90
data_ov61_0217cc90: ; 0x0217cc90
.ascii "gpiConnect.c"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cca0
data_ov61_0217cca0: ; 0x0217cca0
.ascii "There was an error connecting a socket."
.byte 0x00
.global data_ov61_0217ccc8
data_ov61_0217ccc8: ; 0x0217ccc8
.ascii "Invalid connection."
.byte 0x00
.global data_ov61_0217ccdc
data_ov61_0217ccdc: ; 0x0217ccdc
.ascii "Invalid firewall."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ccf0
data_ov61_0217ccf0: ; 0x0217ccf0
.ascii "Out of memory."
.byte 0x00, 0x00
.global data_ov61_0217cd00
data_ov61_0217cd00: ; 0x0217cd00
.ascii "%s@%s"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217cd08
data_ov61_0217cd08: ; 0x0217cd08
.ascii "%s%s%s%s%s%s"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cd18
data_ov61_0217cd18: ; 0x0217cd18
.ascii " "
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cd4c
data_ov61_0217cd4c: ; 0x0217cd4c
.ascii "\\login\\"
.byte 0x00
.global data_ov61_0217cd54
data_ov61_0217cd54: ; 0x0217cd54
.ascii "\\challenge\\"
.byte 0x00
.global data_ov61_0217cd60
data_ov61_0217cd60: ; 0x0217cd60
.ascii "\\authtoken\\"
.byte 0x00
.global data_ov61_0217cd6c
data_ov61_0217cd6c: ; 0x0217cd6c
.ascii "\\uniquenick\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cd7c
data_ov61_0217cd7c: ; 0x0217cd7c
.ascii "\\user\\"
.byte 0x00, 0x00
.global data_ov61_0217cd84
data_ov61_0217cd84: ; 0x0217cd84
.ascii "@"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217cd88
data_ov61_0217cd88: ; 0x0217cd88
.ascii "\\userid\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cd94
data_ov61_0217cd94: ; 0x0217cd94
.ascii "\\profileid\\"
.byte 0x00
.global data_ov61_0217cda0
data_ov61_0217cda0: ; 0x0217cda0
.ascii "\\response\\"
.byte 0x00, 0x00
.global data_ov61_0217cdac
data_ov61_0217cdac: ; 0x0217cdac
.ascii "\\firewall\\1"
.byte 0x00
.global data_ov61_0217cdb8
data_ov61_0217cdb8: ; 0x0217cdb8
.ascii "\\port\\"
.byte 0x00, 0x00
.global data_ov61_0217cdc0
data_ov61_0217cdc0: ; 0x0217cdc0
.ascii "\\productid\\"
.byte 0x00
.global data_ov61_0217cdcc
data_ov61_0217cdcc: ; 0x0217cdcc
.ascii "\\gamename\\"
.byte 0x00, 0x00
.global data_ov61_0217cdd8
data_ov61_0217cdd8: ; 0x0217cdd8
.ascii "\\namespaceid\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217cde8
data_ov61_0217cde8: ; 0x0217cde8
.ascii "\\id\\1"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217cdf0
data_ov61_0217cdf0: ; 0x0217cdf0
.ascii "\\final\\"
.byte 0x00
.global data_ov61_0217cdf8
data_ov61_0217cdf8: ; 0x0217cdf8
.ascii "\\newuser\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ce04
data_ov61_0217ce04: ; 0x0217ce04
.ascii "\\email\\"
.byte 0x00
.global data_ov61_0217ce0c
data_ov61_0217ce0c: ; 0x0217ce0c
.ascii "\\nick\\"
.byte 0x00, 0x00
.global data_ov61_0217ce14
data_ov61_0217ce14: ; 0x0217ce14
.ascii "\\passwordenc\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ce24
data_ov61_0217ce24: ; 0x0217ce24
.ascii "\\cdkeyenc\\"
.byte 0x00, 0x00
.global data_ov61_0217ce30
data_ov61_0217ce30: ; 0x0217ce30
.ascii "\\pid\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ce38
data_ov61_0217ce38: ; 0x0217ce38
.ascii "\\fatal\\"
.byte 0x00
.global data_ov61_0217ce40
data_ov61_0217ce40: ; 0x0217ce40
.ascii "\\lc\\1"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ce48
data_ov61_0217ce48: ; 0x0217ce48
.ascii "Unexpected data was received from the server."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ce78
data_ov61_0217ce78: ; 0x0217ce78
.ascii "\\nur\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ce80
data_ov61_0217ce80: ; 0x0217ce80
.ascii "Unexepected data was received from the server."
.byte 0x00, 0x00
.global data_ov61_0217ceb0
data_ov61_0217ceb0: ; 0x0217ceb0
.ascii "\\lc\\2"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ceb8
data_ov61_0217ceb8: ; 0x0217ceb8
.ascii "\\sesskey\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217cec4
data_ov61_0217cec4: ; 0x0217cec4
.ascii "\\lt\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cecc
data_ov61_0217cecc: ; 0x0217cecc
.ascii "\\proof\\"
.byte 0x00
.global data_ov61_0217ced4
data_ov61_0217ced4: ; 0x0217ced4
.ascii "Could not authenticate server."
.byte 0x00, 0x00
.global data_ov61_0217cef4
data_ov61_0217cef4: ; 0x0217cef4
.ascii "The server has refused the connection."
.byte 0x00, 0x00
.global data_ov61_0217cf1c
data_ov61_0217cf1c: ; 0x0217cf1c
.ascii "state == GPI_CONNECTED"
.byte 0x00, 0x00
.global data_ov61_0217cf34
data_ov61_0217cf34: ; 0x0217cf34
.ascii "\\logout\\\\sesskey\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217cf48
data_ov61_0217cf48: ; 0x0217cf48
.ascii "CM"
.byte 0x00, 0x00
.global data_ov61_0217cf4c
data_ov61_0217cf4c: ; 0x0217cf4c
.ascii "gpiIntToDate"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cf5c
data_ov61_0217cf5c: ; 0x0217cf5c
.ascii "gpiProcessGetInfo"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217cf70
data_ov61_0217cf70: ; 0x0217cf70
.ascii "gpiInfo.c"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217cf7c
data_ov61_0217cf7c: ; 0x0217cf7c
.ascii "Invalid date."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217cf8c
data_ov61_0217cf8c: ; 0x0217cf8c
.ascii "gpiIsValidDate(d, m, y)"
.byte 0x00
.global data_ov61_0217cfa4
data_ov61_0217cfa4: ; 0x0217cfa4
.ascii "\\pi\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217cfac
data_ov61_0217cfac: ; 0x0217cfac
.ascii "Unexpected data was received from the server."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217cfdc
data_ov61_0217cfdc: ; 0x0217cfdc
.ascii "\\profileid\\"
.byte 0x00
.global data_ov61_0217cfe8
data_ov61_0217cfe8: ; 0x0217cfe8
.ascii "profileid > 0"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217cff8
data_ov61_0217cff8: ; 0x0217cff8
.ascii "\\nick\\"
.byte 0x00, 0x00
.global data_ov61_0217d000
data_ov61_0217d000: ; 0x0217d000
.ascii "\\uniquenick\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d010
data_ov61_0217d010: ; 0x0217d010
.ascii "\\email\\"
.byte 0x00
.global data_ov61_0217d018
data_ov61_0217d018: ; 0x0217d018
.ascii "\\firstname\\"
.byte 0x00
.global data_ov61_0217d024
data_ov61_0217d024: ; 0x0217d024
.ascii "\\lastname\\"
.byte 0x00, 0x00
.global data_ov61_0217d030
data_ov61_0217d030: ; 0x0217d030
.ascii "\\icquin\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d03c
data_ov61_0217d03c: ; 0x0217d03c
.ascii "\\homepage\\"
.byte 0x00, 0x00
.global data_ov61_0217d048
data_ov61_0217d048: ; 0x0217d048
.ascii "\\zipcode\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d054
data_ov61_0217d054: ; 0x0217d054
.ascii "\\countrycode\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d064
data_ov61_0217d064: ; 0x0217d064
.ascii "\\lon\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d06c
data_ov61_0217d06c: ; 0x0217d06c
.ascii "\\lat\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d074
data_ov61_0217d074: ; 0x0217d074
.ascii "\\loc\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d07c
data_ov61_0217d07c: ; 0x0217d07c
.ascii "\\birthday\\"
.byte 0x00, 0x00
.global data_ov61_0217d088
data_ov61_0217d088: ; 0x0217d088
.ascii "\\sex\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d090
data_ov61_0217d090: ; 0x0217d090
.ascii "\\pmask\\"
.byte 0x00
.global data_ov61_0217d098
data_ov61_0217d098: ; 0x0217d098
.ascii "\\aim\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d0a0
data_ov61_0217d0a0: ; 0x0217d0a0
.ascii "\\pic\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d0a8
data_ov61_0217d0a8: ; 0x0217d0a8
.ascii "\\occ\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d0b0
data_ov61_0217d0b0: ; 0x0217d0b0
.ascii "\\ind\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d0b8
data_ov61_0217d0b8: ; 0x0217d0b8
.ascii "\\inc\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d0c0
data_ov61_0217d0c0: ; 0x0217d0c0
.ascii "\\mar\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d0c8
data_ov61_0217d0c8: ; 0x0217d0c8
.ascii "\\chc\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d0d0
data_ov61_0217d0d0: ; 0x0217d0d0
.ascii "\\i1\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d0d8
data_ov61_0217d0d8: ; 0x0217d0d8
.ascii "\\o1\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d0e0
data_ov61_0217d0e0: ; 0x0217d0e0
.ascii "\\conn\\"
.byte 0x00, 0x00
.global data_ov61_0217d0e8
data_ov61_0217d0e8: ; 0x0217d0e8
.ascii "\\sig\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d0f0
data_ov61_0217d0f0: ; 0x0217d0f0
.ascii "Out of memory."
.byte 0x00, 0x00
.global data_ov61_0217d100
data_ov61_0217d100: ; 0x0217d100
.ascii "\\updatepro\\\\sesskey\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d118
data_ov61_0217d118: ; 0x0217d118
.ascii "\\final\\"
.byte 0x00
.global data_ov61_0217d120
data_ov61_0217d120: ; 0x0217d120
.ascii "\\updateui\\\\sesskey\\"
.byte 0x00
.global data_ov61_0217d134
data_ov61_0217d134: ; 0x0217d134
.ascii "Invalid zipcode."
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d148
data_ov61_0217d148: ; 0x0217d148
.ascii "%d"
.byte 0x00, 0x00
.global data_ov61_0217d14c
data_ov61_0217d14c: ; 0x0217d14c
.byte 0x30
.global data_ov61_0217d14d
data_ov61_0217d14d: ; 0x0217d14d
.byte 0x00
.global data_ov61_0217d14e
data_ov61_0217d14e: ; 0x0217d14e
.byte 0x00
.global data_ov61_0217d14f
data_ov61_0217d14f: ; 0x0217d14f
.byte 0x00
.global data_ov61_0217d150
data_ov61_0217d150: ; 0x0217d150
.byte 0x31
.global data_ov61_0217d151
data_ov61_0217d151: ; 0x0217d151
.byte 0x00
.global data_ov61_0217d152
data_ov61_0217d152: ; 0x0217d152
.byte 0x00
.global data_ov61_0217d153
data_ov61_0217d153: ; 0x0217d153
.byte 0x00
.global data_ov61_0217d154
data_ov61_0217d154: ; 0x0217d154
.byte 0x32
.global data_ov61_0217d155
data_ov61_0217d155: ; 0x0217d155
.byte 0x00
.global data_ov61_0217d156
data_ov61_0217d156: ; 0x0217d156
.byte 0x00
.global data_ov61_0217d157
data_ov61_0217d157: ; 0x0217d157
.byte 0x00
.global data_ov61_0217d158
data_ov61_0217d158: ; 0x0217d158
.ascii "Invalid sex."
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d168
data_ov61_0217d168: ; 0x0217d168
.ascii "\\cpubrandid\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d178
data_ov61_0217d178: ; 0x0217d178
.ascii "\\cpuspeed\\"
.byte 0x00, 0x00
.global data_ov61_0217d184
data_ov61_0217d184: ; 0x0217d184
.ascii "\\memory\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d190
data_ov61_0217d190: ; 0x0217d190
.ascii "\\videocard1ram\\"
.byte 0x00
.global data_ov61_0217d1a0
data_ov61_0217d1a0: ; 0x0217d1a0
.ascii "\\videocard2ram\\"
.byte 0x00
.global data_ov61_0217d1b0
data_ov61_0217d1b0: ; 0x0217d1b0
.ascii "\\connectionid\\"
.byte 0x00, 0x00
.global data_ov61_0217d1c0
data_ov61_0217d1c0: ; 0x0217d1c0
.ascii "\\connectionspeed\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d1d4
data_ov61_0217d1d4: ; 0x0217d1d4
.ascii "\\hasnetwork\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d1e4
data_ov61_0217d1e4: ; 0x0217d1e4
.ascii "Invalid info."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d1f4
data_ov61_0217d1f4: ; 0x0217d1f4
.ascii "Invalid value."
.byte 0x00, 0x00
.global data_ov61_0217d204
data_ov61_0217d204: ; 0x0217d204
.ascii "\\password\\"
.byte 0x00, 0x00
.global data_ov61_0217d210
data_ov61_0217d210: ; 0x0217d210
.ascii "Invalid countrycode."
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d228
data_ov61_0217d228: ; 0x0217d228
.ascii "\\videocard1string\\"
.byte 0x00, 0x00
.global data_ov61_0217d23c
data_ov61_0217d23c: ; 0x0217d23c
.ascii "\\videocard2string\\"
.byte 0x00, 0x00
.global data_ov61_0217d250
data_ov61_0217d250: ; 0x0217d250
.ascii "\\osstring\\"
.byte 0x00, 0x00
.global data_ov61_0217d25c
data_ov61_0217d25c: ; 0x0217d25c
.ascii "\\getprofile\\\\sesskey\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d274
data_ov61_0217d274: ; 0x0217d274
.ascii "\\id\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d27c
data_ov61_0217d27c: ; 0x0217d27c
.ascii "gpiDestroyOperation"
.byte 0x00
.global data_ov61_0217d290
data_ov61_0217d290: ; 0x0217d290
.ascii "gpiFailedOpCallback"
.byte 0x00
.global data_ov61_0217d2a4
data_ov61_0217d2a4: ; 0x0217d2a4
.ascii "gpiProcessOperation"
.byte 0x00
.global data_ov61_0217d2b8
data_ov61_0217d2b8: ; 0x0217d2b8
.ascii "connection != NULL"
.byte 0x00, 0x00
.global data_ov61_0217d2cc
data_ov61_0217d2cc: ; 0x0217d2cc
.ascii "gpiOperation.c"
.byte 0x00, 0x00
.global data_ov61_0217d2dc
data_ov61_0217d2dc: ; 0x0217d2dc
.ascii "*connection != NULL"
.byte 0x00
.global data_ov61_0217d2f0
data_ov61_0217d2f0: ; 0x0217d2f0
.ascii "operation != NULL"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d304
data_ov61_0217d304: ; 0x0217d304
.ascii "Out of memory."
.byte 0x00, 0x00
.global data_ov61_0217d314
data_ov61_0217d314: ; 0x0217d314
.ascii "0"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d318
data_ov61_0217d318: ; 0x0217d318
.ascii "iconnection->numSearches >= 0"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d338
data_ov61_0217d338: ; 0x0217d338
.ascii "gpiProcessOperation was passed an operation with an invalid type (%d)\n"
.byte 0x00, 0x00
.global data_ov61_0217d380
data_ov61_0217d380: ; 0x0217d380
.ascii "gpiRemovePeer"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d390
data_ov61_0217d390: ; 0x0217d390
.ascii "gpiProcessPeer"
.byte 0x00, 0x00
.global data_ov61_0217d3a0
data_ov61_0217d3a0: ; 0x0217d3a0
.ascii "gpiPeerAddMessage"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d3b4
data_ov61_0217d3b4: ; 0x0217d3b4
.ascii "gpiPeerStartTransferMessage"
.byte 0x00
.global data_ov61_0217d3d0
data_ov61_0217d3d0: ; 0x0217d3d0
.ascii "gpiPeerFinishTransferMessage"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d3f0
data_ov61_0217d3f0: ; 0x0217d3f0
.ascii "gpiProcessPeerAcceptingConnection"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d414
data_ov61_0217d414: ; 0x0217d414
.ascii "gpiProcessPeerInitiatingConnection"
.byte 0x00, 0x00
.global data_ov61_0217d438
data_ov61_0217d438: ; 0x0217d438
.ascii "Error connecting to a peer."
.byte 0x00
.global data_ov61_0217d454
data_ov61_0217d454: ; 0x0217d454
.ascii "\\auth\\"
.byte 0x00, 0x00
.global data_ov61_0217d45c
data_ov61_0217d45c: ; 0x0217d45c
.ascii "\\pid\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d464
data_ov61_0217d464: ; 0x0217d464
.ascii "\\nick\\"
.byte 0x00, 0x00
.global data_ov61_0217d46c
data_ov61_0217d46c: ; 0x0217d46c
.ascii "\\sig\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d474
data_ov61_0217d474: ; 0x0217d474
.ascii "\\final\\"
.byte 0x00
.global data_ov61_0217d47c
data_ov61_0217d47c: ; 0x0217d47c
.ascii "PR"
.byte 0x00, 0x00
.global data_ov61_0217d480
data_ov61_0217d480: ; 0x0217d480
.ascii "\\anack\\"
.byte 0x00
.global data_ov61_0217d488
data_ov61_0217d488: ; 0x0217d488
.ascii "Error getting buddy authorization."
.byte 0x00, 0x00
.global data_ov61_0217d4ac
data_ov61_0217d4ac: ; 0x0217d4ac
.ascii "\\aack\\"
.byte 0x00, 0x00
.global data_ov61_0217d4b4
data_ov61_0217d4b4: ; 0x0217d4b4
.ascii "Error parsing buddy message."
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d4d4
data_ov61_0217d4d4: ; 0x0217d4d4
.ascii "0"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d4d8
data_ov61_0217d4d8: ; 0x0217d4d8
.ascii "gpiPeer.c"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d4e4
data_ov61_0217d4e4: ; 0x0217d4e4
.ascii "peer->state == GPI_PEER_WAITING"
.byte 0x00
.global data_ov61_0217d504
data_ov61_0217d504: ; 0x0217d504
.ascii "%s%d%d"
.byte 0x00, 0x00
.global data_ov61_0217d50c
data_ov61_0217d50c: ; 0x0217d50c
.ascii "Out of memory."
.byte 0x00, 0x00
.global data_ov61_0217d51c
data_ov61_0217d51c: ; 0x0217d51c
.ascii "1"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d520
data_ov61_0217d520: ; 0x0217d520
.ascii "peer->state != GPI_PEER_NOT_CONNECTED"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d548
data_ov61_0217d548: ; 0x0217d548
.ascii "peer != NULL"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d558
data_ov61_0217d558: ; 0x0217d558
.ascii "Tried to remove peer not in list."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d57c
data_ov61_0217d57c: ; 0x0217d57c
.ascii "There was an error creating a socket."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d5a4
data_ov61_0217d5a4: ; 0x0217d5a4
.ascii "There was an error making a socket non-blocking."
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d5d8
data_ov61_0217d5d8: ; 0x0217d5d8
.ascii "There was an error connecting a socket."
.byte 0x00
.global data_ov61_0217d600
data_ov61_0217d600: ; 0x0217d600
.ascii "message != NULL"
.byte 0x00
.global data_ov61_0217d610
data_ov61_0217d610: ; 0x0217d610
.ascii "\\m\\"
.byte 0x00
.global data_ov61_0217d614
data_ov61_0217d614: ; 0x0217d614
.ascii "\\len\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d61c
data_ov61_0217d61c: ; 0x0217d61c
.ascii "\\msg\\\n"
.byte 0x00, 0x00
.global data_ov61_0217d624
data_ov61_0217d624: ; 0x0217d624
.ascii "transferID"
.byte 0x00, 0x00
.global data_ov61_0217d630
data_ov61_0217d630: ; 0x0217d630
.ascii "\\m\\%d\\xfer\\%d %u %u"
.byte 0x00
.global data_ov61_0217d644
data_ov61_0217d644: ; 0x0217d644
.ascii ""
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d648
data_ov61_0217d648: ; 0x0217d648
.ascii "\\len\\%d\\msg\\\n"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d658
data_ov61_0217d658: ; 0x0217d658
.ascii "gpiProfileListAdd"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d66c
data_ov61_0217d66c: ; 0x0217d66c
.ascii "\\npr\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d674
data_ov61_0217d674: ; 0x0217d674
.ascii "Unexpected data was received from the server."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d6a4
data_ov61_0217d6a4: ; 0x0217d6a4
.ascii "\\profileid\\"
.byte 0x00
.global data_ov61_0217d6b0
data_ov61_0217d6b0: ; 0x0217d6b0
.ascii "Out of memory."
.byte 0x00, 0x00
.global data_ov61_0217d6c0
data_ov61_0217d6c0: ; 0x0217d6c0
.ascii "id > 0"
.byte 0x00, 0x00
.global data_ov61_0217d6c8
data_ov61_0217d6c8: ; 0x0217d6c8
.ascii "gpiProfile.c"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d6d8
data_ov61_0217d6d8: ; 0x0217d6d8
.ascii "gpiProcessSearch"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d6ec
data_ov61_0217d6ec: ; 0x0217d6ec
.ascii "gpiProcessSearches"
.byte 0x00, 0x00
.global data_ov61_0217d700
data_ov61_0217d700: ; 0x0217d700
.ascii "gpiStartProfileSearch"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d718
data_ov61_0217d718: ; 0x0217d718
.ascii "gpsp.gs.nintendowifi.net"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d734
data_ov61_0217d734: ; 0x0217d734
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d738
data_ov61_0217d738: ; 0x0217d738
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d73c
data_ov61_0217d73c: ; 0x0217d73c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d740
data_ov61_0217d740: ; 0x0217d740
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d744
data_ov61_0217d744: ; 0x0217d744
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d748
data_ov61_0217d748: ; 0x0217d748
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d74c
data_ov61_0217d74c: ; 0x0217d74c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d750
data_ov61_0217d750: ; 0x0217d750
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d754
data_ov61_0217d754: ; 0x0217d754
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d758
data_ov61_0217d758: ; 0x0217d758
.ascii "Out of memory."
.byte 0x00, 0x00
.global data_ov61_0217d768
data_ov61_0217d768: ; 0x0217d768
.ascii "There was an error creating a socket."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d790
data_ov61_0217d790: ; 0x0217d790
.ascii "There was an error making a socket non-blocking."
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d7c4
data_ov61_0217d7c4: ; 0x0217d7c4
.ascii "Could not resolve search mananger host name."
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d7f4
data_ov61_0217d7f4: ; 0x0217d7f4
.ascii "address.sin_addr.s_addr != 0"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d814
data_ov61_0217d814: ; 0x0217d814
.ascii "gpiSearch.c"
.byte 0x00
.global data_ov61_0217d820
data_ov61_0217d820: ; 0x0217d820
.ascii "There was an error connecting a socket."
.byte 0x00
.global data_ov61_0217d848
data_ov61_0217d848: ; 0x0217d848
.ascii "No search criteria."
.byte 0x00
.global data_ov61_0217d85c
data_ov61_0217d85c: ; 0x0217d85c
.ascii "SM"
.byte 0x00, 0x00
.global data_ov61_0217d860
data_ov61_0217d860: ; 0x0217d860
.ascii "Could not connect to the search manager."
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d88c
data_ov61_0217d88c: ; 0x0217d88c
.ascii "\\search\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d898
data_ov61_0217d898: ; 0x0217d898
.ascii "\\sesskey\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d8a4
data_ov61_0217d8a4: ; 0x0217d8a4
.ascii "\\profileid\\"
.byte 0x00
.global data_ov61_0217d8b0
data_ov61_0217d8b0: ; 0x0217d8b0
.ascii "\\namespaceid\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d8c0
data_ov61_0217d8c0: ; 0x0217d8c0
.ascii "\\nick\\"
.byte 0x00, 0x00
.global data_ov61_0217d8c8
data_ov61_0217d8c8: ; 0x0217d8c8
.ascii "\\uniquenick\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d8d8
data_ov61_0217d8d8: ; 0x0217d8d8
.ascii "\\email\\"
.byte 0x00
.global data_ov61_0217d8e0
data_ov61_0217d8e0: ; 0x0217d8e0
.ascii "\\firstname\\"
.byte 0x00
.global data_ov61_0217d8ec
data_ov61_0217d8ec: ; 0x0217d8ec
.ascii "\\lastname\\"
.byte 0x00, 0x00
.global data_ov61_0217d8f8
data_ov61_0217d8f8: ; 0x0217d8f8
.ascii "\\icquin\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d904
data_ov61_0217d904: ; 0x0217d904
.ascii "\\skip\\"
.byte 0x00, 0x00
.global data_ov61_0217d90c
data_ov61_0217d90c: ; 0x0217d90c
.ascii "\\valid\\"
.byte 0x00
.global data_ov61_0217d914
data_ov61_0217d914: ; 0x0217d914
.ascii "\\nicks\\"
.byte 0x00
.global data_ov61_0217d91c
data_ov61_0217d91c: ; 0x0217d91c
.ascii "\\pass\\"
.byte 0x00, 0x00
.global data_ov61_0217d924
data_ov61_0217d924: ; 0x0217d924
.ascii "\\pmatch\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d930
data_ov61_0217d930: ; 0x0217d930
.ascii "\\productid\\"
.byte 0x00
.global data_ov61_0217d93c
data_ov61_0217d93c: ; 0x0217d93c
.ascii "\\check\\"
.byte 0x00
.global data_ov61_0217d944
data_ov61_0217d944: ; 0x0217d944
.ascii "\\newuser\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d950
data_ov61_0217d950: ; 0x0217d950
.ascii "\\productID\\"
.byte 0x00
.global data_ov61_0217d95c
data_ov61_0217d95c: ; 0x0217d95c
.ascii "\\cdkey\\"
.byte 0x00
.global data_ov61_0217d964
data_ov61_0217d964: ; 0x0217d964
.ascii "\\others\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d970
data_ov61_0217d970: ; 0x0217d970
.ascii "\\uniquesearch\\"
.byte 0x00, 0x00
.global data_ov61_0217d980
data_ov61_0217d980: ; 0x0217d980
.ascii "\\preferrednick\\"
.byte 0x00
.global data_ov61_0217d990
data_ov61_0217d990: ; 0x0217d990
.ascii "0"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217d994
data_ov61_0217d994: ; 0x0217d994
.ascii "\\gamename\\"
.byte 0x00, 0x00
.global data_ov61_0217d9a0
data_ov61_0217d9a0: ; 0x0217d9a0
.ascii "\\final\\"
.byte 0x00
.global data_ov61_0217d9a8
data_ov61_0217d9a8: ; 0x0217d9a8
.ascii "There was an error reading from the server."
.byte 0x00
.global data_ov61_0217d9d4
data_ov61_0217d9d4: ; 0x0217d9d4
.ascii "bsrdone"
.byte 0x00
.global data_ov61_0217d9dc
data_ov61_0217d9dc: ; 0x0217d9dc
.ascii "more"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d9e4
data_ov61_0217d9e4: ; 0x0217d9e4
.ascii "bsr"
.byte 0x00
.global data_ov61_0217d9e8
data_ov61_0217d9e8: ; 0x0217d9e8
.ascii "nick"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217d9f0
data_ov61_0217d9f0: ; 0x0217d9f0
.ascii "uniquenick"
.byte 0x00, 0x00
.global data_ov61_0217d9fc
data_ov61_0217d9fc: ; 0x0217d9fc
.ascii "firstname"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217da08
data_ov61_0217da08: ; 0x0217da08
.ascii "lastname"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217da14
data_ov61_0217da14: ; 0x0217da14
.ascii "email"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217da1c
data_ov61_0217da1c: ; 0x0217da1c
.ascii "Error reading from the search server."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217da44
data_ov61_0217da44: ; 0x0217da44
.ascii "vr"
.byte 0x00, 0x00
.global data_ov61_0217da48
data_ov61_0217da48: ; 0x0217da48
.ascii "nr"
.byte 0x00, 0x00
.global data_ov61_0217da4c
data_ov61_0217da4c: ; 0x0217da4c
.ascii "ndone"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217da54
data_ov61_0217da54: ; 0x0217da54
.ascii "psrdone"
.byte 0x00
.global data_ov61_0217da5c
data_ov61_0217da5c: ; 0x0217da5c
.ascii "psr"
.byte 0x00
.global data_ov61_0217da60
data_ov61_0217da60: ; 0x0217da60
.ascii "status"
.byte 0x00, 0x00
.global data_ov61_0217da68
data_ov61_0217da68: ; 0x0217da68
.ascii "statuscode"
.byte 0x00, 0x00
.global data_ov61_0217da74
data_ov61_0217da74: ; 0x0217da74
.ascii "cur"
.byte 0x00
.global data_ov61_0217da78
data_ov61_0217da78: ; 0x0217da78
.ascii "\\pid\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217da80
data_ov61_0217da80: ; 0x0217da80
.ascii "nur"
.byte 0x00
.global data_ov61_0217da84
data_ov61_0217da84: ; 0x0217da84
.ascii "others"
.byte 0x00, 0x00
.global data_ov61_0217da8c
data_ov61_0217da8c: ; 0x0217da8c
.ascii "odone"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217da94
data_ov61_0217da94: ; 0x0217da94
.ascii "o"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217da98
data_ov61_0217da98: ; 0x0217da98
.ascii "first"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217daa0
data_ov61_0217daa0: ; 0x0217daa0
.ascii "last"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217daa8
data_ov61_0217daa8: ; 0x0217daa8
.ascii "us"
.byte 0x00, 0x00
.global data_ov61_0217daac
data_ov61_0217daac: ; 0x0217daac
.ascii "usdone"
.byte 0x00, 0x00
.global data_ov61_0217dab4
data_ov61_0217dab4: ; 0x0217dab4
.ascii "count == arg->numSuggestedNicks"
.byte 0x00
.global data_ov61_0217dad4
data_ov61_0217dad4: ; 0x0217dad4
.ascii "num < iconnection->numSearches"
.byte 0x00, 0x00
.global data_ov61_0217daf4
data_ov61_0217daf4: ; 0x0217daf4
.ascii ""
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217daf8
data_ov61_0217daf8: ; 0x0217daf8
.ascii "\\version\\%d\\result\\%d"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217db10
data_ov61_0217db10: ; 0x0217db10
.ascii "\\xfer\\"
.byte 0x00, 0x00
.global data_ov61_0217db18
data_ov61_0217db18: ; 0x0217db18
.ascii "%d %u %u"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217db24
data_ov61_0217db24: ; 0x0217db24
.ascii "\\rn\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217db2c
data_ov61_0217db2c: ; 0x0217db2c
.ascii "Unexpected data was received from the server."
.byte 0x00, 0x00, 0x00
.global data_ov61_0217db5c
data_ov61_0217db5c: ; 0x0217db5c
.ascii "Out of memory."
.byte 0x00, 0x00
.global data_ov61_0217db6c
data_ov61_0217db6c: ; 0x0217db6c
.ascii "strzcpy"
.byte 0x00
.global data_ov61_0217db74
data_ov61_0217db74: ; 0x0217db74
.ascii "gpiValueForKey"
.byte 0x00, 0x00
.global data_ov61_0217db84
data_ov61_0217db84: ; 0x0217db84
.ascii "gpiReadKeyAndValue"
.byte 0x00, 0x00
.global data_ov61_0217db98
data_ov61_0217db98: ; 0x0217db98
.ascii "dest != NULL"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217dba8
data_ov61_0217dba8: ; 0x0217dba8
.ascii "gpiUtility.c"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217dbb8
data_ov61_0217dbb8: ; 0x0217dbb8
.ascii "src != NULL"
.byte 0x00
.global data_ov61_0217dbc4
data_ov61_0217dbc4: ; 0x0217dbc4
.ascii "\\error\\"
.byte 0x00
.global data_ov61_0217dbcc
data_ov61_0217dbcc: ; 0x0217dbcc
.ascii "\\err\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217dbd4
data_ov61_0217dbd4: ; 0x0217dbd4
.ascii "\\errmsg\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217dbe0
data_ov61_0217dbe0: ; 0x0217dbe0
.ascii "\\fatal\\"
.byte 0x00
.global data_ov61_0217dbe8
data_ov61_0217dbe8: ; 0x0217dbe8
.ascii "command != NULL"
.byte 0x00
.global data_ov61_0217dbf8
data_ov61_0217dbf8: ; 0x0217dbf8
.ascii "key != NULL"
.byte 0x00
.global data_ov61_0217dc04
data_ov61_0217dc04: ; 0x0217dc04
.ascii "value != NULL"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217dc14
data_ov61_0217dc14: ; 0x0217dc14
.ascii "len > 0"
.byte 0x00
.global data_ov61_0217dc1c
data_ov61_0217dc1c: ; 0x0217dc1c
.ascii "Error connecting\n"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217dc30
data_ov61_0217dc30: ; 0x0217dc30
.ascii "There was an error checking for a completed connection."
.byte 0x00
.global data_ov61_0217dc68
data_ov61_0217dc68: ; 0x0217dc68
.ascii "Connection rejected\n"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217dc80
data_ov61_0217dc80: ; 0x0217dc80
.ascii "Connection accepted\n"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217dc98
data_ov61_0217dc98: ; 0x0217dc98
.ascii "buffer != NULL"
.byte 0x00, 0x00
.global data_ov61_0217dca8
data_ov61_0217dca8: ; 0x0217dca8
.ascii "Parse Error."
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217dcb8
data_ov61_0217dcb8: ; 0x0217dcb8
.ascii "DoFind"
.byte 0x00, 0x00
.global data_ov61_0217dcc0
data_ov61_0217dcc0: ; 0x0217dcc0
.ascii "BucketNew"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217dccc
data_ov61_0217dccc: ; 0x0217dccc
.ascii "BucketConcat"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217dcdc
data_ov61_0217dcdc: ; 0x0217dcdc
.ascii "set"
.byte 0x00
.global data_ov61_0217dce0
data_ov61_0217dce0: ; 0x0217dce0
.ascii "gbucket.c"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217dcec
data_ov61_0217dcec: ; 0x0217dcec
.ascii "pbucket->type == bt_string"
.byte 0x00, 0x00
.global data_ov61_0217dd08
data_ov61_0217dd08: ; 0x0217dd08
.byte 0xff, 0xff, 0xff, 0xff
.global data_ov61_0217dd0c
data_ov61_0217dd0c: ; 0x0217dd0c
.byte 0x20, 0x4e, 0x00, 0x00
.global data_ov61_0217dd10
data_ov61_0217dd10: ; 0x0217dd10
.word data_ov61_0217dd54
.global data_ov61_0217dd14
data_ov61_0217dd14: ; 0x0217dd14
.word func_ov61_02171bc0
.global data_ov61_0217dd18
data_ov61_0217dd18: ; 0x0217dd18
.word func_ov61_02171bec
.global data_ov61_0217dd1c
data_ov61_0217dd1c: ; 0x0217dd1c
.word func_ov61_02171c80
.global data_ov61_0217dd20
data_ov61_0217dd20: ; 0x0217dd20
.word func_ov61_02171d04
.global data_ov61_0217dd24
data_ov61_0217dd24: ; 0x0217dd24
.word func_ov61_02171d84
.global data_ov61_0217dd28
data_ov61_0217dd28: ; 0x0217dd28
.word func_ov61_02171e08
.global data_ov61_0217dd2c
data_ov61_0217dd2c: ; 0x0217dd2c
.word func_ov61_02171eac
.global data_ov61_0217dd30
data_ov61_0217dd30: ; 0x0217dd30
.word func_ov61_02172b6c
.global data_ov61_0217dd34
data_ov61_0217dd34: ; 0x0217dd34
.word func_ov61_02172bd4
.global data_ov61_0217dd38
data_ov61_0217dd38: ; 0x0217dd38
.word func_ov61_02172c44
.global data_ov61_0217dd3c
data_ov61_0217dd3c: ; 0x0217dd3c
.word func_ov61_02172ca0
.global data_ov61_0217dd40
data_ov61_0217dd40: ; 0x0217dd40
.word func_ov61_02172cfc
.global data_ov61_0217dd44
data_ov61_0217dd44: ; 0x0217dd44
.word func_ov61_02172d5c
.global data_ov61_0217dd48
data_ov61_0217dd48: ; 0x0217dd48
.word func_ov61_02172db8
.global data_ov61_0217dd4c
data_ov61_0217dd4c: ; 0x0217dd4c
.word func_ov61_02172e14
.global data_ov61_0217dd50
data_ov61_0217dd50: ; 0x0217dd50
.word func_ov61_02172e74
.global data_ov61_0217dd54
data_ov61_0217dd54: ; 0x0217dd54
.byte 0x00
.global data_ov61_0217dd55
data_ov61_0217dd55: ; 0x0217dd55
.ascii "ameSpy3D"
.byte 0x00
.global data_ov61_0217dd5e
data_ov61_0217dd5e: ; 0x0217dd5e
.byte 0x00
.global data_ov61_0217dd5f
data_ov61_0217dd5f: ; 0x0217dd5f
.byte 0x00
.global data_ov61_0217dd60
data_ov61_0217dd60: ; 0x0217dd60
.byte 0x00
.global data_ov61_0217dd61
data_ov61_0217dd61: ; 0x0217dd61
.byte 0x00
.global data_ov61_0217dd62
data_ov61_0217dd62: ; 0x0217dd62
.byte 0x00
.global data_ov61_0217dd63
data_ov61_0217dd63: ; 0x0217dd63
.byte 0x00
.global data_ov61_0217dd64
data_ov61_0217dd64: ; 0x0217dd64
.byte 0x00
.global data_ov61_0217dd65
data_ov61_0217dd65: ; 0x0217dd65
.ascii "rojectAphex"
.byte 0x00
.global data_ov61_0217dd71
data_ov61_0217dd71: ; 0x0217dd71
.byte 0x00
.global data_ov61_0217dd72
data_ov61_0217dd72: ; 0x0217dd72
.byte 0x00
.global data_ov61_0217dd73
data_ov61_0217dd73: ; 0x0217dd73
.byte 0x00
.global data_ov61_0217dd74
data_ov61_0217dd74: ; 0x0217dd74
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217dd78
data_ov61_0217dd78: ; 0x0217dd78
.byte 0x5c, 0x00, 0x00, 0x00
.global data_ov61_0217dd7c
data_ov61_0217dd7c: ; 0x0217dd7c
.ascii "pauthr"
.byte 0x00, 0x00
.global data_ov61_0217dd84
data_ov61_0217dd84: ; 0x0217dd84
.ascii "lid"
.byte 0x00
.global data_ov61_0217dd88
data_ov61_0217dd88: ; 0x0217dd88
.ascii "errmsg"
.byte 0x00, 0x00
.global data_ov61_0217dd90
data_ov61_0217dd90: ; 0x0217dd90
.ascii "getpidr"
.byte 0x00
.global data_ov61_0217dd98
data_ov61_0217dd98: ; 0x0217dd98
.ascii "getpdr"
.byte 0x00, 0x00
.global data_ov61_0217dda0
data_ov61_0217dda0: ; 0x0217dda0
.ascii "pid"
.byte 0x00
.global data_ov61_0217dda4
data_ov61_0217dda4: ; 0x0217dda4
.ascii "mod"
.byte 0x00
.global data_ov61_0217dda8
data_ov61_0217dda8: ; 0x0217dda8
.ascii "length"
.byte 0x00, 0x00
.global data_ov61_0217ddb0
data_ov61_0217ddb0: ; 0x0217ddb0
.ascii "\\data\\"
.byte 0x00, 0x00
.global data_ov61_0217ddb8
data_ov61_0217ddb8: ; 0x0217ddb8
.ascii "setpdr"
.byte 0x00, 0x00
.global data_ov61_0217ddc0
data_ov61_0217ddc0: ; 0x0217ddc0
.ascii "\\pauthr\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217ddcc
data_ov61_0217ddcc: ; 0x0217ddcc
.ascii "\\getpidr\\"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217ddd8
data_ov61_0217ddd8: ; 0x0217ddd8
.ascii "\\getpdr\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217dde4
data_ov61_0217dde4: ; 0x0217dde4
.ascii "\\setpdr\\"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217ddf0
data_ov61_0217ddf0: ; 0x0217ddf0
.ascii "%s_t%d"
.byte 0x00, 0x00
.global data_ov61_0217ddf8
data_ov61_0217ddf8: ; 0x0217ddf8
.ascii "%s_%d"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217de00
data_ov61_0217de00: ; 0x0217de00
.ascii "gti2GetChallenge"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217de14
data_ov61_0217de14: ; 0x0217de14
.ascii "3b8dd8995f7c40a9a5c5b7dd5b481341"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217de38
data_ov61_0217de38: ; 0x0217de38
.ascii "buffer"
.byte 0x00, 0x00
.global data_ov61_0217de40
data_ov61_0217de40: ; 0x0217de40
.ascii "gt2Auth.c"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217de4c
data_ov61_0217de4c: ; 0x0217de4c
.ascii "gti2BufferShorten"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217de60
data_ov61_0217de60: ; 0x0217de60
.ascii "gti2BufferWriteData"
.byte 0x00
.global data_ov61_0217de74
data_ov61_0217de74: ; 0x0217de74
.ascii "gti2BufferWriteByte"
.byte 0x00
.global data_ov61_0217de88
data_ov61_0217de88: ; 0x0217de88
.ascii "gti2BufferWriteUShort"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217dea0
data_ov61_0217dea0: ; 0x0217dea0
.ascii "buffer->len < buffer->size"
.byte 0x00, 0x00
.global data_ov61_0217debc
data_ov61_0217debc: ; 0x0217debc
.ascii "gt2Buffer.c"
.byte 0x00
.global data_ov61_0217dec8
data_ov61_0217dec8: ; 0x0217dec8
.ascii "(buffer->len + 2) <= buffer->size"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217deec
data_ov61_0217deec: ; 0x0217deec
.ascii "(buffer->len + len) <= buffer->size"
.byte 0x00
.global data_ov61_0217df10
data_ov61_0217df10: ; 0x0217df10
.ascii "start <= buffer->len"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217df28
data_ov61_0217df28: ; 0x0217df28
.ascii "shortenBy <= (buffer->len - start)"
.byte 0x00, 0x00
.global data_ov61_0217df4c
data_ov61_0217df4c: ; 0x0217df4c
.ascii "gti2DumpCallback"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217df60
data_ov61_0217df60: ; 0x0217df60
.ascii "gti2PingCallback"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217df74
data_ov61_0217df74: ; 0x0217df74
.ascii "gti2ClosedCallback"
.byte 0x00, 0x00
.global data_ov61_0217df88
data_ov61_0217df88: ; 0x0217df88
.ascii "gti2ReceivedCallback"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217dfa0
data_ov61_0217dfa0: ; 0x0217dfa0
.ascii "gti2ConnectedCallback"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217dfb8
data_ov61_0217dfb8: ; 0x0217dfb8
.ascii "gti2SendFilterCallback"
.byte 0x00, 0x00
.global data_ov61_0217dfd0
data_ov61_0217dfd0: ; 0x0217dfd0
.ascii "gti2SocketErrorCallback"
.byte 0x00
.global data_ov61_0217dfe8
data_ov61_0217dfe8: ; 0x0217dfe8
.ascii "gti2ReceiveFilterCallback"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e004
data_ov61_0217e004: ; 0x0217e004
.ascii "gti2ConnectAttemptCallback"
.byte 0x00, 0x00
.global data_ov61_0217e020
data_ov61_0217e020: ; 0x0217e020
.ascii "gti2UnrecognizedMessageCallback"
.byte 0x00
.global data_ov61_0217e040
data_ov61_0217e040: ; 0x0217e040
.ascii "socket"
.byte 0x00, 0x00
.global data_ov61_0217e048
data_ov61_0217e048: ; 0x0217e048
.ascii "gt2Callback.c"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e058
data_ov61_0217e058: ; 0x0217e058
.ascii "socket && connection"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e070
data_ov61_0217e070: ; 0x0217e070
.ascii "connection"
.byte 0x00, 0x00
.global data_ov61_0217e07c
data_ov61_0217e07c: ; 0x0217e07c
.ascii "gt2SetConnectionData"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e094
data_ov61_0217e094: ; 0x0217e094
.ascii "gt2GetConnectionData"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e0ac
data_ov61_0217e0ac: ; 0x0217e0ac
.ascii "gt2Main.c"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e0b8
data_ov61_0217e0b8: ; 0x0217e0b8
.ascii "connection"
.byte 0x00, 0x00
.global data_ov61_0217e0c4
data_ov61_0217e0c4: ; 0x0217e0c4
.ascii "gti2EndReliableMessage"
.byte 0x00, 0x00
.global data_ov61_0217e0dc
data_ov61_0217e0dc: ; 0x0217e0dc
.ascii "time"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e0e4
data_ov61_0217e0e4: ; 0x0217e0e4
.byte 0xfe
.global data_ov61_0217e0e5
data_ov61_0217e0e5: ; 0x0217e0e5
.byte 0xfe
.global data_ov61_0217e0e6
data_ov61_0217e0e6: ; 0x0217e0e6
.byte 0x00
.global data_ov61_0217e0e7
data_ov61_0217e0e7: ; 0x0217e0e7
.byte 0x00
.global data_ov61_0217e0e8
data_ov61_0217e0e8: ; 0x0217e0e8
.ascii "len > 0"
.byte 0x00
.global data_ov61_0217e0f0
data_ov61_0217e0f0: ; 0x0217e0f0
.ascii "gt2Message.c"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e100
data_ov61_0217e100: ; 0x0217e100
.ascii "gt2StringToAddress"
.byte 0x00, 0x00
.global data_ov61_0217e114
data_ov61_0217e114: ; 0x0217e114
.ascii "%s:%d"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e11c
data_ov61_0217e11c: ; 0x0217e11c
.ascii "%s"
.byte 0x00, 0x00
.global data_ov61_0217e120
data_ov61_0217e120: ; 0x0217e120
.ascii ":%d"
.byte 0x00
.global data_ov61_0217e124
data_ov61_0217e124: ; 0x0217e124
.ascii "len < GTI2_STACK_HOSTLEN_MAX"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e144
data_ov61_0217e144: ; 0x0217e144
.ascii "gt2Utility.c"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e154
data_ov61_0217e154: ; 0x0217e154
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e158
data_ov61_0217e158: ; 0x0217e158
.byte 0xfd
.global data_ov61_0217e159
data_ov61_0217e159: ; 0x0217e159
.byte 0xfc
.global data_ov61_0217e15a
data_ov61_0217e15a: ; 0x0217e15a
.byte 0x1e
.global data_ov61_0217e15b
data_ov61_0217e15b: ; 0x0217e15b
.byte 0x66
.global data_ov61_0217e15c
data_ov61_0217e15c: ; 0x0217e15c
.byte 0x6a
.global data_ov61_0217e15d
data_ov61_0217e15d: ; 0x0217e15d
.byte 0xb2
.global data_ov61_0217e15e
data_ov61_0217e15e: ; 0x0217e15e
.byte 0x00
.global data_ov61_0217e15f
data_ov61_0217e15f: ; 0x0217e15f
.byte 0x00
.global data_ov61_0217e160
data_ov61_0217e160: ; 0x0217e160
.ascii "%s.%s"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e168
data_ov61_0217e168: ; 0x0217e168
.ascii "natneg1.gs.nintendowifi.net"
.byte 0x00
.global data_ov61_0217e184
data_ov61_0217e184: ; 0x0217e184
.ascii "natneg2.gs.nintendowifi.net"
.byte 0x00
.global data_ov61_0217e1a0
data_ov61_0217e1a0: ; 0x0217e1a0
.word data_ov61_0217e1a4
.global data_ov61_0217e1a4
data_ov61_0217e1a4: ; 0x0217e1a4
.byte 0xff, 0xff, 0xff, 0xff
.global data_ov61_0217e1a8
data_ov61_0217e1a8: ; 0x0217e1a8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1ac
data_ov61_0217e1ac: ; 0x0217e1ac
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1b0
data_ov61_0217e1b0: ; 0x0217e1b0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1b4
data_ov61_0217e1b4: ; 0x0217e1b4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1b8
data_ov61_0217e1b8: ; 0x0217e1b8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1bc
data_ov61_0217e1bc: ; 0x0217e1bc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1c0
data_ov61_0217e1c0: ; 0x0217e1c0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1c4
data_ov61_0217e1c4: ; 0x0217e1c4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1c8
data_ov61_0217e1c8: ; 0x0217e1c8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1cc
data_ov61_0217e1cc: ; 0x0217e1cc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1d0
data_ov61_0217e1d0: ; 0x0217e1d0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1d4
data_ov61_0217e1d4: ; 0x0217e1d4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1d8
data_ov61_0217e1d8: ; 0x0217e1d8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1dc
data_ov61_0217e1dc: ; 0x0217e1dc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1e0
data_ov61_0217e1e0: ; 0x0217e1e0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1e4
data_ov61_0217e1e4: ; 0x0217e1e4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1e8
data_ov61_0217e1e8: ; 0x0217e1e8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1ec
data_ov61_0217e1ec: ; 0x0217e1ec
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1f0
data_ov61_0217e1f0: ; 0x0217e1f0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1f4
data_ov61_0217e1f4: ; 0x0217e1f4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1f8
data_ov61_0217e1f8: ; 0x0217e1f8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e1fc
data_ov61_0217e1fc: ; 0x0217e1fc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e200
data_ov61_0217e200: ; 0x0217e200
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e204
data_ov61_0217e204: ; 0x0217e204
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e208
data_ov61_0217e208: ; 0x0217e208
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e20c
data_ov61_0217e20c: ; 0x0217e20c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e210
data_ov61_0217e210: ; 0x0217e210
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e214
data_ov61_0217e214: ; 0x0217e214
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e218
data_ov61_0217e218: ; 0x0217e218
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e21c
data_ov61_0217e21c: ; 0x0217e21c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e220
data_ov61_0217e220: ; 0x0217e220
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e224
data_ov61_0217e224: ; 0x0217e224
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e228
data_ov61_0217e228: ; 0x0217e228
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e22c
data_ov61_0217e22c: ; 0x0217e22c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e230
data_ov61_0217e230: ; 0x0217e230
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e234
data_ov61_0217e234: ; 0x0217e234
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e238
data_ov61_0217e238: ; 0x0217e238
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e23c
data_ov61_0217e23c: ; 0x0217e23c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e240
data_ov61_0217e240: ; 0x0217e240
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e244
data_ov61_0217e244: ; 0x0217e244
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e248
data_ov61_0217e248: ; 0x0217e248
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e24c
data_ov61_0217e24c: ; 0x0217e24c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e250
data_ov61_0217e250: ; 0x0217e250
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e254
data_ov61_0217e254: ; 0x0217e254
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e258
data_ov61_0217e258: ; 0x0217e258
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e25c
data_ov61_0217e25c: ; 0x0217e25c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e260
data_ov61_0217e260: ; 0x0217e260
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e264
data_ov61_0217e264: ; 0x0217e264
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e268
data_ov61_0217e268: ; 0x0217e268
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e26c
data_ov61_0217e26c: ; 0x0217e26c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e270
data_ov61_0217e270: ; 0x0217e270
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e274
data_ov61_0217e274: ; 0x0217e274
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e278
data_ov61_0217e278: ; 0x0217e278
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e27c
data_ov61_0217e27c: ; 0x0217e27c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e280
data_ov61_0217e280: ; 0x0217e280
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e284
data_ov61_0217e284: ; 0x0217e284
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e288
data_ov61_0217e288: ; 0x0217e288
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e28c
data_ov61_0217e28c: ; 0x0217e28c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e290
data_ov61_0217e290: ; 0x0217e290
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e294
data_ov61_0217e294: ; 0x0217e294
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e298
data_ov61_0217e298: ; 0x0217e298
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e29c
data_ov61_0217e29c: ; 0x0217e29c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e2a0
data_ov61_0217e2a0: ; 0x0217e2a0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e2a4
data_ov61_0217e2a4: ; 0x0217e2a4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e2a8
data_ov61_0217e2a8: ; 0x0217e2a8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e2ac
data_ov61_0217e2ac: ; 0x0217e2ac
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e2b0
data_ov61_0217e2b0: ; 0x0217e2b0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e2b4
data_ov61_0217e2b4: ; 0x0217e2b4
.ascii "%s.master.gs.nintendowifi.net"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e2d4
data_ov61_0217e2d4: ; 0x0217e2d4
.ascii "No challenge value was received from the master server."
.byte 0x00
.global data_ov61_0217e30c
data_ov61_0217e30c: ; 0x0217e30c
.ascii "%d"
.byte 0x00, 0x00
.global data_ov61_0217e310
data_ov61_0217e310: ; 0x0217e310
.ascii "255.255.255.255"
.byte 0x00
.global data_ov61_0217e320
data_ov61_0217e320: ; 0x0217e320
.ascii "%08X%04X"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e32c
data_ov61_0217e32c: ; 0x0217e32c
.ascii "unknown"
.byte 0x00
.global data_ov61_0217e334
data_ov61_0217e334: ; 0x0217e334
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e338
data_ov61_0217e338: ; 0x0217e338
.ascii "%s%d"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e340
data_ov61_0217e340: ; 0x0217e340
.ascii "final\\\\queryid\\1.1"
.byte 0x00, 0x00
.global data_ov61_0217e354
data_ov61_0217e354: ; 0x0217e354
.ascii "localip%d"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e360
data_ov61_0217e360: ; 0x0217e360
.ascii "localport"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e36c
data_ov61_0217e36c: ; 0x0217e36c
.ascii "natneg"
.byte 0x00, 0x00
.global data_ov61_0217e374
data_ov61_0217e374: ; 0x0217e374
.ascii "1"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e378
data_ov61_0217e378: ; 0x0217e378
.ascii "0"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e37c
data_ov61_0217e37c: ; 0x0217e37c
.ascii "statechanged"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e38c
data_ov61_0217e38c: ; 0x0217e38c
.ascii "gamename"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e398
data_ov61_0217e398: ; 0x0217e398
.ascii "publicip"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e3a4
data_ov61_0217e3a4: ; 0x0217e3a4
.ascii "publicport"
.byte 0x00, 0x00
.global data_ov61_0217e3b0
data_ov61_0217e3b0: ; 0x0217e3b0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e3b4
data_ov61_0217e3b4: ; 0x0217e3b4
.ascii "pid_"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e3bc
data_ov61_0217e3bc: ; 0x0217e3bc
.ascii "ping_"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e3c4
data_ov61_0217e3c4: ; 0x0217e3c4
.ascii "team_"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e3cc
data_ov61_0217e3cc: ; 0x0217e3cc
.ascii "score_"
.byte 0x00, 0x00
.global data_ov61_0217e3d4
data_ov61_0217e3d4: ; 0x0217e3d4
.ascii "team_t"
.byte 0x00, 0x00
.global data_ov61_0217e3dc
data_ov61_0217e3dc: ; 0x0217e3dc
.ascii "skill_"
.byte 0x00, 0x00
.global data_ov61_0217e3e4
data_ov61_0217e3e4: ; 0x0217e3e4
.ascii "groupid"
.byte 0x00
.global data_ov61_0217e3ec
data_ov61_0217e3ec: ; 0x0217e3ec
.ascii "deaths_"
.byte 0x00
.global data_ov61_0217e3f4
data_ov61_0217e3f4: ; 0x0217e3f4
.ascii "gamever"
.byte 0x00
.global data_ov61_0217e3fc
data_ov61_0217e3fc: ; 0x0217e3fc
.ascii "player_"
.byte 0x00
.global data_ov61_0217e404
data_ov61_0217e404: ; 0x0217e404
.ascii "score_t"
.byte 0x00
.global data_ov61_0217e40c
data_ov61_0217e40c: ; 0x0217e40c
.ascii "mapname"
.byte 0x00
.global data_ov61_0217e414
data_ov61_0217e414: ; 0x0217e414
.ascii "gamename"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e420
data_ov61_0217e420: ; 0x0217e420
.ascii "hostport"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e42c
data_ov61_0217e42c: ; 0x0217e42c
.ascii "password"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e438
data_ov61_0217e438: ; 0x0217e438
.ascii "gametype"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e444
data_ov61_0217e444: ; 0x0217e444
.ascii "numteams"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e450
data_ov61_0217e450: ; 0x0217e450
.ascii "gamemode"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e45c
data_ov61_0217e45c: ; 0x0217e45c
.ascii "teamplay"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e468
data_ov61_0217e468: ; 0x0217e468
.ascii "hostname"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e474
data_ov61_0217e474: ; 0x0217e474
.ascii "fraglimit"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e480
data_ov61_0217e480: ; 0x0217e480
.ascii "timelimit"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e48c
data_ov61_0217e48c: ; 0x0217e48c
.ascii "roundtime"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e498
data_ov61_0217e498: ; 0x0217e498
.ascii "numplayers"
.byte 0x00, 0x00
.global data_ov61_0217e4a4
data_ov61_0217e4a4: ; 0x0217e4a4
.ascii "maxplayers"
.byte 0x00, 0x00
.global data_ov61_0217e4b0
data_ov61_0217e4b0: ; 0x0217e4b0
.ascii "gamevariant"
.byte 0x00
.global data_ov61_0217e4bc
data_ov61_0217e4bc: ; 0x0217e4bc
.ascii "timeelapsed"
.byte 0x00
.global data_ov61_0217e4c8
data_ov61_0217e4c8: ; 0x0217e4c8
.ascii "roundelapsed"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e4d8
data_ov61_0217e4d8: ; 0x0217e4d8
.ascii "teamfraglimit"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e4e8
data_ov61_0217e4e8: ; 0x0217e4e8
.word data_ov61_0217e3b0
.global data_ov61_0217e4ec
data_ov61_0217e4ec: ; 0x0217e4ec
.word data_ov61_0217e468
.global data_ov61_0217e4f0
data_ov61_0217e4f0: ; 0x0217e4f0
.word data_ov61_0217e414
.global data_ov61_0217e4f4
data_ov61_0217e4f4: ; 0x0217e4f4
.word data_ov61_0217e3f4
.global data_ov61_0217e4f8
data_ov61_0217e4f8: ; 0x0217e4f8
.word data_ov61_0217e420
.global data_ov61_0217e4fc
data_ov61_0217e4fc: ; 0x0217e4fc
.word data_ov61_0217e40c
.global data_ov61_0217e500
data_ov61_0217e500: ; 0x0217e500
.word data_ov61_0217e438
.global data_ov61_0217e504
data_ov61_0217e504: ; 0x0217e504
.word data_ov61_0217e4b0
.global data_ov61_0217e508
data_ov61_0217e508: ; 0x0217e508
.word data_ov61_0217e498
.global data_ov61_0217e50c
data_ov61_0217e50c: ; 0x0217e50c
.word data_ov61_0217e444
.global data_ov61_0217e510
data_ov61_0217e510: ; 0x0217e510
.word data_ov61_0217e4a4
.global data_ov61_0217e514
data_ov61_0217e514: ; 0x0217e514
.word data_ov61_0217e450
.global data_ov61_0217e518
data_ov61_0217e518: ; 0x0217e518
.word data_ov61_0217e45c
.global data_ov61_0217e51c
data_ov61_0217e51c: ; 0x0217e51c
.word data_ov61_0217e474
.global data_ov61_0217e520
data_ov61_0217e520: ; 0x0217e520
.word data_ov61_0217e4d8
.global data_ov61_0217e524
data_ov61_0217e524: ; 0x0217e524
.word data_ov61_0217e4bc
.global data_ov61_0217e528
data_ov61_0217e528: ; 0x0217e528
.word data_ov61_0217e480
.global data_ov61_0217e52c
data_ov61_0217e52c: ; 0x0217e52c
.word data_ov61_0217e48c
.global data_ov61_0217e530
data_ov61_0217e530: ; 0x0217e530
.word data_ov61_0217e4c8
.global data_ov61_0217e534
data_ov61_0217e534: ; 0x0217e534
.word data_ov61_0217e42c
.global data_ov61_0217e538
data_ov61_0217e538: ; 0x0217e538
.word data_ov61_0217e3e4
.global data_ov61_0217e53c
data_ov61_0217e53c: ; 0x0217e53c
.word data_ov61_0217e3fc
.global data_ov61_0217e540
data_ov61_0217e540: ; 0x0217e540
.word data_ov61_0217e3cc
.global data_ov61_0217e544
data_ov61_0217e544: ; 0x0217e544
.word data_ov61_0217e3dc
.global data_ov61_0217e548
data_ov61_0217e548: ; 0x0217e548
.word data_ov61_0217e3bc
.global data_ov61_0217e54c
data_ov61_0217e54c: ; 0x0217e54c
.word data_ov61_0217e3c4
.global data_ov61_0217e550
data_ov61_0217e550: ; 0x0217e550
.word data_ov61_0217e3ec
.global data_ov61_0217e554
data_ov61_0217e554: ; 0x0217e554
.word data_ov61_0217e3b4
.global data_ov61_0217e558
data_ov61_0217e558: ; 0x0217e558
.word data_ov61_0217e3d4
.global data_ov61_0217e55c
data_ov61_0217e55c: ; 0x0217e55c
.word data_ov61_0217e404
.global data_ov61_0217e560
data_ov61_0217e560: ; 0x0217e560
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e564
data_ov61_0217e564: ; 0x0217e564
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e568
data_ov61_0217e568: ; 0x0217e568
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e56c
data_ov61_0217e56c: ; 0x0217e56c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e570
data_ov61_0217e570: ; 0x0217e570
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e574
data_ov61_0217e574: ; 0x0217e574
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e578
data_ov61_0217e578: ; 0x0217e578
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e57c
data_ov61_0217e57c: ; 0x0217e57c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e580
data_ov61_0217e580: ; 0x0217e580
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e584
data_ov61_0217e584: ; 0x0217e584
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e588
data_ov61_0217e588: ; 0x0217e588
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e58c
data_ov61_0217e58c: ; 0x0217e58c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e590
data_ov61_0217e590: ; 0x0217e590
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e594
data_ov61_0217e594: ; 0x0217e594
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e598
data_ov61_0217e598: ; 0x0217e598
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e59c
data_ov61_0217e59c: ; 0x0217e59c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5a0
data_ov61_0217e5a0: ; 0x0217e5a0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5a4
data_ov61_0217e5a4: ; 0x0217e5a4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5a8
data_ov61_0217e5a8: ; 0x0217e5a8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5ac
data_ov61_0217e5ac: ; 0x0217e5ac
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5b0
data_ov61_0217e5b0: ; 0x0217e5b0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5b4
data_ov61_0217e5b4: ; 0x0217e5b4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5b8
data_ov61_0217e5b8: ; 0x0217e5b8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5bc
data_ov61_0217e5bc: ; 0x0217e5bc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5c0
data_ov61_0217e5c0: ; 0x0217e5c0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5c4
data_ov61_0217e5c4: ; 0x0217e5c4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5c8
data_ov61_0217e5c8: ; 0x0217e5c8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5cc
data_ov61_0217e5cc: ; 0x0217e5cc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5d0
data_ov61_0217e5d0: ; 0x0217e5d0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5d4
data_ov61_0217e5d4: ; 0x0217e5d4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5d8
data_ov61_0217e5d8: ; 0x0217e5d8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5dc
data_ov61_0217e5dc: ; 0x0217e5dc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5e0
data_ov61_0217e5e0: ; 0x0217e5e0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5e4
data_ov61_0217e5e4: ; 0x0217e5e4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5e8
data_ov61_0217e5e8: ; 0x0217e5e8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5ec
data_ov61_0217e5ec: ; 0x0217e5ec
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5f0
data_ov61_0217e5f0: ; 0x0217e5f0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5f4
data_ov61_0217e5f4: ; 0x0217e5f4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5f8
data_ov61_0217e5f8: ; 0x0217e5f8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e5fc
data_ov61_0217e5fc: ; 0x0217e5fc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e600
data_ov61_0217e600: ; 0x0217e600
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e604
data_ov61_0217e604: ; 0x0217e604
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e608
data_ov61_0217e608: ; 0x0217e608
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e60c
data_ov61_0217e60c: ; 0x0217e60c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e610
data_ov61_0217e610: ; 0x0217e610
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e614
data_ov61_0217e614: ; 0x0217e614
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e618
data_ov61_0217e618: ; 0x0217e618
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e61c
data_ov61_0217e61c: ; 0x0217e61c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e620
data_ov61_0217e620: ; 0x0217e620
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e624
data_ov61_0217e624: ; 0x0217e624
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e628
data_ov61_0217e628: ; 0x0217e628
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e62c
data_ov61_0217e62c: ; 0x0217e62c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e630
data_ov61_0217e630: ; 0x0217e630
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e634
data_ov61_0217e634: ; 0x0217e634
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e638
data_ov61_0217e638: ; 0x0217e638
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e63c
data_ov61_0217e63c: ; 0x0217e63c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e640
data_ov61_0217e640: ; 0x0217e640
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e644
data_ov61_0217e644: ; 0x0217e644
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e648
data_ov61_0217e648: ; 0x0217e648
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e64c
data_ov61_0217e64c: ; 0x0217e64c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e650
data_ov61_0217e650: ; 0x0217e650
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e654
data_ov61_0217e654: ; 0x0217e654
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e658
data_ov61_0217e658: ; 0x0217e658
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e65c
data_ov61_0217e65c: ; 0x0217e65c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e660
data_ov61_0217e660: ; 0x0217e660
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e664
data_ov61_0217e664: ; 0x0217e664
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e668
data_ov61_0217e668: ; 0x0217e668
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e66c
data_ov61_0217e66c: ; 0x0217e66c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e670
data_ov61_0217e670: ; 0x0217e670
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e674
data_ov61_0217e674: ; 0x0217e674
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e678
data_ov61_0217e678: ; 0x0217e678
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e67c
data_ov61_0217e67c: ; 0x0217e67c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e680
data_ov61_0217e680: ; 0x0217e680
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e684
data_ov61_0217e684: ; 0x0217e684
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e688
data_ov61_0217e688: ; 0x0217e688
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e68c
data_ov61_0217e68c: ; 0x0217e68c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e690
data_ov61_0217e690: ; 0x0217e690
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e694
data_ov61_0217e694: ; 0x0217e694
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e698
data_ov61_0217e698: ; 0x0217e698
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e69c
data_ov61_0217e69c: ; 0x0217e69c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6a0
data_ov61_0217e6a0: ; 0x0217e6a0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6a4
data_ov61_0217e6a4: ; 0x0217e6a4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6a8
data_ov61_0217e6a8: ; 0x0217e6a8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6ac
data_ov61_0217e6ac: ; 0x0217e6ac
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6b0
data_ov61_0217e6b0: ; 0x0217e6b0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6b4
data_ov61_0217e6b4: ; 0x0217e6b4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6b8
data_ov61_0217e6b8: ; 0x0217e6b8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6bc
data_ov61_0217e6bc: ; 0x0217e6bc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6c0
data_ov61_0217e6c0: ; 0x0217e6c0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6c4
data_ov61_0217e6c4: ; 0x0217e6c4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6c8
data_ov61_0217e6c8: ; 0x0217e6c8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6cc
data_ov61_0217e6cc: ; 0x0217e6cc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6d0
data_ov61_0217e6d0: ; 0x0217e6d0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6d4
data_ov61_0217e6d4: ; 0x0217e6d4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6d8
data_ov61_0217e6d8: ; 0x0217e6d8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6dc
data_ov61_0217e6dc: ; 0x0217e6dc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6e0
data_ov61_0217e6e0: ; 0x0217e6e0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6e4
data_ov61_0217e6e4: ; 0x0217e6e4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6e8
data_ov61_0217e6e8: ; 0x0217e6e8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6ec
data_ov61_0217e6ec: ; 0x0217e6ec
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6f0
data_ov61_0217e6f0: ; 0x0217e6f0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6f4
data_ov61_0217e6f4: ; 0x0217e6f4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6f8
data_ov61_0217e6f8: ; 0x0217e6f8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e6fc
data_ov61_0217e6fc: ; 0x0217e6fc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e700
data_ov61_0217e700: ; 0x0217e700
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e704
data_ov61_0217e704: ; 0x0217e704
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e708
data_ov61_0217e708: ; 0x0217e708
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e70c
data_ov61_0217e70c: ; 0x0217e70c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e710
data_ov61_0217e710: ; 0x0217e710
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e714
data_ov61_0217e714: ; 0x0217e714
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e718
data_ov61_0217e718: ; 0x0217e718
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e71c
data_ov61_0217e71c: ; 0x0217e71c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e720
data_ov61_0217e720: ; 0x0217e720
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e724
data_ov61_0217e724: ; 0x0217e724
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e728
data_ov61_0217e728: ; 0x0217e728
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e72c
data_ov61_0217e72c: ; 0x0217e72c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e730
data_ov61_0217e730: ; 0x0217e730
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e734
data_ov61_0217e734: ; 0x0217e734
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e738
data_ov61_0217e738: ; 0x0217e738
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e73c
data_ov61_0217e73c: ; 0x0217e73c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e740
data_ov61_0217e740: ; 0x0217e740
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e744
data_ov61_0217e744: ; 0x0217e744
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e748
data_ov61_0217e748: ; 0x0217e748
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e74c
data_ov61_0217e74c: ; 0x0217e74c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e750
data_ov61_0217e750: ; 0x0217e750
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e754
data_ov61_0217e754: ; 0x0217e754
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e758
data_ov61_0217e758: ; 0x0217e758
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e75c
data_ov61_0217e75c: ; 0x0217e75c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e760
data_ov61_0217e760: ; 0x0217e760
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e764
data_ov61_0217e764: ; 0x0217e764
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e768
data_ov61_0217e768: ; 0x0217e768
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e76c
data_ov61_0217e76c: ; 0x0217e76c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e770
data_ov61_0217e770: ; 0x0217e770
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e774
data_ov61_0217e774: ; 0x0217e774
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e778
data_ov61_0217e778: ; 0x0217e778
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e77c
data_ov61_0217e77c: ; 0x0217e77c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e780
data_ov61_0217e780: ; 0x0217e780
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e784
data_ov61_0217e784: ; 0x0217e784
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e788
data_ov61_0217e788: ; 0x0217e788
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e78c
data_ov61_0217e78c: ; 0x0217e78c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e790
data_ov61_0217e790: ; 0x0217e790
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e794
data_ov61_0217e794: ; 0x0217e794
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e798
data_ov61_0217e798: ; 0x0217e798
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e79c
data_ov61_0217e79c: ; 0x0217e79c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7a0
data_ov61_0217e7a0: ; 0x0217e7a0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7a4
data_ov61_0217e7a4: ; 0x0217e7a4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7a8
data_ov61_0217e7a8: ; 0x0217e7a8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7ac
data_ov61_0217e7ac: ; 0x0217e7ac
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7b0
data_ov61_0217e7b0: ; 0x0217e7b0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7b4
data_ov61_0217e7b4: ; 0x0217e7b4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7b8
data_ov61_0217e7b8: ; 0x0217e7b8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7bc
data_ov61_0217e7bc: ; 0x0217e7bc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7c0
data_ov61_0217e7c0: ; 0x0217e7c0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7c4
data_ov61_0217e7c4: ; 0x0217e7c4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7c8
data_ov61_0217e7c8: ; 0x0217e7c8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7cc
data_ov61_0217e7cc: ; 0x0217e7cc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7d0
data_ov61_0217e7d0: ; 0x0217e7d0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7d4
data_ov61_0217e7d4: ; 0x0217e7d4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7d8
data_ov61_0217e7d8: ; 0x0217e7d8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7dc
data_ov61_0217e7dc: ; 0x0217e7dc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7e0
data_ov61_0217e7e0: ; 0x0217e7e0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7e4
data_ov61_0217e7e4: ; 0x0217e7e4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7e8
data_ov61_0217e7e8: ; 0x0217e7e8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7ec
data_ov61_0217e7ec: ; 0x0217e7ec
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7f0
data_ov61_0217e7f0: ; 0x0217e7f0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7f4
data_ov61_0217e7f4: ; 0x0217e7f4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7f8
data_ov61_0217e7f8: ; 0x0217e7f8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e7fc
data_ov61_0217e7fc: ; 0x0217e7fc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e800
data_ov61_0217e800: ; 0x0217e800
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e804
data_ov61_0217e804: ; 0x0217e804
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e808
data_ov61_0217e808: ; 0x0217e808
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e80c
data_ov61_0217e80c: ; 0x0217e80c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e810
data_ov61_0217e810: ; 0x0217e810
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e814
data_ov61_0217e814: ; 0x0217e814
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e818
data_ov61_0217e818: ; 0x0217e818
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e81c
data_ov61_0217e81c: ; 0x0217e81c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e820
data_ov61_0217e820: ; 0x0217e820
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e824
data_ov61_0217e824: ; 0x0217e824
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e828
data_ov61_0217e828: ; 0x0217e828
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e82c
data_ov61_0217e82c: ; 0x0217e82c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e830
data_ov61_0217e830: ; 0x0217e830
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e834
data_ov61_0217e834: ; 0x0217e834
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e838
data_ov61_0217e838: ; 0x0217e838
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e83c
data_ov61_0217e83c: ; 0x0217e83c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e840
data_ov61_0217e840: ; 0x0217e840
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e844
data_ov61_0217e844: ; 0x0217e844
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e848
data_ov61_0217e848: ; 0x0217e848
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e84c
data_ov61_0217e84c: ; 0x0217e84c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e850
data_ov61_0217e850: ; 0x0217e850
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e854
data_ov61_0217e854: ; 0x0217e854
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e858
data_ov61_0217e858: ; 0x0217e858
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e85c
data_ov61_0217e85c: ; 0x0217e85c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e860
data_ov61_0217e860: ; 0x0217e860
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e864
data_ov61_0217e864: ; 0x0217e864
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e868
data_ov61_0217e868: ; 0x0217e868
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e86c
data_ov61_0217e86c: ; 0x0217e86c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e870
data_ov61_0217e870: ; 0x0217e870
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e874
data_ov61_0217e874: ; 0x0217e874
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e878
data_ov61_0217e878: ; 0x0217e878
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e87c
data_ov61_0217e87c: ; 0x0217e87c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e880
data_ov61_0217e880: ; 0x0217e880
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e884
data_ov61_0217e884: ; 0x0217e884
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e888
data_ov61_0217e888: ; 0x0217e888
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e88c
data_ov61_0217e88c: ; 0x0217e88c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e890
data_ov61_0217e890: ; 0x0217e890
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e894
data_ov61_0217e894: ; 0x0217e894
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e898
data_ov61_0217e898: ; 0x0217e898
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e89c
data_ov61_0217e89c: ; 0x0217e89c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e8a0
data_ov61_0217e8a0: ; 0x0217e8a0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e8a4
data_ov61_0217e8a4: ; 0x0217e8a4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e8a8
data_ov61_0217e8a8: ; 0x0217e8a8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e8ac
data_ov61_0217e8ac: ; 0x0217e8ac
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e8b0
data_ov61_0217e8b0: ; 0x0217e8b0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e8b4
data_ov61_0217e8b4: ; 0x0217e8b4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e8b8
data_ov61_0217e8b8: ; 0x0217e8b8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e8bc
data_ov61_0217e8bc: ; 0x0217e8bc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e8c0
data_ov61_0217e8c0: ; 0x0217e8c0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e8c4
data_ov61_0217e8c4: ; 0x0217e8c4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e8c8
data_ov61_0217e8c8: ; 0x0217e8c8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e8cc
data_ov61_0217e8cc: ; 0x0217e8cc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e8d0
data_ov61_0217e8d0: ; 0x0217e8d0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e8d4
data_ov61_0217e8d4: ; 0x0217e8d4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e8d8
data_ov61_0217e8d8: ; 0x0217e8d8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e8dc
data_ov61_0217e8dc: ; 0x0217e8dc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e8e0
data_ov61_0217e8e0: ; 0x0217e8e0
.ascii "brg"
.byte 0x00
.global data_ov61_0217e8e4
data_ov61_0217e8e4: ; 0x0217e8e4
.ascii "fnl"
.byte 0x00
.global data_ov61_0217e8e8
data_ov61_0217e8e8: ; 0x0217e8e8
.ascii "pdl"
.byte 0x00
.global data_ov61_0217e8ec
data_ov61_0217e8ec: ; 0x0217e8ec
.ascii "dco"
.byte 0x00
.global data_ov61_0217e8f0
data_ov61_0217e8f0: ; 0x0217e8f0
.ascii "can"
.byte 0x00
.global data_ov61_0217e8f4
data_ov61_0217e8f4: ; 0x0217e8f4
.ascii "hul"
.byte 0x00
.global data_ov61_0217e8f8
data_ov61_0217e8f8: ; 0x0217e8f8
.ascii "bow"
.byte 0x00
.global data_ov61_0217e8fc
data_ov61_0217e8fc: ; 0x0217e8fc
.ascii "anc"
.byte 0x00
.global data_ov61_0217e900
data_ov61_0217e900: ; 0x0217e900
.word data_ov61_0217e8fc
.global data_ov61_0217e904
data_ov61_0217e904: ; 0x0217e904
.word data_ov61_0217e8f8
.global data_ov61_0217e908
data_ov61_0217e908: ; 0x0217e908
.word data_ov61_0217e8f4
.global data_ov61_0217e90c
data_ov61_0217e90c: ; 0x0217e90c
.word data_ov61_0217e8f0
.global data_ov61_0217e910
data_ov61_0217e910: ; 0x0217e910
.word data_ov61_0217e8ec
.global data_ov61_0217e914
data_ov61_0217e914: ; 0x0217e914
.word data_ov61_0217e8e8
.global data_ov61_0217e918
data_ov61_0217e918: ; 0x0217e918
.word data_ov61_0217e8e4
.global data_ov61_0217e91c
data_ov61_0217e91c: ; 0x0217e91c
.word data_ov61_0217e8e0
.global data_ov61_0217e920
data_ov61_0217e920: ; 0x0217e920
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e924
data_ov61_0217e924: ; 0x0217e924
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e928
data_ov61_0217e928: ; 0x0217e928
.word func_ov61_02179734
.global data_ov61_0217e92c
data_ov61_0217e92c: ; 0x0217e92c
.word func_ov61_02179774
.global data_ov61_0217e930
data_ov61_0217e930: ; 0x0217e930
.word func_ov61_021797bc
.global data_ov61_0217e934
data_ov61_0217e934: ; 0x0217e934
.word func_ov61_02179838
.global data_ov61_0217e938
data_ov61_0217e938: ; 0x0217e938
.word func_ov61_02179854
.global data_ov61_0217e93c
data_ov61_0217e93c: ; 0x0217e93c
.word func_ov61_02179ef8
.global data_ov61_0217e940
data_ov61_0217e940: ; 0x0217e940
.word func_ov61_021798d0
.global data_ov61_0217e944
data_ov61_0217e944: ; 0x0217e944
.word func_ov61_021798f8
.global data_ov61_0217e948
data_ov61_0217e948: ; 0x0217e948
.word func_ov61_02179970
.global data_ov61_0217e94c
data_ov61_0217e94c: ; 0x0217e94c
.word func_ov61_02179acc
.global data_ov61_0217e950
data_ov61_0217e950: ; 0x0217e950
.word func_ov61_02179adc
.global data_ov61_0217e954
data_ov61_0217e954: ; 0x0217e954
.word func_ov61_0217a1e0
.global data_ov61_0217e958
data_ov61_0217e958: ; 0x0217e958
.word func_ov61_0217a1ec
.global data_ov61_0217e95c
data_ov61_0217e95c: ; 0x0217e95c
.word func_ov61_02179824
.global data_ov61_0217e960
data_ov61_0217e960: ; 0x0217e960
.word func_ov61_021798bc
.global data_ov61_0217e964
data_ov61_0217e964: ; 0x0217e964
.word func_ov61_0217a1fc
.global data_ov61_0217e968
data_ov61_0217e968: ; 0x0217e968
.word func_ov61_02179b18
.global data_ov61_0217e96c
data_ov61_0217e96c: ; 0x0217e96c
.word func_ov61_02179b5c
.global data_ov61_0217e970
data_ov61_0217e970: ; 0x0217e970
.word func_ov61_02179fdc
.global data_ov61_0217e974
data_ov61_0217e974: ; 0x0217e974
.ascii "soft_name"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e980
data_ov61_0217e980: ; 0x0217e980
.ascii "country_region"
.byte 0x00, 0x00
.global data_ov61_0217e990
data_ov61_0217e990: ; 0x0217e990
.ascii "play_level"
.byte 0x00, 0x00
.global data_ov61_0217e99c
data_ov61_0217e99c: ; 0x0217e99c
.ascii "battle_rank"
.byte 0x00
.global data_ov61_0217e9a8
data_ov61_0217e9a8: ; 0x0217e9a8
.ascii "match_type"
.byte 0x00, 0x00
.global data_ov61_0217e9b4
data_ov61_0217e9b4: ; 0x0217e9b4
.ascii "manner_level"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217e9c4
data_ov61_0217e9c4: ; 0x0217e9c4
.ascii "zelda_ds_phantom_hourglass"
.byte 0x00, 0x00
.global data_ov61_0217e9e0
data_ov61_0217e9e0: ; 0x0217e9e0
.ascii "lozphourds"
.byte 0x00, 0x00
.global data_ov61_0217e9ec
data_ov61_0217e9ec: ; 0x0217e9ec
.ascii "t8RsDb"
.byte 0x00, 0x00
.global data_ov61_0217e9f4
data_ov61_0217e9f4: ; 0x0217e9f4
.ascii "='"
.byte 0x00, 0x00
.global data_ov61_0217e9f8
data_ov61_0217e9f8: ; 0x0217e9f8
.ascii "'"
.byte 0x00, 0x00, 0x00
.global data_ov61_0217e9fc
data_ov61_0217e9fc: ; 0x0217e9fc
.ascii " and %s=%d"
.byte 0x00, 0x00
.global data_ov61_0217ea08
data_ov61_0217ea08: ; 0x0217ea08
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217ea0c
data_ov61_0217ea0c: ; 0x0217ea0c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217ea10
data_ov61_0217ea10: ; 0x0217ea10
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217ea14
data_ov61_0217ea14: ; 0x0217ea14
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217ea18
data_ov61_0217ea18: ; 0x0217ea18
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov61_0217ea1c
data_ov61_0217ea1c: ; 0x0217ea1c
.byte 0x00, 0x00, 0x00, 0x00
; 0x0217ea20
.bss
.global data_ov61_0217ea20
data_ov61_0217ea20:
.space 0x4
.global data_ov61_0217ea24
data_ov61_0217ea24:
.space 0x4
.global data_ov61_0217ea28
data_ov61_0217ea28:
.space 0x4
.global data_ov61_0217ea2c
data_ov61_0217ea2c:
.space 0x4
.global data_ov61_0217ea30
data_ov61_0217ea30:
.space 0x4
.global data_ov61_0217ea34
data_ov61_0217ea34:
.space 0x4
.global data_ov61_0217ea38
data_ov61_0217ea38:
.space 0x4
.global data_ov61_0217ea3c
data_ov61_0217ea3c:
.space 0x4
.global data_ov61_0217ea40
data_ov61_0217ea40:
.space 0x4
.global data_ov61_0217ea44
data_ov61_0217ea44:
.space 0x4
.global data_ov61_0217ea48
data_ov61_0217ea48:
.space 0x4
.global data_ov61_0217ea4c
data_ov61_0217ea4c:
.space 0x4
.global data_ov61_0217ea50
data_ov61_0217ea50:
.space 0x4
.global data_ov61_0217ea54
data_ov61_0217ea54:
.space 0x4
.global data_ov61_0217ea58
data_ov61_0217ea58:
.space 0x4
.global data_ov61_0217ea5c
data_ov61_0217ea5c:
.space 0x4
.global data_ov61_0217ea60
data_ov61_0217ea60:
.space 0x4
.global data_ov61_0217ea64
data_ov61_0217ea64:
.space 0x4
.global data_ov61_0217ea68
data_ov61_0217ea68:
.space 0x4
.global data_ov61_0217ea6c
data_ov61_0217ea6c:
.space 0x4
.global data_ov61_0217ea70
data_ov61_0217ea70:
.space 0x4
.global data_ov61_0217ea74
data_ov61_0217ea74:
.space 0x4
.global data_ov61_0217ea78
data_ov61_0217ea78:
.space 0x4
.global data_ov61_0217ea7c
data_ov61_0217ea7c:
.space 0x4
.global data_ov61_0217ea80
data_ov61_0217ea80:
.space 0x4
.global data_ov61_0217ea84
data_ov61_0217ea84:
.space 0x4
.global data_ov61_0217ea88
data_ov61_0217ea88:
.space 0x4
.global data_ov61_0217ea8c
data_ov61_0217ea8c:
.space 0x4
.global data_ov61_0217ea90
data_ov61_0217ea90:
.space 0x4
.global data_ov61_0217ea94
data_ov61_0217ea94:
.space 0x4
.global data_ov61_0217ea98
data_ov61_0217ea98:
.space 0x4
.global data_ov61_0217ea9c
data_ov61_0217ea9c:
.space 0x4
.global data_ov61_0217eaa0
data_ov61_0217eaa0:
.space 0x4
.global data_ov61_0217eaa4
data_ov61_0217eaa4:
.space 0x4
.global data_ov61_0217eaa8
data_ov61_0217eaa8:
.space 0x4
.global data_ov61_0217eaac
data_ov61_0217eaac:
.space 0x4
.global data_ov61_0217eab0
data_ov61_0217eab0:
.space 0x4
.global data_ov61_0217eab4
data_ov61_0217eab4:
.space 0x4
.global data_ov61_0217eab8
data_ov61_0217eab8:
.space 0x4
.global data_ov61_0217eabc
data_ov61_0217eabc:
.space 0x4
.global data_ov61_0217eac0
data_ov61_0217eac0:
.space 0x4
.global data_ov61_0217eac4
data_ov61_0217eac4:
.space 0x4
.global data_ov61_0217eac8
data_ov61_0217eac8:
.space 0x4
.global data_ov61_0217eacc
data_ov61_0217eacc:
.space 0x4
.global data_ov61_0217ead0
data_ov61_0217ead0:
.space 0x4
.global data_ov61_0217ead4
data_ov61_0217ead4:
.space 0x4
.global data_ov61_0217ead8
data_ov61_0217ead8:
.space 0x4
.global data_ov61_0217eadc
data_ov61_0217eadc:
.space 0x4
.global data_ov61_0217eae0
data_ov61_0217eae0:
.space 0x4
.global data_ov61_0217eae4
data_ov61_0217eae4:
.space 0x4
.global data_ov61_0217eae8
data_ov61_0217eae8:
.space 0x4
.global data_ov61_0217eaec
data_ov61_0217eaec:
.space 0x4
.global data_ov61_0217eaf0
data_ov61_0217eaf0:
.space 0x4
.global data_ov61_0217eaf4
data_ov61_0217eaf4:
.space 0x4
.global data_ov61_0217eaf8
data_ov61_0217eaf8:
.space 0x4
.global data_ov61_0217eafc
data_ov61_0217eafc:
.space 0x4
.global data_ov61_0217eb00
data_ov61_0217eb00:
.space 0x4
.global data_ov61_0217eb04
data_ov61_0217eb04:
.space 0x4
.global data_ov61_0217eb08
data_ov61_0217eb08:
.space 0x4
.global data_ov61_0217eb0c
data_ov61_0217eb0c:
.space 0x4
.global data_ov61_0217eb10
data_ov61_0217eb10:
.space 0x4
.global data_ov61_0217eb14
data_ov61_0217eb14:
.space 0x4
.global data_ov61_0217eb18
data_ov61_0217eb18:
.space 0x4
.global data_ov61_0217eb1c
data_ov61_0217eb1c:
.space 0x4
.global data_ov61_0217eb20
data_ov61_0217eb20:
.space 0x4
.global data_ov61_0217eb24
data_ov61_0217eb24:
.space 0x4
.global data_ov61_0217eb28
data_ov61_0217eb28:
.space 0x4
.global data_ov61_0217eb2c
data_ov61_0217eb2c:
.space 0x4
.global data_ov61_0217eb30
data_ov61_0217eb30:
.space 0x4
.global data_ov61_0217eb34
data_ov61_0217eb34:
.space 0x4
.global data_ov61_0217eb38
data_ov61_0217eb38:
.space 0x4
.global data_ov61_0217eb3c
data_ov61_0217eb3c:
.space 0x4
.global data_ov61_0217eb40
data_ov61_0217eb40:
.space 0x4
.global data_ov61_0217eb44
data_ov61_0217eb44:
.space 0x4
.global data_ov61_0217eb48
data_ov61_0217eb48:
.space 0x4
.global data_ov61_0217eb4c
data_ov61_0217eb4c:
.space 0x4
.global data_ov61_0217eb50
data_ov61_0217eb50:
.space 0x4
.global data_ov61_0217eb54
data_ov61_0217eb54:
.space 0x4
.global data_ov61_0217eb58
data_ov61_0217eb58:
.space 0x4
.global data_ov61_0217eb5c
data_ov61_0217eb5c:
.space 0x4
.global data_ov61_0217eb60
data_ov61_0217eb60:
.space 0x4
.global data_ov61_0217eb64
data_ov61_0217eb64:
.space 0x4
.global data_ov61_0217eb68
data_ov61_0217eb68:
.space 0x4
.global data_ov61_0217eb6c
data_ov61_0217eb6c:
.space 0x4
.global data_ov61_0217eb70
data_ov61_0217eb70:
.space 0x4
.global data_ov61_0217eb74
data_ov61_0217eb74:
.space 0x4
.global data_ov61_0217eb78
data_ov61_0217eb78:
.space 0x4
.global data_ov61_0217eb7c
data_ov61_0217eb7c:
.space 0x4
.global data_ov61_0217eb80
data_ov61_0217eb80:
.space 0x4
.global data_ov61_0217eb84
data_ov61_0217eb84:
.space 0x4
.global data_ov61_0217eb88
data_ov61_0217eb88:
.space 0x4
.global data_ov61_0217eb8c
data_ov61_0217eb8c:
.space 0x4
.global data_ov61_0217eb90
data_ov61_0217eb90:
.space 0x4
.global data_ov61_0217eb94
data_ov61_0217eb94:
.space 0x4
.global data_ov61_0217eb98
data_ov61_0217eb98:
.space 0x4
.global data_ov61_0217eb9c
data_ov61_0217eb9c:
.space 0x4
.global data_ov61_0217eba0
data_ov61_0217eba0:
.space 0x4
.global data_ov61_0217eba4
data_ov61_0217eba4:
.space 0x4
.global data_ov61_0217eba8
data_ov61_0217eba8:
.space 0x4
.global data_ov61_0217ebac
data_ov61_0217ebac:
.space 0x4
.global data_ov61_0217ebb0
data_ov61_0217ebb0:
.space 0x4
.global data_ov61_0217ebb4
data_ov61_0217ebb4:
.space 0x4
.global data_ov61_0217ebb8
data_ov61_0217ebb8:
.space 0x4
.global data_ov61_0217ebbc
data_ov61_0217ebbc:
.space 0x4
.global data_ov61_0217ebc0
data_ov61_0217ebc0:
.space 0x4
.global data_ov61_0217ebc4
data_ov61_0217ebc4:
.space 0x4
.global data_ov61_0217ebc8
data_ov61_0217ebc8:
.space 0x4
.global data_ov61_0217ebcc
data_ov61_0217ebcc:
.space 0x4
.global data_ov61_0217ebd0
data_ov61_0217ebd0:
.space 0x4
.global data_ov61_0217ebd4
data_ov61_0217ebd4:
.space 0x4
.global data_ov61_0217ebd8
data_ov61_0217ebd8:
.space 0x4
.global data_ov61_0217ebdc
data_ov61_0217ebdc:
.space 0x4
.global data_ov61_0217ebe0
data_ov61_0217ebe0:
.space 0x4
.global data_ov61_0217ebe4
data_ov61_0217ebe4:
.space 0x4
.global data_ov61_0217ebe8
data_ov61_0217ebe8:
.space 0x4
.global data_ov61_0217ebec
data_ov61_0217ebec:
.space 0x4
.global data_ov61_0217ebf0
data_ov61_0217ebf0:
.space 0x1
.global data_ov61_0217ebf1
data_ov61_0217ebf1:
.space 0x1
.global data_ov61_0217ebf2
data_ov61_0217ebf2:
.space 0x2
.global data_ov61_0217ebf4
data_ov61_0217ebf4:
.space 0x4
.global data_ov61_0217ebf8
data_ov61_0217ebf8:
.space 0x1
.global data_ov61_0217ebf9
data_ov61_0217ebf9:
.space 0x1
.global data_ov61_0217ebfa
data_ov61_0217ebfa:
.space 0x2
.global data_ov61_0217ebfc
data_ov61_0217ebfc:
.space 0x4
.global data_ov61_0217ec00
data_ov61_0217ec00:
.space 0x4
.global data_ov61_0217ec04
data_ov61_0217ec04:
.space 0x4
.global data_ov61_0217ec08
data_ov61_0217ec08:
.space 0x4
.global data_ov61_0217ec0c
data_ov61_0217ec0c:
.space 0x4
.global data_ov61_0217ec10
data_ov61_0217ec10:
.space 0x4
.global data_ov61_0217ec14
data_ov61_0217ec14:
.space 0x4
.global data_ov61_0217ec18
data_ov61_0217ec18:
.space 0x4
.global data_ov61_0217ec1c
data_ov61_0217ec1c:
.space 0x4
.global data_ov61_0217ec20
data_ov61_0217ec20:
.space 0x4
.global data_ov61_0217ec24
data_ov61_0217ec24:
.space 0x4
.global data_ov61_0217ec28
data_ov61_0217ec28:
.space 0x4
.global data_ov61_0217ec2c
data_ov61_0217ec2c:
.space 0x4
.global data_ov61_0217ec30
data_ov61_0217ec30:
.space 0x4
.global data_ov61_0217ec34
data_ov61_0217ec34:
.space 0x4
.global data_ov61_0217ec38
data_ov61_0217ec38:
.space 0x4
.global data_ov61_0217ec3c
data_ov61_0217ec3c:
.space 0x4
.global data_ov61_0217ec40
data_ov61_0217ec40:
.space 0x4
.global data_ov61_0217ec44
data_ov61_0217ec44:
.space 0x4
.global data_ov61_0217ec48
data_ov61_0217ec48:
.space 0x4
.global data_ov61_0217ec4c
data_ov61_0217ec4c:
.space 0x4
.global data_ov61_0217ec50
data_ov61_0217ec50:
.space 0x4
.global data_ov61_0217ec54
data_ov61_0217ec54:
.space 0x4
.global data_ov61_0217ec58
data_ov61_0217ec58:
.space 0x4
.global data_ov61_0217ec5c
data_ov61_0217ec5c:
.space 0x4
.global data_ov61_0217ec60
data_ov61_0217ec60:
.space 0x4
.global data_ov61_0217ec64
data_ov61_0217ec64:
.space 0x4
.global data_ov61_0217ec68
data_ov61_0217ec68:
.space 0x4
.global data_ov61_0217ec6c
data_ov61_0217ec6c:
.space 0x4
.global data_ov61_0217ec70
data_ov61_0217ec70:
.space 0x4
.global data_ov61_0217ec74
data_ov61_0217ec74:
.space 0x4
.global data_ov61_0217ec78
data_ov61_0217ec78:
.space 0x4
.global data_ov61_0217ec7c
data_ov61_0217ec7c:
.space 0x4
.global data_ov61_0217ec80
data_ov61_0217ec80:
.space 0x4
.global data_ov61_0217ec84
data_ov61_0217ec84:
.space 0x4
.global data_ov61_0217ec88
data_ov61_0217ec88:
.space 0x4
.global data_ov61_0217ec8c
data_ov61_0217ec8c:
.space 0x4
.global data_ov61_0217ec90
data_ov61_0217ec90:
.space 0x4
.global data_ov61_0217ec94
data_ov61_0217ec94:
.space 0x4
.global data_ov61_0217ec98
data_ov61_0217ec98:
.space 0x4
.global data_ov61_0217ec9c
data_ov61_0217ec9c:
.space 0x4
.global data_ov61_0217eca0
data_ov61_0217eca0:
.space 0x4
.global data_ov61_0217eca4
data_ov61_0217eca4:
.space 0x4
.global data_ov61_0217eca8
data_ov61_0217eca8:
.space 0x4
.global data_ov61_0217ecac
data_ov61_0217ecac:
.space 0x4
.global data_ov61_0217ecb0
data_ov61_0217ecb0:
.space 0x4
.global data_ov61_0217ecb4
data_ov61_0217ecb4:
.space 0x4
.global data_ov61_0217ecb8
data_ov61_0217ecb8:
.space 0x4
.global data_ov61_0217ecbc
data_ov61_0217ecbc:
.space 0x4
.global data_ov61_0217ecc0
data_ov61_0217ecc0:
.space 0x4
.global data_ov61_0217ecc4
data_ov61_0217ecc4:
.space 0x4
.global data_ov61_0217ecc8
data_ov61_0217ecc8:
.space 0x4
.global data_ov61_0217eccc
data_ov61_0217eccc:
.space 0x4
.global data_ov61_0217ecd0
data_ov61_0217ecd0:
.space 0x4
.global data_ov61_0217ecd4
data_ov61_0217ecd4:
.space 0x4
.global data_ov61_0217ecd8
data_ov61_0217ecd8:
.space 0x4
.global data_ov61_0217ecdc
data_ov61_0217ecdc:
.space 0x4
.global data_ov61_0217ece0
data_ov61_0217ece0:
.space 0x4
.global data_ov61_0217ece4
data_ov61_0217ece4:
.space 0x4
.global data_ov61_0217ece8
data_ov61_0217ece8:
.space 0x4
.global data_ov61_0217ecec
data_ov61_0217ecec:
.space 0x4
.global data_ov61_0217ecf0
data_ov61_0217ecf0:
.space 0x4
.global data_ov61_0217ecf4
data_ov61_0217ecf4:
.space 0x4
.global data_ov61_0217ecf8
data_ov61_0217ecf8:
.space 0x4
.global data_ov61_0217ecfc
data_ov61_0217ecfc:
.space 0x4
.global data_ov61_0217ed00
data_ov61_0217ed00:
.space 0x4
.global data_ov61_0217ed04
data_ov61_0217ed04:
.space 0x4
.global data_ov61_0217ed08
data_ov61_0217ed08:
.space 0x4
.global data_ov61_0217ed0c
data_ov61_0217ed0c:
.space 0x4
.global data_ov61_0217ed10
data_ov61_0217ed10:
.space 0x4
.global data_ov61_0217ed14
data_ov61_0217ed14:
.space 0x4
.global data_ov61_0217ed18
data_ov61_0217ed18:
.space 0x4
.global data_ov61_0217ed1c
data_ov61_0217ed1c:
.space 0x4
.global data_ov61_0217ed20
data_ov61_0217ed20:
.space 0x4
.global data_ov61_0217ed24
data_ov61_0217ed24:
.space 0x4
.global data_ov61_0217ed28
data_ov61_0217ed28:
.space 0x4
.global data_ov61_0217ed2c
data_ov61_0217ed2c:
.space 0x4
.global data_ov61_0217ed30
data_ov61_0217ed30:
.space 0x4
.global data_ov61_0217ed34
data_ov61_0217ed34:
.space 0x4
.global data_ov61_0217ed38
data_ov61_0217ed38:
.space 0x4
.global data_ov61_0217ed3c
data_ov61_0217ed3c:
.space 0x4
.global data_ov61_0217ed40
data_ov61_0217ed40:
.space 0x4
.global data_ov61_0217ed44
data_ov61_0217ed44:
.space 0x4
.global data_ov61_0217ed48
data_ov61_0217ed48:
.space 0x4
.global data_ov61_0217ed4c
data_ov61_0217ed4c:
.space 0x4
.global data_ov61_0217ed50
data_ov61_0217ed50:
.space 0x4
.global data_ov61_0217ed54
data_ov61_0217ed54:
.space 0x4
.global data_ov61_0217ed58
data_ov61_0217ed58:
.space 0x4
.global data_ov61_0217ed5c
data_ov61_0217ed5c:
.space 0x4
.global data_ov61_0217ed60
data_ov61_0217ed60:
.space 0x4
.global data_ov61_0217ed64
data_ov61_0217ed64:
.space 0x4
.global data_ov61_0217ed68
data_ov61_0217ed68:
.space 0x4
.global data_ov61_0217ed6c
data_ov61_0217ed6c:
.space 0x4
.global data_ov61_0217ed70
data_ov61_0217ed70:
.space 0x4
.global data_ov61_0217ed74
data_ov61_0217ed74:
.space 0x4
.global data_ov61_0217ed78
data_ov61_0217ed78:
.space 0x4
.global data_ov61_0217ed7c
data_ov61_0217ed7c:
.space 0x4
.global data_ov61_0217ed80
data_ov61_0217ed80:
.space 0x4
.global data_ov61_0217ed84
data_ov61_0217ed84:
.space 0x4
.global data_ov61_0217ed88
data_ov61_0217ed88:
.space 0x4
.global data_ov61_0217ed8c
data_ov61_0217ed8c:
.space 0x4
.global data_ov61_0217ed90
data_ov61_0217ed90:
.space 0x4
.global data_ov61_0217ed94
data_ov61_0217ed94:
.space 0x4
.global data_ov61_0217ed98
data_ov61_0217ed98:
.space 0x4
.global data_ov61_0217ed9c
data_ov61_0217ed9c:
.space 0x4
.global data_ov61_0217eda0
data_ov61_0217eda0:
.space 0x4
.global data_ov61_0217eda4
data_ov61_0217eda4:
.space 0x4
.global data_ov61_0217eda8
data_ov61_0217eda8:
.space 0x4
.global data_ov61_0217edac
data_ov61_0217edac:
.space 0x4
.global data_ov61_0217edb0
data_ov61_0217edb0:
.space 0x4
.global data_ov61_0217edb4
data_ov61_0217edb4:
.space 0x4
.global data_ov61_0217edb8
data_ov61_0217edb8:
.space 0x4
.global data_ov61_0217edbc
data_ov61_0217edbc:
.space 0x4
.global data_ov61_0217edc0
data_ov61_0217edc0:
.space 0x4
.global data_ov61_0217edc4
data_ov61_0217edc4:
.space 0x4
.global data_ov61_0217edc8
data_ov61_0217edc8:
.space 0x4
.global data_ov61_0217edcc
data_ov61_0217edcc:
.space 0x4
.global data_ov61_0217edd0
data_ov61_0217edd0:
.space 0x4
.global data_ov61_0217edd4
data_ov61_0217edd4:
.space 0x4
.global data_ov61_0217edd8
data_ov61_0217edd8:
.space 0x4
.global data_ov61_0217eddc
data_ov61_0217eddc:
.space 0x4
.global data_ov61_0217ede0
data_ov61_0217ede0:
.space 0x4
.global data_ov61_0217ede4
data_ov61_0217ede4:
.space 0x4
.global data_ov61_0217ede8
data_ov61_0217ede8:
.space 0x4
.global data_ov61_0217edec
data_ov61_0217edec:
.space 0x4
.global data_ov61_0217edf0
data_ov61_0217edf0:
.space 0x4
.global data_ov61_0217edf4
data_ov61_0217edf4:
.space 0x4
.global data_ov61_0217edf8
data_ov61_0217edf8:
.space 0x4
.global data_ov61_0217edfc
data_ov61_0217edfc:
.space 0x4
.global data_ov61_0217ee00
data_ov61_0217ee00:
.space 0x4
.global data_ov61_0217ee04
data_ov61_0217ee04:
.space 0x4
.global data_ov61_0217ee08
data_ov61_0217ee08:
.space 0x4
.global data_ov61_0217ee0c
data_ov61_0217ee0c:
.space 0x4
.global data_ov61_0217ee10
data_ov61_0217ee10:
.space 0x4
.global data_ov61_0217ee14
data_ov61_0217ee14:
.space 0x4
.global data_ov61_0217ee18
data_ov61_0217ee18:
.space 0x4
.global data_ov61_0217ee1c
data_ov61_0217ee1c:
.space 0x4
.global data_ov61_0217ee20
data_ov61_0217ee20:
.space 0x4
.global data_ov61_0217ee24
data_ov61_0217ee24:
.space 0x4
.global data_ov61_0217ee28
data_ov61_0217ee28:
.space 0x4
.global data_ov61_0217ee2c
data_ov61_0217ee2c:
.space 0x4
.global data_ov61_0217ee30
data_ov61_0217ee30:
.space 0x4
.global data_ov61_0217ee34
data_ov61_0217ee34:
.space 0x4
.global data_ov61_0217ee38
data_ov61_0217ee38:
.space 0x4
.global data_ov61_0217ee3c
data_ov61_0217ee3c:
.space 0x4
.global data_ov61_0217ee40
data_ov61_0217ee40:
.space 0x4
.global data_ov61_0217ee44
data_ov61_0217ee44:
.space 0x4
.global data_ov61_0217ee48
data_ov61_0217ee48:
.space 0x4
.global data_ov61_0217ee4c
data_ov61_0217ee4c:
.space 0x4
.global data_ov61_0217ee50
data_ov61_0217ee50:
.space 0x4
.global data_ov61_0217ee54
data_ov61_0217ee54:
.space 0x4
.global data_ov61_0217ee58
data_ov61_0217ee58:
.space 0x4
.global data_ov61_0217ee5c
data_ov61_0217ee5c:
.space 0x4
.global data_ov61_0217ee60
data_ov61_0217ee60:
.space 0x4
.global data_ov61_0217ee64
data_ov61_0217ee64:
.space 0x4
.global data_ov61_0217ee68
data_ov61_0217ee68:
.space 0x4
.global data_ov61_0217ee6c
data_ov61_0217ee6c:
.space 0x4
.global data_ov61_0217ee70
data_ov61_0217ee70:
.space 0x4
.global data_ov61_0217ee74
data_ov61_0217ee74:
.space 0x4
.global data_ov61_0217ee78
data_ov61_0217ee78:
.space 0x4
.global data_ov61_0217ee7c
data_ov61_0217ee7c:
.space 0x4
.global data_ov61_0217ee80
data_ov61_0217ee80:
.space 0x4
.global data_ov61_0217ee84
data_ov61_0217ee84:
.space 0x4
.global data_ov61_0217ee88
data_ov61_0217ee88:
.space 0x4
.global data_ov61_0217ee8c
data_ov61_0217ee8c:
.space 0x4
.global data_ov61_0217ee90
data_ov61_0217ee90:
.space 0x4
.global data_ov61_0217ee94
data_ov61_0217ee94:
.space 0x4
.global data_ov61_0217ee98
data_ov61_0217ee98:
.space 0x4
.global data_ov61_0217ee9c
data_ov61_0217ee9c:
.space 0x4
.global data_ov61_0217eea0
data_ov61_0217eea0:
.space 0x4
.global data_ov61_0217eea4
data_ov61_0217eea4:
.space 0x4
.global data_ov61_0217eea8
data_ov61_0217eea8:
.space 0x4
.global data_ov61_0217eeac
data_ov61_0217eeac:
.space 0x4
.global data_ov61_0217eeb0
data_ov61_0217eeb0:
.space 0x4
.global data_ov61_0217eeb4
data_ov61_0217eeb4:
.space 0x4
.global data_ov61_0217eeb8
data_ov61_0217eeb8:
.space 0x4
.global data_ov61_0217eebc
data_ov61_0217eebc:
.space 0x4
.global data_ov61_0217eec0
data_ov61_0217eec0:
.space 0x4
.global data_ov61_0217eec4
data_ov61_0217eec4:
.space 0x4
.global data_ov61_0217eec8
data_ov61_0217eec8:
.space 0x4
.global data_ov61_0217eecc
data_ov61_0217eecc:
.space 0x4
.global data_ov61_0217eed0
data_ov61_0217eed0:
.space 0x4
.global data_ov61_0217eed4
data_ov61_0217eed4:
.space 0x4
.global data_ov61_0217eed8
data_ov61_0217eed8:
.space 0x4
.global data_ov61_0217eedc
data_ov61_0217eedc:
.space 0x4
.global data_ov61_0217eee0
data_ov61_0217eee0:
.space 0x4
.global data_ov61_0217eee4
data_ov61_0217eee4:
.space 0x4
.global data_ov61_0217eee8
data_ov61_0217eee8:
.space 0x4
.global data_ov61_0217eeec
data_ov61_0217eeec:
.space 0x4
.global data_ov61_0217eef0
data_ov61_0217eef0:
.space 0x4
.global data_ov61_0217eef4
data_ov61_0217eef4:
.space 0x4
.global data_ov61_0217eef8
data_ov61_0217eef8:
.space 0x4
.global data_ov61_0217eefc
data_ov61_0217eefc:
.space 0x4
.global data_ov61_0217ef00
data_ov61_0217ef00:
.space 0x4
.global data_ov61_0217ef04
data_ov61_0217ef04:
.space 0x4
.global data_ov61_0217ef08
data_ov61_0217ef08:
.space 0x4
.global data_ov61_0217ef0c
data_ov61_0217ef0c:
.space 0x4
.global data_ov61_0217ef10
data_ov61_0217ef10:
.space 0x4
.global data_ov61_0217ef14
data_ov61_0217ef14:
.space 0x4
.global data_ov61_0217ef18
data_ov61_0217ef18:
.space 0x4
.global data_ov61_0217ef1c
data_ov61_0217ef1c:
.space 0x4
.global data_ov61_0217ef20
data_ov61_0217ef20:
.space 0x4
.global data_ov61_0217ef24
data_ov61_0217ef24:
.space 0x4
.global data_ov61_0217ef28
data_ov61_0217ef28:
.space 0x4
.global data_ov61_0217ef2c
data_ov61_0217ef2c:
.space 0x4
.global data_ov61_0217ef30
data_ov61_0217ef30:
.space 0x4
.global data_ov61_0217ef34
data_ov61_0217ef34:
.space 0x4
.global data_ov61_0217ef38
data_ov61_0217ef38:
.space 0x4
.global data_ov61_0217ef3c
data_ov61_0217ef3c:
.space 0x4
.global data_ov61_0217ef40
data_ov61_0217ef40:
.space 0x4
.global data_ov61_0217ef44
data_ov61_0217ef44:
.space 0x4
.global data_ov61_0217ef48
data_ov61_0217ef48:
.space 0x4
.global data_ov61_0217ef4c
data_ov61_0217ef4c:
.space 0x4
.global data_ov61_0217ef50
data_ov61_0217ef50:
.space 0x4
.global data_ov61_0217ef54
data_ov61_0217ef54:
.space 0x4
.global data_ov61_0217ef58
data_ov61_0217ef58:
.space 0x4
.global data_ov61_0217ef5c
data_ov61_0217ef5c:
.space 0x4
.global data_ov61_0217ef60
data_ov61_0217ef60:
.space 0x4
.global data_ov61_0217ef64
data_ov61_0217ef64:
.space 0x4
.global data_ov61_0217ef68
data_ov61_0217ef68:
.space 0x4
.global data_ov61_0217ef6c
data_ov61_0217ef6c:
.space 0x4
.global data_ov61_0217ef70
data_ov61_0217ef70:
.space 0x4
.global data_ov61_0217ef74
data_ov61_0217ef74:
.space 0x4
.global data_ov61_0217ef78
data_ov61_0217ef78:
.space 0x4
.global data_ov61_0217ef7c
data_ov61_0217ef7c:
.space 0x4
.global data_ov61_0217ef80
data_ov61_0217ef80:
.space 0x4
.global data_ov61_0217ef84
data_ov61_0217ef84:
.space 0x4
.global data_ov61_0217ef88
data_ov61_0217ef88:
.space 0x4
.global data_ov61_0217ef8c
data_ov61_0217ef8c:
.space 0x4
.global data_ov61_0217ef90
data_ov61_0217ef90:
.space 0x4
.global data_ov61_0217ef94
data_ov61_0217ef94:
.space 0x4
.global data_ov61_0217ef98
data_ov61_0217ef98:
.space 0x4
.global data_ov61_0217ef9c
data_ov61_0217ef9c:
.space 0x4
.global data_ov61_0217efa0
data_ov61_0217efa0:
.space 0x4
.global data_ov61_0217efa4
data_ov61_0217efa4:
.space 0x4
.global data_ov61_0217efa8
data_ov61_0217efa8:
.space 0x4
.global data_ov61_0217efac
data_ov61_0217efac:
.space 0x4
.global data_ov61_0217efb0
data_ov61_0217efb0:
.space 0x4
.global data_ov61_0217efb4
data_ov61_0217efb4:
.space 0x4
.global data_ov61_0217efb8
data_ov61_0217efb8:
.space 0x4
.global data_ov61_0217efbc
data_ov61_0217efbc:
.space 0x4
.global data_ov61_0217efc0
data_ov61_0217efc0:
.space 0x4
.global data_ov61_0217efc4
data_ov61_0217efc4:
.space 0x4
.global data_ov61_0217efc8
data_ov61_0217efc8:
.space 0x4
.global data_ov61_0217efcc
data_ov61_0217efcc:
.space 0x4
.global data_ov61_0217efd0
data_ov61_0217efd0:
.space 0x4
.global data_ov61_0217efd4
data_ov61_0217efd4:
.space 0x4
.global data_ov61_0217efd8
data_ov61_0217efd8:
.space 0x4
.global data_ov61_0217efdc
data_ov61_0217efdc:
.space 0x4
.global data_ov61_0217efe0
data_ov61_0217efe0:
.space 0x4
.global data_ov61_0217efe4
data_ov61_0217efe4:
.space 0x4
.global data_ov61_0217efe8
data_ov61_0217efe8:
.space 0x4
.global data_ov61_0217efec
data_ov61_0217efec:
.space 0x4
.global data_ov61_0217eff0
data_ov61_0217eff0:
.space 0x4
.global data_ov61_0217eff4
data_ov61_0217eff4:
.space 0x4
.global data_ov61_0217eff8
data_ov61_0217eff8:
.space 0x4
.global data_ov61_0217effc
data_ov61_0217effc:
.space 0x4
.global data_ov61_0217f000
data_ov61_0217f000:
.space 0x4
.global data_ov61_0217f004
data_ov61_0217f004:
.space 0x4
.global data_ov61_0217f008
data_ov61_0217f008:
.space 0x4
.global data_ov61_0217f00c
data_ov61_0217f00c:
.space 0x4
.global data_ov61_0217f010
data_ov61_0217f010:
.space 0x4
.global data_ov61_0217f014
data_ov61_0217f014:
.space 0x4
.global data_ov61_0217f018
data_ov61_0217f018:
.space 0x4
.global data_ov61_0217f01c
data_ov61_0217f01c:
.space 0x4
.global data_ov61_0217f020
data_ov61_0217f020:
.space 0x4
.global data_ov61_0217f024
data_ov61_0217f024:
.space 0x4
.global data_ov61_0217f028
data_ov61_0217f028:
.space 0x4
.global data_ov61_0217f02c
data_ov61_0217f02c:
.space 0x4
.global data_ov61_0217f030
data_ov61_0217f030:
.space 0x4
.global data_ov61_0217f034
data_ov61_0217f034:
.space 0x4
.global data_ov61_0217f038
data_ov61_0217f038:
.space 0x4
.global data_ov61_0217f03c
data_ov61_0217f03c:
.space 0x4
.global data_ov61_0217f040
data_ov61_0217f040:
.space 0x4
.global data_ov61_0217f044
data_ov61_0217f044:
.space 0x4
.global data_ov61_0217f048
data_ov61_0217f048:
.space 0x4
.global data_ov61_0217f04c
data_ov61_0217f04c:
.space 0x4
.global data_ov61_0217f050
data_ov61_0217f050:
.space 0x4
.global data_ov61_0217f054
data_ov61_0217f054:
.space 0x4
.global data_ov61_0217f058
data_ov61_0217f058:
.space 0x4
.global data_ov61_0217f05c
data_ov61_0217f05c:
.space 0x4
.global data_ov61_0217f060
data_ov61_0217f060:
.space 0x4
.global data_ov61_0217f064
data_ov61_0217f064:
.space 0x4
.global data_ov61_0217f068
data_ov61_0217f068:
.space 0x4
.global data_ov61_0217f06c
data_ov61_0217f06c:
.space 0x4
.global data_ov61_0217f070
data_ov61_0217f070:
.space 0x4
.global data_ov61_0217f074
data_ov61_0217f074:
.space 0x4
.global data_ov61_0217f078
data_ov61_0217f078:
.space 0x4
.global data_ov61_0217f07c
data_ov61_0217f07c:
.space 0x4
.global data_ov61_0217f080
data_ov61_0217f080:
.space 0x4
.global data_ov61_0217f084
data_ov61_0217f084:
.space 0x4
.global data_ov61_0217f088
data_ov61_0217f088:
.space 0x4
.global data_ov61_0217f08c
data_ov61_0217f08c:
.space 0x4
.global data_ov61_0217f090
data_ov61_0217f090:
.space 0x4
.global data_ov61_0217f094
data_ov61_0217f094:
.space 0x4
.global data_ov61_0217f098
data_ov61_0217f098:
.space 0x4
.global data_ov61_0217f09c
data_ov61_0217f09c:
.space 0x4
.global data_ov61_0217f0a0
data_ov61_0217f0a0:
.space 0x4
.global data_ov61_0217f0a4
data_ov61_0217f0a4:
.space 0x4
.global data_ov61_0217f0a8
data_ov61_0217f0a8:
.space 0x4
.global data_ov61_0217f0ac
data_ov61_0217f0ac:
.space 0x4
.global data_ov61_0217f0b0
data_ov61_0217f0b0:
.space 0x4
.global data_ov61_0217f0b4
data_ov61_0217f0b4:
.space 0x4
.global data_ov61_0217f0b8
data_ov61_0217f0b8:
.space 0x4
.global data_ov61_0217f0bc
data_ov61_0217f0bc:
.space 0x4
.global data_ov61_0217f0c0
data_ov61_0217f0c0:
.space 0x4
.global data_ov61_0217f0c4
data_ov61_0217f0c4:
.space 0x4
.global data_ov61_0217f0c8
data_ov61_0217f0c8:
.space 0x4
.global data_ov61_0217f0cc
data_ov61_0217f0cc:
.space 0x4
.global data_ov61_0217f0d0
data_ov61_0217f0d0:
.space 0x4
.global data_ov61_0217f0d4
data_ov61_0217f0d4:
.space 0x4
.global data_ov61_0217f0d8
data_ov61_0217f0d8:
.space 0x4
.global data_ov61_0217f0dc
data_ov61_0217f0dc:
.space 0x4
.global data_ov61_0217f0e0
data_ov61_0217f0e0:
.space 0x4
.global data_ov61_0217f0e4
data_ov61_0217f0e4:
.space 0x4
.global data_ov61_0217f0e8
data_ov61_0217f0e8:
.space 0x4
.global data_ov61_0217f0ec
data_ov61_0217f0ec:
.space 0x4
.global data_ov61_0217f0f0
data_ov61_0217f0f0:
.space 0x4
.global data_ov61_0217f0f4
data_ov61_0217f0f4:
.space 0x4
.global data_ov61_0217f0f8
data_ov61_0217f0f8:
.space 0x4
.global data_ov61_0217f0fc
data_ov61_0217f0fc:
.space 0x4
.global data_ov61_0217f100
data_ov61_0217f100:
.space 0x4
.global data_ov61_0217f104
data_ov61_0217f104:
.space 0x4
.global data_ov61_0217f108
data_ov61_0217f108:
.space 0x4
.global data_ov61_0217f10c
data_ov61_0217f10c:
.space 0x4
.global data_ov61_0217f110
data_ov61_0217f110:
.space 0x4
.global data_ov61_0217f114
data_ov61_0217f114:
.space 0x4
.global data_ov61_0217f118
data_ov61_0217f118:
.space 0x4
.global data_ov61_0217f11c
data_ov61_0217f11c:
.space 0x4
.global data_ov61_0217f120
data_ov61_0217f120:
.space 0x4
.global data_ov61_0217f124
data_ov61_0217f124:
.space 0x4
.global data_ov61_0217f128
data_ov61_0217f128:
.space 0x4
.global data_ov61_0217f12c
data_ov61_0217f12c:
.space 0x4
.global data_ov61_0217f130
data_ov61_0217f130:
.space 0x4
.global data_ov61_0217f134
data_ov61_0217f134:
.space 0x4
.global data_ov61_0217f138
data_ov61_0217f138:
.space 0x4
.global data_ov61_0217f13c
data_ov61_0217f13c:
.space 0x4
.global data_ov61_0217f140
data_ov61_0217f140:
.space 0x4
.global data_ov61_0217f144
data_ov61_0217f144:
.space 0x4
.global data_ov61_0217f148
data_ov61_0217f148:
.space 0x4
.global data_ov61_0217f14c
data_ov61_0217f14c:
.space 0x4
.global data_ov61_0217f150
data_ov61_0217f150:
.space 0x4
.global data_ov61_0217f154
data_ov61_0217f154:
.space 0x4
.global data_ov61_0217f158
data_ov61_0217f158:
.space 0x4
.global data_ov61_0217f15c
data_ov61_0217f15c:
.space 0x4
.global data_ov61_0217f160
data_ov61_0217f160:
.space 0x4
.global data_ov61_0217f164
data_ov61_0217f164:
.space 0x4
.global data_ov61_0217f168
data_ov61_0217f168:
.space 0x4
.global data_ov61_0217f16c
data_ov61_0217f16c:
.space 0x4
.global data_ov61_0217f170
data_ov61_0217f170:
.space 0x4
.global data_ov61_0217f174
data_ov61_0217f174:
.space 0x4
.global data_ov61_0217f178
data_ov61_0217f178:
.space 0x4
.global data_ov61_0217f17c
data_ov61_0217f17c:
.space 0x4
.global data_ov61_0217f180
data_ov61_0217f180:
.space 0x4
.global data_ov61_0217f184
data_ov61_0217f184:
.space 0x4
.global data_ov61_0217f188
data_ov61_0217f188:
.space 0x4
.global data_ov61_0217f18c
data_ov61_0217f18c:
.space 0x4
.global data_ov61_0217f190
data_ov61_0217f190:
.space 0x4
.global data_ov61_0217f194
data_ov61_0217f194:
.space 0x4
.global data_ov61_0217f198
data_ov61_0217f198:
.space 0x4
.global data_ov61_0217f19c
data_ov61_0217f19c:
.space 0x4
.global data_ov61_0217f1a0
data_ov61_0217f1a0:
.space 0x4
.global data_ov61_0217f1a4
data_ov61_0217f1a4:
.space 0x4
.global data_ov61_0217f1a8
data_ov61_0217f1a8:
.space 0x4
.global data_ov61_0217f1ac
data_ov61_0217f1ac:
.space 0x4
.global data_ov61_0217f1b0
data_ov61_0217f1b0:
.space 0x4
.global data_ov61_0217f1b4
data_ov61_0217f1b4:
.space 0x4
.global data_ov61_0217f1b8
data_ov61_0217f1b8:
.space 0x4
.global data_ov61_0217f1bc
data_ov61_0217f1bc:
.space 0x4
.global data_ov61_0217f1c0
data_ov61_0217f1c0:
.space 0x4
.global data_ov61_0217f1c4
data_ov61_0217f1c4:
.space 0x4
.global data_ov61_0217f1c8
data_ov61_0217f1c8:
.space 0x4
.global data_ov61_0217f1cc
data_ov61_0217f1cc:
.space 0x4
.global data_ov61_0217f1d0
data_ov61_0217f1d0:
.space 0x4
.global data_ov61_0217f1d4
data_ov61_0217f1d4:
.space 0x4
.global data_ov61_0217f1d8
data_ov61_0217f1d8:
.space 0x4
.global data_ov61_0217f1dc
data_ov61_0217f1dc:
.space 0x4
.global data_ov61_0217f1e0
data_ov61_0217f1e0:
.space 0x4
.global data_ov61_0217f1e4
data_ov61_0217f1e4:
.space 0x4
.global data_ov61_0217f1e8
data_ov61_0217f1e8:
.space 0x4
.global data_ov61_0217f1ec
data_ov61_0217f1ec:
.space 0x4
.global data_ov61_0217f1f0
data_ov61_0217f1f0:
.space 0x4
.global data_ov61_0217f1f4
data_ov61_0217f1f4:
.space 0x4
.global data_ov61_0217f1f8
data_ov61_0217f1f8:
.space 0x4
.global data_ov61_0217f1fc
data_ov61_0217f1fc:
.space 0x4
.global data_ov61_0217f200
data_ov61_0217f200:
.space 0x4
.global data_ov61_0217f204
data_ov61_0217f204:
.space 0x4
.global data_ov61_0217f208
data_ov61_0217f208:
.space 0x4
.global data_ov61_0217f20c
data_ov61_0217f20c:
.space 0x4
.global data_ov61_0217f210
data_ov61_0217f210:
.space 0x4
.global data_ov61_0217f214
data_ov61_0217f214:
.space 0x4
.global data_ov61_0217f218
data_ov61_0217f218:
.space 0x4
.global data_ov61_0217f21c
data_ov61_0217f21c:
.space 0x4
.global data_ov61_0217f220
data_ov61_0217f220:
.space 0x4
.global data_ov61_0217f224
data_ov61_0217f224:
.space 0x4
.global data_ov61_0217f228
data_ov61_0217f228:
.space 0x4
.global data_ov61_0217f22c
data_ov61_0217f22c:
.space 0x4
.global data_ov61_0217f230
data_ov61_0217f230:
.space 0x4
.global data_ov61_0217f234
data_ov61_0217f234:
.space 0x4
.global data_ov61_0217f238
data_ov61_0217f238:
.space 0x4
.global data_ov61_0217f23c
data_ov61_0217f23c:
.space 0x4
.global data_ov61_0217f240
data_ov61_0217f240:
.space 0x4
.global data_ov61_0217f244
data_ov61_0217f244:
.space 0x4
.global data_ov61_0217f248
data_ov61_0217f248:
.space 0x4
.global data_ov61_0217f24c
data_ov61_0217f24c:
.space 0x4
.global data_ov61_0217f250
data_ov61_0217f250:
.space 0x4
.global data_ov61_0217f254
data_ov61_0217f254:
.space 0x4
.global data_ov61_0217f258
data_ov61_0217f258:
.space 0x4
.global data_ov61_0217f25c
data_ov61_0217f25c:
.space 0x4
.global data_ov61_0217f260
data_ov61_0217f260:
.space 0x4
.global data_ov61_0217f264
data_ov61_0217f264:
.space 0x4
.global data_ov61_0217f268
data_ov61_0217f268:
.space 0x4
.global data_ov61_0217f26c
data_ov61_0217f26c:
.space 0x4
.global data_ov61_0217f270
data_ov61_0217f270:
.space 0x4
.global data_ov61_0217f274
data_ov61_0217f274:
.space 0x4
.global data_ov61_0217f278
data_ov61_0217f278:
.space 0x4
.global data_ov61_0217f27c
data_ov61_0217f27c:
.space 0x4
.global data_ov61_0217f280
data_ov61_0217f280:
.space 0x4
.global data_ov61_0217f284
data_ov61_0217f284:
.space 0x4
.global data_ov61_0217f288
data_ov61_0217f288:
.space 0x4
.global data_ov61_0217f28c
data_ov61_0217f28c:
.space 0x4
.global data_ov61_0217f290
data_ov61_0217f290:
.space 0x4
.global data_ov61_0217f294
data_ov61_0217f294:
.space 0x4
.global data_ov61_0217f298
data_ov61_0217f298:
.space 0x4
.global data_ov61_0217f29c
data_ov61_0217f29c:
.space 0x4
.global data_ov61_0217f2a0
data_ov61_0217f2a0:
.space 0x4
.global data_ov61_0217f2a4
data_ov61_0217f2a4:
.space 0x4
.global data_ov61_0217f2a8
data_ov61_0217f2a8:
.space 0x4
.global data_ov61_0217f2ac
data_ov61_0217f2ac:
.space 0x4
.global data_ov61_0217f2b0
data_ov61_0217f2b0:
.space 0x4
.global data_ov61_0217f2b4
data_ov61_0217f2b4:
.space 0x4
.global data_ov61_0217f2b8
data_ov61_0217f2b8:
.space 0x4
.global data_ov61_0217f2bc
data_ov61_0217f2bc:
.space 0x4
.global data_ov61_0217f2c0
data_ov61_0217f2c0:
.space 0x4
.global data_ov61_0217f2c4
data_ov61_0217f2c4:
.space 0x4
.global data_ov61_0217f2c8
data_ov61_0217f2c8:
.space 0x4
.global data_ov61_0217f2cc
data_ov61_0217f2cc:
.space 0x4
.global data_ov61_0217f2d0
data_ov61_0217f2d0:
.space 0x4
.global data_ov61_0217f2d4
data_ov61_0217f2d4:
.space 0x4
.global data_ov61_0217f2d8
data_ov61_0217f2d8:
.space 0x4
.global data_ov61_0217f2dc
data_ov61_0217f2dc:
.space 0x4
.global data_ov61_0217f2e0
data_ov61_0217f2e0:
.space 0x4
.global data_ov61_0217f2e4
data_ov61_0217f2e4:
.space 0x4
.global data_ov61_0217f2e8
data_ov61_0217f2e8:
.space 0x4
.global data_ov61_0217f2ec
data_ov61_0217f2ec:
.space 0x4
.global data_ov61_0217f2f0
data_ov61_0217f2f0:
.space 0x4
.global data_ov61_0217f2f4
data_ov61_0217f2f4:
.space 0x4
.global data_ov61_0217f2f8
data_ov61_0217f2f8:
.space 0x4
.global data_ov61_0217f2fc
data_ov61_0217f2fc:
.space 0x4
.global data_ov61_0217f300
data_ov61_0217f300:
.space 0x4
.global data_ov61_0217f304
data_ov61_0217f304:
.space 0x4
.global data_ov61_0217f308
data_ov61_0217f308:
.space 0x4
.global data_ov61_0217f30c
data_ov61_0217f30c:
.space 0x4
.global data_ov61_0217f310
data_ov61_0217f310:
.space 0x4
.global data_ov61_0217f314
data_ov61_0217f314:
.space 0x4
.global data_ov61_0217f318
data_ov61_0217f318:
.space 0x4
.global data_ov61_0217f31c
data_ov61_0217f31c:
.space 0x4
.global data_ov61_0217f320
data_ov61_0217f320:
.space 0x4
.global data_ov61_0217f324
data_ov61_0217f324:
.space 0x4
.global data_ov61_0217f328
data_ov61_0217f328:
.space 0x4
.global data_ov61_0217f32c
data_ov61_0217f32c:
.space 0x4
.global data_ov61_0217f330
data_ov61_0217f330:
.space 0x4
.global data_ov61_0217f334
data_ov61_0217f334:
.space 0x4
.global data_ov61_0217f338
data_ov61_0217f338:
.space 0x4
.global data_ov61_0217f33c
data_ov61_0217f33c:
.space 0x4
.global data_ov61_0217f340
data_ov61_0217f340:
.space 0x4
.global data_ov61_0217f344
data_ov61_0217f344:
.space 0x4
.global data_ov61_0217f348
data_ov61_0217f348:
.space 0x4
.global data_ov61_0217f34c
data_ov61_0217f34c:
.space 0x4
.global data_ov61_0217f350
data_ov61_0217f350:
.space 0x4
.global data_ov61_0217f354
data_ov61_0217f354:
.space 0x4
.global data_ov61_0217f358
data_ov61_0217f358:
.space 0x4
.global data_ov61_0217f35c
data_ov61_0217f35c:
.space 0x4
.global data_ov61_0217f360
data_ov61_0217f360:
.space 0x4
.global data_ov61_0217f364
data_ov61_0217f364:
.space 0x4
.global data_ov61_0217f368
data_ov61_0217f368:
.space 0x4
.global data_ov61_0217f36c
data_ov61_0217f36c:
.space 0x4
.global data_ov61_0217f370
data_ov61_0217f370:
.space 0x4
.global data_ov61_0217f374
data_ov61_0217f374:
.space 0x4
.global data_ov61_0217f378
data_ov61_0217f378:
.space 0x4
.global data_ov61_0217f37c
data_ov61_0217f37c:
.space 0x4
.global data_ov61_0217f380
data_ov61_0217f380:
.space 0x4
.global data_ov61_0217f384
data_ov61_0217f384:
.space 0x4
.global data_ov61_0217f388
data_ov61_0217f388:
.space 0x4
.global data_ov61_0217f38c
data_ov61_0217f38c:
.space 0x4
.global data_ov61_0217f390
data_ov61_0217f390:
.space 0x4
.global data_ov61_0217f394
data_ov61_0217f394:
.space 0x4
.global data_ov61_0217f398
data_ov61_0217f398:
.space 0x4
.global data_ov61_0217f39c
data_ov61_0217f39c:
.space 0x4
.global data_ov61_0217f3a0
data_ov61_0217f3a0:
.space 0x4
.global data_ov61_0217f3a4
data_ov61_0217f3a4:
.space 0x4
.global data_ov61_0217f3a8
data_ov61_0217f3a8:
.space 0x4
.global data_ov61_0217f3ac
data_ov61_0217f3ac:
.space 0x4
.global data_ov61_0217f3b0
data_ov61_0217f3b0:
.space 0x4
.global data_ov61_0217f3b4
data_ov61_0217f3b4:
.space 0x4
.global data_ov61_0217f3b8
data_ov61_0217f3b8:
.space 0x4
.global data_ov61_0217f3bc
data_ov61_0217f3bc:
.space 0x4
.global data_ov61_0217f3c0
data_ov61_0217f3c0:
.space 0x4
.global data_ov61_0217f3c4
data_ov61_0217f3c4:
.space 0x4
.global data_ov61_0217f3c8
data_ov61_0217f3c8:
.space 0x4
.global data_ov61_0217f3cc
data_ov61_0217f3cc:
.space 0x4
.global data_ov61_0217f3d0
data_ov61_0217f3d0:
.space 0x4
.global data_ov61_0217f3d4
data_ov61_0217f3d4:
.space 0x4
.global data_ov61_0217f3d8
data_ov61_0217f3d8:
.space 0x4
.global data_ov61_0217f3dc
data_ov61_0217f3dc:
.space 0x4
.global data_ov61_0217f3e0
data_ov61_0217f3e0:
.space 0x4
.global data_ov61_0217f3e4
data_ov61_0217f3e4:
.space 0x4
.global data_ov61_0217f3e8
data_ov61_0217f3e8:
.space 0x4
.global data_ov61_0217f3ec
data_ov61_0217f3ec:
.space 0x4
.global data_ov61_0217f3f0
data_ov61_0217f3f0:
.space 0x4
.global data_ov61_0217f3f4
data_ov61_0217f3f4:
.space 0x4
.global data_ov61_0217f3f8
data_ov61_0217f3f8:
.space 0x4
.global data_ov61_0217f3fc
data_ov61_0217f3fc:
.space 0x4
.global data_ov61_0217f400
data_ov61_0217f400:
.space 0x4
.global data_ov61_0217f404
data_ov61_0217f404:
.space 0x4
.global data_ov61_0217f408
data_ov61_0217f408:
.space 0x4
.global data_ov61_0217f40c
data_ov61_0217f40c:
.space 0x4
.global data_ov61_0217f410
data_ov61_0217f410:
.space 0x4
.global data_ov61_0217f414
data_ov61_0217f414:
.space 0x1
.global data_ov61_0217f415
data_ov61_0217f415:
.space 0x1
.global data_ov61_0217f416
data_ov61_0217f416:
.space 0x2
.global data_ov61_0217f418
data_ov61_0217f418:
.space 0x2
.global data_ov61_0217f41a
data_ov61_0217f41a:
.space 0x2
.global data_ov61_0217f41c
data_ov61_0217f41c:
.space 0x4
.global data_ov61_0217f420
data_ov61_0217f420:
.space 0x4
.global data_ov61_0217f424
data_ov61_0217f424:
.space 0x4
.global data_ov61_0217f428
data_ov61_0217f428:
.space 0x4
.global data_ov61_0217f42c
data_ov61_0217f42c:
.space 0x4
.global data_ov61_0217f430
data_ov61_0217f430:
.space 0x4
.global data_ov61_0217f434
data_ov61_0217f434:
.space 0x4
.global data_ov61_0217f438
data_ov61_0217f438:
.space 0x4
.global data_ov61_0217f43c
data_ov61_0217f43c:
.space 0x4
.global data_ov61_0217f440
data_ov61_0217f440:
.space 0x4
.global data_ov61_0217f444
data_ov61_0217f444:
.space 0x4
.global data_ov61_0217f448
data_ov61_0217f448:
.space 0x4
.global data_ov61_0217f44c
data_ov61_0217f44c:
.space 0x4
.global data_ov61_0217f450
data_ov61_0217f450:
.space 0x4
.global data_ov61_0217f454
data_ov61_0217f454:
.space 0x4
.global data_ov61_0217f458
data_ov61_0217f458:
.space 0x4
.global data_ov61_0217f45c
data_ov61_0217f45c:
.space 0x4
.global data_ov61_0217f460
data_ov61_0217f460:
.space 0x4
.global data_ov61_0217f464
data_ov61_0217f464:
.space 0x4
.global data_ov61_0217f468
data_ov61_0217f468:
.space 0x4
.global data_ov61_0217f46c
data_ov61_0217f46c:
.space 0x4
.global data_ov61_0217f470
data_ov61_0217f470:
.space 0x4
.global data_ov61_0217f474
data_ov61_0217f474:
.space 0x4
.global data_ov61_0217f478
data_ov61_0217f478:
.space 0x4
.global data_ov61_0217f47c
data_ov61_0217f47c:
.space 0x4
.global data_ov61_0217f480
data_ov61_0217f480:
.space 0x4
.global data_ov61_0217f484
data_ov61_0217f484:
.space 0x4
.global data_ov61_0217f488
data_ov61_0217f488:
.space 0x4
.global data_ov61_0217f48c
data_ov61_0217f48c:
.space 0x4
.global data_ov61_0217f490
data_ov61_0217f490:
.space 0x4
.global data_ov61_0217f494
data_ov61_0217f494:
.space 0x2
.global data_ov61_0217f496
data_ov61_0217f496:
.space 0x2
.global data_ov61_0217f498
data_ov61_0217f498:
.space 0x2
.global data_ov61_0217f49a
data_ov61_0217f49a:
.space 0x2
.global data_ov61_0217f49c
data_ov61_0217f49c:
.space 0x2
.global data_ov61_0217f49e
data_ov61_0217f49e:
.space 0x2
.global data_ov61_0217f4a0
data_ov61_0217f4a0:
.space 0x2
.global data_ov61_0217f4a2
data_ov61_0217f4a2:
.space 0x2
.global data_ov61_0217f4a4
data_ov61_0217f4a4:
.space 0x2
.global data_ov61_0217f4a6
data_ov61_0217f4a6:
.space 0x2
.global data_ov61_0217f4a8
data_ov61_0217f4a8:
.space 0x2
.global data_ov61_0217f4aa
data_ov61_0217f4aa:
.space 0x2
.global data_ov61_0217f4ac
data_ov61_0217f4ac:
.space 0x2
.global data_ov61_0217f4ae
data_ov61_0217f4ae:
.space 0x2
.global data_ov61_0217f4b0
data_ov61_0217f4b0:
.space 0x2
.global data_ov61_0217f4b2
data_ov61_0217f4b2:
.space 0x2
.global data_ov61_0217f4b4
data_ov61_0217f4b4:
.space 0x2
.global data_ov61_0217f4b6
data_ov61_0217f4b6:
.space 0x2
.global data_ov61_0217f4b8
data_ov61_0217f4b8:
.space 0x2
.global data_ov61_0217f4ba
data_ov61_0217f4ba:
.space 0x2
.global data_ov61_0217f4bc
data_ov61_0217f4bc:
.space 0x2
.global data_ov61_0217f4be
data_ov61_0217f4be:
.space 0x2
.global data_ov61_0217f4c0
data_ov61_0217f4c0:
.space 0x2
.global data_ov61_0217f4c2
data_ov61_0217f4c2:
.space 0x2
.global data_ov61_0217f4c4
data_ov61_0217f4c4:
.space 0x2
.global data_ov61_0217f4c6
data_ov61_0217f4c6:
.space 0x2
.global data_ov61_0217f4c8
data_ov61_0217f4c8:
.space 0x2
.global data_ov61_0217f4ca
data_ov61_0217f4ca:
.space 0x2
.global data_ov61_0217f4cc
data_ov61_0217f4cc:
.space 0x2
.global data_ov61_0217f4ce
data_ov61_0217f4ce:
.space 0x2
.global data_ov61_0217f4d0
data_ov61_0217f4d0:
.space 0x2
.global data_ov61_0217f4d2
data_ov61_0217f4d2:
.space 0x2
.global data_ov61_0217f4d4
data_ov61_0217f4d4:
.space 0x2
.global data_ov61_0217f4d6
data_ov61_0217f4d6:
.space 0x2
.global data_ov61_0217f4d8
data_ov61_0217f4d8:
.space 0x2
.global data_ov61_0217f4da
data_ov61_0217f4da:
.space 0x2
.global data_ov61_0217f4dc
data_ov61_0217f4dc:
.space 0x2
.global data_ov61_0217f4de
data_ov61_0217f4de:
.space 0x2
.global data_ov61_0217f4e0
data_ov61_0217f4e0:
.space 0x2
.global data_ov61_0217f4e2
data_ov61_0217f4e2:
.space 0x2
.global data_ov61_0217f4e4
data_ov61_0217f4e4:
.space 0x2
.global data_ov61_0217f4e6
data_ov61_0217f4e6:
.space 0x2
.global data_ov61_0217f4e8
data_ov61_0217f4e8:
.space 0x2
.global data_ov61_0217f4ea
data_ov61_0217f4ea:
.space 0x2
.global data_ov61_0217f4ec
data_ov61_0217f4ec:
.space 0x2
.global data_ov61_0217f4ee
data_ov61_0217f4ee:
.space 0x2
.global data_ov61_0217f4f0
data_ov61_0217f4f0:
.space 0x2
.global data_ov61_0217f4f2
data_ov61_0217f4f2:
.space 0x2
.global data_ov61_0217f4f4
data_ov61_0217f4f4:
.space 0x4
.global data_ov61_0217f4f8
data_ov61_0217f4f8:
.space 0x4
.global data_ov61_0217f4fc
data_ov61_0217f4fc:
.space 0x4
.global data_ov61_0217f500
data_ov61_0217f500:
.space 0x4
.global data_ov61_0217f504
data_ov61_0217f504:
.space 0x4
.global data_ov61_0217f508
data_ov61_0217f508:
.space 0x4
.global data_ov61_0217f50c
data_ov61_0217f50c:
.space 0x4
.global data_ov61_0217f510
data_ov61_0217f510:
.space 0x4
.global data_ov61_0217f514
data_ov61_0217f514:
.space 0x4
.global data_ov61_0217f518
data_ov61_0217f518:
.space 0x4
.global data_ov61_0217f51c
data_ov61_0217f51c:
.space 0x4
.global data_ov61_0217f520
data_ov61_0217f520:
.space 0x4
.global data_ov61_0217f524
data_ov61_0217f524:
.space 0x4
.global data_ov61_0217f528
data_ov61_0217f528:
.space 0x4
.global data_ov61_0217f52c
data_ov61_0217f52c:
.space 0x4
.global data_ov61_0217f530
data_ov61_0217f530:
.space 0x4
.global data_ov61_0217f534
data_ov61_0217f534:
.space 0x4
.global data_ov61_0217f538
data_ov61_0217f538:
.space 0x4
.global data_ov61_0217f53c
data_ov61_0217f53c:
.space 0x4
.global data_ov61_0217f540
data_ov61_0217f540:
.space 0x4
.global data_ov61_0217f544
data_ov61_0217f544:
.space 0x4
.global data_ov61_0217f548
data_ov61_0217f548:
.space 0x4
.global data_ov61_0217f54c
data_ov61_0217f54c:
.space 0x4
.global data_ov61_0217f550
data_ov61_0217f550:
.space 0x4
.global data_ov61_0217f554
data_ov61_0217f554:
.space 0x4
.global data_ov61_0217f558
data_ov61_0217f558:
.space 0x2
.global data_ov61_0217f55a
data_ov61_0217f55a:
.space 0x2
.global data_ov61_0217f55c
data_ov61_0217f55c:
.space 0x2
.global data_ov61_0217f55e
data_ov61_0217f55e:
.space 0x2
.global data_ov61_0217f560
data_ov61_0217f560:
.space 0x2
.global data_ov61_0217f562
data_ov61_0217f562:
.space 0x2
.global data_ov61_0217f564
data_ov61_0217f564:
.space 0x2
.global data_ov61_0217f566
data_ov61_0217f566:
.space 0x2
.global data_ov61_0217f568
data_ov61_0217f568:
.space 0x2
.global data_ov61_0217f56a
data_ov61_0217f56a:
.space 0x2
.global data_ov61_0217f56c
data_ov61_0217f56c:
.space 0x2
.global data_ov61_0217f56e
data_ov61_0217f56e:
.space 0x2
.global data_ov61_0217f570
data_ov61_0217f570:
.space 0x4
.global data_ov61_0217f574
data_ov61_0217f574:
.space 0x4
.global data_ov61_0217f578
data_ov61_0217f578:
.space 0x4
.global data_ov61_0217f57c
data_ov61_0217f57c:
.space 0x4
.global data_ov61_0217f580
data_ov61_0217f580:
.space 0x4
.global data_ov61_0217f584
data_ov61_0217f584:
.space 0x4
.global data_ov61_0217f588
data_ov61_0217f588:
.space 0x4
.global data_ov61_0217f58c
data_ov61_0217f58c:
.space 0x4
.global data_ov61_0217f590
data_ov61_0217f590:
.space 0x4
.global data_ov61_0217f594
data_ov61_0217f594:
.space 0x4
.global data_ov61_0217f598
data_ov61_0217f598:
.space 0x4
.global data_ov61_0217f59c
data_ov61_0217f59c:
.space 0x4
.global data_ov61_0217f5a0
data_ov61_0217f5a0:
.space 0x4
.global data_ov61_0217f5a4
data_ov61_0217f5a4:
.space 0x4
.global data_ov61_0217f5a8
data_ov61_0217f5a8:
.space 0x4
.global data_ov61_0217f5ac
data_ov61_0217f5ac:
.space 0x4
.global data_ov61_0217f5b0
data_ov61_0217f5b0:
.space 0x4
.global data_ov61_0217f5b4
data_ov61_0217f5b4:
.space 0x4
.global data_ov61_0217f5b8
data_ov61_0217f5b8:
.space 0x4
.global data_ov61_0217f5bc
data_ov61_0217f5bc:
.space 0x4
.global data_ov61_0217f5c0
data_ov61_0217f5c0:
.space 0x4
.global data_ov61_0217f5c4
data_ov61_0217f5c4:
.space 0x4
.global data_ov61_0217f5c8
data_ov61_0217f5c8:
.space 0x4
.global data_ov61_0217f5cc
data_ov61_0217f5cc:
.space 0x4
.global data_ov61_0217f5d0
data_ov61_0217f5d0:
.space 0x4
.global data_ov61_0217f5d4
data_ov61_0217f5d4:
.space 0x4
.global data_ov61_0217f5d8
data_ov61_0217f5d8:
.space 0x4
.global data_ov61_0217f5dc
data_ov61_0217f5dc:
.space 0x4
.global data_ov61_0217f5e0
data_ov61_0217f5e0:
.space 0x4
.global data_ov61_0217f5e4
data_ov61_0217f5e4:
.space 0x4
.global data_ov61_0217f5e8
data_ov61_0217f5e8:
.space 0x4
.global data_ov61_0217f5ec
data_ov61_0217f5ec:
.space 0x4
.global data_ov61_0217f5f0
data_ov61_0217f5f0:
.space 0x4
.global data_ov61_0217f5f4
data_ov61_0217f5f4:
.space 0x4
.global data_ov61_0217f5f8
data_ov61_0217f5f8:
.space 0x4
.global data_ov61_0217f5fc
data_ov61_0217f5fc:
.space 0x4
.global data_ov61_0217f600
data_ov61_0217f600:
.space 0x4
.global data_ov61_0217f604
data_ov61_0217f604:
.space 0x4
.global data_ov61_0217f608
data_ov61_0217f608:
.space 0x4
.global data_ov61_0217f60c
data_ov61_0217f60c:
.space 0x4
.global data_ov61_0217f610
data_ov61_0217f610:
.space 0x4
.global data_ov61_0217f614
data_ov61_0217f614:
.space 0x4
.global data_ov61_0217f618
data_ov61_0217f618:
.space 0x4
.global data_ov61_0217f61c
data_ov61_0217f61c:
.space 0x4
.global data_ov61_0217f620
data_ov61_0217f620:
.space 0x4
.global data_ov61_0217f624
data_ov61_0217f624:
.space 0x4
.global data_ov61_0217f628
data_ov61_0217f628:
.space 0x4
.global data_ov61_0217f62c
data_ov61_0217f62c:
.space 0x4
.global data_ov61_0217f630
data_ov61_0217f630:
.space 0x4
.global data_ov61_0217f634
data_ov61_0217f634:
.space 0x4
.global data_ov61_0217f638
data_ov61_0217f638:
.space 0x4
.global data_ov61_0217f63c
data_ov61_0217f63c:
.space 0x4
.global data_ov61_0217f640
data_ov61_0217f640:
.space 0x4
.global data_ov61_0217f644
data_ov61_0217f644:
.space 0x4
.global data_ov61_0217f648
data_ov61_0217f648:
.space 0x4
.global data_ov61_0217f64c
data_ov61_0217f64c:
.space 0x4
.global data_ov61_0217f650
data_ov61_0217f650:
.space 0x4
.global data_ov61_0217f654
data_ov61_0217f654:
.space 0x4
.global data_ov61_0217f658
data_ov61_0217f658:
.space 0x4
.global data_ov61_0217f65c
data_ov61_0217f65c:
.space 0x4
.global data_ov61_0217f660
data_ov61_0217f660:
.space 0x4
.global data_ov61_0217f664
data_ov61_0217f664:
.space 0x4
.global data_ov61_0217f668
data_ov61_0217f668:
.space 0x4
.global data_ov61_0217f66c
data_ov61_0217f66c:
.space 0x4
.global data_ov61_0217f670
data_ov61_0217f670:
.space 0x4
.global data_ov61_0217f674
data_ov61_0217f674:
.space 0x4
.global data_ov61_0217f678
data_ov61_0217f678:
.space 0x4
.global data_ov61_0217f67c
data_ov61_0217f67c:
.space 0x4
.global data_ov61_0217f680
data_ov61_0217f680:
.space 0x4
.global data_ov61_0217f684
data_ov61_0217f684:
.space 0x4
.global data_ov61_0217f688
data_ov61_0217f688:
.space 0x4
.global data_ov61_0217f68c
data_ov61_0217f68c:
.space 0x4
.global data_ov61_0217f690
data_ov61_0217f690:
.space 0x4
.global data_ov61_0217f694
data_ov61_0217f694:
.space 0x4
.global data_ov61_0217f698
data_ov61_0217f698:
.space 0x4
.global data_ov61_0217f69c
data_ov61_0217f69c:
.space 0x4
.global data_ov61_0217f6a0
data_ov61_0217f6a0:
.space 0x4
.global data_ov61_0217f6a4
data_ov61_0217f6a4:
.space 0x4
.global data_ov61_0217f6a8
data_ov61_0217f6a8:
.space 0x4
.global data_ov61_0217f6ac
data_ov61_0217f6ac:
.space 0x4
.global data_ov61_0217f6b0
data_ov61_0217f6b0:
.space 0x4
.global data_ov61_0217f6b4
data_ov61_0217f6b4:
.space 0x4
.global data_ov61_0217f6b8
data_ov61_0217f6b8:
.space 0x4
.global data_ov61_0217f6bc
data_ov61_0217f6bc:
.space 0x4
.global data_ov61_0217f6c0
data_ov61_0217f6c0:
.space 0x4
.global data_ov61_0217f6c4
data_ov61_0217f6c4:
.space 0x4
.global data_ov61_0217f6c8
data_ov61_0217f6c8:
.space 0x4
.global data_ov61_0217f6cc
data_ov61_0217f6cc:
.space 0x4
.global data_ov61_0217f6d0
data_ov61_0217f6d0:
.space 0x4
.global data_ov61_0217f6d4
data_ov61_0217f6d4:
.space 0x4
.global data_ov61_0217f6d8
data_ov61_0217f6d8:
.space 0x4
.global data_ov61_0217f6dc
data_ov61_0217f6dc:
.space 0x4
.global data_ov61_0217f6e0
data_ov61_0217f6e0:
.space 0x4
.global data_ov61_0217f6e4
data_ov61_0217f6e4:
.space 0x4
.global data_ov61_0217f6e8
data_ov61_0217f6e8:
.space 0x4
.global data_ov61_0217f6ec
data_ov61_0217f6ec:
.space 0x4
.global data_ov61_0217f6f0
data_ov61_0217f6f0:
.space 0x4
.global data_ov61_0217f6f4
data_ov61_0217f6f4:
.space 0x4
.global data_ov61_0217f6f8
data_ov61_0217f6f8:
.space 0x4
.global data_ov61_0217f6fc
data_ov61_0217f6fc:
.space 0x4
.global data_ov61_0217f700
data_ov61_0217f700:
.space 0x4
.global data_ov61_0217f704
data_ov61_0217f704:
.space 0x4
.global data_ov61_0217f708
data_ov61_0217f708:
.space 0x4
.global data_ov61_0217f70c
data_ov61_0217f70c:
.space 0x4
.global data_ov61_0217f710
data_ov61_0217f710:
.space 0x4
.global data_ov61_0217f714
data_ov61_0217f714:
.space 0x4
.global data_ov61_0217f718
data_ov61_0217f718:
.space 0x4
.global data_ov61_0217f71c
data_ov61_0217f71c:
.space 0x4
.global data_ov61_0217f720
data_ov61_0217f720:
.space 0x4
.global data_ov61_0217f724
data_ov61_0217f724:
.space 0x4
.global data_ov61_0217f728
data_ov61_0217f728:
.space 0x4
.global data_ov61_0217f72c
data_ov61_0217f72c:
.space 0x4
.global data_ov61_0217f730
data_ov61_0217f730:
.space 0x4
.global data_ov61_0217f734
data_ov61_0217f734:
.space 0x4
.global data_ov61_0217f738
data_ov61_0217f738:
.space 0x4
.global data_ov61_0217f73c
data_ov61_0217f73c:
.space 0x4
.global data_ov61_0217f740
data_ov61_0217f740:
.space 0x4
.global data_ov61_0217f744
data_ov61_0217f744:
.space 0x4
.global data_ov61_0217f748
data_ov61_0217f748:
.space 0x4
.global data_ov61_0217f74c
data_ov61_0217f74c:
.space 0x4
.global data_ov61_0217f750
data_ov61_0217f750:
.space 0x4
.global data_ov61_0217f754
data_ov61_0217f754:
.space 0x4
.global data_ov61_0217f758
data_ov61_0217f758:
.space 0x4
.global data_ov61_0217f75c
data_ov61_0217f75c:
.space 0x4
.global data_ov61_0217f760
data_ov61_0217f760:
.space 0x4
.global data_ov61_0217f764
data_ov61_0217f764:
.space 0x4
.global data_ov61_0217f768
data_ov61_0217f768:
.space 0x4
.global data_ov61_0217f76c
data_ov61_0217f76c:
.space 0x4
.global data_ov61_0217f770
data_ov61_0217f770:
.space 0x4
.global data_ov61_0217f774
data_ov61_0217f774:
.space 0x4
.global data_ov61_0217f778
data_ov61_0217f778:
.space 0x4
.global data_ov61_0217f77c
data_ov61_0217f77c:
.space 0x4
.global data_ov61_0217f780
data_ov61_0217f780:
.space 0x4
.global data_ov61_0217f784
data_ov61_0217f784:
.space 0x4
.global data_ov61_0217f788
data_ov61_0217f788:
.space 0x4
.global data_ov61_0217f78c
data_ov61_0217f78c:
.space 0x4
.global data_ov61_0217f790
data_ov61_0217f790:
.space 0x4
.global data_ov61_0217f794
data_ov61_0217f794:
.space 0x4
.global data_ov61_0217f798
data_ov61_0217f798:
.space 0x4
.global data_ov61_0217f79c
data_ov61_0217f79c:
.space 0x4
.global data_ov61_0217f7a0
data_ov61_0217f7a0:
.space 0x4
.global data_ov61_0217f7a4
data_ov61_0217f7a4:
.space 0x4
.global data_ov61_0217f7a8
data_ov61_0217f7a8:
.space 0x4
.global data_ov61_0217f7ac
data_ov61_0217f7ac:
.space 0x4
.global data_ov61_0217f7b0
data_ov61_0217f7b0:
.space 0x4
.global data_ov61_0217f7b4
data_ov61_0217f7b4:
.space 0x4
.global data_ov61_0217f7b8
data_ov61_0217f7b8:
.space 0x4
.global data_ov61_0217f7bc
data_ov61_0217f7bc:
.space 0x4
.global data_ov61_0217f7c0
data_ov61_0217f7c0:
.space 0x4
.global data_ov61_0217f7c4
data_ov61_0217f7c4:
.space 0x4
.global data_ov61_0217f7c8
data_ov61_0217f7c8:
.space 0x4
.global data_ov61_0217f7cc
data_ov61_0217f7cc:
.space 0x4
.global data_ov61_0217f7d0
data_ov61_0217f7d0:
.space 0x4
.global data_ov61_0217f7d4
data_ov61_0217f7d4:
.space 0x4
.global data_ov61_0217f7d8
data_ov61_0217f7d8:
.space 0x4
.global data_ov61_0217f7dc
data_ov61_0217f7dc:
.space 0x4
.global data_ov61_0217f7e0
data_ov61_0217f7e0:
.space 0x4
.global data_ov61_0217f7e4
data_ov61_0217f7e4:
.space 0x4
.global data_ov61_0217f7e8
data_ov61_0217f7e8:
.space 0x4
.global data_ov61_0217f7ec
data_ov61_0217f7ec:
.space 0x4
.global data_ov61_0217f7f0
data_ov61_0217f7f0:
.space 0x4
.global data_ov61_0217f7f4
data_ov61_0217f7f4:
.space 0x4
.global data_ov61_0217f7f8
data_ov61_0217f7f8:
.space 0x4
.global data_ov61_0217f7fc
data_ov61_0217f7fc:
.space 0x4
.global data_ov61_0217f800
data_ov61_0217f800:
.space 0x4
.global data_ov61_0217f804
data_ov61_0217f804:
.space 0x4
.global data_ov61_0217f808
data_ov61_0217f808:
.space 0x4
.global data_ov61_0217f80c
data_ov61_0217f80c:
.space 0x4
.global data_ov61_0217f810
data_ov61_0217f810:
.space 0x4
.global data_ov61_0217f814
data_ov61_0217f814:
.space 0x4
.global data_ov61_0217f818
data_ov61_0217f818:
.space 0x4
.global data_ov61_0217f81c
data_ov61_0217f81c:
.space 0x4
.global data_ov61_0217f820
data_ov61_0217f820:
.space 0x4
.global data_ov61_0217f824
data_ov61_0217f824:
.space 0x4
.global data_ov61_0217f828
data_ov61_0217f828:
.space 0x4
.global data_ov61_0217f82c
data_ov61_0217f82c:
.space 0x4
.global data_ov61_0217f830
data_ov61_0217f830:
.space 0x4
.global data_ov61_0217f834
data_ov61_0217f834:
.space 0x4
.global data_ov61_0217f838
data_ov61_0217f838:
.space 0x4
.global data_ov61_0217f83c
data_ov61_0217f83c:
.space 0x4
.global data_ov61_0217f840
data_ov61_0217f840:
.space 0x4
.global data_ov61_0217f844
data_ov61_0217f844:
.space 0x4
.global data_ov61_0217f848
data_ov61_0217f848:
.space 0x4
.global data_ov61_0217f84c
data_ov61_0217f84c:
.space 0x4
.global data_ov61_0217f850
data_ov61_0217f850:
.space 0x4
.global data_ov61_0217f854
data_ov61_0217f854:
.space 0x4
.global data_ov61_0217f858
data_ov61_0217f858:
.space 0x4
.global data_ov61_0217f85c
data_ov61_0217f85c:
.space 0x4
.global data_ov61_0217f860
data_ov61_0217f860:
.space 0x4
.global data_ov61_0217f864
data_ov61_0217f864:
.space 0x4
.global data_ov61_0217f868
data_ov61_0217f868:
.space 0x4
.global data_ov61_0217f86c
data_ov61_0217f86c:
.space 0x4
.global data_ov61_0217f870
data_ov61_0217f870:
.space 0x4
.global data_ov61_0217f874
data_ov61_0217f874:
.space 0x4
.global data_ov61_0217f878
data_ov61_0217f878:
.space 0x4
.global data_ov61_0217f87c
data_ov61_0217f87c:
.space 0x4
.global data_ov61_0217f880
data_ov61_0217f880:
.space 0x4
.global data_ov61_0217f884
data_ov61_0217f884:
.space 0x4
.global data_ov61_0217f888
data_ov61_0217f888:
.space 0x4
.global data_ov61_0217f88c
data_ov61_0217f88c:
.space 0x4
.global data_ov61_0217f890
data_ov61_0217f890:
.space 0x4
.global data_ov61_0217f894
data_ov61_0217f894:
.space 0x4
.global data_ov61_0217f898
data_ov61_0217f898:
.space 0x4
.global data_ov61_0217f89c
data_ov61_0217f89c:
.space 0x4
.global data_ov61_0217f8a0
data_ov61_0217f8a0:
.space 0x4
.global data_ov61_0217f8a4
data_ov61_0217f8a4:
.space 0x4
.global data_ov61_0217f8a8
data_ov61_0217f8a8:
.space 0x4
.global data_ov61_0217f8ac
data_ov61_0217f8ac:
.space 0x4
.global data_ov61_0217f8b0
data_ov61_0217f8b0:
.space 0x4
.global data_ov61_0217f8b4
data_ov61_0217f8b4:
.space 0x4
.global data_ov61_0217f8b8
data_ov61_0217f8b8:
.space 0x4
.global data_ov61_0217f8bc
data_ov61_0217f8bc:
.space 0x4
.global data_ov61_0217f8c0
data_ov61_0217f8c0:
.space 0x4
.global data_ov61_0217f8c4
data_ov61_0217f8c4:
.space 0x4
.global data_ov61_0217f8c8
data_ov61_0217f8c8:
.space 0x4
.global data_ov61_0217f8cc
data_ov61_0217f8cc:
.space 0x4
.global data_ov61_0217f8d0
data_ov61_0217f8d0:
.space 0x4
.global data_ov61_0217f8d4
data_ov61_0217f8d4:
.space 0x4
.global data_ov61_0217f8d8
data_ov61_0217f8d8:
.space 0x4
.global data_ov61_0217f8dc
data_ov61_0217f8dc:
.space 0x4
.global data_ov61_0217f8e0
data_ov61_0217f8e0:
.space 0x4
.global data_ov61_0217f8e4
data_ov61_0217f8e4:
.space 0x4
.global data_ov61_0217f8e8
data_ov61_0217f8e8:
.space 0x4
.global data_ov61_0217f8ec
data_ov61_0217f8ec:
.space 0x4
.global data_ov61_0217f8f0
data_ov61_0217f8f0:
.space 0x4
.global data_ov61_0217f8f4
data_ov61_0217f8f4:
.space 0x4
.global data_ov61_0217f8f8
data_ov61_0217f8f8:
.space 0x4
.global data_ov61_0217f8fc
data_ov61_0217f8fc:
.space 0x2
.global data_ov61_0217f8fe
data_ov61_0217f8fe:
.space 0x2
.global data_ov61_0217f900
data_ov61_0217f900:
.space 0x2
.global data_ov61_0217f902
data_ov61_0217f902:
.space 0x2
.global data_ov61_0217f904
data_ov61_0217f904:
.space 0x2
.global data_ov61_0217f906
data_ov61_0217f906:
.space 0x2
.global data_ov61_0217f908
data_ov61_0217f908:
.space 0x2
.global data_ov61_0217f90a
data_ov61_0217f90a:
.space 0x2
.global data_ov61_0217f90c
data_ov61_0217f90c:
.space 0x2
.global data_ov61_0217f90e
data_ov61_0217f90e:
.space 0x2
.global data_ov61_0217f910
data_ov61_0217f910:
.space 0x2
.global data_ov61_0217f912
data_ov61_0217f912:
.space 0x2
.global data_ov61_0217f914
data_ov61_0217f914:
.space 0x2
.global data_ov61_0217f916
data_ov61_0217f916:
.space 0x2
.global data_ov61_0217f918
data_ov61_0217f918:
.space 0x2
.global data_ov61_0217f91a
data_ov61_0217f91a:
.space 0x2
.global data_ov61_0217f91c
data_ov61_0217f91c:
.space 0x2
.global data_ov61_0217f91e
data_ov61_0217f91e:
.space 0x2
.global data_ov61_0217f920
data_ov61_0217f920:
.space 0x2
.global data_ov61_0217f922
data_ov61_0217f922:
.space 0x2
.global data_ov61_0217f924
data_ov61_0217f924:
.space 0x2
.global data_ov61_0217f926
data_ov61_0217f926:
.space 0x2
.global data_ov61_0217f928
data_ov61_0217f928:
.space 0x2
.global data_ov61_0217f92a
data_ov61_0217f92a:
.space 0x2
.global data_ov61_0217f92c
data_ov61_0217f92c:
.space 0x2
.global data_ov61_0217f92e
data_ov61_0217f92e:
.space 0x2
.global data_ov61_0217f930
data_ov61_0217f930:
.space 0x2
.global data_ov61_0217f932
data_ov61_0217f932:
.space 0x2
.global data_ov61_0217f934
data_ov61_0217f934:
.space 0x2
.global data_ov61_0217f936
data_ov61_0217f936:
.space 0x2
.global data_ov61_0217f938
data_ov61_0217f938:
.space 0x2
.global data_ov61_0217f93a
data_ov61_0217f93a:
.space 0x2
.global data_ov61_0217f93c
data_ov61_0217f93c:
.space 0x2
.global data_ov61_0217f93e
data_ov61_0217f93e:
.space 0x2
.global data_ov61_0217f940
data_ov61_0217f940:
.space 0x2
.global data_ov61_0217f942
data_ov61_0217f942:
.space 0x2
.global data_ov61_0217f944
data_ov61_0217f944:
.space 0x2
.global data_ov61_0217f946
data_ov61_0217f946:
.space 0x2
.global data_ov61_0217f948
data_ov61_0217f948:
.space 0x2
.global data_ov61_0217f94a
data_ov61_0217f94a:
.space 0x2
.global data_ov61_0217f94c
data_ov61_0217f94c:
.space 0x2
.global data_ov61_0217f94e
data_ov61_0217f94e:
.space 0x2
.global data_ov61_0217f950
data_ov61_0217f950:
.space 0x2
.global data_ov61_0217f952
data_ov61_0217f952:
.space 0x2
.global data_ov61_0217f954
data_ov61_0217f954:
.space 0x2
.global data_ov61_0217f956
data_ov61_0217f956:
.space 0x2
.global data_ov61_0217f958
data_ov61_0217f958:
.space 0x2
.global data_ov61_0217f95a
data_ov61_0217f95a:
.space 0x2
.global data_ov61_0217f95c
data_ov61_0217f95c:
.space 0x2
.global data_ov61_0217f95e
data_ov61_0217f95e:
.space 0x2
.global data_ov61_0217f960
data_ov61_0217f960:
.space 0x2
.global data_ov61_0217f962
data_ov61_0217f962:
.space 0x2
.global data_ov61_0217f964
data_ov61_0217f964:
.space 0x2
.global data_ov61_0217f966
data_ov61_0217f966:
.space 0x2
.global data_ov61_0217f968
data_ov61_0217f968:
.space 0x2
.global data_ov61_0217f96a
data_ov61_0217f96a:
.space 0x2
.global data_ov61_0217f96c
data_ov61_0217f96c:
.space 0x2
.global data_ov61_0217f96e
data_ov61_0217f96e:
.space 0x2
.global data_ov61_0217f970
data_ov61_0217f970:
.space 0x2
.global data_ov61_0217f972
data_ov61_0217f972:
.space 0x2
.global data_ov61_0217f974
data_ov61_0217f974:
.space 0x2
.global data_ov61_0217f976
data_ov61_0217f976:
.space 0x2
.global data_ov61_0217f978
data_ov61_0217f978:
.space 0x2
.global data_ov61_0217f97a
data_ov61_0217f97a:
.space 0x2
.global data_ov61_0217f97c
data_ov61_0217f97c:
.space 0x2
.global data_ov61_0217f97e
data_ov61_0217f97e:
.space 0x2
.global data_ov61_0217f980
data_ov61_0217f980:
.space 0x2
.global data_ov61_0217f982
data_ov61_0217f982:
.space 0x2
.global data_ov61_0217f984
data_ov61_0217f984:
.space 0x2
.global data_ov61_0217f986
data_ov61_0217f986:
.space 0x2
.global data_ov61_0217f988
data_ov61_0217f988:
.space 0x2
.global data_ov61_0217f98a
data_ov61_0217f98a:
.space 0x2
.global data_ov61_0217f98c
data_ov61_0217f98c:
.space 0x2
.global data_ov61_0217f98e
data_ov61_0217f98e:
.space 0x2
.global data_ov61_0217f990
data_ov61_0217f990:
.space 0x2
.global data_ov61_0217f992
data_ov61_0217f992:
.space 0x2
.global data_ov61_0217f994
data_ov61_0217f994:
.space 0x2
.global data_ov61_0217f996
data_ov61_0217f996:
.space 0x2
.global data_ov61_0217f998
data_ov61_0217f998:
.space 0x2
.global data_ov61_0217f99a
data_ov61_0217f99a:
.space 0x2
.global data_ov61_0217f99c
data_ov61_0217f99c:
.space 0x2
.global data_ov61_0217f99e
data_ov61_0217f99e:
.space 0x2
.global data_ov61_0217f9a0
data_ov61_0217f9a0:
.space 0x2
.global data_ov61_0217f9a2
data_ov61_0217f9a2:
.space 0x2
.global data_ov61_0217f9a4
data_ov61_0217f9a4:
.space 0x2
.global data_ov61_0217f9a6
data_ov61_0217f9a6:
.space 0x2
.global data_ov61_0217f9a8
data_ov61_0217f9a8:
.space 0x2
.global data_ov61_0217f9aa
data_ov61_0217f9aa:
.space 0x2
.global data_ov61_0217f9ac
data_ov61_0217f9ac:
.space 0x2
.global data_ov61_0217f9ae
data_ov61_0217f9ae:
.space 0x2
.global data_ov61_0217f9b0
data_ov61_0217f9b0:
.space 0x2
.global data_ov61_0217f9b2
data_ov61_0217f9b2:
.space 0x2
.global data_ov61_0217f9b4
data_ov61_0217f9b4:
.space 0x2
.global data_ov61_0217f9b6
data_ov61_0217f9b6:
.space 0x2
.global data_ov61_0217f9b8
data_ov61_0217f9b8:
.space 0x2
.global data_ov61_0217f9ba
data_ov61_0217f9ba:
.space 0x2
.global data_ov61_0217f9bc
data_ov61_0217f9bc:
.space 0x2
.global data_ov61_0217f9be
data_ov61_0217f9be:
.space 0x2
.global data_ov61_0217f9c0
data_ov61_0217f9c0:
.space 0x2
.global data_ov61_0217f9c2
data_ov61_0217f9c2:
.space 0x2
.global data_ov61_0217f9c4
data_ov61_0217f9c4:
.space 0x2
.global data_ov61_0217f9c6
data_ov61_0217f9c6:
.space 0x2
.global data_ov61_0217f9c8
data_ov61_0217f9c8:
.space 0x2
.global data_ov61_0217f9ca
data_ov61_0217f9ca:
.space 0x2
.global data_ov61_0217f9cc
data_ov61_0217f9cc:
.space 0x2
.global data_ov61_0217f9ce
data_ov61_0217f9ce:
.space 0x2
.global data_ov61_0217f9d0
data_ov61_0217f9d0:
.space 0x2
.global data_ov61_0217f9d2
data_ov61_0217f9d2:
.space 0x2
.global data_ov61_0217f9d4
data_ov61_0217f9d4:
.space 0x2
.global data_ov61_0217f9d6
data_ov61_0217f9d6:
.space 0x2
.global data_ov61_0217f9d8
data_ov61_0217f9d8:
.space 0x2
.global data_ov61_0217f9da
data_ov61_0217f9da:
.space 0x2
.global data_ov61_0217f9dc
data_ov61_0217f9dc:
.space 0x2
.global data_ov61_0217f9de
data_ov61_0217f9de:
.space 0x2
.global data_ov61_0217f9e0
data_ov61_0217f9e0:
.space 0x2
.global data_ov61_0217f9e2
data_ov61_0217f9e2:
.space 0x2
.global data_ov61_0217f9e4
data_ov61_0217f9e4:
.space 0x2
.global data_ov61_0217f9e6
data_ov61_0217f9e6:
.space 0x2
.global data_ov61_0217f9e8
data_ov61_0217f9e8:
.space 0x2
.global data_ov61_0217f9ea
data_ov61_0217f9ea:
.space 0x2
.global data_ov61_0217f9ec
data_ov61_0217f9ec:
.space 0x2
.global data_ov61_0217f9ee
data_ov61_0217f9ee:
.space 0x2
.global data_ov61_0217f9f0
data_ov61_0217f9f0:
.space 0x2
.global data_ov61_0217f9f2
data_ov61_0217f9f2:
.space 0x2
.global data_ov61_0217f9f4
data_ov61_0217f9f4:
.space 0x2
.global data_ov61_0217f9f6
data_ov61_0217f9f6:
.space 0x2
.global data_ov61_0217f9f8
data_ov61_0217f9f8:
.space 0x2
.global data_ov61_0217f9fa
data_ov61_0217f9fa:
.space 0x2
.global data_ov61_0217f9fc
data_ov61_0217f9fc:
.space 0x2
.global data_ov61_0217f9fe
data_ov61_0217f9fe:
.space 0x2
.global data_ov61_0217fa00
data_ov61_0217fa00:
.space 0x2
.global data_ov61_0217fa02
data_ov61_0217fa02:
.space 0x2
.global data_ov61_0217fa04
data_ov61_0217fa04:
.space 0x2
.global data_ov61_0217fa06
data_ov61_0217fa06:
.space 0x2
.global data_ov61_0217fa08
data_ov61_0217fa08:
.space 0x2
.global data_ov61_0217fa0a
data_ov61_0217fa0a:
.space 0x2
.global data_ov61_0217fa0c
data_ov61_0217fa0c:
.space 0x2
.global data_ov61_0217fa0e
data_ov61_0217fa0e:
.space 0x2
.global data_ov61_0217fa10
data_ov61_0217fa10:
.space 0x2
.global data_ov61_0217fa12
data_ov61_0217fa12:
.space 0x2
.global data_ov61_0217fa14
data_ov61_0217fa14:
.space 0x2
.global data_ov61_0217fa16
data_ov61_0217fa16:
.space 0x2
.global data_ov61_0217fa18
data_ov61_0217fa18:
.space 0x2
.global data_ov61_0217fa1a
data_ov61_0217fa1a:
.space 0x2
.global data_ov61_0217fa1c
data_ov61_0217fa1c:
.space 0x2
.global data_ov61_0217fa1e
data_ov61_0217fa1e:
.space 0x2
.global data_ov61_0217fa20
data_ov61_0217fa20:
.space 0x2
.global data_ov61_0217fa22
data_ov61_0217fa22:
.space 0x2
.global data_ov61_0217fa24
data_ov61_0217fa24:
.space 0x2
.global data_ov61_0217fa26
data_ov61_0217fa26:
.space 0x2
.global data_ov61_0217fa28
data_ov61_0217fa28:
.space 0x2
.global data_ov61_0217fa2a
data_ov61_0217fa2a:
.space 0x2
.global data_ov61_0217fa2c
data_ov61_0217fa2c:
.space 0x2
.global data_ov61_0217fa2e
data_ov61_0217fa2e:
.space 0x2
.global data_ov61_0217fa30
data_ov61_0217fa30:
.space 0x2
.global data_ov61_0217fa32
data_ov61_0217fa32:
.space 0x2
.global data_ov61_0217fa34
data_ov61_0217fa34:
.space 0x2
.global data_ov61_0217fa36
data_ov61_0217fa36:
.space 0x2
.global data_ov61_0217fa38
data_ov61_0217fa38:
.space 0x2
.global data_ov61_0217fa3a
data_ov61_0217fa3a:
.space 0x2
.global data_ov61_0217fa3c
data_ov61_0217fa3c:
.space 0x2
.global data_ov61_0217fa3e
data_ov61_0217fa3e:
.space 0x2
.global data_ov61_0217fa40
data_ov61_0217fa40:
.space 0x2
.global data_ov61_0217fa42
data_ov61_0217fa42:
.space 0x2
.global data_ov61_0217fa44
data_ov61_0217fa44:
.space 0x2
.global data_ov61_0217fa46
data_ov61_0217fa46:
.space 0x2
.global data_ov61_0217fa48
data_ov61_0217fa48:
.space 0x2
.global data_ov61_0217fa4a
data_ov61_0217fa4a:
.space 0x2
.global data_ov61_0217fa4c
data_ov61_0217fa4c:
.space 0x2
.global data_ov61_0217fa4e
data_ov61_0217fa4e:
.space 0x2
.global data_ov61_0217fa50
data_ov61_0217fa50:
.space 0x2
.global data_ov61_0217fa52
data_ov61_0217fa52:
.space 0x2
.global data_ov61_0217fa54
data_ov61_0217fa54:
.space 0x2
.global data_ov61_0217fa56
data_ov61_0217fa56:
.space 0x2
.global data_ov61_0217fa58
data_ov61_0217fa58:
.space 0x2
.global data_ov61_0217fa5a
data_ov61_0217fa5a:
.space 0x2
.global data_ov61_0217fa5c
data_ov61_0217fa5c:
.space 0x2
.global data_ov61_0217fa5e
data_ov61_0217fa5e:
.space 0x2
.global data_ov61_0217fa60
data_ov61_0217fa60:
.space 0x2
.global data_ov61_0217fa62
data_ov61_0217fa62:
.space 0x2
.global data_ov61_0217fa64
data_ov61_0217fa64:
.space 0x2
.global data_ov61_0217fa66
data_ov61_0217fa66:
.space 0x2
.global data_ov61_0217fa68
data_ov61_0217fa68:
.space 0x2
.global data_ov61_0217fa6a
data_ov61_0217fa6a:
.space 0x2
.global data_ov61_0217fa6c
data_ov61_0217fa6c:
.space 0x2
.global data_ov61_0217fa6e
data_ov61_0217fa6e:
.space 0x2
.global data_ov61_0217fa70
data_ov61_0217fa70:
.space 0x2
.global data_ov61_0217fa72
data_ov61_0217fa72:
.space 0x2
.global data_ov61_0217fa74
data_ov61_0217fa74:
.space 0x2
.global data_ov61_0217fa76
data_ov61_0217fa76:
.space 0x2
.global data_ov61_0217fa78
data_ov61_0217fa78:
.space 0x2
.global data_ov61_0217fa7a
data_ov61_0217fa7a:
.space 0x2
.global data_ov61_0217fa7c
data_ov61_0217fa7c:
.space 0x2
.global data_ov61_0217fa7e
data_ov61_0217fa7e:
.space 0x2
.global data_ov61_0217fa80
data_ov61_0217fa80:
.space 0x2
.global data_ov61_0217fa82
data_ov61_0217fa82:
.space 0x2
.global data_ov61_0217fa84
data_ov61_0217fa84:
.space 0x2
.global data_ov61_0217fa86
data_ov61_0217fa86:
.space 0x2
.global data_ov61_0217fa88
data_ov61_0217fa88:
.space 0x2
.global data_ov61_0217fa8a
data_ov61_0217fa8a:
.space 0x2
.global data_ov61_0217fa8c
data_ov61_0217fa8c:
.space 0x2
.global data_ov61_0217fa8e
data_ov61_0217fa8e:
.space 0x2
.global data_ov61_0217fa90
data_ov61_0217fa90:
.space 0x2
.global data_ov61_0217fa92
data_ov61_0217fa92:
.space 0x2
.global data_ov61_0217fa94
data_ov61_0217fa94:
.space 0x2
.global data_ov61_0217fa96
data_ov61_0217fa96:
.space 0x2
.global data_ov61_0217fa98
data_ov61_0217fa98:
.space 0x2
.global data_ov61_0217fa9a
data_ov61_0217fa9a:
.space 0x2
.global data_ov61_0217fa9c
data_ov61_0217fa9c:
.space 0x2
.global data_ov61_0217fa9e
data_ov61_0217fa9e:
.space 0x2
.global data_ov61_0217faa0
data_ov61_0217faa0:
.space 0x2
.global data_ov61_0217faa2
data_ov61_0217faa2:
.space 0x2
.global data_ov61_0217faa4
data_ov61_0217faa4:
.space 0x2
.global data_ov61_0217faa6
data_ov61_0217faa6:
.space 0x2
.global data_ov61_0217faa8
data_ov61_0217faa8:
.space 0x2
.global data_ov61_0217faaa
data_ov61_0217faaa:
.space 0x2
.global data_ov61_0217faac
data_ov61_0217faac:
.space 0x2
.global data_ov61_0217faae
data_ov61_0217faae:
.space 0x2
.global data_ov61_0217fab0
data_ov61_0217fab0:
.space 0x2
.global data_ov61_0217fab2
data_ov61_0217fab2:
.space 0x2
.global data_ov61_0217fab4
data_ov61_0217fab4:
.space 0x2
.global data_ov61_0217fab6
data_ov61_0217fab6:
.space 0x2
.global data_ov61_0217fab8
data_ov61_0217fab8:
.space 0x2
.global data_ov61_0217faba
data_ov61_0217faba:
.space 0x2
.global data_ov61_0217fabc
data_ov61_0217fabc:
.space 0x2
.global data_ov61_0217fabe
data_ov61_0217fabe:
.space 0x2
.global data_ov61_0217fac0
data_ov61_0217fac0:
.space 0x4
.global data_ov61_0217fac4
data_ov61_0217fac4:
.space 0x4
.global data_ov61_0217fac8
data_ov61_0217fac8:
.space 0x4
.global data_ov61_0217facc
data_ov61_0217facc:
.space 0x4
.global data_ov61_0217fad0
data_ov61_0217fad0:
.space 0x4
.global data_ov61_0217fad4
data_ov61_0217fad4:
.space 0x4
.global data_ov61_0217fad8
data_ov61_0217fad8:
.space 0x4
.global data_ov61_0217fadc
data_ov61_0217fadc:
.space 0x4
.global data_ov61_0217fae0
data_ov61_0217fae0:
.space 0x4
.global data_ov61_0217fae4
data_ov61_0217fae4:
.space 0x4
.global data_ov61_0217fae8
data_ov61_0217fae8:
.space 0x4
.global data_ov61_0217faec
data_ov61_0217faec:
.space 0x4
.global data_ov61_0217faf0
data_ov61_0217faf0:
.space 0x4
.global data_ov61_0217faf4
data_ov61_0217faf4:
.space 0x4
.global data_ov61_0217faf8
data_ov61_0217faf8:
.space 0x4
.global data_ov61_0217fafc
data_ov61_0217fafc:
.space 0x4
.global data_ov61_0217fb00
data_ov61_0217fb00:
.space 0x4
.global data_ov61_0217fb04
data_ov61_0217fb04:
.space 0x4
.global data_ov61_0217fb08
data_ov61_0217fb08:
.space 0x4
.global data_ov61_0217fb0c
data_ov61_0217fb0c:
.space 0x4
.global data_ov61_0217fb10
data_ov61_0217fb10:
.space 0x4
.global data_ov61_0217fb14
data_ov61_0217fb14:
.space 0x4
.global data_ov61_0217fb18
data_ov61_0217fb18:
.space 0x4
.global data_ov61_0217fb1c
data_ov61_0217fb1c:
.space 0x4
.global data_ov61_0217fb20
data_ov61_0217fb20:
.space 0x4
.global data_ov61_0217fb24
data_ov61_0217fb24:
.space 0x4
.global data_ov61_0217fb28
data_ov61_0217fb28:
.space 0x4
.global data_ov61_0217fb2c
data_ov61_0217fb2c:
.space 0x4
.global data_ov61_0217fb30
data_ov61_0217fb30:
.space 0x4
.global data_ov61_0217fb34
data_ov61_0217fb34:
.space 0x4
.global data_ov61_0217fb38
data_ov61_0217fb38:
.space 0x4
.global data_ov61_0217fb3c
data_ov61_0217fb3c:
.space 0x4
.global data_ov61_0217fb40
data_ov61_0217fb40:
.space 0x4
.global data_ov61_0217fb44
data_ov61_0217fb44:
.space 0x4
.global data_ov61_0217fb48
data_ov61_0217fb48:
.space 0x4
.global data_ov61_0217fb4c
data_ov61_0217fb4c:
.space 0x4
.global data_ov61_0217fb50
data_ov61_0217fb50:
.space 0x4
.global data_ov61_0217fb54
data_ov61_0217fb54:
.space 0x4
.global data_ov61_0217fb58
data_ov61_0217fb58:
.space 0x4
.global data_ov61_0217fb5c
data_ov61_0217fb5c:
.space 0x4
.global data_ov61_0217fb60
data_ov61_0217fb60:
.space 0x4
.global data_ov61_0217fb64
data_ov61_0217fb64:
.space 0x4
.global data_ov61_0217fb68
data_ov61_0217fb68:
.space 0x4
.global data_ov61_0217fb6c
data_ov61_0217fb6c:
.space 0x4
.global data_ov61_0217fb70
data_ov61_0217fb70:
.space 0x4
.global data_ov61_0217fb74
data_ov61_0217fb74:
.space 0x4
.global data_ov61_0217fb78
data_ov61_0217fb78:
.space 0x4
.global data_ov61_0217fb7c
data_ov61_0217fb7c:
.space 0x4
.global data_ov61_0217fb80
data_ov61_0217fb80:
.space 0x4
.global data_ov61_0217fb84
data_ov61_0217fb84:
.space 0x4
.global data_ov61_0217fb88
data_ov61_0217fb88:
.space 0x4
.global data_ov61_0217fb8c
data_ov61_0217fb8c:
.space 0x4
.global data_ov61_0217fb90
data_ov61_0217fb90:
.space 0x4
.global data_ov61_0217fb94
data_ov61_0217fb94:
.space 0x4
.global data_ov61_0217fb98
data_ov61_0217fb98:
.space 0x4
.global data_ov61_0217fb9c
data_ov61_0217fb9c:
.space 0x4
.global data_ov61_0217fba0
data_ov61_0217fba0:
.space 0x4
.global data_ov61_0217fba4
data_ov61_0217fba4:
.space 0x4
.global data_ov61_0217fba8
data_ov61_0217fba8:
.space 0x4
.global data_ov61_0217fbac
data_ov61_0217fbac:
.space 0x4
.global data_ov61_0217fbb0
data_ov61_0217fbb0:
.space 0x4
.global data_ov61_0217fbb4
data_ov61_0217fbb4:
.space 0x4
.global data_ov61_0217fbb8
data_ov61_0217fbb8:
.space 0x4
.global data_ov61_0217fbbc
data_ov61_0217fbbc:
.space 0x4
.global data_ov61_0217fbc0
data_ov61_0217fbc0:
.space 0x4
.global data_ov61_0217fbc4
data_ov61_0217fbc4:
.space 0x4
.global data_ov61_0217fbc8
data_ov61_0217fbc8:
.space 0x4
.global data_ov61_0217fbcc
data_ov61_0217fbcc:
.space 0x4
.global data_ov61_0217fbd0
data_ov61_0217fbd0:
.space 0x4
.global data_ov61_0217fbd4
data_ov61_0217fbd4:
.space 0x4
.global data_ov61_0217fbd8
data_ov61_0217fbd8:
.space 0x4
.global data_ov61_0217fbdc
data_ov61_0217fbdc:
.space 0x4
.global data_ov61_0217fbe0
data_ov61_0217fbe0:
.space 0x4
.global data_ov61_0217fbe4
data_ov61_0217fbe4:
.space 0x4
.global data_ov61_0217fbe8
data_ov61_0217fbe8:
.space 0x4
.global data_ov61_0217fbec
data_ov61_0217fbec:
.space 0x4
.global data_ov61_0217fbf0
data_ov61_0217fbf0:
.space 0x4
.global data_ov61_0217fbf4
data_ov61_0217fbf4:
.space 0x4
.global data_ov61_0217fbf8
data_ov61_0217fbf8:
.space 0x4
.global data_ov61_0217fbfc
data_ov61_0217fbfc:
.space 0x4
.global data_ov61_0217fc00
data_ov61_0217fc00:
.space 0x4
.global data_ov61_0217fc04
data_ov61_0217fc04:
.space 0x4
.global data_ov61_0217fc08
data_ov61_0217fc08:
.space 0x4
.global data_ov61_0217fc0c
data_ov61_0217fc0c:
.space 0x4
.global data_ov61_0217fc10
data_ov61_0217fc10:
.space 0x4
.global data_ov61_0217fc14
data_ov61_0217fc14:
.space 0x4
.global data_ov61_0217fc18
data_ov61_0217fc18:
.space 0x4
.global data_ov61_0217fc1c
data_ov61_0217fc1c:
.space 0x4
.global data_ov61_0217fc20
data_ov61_0217fc20:
.space 0x4
.global data_ov61_0217fc24
data_ov61_0217fc24:
.space 0x4
.global data_ov61_0217fc28
data_ov61_0217fc28:
.space 0x4
.global data_ov61_0217fc2c
data_ov61_0217fc2c:
.space 0x4
.global data_ov61_0217fc30
data_ov61_0217fc30:
.space 0x4
.global data_ov61_0217fc34
data_ov61_0217fc34:
.space 0x4
.global data_ov61_0217fc38
data_ov61_0217fc38:
.space 0x4
.global data_ov61_0217fc3c
data_ov61_0217fc3c:
.space 0x4
.global data_ov61_0217fc40
data_ov61_0217fc40:
.space 0x4
.global data_ov61_0217fc44
data_ov61_0217fc44:
.space 0x4
.global data_ov61_0217fc48
data_ov61_0217fc48:
.space 0x4
.global data_ov61_0217fc4c
data_ov61_0217fc4c:
.space 0x4
.global data_ov61_0217fc50
data_ov61_0217fc50:
.space 0x4
.global data_ov61_0217fc54
data_ov61_0217fc54:
.space 0x4
.global data_ov61_0217fc58
data_ov61_0217fc58:
.space 0x4
.global data_ov61_0217fc5c
data_ov61_0217fc5c:
.space 0x4
.global data_ov61_0217fc60
data_ov61_0217fc60:
.space 0x4
.global data_ov61_0217fc64
data_ov61_0217fc64:
.space 0x4
.global data_ov61_0217fc68
data_ov61_0217fc68:
.space 0x4
.global data_ov61_0217fc6c
data_ov61_0217fc6c:
.space 0x4
.global data_ov61_0217fc70
data_ov61_0217fc70:
.space 0x4
.global data_ov61_0217fc74
data_ov61_0217fc74:
.space 0x4
.global data_ov61_0217fc78
data_ov61_0217fc78:
.space 0x4
.global data_ov61_0217fc7c
data_ov61_0217fc7c:
.space 0x4
.global data_ov61_0217fc80
data_ov61_0217fc80:
.space 0x4
.global data_ov61_0217fc84
data_ov61_0217fc84:
.space 0x4
.global data_ov61_0217fc88
data_ov61_0217fc88:
.space 0x4
.global data_ov61_0217fc8c
data_ov61_0217fc8c:
.space 0x4
.global data_ov61_0217fc90
data_ov61_0217fc90:
.space 0x4
.global data_ov61_0217fc94
data_ov61_0217fc94:
.space 0x4
.global data_ov61_0217fc98
data_ov61_0217fc98:
.space 0x4
.global data_ov61_0217fc9c
data_ov61_0217fc9c:
.space 0x4
.global data_ov61_0217fca0
data_ov61_0217fca0:
.space 0x4
.global data_ov61_0217fca4
data_ov61_0217fca4:
.space 0x4
.global data_ov61_0217fca8
data_ov61_0217fca8:
.space 0x4
.global data_ov61_0217fcac
data_ov61_0217fcac:
.space 0x4
.global data_ov61_0217fcb0
data_ov61_0217fcb0:
.space 0x4
.global data_ov61_0217fcb4
data_ov61_0217fcb4:
.space 0x4
.global data_ov61_0217fcb8
data_ov61_0217fcb8:
.space 0x4
.global data_ov61_0217fcbc
data_ov61_0217fcbc:
.space 0x4
.global data_ov61_0217fcc0
data_ov61_0217fcc0:
.space 0x4
.global data_ov61_0217fcc4
data_ov61_0217fcc4:
.space 0x4
.global data_ov61_0217fcc8
data_ov61_0217fcc8:
.space 0x4
.global data_ov61_0217fccc
data_ov61_0217fccc:
.space 0x4
.global data_ov61_0217fcd0
data_ov61_0217fcd0:
.space 0x4
.global data_ov61_0217fcd4
data_ov61_0217fcd4:
.space 0x4
.global data_ov61_0217fcd8
data_ov61_0217fcd8:
.space 0x4
.global data_ov61_0217fcdc
data_ov61_0217fcdc:
.space 0x4
.global data_ov61_0217fce0
data_ov61_0217fce0:
.space 0x4
.global data_ov61_0217fce4
data_ov61_0217fce4:
.space 0x4
.global data_ov61_0217fce8
data_ov61_0217fce8:
.space 0x4
.global data_ov61_0217fcec
data_ov61_0217fcec:
.space 0x4
.global data_ov61_0217fcf0
data_ov61_0217fcf0:
.space 0x4
.global data_ov61_0217fcf4
data_ov61_0217fcf4:
.space 0x4
.global data_ov61_0217fcf8
data_ov61_0217fcf8:
.space 0x4
.global data_ov61_0217fcfc
data_ov61_0217fcfc:
.space 0x4
.global data_ov61_0217fd00
data_ov61_0217fd00:
.space 0x4
.global data_ov61_0217fd04
data_ov61_0217fd04:
.space 0x4
.global data_ov61_0217fd08
data_ov61_0217fd08:
.space 0x4
.global data_ov61_0217fd0c
data_ov61_0217fd0c:
.space 0x4
.global data_ov61_0217fd10
data_ov61_0217fd10:
.space 0x4
.global data_ov61_0217fd14
data_ov61_0217fd14:
.space 0x4
.global data_ov61_0217fd18
data_ov61_0217fd18:
.space 0x4
.global data_ov61_0217fd1c
data_ov61_0217fd1c:
.space 0x4
.global data_ov61_0217fd20
data_ov61_0217fd20:
.space 0x4
.global data_ov61_0217fd24
data_ov61_0217fd24:
.space 0x4
.global data_ov61_0217fd28
data_ov61_0217fd28:
.space 0x4
.global data_ov61_0217fd2c
data_ov61_0217fd2c:
.space 0x4
.global data_ov61_0217fd30
data_ov61_0217fd30:
.space 0x4
.global data_ov61_0217fd34
data_ov61_0217fd34:
.space 0x4
.global data_ov61_0217fd38
data_ov61_0217fd38:
.space 0x4
.global data_ov61_0217fd3c
data_ov61_0217fd3c:
.space 0x4
.global data_ov61_0217fd40
data_ov61_0217fd40:
.space 0x4
.global data_ov61_0217fd44
data_ov61_0217fd44:
.space 0x4
.global data_ov61_0217fd48
data_ov61_0217fd48:
.space 0x4
.global data_ov61_0217fd4c
data_ov61_0217fd4c:
.space 0x4
.global data_ov61_0217fd50
data_ov61_0217fd50:
.space 0x4
.global data_ov61_0217fd54
data_ov61_0217fd54:
.space 0x4
.global data_ov61_0217fd58
data_ov61_0217fd58:
.space 0x4
.global data_ov61_0217fd5c
data_ov61_0217fd5c:
.space 0x4
.global data_ov61_0217fd60
data_ov61_0217fd60:
.space 0x4
.global data_ov61_0217fd64
data_ov61_0217fd64:
.space 0x4
.global data_ov61_0217fd68
data_ov61_0217fd68:
.space 0x4
.global data_ov61_0217fd6c
data_ov61_0217fd6c:
.space 0x4
.global data_ov61_0217fd70
data_ov61_0217fd70:
.space 0x4
.global data_ov61_0217fd74
data_ov61_0217fd74:
.space 0x4
.global data_ov61_0217fd78
data_ov61_0217fd78:
.space 0x4
.global data_ov61_0217fd7c
data_ov61_0217fd7c:
.space 0x4
.global data_ov61_0217fd80
data_ov61_0217fd80:
.space 0x4
.global data_ov61_0217fd84
data_ov61_0217fd84:
.space 0x4
.global data_ov61_0217fd88
data_ov61_0217fd88:
.space 0x4
.global data_ov61_0217fd8c
data_ov61_0217fd8c:
.space 0x4
.global data_ov61_0217fd90
data_ov61_0217fd90:
.space 0x4
.global data_ov61_0217fd94
data_ov61_0217fd94:
.space 0x4
.global data_ov61_0217fd98
data_ov61_0217fd98:
.space 0x4
.global data_ov61_0217fd9c
data_ov61_0217fd9c:
.space 0x4
.global data_ov61_0217fda0
data_ov61_0217fda0:
.space 0x4
.global data_ov61_0217fda4
data_ov61_0217fda4:
.space 0x4
.global data_ov61_0217fda8
data_ov61_0217fda8:
.space 0x4
.global data_ov61_0217fdac
data_ov61_0217fdac:
.space 0x4
.global data_ov61_0217fdb0
data_ov61_0217fdb0:
.space 0x4
.global data_ov61_0217fdb4
data_ov61_0217fdb4:
.space 0x4
.global data_ov61_0217fdb8
data_ov61_0217fdb8:
.space 0x4
.global data_ov61_0217fdbc
data_ov61_0217fdbc:
.space 0x4
.global data_ov61_0217fdc0
data_ov61_0217fdc0:
.space 0x4
.global data_ov61_0217fdc4
data_ov61_0217fdc4:
.space 0x4
.global data_ov61_0217fdc8
data_ov61_0217fdc8:
.space 0x4
.global data_ov61_0217fdcc
data_ov61_0217fdcc:
.space 0x4
.global data_ov61_0217fdd0
data_ov61_0217fdd0:
.space 0x4
.global data_ov61_0217fdd4
data_ov61_0217fdd4:
.space 0x4
.global data_ov61_0217fdd8
data_ov61_0217fdd8:
.space 0x4
.global data_ov61_0217fddc
data_ov61_0217fddc:
.space 0x4
.global data_ov61_0217fde0
data_ov61_0217fde0:
.space 0x4
.global data_ov61_0217fde4
data_ov61_0217fde4:
.space 0x4
.global data_ov61_0217fde8
data_ov61_0217fde8:
.space 0x4
.global data_ov61_0217fdec
data_ov61_0217fdec:
.space 0x4
.global data_ov61_0217fdf0
data_ov61_0217fdf0:
.space 0x4
.global data_ov61_0217fdf4
data_ov61_0217fdf4:
.space 0x4
.global data_ov61_0217fdf8
data_ov61_0217fdf8:
.space 0x4
.global data_ov61_0217fdfc
data_ov61_0217fdfc:
.space 0x4
.global data_ov61_0217fe00
data_ov61_0217fe00:
.space 0x4
.global data_ov61_0217fe04
data_ov61_0217fe04:
.space 0x4
.global data_ov61_0217fe08
data_ov61_0217fe08:
.space 0x4
.global data_ov61_0217fe0c
data_ov61_0217fe0c:
.space 0x4
.global data_ov61_0217fe10
data_ov61_0217fe10:
.space 0x4
.global data_ov61_0217fe14
data_ov61_0217fe14:
.space 0x4
.global data_ov61_0217fe18
data_ov61_0217fe18:
.space 0x4
.global data_ov61_0217fe1c
data_ov61_0217fe1c:
.space 0x4
.global data_ov61_0217fe20
data_ov61_0217fe20:
.space 0x4
.global data_ov61_0217fe24
data_ov61_0217fe24:
.space 0x4
.global data_ov61_0217fe28
data_ov61_0217fe28:
.space 0x4
.global data_ov61_0217fe2c
data_ov61_0217fe2c:
.space 0x4
.global data_ov61_0217fe30
data_ov61_0217fe30:
.space 0x4
.global data_ov61_0217fe34
data_ov61_0217fe34:
.space 0x4
.global data_ov61_0217fe38
data_ov61_0217fe38:
.space 0x4
.global data_ov61_0217fe3c
data_ov61_0217fe3c:
.space 0x4
.global data_ov61_0217fe40
data_ov61_0217fe40:
.space 0x4
.global data_ov61_0217fe44
data_ov61_0217fe44:
.space 0x4
.global data_ov61_0217fe48
data_ov61_0217fe48:
.space 0x4
.global data_ov61_0217fe4c
data_ov61_0217fe4c:
.space 0x4
.global data_ov61_0217fe50
data_ov61_0217fe50:
.space 0x4
.global data_ov61_0217fe54
data_ov61_0217fe54:
.space 0x4
.global data_ov61_0217fe58
data_ov61_0217fe58:
.space 0x4
.global data_ov61_0217fe5c
data_ov61_0217fe5c:
.space 0x4
.global data_ov61_0217fe60
data_ov61_0217fe60:
.space 0x4
.global data_ov61_0217fe64
data_ov61_0217fe64:
.space 0x4
.global data_ov61_0217fe68
data_ov61_0217fe68:
.space 0x4
.global data_ov61_0217fe6c
data_ov61_0217fe6c:
.space 0x4
.global data_ov61_0217fe70
data_ov61_0217fe70:
.space 0x4
.global data_ov61_0217fe74
data_ov61_0217fe74:
.space 0x4
.global data_ov61_0217fe78
data_ov61_0217fe78:
.space 0x4
.global data_ov61_0217fe7c
data_ov61_0217fe7c:
.space 0x4
.global data_ov61_0217fe80
data_ov61_0217fe80:
.space 0x4
.global data_ov61_0217fe84
data_ov61_0217fe84:
.space 0x4
.global data_ov61_0217fe88
data_ov61_0217fe88:
.space 0x4
.global data_ov61_0217fe8c
data_ov61_0217fe8c:
.space 0x4
.global data_ov61_0217fe90
data_ov61_0217fe90:
.space 0x4
.global data_ov61_0217fe94
data_ov61_0217fe94:
.space 0x4
.global data_ov61_0217fe98
data_ov61_0217fe98:
.space 0x4
.global data_ov61_0217fe9c
data_ov61_0217fe9c:
.space 0x4
.global data_ov61_0217fea0
data_ov61_0217fea0:
.space 0x4
.global data_ov61_0217fea4
data_ov61_0217fea4:
.space 0x4
.global data_ov61_0217fea8
data_ov61_0217fea8:
.space 0x4
.global data_ov61_0217feac
data_ov61_0217feac:
.space 0x4
.global data_ov61_0217feb0
data_ov61_0217feb0:
.space 0x4
.global data_ov61_0217feb4
data_ov61_0217feb4:
.space 0x4
.global data_ov61_0217feb8
data_ov61_0217feb8:
.space 0x4
.global data_ov61_0217febc
data_ov61_0217febc:
.space 0x4
.global data_ov61_0217fec0
data_ov61_0217fec0:
.space 0x4
.global data_ov61_0217fec4
data_ov61_0217fec4:
.space 0x4
.global data_ov61_0217fec8
data_ov61_0217fec8:
.space 0x4
.global data_ov61_0217fecc
data_ov61_0217fecc:
.space 0x4
.global data_ov61_0217fed0
data_ov61_0217fed0:
.space 0x4
.global data_ov61_0217fed4
data_ov61_0217fed4:
.space 0x4
.global data_ov61_0217fed8
data_ov61_0217fed8:
.space 0x4
.global data_ov61_0217fedc
data_ov61_0217fedc:
.space 0x4
.global data_ov61_0217fee0
data_ov61_0217fee0:
.space 0x4
.global data_ov61_0217fee4
data_ov61_0217fee4:
.space 0x4
.global data_ov61_0217fee8
data_ov61_0217fee8:
.space 0x4
.global data_ov61_0217feec
data_ov61_0217feec:
.space 0x4
.global data_ov61_0217fef0
data_ov61_0217fef0:
.space 0x4
.global data_ov61_0217fef4
data_ov61_0217fef4:
.space 0x4
.global data_ov61_0217fef8
data_ov61_0217fef8:
.space 0x4
.global data_ov61_0217fefc
data_ov61_0217fefc:
.space 0x4
.global data_ov61_0217ff00
data_ov61_0217ff00:
.space 0x4
.global data_ov61_0217ff04
data_ov61_0217ff04:
.space 0x4
.global data_ov61_0217ff08
data_ov61_0217ff08:
.space 0x4
.global data_ov61_0217ff0c
data_ov61_0217ff0c:
.space 0x4
.global data_ov61_0217ff10
data_ov61_0217ff10:
.space 0x4
.global data_ov61_0217ff14
data_ov61_0217ff14:
.space 0x4
.global data_ov61_0217ff18
data_ov61_0217ff18:
.space 0x4
.global data_ov61_0217ff1c
data_ov61_0217ff1c:
.space 0x4
.global data_ov61_0217ff20
data_ov61_0217ff20:
.space 0x4
.global data_ov61_0217ff24
data_ov61_0217ff24:
.space 0x4
.global data_ov61_0217ff28
data_ov61_0217ff28:
.space 0x4
.global data_ov61_0217ff2c
data_ov61_0217ff2c:
.space 0x4
.global data_ov61_0217ff30
data_ov61_0217ff30:
.space 0x4
.global data_ov61_0217ff34
data_ov61_0217ff34:
.space 0x4
.global data_ov61_0217ff38
data_ov61_0217ff38:
.space 0x4
.global data_ov61_0217ff3c
data_ov61_0217ff3c:
.space 0x4
.global data_ov61_0217ff40
data_ov61_0217ff40:
.space 0x4
.global data_ov61_0217ff44
data_ov61_0217ff44:
.space 0x4
.global data_ov61_0217ff48
data_ov61_0217ff48:
.space 0x4
.global data_ov61_0217ff4c
data_ov61_0217ff4c:
.space 0x4
.global data_ov61_0217ff50
data_ov61_0217ff50:
.space 0x4
.global data_ov61_0217ff54
data_ov61_0217ff54:
.space 0x4
.global data_ov61_0217ff58
data_ov61_0217ff58:
.space 0x4
.global data_ov61_0217ff5c
data_ov61_0217ff5c:
.space 0x4
.global data_ov61_0217ff60
data_ov61_0217ff60:
.space 0x4
.global data_ov61_0217ff64
data_ov61_0217ff64:
.space 0x4
.global data_ov61_0217ff68
data_ov61_0217ff68:
.space 0x4
.global data_ov61_0217ff6c
data_ov61_0217ff6c:
.space 0x4
.global data_ov61_0217ff70
data_ov61_0217ff70:
.space 0x4
.global data_ov61_0217ff74
data_ov61_0217ff74:
.space 0x4
.global data_ov61_0217ff78
data_ov61_0217ff78:
.space 0x4
.global data_ov61_0217ff7c
data_ov61_0217ff7c:
.space 0x4
.global data_ov61_0217ff80
data_ov61_0217ff80:
.space 0x4
.global data_ov61_0217ff84
data_ov61_0217ff84:
.space 0x4
.global data_ov61_0217ff88
data_ov61_0217ff88:
.space 0x4
.global data_ov61_0217ff8c
data_ov61_0217ff8c:
.space 0x4
.global data_ov61_0217ff90
data_ov61_0217ff90:
.space 0x4
.global data_ov61_0217ff94
data_ov61_0217ff94:
.space 0x4
.global data_ov61_0217ff98
data_ov61_0217ff98:
.space 0x4
.global data_ov61_0217ff9c
data_ov61_0217ff9c:
.space 0x4
.global data_ov61_0217ffa0
data_ov61_0217ffa0:
.space 0x4
.global data_ov61_0217ffa4
data_ov61_0217ffa4:
.space 0x4
.global data_ov61_0217ffa8
data_ov61_0217ffa8:
.space 0x4
.global data_ov61_0217ffac
data_ov61_0217ffac:
.space 0x4
.global data_ov61_0217ffb0
data_ov61_0217ffb0:
.space 0x4
.global data_ov61_0217ffb4
data_ov61_0217ffb4:
.space 0x4
.global data_ov61_0217ffb8
data_ov61_0217ffb8:
.space 0x4
.global data_ov61_0217ffbc
data_ov61_0217ffbc:
.space 0x4
.global data_ov61_0217ffc0
data_ov61_0217ffc0:
.space 0x4
.global data_ov61_0217ffc4
data_ov61_0217ffc4:
.space 0x4
.global data_ov61_0217ffc8
data_ov61_0217ffc8:
.space 0x4
.global data_ov61_0217ffcc
data_ov61_0217ffcc:
.space 0x4
.global data_ov61_0217ffd0
data_ov61_0217ffd0:
.space 0x4
.global data_ov61_0217ffd4
data_ov61_0217ffd4:
.space 0x4
.global data_ov61_0217ffd8
data_ov61_0217ffd8:
.space 0x4
.global data_ov61_0217ffdc
data_ov61_0217ffdc:
.space 0x4
.global data_ov61_0217ffe0
data_ov61_0217ffe0:
.space 0x4
.global data_ov61_0217ffe4
data_ov61_0217ffe4:
.space 0x4
.global data_ov61_0217ffe8
data_ov61_0217ffe8:
.space 0x4
.global data_ov61_0217ffec
data_ov61_0217ffec:
.space 0x4
.global data_ov61_0217fff0
data_ov61_0217fff0:
.space 0x4
.global data_ov61_0217fff4
data_ov61_0217fff4:
.space 0x4
.global data_ov61_0217fff8
data_ov61_0217fff8:
.space 0x4
.global data_ov61_0217fffc
data_ov61_0217fffc:
.space 0x4
.global data_ov61_02180000
data_ov61_02180000:
.space 0x4
.global data_ov61_02180004
data_ov61_02180004:
.space 0x4
.global data_ov61_02180008
data_ov61_02180008:
.space 0x4
.global data_ov61_0218000c
data_ov61_0218000c:
.space 0x4
.global data_ov61_02180010
data_ov61_02180010:
.space 0x4
.global data_ov61_02180014
data_ov61_02180014:
.space 0x4
.global data_ov61_02180018
data_ov61_02180018:
.space 0x4
.global data_ov61_0218001c
data_ov61_0218001c:
.space 0x4
.global data_ov61_02180020
data_ov61_02180020:
.space 0x4
.global data_ov61_02180024
data_ov61_02180024:
.space 0x4
.global data_ov61_02180028
data_ov61_02180028:
.space 0x4
.global data_ov61_0218002c
data_ov61_0218002c:
.space 0x4
.global data_ov61_02180030
data_ov61_02180030:
.space 0x4
.global data_ov61_02180034
data_ov61_02180034:
.space 0x4
.global data_ov61_02180038
data_ov61_02180038:
.space 0x4
.global data_ov61_0218003c
data_ov61_0218003c:
.space 0x4
.global data_ov61_02180040
data_ov61_02180040:
.space 0x4
.global data_ov61_02180044
data_ov61_02180044:
.space 0x4
.global data_ov61_02180048
data_ov61_02180048:
.space 0x4
.global data_ov61_0218004c
data_ov61_0218004c:
.space 0x4
.global data_ov61_02180050
data_ov61_02180050:
.space 0x4
.global data_ov61_02180054
data_ov61_02180054:
.space 0x4
.global data_ov61_02180058
data_ov61_02180058:
.space 0x4
.global data_ov61_0218005c
data_ov61_0218005c:
.space 0x4
.global data_ov61_02180060
data_ov61_02180060:
.space 0x4
.global data_ov61_02180064
data_ov61_02180064:
.space 0x4
.global data_ov61_02180068
data_ov61_02180068:
.space 0x4
.global data_ov61_0218006c
data_ov61_0218006c:
.space 0x4
.global data_ov61_02180070
data_ov61_02180070:
.space 0x4
.global data_ov61_02180074
data_ov61_02180074:
.space 0x4
.global data_ov61_02180078
data_ov61_02180078:
.space 0x4
.global data_ov61_0218007c
data_ov61_0218007c:
.space 0x4
.global data_ov61_02180080
data_ov61_02180080:
.space 0x4
.global data_ov61_02180084
data_ov61_02180084:
.space 0x4
.global data_ov61_02180088
data_ov61_02180088:
.space 0x4
.global data_ov61_0218008c
data_ov61_0218008c:
.space 0x4
.global data_ov61_02180090
data_ov61_02180090:
.space 0x4
.global data_ov61_02180094
data_ov61_02180094:
.space 0x4
.global data_ov61_02180098
data_ov61_02180098:
.space 0x4
.global data_ov61_0218009c
data_ov61_0218009c:
.space 0x4
.global data_ov61_021800a0
data_ov61_021800a0:
.space 0x4
.global data_ov61_021800a4
data_ov61_021800a4:
.space 0x4
.global data_ov61_021800a8
data_ov61_021800a8:
.space 0x4
.global data_ov61_021800ac
data_ov61_021800ac:
.space 0x4
.global data_ov61_021800b0
data_ov61_021800b0:
.space 0x4
.global data_ov61_021800b4
data_ov61_021800b4:
.space 0x4
.global data_ov61_021800b8
data_ov61_021800b8:
.space 0x4
.global data_ov61_021800bc
data_ov61_021800bc:
.space 0x4
.global data_ov61_021800c0
data_ov61_021800c0:
.space 0x4
.global data_ov61_021800c4
data_ov61_021800c4:
.space 0x4
.global data_ov61_021800c8
data_ov61_021800c8:
.space 0x4
.global data_ov61_021800cc
data_ov61_021800cc:
.space 0x4
.global data_ov61_021800d0
data_ov61_021800d0:
.space 0x4
.global data_ov61_021800d4
data_ov61_021800d4:
.space 0x4
.global data_ov61_021800d8
data_ov61_021800d8:
.space 0x4
.global data_ov61_021800dc
data_ov61_021800dc:
.space 0x4
.global data_ov61_021800e0
data_ov61_021800e0:
.space 0x4
.global data_ov61_021800e4
data_ov61_021800e4:
.space 0x4
.global data_ov61_021800e8
data_ov61_021800e8:
.space 0x4
.global data_ov61_021800ec
data_ov61_021800ec:
.space 0x4
.global data_ov61_021800f0
data_ov61_021800f0:
.space 0x4
.global data_ov61_021800f4
data_ov61_021800f4:
.space 0x4
.global data_ov61_021800f8
data_ov61_021800f8:
.space 0x4
.global data_ov61_021800fc
data_ov61_021800fc:
.space 0x4
.global data_ov61_02180100
data_ov61_02180100:
.space 0x4
.global data_ov61_02180104
data_ov61_02180104:
.space 0x4
.global data_ov61_02180108
data_ov61_02180108:
.space 0x4
.global data_ov61_0218010c
data_ov61_0218010c:
.space 0x4
.global data_ov61_02180110
data_ov61_02180110:
.space 0x4
.global data_ov61_02180114
data_ov61_02180114:
.space 0x4
.global data_ov61_02180118
data_ov61_02180118:
.space 0x4
.global data_ov61_0218011c
data_ov61_0218011c:
.space 0x4
.global data_ov61_02180120
data_ov61_02180120:
.space 0x4
.global data_ov61_02180124
data_ov61_02180124:
.space 0x4
.global data_ov61_02180128
data_ov61_02180128:
.space 0x4
.global data_ov61_0218012c
data_ov61_0218012c:
.space 0x4
.global data_ov61_02180130
data_ov61_02180130:
.space 0x4
.global data_ov61_02180134
data_ov61_02180134:
.space 0x4
.global data_ov61_02180138
data_ov61_02180138:
.space 0x4
.global data_ov61_0218013c
data_ov61_0218013c:
.space 0x4
.global data_ov61_02180140
data_ov61_02180140:
.space 0x4
.global data_ov61_02180144
data_ov61_02180144:
.space 0x4
.global data_ov61_02180148
data_ov61_02180148:
.space 0x4
.global data_ov61_0218014c
data_ov61_0218014c:
.space 0x4
.global data_ov61_02180150
data_ov61_02180150:
.space 0x4
.global data_ov61_02180154
data_ov61_02180154:
.space 0x4
.global data_ov61_02180158
data_ov61_02180158:
.space 0x4
.global data_ov61_0218015c
data_ov61_0218015c:
.space 0x4
.global data_ov61_02180160
data_ov61_02180160:
.space 0x4
.global data_ov61_02180164
data_ov61_02180164:
.space 0x4
.global data_ov61_02180168
data_ov61_02180168:
.space 0x4
.global data_ov61_0218016c
data_ov61_0218016c:
.space 0x4
.global data_ov61_02180170
data_ov61_02180170:
.space 0x4
.global data_ov61_02180174
data_ov61_02180174:
.space 0x4
.global data_ov61_02180178
data_ov61_02180178:
.space 0x4
.global data_ov61_0218017c
data_ov61_0218017c:
.space 0x4
.global data_ov61_02180180
data_ov61_02180180:
.space 0x4
.global data_ov61_02180184
data_ov61_02180184:
.space 0x4
.global data_ov61_02180188
data_ov61_02180188:
.space 0x4
.global data_ov61_0218018c
data_ov61_0218018c:
.space 0x4
.global data_ov61_02180190
data_ov61_02180190:
.space 0x4
.global data_ov61_02180194
data_ov61_02180194:
.space 0x4
.global data_ov61_02180198
data_ov61_02180198:
.space 0x4
.global data_ov61_0218019c
data_ov61_0218019c:
.space 0x4
.global data_ov61_021801a0
data_ov61_021801a0:
.space 0x4
.global data_ov61_021801a4
data_ov61_021801a4:
.space 0x4
.global data_ov61_021801a8
data_ov61_021801a8:
.space 0x4
.global data_ov61_021801ac
data_ov61_021801ac:
.space 0x4
.global data_ov61_021801b0
data_ov61_021801b0:
.space 0x4
.global data_ov61_021801b4
data_ov61_021801b4:
.space 0x4
.global data_ov61_021801b8
data_ov61_021801b8:
.space 0x4
.global data_ov61_021801bc
data_ov61_021801bc:
.space 0x4
.global data_ov61_021801c0
data_ov61_021801c0:
.space 0x4
.global data_ov61_021801c4
data_ov61_021801c4:
.space 0x4
.global data_ov61_021801c8
data_ov61_021801c8:
.space 0x4
.global data_ov61_021801cc
data_ov61_021801cc:
.space 0x4
.global data_ov61_021801d0
data_ov61_021801d0:
.space 0x4
.global data_ov61_021801d4
data_ov61_021801d4:
.space 0x4
.global data_ov61_021801d8
data_ov61_021801d8:
.space 0x4
.global data_ov61_021801dc
data_ov61_021801dc:
.space 0x4
.global data_ov61_021801e0
data_ov61_021801e0:
.space 0x4
.global data_ov61_021801e4
data_ov61_021801e4:
.space 0x4
.global data_ov61_021801e8
data_ov61_021801e8:
.space 0x4
.global data_ov61_021801ec
data_ov61_021801ec:
.space 0x4
.global data_ov61_021801f0
data_ov61_021801f0:
.space 0x4
.global data_ov61_021801f4
data_ov61_021801f4:
.space 0x4
.global data_ov61_021801f8
data_ov61_021801f8:
.space 0x4
.global data_ov61_021801fc
data_ov61_021801fc:
.space 0x4
.global data_ov61_02180200
data_ov61_02180200:
.space 0x4
.global data_ov61_02180204
data_ov61_02180204:
.space 0x4
.global data_ov61_02180208
data_ov61_02180208:
.space 0x4
.global data_ov61_0218020c
data_ov61_0218020c:
.space 0x4
.global data_ov61_02180210
data_ov61_02180210:
.space 0x4
.global data_ov61_02180214
data_ov61_02180214:
.space 0x4
.global data_ov61_02180218
data_ov61_02180218:
.space 0x4
.global data_ov61_0218021c
data_ov61_0218021c:
.space 0x4
.global data_ov61_02180220
data_ov61_02180220:
.space 0x4
.global data_ov61_02180224
data_ov61_02180224:
.space 0x4
.global data_ov61_02180228
data_ov61_02180228:
.space 0x4
.global data_ov61_0218022c
data_ov61_0218022c:
.space 0x4
.global data_ov61_02180230
data_ov61_02180230:
.space 0x4
.global data_ov61_02180234
data_ov61_02180234:
.space 0x4
.global data_ov61_02180238
data_ov61_02180238:
.space 0x4
.global data_ov61_0218023c
data_ov61_0218023c:
.space 0x4
.global data_ov61_02180240
data_ov61_02180240:
.space 0x4
.global data_ov61_02180244
data_ov61_02180244:
.space 0x4
.global data_ov61_02180248
data_ov61_02180248:
.space 0x4
.global data_ov61_0218024c
data_ov61_0218024c:
.space 0x4
.global data_ov61_02180250
data_ov61_02180250:
.space 0x4
.global data_ov61_02180254
data_ov61_02180254:
.space 0x4
.global data_ov61_02180258
data_ov61_02180258:
.space 0x4
.global data_ov61_0218025c
data_ov61_0218025c:
.space 0x4
.global data_ov61_02180260
data_ov61_02180260:
.space 0x4
.global data_ov61_02180264
data_ov61_02180264:
.space 0x4
.global data_ov61_02180268
data_ov61_02180268:
.space 0x4
.global data_ov61_0218026c
data_ov61_0218026c:
.space 0x4
.global data_ov61_02180270
data_ov61_02180270:
.space 0x4
.global data_ov61_02180274
data_ov61_02180274:
.space 0x4
.global data_ov61_02180278
data_ov61_02180278:
.space 0x4
.global data_ov61_0218027c
data_ov61_0218027c:
.space 0x4
.global data_ov61_02180280
data_ov61_02180280:
.space 0x4
.global data_ov61_02180284
data_ov61_02180284:
.space 0x4
.global data_ov61_02180288
data_ov61_02180288:
.space 0x4
.global data_ov61_0218028c
data_ov61_0218028c:
.space 0x4
.global data_ov61_02180290
data_ov61_02180290:
.space 0x4
.global data_ov61_02180294
data_ov61_02180294:
.space 0x4
.global data_ov61_02180298
data_ov61_02180298:
.space 0x4
.global data_ov61_0218029c
data_ov61_0218029c:
.space 0x4
.global data_ov61_021802a0
data_ov61_021802a0:
.space 0x4
.global data_ov61_021802a4
data_ov61_021802a4:
.space 0x4
.global data_ov61_021802a8
data_ov61_021802a8:
.space 0x4
.global data_ov61_021802ac
data_ov61_021802ac:
.space 0x4
.global data_ov61_021802b0
data_ov61_021802b0:
.space 0x4
.global data_ov61_021802b4
data_ov61_021802b4:
.space 0x4
.global data_ov61_021802b8
data_ov61_021802b8:
.space 0x4
.global data_ov61_021802bc
data_ov61_021802bc:
.space 0x4
.global data_ov61_021802c0
data_ov61_021802c0:
.space 0x4
.global data_ov61_021802c4
data_ov61_021802c4:
.space 0x4
.global data_ov61_021802c8
data_ov61_021802c8:
.space 0x4
.global data_ov61_021802cc
data_ov61_021802cc:
.space 0x4
.global data_ov61_021802d0
data_ov61_021802d0:
.space 0x4
.global data_ov61_021802d4
data_ov61_021802d4:
.space 0x4
.global data_ov61_021802d8
data_ov61_021802d8:
.space 0x4
.global data_ov61_021802dc
data_ov61_021802dc:
.space 0x4
.global data_ov61_021802e0
data_ov61_021802e0:
.space 0x4
.global data_ov61_021802e4
data_ov61_021802e4:
.space 0x4
.global data_ov61_021802e8
data_ov61_021802e8:
.space 0x4
.global data_ov61_021802ec
data_ov61_021802ec:
.space 0x4
.global data_ov61_021802f0
data_ov61_021802f0:
.space 0x4
.global data_ov61_021802f4
data_ov61_021802f4:
.space 0x4
.global data_ov61_021802f8
data_ov61_021802f8:
.space 0x4
.global data_ov61_021802fc
data_ov61_021802fc:
.space 0x4
.global data_ov61_02180300
data_ov61_02180300:
.space 0x4
.global data_ov61_02180304
data_ov61_02180304:
.space 0x4
.global data_ov61_02180308
data_ov61_02180308:
.space 0x4
.global data_ov61_0218030c
data_ov61_0218030c:
.space 0x4
.global data_ov61_02180310
data_ov61_02180310:
.space 0x4
.global data_ov61_02180314
data_ov61_02180314:
.space 0x4
.global data_ov61_02180318
data_ov61_02180318:
.space 0x4
.global data_ov61_0218031c
data_ov61_0218031c:
.space 0x4
.global data_ov61_02180320
data_ov61_02180320:
.space 0x4
.global data_ov61_02180324
data_ov61_02180324:
.space 0x4
.global data_ov61_02180328
data_ov61_02180328:
.space 0x4
.global data_ov61_0218032c
data_ov61_0218032c:
.space 0x4
.global data_ov61_02180330
data_ov61_02180330:
.space 0x4
.global data_ov61_02180334
data_ov61_02180334:
.space 0x4
.global data_ov61_02180338
data_ov61_02180338:
.space 0x4
.global data_ov61_0218033c
data_ov61_0218033c:
.space 0x4
.global data_ov61_02180340
data_ov61_02180340:
.space 0x4
.global data_ov61_02180344
data_ov61_02180344:
.space 0x4
.global data_ov61_02180348
data_ov61_02180348:
.space 0x4
.global data_ov61_0218034c
data_ov61_0218034c:
.space 0x4
.global data_ov61_02180350
data_ov61_02180350:
.space 0x4
.global data_ov61_02180354
data_ov61_02180354:
.space 0x4
.global data_ov61_02180358
data_ov61_02180358:
.space 0x4
.global data_ov61_0218035c
data_ov61_0218035c:
.space 0x4
.global data_ov61_02180360
data_ov61_02180360:
.space 0x4
.global data_ov61_02180364
data_ov61_02180364:
.space 0x4
.global data_ov61_02180368
data_ov61_02180368:
.space 0x4
.global data_ov61_0218036c
data_ov61_0218036c:
.space 0x4
.global data_ov61_02180370
data_ov61_02180370:
.space 0x4
.global data_ov61_02180374
data_ov61_02180374:
.space 0x4
.global data_ov61_02180378
data_ov61_02180378:
.space 0x4
.global data_ov61_0218037c
data_ov61_0218037c:
.space 0x4
.global data_ov61_02180380
data_ov61_02180380:
.space 0x4
.global data_ov61_02180384
data_ov61_02180384:
.space 0x4
.global data_ov61_02180388
data_ov61_02180388:
.space 0x4
.global data_ov61_0218038c
data_ov61_0218038c:
.space 0x4
.global data_ov61_02180390
data_ov61_02180390:
.space 0x4
.global data_ov61_02180394
data_ov61_02180394:
.space 0x4
.global data_ov61_02180398
data_ov61_02180398:
.space 0x4
.global data_ov61_0218039c
data_ov61_0218039c:
.space 0x4
.global data_ov61_021803a0
data_ov61_021803a0:
.space 0x4
.global data_ov61_021803a4
data_ov61_021803a4:
.space 0x4
.global data_ov61_021803a8
data_ov61_021803a8:
.space 0x4
.global data_ov61_021803ac
data_ov61_021803ac:
.space 0x4
.global data_ov61_021803b0
data_ov61_021803b0:
.space 0x4
.global data_ov61_021803b4
data_ov61_021803b4:
.space 0x4
.global data_ov61_021803b8
data_ov61_021803b8:
.space 0x4
.global data_ov61_021803bc
data_ov61_021803bc:
.space 0x4
.global data_ov61_021803c0
data_ov61_021803c0:
.space 0x4
.global data_ov61_021803c4
data_ov61_021803c4:
.space 0x4
.global data_ov61_021803c8
data_ov61_021803c8:
.space 0x4
.global data_ov61_021803cc
data_ov61_021803cc:
.space 0x4
.global data_ov61_021803d0
data_ov61_021803d0:
.space 0x4
.global data_ov61_021803d4
data_ov61_021803d4:
.space 0x4
.global data_ov61_021803d8
data_ov61_021803d8:
.space 0x4
.global data_ov61_021803dc
data_ov61_021803dc:
.space 0x4
.global data_ov61_021803e0
data_ov61_021803e0:
.space 0x4
.global data_ov61_021803e4
data_ov61_021803e4:
.space 0x4
.global data_ov61_021803e8
data_ov61_021803e8:
.space 0x4
.global data_ov61_021803ec
data_ov61_021803ec:
.space 0x4
.global data_ov61_021803f0
data_ov61_021803f0:
.space 0x4
.global data_ov61_021803f4
data_ov61_021803f4:
.space 0x4
.global data_ov61_021803f8
data_ov61_021803f8:
.space 0x4
.global data_ov61_021803fc
data_ov61_021803fc:
.space 0x4
.global data_ov61_02180400
data_ov61_02180400:
.space 0x4
.global data_ov61_02180404
data_ov61_02180404:
.space 0x4
.global data_ov61_02180408
data_ov61_02180408:
.space 0x4
.global data_ov61_0218040c
data_ov61_0218040c:
.space 0x4
.global data_ov61_02180410
data_ov61_02180410:
.space 0x4
.global data_ov61_02180414
data_ov61_02180414:
.space 0x4
.global data_ov61_02180418
data_ov61_02180418:
.space 0x4
.global data_ov61_0218041c
data_ov61_0218041c:
.space 0x4
.global data_ov61_02180420
data_ov61_02180420:
.space 0x4
.global data_ov61_02180424
data_ov61_02180424:
.space 0x4
.global data_ov61_02180428
data_ov61_02180428:
.space 0x4
.global data_ov61_0218042c
data_ov61_0218042c:
.space 0x4
.global data_ov61_02180430
data_ov61_02180430:
.space 0x4
.global data_ov61_02180434
data_ov61_02180434:
.space 0x4
.global data_ov61_02180438
data_ov61_02180438:
.space 0x4
.global data_ov61_0218043c
data_ov61_0218043c:
.space 0x4
.global data_ov61_02180440
data_ov61_02180440:
.space 0x4
.global data_ov61_02180444
data_ov61_02180444:
.space 0x4
.global data_ov61_02180448
data_ov61_02180448:
.space 0x4
.global data_ov61_0218044c
data_ov61_0218044c:
.space 0x4
.global data_ov61_02180450
data_ov61_02180450:
.space 0x4
.global data_ov61_02180454
data_ov61_02180454:
.space 0x4
.global data_ov61_02180458
data_ov61_02180458:
.space 0x4
.global data_ov61_0218045c
data_ov61_0218045c:
.space 0x4
.global data_ov61_02180460
data_ov61_02180460:
.space 0x4
.global data_ov61_02180464
data_ov61_02180464:
.space 0x4
.global data_ov61_02180468
data_ov61_02180468:
.space 0x4
.global data_ov61_0218046c
data_ov61_0218046c:
.space 0x4
.global data_ov61_02180470
data_ov61_02180470:
.space 0x4
.global data_ov61_02180474
data_ov61_02180474:
.space 0x4
.global data_ov61_02180478
data_ov61_02180478:
.space 0x4
.global data_ov61_0218047c
data_ov61_0218047c:
.space 0x4
.global data_ov61_02180480
data_ov61_02180480:
.space 0x4
.global data_ov61_02180484
data_ov61_02180484:
.space 0x4
.global data_ov61_02180488
data_ov61_02180488:
.space 0x4
.global data_ov61_0218048c
data_ov61_0218048c:
.space 0x4
.global data_ov61_02180490
data_ov61_02180490:
.space 0x4
.global data_ov61_02180494
data_ov61_02180494:
.space 0x4
.global data_ov61_02180498
data_ov61_02180498:
.space 0x4
.global data_ov61_0218049c
data_ov61_0218049c:
.space 0x4
.global data_ov61_021804a0
data_ov61_021804a0:
.space 0x4
.global data_ov61_021804a4
data_ov61_021804a4:
.space 0x4
.global data_ov61_021804a8
data_ov61_021804a8:
.space 0x4
.global data_ov61_021804ac
data_ov61_021804ac:
.space 0x4
.global data_ov61_021804b0
data_ov61_021804b0:
.space 0x4
.global data_ov61_021804b4
data_ov61_021804b4:
.space 0x4
.global data_ov61_021804b8
data_ov61_021804b8:
.space 0x4
.global data_ov61_021804bc
data_ov61_021804bc:
.space 0x4
.global data_ov61_021804c0
data_ov61_021804c0:
.space 0x4
.global data_ov61_021804c4
data_ov61_021804c4:
.space 0x4
.global data_ov61_021804c8
data_ov61_021804c8:
.space 0x4
.global data_ov61_021804cc
data_ov61_021804cc:
.space 0x4
.global data_ov61_021804d0
data_ov61_021804d0:
.space 0x4
.global data_ov61_021804d4
data_ov61_021804d4:
.space 0x4
.global data_ov61_021804d8
data_ov61_021804d8:
.space 0x4
.global data_ov61_021804dc
data_ov61_021804dc:
.space 0x4
.global data_ov61_021804e0
data_ov61_021804e0:
.space 0x4
.global data_ov61_021804e4
data_ov61_021804e4:
.space 0x4
.global data_ov61_021804e8
data_ov61_021804e8:
.space 0x4
.global data_ov61_021804ec
data_ov61_021804ec:
.space 0x4
.global data_ov61_021804f0
data_ov61_021804f0:
.space 0x4
.global data_ov61_021804f4
data_ov61_021804f4:
.space 0x4
.global data_ov61_021804f8
data_ov61_021804f8:
.space 0x4
.global data_ov61_021804fc
data_ov61_021804fc:
.space 0x4
.global data_ov61_02180500
data_ov61_02180500:
.space 0x4
.global data_ov61_02180504
data_ov61_02180504:
.space 0x4
.global data_ov61_02180508
data_ov61_02180508:
.space 0x4
.global data_ov61_0218050c
data_ov61_0218050c:
.space 0x4
.global data_ov61_02180510
data_ov61_02180510:
.space 0x4
.global data_ov61_02180514
data_ov61_02180514:
.space 0x4
.global data_ov61_02180518
data_ov61_02180518:
.space 0x4
.global data_ov61_0218051c
data_ov61_0218051c:
.space 0x4
.global data_ov61_02180520
data_ov61_02180520:
.space 0x4
.global data_ov61_02180524
data_ov61_02180524:
.space 0x4
.global data_ov61_02180528
data_ov61_02180528:
.space 0x4
.global data_ov61_0218052c
data_ov61_0218052c:
.space 0x4
.global data_ov61_02180530
data_ov61_02180530:
.space 0x4
.global data_ov61_02180534
data_ov61_02180534:
.space 0x4
.global data_ov61_02180538
data_ov61_02180538:
.space 0x4
.global data_ov61_0218053c
data_ov61_0218053c:
.space 0x4
.global data_ov61_02180540
data_ov61_02180540:
.space 0x4
.global data_ov61_02180544
data_ov61_02180544:
.space 0x4
.global data_ov61_02180548
data_ov61_02180548:
.space 0x4
.global data_ov61_0218054c
data_ov61_0218054c:
.space 0x4
.global data_ov61_02180550
data_ov61_02180550:
.space 0x4
.global data_ov61_02180554
data_ov61_02180554:
.space 0x4
.global data_ov61_02180558
data_ov61_02180558:
.space 0x4
.global data_ov61_0218055c
data_ov61_0218055c:
.space 0x4
.global data_ov61_02180560
data_ov61_02180560:
.space 0x4
.global data_ov61_02180564
data_ov61_02180564:
.space 0x4
.global data_ov61_02180568
data_ov61_02180568:
.space 0x4
.global data_ov61_0218056c
data_ov61_0218056c:
.space 0x4
.global data_ov61_02180570
data_ov61_02180570:
.space 0x4
.global data_ov61_02180574
data_ov61_02180574:
.space 0x4
.global data_ov61_02180578
data_ov61_02180578:
.space 0x4
.global data_ov61_0218057c
data_ov61_0218057c:
.space 0x4
.global data_ov61_02180580
data_ov61_02180580:
.space 0x4
.global data_ov61_02180584
data_ov61_02180584:
.space 0x4
.global data_ov61_02180588
data_ov61_02180588:
.space 0x4
.global data_ov61_0218058c
data_ov61_0218058c:
.space 0x4
.global data_ov61_02180590
data_ov61_02180590:
.space 0x4
.global data_ov61_02180594
data_ov61_02180594:
.space 0x4
.global data_ov61_02180598
data_ov61_02180598:
.space 0x4
.global data_ov61_0218059c
data_ov61_0218059c:
.space 0x4
.global data_ov61_021805a0
data_ov61_021805a0:
.space 0x4
.global data_ov61_021805a4
data_ov61_021805a4:
.space 0x4
.global data_ov61_021805a8
data_ov61_021805a8:
.space 0x4
.global data_ov61_021805ac
data_ov61_021805ac:
.space 0x4
.global data_ov61_021805b0
data_ov61_021805b0:
.space 0x4
.global data_ov61_021805b4
data_ov61_021805b4:
.space 0x4
.global data_ov61_021805b8
data_ov61_021805b8:
.space 0x4
.global data_ov61_021805bc
data_ov61_021805bc:
.space 0x4
.global data_ov61_021805c0
data_ov61_021805c0:
.space 0x4
.global data_ov61_021805c4
data_ov61_021805c4:
.space 0x4
.global data_ov61_021805c8
data_ov61_021805c8:
.space 0x4
.global data_ov61_021805cc
data_ov61_021805cc:
.space 0x4
.global data_ov61_021805d0
data_ov61_021805d0:
.space 0x4
.global data_ov61_021805d4
data_ov61_021805d4:
.space 0x4
.global data_ov61_021805d8
data_ov61_021805d8:
.space 0x4
.global data_ov61_021805dc
data_ov61_021805dc:
.space 0x4
.global data_ov61_021805e0
data_ov61_021805e0:
.space 0x4
.global data_ov61_021805e4
data_ov61_021805e4:
.space 0x4
.global data_ov61_021805e8
data_ov61_021805e8:
.space 0x4
.global data_ov61_021805ec
data_ov61_021805ec:
.space 0x4
.global data_ov61_021805f0
data_ov61_021805f0:
.space 0x4
.global data_ov61_021805f4
data_ov61_021805f4:
.space 0x4
.global data_ov61_021805f8
data_ov61_021805f8:
.space 0x4
.global data_ov61_021805fc
data_ov61_021805fc:
.space 0x4
.global data_ov61_02180600
data_ov61_02180600:
.space 0x4
.global data_ov61_02180604
data_ov61_02180604:
.space 0x4
.global data_ov61_02180608
data_ov61_02180608:
.space 0x4
.global data_ov61_0218060c
data_ov61_0218060c:
.space 0x4
.global data_ov61_02180610
data_ov61_02180610:
.space 0x4
.global data_ov61_02180614
data_ov61_02180614:
.space 0x4
.global data_ov61_02180618
data_ov61_02180618:
.space 0x4
.global data_ov61_0218061c
data_ov61_0218061c:
.space 0x4
.global data_ov61_02180620
data_ov61_02180620:
.space 0x4
.global data_ov61_02180624
data_ov61_02180624:
.space 0x4
.global data_ov61_02180628
data_ov61_02180628:
.space 0x4
.global data_ov61_0218062c
data_ov61_0218062c:
.space 0x4
.global data_ov61_02180630
data_ov61_02180630:
.space 0x4
.global data_ov61_02180634
data_ov61_02180634:
.space 0x4
.global data_ov61_02180638
data_ov61_02180638:
.space 0x4
.global data_ov61_0218063c
data_ov61_0218063c:
.space 0x4
.global data_ov61_02180640
data_ov61_02180640:
.space 0x4
.global data_ov61_02180644
data_ov61_02180644:
.space 0x4
.global data_ov61_02180648
data_ov61_02180648:
.space 0x4
.global data_ov61_0218064c
data_ov61_0218064c:
.space 0x4
.global data_ov61_02180650
data_ov61_02180650:
.space 0x4
.global data_ov61_02180654
data_ov61_02180654:
.space 0x4
.global data_ov61_02180658
data_ov61_02180658:
.space 0x4
.global data_ov61_0218065c
data_ov61_0218065c:
.space 0x4
.global data_ov61_02180660
data_ov61_02180660:
.space 0x4
.global data_ov61_02180664
data_ov61_02180664:
.space 0x4
.global data_ov61_02180668
data_ov61_02180668:
.space 0x4
.global data_ov61_0218066c
data_ov61_0218066c:
.space 0x4
.global data_ov61_02180670
data_ov61_02180670:
.space 0x4
.global data_ov61_02180674
data_ov61_02180674:
.space 0x4
.global data_ov61_02180678
data_ov61_02180678:
.space 0x4
.global data_ov61_0218067c
data_ov61_0218067c:
.space 0x4
.global data_ov61_02180680
data_ov61_02180680:
.space 0x4
.global data_ov61_02180684
data_ov61_02180684:
.space 0x4
.global data_ov61_02180688
data_ov61_02180688:
.space 0x4
.global data_ov61_0218068c
data_ov61_0218068c:
.space 0x4
.global data_ov61_02180690
data_ov61_02180690:
.space 0x4
.global data_ov61_02180694
data_ov61_02180694:
.space 0x4
.global data_ov61_02180698
data_ov61_02180698:
.space 0x4
.global data_ov61_0218069c
data_ov61_0218069c:
.space 0x4
.global data_ov61_021806a0
data_ov61_021806a0:
.space 0x4
.global data_ov61_021806a4
data_ov61_021806a4:
.space 0x4
.global data_ov61_021806a8
data_ov61_021806a8:
.space 0x4
.global data_ov61_021806ac
data_ov61_021806ac:
.space 0x4
.global data_ov61_021806b0
data_ov61_021806b0:
.space 0x4
.global data_ov61_021806b4
data_ov61_021806b4:
.space 0x4
.global data_ov61_021806b8
data_ov61_021806b8:
.space 0x4
.global data_ov61_021806bc
data_ov61_021806bc:
.space 0x4
.global data_ov61_021806c0
data_ov61_021806c0:
.space 0x4
.global data_ov61_021806c4
data_ov61_021806c4:
.space 0x4
.global data_ov61_021806c8
data_ov61_021806c8:
.space 0x4
.global data_ov61_021806cc
data_ov61_021806cc:
.space 0x4
.global data_ov61_021806d0
data_ov61_021806d0:
.space 0x4
.global data_ov61_021806d4
data_ov61_021806d4:
.space 0x4
.global data_ov61_021806d8
data_ov61_021806d8:
.space 0x4
.global data_ov61_021806dc
data_ov61_021806dc:
.space 0x4
.global data_ov61_021806e0
data_ov61_021806e0:
.space 0x4
.global data_ov61_021806e4
data_ov61_021806e4:
.space 0x4
.global data_ov61_021806e8
data_ov61_021806e8:
.space 0x4
.global data_ov61_021806ec
data_ov61_021806ec:
.space 0x4
.global data_ov61_021806f0
data_ov61_021806f0:
.space 0x4
.global data_ov61_021806f4
data_ov61_021806f4:
.space 0x4
.global data_ov61_021806f8
data_ov61_021806f8:
.space 0x4
.global data_ov61_021806fc
data_ov61_021806fc:
.space 0x4
.global data_ov61_02180700
data_ov61_02180700:
.space 0x4
.global data_ov61_02180704
data_ov61_02180704:
.space 0x4
.global data_ov61_02180708
data_ov61_02180708:
.space 0x4
.global data_ov61_0218070c
data_ov61_0218070c:
.space 0x4
.global data_ov61_02180710
data_ov61_02180710:
.space 0x4
.global data_ov61_02180714
data_ov61_02180714:
.space 0x4
.global data_ov61_02180718
data_ov61_02180718:
.space 0x4
.global data_ov61_0218071c
data_ov61_0218071c:
.space 0x4
.global data_ov61_02180720
data_ov61_02180720:
.space 0x4
.global data_ov61_02180724
data_ov61_02180724:
.space 0x4
.global data_ov61_02180728
data_ov61_02180728:
.space 0x4
.global data_ov61_0218072c
data_ov61_0218072c:
.space 0x4
.global data_ov61_02180730
data_ov61_02180730:
.space 0x4
.global data_ov61_02180734
data_ov61_02180734:
.space 0x4
.global data_ov61_02180738
data_ov61_02180738:
.space 0x4
.global data_ov61_0218073c
data_ov61_0218073c:
.space 0x4
.global data_ov61_02180740
data_ov61_02180740:
.space 0x4
.global data_ov61_02180744
data_ov61_02180744:
.space 0x4
.global data_ov61_02180748
data_ov61_02180748:
.space 0x4
.global data_ov61_0218074c
data_ov61_0218074c:
.space 0x4
.global data_ov61_02180750
data_ov61_02180750:
.space 0x4
.global data_ov61_02180754
data_ov61_02180754:
.space 0x4
.global data_ov61_02180758
data_ov61_02180758:
.space 0x4
.global data_ov61_0218075c
data_ov61_0218075c:
.space 0x4
.global data_ov61_02180760
data_ov61_02180760:
.space 0x4
.global data_ov61_02180764
data_ov61_02180764:
.space 0x4
.global data_ov61_02180768
data_ov61_02180768:
.space 0x4
.global data_ov61_0218076c
data_ov61_0218076c:
.space 0x4
.global data_ov61_02180770
data_ov61_02180770:
.space 0x4
.global data_ov61_02180774
data_ov61_02180774:
.space 0x4
.global data_ov61_02180778
data_ov61_02180778:
.space 0x4
.global data_ov61_0218077c
data_ov61_0218077c:
.space 0x4
.global data_ov61_02180780
data_ov61_02180780:
.space 0x4
.global data_ov61_02180784
data_ov61_02180784:
.space 0x4
.global data_ov61_02180788
data_ov61_02180788:
.space 0x4
.global data_ov61_0218078c
data_ov61_0218078c:
.space 0x4
.global data_ov61_02180790
data_ov61_02180790:
.space 0x4
.global data_ov61_02180794
data_ov61_02180794:
.space 0x4
.global data_ov61_02180798
data_ov61_02180798:
.space 0x4
.global data_ov61_0218079c
data_ov61_0218079c:
.space 0x4
.global data_ov61_021807a0
data_ov61_021807a0:
.space 0x4
.global data_ov61_021807a4
data_ov61_021807a4:
.space 0x4
.global data_ov61_021807a8
data_ov61_021807a8:
.space 0x4
.global data_ov61_021807ac
data_ov61_021807ac:
.space 0x4
.global data_ov61_021807b0
data_ov61_021807b0:
.space 0x4
.global data_ov61_021807b4
data_ov61_021807b4:
.space 0x4
.global data_ov61_021807b8
data_ov61_021807b8:
.space 0x4
.global data_ov61_021807bc
data_ov61_021807bc:
.space 0x4
.global data_ov61_021807c0
data_ov61_021807c0:
.space 0x4
.global data_ov61_021807c4
data_ov61_021807c4:
.space 0x4
.global data_ov61_021807c8
data_ov61_021807c8:
.space 0x4
.global data_ov61_021807cc
data_ov61_021807cc:
.space 0x4
.global data_ov61_021807d0
data_ov61_021807d0:
.space 0x4
.global data_ov61_021807d4
data_ov61_021807d4:
.space 0x4
.global data_ov61_021807d8
data_ov61_021807d8:
.space 0x4
.global data_ov61_021807dc
data_ov61_021807dc:
.space 0x4
.global data_ov61_021807e0
data_ov61_021807e0:
.space 0x4
.global data_ov61_021807e4
data_ov61_021807e4:
.space 0x4
.global data_ov61_021807e8
data_ov61_021807e8:
.space 0x4
.global data_ov61_021807ec
data_ov61_021807ec:
.space 0x4
.global data_ov61_021807f0
data_ov61_021807f0:
.space 0x4
.global data_ov61_021807f4
data_ov61_021807f4:
.space 0x4
.global data_ov61_021807f8
data_ov61_021807f8:
.space 0x4
.global data_ov61_021807fc
data_ov61_021807fc:
.space 0x4
.global data_ov61_02180800
data_ov61_02180800:
.space 0x4
.global data_ov61_02180804
data_ov61_02180804:
.space 0x4
.global data_ov61_02180808
data_ov61_02180808:
.space 0x4
.global data_ov61_0218080c
data_ov61_0218080c:
.space 0x4
.global data_ov61_02180810
data_ov61_02180810:
.space 0x4
.global data_ov61_02180814
data_ov61_02180814:
.space 0x4
.global data_ov61_02180818
data_ov61_02180818:
.space 0x4
.global data_ov61_0218081c
data_ov61_0218081c:
.space 0x4
.global data_ov61_02180820
data_ov61_02180820:
.space 0x4
.global data_ov61_02180824
data_ov61_02180824:
.space 0x4
.global data_ov61_02180828
data_ov61_02180828:
.space 0x4
.global data_ov61_0218082c
data_ov61_0218082c:
.space 0x4
.global data_ov61_02180830
data_ov61_02180830:
.space 0x4
.global data_ov61_02180834
data_ov61_02180834:
.space 0x4
.global data_ov61_02180838
data_ov61_02180838:
.space 0x4
.global data_ov61_0218083c
data_ov61_0218083c:
.space 0x4
.global data_ov61_02180840
data_ov61_02180840:
.space 0x4
.global data_ov61_02180844
data_ov61_02180844:
.space 0x4
.global data_ov61_02180848
data_ov61_02180848:
.space 0x4
.global data_ov61_0218084c
data_ov61_0218084c:
.space 0x4
.global data_ov61_02180850
data_ov61_02180850:
.space 0x4
.global data_ov61_02180854
data_ov61_02180854:
.space 0x4
.global data_ov61_02180858
data_ov61_02180858:
.space 0x4
.global data_ov61_0218085c
data_ov61_0218085c:
.space 0x4
.global data_ov61_02180860
data_ov61_02180860:
.space 0x4
.global data_ov61_02180864
data_ov61_02180864:
.space 0x4
.global data_ov61_02180868
data_ov61_02180868:
.space 0x4
.global data_ov61_0218086c
data_ov61_0218086c:
.space 0x4
.global data_ov61_02180870
data_ov61_02180870:
.space 0x4
.global data_ov61_02180874
data_ov61_02180874:
.space 0x4
.global data_ov61_02180878
data_ov61_02180878:
.space 0x4
.global data_ov61_0218087c
data_ov61_0218087c:
.space 0x4
.global data_ov61_02180880
data_ov61_02180880:
.space 0x4
.global data_ov61_02180884
data_ov61_02180884:
.space 0x4
.global data_ov61_02180888
data_ov61_02180888:
.space 0x4
.global data_ov61_0218088c
data_ov61_0218088c:
.space 0x4
.global data_ov61_02180890
data_ov61_02180890:
.space 0x4
.global data_ov61_02180894
data_ov61_02180894:
.space 0x4
.global data_ov61_02180898
data_ov61_02180898:
.space 0x4
.global data_ov61_0218089c
data_ov61_0218089c:
.space 0x4
.global data_ov61_021808a0
data_ov61_021808a0:
.space 0x4
.global data_ov61_021808a4
data_ov61_021808a4:
.space 0x4
.global data_ov61_021808a8
data_ov61_021808a8:
.space 0x4
.global data_ov61_021808ac
data_ov61_021808ac:
.space 0x4
.global data_ov61_021808b0
data_ov61_021808b0:
.space 0x4
.global data_ov61_021808b4
data_ov61_021808b4:
.space 0x4
.global data_ov61_021808b8
data_ov61_021808b8:
.space 0x4
.global data_ov61_021808bc
data_ov61_021808bc:
.space 0x4
.global data_ov61_021808c0
data_ov61_021808c0:
.space 0x4
.global data_ov61_021808c4
data_ov61_021808c4:
.space 0x4
.global data_ov61_021808c8
data_ov61_021808c8:
.space 0x4
.global data_ov61_021808cc
data_ov61_021808cc:
.space 0x4
.global data_ov61_021808d0
data_ov61_021808d0:
.space 0x4
.global data_ov61_021808d4
data_ov61_021808d4:
.space 0x4
.global data_ov61_021808d8
data_ov61_021808d8:
.space 0x4
.global data_ov61_021808dc
data_ov61_021808dc:
.space 0x4
.global data_ov61_021808e0
data_ov61_021808e0:
.space 0x4
.global data_ov61_021808e4
data_ov61_021808e4:
.space 0x4
.global data_ov61_021808e8
data_ov61_021808e8:
.space 0x4
.global data_ov61_021808ec
data_ov61_021808ec:
.space 0x4
.global data_ov61_021808f0
data_ov61_021808f0:
.space 0x4
.global data_ov61_021808f4
data_ov61_021808f4:
.space 0x4
.global data_ov61_021808f8
data_ov61_021808f8:
.space 0x4
.global data_ov61_021808fc
data_ov61_021808fc:
.space 0x4
.global data_ov61_02180900
data_ov61_02180900:
.space 0x4
.global data_ov61_02180904
data_ov61_02180904:
.space 0x4
.global data_ov61_02180908
data_ov61_02180908:
.space 0x4
.global data_ov61_0218090c
data_ov61_0218090c:
.space 0x4
.global data_ov61_02180910
data_ov61_02180910:
.space 0x4
.global data_ov61_02180914
data_ov61_02180914:
.space 0x4
.global data_ov61_02180918
data_ov61_02180918:
.space 0x4
.global data_ov61_0218091c
data_ov61_0218091c:
.space 0x4
.global data_ov61_02180920
data_ov61_02180920:
.space 0x4
.global data_ov61_02180924
data_ov61_02180924:
.space 0x4
.global data_ov61_02180928
data_ov61_02180928:
.space 0x4
.global data_ov61_0218092c
data_ov61_0218092c:
.space 0x4
.global data_ov61_02180930
data_ov61_02180930:
.space 0x4
.global data_ov61_02180934
data_ov61_02180934:
.space 0x4
.global data_ov61_02180938
data_ov61_02180938:
.space 0x4
.global data_ov61_0218093c
data_ov61_0218093c:
.space 0x4
.global data_ov61_02180940
data_ov61_02180940:
.space 0x4
.global data_ov61_02180944
data_ov61_02180944:
.space 0x4
.global data_ov61_02180948
data_ov61_02180948:
.space 0x4
.global data_ov61_0218094c
data_ov61_0218094c:
.space 0x4
.global data_ov61_02180950
data_ov61_02180950:
.space 0x4
.global data_ov61_02180954
data_ov61_02180954:
.space 0x4
.global data_ov61_02180958
data_ov61_02180958:
.space 0x4
.global data_ov61_0218095c
data_ov61_0218095c:
.space 0x4
.global data_ov61_02180960
data_ov61_02180960:
.space 0x4
.global data_ov61_02180964
data_ov61_02180964:
.space 0x4
.global data_ov61_02180968
data_ov61_02180968:
.space 0x4
.global data_ov61_0218096c
data_ov61_0218096c:
.space 0x4
.global data_ov61_02180970
data_ov61_02180970:
.space 0x4
.global data_ov61_02180974
data_ov61_02180974:
.space 0x4
.global data_ov61_02180978
data_ov61_02180978:
.space 0x4
.global data_ov61_0218097c
data_ov61_0218097c:
.space 0x4
.global data_ov61_02180980
data_ov61_02180980:
.space 0x4
.global data_ov61_02180984
data_ov61_02180984:
.space 0x4
.global data_ov61_02180988
data_ov61_02180988:
.space 0x4
.global data_ov61_0218098c
data_ov61_0218098c:
.space 0x4
.global data_ov61_02180990
data_ov61_02180990:
.space 0x4
.global data_ov61_02180994
data_ov61_02180994:
.space 0x4
.global data_ov61_02180998
data_ov61_02180998:
.space 0x4
.global data_ov61_0218099c
data_ov61_0218099c:
.space 0x4
.global data_ov61_021809a0
data_ov61_021809a0:
.space 0x4
.global data_ov61_021809a4
data_ov61_021809a4:
.space 0x4
.global data_ov61_021809a8
data_ov61_021809a8:
.space 0x4
.global data_ov61_021809ac
data_ov61_021809ac:
.space 0x4
.global data_ov61_021809b0
data_ov61_021809b0:
.space 0x4
.global data_ov61_021809b4
data_ov61_021809b4:
.space 0x4
.global data_ov61_021809b8
data_ov61_021809b8:
.space 0x4
.global data_ov61_021809bc
data_ov61_021809bc:
.space 0x4
.global data_ov61_021809c0
data_ov61_021809c0:
.space 0x4
.global data_ov61_021809c4
data_ov61_021809c4:
.space 0x4
.global data_ov61_021809c8
data_ov61_021809c8:
.space 0x4
.global data_ov61_021809cc
data_ov61_021809cc:
.space 0x4
.global data_ov61_021809d0
data_ov61_021809d0:
.space 0x4
.global data_ov61_021809d4
data_ov61_021809d4:
.space 0x4
.global data_ov61_021809d8
data_ov61_021809d8:
.space 0x4
.global data_ov61_021809dc
data_ov61_021809dc:
.space 0x4
.global data_ov61_021809e0
data_ov61_021809e0:
.space 0x4
.global data_ov61_021809e4
data_ov61_021809e4:
.space 0x4
.global data_ov61_021809e8
data_ov61_021809e8:
.space 0x4
.global data_ov61_021809ec
data_ov61_021809ec:
.space 0x4
.global data_ov61_021809f0
data_ov61_021809f0:
.space 0x4
.global data_ov61_021809f4
data_ov61_021809f4:
.space 0x4
.global data_ov61_021809f8
data_ov61_021809f8:
.space 0x4
.global data_ov61_021809fc
data_ov61_021809fc:
.space 0x4
.global data_ov61_02180a00
data_ov61_02180a00:
.space 0x4
.global data_ov61_02180a04
data_ov61_02180a04:
.space 0x4
.global data_ov61_02180a08
data_ov61_02180a08:
.space 0x4
.global data_ov61_02180a0c
data_ov61_02180a0c:
.space 0x4
.global data_ov61_02180a10
data_ov61_02180a10:
.space 0x4
.global data_ov61_02180a14
data_ov61_02180a14:
.space 0x4
.global data_ov61_02180a18
data_ov61_02180a18:
.space 0x4
.global data_ov61_02180a1c
data_ov61_02180a1c:
.space 0x4
.global data_ov61_02180a20
data_ov61_02180a20:
.space 0x4
.global data_ov61_02180a24
data_ov61_02180a24:
.space 0x4
.global data_ov61_02180a28
data_ov61_02180a28:
.space 0x4
.global data_ov61_02180a2c
data_ov61_02180a2c:
.space 0x4
.global data_ov61_02180a30
data_ov61_02180a30:
.space 0x4
.global data_ov61_02180a34
data_ov61_02180a34:
.space 0x4
.global data_ov61_02180a38
data_ov61_02180a38:
.space 0x4
.global data_ov61_02180a3c
data_ov61_02180a3c:
.space 0x4
.global data_ov61_02180a40
data_ov61_02180a40:
.space 0x4
.global data_ov61_02180a44
data_ov61_02180a44:
.space 0x4
.global data_ov61_02180a48
data_ov61_02180a48:
.space 0x4
.global data_ov61_02180a4c
data_ov61_02180a4c:
.space 0x4
.global data_ov61_02180a50
data_ov61_02180a50:
.space 0x4
.global data_ov61_02180a54
data_ov61_02180a54:
.space 0x4
.global data_ov61_02180a58
data_ov61_02180a58:
.space 0x4
.global data_ov61_02180a5c
data_ov61_02180a5c:
.space 0x4
.global data_ov61_02180a60
data_ov61_02180a60:
.space 0x4
.global data_ov61_02180a64
data_ov61_02180a64:
.space 0x4
.global data_ov61_02180a68
data_ov61_02180a68:
.space 0x4
.global data_ov61_02180a6c
data_ov61_02180a6c:
.space 0x4
.global data_ov61_02180a70
data_ov61_02180a70:
.space 0x4
.global data_ov61_02180a74
data_ov61_02180a74:
.space 0x4
.global data_ov61_02180a78
data_ov61_02180a78:
.space 0x4
.global data_ov61_02180a7c
data_ov61_02180a7c:
.space 0x4
.global data_ov61_02180a80
data_ov61_02180a80:
.space 0x4
.global data_ov61_02180a84
data_ov61_02180a84:
.space 0x4
.global data_ov61_02180a88
data_ov61_02180a88:
.space 0x4
.global data_ov61_02180a8c
data_ov61_02180a8c:
.space 0x4
.global data_ov61_02180a90
data_ov61_02180a90:
.space 0x4
.global data_ov61_02180a94
data_ov61_02180a94:
.space 0x4
.global data_ov61_02180a98
data_ov61_02180a98:
.space 0x4
.global data_ov61_02180a9c
data_ov61_02180a9c:
.space 0x4
.global data_ov61_02180aa0
data_ov61_02180aa0:
.space 0x4
.global data_ov61_02180aa4
data_ov61_02180aa4:
.space 0x4
.global data_ov61_02180aa8
data_ov61_02180aa8:
.space 0x4
.global data_ov61_02180aac
data_ov61_02180aac:
.space 0x4
.global data_ov61_02180ab0
data_ov61_02180ab0:
.space 0x4
.global data_ov61_02180ab4
data_ov61_02180ab4:
.space 0x4
.global data_ov61_02180ab8
data_ov61_02180ab8:
.space 0x4
.global data_ov61_02180abc
data_ov61_02180abc:
.space 0x4
.global data_ov61_02180ac0
data_ov61_02180ac0:
.space 0x4
.global data_ov61_02180ac4
data_ov61_02180ac4:
.space 0x4
.global data_ov61_02180ac8
data_ov61_02180ac8:
.space 0x4
.global data_ov61_02180acc
data_ov61_02180acc:
.space 0x4
.global data_ov61_02180ad0
data_ov61_02180ad0:
.space 0x4
.global data_ov61_02180ad4
data_ov61_02180ad4:
.space 0x4
.global data_ov61_02180ad8
data_ov61_02180ad8:
.space 0x4
.global data_ov61_02180adc
data_ov61_02180adc:
.space 0x4
.global data_ov61_02180ae0
data_ov61_02180ae0:
.space 0x4
.global data_ov61_02180ae4
data_ov61_02180ae4:
.space 0x4
.global data_ov61_02180ae8
data_ov61_02180ae8:
.space 0x4
.global data_ov61_02180aec
data_ov61_02180aec:
.space 0x4
.global data_ov61_02180af0
data_ov61_02180af0:
.space 0x4
.global data_ov61_02180af4
data_ov61_02180af4:
.space 0x4
.global data_ov61_02180af8
data_ov61_02180af8:
.space 0x4
.global data_ov61_02180afc
data_ov61_02180afc:
.space 0x4
.global data_ov61_02180b00
data_ov61_02180b00:
.space 0x4
.global data_ov61_02180b04
data_ov61_02180b04:
.space 0x4
.global data_ov61_02180b08
data_ov61_02180b08:
.space 0x4
.global data_ov61_02180b0c
data_ov61_02180b0c:
.space 0x4
.global data_ov61_02180b10
data_ov61_02180b10:
.space 0x4
.global data_ov61_02180b14
data_ov61_02180b14:
.space 0x4
.global data_ov61_02180b18
data_ov61_02180b18:
.space 0x4
.global data_ov61_02180b1c
data_ov61_02180b1c:
.space 0x4
.global data_ov61_02180b20
data_ov61_02180b20:
.space 0x4
.global data_ov61_02180b24
data_ov61_02180b24:
.space 0x4
.global data_ov61_02180b28
data_ov61_02180b28:
.space 0x4
.global data_ov61_02180b2c
data_ov61_02180b2c:
.space 0x4
.global data_ov61_02180b30
data_ov61_02180b30:
.space 0x4
.global data_ov61_02180b34
data_ov61_02180b34:
.space 0x4
.global data_ov61_02180b38
data_ov61_02180b38:
.space 0x4
.global data_ov61_02180b3c
data_ov61_02180b3c:
.space 0x4
.global data_ov61_02180b40
data_ov61_02180b40:
.space 0x4
.global data_ov61_02180b44
data_ov61_02180b44:
.space 0x4
.global data_ov61_02180b48
data_ov61_02180b48:
.space 0x4
.global data_ov61_02180b4c
data_ov61_02180b4c:
.space 0x4
.global data_ov61_02180b50
data_ov61_02180b50:
.space 0x4
.global data_ov61_02180b54
data_ov61_02180b54:
.space 0x4
.global data_ov61_02180b58
data_ov61_02180b58:
.space 0x4
.global data_ov61_02180b5c
data_ov61_02180b5c:
.space 0x4
.global data_ov61_02180b60
data_ov61_02180b60:
.space 0x4
.global data_ov61_02180b64
data_ov61_02180b64:
.space 0x4
.global data_ov61_02180b68
data_ov61_02180b68:
.space 0x4
.global data_ov61_02180b6c
data_ov61_02180b6c:
.space 0x4
.global data_ov61_02180b70
data_ov61_02180b70:
.space 0x4
.global data_ov61_02180b74
data_ov61_02180b74:
.space 0x4
.global data_ov61_02180b78
data_ov61_02180b78:
.space 0x4
.global data_ov61_02180b7c
data_ov61_02180b7c:
.space 0x4
.global data_ov61_02180b80
data_ov61_02180b80:
.space 0x4
.global data_ov61_02180b84
data_ov61_02180b84:
.space 0x4
.global data_ov61_02180b88
data_ov61_02180b88:
.space 0x4
.global data_ov61_02180b8c
data_ov61_02180b8c:
.space 0x4
.global data_ov61_02180b90
data_ov61_02180b90:
.space 0x4
.global data_ov61_02180b94
data_ov61_02180b94:
.space 0x4
.global data_ov61_02180b98
data_ov61_02180b98:
.space 0x4
.global data_ov61_02180b9c
data_ov61_02180b9c:
.space 0x4
.global data_ov61_02180ba0
data_ov61_02180ba0:
.space 0x4
.global data_ov61_02180ba4
data_ov61_02180ba4:
.space 0x4
.global data_ov61_02180ba8
data_ov61_02180ba8:
.space 0x4
.global data_ov61_02180bac
data_ov61_02180bac:
.space 0x4
.global data_ov61_02180bb0
data_ov61_02180bb0:
.space 0x4
.global data_ov61_02180bb4
data_ov61_02180bb4:
.space 0x4
.global data_ov61_02180bb8
data_ov61_02180bb8:
.space 0x4
.global data_ov61_02180bbc
data_ov61_02180bbc:
.space 0x4
.global data_ov61_02180bc0
data_ov61_02180bc0:
.space 0x4
.global data_ov61_02180bc4
data_ov61_02180bc4:
.space 0x4
.global data_ov61_02180bc8
data_ov61_02180bc8:
.space 0x4
.global data_ov61_02180bcc
data_ov61_02180bcc:
.space 0x4
.global data_ov61_02180bd0
data_ov61_02180bd0:
.space 0x4
.global data_ov61_02180bd4
data_ov61_02180bd4:
.space 0x4
.global data_ov61_02180bd8
data_ov61_02180bd8:
.space 0x4
.global data_ov61_02180bdc
data_ov61_02180bdc:
.space 0x4
.global data_ov61_02180be0
data_ov61_02180be0:
.space 0x4
.global data_ov61_02180be4
data_ov61_02180be4:
.space 0x4
.global data_ov61_02180be8
data_ov61_02180be8:
.space 0x4
.global data_ov61_02180bec
data_ov61_02180bec:
.space 0x4
.global data_ov61_02180bf0
data_ov61_02180bf0:
.space 0x4
.global data_ov61_02180bf4
data_ov61_02180bf4:
.space 0x4
.global data_ov61_02180bf8
data_ov61_02180bf8:
.space 0x4
.global data_ov61_02180bfc
data_ov61_02180bfc:
.space 0x4
.global data_ov61_02180c00
data_ov61_02180c00:
.space 0x4
.global data_ov61_02180c04
data_ov61_02180c04:
.space 0x4
.global data_ov61_02180c08
data_ov61_02180c08:
.space 0x4
.global data_ov61_02180c0c
data_ov61_02180c0c:
.space 0x4
.global data_ov61_02180c10
data_ov61_02180c10:
.space 0x4
.global data_ov61_02180c14
data_ov61_02180c14:
.space 0x4
.global data_ov61_02180c18
data_ov61_02180c18:
.space 0x4
.global data_ov61_02180c1c
data_ov61_02180c1c:
.space 0x4
.global data_ov61_02180c20
data_ov61_02180c20:
.space 0x4
.global data_ov61_02180c24
data_ov61_02180c24:
.space 0x4
.global data_ov61_02180c28
data_ov61_02180c28:
.space 0x4
.global data_ov61_02180c2c
data_ov61_02180c2c:
.space 0x4
.global data_ov61_02180c30
data_ov61_02180c30:
.space 0x4
.global data_ov61_02180c34
data_ov61_02180c34:
.space 0x4
.global data_ov61_02180c38
data_ov61_02180c38:
.space 0x4
.global data_ov61_02180c3c
data_ov61_02180c3c:
.space 0x4
.global data_ov61_02180c40
data_ov61_02180c40:
.space 0x4
.global data_ov61_02180c44
data_ov61_02180c44:
.space 0x4
.global data_ov61_02180c48
data_ov61_02180c48:
.space 0x4
.global data_ov61_02180c4c
data_ov61_02180c4c:
.space 0x4
.global data_ov61_02180c50
data_ov61_02180c50:
.space 0x4
.global data_ov61_02180c54
data_ov61_02180c54:
.space 0x4
.global data_ov61_02180c58
data_ov61_02180c58:
.space 0x4
.global data_ov61_02180c5c
data_ov61_02180c5c:
.space 0x4
.global data_ov61_02180c60
data_ov61_02180c60:
.space 0x4
.global data_ov61_02180c64
data_ov61_02180c64:
.space 0x4
.global data_ov61_02180c68
data_ov61_02180c68:
.space 0x4
.global data_ov61_02180c6c
data_ov61_02180c6c:
.space 0x4
.global data_ov61_02180c70
data_ov61_02180c70:
.space 0x4
.global data_ov61_02180c74
data_ov61_02180c74:
.space 0x4
.global data_ov61_02180c78
data_ov61_02180c78:
.space 0x4
.global data_ov61_02180c7c
data_ov61_02180c7c:
.space 0x4
.global data_ov61_02180c80
data_ov61_02180c80:
.space 0x4
.global data_ov61_02180c84
data_ov61_02180c84:
.space 0x4
.global data_ov61_02180c88
data_ov61_02180c88:
.space 0x4
.global data_ov61_02180c8c
data_ov61_02180c8c:
.space 0x4
.global data_ov61_02180c90
data_ov61_02180c90:
.space 0x4
.global data_ov61_02180c94
data_ov61_02180c94:
.space 0x4
.global data_ov61_02180c98
data_ov61_02180c98:
.space 0x4
.global data_ov61_02180c9c
data_ov61_02180c9c:
.space 0x4
.global data_ov61_02180ca0
data_ov61_02180ca0:
.space 0x4
.global data_ov61_02180ca4
data_ov61_02180ca4:
.space 0x4
.global data_ov61_02180ca8
data_ov61_02180ca8:
.space 0x4
.global data_ov61_02180cac
data_ov61_02180cac:
.space 0x4
.global data_ov61_02180cb0
data_ov61_02180cb0:
.space 0x4
.global data_ov61_02180cb4
data_ov61_02180cb4:
.space 0x4
.global data_ov61_02180cb8
data_ov61_02180cb8:
.space 0x4
.global data_ov61_02180cbc
data_ov61_02180cbc:
.space 0x4
.global data_ov61_02180cc0
data_ov61_02180cc0:
.space 0x4
.global data_ov61_02180cc4
data_ov61_02180cc4:
.space 0x4
.global data_ov61_02180cc8
data_ov61_02180cc8:
.space 0x4
.global data_ov61_02180ccc
data_ov61_02180ccc:
.space 0x4
.global data_ov61_02180cd0
data_ov61_02180cd0:
.space 0x4
.global data_ov61_02180cd4
data_ov61_02180cd4:
.space 0x4
.global data_ov61_02180cd8
data_ov61_02180cd8:
.space 0x4
.global data_ov61_02180cdc
data_ov61_02180cdc:
.space 0x2
.global data_ov61_02180cde
data_ov61_02180cde:
.space 0x2
.global data_ov61_02180ce0
data_ov61_02180ce0:
.space 0x4
.global data_ov61_02180ce4
data_ov61_02180ce4:
.space 0x4
.global data_ov61_02180ce8
data_ov61_02180ce8:
.space 0x4
.global data_ov61_02180cec
data_ov61_02180cec:
.space 0x4
.global data_ov61_02180cf0
data_ov61_02180cf0:
.space 0x4
.global data_ov61_02180cf4
data_ov61_02180cf4:
.space 0x4
.global data_ov61_02180cf8
data_ov61_02180cf8:
.space 0x4
.global data_ov61_02180cfc
data_ov61_02180cfc:
.space 0x4
.global data_ov61_02180d00
data_ov61_02180d00:
.space 0x4
.global data_ov61_02180d04
data_ov61_02180d04:
.space 0x4
.global data_ov61_02180d08
data_ov61_02180d08:
.space 0x4
.global data_ov61_02180d0c
data_ov61_02180d0c:
.space 0x4
.global data_ov61_02180d10
data_ov61_02180d10:
.space 0x4
.global data_ov61_02180d14
data_ov61_02180d14:
.space 0x4
.global data_ov61_02180d18
data_ov61_02180d18:
.space 0x4
.global data_ov61_02180d1c
data_ov61_02180d1c:
.space 0x4
.global data_ov61_02180d20
data_ov61_02180d20:
.space 0x4
.global data_ov61_02180d24
data_ov61_02180d24:
.space 0x4
.global data_ov61_02180d28
data_ov61_02180d28:
.space 0x4
.global data_ov61_02180d2c
data_ov61_02180d2c:
.space 0x4
.global data_ov61_02180d30
data_ov61_02180d30:
.space 0x4
.global data_ov61_02180d34
data_ov61_02180d34:
.space 0x4
.global data_ov61_02180d38
data_ov61_02180d38:
.space 0x4
.global data_ov61_02180d3c
data_ov61_02180d3c:
.space 0x4
.global data_ov61_02180d40
data_ov61_02180d40:
.space 0x4
.global data_ov61_02180d44
data_ov61_02180d44:
.space 0x4
.global data_ov61_02180d48
data_ov61_02180d48:
.space 0x4
.global data_ov61_02180d4c
data_ov61_02180d4c:
.space 0x4
.global data_ov61_02180d50
data_ov61_02180d50:
.space 0x4
.global data_ov61_02180d54
data_ov61_02180d54:
.space 0x4
.global data_ov61_02180d58
data_ov61_02180d58:
.space 0x4
.global data_ov61_02180d5c
data_ov61_02180d5c:
.space 0x4
.global data_ov61_02180d60
data_ov61_02180d60:
.space 0x4
.global data_ov61_02180d64
data_ov61_02180d64:
.space 0x4
.global data_ov61_02180d68
data_ov61_02180d68:
.space 0x4
.global data_ov61_02180d6c
data_ov61_02180d6c:
.space 0x4
.global data_ov61_02180d70
data_ov61_02180d70:
.space 0x4
.global data_ov61_02180d74
data_ov61_02180d74:
.space 0x4
.global data_ov61_02180d78
data_ov61_02180d78:
.space 0x4
.global data_ov61_02180d7c
data_ov61_02180d7c:
.space 0x4
.global data_ov61_02180d80
data_ov61_02180d80:
.space 0x4
.global data_ov61_02180d84
data_ov61_02180d84:
.space 0x4
.global data_ov61_02180d88
data_ov61_02180d88:
.space 0x4
.global data_ov61_02180d8c
data_ov61_02180d8c:
.space 0x4
.global data_ov61_02180d90
data_ov61_02180d90:
.space 0x4
.global data_ov61_02180d94
data_ov61_02180d94:
.space 0x4
.global data_ov61_02180d98
data_ov61_02180d98:
.space 0x4
.global data_ov61_02180d9c
data_ov61_02180d9c:
.space 0x4
.global data_ov61_02180da0
data_ov61_02180da0:
.space 0x4
.global data_ov61_02180da4
data_ov61_02180da4:
.space 0x4
.global data_ov61_02180da8
data_ov61_02180da8:
.space 0x4
.global data_ov61_02180dac
data_ov61_02180dac:
.space 0x4
.global data_ov61_02180db0
data_ov61_02180db0:
.space 0x4
.global data_ov61_02180db4
data_ov61_02180db4:
.space 0x4
.global data_ov61_02180db8
data_ov61_02180db8:
.space 0x4
.global data_ov61_02180dbc
data_ov61_02180dbc:
.space 0x4
.global data_ov61_02180dc0
data_ov61_02180dc0:
.space 0x4
.global data_ov61_02180dc4
data_ov61_02180dc4:
.space 0x4
.global data_ov61_02180dc8
data_ov61_02180dc8:
.space 0x4
.global data_ov61_02180dcc
data_ov61_02180dcc:
.space 0x4
.global data_ov61_02180dd0
data_ov61_02180dd0:
.space 0x4
.global data_ov61_02180dd4
data_ov61_02180dd4:
.space 0x4
.global data_ov61_02180dd8
data_ov61_02180dd8:
.space 0x4
.global data_ov61_02180ddc
data_ov61_02180ddc:
.space 0x4
.global data_ov61_02180de0
data_ov61_02180de0:
.space 0x4
.global data_ov61_02180de4
data_ov61_02180de4:
.space 0x4
.global data_ov61_02180de8
data_ov61_02180de8:
.space 0x4
.global data_ov61_02180dec
data_ov61_02180dec:
.space 0x4
.global data_ov61_02180df0
data_ov61_02180df0:
.space 0x4
.global data_ov61_02180df4
data_ov61_02180df4:
.space 0x4
.global data_ov61_02180df8
data_ov61_02180df8:
.space 0x4
.global data_ov61_02180dfc
data_ov61_02180dfc:
.space 0x4
.global data_ov61_02180e00
data_ov61_02180e00:
.space 0x4
.global data_ov61_02180e04
data_ov61_02180e04:
.space 0x4
.global data_ov61_02180e08
data_ov61_02180e08:
.space 0x4
.global data_ov61_02180e0c
data_ov61_02180e0c:
.space 0x4
.global data_ov61_02180e10
data_ov61_02180e10:
.space 0x4
.global data_ov61_02180e14
data_ov61_02180e14:
.space 0x4
.global data_ov61_02180e18
data_ov61_02180e18:
.space 0x4
.global data_ov61_02180e1c
data_ov61_02180e1c:
.space 0x4
.global data_ov61_02180e20
data_ov61_02180e20:
.space 0x4
.global data_ov61_02180e24
data_ov61_02180e24:
.space 0x4
.global data_ov61_02180e28
data_ov61_02180e28:
.space 0x4
.global data_ov61_02180e2c
data_ov61_02180e2c:
.space 0x4
.global data_ov61_02180e30
data_ov61_02180e30:
.space 0x4
.global data_ov61_02180e34
data_ov61_02180e34:
.space 0x4
.global data_ov61_02180e38
data_ov61_02180e38:
.space 0x4
.global data_ov61_02180e3c
data_ov61_02180e3c:
.space 0x4
.global data_ov61_02180e40
data_ov61_02180e40:
.space 0x4
.global data_ov61_02180e44
data_ov61_02180e44:
.space 0x4
.global data_ov61_02180e48
data_ov61_02180e48:
.space 0x4
.global data_ov61_02180e4c
data_ov61_02180e4c:
.space 0x4
.global data_ov61_02180e50
data_ov61_02180e50:
.space 0x4
.global data_ov61_02180e54
data_ov61_02180e54:
.space 0x4
.global data_ov61_02180e58
data_ov61_02180e58:
.space 0x4
.global data_ov61_02180e5c
data_ov61_02180e5c:
.space 0x4
.global data_ov61_02180e60
data_ov61_02180e60:
.space 0x4
.global data_ov61_02180e64
data_ov61_02180e64:
.space 0x4
.global data_ov61_02180e68
data_ov61_02180e68:
.space 0x4
.global data_ov61_02180e6c
data_ov61_02180e6c:
.space 0x4
.global data_ov61_02180e70
data_ov61_02180e70:
.space 0x4
.global data_ov61_02180e74
data_ov61_02180e74:
.space 0x4
.global data_ov61_02180e78
data_ov61_02180e78:
.space 0x4
.global data_ov61_02180e7c
data_ov61_02180e7c:
.space 0x4
.global data_ov61_02180e80
data_ov61_02180e80:
.space 0x4
.global data_ov61_02180e84
data_ov61_02180e84:
.space 0x4
.global data_ov61_02180e88
data_ov61_02180e88:
.space 0x4
.global data_ov61_02180e8c
data_ov61_02180e8c:
.space 0x4
.global data_ov61_02180e90
data_ov61_02180e90:
.space 0x4
.global data_ov61_02180e94
data_ov61_02180e94:
.space 0x4
.global data_ov61_02180e98
data_ov61_02180e98:
.space 0x4
.global data_ov61_02180e9c
data_ov61_02180e9c:
.space 0x4
.global data_ov61_02180ea0
data_ov61_02180ea0:
.space 0x2
.global data_ov61_02180ea2
data_ov61_02180ea2:
.space 0x2
.global data_ov61_02180ea4
data_ov61_02180ea4:
.space 0x2
.global data_ov61_02180ea6
data_ov61_02180ea6:
.space 0x2
.global data_ov61_02180ea8
data_ov61_02180ea8:
.space 0x2
.global data_ov61_02180eaa
data_ov61_02180eaa:
.space 0x2
.global data_ov61_02180eac
data_ov61_02180eac:
.space 0x2
.global data_ov61_02180eae
data_ov61_02180eae:
.space 0x2
.global data_ov61_02180eb0
data_ov61_02180eb0:
.space 0x2
.global data_ov61_02180eb2
data_ov61_02180eb2:
.space 0x2
.global data_ov61_02180eb4
data_ov61_02180eb4:
.space 0x2
.global data_ov61_02180eb6
data_ov61_02180eb6:
.space 0x2
.global data_ov61_02180eb8
data_ov61_02180eb8:
.space 0x2
.global data_ov61_02180eba
data_ov61_02180eba:
.space 0x2
.global data_ov61_02180ebc
data_ov61_02180ebc:
.space 0x2
.global data_ov61_02180ebe
data_ov61_02180ebe:
.space 0x2
.global data_ov61_02180ec0
data_ov61_02180ec0:
.space 0x2
.global data_ov61_02180ec2
data_ov61_02180ec2:
.space 0x2
.global data_ov61_02180ec4
data_ov61_02180ec4:
.space 0x2
.global data_ov61_02180ec6
data_ov61_02180ec6:
.space 0x2
.global data_ov61_02180ec8
data_ov61_02180ec8:
.space 0x2
.global data_ov61_02180eca
data_ov61_02180eca:
.space 0x2
.global data_ov61_02180ecc
data_ov61_02180ecc:
.space 0x2
.global data_ov61_02180ece
data_ov61_02180ece:
.space 0x2
.global data_ov61_02180ed0
data_ov61_02180ed0:
.space 0x2
.global data_ov61_02180ed2
data_ov61_02180ed2:
.space 0x2
.global data_ov61_02180ed4
data_ov61_02180ed4:
.space 0x2
.global data_ov61_02180ed6
data_ov61_02180ed6:
.space 0x2
.global data_ov61_02180ed8
data_ov61_02180ed8:
.space 0x2
.global data_ov61_02180eda
data_ov61_02180eda:
.space 0x2
.global data_ov61_02180edc
data_ov61_02180edc:
.space 0x2
.global data_ov61_02180ede
data_ov61_02180ede:
.space 0x2
.global data_ov61_02180ee0
data_ov61_02180ee0:
.space 0x2
.global data_ov61_02180ee2
data_ov61_02180ee2:
.space 0x2
.global data_ov61_02180ee4
data_ov61_02180ee4:
.space 0x2
.global data_ov61_02180ee6
data_ov61_02180ee6:
.space 0x2
.global data_ov61_02180ee8
data_ov61_02180ee8:
.space 0x2
.global data_ov61_02180eea
data_ov61_02180eea:
.space 0x2
.global data_ov61_02180eec
data_ov61_02180eec:
.space 0x2
.global data_ov61_02180eee
data_ov61_02180eee:
.space 0x2
.global data_ov61_02180ef0
data_ov61_02180ef0:
.space 0x2
.global data_ov61_02180ef2
data_ov61_02180ef2:
.space 0x2
.global data_ov61_02180ef4
data_ov61_02180ef4:
.space 0x2
.global data_ov61_02180ef6
data_ov61_02180ef6:
.space 0x2
.global data_ov61_02180ef8
data_ov61_02180ef8:
.space 0x2
.global data_ov61_02180efa
data_ov61_02180efa:
.space 0x2
.global data_ov61_02180efc
data_ov61_02180efc:
.space 0x2
.global data_ov61_02180efe
data_ov61_02180efe:
.space 0x2
.global data_ov61_02180f00
data_ov61_02180f00:
.space 0x2
.global data_ov61_02180f02
data_ov61_02180f02:
.space 0x2
.global data_ov61_02180f04
data_ov61_02180f04:
.space 0x2
.global data_ov61_02180f06
data_ov61_02180f06:
.space 0x2
.global data_ov61_02180f08
data_ov61_02180f08:
.space 0x2
.global data_ov61_02180f0a
data_ov61_02180f0a:
.space 0x2
.global data_ov61_02180f0c
data_ov61_02180f0c:
.space 0x2
.global data_ov61_02180f0e
data_ov61_02180f0e:
.space 0x2
.global data_ov61_02180f10
data_ov61_02180f10:
.space 0x2
.global data_ov61_02180f12
data_ov61_02180f12:
.space 0x2
.global data_ov61_02180f14
data_ov61_02180f14:
.space 0x2
.global data_ov61_02180f16
data_ov61_02180f16:
.space 0x2
.global data_ov61_02180f18
data_ov61_02180f18:
.space 0x2
.global data_ov61_02180f1a
data_ov61_02180f1a:
.space 0x2
.global data_ov61_02180f1c
data_ov61_02180f1c:
.space 0x2
.global data_ov61_02180f1e
data_ov61_02180f1e:
.space 0x2
.global data_ov61_02180f20
data_ov61_02180f20:
.space 0x2
.global data_ov61_02180f22
data_ov61_02180f22:
.space 0x2
.global data_ov61_02180f24
data_ov61_02180f24:
.space 0x2
.global data_ov61_02180f26
data_ov61_02180f26:
.space 0x2
.global data_ov61_02180f28
data_ov61_02180f28:
.space 0x2
.global data_ov61_02180f2a
data_ov61_02180f2a:
.space 0x2
.global data_ov61_02180f2c
data_ov61_02180f2c:
.space 0x2
.global data_ov61_02180f2e
data_ov61_02180f2e:
.space 0x2
.global data_ov61_02180f30
data_ov61_02180f30:
.space 0x2
.global data_ov61_02180f32
data_ov61_02180f32:
.space 0x2
.global data_ov61_02180f34
data_ov61_02180f34:
.space 0x2
.global data_ov61_02180f36
data_ov61_02180f36:
.space 0x2
.global data_ov61_02180f38
data_ov61_02180f38:
.space 0x2
.global data_ov61_02180f3a
data_ov61_02180f3a:
.space 0x2
.global data_ov61_02180f3c
data_ov61_02180f3c:
.space 0x2
.global data_ov61_02180f3e
data_ov61_02180f3e:
.space 0x2
.global data_ov61_02180f40
data_ov61_02180f40:
.space 0x2
.global data_ov61_02180f42
data_ov61_02180f42:
.space 0x2
.global data_ov61_02180f44
data_ov61_02180f44:
.space 0x2
.global data_ov61_02180f46
data_ov61_02180f46:
.space 0x2
.global data_ov61_02180f48
data_ov61_02180f48:
.space 0x2
.global data_ov61_02180f4a
data_ov61_02180f4a:
.space 0x2
.global data_ov61_02180f4c
data_ov61_02180f4c:
.space 0x2
.global data_ov61_02180f4e
data_ov61_02180f4e:
.space 0x2
.global data_ov61_02180f50
data_ov61_02180f50:
.space 0x2
.global data_ov61_02180f52
data_ov61_02180f52:
.space 0x2
.global data_ov61_02180f54
data_ov61_02180f54:
.space 0x2
.global data_ov61_02180f56
data_ov61_02180f56:
.space 0x2
.global data_ov61_02180f58
data_ov61_02180f58:
.space 0x2
.global data_ov61_02180f5a
data_ov61_02180f5a:
.space 0x2
.global data_ov61_02180f5c
data_ov61_02180f5c:
.space 0x2
.global data_ov61_02180f5e
data_ov61_02180f5e:
.space 0x2
.global data_ov61_02180f60
data_ov61_02180f60:
.space 0x2
.global data_ov61_02180f62
data_ov61_02180f62:
.space 0x2
.global data_ov61_02180f64
data_ov61_02180f64:
.space 0x2
.global data_ov61_02180f66
data_ov61_02180f66:
.space 0x2
.global data_ov61_02180f68
data_ov61_02180f68:
.space 0x2
.global data_ov61_02180f6a
data_ov61_02180f6a:
.space 0x2
.global data_ov61_02180f6c
data_ov61_02180f6c:
.space 0x2
.global data_ov61_02180f6e
data_ov61_02180f6e:
.space 0x2
.global data_ov61_02180f70
data_ov61_02180f70:
.space 0x2
.global data_ov61_02180f72
data_ov61_02180f72:
.space 0x2
.global data_ov61_02180f74
data_ov61_02180f74:
.space 0x2
.global data_ov61_02180f76
data_ov61_02180f76:
.space 0x2
.global data_ov61_02180f78
data_ov61_02180f78:
.space 0x2
.global data_ov61_02180f7a
data_ov61_02180f7a:
.space 0x2
.global data_ov61_02180f7c
data_ov61_02180f7c:
.space 0x2
.global data_ov61_02180f7e
data_ov61_02180f7e:
.space 0x2
.global data_ov61_02180f80
data_ov61_02180f80:
.space 0x2
.global data_ov61_02180f82
data_ov61_02180f82:
.space 0x2
.global data_ov61_02180f84
data_ov61_02180f84:
.space 0x2
.global data_ov61_02180f86
data_ov61_02180f86:
.space 0x2
.global data_ov61_02180f88
data_ov61_02180f88:
.space 0x2
.global data_ov61_02180f8a
data_ov61_02180f8a:
.space 0x2
.global data_ov61_02180f8c
data_ov61_02180f8c:
.space 0x2
.global data_ov61_02180f8e
data_ov61_02180f8e:
.space 0x2
.global data_ov61_02180f90
data_ov61_02180f90:
.space 0x2
.global data_ov61_02180f92
data_ov61_02180f92:
.space 0x2
.global data_ov61_02180f94
data_ov61_02180f94:
.space 0x2
.global data_ov61_02180f96
data_ov61_02180f96:
.space 0x2
.global data_ov61_02180f98
data_ov61_02180f98:
.space 0x2
.global data_ov61_02180f9a
data_ov61_02180f9a:
.space 0x2
.global data_ov61_02180f9c
data_ov61_02180f9c:
.space 0x2
.global data_ov61_02180f9e
data_ov61_02180f9e:
.space 0x2
.global data_ov61_02180fa0
data_ov61_02180fa0:
.space 0x2
.global data_ov61_02180fa2
data_ov61_02180fa2:
.space 0x2
.global data_ov61_02180fa4
data_ov61_02180fa4:
.space 0x2
.global data_ov61_02180fa6
data_ov61_02180fa6:
.space 0x2
.global data_ov61_02180fa8
data_ov61_02180fa8:
.space 0x2
.global data_ov61_02180faa
data_ov61_02180faa:
.space 0x2
.global data_ov61_02180fac
data_ov61_02180fac:
.space 0x2
.global data_ov61_02180fae
data_ov61_02180fae:
.space 0x2
.global data_ov61_02180fb0
data_ov61_02180fb0:
.space 0x2
.global data_ov61_02180fb2
data_ov61_02180fb2:
.space 0x2
.global data_ov61_02180fb4
data_ov61_02180fb4:
.space 0x2
.global data_ov61_02180fb6
data_ov61_02180fb6:
.space 0x2
.global data_ov61_02180fb8
data_ov61_02180fb8:
.space 0x1
.global data_ov61_02180fb9
data_ov61_02180fb9:
.space 0x1
.global data_ov61_02180fba
data_ov61_02180fba:
.space 0x1
.global data_ov61_02180fbb
data_ov61_02180fbb:
.space 0x1
.global data_ov61_02180fbc
data_ov61_02180fbc:
.space 0x1
.global data_ov61_02180fbd
data_ov61_02180fbd:
.space 0x1
.global data_ov61_02180fbe
data_ov61_02180fbe:
.space 0x1
.global data_ov61_02180fbf
data_ov61_02180fbf:
.space 0x1
.global data_ov61_02180fc0
data_ov61_02180fc0:
.space 0x1
.global data_ov61_02180fc1
data_ov61_02180fc1:
.space 0x1
.global data_ov61_02180fc2
data_ov61_02180fc2:
.space 0x1
.global data_ov61_02180fc3
data_ov61_02180fc3:
.space 0x1
.global data_ov61_02180fc4
data_ov61_02180fc4:
.space 0x1
.global data_ov61_02180fc5
data_ov61_02180fc5:
.space 0x1
.global data_ov61_02180fc6
data_ov61_02180fc6:
.space 0x1
.global data_ov61_02180fc7
data_ov61_02180fc7:
.space 0x1
.global data_ov61_02180fc8
data_ov61_02180fc8:
.space 0x1
.global data_ov61_02180fc9
data_ov61_02180fc9:
.space 0x1
.global data_ov61_02180fca
data_ov61_02180fca:
.space 0x1
.global data_ov61_02180fcb
data_ov61_02180fcb:
.space 0x1
.global data_ov61_02180fcc
data_ov61_02180fcc:
.space 0x4
.global data_ov61_02180fd0
data_ov61_02180fd0:
.space 0x4
.global data_ov61_02180fd4
data_ov61_02180fd4:
.space 0x4
.global data_ov61_02180fd8
data_ov61_02180fd8:
.space 0x4
.global data_ov61_02180fdc
data_ov61_02180fdc:
.space 0x4
.global data_ov61_02180fe0
data_ov61_02180fe0:
.space 0x4
.global data_ov61_02180fe4
data_ov61_02180fe4:
.space 0x4
.global data_ov61_02180fe8
data_ov61_02180fe8:
.space 0x4
.global data_ov61_02180fec
data_ov61_02180fec:
.space 0x4
.global data_ov61_02180ff0
data_ov61_02180ff0:
.space 0x4
.global data_ov61_02180ff4
data_ov61_02180ff4:
.space 0x4
.global data_ov61_02180ff8
data_ov61_02180ff8:
.space 0x4
.global data_ov61_02180ffc
data_ov61_02180ffc:
.space 0x4
.global data_ov61_02181000
data_ov61_02181000:
.space 0x1
.global data_ov61_02181001
data_ov61_02181001:
.space 0x1
.global data_ov61_02181002
data_ov61_02181002:
.space 0x1
.global data_ov61_02181003
data_ov61_02181003:
.space 0x1
.global data_ov61_02181004
data_ov61_02181004:
.space 0x1
.global data_ov61_02181005
data_ov61_02181005:
.space 0x1
.global data_ov61_02181006
data_ov61_02181006:
.space 0x1
.global data_ov61_02181007
data_ov61_02181007:
.space 0x1
.global data_ov61_02181008
data_ov61_02181008:
.space 0x1
.global data_ov61_02181009
data_ov61_02181009:
.space 0x1
.global data_ov61_0218100a
data_ov61_0218100a:
.space 0x1
.global data_ov61_0218100b
data_ov61_0218100b:
.space 0x1
.global data_ov61_0218100c
data_ov61_0218100c:
.space 0x1
.global data_ov61_0218100d
data_ov61_0218100d:
.space 0x1
.global data_ov61_0218100e
data_ov61_0218100e:
.space 0x1
.global data_ov61_0218100f
data_ov61_0218100f:
.space 0x1
.global data_ov61_02181010
data_ov61_02181010:
.space 0x4
.global data_ov61_02181014
data_ov61_02181014:
.space 0x4
.global data_ov61_02181018
data_ov61_02181018:
.space 0x4
.global data_ov61_0218101c
data_ov61_0218101c:
.space 0x4
.global data_ov61_02181020
data_ov61_02181020:
.space 0x4
.global data_ov61_02181024
data_ov61_02181024:
.space 0x4
.global data_ov61_02181028
data_ov61_02181028:
.space 0x4
.global data_ov61_0218102c
data_ov61_0218102c:
.space 0x2
.global data_ov61_0218102e
data_ov61_0218102e:
.space 0x2
.global data_ov61_02181030
data_ov61_02181030:
.space 0x4
.global data_ov61_02181034
data_ov61_02181034:
.space 0x1
.global data_ov61_02181035
data_ov61_02181035:
.space 0x1
.global data_ov61_02181036
data_ov61_02181036:
.space 0x1
.global data_ov61_02181037
data_ov61_02181037:
.space 0x1
.global data_ov61_02181038
data_ov61_02181038:
.space 0x1
.global data_ov61_02181039
data_ov61_02181039:
.space 0x1
.global data_ov61_0218103a
data_ov61_0218103a:
.space 0x1
.global data_ov61_0218103b
data_ov61_0218103b:
.space 0x1
.global data_ov61_0218103c
data_ov61_0218103c:
.space 0x1
.global data_ov61_0218103d
data_ov61_0218103d:
.space 0x1
.global data_ov61_0218103e
data_ov61_0218103e:
.space 0x1
.global data_ov61_0218103f
data_ov61_0218103f:
.space 0x1
.global data_ov61_02181040
data_ov61_02181040:
.space 0x1
.global data_ov61_02181041
data_ov61_02181041:
.space 0x1
.global data_ov61_02181042
data_ov61_02181042:
.space 0x1
.global data_ov61_02181043
data_ov61_02181043:
.space 0x1
.global data_ov61_02181044
data_ov61_02181044:
.space 0x1
.global data_ov61_02181045
data_ov61_02181045:
.space 0x1
.global data_ov61_02181046
data_ov61_02181046:
.space 0x1
.global data_ov61_02181047
data_ov61_02181047:
.space 0x1
.global data_ov61_02181048
data_ov61_02181048:
.space 0x1
.global data_ov61_02181049
data_ov61_02181049:
.space 0x1
.global data_ov61_0218104a
data_ov61_0218104a:
.space 0x1
.global data_ov61_0218104b
data_ov61_0218104b:
.space 0x1
.global data_ov61_0218104c
data_ov61_0218104c:
.space 0x1
.global data_ov61_0218104d
data_ov61_0218104d:
.space 0x1
.global data_ov61_0218104e
data_ov61_0218104e:
.space 0x1
.global data_ov61_0218104f
data_ov61_0218104f:
.space 0x1
.global data_ov61_02181050
data_ov61_02181050:
.space 0x1
.global data_ov61_02181051
data_ov61_02181051:
.space 0x1
.global data_ov61_02181052
data_ov61_02181052:
.space 0x1
.global data_ov61_02181053
data_ov61_02181053:
.space 0x1
.global data_ov61_02181054
data_ov61_02181054:
.space 0x1
.global data_ov61_02181055
data_ov61_02181055:
.space 0x1
.global data_ov61_02181056
data_ov61_02181056:
.space 0x1
.global data_ov61_02181057
data_ov61_02181057:
.space 0x1
.global data_ov61_02181058
data_ov61_02181058:
.space 0x1
.global data_ov61_02181059
data_ov61_02181059:
.space 0x1
.global data_ov61_0218105a
data_ov61_0218105a:
.space 0x1
.global data_ov61_0218105b
data_ov61_0218105b:
.space 0x1
.global data_ov61_0218105c
data_ov61_0218105c:
.space 0x1
.global data_ov61_0218105d
data_ov61_0218105d:
.space 0x1
.global data_ov61_0218105e
data_ov61_0218105e:
.space 0x1
.global data_ov61_0218105f
data_ov61_0218105f:
.space 0x1
.global data_ov61_02181060
data_ov61_02181060:
.space 0x1
.global data_ov61_02181061
data_ov61_02181061:
.space 0x1
.global data_ov61_02181062
data_ov61_02181062:
.space 0x1
.global data_ov61_02181063
data_ov61_02181063:
.space 0x1
.global data_ov61_02181064
data_ov61_02181064:
.space 0x1
.global data_ov61_02181065
data_ov61_02181065:
.space 0x1
.global data_ov61_02181066
data_ov61_02181066:
.space 0x1
.global data_ov61_02181067
data_ov61_02181067:
.space 0x1
.global data_ov61_02181068
data_ov61_02181068:
.space 0x1
.global data_ov61_02181069
data_ov61_02181069:
.space 0x1
.global data_ov61_0218106a
data_ov61_0218106a:
.space 0x1
.global data_ov61_0218106b
data_ov61_0218106b:
.space 0x1
.global data_ov61_0218106c
data_ov61_0218106c:
.space 0x1
.global data_ov61_0218106d
data_ov61_0218106d:
.space 0x1
.global data_ov61_0218106e
data_ov61_0218106e:
.space 0x1
.global data_ov61_0218106f
data_ov61_0218106f:
.space 0x1
.global data_ov61_02181070
data_ov61_02181070:
.space 0x1
.global data_ov61_02181071
data_ov61_02181071:
.space 0x1
.global data_ov61_02181072
data_ov61_02181072:
.space 0x1
.global data_ov61_02181073
data_ov61_02181073:
.space 0x1
.global data_ov61_02181074
data_ov61_02181074:
.space 0x4
.global data_ov61_02181078
data_ov61_02181078:
.space 0x4
.global data_ov61_0218107c
data_ov61_0218107c:
.space 0x4
.global data_ov61_02181080
data_ov61_02181080:
.space 0x4
.global data_ov61_02181084
data_ov61_02181084:
.space 0x4
.global data_ov61_02181088
data_ov61_02181088:
.space 0x4
.global data_ov61_0218108c
data_ov61_0218108c:
.space 0x4
.global data_ov61_02181090
data_ov61_02181090:
.space 0x4
.global data_ov61_02181094
data_ov61_02181094:
.space 0x4
.global data_ov61_02181098
data_ov61_02181098:
.space 0x4
.global data_ov61_0218109c
data_ov61_0218109c:
.space 0x4
.global data_ov61_021810a0
data_ov61_021810a0:
.space 0x4
.global data_ov61_021810a4
data_ov61_021810a4:
.space 0x4
.global data_ov61_021810a8
data_ov61_021810a8:
.space 0x4
.global data_ov61_021810ac
data_ov61_021810ac:
.space 0x4
.global data_ov61_021810b0
data_ov61_021810b0:
.space 0x4
.global data_ov61_021810b4
data_ov61_021810b4:
.space 0x4
.global data_ov61_021810b8
data_ov61_021810b8:
.space 0x4
.global data_ov61_021810bc
data_ov61_021810bc:
.space 0x4
.global data_ov61_021810c0
data_ov61_021810c0:
.space 0x4
.global data_ov61_021810c4
data_ov61_021810c4:
.space 0x4
.global data_ov61_021810c8
data_ov61_021810c8:
.space 0x4
.global data_ov61_021810cc
data_ov61_021810cc:
.space 0x4
.global data_ov61_021810d0
data_ov61_021810d0:
.space 0x4
.global data_ov61_021810d4
data_ov61_021810d4:
.space 0x4
.global data_ov61_021810d8
data_ov61_021810d8:
.space 0x4
.global data_ov61_021810dc
data_ov61_021810dc:
.space 0x4
.global data_ov61_021810e0
data_ov61_021810e0:
.space 0x4
.global data_ov61_021810e4
data_ov61_021810e4:
.space 0x4
.global data_ov61_021810e8
data_ov61_021810e8:
.space 0x4
.global data_ov61_021810ec
data_ov61_021810ec:
.space 0x4
.global data_ov61_021810f0
data_ov61_021810f0:
.space 0x4
.global data_ov61_021810f4
data_ov61_021810f4:
.space 0x4
.global data_ov61_021810f8
data_ov61_021810f8:
.space 0x4
.global data_ov61_021810fc
data_ov61_021810fc:
.space 0x4
.global data_ov61_02181100
data_ov61_02181100:
.space 0x4
.global data_ov61_02181104
data_ov61_02181104:
.space 0x4
.global data_ov61_02181108
data_ov61_02181108:
.space 0x4
.global data_ov61_0218110c
data_ov61_0218110c:
.space 0x4
.global data_ov61_02181110
data_ov61_02181110:
.space 0x2
.global data_ov61_02181112
data_ov61_02181112:
.space 0x2
.global data_ov61_02181114
data_ov61_02181114:
.space 0x4
.global data_ov61_02181118
data_ov61_02181118:
.space 0x4
.global data_ov61_0218111c
data_ov61_0218111c:
.space 0x4
.global data_ov61_02181120
data_ov61_02181120:
.space 0x4
.global data_ov61_02181124
data_ov61_02181124:
.space 0x4
.global data_ov61_02181128
data_ov61_02181128:
.space 0x4
.global data_ov61_0218112c
data_ov61_0218112c:
.space 0x4
.global data_ov61_02181130
data_ov61_02181130:
.space 0x4
.global data_ov61_02181134
data_ov61_02181134:
.space 0x4
.global data_ov61_02181138
data_ov61_02181138:
.space 0x4
.global data_ov61_0218113c
data_ov61_0218113c:
.space 0x4
.global data_ov61_02181140
data_ov61_02181140:
.space 0x4
.global data_ov61_02181144
data_ov61_02181144:
.space 0x4
.global data_ov61_02181148
data_ov61_02181148:
.space 0x4
.global data_ov61_0218114c
data_ov61_0218114c:
.space 0x4
.global data_ov61_02181150
data_ov61_02181150:
.space 0x4
.global data_ov61_02181154
data_ov61_02181154:
.space 0x4
.global data_ov61_02181158
data_ov61_02181158:
.space 0x4
.global data_ov61_0218115c
data_ov61_0218115c:
.space 0x4
.global data_ov61_02181160
data_ov61_02181160:
.space 0x4
.global data_ov61_02181164
data_ov61_02181164:
.space 0x4
.global data_ov61_02181168
data_ov61_02181168:
.space 0x4
.global data_ov61_0218116c
data_ov61_0218116c:
.space 0x4
.global data_ov61_02181170
data_ov61_02181170:
.space 0x4
.global data_ov61_02181174
data_ov61_02181174:
.space 0x4
.global data_ov61_02181178
data_ov61_02181178:
.space 0x4
.global data_ov61_0218117c
data_ov61_0218117c:
.space 0x4
.global data_ov61_02181180
data_ov61_02181180:
.space 0x4
.global data_ov61_02181184
data_ov61_02181184:
.space 0x4
.global data_ov61_02181188
data_ov61_02181188:
.space 0x4
.global data_ov61_0218118c
data_ov61_0218118c:
.space 0x4
.global data_ov61_02181190
data_ov61_02181190:
.space 0x4
.global data_ov61_02181194
data_ov61_02181194:
.space 0x4
.global data_ov61_02181198
data_ov61_02181198:
.space 0x4
.global data_ov61_0218119c
data_ov61_0218119c:
.space 0x4
.global data_ov61_021811a0
data_ov61_021811a0:
.space 0x4
.global data_ov61_021811a4
data_ov61_021811a4:
.space 0x4
.global data_ov61_021811a8
data_ov61_021811a8:
.space 0x4
.global data_ov61_021811ac
data_ov61_021811ac:
.space 0x4
.global data_ov61_021811b0
data_ov61_021811b0:
.space 0x4
.global data_ov61_021811b4
data_ov61_021811b4:
.space 0x4
.global data_ov61_021811b8
data_ov61_021811b8:
.space 0x4
.global data_ov61_021811bc
data_ov61_021811bc:
.space 0x4
.global data_ov61_021811c0
data_ov61_021811c0:
.space 0x4
.global data_ov61_021811c4
data_ov61_021811c4:
.space 0x4
.global data_ov61_021811c8
data_ov61_021811c8:
.space 0x4
.global data_ov61_021811cc
data_ov61_021811cc:
.space 0x4
.global data_ov61_021811d0
data_ov61_021811d0:
.space 0x4
.global data_ov61_021811d4
data_ov61_021811d4:
.space 0x4
.global data_ov61_021811d8
data_ov61_021811d8:
.space 0x4
.global data_ov61_021811dc
data_ov61_021811dc:
.space 0x4
.global data_ov61_021811e0
data_ov61_021811e0:
.space 0x4
.global data_ov61_021811e4
data_ov61_021811e4:
.space 0x4
.global data_ov61_021811e8
data_ov61_021811e8:
.space 0x4
.global data_ov61_021811ec
data_ov61_021811ec:
.space 0x4
.global data_ov61_021811f0
data_ov61_021811f0:
.space 0x4
.global data_ov61_021811f4
data_ov61_021811f4:
.space 0x4
.global data_ov61_021811f8
data_ov61_021811f8:
.space 0x4
.global data_ov61_021811fc
data_ov61_021811fc:
.space 0x4
.global data_ov61_02181200
data_ov61_02181200:
.space 0x4
.global data_ov61_02181204
data_ov61_02181204:
.space 0x4
.global data_ov61_02181208
data_ov61_02181208:
.space 0x4
.global data_ov61_0218120c
data_ov61_0218120c:
.space 0x4
.global data_ov61_02181210
data_ov61_02181210:
.space 0x4
.global data_ov61_02181214
data_ov61_02181214:
.space 0x4
.global data_ov61_02181218
data_ov61_02181218:
.space 0x4
.global data_ov61_0218121c
data_ov61_0218121c:
.space 0x4
.global data_ov61_02181220
data_ov61_02181220:
.space 0x4
.global data_ov61_02181224
data_ov61_02181224:
.space 0x4
.global data_ov61_02181228
data_ov61_02181228:
.space 0x4
.global data_ov61_0218122c
data_ov61_0218122c:
.space 0x4
.global data_ov61_02181230
data_ov61_02181230:
.space 0x4
.global data_ov61_02181234
data_ov61_02181234:
.space 0x4
.global data_ov61_02181238
data_ov61_02181238:
.space 0x4
.global data_ov61_0218123c
data_ov61_0218123c:
.space 0x4
.global data_ov61_02181240
data_ov61_02181240:
.space 0x4
.global data_ov61_02181244
data_ov61_02181244:
.space 0x4
.global data_ov61_02181248
data_ov61_02181248:
.space 0x4
.global data_ov61_0218124c
data_ov61_0218124c:
.space 0x4
.global data_ov61_02181250
data_ov61_02181250:
.space 0x4
.global data_ov61_02181254
data_ov61_02181254:
.space 0x4
.global data_ov61_02181258
data_ov61_02181258:
.space 0x4
.global data_ov61_0218125c
data_ov61_0218125c:
.space 0x4
.global data_ov61_02181260
data_ov61_02181260:
.space 0x4
.global data_ov61_02181264
data_ov61_02181264:
.space 0x4
.global data_ov61_02181268
data_ov61_02181268:
.space 0x4
.global data_ov61_0218126c
data_ov61_0218126c:
.space 0x4
.global data_ov61_02181270
data_ov61_02181270:
.space 0x4
.global data_ov61_02181274
data_ov61_02181274:
.space 0x4
.global data_ov61_02181278
data_ov61_02181278:
.space 0x4
.global data_ov61_0218127c
data_ov61_0218127c:
.space 0x4
.global data_ov61_02181280
data_ov61_02181280:
.space 0x4
.global data_ov61_02181284
data_ov61_02181284:
.space 0x4
.global data_ov61_02181288
data_ov61_02181288:
.space 0x4
.global data_ov61_0218128c
data_ov61_0218128c:
.space 0x4
.global data_ov61_02181290
data_ov61_02181290:
.space 0x4
.global data_ov61_02181294
data_ov61_02181294:
.space 0x4
.global data_ov61_02181298
data_ov61_02181298:
.space 0x4
.global data_ov61_0218129c
data_ov61_0218129c:
.space 0x4
.global data_ov61_021812a0
data_ov61_021812a0:
.space 0x4
.global data_ov61_021812a4
data_ov61_021812a4:
.space 0x4
.global data_ov61_021812a8
data_ov61_021812a8:
.space 0x4
.global data_ov61_021812ac
data_ov61_021812ac:
.space 0x4
.global data_ov61_021812b0
data_ov61_021812b0:
.space 0x4
.global data_ov61_021812b4
data_ov61_021812b4:
.space 0x4
.global data_ov61_021812b8
data_ov61_021812b8:
.space 0x4
.global data_ov61_021812bc
data_ov61_021812bc:
.space 0x4
.global data_ov61_021812c0
data_ov61_021812c0:
.space 0x4
.global data_ov61_021812c4
data_ov61_021812c4:
.space 0x4
.global data_ov61_021812c8
data_ov61_021812c8:
.space 0x4
.global data_ov61_021812cc
data_ov61_021812cc:
.space 0x4
.global data_ov61_021812d0
data_ov61_021812d0:
.space 0x4
.global data_ov61_021812d4
data_ov61_021812d4:
.space 0x4
.global data_ov61_021812d8
data_ov61_021812d8:
.space 0x4
.global data_ov61_021812dc
data_ov61_021812dc:
.space 0x4
.global data_ov61_021812e0
data_ov61_021812e0:
.space 0x4
.global data_ov61_021812e4
data_ov61_021812e4:
.space 0x4
.global data_ov61_021812e8
data_ov61_021812e8:
.space 0x4
.global data_ov61_021812ec
data_ov61_021812ec:
.space 0x4
.global data_ov61_021812f0
data_ov61_021812f0:
.space 0x4
.global data_ov61_021812f4
data_ov61_021812f4:
.space 0x4
.global data_ov61_021812f8
data_ov61_021812f8:
.space 0x4
.global data_ov61_021812fc
data_ov61_021812fc:
.space 0x4
.global data_ov61_02181300
data_ov61_02181300:
.space 0x4
.global data_ov61_02181304
data_ov61_02181304:
.space 0x4
.global data_ov61_02181308
data_ov61_02181308:
.space 0x4
.global data_ov61_0218130c
data_ov61_0218130c:
.space 0x4
.global data_ov61_02181310
data_ov61_02181310:
.space 0x4
.global data_ov61_02181314
data_ov61_02181314:
.space 0x4
.global data_ov61_02181318
data_ov61_02181318:
.space 0x4
.global data_ov61_0218131c
data_ov61_0218131c:
.space 0x4
.global data_ov61_02181320
data_ov61_02181320:
.space 0x4
.global data_ov61_02181324
data_ov61_02181324:
.space 0x4
.global data_ov61_02181328
data_ov61_02181328:
.space 0x4
.global data_ov61_0218132c
data_ov61_0218132c:
.space 0x4
.global data_ov61_02181330
data_ov61_02181330:
.space 0x4
.global data_ov61_02181334
data_ov61_02181334:
.space 0x4
.global data_ov61_02181338
data_ov61_02181338:
.space 0x4
.global data_ov61_0218133c
data_ov61_0218133c:
.space 0x4
.global data_ov61_02181340
data_ov61_02181340:
.space 0x4
.global data_ov61_02181344
data_ov61_02181344:
.space 0x4
.global data_ov61_02181348
data_ov61_02181348:
.space 0x4
.global data_ov61_0218134c
data_ov61_0218134c:
.space 0x4
.global data_ov61_02181350
data_ov61_02181350:
.space 0x4
.global data_ov61_02181354
data_ov61_02181354:
.space 0x4
.global data_ov61_02181358
data_ov61_02181358:
.space 0x4
.global data_ov61_0218135c
data_ov61_0218135c:
.space 0x4
.global data_ov61_02181360
data_ov61_02181360:
.space 0x4
.global data_ov61_02181364
data_ov61_02181364:
.space 0x4
.global data_ov61_02181368
data_ov61_02181368:
.space 0x4
.global data_ov61_0218136c
data_ov61_0218136c:
.space 0x4
.global data_ov61_02181370
data_ov61_02181370:
.space 0x4
.global data_ov61_02181374
data_ov61_02181374:
.space 0x4
.global data_ov61_02181378
data_ov61_02181378:
.space 0x4
.global data_ov61_0218137c
data_ov61_0218137c:
.space 0x4
.global data_ov61_02181380
data_ov61_02181380:
.space 0x4
.global data_ov61_02181384
data_ov61_02181384:
.space 0x4
.global data_ov61_02181388
data_ov61_02181388:
.space 0x4
.global data_ov61_0218138c
data_ov61_0218138c:
.space 0x4
.global data_ov61_02181390
data_ov61_02181390:
.space 0x4
.global data_ov61_02181394
data_ov61_02181394:
.space 0x4
.global data_ov61_02181398
data_ov61_02181398:
.space 0x4
.global data_ov61_0218139c
data_ov61_0218139c:
.space 0x4
.global data_ov61_021813a0
data_ov61_021813a0:
.space 0x4
.global data_ov61_021813a4
data_ov61_021813a4:
.space 0x4
.global data_ov61_021813a8
data_ov61_021813a8:
.space 0x4
.global data_ov61_021813ac
data_ov61_021813ac:
.space 0x4
.global data_ov61_021813b0
data_ov61_021813b0:
.space 0x4
.global data_ov61_021813b4
data_ov61_021813b4:
.space 0x4
.global data_ov61_021813b8
data_ov61_021813b8:
.space 0x4
.global data_ov61_021813bc
data_ov61_021813bc:
.space 0x4
.global data_ov61_021813c0
data_ov61_021813c0:
.space 0x4
.global data_ov61_021813c4
data_ov61_021813c4:
.space 0x4
.global data_ov61_021813c8
data_ov61_021813c8:
.space 0x4
.global data_ov61_021813cc
data_ov61_021813cc:
.space 0x4
.global data_ov61_021813d0
data_ov61_021813d0:
.space 0x4
.global data_ov61_021813d4
data_ov61_021813d4:
.space 0x4
.global data_ov61_021813d8
data_ov61_021813d8:
.space 0x4
.global data_ov61_021813dc
data_ov61_021813dc:
.space 0x4
.global data_ov61_021813e0
data_ov61_021813e0:
.space 0x4
.global data_ov61_021813e4
data_ov61_021813e4:
.space 0x4
.global data_ov61_021813e8
data_ov61_021813e8:
.space 0x4
.global data_ov61_021813ec
data_ov61_021813ec:
.space 0x4
.global data_ov61_021813f0
data_ov61_021813f0:
.space 0x4
.global data_ov61_021813f4
data_ov61_021813f4:
.space 0x4
.global data_ov61_021813f8
data_ov61_021813f8:
.space 0x4
.global data_ov61_021813fc
data_ov61_021813fc:
.space 0x4
.global data_ov61_02181400
data_ov61_02181400:
.space 0x4
.global data_ov61_02181404
data_ov61_02181404:
.space 0x4
.global data_ov61_02181408
data_ov61_02181408:
.space 0x4
.global data_ov61_0218140c
data_ov61_0218140c:
.space 0x4
.global data_ov61_02181410
data_ov61_02181410:
.space 0x4
.global data_ov61_02181414
data_ov61_02181414:
.space 0x4
.global data_ov61_02181418
data_ov61_02181418:
.space 0x4
.global data_ov61_0218141c
data_ov61_0218141c:
.space 0x4
.global data_ov61_02181420
data_ov61_02181420:
.space 0x4
.global data_ov61_02181424
data_ov61_02181424:
.space 0x4
.global data_ov61_02181428
data_ov61_02181428:
.space 0x4
.global data_ov61_0218142c
data_ov61_0218142c:
.space 0x4
.global data_ov61_02181430
data_ov61_02181430:
.space 0x4
.global data_ov61_02181434
data_ov61_02181434:
.space 0x4
.global data_ov61_02181438
data_ov61_02181438:
.space 0x4
.global data_ov61_0218143c
data_ov61_0218143c:
.space 0x4
.global data_ov61_02181440
data_ov61_02181440:
.space 0x4
.global data_ov61_02181444
data_ov61_02181444:
.space 0x4
.global data_ov61_02181448
data_ov61_02181448:
.space 0x4
.global data_ov61_0218144c
data_ov61_0218144c:
.space 0x4
.global data_ov61_02181450
data_ov61_02181450:
.space 0x4
.global data_ov61_02181454
data_ov61_02181454:
.space 0x4
.global data_ov61_02181458
data_ov61_02181458:
.space 0x4
.global data_ov61_0218145c
data_ov61_0218145c:
.space 0x4
.global data_ov61_02181460
data_ov61_02181460:
.space 0x4
.global data_ov61_02181464
data_ov61_02181464:
.space 0x4
.global data_ov61_02181468
data_ov61_02181468:
.space 0x4
.global data_ov61_0218146c
data_ov61_0218146c:
.space 0x4
.global data_ov61_02181470
data_ov61_02181470:
.space 0x4
.global data_ov61_02181474
data_ov61_02181474:
.space 0x4
.global data_ov61_02181478
data_ov61_02181478:
.space 0x4
.global data_ov61_0218147c
data_ov61_0218147c:
.space 0x4
.global data_ov61_02181480
data_ov61_02181480:
.space 0x4
.global data_ov61_02181484
data_ov61_02181484:
.space 0x4
.global data_ov61_02181488
data_ov61_02181488:
.space 0x4
.global data_ov61_0218148c
data_ov61_0218148c:
.space 0x4
.global data_ov61_02181490
data_ov61_02181490:
.space 0x4
.global data_ov61_02181494
data_ov61_02181494:
.space 0x4
.global data_ov61_02181498
data_ov61_02181498:
.space 0x4
.global data_ov61_0218149c
data_ov61_0218149c:
.space 0x4
.global data_ov61_021814a0
data_ov61_021814a0:
.space 0x4
.global data_ov61_021814a4
data_ov61_021814a4:
.space 0x4
.global data_ov61_021814a8
data_ov61_021814a8:
.space 0x4
.global data_ov61_021814ac
data_ov61_021814ac:
.space 0x4
.global data_ov61_021814b0
data_ov61_021814b0:
.space 0x4
.global data_ov61_021814b4
data_ov61_021814b4:
.space 0x4
.global data_ov61_021814b8
data_ov61_021814b8:
.space 0x4
.global data_ov61_021814bc
data_ov61_021814bc:
.space 0x4
.global data_ov61_021814c0
data_ov61_021814c0:
.space 0x4
.global data_ov61_021814c4
data_ov61_021814c4:
.space 0x4
.global data_ov61_021814c8
data_ov61_021814c8:
.space 0x4
.global data_ov61_021814cc
data_ov61_021814cc:
.space 0x4
.global data_ov61_021814d0
data_ov61_021814d0:
.space 0x4
.global data_ov61_021814d4
data_ov61_021814d4:
.space 0x4
.global data_ov61_021814d8
data_ov61_021814d8:
.space 0x4
.global data_ov61_021814dc
data_ov61_021814dc:
.space 0x4
.global data_ov61_021814e0
data_ov61_021814e0:
.space 0x4
.global data_ov61_021814e4
data_ov61_021814e4:
.space 0x4
.global data_ov61_021814e8
data_ov61_021814e8:
.space 0x4
.global data_ov61_021814ec
data_ov61_021814ec:
.space 0x4
.global data_ov61_021814f0
data_ov61_021814f0:
.space 0x4
.global data_ov61_021814f4
data_ov61_021814f4:
.space 0x4
.global data_ov61_021814f8
data_ov61_021814f8:
.space 0x4
.global data_ov61_021814fc
data_ov61_021814fc:
.space 0x4
.global data_ov61_02181500
data_ov61_02181500:
.space 0x4
.global data_ov61_02181504
data_ov61_02181504:
.space 0x4
.global data_ov61_02181508
data_ov61_02181508:
.space 0x4
.global data_ov61_0218150c
data_ov61_0218150c:
.space 0x4
.global data_ov61_02181510
data_ov61_02181510:
.space 0x4
.global data_ov61_02181514
data_ov61_02181514:
.space 0x4
.global data_ov61_02181518
data_ov61_02181518:
.space 0x4
.global data_ov61_0218151c
data_ov61_0218151c:
.space 0x4
.global data_ov61_02181520
data_ov61_02181520:
.space 0x4
.global data_ov61_02181524
data_ov61_02181524:
.space 0x4
.global data_ov61_02181528
data_ov61_02181528:
.space 0x4
.global data_ov61_0218152c
data_ov61_0218152c:
.space 0x4
.global data_ov61_02181530
data_ov61_02181530:
.space 0x4
.global data_ov61_02181534
data_ov61_02181534:
.space 0x4
.global data_ov61_02181538
data_ov61_02181538:
.space 0x4
.global data_ov61_0218153c
data_ov61_0218153c:
.space 0x4
.global data_ov61_02181540
data_ov61_02181540:
.space 0x4
.global data_ov61_02181544
data_ov61_02181544:
.space 0x4
.global data_ov61_02181548
data_ov61_02181548:
.space 0x4
.global data_ov61_0218154c
data_ov61_0218154c:
.space 0x4
.global data_ov61_02181550
data_ov61_02181550:
.space 0x4
.global data_ov61_02181554
data_ov61_02181554:
.space 0x4
.global data_ov61_02181558
data_ov61_02181558:
.space 0x4
.global data_ov61_0218155c
data_ov61_0218155c:
.space 0x4
.global data_ov61_02181560
data_ov61_02181560:
.space 0x4
.global data_ov61_02181564
data_ov61_02181564:
.space 0x4
.global data_ov61_02181568
data_ov61_02181568:
.space 0x4
.global data_ov61_0218156c
data_ov61_0218156c:
.space 0x4
.global data_ov61_02181570
data_ov61_02181570:
.space 0x4
.global data_ov61_02181574
data_ov61_02181574:
.space 0x4
.global data_ov61_02181578
data_ov61_02181578:
.space 0x4
.global data_ov61_0218157c
data_ov61_0218157c:
.space 0x4
.global data_ov61_02181580
data_ov61_02181580:
.space 0x4
.global data_ov61_02181584
data_ov61_02181584:
.space 0x4
.global data_ov61_02181588
data_ov61_02181588:
.space 0x4
.global data_ov61_0218158c
data_ov61_0218158c:
.space 0x4
.global data_ov61_02181590
data_ov61_02181590:
.space 0x4
.global data_ov61_02181594
data_ov61_02181594:
.space 0x4
.global data_ov61_02181598
data_ov61_02181598:
.space 0x4
.global data_ov61_0218159c
data_ov61_0218159c:
.space 0x4
.global data_ov61_021815a0
data_ov61_021815a0:
.space 0x4
.global data_ov61_021815a4
data_ov61_021815a4:
.space 0x4
.global data_ov61_021815a8
data_ov61_021815a8:
.space 0x4
.global data_ov61_021815ac
data_ov61_021815ac:
.space 0x4
.global data_ov61_021815b0
data_ov61_021815b0:
.space 0x4
.global data_ov61_021815b4
data_ov61_021815b4:
.space 0x4
.global data_ov61_021815b8
data_ov61_021815b8:
.space 0x4
.global data_ov61_021815bc
data_ov61_021815bc:
.space 0x4
.global data_ov61_021815c0
data_ov61_021815c0:
.space 0x4
.global data_ov61_021815c4
data_ov61_021815c4:
.space 0x4
.global data_ov61_021815c8
data_ov61_021815c8:
.space 0x4
.global data_ov61_021815cc
data_ov61_021815cc:
.space 0x4
.global data_ov61_021815d0
data_ov61_021815d0:
.space 0x4
.global data_ov61_021815d4
data_ov61_021815d4:
.space 0x4
.global data_ov61_021815d8
data_ov61_021815d8:
.space 0x4
.global data_ov61_021815dc
data_ov61_021815dc:
.space 0x4
.global data_ov61_021815e0
data_ov61_021815e0:
.space 0x4
.global data_ov61_021815e4
data_ov61_021815e4:
.space 0x4
.global data_ov61_021815e8
data_ov61_021815e8:
.space 0x4
.global data_ov61_021815ec
data_ov61_021815ec:
.space 0x4
.global data_ov61_021815f0
data_ov61_021815f0:
.space 0x4
.global data_ov61_021815f4
data_ov61_021815f4:
.space 0x4
.global data_ov61_021815f8
data_ov61_021815f8:
.space 0x4
.global data_ov61_021815fc
data_ov61_021815fc:
.space 0x4
.global data_ov61_02181600
data_ov61_02181600:
.space 0x4
.global data_ov61_02181604
data_ov61_02181604:
.space 0x4
.global data_ov61_02181608
data_ov61_02181608:
.space 0x4
.global data_ov61_0218160c
data_ov61_0218160c:
.space 0x4
.global data_ov61_02181610
data_ov61_02181610:
.space 0x4
.global data_ov61_02181614
data_ov61_02181614:
.space 0x4
.global data_ov61_02181618
data_ov61_02181618:
.space 0x4
.global data_ov61_0218161c
data_ov61_0218161c:
.space 0x4
.global data_ov61_02181620
data_ov61_02181620:
.space 0x4
.global data_ov61_02181624
data_ov61_02181624:
.space 0x4
.global data_ov61_02181628
data_ov61_02181628:
.space 0x4
.global data_ov61_0218162c
data_ov61_0218162c:
.space 0x4
.global data_ov61_02181630
data_ov61_02181630:
.space 0x4
.global data_ov61_02181634
data_ov61_02181634:
.space 0x4
.global data_ov61_02181638
data_ov61_02181638:
.space 0x4
.global data_ov61_0218163c
data_ov61_0218163c:
.space 0x4
.global data_ov61_02181640
data_ov61_02181640:
.space 0x4
.global data_ov61_02181644
data_ov61_02181644:
.space 0x4
.global data_ov61_02181648
data_ov61_02181648:
.space 0x4
.global data_ov61_0218164c
data_ov61_0218164c:
.space 0x4
.global data_ov61_02181650
data_ov61_02181650:
.space 0x4
.global data_ov61_02181654
data_ov61_02181654:
.space 0x4
.global data_ov61_02181658
data_ov61_02181658:
.space 0x4
.global data_ov61_0218165c
data_ov61_0218165c:
.space 0x4
.global data_ov61_02181660
data_ov61_02181660:
.space 0x4
.global data_ov61_02181664
data_ov61_02181664:
.space 0x4
.global data_ov61_02181668
data_ov61_02181668:
.space 0x4
.global data_ov61_0218166c
data_ov61_0218166c:
.space 0x4
.global data_ov61_02181670
data_ov61_02181670:
.space 0x4
.global data_ov61_02181674
data_ov61_02181674:
.space 0x4
.global data_ov61_02181678
data_ov61_02181678:
.space 0x4
.global data_ov61_0218167c
data_ov61_0218167c:
.space 0x4
.global data_ov61_02181680
data_ov61_02181680:
.space 0x4
.global data_ov61_02181684
data_ov61_02181684:
.space 0x4
.global data_ov61_02181688
data_ov61_02181688:
.space 0x4
.global data_ov61_0218168c
data_ov61_0218168c:
.space 0x4
.global data_ov61_02181690
data_ov61_02181690:
.space 0x4
.global data_ov61_02181694
data_ov61_02181694:
.space 0x4
.global data_ov61_02181698
data_ov61_02181698:
.space 0x4
.global data_ov61_0218169c
data_ov61_0218169c:
.space 0x4
.global data_ov61_021816a0
data_ov61_021816a0:
.space 0x4
.global data_ov61_021816a4
data_ov61_021816a4:
.space 0x4
.global data_ov61_021816a8
data_ov61_021816a8:
.space 0x4
.global data_ov61_021816ac
data_ov61_021816ac:
.space 0x4
.global data_ov61_021816b0
data_ov61_021816b0:
.space 0x4
.global data_ov61_021816b4
data_ov61_021816b4:
.space 0x4
.global data_ov61_021816b8
data_ov61_021816b8:
.space 0x4
.global data_ov61_021816bc
data_ov61_021816bc:
.space 0x4
.global data_ov61_021816c0
data_ov61_021816c0:
.space 0x4
.global data_ov61_021816c4
data_ov61_021816c4:
.space 0x4
.global data_ov61_021816c8
data_ov61_021816c8:
.space 0x4
.global data_ov61_021816cc
data_ov61_021816cc:
.space 0x4
.global data_ov61_021816d0
data_ov61_021816d0:
.space 0x4
.global data_ov61_021816d4
data_ov61_021816d4:
.space 0x4
.global data_ov61_021816d8
data_ov61_021816d8:
.space 0x4
.global data_ov61_021816dc
data_ov61_021816dc:
.space 0x4
.global data_ov61_021816e0
data_ov61_021816e0:
.space 0x4
.global data_ov61_021816e4
data_ov61_021816e4:
.space 0x4
.global data_ov61_021816e8
data_ov61_021816e8:
.space 0x4
.global data_ov61_021816ec
data_ov61_021816ec:
.space 0x4
.global data_ov61_021816f0
data_ov61_021816f0:
.space 0x4
.global data_ov61_021816f4
data_ov61_021816f4:
.space 0x4
.global data_ov61_021816f8
data_ov61_021816f8:
.space 0x4
.global data_ov61_021816fc
data_ov61_021816fc:
.space 0x4
.global data_ov61_02181700
data_ov61_02181700:
.space 0x4
.global data_ov61_02181704
data_ov61_02181704:
.space 0x4
.global data_ov61_02181708
data_ov61_02181708:
.space 0x4
.global data_ov61_0218170c
data_ov61_0218170c:
.space 0x4
.global data_ov61_02181710
data_ov61_02181710:
.space 0x4
.global data_ov61_02181714
data_ov61_02181714:
.space 0x4
.global data_ov61_02181718
data_ov61_02181718:
.space 0x4
.global data_ov61_0218171c
data_ov61_0218171c:
.space 0x4
.global data_ov61_02181720
data_ov61_02181720:
.space 0x4
.global data_ov61_02181724
data_ov61_02181724:
.space 0x4
.global data_ov61_02181728
data_ov61_02181728:
.space 0x4
.global data_ov61_0218172c
data_ov61_0218172c:
.space 0x4
.global data_ov61_02181730
data_ov61_02181730:
.space 0x4
.global data_ov61_02181734
data_ov61_02181734:
.space 0x4
.global data_ov61_02181738
data_ov61_02181738:
.space 0x4
.global data_ov61_0218173c
data_ov61_0218173c:
.space 0x4
.global data_ov61_02181740
data_ov61_02181740:
.space 0x4
.global data_ov61_02181744
data_ov61_02181744:
.space 0x4
.global data_ov61_02181748
data_ov61_02181748:
.space 0x4
.global data_ov61_0218174c
data_ov61_0218174c:
.space 0x4
.global data_ov61_02181750
data_ov61_02181750:
.space 0x4
.global data_ov61_02181754
data_ov61_02181754:
.space 0x4
.global data_ov61_02181758
data_ov61_02181758:
.space 0x4
.global data_ov61_0218175c
data_ov61_0218175c:
.space 0x4
.global data_ov61_02181760
data_ov61_02181760:
.space 0x4
.global data_ov61_02181764
data_ov61_02181764:
.space 0x4
.global data_ov61_02181768
data_ov61_02181768:
.space 0x4
.global data_ov61_0218176c
data_ov61_0218176c:
.space 0x4
.global data_ov61_02181770
data_ov61_02181770:
.space 0x4
.global data_ov61_02181774
data_ov61_02181774:
.space 0x4
.global data_ov61_02181778
data_ov61_02181778:
.space 0x4
.global data_ov61_0218177c
data_ov61_0218177c:
.space 0x4
.global data_ov61_02181780
data_ov61_02181780:
.space 0x4
.global data_ov61_02181784
data_ov61_02181784:
.space 0x4
.global data_ov61_02181788
data_ov61_02181788:
.space 0x4
.global data_ov61_0218178c
data_ov61_0218178c:
.space 0x4
.global data_ov61_02181790
data_ov61_02181790:
.space 0x4
.global data_ov61_02181794
data_ov61_02181794:
.space 0x4
.global data_ov61_02181798
data_ov61_02181798:
.space 0x4
.global data_ov61_0218179c
data_ov61_0218179c:
.space 0x4
.global data_ov61_021817a0
data_ov61_021817a0:
.space 0x4
.global data_ov61_021817a4
data_ov61_021817a4:
.space 0x4
.global data_ov61_021817a8
data_ov61_021817a8:
.space 0x4
.global data_ov61_021817ac
data_ov61_021817ac:
.space 0x4
.global data_ov61_021817b0
data_ov61_021817b0:
.space 0x4
.global data_ov61_021817b4
data_ov61_021817b4:
.space 0x4
.global data_ov61_021817b8
data_ov61_021817b8:
.space 0x4
.global data_ov61_021817bc
data_ov61_021817bc:
.space 0x4
.global data_ov61_021817c0
data_ov61_021817c0:
.space 0x4
.global data_ov61_021817c4
data_ov61_021817c4:
.space 0x4
.global data_ov61_021817c8
data_ov61_021817c8:
.space 0x4
.global data_ov61_021817cc
data_ov61_021817cc:
.space 0x4
.global data_ov61_021817d0
data_ov61_021817d0:
.space 0x1
.global data_ov61_021817d1
data_ov61_021817d1:
.space 0x1
.global data_ov61_021817d2
data_ov61_021817d2:
.space 0x1
.global data_ov61_021817d3
data_ov61_021817d3:
.space 0x1
.global data_ov61_021817d4
data_ov61_021817d4:
.space 0x1
.global data_ov61_021817d5
data_ov61_021817d5:
.space 0x1
.global data_ov61_021817d6
data_ov61_021817d6:
.space 0x1
.global data_ov61_021817d7
data_ov61_021817d7:
.space 0x1
.global data_ov61_021817d8
data_ov61_021817d8:
.space 0x1
.global data_ov61_021817d9
data_ov61_021817d9:
.space 0x1
.global data_ov61_021817da
data_ov61_021817da:
.space 0x1
.global data_ov61_021817db
data_ov61_021817db:
.space 0x1
.global data_ov61_021817dc
data_ov61_021817dc:
.space 0x1
.global data_ov61_021817dd
data_ov61_021817dd:
.space 0x1
.global data_ov61_021817de
data_ov61_021817de:
.space 0x1
.global data_ov61_021817df
data_ov61_021817df:
.space 0x1
.global data_ov61_021817e0
data_ov61_021817e0:
.space 0x1
.global data_ov61_021817e1
data_ov61_021817e1:
.space 0x1
.global data_ov61_021817e2
data_ov61_021817e2:
.space 0x1
.global data_ov61_021817e3
data_ov61_021817e3:
.space 0x1
.global data_ov61_021817e4
data_ov61_021817e4:
.space 0x4
.global data_ov61_021817e8
data_ov61_021817e8:
.space 0x4
.global data_ov61_021817ec
data_ov61_021817ec:
.space 0x4
.global data_ov61_021817f0
data_ov61_021817f0:
.space 0x4
.global data_ov61_021817f4
data_ov61_021817f4:
.space 0x4
.global data_ov61_021817f8
data_ov61_021817f8:
.space 0x4
.global data_ov61_021817fc
data_ov61_021817fc:
.space 0x4
.global data_ov61_02181800
data_ov61_02181800:
.space 0x4
.global data_ov61_02181804
data_ov61_02181804:
.space 0x4
.global data_ov61_02181808
data_ov61_02181808:
.space 0x4
.global data_ov61_0218180c
data_ov61_0218180c:
.space 0x4
.global data_ov61_02181810
data_ov61_02181810:
.space 0x4
.global data_ov61_02181814
data_ov61_02181814:
.space 0x4
.global data_ov61_02181818
data_ov61_02181818:
.space 0x4
.global data_ov61_0218181c
data_ov61_0218181c:
.space 0x4
.global data_ov61_02181820
data_ov61_02181820:
.space 0x4
.global data_ov61_02181824
data_ov61_02181824:
.space 0x4
.global data_ov61_02181828
data_ov61_02181828:
.space 0x4
.global data_ov61_0218182c
data_ov61_0218182c:
.space 0x4
.global data_ov61_02181830
data_ov61_02181830:
.space 0x4
.global data_ov61_02181834
data_ov61_02181834:
.space 0x4
.global data_ov61_02181838
data_ov61_02181838:
.space 0x4
.global data_ov61_0218183c
data_ov61_0218183c:
.space 0x4
.global data_ov61_02181840
data_ov61_02181840:
.space 0x4
.global data_ov61_02181844
data_ov61_02181844:
.space 0x4
.global data_ov61_02181848
data_ov61_02181848:
.space 0x4
.global data_ov61_0218184c
data_ov61_0218184c:
.space 0x4
.global data_ov61_02181850
data_ov61_02181850:
.space 0x4
.global data_ov61_02181854
data_ov61_02181854:
.space 0x4
.global data_ov61_02181858
data_ov61_02181858:
.space 0x4
.global data_ov61_0218185c
data_ov61_0218185c:
.space 0x4
.global data_ov61_02181860
data_ov61_02181860:
.space 0x4
.global data_ov61_02181864
data_ov61_02181864:
.space 0x4
.global data_ov61_02181868
data_ov61_02181868:
.space 0x4
.global data_ov61_0218186c
data_ov61_0218186c:
.space 0x4
.global data_ov61_02181870
data_ov61_02181870:
.space 0x4
.global data_ov61_02181874
data_ov61_02181874:
.space 0x4
.global data_ov61_02181878
data_ov61_02181878:
.space 0x4
.global data_ov61_0218187c
data_ov61_0218187c:
.space 0x4
.global data_ov61_02181880
data_ov61_02181880:
.space 0x4
.global data_ov61_02181884
data_ov61_02181884:
.space 0x4
.global data_ov61_02181888
data_ov61_02181888:
.space 0x4
.global data_ov61_0218188c
data_ov61_0218188c:
.space 0x4
.global data_ov61_02181890
data_ov61_02181890:
.space 0x4
.global data_ov61_02181894
data_ov61_02181894:
.space 0x4
.global data_ov61_02181898
data_ov61_02181898:
.space 0x4
.global data_ov61_0218189c
data_ov61_0218189c:
.space 0x4
.global data_ov61_021818a0
data_ov61_021818a0:
.space 0x4
.global data_ov61_021818a4
data_ov61_021818a4:
.space 0x4
.global data_ov61_021818a8
data_ov61_021818a8:
.space 0x4
.global data_ov61_021818ac
data_ov61_021818ac:
.space 0x4
.global data_ov61_021818b0
data_ov61_021818b0:
.space 0x4
.global data_ov61_021818b4
data_ov61_021818b4:
.space 0x4
.global data_ov61_021818b8
data_ov61_021818b8:
.space 0x4
.global data_ov61_021818bc
data_ov61_021818bc:
.space 0x4
.global data_ov61_021818c0
data_ov61_021818c0:
.space 0x4
.global data_ov61_021818c4
data_ov61_021818c4:
.space 0x4
.global data_ov61_021818c8
data_ov61_021818c8:
.space 0x4
.global data_ov61_021818cc
data_ov61_021818cc:
.space 0x4
.global data_ov61_021818d0
data_ov61_021818d0:
.space 0x4
.global data_ov61_021818d4
data_ov61_021818d4:
.space 0x4
.global data_ov61_021818d8
data_ov61_021818d8:
.space 0x4
.global data_ov61_021818dc
data_ov61_021818dc:
.space 0x4
.global data_ov61_021818e0
data_ov61_021818e0:
.space 0x4
.global data_ov61_021818e4
data_ov61_021818e4:
.space 0x4
.global data_ov61_021818e8
data_ov61_021818e8:
.space 0x4
.global data_ov61_021818ec
data_ov61_021818ec:
.space 0x4
.global data_ov61_021818f0
data_ov61_021818f0:
.space 0x4
.global data_ov61_021818f4
data_ov61_021818f4:
.space 0x4
.global data_ov61_021818f8
data_ov61_021818f8:
.space 0x4
.global data_ov61_021818fc
data_ov61_021818fc:
.space 0x4
.global data_ov61_02181900
data_ov61_02181900:
.space 0x4
.global data_ov61_02181904
data_ov61_02181904:
.space 0x4
.global data_ov61_02181908
data_ov61_02181908:
.space 0x4
.global data_ov61_0218190c
data_ov61_0218190c:
.space 0x4
.global data_ov61_02181910
data_ov61_02181910:
.space 0x4
.global data_ov61_02181914
data_ov61_02181914:
.space 0x4
.global data_ov61_02181918
data_ov61_02181918:
.space 0x4
.global data_ov61_0218191c
data_ov61_0218191c:
.space 0x4
.global data_ov61_02181920
data_ov61_02181920:
.space 0x4
.global data_ov61_02181924
data_ov61_02181924:
.space 0x4
.global data_ov61_02181928
data_ov61_02181928:
.space 0x4
.global data_ov61_0218192c
data_ov61_0218192c:
.space 0x4
.global data_ov61_02181930
data_ov61_02181930:
.space 0x4
.global data_ov61_02181934
data_ov61_02181934:
.space 0x4
.global data_ov61_02181938
data_ov61_02181938:
.space 0x4
.global data_ov61_0218193c
data_ov61_0218193c:
.space 0x4
.global data_ov61_02181940
data_ov61_02181940:
.space 0x4
.global data_ov61_02181944
data_ov61_02181944:
.space 0x4
.global data_ov61_02181948
data_ov61_02181948:
.space 0x4
.global data_ov61_0218194c
data_ov61_0218194c:
.space 0x4
.global data_ov61_02181950
data_ov61_02181950:
.space 0x4
.global data_ov61_02181954
data_ov61_02181954:
.space 0x4
.global data_ov61_02181958
data_ov61_02181958:
.space 0x4
.global data_ov61_0218195c
data_ov61_0218195c:
.space 0x4
.global data_ov61_02181960
data_ov61_02181960:
.space 0x4
.global data_ov61_02181964
data_ov61_02181964:
.space 0x4
.global data_ov61_02181968
data_ov61_02181968:
.space 0x4
.global data_ov61_0218196c
data_ov61_0218196c:
.space 0x4
.global data_ov61_02181970
data_ov61_02181970:
.space 0x4
.global data_ov61_02181974
data_ov61_02181974:
.space 0x4
.global data_ov61_02181978
data_ov61_02181978:
.space 0x4
.global data_ov61_0218197c
data_ov61_0218197c:
.space 0x4
.global data_ov61_02181980
data_ov61_02181980:
.space 0x4
.global data_ov61_02181984
data_ov61_02181984:
.space 0x4
.global data_ov61_02181988
data_ov61_02181988:
.space 0x4
.global data_ov61_0218198c
data_ov61_0218198c:
.space 0x4
.global data_ov61_02181990
data_ov61_02181990:
.space 0x4
.global data_ov61_02181994
data_ov61_02181994:
.space 0x4
.global data_ov61_02181998
data_ov61_02181998:
.space 0x4
.global data_ov61_0218199c
data_ov61_0218199c:
.space 0x4
.global data_ov61_021819a0
data_ov61_021819a0:
.space 0x4
.global data_ov61_021819a4
data_ov61_021819a4:
.space 0x4
.global data_ov61_021819a8
data_ov61_021819a8:
.space 0x4
.global data_ov61_021819ac
data_ov61_021819ac:
.space 0x4
.global data_ov61_021819b0
data_ov61_021819b0:
.space 0x4
.global data_ov61_021819b4
data_ov61_021819b4:
.space 0x4
.global data_ov61_021819b8
data_ov61_021819b8:
.space 0x4
.global data_ov61_021819bc
data_ov61_021819bc:
.space 0x4
.global data_ov61_021819c0
data_ov61_021819c0:
.space 0x4
.global data_ov61_021819c4
data_ov61_021819c4:
.space 0x4
.global data_ov61_021819c8
data_ov61_021819c8:
.space 0x4
.global data_ov61_021819cc
data_ov61_021819cc:
.space 0x4
.global data_ov61_021819d0
data_ov61_021819d0:
.space 0x4
.global data_ov61_021819d4
data_ov61_021819d4:
.space 0x4
.global data_ov61_021819d8
data_ov61_021819d8:
.space 0x4
.global data_ov61_021819dc
data_ov61_021819dc:
.space 0x4