Files
ph/asm/ov10.s
T
2024-02-12 16:45:40 +01:00

21102 lines
410 KiB
ArmAsm

.include "macros/function.inc"
.include "include/ov10.inc"
.text
.global func_ov10_02112c20
thumb_func_start func_ov10_02112c20
func_ov10_02112c20: ; 0x02112c20
push {r4, lr}
ldr r1, _02112c3c ; =data_027e0ce0
add r4, r0, #0
ldr r1, [r1, #4]
mov r0, #0x18
mov r2, #4
blx _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _02112c3a
add r1, r4, #0
bl func_ov10_02112c40
_02112c3a:
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_02112c20
_02112c3c: .word data_027e0ce0
.global func_ov10_02112c40
thumb_func_start func_ov10_02112c40
func_ov10_02112c40: ; 0x02112c40
push {r3, r4, r5, r6, r7, lr}
sub sp, #8
add r4, r0, #0
ldr r0, _02112d20 ; =data_02057634
mov r5, #0
str r0, [r4]
ldr r0, _02112d24 ; =data_ov10_0211ea68
str r1, [r4, #4]
str r0, [r4]
ldr r0, _02112d28 ; =data_027e0618
str r5, [r4, #8]
ldr r0, [r0, #4]
cmp r0, #7
bhi _02112c7a
add r0, r0, r0
add r0, pc
ldrh r0, [r0, #6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_02112c68: ; jump table
.short _02112c7a - _02112c68 - 2 ; case 0
.short _02112c7a - _02112c68 - 2 ; case 1
.short _02112c7a - _02112c68 - 2 ; case 2
.short _02112c7a - _02112c68 - 2 ; case 3
.short _02112c78 - _02112c68 - 2 ; case 4
.short _02112c78 - _02112c68 - 2 ; case 5
.short _02112c78 - _02112c68 - 2 ; case 6
.short _02112c78 - _02112c68 - 2 ; case 7
_02112c78:
mov r5, #0xc
_02112c7a:
ldr r1, _02112d2c ; =data_027e0ce0
mov r0, #0xd8
ldr r1, [r1, #4]
mov r2, #4
blx _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _02112c92
add r1, r4, #0
add r2, r5, #0
bl func_ov10_0211303c
_02112c92:
str r0, [r4, #0x14]
ldr r0, _02112d30 ; =data_027e0d54
blx func_ov10_021177d8
ldr r7, _02112d34 ; =0x0000350c
ldr r6, _02112d2c ; =data_027e0ce0
mov r5, #0
_02112ca0:
ldr r1, [r6, #4]
add r0, r7, #0
mov r2, #4
blx _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _02112cb4
add r1, r5, #0
blx func_ov10_02119c70
_02112cb4:
lsl r1, r5, #2
add r1, r4, r1
str r0, [r1, #0xc]
add r0, r5, #1
lsl r0, r0, #0x10
lsr r5, r0, #0x10
cmp r5, #2
blo _02112ca0
ldr r0, [r4, #0x14]
bl func_ov10_02113bc4
blx func_ov06_02102214
add r1, r4, #0
ldr r0, _02112d30 ; =data_027e0d54
add r1, #0xc
blx func_ov10_02117c18
ldr r0, [r4, #0x14]
mov r1, #1
add r0, #0xd0
strb r1, [r0]
blx func_020329b0
ldr r1, _02112d38 ; =0x00000112
blx func_02032bd8
blx func_020329b0
mov r1, #0x10
str r1, [sp]
mov r1, #1
str r1, [sp, #4]
ldr r1, _02112d38 ; =0x00000112
mov r2, #0
mov r3, #0xa0
blx func_02032a74
blx func_020329b0
mov r1, #0x10
str r1, [sp]
mov r2, #1
ldr r1, _02112d38 ; =0x00000112
mov r3, #0xa0
str r2, [sp, #4]
blx func_02032a74
ldr r0, _02112d3c ; =data_ov00_020eed2c
blx func_ov00_020d8718
add r0, r4, #0
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
thumb_func_end func_ov10_02112c40
_02112d20: .word data_02057634
_02112d24: .word data_ov10_0211ea68
_02112d28: .word data_027e0618
_02112d2c: .word data_027e0ce0
_02112d30: .word data_027e0d54
_02112d34: .word 0x0000350c
_02112d38: .word 0x00000112
_02112d3c: .word data_ov00_020eed2c
.global func_ov10_02112d40
arm_func_start func_ov10_02112d40
func_ov10_02112d40: ; 0x02112d40
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x11c
ldr r3, _02112d90 ; =func_ov10_02112da4
add r0, r0, #0xc00
mov r1, #8
mov r2, #0x30
bl func_0204f754
ldr r3, _02112d94 ; =func_ov10_02112da0
add r0, r4, #0x2f8
mov r1, #0xcf
mov r2, #0xc
bl func_0204f754
ldr r3, _02112d98 ; =func_ov10_02112d9c
add r0, r4, #0xf8
mov r1, #0x40
mov r2, #8
bl func_0204f754
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02112d40
_02112d90: .word func_ov10_02112da4 - 1
_02112d94: .word func_ov10_02112da0 - 1
_02112d98: .word func_ov10_02112d9c - 1
.global func_ov10_02112d9c
arm_func_start func_ov10_02112d9c
func_ov10_02112d9c: ; 0x02112d9c
bx lr
arm_func_end func_ov10_02112d9c
.global func_ov10_02112da0
arm_func_start func_ov10_02112da0
func_ov10_02112da0: ; 0x02112da0
bx lr
arm_func_end func_ov10_02112da0
.global func_ov10_02112da4
arm_func_start func_ov10_02112da4
func_ov10_02112da4: ; 0x02112da4
bx lr
arm_func_end func_ov10_02112da4
.global func_ov10_02112da8
thumb_func_start func_ov10_02112da8
func_ov10_02112da8: ; 0x02112da8
push {r3, r4, r5, r6, r7, lr}
add r7, r0, #0
ldr r0, _02112e28 ; =data_ov10_0211ea68
str r0, [r7]
ldr r0, _02112e2c ; =data_ov00_020eed2c
blx func_ov00_020d8728
ldr r0, [r7, #0x14]
bl func_ov10_02113580
blx func_020329b0
ldr r1, _02112e30 ; =0x00000112
blx func_02032c10
blx func_02004ba8
blx func_02004c7c
add r0, r7, #0
ldr r1, [r0]
ldr r1, [r1, #0x18]
blx r1
blx func_ov06_0210226c
mov r6, #0
add r5, r7, #0
_02112dde:
ldr r4, [r5, #0xc]
cmp r4, #0
beq _02112df8
mov r2, #5
ldr r3, _02112e34 ; =func_ov10_02112d40
add r0, r4, #4
mov r1, #2
lsl r2, r2, #0xa
blx func_0204f754
add r0, r4, #0
blx _ZN9SysObjectdlEPv
_02112df8:
add r6, r6, #1
add r5, r5, #4
cmp r6, #2
blt _02112dde
ldr r0, _02112e38 ; =data_027e0d54
blx func_ov10_02117a90
ldr r4, [r7, #0x14]
cmp r4, #0
beq _02112e18
add r0, r4, #0
bl func_ov10_021132e4
add r0, r4, #0
blx _ZN9SysObjectdlEPv
_02112e18:
add r0, r7, #0
bl func_0202c0b8
add r0, r7, #0
blx _ZN9SysObjectdlEPv
add r0, r7, #0
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
thumb_func_end func_ov10_02112da8
_02112e28: .word data_ov10_0211ea68
_02112e2c: .word data_ov00_020eed2c
_02112e30: .word 0x00000112
_02112e34: .word func_ov10_02112d40 - 1
_02112e38: .word data_027e0d54
.global func_ov10_02112e3c
thumb_func_start func_ov10_02112e3c
func_ov10_02112e3c: ; 0x02112e3c
push {r3, r4, r5, r6, r7, lr}
add r7, r0, #0
ldr r0, _02112eb8 ; =data_ov10_0211ea68
str r0, [r7]
ldr r0, _02112ebc ; =data_ov00_020eed2c
blx func_ov00_020d8728
ldr r0, [r7, #0x14]
bl func_ov10_02113580
blx func_020329b0
ldr r1, _02112ec0 ; =0x00000112
blx func_02032c10
blx func_02004ba8
blx func_02004c7c
add r0, r7, #0
ldr r1, [r0]
ldr r1, [r1, #0x18]
blx r1
blx func_ov06_0210226c
mov r6, #0
add r5, r7, #0
_02112e72:
ldr r4, [r5, #0xc]
cmp r4, #0
beq _02112e8c
mov r2, #5
ldr r3, _02112ec4 ; =func_ov10_02112d40
add r0, r4, #4
mov r1, #2
lsl r2, r2, #0xa
blx func_0204f754
add r0, r4, #0
blx _ZN9SysObjectdlEPv
_02112e8c:
add r6, r6, #1
add r5, r5, #4
cmp r6, #2
blt _02112e72
ldr r0, _02112ec8 ; =data_027e0d54
blx func_ov10_02117a90
ldr r4, [r7, #0x14]
cmp r4, #0
beq _02112eac
add r0, r4, #0
bl func_ov10_021132e4
add r0, r4, #0
blx _ZN9SysObjectdlEPv
_02112eac:
add r0, r7, #0
bl func_0202c0b8
add r0, r7, #0
pop {r3, r4, r5, r6, r7, pc}
nop
thumb_func_end func_ov10_02112e3c
_02112eb8: .word data_ov10_0211ea68
_02112ebc: .word data_ov00_020eed2c
_02112ec0: .word 0x00000112
_02112ec4: .word func_ov10_02112d40 - 1
_02112ec8: .word data_027e0d54
.global func_ov10_02112ecc
thumb_func_start func_ov10_02112ecc
func_ov10_02112ecc: ; 0x02112ecc
push {r4, lr}
ldr r2, _02112ef0 ; =data_027e0698
mov r4, #0
ldr r2, [r2, #0x4c]
cmp r2, #0
beq _02112ee8
cmp r2, #1
bne _02112eea
cmp r1, #0
bne _02112eea
ldr r0, [r0, #0x14]
bl func_ov10_0211337c
b _02112eea
_02112ee8:
ldr r4, [r0, #8]
_02112eea:
add r0, r4, #0
pop {r4, pc}
nop
thumb_func_end func_ov10_02112ecc
_02112ef0: .word data_027e0698
.global func_ov10_02112ef4
thumb_func_start func_ov10_02112ef4
func_ov10_02112ef4: ; 0x02112ef4
ldr r3, _02112efc ; =func_ov10_02113528
ldr r0, [r0, #0x14]
bx r3
nop
thumb_func_end func_ov10_02112ef4
_02112efc: .word func_ov10_02113528
.global func_ov10_02112f00
thumb_func_start func_ov10_02112f00
func_ov10_02112f00: ; 0x02112f00
ldr r3, _02112f08 ; =func_ov10_0211356c
ldr r0, [r0, #0x14]
bx r3
nop
thumb_func_end func_ov10_02112f00
_02112f08: .word func_ov10_0211356c
.global func_ov10_02112f0c
thumb_func_start func_ov10_02112f0c
func_ov10_02112f0c: ; 0x02112f0c
ldr r3, _02112f14 ; =func_ov10_021135ac
ldr r0, [r0, #0x14]
bx r3
nop
thumb_func_end func_ov10_02112f0c
_02112f14: .word func_ov10_021135ac
.global func_ov10_02112f18
thumb_func_start func_ov10_02112f18
func_ov10_02112f18: ; 0x02112f18
push {r3, r4}
ldr r4, _02112f30 ; =data_ov10_0211ea8c
str r4, [r0]
str r2, [r0, #4]
str r1, [r0, #8]
str r3, [r0, #0xc]
str r3, [r0, #0x10]
mov r1, #0
str r1, [r0, #0x14]
pop {r3, r4}
bx lr
nop
thumb_func_end func_ov10_02112f18
_02112f30: .word data_ov10_0211ea8c
.global func_ov10_02112f34
thumb_func_start func_ov10_02112f34
func_ov10_02112f34: ; 0x02112f34
bx lr
.align 2, 0
thumb_func_end func_ov10_02112f34
.global func_ov10_02112f38
thumb_func_start func_ov10_02112f38
func_ov10_02112f38: ; 0x02112f38
push {r4, lr}
add r4, r0, #0
blx _ZN9SysObjectdlEPv
add r0, r4, #0
pop {r4, pc}
thumb_func_end func_ov10_02112f38
.global func_ov10_02112f44
thumb_func_start func_ov10_02112f44
func_ov10_02112f44: ; 0x02112f44
bx lr
.align 2, 0
thumb_func_end func_ov10_02112f44
.global func_ov10_02112f48
arm_func_start func_ov10_02112f48
func_ov10_02112f48: ; 0x02112f48
mov r2, #0
str r2, [r0, #0x14]
str r1, [r0, #0xc]
str r1, [r0, #0x10]
bx lr
arm_func_end func_ov10_02112f48
.global func_ov10_02112f5c
arm_func_start func_ov10_02112f5c
func_ov10_02112f5c: ; 0x02112f5c
bx lr
arm_func_end func_ov10_02112f5c
.global func_ov10_02112f60
arm_func_start func_ov10_02112f60
func_ov10_02112f60: ; 0x02112f60
bx lr
arm_func_end func_ov10_02112f60
.global func_ov10_02112f64
arm_func_start func_ov10_02112f64
func_ov10_02112f64: ; 0x02112f64
bx lr
arm_func_end func_ov10_02112f64
.global func_ov10_02112f68
thumb_func_start func_ov10_02112f68
func_ov10_02112f68: ; 0x02112f68
push {r3, r4, r5, lr}
add r5, r0, #0
add r4, r1, #0
blx func_020386d8
ldr r0, _02112f7c ; =data_ov10_0211eaf0
str r0, [r5]
str r4, [r5, #0x14]
add r0, r5, #0
pop {r3, r4, r5, pc}
.align 2, 0
thumb_func_end func_ov10_02112f68
_02112f7c: .word data_ov10_0211eaf0
.global func_ov10_02112f80
thumb_func_start func_ov10_02112f80
func_ov10_02112f80: ; 0x02112f80
push {r3, r4, r5, lr}
add r5, r0, #0
ldrb r0, [r5, #0x1c]
add r4, r1, #0
cmp r0, #1
bne _02112fd2
mov r0, #0x1e
ldrsh r1, [r5, r0]
cmp r1, #0
ble _02112fac
sub r1, r1, #1
strh r1, [r5, #0x1e]
ldrsh r0, [r5, r0]
cmp r0, #0x14
bne _02112fda
ldr r1, [r5, #0x14]
ldr r0, _02112fdc ; =data_027e0d54
add r1, #0xd2
ldrb r1, [r1]
blx func_ov10_02118120
b _02112fd2
_02112fac:
ldr r0, _02112fdc ; =data_027e0d54
ldrb r0, [r0, #0xd]
cmp r0, #0
bne _02112fb8
mov r0, #1
b _02112fba
_02112fb8:
mov r0, #0
_02112fba:
cmp r0, #0
beq _02112fda
add r0, r4, #0
blx func_02038b40
mov r0, #0
strb r0, [r5, #0x1c]
ldr r0, _02112fe0 ; =data_ov00_020eec9c
mov r1, #0x18
blx func_ov00_020d77e4
pop {r3, r4, r5, pc}
_02112fd2:
add r0, r5, #0
add r1, r4, #0
blx func_02037854
_02112fda:
pop {r3, r4, r5, pc}
.align 2, 0
thumb_func_end func_ov10_02112f80
_02112fdc: .word data_027e0d54
_02112fe0: .word data_ov00_020eec9c
.global func_ov10_02112fe4
thumb_func_start func_ov10_02112fe4
func_ov10_02112fe4: ; 0x02112fe4
push {r3, lr}
ldrb r2, [r1, #1]
cmp r2, #0x1e
bne _02112ffa
ldr r2, [r1, #4]
cmp r2, #4
bne _02112ffa
mov r1, #1
strb r1, [r0, #0x1c]
add r0, r1, #0
pop {r3, pc}
_02112ffa:
blx func_02037f58
pop {r3, pc}
thumb_func_end func_ov10_02112fe4
.global func_ov10_02113000
thumb_func_start func_ov10_02113000
func_ov10_02113000: ; 0x02113000
push {r0, r1, r2, r3}
push {r3, r4}
ldr r3, [sp, #0x10]
ldrb r2, [r3, #3]
lsl r4, r2, #0x10
ldrh r2, [r3, #4]
add r3, r4, #0
orr r3, r2
ldr r2, _02113034 ; =0x00fe0001
cmp r3, r2
bne _0211302a
ldr r1, [r1, #0x14]
ldr r2, _02113038 ; =data_ov10_0211e750
add r1, #0xd2
ldrb r1, [r1]
lsl r1, r1, #3
add r1, r2, r1
str r1, [r0]
pop {r3, r4}
add sp, #0x10
bx lr
_0211302a:
mov r1, #0
str r1, [r0]
pop {r3, r4}
add sp, #0x10
bx lr
.align 2, 0
thumb_func_end func_ov10_02113000
_02113034: .word 0x00fe0001
_02113038: .word data_ov10_0211e750
.global func_ov10_0211303c
thumb_func_start func_ov10_0211303c
func_ov10_0211303c: ; 0x0211303c
push {r3, r4, r5, r6, r7, lr}
add r5, r0, #0
str r1, [r5]
str r2, [r5, #4]
str r2, [r5, #8]
mov r0, #0
str r0, [r5, #0xc]
str r5, [r5, #0x10]
str r2, [r5, #0x14]
str r0, [r5, #0x18]
str r0, [r5, #0x50]
str r0, [r5, #0x54]
add r0, r5, #0
add r0, #0x68
bl func_0202ab78
ldr r1, _021132c4 ; =data_027e0ce0
mov r0, #0x10
ldr r1, [r1, #4]
mov r2, #4
blx _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _02113070
blx func_ov01_020f6e28
_02113070:
add r1, r5, #0
add r1, #0x8c
str r0, [r1]
add r0, r5, #0
mov r1, #0
add r0, #0x90
str r1, [r0]
add r0, r5, #0
add r0, #0x94
add r1, r5, #0
bl func_ov10_02112f68
add r1, r5, #0
mov r0, #0
add r1, #0xd0
strb r0, [r1]
add r1, r5, #0
add r1, #0xd1
strb r0, [r1]
add r1, r5, #0
mov r2, #0xff
add r1, #0xd2
strb r2, [r1]
add r1, r5, #0
mov r2, #6
add r1, #0xd3
strb r2, [r1]
add r1, r5, #0
add r1, #0xd5
strb r0, [r1]
add r1, r5, #0
add r1, #0x58
mov r2, #0x10
blx func_020078f4
mov r1, #0
add r0, r5, #0
mvn r1, r1
add r0, #0x64
strb r1, [r0]
mov r1, #0
add r2, r5, #0
add r0, r1, #0
_021130c6:
add r1, r1, #1
str r0, [r2, #0x1c]
add r2, r2, #4
cmp r1, #0xd
blt _021130c6
ldr r1, _021132c4 ; =data_027e0ce0
mov r0, #0x18
ldr r1, [r1, #4]
mov r2, #4
blx _ZN9SysObjectnwEmPjj
add r4, r0, #0
beq _021130ee
add r1, r5, #0
mov r2, #2
mov r3, #0
bl func_ov10_02112f18
ldr r0, _021132c8 ; =data_ov10_0211ec88
str r0, [r4]
_021130ee:
ldr r1, _021132c4 ; =data_027e0ce0
str r4, [r5, #0x1c]
ldr r1, [r1, #4]
mov r0, #0xc0
mov r2, #4
blx _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _02113106
add r1, r5, #0
bl func_ov10_02113de0
_02113106:
ldr r1, _021132c4 ; =data_027e0ce0
str r0, [r5, #0x20]
ldr r1, [r1, #4]
mov r0, #0xbc
mov r2, #4
blx _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _0211311e
add r1, r5, #0
bl func_ov10_02115424
_0211311e:
ldr r1, _021132c4 ; =data_027e0ce0
str r0, [r5, #0x24]
ldr r1, [r1, #4]
mov r0, #0x90
mov r2, #4
blx _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _02113136
add r1, r5, #0
bl func_ov10_02116c4c
_02113136:
ldr r1, _021132c4 ; =data_027e0ce0
str r0, [r5, #0x28]
mov r0, #0x59
ldr r1, [r1, #4]
lsl r0, r0, #2
mov r2, #4
blx _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _02113150
add r1, r5, #0
bl func_ov10_02118b38
_02113150:
ldr r1, _021132c4 ; =data_027e0ce0
str r0, [r5, #0x2c]
ldr r1, [r1, #4]
mov r0, #0x58
mov r2, #4
blx _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _02113168
add r1, r5, #0
bl func_ov10_02116608
_02113168:
ldr r1, _021132c4 ; =data_027e0ce0
str r0, [r5, #0x30]
mov r0, #0x4d
ldr r1, [r1, #4]
lsl r0, r0, #2
mov r2, #4
blx _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _02113182
add r1, r5, #0
bl func_ov10_02114704
_02113182:
ldr r1, _021132c4 ; =data_027e0ce0
str r0, [r5, #0x34]
ldr r1, [r1, #4]
mov r0, #0xe8
mov r2, #4
blx _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _0211319a
add r1, r5, #0
bl func_ov10_0211a9dc
_0211319a:
ldr r1, _021132c4 ; =data_027e0ce0
str r0, [r5, #0x38]
mov r0, #0x79
ldr r1, [r1, #4]
lsl r0, r0, #2
mov r2, #4
blx _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _021131b4
add r1, r5, #0
bl func_ov10_0211b324
_021131b4:
ldr r1, _021132c4 ; =data_027e0ce0
str r0, [r5, #0x3c]
ldr r1, [r1, #4]
mov r0, #0x30
mov r2, #4
blx _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _021131cc
add r1, r5, #0
bl func_ov10_0211b500
_021131cc:
ldr r1, _021132c4 ; =data_027e0ce0
str r0, [r5, #0x40]
ldr r1, [r1, #4]
mov r0, #0xd4
mov r2, #4
blx _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _021131e4
add r1, r5, #0
bl func_ov10_0211b8f8
_021131e4:
ldr r1, _021132c4 ; =data_027e0ce0
str r0, [r5, #0x44]
ldr r0, _021132cc ; =0x0000044c
ldr r1, [r1, #4]
mov r2, #4
blx _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _021131fc
add r1, r5, #0
bl func_ov10_0211d268
_021131fc:
ldr r1, _021132c4 ; =data_027e0ce0
str r0, [r5, #0x48]
ldr r1, [r1, #4]
mov r0, #0x18
mov r2, #4
blx _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _02113214
add r1, r5, #0
bl func_ov10_0211e2dc
_02113214:
ldr r1, _021132c4 ; =data_027e0ce0
str r0, [r5, #0x4c]
ldr r1, [r1, #4]
mov r0, #8
mov r2, #4
blx func_0202e9f4
mov r6, #0
ldr r7, _021132c4 ; =data_027e0ce0
str r0, [r5, #0x50]
add r4, r6, #0
_0211322a:
mov r0, #0xb6
ldr r1, [r7, #4]
lsl r0, r0, #2
mov r2, #4
blx _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _02113242
add r1, r5, #0
add r2, r6, #0
bl func_ov10_02115c04
_02113242:
ldr r1, [r5, #0x50]
str r0, [r1, r4]
add r0, r6, #1
lsl r0, r0, #0x10
asr r6, r0, #0x10
add r4, r4, #4
cmp r6, #2
blt _0211322a
ldr r1, _021132c4 ; =data_027e0ce0
mov r0, #0x15
ldr r1, [r1, #4]
lsl r0, r0, #6
mov r2, #4
blx _ZN9SysObjectnwEmPjj
add r7, r0, #0
beq _02113298
mov r0, #7
lsl r0, r0, #6
add r4, r7, r0
mov r0, #0x12
lsl r0, r0, #6
add r6, r7, r0
_02113270:
mov r0, #0
add r1, r4, #0
mov r2, #0x16
blx func_020078c0
add r4, #0x16
cmp r4, r6
blo _02113270
add r0, r6, #0
bl func_ov00_0207a4f0
add r0, r7, #0
add r0, #0x40
bl func_ov00_0207a5ac
mov r0, #0
add r1, r7, #0
mov r2, #0x40
blx func_020078f4
_02113298:
add r0, r5, #0
add r0, #0x68
str r7, [r5, #0x54]
bl func_0202ab54
add r1, r5, #0
ldr r0, _021132d0 ; =data_027e071c
add r1, #0x68
blx func_0202d77c
mov r0, #1
str r0, [r5, #0x68]
mov r2, #0
ldr r0, _021132d4 ; =data_ov00_020eec68
mov r1, #0x27
mov r3, #0x7f
str r2, [r5, #0x70]
blx func_ov00_020d70a4
add r0, r5, #0
pop {r3, r4, r5, r6, r7, pc}
nop
thumb_func_end func_ov10_0211303c
_021132c4: .word data_027e0ce0
_021132c8: .word data_ov10_0211ec88
_021132cc: .word 0x0000044c
_021132d0: .word data_027e071c
_021132d4: .word data_ov00_020eec68
.global func_ov10_021132d8
thumb_func_start func_ov10_021132d8
func_ov10_021132d8: ; 0x021132d8
push {r4, lr}
add r4, r0, #0
blx func_0203780c
add r0, r4, #0
pop {r4, pc}
thumb_func_end func_ov10_021132d8
.global func_ov10_021132e4
thumb_func_start func_ov10_021132e4
func_ov10_021132e4: ; 0x021132e4
push {r3, r4, r5, r6, r7, lr}
add r7, r0, #0
add r0, #0x8c
ldr r4, [r0]
cmp r4, #0
beq _021132fc
add r0, r4, #0
blx func_ov01_020f6e50
add r0, r4, #0
blx _ZN9SysObjectdlEPv
_021132fc:
ldr r0, [r7, #0x54]
blx _ZN9SysObjectdlEPv
mov r6, #0
add r5, r6, #0
_02113306:
ldr r0, [r7, #0x50]
ldr r4, [r0, r5]
cmp r4, #0
beq _0211331a
add r0, r4, #0
bl func_ov10_02115cd4
add r0, r4, #0
blx _ZN9SysObjectdlEPv
_0211331a:
add r0, r6, #1
lsl r0, r0, #0x10
asr r6, r0, #0x10
add r5, r5, #4
cmp r6, #2
blt _02113306
ldr r0, [r7, #0x50]
blx func_0202ea18
mov r4, #0
add r5, r7, #0
_02113330:
ldr r0, [r5, #0x1c]
cmp r0, #0
beq _0211333c
ldr r1, [r0]
ldr r1, [r1, #4]
blx r1
_0211333c:
add r4, r4, #1
add r5, r5, #4
cmp r4, #0xd
blt _02113330
add r0, r7, #0
add r0, #0x94
blx func_0203780c
add r0, r7, #0
add r0, #0x68
bl func_0202ab64
add r0, r7, #0
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end func_ov10_021132e4
.global func_ov10_02113358
thumb_func_start func_ov10_02113358
func_ov10_02113358: ; 0x02113358
ldr r2, [r0]
lsl r0, r1, #2
add r0, r2, r0
ldr r0, [r0, #0xc]
bx lr
.align 2, 0
thumb_func_end func_ov10_02113358
.global func_ov10_02113364
thumb_func_start func_ov10_02113364
func_ov10_02113364: ; 0x02113364
ldr r0, [r0]
ldr r3, _02113374 ; =func_0202cec8
str r1, [r0, #8]
add r1, r2, #0
ldr r0, _02113378 ; =data_027e0618
mov r2, #0
bx r3
nop
thumb_func_end func_ov10_02113364
_02113374: .word func_0202cec8
_02113378: .word data_027e0618
.global func_ov10_0211337c
thumb_func_start func_ov10_0211337c
func_ov10_0211337c: ; 0x0211337c
push {r4, r5, r6, lr}
add r4, r0, #0
add r1, r4, #0
mov r0, #0
add r1, #0xd5
strb r0, [r1]
add r1, r4, #0
add r1, #0xd0
ldrb r1, [r1]
cmp r1, #1
bne _021133be
ldr r1, _02113518 ; =data_027e0d54
ldrb r1, [r1, #0xd]
cmp r1, #0
bne _0211339c
mov r0, #1
_0211339c:
cmp r0, #0
beq _021133be
add r0, r4, #0
mov r1, #0xff
add r0, #0xd2
strb r1, [r0]
add r0, r4, #0
mov r1, #0
add r0, #0xd3
strb r1, [r0]
add r0, r4, #0
bl func_ov10_021135b0
add r0, r4, #0
mov r1, #0
add r0, #0xd0
strb r1, [r0]
_021133be:
add r0, r4, #0
add r0, #0xd3
ldrb r0, [r0]
cmp r0, #6
beq _02113470
add r1, r4, #0
add r1, #0x90
ldr r1, [r1]
cmp r1, #0
bne _02113470
add r1, r4, #0
add r1, #0xac
ldr r2, [r1]
ldr r1, _0211351c ; =0xffff0000
and r2, r1
mov r1, #1
lsl r1, r1, #0x18
cmp r2, r1
bne _02113470
cmp r0, #5
bhi _02113462
add r0, r0, r0
add r0, pc
ldrh r0, [r0, #6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_021133f4: ; jump table
.short _02113400 - _021133f4 - 2 ; case 0
.short _02113408 - _021133f4 - 2 ; case 1
.short _02113412 - _021133f4 - 2 ; case 2
.short _02113432 - _021133f4 - 2 ; case 3
.short _0211343c - _021133f4 - 2 ; case 4
.short _0211345c - _021133f4 - 2 ; case 5
_02113400:
add r0, r4, #0
bl func_ov10_021138a4
b _02113462
_02113408:
add r0, r4, #0
mov r1, #0
bl func_ov10_021138e4
b _02113462
_02113412:
add r0, r4, #0
add r0, #0xd1
ldrb r0, [r0]
cmp r0, #0
beq _02113462
add r1, r4, #0
ldr r0, _02113520 ; =data_027e0c68
ldr r2, _02113524 ; =0x00ca000b
add r1, #0x94
blx func_02036ce4
add r0, r4, #0
mov r1, #0
add r0, #0xd1
strb r1, [r0]
b _02113462
_02113432:
add r0, r4, #0
mov r1, #1
bl func_ov10_021138e4
b _02113462
_0211343c:
add r0, r4, #0
add r0, #0xd1
ldrb r0, [r0]
cmp r0, #0
beq _02113462
add r1, r4, #0
ldr r0, _02113520 ; =data_027e0c68
ldr r2, _02113524 ; =0x00ca000b
add r1, #0x94
blx func_02036ce4
add r0, r4, #0
mov r1, #0
add r0, #0xd1
strb r1, [r0]
b _02113462
_0211345c:
add r0, r4, #0
bl func_ov10_021135b0
_02113462:
add r0, r4, #0
add r0, #0xd3
ldrb r0, [r0]
add r1, r0, #1
add r0, r4, #0
add r0, #0xd3
strb r1, [r0]
_02113470:
add r0, r4, #0
add r0, #0xac
ldr r1, [r0]
ldr r0, _0211351c ; =0xffff0000
and r1, r0
mov r0, #1
lsl r0, r0, #0x18
cmp r1, r0
beq _0211348e
add r1, r4, #0
ldr r0, _02113520 ; =data_027e0c68
add r1, #0x94
blx func_02036888
b _021134aa
_0211348e:
add r0, r4, #0
add r0, #0x90
ldr r1, [r0]
cmp r1, #0
beq _021134aa
mov r0, #0x57
lsl r0, r0, #2
ldrsh r0, [r1, r0]
cmp r0, #0
bgt _021134aa
add r0, r4, #0
mov r1, #0
add r0, #0x90
str r1, [r0]
_021134aa:
add r0, r4, #0
add r0, #0xd3
ldrb r0, [r0]
cmp r0, #6
bne _02113516
ldr r0, [r4, #0xc]
add r0, r0, #1
str r0, [r4, #0xc]
bpl _021134c0
mov r0, #0
str r0, [r4, #0xc]
_021134c0:
ldr r0, [r4, #4]
lsl r0, r0, #2
add r0, r4, r0
ldr r0, [r0, #0x1c]
ldr r1, [r0]
ldr r1, [r1, #0x10]
blx r1
mov r6, #0
add r5, r6, #0
_021134d2:
ldr r0, [r4, #0x50]
ldr r0, [r0, r5]
blx func_ov10_02115f54
add r6, r6, #1
add r5, r5, #4
cmp r6, #2
blt _021134d2
ldr r5, [r4, #0x14]
ldr r0, [r4, #4]
cmp r0, r5
beq _02113516
lsl r0, r0, #2
add r0, r4, r0
ldr r0, [r0, #0x1c]
ldr r6, [r4, #0x18]
ldr r1, [r0]
ldr r1, [r1, #0xc]
blx r1
mov r0, #0
str r0, [r4, #0xc]
ldr r0, [r4, #4]
add r1, r6, #0
str r0, [r4, #8]
lsl r0, r5, #2
str r5, [r4, #4]
add r0, r4, r0
ldr r0, [r0, #0x1c]
ldr r2, [r0]
ldr r2, [r2, #8]
blx r2
mov r0, #1
add r4, #0xd5
strb r0, [r4]
_02113516:
pop {r4, r5, r6, pc}
.align 2, 0
thumb_func_end func_ov10_0211337c
_02113518: .word data_027e0d54
_0211351c: .word 0xffff0000
_02113520: .word data_027e0c68
_02113524: .word 0x00ca000b
.global func_ov10_02113528
thumb_func_start func_ov10_02113528
func_ov10_02113528: ; 0x02113528
push {r4, r5, r6, lr}
add r5, r0, #0
add r0, #0xd5
ldrb r0, [r0]
cmp r0, #0
beq _02113540
add r0, r5, #0
ldr r1, [r5, #4]
ldr r2, [r5, #8]
add r0, #0x10
blx func_ov10_0211c95c
_02113540:
mov r6, #0
add r4, r6, #0
_02113544:
ldr r0, [r5, #0x50]
ldr r0, [r0, r4]
blx func_ov10_02116098
add r6, r6, #1
add r4, r4, #4
cmp r6, #2
blt _02113544
ldr r0, [r5, #4]
lsl r0, r0, #2
add r0, r5, r0
ldr r0, [r0, #0x1c]
ldr r1, [r0]
ldr r1, [r1, #0x18]
blx r1
add r5, #0x8c
ldr r0, [r5]
blx func_ov01_020f6fc4
pop {r4, r5, r6, pc}
thumb_func_end func_ov10_02113528
.global func_ov10_0211356c
thumb_func_start func_ov10_0211356c
func_ov10_0211356c: ; 0x0211356c
push {r3, lr}
ldr r1, [r0, #4]
lsl r1, r1, #2
add r0, r0, r1
ldr r0, [r0, #0x1c]
ldr r1, [r0]
ldr r1, [r1, #0x14]
blx r1
pop {r3, pc}
.align 2, 0
thumb_func_end func_ov10_0211356c
.global func_ov10_02113580
thumb_func_start func_ov10_02113580
func_ov10_02113580: ; 0x02113580
push {r3, lr}
ldr r1, [r0, #4]
lsl r1, r1, #2
add r0, r0, r1
ldr r0, [r0, #0x1c]
ldr r1, [r0]
ldr r1, [r1, #0xc]
blx r1
blx func_02004c68
blx func_02004c7c
blx func_02004ba8
blx func_02004b94
blx func_02004c90
blx func_02004c54
pop {r3, pc}
.align 2, 0
thumb_func_end func_ov10_02113580
.global func_ov10_021135ac
thumb_func_start func_ov10_021135ac
func_ov10_021135ac: ; 0x021135ac
bx lr
.align 2, 0
thumb_func_end func_ov10_021135ac
.global func_ov10_021135b0
thumb_func_start func_ov10_021135b0
func_ov10_021135b0: ; 0x021135b0
push {r4, r5, r6, lr}
sub sp, #8
mov r4, #0
add r6, r0, #0
add r5, r4, #0
_021135ba:
ldr r0, [r6, #0x50]
ldr r0, [r0, r5]
bl func_ov10_02115d00
add r0, r4, #1
lsl r0, r0, #0x10
asr r4, r0, #0x10
add r5, r5, #4
cmp r4, #2
blt _021135ba
mov r0, #0
str r0, [sp, #4]
str r0, [sp]
ldr r0, _02113614 ; =0x00000112
mov r1, #1
add r2, sp, #4
add r3, sp, #0
blx func_02034698
ldr r1, [sp, #4]
ldr r0, _02113618 ; =0x00000113
ldr r3, [sp]
add r2, r1, r0
add r0, r6, #0
mov r1, #0
str r2, [sp, #4]
bl func_ov10_0211361c
ldr r0, _02113614 ; =0x00000112
mov r1, #0x1a
add r2, sp, #4
add r3, sp, #0
blx func_02034698
ldr r1, [sp, #4]
ldr r0, _02113618 ; =0x00000113
ldr r3, [sp]
add r2, r1, r0
add r0, r6, #0
mov r1, #1
str r2, [sp, #4]
bl func_ov10_0211361c
add sp, #8
pop {r4, r5, r6, pc}
.align 2, 0
thumb_func_end func_ov10_021135b0
_02113614: .word 0x00000112
_02113618: .word 0x00000113
.global func_ov10_0211361c
thumb_func_start func_ov10_0211361c
func_ov10_0211361c: ; 0x0211361c
push {r3, r4}
ldr r4, [r0, #0x50]
lsl r0, r1, #2
lsl r1, r2, #0x10
ldr r0, [r4, r0]
asr r4, r1, #0x10
ldr r1, _02113648 ; =0x000002ca
lsl r2, r3, #0x10
asr r3, r2, #0x10
strh r4, [r0, r1]
add r2, r1, #2
strh r3, [r0, r2]
add r2, r1, #4
strh r4, [r0, r2]
add r1, r1, #6
strh r3, [r0, r1]
mov r1, #0x1a
ldrsh r1, [r0, r1]
strh r1, [r0, #0x18]
pop {r3, r4}
bx lr
nop
thumb_func_end func_ov10_0211361c
_02113648: .word 0x000002ca
.global func_ov10_0211364c
thumb_func_start func_ov10_0211364c
func_ov10_0211364c: ; 0x0211364c
push {r3, r4, r5, r6, r7, lr}
add r7, r1, #0
ldr r1, _02113754 ; =data_027e0d54
add r4, r3, #0
ldrh r3, [r1, #0x16]
add r0, r2, #0
ldr r5, [sp, #0x18]
add r1, r3, #1
lsr r2, r1, #0x1f
lsl r6, r1, #0x1f
sub r6, r6, r2
mov r1, #0x1f
ror r6, r1
cmp r0, #1
beq _0211366c
add r3, r2, r6
_0211366c:
cmp r7, #4
bhi _02113752
add r1, r7, r7
add r1, pc
ldrh r1, [r1, #6]
lsl r1, r1, #0x10
asr r1, r1, #0x10
add pc, r1
_0211367c: ; jump table
.short _02113686 - _0211367c - 2 ; case 0
.short _021136a4 - _0211367c - 2 ; case 1
.short _021136ba - _0211367c - 2 ; case 2
.short _021136ea - _0211367c - 2 ; case 3
.short _0211371c - _0211367c - 2 ; case 4
_02113686:
cmp r3, #0
bne _0211368e
mov r1, #1
b _02113690
_0211368e:
mov r1, #0x1a
_02113690:
ldr r0, _02113758 ; =0x00000112
add r2, r4, #0
add r3, r5, #0
blx func_02034698
ldr r1, [r4]
ldr r0, _0211375c ; =0x00000113
add r0, r1, r0
str r0, [r4]
pop {r3, r4, r5, r6, r7, pc}
_021136a4:
cmp r3, #0
bne _021136ac
mov r1, #1
b _021136ae
_021136ac:
mov r1, #0x1a
_021136ae:
ldr r0, _02113758 ; =0x00000112
add r2, r4, #0
add r3, r5, #0
blx func_02034698
pop {r3, r4, r5, r6, r7, pc}
_021136ba:
cmp r0, #0
beq _021136cc
ldr r0, _02113758 ; =0x00000112
mov r1, #1
add r2, r4, #0
add r3, r5, #0
blx func_02034698
pop {r3, r4, r5, r6, r7, pc}
_021136cc:
cmp r3, #0
bne _021136d4
mov r1, #1
b _021136d6
_021136d4:
mov r1, #0x1a
_021136d6:
ldr r0, _02113758 ; =0x00000112
add r2, r4, #0
add r3, r5, #0
blx func_02034698
ldr r1, [r4]
ldr r0, _0211375c ; =0x00000113
add r0, r1, r0
str r0, [r4]
pop {r3, r4, r5, r6, r7, pc}
_021136ea:
cmp r0, #0
beq _021136fe
mov r0, #0x45
lsl r0, r0, #2
mov r1, #4
add r2, r4, #0
add r3, r5, #0
blx func_02034698
pop {r3, r4, r5, r6, r7, pc}
_021136fe:
cmp r3, #0
bne _02113706
mov r1, #1
b _02113708
_02113706:
mov r1, #0x1a
_02113708:
ldr r0, _02113758 ; =0x00000112
add r2, r4, #0
add r3, r5, #0
blx func_02034698
ldr r1, [r4]
ldr r0, _0211375c ; =0x00000113
add r0, r1, r0
str r0, [r4]
pop {r3, r4, r5, r6, r7, pc}
_0211371c:
cmp r0, #0
beq _02113736
mov r0, #0x45
lsl r0, r0, #2
mov r1, #4
add r2, r4, #0
add r3, r5, #0
blx func_02034698
mov r0, #0x63
mvn r0, r0
str r0, [r5]
pop {r3, r4, r5, r6, r7, pc}
_02113736:
cmp r3, #0
bne _0211373e
mov r1, #1
b _02113740
_0211373e:
mov r1, #0x1a
_02113740:
ldr r0, _02113758 ; =0x00000112
add r2, r4, #0
add r3, r5, #0
blx func_02034698
ldr r1, [r5]
ldr r0, _0211375c ; =0x00000113
add r0, r1, r0
str r0, [r5]
_02113752:
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
thumb_func_end func_ov10_0211364c
_02113754: .word data_027e0d54
_02113758: .word 0x00000112
_0211375c: .word 0x00000113
.global func_ov10_02113760
thumb_func_start func_ov10_02113760
func_ov10_02113760: ; 0x02113760
push {r4, r5, r6, r7, lr}
sub sp, #0x14
ldr r2, _021137ec ; =data_027e0d54
add r5, r0, #0
ldrh r4, [r2, #0x16]
add r2, sp, #0xc
add r3, sp, #0x10
str r2, [sp]
mov r2, #1
add r7, r1, #0
bl func_ov10_0211364c
ldr r1, [sp, #0x10]
ldr r0, [sp, #0xc]
lsl r1, r1, #0x10
lsl r0, r0, #0x10
ldr r3, [r5, #0x50]
lsl r2, r4, #2
ldr r2, [r3, r2]
ldr r3, _021137f0 ; =0x000002ca
asr r1, r1, #0x10
strh r1, [r2, r3]
asr r0, r0, #0x10
add r6, r3, #2
strh r0, [r2, r6]
add r6, r3, #4
strh r1, [r2, r6]
add r1, r3, #6
strh r0, [r2, r1]
mov r0, #0x1a
ldrsh r0, [r2, r0]
add r1, r7, #0
add r3, sp, #8
strh r0, [r2, #0x18]
add r0, sp, #4
str r0, [sp]
add r0, r5, #0
mov r2, #0
bl func_ov10_0211364c
add r3, r4, #1
ldr r0, [r5, #0x50]
ldr r1, [sp, #8]
ldr r2, [sp, #4]
lsr r5, r3, #0x1f
lsl r4, r3, #0x1f
sub r4, r4, r5
mov r3, #0x1f
ror r4, r3
add r3, r5, r4
lsl r3, r3, #2
lsl r1, r1, #0x10
asr r4, r1, #0x10
ldr r0, [r0, r3]
ldr r1, _021137f0 ; =0x000002ca
lsl r2, r2, #0x10
asr r3, r2, #0x10
strh r4, [r0, r1]
add r2, r1, #2
strh r3, [r0, r2]
add r2, r1, #4
strh r4, [r0, r2]
add r1, r1, #6
strh r3, [r0, r1]
mov r1, #0x1a
ldrsh r1, [r0, r1]
strh r1, [r0, #0x18]
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
thumb_func_end func_ov10_02113760
_021137ec: .word data_027e0d54
_021137f0: .word 0x000002ca
.global func_ov10_021137f4
thumb_func_start func_ov10_021137f4
func_ov10_021137f4: ; 0x021137f4
push {r3, r4, r5, r6, lr}
sub sp, #0x14
ldr r2, _02113860 ; =data_027e0d54
add r5, r0, #0
ldrh r4, [r2, #0x16]
add r2, sp, #0xc
add r3, sp, #0x10
str r2, [sp]
mov r2, #1
add r6, r1, #0
bl func_ov10_0211364c
ldr r2, [r5, #0x50]
lsl r0, r4, #2
ldr r0, [r2, r0]
ldr r1, [sp, #0xc]
ldr r3, [sp, #0x10]
ldr r2, _02113864 ; =0x000002ce
strh r3, [r0, r2]
add r2, r2, #2
strh r1, [r0, r2]
mov r1, #0x1a
ldrsh r1, [r0, r1]
mov r2, #0
add r3, sp, #8
strh r1, [r0, #0x18]
add r0, sp, #4
str r0, [sp]
add r0, r5, #0
add r1, r6, #0
bl func_ov10_0211364c
add r2, r4, #1
lsr r4, r2, #0x1f
lsl r3, r2, #0x1f
sub r3, r3, r4
mov r2, #0x1f
ror r3, r2
add r2, r4, r3
ldr r0, [r5, #0x50]
lsl r2, r2, #2
ldr r3, [r0, r2]
ldr r1, [sp, #4]
ldr r2, [sp, #8]
ldr r0, _02113864 ; =0x000002ce
strh r2, [r3, r0]
add r0, r0, #2
strh r1, [r3, r0]
mov r0, #0x1a
ldrsh r0, [r3, r0]
strh r0, [r3, #0x18]
add sp, #0x14
pop {r3, r4, r5, r6, pc}
nop
thumb_func_end func_ov10_021137f4
_02113860: .word data_027e0d54
_02113864: .word 0x000002ce
.global func_ov10_02113868
thumb_func_start func_ov10_02113868
func_ov10_02113868: ; 0x02113868
ldr r2, [r0, #0x50]
lsl r0, r1, #2
ldr r0, [r2, r0]
bx lr
thumb_func_end func_ov10_02113868
.global func_ov10_02113870
thumb_func_start func_ov10_02113870
func_ov10_02113870: ; 0x02113870
ldr r2, [r0, #0x50]
lsl r0, r1, #2
ldr r0, [r2, r0]
bx lr
thumb_func_end func_ov10_02113870
.global func_ov10_02113878
thumb_func_start func_ov10_02113878
func_ov10_02113878: ; 0x02113878
push {r4, lr}
ldr r4, [r0, #0x50]
lsl r0, r1, #2
ldr r0, [r4, r0]
add r1, r2, #0
ldr r4, [r0]
add r2, r3, #0
ldr r4, [r4]
mov r3, #0
blx r4
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_02113878
.global func_ov10_02113890
thumb_func_start func_ov10_02113890
func_ov10_02113890: ; 0x02113890
push {r4, lr}
ldr r4, [r0, #0x50]
lsl r0, r1, #2
ldr r0, [r4, r0]
add r1, r2, #0
add r2, r3, #0
blx func_ov10_0211609c
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_02113890
.global func_ov10_021138a4
thumb_func_start func_ov10_021138a4
func_ov10_021138a4: ; 0x021138a4
push {r4, lr}
add r4, r0, #0
mov r2, #0
add r0, #0x90
str r2, [r0]
ldr r0, _021138d8 ; =data_ov00_020ee698
ldrb r1, [r0]
cmp r1, #0
beq _021138c8
strb r2, [r0]
ldr r0, _021138dc ; =data_027e0c68
ldr r1, _021138e0 ; =0x00130016
sub r2, r2, #1
blx func_02036edc
add r1, r4, #0
add r1, #0x90
str r0, [r1]
_021138c8:
add r4, #0x90
ldr r0, [r4]
cmp r0, #0
beq _021138d4
mov r0, #1
pop {r4, pc}
_021138d4:
mov r0, #0
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_021138a4
_021138d8: .word data_ov00_020ee698
_021138dc: .word data_027e0c68
_021138e0: .word 0x00130016
.global func_ov10_021138e4
thumb_func_start func_ov10_021138e4
func_ov10_021138e4: ; 0x021138e4
push {r4, lr}
add r4, r0, #0
add r2, r4, #0
add r2, #0xd2
strb r1, [r2]
add r1, r4, #0
add r1, #0xd2
ldrb r1, [r1]
bl func_ov10_02113358
ldr r1, _02113994 ; =0x00003508
ldr r0, [r0, r1]
cmp r0, #6
bhi _0211397a
add r0, r0, r0
add r0, pc
ldrh r0, [r0, #6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_0211390c: ; jump table
.short _0211391a - _0211390c - 2 ; case 0
.short _02113928 - _0211390c - 2 ; case 1
.short _02113936 - _0211390c - 2 ; case 2
.short _02113944 - _0211390c - 2 ; case 3
.short _02113952 - _0211390c - 2 ; case 4
.short _02113960 - _0211390c - 2 ; case 5
.short _0211396e - _0211390c - 2 ; case 6
_0211391a:
add r1, r4, #0
ldr r0, _02113998 ; =data_027e0c68
ldr r2, _0211399c ; =0x00ca0005
add r1, #0x94
blx func_02036ce4
b _0211397a
_02113928:
add r1, r4, #0
ldr r0, _02113998 ; =data_027e0c68
ldr r2, _021139a0 ; =0x00ca0006
add r1, #0x94
blx func_02036ce4
b _0211397a
_02113936:
add r1, r4, #0
ldr r0, _02113998 ; =data_027e0c68
ldr r2, _021139a4 ; =0x00ca0007
add r1, #0x94
blx func_02036ce4
b _0211397a
_02113944:
add r1, r4, #0
ldr r0, _02113998 ; =data_027e0c68
ldr r2, _021139a8 ; =0x00ca0008
add r1, #0x94
blx func_02036ce4
b _0211397a
_02113952:
add r1, r4, #0
ldr r0, _02113998 ; =data_027e0c68
ldr r2, _021139ac ; =0x00ca0009
add r1, #0x94
blx func_02036ce4
b _0211397a
_02113960:
add r1, r4, #0
ldr r0, _02113998 ; =data_027e0c68
ldr r2, _021139b0 ; =0x00ca000a
add r1, #0x94
blx func_02036ce4
b _0211397a
_0211396e:
add r1, r4, #0
ldr r0, _02113998 ; =data_027e0c68
ldr r2, _021139b4 ; =0x00ca000d
add r1, #0x94
blx func_02036ce4
_0211397a:
add r0, r4, #0
add r0, #0xac
ldr r1, [r0]
ldr r0, _021139b8 ; =0xffff0000
and r1, r0
mov r0, #1
lsl r0, r0, #0x18
cmp r1, r0
beq _02113992
mov r0, #1
add r4, #0xd1
strb r0, [r4]
_02113992:
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_021138e4
_02113994: .word 0x00003508
_02113998: .word data_027e0c68
_0211399c: .word 0x00ca0005
_021139a0: .word 0x00ca0006
_021139a4: .word 0x00ca0007
_021139a8: .word 0x00ca0008
_021139ac: .word 0x00ca0009
_021139b0: .word 0x00ca000a
_021139b4: .word 0x00ca000d
_021139b8: .word 0xffff0000
.global func_ov10_021139bc
thumb_func_start func_ov10_021139bc
func_ov10_021139bc: ; 0x021139bc
push {r3, r4, r5, lr}
add r5, r0, #0
add r4, r1, #0
add r0, #0x64
strb r4, [r0]
ldr r1, [r5, #0x54]
mov r0, #0xc
add r1, #0x40
mul r0, r4
add r0, r1, r0
bl func_ov00_0207792c
str r0, [r5, #0x58]
str r1, [r5, #0x5c]
mov r0, #7
ldr r1, [r5, #0x54]
lsl r0, r0, #6
add r1, r1, r0
mov r0, #0x16
mul r0, r4
add r0, r1, r0
str r0, [r5, #0x60]
pop {r3, r4, r5, pc}
.align 2, 0
thumb_func_end func_ov10_021139bc
.global func_ov10_021139ec
thumb_func_start func_ov10_021139ec
func_ov10_021139ec: ; 0x021139ec
push {r3, r4, lr}
sub sp, #4
ldr r1, _02113a44 ; =data_027e0d54
add r4, r0, #0
ldrh r1, [r1, #0x16]
bl func_ov10_02113358
ldr r1, _02113a48 ; =0x00002804
add r2, r0, r1
mov r0, #0x64
ldrsb r1, [r4, r0]
mov r0, #0xc
mul r0, r1
add r0, r2, r0
bl func_ov00_020777d0
cmp r0, #0
beq _02113a1e
mov r1, #0x64
ldrsb r1, [r4, r1]
add r0, r4, #0
bl func_ov10_02113a4c
cmp r0, #0
beq _02113a34
_02113a1e:
ldr r0, [r4, #0x60]
mov r1, #0x64
str r0, [sp]
ldrsb r1, [r4, r1]
ldr r0, [r4, #0x54]
ldr r2, [r4, #0x58]
ldr r3, [r4, #0x5c]
blx func_ov10_0211cbd0
add sp, #4
pop {r3, r4, pc}
_02113a34:
mov r1, #0x64
ldrsb r1, [r4, r1]
ldr r0, [r4, #0x54]
ldr r2, [r4, #0x60]
blx func_ov10_0211cc84
add sp, #4
pop {r3, r4, pc}
.align 2, 0
thumb_func_end func_ov10_021139ec
_02113a44: .word data_027e0d54
_02113a48: .word 0x00002804
.global func_ov10_02113a4c
thumb_func_start func_ov10_02113a4c
func_ov10_02113a4c: ; 0x02113a4c
ldr r3, _02113a54 ; =func_ov10_0211cb64
ldr r0, [r0, #0x54]
bx r3
nop
thumb_func_end func_ov10_02113a4c
_02113a54: .word func_ov10_0211cb64 - 1
.global func_ov10_02113a58
thumb_func_start func_ov10_02113a58
func_ov10_02113a58: ; 0x02113a58
push {r3, r4, r5, lr}
add r5, r0, #0
mov r0, #1
mov r4, #0
str r0, [r5, #0x68]
add r0, r5, #0
add r0, #0x68
mov r1, #0x20
add r2, r4, #0
str r4, [r5, #0x70]
bl func_0202abf4
cmp r0, #0
beq _02113a88
add r0, r5, #0
add r1, r4, #0
add r0, #0x88
strb r1, [r0]
add r5, #0x68
ldr r0, _02113a8c ; =data_027e071c
add r1, r5, #0
blx func_0202d77c
mov r4, #1
_02113a88:
add r0, r4, #0
pop {r3, r4, r5, pc}
.align 2, 0
thumb_func_end func_ov10_02113a58
_02113a8c: .word data_027e071c
.global func_ov10_02113a90
thumb_func_start func_ov10_02113a90
func_ov10_02113a90: ; 0x02113a90
push {r3, r4, r5, lr}
add r5, r0, #0
mov r4, #0
str r4, [r5, #0x68]
add r0, #0x88
ldrb r0, [r0]
cmp r0, #0
beq _02113aa6
add r0, r4, #0
sub r0, #0x10
b _02113aa8
_02113aa6:
mov r0, #0x10
_02113aa8:
str r0, [r5, #0x70]
add r0, r5, #0
add r0, #0x68
mov r1, #0x20
mov r2, #0
bl func_0202abdc
cmp r0, #0
beq _02113ace
add r0, r5, #0
mov r1, #0
add r0, #0x88
strb r1, [r0]
add r5, #0x68
ldr r0, _02113ad4 ; =data_027e071c
add r1, r5, #0
blx func_0202d77c
mov r4, #1
_02113ace:
add r0, r4, #0
pop {r3, r4, r5, pc}
nop
thumb_func_end func_ov10_02113a90
_02113ad4: .word data_027e071c
.global func_ov10_02113ad8
thumb_func_start func_ov10_02113ad8
func_ov10_02113ad8: ; 0x02113ad8
push {r3, r4, r5, r6, lr}
sub sp, #0x1c
mov r0, #1
add r5, r1, #0
add r4, r2, #0
str r0, [sp]
mov r3, #0x33
ldr r0, _02113b58 ; =data_ov10_0211eb24
ldr r1, _02113b5c ; =data_ov10_0211eb28
ldr r2, _02113b60 ; =data_020691a0
lsl r3, r3, #0xa
bl func_0202d5b4
add r6, r0, #0
ldr r1, _02113b64 ; =data_ov10_0211eb3c
add r0, sp, #0x10
bl func_02031e1c
cmp r5, #0
beq _02113b24
ldr r2, _02113b68 ; =0x0400000c
mov r0, #0x43
ldrh r1, [r2]
mov r3, #1
and r1, r0
mov r0, #4
orr r0, r1
strh r0, [r2]
mov r2, #0
str r2, [sp]
str r2, [sp, #4]
str r2, [sp, #8]
mov r0, #0xf
str r0, [sp, #0xc]
add r0, sp, #0x10
mov r1, #2
bl func_02031f18
_02113b24:
cmp r4, #0
beq _02113b4c
ldr r2, _02113b6c ; =0x0400100c
mov r0, #0x43
ldrh r1, [r2]
mov r3, #1
and r1, r0
mov r0, #4
orr r0, r1
strh r0, [r2]
mov r2, #0
str r2, [sp]
str r2, [sp, #4]
str r2, [sp, #8]
mov r0, #0xf
str r0, [sp, #0xc]
add r0, sp, #0x10
mov r1, #6
bl func_02031f18
_02113b4c:
add r0, r6, #0
bl func_02016fcc
add sp, #0x1c
pop {r3, r4, r5, r6, pc}
nop
thumb_func_end func_ov10_02113ad8
_02113b58: .word data_ov10_0211eb24
_02113b5c: .word data_ov10_0211eb28
_02113b60: .word data_020691a0
_02113b64: .word data_ov10_0211eb3c
_02113b68: .word 0x0400000c
_02113b6c: .word 0x0400100c
.global func_ov10_02113b70
thumb_func_start func_ov10_02113b70
func_ov10_02113b70: ; 0x02113b70
push {r3, r4, lr}
sub sp, #0x1c
mov r0, #1
str r0, [sp]
mov r3, #0x33
ldr r0, _02113bb4 ; =data_ov10_0211eb48
ldr r1, _02113bb8 ; =data_ov10_0211eb4c
ldr r2, _02113bbc ; =data_020691a0
lsl r3, r3, #0xa
bl func_0202d5b4
add r4, r0, #0
ldr r1, _02113bc0 ; =data_ov10_0211eb68
add r0, sp, #0x10
bl func_02031e1c
mov r2, #1
str r2, [sp]
mov r0, #0
str r0, [sp, #4]
str r2, [sp, #8]
mov r0, #0xf
str r0, [sp, #0xc]
add r0, sp, #0x10
mov r1, #7
mov r3, #3
bl func_02031f18
add r0, r4, #0
bl func_02016fcc
add sp, #0x1c
pop {r3, r4, pc}
nop
thumb_func_end func_ov10_02113b70
_02113bb4: .word data_ov10_0211eb48
_02113bb8: .word data_ov10_0211eb4c
_02113bbc: .word data_020691a0
_02113bc0: .word data_ov10_0211eb68
.global func_ov10_02113bc4
thumb_func_start func_ov10_02113bc4
func_ov10_02113bc4: ; 0x02113bc4
push {r3, r4, lr}
sub sp, #4
add r4, r0, #0
mov r0, #1
blx func_02003f74
mov r0, #2
blx func_02003ce4
mov r0, #8
blx func_020047d8
mov r0, #4
blx func_02004730
mov r1, #0
mov r0, #1
add r2, r1, #0
blx func_02003a9c
mov r0, #0
blx func_02003b04
ldr r0, _02113c6c ; =0x0400100c
mov r2, #3
ldrh r3, [r0]
mov r1, #3
bic r3, r2
orr r1, r3
strh r1, [r0]
ldrh r3, [r0, #2]
mov r1, #2
bic r3, r2
orr r1, r3
strh r1, [r0, #2]
ldrh r1, [r0]
mov r2, #0x43
add r3, r1, #0
and r3, r2
mov r1, #4
orr r1, r3
strh r1, [r0]
ldrh r1, [r0, #2]
and r2, r1
ldr r1, _02113c70 ; =0x0000810c
orr r1, r2
strh r1, [r0, #2]
add r0, r4, #0
bl func_ov10_02113c80
mov r0, #1
lsl r0, r0, #0x1a
ldr r1, [r0]
ldr r2, _02113c74 ; =0xffffe0ff
add r3, r1, #0
mov r1, #5
and r3, r2
lsl r1, r1, #0xa
orr r1, r3
str r1, [r0]
ldr r3, _02113c78 ; =0x04001000
add r0, #0x50
ldr r1, [r3]
and r2, r1
mov r1, #7
lsl r1, r1, #0xa
orr r1, r2
str r1, [r3]
mov r1, #0
mov r2, #0x3f
mov r3, #0x1f
str r1, [sp]
blx func_020052e4
mov r1, #0
ldr r0, _02113c7c ; =0x04001050
mov r2, #0x3f
mov r3, #0x1f
str r1, [sp]
blx func_020052e4
add sp, #4
pop {r3, r4, pc}
nop
thumb_func_end func_ov10_02113bc4
_02113c6c: .word 0x0400100c
_02113c70: .word 0x0000810c
_02113c74: .word 0xffffe0ff
_02113c78: .word 0x04001000
_02113c7c: .word 0x04001050
.global func_ov10_02113c80
thumb_func_start func_ov10_02113c80
func_ov10_02113c80: ; 0x02113c80
push {r4, lr}
add r4, r0, #0
mov r2, #0
ldr r0, _02113ce4 ; =data_027e0cbc
mov r1, #0x2e
sub r3, r2, #1
blx func_0203d77c
mov r2, #0
ldr r0, _02113ce4 ; =data_027e0cbc
mov r1, #0x32
sub r3, r2, #1
blx func_0203d77c
mov r2, #0
ldr r0, _02113ce4 ; =data_027e0cbc
mov r1, #0x34
sub r3, r2, #1
blx func_0203d77c
mov r2, #0
ldr r0, _02113ce4 ; =data_027e0cbc
mov r1, #0x33
sub r3, r2, #1
blx func_0203d77c
mov r2, #0
ldr r0, _02113ce4 ; =data_027e0cbc
mov r1, #0x39
sub r3, r2, #1
blx func_0203d77c
ldr r0, _02113ce8 ; =data_027e0c38
mov r1, #7
mov r2, #0xf
mov r3, #0
blx func_02033e70
mov r1, #1
add r0, r4, #0
add r2, r1, #0
bl func_ov10_02113ad8
ldr r1, _02113cec ; =0x01060000
ldr r0, _02113cf0 ; =0x0400101c
str r1, [r0]
add r0, r4, #0
bl func_ov10_02113b70
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_02113c80
_02113ce4: .word data_027e0cbc
_02113ce8: .word data_027e0c38
_02113cec: .word 0x01060000
_02113cf0: .word 0x0400101c
.global func_ov10_02113cf4
thumb_func_start func_ov10_02113cf4
func_ov10_02113cf4: ; 0x02113cf4
push {r3, r4, r5, lr}
sub sp, #8
ldr r1, _02113d40 ; =data_027e0d54
add r5, r0, #0
ldrh r4, [r1, #0x16]
add r1, r4, #0
bl func_ov10_02113358
ldr r1, _02113d44 ; =0x00002804
add r0, r0, r1
blx func_ov01_020f5640
ldr r2, _02113d48 ; =0x0400000a
mov r0, #0x43
ldrh r1, [r2]
and r1, r0
add r0, #0xc9
orr r0, r1
strh r0, [r2]
add r0, r5, #0
add r1, r4, #0
bl func_ov10_02113358
add r3, r0, #0
mov r0, #3
ldr r1, _02113d4c ; =0x00002c44
str r0, [sp]
mov r2, #1
add r1, r3, r1
str r2, [sp, #4]
add r5, #0x8c
ldr r0, [r5]
add r3, r2, #0
blx func_ov01_020f6e68
add sp, #8
pop {r3, r4, r5, pc}
nop
thumb_func_end func_ov10_02113cf4
_02113d40: .word data_027e0d54
_02113d44: .word 0x00002804
_02113d48: .word 0x0400000a
_02113d4c: .word 0x00002c44
.global func_ov10_02113d50
thumb_func_start func_ov10_02113d50
func_ov10_02113d50: ; 0x02113d50
ldr r3, _02113d5c ; =func_ov01_020f6fa8
add r0, #0x8c
ldr r0, [r0]
mov r1, #1
bx r3
nop
thumb_func_end func_ov10_02113d50
_02113d5c: .word func_ov01_020f6fa8
.global func_ov10_02113d60
thumb_func_start func_ov10_02113d60
func_ov10_02113d60: ; 0x02113d60
ldr r3, _02113d6c ; =func_ov01_020f732c
add r0, #0x8c
ldr r0, [r0]
mov r1, #0
bx r3
nop
thumb_func_end func_ov10_02113d60
_02113d6c: .word func_ov01_020f732c
.global func_ov10_02113d70
thumb_func_start func_ov10_02113d70
func_ov10_02113d70: ; 0x02113d70
push {r4, lr}
sub sp, #0x18
add r0, sp, #0
add r4, r1, #0
blx func_02037628
mov r3, #0
add r0, sp, #0
strb r3, [r0, #0x15]
mov r1, #1
strb r1, [r0, #0x14]
ldr r0, _02113d9c ; =data_027e0c68
add r1, r4, #0
add r2, sp, #0
blx func_02036f68
ldr r1, _02113da0 ; =0x00000151
mov r2, #7
strb r2, [r0, r1]
add sp, #0x18
pop {r4, pc}
nop
thumb_func_end func_ov10_02113d70
_02113d9c: .word data_027e0c68
_02113da0: .word 0x00000151
.global func_ov10_02113da4
thumb_func_start func_ov10_02113da4
func_ov10_02113da4: ; 0x02113da4
push {r3, lr}
ldr r0, _02113dc0 ; =data_027e0c68
blx func_02036700
cmp r0, #0
beq _02113dbe
mov r1, #0x57
lsl r1, r1, #2
ldrsh r1, [r0, r1]
cmp r1, #0
ble _02113dbe
blx func_02038b40
_02113dbe:
pop {r3, pc}
.align 2, 0
thumb_func_end func_ov10_02113da4
_02113dc0: .word data_027e0c68
.global func_ov10_02113dc4
arm_func_start func_ov10_02113dc4
func_ov10_02113dc4: ; 0x02113dc4
stmdb sp!, {r4, lr}
mov r4, r0
bl func_0203780c
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_02113dc4
.global func_ov10_02113de0
thumb_func_start func_ov10_02113de0
func_ov10_02113de0: ; 0x02113de0
push {r4, lr}
sub sp, #0x10
mov r2, #9
mov r3, #3
add r4, r0, #0
bl func_ov10_02112f18
ldr r0, _02113e60 ; =data_ov10_0211ebc4
str r0, [r4]
mov r0, #0
strb r0, [r4, #0x18]
sub r0, r0, #1
str r0, [r4, #0x1c]
add r0, r4, #0
add r0, #0x20
blx func_02035064
ldr r0, _02113e64 ; =func_ov10_02113e6c
ldr r3, _02113e68 ; =func_ov10_02113e70
str r0, [sp]
add r0, r4, #0
add r0, #0xa8
mov r1, #1
mov r2, #0x18
blx func_0204f614
mov r2, #0
add r0, r4, #0
str r2, [sp]
add r0, #0x20
mov r1, #0x2f
add r3, r2, #0
str r2, [sp, #4]
blx func_020350b4
mov r1, #0
add r0, r4, #0
add r0, #0x20
add r2, r1, #0
add r3, r1, #0
str r1, [sp]
blx func_020351b8
mov r1, #0x55
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0xa8
add r1, #0xbd
mov r2, #0x33
mov r3, #2
blx func_ov00_020cfed0
add r0, r4, #0
mov r1, #0x36
add r0, #0xbb
strb r1, [r0]
add r0, r4, #0
add sp, #0x10
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_02113de0
_02113e60: .word data_ov10_0211ebc4
_02113e64: .word func_ov10_02113e6c - 1
_02113e68: .word func_ov10_02113e70 - 1
.global func_ov10_02113e6c
arm_func_start func_ov10_02113e6c
func_ov10_02113e6c: ; 0x02113e6c
bx lr
arm_func_end func_ov10_02113e6c
.global func_ov10_02113e70
arm_func_start func_ov10_02113e70
func_ov10_02113e70: ; 0x02113e70
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov00_020d05dc
ldr r0, _02113ea8 ; =data_ov00_020e899c
mov r1, #0
str r0, [r4]
strb r1, [r4, #0x10]
sub r0, r1, #1
strb r0, [r4, #0x11]
strb r0, [r4, #0x12]
strb r0, [r4, #0x13]
mov r0, r4
str r1, [r4, #0x14]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02113e70
_02113ea8: .word data_ov00_020e899c
.global func_ov10_02113eac
arm_func_start func_ov10_02113eac
func_ov10_02113eac: ; 0x02113eac
ldrb r1, [r0, #0x18]
cmp r1, #0
moveq r1, #1
streqb r1, [r0, #0x18]
bx lr
arm_func_end func_ov10_02113eac
.global func_ov10_02113ec0
arm_func_start func_ov10_02113ec0
func_ov10_02113ec0: ; 0x02113ec0
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldrb r2, [r5, #0x18]
mov r4, r1
cmp r2, #0
cmpeq r4, #2
bne _02113ee0
bl func_ov10_02113eac
_02113ee0:
mov r2, #1
mov r0, r5
mov r1, r4
strb r2, [r5, #0xb5]
bl func_ov10_02112f48
mov r0, r5
mov r1, r4
bl func_ov10_02113f14
mov r0, r5
ldr r1, [r0]
ldr r1, [r1, #0x10]
blx r1
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov10_02113ec0
.global func_ov10_02113f14
arm_func_start func_ov10_02113f14
func_ov10_02113f14: ; 0x02113f14
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldrb r2, [r5, #0x18]
mov r4, r1
cmp r2, #0
cmpeq r4, #2
bne _02113f34
bl func_ov10_02113eac
_02113f34:
cmp r4, #0
beq _02113f50
cmp r4, #2
beq _02113f6c
cmp r4, #6
beq _02113f9c
b _02113fbc
_02113f50:
ldr r1, _02113fcc ; =0x00000101
ldr r0, _02113fd0 ; =data_027e0c68
rsb r2, r1, #0x100
bl func_02036edc
mov r1, #7
strb r1, [r0, #0x151]
b _02113fbc
_02113f6c:
ldr r0, [r5, #8]
mov r1, #0
blx func_ov10_02113760
ldr r0, [r5, #8]
mov r1, #1
blx func_ov10_021137f4
ldr r0, [r5, #8]
mov r1, #1
blx func_ov10_02113870
mov r1, #5
strb r1, [r0, #0x2d4]
b _02113fbc
_02113f9c:
ldr r0, [r5, #8]
mov r1, #0
blx func_ov10_021137f4
ldr r0, [r5, #8]
mov r1, #1
blx func_ov10_02113870
mov r1, #5
strb r1, [r0, #0x2d4]
_02113fbc:
mov r0, #0
str r0, [r5, #0x14]
str r4, [r5, #0x10]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov10_02113f14
_02113fcc: .word 0x00000101
_02113fd0: .word data_027e0c68
.global func_ov10_02113fd4
arm_func_start func_ov10_02113fd4
func_ov10_02113fd4: ; 0x02113fd4
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x20
bl func_0203516c
ldr r0, [r4, #0x14]
adds r0, r0, #1
str r0, [r4, #0x14]
movmi r0, #0
strmi r0, [r4, #0x14]
ldr r0, [r4, #0x10]
cmp r0, #8
addls pc, pc, r0, lsl #2
ldmia sp!, {r4, pc}
_02114008: ; jump table
b _0211402c ; case 0
b _02114090 ; case 1
b _021140c0 ; case 2
b _02114184 ; case 3
b _02114134 ; case 4
b _02114160 ; case 5
b _021140dc ; case 6
b _02114100 ; case 7
b _02114124 ; case 8
_0211402c:
ldr r0, [r4, #0x14]
cmp r0, #6
bne _02114044
ldr r0, _02114190 ; =data_027e0d54
bl func_ov10_0211802c
ldmia sp!, {r4, pc}
_02114044:
ldmleia sp!, {r4, pc}
ldr r0, _02114190 ; =data_027e0d54
ldrb r0, [r0, #0xd]
cmp r0, #0
moveq r0, #1
movne r0, #0
cmp r0, #0
ldmeqia sp!, {r4, pc}
ldr r0, _02114194 ; =data_027e0c68
bl func_020366c4
bl func_02038b40
ldr r0, _02114194 ; =data_027e0c68
ldr r1, _02114198 ; =0x00130008
mvn r2, #0
bl func_02036edc
mov r0, r4
mov r1, #1
bl func_ov10_02113f14
ldmia sp!, {r4, pc}
_02114090:
ldr r0, _02114194 ; =data_027e0c68
bl func_020367ec
cmp r0, #0
ldmneia sp!, {r4, pc}
ldr r0, _02114194 ; =data_027e0c68
bl func_02036808
cmp r0, #0
ldmneia sp!, {r4, pc}
mov r0, r4
mov r1, #2
bl func_ov10_02113f14
ldmia sp!, {r4, pc}
_021140c0:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ldmleia sp!, {r4, pc}
mov r0, r4
mov r1, #3
bl func_ov10_02113f14
ldmia sp!, {r4, pc}
_021140dc:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ldmleia sp!, {r4, pc}
ldr r0, [r4, #8]
mov r1, #0
add r0, r0, #0x10
mov r2, #1
bl func_ov10_0211c784
ldmia sp!, {r4, pc}
_02114100:
ldr r1, [r4, #8]
ldr r0, [r1, #0x68]
cmp r0, #0
ldmneia sp!, {r4, pc}
add r0, r1, #0x10
mov r1, #5
mov r2, #0
bl func_ov10_0211c784
ldmia sp!, {r4, pc}
_02114124:
mov r0, r4
mov r1, #3
bl func_ov10_02113f14
ldmia sp!, {r4, pc}
_02114134:
mov r0, r4
bl func_ov10_0211419c
ldr r0, [r4, #0x14]
cmp r0, #0xa
ldmleia sp!, {r4, pc}
ldr r0, [r4, #8]
mov r1, #2
add r0, r0, #0x10
mov r2, #0
bl func_ov10_0211c784
ldmia sp!, {r4, pc}
_02114160:
mov r0, r4
bl func_ov10_021141f8
ldr r0, [r4, #0x14]
cmp r0, #0xa
ldmleia sp!, {r4, pc}
mov r0, r4
mov r1, #3
bl func_ov10_02113f14
ldmia sp!, {r4, pc}
_02114184:
mov r0, r4
bl func_ov10_02114254
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02113fd4
_02114190: .word data_027e0d54
_02114194: .word data_027e0c68
_02114198: .word 0x00130008
.global func_ov10_0211419c
arm_func_start func_ov10_0211419c
func_ov10_0211419c: ; 0x0211419c
stmdb sp!, {r4, lr}
sub sp, sp, #8
mov r4, r0
ldr r0, [r4, #0x14]
mov r1, #0xa000
mov r0, r0, lsl #0xc
bl func_01ff98e0
ldr r0, _021141f0 ; =0x00000112
add r2, sp, #4
add r3, sp, #0
mov r1, #1
bl func_02034698
ldr r1, [sp]
ldr r0, _021141f4 ; =data_027e0d54
sub r1, r1, #5
str r1, [sp]
ldrh r1, [r0, #0x16]
ldr r0, [r4, #8]
blx func_ov10_02113868
add sp, sp, #8
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_0211419c
_021141f0: .word 0x00000112
_021141f4: .word data_027e0d54
.global func_ov10_021141f8
arm_func_start func_ov10_021141f8
func_ov10_021141f8: ; 0x021141f8
stmdb sp!, {r4, lr}
sub sp, sp, #8
mov r4, r0
ldr r0, [r4, #0x14]
mov r1, #0xa000
mov r0, r0, lsl #0xc
bl func_01ff98e0
ldr r0, _0211424c ; =0x00000112
add r2, sp, #4
add r3, sp, #0
mov r1, #1
bl func_02034698
ldr r1, [sp]
ldr r0, _02114250 ; =data_027e0d54
sub r1, r1, #5
str r1, [sp]
ldrh r1, [r0, #0x16]
ldr r0, [r4, #8]
blx func_ov10_02113868
add sp, sp, #8
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_021141f8
_0211424c: .word 0x00000112
_02114250: .word data_027e0d54
.global func_ov10_02114254
arm_func_start func_ov10_02114254
func_ov10_02114254: ; 0x02114254
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
mov r4, r0
ldr r0, [r4, #0x10]
cmp r0, #3
movne r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
mov r6, #0
mov r5, r6
_02114274:
ldr r0, [r4, #8]
mov r1, r6
blx func_ov10_02113868
ldrh r7, [r0, #0xa]
ldr r0, [r4, #8]
mov r1, r6
mov r2, r5
mov r3, r5
blx func_ov10_02113878
mov r2, r0
mov r0, r4
mov r1, r7
bl func_ov10_02114330
cmp r0, #0
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
add r0, r6, #1
mov r0, r0, lsl #0x10
mov r6, r0, lsr #0x10
cmp r6, #2
blo _02114274
mov r6, #0
mov r8, r4
add sb, r4, #0xa8
mov r5, r6
_021142d8:
mov r0, sb
ldr ip, [r0]
ldrh r7, [r8, #0xb2]
ldr ip, [ip]
mov r1, r5
mov r2, r5
mov r3, r5
blx ip
mov r2, r0
mov r0, r4
mov r1, r7
bl func_ov10_02114330
cmp r0, #0
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
add r6, r6, #1
cmp r6, #1
add r8, r8, #0x18
add sb, sb, #0x18
blt _021142d8
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
arm_func_end func_ov10_02114254
.global func_ov10_02114330
arm_func_start func_ov10_02114330
func_ov10_02114330: ; 0x02114330
stmdb sp!, {r3, lr}
tst r2, #8
moveq r0, #0
ldmeqia sp!, {r3, pc}
cmp r1, #0x55
beq _02114394
cmp r1, #0x67
beq _0211435c
cmp r1, #0x68
beq _02114378
b _021143c4
_0211435c:
mov r1, #0
bl func_ov10_021143d4
ldr r0, _021143cc ; =data_ov00_020eec9c
mov r1, #0x10
bl func_ov00_020d77e4
mov r0, #1
ldmia sp!, {r3, pc}
_02114378:
mov r1, #1
bl func_ov10_021143d4
ldr r0, _021143cc ; =data_ov00_020eec9c
mov r1, #0x10
bl func_ov00_020d77e4
mov r0, #1
ldmia sp!, {r3, pc}
_02114394:
ldr r0, [r0, #8]
mov r1, #4
mov r2, #1
blx func_ov10_02113364
ldr r0, _021143cc ; =data_ov00_020eec9c
mov r1, #0x10
bl func_ov00_020d77e4
ldr r0, _021143d0 ; =data_ov00_020eec68
mov r1, #0x20
bl func_ov00_020d716c
mov r0, #1
ldmia sp!, {r3, pc}
_021143c4:
mov r0, #0
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov10_02114330
_021143cc: .word data_ov00_020eec9c
_021143d0: .word data_ov00_020eec68
.global func_ov10_021143d4
arm_func_start func_ov10_021143d4
func_ov10_021143d4: ; 0x021143d4
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
ldr r0, _02114430 ; =data_027e0d54
str r4, [r5, #0x1c]
bl func_ov10_02117e40
ldr r0, [r5, #8]
mov r1, r4
blx func_ov10_02113358
add r0, r0, #0x3000
ldrb r0, [r0, #0x481]
cmp r0, #0
beq _02114418
mov r0, r5
mov r1, #4
bl func_ov10_02113f14
ldmia sp!, {r3, r4, r5, pc}
_02114418:
ldr r0, [r5, #8]
blx func_ov10_02113a58
mov r0, r5
mov r1, #7
bl func_ov10_02113f14
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov10_021143d4
_02114430: .word data_027e0d54
.global func_ov10_02114434
arm_func_start func_ov10_02114434
func_ov10_02114434: ; 0x02114434
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #8
mov r5, r0
ldr r0, _02114634 ; =data_027e0cbc
mov r1, #0x2e
bl func_0203d7e0
cmp r0, #0
beq _0211446c
mov r1, #0
ldr r0, _02114638 ; =0x0000010f
mov r2, r1
mov r3, r1
str r1, [sp]
bl func_0203493c
_0211446c:
ldr r0, [r5, #0x10]
mov r4, #0
mov r6, r4
cmp r0, #6
addls pc, pc, r0, lsl #2
b _02114584
_02114484: ; jump table
b _02114584 ; case 0
b _02114584 ; case 1
b _021144a0 ; case 2
b _02114584 ; case 3
b _02114530 ; case 4
b _0211455c ; case 5
b _021144e8 ; case 6
_021144a0:
ldr r0, [r5, #0x14]
mov r1, #0x19000
mov r0, r0, lsl #0xc
bl func_01ff98e0
mov r4, r0
mov r2, r4
mov r0, #0x32000
mov r1, r6
bl func_ov00_020d03f8
add r3, r0, #0x800
mov r2, r4
mov r0, #0x32000
mov r1, r6
mov r4, r3, asr #0xc
bl func_ov00_020d03f8
add r0, r0, #0x800
mov r6, r0, asr #0xc
b _02114584
_021144e8:
ldr r0, [r5, #0x14]
mov r1, #0x19000
mov r0, r0, lsl #0xc
bl func_01ff98e0
mov r4, r0
mov r2, r4
mov r0, r6
mov r1, #0x32000
bl func_ov00_020d03f8
add r3, r0, #0x800
mov r2, r4
mov r0, r6
mov r1, #0x32000
mov r4, r3, asr #0xc
bl func_ov00_020d03f8
add r0, r0, #0x800
mov r6, r0, asr #0xc
b _02114584
_02114530:
ldr r0, [r5, #0x14]
mov r1, #0xa000
mov r0, r0, lsl #0xc
bl func_01ff98e0
mov r2, r0
mov r0, r4
mov r1, #0x32000
bl func_ov00_020d03f8
add r0, r0, #0x800
mov r6, r0, asr #0xc
b _02114584
_0211455c:
ldr r0, [r5, #0x14]
mov r1, #0xa000
mov r0, r0, lsl #0xc
bl func_01ff98e0
mov r2, r0
mov r0, #0x32000
mov r1, r4
bl func_ov00_020d03f8
add r0, r0, #0x800
mov r6, r0, asr #0xc
_02114584:
ldr r0, [r5, #0x10]
cmp r0, #0
cmpne r0, #1
beq _021145c4
mov r1, #0
ldr r0, _0211463c ; =0x00000112
mov r2, r1
rsb r3, r4, #0
str r1, [sp]
bl func_0203493c
mov r1, #0
mov r2, r6
mov r3, r1
add r0, r5, #0xa8
str r1, [sp]
bl func_ov00_020d00c4
_021145c4:
ldr r0, [r5, #0x10]
cmp r0, #0
beq _021145e0
cmp r0, #1
addeq sp, sp, #8
ldmeqia sp!, {r4, r5, r6, pc}
b _02114604
_021145e0:
mov r2, #0
str r2, [sp]
ldr r1, _02114640 ; =0x00000115
mov r3, r2
add r0, r5, #0x20
str r2, [sp, #4]
bl func_02034b0c
add sp, sp, #8
ldmia sp!, {r4, r5, r6, pc}
_02114604:
mov r1, #0
ldr r0, [r5, #8]
mov r2, r1
mov r3, r1
blx func_ov10_02113890
mov r2, #0
ldr r0, [r5, #8]
mov r3, r2
mov r1, #1
blx func_ov10_02113890
add sp, sp, #8
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov10_02114434
_02114634: .word data_027e0cbc
_02114638: .word 0x0000010f
_0211463c: .word 0x00000112
_02114640: .word 0x00000115
.global func_ov10_02114644
arm_func_start func_ov10_02114644
func_ov10_02114644: ; 0x02114644
stmdb sp!, {r4, lr}
mov r4, r0
ldr r3, _02114680 ; =func_ov10_02113e6c
add r0, r4, #0xa8
mov r1, #1
mov r2, #0x18
bl func_0204f754
add r0, r4, #0x20
bl func_020350ac
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02114644
_02114680: .word func_ov10_02113e6c - 1
.global func_ov10_02114684
arm_func_start func_ov10_02114684
func_ov10_02114684: ; 0x02114684
stmdb sp!, {r4, lr}
mov r4, r0
ldr r3, _021146b8 ; =func_ov10_02113e6c
add r0, r4, #0xa8
mov r1, #1
mov r2, #0x18
bl func_0204f754
add r0, r4, #0x20
bl func_020350ac
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02114684
_021146b8: .word func_ov10_02113e6c - 1
.global func_ov10_021146bc
thumb_func_start func_ov10_021146bc
func_ov10_021146bc: ; 0x021146bc
push {r3, r4, r5, lr}
add r5, r0, #0
add r4, r1, #0
blx func_020386d8
ldr r0, _021146d0 ; =data_ov10_0211ec4c
str r0, [r5]
str r4, [r5, #0x14]
add r0, r5, #0
pop {r3, r4, r5, pc}
.align 2, 0
thumb_func_end func_ov10_021146bc
_021146d0: .word data_ov10_0211ec4c
.global func_ov10_021146d4
thumb_func_start func_ov10_021146d4
func_ov10_021146d4: ; 0x021146d4
push {r3, lr}
ldrb r2, [r1, #1]
ldr r3, [r0, #0x14]
cmp r2, #0x11
bne _021146fe
ldr r2, [r1, #4]
cmp r2, #0
beq _021146ea
cmp r2, #1
beq _021146f4
b _021146fe
_021146ea:
add r0, r3, #0
bl func_ov10_021149dc
mov r0, #1
pop {r3, pc}
_021146f4:
add r0, r3, #0
bl func_ov10_02114fec
mov r0, #1
pop {r3, pc}
_021146fe:
blx func_02037f58
pop {r3, pc}
thumb_func_end func_ov10_021146d4
.global func_ov10_02114704
thumb_func_start func_ov10_02114704
func_ov10_02114704: ; 0x02114704
push {r4, lr}
sub sp, #0x10
mov r2, #6
mov r3, #1
add r4, r0, #0
bl func_ov10_02112f18
ldr r0, _02114874 ; =data_ov10_0211ec28
ldr r3, _02114878 ; =func_ov10_02113e70
str r0, [r4]
ldr r0, _0211487c ; =func_ov10_02113e6c
mov r1, #8
str r0, [sp]
add r0, r4, #0
add r0, #0x18
mov r2, #0x18
blx func_0204f614
add r1, r4, #0
mov r0, #0
add r1, #0xd8
mov r2, #4
blx func_020078f4
add r1, r4, #0
mov r0, #0
add r1, #0xdc
mov r2, #4
blx func_020078f4
add r0, r4, #0
add r0, #0xe0
add r1, r4, #0
bl func_ov10_021146bc
mov r1, #0x4a
lsl r1, r1, #2
mov r3, #0
str r3, [r4, r1]
add r0, r1, #4
str r3, [r4, r0]
mov r0, #1
add r1, #8
str r0, [r4, r1]
mov r1, #0x7f
str r1, [sp]
mov r0, #2
str r0, [sp, #4]
add r0, r4, #0
str r3, [sp, #8]
add r0, #0x18
add r1, #0x9c
mov r2, #0xd
str r3, [sp, #0xc]
blx func_ov00_020cfed0
add r0, r4, #0
mov r1, #0x17
add r0, #0x2b
strb r1, [r0]
mov r1, #0x80
str r1, [sp]
mov r0, #3
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x30
add r1, #0x9b
mov r2, #0xe
mov r3, #1
blx func_ov00_020cfed0
add r0, r4, #0
mov r1, #0x18
add r0, #0x43
strb r1, [r0]
mov r1, #0x81
str r1, [sp]
mov r3, #2
str r3, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x48
add r1, #0x9a
mov r2, #0xf
blx func_ov00_020cfed0
add r0, r4, #0
mov r1, #0x17
add r0, #0x5b
strb r1, [r0]
mov r1, #0x82
str r1, [sp]
mov r3, #3
str r3, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x60
add r1, #0x99
mov r2, #0x10
blx func_ov00_020cfed0
add r0, r4, #0
mov r1, #0x18
add r0, #0x73
strb r1, [r0]
mov r1, #0x83
str r1, [sp]
mov r0, #2
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x78
add r1, #0x98
mov r2, #0x11
mov r3, #4
blx func_ov00_020cfed0
add r0, r4, #0
mov r1, #0x17
add r0, #0x8b
strb r1, [r0]
mov r1, #0x84
str r1, [sp]
mov r0, #3
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x90
add r1, #0x97
mov r2, #0x12
mov r3, #5
blx func_ov00_020cfed0
add r0, r4, #0
mov r1, #0x18
add r0, #0xa3
strb r1, [r0]
mov r1, #0x85
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0xa8
add r1, #0x96
mov r2, #0x16
mov r3, #7
blx func_ov00_020cfed0
mov r1, #0x86
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0xc0
add r1, #0x95
mov r2, #0x13
mov r3, #6
blx func_ov00_020cfed0
add r0, r4, #0
mov r1, #0x19
add r0, #0xd3
strb r1, [r0]
add r0, r4, #0
add sp, #0x10
pop {r4, pc}
nop
thumb_func_end func_ov10_02114704
_02114874: .word data_ov10_0211ec28
_02114878: .word func_ov10_02113e70 - 1
_0211487c: .word func_ov10_02113e6c - 1
.global func_ov10_02114880
thumb_func_start func_ov10_02114880
func_ov10_02114880: ; 0x02114880
push {r4, lr}
add r4, r0, #0
blx func_0203780c
add r0, r4, #0
pop {r4, pc}
thumb_func_end func_ov10_02114880
.global func_ov10_0211488c
thumb_func_start func_ov10_0211488c
func_ov10_0211488c: ; 0x0211488c
push {r3, r4, r5, lr}
add r5, r0, #0
add r4, r1, #0
mov r2, #0
add r3, r5, #0
mov r1, #1
_02114898:
add r0, r3, #0
add r0, #0x25
add r2, r2, #1
add r3, #0x18
strb r1, [r0]
cmp r2, #8
blt _02114898
ldr r2, _02114908 ; =0x04001000
ldr r0, _0211490c ; =0xffffe0ff
ldr r1, [r2]
and r1, r0
mov r0, #5
lsl r0, r0, #0xa
orr r0, r1
str r0, [r2]
mov r2, #0
ldr r0, _02114910 ; =data_027e0cbc
mov r1, #0x31
sub r3, r2, #1
blx func_0203d77c
ldr r2, _02114914 ; =data_ov00_020ec754
add r0, r5, #0
ldr r1, [r2]
add r0, #0xd8
str r1, [r0]
add r0, r5, #0
ldr r1, [r2]
add r0, #0xdc
str r1, [r0]
mov r1, #0x47
ldr r0, _02114918 ; =func_ov10_02115030
lsl r1, r1, #2
str r0, [r5, r1]
add r0, r1, #4
str r5, [r5, r0]
add r0, r5, r1
bl func_0200b954
ldr r0, _0211491c ; =data_ov00_020ee734
blx func_ov10_0211e5cc
add r0, r5, #0
add r1, r4, #0
blx func_ov10_02112f48
ldr r0, _02114920 ; =data_ov00_020ee820
ldrb r0, [r0, #2]
cmp r0, #0
bne _02114904
add r0, r5, #0
mov r1, #3
bl func_ov10_0211495c
_02114904:
pop {r3, r4, r5, pc}
nop
thumb_func_end func_ov10_0211488c
_02114908: .word 0x04001000
_0211490c: .word 0xffffe0ff
_02114910: .word data_027e0cbc
_02114914: .word data_ov00_020ec754
_02114918: .word func_ov10_02115030
_0211491c: .word data_ov00_020ee734
_02114920: .word data_ov00_020ee820
.global func_ov10_02114924
thumb_func_start func_ov10_02114924
func_ov10_02114924: ; 0x02114924
push {r4, lr}
ldr r2, _02114950 ; =0x04001000
add r4, r0, #0
ldr r1, [r2]
ldr r0, _02114954 ; =0xffffe0ff
and r1, r0
mov r0, #7
lsl r0, r0, #0xa
orr r0, r1
str r0, [r2]
mov r0, #0x47
lsl r0, r0, #2
add r0, r4, r0
bl func_0200b974
add r0, r4, #0
blx func_ov10_02112f5c
ldr r0, _02114958 ; =data_ov00_020ee734
blx func_ov10_0211e5f8
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_02114924
_02114950: .word 0x04001000
_02114954: .word 0xffffe0ff
_02114958: .word data_ov00_020ee734
.global func_ov10_0211495c
thumb_func_start func_ov10_0211495c
func_ov10_0211495c: ; 0x0211495c
push {r4, r5, r6, lr}
add r4, r0, #0
ldr r6, [r4, #0x10]
add r5, r1, #0
cmp r6, #0
beq _0211496e
ldr r0, [r4, #8]
bl func_ov10_02113da4
_0211496e:
cmp r5, #4
bhi _021149ba
add r0, r5, r5
add r0, pc
ldrh r0, [r0, #6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_0211497e: ; jump table
.short _021149ba - _0211497e - 2 ; case 0
.short _02114988 - _0211497e - 2 ; case 1
.short _02114992 - _0211497e - 2 ; case 2
.short _021149a8 - _0211497e - 2 ; case 3
.short _021149a8 - _0211497e - 2 ; case 4
_02114988:
ldr r0, [r4, #8]
ldr r1, _021149c8 ; =0x0013000e
bl func_ov10_02113d70
b _021149ba
_02114992:
ldr r0, [r4, #8]
ldr r1, _021149cc ; =0x00130027
bl func_ov10_02113d70
mov r0, #0x4a
mov r1, #0
lsl r0, r0, #2
str r1, [r4, r0]
add r0, r0, #4
str r1, [r4, r0]
b _021149ba
_021149a8:
mov r2, #0
ldr r0, _021149d0 ; =data_027e0c68
ldr r1, _021149d4 ; =0x0013002a
mvn r2, r2
blx func_02036edc
ldr r1, _021149d8 ; =0x00000151
mov r2, #7
strb r2, [r0, r1]
_021149ba:
mov r0, #0
str r0, [r4, #0x14]
mov r0, #0x13
lsl r0, r0, #4
str r6, [r4, r0]
str r5, [r4, #0x10]
pop {r4, r5, r6, pc}
.align 2, 0
thumb_func_end func_ov10_0211495c
_021149c8: .word 0x0013000e
_021149cc: .word 0x00130027
_021149d0: .word data_027e0c68
_021149d4: .word 0x0013002a
_021149d8: .word 0x00000151
.global func_ov10_021149dc
thumb_func_start func_ov10_021149dc
func_ov10_021149dc: ; 0x021149dc
push {r4, lr}
add r4, r0, #0
ldr r0, [r4, #8]
bl func_ov10_02113a58
add r1, r4, #0
add r1, #0xdc
ldr r0, _02114a10 ; =data_027e0d54
ldr r1, [r1]
blx func_ov10_02118a14
add r0, r4, #0
mov r1, #5
bl func_ov10_0211495c
add r0, r4, #0
bl func_ov10_02115014
cmp r0, #0
bne _02114a0c
ldr r0, _02114a14 ; =data_ov00_020eec9c
mov r1, #0x33
blx func_ov00_020d77e4
_02114a0c:
pop {r4, pc}
nop
thumb_func_end func_ov10_021149dc
_02114a10: .word data_027e0d54
_02114a14: .word data_ov00_020eec9c
.global func_ov10_02114a18
thumb_func_start func_ov10_02114a18
func_ov10_02114a18: ; 0x02114a18
push {r4, lr}
add r4, r0, #0
ldr r0, [r4, #0x14]
add r0, r0, #1
str r0, [r4, #0x14]
bpl _02114a28
mov r0, #0
str r0, [r4, #0x14]
_02114a28:
add r0, r4, #0
add r0, #0xf8
ldr r1, [r0]
ldr r0, _02114b8c ; =0xffff0000
and r1, r0
mov r0, #1
lsl r0, r0, #0x18
cmp r1, r0
beq _02114a44
add r1, r4, #0
ldr r0, _02114b90 ; =data_027e0c68
add r1, #0xe0
blx func_02036888
_02114a44:
ldr r0, [r4, #0x10]
cmp r0, #5
bhi _02114a6a
add r0, r0, r0
add r0, pc
ldrh r0, [r0, #6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_02114a56: ; jump table
.short _02114a62 - _02114a56 - 2 ; case 0
.short _02114a76 - _02114a56 - 2 ; case 1
.short _02114aba - _02114a56 - 2 ; case 2
.short _02114b1c - _02114a56 - 2 ; case 3
.short _02114b1c - _02114a56 - 2 ; case 4
.short _02114b50 - _02114a56 - 2 ; case 5
_02114a62:
ldr r0, [r4, #8]
ldr r0, [r0, #0x68]
cmp r0, #1
beq _02114a6c
_02114a6a:
b _02114b88
_02114a6c:
add r0, r4, #0
mov r1, #1
bl func_ov10_0211495c
pop {r4, pc}
_02114a76:
add r0, r4, #0
add r0, #0xf8
ldr r1, [r0]
ldr r0, _02114b8c ; =0xffff0000
and r1, r0
mov r0, #1
lsl r0, r0, #0x18
cmp r1, r0
bne _02114b88
ldr r0, _02114b94 ; =data_027e05f8
ldrh r1, [r0, #2]
mov r0, #2
tst r0, r1
beq _02114ab2
add r0, r4, #0
bl func_ov10_02115014
cmp r0, #0
beq _02114aaa
add r4, #0xe0
ldr r0, _02114b90 ; =data_027e0c68
ldr r2, _02114b98 ; =0x00ca000e
add r1, r4, #0
blx func_02036ce4
pop {r4, pc}
_02114aaa:
add r0, r4, #0
bl func_ov10_021149dc
pop {r4, pc}
_02114ab2:
add r0, r4, #0
bl func_ov10_02114bb0
pop {r4, pc}
_02114aba:
ldr r0, _02114b9c ; =data_ov00_020eec68
blx func_ov00_020d71a0
ldr r0, _02114ba0 ; =data_ov00_020eed2c
blx func_ov00_020d873c
mov r1, #0x4a
lsl r1, r1, #2
ldr r2, [r4, r1]
cmp r0, r2
blt _02114ada
str r0, [r4, r1]
mov r2, #0
add r0, r1, #4
str r2, [r4, r0]
b _02114afa
_02114ada:
add r0, r1, #4
ldr r0, [r4, r0]
add r2, r0, #1
add r0, r1, #4
str r2, [r4, r0]
ldr r0, [r4, r0]
cmp r0, #0xa
ble _02114afa
ldr r0, [r4, r1]
cmp r0, #1
blt _02114afa
sub r0, r0, #1
str r0, [r4, r1]
mov r2, #0
add r0, r1, #4
str r2, [r4, r0]
_02114afa:
ldr r0, _02114b94 ; =data_027e05f8
ldrh r1, [r0, #2]
mov r0, #2
tst r0, r1
beq _02114b14
add r0, r4, #0
mov r1, #1
bl func_ov10_0211495c
mov r0, #1
add r4, #0xb5
strb r0, [r4]
pop {r4, pc}
_02114b14:
add r0, r4, #0
bl func_ov10_02114bb0
pop {r4, pc}
_02114b1c:
ldr r0, _02114ba4 ; =data_ov00_020ee820
ldrb r0, [r0, #2]
cmp r0, #0
beq _02114b88
ldr r0, _02114b90 ; =data_027e0c68
blx func_020366c4
blx func_02038b40
mov r0, #0x13
lsl r0, r0, #4
ldr r0, [r4, r0]
cmp r0, #2
beq _02114b3c
cmp r0, #4
bne _02114b46
_02114b3c:
add r0, r4, #0
mov r1, #2
bl func_ov10_0211495c
pop {r4, pc}
_02114b46:
add r0, r4, #0
mov r1, #1
bl func_ov10_0211495c
pop {r4, pc}
_02114b50:
ldr r0, [r4, #8]
ldr r0, [r0, #0x68]
cmp r0, #0
bne _02114b88
ldr r0, _02114ba8 ; =data_027e0d54
ldrb r0, [r0, #0xd]
cmp r0, #0
bne _02114b64
mov r0, #1
b _02114b66
_02114b64:
mov r0, #0
_02114b66:
cmp r0, #0
beq _02114b88
mov r2, #0
ldr r0, _02114bac ; =data_027e0cbc
mov r1, #0x2f
sub r3, r2, #1
blx func_0203d77c
ldr r0, [r4, #8]
mov r1, #3
add r0, #0x10
mov r2, #6
blx func_ov10_0211c784
ldr r0, [r4, #8]
bl func_ov10_02113a90
_02114b88:
pop {r4, pc}
nop
thumb_func_end func_ov10_02114a18
_02114b8c: .word 0xffff0000
_02114b90: .word data_027e0c68
_02114b94: .word data_027e05f8
_02114b98: .word 0x00ca000e
_02114b9c: .word data_ov00_020eec68
_02114ba0: .word data_ov00_020eed2c
_02114ba4: .word data_ov00_020ee820
_02114ba8: .word data_027e0d54
_02114bac: .word data_027e0cbc
.global func_ov10_02114bb0
thumb_func_start func_ov10_02114bb0
func_ov10_02114bb0: ; 0x02114bb0
push {r3, r4, r5, r6, r7, lr}
sub sp, #8
str r0, [sp]
ldr r0, [r0, #0x10]
cmp r0, #1
beq _02114bc2
cmp r0, #2
beq _02114bfc
b _02114c26
_02114bc2:
ldr r6, [sp]
mov r7, #0
add r4, r6, #0
add r4, #0x18
_02114bca:
ldrh r0, [r6, #0x22]
mov r1, #0
add r2, r1, #0
str r0, [sp, #4]
add r0, r4, #0
ldr r5, [r0]
add r3, r1, #0
ldr r5, [r5]
blx r5
add r2, r0, #0
ldr r0, [sp]
ldr r1, [sp, #4]
bl func_ov10_02114c2c
cmp r0, #0
beq _02114bf0
add sp, #8
mov r0, #1
pop {r3, r4, r5, r6, r7, pc}
_02114bf0:
add r7, r7, #1
add r6, #0x18
add r4, #0x18
cmp r7, #8
blt _02114bca
b _02114c26
_02114bfc:
ldr r0, [sp]
mov r1, #0
add r0, #0xb2
ldrh r5, [r0]
ldr r0, [sp]
add r2, r1, #0
add r0, #0xa8
ldr r4, [r0]
add r3, r1, #0
ldr r4, [r4]
blx r4
add r2, r0, #0
ldr r0, [sp]
add r1, r5, #0
bl func_ov10_02114c2c
cmp r0, #0
beq _02114c26
add sp, #8
mov r0, #1
pop {r3, r4, r5, r6, r7, pc}
_02114c26:
mov r0, #0
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end func_ov10_02114bb0
.global func_ov10_02114c2c
thumb_func_start func_ov10_02114c2c
func_ov10_02114c2c: ; 0x02114c2c
push {r3, r4, r5, lr}
mov r3, #8
add r4, r0, #0
tst r2, r3
bne _02114c3a
mov r0, #0
pop {r3, r4, r5, pc}
_02114c3a:
sub r1, #0x7f
cmp r1, #7
bls _02114c42
b _02114e20
_02114c42:
add r1, r1, r1
add r1, pc
ldrh r1, [r1, #6]
lsl r1, r1, #0x10
asr r1, r1, #0x10
add pc, r1
_02114c4e: ; jump table
.short _02114c5e - _02114c4e - 2 ; case 0
.short _02114c9e - _02114c4e - 2 ; case 1
.short _02114cde - _02114c4e - 2 ; case 2
.short _02114d20 - _02114c4e - 2 ; case 3
.short _02114d62 - _02114c4e - 2 ; case 4
.short _02114da4 - _02114c4e - 2 ; case 5
.short _02114de6 - _02114c4e - 2 ; case 6
.short _02114e1a - _02114c4e - 2 ; case 7
_02114c5e:
ldr r0, _02114e24 ; =data_ov00_020eec9c
mov r1, #0x2e
blx func_ov00_020d77e4
add r0, r4, #0
add r0, #0xdc
ldr r0, [r0]
mov r1, #3
lsl r0, r0, #0x18
lsr r0, r0, #0x18
add r0, r0, #2
blx func_02002c14
add r0, r4, #0
add r0, #0xdc
ldr r2, [r0]
mov r0, #0xff
bic r2, r0
lsl r0, r1, #0x18
lsr r0, r0, #0x18
add r1, r2, #0
orr r1, r0
add r0, r4, #0
add r0, #0xdc
str r1, [r0]
add r4, #0xdc
add r0, r4, #0
mov r1, #1
blx func_ov10_021199bc
mov r0, #1
pop {r3, r4, r5, pc}
_02114c9e:
ldr r0, _02114e24 ; =data_ov00_020eec9c
mov r1, #0x2f
blx func_ov00_020d77e4
add r0, r4, #0
add r0, #0xdc
ldr r0, [r0]
mov r1, #3
lsl r0, r0, #0x18
lsr r0, r0, #0x18
add r0, r0, #4
blx func_02002c14
add r0, r4, #0
add r0, #0xdc
ldr r2, [r0]
mov r0, #0xff
bic r2, r0
lsl r0, r1, #0x18
lsr r0, r0, #0x18
add r1, r2, #0
orr r1, r0
add r0, r4, #0
add r0, #0xdc
str r1, [r0]
add r4, #0xdc
add r0, r4, #0
mov r1, #1
blx func_ov10_021199bc
mov r0, #1
pop {r3, r4, r5, pc}
_02114cde:
ldr r0, _02114e24 ; =data_ov00_020eec9c
mov r1, #0x30
blx func_ov00_020d77e4
add r1, r4, #0
add r1, #0xdc
ldr r2, [r1]
ldr r1, _02114e28 ; =0xffff00ff
add r0, r4, #0
and r1, r2
add r2, r4, #0
add r2, #0xdc
ldr r2, [r2]
add r4, #0xdc
lsl r2, r2, #0x10
lsr r2, r2, #0x18
add r2, r2, #3
lsr r5, r2, #0x1f
lsl r3, r2, #0x1e
sub r3, r3, r5
mov r2, #0x1e
ror r3, r2
add r2, r5, r3
lsl r2, r2, #0x18
lsr r2, r2, #0x10
orr r1, r2
str r1, [r4]
add r0, #0xdc
mov r1, #1
blx func_ov10_021199bc
mov r0, #1
pop {r3, r4, r5, pc}
_02114d20:
ldr r0, _02114e24 ; =data_ov00_020eec9c
mov r1, #0x30
blx func_ov00_020d77e4
add r1, r4, #0
add r1, #0xdc
ldr r2, [r1]
ldr r1, _02114e28 ; =0xffff00ff
add r0, r4, #0
and r1, r2
add r2, r4, #0
add r2, #0xdc
ldr r2, [r2]
add r4, #0xdc
lsl r2, r2, #0x10
lsr r2, r2, #0x18
add r2, r2, #5
lsr r5, r2, #0x1f
lsl r3, r2, #0x1e
sub r3, r3, r5
mov r2, #0x1e
ror r3, r2
add r2, r5, r3
lsl r2, r2, #0x18
lsr r2, r2, #0x10
orr r1, r2
str r1, [r4]
add r0, #0xdc
mov r1, #1
blx func_ov10_021199bc
mov r0, #1
pop {r3, r4, r5, pc}
_02114d62:
ldr r0, _02114e24 ; =data_ov00_020eec9c
mov r1, #0x31
blx func_ov00_020d77e4
add r1, r4, #0
add r1, #0xdc
ldr r2, [r1]
ldr r1, _02114e2c ; =0xff00ffff
add r0, r4, #0
and r1, r2
add r2, r4, #0
add r2, #0xdc
ldr r2, [r2]
add r4, #0xdc
lsl r2, r2, #8
lsr r2, r2, #0x18
add r2, r2, #3
lsr r5, r2, #0x1f
lsl r3, r2, #0x1f
sub r3, r3, r5
mov r2, #0x1f
ror r3, r2
add r2, r5, r3
lsl r2, r2, #0x18
lsr r2, r2, #8
orr r1, r2
str r1, [r4]
add r0, #0xdc
mov r1, #1
blx func_ov10_021199bc
mov r0, #1
pop {r3, r4, r5, pc}
_02114da4:
ldr r0, _02114e24 ; =data_ov00_020eec9c
mov r1, #0x32
blx func_ov00_020d77e4
add r1, r4, #0
add r1, #0xdc
ldr r2, [r1]
ldr r1, _02114e2c ; =0xff00ffff
add r0, r4, #0
and r1, r2
add r2, r4, #0
add r2, #0xdc
ldr r2, [r2]
add r4, #0xdc
lsl r2, r2, #8
lsr r2, r2, #0x18
add r2, r2, #1
lsr r5, r2, #0x1f
lsl r3, r2, #0x1f
sub r3, r3, r5
mov r2, #0x1f
ror r3, r2
add r2, r5, r3
lsl r2, r2, #0x18
lsr r2, r2, #8
orr r1, r2
str r1, [r4]
add r0, #0xdc
mov r1, #1
blx func_ov10_021199bc
mov r0, #1
pop {r3, r4, r5, pc}
_02114de6:
ldr r1, [r4, #0x10]
cmp r1, #2
bne _02114df4
mov r1, #1
bl func_ov10_0211495c
b _02114e16
_02114df4:
bl func_ov10_02115014
cmp r0, #0
beq _02114e10
ldr r0, [r4, #8]
bl func_ov10_02113da4
add r4, #0xe0
ldr r0, _02114e30 ; =data_027e0c68
ldr r2, _02114e34 ; =0x00ca000e
add r1, r4, #0
blx func_02036ce4
b _02114e16
_02114e10:
add r0, r4, #0
bl func_ov10_021149dc
_02114e16:
mov r0, #1
pop {r3, r4, r5, pc}
_02114e1a:
mov r1, #2
bl func_ov10_0211495c
_02114e20:
mov r0, #0
pop {r3, r4, r5, pc}
.align 2, 0
thumb_func_end func_ov10_02114c2c
_02114e24: .word data_ov00_020eec9c
_02114e28: .word 0xffff00ff
_02114e2c: .word 0xff00ffff
_02114e30: .word data_027e0c68
_02114e34: .word 0x00ca000e
.global func_ov10_02114e38
thumb_func_start func_ov10_02114e38
func_ov10_02114e38: ; 0x02114e38
push {r4, r5, r6, lr}
sub sp, #8
mov r1, #0
add r5, r0, #0
ldr r0, _02114fe0 ; =0x0000011b
str r1, [sp]
add r2, r1, #0
add r3, r1, #0
blx func_0203493c
ldr r2, [r5, #0x10]
cmp r2, #2
beq _02114e5e
cmp r2, #3
beq _02114e5a
cmp r2, #4
bne _02114e5c
_02114e5a:
b _02114fda
_02114e5c:
b _02114ef2
_02114e5e:
mov r1, #0
mov r0, #0x47
lsl r0, r0, #2
add r2, r1, #0
add r3, r1, #0
str r1, [sp]
blx func_0203493c
mov r0, #0x4a
lsl r0, r0, #2
ldr r1, [r5, r0]
cmp r1, #1
blt _02114e86
mov r2, #0
sub r0, #0xc
mov r1, #1
add r3, r2, #0
str r2, [sp]
blx func_0203493c
_02114e86:
mov r0, #0x4a
lsl r0, r0, #2
ldr r1, [r5, r0]
cmp r1, #2
blt _02114e9e
mov r2, #0
sub r0, #0xc
mov r1, #2
add r3, r2, #0
str r2, [sp]
blx func_0203493c
_02114e9e:
mov r0, #0x4a
lsl r0, r0, #2
ldr r1, [r5, r0]
cmp r1, #3
blt _02114eb6
mov r2, #0
sub r0, #0xc
mov r1, #3
add r3, r2, #0
str r2, [sp]
blx func_0203493c
_02114eb6:
mov r0, #0x4a
lsl r0, r0, #2
ldr r1, [r5, r0]
cmp r1, #4
blt _02114ece
mov r2, #0
sub r0, #0xc
mov r1, #4
add r3, r2, #0
str r2, [sp]
blx func_0203493c
_02114ece:
mov r2, #0
mov r0, #0x47
lsl r0, r0, #2
mov r1, #5
add r3, r2, #0
str r2, [sp]
blx func_0203493c
mov r1, #0
add r5, #0xa8
add r0, r5, #0
add r2, r1, #0
add r3, r1, #0
str r1, [sp]
blx func_ov00_020d00c4
add sp, #8
pop {r4, r5, r6, pc}
_02114ef2:
add r0, r5, #0
add r0, #0xf8
ldr r1, [r0]
ldr r0, _02114fe4 ; =0xffff0000
and r1, r0
mov r0, #1
lsl r0, r0, #0x18
cmp r1, r0
bne _02114fda
cmp r2, #5
bne _02114f12
add r0, r5, #0
bl func_ov10_02115014
cmp r0, #0
bne _02114fda
_02114f12:
add r0, r5, #0
add r0, #0xdc
ldr r0, [r0]
mov r1, #0
lsl r0, r0, #0x18
lsr r0, r0, #0x18
beq _02114f2a
cmp r0, #1
beq _02114f2e
cmp r0, #2
beq _02114f32
b _02114f34
_02114f2a:
mov r1, #6
b _02114f34
_02114f2e:
mov r1, #5
b _02114f34
_02114f32:
mov r1, #4
_02114f34:
mov r3, #0
str r3, [sp]
ldr r0, _02114fe0 ; =0x0000011b
mov r2, #4
str r3, [sp, #4]
blx func_020349cc
mov r3, #0
str r3, [sp]
add r1, r5, #0
str r3, [sp, #4]
add r1, #0xdc
ldr r1, [r1]
ldr r0, _02114fe0 ; =0x0000011b
lsl r1, r1, #0x10
lsr r2, r1, #0x18
ldr r1, _02114fe8 ; =data_ov10_0211e764
ldrb r1, [r1, r2]
mov r2, #7
blx func_020349cc
mov r3, #0
str r3, [sp]
add r1, r5, #0
str r3, [sp, #4]
add r1, #0xdc
ldr r1, [r1]
ldr r0, _02114fe0 ; =0x0000011b
lsl r1, r1, #8
lsr r1, r1, #0x18
add r1, #0xb
mov r2, #0xb
blx func_020349cc
mov r2, #0
ldr r0, _02114fe0 ; =0x0000011b
mov r1, #1
add r3, r2, #0
str r2, [sp]
blx func_0203493c
mov r2, #0
ldr r0, _02114fe0 ; =0x0000011b
mov r1, #2
add r3, r2, #0
str r2, [sp]
blx func_0203493c
mov r2, #0
ldr r0, _02114fe0 ; =0x0000011b
mov r1, #3
add r3, r2, #0
str r2, [sp]
blx func_0203493c
mov r2, #0
ldr r0, _02114fe0 ; =0x0000011b
mov r1, #0x14
add r3, r2, #0
str r2, [sp]
blx func_0203493c
mov r2, #0
ldr r0, _02114fe0 ; =0x0000011b
mov r1, #0x15
add r3, r2, #0
str r2, [sp]
blx func_0203493c
mov r4, #0
add r5, #0x18
add r6, r4, #0
_02114fc4:
add r0, r5, #0
add r1, r6, #0
add r2, r6, #0
add r3, r6, #0
str r6, [sp]
blx func_ov00_020d00c4
add r4, r4, #1
add r5, #0x18
cmp r4, #8
blt _02114fc4
_02114fda:
add sp, #8
pop {r4, r5, r6, pc}
nop
thumb_func_end func_ov10_02114e38
_02114fe0: .word 0x0000011b
_02114fe4: .word 0xffff0000
_02114fe8: .word data_ov10_0211e764
.global func_ov10_02114fec
thumb_func_start func_ov10_02114fec
func_ov10_02114fec: ; 0x02114fec
push {r4, lr}
add r4, r0, #0
add r0, #0xd8
mov r1, #1
blx func_ov10_021199bc
add r0, r4, #0
add r0, #0xd8
ldr r1, [r0]
add r0, r4, #0
add r0, #0xdc
str r1, [r0]
ldr r0, [r4, #8]
ldr r1, _02115010 ; =0x0013000e
bl func_ov10_02113d70
pop {r4, pc}
nop
thumb_func_end func_ov10_02114fec
_02115010: .word 0x0013000e
.global func_ov10_02115014
thumb_func_start func_ov10_02115014
func_ov10_02115014: ; 0x02115014
push {r3, lr}
add r1, r0, #0
add r1, #0xdc
add r0, #0xd8
mov r2, #4
blx func_0204366c
cmp r0, #0
beq _0211502a
mov r0, #1
pop {r3, pc}
_0211502a:
mov r0, #0
pop {r3, pc}
.align 2, 0
thumb_func_end func_ov10_02115014
.global func_ov10_02115030
thumb_func_start func_ov10_02115030
func_ov10_02115030: ; 0x02115030
push {r4, lr}
add r4, r0, #0
ldr r0, _0211508c ; =data_027e0c68
blx func_020366c4
cmp r0, #0
beq _02115060
ldr r0, _0211508c ; =data_027e0c68
blx func_020366c4
mov r1, #0x57
lsl r1, r1, #2
ldrsh r0, [r0, r1]
cmp r0, #0
ble _02115060
add r0, r4, #0
ldr r1, _02115090 ; =0x0000ffff
add r0, #0xf8
str r1, [r0]
ldr r0, _0211508c ; =data_027e0c68
blx func_020366c4
blx func_02038b40
_02115060:
ldr r0, [r4, #8]
ldr r0, [r0, #0x68]
cmp r0, #1
beq _0211506c
cmp r0, #2
bne _02115088
_0211506c:
ldr r0, [r4, #0x10]
cmp r0, #2
beq _02115076
cmp r0, #4
bne _02115080
_02115076:
add r0, r4, #0
mov r1, #4
bl func_ov10_0211495c
pop {r4, pc}
_02115080:
add r0, r4, #0
mov r1, #3
bl func_ov10_0211495c
_02115088:
pop {r4, pc}
nop
thumb_func_end func_ov10_02115030
_0211508c: .word data_027e0c68
_02115090: .word 0x0000ffff
.global func_ov10_02115094
arm_func_start func_ov10_02115094
func_ov10_02115094: ; 0x02115094
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0xe0
bl func_0203780c
ldr r3, _021150d0 ; =func_ov10_02113e6c
add r0, r4, #0x18
mov r1, #8
mov r2, #0x18
bl func_0204f754
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02115094
_021150d0: .word func_ov10_02113e6c - 1
.global func_ov10_021150d4
arm_func_start func_ov10_021150d4
func_ov10_021150d4: ; 0x021150d4
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0xe0
bl func_0203780c
ldr r3, _02115108 ; =func_ov10_02113e6c
add r0, r4, #0x18
mov r1, #8
mov r2, #0x18
bl func_0204f754
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_021150d4
_02115108: .word func_ov10_02113e6c - 1
.global func_ov10_0211510c
arm_func_start func_ov10_0211510c
func_ov10_0211510c: ; 0x0211510c
stmdb sp!, {r4, lr}
mov r4, r0
bl func_0203780c
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211510c
.global func_ov10_02115128
arm_func_start func_ov10_02115128
func_ov10_02115128: ; 0x02115128
stmdb sp!, {r3, lr}
ldr r1, [r0, #0x14]
adds r1, r1, #1
str r1, [r0, #0x14]
movmi r1, #0
strmi r1, [r0, #0x14]
ldr r1, [r0, #0x10]
cmp r1, #0
beq _02115158
cmp r1, #1
beq _0211519c
ldmia sp!, {r3, pc}
_02115158:
ldr r1, _021151d4 ; =data_027e0d54
ldrb r1, [r1, #0xd]
cmp r1, #0
moveq r1, #1
movne r1, #0
cmp r1, #0
ldmeqia sp!, {r3, pc}
ldr r1, _021151d4 ; =data_027e0d54
ldr r0, [r0, #8]
ldrb r1, [r1, #0xc]
add r0, r0, #0x10
cmp r1, #0
movne r2, #0
moveq r2, #2
mov r1, #1
bl func_ov10_0211c784
ldmia sp!, {r3, pc}
_0211519c:
ldr r1, _021151d8 ; =data_027e0d78
ldrh r1, [r1, #0x34]
tst r1, #2
ldmeqia sp!, {r3, pc}
ldr r1, _021151d4 ; =data_027e0d54
ldr r0, [r0, #8]
ldrb r1, [r1, #0xc]
add r0, r0, #0x10
cmp r1, #0
movne r2, #0
moveq r2, #2
mov r1, #1
bl func_ov10_0211c784
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov10_02115128
_021151d4: .word data_027e0d54
_021151d8: .word data_027e0d78
.global func_ov10_021151dc
arm_func_start func_ov10_021151dc
func_ov10_021151dc: ; 0x021151dc
stmdb sp!, {r3, lr}
ldr r0, _02115210 ; =data_027e0cbc
mov r1, #0x2e
bl func_0203d7e0
cmp r0, #0
ldmeqia sp!, {r3, pc}
mov r1, #0
ldr r0, _02115214 ; =0x0000010f
mov r2, r1
mov r3, r1
str r1, [sp]
bl func_0203493c
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov10_021151dc
_02115210: .word data_027e0cbc
_02115214: .word 0x0000010f
.global func_ov10_02115218
arm_func_start func_ov10_02115218
func_ov10_02115218: ; 0x02115218
stmdb sp!, {r4, lr}
mov r4, r0
blx func_ov10_02112f44
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_02115218
.global func_ov10_02115234
arm_func_start func_ov10_02115234
func_ov10_02115234: ; 0x02115234
stmdb sp!, {r4, lr}
mov r4, r0
blx func_ov10_02112f44
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_02115234
.global func_ov10_02115248
arm_func_start func_ov10_02115248
func_ov10_02115248: ; 0x02115248
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
bl func_020386d8
ldr r1, _02115274 ; =data_ov10_0211ed10
mov r0, #2
str r1, [r5]
str r0, [r5, #0x3c]
mov r0, r5
str r4, [r5, #0x14]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov10_02115248
_02115274: .word data_ov10_0211ed10
.global func_ov10_02115278
arm_func_start func_ov10_02115278
func_ov10_02115278: ; 0x02115278
stmdb sp!, {r3, r4, r5, lr}
mov r4, r0
ldrb r2, [r4, #0x1c]
cmp r2, #1
bne _02115360
ldrsh r0, [r4, #0x1e]
cmp r0, #0
ble _02115324
sub r0, r0, #1
strh r0, [r4, #0x1e]
ldrsh r0, [r4, #0x1e]
cmp r0, #0x14
ldmneia sp!, {r3, r4, r5, pc}
ldr r0, [r4, #0x3c]
cmp r0, #0
beq _021152c4
cmp r0, #1
beq _02115300
ldmia sp!, {r3, r4, r5, pc}
_021152c4:
ldr r0, _02115368 ; =data_027e0d54
ldrh r0, [r0, #0x16]
cmp r0, #0
moveq r0, #1
movne r0, #0
mov r0, r0, lsl #0x10
mov r5, r0, lsr #0x10
ldr r0, _02115368 ; =data_027e0d54
mov r1, r5
bl func_ov10_02118390
ldr r0, [r4, #0x14]
mov r1, #5
strb r5, [r0, #0xb8]
bl func_ov10_02115534
ldmia sp!, {r3, r4, r5, pc}
_02115300:
ldr r0, _02115368 ; =data_027e0d54
bl func_ov10_021184e0
ldr r1, _02115368 ; =data_027e0d54
ldr r0, [r4, #0x14]
ldrh r2, [r1, #0x16]
mov r1, #5
strb r2, [r0, #0xb8]
bl func_ov10_02115534
ldmia sp!, {r3, r4, r5, pc}
_02115324:
ldr r0, _02115368 ; =data_027e0d54
ldrb r0, [r0, #0xd]
cmp r0, #0
moveq r0, #1
movne r0, #0
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
mov r0, r1
bl func_02038b40
mov r2, #0
ldr r0, _0211536c ; =data_ov00_020eec9c
mov r1, #0x18
strb r2, [r4, #0x1c]
bl func_ov00_020d77e4
ldmia sp!, {r3, r4, r5, pc}
_02115360:
bl func_02037854
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov10_02115278
_02115368: .word data_027e0d54
_0211536c: .word data_ov00_020eec9c
.global func_ov10_02115370
arm_func_start func_ov10_02115370
func_ov10_02115370: ; 0x02115370
stmdb sp!, {r3, lr}
ldrb r2, [r1, #1]
cmp r2, #0x1e
bne _021153c4
ldr r2, [r1, #4]
cmp r2, #0
beq _02115398
cmp r2, #1
beq _021153b0
b _021153c4
_02115398:
mov r1, #0
str r1, [r0, #0x3c]
mov r1, #1
strb r1, [r0, #0x1c]
mov r0, r1
ldmia sp!, {r3, pc}
_021153b0:
mov r1, #1
str r1, [r0, #0x3c]
strb r1, [r0, #0x1c]
mov r0, r1
ldmia sp!, {r3, pc}
_021153c4:
bl func_02037f58
ldmia sp!, {r3, pc}
arm_func_end func_ov10_02115370
.global func_ov10_021153cc
arm_func_start func_ov10_021153cc
func_ov10_021153cc: ; 0x021153cc
stmdb sp!, {r0, r1, r2, r3}
ldr r2, [sp, #8]
ldr r1, _02115418 ; =0x00fe0001
ldrb r3, [r2, #3]
ldrh r2, [r2, #4]
orr r2, r2, r3, lsl #16
cmp r2, r1
bne _02115408
ldr r1, _0211541c ; =data_027e0d54
ldr r2, _02115420 ; =data_ov10_0211e768
ldrh r1, [r1, #0x16]
add sp, sp, #0x10
add r1, r2, r1, lsl #3
str r1, [r0]
bx lr
_02115408:
mov r1, #0
str r1, [r0]
add sp, sp, #0x10
bx lr
.align 2, 0
arm_func_end func_ov10_021153cc
_02115418: .word 0x00fe0001
_0211541c: .word data_027e0d54
_02115420: .word data_ov10_0211e768
.global func_ov10_02115424
thumb_func_start func_ov10_02115424
func_ov10_02115424: ; 0x02115424
push {r4, lr}
sub sp, #0x10
mov r2, #6
mov r3, #1
add r4, r0, #0
bl func_ov10_02112f18
ldr r0, _021154e8 ; =data_ov10_0211ecec
ldr r3, _021154ec ; =func_ov10_02113e70
str r0, [r4]
ldr r0, _021154f0 ; =func_ov10_02113e6c
mov r1, #4
str r0, [sp]
add r0, r4, #0
add r0, #0x18
mov r2, #0x18
blx func_0204f614
add r0, r4, #0
add r0, #0x78
add r1, r4, #0
blx func_ov10_02115248
mov r1, #0
add r0, r4, #0
mov r2, #0
mvn r1, r1
add r0, #0xb8
strb r1, [r0]
mov r1, #0x56
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
add r0, r4, #0
str r2, [sp, #8]
add r0, #0x48
add r1, #0xbd
add r3, r2, #0
str r2, [sp, #0xc]
blx func_ov00_020cfed0
add r0, r4, #0
mov r2, #1
mov r1, #4
add r0, #0x5b
strb r1, [r0]
mov r1, #0x57
str r1, [sp]
str r2, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x18
add r1, #0xbc
add r3, r2, #0
blx func_ov00_020cfed0
add r0, r4, #0
mov r2, #2
mov r1, #5
add r0, #0x2b
strb r1, [r0]
mov r1, #0x58
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x30
add r1, #0xbb
add r3, r2, #0
blx func_ov00_020cfed0
add r0, r4, #0
mov r2, #3
mov r1, #6
add r0, #0x43
strb r1, [r0]
mov r1, #0x59
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x60
add r1, #0xba
add r3, r2, #0
blx func_ov00_020cfed0
add r0, r4, #0
add sp, #0x10
pop {r4, pc}
nop
thumb_func_end func_ov10_02115424
_021154e8: .word data_ov10_0211ecec
_021154ec: .word func_ov10_02113e70 - 1
_021154f0: .word func_ov10_02113e6c - 1
.global func_ov10_021154f4
arm_func_start func_ov10_021154f4
func_ov10_021154f4: ; 0x021154f4
stmdb sp!, {r4, lr}
mov r4, r0
bl func_0203780c
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_021154f4
.global func_ov10_02115508
arm_func_start func_ov10_02115508
func_ov10_02115508: ; 0x02115508
stmdb sp!, {r3, lr}
mov ip, r0
mov r3, #0
mov r2, #1
_02115518:
add r3, r3, #1
strb r2, [ip, #0x25]
cmp r3, #4
add ip, ip, #0x18
blt _02115518
bl func_ov10_02112f48
ldmia sp!, {r3, pc}
arm_func_end func_ov10_02115508
.global func_ov10_02115534
arm_func_start func_ov10_02115534
func_ov10_02115534: ; 0x02115534
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
mov r5, r0
cmp r4, #3
beq _02115568
cmp r4, #4
bne _0211557c
mov r2, #0
ldr r0, _0211558c ; =data_027e0c38
mov r3, r2
mov r1, #7
bl func_02033e70
b _0211557c
_02115568:
ldr r0, _0211558c ; =data_027e0c38
mov r1, #7
mov r2, #0xf
mov r3, #0
bl func_02033e70
_0211557c:
mov r0, #0
str r0, [r5, #0x14]
str r4, [r5, #0x10]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov10_02115534
_0211558c: .word data_027e0c38
.global func_ov10_02115590
arm_func_start func_ov10_02115590
func_ov10_02115590: ; 0x02115590
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, _021155c4 ; =data_ov00_020eec9c
mov r1, #0x11
bl func_ov00_020d77e4
mov r0, r4
mov r1, #2
bl func_ov10_02115534
ldr r0, _021155c8 ; =data_ov00_020ee734
mov r1, #1
mov r2, #0
bl func_ov10_0211e500
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02115590
_021155c4: .word data_ov00_020eec9c
_021155c8: .word data_ov00_020ee734
.global func_ov10_021155cc
arm_func_start func_ov10_021155cc
func_ov10_021155cc: ; 0x021155cc
stmdb sp!, {r4, lr}
mov r4, r0
mov r0, #0x10000
ldr r1, [r4, #0x90]
rsb r0, r0, #0
and r0, r1, r0
cmp r0, #0x1000000
beq _021155f8
ldr r0, _021157b4 ; =data_027e0c68
add r1, r4, #0x78
bl func_02036888
_021155f8:
ldr r0, [r4, #0x14]
adds r0, r0, #1
str r0, [r4, #0x14]
movmi r0, #0
strmi r0, [r4, #0x14]
ldr r0, [r4, #0x10]
cmp r0, #5
addls pc, pc, r0, lsl #2
ldmia sp!, {r4, pc}
_0211561c: ; jump table
b _02115670 ; case 0
b _02115634 ; case 1
b _021156cc ; case 2
b _021156f0 ; case 3
b _02115670 ; case 4
b _0211574c ; case 5
_02115634:
mov r0, #0x10000
ldr r1, [r4, #0x90]
rsb r0, r0, #0
and r0, r1, r0
cmp r0, #0x1000000
ldmneia sp!, {r4, pc}
ldr r0, _021157b8 ; =data_027e05f8
ldrh r0, [r0, #2]
tst r0, #2
mov r0, r4
beq _02115668
bl func_ov10_02115590
ldmia sp!, {r4, pc}
_02115668:
bl func_ov10_021157c4
ldmia sp!, {r4, pc}
_02115670:
cmp r0, #4
bne _021156b0
ldr r0, [r4, #0x14]
mov r1, #0x1e000
mov r0, r0, lsl #0xc
bl func_01ff98e0
mov r2, r0
mov r0, #0
mov r1, #0xf000
bl func_ov00_020d03c4
add r1, r0, #0x800
mov r2, r1, asr #0xc
ldr r0, _021157bc ; =data_027e0c38
mov r1, #7
mov r3, #0
bl func_02033e70
_021156b0:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ldmleia sp!, {r4, pc}
mov r0, r4
mov r1, #1
bl func_ov10_02115534
ldmia sp!, {r4, pc}
_021156cc:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ldmleia sp!, {r4, pc}
ldr r0, [r4, #8]
mov r1, #1
add r0, r0, #0x10
mov r2, #5
bl func_ov10_0211c784
ldmia sp!, {r4, pc}
_021156f0:
ldr r0, [r4, #0x14]
mov r1, #0x1e000
mov r0, r0, lsl #0xc
bl func_01ff98e0
mov r2, r0
mov r0, #0xf000
mov r1, #0
bl func_ov00_020d03c4
add r1, r0, #0x800
mov r2, r1, asr #0xc
ldr r0, _021157bc ; =data_027e0c38
mov r1, #7
mov r3, #0
bl func_02033e70
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ldmleia sp!, {r4, pc}
ldr r0, [r4, #8]
mov r1, #3
add r0, r0, #0x10
mov r2, #0
bl func_ov10_0211c784
ldmia sp!, {r4, pc}
_0211574c:
ldr r0, _021157c0 ; =data_027e0d54
ldrb r0, [r0, #0xd]
cmp r0, #0
moveq r0, #1
movne r0, #0
cmp r0, #0
ldmeqia sp!, {r4, pc}
mov r0, #0
strb r0, [r4, #0x94]
ldr r1, [r4, #0x90]
sub r0, r0, #0x10000
and r0, r1, r0
cmp r0, #0x1000000
ldmneia sp!, {r4, pc}
ldrsb r1, [r4, #0xb8]
ldr r0, [r4, #8]
blx func_ov10_02113870
blx func_ov10_02115d00
ldr r0, [r4, #8]
mov r1, #1
add r0, r0, #0x10
mov r2, #5
bl func_ov10_0211c784
mvn r0, #0
strb r0, [r4, #0xb8]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_021155cc
_021157b4: .word data_027e0c68
_021157b8: .word data_027e05f8
_021157bc: .word data_027e0c38
_021157c0: .word data_027e0d54
.global func_ov10_021157c4
arm_func_start func_ov10_021157c4
func_ov10_021157c4: ; 0x021157c4
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
mov r4, r0
ldr r0, [r4, #0x10]
cmp r0, #1
movne r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
ldr r1, _0211588c ; =data_027e0d54
ldr r0, [r4, #8]
ldrh r6, [r1, #0x16]
mov r1, r6
blx func_ov10_02113868
ldrh r5, [r0, #0xa]
mov r2, #0
ldr r0, [r4, #8]
mov r1, r6
mov r3, r2
blx func_ov10_02113878
mov r2, r0
mov r0, r4
mov r1, r5
bl func_ov10_02115890
cmp r0, #0
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
mov r6, #0
mov r8, r4
add sb, r4, #0x18
mov r5, r6
_02115834:
mov r0, sb
ldr ip, [r0]
ldrh r7, [r8, #0x22]
ldr ip, [ip]
mov r1, r5
mov r2, r5
mov r3, r5
blx ip
mov r2, r0
mov r0, r4
mov r1, r7
bl func_ov10_02115890
cmp r0, #0
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
add r6, r6, #1
cmp r6, #4
add r8, r8, #0x18
add sb, sb, #0x18
blt _02115834
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
.align 2, 0
arm_func_end func_ov10_021157c4
_0211588c: .word data_027e0d54
.global func_ov10_02115890
arm_func_start func_ov10_02115890
func_ov10_02115890: ; 0x02115890
stmdb sp!, {r4, lr}
mov r4, r0
tst r2, #8
moveq r0, #0
ldmeqia sp!, {r4, pc}
cmp r1, #0x67
bgt _021158d0
bge _021158d8
sub r2, r1, #0x56
cmp r2, #3
addls pc, pc, r2, lsl #2
b _02115920
_021158c0: ; jump table
b _021158d8 ; case 0
b _021158f4 ; case 1
b _02115908 ; case 2
b _0211591c ; case 3
_021158d0:
cmp r1, #0x68
bne _02115920
_021158d8:
ldr r0, _02115928 ; =data_ov00_020eec9c
mov r1, #4
bl func_ov00_020d77e4
mov r0, r4
mov r1, #3
bl func_ov10_02115534
b _02115920
_021158f4:
ldr r0, _0211592c ; =data_027e0c68
ldr r2, _02115930 ; =0x00ca0001
add r1, r4, #0x78
bl func_02036ce4
b _02115920
_02115908:
ldr r0, _0211592c ; =data_027e0c68
ldr r2, _02115934 ; =0x00ca0002
add r1, r4, #0x78
bl func_02036ce4
b _02115920
_0211591c:
bl func_ov10_02115590
_02115920:
mov r0, #0
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02115890
_02115928: .word data_ov00_020eec9c
_0211592c: .word data_027e0c68
_02115930: .word 0x00ca0001
_02115934: .word 0x00ca0002
.global func_ov10_02115938
arm_func_start func_ov10_02115938
func_ov10_02115938: ; 0x02115938
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x44
mov sb, r0
ldr r0, _02115b68 ; =data_027e0cbc
mov r1, #0x2e
bl func_0203d7e0
cmp r0, #0
beq _02115984
add r0, sp, #0x24
bl func_01ffbe34
mov r1, #0
mov r0, #1
str r0, [sp, #0x34]
add r4, sp, #0x24
mov r2, r1
mov r3, r1
rsb r0, r0, #0x110
str r4, [sp]
bl func_0203493c
_02115984:
ldr r0, [sb, #0x14]
mov r1, #0xf000
mov r0, r0, lsl #0xc
bl func_01ff98e0
mov r4, r0
add r0, sp, #4
mov r5, #0
bl func_01ffbe34
mov r0, #1
strb r0, [sp, #0xe]
ldr r0, [sb, #0x10]
cmp r0, #3
beq _021159c4
cmp r0, #4
beq _021159f8
b _02115a30
_021159c4:
mov r0, r5
mov r2, r4
sub r1, r0, #0x64000
bl func_ov00_020d03f8
add r3, r0, #0x800
mov r1, r5
add r6, sp, #4
ldr r0, _02115b6c ; =0x00000112
mov r2, r1
mov r3, r3, asr #0xc
str r6, [sp]
bl func_0203493c
b _02115a4c
_021159f8:
mov r0, #0x64000
mov r2, r4
rsb r0, r0, #0
mov r1, r5
bl func_ov00_020d03f8
add r3, r0, #0x800
mov r1, r5
add r6, sp, #4
ldr r0, _02115b6c ; =0x00000112
mov r2, r1
mov r3, r3, asr #0xc
str r6, [sp]
bl func_0203493c
b _02115a4c
_02115a30:
mov r1, r5
add r6, sp, #4
ldr r0, _02115b6c ; =0x00000112
mov r2, r1
mov r3, r1
str r6, [sp]
bl func_0203493c
_02115a4c:
mov r1, #0
ldr r0, [sb, #8]
mov r2, r1
mov r3, r1
blx func_ov10_02113890
mov r2, #0
ldr r0, [sb, #8]
mov r3, r2
mov r1, #1
blx func_ov10_02113890
mov r0, #0x10000
ldr r1, [sb, #0x90]
rsb r0, r0, #0
and r0, r1, r0
cmp r0, #0x1000000
addne sp, sp, #0x44
ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
mov r6, #0
mov r7, r6
add r8, sb, #0x18
mov sl, #0x32000
mov fp, r6
_02115aa4:
ldr r0, [sb, #0x10]
cmp r0, #4
addls pc, pc, r0, lsl #2
b _02115b0c
_02115ab4: ; jump table
b _02115ac8 ; case 0
b _02115b0c ; case 1
b _02115aec ; case 2
b _02115aec ; case 3
b _02115ac8 ; case 4
_02115ac8:
mov r0, r7, asr #0x1
add r2, r7, r0, lsr #30
mov r0, sl
mov r1, fp
sub r2, r4, r2, asr #2
bl func_ov00_020d03f8
add r0, r0, #0x800
mov r5, r0, asr #0xc
b _02115b0c
_02115aec:
mov r0, r7, asr #0x1
add r2, r7, r0, lsr #30
mov r0, #0
mov r1, #0x32000
sub r2, r4, r2, asr #2
bl func_ov00_020d03f8
add r0, r0, #0x800
mov r5, r0, asr #0xc
_02115b0c:
cmp r6, #3
mov r0, r8
bne _02115b34
mov r2, #0
mov r1, r2
str r1, [sp]
rsb r1, r5, #0
mov r3, r2
bl func_ov00_020d00c4
b _02115b4c
_02115b34:
mov r1, #0
mov r2, r1
str r2, [sp]
mov r2, r5
mov r3, r1
bl func_ov00_020d00c4
_02115b4c:
add r6, r6, #1
cmp r6, #4
add r7, r7, #0x1000
add r8, r8, #0x18
blt _02115aa4
add sp, sp, #0x44
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
arm_func_end func_ov10_02115938
_02115b68: .word data_027e0cbc
_02115b6c: .word 0x00000112
.global func_ov10_02115b70
arm_func_start func_ov10_02115b70
func_ov10_02115b70: ; 0x02115b70
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x78
bl func_0203780c
ldr r3, _02115bac ; =func_ov10_02113e6c
add r0, r4, #0x18
mov r1, #4
mov r2, #0x18
bl func_0204f754
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02115b70
_02115bac: .word func_ov10_02113e6c - 1
.global func_ov10_02115bb0
arm_func_start func_ov10_02115bb0
func_ov10_02115bb0: ; 0x02115bb0
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x78
bl func_0203780c
ldr r3, _02115be4 ; =func_ov10_02113e6c
add r0, r4, #0x18
mov r1, #4
mov r2, #0x18
bl func_0204f754
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02115bb0
_02115be4: .word func_ov10_02113e6c - 1
.global func_ov10_02115be8
arm_func_start func_ov10_02115be8
func_ov10_02115be8: ; 0x02115be8
stmdb sp!, {r4, lr}
mov r4, r0
bl func_0203780c
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_02115be8
.global func_ov10_02115c04
thumb_func_start func_ov10_02115c04
func_ov10_02115c04: ; 0x02115c04
push {r4, r5, r6, lr}
sub sp, #8
add r5, r0, #0
add r6, r1, #0
add r4, r2, #0
blx func_ov00_020d05dc
ldr r0, _02115cc4 ; =data_ov10_0211ed8c
mov r1, #0
str r0, [r5]
add r0, r5, #0
str r6, [r5, #0x10]
add r0, #0x18
add r2, r1, #0
mov r3, #0xf
str r1, [r5, #0x14]
blx func_ov00_020d0490
add r0, r5, #0
add r0, #0x20
blx func_02035064
add r0, r5, #0
add r0, #0xa8
blx func_02035064
ldr r0, _02115cc8 ; =func_020350ac
ldr r3, _02115ccc ; =func_02035064
str r0, [sp]
mov r0, #0x13
lsl r0, r0, #4
add r0, r5, r0
mov r1, #3
mov r2, #0x88
blx func_0204f614
mov r0, #0xb2
lsl r0, r0, #2
strh r4, [r5, r0]
mov r1, #0
add r2, r0, #2
strh r1, [r5, r2]
add r2, r0, #4
strh r1, [r5, r2]
add r2, r0, #6
strh r1, [r5, r2]
add r2, r0, #0
add r2, #8
strh r1, [r5, r2]
add r2, r0, #0
add r2, #0xa
strb r1, [r5, r2]
add r2, r0, #0
add r2, #0xb
add r0, #0xc
strb r1, [r5, r2]
strb r1, [r5, r0]
cmp r4, #0
bne _02115c7e
mov r3, #0x67
b _02115c80
_02115c7e:
mov r3, #0x68
_02115c80:
mov r0, #1
str r0, [sp]
mov r2, #0
ldr r1, _02115cd0 ; =0x00000112
add r0, r5, #0
str r2, [sp, #4]
blx func_ov00_020d0644
cmp r4, #0
bne _02115c98
mov r2, #1
b _02115c9a
_02115c98:
mov r2, #2
_02115c9a:
mov r3, #0
add r0, r5, #0
lsl r2, r2, #0x18
str r3, [sp]
add r0, #0x20
mov r1, #0x2f
lsr r2, r2, #0x18
str r3, [sp, #4]
blx func_020350b4
mov r1, #0
add r0, r5, #0
add r0, #0x20
add r2, r1, #0
add r3, r1, #0
str r1, [sp]
blx func_020351b8
add r0, r5, #0
add sp, #8
pop {r4, r5, r6, pc}
.align 2, 0
thumb_func_end func_ov10_02115c04
_02115cc4: .word data_ov10_0211ed8c
_02115cc8: .word func_020350ac
_02115ccc: .word func_02035064
_02115cd0: .word 0x00000112
.global func_ov10_02115cd4
thumb_func_start func_ov10_02115cd4
func_ov10_02115cd4: ; 0x02115cd4
push {r4, lr}
add r4, r0, #0
mov r0, #0x13
lsl r0, r0, #4
ldr r3, _02115cfc ; =func_020350ac
add r0, r4, r0
mov r1, #3
mov r2, #0x88
blx func_0204f754
add r0, r4, #0
add r0, #0xa8
blx func_020350ac
add r0, r4, #0
add r0, #0x20
blx func_020350ac
add r0, r4, #0
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_02115cd4
_02115cfc: .word func_020350ac
.global func_ov10_02115d00
thumb_func_start func_ov10_02115d00
func_ov10_02115d00: ; 0x02115d00
push {r3, r4, r5, r6, r7, lr}
sub sp, #8
add r6, r0, #0
ldr r0, _02115ddc ; =0x000002d3
ldrb r0, [r6, r0]
cmp r0, #0
bne _02115d20
blx func_020329b0
mov r2, #0xb2
lsl r2, r2, #2
ldrsh r2, [r6, r2]
ldr r1, _02115de0 ; =0x00000112
blx func_02032a20
str r0, [r6, #0x14]
_02115d20:
mov r1, #0xb2
lsl r1, r1, #2
ldrh r1, [r6, r1]
ldr r0, [r6, #0x10]
bl func_ov10_02113358
add r7, r0, #0
mov r0, #0x13
mov r3, #0
lsl r0, r0, #4
str r3, [sp]
add r0, r6, r0
mov r1, #0x2f
mov r2, #7
str r3, [sp, #4]
blx func_020350b4
mov r0, #0x6e
mov r3, #0
lsl r0, r0, #2
str r3, [sp]
add r0, r6, r0
mov r1, #0x2f
mov r2, #8
str r3, [sp, #4]
blx func_020350b4
add r0, r7, #0
blx func_ov10_0211a890
cmp r0, #0
beq _02115d64
mov r2, #9
b _02115d66
_02115d64:
mov r2, #0xa
_02115d66:
mov r0, #9
mov r3, #0
lsl r0, r0, #6
lsl r2, r2, #0x18
str r3, [sp]
add r0, r6, r0
mov r1, #0x2f
lsr r2, r2, #0x18
str r3, [sp, #4]
blx func_020350b4
mov r0, #0x13
lsl r0, r0, #4
mov r4, #0
add r5, r6, r0
_02115d84:
mov r1, #0
mov r0, #0
str r0, [sp]
add r0, r5, #0
add r2, r1, #0
add r3, r1, #0
blx func_020351b8
add r4, r4, #1
add r5, #0x88
cmp r4, #3
blt _02115d84
add r7, #0x95
ldrb r0, [r7]
mov r1, #4
sub r0, r0, #1
blx func_01ff9b88
add r2, r0, #0
add r2, r2, #3
mov r3, #0
add r0, r6, #0
lsl r2, r2, #0x18
str r3, [sp]
add r0, #0xa8
mov r1, #0x2f
lsr r2, r2, #0x18
str r3, [sp, #4]
blx func_020350b4
mov r1, #0
add r0, r6, #0
add r0, #0xa8
add r2, r1, #0
add r3, r1, #0
str r1, [sp]
blx func_020351b8
add r0, r6, #0
blx func_ov10_02115de4
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
nop
thumb_func_end func_ov10_02115d00
_02115ddc: .word 0x000002d3
_02115de0: .word 0x00000112
.global func_ov10_02115de4
arm_func_start func_ov10_02115de4
func_ov10_02115de4: ; 0x02115de4
stmdb sp!, {r4, lr}
mov r4, r0
mov r2, #0
ldr r0, [r4, #0x14]
mov r3, r2
mov r1, #1
bl func_02032714
mov r0, r4
bl func_ov10_0211653c
strb r0, [r4, #0x2d2]
mov r0, r4
bl func_ov10_02115e88
ldmia sp!, {r4, pc}
arm_func_end func_ov10_02115de4
.global func_ov10_02115e18
arm_func_start func_ov10_02115e18
func_ov10_02115e18: ; 0x02115e18
stmdb sp!, {r3, r4, r5, r6, r7, lr}
sub sp, sp, #8
mov r6, r0
mov r4, r2
mov r7, r3
mov r5, r1
ldr r0, _02115e84 ; =0x00000112
add r2, sp, #4
add r3, sp, #0
mov r1, #1
bl func_02034698
add r0, r6, #0x200
ldrsh lr, [r0, #0xca]
ldrsh ip, [r0, #0xcc]
ldr r1, [sp, #4]
ldr r2, [sp]
sub r1, lr, r1
sub r2, ip, r2
mov r3, r7
mov r0, r6
add r1, r5, r1
add r2, r4, r2
bl func_ov00_020d0670
strb r0, [r6, #0xd]
and r0, r0, #0xff
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov10_02115e18
_02115e84: .word 0x00000112
.global func_ov10_02115e88
arm_func_start func_ov10_02115e88
func_ov10_02115e88: ; 0x02115e88
stmdb sp!, {r4, lr}
sub sp, sp, #8
mov r4, r0
ldr r0, [r4, #0x14]
mov r1, #0
ldr r2, [r0]
ldr r2, [r2, #0x10]
blx r2
mov r0, r4
bl func_ov10_0211653c
cmp r0, #0
beq _02115f0c
ldrb r0, [r4, #0x2d3]
cmp r0, #0
addne sp, sp, #8
ldmneia sp!, {r4, pc}
add r0, r4, #0x200
ldrh r1, [r0, #0xc8]
ldr r0, [r4, #0x10]
blx func_ov10_02113358
mov r1, #4
str r1, [sp]
mov r2, r0
ldr r0, [r4, #0x14]
add r3, r2, #0x44
ldr ip, [r0]
mov r1, #0
ldr ip, [ip, #8]
mov r2, r1
add r3, r3, #0x3400
blx ip
add sp, sp, #8
ldmia sp!, {r4, pc}
_02115f0c:
ldr r1, _02115f4c ; =data_027e0c68
ldr r2, _02115f50 ; =0x0013000a
add r0, sp, #4
bl func_0203643c
mvn r0, #0
str r0, [sp]
ldr r0, [r4, #0x14]
add r2, sp, #4
ldr ip, [r0]
mov r1, #0
ldr r3, [r2]
ldr ip, [ip, #8]
mov r2, r1
blx ip
add sp, sp, #8
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02115e88
_02115f4c: .word data_027e0c68
_02115f50: .word 0x0013000a
.global func_ov10_02115f54
arm_func_start func_ov10_02115f54
func_ov10_02115f54: ; 0x02115f54
stmdb sp!, {r4, r5, r6, lr}
mov r4, r0
ldrsh r0, [r4, #0x18]
ldrsh r2, [r4, #0x1a]
cmp r0, r2
moveq r2, #0
beq _02115f98
ldrsh r1, [r4, #0x1c]
cmp r0, r1
moveq r2, #0x1000
beq _02115f98
sub r0, r0, r2
sub r1, r1, r2
mov r0, r0, lsl #0xc
mov r1, r1, lsl #0xc
bl func_01ff98e0
mov r2, r0
_02115f98:
add r0, r4, #0x200
ldrsh r1, [r0, #0xce]
ldrsh r3, [r0, #0xca]
mov r1, r1, lsl #0xc
mov r0, r3, lsl #0xc
bl func_ov00_020d03f8
add r0, r0, #0x800
mov r1, r0, asr #0xc
add r0, r4, #0x200
strh r1, [r0, #0xca]
ldrsh r0, [r4, #0x18]
ldrsh r2, [r4, #0x1a]
cmp r0, r2
moveq r2, #0
beq _02115ffc
ldrsh r1, [r4, #0x1c]
cmp r0, r1
moveq r2, #0x1000
beq _02115ffc
sub r0, r0, r2
sub r1, r1, r2
mov r0, r0, lsl #0xc
mov r1, r1, lsl #0xc
bl func_01ff98e0
mov r2, r0
_02115ffc:
add r0, r4, #0x200
ldrsh r1, [r0, #0xd0]
ldrsh r3, [r0, #0xcc]
mov r1, r1, lsl #0xc
mov r0, r3, lsl #0xc
bl func_ov00_020d03f8
add r0, r0, #0x800
mov r1, r0, asr #0xc
add r0, r4, #0x200
strh r1, [r0, #0xcc]
ldrsb r0, [r0, #0xd4]
cmp r0, #0
subgt r0, r0, #1
strgtb r0, [r4, #0x2d4]
bgt _02116040
add r0, r4, #0x18
bl func_ov00_020d054c
_02116040:
add r0, r4, #0x20
bl func_0203516c
add r6, r4, #0x130
mov r5, #0
_02116050:
mov r0, r6
bl func_0203516c
add r5, r5, #1
cmp r5, #3
add r6, r6, #0x88
blt _02116050
add r0, r4, #0xa8
bl func_0203516c
mov r0, r4
bl func_ov10_0211653c
ldrb r1, [r4, #0x2d2]
mov r5, r0
cmp r5, r1
beq _02116090
mov r0, r4
bl func_ov10_02115e88
_02116090:
strb r5, [r4, #0x2d2]
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov10_02115f54
.global func_ov10_02116098
arm_func_start func_ov10_02116098
func_ov10_02116098: ; 0x02116098
bx lr
arm_func_end func_ov10_02116098
.global func_ov10_0211609c
arm_func_start func_ov10_0211609c
func_ov10_0211609c: ; 0x0211609c
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0xc
mov r6, r0
add r0, r6, #0x200
ldrsh r4, [r0, #0xca]
ldrsh r3, [r0, #0xcc]
ldrb r0, [r6, #0xd]
add r4, r4, r1
add r5, r3, r2
tst r0, #4
ldr r0, _02116118 ; =0x00000112
add r2, sp, #8
add r3, sp, #4
mov r1, #1
addne r5, r5, #2
bl func_02034698
ldrb r0, [r6, #0x2d3]
ldr r2, [sp, #8]
ldr r1, [sp, #4]
cmp r0, #0
sub r3, r4, r2
addne sp, sp, #0xc
sub ip, r5, r1
ldmneia sp!, {r3, r4, r5, r6, pc}
mov r0, r6
mov r1, r4
mov r2, r5
str ip, [sp]
bl func_ov10_0211611c
add sp, sp, #0xc
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov10_0211609c
_02116118: .word 0x00000112
.global func_ov10_0211611c
arm_func_start func_ov10_0211611c
func_ov10_0211611c: ; 0x0211611c
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x34
mov r8, r0
add r0, sp, #0x14
mov r7, r1
mov r6, r2
mov r5, r3
bl func_01ffbe34
mov r4, #1
strb r4, [sp, #0x1e]
ldrb r0, [r8, #0xd]
add r1, sp, #0x14
mov r3, r6
tst r0, #4
str r1, [sp]
add r0, r8, #0x200
ldrsh r2, [r0, #0xc8]
ldr r1, _02116220 ; =data_ov10_0211e780
moveq r4, #0
add r1, r1, r2, lsl #1
ldrb r1, [r4, r1]
ldr r0, _02116224 ; =0x00000112
mov r2, r7
bl func_02034984
cmp r4, #0
bne _021161bc
add r1, sp, #0xc
str r1, [sp]
ldr r0, _02116224 ; =0x00000112
add r3, sp, #0x10
mov r1, #1
mov r2, #2
bl func_02034710
ldr r1, [sp, #0x10]
ldr r2, [sp, #0xc]
add r3, sp, #0x14
add r0, r8, #0x20
add r1, r7, r1
add r2, r6, r2
bl func_02034a1c
_021161bc:
mov r0, r8
bl func_ov10_0211653c
cmp r0, #0
beq _021161dc
ldr r2, [sp, #0x50]
mov r0, r8
mov r1, r5
bl func_ov10_0211627c
_021161dc:
ldr r0, _02116224 ; =0x00000112
add r2, sp, #8
add r3, sp, #4
mov r1, #0
bl func_0203489c
ldr r2, [sp, #8]
ldr r1, [sp, #0x50]
ldr r0, [sp, #4]
add r3, r5, r2
add r2, r1, r0
sub r1, r3, #0x50
ldr r0, [r8, #0x14]
sub r2, r2, #8
mov r3, #0
bl func_0203e1b0
add sp, sp, #0x34
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov10_0211611c
_02116220: .word data_ov10_0211e780
_02116224: .word 0x00000112
.global func_ov10_02116228
arm_func_start func_ov10_02116228
func_ov10_02116228: ; 0x02116228
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0xc
mov r6, r0
mov r5, r2
mov r4, r3
ldr r0, _02116278 ; =0x00000112
add r2, sp, #8
add r3, sp, #4
bl func_02034698
ldr r1, [sp, #0x20]
ldr r0, _02116278 ; =0x00000112
str r1, [sp]
ldr r2, [sp, #8]
ldr r3, [sp, #4]
mov r1, r6
add r2, r2, r5
add r3, r3, r4
bl func_02034984
add sp, sp, #0xc
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov10_02116228
_02116278: .word 0x00000112
.global func_ov10_0211627c
arm_func_start func_ov10_0211627c
func_ov10_0211627c: ; 0x0211627c
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x28
mov r4, r0
mov sl, r1
mov sb, r2
bl func_ov10_0211642c
add r0, sp, #8
bl func_01ffbe34
mov r0, #1
strb r0, [sp, #0x12]
add r0, r4, #0x200
ldrh r1, [r0, #0xc8]
ldr r0, [r4, #0x10]
blx func_ov10_02113358
add r5, r4, #0x130
mov r7, r0
mov r8, #0x13
mov fp, #1
add r6, sp, #8
mov r4, #0x88
_021162cc:
cmp r8, #0x13
beq _021162e8
cmp r8, #0x14
beq _02116300
cmp r8, #0x15
beq _02116318
b _0211633c
_021162e8:
mov r0, r7
mov r1, fp
bl func_ov10_0211a86c
cmp r0, #0
bne _0211633c
b _0211635c
_02116300:
mov r0, r7
mov r1, #2
bl func_ov10_0211a86c
cmp r0, #0
bne _0211633c
b _0211635c
_02116318:
mov r0, r7
mov r1, #0
bl func_ov10_0211a86c
cmp r0, #0
bne _0211633c
mov r0, r7
bl func_ov10_0211a890
cmp r0, #0
beq _0211635c
_0211633c:
sub r1, r8, #0x13
mla r0, r1, r4, r5
str sb, [sp]
ldr r1, _02116428 ; =0x00000112
mov r2, r8
mov r3, sl
str r6, [sp, #4]
bl func_02034b0c
_0211635c:
add r8, r8, #1
cmp r8, #0x15
ble _021162cc
mov r5, #0x16
mov r6, r5
add r4, sp, #8
_02116374:
cmp r6, #0x16
beq _02116390
cmp r6, #0x17
beq _021163a4
cmp r6, #0x18
beq _021163b8
b _021163c8
_02116390:
mov r0, r7
bl func_ov10_0211a8d4
cmp r0, #0
bne _021163c8
b _021163e4
_021163a4:
mov r0, r7
bl func_ov10_0211a8c0
cmp r0, #0
bne _021163c8
b _021163e4
_021163b8:
mov r0, r7
bl func_ov10_0211a8e8
cmp r0, #0
beq _021163e4
_021163c8:
mov r0, r6
mov r1, r5
mov r2, sl
mov r3, sb
str r4, [sp]
bl func_ov10_02116228
add r5, r5, #1
_021163e4:
add r6, r6, #1
cmp r6, #0x18
ble _02116374
mov r0, r7
bl func_ov10_0211a8ac
cmp r0, #0
addeq sp, sp, #0x28
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
mov r0, #0x19
add r4, sp, #8
mov r1, r0
mov r2, sl
mov r3, sb
str r4, [sp]
bl func_ov10_02116228
add sp, sp, #0x28
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
arm_func_end func_ov10_0211627c
_02116428: .word 0x00000112
.global func_ov10_0211642c
arm_func_start func_ov10_0211642c
func_ov10_0211642c: ; 0x0211642c
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x38
str r0, [sp, #8]
add r0, r0, #0x200
mov sl, r1
ldrh r1, [r0, #0xc8]
ldr r0, [sp, #8]
mov sb, r2
ldr r0, [r0, #0x10]
blx func_ov10_02113358
ldrb r1, [r0, #0x94]
ldrb r4, [r0, #0x95]
add r0, sp, #0x18
mov r5, r1, asr #0x2
cmp r5, #0x10
mov r6, #1
movge r5, #0x10
bl func_01ffbe34
mov r0, #1
strb r0, [sp, #0x22]
mov r0, #0
subs r7, r5, #1
str r0, [sp, #0xc]
bmi _02116508
ldr fp, _02116538 ; =0x00000112
mov r8, r7, lsl #0x2
_02116494:
subs r5, r4, r8
movmi r5, #0
movmi r6, #1
bmi _021164ac
cmp r5, #4
movgt r5, #4
_021164ac:
cmp r6, #0
beq _021164c4
cmp r5, #0
strgt r7, [sp, #0xc]
movgt r6, #0
bgt _021164fc
_021164c4:
mov r0, fp
add r1, r7, #3
add r2, sp, #0x14
add r3, sp, #0x10
bl func_02034698
add r0, sp, #0x18
str r0, [sp]
ldr r2, [sp, #0x14]
ldr r3, [sp, #0x10]
add r1, r5, #0x37
mov r0, fp
add r2, r2, sl
add r3, r3, sb
bl func_02034984
_021164fc:
sub r8, r8, #4
subs r7, r7, #1
bpl _02116494
_02116508:
ldr r0, [sp, #8]
ldr r2, [sp, #0xc]
ldr r1, _02116538 ; =0x00000112
add r4, sp, #0x18
str sb, [sp]
mov r3, sl
add r0, r0, #0xa8
add r2, r2, #3
str r4, [sp, #4]
bl func_02034b0c
add sp, sp, #0x38
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
arm_func_end func_ov10_0211642c
_02116538: .word 0x00000112
.global func_ov10_0211653c
arm_func_start func_ov10_0211653c
func_ov10_0211653c: ; 0x0211653c
stmdb sp!, {r3, lr}
add r1, r0, #0x200
ldrh r1, [r1, #0xc8]
ldr r0, [r0, #0x10]
blx func_ov10_02113358
add r0, r0, #0x3000
ldrb r0, [r0, #0x481]
ldmia sp!, {r3, pc}
arm_func_end func_ov10_0211653c
.global func_ov10_0211655c
arm_func_start func_ov10_0211655c
func_ov10_0211655c: ; 0x0211655c
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
bl func_020386d8
ldr r1, _02116580 ; =data_ov10_0211ee0c
mov r0, r5
str r1, [r5]
str r4, [r5, #0x14]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov10_0211655c
_02116580: .word data_ov10_0211ee0c
.global func_ov10_02116584
arm_func_start func_ov10_02116584
func_ov10_02116584: ; 0x02116584
stmdb sp!, {r3, lr}
ldrb r2, [r1, #1]
cmp r2, #0x1e
bne _021165f8
ldr r1, [r1, #4]
cmp r1, #2
beq _021165b0
cmp r1, #5
cmpne r1, #6
beq _021165c0
b _021165f8
_021165b0:
ldr r0, [r0, #0x14]
bl func_ov10_02116b20
mov r0, #1
ldmia sp!, {r3, pc}
_021165c0:
ldr r0, _02116600 ; =data_ov00_020ebe18
cmp r1, #5
ldr r0, [r0, #0x93c]
add r1, sp, #0
str r0, [sp]
bic r0, r0, #0xff0000
streq r0, [sp]
orrne r0, r0, #0x10000
strne r0, [sp]
ldr r0, _02116604 ; =data_027e0d54
ldr r1, [r1]
bl func_ov10_02118a14
mov r0, #1
ldmia sp!, {r3, pc}
_021165f8:
mov r0, #1
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov10_02116584
_02116600: .word data_ov00_020ebe18
_02116604: .word data_027e0d54
.global func_ov10_02116608
thumb_func_start func_ov10_02116608
func_ov10_02116608: ; 0x02116608
push {r4, lr}
mov r2, #9
mov r3, #3
add r4, r0, #0
bl func_ov10_02112f18
ldr r0, _0211662c ; =data_ov10_0211ede8
add r1, r4, #0
str r0, [r4]
mov r0, #3
str r0, [r4, #0x18]
add r0, r4, #0
add r0, #0x1c
blx func_ov10_0211655c
add r0, r4, #0
pop {r4, pc}
nop
thumb_func_end func_ov10_02116608
_0211662c: .word data_ov10_0211ede8
.global func_ov10_02116630
arm_func_start func_ov10_02116630
func_ov10_02116630: ; 0x02116630
stmdb sp!, {r4, lr}
mov r4, r0
bl func_0203780c
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_02116630
.global func_ov10_02116644
arm_func_start func_ov10_02116644
func_ov10_02116644: ; 0x02116644
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0x14
mov r5, r0
mov r4, r1
bl func_ov06_0210225c
bl func_ov06_021027d8
ldr r0, [r5, #8]
blx func_ov10_02113a90
cmp r4, #0
beq _02116680
cmp r4, #1
beq _021166ac
cmp r4, #2
beq _021166e8
b _02116724
_02116680:
mov r0, #0
str r0, [r5, #0x18]
ldr r0, [r5, #8]
ldr r1, _02116738 ; =0x0013000c
blx func_ov10_02113d70
add r0, sp, #0
blx func_ov00_0207a4d4
bl func_ov06_0210225c
add r1, sp, #0
bl func_ov06_02101e48
b _02116724
_021166ac:
mov r0, #1
str r0, [r5, #0x18]
ldr r0, [r5, #8]
ldr r1, _0211673c ; =0x0013000b
blx func_ov10_02113d70
ldr r1, _02116740 ; =data_027e0d54
ldr r0, [r5, #8]
ldrh r1, [r1, #0x16]
blx func_ov10_02113358
mov r6, r0
bl func_ov06_0210225c
add r1, r6, #0x44
add r1, r1, #0x2c00
bl func_ov06_02101e48
b _02116724
_021166e8:
mov r0, #2
str r0, [r5, #0x18]
ldr r0, [r5, #8]
ldr r1, _02116744 ; =0x00130010
blx func_ov10_02113d70
ldr r0, [r5, #8]
ldr r6, [r0, #0x60]
cmp r6, #0
beq _0211671c
bl func_ov06_0210225c
mov r1, r6
bl func_ov06_02101e48
b _02116724
_0211671c:
bl func_ov06_0210225c
bl func_ov06_02101e18
_02116724:
mov r0, r5
mov r1, r4
bl func_ov10_02112f48
add sp, sp, #0x14
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov10_02116644
_02116738: .word 0x0013000c
_0211673c: .word 0x0013000b
_02116740: .word data_027e0d54
_02116744: .word 0x00130010
.global func_ov10_02116748
arm_func_start func_ov10_02116748
func_ov10_02116748: ; 0x02116748
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov06_0210225c
bl func_ov06_02102824
mov r0, r4
bl func_ov10_02112f5c
ldmia sp!, {r4, pc}
arm_func_end func_ov10_02116748
.global func_ov10_02116764
arm_func_start func_ov10_02116764
func_ov10_02116764: ; 0x02116764
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
mov r5, r0
cmp r4, #6
bne _02116790
ldr r0, [r5, #8]
blx func_ov10_02113da4
ldr r0, _021167a0 ; =data_027e0c68
ldr r2, _021167a4 ; =0x00ca000c
add r1, r5, #0x1c
bl func_02036ce4
_02116790:
mov r0, #0
str r0, [r5, #0x14]
str r4, [r5, #0x10]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov10_02116764
_021167a0: .word data_027e0c68
_021167a4: .word 0x00ca000c
.global func_ov10_021167a8
arm_func_start func_ov10_021167a8
func_ov10_021167a8: ; 0x021167a8
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, [r4, #8]
blx func_ov10_02113a58
mov r0, r4
mov r1, #5
bl func_ov10_02116764
ldmia sp!, {r4, pc}
arm_func_end func_ov10_021167a8
.global func_ov10_021167c8
arm_func_start func_ov10_021167c8
func_ov10_021167c8: ; 0x021167c8
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, [r4, #0x14]
adds r0, r0, #1
str r0, [r4, #0x14]
movmi r0, #0
strmi r0, [r4, #0x14]
mov r0, #0x10000
ldr r1, [r4, #0x34]
rsb r0, r0, #0
and r0, r1, r0
cmp r0, #0x1000000
beq _0211680c
ldr r0, _02116a54 ; =data_027e0c68
add r1, r4, #0x1c
bl func_02036888
b _02116828
_0211680c:
bl func_ov06_0210225c
ldrb r0, [r0, #0x23a]
cmp r0, #3
bne _02116828
bl func_ov06_0210225c
mov r1, #4
strb r1, [r0, #0x23a]
_02116828:
bl func_ov06_0210225c
bl func_ov06_021022a8
ldr r0, [r4, #0x10]
cmp r0, #7
addls pc, pc, r0, lsl #2
ldmia sp!, {r4, pc}
_02116840: ; jump table
b _02116860 ; case 0
b _02116860 ; case 1
b _02116860 ; case 2
b _021169b4 ; case 3
b _02116880 ; case 4
b _02116880 ; case 5
b _021169f8 ; case 6
b _02116a28 ; case 7
_02116860:
ldr r0, [r4, #8]
ldr r0, [r0, #0x68]
cmp r0, #1
ldmneia sp!, {r4, pc}
mov r0, r4
mov r1, #3
bl func_ov10_02116764
ldmia sp!, {r4, pc}
_02116880:
ldr r0, [r4, #8]
ldr r0, [r0, #0x68]
cmp r0, #0
ldmneia sp!, {r4, pc}
ldr r0, _02116a58 ; =data_027e0d54
ldrb r0, [r0, #0xd]
cmp r0, #0
moveq r0, #1
movne r0, #0
cmp r0, #0
ldmeqia sp!, {r4, pc}
bl func_ov06_0210225c
bl func_ov06_02102c68
ldr r0, [r4, #8]
blx func_ov10_02113bc4
ldr r0, [r4, #0x18]
cmp r0, #0
beq _021168dc
cmp r0, #1
beq _021168f4
cmp r0, #2
beq _02116938
b _021169a8
_021168dc:
ldr r0, [r4, #8]
mov r1, #1
add r0, r0, #0x10
mov r2, #8
bl func_ov10_0211c784
b _021169a8
_021168f4:
ldr r0, [r4, #0x10]
cmp r0, #5
ldreq r1, [r4, #8]
ldreq r0, [r1, #8]
cmpeq r0, #3
bne _02116920
add r0, r1, #0x10
mov r1, #3
mov r2, #4
bl func_ov10_0211c784
b _021169a8
_02116920:
ldr r0, [r4, #8]
mov r1, #4
add r0, r0, #0x10
mov r2, #1
bl func_ov10_0211c784
b _021169a8
_02116938:
ldr r0, [r4, #8]
ldr r1, [r0, #8]
cmp r1, #0xa
bne _0211697c
ldrsb r1, [r0, #0x64]
blx func_ov10_02113a4c
cmp r0, #0
ldr r0, [r4, #8]
mov r1, #0xa
add r0, r0, #0x10
beq _02116970
mov r2, #0xd
bl func_ov10_0211c784
b _021169a8
_02116970:
mov r2, #0xe
bl func_ov10_0211c784
b _021169a8
_0211697c:
ldr r1, [r4, #0x10]
add r0, r0, #0x10
cmp r1, #4
bne _0211699c
mov r1, #8
mov r2, #1
bl func_ov10_0211c784
b _021169a8
_0211699c:
mov r1, #7
mov r2, #0
bl func_ov10_0211c784
_021169a8:
ldr r0, [r4, #8]
blx func_ov10_02113a90
ldmia sp!, {r4, pc}
_021169b4:
bl func_ov06_0210225c
ldrb r0, [r0, #0x23a]
cmp r0, #1
ldmneia sp!, {r4, pc}
ldr r0, _02116a5c ; =data_027e05f8
ldrh r0, [r0, #2]
tst r0, #2
beq _021169ec
ldr r0, _02116a60 ; =data_ov00_020eec9c
mov r1, #5
bl func_ov00_020d77e4
mov r0, r4
bl func_ov10_021167a8
ldmia sp!, {r4, pc}
_021169ec:
mov r0, r4
bl func_ov10_02116a64
ldmia sp!, {r4, pc}
_021169f8:
mov r0, #0x10000
ldr r1, [r4, #0x34]
rsb r0, r0, #0
and r0, r1, r0
cmp r0, #0x1000000
ldmneia sp!, {r4, pc}
ldr r0, [r4, #8]
blx func_ov10_02113a58
mov r0, r4
mov r1, #4
bl func_ov10_02116764
ldmia sp!, {r4, pc}
_02116a28:
ldr r0, _02116a58 ; =data_027e0d54
ldrb r0, [r0, #0xd]
cmp r0, #0
moveq r0, #1
movne r0, #0
cmp r0, #0
ldmeqia sp!, {r4, pc}
mov r0, r4
mov r1, #6
bl func_ov10_02116764
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_021167c8
_02116a54: .word data_027e0c68
_02116a58: .word data_027e0d54
_02116a5c: .word data_027e05f8
_02116a60: .word data_ov00_020eec9c
.global func_ov10_02116a64
arm_func_start func_ov10_02116a64
func_ov10_02116a64: ; 0x02116a64
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r0, [r5, #0x10]
cmp r0, #7
addls pc, pc, r0, lsl #2
b _02116a9c
_02116a7c: ; jump table
b _02116af4 ; case 0
b _02116af4 ; case 1
b _02116af4 ; case 2
b _02116a9c ; case 3
b _02116af4 ; case 4
b _02116af4 ; case 5
b _02116a9c ; case 6
b _02116af4 ; case 7
_02116a9c:
ldr r0, _02116afc ; =data_027e0c68
bl func_02036808
cmp r0, #0
movne r0, #0
ldmneia sp!, {r3, r4, r5, pc}
bl func_ov06_0210225c
mov r4, r0
bl func_ov06_02102564
ldr r0, [r4, #0x230]
cmp r0, #5
bne _02116ad4
mov r0, r5
bl func_ov10_021167a8
b _02116af4
_02116ad4:
cmp r0, #6
bne _02116af4
mov r3, #3
ldr r0, _02116afc ; =data_027e0c68
add r1, r5, #0x1c
add r2, r3, #0xca0000
strb r3, [r4, #0x23a]
bl func_02036ce4
_02116af4:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov10_02116a64
_02116afc: .word data_027e0c68
.global func_ov10_02116b00
arm_func_start func_ov10_02116b00
func_ov10_02116b00: ; 0x02116b00
stmdb sp!, {r3, lr}
bl func_ov06_0210225c
bl func_ov06_021023d8
ldmia sp!, {r3, pc}
arm_func_end func_ov10_02116b00
.global func_ov10_02116b10
arm_func_start func_ov10_02116b10
func_ov10_02116b10: ; 0x02116b10
stmdb sp!, {r3, lr}
bl func_ov06_0210225c
bl func_ov06_021024f0
ldmia sp!, {r3, pc}
arm_func_end func_ov10_02116b10
.global func_ov10_02116b20
arm_func_start func_ov10_02116b20
func_ov10_02116b20: ; 0x02116b20
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov06_0210225c
bl func_ov06_02101c9c
cmp r0, #0
ldmeqia sp!, {r4, pc}
bl func_ov06_0210225c
mov r1, #5
strb r1, [r0, #0x23a]
ldr r0, [r4, #0x18]
cmp r0, #0
beq _02116b64
cmp r0, #1
beq _02116b88
cmp r0, #2
beq _02116bb4
ldmia sp!, {r4, pc}
_02116b64:
bl func_ov06_0210225c
mov r1, r0
ldr r0, _02116be4 ; =data_027e0d54
add r1, r1, #4
bl func_ov10_021185e8
mov r0, r4
mov r1, #7
bl func_ov10_02116764
ldmia sp!, {r4, pc}
_02116b88:
bl func_ov06_0210225c
mov r1, r0
ldr r0, _02116be4 ; =data_027e0d54
add r1, r1, #4
bl func_ov10_02118774
ldr r0, [r4, #8]
blx func_ov10_02113a58
mov r0, r4
mov r1, #4
bl func_ov10_02116764
ldmia sp!, {r4, pc}
_02116bb4:
bl func_ov06_0210225c
ldr r1, [r4, #8]
add r0, r0, #4
str r0, [r1, #0x60]
ldr r0, [r4, #8]
blx func_ov10_021139ec
ldr r0, [r4, #8]
blx func_ov10_02113a58
mov r0, r4
mov r1, #4
bl func_ov10_02116764
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02116b20
_02116be4: .word data_027e0d54
.global func_ov10_02116be8
arm_func_start func_ov10_02116be8
func_ov10_02116be8: ; 0x02116be8
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x1c
bl func_0203780c
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_02116be8
.global func_ov10_02116c10
arm_func_start func_ov10_02116c10
func_ov10_02116c10: ; 0x02116c10
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x1c
bl func_0203780c
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_02116c10
.global func_ov10_02116c30
arm_func_start func_ov10_02116c30
func_ov10_02116c30: ; 0x02116c30
stmdb sp!, {r4, lr}
mov r4, r0
bl func_0203780c
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_02116c30
.global func_ov10_02116c4c
thumb_func_start func_ov10_02116c4c
func_ov10_02116c4c: ; 0x02116c4c
push {r4, lr}
sub sp, #0x10
mov r2, #8
mov r3, #1
add r4, r0, #0
bl func_ov10_02112f18
ldr r0, _02116d20 ; =data_ov10_0211ee88
ldr r3, _02116d24 ; =func_ov10_02113e70
str r0, [r4]
ldr r0, _02116d28 ; =func_ov10_02113e6c
mov r1, #5
str r0, [sp]
add r0, r4, #0
add r0, #0x18
mov r2, #0x18
blx func_0204f614
mov r1, #0x5a
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r2, #0
add r0, r4, #0
str r2, [sp, #8]
add r0, #0x18
add r1, #0xba
add r3, r2, #0
str r2, [sp, #0xc]
blx func_ov00_020cfed0
add r0, r4, #0
mov r2, #1
mov r1, #6
add r0, #0x2b
strb r1, [r0]
mov r1, #0x5b
str r1, [sp]
str r2, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x30
add r1, #0xb9
add r3, r2, #0
blx func_ov00_020cfed0
add r0, r4, #0
mov r2, #3
mov r1, #7
add r0, #0x43
strb r1, [r0]
mov r1, #0x5c
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x60
add r1, #0xb8
add r3, r2, #0
blx func_ov00_020cfed0
add r0, r4, #0
mov r2, #2
mov r1, #9
add r0, #0x73
strb r1, [r0]
mov r1, #0x5e
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x48
add r1, #0xb6
add r3, r2, #0
blx func_ov00_020cfed0
add r0, r4, #0
mov r1, #8
add r0, #0x5b
strb r1, [r0]
mov r1, #0x5d
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x78
add r1, #0xb7
mov r2, #5
mov r3, #4
blx func_ov00_020cfed0
add r0, r4, #0
add sp, #0x10
pop {r4, pc}
nop
thumb_func_end func_ov10_02116c4c
_02116d20: .word data_ov10_0211ee88
_02116d24: .word func_ov10_02113e70 - 1
_02116d28: .word func_ov10_02113e6c - 1
.global func_ov10_02116d2c
arm_func_start func_ov10_02116d2c
func_ov10_02116d2c: ; 0x02116d2c
stmdb sp!, {r3, lr}
mov ip, r0
mov r3, #0
mov r2, #1
_02116d3c:
add r3, r3, #1
strb r2, [ip, #0x25]
cmp r3, #5
add ip, ip, #0x18
blt _02116d3c
bl func_ov10_02112f48
ldmia sp!, {r3, pc}
arm_func_end func_ov10_02116d2c
.global func_ov10_02116d58
arm_func_start func_ov10_02116d58
func_ov10_02116d58: ; 0x02116d58
mov r2, #0
str r2, [r0, #0x14]
str r1, [r0, #0x10]
bx lr
arm_func_end func_ov10_02116d58
.global func_ov10_02116d68
arm_func_start func_ov10_02116d68
func_ov10_02116d68: ; 0x02116d68
stmdb sp!, {r3, lr}
mov r1, #2
bl func_ov10_02116d58
ldr r0, _02116d84 ; =data_ov00_020eec9c
mov r1, #0x11
bl func_ov00_020d77e4
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov10_02116d68
_02116d84: .word data_ov00_020eec9c
.global func_ov10_02116d88
arm_func_start func_ov10_02116d88
func_ov10_02116d88: ; 0x02116d88
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, [r4, #0x14]
adds r0, r0, #1
str r0, [r4, #0x14]
movmi r0, #0
strmi r0, [r4, #0x14]
ldr r0, [r4, #0x10]
cmp r0, #7
addls pc, pc, r0, lsl #2
ldmia sp!, {r4, pc}
_02116db4: ; jump table
b _02116df8 ; case 0
b _02116dd4 ; case 1
b _02116e38 ; case 2
b _02116e14 ; case 3
b _02116df8 ; case 4
b _02116e5c ; case 5
b _02116e88 ; case 6
b _02116df8 ; case 7
_02116dd4:
ldr r0, _02116ea8 ; =data_027e05f8
ldrh r0, [r0, #2]
tst r0, #2
mov r0, r4
beq _02116df0
bl func_ov10_02116d68
ldmia sp!, {r4, pc}
_02116df0:
bl func_ov10_02116eac
ldmia sp!, {r4, pc}
_02116df8:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ldmleia sp!, {r4, pc}
mov r0, r4
mov r1, #1
bl func_ov10_02116d58
ldmia sp!, {r4, pc}
_02116e14:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ldmleia sp!, {r4, pc}
ldr r0, [r4, #8]
mov r1, #4
add r0, r0, #0x10
mov r2, #0
bl func_ov10_0211c784
ldmia sp!, {r4, pc}
_02116e38:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ldmleia sp!, {r4, pc}
ldr r0, [r4, #8]
mov r1, #2
add r0, r0, #0x10
mov r2, #4
bl func_ov10_0211c784
ldmia sp!, {r4, pc}
_02116e5c:
ldr r1, [r4, #8]
ldr r0, [r1, #0x68]
cmp r0, #0
ldmneia sp!, {r4, pc}
add r0, r1, #0x10
mov r1, #6
mov r2, #0
bl func_ov10_0211c784
ldr r0, [r4, #8]
blx func_ov10_02113a90
ldmia sp!, {r4, pc}
_02116e88:
ldr r0, [r4, #8]
ldr r0, [r0, #0x68]
cmp r0, #1
ldmneia sp!, {r4, pc}
mov r0, r4
mov r1, #1
bl func_ov10_02116d58
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02116d88
_02116ea8: .word data_027e05f8
.global func_ov10_02116eac
arm_func_start func_ov10_02116eac
func_ov10_02116eac: ; 0x02116eac
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
mov r4, r0
ldr r0, [r4, #0x10]
cmp r0, #1
movne r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
mov r6, #0
mov r8, r4
add sb, r4, #0x18
mov r5, r6
_02116ed4:
mov r0, sb
ldr ip, [r0]
ldrh r7, [r8, #0x22]
ldr ip, [ip]
mov r1, r5
mov r2, r5
mov r3, r5
blx ip
mov r2, r0
mov r0, r4
mov r1, r7
bl func_ov10_02116f2c
cmp r0, #0
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
add r6, r6, #1
cmp r6, #5
add r8, r8, #0x18
add sb, sb, #0x18
blt _02116ed4
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
arm_func_end func_ov10_02116eac
.global func_ov10_02116f2c
arm_func_start func_ov10_02116f2c
func_ov10_02116f2c: ; 0x02116f2c
stmdb sp!, {r4, lr}
mov r4, r0
tst r2, #8
moveq r0, #0
ldmeqia sp!, {r4, pc}
sub r1, r1, #0x5a
cmp r1, #4
addls pc, pc, r1, lsl #2
b _02117028
_02116f50: ; jump table
b _02116f64 ; case 0
b _0211700c ; case 1
b _02116fac ; case 2
b _02117024 ; case 3
b _02116fd0 ; case 4
_02116f64:
ldr r1, _02117030 ; =data_027e0d54
ldr r0, [r4, #8]
ldrh r1, [r1, #0x16]
blx func_ov10_02113358
ldr r0, [r0, #0xcf0]
mov r1, #2
cmp r0, #0x47
movne r2, #1
ldr r0, [r4, #8]
moveq r2, #0
blx func_ov10_02113364
ldr r0, _02117034 ; =data_ov00_020eec9c
mov r1, #4
bl func_ov00_020d77e4
ldr r0, _02117038 ; =data_ov00_020eec68
mov r1, #0x20
bl func_ov00_020d716c
b _02117028
_02116fac:
ldr r0, [r4, #8]
blx func_ov10_02113a58
mov r0, r4
mov r1, #5
bl func_ov10_02116d58
ldr r0, _02117034 ; =data_ov00_020eec9c
mov r1, #0x10
bl func_ov00_020d77e4
b _02117028
_02116fd0:
ldr r1, _02117030 ; =data_027e0d54
ldr r0, [r4, #8]
ldrh r1, [r1, #0x16]
blx func_ov10_02113358
bl func_ov10_0211a8fc
cmp r0, #0
beq _02117028
ldr r0, [r4, #8]
mov r1, #7
mov r2, #1
blx func_ov10_02113364
ldr r0, _02117034 ; =data_ov00_020eec9c
mov r1, #0x10
bl func_ov00_020d77e4
b _02117028
_0211700c:
mov r1, #3
bl func_ov10_02116d58
ldr r0, _02117034 ; =data_ov00_020eec9c
mov r1, #0x10
bl func_ov00_020d77e4
b _02117028
_02117024:
bl func_ov10_02116d68
_02117028:
mov r0, #0
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02116f2c
_02117030: .word data_027e0d54
_02117034: .word data_ov00_020eec9c
_02117038: .word data_ov00_020eec68
.global func_ov10_0211703c
arm_func_start func_ov10_0211703c
func_ov10_0211703c: ; 0x0211703c
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x44
mov sl, r0
ldr r0, [sl, #0x14]
mov r1, #0xf000
mov r0, r0, lsl #0xc
bl func_01ff98e0
mov r5, r0
add r0, sp, #0x24
mov r6, #0
bl func_01ffbe34
mov r0, #1
strb r0, [sp, #0x2e]
add r8, sl, #0x18
mov r7, r6
add r4, sp, #4
mov fp, #0xfa000
_02117080:
ldr r0, [sl, #0x10]
cmp r7, #4
subeq r5, r5, #0xc00
cmp r0, #7
addls pc, pc, r0, lsl #2
b _021170e4
_02117098: ; jump table
b _021170b8 ; case 0
b _021170e4 ; case 1
b _021170d0 ; case 2
b _021170d0 ; case 3
b _021170b8 ; case 4
b _021170e4 ; case 5
b _021170e4 ; case 6
b _021170b8 ; case 7
_021170b8:
mov r0, #0x1000
mov r1, #0
mov r2, r5
bl func_ov00_020d03f8
mov r6, r0
b _021170e4
_021170d0:
mov r0, #0
mov r1, #0x1000
mov r2, r5
bl func_ov00_020d03f8
mov r6, r0
_021170e4:
cmp r7, #4
addls pc, pc, r7, lsl #2
b _021172cc
_021170f0: ; jump table
b _02117104 ; case 0
b _02117160 ; case 1
b _021171b4 ; case 2
b _02117224 ; case 3
b _02117278 ; case 4
_02117104:
mov r0, r4
bl func_01ffbe34
umull lr, ip, r6, fp
adds r1, lr, #0x800
mov r2, #0
mov lr, r1, lsr #0xc
mov r1, r2
mla ip, r6, r1, ip
mov sb, r6, asr #0x1f
mla ip, sb, fp, ip
adc r1, ip, r1
orr lr, lr, r1, lsl #20
mov r0, #1
add r1, lr, #0x800
strb r0, [sp, #0xe]
mov r0, #0
mov r1, r1, asr #0xc
str r0, [sp]
mov r0, r8
mov r3, r4
rsb r1, r1, #0
bl func_ov00_020d00c4
b _021172cc
_02117160:
mov sb, #0xfa000
umull lr, ip, r6, sb
adds sb, lr, #0x800
mov r2, #0
mov lr, sb, lsr #0xc
mov sb, r2
mla ip, r6, sb, ip
mov r1, r6, asr #0x1f
mov sb, #0xfa000
mla ip, r1, sb, ip
mov r1, r2
adc r1, ip, r1
orr lr, lr, r1, lsl #20
mov r0, #0
add r1, lr, #0x800
str r0, [sp]
mov r0, r8
mov r3, r4
mov r1, r1, asr #0xc
bl func_ov00_020d00c4
b _021172cc
_021171b4:
ldr r1, _0211736c ; =data_027e0d54
ldr r0, [sl, #8]
ldrh r1, [r1, #0x16]
blx func_ov10_02113358
bl func_ov10_0211a8fc
cmp r0, #0
beq _021172cc
mov sb, #0x3c000
umull lr, ip, r6, sb
adds sb, lr, #0x800
mov r1, #0
mov lr, sb, lsr #0xc
mov sb, r1
mla ip, r6, sb, ip
mov r2, r6, asr #0x1f
mov sb, #0x3c000
mla ip, r2, sb, ip
mov r2, r1
adc r2, ip, r2
orr lr, lr, r2, lsl #20
mov r0, #0
add r2, lr, #0x800
str r0, [sp]
mov r0, r8
mov r3, r4
mov r2, r2, asr #0xc
bl func_ov00_020d00c4
b _021172cc
_02117224:
mov sb, #0x7d000
umull lr, ip, r6, sb
adds sb, lr, #0x800
mov r2, #0
mov lr, sb, lsr #0xc
mov sb, r2
mla ip, r6, sb, ip
mov r1, r6, asr #0x1f
mov sb, #0x7d000
mla ip, r1, sb, ip
mov r1, r2
adc r1, ip, r1
orr lr, lr, r1, lsl #20
mov r0, #0
add r1, lr, #0x800
str r0, [sp]
mov r0, r8
mov r3, r4
mov r1, r1, asr #0xc
bl func_ov00_020d00c4
b _021172cc
_02117278:
mov sb, #0x64000
umull lr, ip, r6, sb
adds sb, lr, #0x800
mov r2, #0
mov lr, sb, lsr #0xc
mov sb, r2
mla ip, r6, sb, ip
mov r1, r6, asr #0x1f
mov sb, #0x64000
mla ip, r1, sb, ip
mov r1, r2
adc r1, ip, r1
orr lr, lr, r1, lsl #20
add r1, lr, #0x800
mov r0, #0
mov r1, r1, asr #0xc
str r0, [sp]
mov r0, r8
mov r3, r4
rsb r1, r1, #0
bl func_ov00_020d00c4
_021172cc:
add r8, r8, #0x18
add r7, r7, #1
cmp r7, #5
blt _02117080
ldr r0, [sl, #0x10]
cmp r0, #3
beq _02117308
cmp r0, #4
cmpne r0, #7
bne _0211731c
mov r2, r5
mov r0, #0x1000
mov r1, #0
bl func_ov00_020d03f8
b _02117320
_02117308:
mov r2, r5
mov r0, #0
mov r1, #0x1000
bl func_ov00_020d03f8
b _02117320
_0211731c:
mov r0, #0
_02117320:
mov r2, #0
sub r1, r2, #0x64000
umull r5, r4, r0, r1
sub r3, r2, #1
mla r4, r0, r3, r4
mov r0, r0, asr #0x1f
adds r3, r5, #0x800
mla r4, r0, r1, r4
ldr r0, _0211736c ; =data_027e0d54
adc r1, r4, #0
mov r3, r3, lsr #0xc
orr r3, r3, r1, lsl #20
add r3, r3, #0x800
ldrh r1, [r0, #0x16]
ldr r0, [sl, #8]
mov r3, r3, asr #0xc
blx func_ov10_02113890
add sp, sp, #0x44
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
arm_func_end func_ov10_0211703c
_0211736c: .word data_027e0d54
.global func_ov10_02117370
arm_func_start func_ov10_02117370
func_ov10_02117370: ; 0x02117370
stmdb sp!, {r3, lr}
ldr r1, [r0, #0x10]
cmp r1, #0
beq _02117390
cmp r1, #2
beq _021173f8
cmp r1, #7
bne _02117460
_02117390:
ldr r0, [r0, #0x14]
mov r1, #0xf000
mov r0, r0, lsl #0xc
bl func_01ff98e0
mov r2, r0
mov r0, #0x1000
mov r1, #0
bl func_ov00_020d03f8
mov r1, #0xfa000
rsb r1, r1, #0
umull ip, r3, r0, r1
mvn r2, #0
mla r3, r0, r2, r3
mov r0, r0, asr #0x1f
mla r3, r0, r1, r3
adds ip, ip, #0x800
adc r0, r3, #0
mov r1, ip, lsr #0xc
orr r1, r1, r0, lsl #20
add r1, r1, #0x800
mov r2, r1, asr #0xc
ldr r0, _02117470 ; =0x01ff0000
ldr r1, _02117474 ; =0x0400101c
and r0, r0, r2, lsl #16
str r0, [r1]
ldmia sp!, {r3, pc}
_021173f8:
ldr r0, [r0, #0x14]
mov r1, #0xf000
mov r0, r0, lsl #0xc
bl func_01ff98e0
mov r2, r0
mov r0, #0
mov r1, #0x1000
bl func_ov00_020d03f8
mov r1, #0xfa000
rsb r1, r1, #0
umull ip, r3, r0, r1
mvn r2, #0
mla r3, r0, r2, r3
mov r0, r0, asr #0x1f
mla r3, r0, r1, r3
adds ip, ip, #0x800
adc r0, r3, #0
mov r1, ip, lsr #0xc
orr r1, r1, r0, lsl #20
add r1, r1, #0x800
mov r2, r1, asr #0xc
ldr r0, _02117470 ; =0x01ff0000
ldr r1, _02117474 ; =0x0400101c
and r0, r0, r2, lsl #16
str r0, [r1]
ldmia sp!, {r3, pc}
_02117460:
ldr r0, _02117474 ; =0x0400101c
mov r1, #0
str r1, [r0]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov10_02117370
_02117470: .word 0x01ff0000
_02117474: .word 0x0400101c
.global func_ov10_02117478
arm_func_start func_ov10_02117478
func_ov10_02117478: ; 0x02117478
stmdb sp!, {r4, lr}
mov r4, r0
ldr r3, _021174ac ; =func_ov10_02113e6c
add r0, r4, #0x18
mov r1, #5
mov r2, #0x18
bl func_0204f754
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02117478
_021174ac: .word func_ov10_02113e6c - 1
.global func_ov10_021174b0
arm_func_start func_ov10_021174b0
func_ov10_021174b0: ; 0x021174b0
stmdb sp!, {r4, lr}
mov r4, r0
ldr r3, _021174dc ; =func_ov10_02113e6c
add r0, r4, #0x18
mov r1, #5
mov r2, #0x18
bl func_0204f754
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_021174b0
_021174dc: .word func_ov10_02113e6c - 1
.global func_ov10_021174e0
arm_func_start func_ov10_021174e0
func_ov10_021174e0: ; 0x021174e0
ldr r1, _021174f8 ; =data_ov10_0211eec4
ldr ip, _021174fc ; =func_ov10_0211ccec
mov r2, r0
ldr r1, [r1, #0x20]
mov r0, #0
bx ip
.align 2, 0
arm_func_end func_ov10_021174e0
_021174f8: .word data_ov10_0211eec4
_021174fc: .word func_ov10_0211ccec - 1
.global func_ov10_02117500
arm_func_start func_ov10_02117500
func_ov10_02117500: ; 0x02117500
ldr r1, _0211751c ; =data_ov10_0211eec4
mov r2, r0
ldr r1, [r1, #0x20]
ldr ip, _02117520 ; =func_ov10_0211ccec
mov r0, #1
add r1, r1, #0x1400
bx ip
.align 2, 0
arm_func_end func_ov10_02117500
_0211751c: .word data_ov10_0211eec4
_02117520: .word func_ov10_0211ccec - 1
.global func_ov10_02117524
arm_func_start func_ov10_02117524
func_ov10_02117524: ; 0x02117524
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x30
ldr r2, _021177c4 ; =0x0003f500
mov sb, r1
mul r2, sb, r2
mov r3, #0xc
mov r8, #0
mul r3, r0, r3
str r0, [sp, #0x14]
add r0, r2, #0
add r4, r2, #0xf200
add r1, r2, #0xf300
str r0, [sp, #0x24]
add r0, r2, #0x3e800
add sl, r4, #0x30000
str r3, [sp, #0x18]
str r8, [sp, #0x20]
mov fp, r8
mov r5, r8
str r0, [sp, #0x1c]
add r6, r1, #0x30000
add r7, r2, #0x3f400
add r4, sp, #0x28
_02117580:
ldr r0, [sp, #0x14]
cmp r0, #4
addls pc, pc, r0, lsl #2
b _02117658
_02117590: ; jump table
b _021175a4 ; case 0
b _021175c8 ; case 1
b _021175ec ; case 2
b _02117610 ; case 3
b _02117634 ; case 4
_021175a4:
ldr r1, _021177c8 ; =data_ov10_0211f400
ldr r0, [sp, #0x24]
ldr r1, [r1]
ldr r1, [r1, sb, lsl #2]
add r2, r1, #4
ldr r1, [sp, #0x20]
add r1, r2, r1
str r1, [r4, r8, lsl #2]
b _02117664
_021175c8:
ldr r1, _021177c8 ; =data_ov10_0211f400
ldr r0, [sp, #0x1c]
ldr r1, [r1]
ldr r1, [r1, sb, lsl #2]
add r1, r1, #4
add r1, r1, #0x2800
add r1, r1, fp
str r1, [r4, r8, lsl #2]
b _02117664
_021175ec:
ldr r1, _021177c8 ; =data_ov10_0211f400
mov r0, sl
ldr r1, [r1]
ldr r1, [r1, sb, lsl #2]
add r1, r1, #0x204
add r1, r1, #0x3000
add r1, r1, r5
str r1, [r4, r8, lsl #2]
b _02117664
_02117610:
ldr r1, _021177c8 ; =data_ov10_0211f400
mov r0, r6
ldr r1, [r1]
ldr r1, [r1, sb, lsl #2]
add r1, r1, #0x304
add r1, r1, #0x3000
add r1, r1, r5
str r1, [r4, r8, lsl #2]
b _02117664
_02117634:
ldr r1, _021177c8 ; =data_ov10_0211f400
mov r0, r7
ldr r1, [r1]
ldr r1, [r1, sb, lsl #2]
add r1, r1, #4
add r1, r1, #0x3400
add r1, r1, r5
str r1, [r4, r8, lsl #2]
b _02117664
_02117658:
add sp, sp, #0x30
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
_02117664:
mov r1, #0
str r1, [sp]
str r1, [sp, #4]
mov r1, #6
str r1, [sp, #8]
mov r1, #1
str r1, [sp, #0xc]
mov r1, #0
str r1, [sp, #0x10]
ldr r3, _021177cc ; =data_ov10_0211e784
ldr r2, [sp, #0x18]
ldr r1, [r4, r8, lsl #2]
ldr r2, [r3, r2]
mov r3, #0
blx func_02040464
cmp r0, #0
addeq sp, sp, #0x30
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldr r0, [sp, #0x24]
add r8, r8, #1
add r0, r0, #0x1400
str r0, [sp, #0x24]
ldr r0, [sp, #0x20]
add fp, fp, #0x500
add r0, r0, #0x1400
str r0, [sp, #0x20]
ldr r0, [sp, #0x1c]
add sl, sl, #0x80
add r0, r0, #0x500
str r0, [sp, #0x1c]
add r5, r5, #0x80
add r6, r6, #0x80
add r7, r7, #0x80
cmp r8, #2
blt _02117580
ldr r2, _021177cc ; =data_ov10_0211e784
ldr r1, [sp, #0x18]
ldr r0, [sp, #0x28]
ldr r4, [r2, r1]
mov r1, r4
blx func_0202f154
cmp r0, #0
beq _02117764
ldr r5, [sp, #0x2c]
mov r1, r4
mov r0, r5
blx func_0202f154
cmp r0, #0
beq _02117744
ldr r0, [sp, #0x28]
mov r1, r5
mov r2, r4
bl func_0204366c
cmp r0, #0
beq _021177b8
_02117744:
ldr r0, _021177c8 ; =data_ov10_0211f400
ldr r1, _021177d0 ; =data_ov10_0211e78c
ldr r2, [r0]
ldr r0, [sp, #0x18]
ldr r1, [r1, r0]
ldr r0, [r2, sb, lsl #2]
bl func_ov10_02119fa8
b _021177b8
_02117764:
ldr r0, [sp, #0x14]
mov r1, #0xc
mul r2, r0, r1
ldr r0, _021177c8 ; =data_ov10_0211f400
ldr r1, _021177d4 ; =data_ov10_0211e788
ldr r0, [r0]
ldr r1, [r1, r2]
ldr r0, [r0, sb, lsl #2]
bl func_ov10_02119fa8
ldr r0, [sp, #0x2c]
mov r1, r4
blx func_0202f154
cmp r0, #0
bne _021177b8
ldr r0, _021177c8 ; =data_ov10_0211f400
ldr r1, _021177d0 ; =data_ov10_0211e78c
ldr r2, [r0]
ldr r0, [sp, #0x18]
ldr r1, [r1, r0]
ldr r0, [r2, sb, lsl #2]
bl func_ov10_02119fa8
_021177b8:
mov r0, #1
add sp, sp, #0x30
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
arm_func_end func_ov10_02117524
_021177c4: .word 0x0003f500
_021177c8: .word data_ov10_0211f400
_021177cc: .word data_ov10_0211e784
_021177d0: .word data_ov10_0211e78c
_021177d4: .word data_ov10_0211e788
.global func_ov10_021177d8
arm_func_start func_ov10_021177d8
func_ov10_021177d8: ; 0x021177d8
stmdb sp!, {r4, lr}
ldr r1, _0211781c ; =data_027e0ce0
mov r0, #0x1900
ldr r1, [r1, #4]
mov r2, #4
bl _ZN9SysObjectnwEmPjj
movs r4, r0
beq _02117804
bl func_ov10_02117874
add r0, r4, #0x1400
bl func_ov10_02117828
_02117804:
ldr r1, _02117820 ; =data_ov10_0211eec4
ldr r0, _02117824 ; =data_ov10_0211f400
mov r2, #0
str r4, [r1, #0x20]
str r2, [r0]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_021177d8
_0211781c: .word data_027e0ce0
_02117820: .word data_ov10_0211eec4
_02117824: .word data_ov10_0211f400
.global func_ov10_02117828
arm_func_start func_ov10_02117828
func_ov10_02117828: ; 0x02117828
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r8, r0
add r7, r8, #0x180
add r4, r8, #0x440
mov r6, #0
mov r5, #0x16
_02117840:
mov r0, r6
mov r1, r7
mov r2, r5
bl func_020078c0
add r7, r7, #0x16
cmp r7, r4
blo _02117840
mov r0, r4
blx func_ov00_0207a4f0
mov r0, r8
blx func_ov00_0207a5ac
mov r0, r8
ldmia sp!, {r4, r5, r6, r7, r8, pc}
arm_func_end func_ov10_02117828
.global func_ov10_02117874
arm_func_start func_ov10_02117874
func_ov10_02117874: ; 0x02117874
stmdb sp!, {r3, r4, r5, lr}
mov r4, r0
mov r1, r4
mov r0, #0
mov r2, #0x10
bl func_020078f4
add r1, r4, #0x10
mov r0, #0
mov r2, #4
bl func_020078f4
add r1, r4, #0x14
mov r0, #0
mov r2, #0xc
bl func_020078f4
mov r0, #0
add r1, r4, #0x20
mov r2, #4
bl func_020078f4
mov r0, #0
strh r0, [r4, #0x7c]
strb r0, [r4, #0x7e]
strb r0, [r4, #0x7f]
mov r0, r4
blx func_ov00_0207a38c
mov r0, #0
add r1, r4, #0xa8
mov r2, #0x48
bl func_02007938
mov r0, #0
add r1, r4, #0xf0
mov r2, #8
bl func_020078c0
ldr r1, _021179e0 ; =func_ov10_02112d9c
add r0, r4, #0xf8
str r1, [sp]
mov r1, #0x40
mov r2, #8
ldr r3, _021179e4 ; =func_ov10_02117a60
bl func_0204f614
ldr r1, _021179e8 ; =func_ov10_02112da0
add r0, r4, #0x2f8
str r1, [sp]
mov r1, #0xcf
mov r2, #0xc
ldr r3, _021179ec ; =func_ov10_02117a10
bl func_0204f614
add r5, r4, #0xac
mov r0, #0
add r1, r5, #0xc00
mov r2, #0x40
bl func_020078f4
add r1, r5, #0xc00
mov r0, #0
mov r2, #0x40
bl func_020078f4
add r0, r4, #0xec
add r5, r0, #0xc00
ldr r1, _021179f0 ; =func_ov10_02112da4
add r0, r5, #0x30
str r1, [sp]
mov r1, #8
mov r2, #0x30
ldr r3, _021179f4 ; =func_ov10_021179f8
bl func_0204f614
mov r0, #0
add r1, r5, #0x1b0
mov r2, #8
bl func_020078f4
add r1, r5, #0x1b8
mov r0, #0
mov r2, #4
bl func_020078f4
mov r0, r5
blx func_ov00_0207a3e4
add r1, r4, #0xeb0
mov r0, #0
mov r2, #8
bl func_020078f4
add r5, r4, #0x2b8
add r1, r5, #0xc00
mov r0, #0
mov r2, #0x540
bl func_020078f4
add r1, r5, #0xc00
mov r0, #0
mov r2, #0x540
bl func_020078f4
mov r0, r4
blx func_ov00_0207a418
mov r0, r4
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov10_02117874
_021179e0: .word func_ov10_02112d9c - 1
_021179e4: .word func_ov10_02117a60 - 1
_021179e8: .word func_ov10_02112da0 - 1
_021179ec: .word func_ov10_02117a10 - 1
_021179f0: .word func_ov10_02112da4 - 1
_021179f4: .word func_ov10_021179f8 - 1
.global func_ov10_021179f8
arm_func_start func_ov10_021179f8
func_ov10_021179f8: ; 0x021179f8
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x1c
bl func_ov00_020c1500
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_021179f8
.global func_ov10_02117a10
arm_func_start func_ov10_02117a10
func_ov10_02117a10: ; 0x02117a10
stmdb sp!, {r4, lr}
mov r4, r0
mov r1, r4
mov r0, #0
mov r2, #8
bl func_020078f4
add r1, r4, #8
mov r0, #0
mov r2, #4
bl func_020078f4
mov r1, r4
mov r0, #0
mov r2, #8
bl func_020078f4
add r1, r4, #8
mov r0, #0
mov r2, #4
bl func_020078f4
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_02117a10
.global func_ov10_02117a60
arm_func_start func_ov10_02117a60
func_ov10_02117a60: ; 0x02117a60
stmdb sp!, {r4, lr}
mov r4, r0
mov r1, r4
mov r0, #0
mov r2, #4
bl func_020078f4
mov r1, r4
mov r0, #0
mov r2, #8
bl func_020078f4
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_02117a60
.global func_ov10_02117a90
arm_func_start func_ov10_02117a90
func_ov10_02117a90: ; 0x02117a90
stmdb sp!, {r4, lr}
ldr r0, _02117b04 ; =data_ov10_0211eec4
ldr r4, [r0, #0x20]
cmp r4, #0
beq _02117aec
add r0, r4, #0x11c
ldr r3, _02117b08 ; =func_ov10_02112da4
add r0, r0, #0xc00
mov r1, #8
mov r2, #0x30
bl func_0204f754
ldr r3, _02117b0c ; =func_ov10_02112da0
add r0, r4, #0x2f8
mov r1, #0xcf
mov r2, #0xc
bl func_0204f754
ldr r3, _02117b10 ; =func_ov10_02112d9c
add r0, r4, #0xf8
mov r1, #0x40
mov r2, #8
bl func_0204f754
mov r0, r4
bl _ZN9SysObjectdlEPv
_02117aec:
ldr r1, _02117b04 ; =data_ov10_0211eec4
mov r2, #0
ldr r0, _02117b14 ; =data_ov10_0211f400
str r2, [r1, #0x20]
str r2, [r0]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02117a90
_02117b04: .word data_ov10_0211eec4
_02117b08: .word func_ov10_02112da4 - 1
_02117b0c: .word func_ov10_02112da0 - 1
_02117b10: .word func_ov10_02112d9c - 1
_02117b14: .word data_ov10_0211f400
.global func_ov10_02117b18
arm_func_start func_ov10_02117b18
func_ov10_02117b18: ; 0x02117b18
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
ldr r8, _02117c10 ; =data_027e0d54
mov sl, r0
ldrh r0, [r8, #0x14]
blx func_020400f4
mov sb, #0
ldr r4, _02117c14 ; =data_ov10_0211f400
mov r7, sb
mov r6, #1
mov r5, #2
mov fp, #3
_02117b44:
cmp sl, #0
beq _02117b58
ldrh r0, [r8, #0x16]
cmp sb, r0
beq _02117be8
_02117b58:
mov r0, r7
mov r1, sb
bl func_ov10_02117524
cmp r0, #0
beq _02117bbc
mov r0, r6
mov r1, sb
bl func_ov10_02117524
cmp r0, #0
beq _02117bbc
mov r0, r5
mov r1, sb
bl func_ov10_02117524
cmp r0, #0
beq _02117bbc
mov r0, fp
mov r1, sb
bl func_ov10_02117524
cmp r0, #0
beq _02117bbc
mov r0, #4
mov r1, sb
bl func_ov10_02117524
cmp r0, #0
bne _02117bd0
_02117bbc:
blx func_020400c0
mov r1, #1
str r0, [r8, #0x10]
strb r1, [r8, #0xf]
b _02117bfc
_02117bd0:
ldr r0, [r4]
ldr r0, [r0, sb, lsl #2]
bl func_ov10_0211a108
ldr r0, [r4]
ldr r0, [r0, sb, lsl #2]
bl func_ov10_0211a2fc
_02117be8:
add r0, sb, #1
mov r0, r0, lsl #0x10
mov sb, r0, lsr #0x10
cmp sb, #2
blo _02117b44
_02117bfc:
ldrh r0, [r8, #0x14]
blx func_02040100
mov r0, #0
strb r0, [r8, #0xd]
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
arm_func_end func_ov10_02117b18
_02117c10: .word data_027e0d54
_02117c14: .word data_ov10_0211f400
.global func_ov10_02117c18
arm_func_start func_ov10_02117c18
func_ov10_02117c18: ; 0x02117c18
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x104
ldr r2, _02117d94 ; =data_ov10_0211f400
mov sl, r0
str r1, [r2]
ldrb r0, [sl, #0xc]
cmp r0, #0
ldreq r0, [sl, #0x10]
cmpeq r0, #0
addne sp, sp, #0x104
ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldr r1, _02117d98 ; =data_027e0618
mov r0, #0
str r0, [sp]
ldr r0, [r1, #4]
cmp r0, #5
cmpne r0, #6
bne _02117d68
ldr r1, _02117d9c ; =data_ov00_020ec718
mov r2, #1
add r0, sp, #0x84
str r2, [sp]
blx func_ov00_0207a614
ldr r1, _02117da0 ; =data_ov00_020ec754
add r0, sp, #4
ldr r1, [r1]
bl func_ov10_02119a14
mov r5, #0
ldr fp, _02117da4 ; =data_ov00_020ec218
ldr sb, _02117da8 ; =data_ov00_020ec758
ldr r4, _02117d94 ; =data_ov10_0211f400
mov r6, r5
mov r7, r5
mov r8, r5
_02117ca0:
ldrh r1, [sl, #0x16]
ldr r3, [r4]
ldr r0, _02117dac ; =data_ov00_020e9e18
ldr r1, [r3, r1, lsl #2]
mov r2, #0x1400
add r1, r1, #4
add r1, r1, r6
bl func_02007984
ldrh r1, [sl, #0x16]
ldr r3, [r4]
mov r0, fp
ldr r1, [r3, r1, lsl #2]
mov r2, #0x500
add r1, r1, #4
add r1, r1, #0x2800
add r1, r1, r7
bl func_02007984
ldrh r1, [sl, #0x16]
ldr r3, [r4]
add r0, sp, #0x84
ldr r1, [r3, r1, lsl #2]
mov r2, #0x80
add r1, r1, #0x204
add r1, r1, #0x3000
add r1, r1, r8
bl func_020078d8
ldrh r1, [sl, #0x16]
ldr r3, [r4]
add r0, sp, #4
ldr r1, [r3, r1, lsl #2]
mov r2, #0x80
add r1, r1, #0x304
add r1, r1, #0x3000
add r1, r1, r8
bl func_02007984
ldrh r1, [sl, #0x16]
ldr r3, [r4]
mov r0, sb
ldr r1, [r3, r1, lsl #2]
mov r2, #0x80
add r1, r1, #4
add r1, r1, #0x3400
add r1, r1, r8
bl func_02007984
add r5, r5, #1
add r6, r6, #0x1400
add r7, r7, #0x500
add r8, r8, #0x80
cmp r5, #2
blt _02117ca0
_02117d68:
mov r0, sl
bl func_ov00_0207a2d8
ldr r0, _02117db0 ; =data_027e08e4
ldr r2, _02117db4 ; =func_ov10_02117b18
ldr r3, [sp]
mov r4, #1
mov r1, #0
strb r4, [sl, #0xd]
blx func_0202f360
add sp, sp, #0x104
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
arm_func_end func_ov10_02117c18
_02117d94: .word data_ov10_0211f400
_02117d98: .word data_027e0618
_02117d9c: .word data_ov00_020ec718
_02117da0: .word data_ov00_020ec754
_02117da4: .word data_ov00_020ec218
_02117da8: .word data_ov00_020ec758
_02117dac: .word data_ov00_020e9e18
_02117db0: .word data_027e08e4
_02117db4: .word func_ov10_02117b18 - 1
.global func_ov10_02117db8
arm_func_start func_ov10_02117db8
func_ov10_02117db8: ; 0x02117db8
stmdb sp!, {r4, lr}
sub sp, sp, #0x18
ldr r4, _02117e3c ; =data_027e0d54
ldrh r0, [r4, #0x14]
blx func_020400f4
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
mov r1, #6
str r1, [sp, #8]
mov r2, #1
str r2, [sp, #0xc]
add r1, sp, #0x14
mov r3, r0
str r0, [sp, #0x10]
blx func_02040464
cmp r0, #0
beq _02117e10
ldrh r0, [r4, #0x16]
bl func_ov10_0211cee0
cmp r0, #0
bne _02117e20
_02117e10:
blx func_020400c0
mov r1, #2
str r0, [r4, #0x10]
strb r1, [r4, #0xf]
_02117e20:
ldrh r0, [r4, #0x14]
blx func_02040100
mov r0, #0
strb r0, [r4, #0xd]
strb r0, [r4, #0xe]
add sp, sp, #0x18
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02117db8
_02117e3c: .word data_027e0d54
.global func_ov10_02117e40
arm_func_start func_ov10_02117e40
func_ov10_02117e40: ; 0x02117e40
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r4, r0
ldr r0, _02117f20 ; =data_ov10_0211f400
strh r1, [r4, #0x16]
ldr r0, [r0]
ldr r6, [r0, r1, lsl #2]
mov r0, r6
bl func_ov10_0211a930
mov r5, r0
ldr r1, _02117f24 ; =data_ov00_020e9e18
add r0, r6, #4
mov r2, #0x1400
bl func_02007984
add r0, r6, #4
ldr r1, _02117f28 ; =data_ov00_020ec218
add r0, r0, #0x2800
mov r2, #0x500
bl func_02007984
add r0, r6, #0x204
ldr r1, _02117f2c ; =data_ov00_020ec718
add r0, r0, #0x3000
mov r2, #0x3c
bl func_020078d8
ldr r7, _02117f30 ; =data_ov00_020ec754
add r0, r6, #0x304
add r0, r0, #0x3000
mov r1, r7
mov r2, #4
bl func_02007908
add r0, r6, #4
ldr r1, _02117f34 ; =data_ov00_020ec758
add r0, r0, #0x3400
mov r2, #0x80
bl func_02007984
ldr r0, _02117f24 ; =data_ov00_020e9e18
blx func_ov10_0211e498
ldr r0, _02117f38 ; =data_ov00_020eacc8
mov r1, r4
mov r2, #8
bl func_02007908
mov r0, r7
mov r1, #0
bl func_ov10_021199bc
cmp r5, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, r4
bl func_ov00_0207a2d8
mov ip, #1
mov r1, #0
strb ip, [r4, #0xd]
ldr r0, _02117f3c ; =data_027e08e4
ldr r2, _02117f40 ; =func_ov10_02117db8
mov r3, r1
strb ip, [r4, #0xe]
blx func_0202f360
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov10_02117e40
_02117f20: .word data_ov10_0211f400
_02117f24: .word data_ov00_020e9e18
_02117f28: .word data_ov00_020ec218
_02117f2c: .word data_ov00_020ec718
_02117f30: .word data_ov00_020ec754
_02117f34: .word data_ov00_020ec758
_02117f38: .word data_ov00_020eacc8
_02117f3c: .word data_027e08e4
_02117f40: .word func_ov10_02117db8 - 1
.global func_ov10_02117f44
arm_func_start func_ov10_02117f44
func_ov10_02117f44: ; 0x02117f44
stmdb sp!, {r4, lr}
sub sp, sp, #0x18
ldr r4, _02118028 ; =data_027e0d54
ldrh r0, [r4, #0x14]
blx func_020400f4
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
mov r1, #6
str r1, [sp, #8]
mov r2, #1
str r2, [sp, #0xc]
add r1, sp, #0x14
mov r3, r0
str r0, [sp, #0x10]
blx func_02040464
cmp r0, #0
beq _02117ff8
mvn r0, #0
bl func_ov10_021174e0
cmp r0, #0
beq _02117ff8
mvn r0, #0
bl func_ov10_0211cfd8
cmp r0, #0
beq _02117ff8
mvn r0, #0
bl func_ov10_02117500
cmp r0, #0
beq _02117ff8
mvn r0, #0
bl func_ov10_0211cee0
cmp r0, #0
beq _02117ff8
mvn r0, #0
bl func_ov10_0211cf40
cmp r0, #0
beq _02117ff8
mvn r0, #0
bl func_ov10_0211cf74
cmp r0, #0
beq _02117ff8
bl func_ov10_0211d0b0
cmp r0, #0
bne _02118008
_02117ff8:
blx func_020400c0
mov r1, #2
str r0, [r4, #0x10]
strb r1, [r4, #0xf]
_02118008:
ldrh r0, [r4, #0x14]
blx func_02040100
mov r0, #0
strb r0, [r4, #0xd]
strb r0, [r4, #0xc]
strb r0, [r4, #0xe]
add sp, sp, #0x18
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02117f44
_02118028: .word data_027e0d54
.global func_ov10_0211802c
arm_func_start func_ov10_0211802c
func_ov10_0211802c: ; 0x0211802c
stmdb sp!, {r4, lr}
mov r4, r0
ldr r1, [r4, #0x10]
cmp r1, #0
ldmneia sp!, {r4, pc}
bl func_ov00_0207a2d8
mov ip, #1
mov r1, #0
strb ip, [r4, #0xd]
ldr r0, _02118068 ; =data_027e08e4
ldr r2, _0211806c ; =func_ov10_02117f44
mov r3, r1
strb ip, [r4, #0xe]
blx func_0202f360
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_0211802c
_02118068: .word data_027e08e4
_0211806c: .word func_ov10_02117f44 - 1
.global func_ov10_02118070
arm_func_start func_ov10_02118070
func_ov10_02118070: ; 0x02118070
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x18
ldr r4, _02118118 ; =data_027e0d54
mov r1, r0, lsl #0x10
ldrh r0, [r4, #0x14]
mov r5, r1, lsr #0x10
blx func_020400f4
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
mov r1, #6
str r1, [sp, #8]
mov r2, #1
str r2, [sp, #0xc]
add r1, sp, #0x14
mov r3, r0
str r0, [sp, #0x10]
blx func_02040464
cmp r0, #0
beq _021180d8
ldr r0, _0211811c ; =data_ov10_0211f400
ldr r0, [r0]
ldr r0, [r0, r5, lsl #2]
bl func_ov10_0211a5f4
cmp r0, #0
bne _021180ec
_021180d8:
blx func_020400c0
mov r1, #2
str r0, [r4, #0x10]
strb r1, [r4, #0xf]
b _021180fc
_021180ec:
ldr r0, _0211811c ; =data_ov10_0211f400
ldr r0, [r0]
ldr r0, [r0, r5, lsl #2]
bl func_ov10_02119ddc
_021180fc:
ldrh r0, [r4, #0x14]
blx func_02040100
mov r0, #0
strb r0, [r4, #0xd]
strb r0, [r4, #0xe]
add sp, sp, #0x18
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov10_02118070
_02118118: .word data_027e0d54
_0211811c: .word data_ov10_0211f400
.global func_ov10_02118120
arm_func_start func_ov10_02118120
func_ov10_02118120: ; 0x02118120
stmdb sp!, {r4, r5, r6, lr}
ldr r2, _02118188 ; =data_ov10_0211f400
mov r5, r1
ldr r1, [r2]
mov r6, r0
ldr r0, [r1, r5, lsl #2]
ldrb r4, [r0, #2]
cmp r4, #0
bne _02118148
bl func_ov10_0211a454
_02118148:
ldr r0, [r6, #0x10]
cmp r0, #0
ldmneia sp!, {r4, r5, r6, pc}
mov r0, r6
bl func_ov00_0207a2d8
mov r0, #1
cmp r4, #0
ldrne r2, _0211818c ; =func_ov10_021183d8
strb r0, [r6, #0xd]
strb r0, [r6, #0xe]
ldreq r2, _02118190 ; =func_ov10_02118070
ldr r0, _02118194 ; =data_027e08e4
mov r3, r5
mov r1, #0
blx func_0202f360
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov10_02118120
_02118188: .word data_ov10_0211f400
_0211818c: .word func_ov10_021183d8 - 1
_02118190: .word func_ov10_02118070 - 1
_02118194: .word data_027e08e4
.global func_ov10_02118198
arm_func_start func_ov10_02118198
func_ov10_02118198: ; 0x02118198
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x98
ldr r4, _02118384 ; =data_027e0d54
mov r1, r0, lsl #0x10
add r0, sp, #0x18
mov r6, r1, lsr #0x10
ldrh r5, [r4, #0x16]
blx func_ov00_0207a6d0
ldr r0, _02118388 ; =data_ov10_0211f400
add lr, sp, #0x1c
ldr r8, [r0]
add r3, sp, #0x28
ldr r0, [r8, r6, lsl #2]
add ip, sp, #0x40
add r1, r0, #0x3000
add r0, r0, #4
ldr r1, [r1, #0x404]
add r7, r0, #0x3400
add r0, r7, #4
str r1, [sp, #0x18]
ldmia r0, {r0, r1, r2}
stmia lr, {r0, r1, r2}
add r0, r7, #0x10
ldmia r0, {r0, r1, r2}
stmia r3, {r0, r1, r2}
ldr r0, [r7, #0x1c]
add lr, r7, #0x28
str r0, [sp, #0x34]
ldr r0, [r7, #0x20]
str r0, [sp, #0x38]
ldr r0, [r7, #0x24]
str r0, [sp, #0x3c]
ldmia lr!, {r0, r1, r2, r3}
stmia ip!, {r0, r1, r2, r3}
ldr r1, [lr]
add r0, sp, #0x18
str r1, [ip]
ldr r1, [r7, #0x3c]
str r1, [sp, #0x54]
ldr r1, [r8, r5, lsl #2]
add r1, r1, #4
add r1, r1, #0x3400
bl func_ov10_02119b44
mov r0, r4
ldrh r0, [r0, #0x14]
blx func_020400f4
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
mov r1, #6
str r1, [sp, #8]
mov r2, #1
str r2, [sp, #0xc]
add r1, sp, #0x14
mov r3, r0
str r0, [sp, #0x10]
blx func_02040464
cmp r0, #0
beq _02118328
mov r0, r6
bl func_ov10_0211cfa0
cmp r0, #0
beq _02118328
ldr r0, _02118388 ; =data_ov10_0211f400
mov r1, r6
ldr r0, [r0]
ldr r0, [r0, r5, lsl #2]
add r0, r0, #4
bl func_ov10_0211cd4c
cmp r0, #0
beq _02118328
ldr r2, _0211838c ; =data_ov00_020eb218
mov r0, r5
mov r1, r6
bl func_ov10_0211d13c
cmp r0, #0
beq _02118328
ldr r0, _02118388 ; =data_ov10_0211f400
mov r1, r6
ldr r0, [r0]
ldr r0, [r0, r5, lsl #2]
add r0, r0, #0x204
add r0, r0, #0x3000
blx func_ov00_0207c118
cmp r0, #0
beq _02118328
ldr r0, _02118388 ; =data_ov10_0211f400
mov r1, r6
ldr r0, [r0]
ldr r0, [r0, r5, lsl #2]
add r0, r0, #0x304
add r0, r0, #0x3000
bl func_ov10_0211ce5c
cmp r0, #0
beq _02118328
add r0, sp, #0x18
mov r1, r6
bl func_ov01_020f7b88
cmp r0, #0
bne _0211833c
_02118328:
blx func_020400c0
mov r1, #2
str r0, [r4, #0x10]
strb r1, [r4, #0xf]
b _02118358
_0211833c:
ldr r0, _02118388 ; =data_ov10_0211f400
add r3, sp, #0x18
ldr r1, [r0]
mov r2, #0
ldr r0, [r1, r6, lsl #2]
ldr r1, [r1, r5, lsl #2]
bl func_ov10_02119e88
_02118358:
ldrh r0, [r4, #0x14]
blx func_02040100
ldr r1, _0211838c ; =data_ov00_020eb218
mov r0, #0
mov r2, #0x1000
bl func_02007938
mov r0, #0
strb r0, [r4, #0xd]
strb r0, [r4, #0xe]
add sp, sp, #0x98
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
arm_func_end func_ov10_02118198
_02118384: .word data_027e0d54
_02118388: .word data_ov10_0211f400
_0211838c: .word data_ov00_020eb218
.global func_ov10_02118390
arm_func_start func_ov10_02118390
func_ov10_02118390: ; 0x02118390
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r2, [r5, #0x10]
mov r4, r1
cmp r2, #0
ldmneia sp!, {r3, r4, r5, pc}
bl func_ov00_0207a2d8
mov ip, #1
strb ip, [r5, #0xd]
ldr r0, _021183d0 ; =data_027e08e4
ldr r2, _021183d4 ; =func_ov10_02118198
mov r3, r4
mov r1, #0
strb ip, [r5, #0xe]
blx func_0202f360
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov10_02118390
_021183d0: .word data_027e08e4
_021183d4: .word func_ov10_02118198 - 1
.global func_ov10_021183d8
arm_func_start func_ov10_021183d8
func_ov10_021183d8: ; 0x021183d8
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x18
ldr r4, _021184d8 ; =data_027e0d54
mov r1, r0, lsl #0x10
ldrh r0, [r4, #0x14]
mov r5, r1, lsr #0x10
blx func_020400f4
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
mov r1, #6
str r1, [sp, #8]
mov r2, #1
str r2, [sp, #0xc]
add r1, sp, #0x14
mov r3, r0
str r0, [sp, #0x10]
blx func_02040464
cmp r0, #0
beq _02118498
mov r0, r5
bl func_ov10_0211cfa0
cmp r0, #0
beq _02118498
mov r0, r5
bl func_ov10_021174e0
cmp r0, #0
beq _02118498
mov r0, r5
bl func_ov10_0211cfd8
cmp r0, #0
beq _02118498
mov r0, r5
bl func_ov10_02117500
cmp r0, #0
beq _02118498
mov r0, r5
bl func_ov10_0211cee0
cmp r0, #0
beq _02118498
mov r0, r5
bl func_ov10_0211cf40
cmp r0, #0
beq _02118498
mov r0, r5
bl func_ov10_0211cf74
cmp r0, #0
bne _021184ac
_02118498:
blx func_020400c0
mov r1, #2
str r0, [r4, #0x10]
strb r1, [r4, #0xf]
b _021184bc
_021184ac:
ldr r0, _021184dc ; =data_ov10_0211f400
ldr r0, [r0]
ldr r0, [r0, r5, lsl #2]
bl func_ov10_02119e0c
_021184bc:
ldrh r0, [r4, #0x14]
blx func_02040100
mov r0, #0
strb r0, [r4, #0xd]
strb r0, [r4, #0xe]
add sp, sp, #0x18
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov10_021183d8
_021184d8: .word data_027e0d54
_021184dc: .word data_ov10_0211f400
.global func_ov10_021184e0
arm_func_start func_ov10_021184e0
func_ov10_021184e0: ; 0x021184e0
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, _02118528 ; =data_ov00_020e9e18
bl func_ov10_0211e454
ldr r0, [r4, #0x10]
cmp r0, #0
ldmneia sp!, {r4, pc}
mov r0, r4
bl func_ov00_0207a2d8
mov r0, #1
strb r0, [r4, #0xd]
strb r0, [r4, #0xe]
ldrh r3, [r4, #0x16]
ldr r0, _0211852c ; =data_027e08e4
ldr r2, _02118530 ; =func_ov10_021183d8
mov r1, #0
blx func_0202f360
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_021184e0
_02118528: .word data_ov00_020e9e18
_0211852c: .word data_027e08e4
_02118530: .word func_ov10_021183d8 - 1
.global func_ov10_02118534
arm_func_start func_ov10_02118534
func_ov10_02118534: ; 0x02118534
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
mov r1, #1
mov r2, #0
bl func_ov01_020f79bc
ldr r5, _021185d8 ; =data_027e0d54
ldr r0, [r5, #0x10]
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
mov r6, #0
ldr sb, _021185dc ; =data_ov00_020ec758
ldr sl, _021185e0 ; =data_ov00_020ec218
ldr r4, _021185e4 ; =data_ov10_0211f400
mov r7, r6
mov r8, r6
mov fp, #0x80
_02118578:
ldrh r1, [r5, #0x16]
ldr r2, [r4]
mov r0, sb
ldr r1, [r2, r1, lsl #2]
mov r2, fp
add r1, r1, #4
add r1, r1, #0x3400
add r1, r1, r7
bl func_02007984
ldrh r1, [r5, #0x16]
ldr r2, [r4]
mov r0, sl
ldr r1, [r2, r1, lsl #2]
mov r2, #0x500
add r1, r1, #4
add r1, r1, #0x2800
add r1, r1, r8
bl func_02007984
add r6, r6, #1
cmp r6, #2
add r7, r7, #0x80
add r8, r8, #0x500
blt _02118578
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
arm_func_end func_ov10_02118534
_021185d8: .word data_027e0d54
_021185dc: .word data_ov00_020ec758
_021185e0: .word data_ov00_020ec218
_021185e4: .word data_ov10_0211f400
.global func_ov10_021185e8
arm_func_start func_ov10_021185e8
func_ov10_021185e8: ; 0x021185e8
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
ldr r0, _0211865c ; =data_ov00_020ec758
mov r5, r1
bl func_ov10_02119a6c
ldr r1, _02118660 ; =data_ov00_020ec658
mov r0, r5
mov r4, #0
bl func_0204b0d4
cmp r0, #0
beq _02118624
mov r0, r6
mov r1, r5
bl func_ov10_021186a4
mov r4, r0
_02118624:
ldr r0, [r6, #0x10]
cmp r0, #0
ldmneia sp!, {r4, r5, r6, pc}
mov r0, r6
bl func_ov00_0207a2d8
mov ip, #1
strb ip, [r6, #0xd]
ldr r0, _02118664 ; =data_027e08e4
ldr r2, _02118668 ; =func_ov10_02118534
mov r3, r4
mov r1, #0
strb ip, [r6, #0xe]
blx func_0202f360
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov10_021185e8
_0211865c: .word data_ov00_020ec758
_02118660: .word data_ov00_020ec658
_02118664: .word data_027e08e4
_02118668: .word func_ov10_02118534 - 1
.global func_ov10_0211866c
arm_func_start func_ov10_0211866c
func_ov10_0211866c: ; 0x0211866c
mov r3, r1, lsr #0x8
cmp r3, #5
add r2, r1, r2
bxhs lr
mov r1, #1
_02118680:
orr r0, r0, r1, lsl r3
mov r0, r0, lsl #0x10
add r3, r3, #1
cmp r2, r3, lsl #8
mov r0, r0, lsr #0x10
bxls lr
cmp r3, #5
blo _02118680
bx lr
arm_func_end func_ov10_0211866c
.global func_ov10_021186a4
arm_func_start func_ov10_021186a4
func_ov10_021186a4: ; 0x021186a4
stmdb sp!, {r3, lr}
ldr r0, _021186e0 ; =data_ov00_020ec658
mov r2, #8
bl func_020320c0
ldr r0, _021186e4 ; =data_ov00_020ec218
mov r1, #0x500
blx func_0202f134
mov r0, #0
mov r1, #0x440
mov r2, #0x12
bl func_ov10_0211866c
orr r0, r0, #0x10
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov10_021186a4
_021186e0: .word data_ov00_020ec658
_021186e4: .word data_ov00_020ec218
.global func_ov10_021186e8
arm_func_start func_ov10_021186e8
func_ov10_021186e8: ; 0x021186e8
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
mov r4, r0
mov r0, r4, lsl #0x10
mov r1, #0
mov r2, r1
mov r0, r0, lsr #0x10
bl func_ov01_020f79bc
tst r4, #0x80000000
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
ldr r4, _02118768 ; =data_027e0d54
ldr r0, [r4, #0x10]
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
mov r5, #0
ldr r7, _0211876c ; =data_ov00_020ec218
ldr r8, _02118770 ; =data_ov10_0211f400
mov r6, r5
mov sb, #0x500
_02118730:
ldrh r1, [r4, #0x16]
ldr r2, [r8]
mov r0, r7
ldr r1, [r2, r1, lsl #2]
mov r2, sb
add r1, r1, #4
add r1, r1, #0x2800
add r1, r1, r6
bl func_02007984
add r5, r5, #1
cmp r5, #2
add r6, r6, #0x500
blt _02118730
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
.align 2, 0
arm_func_end func_ov10_021186e8
_02118768: .word data_027e0d54
_0211876c: .word data_ov00_020ec218
_02118770: .word data_ov10_0211f400
.global func_ov10_02118774
arm_func_start func_ov10_02118774
func_ov10_02118774: ; 0x02118774
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
mov r5, r0
ldr r1, _021187e8 ; =data_ov00_020ec658
mov r0, r4
bl func_0204b0d4
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
mov r0, r5
mov r1, r4
bl func_ov10_021186a4
ldr r1, [r5, #0x10]
orr r4, r0, #0x80000000
cmp r1, #0
movne r0, #1
ldmneia sp!, {r3, r4, r5, pc}
mov r0, r5
bl func_ov00_0207a2d8
mov ip, #1
strb ip, [r5, #0xd]
ldr r0, _021187ec ; =data_027e08e4
ldr r2, _021187f0 ; =func_ov10_021186e8
mov r3, r4
mov r1, #0
strb ip, [r5, #0xe]
blx func_0202f360
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov10_02118774
_021187e8: .word data_ov00_020ec658
_021187ec: .word data_027e08e4
_021187f0: .word func_ov10_021186e8 - 1
.global func_ov10_021187f4
arm_func_start func_ov10_021187f4
func_ov10_021187f4: ; 0x021187f4
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr}
ldr r2, _021188b4 ; =data_ov00_020ec678
mov sl, r0
ldrb r0, [r2]
cmp r1, r0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
ldr sb, _021188b8 ; =data_ov00_020ec218
strb r1, [r2]
mov r0, sb
mov r1, #0x500
blx func_0202f134
mov r0, #0
mov r1, #0x460
mov r2, #1
bl func_ov10_0211866c
mov r6, #0
ldr r4, _021188bc ; =data_ov10_0211f400
mov r7, r0
mov r8, r6
mov r5, #0x500
_02118848:
ldrh r1, [sl, #0x16]
ldr r2, [r4]
mov r0, sb
ldr r1, [r2, r1, lsl #2]
mov r2, r5
add r1, r1, #4
add r1, r1, #0x2800
add r1, r1, r8
bl func_02007984
add r6, r6, #1
cmp r6, #2
add r8, r8, #0x500
blt _02118848
mov r0, sl
bl func_ov00_0207a2d8
orr r0, r7, #0x10
mov r1, r0, lsl #0x10
mov r4, #1
strb r4, [sl, #0xd]
mov r3, r1, lsr #0x10
ldr r0, _021188c0 ; =data_027e08e4
ldr r2, _021188c4 ; =func_ov10_021186e8
mov r1, #0
strb r4, [sl, #0xe]
blx func_0202f360
mov r0, r4
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
.align 2, 0
arm_func_end func_ov10_021187f4
_021188b4: .word data_ov00_020ec678
_021188b8: .word data_ov00_020ec218
_021188bc: .word data_ov10_0211f400
_021188c0: .word data_027e08e4
_021188c4: .word func_ov10_021186e8 - 1
.global func_ov10_021188c8
arm_func_start func_ov10_021188c8
func_ov10_021188c8: ; 0x021188c8
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr}
mov sb, r1
mov sl, r0
ldr r1, _02118964 ; =data_ov00_020ec218
mov r0, sb
bl func_ov01_020f7c08
mov r7, #0
ldr r4, _02118968 ; =data_ov10_0211f400
mov r6, r0
mov r8, r7
mov r5, #0x500
_021188f4:
ldrh r1, [sl, #0x16]
ldr r2, [r4]
mov r0, sb
ldr r1, [r2, r1, lsl #2]
mov r2, r5
add r1, r1, #4
add r1, r1, #0x2800
add r1, r1, r8
bl func_02007984
add r7, r7, #1
cmp r7, #2
add r8, r8, #0x500
blt _021188f4
cmp r6, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
mov r0, sl
bl func_ov00_0207a2d8
mov r4, #1
strb r4, [sl, #0xd]
ldr r0, _0211896c ; =data_027e08e4
ldr r2, _02118970 ; =func_ov10_021186e8
mov r3, r6
mov r1, #0
strb r4, [sl, #0xe]
blx func_0202f360
mov r0, r4
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
.align 2, 0
arm_func_end func_ov10_021188c8
_02118964: .word data_ov00_020ec218
_02118968: .word data_ov10_0211f400
_0211896c: .word data_027e08e4
_02118970: .word func_ov10_021186e8 - 1
.global func_ov10_02118974
arm_func_start func_ov10_02118974
func_ov10_02118974: ; 0x02118974
stmdb sp!, {r4, lr}
sub sp, sp, #0x18
ldr r4, _02118a0c ; =data_027e0d54
ldrh r0, [r4, #0x14]
blx func_020400f4
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
mov r1, #6
str r1, [sp, #8]
mov r2, #1
str r2, [sp, #0xc]
add r1, sp, #0x14
mov r3, r0
str r0, [sp, #0x10]
blx func_02040464
cmp r0, #0
beq _021189e0
ldr r0, _02118a10 ; =data_ov10_0211f400
ldrh r1, [r4, #0x16]
ldr r0, [r0]
ldr r0, [r0, r1, lsl #2]
add r0, r0, #0x304
add r0, r0, #0x3000
bl func_ov10_0211ce5c
cmp r0, #0
bne _021189f0
_021189e0:
blx func_020400c0
mov r1, #2
str r0, [r4, #0x10]
strb r1, [r4, #0xf]
_021189f0:
ldrh r0, [r4, #0x14]
blx func_02040100
mov r0, #0
strb r0, [r4, #0xd]
strb r0, [r4, #0xe]
add sp, sp, #0x18
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02118974
_02118a0c: .word data_027e0d54
_02118a10: .word data_ov10_0211f400
.global func_ov10_02118a14
arm_func_start func_ov10_02118a14
func_ov10_02118a14: ; 0x02118a14
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
sub sp, sp, #0x80
ldr r4, _02118b28 ; =data_ov00_020ec754
mov r7, r0
add r1, sp, #0xa4
mov r0, r4
mov r2, #4
bl func_0204366c
cmp r0, #0
movne r0, #1
moveq r0, #0
cmp r0, #0
addeq sp, sp, #0x80
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
addeq sp, sp, #0x10
bxeq lr
add r0, sp, #0xa4
mov r1, r4
mov r2, #4
bl func_02007908
mov r0, r4
mov r1, #1
bl func_ov10_021199bc
add r1, sp, #0xa4
ldr r1, [r1]
add r0, sp, #0
bl func_ov10_02119a14
mov r5, #0
ldr r8, _02118b2c ; =data_ov10_0211f400
mov r6, r5
add r4, sp, #0
mov sb, #0x80
_02118a9c:
ldrh r1, [r7, #0x16]
ldr r2, [r8]
mov r0, r4
ldr r1, [r2, r1, lsl #2]
mov r2, sb
add r1, r1, #0x304
add r1, r1, #0x3000
add r1, r1, r6
bl func_02007984
add r5, r5, #1
cmp r5, #2
add r6, r6, #0x80
blt _02118a9c
ldr r0, [r7, #0x10]
cmp r0, #0
addne sp, sp, #0x80
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
addne sp, sp, #0x10
bxne lr
mov r0, r7
bl func_ov00_0207a2d8
mov r4, #1
mov r1, #0
strb r4, [r7, #0xd]
ldr r0, _02118b30 ; =data_027e08e4
ldr r2, _02118b34 ; =func_ov10_02118974
mov r3, r1
strb r4, [r7, #0xe]
blx func_0202f360
mov r0, r4
add sp, sp, #0x80
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
add sp, sp, #0x10
bx lr
.align 2, 0
arm_func_end func_ov10_02118a14
_02118b28: .word data_ov00_020ec754
_02118b2c: .word data_ov10_0211f400
_02118b30: .word data_027e08e4
_02118b34: .word func_ov10_02118974 - 1
.global func_ov10_02118b38
thumb_func_start func_ov10_02118b38
func_ov10_02118b38: ; 0x02118b38
push {r4, lr}
sub sp, #0x10
mov r2, #9
mov r3, #3
add r4, r0, #0
bl func_ov10_02112f18
ldr r0, _02118ca8 ; =data_ov10_0211ef30
ldr r3, _02118cac ; =func_ov10_02113e70
str r0, [r4]
ldr r0, _02118cb0 ; =func_ov10_02113e6c
mov r1, #8
str r0, [sp]
add r0, r4, #0
add r0, #0x18
mov r2, #0x18
blx func_0204f614
add r0, r4, #0
add r0, #0xd8
blx func_02035064
mov r0, #0x16
mov r2, #0
lsl r0, r0, #4
strb r2, [r4, r0]
mov r1, #0x5f
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
add r0, r4, #0
str r2, [sp, #8]
add r0, #0x18
add r1, #0xb9
add r3, r2, #0
str r2, [sp, #0xc]
blx func_ov00_020cfed0
add r0, r4, #0
mov r2, #1
mov r1, #9
add r0, #0x2b
strb r1, [r0]
mov r1, #0x60
str r1, [sp]
str r2, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x30
add r1, #0xb8
add r3, r2, #0
blx func_ov00_020cfed0
add r0, r4, #0
mov r2, #2
mov r1, #0xa
add r0, #0x43
strb r1, [r0]
mov r1, #0x61
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x48
add r1, #0xb7
add r3, r2, #0
blx func_ov00_020cfed0
add r0, r4, #0
mov r2, #4
mov r1, #0xb
add r0, #0x5b
strb r1, [r0]
mov r1, #0x63
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x60
add r1, #0xb5
add r3, r2, #0
blx func_ov00_020cfed0
add r0, r4, #0
mov r1, #0xd
add r0, #0x73
strb r1, [r0]
mov r1, #0x62
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
mov r2, #3
add r0, #0x78
add r1, #0xb6
add r3, r2, #0
blx func_ov00_020cfed0
add r0, r4, #0
mov r2, #5
mov r1, #0xc
add r0, #0x8b
strb r1, [r0]
mov r1, #0x64
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x90
add r1, #0xb4
add r3, r2, #0
blx func_ov00_020cfed0
add r0, r4, #0
mov r2, #6
mov r1, #0xe
add r0, #0xa3
strb r1, [r0]
mov r1, #0x65
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0xa8
add r1, #0xb3
add r3, r2, #0
blx func_ov00_020cfed0
add r0, r4, #0
mov r1, #0xf
add r0, #0xbb
strb r1, [r0]
mov r1, #0x66
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0xc0
add r1, #0xb2
mov r2, #7
mov r3, #8
blx func_ov00_020cfed0
mov r2, #0
add r0, r4, #0
str r2, [sp]
add r0, #0xd8
mov r1, #0x30
add r3, r2, #0
str r2, [sp, #4]
blx func_020350b4
mov r1, #0
add r0, r4, #0
add r0, #0xd8
add r2, r1, #0
add r3, r1, #0
str r1, [sp]
blx func_020351b8
add r0, r4, #0
add sp, #0x10
pop {r4, pc}
nop
thumb_func_end func_ov10_02118b38
_02118ca8: .word data_ov10_0211ef30
_02118cac: .word func_ov10_02113e70 - 1
_02118cb0: .word func_ov10_02113e6c - 1
.global func_ov10_02118cb4
arm_func_start func_ov10_02118cb4
func_ov10_02118cb4: ; 0x02118cb4
stmdb sp!, {r3, r4, r5, lr}
mov r4, r0
mov r5, r1
bl func_ov10_02112f48
mov r2, r4
mov r1, #0
mov r0, #1
_02118cd0:
add r1, r1, #1
strb r0, [r2, #0x25]
cmp r1, #8
add r2, r2, #0x18
blt _02118cd0
ldr r0, [r4, #8]
blx func_ov10_02113cf4
cmp r5, #7
bne _02118cfc
ldr r0, [r4, #8]
blx func_ov10_02113a90
_02118cfc:
ldr r1, _02118d34 ; =data_027e0d54
ldr r0, [r4, #8]
ldrh r1, [r1, #0x16]
blx func_ov10_02113358
bl func_ov10_0211a988
cmp r0, #0
movgt r0, #1
movle r0, #0
strb r0, [r4, #0x160]
tst r0, #0xff
movne r0, #7
moveq r0, #5
strb r0, [r4, #0x9c]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov10_02118cb4
_02118d34: .word data_027e0d54
.global func_ov10_02118d38
arm_func_start func_ov10_02118d38
func_ov10_02118d38: ; 0x02118d38
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov10_02112f5c
ldr r0, [r4, #8]
blx func_ov10_02113d50
ldmia sp!, {r4, pc}
arm_func_end func_ov10_02118d38
.global func_ov10_02118d50
arm_func_start func_ov10_02118d50
func_ov10_02118d50: ; 0x02118d50
mov r2, #0
str r2, [r0, #0x14]
str r1, [r0, #0x10]
bx lr
arm_func_end func_ov10_02118d50
.global func_ov10_02118d60
arm_func_start func_ov10_02118d60
func_ov10_02118d60: ; 0x02118d60
stmdb sp!, {r3, lr}
mov r1, #4
bl func_ov10_02118d50
ldr r0, _02118d7c ; =data_ov00_020eec9c
mov r1, #0x11
bl func_ov00_020d77e4
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov10_02118d60
_02118d7c: .word data_ov00_020eec9c
.global func_ov10_02118d80
arm_func_start func_ov10_02118d80
func_ov10_02118d80: ; 0x02118d80
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, [r4, #0x14]
adds r0, r0, #1
str r0, [r4, #0x14]
movmi r0, #0
strmi r0, [r4, #0x14]
add r0, r4, #0xd8
bl func_0203516c
ldr r0, [r4, #0x10]
cmp r0, #8
addls pc, pc, r0, lsl #2
ldmia sp!, {r4, pc}
_02118db4: ; jump table
b _02118dfc ; case 0
b _02118dfc ; case 1
b _02118dfc ; case 2
b _02118dd8 ; case 3
b _02118e18 ; case 4
b _02118e3c ; case 5
b _02118e68 ; case 6
b _02118e8c ; case 7
b _02118eac ; case 8
_02118dd8:
ldr r0, _02118ed0 ; =data_027e05f8
ldrh r0, [r0, #2]
tst r0, #2
mov r0, r4
beq _02118df4
bl func_ov10_02118d60
ldmia sp!, {r4, pc}
_02118df4:
bl func_ov10_02118ed4
ldmia sp!, {r4, pc}
_02118dfc:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ldmleia sp!, {r4, pc}
mov r0, r4
mov r1, #3
bl func_ov10_02118d50
ldmia sp!, {r4, pc}
_02118e18:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ldmleia sp!, {r4, pc}
ldr r0, [r4, #8]
mov r1, #3
add r0, r0, #0x10
mov r2, #4
bl func_ov10_0211c784
ldmia sp!, {r4, pc}
_02118e3c:
ldr r1, [r4, #8]
ldr r0, [r1, #0x68]
cmp r0, #0
ldmneia sp!, {r4, pc}
add r0, r1, #0x10
mov r1, #8
mov r2, #0
bl func_ov10_0211c784
ldr r0, [r4, #8]
blx func_ov10_02113a90
ldmia sp!, {r4, pc}
_02118e68:
ldr r1, [r4, #8]
ldr r0, [r1, #0x68]
cmp r0, #0
ldmneia sp!, {r4, pc}
add r0, r1, #0x10
mov r1, #0xb
mov r2, #0
bl func_ov10_0211c784
ldmia sp!, {r4, pc}
_02118e8c:
ldr r0, [r4, #8]
ldr r0, [r0, #0x68]
cmp r0, #1
ldmneia sp!, {r4, pc}
mov r0, r4
mov r1, #3
bl func_ov10_02118d50
ldmia sp!, {r4, pc}
_02118eac:
ldr r1, [r4, #8]
ldr r0, [r1, #0x68]
cmp r0, #0
ldmneia sp!, {r4, pc}
add r0, r1, #0x10
mov r1, #5
mov r2, #1
bl func_ov10_0211c784
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02118d80
_02118ed0: .word data_027e05f8
.global func_ov10_02118ed4
arm_func_start func_ov10_02118ed4
func_ov10_02118ed4: ; 0x02118ed4
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
mov r4, r0
ldr r0, [r4, #0x10]
cmp r0, #3
movne r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
mov r6, #0
mov r8, r4
add sb, r4, #0x18
mov r5, r6
_02118efc:
mov r0, sb
ldr ip, [r0]
ldrh r7, [r8, #0x22]
ldr ip, [ip]
mov r1, r5
mov r2, r5
mov r3, r5
blx ip
mov r2, r0
mov r0, r4
mov r1, r7
bl func_ov10_02118f54
cmp r0, #0
movne r0, #1
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
add r6, r6, #1
cmp r6, #8
add r8, r8, #0x18
add sb, sb, #0x18
blt _02118efc
mov r0, #0
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
arm_func_end func_ov10_02118ed4
.global func_ov10_02118f54
arm_func_start func_ov10_02118f54
func_ov10_02118f54: ; 0x02118f54
stmdb sp!, {r4, lr}
mov r4, r0
tst r2, #8
moveq r0, #0
ldmeqia sp!, {r4, pc}
sub r1, r1, #0x5f
cmp r1, #7
addls pc, pc, r1, lsl #2
b _021190a4
_02118f78: ; jump table
b _02118f98 ; case 0
b _02118fc0 ; case 1
b _02118fec ; case 2
b _0211900c ; case 3
b _02119038 ; case 4
b _02119058 ; case 5
b _02119084 ; case 6
b _0211907c ; case 7
_02118f98:
ldr r0, _021190ac ; =data_ov00_020ee698
mov r2, #1
str r2, [r0, #0x2c]
ldr r0, [r4, #8]
mov r1, #6
blx func_ov10_02113364
ldr r0, _021190b0 ; =data_ov00_020eec9c
mov r1, #0x10
bl func_ov00_020d77e4
b _021190a4
_02118fc0:
ldr r0, _021190ac ; =data_ov00_020ee698
mov r1, #2
str r1, [r0, #0x2c]
ldr r0, [r4, #8]
mov r1, #6
mov r2, #1
blx func_ov10_02113364
ldr r0, _021190b0 ; =data_ov00_020eec9c
mov r1, #0x10
bl func_ov00_020d77e4
b _021190a4
_02118fec:
ldr r0, [r4, #8]
mov r1, #5
mov r2, #1
blx func_ov10_02113364
ldr r0, _021190b0 ; =data_ov00_020eec9c
mov r1, #0x10
bl func_ov00_020d77e4
b _021190a4
_0211900c:
ldr r0, _021190ac ; =data_ov00_020ee698
mov r1, #3
str r1, [r0, #0x2c]
ldr r0, [r4, #8]
mov r1, #6
mov r2, #1
blx func_ov10_02113364
ldr r0, _021190b0 ; =data_ov00_020eec9c
mov r1, #0x10
bl func_ov00_020d77e4
b _021190a4
_02119038:
mov r1, #5
bl func_ov10_02118d50
ldr r0, [r4, #8]
blx func_ov10_02113a58
ldr r0, _021190b0 ; =data_ov00_020eec9c
mov r1, #0x10
bl func_ov00_020d77e4
b _021190a4
_02119058:
ldr r0, [r4, #8]
blx func_ov10_02113a58
mov r0, r4
mov r1, #6
bl func_ov10_02118d50
ldr r0, _021190b0 ; =data_ov00_020eec9c
mov r1, #0x10
bl func_ov00_020d77e4
b _021190a4
_0211907c:
bl func_ov10_02118d60
b _021190a4
_02119084:
ldr r0, [r4, #8]
blx func_ov10_02113a58
mov r0, r4
mov r1, #8
bl func_ov10_02118d50
ldr r0, _021190b0 ; =data_ov00_020eec9c
mov r1, #0x10
bl func_ov00_020d77e4
_021190a4:
mov r0, #0
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02118f54
_021190ac: .word data_ov00_020ee698
_021190b0: .word data_ov00_020eec9c
.global func_ov10_021190b4
arm_func_start func_ov10_021190b4
func_ov10_021190b4: ; 0x021190b4
stmdb sp!, {r4, lr}
sub sp, sp, #8
mov r4, r0
ldr r0, [r4, #8]
blx func_ov10_02113d60
ldr r0, [r4, #0x10]
cmp r0, #8
addls pc, pc, r0, lsl #2
b _02119108
_021190d8: ; jump table
b _021190fc ; case 0
b _02119108 ; case 1
b _02119108 ; case 2
b _021190fc ; case 3
b _021190fc ; case 4
b _02119108 ; case 5
b _02119108 ; case 6
b _02119108 ; case 7
b _021190fc ; case 8
_021190fc:
mov r0, r4
bl func_ov10_02119154
b _02119110
_02119108:
mov r0, r4
bl func_ov10_02119520
_02119110:
ldr r0, [r4, #0x10]
cmp r0, #3
addne sp, sp, #8
ldmneia sp!, {r4, pc}
ldrb r0, [r4, #0x160]
cmp r0, #0
addeq sp, sp, #8
ldmeqia sp!, {r4, pc}
mov r3, #0
str r3, [sp]
add r0, r4, #0xd8
mov r1, #0x118
mov r2, #8
str r3, [sp, #4]
bl func_02034b0c
add sp, sp, #8
ldmia sp!, {r4, pc}
arm_func_end func_ov10_021190b4
.global func_ov10_02119154
arm_func_start func_ov10_02119154
func_ov10_02119154: ; 0x02119154
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x4c
ldr r1, _0211951c ; =0x0400101c
mov r2, #0
str r2, [r1]
mov fp, r0
ldr r0, [fp, #0x10]
mov r1, #0xf000
cmp r0, #0
ldr r0, [fp, #0x14]
subeq r4, r2, #1
mov r0, r0, lsl #0xc
movne r4, #1
bl func_01ff98e0
mov r5, r0
add r0, sp, #0x2c
mov r6, #0
bl func_01ffbe34
mov r1, r4, lsl #0xc
mov r0, r1, asr #0x1
add r0, r1, r0, lsr #30
mov r2, #1
str r0, [sp, #8]
mov sl, #0x64000
mvn r0, #0
strb r2, [sp, #0x36]
add r8, fp, #0x18
mov r7, r6
rsb sl, sl, #0
add r4, sp, #0xc
str r0, [sp, #4]
_021191d0:
cmp r7, #3
cmpne r7, #7
ldreq r0, [sp, #8]
addeq r5, r5, r0, asr #2
ldr r0, [fp, #0x10]
cmp r0, #0
beq _021191f8
cmp r0, #4
beq _02119210
b _02119224
_021191f8:
mov r0, #0x1000
mov r1, #0
mov r2, r5
bl func_ov00_020d03f8
mov r6, r0
b _02119224
_02119210:
mov r0, #0x1000
mov r1, #0
rsb r2, r5, #0x1000
bl func_ov00_020d03f8
mov r6, r0
_02119224:
cmp r7, #7
addls pc, pc, r7, lsl #2
b _02119504
_02119230: ; jump table
b _02119250 ; case 0
b _021192b8 ; case 1
b _02119310 ; case 2
b _021193c0 ; case 3
b _02119368 ; case 4
b _02119414 ; case 5
b _02119468 ; case 6
b _021194bc ; case 7
_02119250:
mov r0, r4
bl func_01ffbe34
mov sb, #0xfa000
umull lr, ip, r6, sb
adds sb, lr, #0x800
mov r2, #0
mov lr, sb, lsr #0xc
mov sb, r2
mla ip, r6, sb, ip
mov r1, r6, asr #0x1f
mov sb, #0xfa000
mla ip, r1, sb, ip
mov r1, r2
adc r1, ip, r1
orr lr, lr, r1, lsl #20
mov r0, #1
add r1, lr, #0x800
strb r0, [sp, #0x16]
mov r0, #0
mov r1, r1, asr #0xc
str r0, [sp]
mov r0, r8
mov r3, r4
rsb r1, r1, #0
bl func_ov00_020d00c4
b _02119504
_021192b8:
mov sb, #0xfa000
umull lr, ip, r6, sb
adds sb, lr, #0x800
mov r2, #0
mov lr, sb, lsr #0xc
mov sb, r2
mla ip, r6, sb, ip
mov r1, r6, asr #0x1f
mov sb, #0xfa000
mla ip, r1, sb, ip
mov r1, r2
adc r1, ip, r1
orr lr, lr, r1, lsl #20
add r1, lr, #0x800
mov r0, #0
mov r1, r1, asr #0xc
str r0, [sp]
mov r0, r8
mov r3, r4
rsb r1, r1, #0
bl func_ov00_020d00c4
b _02119504
_02119310:
mov sb, #0xfa000
umull lr, ip, r6, sb
adds sb, lr, #0x800
mov r2, #0
mov lr, sb, lsr #0xc
mov sb, r2
mla ip, r6, sb, ip
mov r1, r6, asr #0x1f
mov sb, #0xfa000
mla ip, r1, sb, ip
mov r1, r2
adc r1, ip, r1
orr lr, lr, r1, lsl #20
add r1, lr, #0x800
mov r0, #0
mov r1, r1, asr #0xc
str r0, [sp]
mov r0, r8
mov r3, r4
rsb r1, r1, #0
bl func_ov00_020d00c4
b _02119504
_02119368:
mov sb, #0xfa000
umull lr, ip, r6, sb
adds sb, lr, #0x800
mov r2, #0
mov lr, sb, lsr #0xc
mov sb, r2
mla ip, r6, sb, ip
mov r1, r6, asr #0x1f
mov sb, #0xfa000
mla ip, r1, sb, ip
mov r1, r2
adc r1, ip, r1
orr lr, lr, r1, lsl #20
add r1, lr, #0x800
mov r0, #0
mov r1, r1, asr #0xc
str r0, [sp]
mov r0, r8
mov r3, r4
rsb r1, r1, #0
bl func_ov00_020d00c4
b _02119504
_021193c0:
mov sb, #0xfa000
umull lr, ip, r6, sb
adds sb, lr, #0x800
mov r2, #0
mov lr, sb, lsr #0xc
mov sb, r2
mla ip, r6, sb, ip
mov r1, r6, asr #0x1f
mov sb, #0xfa000
mla ip, r1, sb, ip
mov r1, r2
adc r1, ip, r1
orr lr, lr, r1, lsl #20
mov r0, #0
add r1, lr, #0x800
str r0, [sp]
mov r0, r8
mov r3, r4
mov r1, r1, asr #0xc
bl func_ov00_020d00c4
b _02119504
_02119414:
mov sb, #0xfa000
umull lr, ip, r6, sb
adds sb, lr, #0x800
mov r2, #0
mov lr, sb, lsr #0xc
mov sb, r2
mla ip, r6, sb, ip
mov r1, r6, asr #0x1f
mov sb, #0xfa000
mla ip, r1, sb, ip
mov r1, r2
adc r1, ip, r1
orr lr, lr, r1, lsl #20
mov r0, #0
add r1, lr, #0x800
str r0, [sp]
mov r0, r8
mov r3, r4
mov r1, r1, asr #0xc
bl func_ov00_020d00c4
b _02119504
_02119468:
mov sb, #0x7d000
umull sb, ip, r6, sb
adds sb, sb, #0x800
mov r1, #0
mov lr, sb, lsr #0xc
mov sb, r1
mla ip, r6, sb, ip
mov r2, r6, asr #0x1f
mov sb, #0x7d000
mla ip, r2, sb, ip
mov r2, r1
adc r2, ip, r2
orr lr, lr, r2, lsl #20
mov r0, #0
add r2, lr, #0x800
str r0, [sp]
mov r0, r8
mov r3, r4
mov r2, r2, asr #0xc
bl func_ov00_020d00c4
b _02119504
_021194bc:
umull lr, ip, r6, sl
adds r1, lr, #0x800
mov lr, r1, lsr #0xc
ldr r1, [sp, #4]
mov r0, #0
mla ip, r6, r1, ip
mov sb, r6, asr #0x1f
mla ip, sb, sl, ip
mov r2, #0
mov r1, r2
adc r1, ip, r1
orr lr, lr, r1, lsl #20
add r1, lr, #0x800
str r0, [sp]
mov r0, r8
mov r3, r4
mov r1, r1, asr #0xc
bl func_ov00_020d00c4
_02119504:
add r8, r8, #0x18
add r7, r7, #1
cmp r7, #8
blt _021191d0
add sp, sp, #0x4c
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
arm_func_end func_ov10_02119154
_0211951c: .word 0x0400101c
.global func_ov10_02119520
arm_func_start func_ov10_02119520
func_ov10_02119520: ; 0x02119520
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x24
mov r7, r0
ldr r0, [r7, #0x14]
mov r1, #0xf000
mov r0, r0, lsl #0xc
bl func_01ff98e0
mov fp, r0
add r0, sp, #4
mov r5, #0
bl func_01ffbe34
mov r0, #1
mov r8, #0x64000
strb r0, [sp, #0xe]
mov r6, r5
rsb r8, r8, #0
mvn sl, #0
add r4, sp, #4
_02119568:
ldr ip, [r7, #0x10]
mov r2, fp
cmp ip, #2
moveq r0, sl
movne r0, #1
cmp r6, #3
cmpne r6, #6
cmpne r6, #7
bne _021195a4
mov r3, r0, lsl #0xc
ldr r0, _0211989c ; =0x66666667
smull r1, sb, r0, r3
mov r0, r3, lsr #0x1f
add sb, r0, sb, asr #1
add r2, r2, sb
_021195a4:
cmp ip, #2
bne _021195bc
mov r0, #0x1000
mov r1, #0
bl func_ov00_020d03f8
mov r5, r0
_021195bc:
cmp r6, #7
addls pc, pc, r6, lsl #2
b _02119888
_021195c8: ; jump table
b _021195e8 ; case 0
b _02119640 ; case 1
b _02119698 ; case 2
b _02119748 ; case 3
b _021196f0 ; case 4
b _0211979c ; case 5
b _021197f0 ; case 6
b _02119844 ; case 7
_021195e8:
mov sb, #0xfa000
umull lr, ip, r5, sb
adds sb, lr, #0x800
mov r2, #0
mov lr, sb, lsr #0xc
mov sb, r2
mla ip, r5, sb, ip
mov r1, r5, asr #0x1f
mov sb, #0xfa000
mla ip, r1, sb, ip
mov r1, r2
adc r1, ip, r1
orr lr, lr, r1, lsl #20
add r1, lr, #0x800
mov r0, #0
mov r1, r1, asr #0xc
str r0, [sp]
add r0, r7, #0x18
mov r3, r4
rsb r1, r1, #0
bl func_ov00_020d00c4
b _02119888
_02119640:
mov sb, #0xfa000
umull lr, ip, r5, sb
adds sb, lr, #0x800
mov r2, #0
mov lr, sb, lsr #0xc
mov sb, r2
mla ip, r5, sb, ip
mov r1, r5, asr #0x1f
mov sb, #0xfa000
mla ip, r1, sb, ip
mov r1, r2
adc r1, ip, r1
orr lr, lr, r1, lsl #20
add r1, lr, #0x800
mov r0, #0
mov r1, r1, asr #0xc
str r0, [sp]
add r0, r7, #0x30
mov r3, r4
rsb r1, r1, #0
bl func_ov00_020d00c4
b _02119888
_02119698:
mov sb, #0x7d000
umull lr, ip, r5, sb
adds sb, lr, #0x800
mov r2, #0
mov lr, sb, lsr #0xc
mov sb, r2
mla ip, r5, sb, ip
mov r1, r5, asr #0x1f
mov sb, #0x7d000
mla ip, r1, sb, ip
mov r1, r2
adc r1, ip, r1
orr lr, lr, r1, lsl #20
add r1, lr, #0x800
mov r0, #0
mov r1, r1, asr #0xc
str r0, [sp]
add r0, r7, #0x48
mov r3, r4
rsb r1, r1, #0
bl func_ov00_020d00c4
b _02119888
_021196f0:
mov sb, #0xfa000
umull lr, ip, r5, sb
adds sb, lr, #0x800
mov r2, #0
mov lr, sb, lsr #0xc
mov sb, r2
mla ip, r5, sb, ip
mov r1, r5, asr #0x1f
mov sb, #0xfa000
mla ip, r1, sb, ip
mov r1, r2
adc r1, ip, r1
orr lr, lr, r1, lsl #20
add r1, lr, #0x800
mov r0, #0
mov r1, r1, asr #0xc
str r0, [sp]
add r0, r7, #0x78
mov r3, r4
rsb r1, r1, #0
bl func_ov00_020d00c4
b _02119888
_02119748:
mov sb, #0xfa000
umull lr, ip, r5, sb
adds sb, lr, #0x800
mov r2, #0
mov lr, sb, lsr #0xc
mov sb, r2
mla ip, r5, sb, ip
mov r1, r5, asr #0x1f
mov sb, #0xfa000
mla ip, r1, sb, ip
mov r1, r2
adc r1, ip, r1
orr lr, lr, r1, lsl #20
mov r0, #0
add r1, lr, #0x800
str r0, [sp]
add r0, r7, #0x60
mov r3, r4
mov r1, r1, asr #0xc
bl func_ov00_020d00c4
b _02119888
_0211979c:
mov sb, #0xfa000
umull lr, ip, r5, sb
adds sb, lr, #0x800
mov r2, #0
mov lr, sb, lsr #0xc
mov sb, r2
mla ip, r5, sb, ip
mov r1, r5, asr #0x1f
mov sb, #0xfa000
mla ip, r1, sb, ip
mov r1, r2
adc r1, ip, r1
orr lr, lr, r1, lsl #20
mov r0, #0
add r1, lr, #0x800
str r0, [sp]
add r0, r7, #0x90
mov r3, r4
mov r1, r1, asr #0xc
bl func_ov00_020d00c4
b _02119888
_021197f0:
mov sb, #0x7d000
umull lr, ip, r5, sb
adds sb, lr, #0x800
mov r1, #0
mov lr, sb, lsr #0xc
mov sb, r1
mla ip, r5, sb, ip
mov r2, r5, asr #0x1f
mov sb, #0x7d000
mla ip, r2, sb, ip
mov r2, r1
adc r2, ip, r2
orr lr, lr, r2, lsl #20
mov r0, #0
add r2, lr, #0x800
str r0, [sp]
add r0, r7, #0xa8
mov r3, r4
mov r2, r2, asr #0xc
bl func_ov00_020d00c4
b _02119888
_02119844:
umull lr, ip, r5, r8
mla ip, r5, sl, ip
mov sb, r5, asr #0x1f
adds r1, lr, #0x800
mov r0, #0
str r0, [sp]
mla ip, sb, r8, ip
mov r2, #0
mov sb, r2
mov r1, r1, lsr #0xc
adc sb, ip, sb
orr r1, r1, sb, lsl #20
add r1, r1, #0x800
add r0, r7, #0xc0
mov r3, r4
mov r1, r1, asr #0xc
bl func_ov00_020d00c4
_02119888:
add r6, r6, #1
cmp r6, #8
blt _02119568
add sp, sp, #0x24
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
arm_func_end func_ov10_02119520
_0211989c: .word 0x66666667
.global func_ov10_021198a0
arm_func_start func_ov10_021198a0
func_ov10_021198a0: ; 0x021198a0
stmdb sp!, {r4, lr}
mov r4, r0
ldr r1, [r4, #0x10]
mov r0, #0
cmp r1, #2
bne _021198d8
ldr r0, [r4, #0x14]
mov r1, #0xf000
mov r0, r0, lsl #0xc
bl func_01ff98e0
mov r2, r0
mov r0, #0x1000
mov r1, #0
bl func_ov00_020d03f8
_021198d8:
ldr r1, [r4, #0x10]
cmp r1, #2
bne _0211992c
mov r1, #0xfa000
rsb r1, r1, #0
mvn r2, #0
umull ip, r3, r0, r1
mla r3, r0, r2, r3
mov r0, r0, asr #0x1f
mla r3, r0, r1, r3
adds r2, ip, #0x800
adc r0, r3, #0
mov r1, r2, lsr #0xc
orr r1, r1, r0, lsl #20
add r1, r1, #0x800
mov r2, r1, asr #0xc
ldr r0, _0211993c ; =0x01ff0000
ldr r1, _02119940 ; =0x0400101c
and r0, r0, r2, lsl #16
str r0, [r1]
ldmia sp!, {r4, pc}
_0211992c:
ldr r0, _02119940 ; =0x0400101c
mov r1, #0
str r1, [r0]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_021198a0
_0211993c: .word 0x01ff0000
_02119940: .word 0x0400101c
.global func_ov10_02119944
arm_func_start func_ov10_02119944
func_ov10_02119944: ; 0x02119944
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0xd8
bl func_020350ac
ldr r3, _02119980 ; =func_ov10_02113e6c
add r0, r4, #0x18
mov r1, #8
mov r2, #0x18
bl func_0204f754
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02119944
_02119980: .word func_ov10_02113e6c - 1
.global func_ov10_02119984
arm_func_start func_ov10_02119984
func_ov10_02119984: ; 0x02119984
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0xd8
bl func_020350ac
ldr r3, _021199b8 ; =func_ov10_02113e6c
add r0, r4, #0x18
mov r1, #8
mov r2, #0x18
bl func_0204f754
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_02119984
_021199b8: .word func_ov10_02113e6c - 1
.global func_ov10_021199bc
arm_func_start func_ov10_021199bc
func_ov10_021199bc: ; 0x021199bc
stmdb sp!, {r4, lr}
mov r4, r0
ldr r2, [r4]
ldr r0, _02119a08 ; =data_027e0c68
mov r2, r2, lsl #0x18
mov r2, r2, lsr #0x18
strh r2, [r0, #0xe]
ldr r2, [r4]
ldr r0, _02119a0c ; =data_ov00_020ee734
mov r3, r2, lsl #0x10
mov r2, r1
mov r1, r3, lsr #0x18
bl func_ov10_0211e500
ldr r1, [r4]
ldr r0, _02119a10 ; =data_027e0c38
mov r1, r1, lsl #0x8
mov r1, r1, lsr #0x18
str r1, [r0, #0x10]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_021199bc
_02119a08: .word data_027e0c68
_02119a0c: .word data_ov00_020ee734
_02119a10: .word data_027e0c38
.global func_ov10_02119a14
arm_func_start func_ov10_02119a14
func_ov10_02119a14: ; 0x02119a14
stmdb sp!, {r0, r1, r2, r3}
stmdb sp!, {r4, lr}
mov r4, r0
mov r1, r4
mov r0, #0
mov r2, #4
bl func_020078f4
mov r1, r4
mov r0, #0
mov r2, #0x80
bl func_02007938
add r0, sp, #0xc
mov r1, r4
mov r2, #4
bl func_02007908
mov r0, r4
mov r1, #0x80
blx func_0202f134
mov r0, r4
ldmia sp!, {r4, lr}
add sp, sp, #0x10
bx lr
arm_func_end func_ov10_02119a14
.global func_ov10_02119a6c
arm_func_start func_ov10_02119a6c
func_ov10_02119a6c: ; 0x02119a6c
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr}
mov r4, r0
mov r5, r1
mov r1, r4
mov r0, #0
mov r2, #0x80
bl func_02007938
ldr r1, _02119b3c ; =0x415a454a
mov r0, r4
blx func_ov00_020777ec
mov r0, r4
blx func_ov00_020778f0
mov r1, r5
add r0, r4, #0x40
mov r2, #8
bl func_020320c0
ldr r2, _02119b40 ; =data_027e0764
mov r3, #1
ldr r6, [r2]
ldmib r2, {r5, r8}
umull sl, sb, r8, r6
mla sb, r8, r5, sb
ldr r7, [r2, #0xc]
ldr lr, [r2, #0x10]
mla sb, r7, r6, sb
ldr ip, [r2, #0x14]
adds r6, lr, sl
adc r5, ip, sb
str r6, [r2]
str r5, [r2, #4]
mov r5, r5, lsr #0x18
strb r5, [r4, #0x52]
ldr r6, [r2, #8]
ldr lr, [r2]
ldr ip, [r2, #4]
umull r8, r7, r6, lr
mla r7, r6, ip, r7
ldr r5, [r2, #0xc]
ldr sl, [r2, #0x10]
mla r7, r5, lr, r7
ldr sb, [r2, #0x14]
adds r6, sl, r8
adc r5, sb, r7
str r6, [r2]
str r5, [r2, #4]
mov r2, r5, lsr #0x18
strb r2, [r4, #0x7c]
mov r0, r4
mov r1, #0x80
strb r3, [r4, #0x7d]
blx func_0202f134
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
.align 2, 0
arm_func_end func_ov10_02119a6c
_02119b3c: .word 0x415a454a
_02119b40: .word data_027e0764
.global func_ov10_02119b44
arm_func_start func_ov10_02119b44
func_ov10_02119b44: ; 0x02119b44
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r4, r0
ldr r0, [r4]
ldr lr, _02119c5c ; =data_ov10_0211f404
ldr r3, _02119c60 ; =data_ov10_0211f408
str r0, [lr]
add r0, r4, #4
mov ip, r1
ldmia r0, {r0, r1, r2}
stmia r3, {r0, r1, r2}
add r0, r4, #0x10
ldr r3, _02119c64 ; =data_ov10_0211f414
ldmia r0, {r0, r1, r2}
stmia r3, {r0, r1, r2}
ldr r0, [r4, #0x1c]
ldr r5, _02119c68 ; =data_ov10_0211f42c
str r0, [lr, #0x1c]
ldr r0, [r4, #0x20]
add r6, r4, #0x28
str r0, [lr, #0x20]
ldr r0, [r4, #0x24]
str r0, [lr, #0x24]
ldmia r6!, {r0, r1, r2, r3}
stmia r5!, {r0, r1, r2, r3}
ldr r1, [r6]
mov r0, ip
str r1, [r5]
ldr r2, [r4, #0x3c]
mov r1, r4
str r2, [lr, #0x3c]
mov r2, #0x80
bl func_02007984
ldr ip, _02119c5c ; =data_ov10_0211f404
ldr r0, _02119c60 ; =data_ov10_0211f408
ldr r1, [ip]
add r7, r4, #4
str r1, [r4]
ldr r6, _02119c64 ; =data_ov10_0211f414
add r3, r4, #0x10
ldr r5, _02119c68 ; =data_ov10_0211f42c
add lr, r4, #0x28
ldmia r0, {r0, r1, r2}
stmia r7, {r0, r1, r2}
ldmia r6, {r0, r1, r2}
stmia r3, {r0, r1, r2}
ldr r0, [ip, #0x1c]
str r0, [r4, #0x1c]
ldr r0, [ip, #0x20]
str r0, [r4, #0x20]
ldr r0, [ip, #0x24]
str r0, [r4, #0x24]
ldmia r5!, {r0, r1, r2, r3}
stmia lr!, {r0, r1, r2, r3}
ldr r1, [r5]
mov r0, r4
str r1, [lr]
ldr r1, [ip, #0x3c]
str r1, [r4, #0x3c]
blx func_ov00_020777f4
cmp r0, #0
bne _02119c4c
ldr r1, _02119c6c ; =0x415a454a
mov r0, r4
blx func_ov00_020777ec
mov r0, r4
blx func_ov00_020778f0
_02119c4c:
mov r0, r4
mov r1, #0x80
blx func_0202f134
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov10_02119b44
_02119c5c: .word data_ov10_0211f404
_02119c60: .word data_ov10_0211f408
_02119c64: .word data_ov10_0211f414
_02119c68: .word data_ov10_0211f42c
_02119c6c: .word 0x415a454a
.global func_ov10_02119c70
arm_func_start func_ov10_02119c70
func_ov10_02119c70: ; 0x02119c70
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, lr}
sub sp, sp, #4
mov r5, r0
strh r1, [r5]
mov r0, #0
strb r0, [r5, #2]
ldr r4, _02119dd4 ; =func_ov10_02112d40
ldr r3, _02119dd8 ; =func_ov10_02117874
add r0, r5, #4
mov r1, #2
mov r2, #0x1400
str r4, [sp]
bl func_0204f614
add r0, r5, #4
add sb, r0, #0x2800
add r0, r5, #0x204
add r4, r0, #0x3000
mov r8, #0
mov r7, #0x16
_02119cbc:
add sl, sb, #0x180
add r6, sb, #0x440
_02119cc4:
mov r0, r8
mov r1, sl
mov r2, r7
bl func_020078c0
add sl, sl, #0x16
cmp sl, r6
blo _02119cc4
mov r0, r6
blx func_ov00_0207a4f0
mov r0, sb
blx func_ov00_0207a5ac
add sb, sb, #0x500
cmp sb, r4
blo _02119cbc
add r0, r5, #0x304
add sb, r0, #0x3000
mov r8, #0
mov r7, #0x14
_02119d0c:
mov sl, r4
add r6, r4, #0x3c
_02119d14:
mov r0, r8
mov r1, sl
mov r2, r7
bl func_020078c0
add sl, sl, #0x14
cmp sl, r6
blo _02119d14
mov r0, r4
blx func_ov00_0207c170
mov r0, r4
blx func_ov00_0207a5f4
add r4, r4, #0x80
cmp r4, sb
blo _02119d0c
add r0, r5, #4
add r6, r0, #0x3400
_02119d54:
mov r0, sb
blx func_ov00_0207a6ac
add sb, sb, #0x80
cmp sb, r6
blo _02119d54
add r0, r5, #0x104
add r4, r0, #0x3400
_02119d70:
mov r0, r6
blx func_ov00_0207a6d0
add r6, r6, #0x80
cmp r6, r4
blo _02119d70
mov r1, r4
mov r0, #0
mov r2, #4
bl func_020078f4
mov r6, #0
add r0, r5, #0x3000
mvn r1, #0
str r1, [r0, #0x508]
add r0, r5, #0x304
mov r7, r6
add r4, r0, #0x3000
_02119db0:
add r0, r4, r7
blx func_ov00_0207a68c
add r6, r6, #1
cmp r6, #2
add r7, r7, #0x80
blt _02119db0
mov r0, r5
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, pc}
.align 2, 0
arm_func_end func_ov10_02119c70
_02119dd4: .word func_ov10_02112d40 - 1
_02119dd8: .word func_ov10_02117874 - 1
.global func_ov10_02119ddc
arm_func_start func_ov10_02119ddc
func_ov10_02119ddc: ; 0x02119ddc
stmdb sp!, {r4, lr}
mov r4, r0
add r1, r4, #0x104
mov r0, #0
add r1, r1, #0x3400
mov r2, #4
strb r0, [r4, #2]
bl func_020078f4
add r0, r4, #0x3000
mvn r1, #0
str r1, [r0, #0x508]
ldmia sp!, {r4, pc}
arm_func_end func_ov10_02119ddc
.global func_ov10_02119e0c
arm_func_start func_ov10_02119e0c
func_ov10_02119e0c: ; 0x02119e0c
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr}
mov r4, r0
add r6, r4, #4
add r0, r4, #0x204
add r1, r4, #0x304
add r7, r6, #0x2800
add r8, r0, #0x3000
add sb, r1, #0x3000
add sl, r6, #0x3400
mov r5, #0
_02119e34:
mov r0, r6
blx func_ov00_0207a418
mov r0, r7
blx func_ov00_0207a5ac
mov r0, r8
blx func_ov00_0207a5f4
mov r0, sb
blx func_ov00_0207a68c
mov r0, sl
blx func_ov00_0207a6d0
add r5, r5, #1
cmp r5, #2
add r6, r6, #0x1400
add r7, r7, #0x500
add r8, r8, #0x80
add sb, sb, #0x80
add sl, sl, #0x80
blt _02119e34
mov r0, r4
bl func_ov10_02119ddc
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
arm_func_end func_ov10_02119e0c
.global func_ov10_02119e88
arm_func_start func_ov10_02119e88
func_ov10_02119e88: ; 0x02119e88
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x14
add r4, r0, #4
add r5, r1, #4
add r6, r0, #0x204
add r8, r0, #0x304
add r0, r4, #0x2800
str r0, [sp, #0xc]
add r0, r5, #0x2800
add r7, r1, #0x204
str r0, [sp, #8]
mov r0, #0
add fp, r6, #0x3000
add r6, r7, #0x3000
add r1, r1, #0x304
add r7, r8, #0x3000
str r2, [sp]
str r3, [sp, #4]
add r8, r1, #0x3000
add sb, r4, #0x3400
add sl, r5, #0x3400
str r0, [sp, #0x10]
_02119ee0:
mov r0, r5
mov r1, r4
mov r2, #0x1400
bl func_02007984
ldr r0, [sp]
cmp r0, #0
beq _02119f0c
ldr r0, [sp, #8]
ldr r1, [sp, #0xc]
mov r2, #0x500
bl func_02007984
_02119f0c:
mov r0, r6
mov r1, fp
mov r2, #0x80
bl func_020078d8
mov r0, r8
mov r1, r7
mov r2, #0x80
bl func_02007984
ldr r0, [sp, #4]
mov r2, #0x80
cmp r0, #0
beq _02119f48
mov r1, sb
bl func_02007984
b _02119f54
_02119f48:
mov r0, sl
mov r1, sb
bl func_02007984
_02119f54:
ldr r0, [sp, #0xc]
add r4, r4, #0x1400
add r0, r0, #0x500
str r0, [sp, #0xc]
ldr r0, [sp, #8]
add r5, r5, #0x1400
add r0, r0, #0x500
str r0, [sp, #8]
ldr r0, [sp, #0x10]
add fp, fp, #0x80
add r0, r0, #1
add r6, r6, #0x80
add r7, r7, #0x80
add r8, r8, #0x80
add sb, sb, #0x80
add sl, sl, #0x80
str r0, [sp, #0x10]
cmp r0, #2
blt _02119ee0
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
arm_func_end func_ov10_02119e88
.global func_ov10_02119fa8
arm_func_start func_ov10_02119fa8
func_ov10_02119fa8: ; 0x02119fa8
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
mov r5, r0
cmp r4, #9
addls pc, pc, r4, lsl #2
b _0211a080
_02119fc0: ; jump table
b _02119fe8 ; case 0
b _02119ff4 ; case 1
b _0211a004 ; case 2
b _0211a014 ; case 3
b _0211a024 ; case 4
b _0211a034 ; case 5
b _0211a044 ; case 6
b _0211a054 ; case 7
b _0211a064 ; case 8
b _0211a074 ; case 9
_02119fe8:
add r0, r5, #4
blx func_ov00_0207a418
b _0211a080
_02119ff4:
add r0, r5, #4
add r0, r0, #0x1400
blx func_ov00_0207a418
b _0211a080
_0211a004:
add r0, r5, #4
add r0, r0, #0x2800
blx func_ov00_0207a5ac
b _0211a080
_0211a014:
add r0, r5, #0x104
add r0, r0, #0x2c00
blx func_ov00_0207a5ac
b _0211a080
_0211a024:
add r0, r5, #0x204
add r0, r0, #0x3000
blx func_ov00_0207a5f4
b _0211a080
_0211a034:
add r0, r5, #0x284
add r0, r0, #0x3000
blx func_ov00_0207a5f4
b _0211a080
_0211a044:
add r0, r5, #0x304
add r0, r0, #0x3000
blx func_ov00_0207a68c
b _0211a080
_0211a054:
add r0, r5, #0x384
add r0, r0, #0x3000
blx func_ov00_0207a68c
b _0211a080
_0211a064:
add r0, r5, #4
add r0, r0, #0x3400
blx func_ov00_0207a6d0
b _0211a080
_0211a074:
add r0, r5, #0x84
add r0, r0, #0x3400
blx func_ov00_0207a6d0
_0211a080:
add r0, r5, #0x104
add r5, r0, #0x3400
mov r3, r4, lsr #0x5
ldr r2, [r5, r3, lsl #2]
and r0, r4, #0x1f
mov r1, #1
orr r0, r2, r1, lsl r0
str r0, [r5, r3, lsl #2]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov10_02119fa8
.global func_ov10_0211a0a4
arm_func_start func_ov10_0211a0a4
func_ov10_0211a0a4: ; 0x0211a0a4
mov r3, r1, lsr #0x5
add r3, r0, r3, lsl #2
add r3, r3, #0x3000
ldr r3, [r3, #0x504]
and ip, r1, #0x1f
mov r1, #1
tst r3, r1, lsl ip
mov r3, r2, lsr #0x5
mvn ip, #0
add r0, r0, r3, lsl #2
beq _0211a0ec
add r0, r0, #0x3000
ldr r0, [r0, #0x504]
and r2, r2, #0x1f
tst r0, r1, lsl r2
movne ip, #0
moveq ip, #2
b _0211a100
_0211a0ec:
add r0, r0, #0x3000
ldr r0, [r0, #0x504]
and r2, r2, #0x1f
tst r0, r1, lsl r2
movne ip, r1
_0211a100:
mov r0, ip
bx lr
arm_func_end func_ov10_0211a0a4
.global func_ov10_0211a108
arm_func_start func_ov10_0211a108
func_ov10_0211a108: ; 0x0211a108
stmdb sp!, {r4, lr}
mov r4, r0
mov r3, #0
mov r2, #1
_0211a118:
mov r0, r3, lsr #0x5
add r0, r4, r0, lsl #2
add r0, r0, #0x3000
ldr r0, [r0, #0x504]
and r1, r3, #0x1f
tst r0, r2, lsl r1
bne _0211a144
add r3, r3, #1
cmp r3, #0xa
blo _0211a118
mov r2, #0
_0211a144:
cmp r2, #0
bne _0211a15c
add r0, r4, #0x3000
mvn r1, #0
str r1, [r0, #0x508]
ldmia sp!, {r4, pc}
_0211a15c:
mov r0, r4
mov r1, #8
mov r2, #9
bl func_ov10_0211a0a4
add r1, r4, #0x3000
mvn r2, #0
str r0, [r1, #0x508]
cmp r0, r2
ldmneia sp!, {r4, pc}
mov r0, r4
mov r1, #0
mov r2, #1
bl func_ov10_0211a0a4
add r1, r4, #0x3000
mvn r2, #0
str r0, [r1, #0x508]
cmp r0, r2
ldmneia sp!, {r4, pc}
mov r0, r4
mov r1, #4
mov r2, #5
bl func_ov10_0211a0a4
add r1, r4, #0x3000
mvn r2, #0
str r0, [r1, #0x508]
cmp r0, r2
ldmneia sp!, {r4, pc}
ldr r0, [r1, #0x504]
tst r0, #4
beq _0211a1ec
tst r0, #8
movne r0, #3
strne r0, [r1, #0x508]
moveq r0, #4
streq r0, [r1, #0x508]
b _0211a1f8
_0211a1ec:
tst r0, #8
movne r0, #1
strne r0, [r1, #0x508]
_0211a1f8:
add r0, r4, #0x3000
ldr r2, [r0, #0x508]
mvn r1, #0
cmp r2, r1
ldmneia sp!, {r4, pc}
ldr r1, [r0, #0x504]
tst r1, #0x40
beq _0211a230
tst r1, #0x80
movne r1, #5
strne r1, [r0, #0x508]
moveq r1, #1
streq r1, [r0, #0x508]
ldmia sp!, {r4, pc}
_0211a230:
tst r1, #0x80
movne r1, #1
strne r1, [r0, #0x508]
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211a108
.global func_ov10_0211a240
arm_func_start func_ov10_0211a240
func_ov10_0211a240: ; 0x0211a240
stmdb sp!, {r4, r5, r6, lr}
mov r5, r0
mov r4, r1
add r0, r5, r4, lsl #7
add r0, r0, #0x3000
ldrb r0, [r0, #0x481]
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
add r0, r5, #4
add r0, r0, #0x3400
add r0, r0, r4, lsl #7
blx func_ov00_020777f4
cmp r0, #0
movne r0, #0
ldmneia sp!, {r4, r5, r6, pc}
add r0, r5, #4
add r0, r0, #0x3400
add r6, r0, r4, lsl #7
ldr r1, _0211a2f8 ; =0x415a454a
mov r0, r6
blx func_ov00_020777ec
mov r0, r6
blx func_ov00_020778f0
mov r0, r6
mov r1, #0x80
blx func_0202f134
add r0, r5, #4
add r4, r4, r4, lsl #2
add r0, r0, #0x2800
add r6, r0, r4, lsl #8
mov r1, r6
mov r0, #0
mov r2, #0x180
bl func_020078f4
add r0, r5, #0x184
add r0, r0, #0x2800
add r1, r0, r4, lsl #8
mov r0, #0
mov r2, #0x2c0
bl func_020078c0
mov r0, r6
mov r1, #0x500
blx func_0202f134
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov10_0211a240
_0211a2f8: .word 0x415a454a
.global func_ov10_0211a2fc
arm_func_start func_ov10_0211a2fc
func_ov10_0211a2fc: ; 0x0211a2fc
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
add r0, r6, #0x3000
ldr r0, [r0, #0x504]
ands r1, r0, #0x100
beq _0211a324
tst r0, #0x200
movne r0, #1
strneb r0, [r6, #2]
ldmneia sp!, {r4, r5, r6, pc}
_0211a324:
mov r4, #0
mov r5, r4
cmp r1, #0
bne _0211a35c
mov r0, r6
mov r1, r4
bl func_ov10_0211a240
cmp r0, #0
beq _0211a35c
add r0, r6, #0x3000
ldr r1, [r0, #0x504]
mov r4, #1
orr r1, r1, #0x104
str r1, [r0, #0x504]
_0211a35c:
add r0, r6, #0x3000
ldr r0, [r0, #0x504]
tst r0, #0x200
bne _0211a394
mov r0, r6
mov r1, #1
bl func_ov10_0211a240
cmp r0, #0
beq _0211a394
add r0, r6, #0x3000
ldr r1, [r0, #0x504]
mov r5, #1
orr r1, r1, #0x208
str r1, [r0, #0x504]
_0211a394:
cmp r4, #0
cmpeq r5, #0
ldmeqia sp!, {r4, r5, r6, pc}
add r0, r6, #0x3000
ldr r2, [r0, #0x508]
mvn r1, #0
cmp r2, r1
ldmneia sp!, {r4, r5, r6, pc}
cmp r4, #0
cmpne r5, #0
movne r1, #6
strne r1, [r0, #0x508]
bne _0211a3f0
cmp r4, #0
beq _0211a3e0
add r0, r6, #0x3000
mov r1, #2
str r1, [r0, #0x508]
b _0211a3f0
_0211a3e0:
cmp r5, #0
addne r0, r6, #0x3000
movne r1, #1
strne r1, [r0, #0x508]
_0211a3f0:
add r0, r6, #0x3000
ldr r0, [r0, #0x504]
tst r0, #0x100
beq _0211a420
tst r0, #0x200
beq _0211a420
add r0, r6, #4
add r1, r6, #0x84
add r0, r0, #0x3400
add r1, r1, #0x3400
mov r2, #0x80
bl func_02007984
_0211a420:
add r0, r6, #0x3000
ldr r0, [r0, #0x504]
tst r0, #4
ldmeqia sp!, {r4, r5, r6, pc}
tst r0, #8
ldmeqia sp!, {r4, r5, r6, pc}
add r0, r6, #4
add r1, r6, #0x104
add r0, r0, #0x2800
add r1, r1, #0x2c00
mov r2, #0x500
bl func_02007984
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov10_0211a2fc
.global func_ov10_0211a454
arm_func_start func_ov10_0211a454
func_ov10_0211a454: ; 0x0211a454
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x3000
ldr r0, [r0, #0x504]
tst r0, #1
beq _0211a488
tst r0, #2
bne _0211a4a0
add r1, r4, #4
add r0, r1, #0x1400
mov r2, #0x1400
bl func_02007984
b _0211a4a0
_0211a488:
tst r0, #2
beq _0211a4a0
add r0, r4, #4
add r1, r0, #0x1400
mov r2, #0x1400
bl func_02007984
_0211a4a0:
add r0, r4, #0x3000
ldr r0, [r0, #0x504]
tst r0, #4
beq _0211a4d4
tst r0, #8
bne _0211a4f4
add r0, r4, #0x104
add r1, r4, #4
add r0, r0, #0x2c00
add r1, r1, #0x2800
mov r2, #0x500
bl func_02007984
b _0211a4f4
_0211a4d4:
tst r0, #8
beq _0211a4f4
add r0, r4, #4
add r1, r4, #0x104
add r0, r0, #0x2800
add r1, r1, #0x2c00
mov r2, #0x500
bl func_02007984
_0211a4f4:
add r0, r4, #0x3000
ldr r0, [r0, #0x504]
tst r0, #0x10
beq _0211a528
tst r0, #0x20
bne _0211a548
add r0, r4, #0x284
add r1, r4, #0x204
add r0, r0, #0x3000
add r1, r1, #0x3000
mov r2, #0x80
bl func_020078d8
b _0211a548
_0211a528:
tst r0, #0x20
beq _0211a548
add r0, r4, #0x204
add r1, r4, #0x284
add r0, r0, #0x3000
add r1, r1, #0x3000
mov r2, #0x80
bl func_020078d8
_0211a548:
add r0, r4, #0x3000
ldr r0, [r0, #0x504]
tst r0, #0x40
beq _0211a57c
tst r0, #0x80
bne _0211a59c
add r0, r4, #0x384
add r1, r4, #0x304
add r0, r0, #0x3000
add r1, r1, #0x3000
mov r2, #0x80
bl func_02007984
b _0211a59c
_0211a57c:
tst r0, #0x80
beq _0211a59c
add r0, r4, #0x304
add r1, r4, #0x384
add r0, r0, #0x3000
add r1, r1, #0x3000
mov r2, #0x80
bl func_02007984
_0211a59c:
add r0, r4, #0x3000
ldr r0, [r0, #0x504]
tst r0, #0x100
beq _0211a5d0
tst r0, #0x200
ldmneia sp!, {r4, pc}
add r0, r4, #0x84
add r1, r4, #4
add r0, r0, #0x3400
add r1, r1, #0x3400
mov r2, #0x80
bl func_02007984
ldmia sp!, {r4, pc}
_0211a5d0:
tst r0, #0x200
ldmeqia sp!, {r4, pc}
add r0, r4, #4
add r1, r4, #0x84
add r0, r0, #0x3400
add r1, r1, #0x3400
mov r2, #0x80
bl func_02007984
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211a454
.global func_ov10_0211a5f4
arm_func_start func_ov10_0211a5f4
func_ov10_0211a5f4: ; 0x0211a5f4
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x1c
mov sb, r0
add r1, sb, #0x3000
ldr r0, [r1, #0x504]
tst r0, #1
beq _0211a648
tst r0, #2
beq _0211a648
ldr r2, [r1, #0x504]
add r0, sb, #0x204
orr r2, r2, #0x30
str r2, [r1, #0x504]
add r5, r0, #0x3000
mov r4, #0
_0211a630:
mov r0, r5
blx func_ov00_0207a5f4
add r4, r4, #1
cmp r4, #2
add r5, r5, #0x80
blo _0211a630
_0211a648:
add r0, sb, #0x84
str r0, [sp, #0x18]
add r0, sb, #0x384
ldr r4, _0211a868 ; =0x0003f500
mov r8, #0
add r7, sb, #4
str r0, [sp, #0x14]
add fp, sb, #0x304
add sl, sb, #0x284
add r5, sb, #0x204
add r6, sb, #0x104
_0211a674:
mov r1, r8, lsr #0x5
add r1, sb, r1, lsl #2
add r1, r1, #0x3000
ldr r2, [r1, #0x504]
and r0, r8, #0x1f
mov r1, #1
tst r2, r1, lsl r0
beq _0211a820
cmp r8, #9
addls pc, pc, r8, lsl #2
b _0211a7d8
_0211a6a0: ; jump table
b _0211a6c8 ; case 0
b _0211a6e0 ; case 1
b _0211a6f8 ; case 2
b _0211a710 ; case 3
b _0211a72c ; case 4
b _0211a748 ; case 5
b _0211a764 ; case 6
b _0211a780 ; case 7
b _0211a7a0 ; case 8
b _0211a7b8 ; case 9
_0211a6c8:
ldrh r1, [sb]
mov r0, r7
mov r2, #0x1400
mul r3, r1, r4
add r1, r3, #0
b _0211a7e4
_0211a6e0:
ldrh r1, [sb]
add r0, r7, #0x1400
mov r2, #0x1400
mul r3, r1, r4
add r1, r3, #0x1400
b _0211a7e4
_0211a6f8:
ldrh r1, [sb]
add r0, r7, #0x2800
mov r2, #0x500
mul r3, r1, r4
add r1, r3, #0x3e800
b _0211a7e4
_0211a710:
ldrh r1, [sb]
add r0, r6, #0x2c00
mov r2, #0x500
mul r3, r1, r4
add r1, r3, #0xed00
add r1, r1, #0x30000
b _0211a7e4
_0211a72c:
ldrh r1, [sb]
add r0, r5, #0x3000
mov r2, #0x80
mul r3, r1, r4
add r1, r3, #0xf200
add r1, r1, #0x30000
b _0211a7e4
_0211a748:
ldrh r1, [sb]
add r0, sl, #0x3000
mov r2, #0x80
mul r3, r1, r4
add r1, r3, #0x3280
add r1, r1, #0x3c000
b _0211a7e4
_0211a764:
ldrh r1, [sb]
add r0, fp, #0x3000
mov r2, #0x80
mul r3, r1, r4
add r1, r3, #0xf300
add r1, r1, #0x30000
b _0211a7e4
_0211a780:
ldrh r1, [sb]
ldr r0, [sp, #0x14]
mov r2, #0x80
mul r3, r1, r4
add r1, r3, #0x3380
add r0, r0, #0x3000
add r1, r1, #0x3c000
b _0211a7e4
_0211a7a0:
ldrh r1, [sb]
add r0, r7, #0x3400
mov r2, #0x80
mul r3, r1, r4
add r1, r3, #0x3f400
b _0211a7e4
_0211a7b8:
ldrh r1, [sb]
ldr r0, [sp, #0x18]
mov r2, #0x80
mul r3, r1, r4
add r1, r3, #0x3480
add r0, r0, #0x3400
add r1, r1, #0x3c000
b _0211a7e4
_0211a7d8:
add sp, sp, #0x1c
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
_0211a7e4:
mov r3, #0
str r3, [sp]
str r3, [sp, #4]
mov r3, #7
str r3, [sp, #8]
mov r3, #0xa
str r3, [sp, #0xc]
mov r3, #2
str r3, [sp, #0x10]
mov r3, #0
blx func_02040464
cmp r0, #0
addeq sp, sp, #0x1c
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
_0211a820:
add r8, r8, #1
cmp r8, #0xa
blo _0211a674
add r0, sb, #0x3000
ldr r0, [r0, #0x504]
tst r0, #1
beq _0211a85c
tst r0, #2
beq _0211a85c
ldrh r0, [sb]
bl func_ov10_0211cfd8
cmp r0, #0
addeq sp, sp, #0x1c
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
_0211a85c:
mov r0, #1
add sp, sp, #0x1c
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
arm_func_end func_ov10_0211a5f4
_0211a868: .word 0x0003f500
.global func_ov10_0211a86c
arm_func_start func_ov10_0211a86c
func_ov10_0211a86c: ; 0x0211a86c
add r2, r1, #0x14
mov r1, r2, lsr #0x5
add r0, r0, r1, lsl #2
ldr r1, [r0, #4]
and r2, r2, #0x1f
mov r0, #1
tst r1, r0, lsl r2
moveq r0, #0
bx lr
arm_func_end func_ov10_0211a86c
.global func_ov10_0211a890
arm_func_start func_ov10_0211a890
func_ov10_0211a890: ; 0x0211a890
ldr r1, [r0, #4]
mov r0, #0
tst r1, #0x100000
bxne lr
tst r1, #0x20000000
movne r0, #1
bx lr
arm_func_end func_ov10_0211a890
.global func_ov10_0211a8ac
arm_func_start func_ov10_0211a8ac
func_ov10_0211a8ac: ; 0x0211a8ac
ldr r0, [r0, #8]
tst r0, #0x20
movne r0, #1
moveq r0, #0
bx lr
arm_func_end func_ov10_0211a8ac
.global func_ov10_0211a8c0
arm_func_start func_ov10_0211a8c0
func_ov10_0211a8c0: ; 0x0211a8c0
ldr r0, [r0, #0xcbc]
tst r0, #0x20000000
movne r0, #1
moveq r0, #0
bx lr
arm_func_end func_ov10_0211a8c0
.global func_ov10_0211a8d4
arm_func_start func_ov10_0211a8d4
func_ov10_0211a8d4: ; 0x0211a8d4
ldr r0, [r0, #0xcbc]
tst r0, #0x40000000
movne r0, #1
moveq r0, #0
bx lr
arm_func_end func_ov10_0211a8d4
.global func_ov10_0211a8e8
arm_func_start func_ov10_0211a8e8
func_ov10_0211a8e8: ; 0x0211a8e8
ldr r0, [r0, #0xcbc]
tst r0, #0x80000000
movne r0, #1
moveq r0, #0
bx lr
arm_func_end func_ov10_0211a8e8
.global func_ov10_0211a8fc
arm_func_start func_ov10_0211a8fc
func_ov10_0211a8fc: ; 0x0211a8fc
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x204
add r0, r0, #0x3000
blx func_ov00_0207c190
cmp r0, #0
ble _0211a928
ldr r0, [r4, #0xcb0]
tst r0, #0x200000
movne r0, #1
ldmneia sp!, {r4, pc}
_0211a928:
mov r0, #0
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211a8fc
.global func_ov10_0211a930
arm_func_start func_ov10_0211a930
func_ov10_0211a930: ; 0x0211a930
stmdb sp!, {r3, r4, r5, r6, r7, lr}
ldr r1, [r0, #0xcb0]
mov r5, #0
tst r1, #0x200000
bne _0211a980
add r0, r0, #0x204
mov r6, r5
add r7, r0, #0x3000
mov r4, #1
_0211a954:
mov r0, r7
blx func_ov00_0207c190
cmp r0, #0
ble _0211a970
mov r0, r7
blx func_ov00_0207a5f4
mov r5, r4
_0211a970:
add r6, r6, #1
cmp r6, #2
add r7, r7, #0x80
blt _0211a954
_0211a980:
mov r0, r5
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov10_0211a930
.global func_ov10_0211a988
arm_func_start func_ov10_0211a988
func_ov10_0211a988: ; 0x0211a988
add r1, r0, #0x2000
ldrb r1, [r1, #0xc64]
cmp r1, #4
movhs r0, #0
bxhs lr
add r0, r0, #0x2c00
ldrh r3, [r0, #0x5e]
mov r2, #0
mov ip, r2
_0211a9ac:
tst r3, #1
addne r0, r2, #1
andne r2, r0, #0xff
mov r0, r3, lsl #0xf
add ip, ip, #1
cmp ip, #0x10
mov r3, r0, lsr #0x10
blt _0211a9ac
cmp r1, r2, lsr #2
addlo r0, r1, #1
movhs r0, #0
bx lr
arm_func_end func_ov10_0211a988
.global func_ov10_0211a9dc
thumb_func_start func_ov10_0211a9dc
func_ov10_0211a9dc: ; 0x0211a9dc
push {r4, lr}
sub sp, #0x20
mov r2, #8
mov r3, #1
add r4, r0, #0
bl func_ov10_02112f18
ldr r0, _0211aab4 ; =data_ov10_0211ef94
ldr r3, _0211aab8 ; =func_ov10_02113e70
str r0, [r4]
ldr r0, _0211aabc ; =func_ov10_02113e6c
mov r1, #2
str r0, [sp]
add r0, r4, #0
add r0, #0x18
mov r2, #0x18
blx func_0204f614
add r0, r4, #0
add r0, #0x48
blx func_ov06_02101b5c
add r0, r4, #0
add r0, #0x8c
mov r1, #0xff
bl func_02032d40
mov r1, #0
add r0, r4, #0
mov r2, #0
mvn r1, r1
add r0, #0xe0
str r1, [r0]
add r0, r4, #0
mov r1, #2
add r0, #0xe4
str r1, [r0]
mov r1, #0x69
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
add r0, r4, #0
str r2, [sp, #8]
add r0, #0x18
add r1, #0xa0
add r3, r2, #0
str r2, [sp, #0xc]
blx func_ov00_020cfed0
add r0, r4, #0
mov r2, #1
mov r1, #7
add r0, #0x2b
strb r1, [r0]
mov r1, #0x6a
str r1, [sp]
str r2, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x30
add r1, #0x9f
add r3, r2, #0
blx func_ov00_020cfed0
add r0, r4, #0
mov r1, #8
add r0, #0x43
strb r1, [r0]
mov r0, #0
str r0, [sp, #0x1c]
str r0, [sp, #0x18]
ldr r0, _0211aac0 ; =0x00000109
mov r1, #3
add r2, sp, #0x1c
add r3, sp, #0x18
blx func_02034698
mov r0, #0xf0
str r0, [sp]
mov r2, #0x10
str r2, [sp, #4]
add r2, #0xf9
str r2, [sp, #8]
mov r0, #3
str r0, [sp, #0xc]
ldr r0, [sp, #0x1c]
mov r1, #0xc
str r0, [sp, #0x10]
ldr r0, [sp, #0x18]
mov r3, #0
str r0, [sp, #0x14]
add r0, r4, #0
add r0, #0x48
blx func_ov06_02101ba8
add r0, r4, #0
mov r1, #0xa
add r0, #0x84
strh r1, [r0]
add r0, r4, #0
mov r1, #0
add r0, #0x86
strh r1, [r0]
add r0, r4, #0
add sp, #0x20
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_0211a9dc
_0211aab4: .word data_ov10_0211ef94
_0211aab8: .word func_ov10_02113e70 - 1
_0211aabc: .word func_ov10_02113e6c - 1
_0211aac0: .word 0x00000109
.global func_ov10_0211aac4
thumb_func_start func_ov10_0211aac4
func_ov10_0211aac4: ; 0x0211aac4
push {r4, r5, r6, r7, lr}
sub sp, #0x11c
add r5, r0, #0
add r4, r1, #0
mov r1, #0
add r2, r5, #0
mov r6, #1
_0211aad2:
add r0, r2, #0
add r0, #0x25
add r1, r1, #1
add r2, #0x18
strb r6, [r0]
cmp r1, #2
blt _0211aad2
mov r1, #0
add r0, r5, #0
mvn r1, r1
add r0, #0xe0
str r1, [r0]
ldr r3, _0211abd8 ; =0x0400100c
mov r0, #3
ldrh r2, [r3]
mov r1, #3
mov r7, #0x43
bic r2, r0
orr r1, r2
strh r1, [r3]
ldrh r2, [r3, #2]
mov r1, #2
bic r2, r0
orr r1, r2
sub r2, r3, #2
strh r1, [r3, #2]
ldrh r1, [r2]
bic r1, r0
strh r1, [r2]
ldrh r0, [r3, #2]
add r1, r0, #0
ldr r0, _0211abdc ; =0x0000810c
and r1, r7
orr r0, r1
strh r0, [r3, #2]
ldrh r0, [r2]
mov r3, #0x33
lsl r3, r3, #0xa
add r1, r0, #0
ldr r0, _0211abe0 ; =0x00008310
and r1, r7
orr r0, r1
strh r0, [r2]
ldr r0, _0211abe4 ; =data_ov10_0211efb0
ldr r1, _0211abe8 ; =data_ov10_0211e7dc
ldr r2, _0211abec ; =data_020691a0
str r6, [sp]
bl func_0202d5b4
add r6, r0, #0
ldr r1, _0211abf0 ; =data_ov10_0211efb4
add r0, sp, #0x10
bl func_02031e1c
mov r2, #1
str r2, [sp]
mov r0, #0
str r0, [sp, #4]
mov r0, #0xf
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, sp, #0x10
mov r1, #7
mov r3, #3
bl func_02031f18
add r0, r6, #0
bl func_02016fcc
ldr r1, _0211abf4 ; =0x016a0000
ldr r0, _0211abf8 ; =0x04001014
str r1, [r0]
str r1, [r0, #8]
sub r0, #0x14
ldr r2, [r0]
ldr r1, _0211abfc ; =0xffffe0ff
and r2, r1
mov r1, #0x1e
lsl r1, r1, #8
orr r1, r2
str r1, [r0]
add r0, r5, #0
bl func_ov10_0211b1a4
cmp r4, #0
bne _0211abcc
ldr r0, [r5, #8]
mov r3, #0
ldr r2, [r0, #0x5c]
ldr r1, [r0, #0x58]
mov r0, #0
eor r3, r2
eor r0, r1
orr r0, r3
bne _0211ab9a
add r0, r5, #0
add r0, #0x48
blx func_ov06_02101e18
b _0211abb2
_0211ab9a:
add r0, sp, #0x1c
mov r3, #0xc
blx func_ov00_020d17a0
add r0, sp, #0x1c
blx func_0204b068
add r0, r5, #0
add r0, #0x48
add r1, sp, #0x1c
blx func_ov06_02101e48
_0211abb2:
ldr r0, [r5, #8]
ldr r0, [r0, #8]
cmp r0, #0xa
bne _0211abc4
add r0, r5, #0
mov r1, #1
add r0, #0xe4
str r1, [r0]
b _0211abcc
_0211abc4:
add r0, r5, #0
mov r1, #0
add r0, #0xe4
str r1, [r0]
_0211abcc:
add r0, r5, #0
add r1, r4, #0
blx func_ov10_02112f48
add sp, #0x11c
pop {r4, r5, r6, r7, pc}
.align 2, 0
thumb_func_end func_ov10_0211aac4
_0211abd8: .word 0x0400100c
_0211abdc: .word 0x0000810c
_0211abe0: .word 0x00008310
_0211abe4: .word data_ov10_0211efb0
_0211abe8: .word data_ov10_0211e7dc
_0211abec: .word data_020691a0
_0211abf0: .word data_ov10_0211efb4
_0211abf4: .word 0x016a0000
_0211abf8: .word 0x04001014
_0211abfc: .word 0xffffe0ff
.global func_ov10_0211ac00
thumb_func_start func_ov10_0211ac00
func_ov10_0211ac00: ; 0x0211ac00
push {r4, lr}
ldr r2, _0211ac2c ; =0x04001000
add r4, r0, #0
ldr r1, [r2]
ldr r0, _0211ac30 ; =0xffffe0ff
and r1, r0
mov r0, #5
lsl r0, r0, #0xa
orr r0, r1
str r0, [r2]
mov r0, #0
str r0, [r2, #0x14]
str r0, [r2, #0x1c]
add r0, r4, #0
add r0, #0x48
blx func_ov06_02101c84
add r0, r4, #0
blx func_ov10_02112f5c
pop {r4, pc}
nop
thumb_func_end func_ov10_0211ac00
_0211ac2c: .word 0x04001000
_0211ac30: .word 0xffffe0ff
.global func_ov10_0211ac34
thumb_func_start func_ov10_0211ac34
func_ov10_0211ac34: ; 0x0211ac34
push {r3, r4, r5, lr}
add r4, r1, #0
add r5, r0, #0
cmp r4, #3
beq _0211ac46
cmp r4, #4
beq _0211ac46
cmp r4, #5
bne _0211ac4c
_0211ac46:
ldr r0, [r5, #8]
bl func_ov10_02113a58
_0211ac4c:
mov r0, #0
str r0, [r5, #0x14]
str r4, [r5, #0x10]
pop {r3, r4, r5, pc}
thumb_func_end func_ov10_0211ac34
.global func_ov10_0211ac54
thumb_func_start func_ov10_0211ac54
func_ov10_0211ac54: ; 0x0211ac54
push {r4, lr}
add r4, r0, #0
ldr r0, _0211ac80 ; =data_ov00_020eec9c
mov r1, #5
blx func_ov00_020d77e4
add r0, r4, #0
add r0, #0xe4
ldr r0, [r0]
cmp r0, #0
bne _0211ac74
add r0, r4, #0
mov r1, #3
bl func_ov10_0211ac34
pop {r4, pc}
_0211ac74:
add r0, r4, #0
mov r1, #4
bl func_ov10_0211ac34
pop {r4, pc}
nop
thumb_func_end func_ov10_0211ac54
_0211ac80: .word data_ov00_020eec9c
.global func_ov10_0211ac84
thumb_func_start func_ov10_0211ac84
func_ov10_0211ac84: ; 0x0211ac84
push {r3, r4, r5, lr}
add r4, r0, #0
ldr r0, [r4, #0x14]
add r0, r0, #1
str r0, [r4, #0x14]
bpl _0211ac94
mov r0, #0
str r0, [r4, #0x14]
_0211ac94:
ldr r1, [r4, #0x10]
cmp r1, #7
bhi _0211acbc
add r0, r1, r1
add r0, pc
ldrh r0, [r0, #6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_0211aca6: ; jump table
.short _0211acb6 - _0211aca6 - 2 ; case 0
.short _0211acc8 - _0211aca6 - 2 ; case 1
.short _0211ad2e - _0211aca6 - 2 ; case 2
.short _0211ad48 - _0211aca6 - 2 ; case 3
.short _0211ad48 - _0211aca6 - 2 ; case 4
.short _0211ad72 - _0211aca6 - 2 ; case 5
.short _0211ada4 - _0211aca6 - 2 ; case 6
.short _0211adbe - _0211aca6 - 2 ; case 7
_0211acb6:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
bgt _0211acbe
_0211acbc:
b _0211adcc
_0211acbe:
add r0, r4, #0
mov r1, #1
bl func_ov10_0211ac34
pop {r3, r4, r5, pc}
_0211acc8:
ldr r0, _0211add0 ; =data_027e0c68
blx func_020366c4
cmp r0, #0
beq _0211acdc
mov r1, #0x57
lsl r1, r1, #2
ldrsh r0, [r0, r1]
cmp r0, #0
bgt _0211adcc
_0211acdc:
add r0, r4, #0
add r0, #0x89
ldrb r0, [r0]
add r5, r0, #1
add r0, r4, #0
add r0, #0x88
ldrb r1, [r0]
cmp r5, r1
blt _0211acf8
add r0, r5, #0
blx func_01ff9b88
add r5, r0, #0
b _0211ad0e
_0211acf8:
cmp r5, #0
bge _0211ad0e
mov r0, #0
mvn r0, r0
blx func_01ff9b88
add r1, r4, #0
add r1, #0x88
ldrb r1, [r1]
add r1, r5, r1
sub r5, r1, r0
_0211ad0e:
add r0, r4, #0
add r0, #0x89
strb r5, [r0]
ldr r0, _0211add4 ; =data_027e05f8
ldrh r1, [r0, #2]
mov r0, #2
tst r0, r1
beq _0211ad26
add r0, r4, #0
bl func_ov10_0211ac54
pop {r3, r4, r5, pc}
_0211ad26:
add r0, r4, #0
bl func_ov10_0211addc
pop {r3, r4, r5, pc}
_0211ad2e:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ble _0211adcc
ldr r0, [r4, #8]
ldr r1, [r0, #0x68]
cmp r1, #0
bne _0211adcc
add r0, #0x10
mov r1, #5
mov r2, #2
blx func_ov10_0211c784
pop {r3, r4, r5, pc}
_0211ad48:
ldr r0, [r4, #8]
ldr r2, [r0, #0x68]
cmp r2, #0
bne _0211adcc
cmp r1, #3
bne _0211ad60
add r0, #0x10
mov r1, #8
mov r2, #0
blx func_ov10_0211c784
b _0211ad6a
_0211ad60:
add r0, #0x10
mov r1, #0xa
mov r2, #0x10
blx func_ov10_0211c784
_0211ad6a:
ldr r0, [r4, #8]
bl func_ov10_02113a90
pop {r3, r4, r5, pc}
_0211ad72:
ldr r0, _0211add8 ; =data_027e0d54
ldrb r0, [r0, #0xd]
cmp r0, #0
bne _0211ad7e
mov r0, #1
b _0211ad80
_0211ad7e:
mov r0, #0
_0211ad80:
cmp r0, #0
beq _0211adcc
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ble _0211adcc
ldr r0, [r4, #8]
ldr r1, [r0, #0x68]
cmp r1, #0
bne _0211adcc
add r0, #0x10
mov r1, #0xa
mov r2, #0x10
blx func_ov10_0211c784
ldr r0, [r4, #8]
bl func_ov10_02113a90
pop {r3, r4, r5, pc}
_0211ada4:
ldr r0, _0211add0 ; =data_027e0c68
blx func_020366c4
mov r1, #0x57
lsl r1, r1, #2
ldrsh r0, [r0, r1]
cmp r0, #0
bgt _0211adcc
add r0, r4, #0
mov r1, #7
bl func_ov10_0211ac34
pop {r3, r4, r5, pc}
_0211adbe:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ble _0211adcc
add r0, r4, #0
mov r1, #1
bl func_ov10_0211ac34
_0211adcc:
pop {r3, r4, r5, pc}
nop
thumb_func_end func_ov10_0211ac84
_0211add0: .word data_027e0c68
_0211add4: .word data_027e05f8
_0211add8: .word data_027e0d54
.global func_ov10_0211addc
thumb_func_start func_ov10_0211addc
func_ov10_0211addc: ; 0x0211addc
push {r4, r5, r6, r7, lr}
sub sp, #0xc
mov r1, #0
str r0, [sp]
mvn r1, r1
add r0, #0xe0
str r1, [r0]
ldr r0, [sp]
ldr r0, [r0, #0x10]
cmp r0, #1
beq _0211adf8
add sp, #0xc
mov r0, #0
pop {r4, r5, r6, r7, pc}
_0211adf8:
ldr r6, [sp]
mov r7, #0
add r4, r6, #0
add r4, #0x18
_0211ae00:
ldrh r0, [r6, #0x22]
mov r1, #0
add r2, r1, #0
str r0, [sp, #8]
add r0, r4, #0
ldr r5, [r0]
add r3, r1, #0
ldr r5, [r5]
blx r5
add r2, r0, #0
ldr r0, [sp]
ldr r1, [sp, #8]
bl func_ov10_0211aed0
cmp r0, #0
beq _0211ae26
add sp, #0xc
mov r0, #1
pop {r4, r5, r6, r7, pc}
_0211ae26:
add r7, r7, #1
add r6, #0x18
add r4, #0x18
cmp r7, #2
blt _0211ae00
ldr r0, _0211aec0 ; =data_027e0d78
mov r4, #2
ldr r0, [r0, #0x30]
str r0, [sp, #4]
ldr r0, _0211aec0 ; =data_027e0d78
ldr r7, [r0, #0x2c]
ldr r6, [r0, #0x20]
ldr r5, [r0, #0x1c]
_0211ae40:
ldr r0, _0211aec4 ; =0x00000109
ldr r3, [sp, #4]
add r1, r4, #0
add r2, r7, #0
blx func_02034b90
cmp r0, #0
beq _0211aeb4
ldr r0, _0211aec4 ; =0x00000109
add r1, r4, #0
add r2, r5, #0
add r3, r6, #0
blx func_02034b90
cmp r0, #0
beq _0211aeb4
ldr r0, _0211aec0 ; =data_027e0d78
ldrh r1, [r0, #0x34]
mov r0, #2
tst r0, r1
bne _0211ae70
mov r0, #4
tst r0, r1
beq _0211aea6
_0211ae70:
ldr r0, _0211aec8 ; =data_ov00_020eec9c
mov r1, #4
blx func_ov00_020d77e4
cmp r4, #2
beq _0211ae82
cmp r4, #3
beq _0211ae8c
b _0211ae96
_0211ae82:
ldr r0, [sp]
add r0, #0x48
blx func_ov06_02101de0
b _0211aea6
_0211ae8c:
ldr r0, [sp]
add r0, #0x48
blx func_ov06_02101e18
b _0211aea6
_0211ae96:
sub r1, r4, #4
lsl r2, r1, #1
ldr r1, _0211aecc ; =data_ov10_0211e7c0
ldr r0, [sp]
ldrh r1, [r1, r2]
add r0, #0x48
blx func_ov06_02101d1c
_0211aea6:
ldr r0, [sp]
add r0, #0xe0
str r0, [sp]
str r4, [r0]
add sp, #0xc
mov r0, #1
pop {r4, r5, r6, r7, pc}
_0211aeb4:
add r4, r4, #1
cmp r4, #0xe
blt _0211ae40
mov r0, #0
add sp, #0xc
pop {r4, r5, r6, r7, pc}
.align 2, 0
thumb_func_end func_ov10_0211addc
_0211aec0: .word data_027e0d78
_0211aec4: .word 0x00000109
_0211aec8: .word data_ov00_020eec9c
_0211aecc: .word data_ov10_0211e7c0
.global func_ov10_0211aed0
thumb_func_start func_ov10_0211aed0
func_ov10_0211aed0: ; 0x0211aed0
push {r3, r4, r5, r6, r7, lr}
mov r3, #8
add r5, r0, #0
tst r2, r3
bne _0211aede
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
_0211aede:
cmp r1, #0x69
beq _0211aee8
cmp r1, #0x6a
beq _0211aeee
b _0211afd6
_0211aee8:
bl func_ov10_0211ac54
b _0211afd6
_0211aeee:
ldr r0, [r5, #0x78]
cmp r0, #0xc
beq _0211aef8
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
_0211aef8:
add r0, r5, #0
add r0, #0x4c
blx func_ov00_020d1650
add r6, r0, #0
add r4, r1, #0
ldr r0, [r5, #8]
add r1, r6, #0
ldr r7, [r0, #0x54]
add r2, r4, #0
add r0, r7, #0
bl func_ov00_02077568
cmp r0, #0
beq _0211af1a
mov r0, #1
b _0211af1c
_0211af1a:
mov r0, #0
_0211af1c:
cmp r0, #0
bne _0211af38
mov r2, #0
ldr r0, _0211afdc ; =data_027e0c68
ldr r1, _0211afe0 ; =0x00130020
mvn r2, r2
blx func_02036edc
add r0, r5, #0
mov r1, #6
bl func_ov10_0211ac34
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
_0211af38:
add r0, r7, #0
bl func_ov00_02077998
eor r1, r4
eor r0, r6
orr r0, r1
bne _0211af5e
mov r2, #0
ldr r0, _0211afdc ; =data_027e0c68
ldr r1, _0211afe4 ; =0x00130025
mvn r2, r2
blx func_02036edc
add r0, r5, #0
mov r1, #6
bl func_ov10_0211ac34
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
_0211af5e:
ldr r0, [r5, #8]
add r1, r6, #0
ldr r0, [r0, #0x54]
add r2, r4, #0
blx func_ov10_0211cb30
cmp r0, #0
beq _0211afa2
add r0, r5, #0
add r0, #0xe4
ldr r0, [r0]
cmp r0, #1
bne _0211af8a
ldr r0, [r5, #8]
add r1, r4, #0
ldr r2, [r0, #0x58]
ldr r0, [r0, #0x5c]
eor r1, r0
add r0, r6, #0
eor r0, r2
orr r0, r1
beq _0211afa2
_0211af8a:
mov r2, #0
ldr r0, _0211afdc ; =data_027e0c68
ldr r1, _0211afe8 ; =0x00130021
mvn r2, r2
blx func_02036edc
add r0, r5, #0
mov r1, #6
bl func_ov10_0211ac34
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
_0211afa2:
ldr r0, _0211afec ; =data_ov00_020eec9c
mov r1, #4
blx func_ov00_020d77e4
ldr r0, [r5, #8]
str r6, [r0, #0x58]
str r4, [r0, #0x5c]
add r0, r5, #0
add r0, #0xe4
ldr r0, [r0]
cmp r0, #0
ldr r0, [r5, #8]
bne _0211afca
bl func_ov10_02113a58
add r0, r5, #0
mov r1, #2
bl func_ov10_0211ac34
b _0211afd6
_0211afca:
bl func_ov10_021139ec
add r0, r5, #0
mov r1, #5
bl func_ov10_0211ac34
_0211afd6:
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
nop
thumb_func_end func_ov10_0211aed0
_0211afdc: .word data_027e0c68
_0211afe0: .word 0x00130020
_0211afe4: .word 0x00130025
_0211afe8: .word 0x00130021
_0211afec: .word data_ov00_020eec9c
.global func_ov10_0211aff0
thumb_func_start func_ov10_0211aff0
func_ov10_0211aff0: ; 0x0211aff0
push {r3, r4, r5, r6, r7, lr}
sub sp, #0x40
add r6, r0, #0
ldr r0, [r6, #0x14]
mov r1, #0xf
lsl r0, r0, #0xc
lsl r1, r1, #0xc
blx func_01ff98e0
str r0, [sp, #8]
add r0, sp, #0x20
mov r5, #0
blx func_01ffbe34
mov r1, #1
add r0, sp, #0x18
strb r1, [r0, #0x12]
add r0, r6, #0
str r0, [sp, #0x14]
add r0, #0x48
str r0, [sp, #0x14]
add r0, r6, #0
str r0, [sp, #0x10]
add r0, #0x30
str r0, [sp, #0x10]
add r0, r6, #0
str r0, [sp, #0xc]
add r0, #0x18
add r4, r5, #0
str r0, [sp, #0xc]
_0211b02c:
ldr r2, [sp, #8]
cmp r4, #1
beq _0211b036
cmp r4, #2
bne _0211b03c
_0211b036:
mov r0, #3
lsl r0, r0, #0xa
sub r2, r2, r0
_0211b03c:
ldr r0, [r6, #0x10]
cmp r0, #7
bhi _0211b07c
add r0, r0, r0
add r0, pc
ldrh r0, [r0, #6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_0211b04e: ; jump table
.short _0211b05e - _0211b04e - 2 ; case 0
.short _0211b07c - _0211b04e - 2 ; case 1
.short _0211b05e - _0211b04e - 2 ; case 2
.short _0211b05e - _0211b04e - 2 ; case 3
.short _0211b05e - _0211b04e - 2 ; case 4
.short _0211b05e - _0211b04e - 2 ; case 5
.short _0211b070 - _0211b04e - 2 ; case 6
.short _0211b062 - _0211b04e - 2 ; case 7
_0211b05e:
mov r5, #0
b _0211b07c
_0211b062:
mov r0, #1
lsl r0, r0, #0xc
mov r1, #0
blx func_ov00_020d03f8
add r5, r0, #0
b _0211b07c
_0211b070:
mov r1, #1
mov r0, #0
lsl r1, r1, #0xc
blx func_ov00_020d03f8
add r5, r0, #0
_0211b07c:
ldr r0, [r6, #0x10]
cmp r0, #6
beq _0211b086
cmp r0, #7
bne _0211b08a
_0211b086:
mov r0, #0x32
b _0211b08e
_0211b08a:
mov r0, #0x63
mvn r0, r0
_0211b08e:
cmp r4, #3
bhi _0211b13c
add r1, r4, r4
add r1, pc
ldrh r1, [r1, #6]
lsl r1, r1, #0x10
asr r1, r1, #0x10
add pc, r1
_0211b09e: ; jump table
.short _0211b0a6 - _0211b09e - 2 ; case 0
.short _0211b0c4 - _0211b09e - 2 ; case 1
.short _0211b0e2 - _0211b09e - 2 ; case 2
.short _0211b106 - _0211b09e - 2 ; case 3
_0211b0a6:
mov r0, #0x95
mvn r0, r0
add r1, r5, #0
mul r1, r0
mov r0, #2
lsl r0, r0, #0xa
add r0, r1, r0
asr r0, r0, #0xc
lsl r1, r0, #0x10
ldr r0, _0211b198 ; =0x01ff0000
and r1, r0
ldr r0, _0211b19c ; =0x04001014
str r1, [r0]
str r1, [r0, #8]
b _0211b13c
_0211b0c4:
mov r2, #0x64
add r3, r5, #0
mul r3, r2
mov r2, #2
mov r0, #0
lsl r2, r2, #0xa
add r2, r3, r2
str r0, [sp]
ldr r0, [sp, #0xc]
mov r1, #0
asr r2, r2, #0xc
add r3, sp, #0x20
blx func_ov00_020d00c4
b _0211b13c
_0211b0e2:
ldr r0, [r6, #0x78]
cmp r0, #0xc
bne _0211b13c
mov r2, #0x64
add r3, r5, #0
mul r3, r2
mov r2, #2
mov r0, #0
lsl r2, r2, #0xa
add r2, r3, r2
str r0, [sp]
ldr r0, [sp, #0x10]
mov r1, #0
asr r2, r2, #0xc
add r3, sp, #0x20
blx func_ov00_020d00c4
b _0211b13c
_0211b106:
add r1, r5, #0
mul r1, r0
mov r0, #2
lsl r0, r0, #0xa
add r0, r1, r0
asr r7, r0, #0xc
add r0, sp, #0x20
str r0, [sp]
ldr r0, _0211b1a0 ; =0x00000109
mov r1, #2
mov r2, #0
add r3, r7, #0
blx func_0203493c
ldr r0, [r6, #0x10]
cmp r0, #1
bne _0211b12c
mov r1, #1
b _0211b12e
_0211b12c:
mov r1, #0
_0211b12e:
add r0, sp, #0x20
str r0, [sp]
ldr r0, [sp, #0x14]
mov r2, #0
add r3, r7, #0
blx func_ov06_02101fa8
_0211b13c:
add r4, r4, #1
cmp r4, #4
bge _0211b144
b _0211b02c
_0211b144:
add r0, r6, #0
add r0, #0xe0
ldr r0, [r0]
cmp r0, #0
blt _0211b192
mov r0, #0
str r0, [sp, #0x1c]
str r0, [sp, #0x18]
mov r0, #4
str r0, [sp]
add r1, r6, #0
str r0, [sp, #4]
add r1, #0xe0
ldr r0, _0211b1a0 ; =0x00000109
ldr r1, [r1]
add r2, sp, #0x1c
add r3, sp, #0x18
blx func_020347b0
add r6, #0xe0
ldr r0, [r6]
cmp r0, #2
beq _0211b178
cmp r0, #3
beq _0211b17c
b _0211b180
_0211b178:
mov r1, #4
b _0211b182
_0211b17c:
mov r1, #5
b _0211b182
_0211b180:
mov r1, #6
_0211b182:
mov r0, #0
str r0, [sp]
ldr r3, [sp, #0x18]
ldr r0, _0211b1a0 ; =0x00000109
ldr r2, [sp, #0x1c]
add r3, r3, #1
blx func_02034984
_0211b192:
add sp, #0x40
pop {r3, r4, r5, r6, r7, pc}
nop
thumb_func_end func_ov10_0211aff0
_0211b198: .word 0x01ff0000
_0211b19c: .word 0x04001014
_0211b1a0: .word 0x00000109
.global func_ov10_0211b1a4
thumb_func_start func_ov10_0211b1a4
func_ov10_0211b1a4: ; 0x0211b1a4
push {r3, r4, r5, r6, r7, lr}
sub sp, #0x30
str r0, [sp, #0x18]
mov r0, #0
str r0, [sp, #0x2c]
str r0, [sp, #0x28]
ldr r0, _0211b28c ; =0x00000109
mov r1, #3
add r2, sp, #0x2c
add r3, sp, #0x28
blx func_02034698
ldr r0, [sp, #0x18]
add r0, #0x48
blx func_ov06_02101bf0
blx func_02004e4c
mov r2, #1
add r1, r0, #0
mov r0, #0
lsl r2, r2, #0xc
blx func_020078f4
ldr r0, [sp, #0x18]
mov r2, #6
add r3, r2, #0
ldr r1, _0211b290 ; =data_02068e7c
add r0, #0xb8
str r1, [r0]
mov r0, #0xc0
str r0, [sp]
mov r1, #1
str r1, [sp, #4]
mov r0, #0xf
str r0, [sp, #8]
ldr r0, [sp, #0x18]
str r1, [sp, #0xc]
mov r1, #0
str r1, [sp, #0x10]
add r0, #0x8c
add r3, #0xfa
str r1, [sp, #0x14]
blx func_02032d68
ldr r0, [sp, #0x18]
mov r1, #0
add r0, #0x8c
ldr r2, [r0]
ldr r2, [r2, #0x10]
blx r2
mov r0, #0
str r0, [sp, #0x24]
str r0, [sp, #0x20]
ldr r0, [sp, #0x18]
ldr r5, _0211b294 ; =data_ov10_0211e7c8
str r0, [sp, #0x1c]
add r0, #0x8c
mov r4, #4
str r0, [sp, #0x1c]
_0211b21c:
mov r0, #4
str r0, [sp]
str r0, [sp, #4]
ldr r0, _0211b28c ; =0x00000109
add r1, r4, #0
add r2, sp, #0x24
add r3, sp, #0x20
blx func_020347b0
add r0, r5, #0
sub r0, #8
ldrh r7, [r0]
ldr r0, [sp, #0x18]
add r0, #0xb8
ldr r6, [r0]
add r1, r7, #0
add r0, r6, #0
blx func_02023ea4
add r1, r0, #0
ldr r0, _0211b298 ; =0x0000ffff
cmp r1, r0
bne _0211b24e
ldr r0, [r6]
ldrh r1, [r0, #2]
_0211b24e:
add r0, r6, #0
blx func_02023eec
add r2, r0, #0
mov r0, #1
str r0, [sp]
mov r3, #2
ldrsb r3, [r2, r3]
ldr r0, [sp, #0x1c]
ldr r1, [sp, #0x24]
lsr r2, r3, #0x1f
add r2, r3, r2
asr r2, r2, #1
sub r1, r1, r2
ldr r2, [sp, #0x20]
ldr r6, [r0]
sub r2, #0x37
lsl r1, r1, #0x18
lsl r2, r2, #0x18
ldr r6, [r6, #0xc]
lsr r1, r1, #0x18
lsr r2, r2, #0x18
add r3, r7, #0
blx r6
add r4, r4, #1
add r5, r5, #2
cmp r4, #0xe
blt _0211b21c
add sp, #0x30
pop {r3, r4, r5, r6, r7, pc}
nop
thumb_func_end func_ov10_0211b1a4
_0211b28c: .word 0x00000109
_0211b290: .word data_02068e7c
_0211b294: .word data_ov10_0211e7c8
_0211b298: .word 0x0000ffff
.global func_ov10_0211b29c
arm_func_start func_ov10_0211b29c
func_ov10_0211b29c: ; 0x0211b29c
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x8c
blx func_02032f94
add r0, r4, #0x48
bl func_ov06_02101ba4
ldr r3, _0211b2e0 ; =func_ov10_02113e6c
add r0, r4, #0x18
mov r1, #2
mov r2, #0x18
bl func_0204f754
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_0211b29c
_0211b2e0: .word func_ov10_02113e6c - 1
.global func_ov10_0211b2e4
arm_func_start func_ov10_0211b2e4
func_ov10_0211b2e4: ; 0x0211b2e4
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x8c
blx func_02032f94
add r0, r4, #0x48
bl func_ov06_02101ba4
ldr r3, _0211b320 ; =func_ov10_02113e6c
add r0, r4, #0x18
mov r1, #2
mov r2, #0x18
bl func_0204f754
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_0211b2e4
_0211b320: .word func_ov10_02113e6c - 1
.global func_ov10_0211b324
thumb_func_start func_ov10_0211b324
func_ov10_0211b324: ; 0x0211b324
push {r3, r4, r5, lr}
mov r2, #8
mov r3, #2
add r5, r0, #0
add r4, r1, #0
bl func_ov10_02112f18
ldr r0, _0211b350 ; =data_ov10_0211f008
add r4, #0x68
str r0, [r5]
add r0, r5, #0
add r0, #0x18
add r1, r4, #0
blx func_ov01_020f5c00
mov r1, #0xff
add r0, r1, #0
add r0, #0xe1
strb r1, [r5, r0]
add r0, r5, #0
pop {r3, r4, r5, pc}
nop
thumb_func_end func_ov10_0211b324
_0211b350: .word data_ov10_0211f008
.global func_ov10_0211b354
thumb_func_start func_ov10_0211b354
func_ov10_0211b354: ; 0x0211b354
push {r3, r4, r5, r6, r7, lr}
add r7, r1, #0
ldr r1, _0211b3e0 ; =data_027e0d54
add r5, r0, #0
ldrh r1, [r1, #0x16]
ldr r0, [r5, #8]
bl func_ov10_02113358
add r6, r0, #0
ldr r0, [r5, #8]
mov r2, #0x40
ldr r4, [r0, #0x54]
ldr r0, _0211b3e4 ; =0x00003404
add r1, r4, #0
add r0, r6, r0
blx func_02007908
ldr r2, _0211b3e8 ; =0x00002804
add r1, r4, #0
add r0, r6, r2
add r1, #0x40
lsr r2, r2, #3
blx func_02007984
cmp r7, #1
bne _0211b396
ldr r2, [r5, #8]
mov r1, #0x64
ldrsb r1, [r2, r1]
add r0, r5, #0
add r0, #0x18
blx func_ov01_020f6e00
_0211b396:
ldr r0, [r5, #8]
ldr r0, [r0, #8]
cmp r0, #9
beq _0211b3a2
cmp r0, #0xa
bne _0211b3a6
_0211b3a2:
mov r3, #2
b _0211b3a8
_0211b3a6:
mov r3, #1
_0211b3a8:
add r0, r5, #0
add r0, #0x18
add r1, r4, #0
ldr r4, [r0]
mov r2, #1
ldr r4, [r4, #0xc]
blx r4
mov r0, #0x1e
lsl r0, r0, #4
ldrb r1, [r5, r0]
ldr r0, _0211b3e0 ; =data_027e0d54
ldrh r0, [r0, #0x16]
cmp r1, r0
beq _0211b3cc
add r0, r5, #0
add r0, #0x18
blx func_ov01_020f5fb4
_0211b3cc:
ldr r0, _0211b3e0 ; =data_027e0d54
ldrh r1, [r0, #0x16]
mov r0, #0x1e
lsl r0, r0, #4
strb r1, [r5, r0]
add r0, r5, #0
add r1, r7, #0
blx func_ov10_02112f48
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
thumb_func_end func_ov10_0211b354
_0211b3e0: .word data_027e0d54
_0211b3e4: .word 0x00003404
_0211b3e8: .word 0x00002804
.global func_ov10_0211b3ec
thumb_func_start func_ov10_0211b3ec
func_ov10_0211b3ec: ; 0x0211b3ec
push {r3, lr}
add r0, #0x18
ldr r1, [r0]
ldr r1, [r1, #0x10]
blx r1
pop {r3, pc}
thumb_func_end func_ov10_0211b3ec
.global func_ov10_0211b3f8
thumb_func_start func_ov10_0211b3f8
func_ov10_0211b3f8: ; 0x0211b3f8
push {r3, r4, r5, lr}
add r4, r0, #0
ldr r0, [r4, #0x14]
add r0, r0, #1
str r0, [r4, #0x14]
bpl _0211b408
mov r0, #0
str r0, [r4, #0x14]
_0211b408:
add r0, r4, #0
add r0, #0x18
ldr r1, [r0]
ldr r1, [r1, #8]
blx r1
cmp r0, #4
bhi _0211b4a8
add r0, r0, r0
add r0, pc
ldrh r0, [r0, #6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_0211b422: ; jump table
.short _0211b4a8 - _0211b422 - 2 ; case 0
.short _0211b42c - _0211b422 - 2 ; case 1
.short _0211b43a - _0211b422 - 2 ; case 2
.short _0211b448 - _0211b422 - 2 ; case 3
.short _0211b47a - _0211b422 - 2 ; case 4
_0211b42c:
ldr r0, [r4, #8]
mov r1, #4
add r0, #0x10
mov r2, #1
blx func_ov10_0211c784
pop {r3, r4, r5, pc}
_0211b43a:
ldr r0, [r4, #8]
mov r1, #9
add r0, #0x10
mov r2, #0
blx func_ov10_0211c784
pop {r3, r4, r5, pc}
_0211b448:
ldr r5, [r4, #8]
mov r0, #0
add r1, r5, #0
add r1, #0x58
mov r2, #0x10
blx func_020078f4
mov r0, #0
mvn r0, r0
add r5, #0x64
strb r0, [r5]
ldr r0, [r4, #8]
ldr r0, [r0, #0x54]
blx func_ov01_020f53b0
ldr r1, [r4, #8]
mov r2, #0
add r1, #0x64
strb r0, [r1]
ldr r0, [r4, #8]
mov r1, #7
add r0, #0x10
blx func_ov10_0211c784
pop {r3, r4, r5, pc}
_0211b47a:
ldr r5, [r4, #8]
mov r0, #0
add r1, r5, #0
add r1, #0x58
mov r2, #0x10
blx func_020078f4
mov r0, #0
mvn r0, r0
add r5, #0x64
strb r0, [r5]
mov r0, #0x6f
lsl r0, r0, #2
ldrsh r1, [r4, r0]
ldr r0, [r4, #8]
mov r2, #0
add r0, #0x64
strb r1, [r0]
ldr r0, [r4, #8]
mov r1, #0xa
add r0, #0x10
blx func_ov10_0211c784
_0211b4a8:
pop {r3, r4, r5, pc}
.align 2, 0
thumb_func_end func_ov10_0211b3f8
.global func_ov10_0211b4ac
thumb_func_start func_ov10_0211b4ac
func_ov10_0211b4ac: ; 0x0211b4ac
push {r3, lr}
add r0, #0x18
ldr r1, [r0]
ldr r1, [r1, #0x14]
blx r1
pop {r3, pc}
thumb_func_end func_ov10_0211b4ac
.global func_ov10_0211b4b8
arm_func_start func_ov10_0211b4b8
func_ov10_0211b4b8: ; 0x0211b4b8
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x18
bl func_ov01_020f5c88
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211b4b8
.global func_ov10_0211b4e0
arm_func_start func_ov10_0211b4e0
func_ov10_0211b4e0: ; 0x0211b4e0
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x18
bl func_ov01_020f5c88
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211b4e0
.global func_ov10_0211b500
thumb_func_start func_ov10_0211b500
func_ov10_0211b500: ; 0x0211b500
push {r4, lr}
sub sp, #0x10
mov r2, #3
mov r3, #0
add r4, r0, #0
bl func_ov10_02112f18
ldr r0, _0211b544 ; =data_ov10_0211f06c
ldr r3, _0211b548 ; =func_ov10_02113e70
str r0, [r4]
ldr r0, _0211b54c ; =func_ov10_02113e6c
mov r1, #1
str r0, [sp]
add r0, r4, #0
add r0, #0x18
mov r2, #0x18
blx func_0204f614
mov r1, #0x79
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r3, #0
add r0, r4, #0
str r3, [sp, #8]
add r0, #0x18
add r1, #0x8e
mov r2, #2
str r3, [sp, #0xc]
blx func_ov00_020cfed0
add r0, r4, #0
add sp, #0x10
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_0211b500
_0211b544: .word data_ov10_0211f06c
_0211b548: .word func_ov10_02113e70 - 1
_0211b54c: .word func_ov10_02113e6c - 1
.global func_ov10_0211b550
thumb_func_start func_ov10_0211b550
func_ov10_0211b550: ; 0x0211b550
push {r4, r5, r6, r7, lr}
sub sp, #0x10c
add r7, r0, #0
str r1, [sp, #8]
mov r1, #1
add r0, #0x25
strb r1, [r0]
blx func_020329b0
ldr r1, _0211b644 ; =0x00000107
blx func_02032bd8
ldr r6, _0211b644 ; =0x00000107
mov r5, #0
_0211b56c:
cmp r5, #0
beq _0211b576
cmp r5, #1
beq _0211b58e
b _0211b5a4
_0211b576:
blx func_020329b0
mov r1, #0x10
str r1, [sp]
mov r1, #1
str r1, [sp, #4]
add r1, r6, #0
add r2, r5, #0
mov r3, #0xf0
blx func_02032a74
b _0211b5a4
_0211b58e:
blx func_020329b0
mov r1, #0x10
str r1, [sp]
mov r1, #1
str r1, [sp, #4]
add r1, r6, #0
add r2, r5, #0
mov r3, #0xa0
blx func_02032a74
_0211b5a4:
blx func_020329b0
add r1, r6, #0
add r2, r5, #0
blx func_02032a20
mov r2, #0
mov r1, #1
add r3, r2, #0
add r4, r0, #0
blx func_02032714
ldr r0, _0211b648 ; =data_02068e7c
cmp r5, #0
str r0, [r4, #0x2c]
ldr r0, [r7, #8]
ldr r3, [r0, #0x54]
beq _0211b5ce
cmp r5, #1
beq _0211b60a
b _0211b630
_0211b5ce:
add r1, r4, #0
add r1, #0x4e
mov r0, #1
strb r0, [r1]
add r1, r4, #0
add r1, #0x4f
mov r0, #0x14
strb r0, [r1]
add r0, r3, #0
bl func_ov00_02077998
add r2, r0, #0
add r3, r1, #0
add r1, r2, #0
add r2, r3, #0
add r0, sp, #0xc
mov r3, #0xc
blx func_ov00_020d17a0
mov r0, #0
mvn r0, r0
str r0, [sp]
add r0, r4, #0
ldr r4, [r0]
mov r1, #0
ldr r4, [r4, #8]
add r2, r1, #0
add r3, sp, #0xc
blx r4
b _0211b630
_0211b60a:
add r1, r4, #0
add r1, #0x4e
mov r0, #1
strb r0, [r1]
add r1, r4, #0
add r1, #0x4f
mov r0, #0x14
strb r0, [r1]
sub r0, #0x15
str r0, [sp]
add r0, r4, #0
mov r4, #0x12
lsl r4, r4, #6
add r3, r3, r4
ldr r4, [r0]
mov r1, #0
ldr r4, [r4, #8]
add r2, r1, #0
blx r4
_0211b630:
add r5, r5, #1
cmp r5, #2
blt _0211b56c
ldr r1, [sp, #8]
add r0, r7, #0
blx func_ov10_02112f48
add sp, #0x10c
pop {r4, r5, r6, r7, pc}
nop
thumb_func_end func_ov10_0211b550
_0211b644: .word 0x00000107
_0211b648: .word data_02068e7c
.global func_ov10_0211b64c
thumb_func_start func_ov10_0211b64c
func_ov10_0211b64c: ; 0x0211b64c
push {r3, lr}
blx func_020329b0
ldr r1, _0211b65c ; =0x00000107
blx func_02032c10
pop {r3, pc}
nop
thumb_func_end func_ov10_0211b64c
_0211b65c: .word 0x00000107
.global func_ov10_0211b660
thumb_func_start func_ov10_0211b660
func_ov10_0211b660: ; 0x0211b660
mov r2, #0
str r2, [r0, #0x14]
str r1, [r0, #0x10]
bx lr
thumb_func_end func_ov10_0211b660
.global func_ov10_0211b668
thumb_func_start func_ov10_0211b668
func_ov10_0211b668: ; 0x0211b668
push {r4, lr}
add r4, r0, #0
ldr r0, [r4, #0x14]
add r0, r0, #1
str r0, [r4, #0x14]
bpl _0211b678
mov r0, #0
str r0, [r4, #0x14]
_0211b678:
ldr r0, [r4, #0x10]
cmp r0, #0
beq _0211b6ac
cmp r0, #1
beq _0211b688
cmp r0, #2
beq _0211b6bc
pop {r4, pc}
_0211b688:
ldr r0, _0211b6d0 ; =data_027e05f8
ldrh r1, [r0, #2]
mov r0, #2
tst r0, r1
beq _0211b6a4
ldr r0, _0211b6d4 ; =data_ov00_020eec9c
mov r1, #0x11
blx func_ov00_020d77e4
add r0, r4, #0
mov r1, #2
bl func_ov10_0211b660
pop {r4, pc}
_0211b6a4:
add r0, r4, #0
bl func_ov10_0211b6d8
pop {r4, pc}
_0211b6ac:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ble _0211b6ce
add r0, r4, #0
mov r1, #1
bl func_ov10_0211b660
pop {r4, pc}
_0211b6bc:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ble _0211b6ce
ldr r0, [r4, #8]
mov r1, #8
add r0, #0x10
mov r2, #0
blx func_ov10_0211c784
_0211b6ce:
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_0211b668
_0211b6d0: .word data_027e05f8
_0211b6d4: .word data_ov00_020eec9c
.global func_ov10_0211b6d8
thumb_func_start func_ov10_0211b6d8
func_ov10_0211b6d8: ; 0x0211b6d8
push {r3, r4, r5, r6, r7, lr}
sub sp, #8
add r4, r0, #0
str r0, [sp]
mov r7, #0
add r6, r0, #0
add r4, #0x18
_0211b6e6:
ldrh r0, [r6, #0x22]
mov r1, #0
add r2, r1, #0
str r0, [sp, #4]
add r0, r4, #0
ldr r5, [r0]
add r3, r1, #0
ldr r5, [r5]
blx r5
add r2, r0, #0
ldr r0, [sp]
ldr r1, [sp, #4]
bl func_ov10_0211b71c
cmp r0, #0
beq _0211b70c
add sp, #8
mov r0, #1
pop {r3, r4, r5, r6, r7, pc}
_0211b70c:
add r7, r7, #1
add r6, #0x18
add r4, #0x18
cmp r7, #1
blt _0211b6e6
mov r0, #0
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end func_ov10_0211b6d8
.global func_ov10_0211b71c
thumb_func_start func_ov10_0211b71c
func_ov10_0211b71c: ; 0x0211b71c
push {r4, lr}
add r4, r0, #0
mov r0, #8
tst r0, r2
bne _0211b72a
mov r0, #0
pop {r4, pc}
_0211b72a:
cmp r1, #0x79
bne _0211b73e
ldr r0, _0211b744 ; =data_ov00_020eec9c
mov r1, #0x11
blx func_ov00_020d77e4
add r0, r4, #0
mov r1, #2
bl func_ov10_0211b660
_0211b73e:
mov r0, #0
pop {r4, pc}
nop
thumb_func_end func_ov10_0211b71c
_0211b744: .word data_ov00_020eec9c
.global func_ov10_0211b748
thumb_func_start func_ov10_0211b748
func_ov10_0211b748: ; 0x0211b748
push {r4, r5, r6, r7, lr}
sub sp, #0x3c
str r0, [sp, #4]
ldr r0, [r0, #0x14]
mov r1, #0xf
lsl r0, r0, #0xc
lsl r1, r1, #0xc
blx func_01ff98e0
str r0, [sp, #0x10]
add r0, sp, #0x1c
mov r4, #0
blx func_01ffbe34
mov r1, #1
add r0, sp, #0x1c
strb r1, [r0, #0xa]
mov r1, #3
ldr r0, [sp, #0x10]
lsl r1, r1, #0xa
sub r0, r0, r1
str r0, [sp, #0x14]
ldr r0, [sp, #4]
ldr r7, _0211b858 ; =0x00000107
str r0, [sp, #0x18]
add r0, #0x18
add r5, r4, #0
str r0, [sp, #0x18]
add r6, sp, #0x1c
_0211b782:
ldr r2, [sp, #0x10]
cmp r5, #2
bne _0211b78a
ldr r2, [sp, #0x14]
_0211b78a:
ldr r0, [sp, #4]
ldr r0, [r0, #0x10]
cmp r0, #0
beq _0211b798
cmp r0, #2
beq _0211b7a6
b _0211b7b2
_0211b798:
mov r0, #1
lsl r0, r0, #0xc
mov r1, #0
blx func_ov00_020d03f8
add r4, r0, #0
b _0211b7b2
_0211b7a6:
mov r1, #1
mov r0, #0
lsl r1, r1, #0xc
blx func_ov00_020d03f8
add r4, r0, #0
_0211b7b2:
cmp r5, #0
beq _0211b7c0
cmp r5, #1
beq _0211b7fa
cmp r5, #2
beq _0211b832
b _0211b84e
_0211b7c0:
neg r1, r4
mov r0, #0x4b
add r2, r1, #0
lsl r0, r0, #2
mul r2, r0
mov r0, #2
lsl r0, r0, #0xa
add r0, r2, r0
asr r0, r0, #0xc
str r0, [sp, #0xc]
ldr r2, [sp, #0xc]
add r0, r7, #0
mov r1, #1
mov r3, #0
str r6, [sp]
blx func_0203493c
blx func_020329b0
add r1, r7, #0
mov r2, #1
blx func_02032a20
ldr r1, [sp, #0xc]
mov r2, #0
add r3, r6, #0
blx func_02032788
b _0211b84e
_0211b7fa:
mov r0, #0x4b
lsl r0, r0, #2
add r1, r4, #0
mul r1, r0
mov r0, #2
lsl r0, r0, #0xa
add r0, r1, r0
asr r0, r0, #0xc
str r0, [sp, #8]
mov r1, #0
ldr r2, [sp, #8]
add r0, r7, #0
add r3, r1, #0
str r6, [sp]
blx func_0203493c
blx func_020329b0
add r1, r7, #0
mov r2, #0
blx func_02032a20
ldr r1, [sp, #8]
mov r2, #0
add r3, r6, #0
blx func_02032788
b _0211b84e
_0211b832:
neg r1, r4
mov r2, #0x64
mul r2, r1
mov r1, #2
mov r0, #0
lsl r1, r1, #0xa
add r1, r2, r1
str r0, [sp]
ldr r0, [sp, #0x18]
asr r1, r1, #0xc
mov r2, #0
add r3, r6, #0
blx func_ov00_020d00c4
_0211b84e:
add r5, r5, #1
cmp r5, #3
blt _0211b782
add sp, #0x3c
pop {r4, r5, r6, r7, pc}
.align 2, 0
thumb_func_end func_ov10_0211b748
_0211b858: .word 0x00000107
.global func_ov10_0211b85c
arm_func_start func_ov10_0211b85c
func_ov10_0211b85c: ; 0x0211b85c
stmdb sp!, {r4, lr}
mov r4, r0
ldr r3, _0211b890 ; =func_ov10_02113e6c
add r0, r4, #0x18
mov r1, #1
mov r2, #0x18
bl func_0204f754
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_0211b85c
_0211b890: .word func_ov10_02113e6c - 1
.global func_ov10_0211b894
arm_func_start func_ov10_0211b894
func_ov10_0211b894: ; 0x0211b894
stmdb sp!, {r4, lr}
mov r4, r0
ldr r3, _0211b8c0 ; =func_ov10_02113e6c
add r0, r4, #0x18
mov r1, #1
mov r2, #0x18
bl func_0204f754
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_0211b894
_0211b8c0: .word func_ov10_02113e6c - 1
.global func_ov10_0211b8c4
thumb_func_start func_ov10_0211b8c4
func_ov10_0211b8c4: ; 0x0211b8c4
push {r3, r4, r5, lr}
add r5, r0, #0
add r4, r1, #0
blx func_020386d8
ldr r0, _0211b8d8 ; =data_ov10_0211f108
str r0, [r5]
str r4, [r5, #0x14]
add r0, r5, #0
pop {r3, r4, r5, pc}
.align 2, 0
thumb_func_end func_ov10_0211b8c4
_0211b8d8: .word data_ov10_0211f108
.global func_ov10_0211b8dc
thumb_func_start func_ov10_0211b8dc
func_ov10_0211b8dc: ; 0x0211b8dc
push {r3, lr}
ldrb r2, [r1, #1]
cmp r2, #0x1e
bne _0211b8f4
ldr r1, [r1, #4]
cmp r1, #3
bne _0211b8f4
ldr r0, [r0, #0x14]
bl func_ov10_0211c684
mov r0, #1
pop {r3, pc}
_0211b8f4:
mov r0, #1
pop {r3, pc}
thumb_func_end func_ov10_0211b8dc
.global func_ov10_0211b8f8
thumb_func_start func_ov10_0211b8f8
func_ov10_0211b8f8: ; 0x0211b8f8
push {r4, lr}
sub sp, #0x10
mov r2, #0x11
mov r3, #0
add r4, r0, #0
bl func_ov10_02112f18
ldr r0, _0211b9ec ; =data_ov10_0211f0e4
ldr r3, _0211b9f0 ; =func_ov10_02113e70
str r0, [r4]
mov r0, #0
str r0, [r4, #0x18]
ldr r0, _0211b9f4 ; =func_ov10_02113e6c
mov r1, #5
str r0, [sp]
add r0, r4, #0
add r0, #0x1c
mov r2, #0x18
blx func_0204f614
add r0, r4, #0
add r0, #0x94
add r1, r4, #0
bl func_ov10_0211b8c4
add r0, r4, #0
mov r3, #0
add r0, #0xd0
strb r3, [r0]
add r0, r4, #0
mov r2, #1
add r0, #0xd1
strb r2, [r0]
add r0, r4, #0
add r0, #0xd2
strb r3, [r0]
mov r1, #0x7a
str r1, [sp]
str r2, [sp, #4]
str r3, [sp, #8]
add r0, r4, #0
mov r2, #5
str r3, [sp, #0xc]
add r0, #0x1c
add r1, #0x8e
add r3, r2, #0
blx func_ov00_020cfed0
mov r1, #0x7b
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
mov r2, #3
add r0, #0x34
add r1, #0x8d
add r3, r2, #0
blx func_ov00_020cfed0
add r0, r4, #0
mov r2, #4
mov r1, #8
add r0, #0x47
strb r1, [r0]
mov r1, #0x7c
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x4c
add r1, #0x8c
add r3, r2, #0
blx func_ov00_020cfed0
add r0, r4, #0
mov r2, #0
mov r1, #9
add r0, #0x5f
strb r1, [r0]
mov r1, #0x7e
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
add r0, r4, #0
str r2, [sp, #8]
add r0, #0x64
add r1, #0x8a
add r3, r2, #0
str r2, [sp, #0xc]
blx func_ov00_020cfed0
add r0, r4, #0
mov r1, #6
add r0, #0x77
strb r1, [r0]
mov r1, #0x7d
str r1, [sp]
mov r2, #1
str r2, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r4, #0
add r0, #0x7c
add r1, #0x8b
add r3, r2, #0
blx func_ov00_020cfed0
add r0, r4, #0
mov r1, #7
add r0, #0x8f
strb r1, [r0]
add r0, r4, #0
add sp, #0x10
pop {r4, pc}
nop
thumb_func_end func_ov10_0211b8f8
_0211b9ec: .word data_ov10_0211f0e4
_0211b9f0: .word func_ov10_02113e70 - 1
_0211b9f4: .word func_ov10_02113e6c - 1
.global func_ov10_0211b9f8
thumb_func_start func_ov10_0211b9f8
func_ov10_0211b9f8: ; 0x0211b9f8
push {r4, lr}
add r4, r0, #0
blx func_0203780c
add r0, r4, #0
pop {r4, pc}
thumb_func_end func_ov10_0211b9f8
.global func_ov10_0211ba04
thumb_func_start func_ov10_0211ba04
func_ov10_0211ba04: ; 0x0211ba04
push {r3, r4, r5, r6, r7, lr}
sub sp, #0x120
add r7, r0, #0
str r1, [sp, #0x10]
mov r2, #0
add r3, r7, #0
mov r1, #1
_0211ba12:
add r0, r3, #0
add r0, #0x29
add r2, r2, #1
add r3, #0x18
strb r1, [r0]
cmp r2, #5
blt _0211ba12
add r0, r7, #0
mov r1, #0
add r0, #0xd0
strb r1, [r0]
ldr r0, [r7, #8]
mov r1, #0x64
ldrsb r5, [r0, r1]
add r1, r5, #0
bl func_ov10_02113a4c
add r1, r7, #0
add r1, #0xd1
strb r0, [r1]
add r0, r7, #0
add r0, #0xd1
ldrb r0, [r0]
cmp r0, #0
beq _0211ba48
mov r1, #1
b _0211ba4a
_0211ba48:
mov r1, #2
_0211ba4a:
add r0, r7, #0
add r0, #0xd2
strb r1, [r0]
ldr r0, [sp, #0x10]
cmp r0, #0
bgt _0211ba5a
beq _0211ba6e
b _0211ba78
_0211ba5a:
cmp r0, #0x10
bgt _0211ba78
cmp r0, #0xd
blt _0211ba78
beq _0211ba74
cmp r0, #0xe
beq _0211ba6e
cmp r0, #0x10
beq _0211ba74
b _0211ba78
_0211ba6e:
mov r0, #0
str r0, [r7, #0x18]
b _0211ba78
_0211ba74:
mov r0, #1
str r0, [r7, #0x18]
_0211ba78:
blx func_020329b0
mov r1, #0x42
lsl r1, r1, #2
blx func_02032bd8
mov r0, #0xc
mul r0, r5
str r0, [sp, #0x18]
mov r0, #0x16
mov r4, #0
mul r0, r5
add r6, r4, #0
str r0, [sp, #0x14]
_0211ba94:
cmp r6, #0
beq _0211ba9e
cmp r6, #1
beq _0211bac8
b _0211baf8
_0211ba9e:
blx func_020329b0
mov r1, #0x10
str r1, [sp]
mov r1, #1
str r1, [sp, #4]
mov r1, #0x42
lsl r1, r1, #2
add r2, r6, #0
mov r3, #0xf0
blx func_02032a74
blx func_020329b0
mov r1, #0x42
lsl r1, r1, #2
add r2, r6, #0
blx func_02032a20
add r4, r0, #0
b _0211baf8
_0211bac8:
blx func_020329b0
mov r1, #0x10
str r1, [sp]
mov r1, #1
add r2, r7, #0
str r1, [sp, #4]
add r2, #0xd2
mov r1, #0x42
ldrb r2, [r2]
lsl r1, r1, #2
mov r3, #0xa0
blx func_02032a74
blx func_020329b0
add r2, r7, #0
add r2, #0xd2
mov r1, #0x42
ldrb r2, [r2]
lsl r1, r1, #2
blx func_02032a20
add r4, r0, #0
_0211baf8:
mov r0, #0x12
mov r2, #0
mov r1, #0
lsl r0, r0, #4
strb r1, [r4, r0]
add r0, r4, #0
mov r1, #1
add r3, r2, #0
blx func_02032714
ldr r0, [r7, #8]
cmp r6, #0
ldr r5, [r0, #0x54]
beq _0211bb1a
cmp r6, #1
beq _0211bb60
b _0211bb8e
_0211bb1a:
ldr r0, _0211bbe4 ; =data_02068e7c
add r1, r4, #0
str r0, [r4, #0x2c]
add r1, #0x4e
mov r0, #1
strb r0, [r1]
add r1, r4, #0
add r1, #0x4f
mov r0, #0x14
strb r0, [r1]
ldr r0, [sp, #0x18]
add r5, #0x40
add r0, r5, r0
bl func_ov00_0207792c
add r3, r0, #0
add r2, r1, #0
add r1, r3, #0
add r0, sp, #0x20
mov r3, #0xc
blx func_ov00_020d17a0
mov r0, #0
mvn r0, r0
str r0, [sp]
add r0, r4, #0
ldr r5, [r0]
mov r1, #0
str r5, [sp, #0x1c]
ldr r5, [r5, #8]
add r2, r1, #0
add r3, sp, #0x20
str r5, [sp, #0x1c]
blx r5
b _0211bb8e
_0211bb60:
ldr r0, _0211bbe4 ; =data_02068e7c
add r1, r4, #0
str r0, [r4, #0x2c]
mov r3, #7
lsl r3, r3, #6
add r5, r5, r3
ldr r3, [sp, #0x14]
add r1, #0x4e
mov r0, #1
strb r0, [r1]
add r1, r4, #0
add r1, #0x4f
mov r0, #0x14
strb r0, [r1]
sub r0, #0x15
str r0, [sp]
mov r1, #0
add r0, r4, #0
add r3, r5, r3
ldr r5, [r0]
add r2, r1, #0
ldr r5, [r5, #8]
blx r5
_0211bb8e:
add r6, r6, #1
cmp r6, #2
bge _0211bb96
b _0211ba94
_0211bb96:
add r0, r7, #0
add r0, #0xd1
ldrb r0, [r0]
cmp r0, #0
beq _0211bba4
mov r3, #1
b _0211bba6
_0211bba4:
mov r3, #2
_0211bba6:
cmp r0, #0
beq _0211bbae
mov r2, #1
b _0211bbb0
_0211bbae:
mov r2, #2
_0211bbb0:
mov r1, #0x7d
str r1, [sp]
mov r0, #1
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r7, #0
lsl r2, r2, #0x18
lsl r3, r3, #0x18
add r0, #0x7c
add r1, #0x8b
asr r2, r2, #0x18
lsr r3, r3, #0x18
blx func_ov00_020cfed0
add r0, r7, #0
mov r1, #7
add r0, #0x8f
strb r1, [r0]
ldr r1, [sp, #0x10]
add r0, r7, #0
blx func_ov10_02112f48
add sp, #0x120
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
thumb_func_end func_ov10_0211ba04
_0211bbe4: .word data_02068e7c
.global func_ov10_0211bbe8
thumb_func_start func_ov10_0211bbe8
func_ov10_0211bbe8: ; 0x0211bbe8
push {r3, lr}
blx func_020329b0
mov r1, #0x42
lsl r1, r1, #2
blx func_02032c10
pop {r3, pc}
thumb_func_end func_ov10_0211bbe8
.global func_ov10_0211bbf8
thumb_func_start func_ov10_0211bbf8
func_ov10_0211bbf8: ; 0x0211bbf8
push {r3, r4, r5, lr}
add r5, r0, #0
ldr r0, [r5, #0x10]
add r4, r1, #0
cmp r0, #4
bne _0211bc0a
ldr r0, [r5, #8]
bl func_ov10_02113da4
_0211bc0a:
cmp r4, #4
beq _0211bc28
cmp r4, #0xb
beq _0211bc16
cmp r4, #0xc
bne _0211bc30
_0211bc16:
ldr r0, [r5, #8]
mov r1, #0x64
ldrsb r1, [r0, r1]
bl func_ov10_021139bc
ldr r0, [r5, #8]
bl func_ov10_02113a58
b _0211bc30
_0211bc28:
ldr r0, [r5, #8]
ldr r1, _0211bc38 ; =0x00130022
bl func_ov10_02113d70
_0211bc30:
mov r0, #0
str r0, [r5, #0x14]
str r4, [r5, #0x10]
pop {r3, r4, r5, pc}
.align 2, 0
thumb_func_end func_ov10_0211bbf8
_0211bc38: .word 0x00130022
.global func_ov10_0211bc3c
thumb_func_start func_ov10_0211bc3c
func_ov10_0211bc3c: ; 0x0211bc3c
push {r4, lr}
add r4, r0, #0
mov r2, #0
add r3, r4, #0
mov r1, #1
_0211bc46:
add r0, r3, #0
add r0, #0x29
add r2, r2, #1
add r3, #0x18
strb r1, [r0]
cmp r2, #5
blt _0211bc46
ldr r0, _0211bc7c ; =data_ov00_020eec9c
mov r1, #0x11
blx func_ov00_020d77e4
ldr r0, [r4, #0x18]
cmp r0, #0
bne _0211bc6c
add r0, r4, #0
mov r1, #9
bl func_ov10_0211bbf8
pop {r4, pc}
_0211bc6c:
add r0, r4, #0
mov r1, #5
bl func_ov10_0211bbf8
mov r0, #0
str r0, [r4, #0x18]
pop {r4, pc}
nop
thumb_func_end func_ov10_0211bc3c
_0211bc7c: .word data_ov00_020eec9c
.global func_ov10_0211bc80
thumb_func_start func_ov10_0211bc80
func_ov10_0211bc80: ; 0x0211bc80
push {r4, lr}
add r4, r0, #0
ldr r0, [r4, #0x14]
add r0, r0, #1
str r0, [r4, #0x14]
bpl _0211bc90
mov r0, #0
str r0, [r4, #0x14]
_0211bc90:
ldr r0, [r4, #0x10]
cmp r0, #0x10
bhi _0211bd04
add r0, r0, r0
add r0, pc
ldrh r0, [r0, #6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_0211bca2: ; jump table
.short _0211bcde - _0211bca2 - 2 ; case 0
.short _0211bcc4 - _0211bca2 - 2 ; case 1
.short _0211bcee - _0211bca2 - 2 ; case 2
.short _0211bcfe - _0211bca2 - 2 ; case 3
.short _0211bcc4 - _0211bca2 - 2 ; case 4
.short _0211bd10 - _0211bca2 - 2 ; case 5
.short _0211bd20 - _0211bca2 - 2 ; case 6
.short _0211bd30 - _0211bca2 - 2 ; case 7
.short _0211bd58 - _0211bca2 - 2 ; case 8
.short _0211be04 - _0211bca2 - 2 ; case 9
.short _0211bd7c - _0211bca2 - 2 ; case 10
.short _0211bd98 - _0211bca2 - 2 ; case 11
.short _0211bd98 - _0211bca2 - 2 ; case 12
.short _0211bdac - _0211bca2 - 2 ; case 13
.short _0211bdac - _0211bca2 - 2 ; case 14
.short _0211bdd2 - _0211bca2 - 2 ; case 15
.short _0211bdec - _0211bca2 - 2 ; case 16
_0211bcc4:
ldr r0, _0211be18 ; =data_027e05f8
ldrh r1, [r0, #2]
mov r0, #2
tst r0, r1
beq _0211bcd6
add r0, r4, #0
bl func_ov10_0211bc3c
pop {r4, pc}
_0211bcd6:
add r0, r4, #0
bl func_ov10_0211be28
pop {r4, pc}
_0211bcde:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ble _0211bd04
add r0, r4, #0
mov r1, #1
bl func_ov10_0211bbf8
pop {r4, pc}
_0211bcee:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ble _0211bd04
add r0, r4, #0
mov r1, #3
bl func_ov10_0211bbf8
pop {r4, pc}
_0211bcfe:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
bgt _0211bd06
_0211bd04:
b _0211be16
_0211bd06:
add r0, r4, #0
mov r1, #4
bl func_ov10_0211bbf8
pop {r4, pc}
_0211bd10:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ble _0211be16
add r0, r4, #0
mov r1, #6
bl func_ov10_0211bbf8
pop {r4, pc}
_0211bd20:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ble _0211be16
add r0, r4, #0
mov r1, #1
bl func_ov10_0211bbf8
pop {r4, pc}
_0211bd30:
add r0, r4, #0
add r0, #0xac
ldr r1, [r0]
ldr r0, _0211be1c ; =0xffff0000
and r1, r0
mov r0, #1
lsl r0, r0, #0x18
cmp r1, r0
beq _0211bd4e
add r4, #0x94
ldr r0, _0211be20 ; =data_027e0c68
add r1, r4, #0
blx func_02036888
pop {r4, pc}
_0211bd4e:
add r0, r4, #0
mov r1, #8
bl func_ov10_0211bbf8
pop {r4, pc}
_0211bd58:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ble _0211be16
add r0, r4, #0
add r0, #0xd0
ldrb r0, [r0]
cmp r0, #1
bne _0211bd72
add r0, r4, #0
mov r1, #9
bl func_ov10_0211bbf8
pop {r4, pc}
_0211bd72:
add r0, r4, #0
mov r1, #1
bl func_ov10_0211bbf8
pop {r4, pc}
_0211bd7c:
ldr r0, _0211be24 ; =data_027e0d54
ldrb r0, [r0, #0xd]
cmp r0, #0
bne _0211bd88
mov r0, #1
b _0211bd8a
_0211bd88:
mov r0, #0
_0211bd8a:
cmp r0, #0
beq _0211be16
add r0, r4, #0
mov r1, #8
bl func_ov10_0211bbf8
pop {r4, pc}
_0211bd98:
ldr r0, [r4, #8]
ldr r1, [r0, #0x68]
cmp r1, #0
bne _0211be16
add r0, #0x10
mov r1, #5
mov r2, #2
blx func_ov10_0211c784
pop {r4, pc}
_0211bdac:
ldr r0, [r4, #8]
ldr r0, [r0, #0x68]
cmp r0, #1
bne _0211be16
add r0, r4, #0
add r0, #0xd1
ldrb r0, [r0]
cmp r0, #0
beq _0211bdc8
add r0, r4, #0
mov r1, #4
bl func_ov10_0211bbf8
pop {r4, pc}
_0211bdc8:
add r0, r4, #0
mov r1, #1
bl func_ov10_0211bbf8
pop {r4, pc}
_0211bdd2:
ldr r0, [r4, #8]
ldr r1, [r0, #0x68]
cmp r1, #0
bne _0211be16
add r0, #0x10
mov r1, #7
mov r2, #0
blx func_ov10_0211c784
ldr r0, [r4, #8]
bl func_ov10_02113a90
pop {r4, pc}
_0211bdec:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ble _0211be16
ldr r0, [r4, #8]
ldr r0, [r0, #0x68]
cmp r0, #1
bne _0211be16
add r0, r4, #0
mov r1, #4
bl func_ov10_0211bbf8
pop {r4, pc}
_0211be04:
ldr r0, [r4, #0x14]
cmp r0, #0x1e
ble _0211be16
ldr r0, [r4, #8]
mov r1, #8
add r0, #0x10
mov r2, #0
blx func_ov10_0211c784
_0211be16:
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_0211bc80
_0211be18: .word data_027e05f8
_0211be1c: .word 0xffff0000
_0211be20: .word data_027e0c68
_0211be24: .word data_027e0d54
.global func_ov10_0211be28
thumb_func_start func_ov10_0211be28
func_ov10_0211be28: ; 0x0211be28
push {r4, r5, r6, r7, lr}
sub sp, #0xc
add r6, r0, #0
ldr r1, [r6, #8]
mov r0, #0x64
ldrsb r1, [r1, r0]
mov r0, #0x16
add r7, r6, #0
mul r0, r1
mov r5, #0
str r6, [sp, #8]
add r7, #0x1c
str r0, [sp]
_0211be42:
ldr r0, [r6, #0x18]
cmp r0, #0
bne _0211be8c
cmp r5, #4
bhi _0211be94
add r0, r5, r5
add r0, pc
ldrh r0, [r0, #6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_0211be58: ; jump table
.short _0211be94 - _0211be58 - 2 ; case 0
.short _0211be62 - _0211be58 - 2 ; case 1
.short _0211be76 - _0211be58 - 2 ; case 2
.short _0211bebc - _0211be58 - 2 ; case 3
.short _0211bebc - _0211be58 - 2 ; case 4
_0211be62:
ldr r0, [r6, #8]
ldr r1, [r0, #0x54]
ldr r0, [sp]
add r1, r1, r0
mov r0, #0x75
lsl r0, r0, #2
ldrh r0, [r1, r0]
lsl r0, r0, #0x14
lsr r0, r0, #0x1f
bne _0211bebc
_0211be76:
ldr r0, [r6, #8]
ldr r1, [r0, #0x54]
ldr r0, [sp]
add r1, r1, r0
mov r0, #0x75
lsl r0, r0, #2
ldrh r0, [r1, r0]
lsl r0, r0, #0x14
lsr r0, r0, #0x1f
beq _0211be94
b _0211bebc
_0211be8c:
cmp r5, #1
beq _0211bebc
cmp r5, #2
beq _0211bebc
_0211be94:
ldr r0, [sp, #8]
mov r1, #0
ldrh r0, [r0, #0x26]
add r2, r1, #0
add r3, r1, #0
str r0, [sp, #4]
add r0, r7, #0
ldr r4, [r0]
ldr r4, [r4]
blx r4
add r2, r0, #0
ldr r1, [sp, #4]
add r0, r6, #0
bl func_ov10_0211bed0
cmp r0, #0
beq _0211bebc
add sp, #0xc
mov r0, #1
pop {r4, r5, r6, r7, pc}
_0211bebc:
ldr r0, [sp, #8]
add r5, r5, #1
add r0, #0x18
add r7, #0x18
str r0, [sp, #8]
cmp r5, #5
blt _0211be42
mov r0, #0
add sp, #0xc
pop {r4, r5, r6, r7, pc}
thumb_func_end func_ov10_0211be28
.global func_ov10_0211bed0
thumb_func_start func_ov10_0211bed0
func_ov10_0211bed0: ; 0x0211bed0
push {r4, lr}
mov r3, #8
add r4, r0, #0
tst r2, r3
bne _0211bede
mov r0, #0
pop {r4, pc}
_0211bede:
sub r1, #0x7a
cmp r1, #4
bhi _0211bf78
add r1, r1, r1
add r1, pc
ldrh r1, [r1, #6]
lsl r1, r1, #0x10
asr r1, r1, #0x10
add pc, r1
_0211bef0: ; jump table
.short _0211befa - _0211bef0 - 2 ; case 0
.short _0211bf16 - _0211bef0 - 2 ; case 1
.short _0211bf00 - _0211bef0 - 2 ; case 2
.short _0211bf40 - _0211bef0 - 2 ; case 3
.short _0211bf58 - _0211bef0 - 2 ; case 4
_0211befa:
bl func_ov10_0211bc3c
b _0211bf78
_0211bf00:
add r1, r4, #0
ldr r0, _0211bf7c ; =data_027e0c68
ldr r2, _0211bf80 ; =0x00ca0004
add r1, #0x94
blx func_02036ce4
add r0, r4, #0
mov r1, #7
bl func_ov10_0211bbf8
b _0211bf78
_0211bf16:
ldr r0, _0211bf84 ; =data_ov00_020eec9c
mov r1, #0x10
blx func_ov00_020d77e4
mov r0, #1
str r0, [r4, #0x18]
add r0, r4, #0
add r0, #0xd1
ldrb r0, [r0]
cmp r0, #0
beq _0211bf36
add r0, r4, #0
mov r1, #2
bl func_ov10_0211bbf8
b _0211bf78
_0211bf36:
add r0, r4, #0
mov r1, #0xc
bl func_ov10_0211bbf8
b _0211bf78
_0211bf40:
ldr r0, _0211bf84 ; =data_ov00_020eec9c
mov r1, #0x10
blx func_ov00_020d77e4
add r0, r4, #0
mov r1, #0xb
bl func_ov10_0211bbf8
ldr r0, [r4, #8]
bl func_ov10_02113a58
b _0211bf78
_0211bf58:
ldr r0, _0211bf84 ; =data_ov00_020eec9c
mov r1, #0x10
blx func_ov00_020d77e4
ldr r0, [r4, #8]
mov r1, #0x64
ldrsb r1, [r0, r1]
bl func_ov10_021139bc
add r0, r4, #0
mov r1, #0xf
bl func_ov10_0211bbf8
ldr r0, [r4, #8]
bl func_ov10_02113a58
_0211bf78:
mov r0, #0
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_0211bed0
_0211bf7c: .word data_027e0c68
_0211bf80: .word 0x00ca0004
_0211bf84: .word data_ov00_020eec9c
.global func_ov10_0211bf88
thumb_func_start func_ov10_0211bf88
func_ov10_0211bf88: ; 0x0211bf88
push {r3, lr}
ldr r1, [r0, #0x10]
cmp r1, #0xe
bhi _0211bfcc
add r1, r1, r1
add r1, pc
ldrh r1, [r1, #6]
lsl r1, r1, #0x10
asr r1, r1, #0x10
add pc, r1
_0211bf9c: ; jump table
.short _0211bfcc - _0211bf9c - 2 ; case 0
.short _0211bfcc - _0211bf9c - 2 ; case 1
.short _0211bfc0 - _0211bf9c - 2 ; case 2
.short _0211bfc6 - _0211bf9c - 2 ; case 3
.short _0211bfcc - _0211bf9c - 2 ; case 4
.short _0211bfc6 - _0211bf9c - 2 ; case 5
.short _0211bfc0 - _0211bf9c - 2 ; case 6
.short _0211bfba - _0211bf9c - 2 ; case 7
.short _0211bfba - _0211bf9c - 2 ; case 8
.short _0211bfcc - _0211bf9c - 2 ; case 9
.short _0211bfba - _0211bf9c - 2 ; case 10
.short _0211bfc6 - _0211bf9c - 2 ; case 11
.short _0211bfcc - _0211bf9c - 2 ; case 12
.short _0211bfcc - _0211bf9c - 2 ; case 13
.short _0211bfcc - _0211bf9c - 2 ; case 14
_0211bfba:
bl func_ov10_0211c4cc
pop {r3, pc}
_0211bfc0:
bl func_ov10_0211c220
pop {r3, pc}
_0211bfc6:
bl func_ov10_0211c3b8
pop {r3, pc}
_0211bfcc:
bl func_ov10_0211bfd4
pop {r3, pc}
.align 2, 0
thumb_func_end func_ov10_0211bf88
.global func_ov10_0211bfd4
thumb_func_start func_ov10_0211bfd4
func_ov10_0211bfd4: ; 0x0211bfd4
push {r3, r4, r5, r6, r7, lr}
sub sp, #0x48
add r4, r0, #0
ldr r0, [r4, #0x14]
mov r1, #0xf
lsl r0, r0, #0xc
lsl r1, r1, #0xc
blx func_01ff98e0
str r0, [sp, #0xc]
add r0, sp, #0x28
blx func_01ffbe34
mov r1, #1
add r0, sp, #0x28
strb r1, [r0, #0xa]
mov r1, #3
ldr r0, [sp, #0xc]
lsl r1, r1, #0xa
sub r0, r0, r1
str r0, [sp, #0x10]
add r0, r4, #0
str r0, [sp, #0x14]
add r0, #0x7c
str r0, [sp, #0x14]
add r0, r4, #0
str r0, [sp, #0x18]
add r0, #0x64
str r0, [sp, #0x18]
add r0, r4, #0
str r0, [sp, #0x24]
add r0, #0x1c
str r0, [sp, #0x24]
add r0, r4, #0
str r0, [sp, #0x20]
add r0, #0x4c
str r0, [sp, #0x20]
add r0, r4, #0
str r0, [sp, #0x1c]
add r0, #0x34
mov r5, #0
add r7, sp, #0x28
str r0, [sp, #0x1c]
_0211c02a:
ldr r0, [r4, #0x10]
cmp r0, #4
bgt _0211c034
beq _0211c054
b _0211c05c
_0211c034:
add r1, r0, #0
sub r1, #0xb
cmp r1, #5
bhi _0211c05c
add r1, r1, r1
add r1, pc
ldrh r1, [r1, #6]
lsl r1, r1, #0x10
asr r1, r1, #0x10
add pc, r1
_0211c048: ; jump table
.short _0211c054 - _0211c048 - 2 ; case 0
.short _0211c05c - _0211c048 - 2 ; case 1
.short _0211c054 - _0211c048 - 2 ; case 2
.short _0211c05c - _0211c048 - 2 ; case 3
.short _0211c054 - _0211c048 - 2 ; case 4
.short _0211c054 - _0211c048 - 2 ; case 5
_0211c054:
cmp r5, #0
beq _0211c0a8
cmp r5, #1
beq _0211c0a8
_0211c05c:
mov r2, #0
ldr r3, [sp, #0xc]
cmp r5, #2
bne _0211c066
ldr r3, [sp, #0x10]
_0211c066:
cmp r0, #9
bgt _0211c072
bge _0211c092
cmp r0, #0
beq _0211c082
b _0211c0a4
_0211c072:
cmp r0, #0x10
bgt _0211c0a4
cmp r0, #0xf
blt _0211c0a4
beq _0211c0a2
cmp r0, #0x10
beq _0211c0a2
b _0211c0a4
_0211c082:
mov r0, #1
lsl r0, r0, #0xc
mov r1, #0
add r2, r3, #0
blx func_ov00_020d03f8
add r2, r0, #0
b _0211c0a4
_0211c092:
mov r1, #1
mov r0, #0
lsl r1, r1, #0xc
add r2, r3, #0
blx func_ov00_020d03f8
add r2, r0, #0
b _0211c0a4
_0211c0a2:
mov r2, #0
_0211c0a4:
cmp r5, #4
bls _0211c0aa
_0211c0a8:
b _0211c212
_0211c0aa:
add r0, r5, r5
add r0, pc
ldrh r0, [r0, #6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_0211c0b6: ; jump table
.short _0211c16c - _0211c0b6 - 2 ; case 0
.short _0211c1ac - _0211c0b6 - 2 ; case 1
.short _0211c1ec - _0211c0b6 - 2 ; case 2
.short _0211c0c0 - _0211c0b6 - 2 ; case 3
.short _0211c114 - _0211c0b6 - 2 ; case 4
_0211c0c0:
neg r1, r2
mov r0, #0x4b
lsl r0, r0, #2
add r2, r1, #0
mul r2, r0
mov r0, #2
lsl r0, r0, #0xa
add r0, r2, r0
asr r0, r0, #0xc
str r0, [sp, #8]
mov r0, #0
str r0, [sp]
ldr r0, [sp, #0x14]
ldr r1, [sp, #8]
mov r2, #0
add r3, r7, #0
blx func_ov00_020d00c4
add r0, r4, #0
add r0, #0x89
ldrb r1, [r0]
mov r0, #6
tst r0, r1
beq _0211c0f4
mov r6, #2
b _0211c0f6
_0211c0f4:
mov r6, #0
_0211c0f6:
blx func_020329b0
add r2, r4, #0
add r2, #0xd2
mov r1, #0x42
ldrb r2, [r2]
lsl r1, r1, #2
blx func_02032a20
ldr r1, [sp, #8]
add r2, r6, #0
add r3, r7, #0
blx func_02032788
b _0211c212
_0211c114:
add r0, r4, #0
add r0, #0xd1
ldrb r0, [r0]
cmp r0, #0
beq _0211c212
mov r0, #0x4b
add r1, r2, #0
lsl r0, r0, #2
mul r1, r0
mov r0, #2
lsl r0, r0, #0xa
add r0, r1, r0
asr r0, r0, #0xc
str r0, [sp, #4]
mov r0, #0
str r0, [sp]
ldr r0, [sp, #0x18]
ldr r1, [sp, #4]
mov r2, #0
add r3, r7, #0
blx func_ov00_020d00c4
add r0, r4, #0
add r0, #0x71
ldrb r1, [r0]
mov r0, #6
tst r0, r1
beq _0211c150
mov r6, #2
b _0211c152
_0211c150:
mov r6, #0
_0211c152:
blx func_020329b0
mov r1, #0x42
lsl r1, r1, #2
mov r2, #0
blx func_02032a20
ldr r1, [sp, #4]
add r2, r6, #0
add r3, r7, #0
blx func_02032788
b _0211c212
_0211c16c:
add r0, r4, #0
add r0, #0xd0
ldrb r0, [r0]
cmp r0, #0
bne _0211c212
ldr r3, [r4, #8]
mov r1, #0x64
ldr r0, [r3, #0x54]
ldrsb r3, [r3, r1]
mov r1, #0x16
mul r1, r3
add r1, r0, r1
mov r0, #0x75
lsl r0, r0, #2
ldrh r0, [r1, r0]
lsl r0, r0, #0x14
lsr r0, r0, #0x1f
bne _0211c212
mov r3, #0x96
mul r3, r2
mov r2, #2
mov r0, #0
lsl r2, r2, #0xa
add r2, r3, r2
str r0, [sp]
ldr r0, [sp, #0x1c]
mov r1, #0
asr r2, r2, #0xc
add r3, r7, #0
blx func_ov00_020d00c4
b _0211c212
_0211c1ac:
add r0, r4, #0
add r0, #0xd0
ldrb r0, [r0]
cmp r0, #0
bne _0211c212
ldr r3, [r4, #8]
mov r1, #0x64
ldr r0, [r3, #0x54]
ldrsb r3, [r3, r1]
mov r1, #0x16
mul r1, r3
add r1, r0, r1
mov r0, #0x75
lsl r0, r0, #2
ldrh r0, [r1, r0]
lsl r0, r0, #0x14
lsr r0, r0, #0x1f
bne _0211c212
mov r3, #0x96
mul r3, r2
mov r2, #2
mov r0, #0
lsl r2, r2, #0xa
add r2, r3, r2
str r0, [sp]
ldr r0, [sp, #0x20]
mov r1, #0
asr r2, r2, #0xc
add r3, r7, #0
blx func_ov00_020d00c4
b _0211c212
_0211c1ec:
add r0, r4, #0
add r0, #0xd0
ldrb r0, [r0]
cmp r0, #0
bne _0211c212
mov r1, #0x63
mvn r1, r1
mul r1, r2
mov r2, #2
mov r0, #0
lsl r2, r2, #0xa
add r1, r1, r2
str r0, [sp]
ldr r0, [sp, #0x24]
asr r1, r1, #0xc
mov r2, #0
add r3, r7, #0
blx func_ov00_020d00c4
_0211c212:
add r5, r5, #1
cmp r5, #5
bge _0211c21a
b _0211c02a
_0211c21a:
add sp, #0x48
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
thumb_func_end func_ov10_0211bfd4
.global func_ov10_0211c220
thumb_func_start func_ov10_0211c220
func_ov10_0211c220: ; 0x0211c220
push {r4, r5, r6, r7, lr}
sub sp, #0x3c
add r4, r0, #0
ldr r0, [r4, #0x14]
mov r1, #0xf
lsl r0, r0, #0xc
lsl r1, r1, #0xc
blx func_01ff98e0
add r7, r0, #0
add r0, sp, #0x1c
blx func_01ffbe34
mov r1, #1
add r0, sp, #0x1c
strb r1, [r0, #0xa]
mov r0, #3
lsl r0, r0, #0xa
sub r0, r7, r0
str r0, [sp, #4]
add r0, r4, #0
str r0, [sp, #0x18]
add r0, #0x1c
str r0, [sp, #0x18]
add r0, r4, #0
str r0, [sp, #0x14]
add r0, #0x4c
str r0, [sp, #0x14]
add r0, r4, #0
str r0, [sp, #0x10]
add r0, #0x34
str r0, [sp, #0x10]
add r0, r4, #0
str r0, [sp, #0xc]
add r0, #0x64
str r0, [sp, #0xc]
add r0, r4, #0
str r0, [sp, #8]
add r0, #0x7c
mov r5, #0
add r6, sp, #0x1c
str r0, [sp, #8]
_0211c274:
mov r2, #0
add r3, r7, #0
cmp r5, #2
bne _0211c27e
ldr r3, [sp, #4]
_0211c27e:
ldr r0, [r4, #0x10]
cmp r0, #2
beq _0211c298
cmp r0, #6
bne _0211c2a6
mov r0, #1
lsl r0, r0, #0xc
mov r1, #0
add r2, r3, #0
blx func_ov00_020d03f8
add r2, r0, #0
b _0211c2a6
_0211c298:
mov r1, #1
mov r0, #0
lsl r1, r1, #0xc
add r2, r3, #0
blx func_ov00_020d03f8
add r2, r0, #0
_0211c2a6:
cmp r5, #4
bhi _0211c3aa
add r0, r5, r5
add r0, pc
ldrh r0, [r0, #6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_0211c2b6: ; jump table
.short _0211c322 - _0211c2b6 - 2 ; case 0
.short _0211c358 - _0211c2b6 - 2 ; case 1
.short _0211c38e - _0211c2b6 - 2 ; case 2
.short _0211c2c0 - _0211c2b6 - 2 ; case 3
.short _0211c2ee - _0211c2b6 - 2 ; case 4
_0211c2c0:
mov r0, #0
str r0, [sp]
mov r1, #0
ldr r0, [sp, #8]
add r2, r1, #0
add r3, r6, #0
blx func_ov00_020d00c4
blx func_020329b0
add r2, r4, #0
add r2, #0xd2
mov r1, #0x42
ldrb r2, [r2]
lsl r1, r1, #2
blx func_02032a20
mov r1, #0
add r2, r1, #0
add r3, r6, #0
blx func_02032788
b _0211c3aa
_0211c2ee:
add r0, r4, #0
add r0, #0xd1
ldrb r0, [r0]
cmp r0, #0
beq _0211c3aa
mov r0, #0
str r0, [sp]
mov r1, #0
ldr r0, [sp, #0xc]
add r2, r1, #0
add r3, r6, #0
blx func_ov00_020d00c4
blx func_020329b0
mov r1, #0x42
lsl r1, r1, #2
mov r2, #0
blx func_02032a20
mov r1, #0
add r2, r1, #0
add r3, r6, #0
blx func_02032788
b _0211c3aa
_0211c322:
ldr r3, [r4, #8]
mov r1, #0x64
ldr r0, [r3, #0x54]
ldrsb r3, [r3, r1]
mov r1, #0x16
mul r1, r3
add r1, r0, r1
mov r0, #0x75
lsl r0, r0, #2
ldrh r0, [r1, r0]
lsl r0, r0, #0x14
lsr r0, r0, #0x1f
bne _0211c3aa
mov r3, #0x96
mul r3, r2
mov r2, #2
mov r0, #0
lsl r2, r2, #0xa
add r2, r3, r2
str r0, [sp]
ldr r0, [sp, #0x10]
mov r1, #0
asr r2, r2, #0xc
add r3, r6, #0
blx func_ov00_020d00c4
b _0211c3aa
_0211c358:
ldr r3, [r4, #8]
mov r1, #0x64
ldr r0, [r3, #0x54]
ldrsb r3, [r3, r1]
mov r1, #0x16
mul r1, r3
add r1, r0, r1
mov r0, #0x75
lsl r0, r0, #2
ldrh r0, [r1, r0]
lsl r0, r0, #0x14
lsr r0, r0, #0x1f
bne _0211c3aa
mov r3, #0x96
mul r3, r2
mov r2, #2
mov r0, #0
lsl r2, r2, #0xa
add r2, r3, r2
str r0, [sp]
ldr r0, [sp, #0x14]
mov r1, #0
asr r2, r2, #0xc
add r3, r6, #0
blx func_ov00_020d00c4
b _0211c3aa
_0211c38e:
mov r1, #0x63
mvn r1, r1
mul r1, r2
mov r2, #2
mov r0, #0
lsl r2, r2, #0xa
add r1, r1, r2
str r0, [sp]
ldr r0, [sp, #0x18]
asr r1, r1, #0xc
mov r2, #0
add r3, r6, #0
blx func_ov00_020d00c4
_0211c3aa:
add r5, r5, #1
cmp r5, #5
bge _0211c3b2
b _0211c274
_0211c3b2:
add sp, #0x3c
pop {r4, r5, r6, r7, pc}
.align 2, 0
thumb_func_end func_ov10_0211c220
.global func_ov10_0211c3b8
thumb_func_start func_ov10_0211c3b8
func_ov10_0211c3b8: ; 0x0211c3b8
push {r4, r5, r6, r7, lr}
sub sp, #0x34
add r5, r0, #0
ldr r0, [r5, #0x14]
mov r1, #0xf
lsl r0, r0, #0xc
lsl r1, r1, #0xc
blx func_01ff98e0
add r7, r0, #0
add r0, sp, #0x14
blx func_01ffbe34
mov r1, #1
add r0, sp, #0x14
strb r1, [r0, #0xa]
mov r0, #3
lsl r0, r0, #0xa
sub r0, r7, r0
str r0, [sp, #4]
add r0, r5, #0
str r0, [sp, #0x10]
add r0, #0x1c
str r0, [sp, #0x10]
add r0, r5, #0
str r0, [sp, #0xc]
add r0, #0x64
str r0, [sp, #0xc]
add r0, r5, #0
str r0, [sp, #8]
add r0, #0x7c
mov r4, #0
add r6, sp, #0x14
str r0, [sp, #8]
_0211c3fc:
mov r1, #0
add r2, r7, #0
cmp r4, #0
bne _0211c406
ldr r2, [sp, #4]
_0211c406:
ldr r0, [r5, #0x10]
cmp r0, #3
beq _0211c416
cmp r0, #5
beq _0211c424
cmp r0, #0xb
beq _0211c432
b _0211c434
_0211c416:
mov r0, #1
lsl r0, r0, #0xc
mov r1, #0
blx func_ov00_020d03f8
add r1, r0, #0
b _0211c434
_0211c424:
mov r1, #1
mov r0, #0
lsl r1, r1, #0xc
blx func_ov00_020d03f8
add r1, r0, #0
b _0211c434
_0211c432:
mov r1, #0
_0211c434:
cmp r4, #0
beq _0211c4a4
cmp r4, #1
beq _0211c442
cmp r4, #2
beq _0211c470
b _0211c4c0
_0211c442:
mov r0, #0
str r0, [sp]
mov r1, #0
ldr r0, [sp, #8]
add r2, r1, #0
add r3, r6, #0
blx func_ov00_020d00c4
blx func_020329b0
add r2, r5, #0
add r2, #0xd2
mov r1, #0x42
ldrb r2, [r2]
lsl r1, r1, #2
blx func_02032a20
mov r1, #0
add r2, r1, #0
add r3, r6, #0
blx func_02032788
b _0211c4c0
_0211c470:
add r0, r5, #0
add r0, #0xd1
ldrb r0, [r0]
cmp r0, #0
beq _0211c4c0
mov r0, #0
str r0, [sp]
mov r1, #0
ldr r0, [sp, #0xc]
add r2, r1, #0
add r3, r6, #0
blx func_ov00_020d00c4
blx func_020329b0
mov r1, #0x42
lsl r1, r1, #2
mov r2, #0
blx func_02032a20
mov r1, #0
add r2, r1, #0
add r3, r6, #0
blx func_02032788
b _0211c4c0
_0211c4a4:
mov r2, #0x63
mvn r2, r2
mul r2, r1
mov r1, #2
mov r0, #0
lsl r1, r1, #0xa
add r1, r2, r1
str r0, [sp]
ldr r0, [sp, #0x10]
asr r1, r1, #0xc
mov r2, #0
add r3, r6, #0
blx func_ov00_020d00c4
_0211c4c0:
add r4, r4, #1
cmp r4, #3
blt _0211c3fc
add sp, #0x34
pop {r4, r5, r6, r7, pc}
.align 2, 0
thumb_func_end func_ov10_0211c3b8
.global func_ov10_0211c4cc
thumb_func_start func_ov10_0211c4cc
func_ov10_0211c4cc: ; 0x0211c4cc
push {r3, r4, r5, r6, r7, lr}
sub sp, #0x40
add r4, r0, #0
ldr r0, [r4, #0x14]
mov r1, #0xf
lsl r0, r0, #0xc
lsl r1, r1, #0xc
blx func_01ff98e0
str r0, [sp, #4]
add r0, sp, #0x20
blx func_01ffbe34
mov r1, #1
add r0, sp, #0x20
strb r1, [r0, #0xa]
mov r1, #3
ldr r0, [sp, #4]
lsl r1, r1, #0xa
sub r0, r0, r1
str r0, [sp, #8]
add r0, r4, #0
str r0, [sp, #0x1c]
add r0, #0x4c
str r0, [sp, #0x1c]
add r0, r4, #0
str r0, [sp, #0x18]
add r0, #0x34
str r0, [sp, #0x18]
add r0, r4, #0
str r0, [sp, #0x14]
add r0, #0x1c
str r0, [sp, #0x14]
add r0, r4, #0
str r0, [sp, #0x10]
add r0, #0x64
str r0, [sp, #0x10]
add r0, r4, #0
str r0, [sp, #0xc]
add r0, #0x7c
mov r5, #0
add r7, sp, #0x20
str r0, [sp, #0xc]
_0211c522:
mov r2, #0
ldr r3, [sp, #4]
cmp r5, #2
bne _0211c52c
ldr r3, [sp, #8]
_0211c52c:
ldr r0, [r4, #0x10]
cmp r0, #7
beq _0211c53c
cmp r0, #8
beq _0211c54c
cmp r0, #0xa
beq _0211c55c
b _0211c560
_0211c53c:
mov r1, #1
mov r0, #0
lsl r1, r1, #0xc
add r2, r3, #0
blx func_ov00_020d03f8
add r2, r0, #0
b _0211c560
_0211c54c:
mov r0, #1
lsl r0, r0, #0xc
mov r1, #0
add r2, r3, #0
blx func_ov00_020d03f8
add r2, r0, #0
b _0211c560
_0211c55c:
mov r2, #1
lsl r2, r2, #0xc
_0211c560:
cmp r5, #4
bls _0211c566
b _0211c678
_0211c566:
add r0, r5, r5
add r0, pc
ldrh r0, [r0, #6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_0211c572: ; jump table
.short _0211c626 - _0211c572 - 2 ; case 0
.short _0211c650 - _0211c572 - 2 ; case 1
.short _0211c5fe - _0211c572 - 2 ; case 2
.short _0211c57c - _0211c572 - 2 ; case 3
.short _0211c5ba - _0211c572 - 2 ; case 4
_0211c57c:
mov r0, #0x18
mvn r0, r0
add r1, r2, #0
mul r1, r0
mov r0, #2
lsl r0, r0, #0xa
add r0, r1, r0
asr r6, r0, #0xc
mov r0, #0
str r0, [sp]
ldr r0, [sp, #0xc]
mov r1, #0
add r2, r6, #0
add r3, r7, #0
blx func_ov00_020d00c4
blx func_020329b0
add r2, r4, #0
add r2, #0xd2
mov r1, #0x42
ldrb r2, [r2]
lsl r1, r1, #2
blx func_02032a20
mov r1, #0
add r2, r6, #0
add r3, r7, #0
blx func_02032788
b _0211c678
_0211c5ba:
add r0, r4, #0
add r0, #0xd1
ldrb r0, [r0]
cmp r0, #0
beq _0211c678
mov r0, #0x18
mvn r0, r0
add r1, r2, #0
mul r1, r0
mov r0, #2
lsl r0, r0, #0xa
add r0, r1, r0
asr r6, r0, #0xc
mov r0, #0
str r0, [sp]
ldr r0, [sp, #0x10]
mov r1, #0
add r2, r6, #0
add r3, r7, #0
blx func_ov00_020d00c4
blx func_020329b0
mov r1, #0x42
lsl r1, r1, #2
mov r2, #0
blx func_02032a20
mov r1, #0
add r2, r6, #0
add r3, r7, #0
blx func_02032788
b _0211c678
_0211c5fe:
add r0, r4, #0
add r0, #0xd0
ldrb r0, [r0]
cmp r0, #0
bne _0211c678
mov r1, #0x63
mvn r1, r1
mul r1, r2
mov r2, #2
mov r0, #0
lsl r2, r2, #0xa
add r1, r1, r2
str r0, [sp]
ldr r0, [sp, #0x14]
asr r1, r1, #0xc
mov r2, #0
add r3, r7, #0
blx func_ov00_020d00c4
b _0211c678
_0211c626:
add r0, r4, #0
add r0, #0xd0
ldrb r0, [r0]
cmp r0, #0
bne _0211c678
mov r1, #0
add r3, r1, #0
neg r2, r2
sub r3, #0x64
mul r3, r2
mov r2, #2
mov r0, #0
lsl r2, r2, #0xa
add r2, r3, r2
str r0, [sp]
ldr r0, [sp, #0x18]
asr r2, r2, #0xc
add r3, r7, #0
blx func_ov00_020d00c4
b _0211c678
_0211c650:
add r0, r4, #0
add r0, #0xd0
ldrb r0, [r0]
cmp r0, #0
bne _0211c678
mov r1, #0
add r3, r1, #0
neg r2, r2
sub r3, #0x64
mul r3, r2
mov r2, #2
mov r0, #0
lsl r2, r2, #0xa
add r2, r3, r2
str r0, [sp]
ldr r0, [sp, #0x1c]
asr r2, r2, #0xc
add r3, r7, #0
blx func_ov00_020d00c4
_0211c678:
add r5, r5, #1
cmp r5, #5
bge _0211c680
b _0211c522
_0211c680:
add sp, #0x40
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end func_ov10_0211c4cc
.global func_ov10_0211c684
thumb_func_start func_ov10_0211c684
func_ov10_0211c684: ; 0x0211c684
push {r3, r4, r5, lr}
add r5, r0, #0
mov r1, #1
add r0, #0xd0
strb r1, [r0]
ldr r2, [r5, #8]
mov r1, #0x64
ldrsb r1, [r2, r1]
ldr r0, [r2, #0x54]
blx func_ov10_0211cba0
blx func_020329b0
add r2, r5, #0
add r2, #0xd2
mov r1, #0x42
ldrb r2, [r2]
lsl r1, r1, #2
blx func_02032a20
ldr r2, [r0]
mov r1, #0
ldr r2, [r2, #0x10]
add r4, r0, #0
blx r2
mov r0, #0
mvn r0, r0
str r0, [sp]
add r0, r4, #0
ldr r4, [r0]
mov r1, #0
ldr r3, _0211c6ec ; =data_ov10_0211f0c8
ldr r4, [r4, #8]
add r2, r1, #0
blx r4
blx func_020329b0
mov r1, #0x42
lsl r1, r1, #2
mov r2, #0
blx func_02032a20
ldr r2, [r0]
mov r1, #0
ldr r2, [r2, #0x10]
blx r2
add r0, r5, #0
mov r1, #0xa
bl func_ov10_0211bbf8
pop {r3, r4, r5, pc}
nop
thumb_func_end func_ov10_0211c684
_0211c6ec: .word data_ov10_0211f0c8
.global func_ov10_0211c6f0
arm_func_start func_ov10_0211c6f0
func_ov10_0211c6f0: ; 0x0211c6f0
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x94
bl func_0203780c
ldr r3, _0211c72c ; =func_ov10_02113e6c
add r0, r4, #0x1c
mov r1, #5
mov r2, #0x18
bl func_0204f754
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_0211c6f0
_0211c72c: .word func_ov10_02113e6c - 1
.global func_ov10_0211c730
arm_func_start func_ov10_0211c730
func_ov10_0211c730: ; 0x0211c730
stmdb sp!, {r4, lr}
mov r4, r0
add r0, r4, #0x94
bl func_0203780c
ldr r3, _0211c764 ; =func_ov10_02113e6c
add r0, r4, #0x1c
mov r1, #5
mov r2, #0x18
bl func_0204f754
mov r0, r4
blx func_ov10_02112f44
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_0211c730
_0211c764: .word func_ov10_02113e6c - 1
.global func_ov10_0211c768
arm_func_start func_ov10_0211c768
func_ov10_0211c768: ; 0x0211c768
stmdb sp!, {r4, lr}
mov r4, r0
bl func_0203780c
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211c768
.global func_ov10_0211c784
arm_func_start func_ov10_0211c784
func_ov10_0211c784: ; 0x0211c784
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
ldr r0, [r7]
mov r6, r1
mov r5, r2
blx func_ov10_02113da4
ldr r4, [r7, #4]
mov r0, r7
mov r1, r6
mov r2, r4
bl func_ov10_0211ca04
mov r0, r7
mov r1, r6
mov r2, r4
bl func_ov10_0211c7dc
mov r2, r4
str r6, [r7, #4]
str r5, [r7, #8]
mov r0, r7
mov r1, r6
bl func_ov10_0211cae8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_ov10_0211c784
.global func_ov10_0211c7dc
arm_func_start func_ov10_0211c7dc
func_ov10_0211c7dc: ; 0x0211c7dc
stmdb sp!, {r4, r5, r6, lr}
mov r5, r1
mov r6, r0
mov r4, r2
cmp r5, #2
bgt _0211c80c
cmp r5, #0
blt _0211c85c
cmpne r5, #1
cmpne r5, #2
beq _0211c814
b _0211c85c
_0211c80c:
cmp r5, #0xc
bne _0211c85c
_0211c814:
ldr r0, _0211c954 ; =data_027e0cbc
mov r1, #0x2e
bl func_0203d7e0
cmp r0, #0
bne _0211c83c
mov r2, #0
ldr r0, _0211c954 ; =data_027e0cbc
sub r3, r2, #1
mov r1, #0x2e
bl func_0203d77c
_0211c83c:
cmp r5, #2
cmpeq r4, #3
bne _0211c85c
mov r2, #0
ldr r0, _0211c958 ; =data_027e0c38
mov r3, r2
mov r1, #7
bl func_02033e70
_0211c85c:
cmp r5, #0xa
addls pc, pc, r5, lsl #2
ldmia sp!, {r4, r5, r6, pc}
_0211c868: ; jump table
ldmia sp!, {r4, r5, r6, pc} ; case 0
b _0211c894 ; case 1
b _0211c894 ; case 2
b _0211c894 ; case 3
b _0211c8dc ; case 4
ldmia sp!, {r4, r5, r6, pc} ; case 5
ldmia sp!, {r4, r5, r6, pc} ; case 6
b _0211c92c ; case 7
b _0211c90c ; case 8
b _0211c92c ; case 9
b _0211c92c ; case 10
_0211c894:
cmp r4, #1
cmpne r4, #2
cmpne r4, #3
ldmeqia sp!, {r4, r5, r6, pc}
ldr r0, [r6]
mov r1, #0
blx func_ov10_02113870
bl func_ov10_02115de4
ldr r0, [r6]
mov r1, #1
blx func_ov10_02113870
bl func_ov10_02115de4
mov r2, #0
ldr r0, _0211c954 ; =data_027e0cbc
mov r1, #0x2f
sub r3, r2, #1
bl func_0203d77c
ldmia sp!, {r4, r5, r6, pc}
_0211c8dc:
mov r2, #0
ldr r0, _0211c954 ; =data_027e0cbc
sub r3, r2, #1
mov r1, #0x30
bl func_0203d77c
cmp r4, #0xb
ldmneia sp!, {r4, r5, r6, pc}
mov r1, #1
ldr r0, [r6]
mov r2, r1
blx func_ov10_02113ad8
ldmia sp!, {r4, r5, r6, pc}
_0211c90c:
cmp r4, #8
ldmeqia sp!, {r4, r5, r6, pc}
mov r2, #0
ldr r0, _0211c954 ; =data_027e0cbc
sub r3, r2, #1
mov r1, #0x2d
bl func_0203d77c
ldmia sp!, {r4, r5, r6, pc}
_0211c92c:
cmp r4, #7
cmpne r4, #9
cmpne r4, #0xa
ldmeqia sp!, {r4, r5, r6, pc}
mov r2, #0
ldr r0, _0211c954 ; =data_027e0cbc
sub r3, r2, #1
mov r1, #0x2c
bl func_0203d77c
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov10_0211c7dc
_0211c954: .word data_027e0cbc
_0211c958: .word data_027e0c38
.global func_ov10_0211c95c
arm_func_start func_ov10_0211c95c
func_ov10_0211c95c: ; 0x0211c95c
stmdb sp!, {r3, lr}
cmp r1, #0xa
addls pc, pc, r1, lsl #2
ldmia sp!, {r3, pc}
_0211c96c: ; jump table
ldmia sp!, {r3, pc} ; case 0
ldmia sp!, {r3, pc} ; case 1
ldmia sp!, {r3, pc} ; case 2
ldmia sp!, {r3, pc} ; case 3
b _0211c998 ; case 4
ldmia sp!, {r3, pc} ; case 5
ldmia sp!, {r3, pc} ; case 6
ldmia sp!, {r3, pc} ; case 7
b _0211c9d0 ; case 8
ldmia sp!, {r3, pc} ; case 9
ldmia sp!, {r3, pc} ; case 10
_0211c998:
cmp r2, #8
cmpne r2, #0xb
ldmneia sp!, {r3, pc}
ldr r2, _0211c9f8 ; =0x01060000
ldr r1, _0211c9fc ; =0x0400101c
str r2, [r1]
ldr r0, [r0]
blx func_ov10_02113b70
ldr r1, _0211ca00 ; =0x04001000
ldr r0, [r1]
bic r0, r0, #0x1f00
orr r0, r0, #0x1c00
str r0, [r1]
ldmia sp!, {r3, pc}
_0211c9d0:
cmp r2, #4
beq _0211c9e0
cmp r2, #8
ldmia sp!, {r3, pc}
_0211c9e0:
ldr r1, _0211ca00 ; =0x04001000
ldr r0, [r1]
bic r0, r0, #0x1f00
orr r0, r0, #0x1400
str r0, [r1]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov10_0211c95c
_0211c9f8: .word 0x01060000
_0211c9fc: .word 0x0400101c
_0211ca00: .word 0x04001000
.global func_ov10_0211ca04
arm_func_start func_ov10_0211ca04
func_ov10_0211ca04: ; 0x0211ca04
stmdb sp!, {r4, lr}
mov r4, r0
cmp r1, #0xc
addls pc, pc, r1, lsl #2
ldmia sp!, {r4, pc}
_0211ca18: ; jump table
b _0211ca4c ; case 0
b _0211ca64 ; case 1
b _0211ca94 ; case 2
b _0211caa4 ; case 3
b _0211cab4 ; case 4
ldmia sp!, {r4, pc} ; case 5
ldmia sp!, {r4, pc} ; 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
ldmia sp!, {r4, pc} ; case 11
b _0211cad8 ; case 12
_0211ca4c:
cmp r2, #1
ldmeqia sp!, {r4, pc}
ldr r0, [r4]
mov r1, #0
blx func_ov10_02113760
ldmia sp!, {r4, pc}
_0211ca64:
cmp r2, #0
cmpne r2, #0xc
bne _0211ca84
ldr r0, [r4]
mov r1, #1
blx func_ov10_02113870
mov r1, #5
strb r1, [r0, #0x2d4]
_0211ca84:
ldr r0, [r4]
mov r1, #1
blx func_ov10_021137f4
ldmia sp!, {r4, pc}
_0211ca94:
ldr r0, [r4]
mov r1, #2
blx func_ov10_021137f4
ldmia sp!, {r4, pc}
_0211caa4:
ldr r0, [r4]
mov r1, #3
blx func_ov10_021137f4
ldmia sp!, {r4, pc}
_0211cab4:
cmp r2, #0xc
bne _0211cac8
ldr r0, [r4]
mov r1, #4
blx func_ov10_02113760
_0211cac8:
ldr r0, [r4]
mov r1, #3
blx func_ov10_021137f4
ldmia sp!, {r4, pc}
_0211cad8:
ldr r0, [r4]
mov r1, #1
blx func_ov10_02113760
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211ca04
.global func_ov10_0211cae8
arm_func_start func_ov10_0211cae8
func_ov10_0211cae8: ; 0x0211cae8
stmdb sp!, {r3, lr}
cmp r1, #3
beq _0211cb08
cmp r1, #6
ldmeqia sp!, {r3, pc}
cmp r1, #7
beq _0211cb18
ldmia sp!, {r3, pc}
_0211cb08:
ldr r0, [r0]
ldr r1, _0211cb28 ; =0x0013000d
blx func_ov10_02113d70
ldmia sp!, {r3, pc}
_0211cb18:
ldr r0, [r0]
ldr r1, _0211cb2c ; =0x0013000f
blx func_ov10_02113d70
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov10_0211cae8
_0211cb28: .word 0x0013000d
_0211cb2c: .word 0x0013000f
.global func_ov10_0211cb30
arm_func_start func_ov10_0211cb30
func_ov10_0211cb30: ; 0x0211cb30
stmdb sp!, {r3, r4, lr}
sub sp, sp, #0xc
mov r4, r0
add r0, sp, #0
blx func_ov00_020779b4
add r1, sp, #0
mov r0, r4
bl func_ov01_020f54c8
cmp r0, #0
movge r0, #1
movlt r0, #0
add sp, sp, #0xc
ldmia sp!, {r3, r4, pc}
arm_func_end func_ov10_0211cb30
.global func_ov10_0211cb64
arm_func_start func_ov10_0211cb64
func_ov10_0211cb64: ; 0x0211cb64
stmdb sp!, {r3, r4, r5, lr}
mov r2, #0xc
mul r4, r1, r2
add r5, r0, #0x40
add r0, r5, r4
blx func_ov00_020777d0
cmp r0, #0
beq _0211cb98
add r0, r5, r4
blx func_ov00_020774c4
cmp r0, #2
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, pc}
_0211cb98:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov10_0211cb64
.global func_ov10_0211cba0
arm_func_start func_ov10_0211cba0
func_ov10_0211cba0: ; 0x0211cba0
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov01_020f5258
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, pc}
ldr r0, _0211cbcc ; =data_027e0d54
add r1, r4, #0x40
bl func_ov10_021188c8
mov r0, #1
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_0211cba0
_0211cbcc: .word data_027e0d54
.global func_ov10_0211cbd0
arm_func_start func_ov10_0211cbd0
func_ov10_0211cbd0: ; 0x0211cbd0
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #0xc
mov r6, r0
mov r5, r1
mov r1, r2
add r0, sp, #0
mov r2, r3
blx func_ov00_020779b4
mov r0, #0x16
mul r4, r5, r0
add r1, r6, #0x1c0
ldr r0, [sp, #0x20]
add r1, r1, r4
bl func_0204b0d4
cmp r0, #0
bne _0211cc34
add r1, r6, #0x40
mov r0, #0xc
mla r1, r5, r0, r1
add r0, sp, #0
blx func_ov00_02077a40
cmp r0, #0
addne sp, sp, #0xc
movne r0, #0
ldmneia sp!, {r3, r4, r5, r6, pc}
_0211cc34:
add r0, r6, #0x40
mov r2, #0xc
mla r1, r5, r2, r0
add r0, sp, #0
bl func_02007908
add r0, r6, #0x1c0
ldr r1, [sp, #0x20]
add r0, r0, r4
mov r2, #8
bl func_020320c0
add r0, r6, #0x40
mov r1, #0x500
blx func_0202f134
ldr r0, _0211cc80 ; =data_027e0d54
add r1, r6, #0x40
bl func_ov10_021188c8
mov r0, #1
add sp, sp, #0xc
ldmia sp!, {r3, r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov10_0211cbd0
_0211cc80: .word data_027e0d54
.global func_ov10_0211cc84
arm_func_start func_ov10_0211cc84
func_ov10_0211cc84: ; 0x0211cc84
stmdb sp!, {r4, r5, r6, lr}
mov r3, #0x16
mul r4, r1, r3
mov r6, r0
mov r5, r2
add r1, r6, #0x1c0
mov r0, r5
add r1, r1, r4
bl func_0204b0d4
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, pc}
add r0, r6, #0x1c0
mov r1, r5
add r0, r0, r4
mov r2, #8
bl func_020320c0
add r0, r6, #0x40
mov r1, #0x500
blx func_0202f134
ldr r0, _0211cce8 ; =data_027e0d54
add r1, r6, #0x40
bl func_ov10_021188c8
mov r0, #1
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
arm_func_end func_ov10_0211cc84
_0211cce8: .word data_027e0d54
.global func_ov10_0211ccec
arm_func_start func_ov10_0211ccec
func_ov10_0211ccec: ; 0x0211ccec
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r1
ldr r1, _0211cd48 ; =data_ov10_0211e980
mov r6, r2
ldr r4, [r1, r0, lsl #2]
mov r5, #0
_0211cd04:
cmp r6, #0
blt _0211cd14
cmp r6, r5
bne _0211cd2c
_0211cd14:
mov r0, r7
mov r1, r5
blx r4
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
_0211cd2c:
add r0, r5, #1
mov r0, r0, lsl #0x10
mov r5, r0, lsr #0x10
cmp r5, #2
blo _0211cd04
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov10_0211ccec
_0211cd48: .word data_ov10_0211e980
.global func_ov10_0211cd4c
arm_func_start func_ov10_0211cd4c
func_ov10_0211cd4c: ; 0x0211cd4c
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x14
ldr r2, _0211cdd0 ; =0x0003f500
mov sl, r0
mul r0, r1, r2
mov r8, #0
add sb, r0, #0
mov r7, r8
mov r6, #7
mov r5, #0xa
mov r4, #2
mov fp, #0x1400
_0211cd7c:
str r7, [sp]
str r7, [sp, #4]
str r6, [sp, #8]
str r5, [sp, #0xc]
mov r0, sl
mov r1, sb
mov r2, fp
mov r3, r7
str r4, [sp, #0x10]
blx func_02040464
cmp r0, #0
addeq sp, sp, #0x14
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
add r8, r8, #1
cmp r8, #2
add sb, sb, #0x1400
blt _0211cd7c
mov r0, #1
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
arm_func_end func_ov10_0211cd4c
_0211cdd0: .word 0x0003f500
.global func_ov10_0211cdd4
arm_func_start func_ov10_0211cdd4
func_ov10_0211cdd4: ; 0x0211cdd4
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x14
ldr r2, _0211ce58 ; =0x0003f500
mov sl, r0
mul r0, r1, r2
mov r8, #0
add sb, r0, #0x3e800
mov r7, r8
mov r6, #7
mov r5, #0xa
mov r4, #2
mov fp, #0x500
_0211ce04:
str r7, [sp]
str r7, [sp, #4]
str r6, [sp, #8]
str r5, [sp, #0xc]
mov r0, sl
mov r1, sb
mov r2, fp
mov r3, r7
str r4, [sp, #0x10]
blx func_02040464
cmp r0, #0
addeq sp, sp, #0x14
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
add r8, r8, #1
cmp r8, #2
add sb, sb, #0x500
blt _0211ce04
mov r0, #1
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
arm_func_end func_ov10_0211cdd4
_0211ce58: .word 0x0003f500
.global func_ov10_0211ce5c
arm_func_start func_ov10_0211ce5c
func_ov10_0211ce5c: ; 0x0211ce5c
stmdb sp!, {r4, r5, lr}
sub sp, sp, #0x114
mov r4, r1
add r1, sp, #0x14
mov r2, #0x80
mov r5, r0
bl func_02007ad8
add r1, sp, #0x94
mov r0, r5
mov r2, #0x80
bl func_02007ad8
ldr r0, _0211cedc ; =0x0003f500
mov r3, #0
mul r0, r4, r0
add r1, r0, #0xf300
str r3, [sp]
str r3, [sp, #4]
mov r0, #7
str r0, [sp, #8]
mov r2, #0xa
str r2, [sp, #0xc]
mov ip, #2
add r0, sp, #0x14
add r1, r1, #0x30000
mov r2, #0x100
str ip, [sp, #0x10]
blx func_02040464
cmp r0, #0
movne r0, #1
moveq r0, #0
add sp, sp, #0x114
ldmia sp!, {r4, r5, pc}
.align 2, 0
arm_func_end func_ov10_0211ce5c
_0211cedc: .word 0x0003f500
.global func_ov10_0211cee0
arm_func_start func_ov10_0211cee0
func_ov10_0211cee0: ; 0x0211cee0
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x80
add r7, sp, #0
mov r8, r0
mov r6, #0
mov r5, #0x14
add r4, sp, #0x3c
_0211cefc:
mov r0, r6
mov r1, r7
mov r2, r5
bl func_020078c0
add r7, r7, #0x14
cmp r7, r4
blo _0211cefc
add r0, sp, #0
blx func_ov00_0207c170
add r0, sp, #0
blx func_ov00_0207a5f4
add r1, sp, #0
mov r2, r8
mov r0, #2
bl func_ov10_0211ccec
add sp, sp, #0x80
ldmia sp!, {r4, r5, r6, r7, r8, pc}
arm_func_end func_ov10_0211cee0
.global func_ov10_0211cf40
arm_func_start func_ov10_0211cf40
func_ov10_0211cf40: ; 0x0211cf40
stmdb sp!, {r4, lr}
sub sp, sp, #0x80
mov r4, r0
add r0, sp, #0
blx func_ov00_0207a6ac
add r0, sp, #0
blx func_ov00_0207a68c
add r1, sp, #0
mov r2, r4
mov r0, #3
bl func_ov10_0211ccec
add sp, sp, #0x80
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211cf40
.global func_ov10_0211cf74
arm_func_start func_ov10_0211cf74
func_ov10_0211cf74: ; 0x0211cf74
stmdb sp!, {r4, lr}
sub sp, sp, #0x80
mov r4, r0
add r0, sp, #0
blx func_ov00_0207a6d0
add r1, sp, #0
mov r2, r4
mov r0, #4
bl func_ov10_0211ccec
add sp, sp, #0x80
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211cf74
.global func_ov10_0211cfa0
arm_func_start func_ov10_0211cfa0
func_ov10_0211cfa0: ; 0x0211cfa0
stmdb sp!, {r4, lr}
sub sp, sp, #0x80
mov r4, r0
add r0, sp, #0
blx func_ov00_0207a6d0
ldrb r0, [sp, #0x52]
add r1, sp, #0
mov r2, r4
add r3, r0, #1
mov r0, #4
strb r3, [sp, #0x52]
bl func_ov10_0211ccec
add sp, sp, #0x80
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211cfa0
.global func_ov10_0211cfd8
arm_func_start func_ov10_0211cfd8
func_ov10_0211cfd8: ; 0x0211cfd8
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x20
ldr r1, _0211d0a8 ; =0x000037fc
str r0, [sp, #0x14]
mov r0, #0
ldr sb, _0211d0ac ; =data_ov10_0211e998
str r1, [sp, #0x18]
str r0, [sp, #0x1c]
mov r7, r0
mov r6, #7
mov r5, #0xa
mov r4, #2
mov fp, #4
_0211d00c:
ldr r0, [sp, #0x14]
cmp r0, #0
blt _0211d028
mov r1, r0
ldr r0, [sp, #0x1c]
cmp r1, r0
bne _0211d078
_0211d028:
ldr sl, [sp, #0x18]
mov r8, #0
_0211d030:
str r7, [sp]
str r7, [sp, #4]
str r6, [sp, #8]
str r5, [sp, #0xc]
mov r0, sb
mov r1, sl
mov r2, fp
mov r3, r7
str r4, [sp, #0x10]
blx func_02040464
cmp r0, #0
addeq sp, sp, #0x20
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
add r8, r8, #1
cmp r8, #0x3c
add sl, sl, #0x1000
blt _0211d030
_0211d078:
ldr r0, [sp, #0x18]
add r1, r0, #0xf500
ldr r0, [sp, #0x1c]
add r0, r0, #1
str r0, [sp, #0x1c]
cmp r0, #2
add r0, r1, #0x30000
str r0, [sp, #0x18]
blt _0211d00c
mov r0, #1
add sp, sp, #0x20
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
arm_func_end func_ov10_0211cfd8
_0211d0a8: .word 0x000037fc
_0211d0ac: .word data_ov10_0211e998
.global func_ov10_0211d0b0
arm_func_start func_ov10_0211d0b0
func_ov10_0211d0b0: ; 0x0211d0b0
stmdb sp!, {lr}
sub sp, sp, #0x34
mov r0, #0
mov r3, #0x21
add r1, sp, #0x18
mov r2, #0x1a
strh r3, [sp, #0x14]
strh r0, [sp, #0x16]
strh r0, [sp, #0x32]
bl func_020078c0
ldr r1, _0211d130 ; =0x0000c2e4
ldr r0, _0211d134 ; =0x00001d3f
strh r1, [sp, #0x16]
strh r0, [sp, #0x32]
mov r3, #0
str r3, [sp]
str r3, [sp, #4]
mov r0, #7
str r0, [sp, #8]
mov r2, #0xa
str r2, [sp, #0xc]
mov ip, #2
ldr r1, _0211d138 ; =0x0007ea00
add r0, sp, #0x14
mov r2, #0x20
str ip, [sp, #0x10]
blx func_02040464
cmp r0, #0
movne r0, #1
moveq r0, #0
add sp, sp, #0x34
ldmia sp!, {pc}
.align 2, 0
arm_func_end func_ov10_0211d0b0
_0211d130: .word 0x0000c2e4
_0211d134: .word 0x00001d3f
_0211d138: .word 0x0007ea00
.global func_ov10_0211d13c
arm_func_start func_ov10_0211d13c
func_ov10_0211d13c: ; 0x0211d13c
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x14
ldr r3, _0211d260 ; =0x0003f500
mov sl, r2
mul r4, r1, r3
mul r1, r0, r3
add r0, r4, #0xfe
add sb, r4, #0x2800
add r7, r1, #0x2800
add r8, r0, #0x3700
mov r6, #0
add r4, sl, #0xf00
mov r5, #6
mov fp, #1
_0211d174:
mov r0, #0
str r0, [sp]
stmib sp, {r0, r5, fp}
str r0, [sp, #0x10]
mov r0, r7
mov r1, sl
mov r2, #0x1000
mov r3, #0
blx func_02040464
cmp r0, #0
addeq sp, sp, #0x14
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldrh r0, [r4, #0xfe]
mov r3, #0
cmp r0, #0
mov r0, #0
str r0, [sp]
bne _0211d200
str r0, [sp, #4]
mov r0, #7
str r0, [sp, #8]
mov r0, #0xa
str r0, [sp, #0xc]
mov r0, #2
str r0, [sp, #0x10]
ldr r0, _0211d264 ; =data_ov10_0211e994
mov r1, r8
mov r2, #2
blx func_02040464
cmp r0, #0
bne _0211d23c
add sp, sp, #0x14
mov r0, #0
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
_0211d200:
str r0, [sp, #4]
mov r0, #7
str r0, [sp, #8]
mov r0, #0xa
str r0, [sp, #0xc]
mov r0, #2
str r0, [sp, #0x10]
mov r0, sl
mov r1, sb
mov r2, #0x1000
blx func_02040464
cmp r0, #0
addeq sp, sp, #0x14
moveq r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
_0211d23c:
add r7, r7, #0x1000
add r8, r8, #0x1000
add sb, sb, #0x1000
add r6, r6, #1
cmp r6, #0x3c
blt _0211d174
mov r0, #1
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
arm_func_end func_ov10_0211d13c
_0211d260: .word 0x0003f500
_0211d264: .word data_ov10_0211e994
.global func_ov10_0211d268
thumb_func_start func_ov10_0211d268
func_ov10_0211d268: ; 0x0211d268
push {r3, r4, lr}
sub sp, #4
mov r2, #4
mov r3, #0
add r4, r0, #0
bl func_ov10_02112f18
ldr r0, _0211d2d0 ; =data_ov10_0211f264
str r0, [r4]
add r0, r4, #0
add r0, #0x1c
blx func_ov01_020f7fb0
ldr r0, _0211d2d4 ; =func_ov10_0211d300
ldr r3, _0211d2d8 ; =func_ov10_0211dddc
str r0, [sp]
add r0, r4, #0
add r0, #0x74
mov r1, #7
mov r2, #0x60
blx func_0204f614
mov r0, #0xc5
lsl r0, r0, #2
add r0, r4, r0
blx func_ov01_020f8278
mov r0, #0xc5
ldr r1, _0211d2dc ; =data_ov10_0211f2ac
lsl r0, r0, #2
str r1, [r4, r0]
add r0, #0x5c
add r0, r4, r0
blx func_ov01_020f8278
mov r0, #0x37
ldr r1, _0211d2dc ; =data_ov10_0211f2ac
lsl r0, r0, #4
str r1, [r4, r0]
add r0, #0x5c
add r0, r4, r0
blx func_ov01_020f7f78
mov r0, #0xf3
ldr r1, _0211d2e0 ; =data_ov10_0211f288
lsl r0, r0, #2
str r1, [r4, r0]
ldr r0, _0211d2e4 ; =data_ov10_0211f444
str r4, [r0]
add r0, r4, #0
add sp, #4
pop {r3, r4, pc}
.align 2, 0
thumb_func_end func_ov10_0211d268
_0211d2d0: .word data_ov10_0211f264
_0211d2d4: .word func_ov10_0211d300
_0211d2d8: .word func_ov10_0211dddc
_0211d2dc: .word data_ov10_0211f2ac
_0211d2e0: .word data_ov10_0211f288
_0211d2e4: .word data_ov10_0211f444
.global func_ov10_0211d2e8
thumb_func_start func_ov10_0211d2e8
func_ov10_0211d2e8: ; 0x0211d2e8
push {r4, lr}
add r4, r0, #0
blx func_ov01_020f8018
add r0, r4, #0
pop {r4, pc}
thumb_func_end func_ov10_0211d2e8
.global func_ov10_0211d2f4
thumb_func_start func_ov10_0211d2f4
func_ov10_0211d2f4: ; 0x0211d2f4
push {r4, lr}
add r4, r0, #0
blx func_ov01_020f82c8
add r0, r4, #0
pop {r4, pc}
thumb_func_end func_ov10_0211d2f4
.global func_ov10_0211d300
thumb_func_start func_ov10_0211d300
func_ov10_0211d300: ; 0x0211d300
push {r4, lr}
add r4, r0, #0
blx func_ov01_020f8018
add r0, r4, #0
pop {r4, pc}
thumb_func_end func_ov10_0211d300
.global func_ov10_0211d30c
thumb_func_start func_ov10_0211d30c
func_ov10_0211d30c: ; 0x0211d30c
push {r4, lr}
add r4, r0, #0
ldr r0, _0211d354 ; =data_ov10_0211f444
mov r1, #0
str r1, [r0]
mov r0, #0xf3
lsl r0, r0, #2
add r0, r4, r0
blx func_ov01_020f8018
mov r0, #0x37
lsl r0, r0, #4
add r0, r4, r0
blx func_ov01_020f82c8
mov r0, #0xc5
lsl r0, r0, #2
add r0, r4, r0
blx func_ov01_020f82c8
add r0, r4, #0
ldr r3, _0211d358 ; =func_ov10_0211d300
add r0, #0x74
mov r1, #7
mov r2, #0x60
blx func_0204f754
add r0, r4, #0
add r0, #0x1c
blx func_ov01_020f7fe8
add r0, r4, #0
bl func_ov10_02112f44
add r0, r4, #0
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_0211d30c
_0211d354: .word data_ov10_0211f444
_0211d358: .word func_ov10_0211d300
.global func_ov10_0211d35c
thumb_func_start func_ov10_0211d35c
func_ov10_0211d35c: ; 0x0211d35c
push {r4, lr}
add r4, r0, #0
ldr r0, _0211d3ac ; =data_ov10_0211f444
mov r1, #0
str r1, [r0]
mov r0, #0xf3
lsl r0, r0, #2
add r0, r4, r0
blx func_ov01_020f8018
mov r0, #0x37
lsl r0, r0, #4
add r0, r4, r0
blx func_ov01_020f82c8
mov r0, #0xc5
lsl r0, r0, #2
add r0, r4, r0
blx func_ov01_020f82c8
add r0, r4, #0
ldr r3, _0211d3b0 ; =func_ov10_0211d300
add r0, #0x74
mov r1, #7
mov r2, #0x60
blx func_0204f754
add r0, r4, #0
add r0, #0x1c
blx func_ov01_020f7fe8
add r0, r4, #0
bl func_ov10_02112f44
add r0, r4, #0
blx _ZN9SysObjectdlEPv
add r0, r4, #0
pop {r4, pc}
nop
thumb_func_end func_ov10_0211d35c
_0211d3ac: .word data_ov10_0211f444
_0211d3b0: .word func_ov10_0211d300
.global func_ov10_0211d3b4
thumb_func_start func_ov10_0211d3b4
func_ov10_0211d3b4: ; 0x0211d3b4
push {r4, r5, r6, r7, lr}
sub sp, #0x34
add r5, r0, #0
blx func_ov10_02112f48
mov r2, #1
lsl r2, r2, #0x1a
ldr r1, [r2]
ldr r0, _0211d71c ; =0xffcfffef
and r1, r0
ldr r0, _0211d720 ; =0x00200010
orr r0, r1
str r0, [r2]
ldr r0, _0211d724 ; =data_02075dac
bl func_0203f904
ldr r0, _0211d728 ; =0x0400000c
mov r3, #0xc6
ldrh r1, [r0]
mov r2, #0x43
lsl r3, r3, #2
and r1, r2
orr r1, r3
strh r1, [r0]
ldrh r1, [r0, #2]
add r4, r1, #0
add r1, r3, #0
and r4, r2
add r1, #0xec
orr r1, r4
strh r1, [r0, #2]
ldr r0, _0211d72c ; =0x0400100c
ldrh r1, [r0]
and r1, r2
orr r1, r3
strh r1, [r0]
ldrh r1, [r0, #2]
add r3, #0xec
and r1, r2
orr r1, r3
strh r1, [r0, #2]
mov r0, #4
str r0, [sp]
mov r0, #1
str r0, [sp, #4]
ldr r1, _0211d730 ; =data_027e0ce0
ldr r2, _0211d734 ; =data_ov10_0211f2ec
ldr r1, [r1, #4]
ldr r3, _0211d738 ; =data_ov10_0211e9dc
mov r0, #0xd
bl func_0202d598
add r6, r0, #0
ldr r1, _0211d73c ; =data_ov10_0211f2f0
add r0, sp, #0x28
bl func_02031e1c
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
str r0, [sp, #8]
mov r0, #0xf
str r0, [sp, #0xc]
add r0, sp, #0x28
mov r1, #3
mov r2, #4
mov r3, #1
bl func_02031f18
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
str r0, [sp, #8]
mov r0, #0xf
str r0, [sp, #0xc]
add r0, sp, #0x28
mov r1, #7
mov r2, #4
mov r3, #1
bl func_02031f18
mov r0, #1
str r0, [sp]
mov r3, #0x33
ldr r0, _0211d740 ; =data_ov10_0211f2fc
ldr r1, _0211d744 ; =data_ov10_0211e9f0
ldr r2, _0211d748 ; =data_020691a0
lsl r3, r3, #0xa
bl func_0202d5b4
add r4, r0, #0
mov r0, #7
str r0, [sp]
ldr r1, _0211d74c ; =data_ov10_0211f300
ldr r2, _0211d750 ; =data_ov10_0211f324
ldr r3, _0211d754 ; =data_ov10_0211f338
add r0, sp, #0x1c
bl func_02031ec0
mov r1, #2
str r1, [sp]
mov r0, #0
str r0, [sp, #4]
str r1, [sp, #8]
mov r0, #0xf
str r0, [sp, #0xc]
add r0, sp, #0x1c
mov r2, #3
mov r3, #6
bl func_02031f18
add r0, r4, #0
bl func_02016fcc
mov r0, #1
str r0, [sp]
mov r3, #0x33
ldr r0, _0211d758 ; =data_ov10_0211f34c
ldr r1, _0211d75c ; =data_ov10_0211ea04
ldr r2, _0211d748 ; =data_020691a0
lsl r3, r3, #0xa
bl func_0202d5b4
add r4, r0, #0
mov r0, #7
str r0, [sp]
ldr r1, _0211d760 ; =data_ov10_0211f350
ldr r2, _0211d764 ; =data_ov10_0211f368
ldr r3, _0211d768 ; =data_ov10_0211f378
add r0, sp, #0x10
bl func_02031ec0
mov r0, #2
str r0, [sp]
mov r0, #0
str r0, [sp, #4]
mov r0, #7
str r0, [sp, #8]
mov r0, #0xf
mov r1, #6
str r0, [sp, #0xc]
add r0, sp, #0x10
mov r2, #3
add r3, r1, #0
bl func_02031f18
add r0, r4, #0
bl func_02016fcc
add r0, r6, #0
bl func_0202d5dc
mov r2, #0
ldr r0, _0211d76c ; =data_027e0cbc
mov r1, #0x65
sub r3, r2, #1
blx func_0203d77c
mov r2, #0
ldr r0, _0211d76c ; =data_027e0cbc
mov r1, #0x66
sub r3, r2, #1
blx func_0203d77c
mov r2, #0
ldr r0, _0211d76c ; =data_027e0cbc
mov r1, #0x33
sub r3, r2, #1
blx func_0203d77c
ldr r1, _0211d770 ; =0x04000018
mov r2, #0
str r2, [r1]
ldr r0, _0211d774 ; =0x04001018
str r2, [r1, #4]
str r2, [r0]
add r4, r1, #0
str r2, [r0, #4]
sub r4, #0xc
ldrh r6, [r4]
mov r2, #3
mov r3, #3
bic r6, r2
orr r6, r3
strh r6, [r4]
add r4, r1, #0
sub r4, #0xa
ldrh r6, [r4]
sub r1, #0x18
bic r6, r2
orr r6, r3
strh r6, [r4]
add r4, r0, #0
sub r4, #0xc
ldrh r6, [r4]
bic r6, r2
orr r6, r3
strh r6, [r4]
add r4, r0, #0
sub r4, #0xa
ldrh r6, [r4]
sub r0, #0x18
bic r6, r2
add r2, r6, #0
orr r2, r3
strh r2, [r4]
ldr r3, [r1]
ldr r2, _0211d778 ; =0xffffe0ff
add r4, r3, #0
mov r3, #7
and r4, r2
lsl r3, r3, #0xa
orr r4, r3
str r4, [r1]
ldr r1, [r0]
and r1, r2
orr r1, r3
str r1, [r0]
blx func_020329b0
mov r1, #0xb7
blx func_02032bd8
blx func_020329b0
mov r1, #0x10
str r1, [sp]
mov r1, #1
str r1, [sp, #4]
mov r1, #0xb7
mov r2, #0
mov r3, #0x98
blx func_02032a74
ldr r1, _0211d77c ; =0x0000042c
str r0, [r5, r1]
blx func_020329b0
mov r1, #0x38
str r1, [sp]
mov r2, #1
mov r1, #0xb7
mov r3, #0x98
str r2, [sp, #4]
blx func_02032a74
mov r1, #0x43
lsl r1, r1, #4
str r0, [r5, r1]
sub r0, r1, #4
ldr r2, [r5, r0]
mov r0, #0x12
mov r3, #1
lsl r0, r0, #4
strb r3, [r2, r0]
ldr r2, [r5, r1]
strb r3, [r2, r0]
sub r0, r1, #4
mov r1, #0
ldr r0, [r5, r0]
add r2, r1, #0
add r3, r1, #0
blx func_02032714
mov r1, #0
mov r0, #0x43
lsl r0, r0, #4
ldr r0, [r5, r0]
add r2, r1, #0
add r3, r1, #0
blx func_02032714
ldr r1, _0211d780 ; =data_027e0d54
ldr r0, [r5, #8]
ldrh r1, [r1, #0x16]
bl func_ov10_02113358
ldr r1, _0211d784 ; =0x00002c5e
ldr r3, _0211d788 ; =0x00000171
ldrh r1, [r0, r1]
ldr r0, _0211d78c ; =0x00000444
mov r2, #0
strh r1, [r5, r0]
mov r0, #0xb
str r0, [sp]
str r0, [sp, #4]
mov r1, #0xa
add r0, r5, #0
str r1, [sp, #8]
add r0, #0x1c
sub r1, #0x2a
blx func_ov01_020f802c
mov r0, #0
str r0, [sp]
add r0, r5, #0
mov r3, #2
ldr r1, [r5, #0x2c]
ldr r2, [r5, #0x30]
add r0, #0x1c
lsl r3, r3, #0xe
blx func_ov01_020f7f34
blx func_020329b0
ldr r1, _0211d788 ; =0x00000171
blx func_02032bd8
mov r6, #0
add r4, r5, #0
add r7, r6, #0
add r4, #0x74
_0211d624:
add r0, r4, #0
mov r1, #0
add r2, r7, #0
bl func_ov10_0211ddf4
add r0, r4, #0
add r1, r6, #0
bl func_ov10_0211df08
add r0, r4, #0
bl func_ov10_0211def4
add r0, r4, #0
add r1, r6, #0
bl func_ov10_0211df70
add r6, r6, #1
add r7, #0x1f
add r4, #0x60
cmp r6, #7
blt _0211d624
add r0, r5, #0
ldr r1, _0211d790 ; =0x00000434
add r0, #0x74
str r0, [r5, r1]
mov r1, #0
add r2, r5, #0
mov r3, #0x60
_0211d65c:
add r1, r1, #1
add r4, r1, #0
mul r4, r3
add r6, r0, r4
add r4, r2, #0
add r4, #0x80
add r2, #0x60
str r6, [r4]
cmp r1, #5
blt _0211d65c
mov r1, #0x95
lsl r1, r1, #2
add r2, r5, r1
ldr r0, _0211d794 ; =0x00000438
sub r1, #0x74
str r2, [r5, r0]
add r6, r5, #0
mov r0, #5
add r1, r5, r1
add r6, #0x74
mov r2, #0x60
_0211d686:
sub r3, r0, #1
add r4, r3, #0
mul r4, r2
add r3, r6, r4
str r3, [r1, #0x7c]
sub r0, r0, #1
sub r1, #0x60
cmp r0, #0
bgt _0211d686
ldr r0, _0211d790 ; =0x00000434
mov r2, #0
ldr r1, [r5, r0]
add r3, r0, #0
str r2, [r1, #8]
add r1, r0, #4
ldr r1, [r5, r1]
add r3, #8
str r2, [r1, #0xc]
mov r1, #0xad
lsl r1, r1, #2
add r4, r5, r1
str r4, [r5, r3]
add r3, r0, #0
add r3, #0x13
strb r2, [r5, r3]
add r3, r0, #0
add r3, #0x13
ldrb r4, [r5, r3]
add r3, r0, #0
add r3, #0x12
strb r4, [r5, r3]
sub r3, r2, #1
add r0, #0x14
strb r3, [r5, r0]
mov r0, #8
str r0, [sp]
mov r0, #0xf
str r0, [sp, #4]
add r1, #0x60
add r0, r5, r1
str r2, [sp, #8]
ldr r1, _0211d788 ; =0x00000171
mov r2, #9
mov r3, #0xd
bl func_ov10_0211dfd4
mov r0, #9
str r0, [sp]
mov r0, #0x10
str r0, [sp, #4]
mov r0, #1
str r0, [sp, #8]
mov r0, #0x37
lsl r0, r0, #4
ldr r1, _0211d788 ; =0x00000171
add r0, r5, r0
mov r2, #0xa
mov r3, #0xe
bl func_ov10_0211dfd4
mov r0, #0xf3
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0xa
bl func_ov10_0211e0f4
ldr r0, [r5, #8]
bl func_ov10_02113a90
mov r0, #0x11
mov r1, #0
lsl r0, r0, #6
str r1, [r5, r0]
add sp, #0x34
pop {r4, r5, r6, r7, pc}
.align 2, 0
thumb_func_end func_ov10_0211d3b4
_0211d71c: .word 0xffcfffef
_0211d720: .word 0x00200010
_0211d724: .word data_02075dac
_0211d728: .word 0x0400000c
_0211d72c: .word 0x0400100c
_0211d730: .word data_027e0ce0
_0211d734: .word data_ov10_0211f2ec
_0211d738: .word data_ov10_0211e9dc
_0211d73c: .word data_ov10_0211f2f0
_0211d740: .word data_ov10_0211f2fc
_0211d744: .word data_ov10_0211e9f0
_0211d748: .word data_020691a0
_0211d74c: .word data_ov10_0211f300
_0211d750: .word data_ov10_0211f324
_0211d754: .word data_ov10_0211f338
_0211d758: .word data_ov10_0211f34c
_0211d75c: .word data_ov10_0211ea04
_0211d760: .word data_ov10_0211f350
_0211d764: .word data_ov10_0211f368
_0211d768: .word data_ov10_0211f378
_0211d76c: .word data_027e0cbc
_0211d770: .word 0x04000018
_0211d774: .word 0x04001018
_0211d778: .word 0xffffe0ff
_0211d77c: .word 0x0000042c
_0211d780: .word data_027e0d54
_0211d784: .word 0x00002c5e
_0211d788: .word 0x00000171
_0211d78c: .word 0x00000444
_0211d790: .word 0x00000434
_0211d794: .word 0x00000438
.global func_ov10_0211d798
thumb_func_start func_ov10_0211d798
func_ov10_0211d798: ; 0x0211d798
push {r4, lr}
add r4, r0, #0
blx func_020329b0
ldr r1, _0211d810 ; =0x00000171
blx func_02032c10
blx func_020329b0
mov r1, #0xb7
blx func_02032c10
mov r2, #1
lsl r2, r2, #0x1a
ldr r1, [r2]
ldr r0, _0211d814 ; =0xffcfffef
and r1, r0
mov r0, #0x10
orr r0, r1
str r0, [r2]
ldr r0, _0211d818 ; =data_02075dac
bl func_0203f904
ldr r0, _0211d81c ; =0x0400100c
mov r2, #0x43
ldrh r1, [r0]
add r3, r1, #0
and r3, r2
mov r1, #4
orr r1, r3
strh r1, [r0]
ldrh r1, [r0, #2]
and r2, r1
ldr r1, _0211d820 ; =0x0000810c
orr r1, r2
strh r1, [r0, #2]
ldrh r3, [r0]
mov r2, #3
mov r1, #3
bic r3, r2
orr r1, r3
strh r1, [r0]
ldrh r3, [r0, #2]
mov r1, #2
bic r3, r2
orr r1, r3
strh r1, [r0, #2]
sub r0, #0xc
ldr r2, [r0]
ldr r1, _0211d824 ; =0xffffe0ff
and r2, r1
mov r1, #7
lsl r1, r1, #0xa
orr r1, r2
str r1, [r0]
add r0, r4, #0
blx func_ov10_02112f5c
pop {r4, pc}
nop
thumb_func_end func_ov10_0211d798
_0211d810: .word 0x00000171
_0211d814: .word 0xffcfffef
_0211d818: .word data_02075dac
_0211d81c: .word 0x0400100c
_0211d820: .word 0x0000810c
_0211d824: .word 0xffffe0ff
.global func_ov10_0211d828
thumb_func_start func_ov10_0211d828
func_ov10_0211d828: ; 0x0211d828
push {r3, r4, r5, r6, lr}
sub sp, #4
add r5, r0, #0
ldr r0, [r5, #0x14]
add r0, r0, #1
str r0, [r5, #0x14]
bpl _0211d83a
mov r0, #0
str r0, [r5, #0x14]
_0211d83a:
ldr r0, [r5, #0x10]
cmp r0, #0
bne _0211d86a
ldr r0, [r5, #8]
ldr r0, [r0, #0x68]
cmp r0, #1
bne _0211d90e
add r0, r5, #0
bl func_ov10_0211dd44
cmp r0, #0
beq _0211d85e
mov r0, #0
str r0, [r5, #0x14]
mov r0, #1
add sp, #4
str r0, [r5, #0x10]
pop {r3, r4, r5, r6, pc}
_0211d85e:
mov r0, #0
str r0, [r5, #0x14]
mov r0, #2
add sp, #4
str r0, [r5, #0x10]
pop {r3, r4, r5, r6, pc}
_0211d86a:
cmp r0, #1
bne _0211d8a2
ldr r1, [r5, #0x18]
cmp r1, #0
beq _0211d87e
mov r0, #0x57
lsl r0, r0, #2
ldrsh r0, [r1, r0]
cmp r0, #0
bgt _0211d90e
_0211d87e:
ldr r0, _0211da70 ; =data_027e0d54
ldrb r0, [r0, #0xd]
cmp r0, #0
bne _0211d88a
mov r0, #1
b _0211d88c
_0211d88a:
mov r0, #0
_0211d88c:
cmp r0, #0
beq _0211d90e
add r0, r5, #0
bl func_ov10_0211dd44
cmp r0, #0
bne _0211d90e
mov r0, #0
str r0, [r5, #0x14]
mov r0, #2
str r0, [r5, #0x10]
_0211d8a2:
add r0, r5, #0
add r0, #0x1c
ldr r1, [r0]
ldr r1, [r1, #8]
blx r1
ldr r0, _0211da74 ; =0x00000434
ldr r4, [r5, r0]
cmp r4, #0
beq _0211d8c2
_0211d8b4:
add r0, r4, #0
ldr r1, [r0]
ldr r1, [r1, #8]
blx r1
ldr r4, [r4, #0xc]
cmp r4, #0
bne _0211d8b4
_0211d8c2:
ldr r1, _0211da74 ; =0x00000434
ldr r0, [r5, r1]
add r2, r0, #0
add r2, #0x57
ldrb r2, [r2]
cmp r2, #0
bne _0211d8de
ldr r2, [r0, #0xc]
mov r3, #0
str r2, [r5, r1]
ldr r2, [r5, r1]
add r1, #8
str r3, [r2, #8]
str r0, [r5, r1]
_0211d8de:
ldr r1, _0211da78 ; =0x00000438
ldr r0, [r5, r1]
add r2, r0, #0
add r2, #0x57
ldrb r2, [r2]
cmp r2, #0
bne _0211d8fa
ldr r2, [r0, #8]
mov r3, #0
str r2, [r5, r1]
ldr r2, [r5, r1]
add r1, r1, #4
str r3, [r2, #0xc]
str r0, [r5, r1]
_0211d8fa:
add r0, r5, #0
bl func_ov10_0211db98
ldr r0, [r5, #0x10]
cmp r0, #3
bne _0211d91e
ldr r0, [r5, #8]
ldr r1, [r0, #0x68]
cmp r1, #0
beq _0211d910
_0211d90e:
b _0211da6c
_0211d910:
add r0, #0x10
mov r1, #4
mov r2, #7
blx func_ov10_0211c784
add sp, #4
pop {r3, r4, r5, r6, pc}
_0211d91e:
add r0, r5, #0
add r0, #0x72
ldrb r0, [r0]
cmp r0, #0
bne _0211d932
ldr r0, _0211da7c ; =data_027e05f8
ldrh r1, [r0, #2]
mov r0, #2
tst r0, r1
beq _0211d95e
_0211d932:
ldr r0, [r5, #8]
bl func_ov10_02113a58
mov r1, #0
mov r3, #2
str r1, [r5, #0x14]
mov r0, #3
str r0, [r5, #0x10]
str r1, [sp]
add r0, r5, #0
ldr r1, [r5, #0x34]
ldr r2, [r5, #0x38]
add r0, #0x1c
lsl r3, r3, #0xe
blx func_ov01_020f7f34
ldr r0, _0211da80 ; =data_ov00_020eec9c
mov r1, #0x88
blx func_ov00_020d77e4
add sp, #4
pop {r3, r4, r5, r6, pc}
_0211d95e:
ldr r0, _0211da84 ; =0x0000043c
ldr r2, [r5, r0]
cmp r2, #0
beq _0211da02
add r1, r0, #0
add r1, #0xa
ldrb r3, [r5, r1]
add r1, r0, #0
add r1, #0xb
ldrb r1, [r5, r1]
cmp r1, r3
bhs _0211d9bc
mov r1, #0
str r1, [r2, #8]
add r2, r0, #0
sub r2, #8
ldr r3, [r5, r2]
ldr r2, [r5, r0]
sub r1, r1, #1
str r3, [r2, #0xc]
add r2, r0, #0
sub r2, #8
ldr r3, [r5, r0]
ldr r2, [r5, r2]
str r3, [r2, #8]
add r2, r0, #0
ldr r3, [r5, r0]
sub r2, #8
str r3, [r5, r2]
ldr r0, [r5, r0]
bl func_ov10_0211df8c
ldr r1, _0211da88 ; =0x00000446
ldrb r0, [r5, r1]
sub r0, r0, #1
strb r0, [r5, r1]
add r0, r1, #0
sub r0, #0xa
ldrb r1, [r5, r1]
ldr r0, [r5, r0]
bl func_ov10_0211df08
add r0, r5, #0
mov r1, #0
bl func_ov10_0211dcb4
b _0211da02
_0211d9bc:
cmp r1, r3
bls _0211da02
mov r1, #0
str r1, [r2, #0xc]
sub r1, r0, #4
ldr r2, [r5, r1]
ldr r1, [r5, r0]
str r2, [r1, #8]
sub r1, r0, #4
ldr r2, [r5, r0]
ldr r1, [r5, r1]
str r2, [r1, #0xc]
ldr r2, [r5, r0]
sub r1, r0, #4
str r2, [r5, r1]
ldr r0, [r5, r0]
mov r1, #6
bl func_ov10_0211df8c
ldr r1, _0211da84 ; =0x0000043c
ldr r0, [r5, r1]
add r1, #0xa
ldrb r1, [r5, r1]
add r1, r1, #6
bl func_ov10_0211df08
ldr r0, _0211da88 ; =0x00000446
ldrb r1, [r5, r0]
add r1, r1, #1
strb r1, [r5, r0]
mov r1, #0
add r0, r5, #0
mvn r1, r1
bl func_ov10_0211dcb4
_0211da02:
ldr r0, _0211da84 ; =0x0000043c
ldr r1, [r5, r0]
cmp r1, #0
beq _0211da6c
sub r0, #0x1b
ldrb r0, [r5, r0]
cmp r0, #0
bne _0211da6c
mov r4, #0
add r1, r5, #0
_0211da16:
add r0, r1, #0
add r0, #0xca
ldrb r0, [r0]
cmp r0, #0
beq _0211da4a
mov r0, #0x60
add r6, r4, #0
mul r6, r0
add r0, r5, #0
add r0, #0x74
add r0, r0, r6
bl func_ov10_0211dee0
add r1, r5, r6
mov r0, #0xd0
ldrsb r1, [r1, r0]
ldr r0, _0211da8c ; =0x00000448
strb r1, [r5, r0]
add r0, r5, #0
bl func_ov10_0211db1c
ldr r0, _0211da80 ; =data_ov00_020eec9c
mov r1, #0xb0
blx func_ov00_020d77e4
b _0211da52
_0211da4a:
add r4, r4, #1
add r1, #0x60
cmp r4, #7
blt _0211da16
_0211da52:
cmp r4, #7
bge _0211da6c
mov r6, #0
add r5, #0x74
_0211da5a:
cmp r6, r4
beq _0211da64
add r0, r5, #0
bl func_ov10_0211def4
_0211da64:
add r6, r6, #1
add r5, #0x60
cmp r6, #7
blt _0211da5a
_0211da6c:
add sp, #4
pop {r3, r4, r5, r6, pc}
.align 2, 0
thumb_func_end func_ov10_0211d828
_0211da70: .word data_027e0d54
_0211da74: .word 0x00000434
_0211da78: .word 0x00000438
_0211da7c: .word data_027e05f8
_0211da80: .word data_ov00_020eec9c
_0211da84: .word 0x0000043c
_0211da88: .word 0x00000446
_0211da8c: .word 0x00000448
.global func_ov10_0211da90
thumb_func_start func_ov10_0211da90
func_ov10_0211da90: ; 0x0211da90
push {r3, r4, r5, lr}
mov r1, #0
add r5, r0, #0
mov r0, #0xb7
add r2, r1, #0
blx func_0203490c
mov r1, #0
ldr r0, _0211db10 ; =0x0000042c
add r2, r1, #0
ldr r0, [r5, r0]
add r3, r1, #0
blx func_02032788
mov r1, #0
mov r0, #0x43
lsl r0, r0, #4
ldr r0, [r5, r0]
add r2, r1, #0
add r3, r1, #0
blx func_02032788
add r0, r5, #0
add r0, #0x1c
ldr r1, [r0]
ldr r1, [r1, #0xc]
blx r1
ldr r0, _0211db14 ; =0x00000434
ldr r4, [r5, r0]
cmp r4, #0
beq _0211dadc
_0211dace:
add r0, r4, #0
ldr r1, [r0]
ldr r1, [r1, #0xc]
blx r1
ldr r4, [r4, #0xc]
cmp r4, #0
bne _0211dace
_0211dadc:
mov r2, #0
ldr r0, _0211db18 ; =0x00000171
mov r1, #6
add r3, r2, #0
str r2, [sp]
blx func_0203493c
mov r0, #0xc5
lsl r0, r0, #2
add r0, r5, r0
ldr r1, [r0]
ldr r1, [r1, #0xc]
blx r1
mov r0, #0xf3
lsl r0, r0, #2
add r0, r5, r0
ldr r1, [r0]
ldr r1, [r1, #0xc]
blx r1
mov r0, #0x37
lsl r0, r0, #4
add r0, r5, r0
ldr r1, [r0]
ldr r1, [r1, #0xc]
blx r1
pop {r3, r4, r5, pc}
.align 2, 0
thumb_func_end func_ov10_0211da90
_0211db10: .word 0x0000042c
_0211db14: .word 0x00000434
_0211db18: .word 0x00000171
.global func_ov10_0211db1c
thumb_func_start func_ov10_0211db1c
func_ov10_0211db1c: ; 0x0211db1c
push {r3, r4, r5, lr}
add r5, r0, #0
ldr r0, _0211db88 ; =0x0000042c
add r4, r1, #0
ldr r0, [r5, r0]
mov r1, #0
ldr r2, [r0]
ldr r2, [r2, #0x10]
blx r2
ldr r0, _0211db8c ; =0x00000444
mov r2, #1
add r1, r2, #0
ldrh r3, [r5, r0]
lsl r1, r4
tst r1, r3
beq _0211db54
add r0, r4, #0
blx func_ov01_020f7c90
add r1, r0, #0
ldr r0, _0211db88 ; =0x0000042c
mov r2, #0
mvn r2, r2
ldr r0, [r5, r0]
add r3, r2, #0
blx func_020328a8
b _0211db62
_0211db54:
sub r0, #0x18
sub r2, r2, #2
ldr r0, [r5, r0]
ldr r1, _0211db90 ; =0x00020038
add r3, r2, #0
blx func_020328a8
_0211db62:
mov r0, #0x43
lsl r0, r0, #4
ldr r0, [r5, r0]
mov r1, #0
ldr r2, [r0]
ldr r2, [r2, #0x10]
blx r2
mov r0, #0x43
lsl r0, r0, #4
ldr r1, _0211db94 ; =data_ov10_0211e99c
lsl r2, r4, #2
ldr r1, [r1, r2]
mov r2, #0
mvn r2, r2
ldr r0, [r5, r0]
add r3, r2, #0
blx func_020328a8
pop {r3, r4, r5, pc}
.align 2, 0
thumb_func_end func_ov10_0211db1c
_0211db88: .word 0x0000042c
_0211db8c: .word 0x00000444
_0211db90: .word 0x00020038
_0211db94: .word data_ov10_0211e99c
.global func_ov10_0211db98
thumb_func_start func_ov10_0211db98
func_ov10_0211db98: ; 0x0211db98
push {r4, lr}
add r4, r0, #0
mov r0, #0xc5
lsl r0, r0, #2
add r0, r4, r0
ldr r1, [r0]
ldr r1, [r1, #8]
blx r1
mov r0, #0x37
lsl r0, r0, #4
add r0, r4, r0
ldr r1, [r0]
ldr r1, [r1, #8]
blx r1
mov r0, #0xf3
lsl r0, r0, #2
add r0, r4, r0
ldr r1, [r0]
ldr r1, [r1, #8]
blx r1
ldr r1, _0211dc98 ; =0x00000421
ldrb r0, [r4, r1]
cmp r0, #0
beq _0211dbd6
sub r1, #0x55
add r0, r4, r1
bl func_ov10_0211e244
ldr r1, _0211dc9c ; =0x00000447
strb r0, [r4, r1]
b _0211dc4e
_0211dbd6:
add r0, r1, #0
add r0, #0x1b
ldr r0, [r4, r0]
cmp r0, #0
beq _0211dc4e
add r0, r1, #0
sub r0, #0xb7
ldrb r0, [r4, r0]
cmp r0, #0
beq _0211dc1a
add r0, r1, #0
add r0, #0x26
ldrb r0, [r4, r0]
cmp r0, #0
beq _0211dc1a
add r0, r1, #0
add r0, #0x26
ldrb r0, [r4, r0]
sub r2, r0, #1
add r0, r1, #0
add r0, #0x26
strb r2, [r4, r0]
add r0, r1, #0
add r1, #0x26
sub r0, #0x55
ldrb r1, [r4, r1]
add r0, r4, r0
bl func_ov10_0211e268
ldr r0, _0211dca0 ; =data_ov00_020eec9c
mov r1, #0xb1
blx func_ov00_020d77e4
b _0211dc4e
_0211dc1a:
ldr r1, _0211dca4 ; =0x000003c6
ldrb r0, [r4, r1]
cmp r0, #0
beq _0211dc4e
add r0, r1, #0
add r0, #0x81
ldrb r0, [r4, r0]
cmp r0, #0xa
bhs _0211dc4e
add r0, r1, #0
add r0, #0x81
ldrb r0, [r4, r0]
add r2, r0, #1
add r0, r1, #0
add r0, #0x81
strb r2, [r4, r0]
add r0, r1, #6
add r1, #0x81
ldrb r1, [r4, r1]
add r0, r4, r0
bl func_ov10_0211e268
ldr r0, _0211dca0 ; =data_ov00_020eec9c
mov r1, #0xb2
blx func_ov00_020d77e4
_0211dc4e:
ldr r0, _0211dca8 ; =0x00000408
ldr r1, [r4, r0]
sub r0, #0x28
ldr r0, [r4, r0]
asr r0, r0, #0xc
cmp r1, r0
bgt _0211dc60
mov r0, #1
b _0211dc62
_0211dc60:
mov r0, #0
_0211dc62:
cmp r0, #0
beq _0211dc6a
mov r1, #0
b _0211dc6c
_0211dc6a:
mov r1, #1
_0211dc6c:
ldr r0, _0211dcac ; =0x0000036b
strb r1, [r4, r0]
ldr r0, _0211dca8 ; =0x00000408
ldr r1, [r4, r0]
add r0, #0x1c
ldr r0, [r4, r0]
cmp r1, r0
blt _0211dc80
mov r0, #1
b _0211dc82
_0211dc80:
mov r0, #0
_0211dc82:
cmp r0, #0
beq _0211dc8e
ldr r0, _0211dcb0 ; =0x000003c7
mov r1, #0
strb r1, [r4, r0]
pop {r4, pc}
_0211dc8e:
mov r1, #1
ldr r0, _0211dcb0 ; =0x000003c7
strb r1, [r4, r0]
pop {r4, pc}
nop
thumb_func_end func_ov10_0211db98
_0211dc98: .word 0x00000421
_0211dc9c: .word 0x00000447
_0211dca0: .word data_ov00_020eec9c
_0211dca4: .word 0x000003c6
_0211dca8: .word 0x00000408
_0211dcac: .word 0x0000036b
_0211dcb0: .word 0x000003c7
.global func_ov10_0211dcb4
thumb_func_start func_ov10_0211dcb4
func_ov10_0211dcb4: ; 0x0211dcb4
push {r3, r4, r5, r6, r7, lr}
add r5, r1, #0
ldr r1, _0211dd24 ; =0x0000043c
add r7, r0, #0
ldr r0, [r7, r1]
add r1, #0xc
ldrsb r2, [r7, r1]
mov r1, #0x5c
ldrsb r1, [r0, r1]
cmp r2, r1
bne _0211dcd0
bl func_ov10_0211dee0
b _0211dcd4
_0211dcd0:
bl func_ov10_0211def4
_0211dcd4:
ldr r1, _0211dd24 ; =0x0000043c
mov r0, #0
str r0, [r7, r1]
add r0, r1, #0
add r0, #0xb
add r1, #0xa
ldrb r2, [r7, r0]
ldrb r0, [r7, r1]
sub r0, r2, r0
bpl _0211dcea
neg r0, r0
_0211dcea:
cmp r0, #0
ble _0211dcf4
mov r6, #2
lsl r6, r6, #0xc
b _0211dcf8
_0211dcf4:
mov r6, #2
lsl r6, r6, #0xe
_0211dcf8:
ldr r0, _0211dd28 ; =0x00000434
ldr r4, [r7, r0]
cmp r4, #0
beq _0211dd12
_0211dd00:
add r0, r4, #0
add r1, r5, #0
add r2, r6, #0
bl func_ov10_0211dfa4
ldr r4, [r4, #0xc]
add r5, r5, #1
cmp r4, #0
bne _0211dd00
_0211dd12:
ldr r0, _0211dd2c ; =0x00000421
ldrb r0, [r7, r0]
cmp r0, #0
beq _0211dd22
ldr r0, _0211dd30 ; =data_ov00_020eec9c
mov r1, #0xb5
blx func_ov00_020d77e4
_0211dd22:
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
thumb_func_end func_ov10_0211dcb4
_0211dd24: .word 0x0000043c
_0211dd28: .word 0x00000434
_0211dd2c: .word 0x00000421
_0211dd30: .word data_ov00_020eec9c
.global func_ov10_0211dd34
thumb_func_start func_ov10_0211dd34
func_ov10_0211dd34: ; 0x0211dd34
ldr r0, [r0, #8]
ldr r0, [r0, #0x68]
cmp r0, #1
beq _0211dd40
mov r0, #1
bx lr
_0211dd40:
mov r0, #0
bx lr
thumb_func_end func_ov10_0211dd34
.global func_ov10_0211dd44
thumb_func_start func_ov10_0211dd44
func_ov10_0211dd44: ; 0x0211dd44
push {r3, r4, r5, lr}
sub sp, #0x20
ldr r1, _0211ddcc ; =data_027e0d54
add r5, r0, #0
ldrh r1, [r1, #0x16]
ldr r0, [r5, #8]
bl func_ov10_02113358
blx func_ov10_0211a988
add r4, r0, #0
cmp r4, #0
ble _0211ddc4
mov r0, #0x4b
lsl r0, r0, #2
mov r1, #0
add r2, sp, #4
add r3, sp, #0
blx func_02034698
add r0, sp, #8
blx func_02037628
mov r0, #4
str r0, [sp, #0x14]
ldr r1, [sp, #4]
add r0, sp, #0
strh r1, [r0, #0x18]
ldr r1, [sp]
add r2, sp, #8
strh r1, [r0, #0x1a]
mov r1, #1
strb r1, [r0, #0x1d]
cmp r4, #4
blt _0211dd96
ldr r0, _0211ddd0 ; =data_027e0c68
ldr r1, _0211ddd4 ; =0x0002003a
mov r3, #0
blx func_02036f68
b _0211dda0
_0211dd96:
ldr r0, _0211ddd0 ; =data_027e0c68
ldr r1, _0211ddd8 ; =0x00020039
mov r3, #0
blx func_02036f68
_0211dda0:
str r0, [r5, #0x18]
mov r0, #0x11
lsl r0, r0, #6
add r1, r5, r0
ldr r2, [r5, #0x18]
mov r0, #1
str r1, [r2, #0x38]
strh r0, [r2, #0x3c]
lsl r0, r4, #2
str r0, [r1]
lsl r1, r4, #0x18
ldr r0, _0211ddcc ; =data_027e0d54
lsr r1, r1, #0x18
blx func_ov10_021187f4
add sp, #0x20
mov r0, #1
pop {r3, r4, r5, pc}
_0211ddc4:
mov r0, #0
str r0, [r5, #0x18]
add sp, #0x20
pop {r3, r4, r5, pc}
.align 2, 0
thumb_func_end func_ov10_0211dd44
_0211ddcc: .word data_027e0d54
_0211ddd0: .word data_027e0c68
_0211ddd4: .word 0x0002003a
_0211ddd8: .word 0x00020039
.global func_ov10_0211dddc
thumb_func_start func_ov10_0211dddc
func_ov10_0211dddc: ; 0x0211dddc
push {r4, lr}
add r4, r0, #0
blx func_ov01_020f7f78
ldr r0, _0211ddf0 ; =data_ov10_0211f2d0
str r0, [r4]
mov r0, #0
str r0, [r4, #0x58]
add r0, r4, #0
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_0211dddc
_0211ddf0: .word data_ov10_0211f2d0
.global func_ov10_0211ddf4
thumb_func_start func_ov10_0211ddf4
func_ov10_0211ddf4: ; 0x0211ddf4
push {r4, r5, lr}
sub sp, #0xc
mov r5, #0
str r5, [sp]
mov r3, #0xc
str r3, [sp, #4]
ldr r3, _0211de30 ; =0x00000171
add r4, r0, #0
str r5, [sp, #8]
blx func_ov01_020f802c
blx func_020329b0
mov r1, #0x10
str r1, [sp]
add r2, r5, #0
ldr r1, _0211de30 ; =0x00000171
mov r3, #0x98
str r2, [sp, #4]
blx func_02032a74
add r2, r5, #0
mov r1, #1
add r3, r2, #0
str r0, [r4, #0x58]
blx func_02032714
add sp, #0xc
pop {r4, r5, pc}
nop
thumb_func_end func_ov10_0211ddf4
_0211de30: .word 0x00000171
.global func_ov10_0211de34
thumb_func_start func_ov10_0211de34
func_ov10_0211de34: ; 0x0211de34
push {r3, r4, r5, lr}
add r5, r0, #0
add r1, r5, #0
add r1, #0x42
ldrb r4, [r1]
ldr r1, [r0]
ldr r1, [r1, #0x10]
blx r1
cmp r4, #0
beq _0211de66
add r0, r5, #0
add r0, #0x42
ldrb r0, [r0]
cmp r0, #0
bne _0211de66
add r0, r5, #0
add r0, #0x52
ldrh r1, [r0]
ldr r0, _0211de70 ; =0x0000ffff
cmp r1, r0
bne _0211de66
add r0, r5, #0
mov r1, #0
add r0, #0x57
strb r1, [r0]
_0211de66:
add r0, r5, #0
ldr r1, [r0]
ldr r1, [r1, #0x14]
blx r1
pop {r3, r4, r5, pc}
.align 2, 0
thumb_func_end func_ov10_0211de34
_0211de70: .word 0x0000ffff
.global func_ov10_0211de74
thumb_func_start func_ov10_0211de74
func_ov10_0211de74: ; 0x0211de74
push {r4, lr}
sub sp, #0x20
add r4, r0, #0
blx func_ov01_020f80f4
add r0, sp, #0
blx func_01ffbe34
mov r0, #2
str r0, [sp, #4]
ldr r2, [r4, #0x14]
ldr r3, [r4, #0x3c]
asr r2, r2, #0xc
sub r2, r3, r2
ldr r0, [r4, #0x58]
mov r1, #0
add r3, sp, #0
blx func_02032788
add sp, #0x20
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_0211de74
.global func_ov10_0211dea0
thumb_func_start func_ov10_0211dea0
func_ov10_0211dea0: ; 0x0211dea0
push {r4, lr}
add r4, r0, #0
add r2, r4, #0
add r2, #0x57
ldrb r2, [r2]
ldr r1, _0211dedc ; =data_027e0d78
cmp r2, #0
beq _0211ded4
add r2, r4, #0
add r2, #0x42
ldrb r2, [r2]
cmp r2, #0
bne _0211ded4
ldrh r3, [r1, #0x34]
mov r2, #1
tst r2, r3
beq _0211ded4
ldr r2, [r0]
ldr r2, [r2, #0x18]
blx r2
cmp r0, #0
beq _0211ded4
mov r0, #1
add r4, #0x56
strb r0, [r4]
pop {r4, pc}
_0211ded4:
mov r0, #0
add r4, #0x56
strb r0, [r4]
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_0211dea0
_0211dedc: .word data_027e0d78
.global func_ov10_0211dee0
thumb_func_start func_ov10_0211dee0
func_ov10_0211dee0: ; 0x0211dee0
add r1, r0, #0
ldr r3, _0211def0 ; =func_ov10_0211df10
mov r2, #1
add r1, #0x55
strb r2, [r1]
mov r1, #7
bx r3
nop
thumb_func_end func_ov10_0211dee0
_0211def0: .word func_ov10_0211df10
.global func_ov10_0211def4
thumb_func_start func_ov10_0211def4
func_ov10_0211def4: ; 0x0211def4
add r1, r0, #0
ldr r3, _0211df04 ; =func_ov10_0211df10
mov r2, #0
add r1, #0x55
strb r2, [r1]
mov r1, #4
bx r3
nop
thumb_func_end func_ov10_0211def4
_0211df04: .word func_ov10_0211df10
.global func_ov10_0211df08
thumb_func_start func_ov10_0211df08
func_ov10_0211df08: ; 0x0211df08
add r0, #0x5c
strb r1, [r0]
bx lr
.align 2, 0
thumb_func_end func_ov10_0211df08
.global func_ov10_0211df10
thumb_func_start func_ov10_0211df10
func_ov10_0211df10: ; 0x0211df10
push {r4, r5, r6, lr}
add r5, r0, #0
ldr r0, _0211df64 ; =data_ov10_0211f444
add r6, r1, #0
ldr r1, [r0]
ldr r0, _0211df68 ; =0x00000444
ldrh r4, [r1, r0]
ldr r0, [r5, #0x58]
mov r1, #0
ldr r2, [r0]
ldr r2, [r2, #0x10]
blx r2
mov r0, #0x5c
ldrsb r0, [r5, r0]
cmp r0, #0x10
bge _0211df5a
mov r2, #1
add r1, r2, #0
lsl r1, r0
tst r1, r4
beq _0211df4e
blx func_ov01_020f7c90
add r1, r0, #0
mov r2, #0
ldr r0, [r5, #0x58]
mvn r2, r2
add r3, r6, #0
blx func_020328a8
b _0211df5a
_0211df4e:
ldr r0, [r5, #0x58]
ldr r1, _0211df6c ; =0x00020038
sub r2, r2, #2
add r3, r6, #0
blx func_020328a8
_0211df5a:
add r0, r5, #0
blx func_ov01_020f8124
pop {r4, r5, r6, pc}
nop
thumb_func_end func_ov10_0211df10
_0211df64: .word data_ov10_0211f444
_0211df68: .word 0x00000444
_0211df6c: .word 0x00020038
.global func_ov10_0211df70
thumb_func_start func_ov10_0211df70
func_ov10_0211df70: ; 0x0211df70
cmp r1, #0
blt _0211df7e
cmp r1, #6
bge _0211df7e
add r0, #0x52
strh r1, [r0]
bx lr
_0211df7e:
ldr r1, _0211df88 ; =0x0000ffff
add r0, #0x52
strh r1, [r0]
bx lr
nop
thumb_func_end func_ov10_0211df70
_0211df88: .word 0x0000ffff
.global func_ov10_0211df8c
thumb_func_start func_ov10_0211df8c
func_ov10_0211df8c: ; 0x0211df8c
push {r4, lr}
add r4, r1, #0
mov r2, #0x1f
add r3, r4, #0
mul r3, r2
ldr r2, [r0, #0x14]
ldr r1, [r0, #0x38]
asr r2, r2, #0xc
add r2, r3, r2
blx func_ov01_020f7ec8
pop {r4, pc}
thumb_func_end func_ov10_0211df8c
.global func_ov10_0211dfa4
thumb_func_start func_ov10_0211dfa4
func_ov10_0211dfa4: ; 0x0211dfa4
push {r3, r4, r5, r6, lr}
sub sp, #4
add r4, r1, #0
mov r1, #0
mov r6, #0x1f
mul r6, r4
add r5, r0, #0
str r1, [sp]
add r3, r2, #0
ldr r2, [r5, #0x14]
lsl r6, r6, #0xc
ldr r1, [r5, #0x10]
add r2, r2, r6
blx func_ov01_020f7f34
add r0, r5, #0
add r1, r4, #0
bl func_ov10_0211df70
mov r0, #1
add r5, #0x57
strb r0, [r5]
add sp, #4
pop {r3, r4, r5, r6, pc}
thumb_func_end func_ov10_0211dfa4
.global func_ov10_0211dfd4
thumb_func_start func_ov10_0211dfd4
func_ov10_0211dfd4: ; 0x0211dfd4
push {r4, r5, lr}
sub sp, #0xc
str r2, [sp]
add r4, r1, #0
str r3, [sp, #4]
add r1, sp, #8
ldrh r1, [r1, #0x10]
add r3, r4, #0
add r5, r0, #0
str r1, [sp, #8]
mov r1, #0
add r2, r1, #0
blx func_ov01_020f802c
add r1, sp, #8
add r0, r5, #0
ldrh r2, [r1, #0x14]
add r0, #0x58
strh r2, [r0]
ldrb r0, [r1, #0x18]
cmp r0, #0
bne _0211e00c
add r0, r5, #0
add r0, #0x4c
strh r2, [r0]
mov r0, #0
add r5, #0x57
strb r0, [r5]
_0211e00c:
add sp, #0xc
pop {r4, r5, pc}
thumb_func_end func_ov10_0211dfd4
.global func_ov10_0211e010
thumb_func_start func_ov10_0211e010
func_ov10_0211e010: ; 0x0211e010
push {r3, r4, r5, lr}
add r5, r0, #0
add r1, r5, #0
mov r2, #0
add r1, #0x56
strb r2, [r1]
add r1, r5, #0
add r1, #0x57
ldrb r1, [r1]
ldr r4, _0211e0cc ; =data_027e0d78
cmp r1, #0
beq _0211e078
ldrb r1, [r4, #0xc]
cmp r1, #0
beq _0211e078
ldr r2, [r0]
add r1, r4, #0
ldr r2, [r2, #0x18]
blx r2
cmp r0, #0
beq _0211e078
ldrh r1, [r4, #0x34]
mov r0, #1
tst r0, r1
bne _0211e04c
add r0, r5, #0
add r0, #0x54
ldrb r0, [r0]
cmp r0, #0
beq _0211e0ba
_0211e04c:
add r0, r5, #0
add r0, #0x55
ldrb r0, [r0]
cmp r0, #0
bne _0211e0ba
ldr r0, [r5, #0x44]
add r0, r0, #2
str r0, [r5, #0x44]
add r0, r5, #0
add r0, #0x4e
ldrh r1, [r0]
add r0, r5, #0
add r0, #0x4c
strh r1, [r0]
add r0, r5, #0
mov r1, #1
add r0, #0x54
strb r1, [r0]
add r0, r5, #0
add r0, #0x55
strb r1, [r0]
b _0211e0ba
_0211e078:
add r0, r5, #0
add r0, #0x55
ldrb r0, [r0]
cmp r0, #0
beq _0211e090
ldr r0, [r5, #0x44]
mov r1, #0
sub r0, r0, #2
str r0, [r5, #0x44]
add r0, r5, #0
add r0, #0x55
strb r1, [r0]
_0211e090:
add r0, r5, #0
add r0, #0x57
ldrb r0, [r0]
cmp r0, #0
beq _0211e0a0
add r0, r5, #0
add r0, #0x50
b _0211e0a4
_0211e0a0:
add r0, r5, #0
add r0, #0x58
_0211e0a4:
ldrh r1, [r0]
add r0, r5, #0
add r0, #0x4c
strh r1, [r0]
ldrb r0, [r4, #0xc]
cmp r0, #0
bne _0211e0ba
add r0, r5, #0
mov r1, #0
add r0, #0x54
strb r1, [r0]
_0211e0ba:
add r0, r5, #0
add r0, #0x55
ldrb r0, [r0]
cmp r0, #0
beq _0211e0ca
mov r0, #1
add r5, #0x56
strb r0, [r5]
_0211e0ca:
pop {r3, r4, r5, pc}
.align 2, 0
thumb_func_end func_ov10_0211e010
_0211e0cc: .word data_027e0d78
.global func_ov10_0211e0d0
thumb_func_start func_ov10_0211e0d0
func_ov10_0211e0d0: ; 0x0211e0d0
push {r3, r4, r5, lr}
add r5, r0, #0
ldr r0, _0211e0f0 ; =data_ov10_0211f444
add r4, r1, #0
ldr r0, [r0]
bl func_ov10_0211dd34
cmp r0, #0
beq _0211e0e6
mov r0, #0
pop {r3, r4, r5, pc}
_0211e0e6:
add r0, r5, #0
add r1, r4, #0
blx func_ov01_020f8234
pop {r3, r4, r5, pc}
.align 2, 0
thumb_func_end func_ov10_0211e0d0
_0211e0f0: .word data_ov10_0211f444
.global func_ov10_0211e0f4
thumb_func_start func_ov10_0211e0f4
func_ov10_0211e0f4: ; 0x0211e0f4
push {r4, r5, lr}
sub sp, #0xc
add r4, r1, #0
mov r1, #7
str r1, [sp]
mov r1, #8
str r1, [sp, #4]
mov r1, #6
str r1, [sp, #8]
mov r1, #0
ldr r3, _0211e130 ; =0x00000171
add r2, r1, #0
add r5, r0, #0
blx func_ov01_020f802c
ldr r0, _0211e130 ; =0x00000171
mov r1, #8
blx func_020346f0
str r0, [r5, #0x58]
lsl r1, r0, #0xc
ldr r0, [r5, #0x14]
sub r0, r1, r0
add r1, r4, #0
blx func_01ff9b4c
str r0, [r5, #0x5c]
add sp, #0xc
pop {r4, r5, pc}
nop
thumb_func_end func_ov10_0211e0f4
_0211e130: .word 0x00000171
.global func_ov10_0211e134
thumb_func_start func_ov10_0211e134
func_ov10_0211e134: ; 0x0211e134
push {r4, lr}
add r4, r0, #0
add r1, r4, #0
add r1, #0x55
ldrb r1, [r1]
cmp r1, #0
bne _0211e148
ldr r1, [r0]
ldr r1, [r1, #0x10]
blx r1
_0211e148:
add r0, r4, #0
ldr r1, [r0]
ldr r1, [r1, #0x14]
blx r1
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_0211e134
.global func_ov10_0211e154
thumb_func_start func_ov10_0211e154
func_ov10_0211e154: ; 0x0211e154
push {r4, r5, r6, lr}
add r5, r0, #0
add r1, r5, #0
add r1, #0x42
ldrb r1, [r1]
cmp r1, #0
bne _0211e200
ldr r6, _0211e204 ; =data_027e0d78
add r1, r5, #0
ldrh r2, [r6, #0x34]
add r1, #0x55
ldrb r4, [r1]
mov r1, #1
tst r1, r2
beq _0211e19c
ldr r2, [r0]
add r1, r6, #0
ldr r2, [r2, #0x18]
blx r2
cmp r0, #0
beq _0211e19c
add r0, r5, #0
add r0, #0x4e
ldrh r1, [r0]
add r0, r5, #0
add r0, #0x4c
strh r1, [r0]
add r0, r5, #0
mov r1, #1
add r0, #0x55
strb r1, [r0]
ldr r0, _0211e208 ; =data_ov00_020eec9c
mov r1, #0xb3
blx func_ov00_020d77e4
b _0211e1b6
_0211e19c:
ldrb r0, [r6, #0xc]
cmp r0, #0
bne _0211e1b6
add r0, r5, #0
add r0, #0x50
ldrh r1, [r0]
add r0, r5, #0
add r0, #0x4c
strh r1, [r0]
add r0, r5, #0
mov r1, #0
add r0, #0x55
strb r1, [r0]
_0211e1b6:
add r0, r5, #0
add r0, #0x55
ldrb r0, [r0]
cmp r0, #0
beq _0211e1e6
ldr r0, [r5, #0x14]
ldr r1, [r6, #0x14]
asr r0, r0, #0xc
cmp r1, r0
bgt _0211e1ce
str r0, [r5, #0x3c]
b _0211e1da
_0211e1ce:
ldr r0, [r5, #0x58]
cmp r1, r0
blt _0211e1d8
str r0, [r5, #0x3c]
b _0211e1da
_0211e1d8:
str r1, [r5, #0x3c]
_0211e1da:
ldr r1, [r5, #0x38]
ldr r2, [r5, #0x3c]
add r0, r5, #0
blx func_ov01_020f7ec8
pop {r4, r5, r6, pc}
_0211e1e6:
cmp r4, #0
beq _0211e200
add r0, r5, #0
bl func_ov10_0211e244
add r1, r0, #0
add r0, r5, #0
bl func_ov10_0211e268
ldr r0, _0211e208 ; =data_ov00_020eec9c
mov r1, #0xb4
blx func_ov00_020d77e4
_0211e200:
pop {r4, r5, r6, pc}
nop
thumb_func_end func_ov10_0211e154
_0211e204: .word data_027e0d78
_0211e208: .word data_ov00_020eec9c
.global func_ov10_0211e20c
thumb_func_start func_ov10_0211e20c
func_ov10_0211e20c: ; 0x0211e20c
push {r3, r4, r5, lr}
add r4, r0, #0
ldr r0, _0211e240 ; =data_ov10_0211f444
add r5, r1, #0
ldr r0, [r0]
bl func_ov10_0211dd34
cmp r0, #0
beq _0211e222
mov r0, #0
pop {r3, r4, r5, pc}
_0211e222:
add r1, r4, #0
add r1, #0x52
ldr r2, [r5, #0x10]
ldr r0, [r4, #0x48]
ldr r3, [r4, #0x3c]
ldr r4, [r4, #0x14]
ldrh r1, [r1]
asr r4, r4, #0xc
ldr r5, [r5, #0x14]
sub r3, r3, r4
sub r3, r5, r3
blx func_02034b90
pop {r3, r4, r5, pc}
nop
thumb_func_end func_ov10_0211e20c
_0211e240: .word data_ov10_0211f444
.global func_ov10_0211e244
thumb_func_start func_ov10_0211e244
func_ov10_0211e244: ; 0x0211e244
ldr r2, [r0, #0x14]
ldr r1, [r0, #0x2c]
sub r1, r1, r2
ldr r2, [r0, #0x5c]
asr r0, r2, #1
cmp r1, r0
bge _0211e256
mov r0, #0
bx lr
_0211e256:
sub r1, r1, r0
mov r0, #1
cmp r1, r2
blt _0211e266
_0211e25e:
sub r1, r1, r2
add r0, r0, #1
cmp r1, r2
bge _0211e25e
_0211e266:
bx lr
thumb_func_end func_ov10_0211e244
.global func_ov10_0211e268
thumb_func_start func_ov10_0211e268
func_ov10_0211e268: ; 0x0211e268
push {r3, r4, lr}
sub sp, #4
add r3, r1, #0
mov r1, #0
str r1, [sp]
ldr r2, [r0, #0x5c]
ldr r4, [r0, #0x14]
mul r3, r2
add r2, r4, r3
mov r3, #2
ldr r1, [r0, #0x10]
lsl r3, r3, #0xe
blx func_ov01_020f7f34
add sp, #4
pop {r3, r4, pc}
thumb_func_end func_ov10_0211e268
.global func_ov10_0211e288
arm_func_start func_ov10_0211e288
func_ov10_0211e288: ; 0x0211e288
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov01_020f8018
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211e288
.global func_ov10_0211e2a4
arm_func_start func_ov10_0211e2a4
func_ov10_0211e2a4: ; 0x0211e2a4
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov01_020f82c8
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211e2a4
.global func_ov10_0211e2c0
arm_func_start func_ov10_0211e2c0
func_ov10_0211e2c0: ; 0x0211e2c0
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov01_020f8018
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211e2c0
.global func_ov10_0211e2dc
thumb_func_start func_ov10_0211e2dc
func_ov10_0211e2dc: ; 0x0211e2dc
push {r4, lr}
mov r2, #1
mov r3, #0
add r4, r0, #0
bl func_ov10_02112f18
ldr r0, _0211e2f0 ; =data_ov10_0211f3d0
str r0, [r4]
add r0, r4, #0
pop {r4, pc}
.align 2, 0
thumb_func_end func_ov10_0211e2dc
_0211e2f0: .word data_ov10_0211f3d0
.global func_ov10_0211e2f4
arm_func_start func_ov10_0211e2f4
func_ov10_0211e2f4: ; 0x0211e2f4
stmdb sp!, {r4, lr}
mov r4, r0
ldr r0, [r4, #0x14]
adds r0, r0, #1
str r0, [r4, #0x14]
movmi r0, #0
strmi r0, [r4, #0x14]
ldr r0, [r4, #0x10]
cmp r0, #0
ldmneia sp!, {r4, pc}
ldr r0, _0211e3cc ; =data_027e0d54
ldrb r0, [r0, #0xd]
cmp r0, #0
moveq r0, #1
movne r0, #0
cmp r0, #0
ldmeqia sp!, {r4, pc}
ldr r0, _0211e3d0 ; =data_027e0618
ldr r0, [r0, #4]
cmp r0, #7
addls pc, pc, r0, lsl #2
ldmia sp!, {r4, pc}
_0211e34c: ; jump table
ldmia sp!, {r4, pc} ; case 0
ldmia sp!, {r4, pc} ; case 1
ldmia sp!, {r4, pc} ; case 2
ldmia sp!, {r4, pc} ; case 3
b _0211e36c ; case 4
b _0211e384 ; case 5
b _0211e384 ; case 6
b _0211e3a8 ; case 7
_0211e36c:
ldr r0, [r4, #8]
mov r1, #1
add r0, r0, #0x10
mov r2, #2
bl func_ov10_0211c784
ldmia sp!, {r4, pc}
_0211e384:
ldr r0, [r4, #8]
mov r1, #4
blx func_ov10_02113760
ldr r0, [r4, #8]
mov r1, #4
add r0, r0, #0x10
mov r2, #2
bl func_ov10_0211c784
ldmia sp!, {r4, pc}
_0211e3a8:
ldr r0, [r4, #8]
mov r1, #4
blx func_ov10_02113760
ldr r0, [r4, #8]
mov r1, #3
add r0, r0, #0x10
mov r2, #7
bl func_ov10_0211c784
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_0211e2f4
_0211e3cc: .word data_027e0d54
_0211e3d0: .word data_027e0618
.global func_ov10_0211e3d4
arm_func_start func_ov10_0211e3d4
func_ov10_0211e3d4: ; 0x0211e3d4
stmdb sp!, {r3, lr}
ldr r0, _0211e418 ; =data_027e0618
ldr r0, [r0, #4]
cmp r0, #4
ldmneia sp!, {r3, pc}
ldr r0, _0211e41c ; =data_027e0cbc
mov r1, #0x2e
bl func_0203d7e0
cmp r0, #0
ldmeqia sp!, {r3, pc}
mov r1, #0
ldr r0, _0211e420 ; =0x0000010f
mov r2, r1
mov r3, r1
str r1, [sp]
bl func_0203493c
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov10_0211e3d4
_0211e418: .word data_027e0618
_0211e41c: .word data_027e0cbc
_0211e420: .word 0x0000010f
.global func_ov10_0211e424
arm_func_start func_ov10_0211e424
func_ov10_0211e424: ; 0x0211e424
stmdb sp!, {r4, lr}
mov r4, r0
blx func_ov10_02112f44
mov r0, r4
bl _ZN9SysObjectdlEPv
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211e424
.global func_ov10_0211e440
arm_func_start func_ov10_0211e440
func_ov10_0211e440: ; 0x0211e440
stmdb sp!, {r4, lr}
mov r4, r0
blx func_ov10_02112f44
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211e440
.global func_ov10_0211e454
arm_func_start func_ov10_0211e454
func_ov10_0211e454: ; 0x0211e454
stmdb sp!, {r4, lr}
mov r4, r0
blx func_ov00_0207a418
add r1, r4, #0x1400
mov r0, #0
mov r2, #0x1000
bl func_02007938
add r0, r4, #0x2400
blx func_ov00_0207a5ac
add r0, r4, #0x2900
blx func_ov00_0207c170
add r0, r4, #0x13c
add r0, r0, #0x2800
blx func_ov00_0207a654
add r0, r4, #0x2940
blx func_ov00_0207a6d0
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211e454
.global func_ov10_0211e498
thumb_func_start func_ov10_0211e498
func_ov10_0211e498: ; 0x0211e498
push {r3, r4, r5, r6, r7, lr}
sub sp, #8
ldr r1, _0211e4fc ; =0x00002992
str r0, [sp]
ldrb r0, [r0, r1]
add r2, sp, #4
mov r4, #0
strb r0, [r2]
ldr r0, [sp]
add r1, #0x2a
ldrb r0, [r0, r1]
add r5, r4, #0
strb r0, [r2, #1]
mov r2, #1
add r0, sp, #4
add r7, r2, #0
_0211e4b8:
add r1, r5, #0
tst r1, r7
beq _0211e4c2
mov r6, #1
b _0211e4c4
_0211e4c2:
mov r6, #0
_0211e4c4:
mov r1, #7
sub r1, r1, r5
add r3, r2, #0
lsl r3, r1
ldrb r1, [r0, r6]
tst r1, r3
beq _0211e4d6
add r1, r2, #0
b _0211e4d8
_0211e4d6:
mov r1, #0
_0211e4d8:
lsl r1, r5
orr r1, r4
lsl r1, r1, #0x18
add r5, r5, #1
lsr r4, r1, #0x18
cmp r5, #8
blt _0211e4b8
add r0, r4, #0
mov r1, #0xa
blx func_01ff9b88
mov r2, #0xa7
ldr r1, [sp]
lsl r2, r2, #6
str r0, [r1, r2]
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
nop
thumb_func_end func_ov10_0211e498
_0211e4fc: .word 0x00002992
.global func_ov10_0211e500
arm_func_start func_ov10_0211e500
func_ov10_0211e500: ; 0x0211e500
stmdb sp!, {r4, r5, r6, lr}
mov r6, r0
ldr r0, [r6, #0xa0]
mov r5, r1
cmp r5, r0
ldmeqia sp!, {r4, r5, r6, pc}
cmp r5, #3
mov r4, #0
addls pc, pc, r5, lsl #2
b _0211e554
_0211e528: ; jump table
b _0211e538 ; case 0
b _0211e55c ; case 1
b _0211e544 ; case 2
b _0211e54c ; case 3
_0211e538:
cmp r2, #0
movne r4, #1
b _0211e55c
_0211e544:
mov r4, #2
b _0211e55c
_0211e54c:
mov r4, #3
b _0211e55c
_0211e554:
mov r4, #0
mov r5, #1
_0211e55c:
mov r0, #0
bl func_0201f448
bl func_ov10_0211e730
cmp r0, #0
beq _0211e57c
bl func_ov10_0211e730
mov r1, r4
bl func_ov10_0211e740
_0211e57c:
str r5, [r6, #0xa0]
ldmia sp!, {r4, r5, r6, pc}
arm_func_end func_ov10_0211e500
.global func_ov10_0211e584
arm_func_start func_ov10_0211e584
func_ov10_0211e584: ; 0x0211e584
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov10_0211e6ac
ldr r0, [r4, #0xa0]
cmp r0, #3
ldmneia sp!, {r4, pc}
mov r0, #0
bl func_0201f448
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211e584
.global func_ov10_0211e5a8
arm_func_start func_ov10_0211e5a8
func_ov10_0211e5a8: ; 0x0211e5a8
stmdb sp!, {r4, lr}
mov r4, r0
bl func_ov10_0211e6f4
ldr r0, [r4, #0xa0]
cmp r0, #3
ldmneia sp!, {r4, pc}
mov r0, #1
bl func_0201f448
ldmia sp!, {r4, pc}
arm_func_end func_ov10_0211e5a8
.global func_ov10_0211e5cc
arm_func_start func_ov10_0211e5cc
func_ov10_0211e5cc: ; 0x0211e5cc
stmdb sp!, {r3, lr}
ldr r0, [r0, #0xa0]
cmp r0, #0
ldmneia sp!, {r3, pc}
bl func_ov10_0211e730
cmp r0, #0
ldmeqia sp!, {r3, pc}
bl func_ov10_0211e730
mov r1, #1
bl func_ov10_0211e740
ldmia sp!, {r3, pc}
arm_func_end func_ov10_0211e5cc
.global func_ov10_0211e5f8
arm_func_start func_ov10_0211e5f8
func_ov10_0211e5f8: ; 0x0211e5f8
stmdb sp!, {r3, lr}
ldr r0, [r0, #0xa0]
cmp r0, #0
ldmneia sp!, {r3, pc}
bl func_ov10_0211e730
cmp r0, #0
ldmeqia sp!, {r3, pc}
bl func_ov10_0211e730
mov r1, #0
bl func_ov10_0211e740
ldmia sp!, {r3, pc}
arm_func_end func_ov10_0211e5f8
.global func_ov10_0211e624
arm_func_start func_ov10_0211e624
func_ov10_0211e624: ; 0x0211e624
stmdb sp!, {r3, r4, lr}
sub sp, sp, #4
mov r4, r0
mov r2, #0
mov r1, #0x800
str r2, [r4, #0x800]
bl func_0202a56c
ldr r0, _0211e67c ; =data_027e0ce0
add r1, sp, #0
ldr r0, [r0, #4]
blx func_0202d0cc
cmp r0, #0
beq _0211e670
ldr r0, _0211e67c ; =data_027e0ce0
ldr r1, [sp]
ldr r0, [r0, #4]
mov r2, #4
blx func_0201739c
str r0, [r4, #0x800]
_0211e670:
mov r0, r4
add sp, sp, #4
ldmia sp!, {r3, r4, pc}
.align 2, 0
arm_func_end func_ov10_0211e624
_0211e67c: .word data_027e0ce0
.global func_ov10_0211e680
arm_func_start func_ov10_0211e680
func_ov10_0211e680: ; 0x0211e680
stmdb sp!, {r4, lr}
mov r4, r0
ldr r1, [r4, #0x800]
cmp r1, #0
beq _0211e6a0
ldr r0, _0211e6a8 ; =data_027e0ce0
ldr r0, [r0, #4]
blx func_020174a4
_0211e6a0:
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_0211e680
_0211e6a8: .word data_027e0ce0
.global func_ov10_0211e6ac
arm_func_start func_ov10_0211e6ac
func_ov10_0211e6ac: ; 0x0211e6ac
stmdb sp!, {r3, lr}
ldr r0, _0211e6ec ; =data_ov10_0211f448
ldr r0, [r0]
cmp r0, #0
ldmneia sp!, {r3, pc}
ldr r1, _0211e6f0 ; =data_027e0ce0
mov r0, #0x820
ldr r1, [r1, #4]
mov r2, #0x20
bl _ZN9SysObjectnwEmPjj
cmp r0, #0
beq _0211e6e0
bl func_ov10_0211e624
_0211e6e0:
ldr r1, _0211e6ec ; =data_ov10_0211f448
str r0, [r1]
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov10_0211e6ac
_0211e6ec: .word data_ov10_0211f448
_0211e6f0: .word data_027e0ce0
.global func_ov10_0211e6f4
arm_func_start func_ov10_0211e6f4
func_ov10_0211e6f4: ; 0x0211e6f4
stmdb sp!, {r4, lr}
bl func_0202a5c0
ldr r0, _0211e72c ; =data_ov10_0211f448
ldr r4, [r0]
cmp r4, #0
beq _0211e71c
mov r0, r4
bl func_ov10_0211e680
mov r0, r4
bl _ZN9SysObjectdlEPv
_0211e71c:
ldr r0, _0211e72c ; =data_ov10_0211f448
mov r1, #0
str r1, [r0]
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov10_0211e6f4
_0211e72c: .word data_ov10_0211f448
.global func_ov10_0211e730
arm_func_start func_ov10_0211e730
func_ov10_0211e730: ; 0x0211e730
ldr r0, _0211e73c ; =data_ov10_0211f448
ldr r0, [r0]
bx lr
.align 2, 0
arm_func_end func_ov10_0211e730
_0211e73c: .word data_ov10_0211f448
.global func_ov10_0211e740
arm_func_start func_ov10_0211e740
func_ov10_0211e740: ; 0x0211e740
ldr ip, _0211e74c ; =func_0202a5e8
mov r0, r1
bx ip
.align 2, 0
arm_func_end func_ov10_0211e740
_0211e74c: .word func_0202a5e8
.rodata
.global data_ov10_0211e750
data_ov10_0211e750: ; 0x0211e750
.byte 0x31, 0x00, 0x00, 0x00
.global data_ov10_0211e754
data_ov10_0211e754: ; 0x0211e754
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211e758
data_ov10_0211e758: ; 0x0211e758
.byte 0x32, 0x00, 0x00, 0x00
.global data_ov10_0211e75c
data_ov10_0211e75c: ; 0x0211e75c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211e760
data_ov10_0211e760: ; 0x0211e760
.byte 0x02, 0x00, 0x00, 0x00
.global data_ov10_0211e764
data_ov10_0211e764: ; 0x0211e764
.byte 0x09
.global data_ov10_0211e765
data_ov10_0211e765: ; 0x0211e765
.byte 0x07
.global data_ov10_0211e766
data_ov10_0211e766: ; 0x0211e766
.byte 0x0a
.global data_ov10_0211e767
data_ov10_0211e767: ; 0x0211e767
.byte 0x08
.global data_ov10_0211e768
data_ov10_0211e768: ; 0x0211e768
.byte 0x32, 0x00, 0x00, 0x00
.global data_ov10_0211e76c
data_ov10_0211e76c: ; 0x0211e76c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211e770
data_ov10_0211e770: ; 0x0211e770
.byte 0x31, 0x00, 0x00, 0x00
.global data_ov10_0211e774
data_ov10_0211e774: ; 0x0211e774
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211e778
data_ov10_0211e778: ; 0x0211e778
.byte 0x9c, 0xff, 0xff, 0xff
.global data_ov10_0211e77c
data_ov10_0211e77c: ; 0x0211e77c
.byte 0x32, 0x00, 0x00, 0x00
.global data_ov10_0211e780
data_ov10_0211e780: ; 0x0211e780
.byte 0x01, 0x34
.global data_ov10_0211e782
data_ov10_0211e782: ; 0x0211e782
.byte 0x1a, 0x35
.global data_ov10_0211e784
data_ov10_0211e784: ; 0x0211e784
.byte 0x00, 0x14
.global data_ov10_0211e786
data_ov10_0211e786: ; 0x0211e786
.byte 0x00, 0x00
.global data_ov10_0211e788
data_ov10_0211e788: ; 0x0211e788
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211e78c
data_ov10_0211e78c: ; 0x0211e78c
.byte 0x01, 0x00, 0x00, 0x00
.global data_ov10_0211e790
data_ov10_0211e790: ; 0x0211e790
.byte 0x00, 0x05, 0x00, 0x00
.global data_ov10_0211e794
data_ov10_0211e794: ; 0x0211e794
.byte 0x02, 0x00, 0x00, 0x00
.global data_ov10_0211e798
data_ov10_0211e798: ; 0x0211e798
.byte 0x03, 0x00, 0x00, 0x00
.global data_ov10_0211e79c
data_ov10_0211e79c: ; 0x0211e79c
.byte 0x80, 0x00, 0x00, 0x00
.global data_ov10_0211e7a0
data_ov10_0211e7a0: ; 0x0211e7a0
.byte 0x04, 0x00, 0x00, 0x00
.global data_ov10_0211e7a4
data_ov10_0211e7a4: ; 0x0211e7a4
.byte 0x05, 0x00, 0x00, 0x00
.global data_ov10_0211e7a8
data_ov10_0211e7a8: ; 0x0211e7a8
.byte 0x80, 0x00, 0x00, 0x00
.global data_ov10_0211e7ac
data_ov10_0211e7ac: ; 0x0211e7ac
.byte 0x06, 0x00, 0x00, 0x00
.global data_ov10_0211e7b0
data_ov10_0211e7b0: ; 0x0211e7b0
.byte 0x07, 0x00, 0x00, 0x00
.global data_ov10_0211e7b4
data_ov10_0211e7b4: ; 0x0211e7b4
.byte 0x80, 0x00, 0x00, 0x00
.global data_ov10_0211e7b8
data_ov10_0211e7b8: ; 0x0211e7b8
.byte 0x08, 0x00, 0x00, 0x00
.global data_ov10_0211e7bc
data_ov10_0211e7bc: ; 0x0211e7bc
.byte 0x09, 0x00
.global data_ov10_0211e7be
data_ov10_0211e7be: ; 0x0211e7be
.byte 0x00, 0x00
.global data_ov10_0211e7c0
data_ov10_0211e7c0: ; 0x0211e7c0
.byte 0x30, 0x00
.global data_ov10_0211e7c2
data_ov10_0211e7c2: ; 0x0211e7c2
.byte 0x31, 0x00
.global data_ov10_0211e7c4
data_ov10_0211e7c4: ; 0x0211e7c4
.byte 0x32, 0x00
.global data_ov10_0211e7c6
data_ov10_0211e7c6: ; 0x0211e7c6
.byte 0x33, 0x00
.global data_ov10_0211e7c8
data_ov10_0211e7c8: ; 0x0211e7c8
.byte 0x34, 0x00
.global data_ov10_0211e7ca
data_ov10_0211e7ca: ; 0x0211e7ca
.byte 0x35, 0x00
.global data_ov10_0211e7cc
data_ov10_0211e7cc: ; 0x0211e7cc
.byte 0x36, 0x00
.global data_ov10_0211e7ce
data_ov10_0211e7ce: ; 0x0211e7ce
.byte 0x37, 0x00
.global data_ov10_0211e7d0
data_ov10_0211e7d0: ; 0x0211e7d0
.byte 0x38, 0x00
.global data_ov10_0211e7d2
data_ov10_0211e7d2: ; 0x0211e7d2
.byte 0x39, 0x00
.global data_ov10_0211e7d4
data_ov10_0211e7d4: ; 0x0211e7d4
.byte 0x30, 0x00
.global data_ov10_0211e7d6
data_ov10_0211e7d6: ; 0x0211e7d6
.byte 0x00, 0x00
.global data_ov10_0211e7d8
data_ov10_0211e7d8: ; 0x0211e7d8
.byte 0x00, 0x00
.global data_ov10_0211e7da
data_ov10_0211e7da: ; 0x0211e7da
.byte 0x00, 0x00
.global data_ov10_0211e7dc
data_ov10_0211e7dc: ; 0x0211e7dc
.ascii "Menu/Bg/codeSBg.bin"
.byte 0x00
.global data_ov10_0211e7f0
data_ov10_0211e7f0: ; 0x0211e7f0
.byte 0x02, 0x00
.global data_ov10_0211e7f2
data_ov10_0211e7f2: ; 0x0211e7f2
.byte 0x0c, 0x0f
.global data_ov10_0211e7f4
data_ov10_0211e7f4: ; 0x0211e7f4
.byte 0x00, 0x00
.global data_ov10_0211e7f6
data_ov10_0211e7f6: ; 0x0211e7f6
.byte 0x01, 0x0f
.global data_ov10_0211e7f8
data_ov10_0211e7f8: ; 0x0211e7f8
.byte 0x08, 0x00
.global data_ov10_0211e7fa
data_ov10_0211e7fa: ; 0x0211e7fa
.byte 0x0c, 0x0f
.global data_ov10_0211e7fc
data_ov10_0211e7fc: ; 0x0211e7fc
.byte 0x02, 0x00
.global data_ov10_0211e7fe
data_ov10_0211e7fe: ; 0x0211e7fe
.byte 0x07, 0x0f
.global data_ov10_0211e800
data_ov10_0211e800: ; 0x0211e800
.byte 0x07, 0x00
.global data_ov10_0211e802
data_ov10_0211e802: ; 0x0211e802
.byte 0x0c, 0x0f
.global data_ov10_0211e804
data_ov10_0211e804: ; 0x0211e804
.byte 0x00, 0x00
.global data_ov10_0211e806
data_ov10_0211e806: ; 0x0211e806
.byte 0x0f, 0x0f
.global data_ov10_0211e808
data_ov10_0211e808: ; 0x0211e808
.byte 0x02, 0x00
.global data_ov10_0211e80a
data_ov10_0211e80a: ; 0x0211e80a
.byte 0x06, 0x0f
.global data_ov10_0211e80c
data_ov10_0211e80c: ; 0x0211e80c
.byte 0x0d, 0x08
.global data_ov10_0211e80e
data_ov10_0211e80e: ; 0x0211e80e
.byte 0x0f, 0x0f
.global data_ov10_0211e810
data_ov10_0211e810: ; 0x0211e810
.byte 0xb7, 0x00
.global data_ov10_0211e812
data_ov10_0211e812: ; 0x0211e812
.byte 0x00, 0x00
.global data_ov10_0211e814
data_ov10_0211e814: ; 0x0211e814
.word data_ov10_0211f164
.global data_ov10_0211e818
data_ov10_0211e818: ; 0x0211e818
.byte 0x18, 0x01
.global data_ov10_0211e81a
data_ov10_0211e81a: ; 0x0211e81a
.byte 0x00, 0x00
.global data_ov10_0211e81c
data_ov10_0211e81c: ; 0x0211e81c
.word data_ov10_0211f20c
.global data_ov10_0211e820
data_ov10_0211e820: ; 0x0211e820
.byte 0x00, 0x03
.global data_ov10_0211e822
data_ov10_0211e822: ; 0x0211e822
.byte 0x00, 0x0f
.global data_ov10_0211e824
data_ov10_0211e824: ; 0x0211e824
.byte 0x01, 0x03
.global data_ov10_0211e826
data_ov10_0211e826: ; 0x0211e826
.byte 0x01, 0x0f
.global data_ov10_0211e828
data_ov10_0211e828: ; 0x0211e828
.byte 0x2c, 0x01
.global data_ov10_0211e82a
data_ov10_0211e82a: ; 0x0211e82a
.byte 0x00, 0x00
.global data_ov10_0211e82c
data_ov10_0211e82c: ; 0x0211e82c
.word data_ov10_0211f190 ; func_ov11_0211f190
.global data_ov10_0211e830
data_ov10_0211e830: ; 0x0211e830
.byte 0x71, 0x01, 0x00, 0x00
.global data_ov10_0211e834
data_ov10_0211e834: ; 0x0211e834
.word data_ov10_0211f14c
.global data_ov10_0211e838
data_ov10_0211e838: ; 0x0211e838
.byte 0x1b, 0x01, 0x00, 0x00
.global data_ov10_0211e83c
data_ov10_0211e83c: ; 0x0211e83c
.word data_ov10_0211f174
.global data_ov10_0211e840
data_ov10_0211e840: ; 0x0211e840
.byte 0x1c, 0x01, 0x00, 0x00
.global data_ov10_0211e844
data_ov10_0211e844: ; 0x0211e844
.word data_ov10_0211f17c
.global data_ov10_0211e848
data_ov10_0211e848: ; 0x0211e848
.byte 0x07, 0x01, 0x00, 0x00
.global data_ov10_0211e84c
data_ov10_0211e84c: ; 0x0211e84c
.word data_ov10_0211f19c
.global data_ov10_0211e850
data_ov10_0211e850: ; 0x0211e850
.byte 0x08, 0x01, 0x00, 0x00
.global data_ov10_0211e854
data_ov10_0211e854: ; 0x0211e854
.word data_ov10_0211f1b4
.global data_ov10_0211e858
data_ov10_0211e858: ; 0x0211e858
.byte 0x09, 0x01, 0x00, 0x00
.global data_ov10_0211e85c
data_ov10_0211e85c: ; 0x0211e85c
.word data_ov10_0211f1fc
.global data_ov10_0211e860
data_ov10_0211e860: ; 0x0211e860
.word data_ov10_0211f154
.word data_ov10_0211e848
.byte 0x03, 0x00, 0x00, 0x00, 0x06, 0x01, 0x00, 0x00
.byte 0x0a, 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00
.word data_ov10_0211e7f0
.byte 0x01, 0x00, 0x00, 0x00
.global data_ov10_0211e880
data_ov10_0211e880: ; 0x0211e880
.word data_ov10_0211f15c
.word data_ov10_0211e838
.byte 0x02, 0x00, 0x00, 0x00, 0x1a, 0x01, 0x00, 0x00
.byte 0x1d, 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00
.word data_ov10_0211e7f0
.byte 0x01, 0x00, 0x00, 0x00
.global data_ov10_0211e8a0
data_ov10_0211e8a0: ; 0x0211e8a0
.byte 0x12, 0x01, 0x00, 0x00
.global data_ov10_0211e8a4
data_ov10_0211e8a4: ; 0x0211e8a4
.word data_ov10_0211f1cc
.global data_ov10_0211e8a8
data_ov10_0211e8a8: ; 0x0211e8a8
.byte 0x13, 0x01, 0x00, 0x00
.global data_ov10_0211e8ac
data_ov10_0211e8ac: ; 0x0211e8ac
.word data_ov10_0211f1dc
.global data_ov10_0211e8b0
data_ov10_0211e8b0: ; 0x0211e8b0
.byte 0x14, 0x01, 0x00, 0x00
.global data_ov10_0211e8b4
data_ov10_0211e8b4: ; 0x0211e8b4
.word data_ov10_0211f1ec
.global data_ov10_0211e8b8
data_ov10_0211e8b8: ; 0x0211e8b8
.byte 0x15, 0x01, 0x00, 0x00
.global data_ov10_0211e8bc
data_ov10_0211e8bc: ; 0x0211e8bc
.word data_ov10_0211f144
.global data_ov10_0211e8c0
data_ov10_0211e8c0: ; 0x0211e8c0
.word data_ov10_0211f13c
.word data_ov10_0211e830
.byte 0x01, 0x00, 0x00, 0x00, 0x70, 0x01, 0x00, 0x00
.byte 0x72, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00
.word data_ov10_0211e7f0
.byte 0x01, 0x00, 0x00, 0x00
.global data_ov10_0211e8e0
data_ov10_0211e8e0: ; 0x0211e8e0
.word data_ov10_0211f1a8
.word data_ov10_0211e8a0
.byte 0x04, 0x00, 0x00, 0x00, 0x11, 0x01, 0x00, 0x00
.byte 0x16, 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00
.word data_ov10_0211e7f0
.byte 0x01, 0x00, 0x00, 0x00
.global data_ov10_0211e900
data_ov10_0211e900: ; 0x0211e900
.word data_ov10_0211f16c
.word data_ov10_0211e810
.byte 0x01, 0x00, 0x00, 0x00, 0xb6, 0x00, 0x00, 0x00
.byte 0xb8, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
.word data_ov10_0211e804
.byte 0x01, 0x00, 0x00, 0x00
.global data_ov10_0211e920
data_ov10_0211e920: ; 0x0211e920
.word data_ov10_0211f1c0
.word data_ov10_0211e818
.byte 0x01, 0x00, 0x00, 0x00, 0x17, 0x01, 0x00, 0x00
.byte 0x19, 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00
.word data_ov10_0211e7f0
.byte 0x01, 0x00, 0x00, 0x00
.global data_ov10_0211e940
data_ov10_0211e940: ; 0x0211e940
.word data_ov10_0211f184
.word data_ov10_0211e828
.byte 0x01, 0x00, 0x00, 0x00, 0x2b, 0x01, 0x00, 0x00
.byte 0x2d, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00
.word data_ov10_0211e80c
.byte 0x01, 0x00, 0x00, 0x00
.global data_ov10_0211e960
data_ov10_0211e960: ; 0x0211e960
.byte 0x2e, 0x00
.global data_ov10_0211e962
data_ov10_0211e962: ; 0x0211e962
.byte 0x2f, 0x00
.global data_ov10_0211e964
data_ov10_0211e964: ; 0x0211e964
.byte 0x30, 0x00
.global data_ov10_0211e966
data_ov10_0211e966: ; 0x0211e966
.byte 0x31, 0x00
.global data_ov10_0211e968
data_ov10_0211e968: ; 0x0211e968
.byte 0x2b, 0x00
.global data_ov10_0211e96a
data_ov10_0211e96a: ; 0x0211e96a
.byte 0x2c, 0x00
.global data_ov10_0211e96c
data_ov10_0211e96c: ; 0x0211e96c
.byte 0x2d, 0x00
.global data_ov10_0211e96e
data_ov10_0211e96e: ; 0x0211e96e
.byte 0x63, 0x00
.global data_ov10_0211e970
data_ov10_0211e970: ; 0x0211e970
.byte 0x65, 0x00
.global data_ov10_0211e972
data_ov10_0211e972: ; 0x0211e972
.byte 0x66, 0x00
.global data_ov10_0211e974
data_ov10_0211e974: ; 0x0211e974
.byte 0x32, 0x04
.global data_ov10_0211e976
data_ov10_0211e976: ; 0x0211e976
.byte 0x33, 0x04
.global data_ov10_0211e978
data_ov10_0211e978: ; 0x0211e978
.byte 0x34, 0x05
.global data_ov10_0211e97a
data_ov10_0211e97a: ; 0x0211e97a
.byte 0x39, 0x05
.global data_ov10_0211e97c
data_ov10_0211e97c: ; 0x0211e97c
.byte 0x3b, 0x05
.global data_ov10_0211e97e
data_ov10_0211e97e: ; 0x0211e97e
.byte 0x6a, 0x06
.global data_ov10_0211e980
data_ov10_0211e980: ; 0x0211e980
.word func_ov10_0211cd4c - 1
.global data_ov10_0211e984
data_ov10_0211e984: ; 0x0211e984
.word func_ov10_0211cdd4 - 1
.global data_ov10_0211e988
data_ov10_0211e988: ; 0x0211e988
.word func_ov00_0207c118
.global data_ov10_0211e98c
data_ov10_0211e98c: ; 0x0211e98c
.word func_ov10_0211ce5c - 1
.global data_ov10_0211e990
data_ov10_0211e990: ; 0x0211e990
.word func_ov01_020f7b88 ; data_ov02_020f7b88
.global data_ov10_0211e994
data_ov10_0211e994: ; 0x0211e994
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211e998
data_ov10_0211e998: ; 0x0211e998
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211e99c
data_ov10_0211e99c: ; 0x0211e99c
.byte 0x28, 0x00
.global data_ov10_0211e99e
data_ov10_0211e99e: ; 0x0211e99e
.byte 0x02, 0x00
.global data_ov10_0211e9a0
data_ov10_0211e9a0: ; 0x0211e9a0
.byte 0x29, 0x00
.global data_ov10_0211e9a2
data_ov10_0211e9a2: ; 0x0211e9a2
.byte 0x02, 0x00
.global data_ov10_0211e9a4
data_ov10_0211e9a4: ; 0x0211e9a4
.byte 0x2a, 0x00
.global data_ov10_0211e9a6
data_ov10_0211e9a6: ; 0x0211e9a6
.byte 0x02, 0x00
.global data_ov10_0211e9a8
data_ov10_0211e9a8: ; 0x0211e9a8
.byte 0x2b, 0x00
.global data_ov10_0211e9aa
data_ov10_0211e9aa: ; 0x0211e9aa
.byte 0x02, 0x00
.global data_ov10_0211e9ac
data_ov10_0211e9ac: ; 0x0211e9ac
.byte 0x2c, 0x00
.global data_ov10_0211e9ae
data_ov10_0211e9ae: ; 0x0211e9ae
.byte 0x02, 0x00
.global data_ov10_0211e9b0
data_ov10_0211e9b0: ; 0x0211e9b0
.byte 0x2d, 0x00
.global data_ov10_0211e9b2
data_ov10_0211e9b2: ; 0x0211e9b2
.byte 0x02, 0x00
.global data_ov10_0211e9b4
data_ov10_0211e9b4: ; 0x0211e9b4
.byte 0x2e, 0x00
.global data_ov10_0211e9b6
data_ov10_0211e9b6: ; 0x0211e9b6
.byte 0x02, 0x00
.global data_ov10_0211e9b8
data_ov10_0211e9b8: ; 0x0211e9b8
.byte 0x2f, 0x00
.global data_ov10_0211e9ba
data_ov10_0211e9ba: ; 0x0211e9ba
.byte 0x02, 0x00
.global data_ov10_0211e9bc
data_ov10_0211e9bc: ; 0x0211e9bc
.byte 0x30, 0x00
.global data_ov10_0211e9be
data_ov10_0211e9be: ; 0x0211e9be
.byte 0x02, 0x00
.global data_ov10_0211e9c0
data_ov10_0211e9c0: ; 0x0211e9c0
.byte 0x31, 0x00
.global data_ov10_0211e9c2
data_ov10_0211e9c2: ; 0x0211e9c2
.byte 0x02, 0x00
.global data_ov10_0211e9c4
data_ov10_0211e9c4: ; 0x0211e9c4
.byte 0x32, 0x00
.global data_ov10_0211e9c6
data_ov10_0211e9c6: ; 0x0211e9c6
.byte 0x02, 0x00
.global data_ov10_0211e9c8
data_ov10_0211e9c8: ; 0x0211e9c8
.byte 0x33, 0x00
.global data_ov10_0211e9ca
data_ov10_0211e9ca: ; 0x0211e9ca
.byte 0x02, 0x00
.global data_ov10_0211e9cc
data_ov10_0211e9cc: ; 0x0211e9cc
.byte 0x34, 0x00
.global data_ov10_0211e9ce
data_ov10_0211e9ce: ; 0x0211e9ce
.byte 0x02, 0x00
.global data_ov10_0211e9d0
data_ov10_0211e9d0: ; 0x0211e9d0
.byte 0x35, 0x00
.global data_ov10_0211e9d2
data_ov10_0211e9d2: ; 0x0211e9d2
.byte 0x02, 0x00
.global data_ov10_0211e9d4
data_ov10_0211e9d4: ; 0x0211e9d4
.byte 0x36, 0x00
.global data_ov10_0211e9d6
data_ov10_0211e9d6: ; 0x0211e9d6
.byte 0x02, 0x00
.global data_ov10_0211e9d8
data_ov10_0211e9d8: ; 0x0211e9d8
.byte 0x37, 0x00
.global data_ov10_0211e9da
data_ov10_0211e9da: ; 0x0211e9da
.byte 0x02, 0x00
.global data_ov10_0211e9dc
data_ov10_0211e9dc: ; 0x0211e9dc
.ascii "Menu/Bg/woodBg.bin"
.byte 0x00, 0x00
.global data_ov10_0211e9f0
data_ov10_0211e9f0: ; 0x0211e9f0
.ascii "Menu/Bg/rplExBg.bin"
.byte 0x00
.global data_ov10_0211ea04
data_ov10_0211ea04: ; 0x0211ea04
.ascii "Menu/Bg/rplBg.bin"
.byte 0x00, 0x00, 0x00
.section .init, 4, 1, 4
.section .ctor, 4, 1, 4
.data
.global data_ov10_0211ea20
data_ov10_0211ea20: ; 0x0211ea20
.ascii "brg"
.byte 0x00
.global data_ov10_0211ea24
data_ov10_0211ea24: ; 0x0211ea24
.ascii "fnl"
.byte 0x00
.global data_ov10_0211ea28
data_ov10_0211ea28: ; 0x0211ea28
.ascii "pdl"
.byte 0x00
.global data_ov10_0211ea2c
data_ov10_0211ea2c: ; 0x0211ea2c
.ascii "dco"
.byte 0x00
.global data_ov10_0211ea30
data_ov10_0211ea30: ; 0x0211ea30
.ascii "can"
.byte 0x00
.global data_ov10_0211ea34
data_ov10_0211ea34: ; 0x0211ea34
.ascii "hul"
.byte 0x00
.global data_ov10_0211ea38
data_ov10_0211ea38: ; 0x0211ea38
.ascii "bow"
.byte 0x00
.global data_ov10_0211ea3c
data_ov10_0211ea3c: ; 0x0211ea3c
.ascii "anc"
.byte 0x00
.global data_ov10_0211ea40
data_ov10_0211ea40: ; 0x0211ea40
.word data_ov10_0211ea3c ; func_ov11_0211ea3c
.global data_ov10_0211ea44
data_ov10_0211ea44: ; 0x0211ea44
.word data_ov10_0211ea38
.global data_ov10_0211ea48
data_ov10_0211ea48: ; 0x0211ea48
.word data_ov10_0211ea34
.global data_ov10_0211ea4c
data_ov10_0211ea4c: ; 0x0211ea4c
.word data_ov10_0211ea30
.global data_ov10_0211ea50
data_ov10_0211ea50: ; 0x0211ea50
.word data_ov10_0211ea2c
.global data_ov10_0211ea54
data_ov10_0211ea54: ; 0x0211ea54
.word data_ov10_0211ea28
.global data_ov10_0211ea58
data_ov10_0211ea58: ; 0x0211ea58
.word data_ov10_0211ea24
.global data_ov10_0211ea5c
data_ov10_0211ea5c: ; 0x0211ea5c
.word data_ov10_0211ea20
.global data_ov10_0211ea60
data_ov10_0211ea60: ; 0x0211ea60
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ea64
data_ov10_0211ea64: ; 0x0211ea64
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ea68
data_ov10_0211ea68: ; 0x0211ea68
.word func_ov10_02112e3c
.global data_ov10_0211ea6c
data_ov10_0211ea6c: ; 0x0211ea6c
.word func_ov10_02112da8
.global data_ov10_0211ea70
data_ov10_0211ea70: ; 0x0211ea70
.word func_ov10_02112ecc
.global data_ov10_0211ea74
data_ov10_0211ea74: ; 0x0211ea74
.word func_ov10_02112ef4
.global data_ov10_0211ea78
data_ov10_0211ea78: ; 0x0211ea78
.word func_ov10_02112f00
.global data_ov10_0211ea7c
data_ov10_0211ea7c: ; 0x0211ea7c
.word func_0202c0c4
.global data_ov10_0211ea80
data_ov10_0211ea80: ; 0x0211ea80
.word func_ov10_02112f0c
.global data_ov10_0211ea84
data_ov10_0211ea84: ; 0x0211ea84
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ea88
data_ov10_0211ea88: ; 0x0211ea88
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ea8c
data_ov10_0211ea8c: ; 0x0211ea8c
.word func_ov10_02112f34
.global data_ov10_0211ea90
data_ov10_0211ea90: ; 0x0211ea90
.word func_ov10_02112f38
.global data_ov10_0211ea94
data_ov10_0211ea94: ; 0x0211ea94
.word func_ov10_02112f48 - 1
.global data_ov10_0211ea98
data_ov10_0211ea98: ; 0x0211ea98
.word func_ov10_02112f5c - 1
.global data_ov10_0211ea9c
data_ov10_0211ea9c: ; 0x0211ea9c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211eaa0
data_ov10_0211eaa0: ; 0x0211eaa0
.word func_ov10_02112f60 - 1
.global data_ov10_0211eaa4
data_ov10_0211eaa4: ; 0x0211eaa4
.word func_ov10_02112f64 - 1
.global data_ov10_0211eaa8
data_ov10_0211eaa8: ; 0x0211eaa8
.ascii "brg"
.byte 0x00
.global data_ov10_0211eaac
data_ov10_0211eaac: ; 0x0211eaac
.ascii "fnl"
.byte 0x00
.global data_ov10_0211eab0
data_ov10_0211eab0: ; 0x0211eab0
.ascii "pdl"
.byte 0x00
.global data_ov10_0211eab4
data_ov10_0211eab4: ; 0x0211eab4
.ascii "dco"
.byte 0x00
.global data_ov10_0211eab8
data_ov10_0211eab8: ; 0x0211eab8
.ascii "can"
.byte 0x00
.global data_ov10_0211eabc
data_ov10_0211eabc: ; 0x0211eabc
.ascii "hul"
.byte 0x00
.global data_ov10_0211eac0
data_ov10_0211eac0: ; 0x0211eac0
.ascii "bow"
.byte 0x00
.global data_ov10_0211eac4
data_ov10_0211eac4: ; 0x0211eac4
.ascii "anc"
.byte 0x00
.global data_ov10_0211eac8
data_ov10_0211eac8: ; 0x0211eac8
.word data_ov10_0211eac4
.global data_ov10_0211eacc
data_ov10_0211eacc: ; 0x0211eacc
.word data_ov10_0211eac0
.global data_ov10_0211ead0
data_ov10_0211ead0: ; 0x0211ead0
.word data_ov10_0211eabc
.global data_ov10_0211ead4
data_ov10_0211ead4: ; 0x0211ead4
.word data_ov10_0211eab8
.global data_ov10_0211ead8
data_ov10_0211ead8: ; 0x0211ead8
.word data_ov10_0211eab4
.global data_ov10_0211eadc
data_ov10_0211eadc: ; 0x0211eadc
.word data_ov10_0211eab0
.global data_ov10_0211eae0
data_ov10_0211eae0: ; 0x0211eae0
.word data_ov10_0211eaac
.global data_ov10_0211eae4
data_ov10_0211eae4: ; 0x0211eae4
.word data_ov10_0211eaa8
.global data_ov10_0211eae8
data_ov10_0211eae8: ; 0x0211eae8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211eaec
data_ov10_0211eaec: ; 0x0211eaec
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211eaf0
data_ov10_0211eaf0: ; 0x0211eaf0
.word func_ov10_021132d8
.global data_ov10_0211eaf4
data_ov10_0211eaf4: ; 0x0211eaf4
.word func_ov10_02113dc4 - 1
.global data_ov10_0211eaf8
data_ov10_0211eaf8: ; 0x0211eaf8
.word func_02038758
.global data_ov10_0211eafc
data_ov10_0211eafc: ; 0x0211eafc
.word func_ov10_02112f80
.global data_ov10_0211eb00
data_ov10_0211eb00: ; 0x0211eb00
.word func_02037918
.global data_ov10_0211eb04
data_ov10_0211eb04: ; 0x0211eb04
.word func_020386b4
.global data_ov10_0211eb08
data_ov10_0211eb08: ; 0x0211eb08
.word func_ov10_02113000
.global data_ov10_0211eb0c
data_ov10_0211eb0c: ; 0x0211eb0c
.word func_020386c4
.global data_ov10_0211eb10
data_ov10_0211eb10: ; 0x0211eb10
.word func_020386cc
.global data_ov10_0211eb14
data_ov10_0211eb14: ; 0x0211eb14
.word func_02038770
.global data_ov10_0211eb18
data_ov10_0211eb18: ; 0x0211eb18
.word func_0203878c
.global data_ov10_0211eb1c
data_ov10_0211eb1c: ; 0x0211eb1c
.word func_ov10_02112fe4
.global data_ov10_0211eb20
data_ov10_0211eb20: ; 0x0211eb20
.word func_020387a4
.global data_ov10_0211eb24
data_ov10_0211eb24: ; 0x0211eb24
.ascii "FSL"
.byte 0x00
.global data_ov10_0211eb28
data_ov10_0211eb28: ; 0x0211eb28
.ascii "Menu/Bg/woodBg.bin"
.byte 0x00, 0x00
.global data_ov10_0211eb3c
data_ov10_0211eb3c: ; 0x0211eb3c
.ascii "FSL:woodBg"
.byte 0x00, 0x00
.global data_ov10_0211eb48
data_ov10_0211eb48: ; 0x0211eb48
.ascii "FSL"
.byte 0x00
.global data_ov10_0211eb4c
data_ov10_0211eb4c: ; 0x0211eb4c
.ascii "Menu/Bg/fileselectBg.bin"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211eb68
data_ov10_0211eb68: ; 0x0211eb68
.ascii "FSL:fileselectBg"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211eb7c
data_ov10_0211eb7c: ; 0x0211eb7c
.ascii "brg"
.byte 0x00
.global data_ov10_0211eb80
data_ov10_0211eb80: ; 0x0211eb80
.ascii "fnl"
.byte 0x00
.global data_ov10_0211eb84
data_ov10_0211eb84: ; 0x0211eb84
.ascii "pdl"
.byte 0x00
.global data_ov10_0211eb88
data_ov10_0211eb88: ; 0x0211eb88
.ascii "dco"
.byte 0x00
.global data_ov10_0211eb8c
data_ov10_0211eb8c: ; 0x0211eb8c
.ascii "can"
.byte 0x00
.global data_ov10_0211eb90
data_ov10_0211eb90: ; 0x0211eb90
.ascii "hul"
.byte 0x00
.global data_ov10_0211eb94
data_ov10_0211eb94: ; 0x0211eb94
.ascii "bow"
.byte 0x00
.global data_ov10_0211eb98
data_ov10_0211eb98: ; 0x0211eb98
.ascii "anc"
.byte 0x00
.global data_ov10_0211eb9c
data_ov10_0211eb9c: ; 0x0211eb9c
.word data_ov10_0211eb98
.global data_ov10_0211eba0
data_ov10_0211eba0: ; 0x0211eba0
.word data_ov10_0211eb94
.global data_ov10_0211eba4
data_ov10_0211eba4: ; 0x0211eba4
.word data_ov10_0211eb90
.global data_ov10_0211eba8
data_ov10_0211eba8: ; 0x0211eba8
.word data_ov10_0211eb8c
.global data_ov10_0211ebac
data_ov10_0211ebac: ; 0x0211ebac
.word data_ov10_0211eb88
.global data_ov10_0211ebb0
data_ov10_0211ebb0: ; 0x0211ebb0
.word data_ov10_0211eb84
.global data_ov10_0211ebb4
data_ov10_0211ebb4: ; 0x0211ebb4
.word data_ov10_0211eb80
.global data_ov10_0211ebb8
data_ov10_0211ebb8: ; 0x0211ebb8
.word data_ov10_0211eb7c
.global data_ov10_0211ebbc
data_ov10_0211ebbc: ; 0x0211ebbc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ebc0
data_ov10_0211ebc0: ; 0x0211ebc0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ebc4
data_ov10_0211ebc4: ; 0x0211ebc4
.word func_ov10_02114684 - 1
.global data_ov10_0211ebc8
data_ov10_0211ebc8: ; 0x0211ebc8
.word func_ov10_02114644 - 1
.global data_ov10_0211ebcc
data_ov10_0211ebcc: ; 0x0211ebcc
.word func_ov10_02113ec0 - 1
.global data_ov10_0211ebd0
data_ov10_0211ebd0: ; 0x0211ebd0
.word func_ov10_02112f5c - 1
.global data_ov10_0211ebd4
data_ov10_0211ebd4: ; 0x0211ebd4
.word func_ov10_02113fd4 - 1
.global data_ov10_0211ebd8
data_ov10_0211ebd8: ; 0x0211ebd8
.word func_ov10_02114434 - 1
.global data_ov10_0211ebdc
data_ov10_0211ebdc: ; 0x0211ebdc
.word func_ov10_02112f64 - 1
.global data_ov10_0211ebe0
data_ov10_0211ebe0: ; 0x0211ebe0
.ascii "brg"
.byte 0x00
.global data_ov10_0211ebe4
data_ov10_0211ebe4: ; 0x0211ebe4
.ascii "fnl"
.byte 0x00
.global data_ov10_0211ebe8
data_ov10_0211ebe8: ; 0x0211ebe8
.ascii "pdl"
.byte 0x00
.global data_ov10_0211ebec
data_ov10_0211ebec: ; 0x0211ebec
.ascii "dco"
.byte 0x00
.global data_ov10_0211ebf0
data_ov10_0211ebf0: ; 0x0211ebf0
.ascii "can"
.byte 0x00
.global data_ov10_0211ebf4
data_ov10_0211ebf4: ; 0x0211ebf4
.ascii "hul"
.byte 0x00
.global data_ov10_0211ebf8
data_ov10_0211ebf8: ; 0x0211ebf8
.ascii "bow"
.byte 0x00
.global data_ov10_0211ebfc
data_ov10_0211ebfc: ; 0x0211ebfc
.ascii "anc"
.byte 0x00
.global data_ov10_0211ec00
data_ov10_0211ec00: ; 0x0211ec00
.word data_ov10_0211ebfc
.global data_ov10_0211ec04
data_ov10_0211ec04: ; 0x0211ec04
.word data_ov10_0211ebf8
.global data_ov10_0211ec08
data_ov10_0211ec08: ; 0x0211ec08
.word data_ov10_0211ebf4
.global data_ov10_0211ec0c
data_ov10_0211ec0c: ; 0x0211ec0c
.word data_ov10_0211ebf0
.global data_ov10_0211ec10
data_ov10_0211ec10: ; 0x0211ec10
.word data_ov10_0211ebec
.global data_ov10_0211ec14
data_ov10_0211ec14: ; 0x0211ec14
.word data_ov10_0211ebe8
.global data_ov10_0211ec18
data_ov10_0211ec18: ; 0x0211ec18
.word data_ov10_0211ebe4
.global data_ov10_0211ec1c
data_ov10_0211ec1c: ; 0x0211ec1c
.word data_ov10_0211ebe0
.global data_ov10_0211ec20
data_ov10_0211ec20: ; 0x0211ec20
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ec24
data_ov10_0211ec24: ; 0x0211ec24
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ec28
data_ov10_0211ec28: ; 0x0211ec28
.word func_ov10_021150d4 - 1
.global data_ov10_0211ec2c
data_ov10_0211ec2c: ; 0x0211ec2c
.word func_ov10_02115094 - 1
.global data_ov10_0211ec30
data_ov10_0211ec30: ; 0x0211ec30
.word func_ov10_0211488c
.global data_ov10_0211ec34
data_ov10_0211ec34: ; 0x0211ec34
.word func_ov10_02114924
.global data_ov10_0211ec38
data_ov10_0211ec38: ; 0x0211ec38
.word func_ov10_02114a18
.global data_ov10_0211ec3c
data_ov10_0211ec3c: ; 0x0211ec3c
.word func_ov10_02114e38
.global data_ov10_0211ec40
data_ov10_0211ec40: ; 0x0211ec40
.word func_ov10_02112f64 - 1
.global data_ov10_0211ec44
data_ov10_0211ec44: ; 0x0211ec44
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ec48
data_ov10_0211ec48: ; 0x0211ec48
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ec4c
data_ov10_0211ec4c: ; 0x0211ec4c
.word func_ov10_02114880
.global data_ov10_0211ec50
data_ov10_0211ec50: ; 0x0211ec50
.word func_ov10_0211510c - 1
.global data_ov10_0211ec54
data_ov10_0211ec54: ; 0x0211ec54
.word func_02038758
.global data_ov10_0211ec58
data_ov10_0211ec58: ; 0x0211ec58
.word func_02037854
.global data_ov10_0211ec5c
data_ov10_0211ec5c: ; 0x0211ec5c
.word func_02037918
.global data_ov10_0211ec60
data_ov10_0211ec60: ; 0x0211ec60
.word func_020386b4
.global data_ov10_0211ec64
data_ov10_0211ec64: ; 0x0211ec64
.word func_020386b8
.global data_ov10_0211ec68
data_ov10_0211ec68: ; 0x0211ec68
.word func_020386c4
.global data_ov10_0211ec6c
data_ov10_0211ec6c: ; 0x0211ec6c
.word func_020386cc
.global data_ov10_0211ec70
data_ov10_0211ec70: ; 0x0211ec70
.word func_02038770
.global data_ov10_0211ec74
data_ov10_0211ec74: ; 0x0211ec74
.word func_0203878c
.global data_ov10_0211ec78
data_ov10_0211ec78: ; 0x0211ec78
.word func_ov10_021146d4 ; func_ov12_021146d4
.global data_ov10_0211ec7c
data_ov10_0211ec7c: ; 0x0211ec7c
.word func_020387a4
.global data_ov10_0211ec80
data_ov10_0211ec80: ; 0x0211ec80
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ec84
data_ov10_0211ec84: ; 0x0211ec84
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ec88
data_ov10_0211ec88: ; 0x0211ec88
.word func_ov10_02115234 - 1
.global data_ov10_0211ec8c
data_ov10_0211ec8c: ; 0x0211ec8c
.word func_ov10_02115218 - 1
.global data_ov10_0211ec90
data_ov10_0211ec90: ; 0x0211ec90
.word func_ov10_02112f48 - 1
.global data_ov10_0211ec94
data_ov10_0211ec94: ; 0x0211ec94
.word func_ov10_02112f5c - 1
.global data_ov10_0211ec98
data_ov10_0211ec98: ; 0x0211ec98
.word func_ov10_02115128 - 1
.global data_ov10_0211ec9c
data_ov10_0211ec9c: ; 0x0211ec9c
.word func_ov10_021151dc - 1
.global data_ov10_0211eca0
data_ov10_0211eca0: ; 0x0211eca0
.word func_ov10_02112f64 - 1
.global data_ov10_0211eca4
data_ov10_0211eca4: ; 0x0211eca4
.ascii "brg"
.byte 0x00
.global data_ov10_0211eca8
data_ov10_0211eca8: ; 0x0211eca8
.ascii "fnl"
.byte 0x00
.global data_ov10_0211ecac
data_ov10_0211ecac: ; 0x0211ecac
.ascii "pdl"
.byte 0x00
.global data_ov10_0211ecb0
data_ov10_0211ecb0: ; 0x0211ecb0
.ascii "dco"
.byte 0x00
.global data_ov10_0211ecb4
data_ov10_0211ecb4: ; 0x0211ecb4
.ascii "can"
.byte 0x00
.global data_ov10_0211ecb8
data_ov10_0211ecb8: ; 0x0211ecb8
.ascii "hul"
.byte 0x00
.global data_ov10_0211ecbc
data_ov10_0211ecbc: ; 0x0211ecbc
.ascii "bow"
.byte 0x00
.global data_ov10_0211ecc0
data_ov10_0211ecc0: ; 0x0211ecc0
.ascii "anc"
.byte 0x00
.global data_ov10_0211ecc4
data_ov10_0211ecc4: ; 0x0211ecc4
.word data_ov10_0211ecc0
.global data_ov10_0211ecc8
data_ov10_0211ecc8: ; 0x0211ecc8
.word data_ov10_0211ecbc
.global data_ov10_0211eccc
data_ov10_0211eccc: ; 0x0211eccc
.word data_ov10_0211ecb8
.global data_ov10_0211ecd0
data_ov10_0211ecd0: ; 0x0211ecd0
.word data_ov10_0211ecb4
.global data_ov10_0211ecd4
data_ov10_0211ecd4: ; 0x0211ecd4
.word data_ov10_0211ecb0
.global data_ov10_0211ecd8
data_ov10_0211ecd8: ; 0x0211ecd8
.word data_ov10_0211ecac
.global data_ov10_0211ecdc
data_ov10_0211ecdc: ; 0x0211ecdc
.word data_ov10_0211eca8
.global data_ov10_0211ece0
data_ov10_0211ece0: ; 0x0211ece0
.word data_ov10_0211eca4
.global data_ov10_0211ece4
data_ov10_0211ece4: ; 0x0211ece4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ece8
data_ov10_0211ece8: ; 0x0211ece8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ecec
data_ov10_0211ecec: ; 0x0211ecec
.word func_ov10_02115bb0 - 1
.global data_ov10_0211ecf0
data_ov10_0211ecf0: ; 0x0211ecf0
.word func_ov10_02115b70 - 1
.global data_ov10_0211ecf4
data_ov10_0211ecf4: ; 0x0211ecf4
.word func_ov10_02115508 - 1
.global data_ov10_0211ecf8
data_ov10_0211ecf8: ; 0x0211ecf8
.word func_ov10_02112f5c - 1
.global data_ov10_0211ecfc
data_ov10_0211ecfc: ; 0x0211ecfc
.word func_ov10_021155cc - 1
.global data_ov10_0211ed00
data_ov10_0211ed00: ; 0x0211ed00
.word func_ov10_02115938 - 1
.global data_ov10_0211ed04
data_ov10_0211ed04: ; 0x0211ed04
.word func_ov10_02112f64 - 1
.global data_ov10_0211ed08
data_ov10_0211ed08: ; 0x0211ed08
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ed0c
data_ov10_0211ed0c: ; 0x0211ed0c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ed10
data_ov10_0211ed10: ; 0x0211ed10
.word func_ov10_021154f4 - 1
.global data_ov10_0211ed14
data_ov10_0211ed14: ; 0x0211ed14
.word func_ov10_02115be8 - 1
.global data_ov10_0211ed18
data_ov10_0211ed18: ; 0x0211ed18
.word func_02038758
.global data_ov10_0211ed1c
data_ov10_0211ed1c: ; 0x0211ed1c
.word func_ov10_02115278 - 1
.global data_ov10_0211ed20
data_ov10_0211ed20: ; 0x0211ed20
.word func_02037918
.global data_ov10_0211ed24
data_ov10_0211ed24: ; 0x0211ed24
.word func_020386b4
.global data_ov10_0211ed28
data_ov10_0211ed28: ; 0x0211ed28
.word func_ov10_021153cc - 1
.global data_ov10_0211ed2c
data_ov10_0211ed2c: ; 0x0211ed2c
.word func_020386c4
.global data_ov10_0211ed30
data_ov10_0211ed30: ; 0x0211ed30
.word func_020386cc
.global data_ov10_0211ed34
data_ov10_0211ed34: ; 0x0211ed34
.word func_02038770
.global data_ov10_0211ed38
data_ov10_0211ed38: ; 0x0211ed38
.word func_0203878c
.global data_ov10_0211ed3c
data_ov10_0211ed3c: ; 0x0211ed3c
.word func_ov10_02115370 - 1
.global data_ov10_0211ed40
data_ov10_0211ed40: ; 0x0211ed40
.word func_020387a4
.global data_ov10_0211ed44
data_ov10_0211ed44: ; 0x0211ed44
.ascii "brg"
.byte 0x00
.global data_ov10_0211ed48
data_ov10_0211ed48: ; 0x0211ed48
.ascii "fnl"
.byte 0x00
.global data_ov10_0211ed4c
data_ov10_0211ed4c: ; 0x0211ed4c
.ascii "pdl"
.byte 0x00
.global data_ov10_0211ed50
data_ov10_0211ed50: ; 0x0211ed50
.ascii "dco"
.byte 0x00
.global data_ov10_0211ed54
data_ov10_0211ed54: ; 0x0211ed54
.ascii "can"
.byte 0x00
.global data_ov10_0211ed58
data_ov10_0211ed58: ; 0x0211ed58
.ascii "hul"
.byte 0x00
.global data_ov10_0211ed5c
data_ov10_0211ed5c: ; 0x0211ed5c
.ascii "bow"
.byte 0x00
.global data_ov10_0211ed60
data_ov10_0211ed60: ; 0x0211ed60
.ascii "anc"
.byte 0x00
.global data_ov10_0211ed64
data_ov10_0211ed64: ; 0x0211ed64
.word data_ov10_0211ed60
.global data_ov10_0211ed68
data_ov10_0211ed68: ; 0x0211ed68
.word data_ov10_0211ed5c
.global data_ov10_0211ed6c
data_ov10_0211ed6c: ; 0x0211ed6c
.word data_ov10_0211ed58
.global data_ov10_0211ed70
data_ov10_0211ed70: ; 0x0211ed70
.word data_ov10_0211ed54
.global data_ov10_0211ed74
data_ov10_0211ed74: ; 0x0211ed74
.word data_ov10_0211ed50
.global data_ov10_0211ed78
data_ov10_0211ed78: ; 0x0211ed78
.word data_ov10_0211ed4c
.global data_ov10_0211ed7c
data_ov10_0211ed7c: ; 0x0211ed7c
.word data_ov10_0211ed48
.global data_ov10_0211ed80
data_ov10_0211ed80: ; 0x0211ed80
.word data_ov10_0211ed44
.global data_ov10_0211ed84
data_ov10_0211ed84: ; 0x0211ed84
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ed88
data_ov10_0211ed88: ; 0x0211ed88
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ed8c
data_ov10_0211ed8c: ; 0x0211ed8c
.word func_ov10_02115e18 - 1
.global data_ov10_0211ed90
data_ov10_0211ed90: ; 0x0211ed90
.word func_ov00_020d0790
.global data_ov10_0211ed94
data_ov10_0211ed94: ; 0x0211ed94
.word func_ov00_020d0968
.global data_ov10_0211ed98
data_ov10_0211ed98: ; 0x0211ed98
.word func_ov00_020d099c
.global data_ov10_0211ed9c
data_ov10_0211ed9c: ; 0x0211ed9c
.word func_ov00_020d063c
.global data_ov10_0211eda0
data_ov10_0211eda0: ; 0x0211eda0
.ascii "brg"
.byte 0x00
.global data_ov10_0211eda4
data_ov10_0211eda4: ; 0x0211eda4
.ascii "fnl"
.byte 0x00
.global data_ov10_0211eda8
data_ov10_0211eda8: ; 0x0211eda8
.ascii "pdl"
.byte 0x00
.global data_ov10_0211edac
data_ov10_0211edac: ; 0x0211edac
.ascii "dco"
.byte 0x00
.global data_ov10_0211edb0
data_ov10_0211edb0: ; 0x0211edb0
.ascii "can"
.byte 0x00
.global data_ov10_0211edb4
data_ov10_0211edb4: ; 0x0211edb4
.ascii "hul"
.byte 0x00
.global data_ov10_0211edb8
data_ov10_0211edb8: ; 0x0211edb8
.ascii "bow"
.byte 0x00
.global data_ov10_0211edbc
data_ov10_0211edbc: ; 0x0211edbc
.ascii "anc"
.byte 0x00
.global data_ov10_0211edc0
data_ov10_0211edc0: ; 0x0211edc0
.word data_ov10_0211edbc
.global data_ov10_0211edc4
data_ov10_0211edc4: ; 0x0211edc4
.word data_ov10_0211edb8
.global data_ov10_0211edc8
data_ov10_0211edc8: ; 0x0211edc8
.word data_ov10_0211edb4
.global data_ov10_0211edcc
data_ov10_0211edcc: ; 0x0211edcc
.word data_ov10_0211edb0
.global data_ov10_0211edd0
data_ov10_0211edd0: ; 0x0211edd0
.word data_ov10_0211edac
.global data_ov10_0211edd4
data_ov10_0211edd4: ; 0x0211edd4
.word data_ov10_0211eda8
.global data_ov10_0211edd8
data_ov10_0211edd8: ; 0x0211edd8
.word data_ov10_0211eda4
.global data_ov10_0211eddc
data_ov10_0211eddc: ; 0x0211eddc
.word data_ov10_0211eda0
.global data_ov10_0211ede0
data_ov10_0211ede0: ; 0x0211ede0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ede4
data_ov10_0211ede4: ; 0x0211ede4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ede8
data_ov10_0211ede8: ; 0x0211ede8
.word func_ov10_02116c10 - 1
.global data_ov10_0211edec
data_ov10_0211edec: ; 0x0211edec
.word func_ov10_02116be8 - 1
.global data_ov10_0211edf0
data_ov10_0211edf0: ; 0x0211edf0
.word func_ov10_02116644 - 1
.global data_ov10_0211edf4
data_ov10_0211edf4: ; 0x0211edf4
.word func_ov10_02116748 - 1
.global data_ov10_0211edf8
data_ov10_0211edf8: ; 0x0211edf8
.word func_ov10_021167c8 - 1
.global data_ov10_0211edfc
data_ov10_0211edfc: ; 0x0211edfc
.word func_ov10_02116b00 - 1
.global data_ov10_0211ee00
data_ov10_0211ee00: ; 0x0211ee00
.word func_ov10_02116b10 - 1
.global data_ov10_0211ee04
data_ov10_0211ee04: ; 0x0211ee04
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ee08
data_ov10_0211ee08: ; 0x0211ee08
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ee0c
data_ov10_0211ee0c: ; 0x0211ee0c
.word func_ov10_02116630 - 1
.global data_ov10_0211ee10
data_ov10_0211ee10: ; 0x0211ee10
.word func_ov10_02116c30 - 1
.global data_ov10_0211ee14
data_ov10_0211ee14: ; 0x0211ee14
.word func_02038758
.global data_ov10_0211ee18
data_ov10_0211ee18: ; 0x0211ee18
.word func_02037854
.global data_ov10_0211ee1c
data_ov10_0211ee1c: ; 0x0211ee1c
.word func_02037918
.global data_ov10_0211ee20
data_ov10_0211ee20: ; 0x0211ee20
.word func_020386b4
.global data_ov10_0211ee24
data_ov10_0211ee24: ; 0x0211ee24
.word func_020386b8
.global data_ov10_0211ee28
data_ov10_0211ee28: ; 0x0211ee28
.word func_020386c4
.global data_ov10_0211ee2c
data_ov10_0211ee2c: ; 0x0211ee2c
.word func_020386cc
.global data_ov10_0211ee30
data_ov10_0211ee30: ; 0x0211ee30
.word func_02038770
.global data_ov10_0211ee34
data_ov10_0211ee34: ; 0x0211ee34
.word func_0203878c
.global data_ov10_0211ee38
data_ov10_0211ee38: ; 0x0211ee38
.word func_ov10_02116584 - 1
.global data_ov10_0211ee3c
data_ov10_0211ee3c: ; 0x0211ee3c
.word func_020387a4
.global data_ov10_0211ee40
data_ov10_0211ee40: ; 0x0211ee40
.ascii "brg"
.byte 0x00
.global data_ov10_0211ee44
data_ov10_0211ee44: ; 0x0211ee44
.ascii "fnl"
.byte 0x00
.global data_ov10_0211ee48
data_ov10_0211ee48: ; 0x0211ee48
.ascii "pdl"
.byte 0x00
.global data_ov10_0211ee4c
data_ov10_0211ee4c: ; 0x0211ee4c
.ascii "dco"
.byte 0x00
.global data_ov10_0211ee50
data_ov10_0211ee50: ; 0x0211ee50
.ascii "can"
.byte 0x00
.global data_ov10_0211ee54
data_ov10_0211ee54: ; 0x0211ee54
.ascii "hul"
.byte 0x00
.global data_ov10_0211ee58
data_ov10_0211ee58: ; 0x0211ee58
.ascii "bow"
.byte 0x00
.global data_ov10_0211ee5c
data_ov10_0211ee5c: ; 0x0211ee5c
.ascii "anc"
.byte 0x00
.global data_ov10_0211ee60
data_ov10_0211ee60: ; 0x0211ee60
.word data_ov10_0211ee5c
.global data_ov10_0211ee64
data_ov10_0211ee64: ; 0x0211ee64
.word data_ov10_0211ee58
.global data_ov10_0211ee68
data_ov10_0211ee68: ; 0x0211ee68
.word data_ov10_0211ee54
.global data_ov10_0211ee6c
data_ov10_0211ee6c: ; 0x0211ee6c
.word data_ov10_0211ee50
.global data_ov10_0211ee70
data_ov10_0211ee70: ; 0x0211ee70
.word data_ov10_0211ee4c
.global data_ov10_0211ee74
data_ov10_0211ee74: ; 0x0211ee74
.word data_ov10_0211ee48
.global data_ov10_0211ee78
data_ov10_0211ee78: ; 0x0211ee78
.word data_ov10_0211ee44
.global data_ov10_0211ee7c
data_ov10_0211ee7c: ; 0x0211ee7c
.word data_ov10_0211ee40
.global data_ov10_0211ee80
data_ov10_0211ee80: ; 0x0211ee80
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ee84
data_ov10_0211ee84: ; 0x0211ee84
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ee88
data_ov10_0211ee88: ; 0x0211ee88
.word func_ov10_021174b0 - 1
.global data_ov10_0211ee8c
data_ov10_0211ee8c: ; 0x0211ee8c
.word func_ov10_02117478 - 1
.global data_ov10_0211ee90
data_ov10_0211ee90: ; 0x0211ee90
.word func_ov10_02116d2c - 1
.global data_ov10_0211ee94
data_ov10_0211ee94: ; 0x0211ee94
.word func_ov10_02112f5c - 1
.global data_ov10_0211ee98
data_ov10_0211ee98: ; 0x0211ee98
.word func_ov10_02116d88 - 1
.global data_ov10_0211ee9c
data_ov10_0211ee9c: ; 0x0211ee9c
.word func_ov10_0211703c - 1
.global data_ov10_0211eea0
data_ov10_0211eea0: ; 0x0211eea0
.word func_ov10_02117370 - 1
.global data_ov10_0211eea4
data_ov10_0211eea4: ; 0x0211eea4
.ascii "brg"
.byte 0x00
.global data_ov10_0211eea8
data_ov10_0211eea8: ; 0x0211eea8
.ascii "fnl"
.byte 0x00
.global data_ov10_0211eeac
data_ov10_0211eeac: ; 0x0211eeac
.ascii "pdl"
.byte 0x00
.global data_ov10_0211eeb0
data_ov10_0211eeb0: ; 0x0211eeb0
.ascii "dco"
.byte 0x00
.global data_ov10_0211eeb4
data_ov10_0211eeb4: ; 0x0211eeb4
.ascii "can"
.byte 0x00
.global data_ov10_0211eeb8
data_ov10_0211eeb8: ; 0x0211eeb8
.ascii "hul"
.byte 0x00
.global data_ov10_0211eebc
data_ov10_0211eebc: ; 0x0211eebc
.ascii "bow"
.byte 0x00
.global data_ov10_0211eec0
data_ov10_0211eec0: ; 0x0211eec0
.ascii "anc"
.byte 0x00
.global data_ov10_0211eec4
data_ov10_0211eec4: ; 0x0211eec4
.word data_ov10_0211eec0
.global data_ov10_0211eec8
data_ov10_0211eec8: ; 0x0211eec8
.word data_ov10_0211eebc
.global data_ov10_0211eecc
data_ov10_0211eecc: ; 0x0211eecc
.word data_ov10_0211eeb8
.global data_ov10_0211eed0
data_ov10_0211eed0: ; 0x0211eed0
.word data_ov10_0211eeb4
.global data_ov10_0211eed4
data_ov10_0211eed4: ; 0x0211eed4
.word data_ov10_0211eeb0
.global data_ov10_0211eed8
data_ov10_0211eed8: ; 0x0211eed8
.word data_ov10_0211eeac
.global data_ov10_0211eedc
data_ov10_0211eedc: ; 0x0211eedc
.word data_ov10_0211eea8
.global data_ov10_0211eee0
data_ov10_0211eee0: ; 0x0211eee0
.word data_ov10_0211eea4
.global data_ov10_0211eee4
data_ov10_0211eee4: ; 0x0211eee4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211eee8
data_ov10_0211eee8: ; 0x0211eee8
.ascii "brg"
.byte 0x00
.global data_ov10_0211eeec
data_ov10_0211eeec: ; 0x0211eeec
.ascii "fnl"
.byte 0x00
.global data_ov10_0211eef0
data_ov10_0211eef0: ; 0x0211eef0
.ascii "pdl"
.byte 0x00
.global data_ov10_0211eef4
data_ov10_0211eef4: ; 0x0211eef4
.ascii "dco"
.byte 0x00
.global data_ov10_0211eef8
data_ov10_0211eef8: ; 0x0211eef8
.ascii "can"
.byte 0x00
.global data_ov10_0211eefc
data_ov10_0211eefc: ; 0x0211eefc
.ascii "hul"
.byte 0x00
.global data_ov10_0211ef00
data_ov10_0211ef00: ; 0x0211ef00
.ascii "bow"
.byte 0x00
.global data_ov10_0211ef04
data_ov10_0211ef04: ; 0x0211ef04
.ascii "anc"
.byte 0x00
.global data_ov10_0211ef08
data_ov10_0211ef08: ; 0x0211ef08
.word data_ov10_0211ef04
.global data_ov10_0211ef0c
data_ov10_0211ef0c: ; 0x0211ef0c
.word data_ov10_0211ef00
.global data_ov10_0211ef10
data_ov10_0211ef10: ; 0x0211ef10
.word data_ov10_0211eefc
.global data_ov10_0211ef14
data_ov10_0211ef14: ; 0x0211ef14
.word data_ov10_0211eef8
.global data_ov10_0211ef18
data_ov10_0211ef18: ; 0x0211ef18
.word data_ov10_0211eef4
.global data_ov10_0211ef1c
data_ov10_0211ef1c: ; 0x0211ef1c
.word data_ov10_0211eef0
.global data_ov10_0211ef20
data_ov10_0211ef20: ; 0x0211ef20
.word data_ov10_0211eeec
.global data_ov10_0211ef24
data_ov10_0211ef24: ; 0x0211ef24
.word data_ov10_0211eee8
.global data_ov10_0211ef28
data_ov10_0211ef28: ; 0x0211ef28
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ef2c
data_ov10_0211ef2c: ; 0x0211ef2c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ef30
data_ov10_0211ef30: ; 0x0211ef30
.word func_ov10_02119984 - 1
.global data_ov10_0211ef34
data_ov10_0211ef34: ; 0x0211ef34
.word func_ov10_02119944 - 1
.global data_ov10_0211ef38
data_ov10_0211ef38: ; 0x0211ef38
.word func_ov10_02118cb4 - 1
.global data_ov10_0211ef3c
data_ov10_0211ef3c: ; 0x0211ef3c
.word func_ov10_02118d38 - 1
.global data_ov10_0211ef40
data_ov10_0211ef40: ; 0x0211ef40
.word func_ov10_02118d80 - 1
.global data_ov10_0211ef44
data_ov10_0211ef44: ; 0x0211ef44
.word func_ov10_021190b4 - 1
.global data_ov10_0211ef48
data_ov10_0211ef48: ; 0x0211ef48
.word func_ov10_021198a0 - 1
.global data_ov10_0211ef4c
data_ov10_0211ef4c: ; 0x0211ef4c
.ascii "brg"
.byte 0x00
.global data_ov10_0211ef50
data_ov10_0211ef50: ; 0x0211ef50
.ascii "fnl"
.byte 0x00
.global data_ov10_0211ef54
data_ov10_0211ef54: ; 0x0211ef54
.ascii "pdl"
.byte 0x00
.global data_ov10_0211ef58
data_ov10_0211ef58: ; 0x0211ef58
.ascii "dco"
.byte 0x00
.global data_ov10_0211ef5c
data_ov10_0211ef5c: ; 0x0211ef5c
.ascii "can"
.byte 0x00
.global data_ov10_0211ef60
data_ov10_0211ef60: ; 0x0211ef60
.ascii "hul"
.byte 0x00
.global data_ov10_0211ef64
data_ov10_0211ef64: ; 0x0211ef64
.ascii "bow"
.byte 0x00
.global data_ov10_0211ef68
data_ov10_0211ef68: ; 0x0211ef68
.ascii "anc"
.byte 0x00
.global data_ov10_0211ef6c
data_ov10_0211ef6c: ; 0x0211ef6c
.word data_ov10_0211ef68
.global data_ov10_0211ef70
data_ov10_0211ef70: ; 0x0211ef70
.word data_ov10_0211ef64
.global data_ov10_0211ef74
data_ov10_0211ef74: ; 0x0211ef74
.word data_ov10_0211ef60
.global data_ov10_0211ef78
data_ov10_0211ef78: ; 0x0211ef78
.word data_ov10_0211ef5c
.global data_ov10_0211ef7c
data_ov10_0211ef7c: ; 0x0211ef7c
.word data_ov10_0211ef58 ; func_ov11_0211ef58
.global data_ov10_0211ef80
data_ov10_0211ef80: ; 0x0211ef80
.word data_ov10_0211ef54
.global data_ov10_0211ef84
data_ov10_0211ef84: ; 0x0211ef84
.word data_ov10_0211ef50
.global data_ov10_0211ef88
data_ov10_0211ef88: ; 0x0211ef88
.word data_ov10_0211ef4c
.global data_ov10_0211ef8c
data_ov10_0211ef8c: ; 0x0211ef8c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ef90
data_ov10_0211ef90: ; 0x0211ef90
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211ef94
data_ov10_0211ef94: ; 0x0211ef94
.word func_ov10_0211b2e4 - 1
.global data_ov10_0211ef98
data_ov10_0211ef98: ; 0x0211ef98
.word func_ov10_0211b29c - 1
.global data_ov10_0211ef9c
data_ov10_0211ef9c: ; 0x0211ef9c
.word func_ov10_0211aac4
.global data_ov10_0211efa0
data_ov10_0211efa0: ; 0x0211efa0
.word func_ov10_0211ac00
.global data_ov10_0211efa4
data_ov10_0211efa4: ; 0x0211efa4
.word func_ov10_0211ac84
.global data_ov10_0211efa8
data_ov10_0211efa8: ; 0x0211efa8
.word func_ov10_0211aff0
.global data_ov10_0211efac
data_ov10_0211efac: ; 0x0211efac
.word func_ov10_02112f64 - 1
.global data_ov10_0211efb0
data_ov10_0211efb0: ; 0x0211efb0
.ascii "KBD"
.byte 0x00
.global data_ov10_0211efb4
data_ov10_0211efb4: ; 0x0211efb4
.ascii "KBD:codeSBg"
.byte 0x00
.global data_ov10_0211efc0
data_ov10_0211efc0: ; 0x0211efc0
.ascii "brg"
.byte 0x00
.global data_ov10_0211efc4
data_ov10_0211efc4: ; 0x0211efc4
.ascii "fnl"
.byte 0x00
.global data_ov10_0211efc8
data_ov10_0211efc8: ; 0x0211efc8
.ascii "pdl"
.byte 0x00
.global data_ov10_0211efcc
data_ov10_0211efcc: ; 0x0211efcc
.ascii "dco"
.byte 0x00
.global data_ov10_0211efd0
data_ov10_0211efd0: ; 0x0211efd0
.ascii "can"
.byte 0x00
.global data_ov10_0211efd4
data_ov10_0211efd4: ; 0x0211efd4
.ascii "hul"
.byte 0x00
.global data_ov10_0211efd8
data_ov10_0211efd8: ; 0x0211efd8
.ascii "bow"
.byte 0x00
.global data_ov10_0211efdc
data_ov10_0211efdc: ; 0x0211efdc
.ascii "anc"
.byte 0x00
.global data_ov10_0211efe0
data_ov10_0211efe0: ; 0x0211efe0
.word data_ov10_0211efdc
.global data_ov10_0211efe4
data_ov10_0211efe4: ; 0x0211efe4
.word data_ov10_0211efd8
.global data_ov10_0211efe8
data_ov10_0211efe8: ; 0x0211efe8
.word data_ov10_0211efd4
.global data_ov10_0211efec
data_ov10_0211efec: ; 0x0211efec
.word data_ov10_0211efd0
.global data_ov10_0211eff0
data_ov10_0211eff0: ; 0x0211eff0
.word data_ov10_0211efcc
.global data_ov10_0211eff4
data_ov10_0211eff4: ; 0x0211eff4
.word data_ov10_0211efc8
.global data_ov10_0211eff8
data_ov10_0211eff8: ; 0x0211eff8
.word data_ov10_0211efc4
.global data_ov10_0211effc
data_ov10_0211effc: ; 0x0211effc
.word data_ov10_0211efc0
.global data_ov10_0211f000
data_ov10_0211f000: ; 0x0211f000
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f004
data_ov10_0211f004: ; 0x0211f004
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f008
data_ov10_0211f008: ; 0x0211f008
.word func_ov10_0211b4e0 - 1
.global data_ov10_0211f00c
data_ov10_0211f00c: ; 0x0211f00c
.word func_ov10_0211b4b8 - 1
.global data_ov10_0211f010
data_ov10_0211f010: ; 0x0211f010
.word func_ov10_0211b354 ; func_ov11_0211b354
.global data_ov10_0211f014
data_ov10_0211f014: ; 0x0211f014
.word func_ov10_0211b3ec
.global data_ov10_0211f018
data_ov10_0211f018: ; 0x0211f018
.word func_ov10_0211b3f8
.global data_ov10_0211f01c
data_ov10_0211f01c: ; 0x0211f01c
.word func_ov10_0211b4ac
.global data_ov10_0211f020
data_ov10_0211f020: ; 0x0211f020
.word func_ov10_02112f64 - 1
.global data_ov10_0211f024
data_ov10_0211f024: ; 0x0211f024
.ascii "brg"
.byte 0x00
.global data_ov10_0211f028
data_ov10_0211f028: ; 0x0211f028
.ascii "fnl"
.byte 0x00
.global data_ov10_0211f02c
data_ov10_0211f02c: ; 0x0211f02c
.ascii "pdl"
.byte 0x00
.global data_ov10_0211f030
data_ov10_0211f030: ; 0x0211f030
.ascii "dco"
.byte 0x00
.global data_ov10_0211f034
data_ov10_0211f034: ; 0x0211f034
.ascii "can"
.byte 0x00
.global data_ov10_0211f038
data_ov10_0211f038: ; 0x0211f038
.ascii "hul"
.byte 0x00
.global data_ov10_0211f03c
data_ov10_0211f03c: ; 0x0211f03c
.ascii "bow"
.byte 0x00
.global data_ov10_0211f040
data_ov10_0211f040: ; 0x0211f040
.ascii "anc"
.byte 0x00
.global data_ov10_0211f044
data_ov10_0211f044: ; 0x0211f044
.word data_ov10_0211f040
.global data_ov10_0211f048
data_ov10_0211f048: ; 0x0211f048
.word data_ov10_0211f03c
.global data_ov10_0211f04c
data_ov10_0211f04c: ; 0x0211f04c
.word data_ov10_0211f038
.global data_ov10_0211f050
data_ov10_0211f050: ; 0x0211f050
.word data_ov10_0211f034
.global data_ov10_0211f054
data_ov10_0211f054: ; 0x0211f054
.word data_ov10_0211f030
.global data_ov10_0211f058
data_ov10_0211f058: ; 0x0211f058
.word data_ov10_0211f02c
.global data_ov10_0211f05c
data_ov10_0211f05c: ; 0x0211f05c
.word data_ov10_0211f028
.global data_ov10_0211f060
data_ov10_0211f060: ; 0x0211f060
.word data_ov10_0211f024
.global data_ov10_0211f064
data_ov10_0211f064: ; 0x0211f064
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f068
data_ov10_0211f068: ; 0x0211f068
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f06c
data_ov10_0211f06c: ; 0x0211f06c
.word func_ov10_0211b894 - 1
.global data_ov10_0211f070
data_ov10_0211f070: ; 0x0211f070
.word func_ov10_0211b85c - 1
.global data_ov10_0211f074
data_ov10_0211f074: ; 0x0211f074
.word func_ov10_0211b550
.global data_ov10_0211f078
data_ov10_0211f078: ; 0x0211f078
.word func_ov10_0211b64c
.global data_ov10_0211f07c
data_ov10_0211f07c: ; 0x0211f07c
.word func_ov10_0211b668
.global data_ov10_0211f080
data_ov10_0211f080: ; 0x0211f080
.word func_ov10_0211b748
.global data_ov10_0211f084
data_ov10_0211f084: ; 0x0211f084
.word func_ov10_02112f64 - 1
.global data_ov10_0211f088
data_ov10_0211f088: ; 0x0211f088
.ascii "brg"
.byte 0x00
.global data_ov10_0211f08c
data_ov10_0211f08c: ; 0x0211f08c
.ascii "fnl"
.byte 0x00
.global data_ov10_0211f090
data_ov10_0211f090: ; 0x0211f090
.ascii "pdl"
.byte 0x00
.global data_ov10_0211f094
data_ov10_0211f094: ; 0x0211f094
.ascii "dco"
.byte 0x00
.global data_ov10_0211f098
data_ov10_0211f098: ; 0x0211f098
.ascii "can"
.byte 0x00
.global data_ov10_0211f09c
data_ov10_0211f09c: ; 0x0211f09c
.ascii "hul"
.byte 0x00
.global data_ov10_0211f0a0
data_ov10_0211f0a0: ; 0x0211f0a0
.ascii "bow"
.byte 0x00
.global data_ov10_0211f0a4
data_ov10_0211f0a4: ; 0x0211f0a4
.ascii "anc"
.byte 0x00
.global data_ov10_0211f0a8
data_ov10_0211f0a8: ; 0x0211f0a8
.word data_ov10_0211f0a4
.global data_ov10_0211f0ac
data_ov10_0211f0ac: ; 0x0211f0ac
.word data_ov10_0211f0a0
.global data_ov10_0211f0b0
data_ov10_0211f0b0: ; 0x0211f0b0
.word data_ov10_0211f09c
.global data_ov10_0211f0b4
data_ov10_0211f0b4: ; 0x0211f0b4
.word data_ov10_0211f098
.global data_ov10_0211f0b8
data_ov10_0211f0b8: ; 0x0211f0b8
.word data_ov10_0211f094
.global data_ov10_0211f0bc
data_ov10_0211f0bc: ; 0x0211f0bc
.word data_ov10_0211f090
.global data_ov10_0211f0c0
data_ov10_0211f0c0: ; 0x0211f0c0
.word data_ov10_0211f08c
.global data_ov10_0211f0c4
data_ov10_0211f0c4: ; 0x0211f0c4
.word data_ov10_0211f088
.global data_ov10_0211f0c8
data_ov10_0211f0c8: ; 0x0211f0c8
.byte 0x2d, 0x00, 0x2d, 0x00, 0x2d, 0x00, 0x2d, 0x00
.byte 0x2d, 0x00, 0x2d, 0x00, 0x2d, 0x00, 0x2d, 0x00, 0x00, 0x00
.global data_ov10_0211f0da
data_ov10_0211f0da: ; 0x0211f0da
.byte 0x00
.global data_ov10_0211f0db
data_ov10_0211f0db: ; 0x0211f0db
.byte 0x00
.global data_ov10_0211f0dc
data_ov10_0211f0dc: ; 0x0211f0dc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f0e0
data_ov10_0211f0e0: ; 0x0211f0e0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f0e4
data_ov10_0211f0e4: ; 0x0211f0e4
.word func_ov10_0211c730 - 1
.global data_ov10_0211f0e8
data_ov10_0211f0e8: ; 0x0211f0e8
.word func_ov10_0211c6f0 - 1
.global data_ov10_0211f0ec
data_ov10_0211f0ec: ; 0x0211f0ec
.word func_ov10_0211ba04
.global data_ov10_0211f0f0
data_ov10_0211f0f0: ; 0x0211f0f0
.word func_ov10_0211bbe8
.global data_ov10_0211f0f4
data_ov10_0211f0f4: ; 0x0211f0f4
.word func_ov10_0211bc80
.global data_ov10_0211f0f8
data_ov10_0211f0f8: ; 0x0211f0f8
.word func_ov10_0211bf88
.global data_ov10_0211f0fc
data_ov10_0211f0fc: ; 0x0211f0fc
.word func_ov10_02112f64 - 1
.global data_ov10_0211f100
data_ov10_0211f100: ; 0x0211f100
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f104
data_ov10_0211f104: ; 0x0211f104
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f108
data_ov10_0211f108: ; 0x0211f108
.word func_ov10_0211b9f8
.global data_ov10_0211f10c
data_ov10_0211f10c: ; 0x0211f10c
.word func_ov10_0211c768 - 1
.global data_ov10_0211f110
data_ov10_0211f110: ; 0x0211f110
.word func_02038758
.global data_ov10_0211f114
data_ov10_0211f114: ; 0x0211f114
.word func_02037854
.global data_ov10_0211f118
data_ov10_0211f118: ; 0x0211f118
.word func_02037918
.global data_ov10_0211f11c
data_ov10_0211f11c: ; 0x0211f11c
.word func_020386b4
.global data_ov10_0211f120
data_ov10_0211f120: ; 0x0211f120
.word func_020386b8
.global data_ov10_0211f124
data_ov10_0211f124: ; 0x0211f124
.word func_020386c4
.global data_ov10_0211f128
data_ov10_0211f128: ; 0x0211f128
.word func_020386cc
.global data_ov10_0211f12c
data_ov10_0211f12c: ; 0x0211f12c
.word func_02038770
.global data_ov10_0211f130
data_ov10_0211f130: ; 0x0211f130
.word func_0203878c
.global data_ov10_0211f134
data_ov10_0211f134: ; 0x0211f134
.word func_ov10_0211b8dc
.global data_ov10_0211f138
data_ov10_0211f138: ; 0x0211f138
.word func_020387a4
.global data_ov10_0211f13c
data_ov10_0211f13c: ; 0x0211f13c
.ascii "rplS"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f144
data_ov10_0211f144: ; 0x0211f144
.ascii "wait"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f14c
data_ov10_0211f14c: ; 0x0211f14c
.ascii "rplS"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f154
data_ov10_0211f154: ; 0x0211f154
.ascii "codeS"
.byte 0x00, 0x00, 0x00
.global data_ov10_0211f15c
data_ov10_0211f15c: ; 0x0211f15c
.ascii "option"
.byte 0x00, 0x00
.global data_ov10_0211f164
data_ov10_0211f164: ; 0x0211f164
.ascii "rplExS"
.byte 0x00, 0x00
.global data_ov10_0211f16c
data_ov10_0211f16c: ; 0x0211f16c
.ascii "rplExS"
.byte 0x00, 0x00
.global data_ov10_0211f174
data_ov10_0211f174: ; 0x0211f174
.ascii "option"
.byte 0x00, 0x00
.global data_ov10_0211f17c
data_ov10_0211f17c: ; 0x0211f17c
.ascii "mictest"
.byte 0x00
.global data_ov10_0211f184
data_ov10_0211f184: ; 0x0211f184
.ascii "scriptS04"
.byte 0x00, 0x00, 0x00
.global data_ov10_0211f190
data_ov10_0211f190: ; 0x0211f190
.ascii "scriptS04"
.byte 0x00, 0x00, 0x00
.global data_ov10_0211f19c
data_ov10_0211f19c: ; 0x0211f19c
.ascii "codeCheck"
.byte 0x00, 0x00, 0x00
.global data_ov10_0211f1a8
data_ov10_0211f1a8: ; 0x0211f1a8
.ascii "fileselect"
.byte 0x00, 0x00
.global data_ov10_0211f1b4
data_ov10_0211f1b4: ; 0x0211f1b4
.ascii "codeDelete"
.byte 0x00, 0x00
.global data_ov10_0211f1c0
data_ov10_0211f1c0: ; 0x0211f1c0
.ascii "accessStyle"
.byte 0x00
.global data_ov10_0211f1cc
data_ov10_0211f1cc: ; 0x0211f1cc
.ascii "fileselect00"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f1dc
data_ov10_0211f1dc: ; 0x0211f1dc
.ascii "fileselect01"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f1ec
data_ov10_0211f1ec: ; 0x0211f1ec
.ascii "fileselect02"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f1fc
data_ov10_0211f1fc: ; 0x0211f1fc
.ascii "codeKeyboard"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f20c
data_ov10_0211f20c: ; 0x0211f20c
.ascii "accessStyle00"
.byte 0x00, 0x00, 0x00
.global data_ov10_0211f21c
data_ov10_0211f21c: ; 0x0211f21c
.ascii "brg"
.byte 0x00
.global data_ov10_0211f220
data_ov10_0211f220: ; 0x0211f220
.ascii "fnl"
.byte 0x00
.global data_ov10_0211f224
data_ov10_0211f224: ; 0x0211f224
.ascii "pdl"
.byte 0x00
.global data_ov10_0211f228
data_ov10_0211f228: ; 0x0211f228
.ascii "dco"
.byte 0x00
.global data_ov10_0211f22c
data_ov10_0211f22c: ; 0x0211f22c
.ascii "can"
.byte 0x00
.global data_ov10_0211f230
data_ov10_0211f230: ; 0x0211f230
.ascii "hul"
.byte 0x00
.global data_ov10_0211f234
data_ov10_0211f234: ; 0x0211f234
.ascii "bow"
.byte 0x00
.global data_ov10_0211f238
data_ov10_0211f238: ; 0x0211f238
.ascii "anc"
.byte 0x00
.global data_ov10_0211f23c
data_ov10_0211f23c: ; 0x0211f23c
.word data_ov10_0211f238
.global data_ov10_0211f240
data_ov10_0211f240: ; 0x0211f240
.word data_ov10_0211f234
.global data_ov10_0211f244
data_ov10_0211f244: ; 0x0211f244
.word data_ov10_0211f230
.global data_ov10_0211f248
data_ov10_0211f248: ; 0x0211f248
.word data_ov10_0211f22c
.global data_ov10_0211f24c
data_ov10_0211f24c: ; 0x0211f24c
.word data_ov10_0211f228
.global data_ov10_0211f250
data_ov10_0211f250: ; 0x0211f250
.word data_ov10_0211f224
.global data_ov10_0211f254
data_ov10_0211f254: ; 0x0211f254
.word data_ov10_0211f220
.global data_ov10_0211f258
data_ov10_0211f258: ; 0x0211f258
.word data_ov10_0211f21c
.global data_ov10_0211f25c
data_ov10_0211f25c: ; 0x0211f25c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f260
data_ov10_0211f260: ; 0x0211f260
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f264
data_ov10_0211f264: ; 0x0211f264
.word func_ov10_0211d30c
.global data_ov10_0211f268
data_ov10_0211f268: ; 0x0211f268
.word func_ov10_0211d35c
.global data_ov10_0211f26c
data_ov10_0211f26c: ; 0x0211f26c
.word func_ov10_0211d3b4
.global data_ov10_0211f270
data_ov10_0211f270: ; 0x0211f270
.word func_ov10_0211d798
.global data_ov10_0211f274
data_ov10_0211f274: ; 0x0211f274
.word func_ov10_0211d828
.global data_ov10_0211f278
data_ov10_0211f278: ; 0x0211f278
.word func_ov10_0211da90
.global data_ov10_0211f27c
data_ov10_0211f27c: ; 0x0211f27c
.word func_ov10_02112f64 - 1
.global data_ov10_0211f280
data_ov10_0211f280: ; 0x0211f280
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f284
data_ov10_0211f284: ; 0x0211f284
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f288
data_ov10_0211f288: ; 0x0211f288
.word func_ov10_0211d2e8
.global data_ov10_0211f28c
data_ov10_0211f28c: ; 0x0211f28c
.word func_ov10_0211e288 - 1
.global data_ov10_0211f290
data_ov10_0211f290: ; 0x0211f290
.word func_ov10_0211e134
.global data_ov10_0211f294
data_ov10_0211f294: ; 0x0211f294
.word func_ov01_020f80f4 ; data_ov02_020f80f4
.global data_ov10_0211f298
data_ov10_0211f298: ; 0x0211f298
.word func_ov01_020f7e24 ; data_ov02_020f7e24
.global data_ov10_0211f29c
data_ov10_0211f29c: ; 0x0211f29c
.word func_ov10_0211e154
.global data_ov10_0211f2a0
data_ov10_0211f2a0: ; 0x0211f2a0
.word func_ov10_0211e20c ; func_ov11_0211e20c
.global data_ov10_0211f2a4
data_ov10_0211f2a4: ; 0x0211f2a4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f2a8
data_ov10_0211f2a8: ; 0x0211f2a8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f2ac
data_ov10_0211f2ac: ; 0x0211f2ac
.word func_ov10_0211d2f4
.global data_ov10_0211f2b0
data_ov10_0211f2b0: ; 0x0211f2b0
.word func_ov10_0211e2a4 - 1
.global data_ov10_0211f2b4
data_ov10_0211f2b4: ; 0x0211f2b4
.word func_ov01_020f80cc ; data_ov02_020f80cc, func_ov03_020f80cc
.global data_ov10_0211f2b8
data_ov10_0211f2b8: ; 0x0211f2b8
.word func_ov01_020f80f4 ; data_ov02_020f80f4
.global data_ov10_0211f2bc
data_ov10_0211f2bc: ; 0x0211f2bc
.word func_ov01_020f82dc ; data_ov02_020f82dc
.global data_ov10_0211f2c0
data_ov10_0211f2c0: ; 0x0211f2c0
.word func_ov10_0211e010
.global data_ov10_0211f2c4
data_ov10_0211f2c4: ; 0x0211f2c4
.word func_ov10_0211e0d0
.global data_ov10_0211f2c8
data_ov10_0211f2c8: ; 0x0211f2c8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f2cc
data_ov10_0211f2cc: ; 0x0211f2cc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f2d0
data_ov10_0211f2d0: ; 0x0211f2d0
.word func_ov10_0211d300
.global data_ov10_0211f2d4
data_ov10_0211f2d4: ; 0x0211f2d4
.word func_ov10_0211e2c0 - 1
.global data_ov10_0211f2d8
data_ov10_0211f2d8: ; 0x0211f2d8
.word func_ov10_0211de34
.global data_ov10_0211f2dc
data_ov10_0211f2dc: ; 0x0211f2dc
.word func_ov10_0211de74
.global data_ov10_0211f2e0
data_ov10_0211f2e0: ; 0x0211f2e0
.word func_ov01_020f7e24 ; data_ov02_020f7e24
.global data_ov10_0211f2e4
data_ov10_0211f2e4: ; 0x0211f2e4
.word func_ov10_0211dea0
.global data_ov10_0211f2e8
data_ov10_0211f2e8: ; 0x0211f2e8
.word func_ov01_020f8234 ; data_ov02_020f8234
.global data_ov10_0211f2ec
data_ov10_0211f2ec: ; 0x0211f2ec
.ascii "FSL"
.byte 0x00
.global data_ov10_0211f2f0
data_ov10_0211f2f0: ; 0x0211f2f0
.ascii "FSL:woodBg"
.byte 0x00, 0x00
.global data_ov10_0211f2fc
data_ov10_0211f2fc: ; 0x0211f2fc
.ascii "RLM"
.byte 0x00
.global data_ov10_0211f300
data_ov10_0211f300: ; 0x0211f300
.ascii "RLM:rareplaylistExplanationS.NSCR"
.byte 0x00, 0x00, 0x00
.global data_ov10_0211f324
data_ov10_0211f324: ; 0x0211f324
.ascii "RLM:rplExBg.NCGR"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f338
data_ov10_0211f338: ; 0x0211f338
.ascii "RLM:rplExBg.NCLR"
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f34c
data_ov10_0211f34c: ; 0x0211f34c
.ascii "RLS"
.byte 0x00
.global data_ov10_0211f350
data_ov10_0211f350: ; 0x0211f350
.ascii "RLS:rareplaylistS.NSCR"
.byte 0x00, 0x00
.global data_ov10_0211f368
data_ov10_0211f368: ; 0x0211f368
.ascii "RLS:rplBg.NCGR"
.byte 0x00, 0x00
.global data_ov10_0211f378
data_ov10_0211f378: ; 0x0211f378
.ascii "RLS:rplBg.NCLR"
.byte 0x00, 0x00
.global data_ov10_0211f388
data_ov10_0211f388: ; 0x0211f388
.ascii "brg"
.byte 0x00
.global data_ov10_0211f38c
data_ov10_0211f38c: ; 0x0211f38c
.ascii "fnl"
.byte 0x00
.global data_ov10_0211f390
data_ov10_0211f390: ; 0x0211f390
.ascii "pdl"
.byte 0x00
.global data_ov10_0211f394
data_ov10_0211f394: ; 0x0211f394
.ascii "dco"
.byte 0x00
.global data_ov10_0211f398
data_ov10_0211f398: ; 0x0211f398
.ascii "can"
.byte 0x00
.global data_ov10_0211f39c
data_ov10_0211f39c: ; 0x0211f39c
.ascii "hul"
.byte 0x00
.global data_ov10_0211f3a0
data_ov10_0211f3a0: ; 0x0211f3a0
.ascii "bow"
.byte 0x00
.global data_ov10_0211f3a4
data_ov10_0211f3a4: ; 0x0211f3a4
.ascii "anc"
.byte 0x00
.global data_ov10_0211f3a8
data_ov10_0211f3a8: ; 0x0211f3a8
.word data_ov10_0211f3a4
.global data_ov10_0211f3ac
data_ov10_0211f3ac: ; 0x0211f3ac
.word data_ov10_0211f3a0
.global data_ov10_0211f3b0
data_ov10_0211f3b0: ; 0x0211f3b0
.word data_ov10_0211f39c
.global data_ov10_0211f3b4
data_ov10_0211f3b4: ; 0x0211f3b4
.word data_ov10_0211f398
.global data_ov10_0211f3b8
data_ov10_0211f3b8: ; 0x0211f3b8
.word data_ov10_0211f394
.global data_ov10_0211f3bc
data_ov10_0211f3bc: ; 0x0211f3bc
.word data_ov10_0211f390
.global data_ov10_0211f3c0
data_ov10_0211f3c0: ; 0x0211f3c0
.word data_ov10_0211f38c
.global data_ov10_0211f3c4
data_ov10_0211f3c4: ; 0x0211f3c4
.word data_ov10_0211f388
.global data_ov10_0211f3c8
data_ov10_0211f3c8: ; 0x0211f3c8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f3cc
data_ov10_0211f3cc: ; 0x0211f3cc
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f3d0
data_ov10_0211f3d0: ; 0x0211f3d0
.word func_ov10_0211e440 - 1
.global data_ov10_0211f3d4
data_ov10_0211f3d4: ; 0x0211f3d4
.word func_ov10_0211e424 - 1
.global data_ov10_0211f3d8
data_ov10_0211f3d8: ; 0x0211f3d8
.word func_ov10_02112f48 - 1
.global data_ov10_0211f3dc
data_ov10_0211f3dc: ; 0x0211f3dc
.word func_ov10_02112f5c - 1
.global data_ov10_0211f3e0
data_ov10_0211f3e0: ; 0x0211f3e0
.word func_ov10_0211e2f4 - 1
.global data_ov10_0211f3e4
data_ov10_0211f3e4: ; 0x0211f3e4
.word func_ov10_0211e3d4 - 1
.global data_ov10_0211f3e8
data_ov10_0211f3e8: ; 0x0211f3e8
.word func_ov10_02112f64 - 1
.global data_ov10_0211f3ec
data_ov10_0211f3ec: ; 0x0211f3ec
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f3f0
data_ov10_0211f3f0: ; 0x0211f3f0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f3f4
data_ov10_0211f3f4: ; 0x0211f3f4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f3f8
data_ov10_0211f3f8: ; 0x0211f3f8
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov10_0211f3fc
data_ov10_0211f3fc: ; 0x0211f3fc
.byte 0x00, 0x00, 0x00, 0x00
; 0x0211f400
.bss
.global data_ov10_0211f400
data_ov10_0211f400:
.space 0x4
.global data_ov10_0211f404
data_ov10_0211f404:
.space 0x4
.global data_ov10_0211f408
data_ov10_0211f408:
.space 0x4
.global data_ov10_0211f40c
data_ov10_0211f40c:
.space 0x4
.global data_ov10_0211f410
data_ov10_0211f410:
.space 0x4
.global data_ov10_0211f414
data_ov10_0211f414:
.space 0x4
.global data_ov10_0211f418
data_ov10_0211f418:
.space 0x4
.global data_ov10_0211f41c
data_ov10_0211f41c:
.space 0x4
.global data_ov10_0211f420
data_ov10_0211f420:
.space 0x4
.global data_ov10_0211f424
data_ov10_0211f424:
.space 0x4
.global data_ov10_0211f428
data_ov10_0211f428:
.space 0x4
.global data_ov10_0211f42c
data_ov10_0211f42c:
.space 0x4
.global data_ov10_0211f430
data_ov10_0211f430:
.space 0x4
.global data_ov10_0211f434
data_ov10_0211f434:
.space 0x4
.global data_ov10_0211f438
data_ov10_0211f438:
.space 0x4
.global data_ov10_0211f43c
data_ov10_0211f43c:
.space 0x4
.global data_ov10_0211f440
data_ov10_0211f440:
.space 0x4
.global data_ov10_0211f444
data_ov10_0211f444:
.space 0x4
.global data_ov10_0211f448
data_ov10_0211f448:
.space 0x4
.global data_ov10_0211f44c
data_ov10_0211f44c:
.space 0x4
.global data_ov10_0211f450
data_ov10_0211f450:
.space 0x4
.global data_ov10_0211f454
data_ov10_0211f454:
.space 0x4
.global data_ov10_0211f458
data_ov10_0211f458:
.space 0x4
.global data_ov10_0211f45c
data_ov10_0211f45c:
.space 0x4