Files
ph/asm/ov55.s
T
Aetias 478e788165 Match code
let's go dude
2023-09-18 17:46:12 +02:00

1061 lines
22 KiB
ArmAsm

.include "macros/function.inc"
.include "global.inc"
.text
.global func_ov55_02198d00
arm_func_start func_ov55_02198d00
func_ov55_02198d00: ; 0x02198d00
stmdb sp!, {r3, lr}
ldr r0, _02198d24 ; =data_027e0fb4
mov r1, #8
ldr r0, [r0]
bl func_ov00_020ad52c
mov r1, r0
ldr r0, _02198d28 ; =data_ov55_021998ac
bl func_ov00_020a9614
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov55_02198d00
_02198d24: .word data_027e0fb4
_02198d28: .word data_ov55_021998ac
.global func_ov55_02198d2c
arm_func_start func_ov55_02198d2c
func_ov55_02198d2c: ; 0x02198d2c
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
bl func_ov00_020beb30
cmp r0, #0
ble _02198d84
add r3, r5, #0xc
add r2, r5, #0x24
cmp r3, r2
beq _02198d74
mvn r0, #0
_02198d58:
ldr r1, [r3]
cmp r1, r0
moveq r0, #1
ldmeqia sp!, {r3, r4, r5, pc}
add r3, r3, #8
cmp r3, r2
bne _02198d58
_02198d74:
cmp r4, #0
moveq r0, #1
movne r0, #0
ldmia sp!, {r3, r4, r5, pc}
_02198d84:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
arm_func_end func_ov55_02198d2c
.global func_ov55_02198d8c
arm_func_start func_ov55_02198d8c
func_ov55_02198d8c: ; 0x02198d8c
stmdb sp!, {r3, lr}
ldr r2, [r0]
mov r1, #1
ldr r2, [r2, #0x28]
blx r2
ldmia sp!, {r3, pc}
arm_func_end func_ov55_02198d8c
.global func_ov55_02198da4
arm_func_start func_ov55_02198da4
func_ov55_02198da4: ; 0x02198da4
stmdb sp!, {r3, r4, r5, r6, r7, lr}
add r7, r0, #0xc
add r6, r0, #0x24
cmp r7, r6
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r4, _02198df4 ; =data_027e0fe4
mvn r5, #0
_02198dc0:
ldr r0, [r7]
cmp r0, r5
beq _02198de4
ldr r0, [r4]
mov r1, r7
bl func_ov00_020c3674
cmp r0, #0
streq r5, [r7]
streq r5, [r7, #4]
_02198de4:
add r7, r7, #8
cmp r7, r6
bne _02198dc0
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
arm_func_end func_ov55_02198da4
_02198df4: .word data_027e0fe4
.global func_ov55_02198df8
arm_func_start func_ov55_02198df8
func_ov55_02198df8: ; 0x02198df8
stmdb sp!, {r3, r4, lr}
sub sp, sp, #0xc
ldr r1, [r0]
mov r4, r0
ldr r1, [r1, #0x24]
blx r1
cmp r0, #0
addeq sp, sp, #0xc
ldmeqia sp!, {r3, r4, pc}
add r1, sp, #0
mov r0, r4
bl func_ov00_020be99c
ldr r0, [sp, #4]
ldr r1, [sp, #8]
add r0, r0, #0x85
add r2, r0, #0xb00
add r0, r1, #0x200
str r2, [sp, #4]
str r0, [sp, #8]
ldrsh r1, [r4, #4]
ldr r0, _02198e5c ; =data_ov55_021998ac
add r2, sp, #0
bl func_ov00_020b413c
add sp, sp, #0xc
ldmia sp!, {r3, r4, pc}
.align 2, 0
arm_func_end func_ov55_02198df8
_02198e5c: .word data_ov55_021998ac
.global func_ov55_02198e60
arm_func_start func_ov55_02198e60
func_ov55_02198e60: ; 0x02198e60
stmdb sp!, {r4, r5, lr}
sub sp, sp, #0x3c
mov r5, r0
bl func_ov00_020beb30
cmp r0, #0
addle sp, sp, #0x3c
movle r0, #0
ldmleia sp!, {r4, r5, pc}
mov r0, r5
bl func_ov00_020be990
add r3, sp, #0x30
ldmia r0, {r0, r1, r2}
stmia r3, {r0, r1, r2}
ldr r1, [sp, #0x34]
add r0, sp, #4
add r1, r1, #0x1000
str r1, [sp, #0x34]
bl func_ov00_020c1500
mvn r1, #0
add r0, sp, #4
str r1, [sp, #0x20]
str r1, [sp, #0x24]
bl func_ov00_020c3348
mov r0, #1
str r0, [sp, #0x20]
ldrsh r1, [r5, #4]
mov r0, #0
add r4, r5, #0xc
add r2, r5, #0x24
strh r1, [sp, #0x18]
strh r0, [sp, #4]
cmp r4, r2
beq _02198f20
mvn r0, #0
_02198ee8:
ldr r1, [r4]
cmp r1, r0
bne _02198f14
ldr r0, _02198f6c ; =data_027e0fe8
str r4, [sp]
ldr r0, [r0]
ldr r1, _02198f70 ; =0x424f4d42
add r2, sp, #0x30
add r3, sp, #4
bl func_ov00_020c4048
b _02198f20
_02198f14:
add r4, r4, #8
cmp r4, r2
bne _02198ee8
_02198f20:
ldr r0, [r4]
mvn r1, #0
cmp r0, r1
beq _02198f40
mov r0, r5
ldr r2, [r0]
ldr r2, [r2, #0x20]
blx r2
_02198f40:
mov r0, r5
ldr r2, [r0]
mov r1, #0
ldr r2, [r2, #0x28]
blx r2
ldr r0, _02198f74 ; =data_027e0fe4
mov r1, r4
ldr r0, [r0]
bl func_ov00_020c3674
add sp, sp, #0x3c
ldmia sp!, {r4, r5, pc}
.align 2, 0
arm_func_end func_ov55_02198e60
_02198f6c: .word data_027e0fe8
_02198f70: .word 0x424f4d42
_02198f74: .word data_027e0fe4
.global func_ov55_02198f78
arm_func_start func_ov55_02198f78
func_ov55_02198f78: ; 0x02198f78
ldr ip, _02198f88 ; =func_ov00_020a89bc
ldr r1, _02198f8c ; =data_ov55_02199840
mov r2, #1
bx ip
.align 2, 0
arm_func_end func_ov55_02198f78
_02198f88: .word func_ov00_020a89bc
_02198f8c: .word data_ov55_02199840
.global func_ov55_02198f90
arm_func_start func_ov55_02198f90
func_ov55_02198f90: ; 0x02198f90
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
cmp r1, #0
cmpne r1, #5
ldmneia sp!, {r3, r4, r5, pc}
mov r0, r5
bl func_ov00_020a8ca4
cmp r0, #0
ldmneia sp!, {r3, r4, r5, pc}
ldr r0, _0219900c ; =data_027e0fb8
ldr r0, [r0]
ldrb r0, [r0, #0x79]
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
bl func_ov55_02199010
bl func_ov55_02198e60
mov r4, r0
mov r0, r5
bl func_ov00_020a8cc4
ldr r1, [r4, #8]
str r1, [r0]
ldr r1, [r4, #0xc]
str r1, [r0, #4]
mov r0, r4
ldr r1, [r0]
ldr r1, [r1, #0x58]
blx r1
ldr r0, _0219900c ; =data_027e0fb8
ldr r0, [r0]
bl func_ov00_020af298
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov55_02198f90
_0219900c: .word data_027e0fb8
.global func_ov55_02199010
arm_func_start func_ov55_02199010
func_ov55_02199010: ; 0x02199010
ldr ip, _0219901c ; =func_01fffcec
mov r0, #4
bx ip
.align 2, 0
arm_func_end func_ov55_02199010
_0219901c: .word func_01fffcec
.global func_ov55_02199020
arm_func_start func_ov55_02199020
func_ov55_02199020: ; 0x02199020
stmdb sp!, {r4, r5, lr}
sub sp, sp, #0x14
mov r4, r0
bl func_ov00_020a8db8
ldr r1, _021991a0 ; =data_ov55_02199840
ldr r1, [r1]
cmp r1, r0
bne _0219907c
mov r0, r4
mov r1, #0
bl func_ov00_020a8b3c
cmp r0, #0
beq _0219907c
mov r1, #0
mov r0, #1
str r0, [sp]
mov r0, r4
mov r2, r1
mov r3, r1
str r1, [sp, #4]
bl func_ov05_02110228
add sp, sp, #0x14
ldmia sp!, {r4, r5, pc}
_0219907c:
mov r0, r4
mov r5, #0
bl func_ov00_020a8b80
cmp r0, #0
beq _02199128
ldr r0, _021991a4 ; =data_027e0fb8
add r1, sp, #8
ldr r0, [r0]
bl func_ov00_020b05e8
cmp r0, #0
beq _021990dc
bl func_ov55_02199010
bl func_ov55_02198e60
mov r5, r0
mov r0, r4
bl func_ov00_020a8c4c
mov r1, r0
add r0, sp, #8
add r2, r4, #0x38
bl func_01ff9bc4
bl func_020385b8
add r1, r4, #0x38
bl func_ov00_020ab8cc
b _02199128
_021990dc:
ldr r0, _021991a4 ; =data_027e0fb8
add r1, sp, #8
ldr r0, [r0]
mov r2, r5
bl func_ov00_020b049c
cmp r0, #0
beq _02199128
bl func_ov55_02199010
bl func_ov55_02198e60
mov r5, r0
mov r0, r4
bl func_ov00_020a8c4c
mov r1, r0
add r0, sp, #8
add r2, r4, #0x38
bl func_01ff9bc4
bl func_020385b8
add r1, r4, #0x38
bl func_ov00_020ab908
_02199128:
cmp r5, #0
beq _02199178
mov r0, r4
bl func_ov00_020a8cc4
ldr r1, [r5, #8]
str r1, [r0]
ldr r1, [r5, #0xc]
str r1, [r0, #4]
mov r0, r5
ldr r1, [r0]
ldr r1, [r1, #0x58]
blx r1
ldr r0, _021991a4 ; =data_027e0fb8
ldr r0, [r0]
bl func_ov00_020af298
mov r0, r4
mov r1, #2
bl func_ov00_020a8138
add sp, sp, #0x14
ldmia sp!, {r4, r5, pc}
_02199178:
ldr r0, _021991a4 ; =data_027e0fb8
ldr r0, [r0]
bl func_ov00_020b034c
mov r1, r0
mov r0, r4
mov r2, #0
mov r3, #1
bl func_ov05_0210f808
add sp, sp, #0x14
ldmia sp!, {r4, r5, pc}
.align 2, 0
arm_func_end func_ov55_02199020
_021991a0: .word data_ov55_02199840
_021991a4: .word data_027e0fb8
.global func_ov55_021991a8
arm_func_start func_ov55_021991a8
func_ov55_021991a8: ; 0x021991a8
bx lr
arm_func_end func_ov55_021991a8
.global func_ov55_021991ac
arm_func_start func_ov55_021991ac
func_ov55_021991ac: ; 0x021991ac
bx lr
arm_func_end func_ov55_021991ac
.global func_ov55_021991b0
arm_func_start func_ov55_021991b0
func_ov55_021991b0: ; 0x021991b0
stmdb sp!, {r4, lr}
ldr r1, _02199268 ; =data_027e103c
mov r4, r0
ldr r0, [r1]
bl func_ov05_02103ff0
ldr r0, _0219926c ; =data_027e0fb4
ldr r1, [r4, #0xc]
ldr r0, [r0]
add r0, r0, r1
ldrb r0, [r0, #0xbc]
cmp r0, #1
beq _021991f4
cmp r0, #2
beq _02199210
cmp r0, #3
beq _0219922c
b _02199244
_021991f4:
ldr r0, _02199270 ; =data_027e0f90
mov r1, #0x18
ldr r0, [r0]
ldr r2, [r0]
ldr r2, [r2, #0x40]
blx r2
b _02199244
_02199210:
ldr r0, _02199270 ; =data_027e0f90
mov r1, #0x20
ldr r0, [r0]
ldr r2, [r0]
ldr r2, [r2, #0x40]
blx r2
b _02199244
_0219922c:
ldr r0, _02199270 ; =data_027e0f90
mov r1, #0x3e8
ldr r0, [r0]
ldr r2, [r0]
ldr r2, [r2, #0x40]
blx r2
_02199244:
ldr r0, _0219926c ; =data_027e0fb4
ldr r1, [r4, #0xc]
ldr r0, [r0]
mov r2, #0
bl func_ov00_020ae50c
ldr r0, _0219926c ; =data_027e0fb4
ldr r0, [r0]
bl func_ov00_020ae3c0
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov55_021991b0
_02199268: .word data_027e103c
_0219926c: .word data_027e0fb4
_02199270: .word data_027e0f90
.global func_ov55_02199274
arm_func_start func_ov55_02199274
func_ov55_02199274: ; 0x02199274
bx lr
arm_func_end func_ov55_02199274
.global func_ov55_02199278
arm_func_start func_ov55_02199278
func_ov55_02199278: ; 0x02199278
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x60
mov r5, r0
add r0, sp, #4
mov r1, #0
blx func_ov00_020a9588
ldr r0, _021993a4 ; =data_027e0fb4
ldr r1, [r5, #0xc]
ldr r0, [r0]
add r1, r0, r1
ldrb r1, [r1, #0xbc]
cmp r1, #1
beq _021992c0
cmp r1, #2
beq _021992e8
cmp r1, #3
beq _02199310
b _02199334
_021992c0:
mov r1, #0xa
bl func_ov00_020ad52c
mov r1, r0
add r0, sp, #4
bl func_ov00_020a9614
ldr r1, _021993a8 ; =data_ov55_021997b0
add r0, sp, #4
bl func_ov00_020a990c
mov r4, r0
b _02199334
_021992e8:
mov r1, #0xb
bl func_ov00_020ad52c
mov r1, r0
add r0, sp, #4
bl func_ov00_020a9614
ldr r1, _021993ac ; =data_ov55_021997c4
add r0, sp, #4
bl func_ov00_020a990c
mov r4, r0
b _02199334
_02199310:
mov r1, #0xc
bl func_ov00_020ad52c
mov r1, r0
add r0, sp, #4
bl func_ov00_020a9614
ldr r1, _021993b0 ; =data_ov55_021997d8
add r0, sp, #4
bl func_ov00_020a990c
mov r4, r0
_02199334:
ldr r0, _021993b4 ; =data_027e0fcc
ldr r0, [r0]
ldr r0, [r0, #0x138]
bl func_ov00_020c0d68
cmp r0, #0x4b000
add r0, sp, #4
bge _02199364
bl func_ov00_020a960c
mov r1, r4
mov r2, #0x1f
bl func_02019570
b _02199374
_02199364:
bl func_ov00_020a960c
mov r1, r4
mov r2, #0
bl func_02019570
_02199374:
mov r3, #0x1d
add r1, sp, #0
mov r0, #0x14
mov r2, #1
str r3, [sp]
bl func_01ffa9fc
add r0, sp, #4
bl func_ov00_020b41c4
add r0, sp, #4
blx func_ov00_020a95a4
add sp, sp, #0x60
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
arm_func_end func_ov55_02199278
_021993a4: .word data_027e0fb4
_021993a8: .word data_ov55_021997b0
_021993ac: .word data_ov55_021997c4
_021993b0: .word data_ov55_021997d8
_021993b4: .word data_027e0fcc
.global func_ov55_021993b8
arm_func_start func_ov55_021993b8
func_ov55_021993b8: ; 0x021993b8
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x13c
mov r4, r0
mvn r1, #0
str r1, [r4, #0x5c]
mov r1, #0
add r0, sp, #0x8c
strb r1, [r4, #0x29]
bl func_ov00_0209a4f4
mov r2, #3
mvn r5, #0
mov r3, #0x32
mov r1, #0
mov r0, r4
str r5, [sp, #0x90]
strb r3, [sp, #0x95]
strb r2, [sp, #0x96]
strb r2, [sp, #0x97]
strb r1, [sp, #0xa2]
bl func_ov00_020a8c4c
add r5, sp, #0x18
ldmia r0, {r0, r1, r2}
stmia r5, {r0, r1, r2}
ldr r0, [sp, #0x18]
ldr r2, [sp, #0x1c]
ldr r1, [sp, #0x20]
ldr r3, _02199638 ; =data_027e0f64
str r0, [sp, #0xac]
str r1, [sp, #0xb4]
ldr r0, [r3]
str r2, [sp, #0xb0]
ldr r0, [r0, #4]
add r1, sp, #0x24
bl func_ov00_02087d34
ldr r0, _0219963c ; =data_027e0c54
mov r1, #5
ldrb r0, [r0]
str r1, [sp, #0x28]
mov r5, #0
cmp r0, #0
bne _021994d4
ldr r0, _02199640 ; =data_027e0e60
ldr sb, [sp, #0x1c]
ldr r7, [sp, #0x20]
ldr sl, [sp, #0x18]
mov r6, #1
add r3, r7, #0x2000
ldr r0, [r0]
add r1, sp, #0xc
mov r2, r6
add r8, sb, #0x1800
str sl, [sp, #0xc]
str sb, [sp, #0x10]
str r3, [sp, #0x14]
bl func_ov00_02083f44
cmp r0, r8
bge _021994cc
ldr r0, _02199640 ; =data_027e0e60
ldr sl, [sp, #0x18]
ldr r0, [r0]
add r3, r7, #0x3000
add r1, sp, #0
mov r2, r6
str sl, [sp]
str sb, [sp, #4]
str r3, [sp, #8]
bl func_ov00_02083f44
cmp r0, r8
movlt r6, r5
_021994cc:
cmp r6, #0
movne r5, #1
_021994d4:
cmp r5, #0
movne r0, #0x2000
strne r0, [sp, #0x34]
ldreq r0, _02199644 ; =0x0000105b
mov r8, #0
streq r0, [sp, #0x34]
ldr r0, [sp, #0x2c]
ldr r6, [sp, #0x24]
ldr r1, [sp, #0x28]
str r0, [sp, #0xc0]
ldr r0, [sp, #0x4c]
str r6, [sp, #0xb8]
ldr r6, [sp, #0x34]
str r1, [sp, #0xbc]
ldr r1, [sp, #0x38]
str r0, [sp, #0xe0]
ldr r0, [sp, #0x58]
ldr sl, _02199648 ; =0x0000038e
mov sb, #0xf000
mov r7, #0x1000
str r6, [sp, #0xc8]
ldr r6, [sp, #0x50]
str r1, [sp, #0xcc]
ldr r1, [sp, #0x54]
str r0, [sp, #0xec]
ldr r0, [sp, #0x64]
str r6, [sp, #0xe4]
ldr r6, [sp, #0x5c]
str r1, [sp, #0xe8]
ldr r1, [sp, #0x60]
str r0, [sp, #0xf8]
ldr r0, [sp, #0x70]
str r6, [sp, #0xf0]
ldr r6, [sp, #0x68]
str r1, [sp, #0xf4]
ldr r1, [sp, #0x6c]
str r0, [sp, #0x104]
ldr r0, [sp, #0x7c]
str r6, [sp, #0xfc]
ldr r6, [sp, #0x74]
str r1, [sp, #0x100]
ldr r1, [sp, #0x78]
str r0, [sp, #0x110]
ldr r0, _0219964c ; =data_027e0f74
ldrb r5, [sp, #0x84]
ldrb lr, [sp, #0x85]
ldrb ip, [sp, #0x86]
ldrb r3, [sp, #0x87]
ldrb r2, [sp, #0x88]
str r6, [sp, #0x108]
ldr r6, [sp, #0x80]
str r1, [sp, #0x10c]
mov r1, #1
strb r1, [sp, #0xa0]
mov fp, #0x5c
ldr r0, [r0]
add r1, sp, #0x8c
str r6, [sp, #0x114]
str sl, [sp, #0x30]
str sb, [sp, #0x3c]
str r8, [sp, #0x48]
str r7, [sp, #0x44]
str r8, [sp, #0x40]
str sl, [sp, #0xc4]
str sb, [sp, #0xd0]
str r8, [sp, #0xd4]
str r7, [sp, #0xd8]
str r8, [sp, #0xdc]
strb r5, [sp, #0x118]
strb lr, [sp, #0x119]
strb ip, [sp, #0x11a]
strb r3, [sp, #0x11b]
strb r2, [sp, #0x11c]
str fp, [sp, #0x120]
bl func_ov00_02097810
ldr r2, _02199650 ; =data_027e103c
str r0, [r4, #0x5c]
mov r1, #1
ldr r0, [r2]
mov r2, r1
bl func_ov00_020cf9dc
ldr r1, _02199650 ; =data_027e103c
add r0, sp, #0x8c
ldr r1, [r1]
mov r2, #1
strb r2, [r1, #0x2a]
bl func_ov00_0209a508
add sp, sp, #0x13c
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
arm_func_end func_ov55_021993b8
_02199638: .word data_027e0f64
_0219963c: .word data_027e0c54
_02199640: .word data_027e0e60
_02199644: .word 0x0000105b
_02199648: .word 0x0000038e
_0219964c: .word data_027e0f74
_02199650: .word data_027e103c
.global func_ov55_02199654
arm_func_start func_ov55_02199654
func_ov55_02199654: ; 0x02199654
stmdb sp!, {r4, lr}
sub sp, sp, #0x68
ldr r1, _02199794 ; =data_027e0f74
mov r4, r0
ldr r0, [r1]
ldr r1, [r4, #0x5c]
bl func_ov00_02097b9c
cmp r0, #0
addeq sp, sp, #0x68
ldmeqia sp!, {r4, pc}
ldr r0, _02199798 ; =data_027e0f64
add r1, sp, #0
ldr r0, [r0]
ldr r0, [r0, #4]
bl func_ov00_02087d34
ldr r0, [sp, #0x14]
ldr r3, _0219979c ; =0x00000e39
mov r0, r0, lsl #0x10
mov r1, r0, asr #0x10
mov r0, r4
mov r2, r1
bl func_ov00_020a8238
ldrb r0, [r4, #0x29]
cmp r0, #0
bne _021996d4
ldr r1, _021997a0 ; =data_ov55_02199890
mov r0, r4
mov r2, #0
bl func_ov00_020a8a4c
mov r0, #1
strb r0, [r4, #0x29]
b _02199784
_021996d4:
mov r0, r4
mov r1, #0
bl func_ov00_020a8b3c
cmp r0, #0
beq _02199714
ldr r0, _02199794 ; =data_027e0f74
ldr r1, [r4, #0x5c]
ldr r0, [r0]
bl func_ov00_02097bcc
mvn r2, #0
mov r0, r4
mov r1, #0
str r2, [r4, #0x5c]
bl func_ov00_020a8138
add sp, sp, #0x68
ldmia sp!, {r4, pc}
_02199714:
mov r0, r4
mov r1, #0x44000
mov r2, #0
bl func_ov00_020a8b04
cmp r0, #0
mov r0, r4
beq _02199748
bl func_ov00_020a8c4c
mov r2, r0
ldr r0, _021997a4 ; =data_ov00_020eec9c
mov r1, #0x11c
bl func_ov00_020d7a84
b _02199774
_02199748:
mov r1, #0x5f000
mov r2, #0
bl func_ov00_020a8b04
cmp r0, #0
beq _02199774
mov r0, r4
bl func_ov00_020a8c4c
mov r2, r0
ldr r0, _021997a4 ; =data_ov00_020eec9c
ldr r1, _021997a8 ; =0x0000011b
bl func_ov00_020d7a84
_02199774:
mov r0, r4
mov r1, #0x4b000
mov r2, #0
bl func_ov00_020a8b04
_02199784:
ldr r0, _021997ac ; =data_ov00_020eec68
bl func_ov00_020d71a0
add sp, sp, #0x68
ldmia sp!, {r4, pc}
.align 2, 0
arm_func_end func_ov55_02199654
_02199794: .word data_027e0f74
_02199798: .word data_027e0f64
_0219979c: .word 0x00000e39
_021997a0: .word data_ov55_02199890
_021997a4: .word data_ov00_020eec9c
_021997a8: .word 0x0000011b
_021997ac: .word data_ov00_020eec68
.global data_ov55_021997b0
data_ov55_021997b0: ; 0x021997b0
.ascii "mat_rev_bin_2"
.byte 0x00, 0x00, 0x00
.global data_ov55_021997c0
data_ov55_021997c0: ; 0x021997c0
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov55_021997c4
data_ov55_021997c4: ; 0x021997c4
.ascii "mat_rev_binP_2"
.byte 0x00, 0x00
.global data_ov55_021997d4
data_ov55_021997d4: ; 0x021997d4
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov55_021997d8
data_ov55_021997d8: ; 0x021997d8
.ascii "mat_rev_binY_2"
.byte 0x00, 0x00
.global data_ov55_021997e8
data_ov55_021997e8: ; 0x021997e8
.byte 0x00, 0x00, 0x00, 0x00
.global func_ov55_021997ec
arm_func_start func_ov55_021997ec
func_ov55_021997ec: ; 0x021997ec
stmdb sp!, {r3, lr}
ldr r0, _02199810 ; =data_ov55_021998ac
mov r1, #0
blx func_ov00_020a9588
ldr r0, _02199810 ; =data_ov55_021998ac
ldr r1, _02199814 ; =func_ov00_020a95a4
ldr r2, _02199818 ; =data_ov55_021998a0
bl func_0204f8d4
ldmia sp!, {r3, pc}
.align 2, 0
arm_func_end func_ov55_021997ec
_02199810: .word data_ov55_021998ac
_02199814: .word func_ov00_020a95a4 + 1
_02199818: .word data_ov55_021998a0
.global data_ov55_0219981c
data_ov55_0219981c: ; 0x0219981c
.byte 0xec, 0x97, 0x19, 0x02
.global data_ov55_02199820
data_ov55_02199820: ; 0x02199820
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov55_02199824
data_ov55_02199824: ; 0x02199824
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov55_02199828
data_ov55_02199828: ; 0x02199828
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov55_0219982c
data_ov55_0219982c: ; 0x0219982c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov55_02199830
data_ov55_02199830: ; 0x02199830
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov55_02199834
data_ov55_02199834: ; 0x02199834
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov55_02199838
data_ov55_02199838: ; 0x02199838
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov55_0219983c
data_ov55_0219983c: ; 0x0219983c
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov55_02199840
data_ov55_02199840: ; 0x02199840
.byte 0x1e, 0x00, 0x00, 0x00
.global data_ov55_02199844
data_ov55_02199844: ; 0x02199844
.byte 0x99, 0x19, 0x00, 0x00
.global data_ov55_02199848
data_ov55_02199848: ; 0x02199848
.byte 0x00, 0x20, 0x00, 0x00
.global data_ov55_0219984c
data_ov55_0219984c: ; 0x0219984c
.byte 0x00, 0xa0, 0x00, 0x00
.global data_ov55_02199850
data_ov55_02199850: ; 0x02199850
.ascii "brg"
.byte 0x00
.global data_ov55_02199854
data_ov55_02199854: ; 0x02199854
.ascii "fnl"
.byte 0x00
.global data_ov55_02199858
data_ov55_02199858: ; 0x02199858
.ascii "pdl"
.byte 0x00
.global data_ov55_0219985c
data_ov55_0219985c: ; 0x0219985c
.ascii "dco"
.byte 0x00
.global data_ov55_02199860
data_ov55_02199860: ; 0x02199860
.ascii "can"
.byte 0x00
.global data_ov55_02199864
data_ov55_02199864: ; 0x02199864
.ascii "hul"
.byte 0x00
.global data_ov55_02199868
data_ov55_02199868: ; 0x02199868
.ascii "bow"
.byte 0x00
.global data_ov55_0219986c
data_ov55_0219986c: ; 0x0219986c
.ascii "anc"
.byte 0x00
.global data_ov55_02199870
data_ov55_02199870: ; 0x02199870
.byte 0x6c, 0x98, 0x19, 0x02
.global data_ov55_02199874
data_ov55_02199874: ; 0x02199874
.byte 0x68, 0x98, 0x19, 0x02
.global data_ov55_02199878
data_ov55_02199878: ; 0x02199878
.byte 0x64, 0x98, 0x19, 0x02
.global data_ov55_0219987c
data_ov55_0219987c: ; 0x0219987c
.byte 0x60, 0x98, 0x19, 0x02
.global data_ov55_02199880
data_ov55_02199880: ; 0x02199880
.byte 0x5c, 0x98, 0x19, 0x02
.global data_ov55_02199884
data_ov55_02199884: ; 0x02199884
.byte 0x58, 0x98, 0x19, 0x02
.global data_ov55_02199888
data_ov55_02199888: ; 0x02199888
.byte 0x54, 0x98, 0x19, 0x02
.global data_ov55_0219988c
data_ov55_0219988c: ; 0x0219988c
.byte 0x50, 0x98, 0x19, 0x02
.global data_ov55_02199890
data_ov55_02199890: ; 0x02199890
.byte 0x4c, 0x00, 0x00, 0x00
.global data_ov55_02199894
data_ov55_02199894: ; 0x02199894
.byte 0x00, 0x10, 0x00, 0x00
.global data_ov55_02199898
data_ov55_02199898: ; 0x02199898
.byte 0x00, 0x00, 0x00, 0x00
.global data_ov55_0219989c
data_ov55_0219989c: ; 0x0219989c
.byte 0x00, 0xe0, 0x07, 0x00
; 0x021998a0
.bss
.global data_ov55_021998a0
data_ov55_021998a0:
.space 0x4
.global data_ov55_021998a4
data_ov55_021998a4:
.space 0x4
.global data_ov55_021998a8
data_ov55_021998a8:
.space 0x4
.global data_ov55_021998ac
data_ov55_021998ac:
.space 0x4
.global data_ov55_021998b0
data_ov55_021998b0:
.space 0x4
.global data_ov55_021998b4
data_ov55_021998b4:
.space 0x4
.global data_ov55_021998b8
data_ov55_021998b8:
.space 0x4
.global data_ov55_021998bc
data_ov55_021998bc:
.space 0x4
.global data_ov55_021998c0
data_ov55_021998c0:
.space 0x4
.global data_ov55_021998c4
data_ov55_021998c4:
.space 0x4
.global data_ov55_021998c8
data_ov55_021998c8:
.space 0x4
.global data_ov55_021998cc
data_ov55_021998cc:
.space 0x4
.global data_ov55_021998d0
data_ov55_021998d0:
.space 0x4
.global data_ov55_021998d4
data_ov55_021998d4:
.space 0x4
.global data_ov55_021998d8
data_ov55_021998d8:
.space 0x4
.global data_ov55_021998dc
data_ov55_021998dc:
.space 0x4
.global data_ov55_021998e0
data_ov55_021998e0:
.space 0x4
.global data_ov55_021998e4
data_ov55_021998e4:
.space 0x4
.global data_ov55_021998e8
data_ov55_021998e8:
.space 0x4
.global data_ov55_021998ec
data_ov55_021998ec:
.space 0x4
.global data_ov55_021998f0
data_ov55_021998f0:
.space 0x4
.global data_ov55_021998f4
data_ov55_021998f4:
.space 0x4
.global data_ov55_021998f8
data_ov55_021998f8:
.space 0x4
.global data_ov55_021998fc
data_ov55_021998fc:
.space 0x4
.global data_ov55_02199900
data_ov55_02199900:
.space 0x4
.global data_ov55_02199904
data_ov55_02199904:
.space 0x4
.global data_ov55_02199908
data_ov55_02199908:
.space 0x4
.global data_ov55_0219990c
data_ov55_0219990c:
.space 0x4
.global data_ov55_02199910
data_ov55_02199910:
.space 0x4
.global data_ov55_02199914
data_ov55_02199914:
.space 0x4
.global data_ov55_02199918
data_ov55_02199918:
.space 0x4
.global data_ov55_0219991c
data_ov55_0219991c:
.space 0x4