.include "macros/function.inc" .include "global.inc" .text .global func_ov37_0217bd80 arm_func_start func_ov37_0217bd80 func_ov37_0217bd80: ; 0x0217bd80 stmdb sp!, {r3, lr} ldr r1, _0217bdac ; =data_027e0fe0 mov r0, #0x2fc0 ldr r1, [r1] mov r2, #4 ldr r1, [r1] bl func_0202e9dc cmp r0, #0 ldmeqia sp!, {r3, pc} bl func_ov37_0217be70 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov37_0217bd80 _0217bdac: .word data_027e0fe0 .global func_ov37_0217bdb0 arm_func_start func_ov37_0217bdb0 func_ov37_0217bdb0: ; 0x0217bdb0 stmdb sp!, {r3, lr} ldr r0, _0217be0c ; =data_027e0f94 ldr r0, [r0, #4] cmp r0, #0x5000 movgt r0, #1 ldmgtia sp!, {r3, pc} bl func_ov37_0217be14 ldrb r1, [r0, #0x27] cmp r1, #0 ldrneb r0, [r0, #0x28] cmpne r0, #0 beq _0217bdf4 ldr r0, _0217be10 ; =data_027e0fa0 ldr r0, [r0, #4] cmp r0, #0 movgt r0, #1 ldmgtia sp!, {r3, pc} _0217bdf4: bl func_ov37_0217be24 ldr r0, [r0, #0x18] cmp r0, #0 movne r0, #1 moveq r0, #0 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov37_0217bdb0 _0217be0c: .word data_027e0f94 _0217be10: .word data_027e0fa0 .global func_ov37_0217be14 arm_func_start func_ov37_0217be14 func_ov37_0217be14: ; 0x0217be14 ldr ip, _0217be20 ; =func_01fffcd8 mov r0, #1 bx ip .align 2, 0 arm_func_end func_ov37_0217be14 _0217be20: .word func_01fffcd8 .global func_ov37_0217be24 arm_func_start func_ov37_0217be24 func_ov37_0217be24: ; 0x0217be24 ldr ip, _0217be30 ; =func_01fffcd8 mov r0, #5 bx ip .align 2, 0 arm_func_end func_ov37_0217be24 _0217be30: .word func_01fffcd8 .global func_ov37_0217be34 arm_func_start func_ov37_0217be34 func_ov37_0217be34: ; 0x0217be34 stmdb sp!, {r3, lr} mvn r2, #0 cmp r0, r2 ldmeqia sp!, {r3, pc} cmp r0, #0 ldreq r2, _0217be5c ; =data_ov37_02189160 moveq r3, #1 streqb r3, [r2, #0x2c] bl func_ov05_02102a80 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov37_0217be34 _0217be5c: .word data_ov37_02189160 .global func_ov37_0217be60 arm_func_start func_ov37_0217be60 func_ov37_0217be60: ; 0x0217be60 ldr r0, _0217be6c ; =data_ov37_02189160 ldrb r0, [r0, #0x2d] bx lr .align 2, 0 arm_func_end func_ov37_0217be60 _0217be6c: .word data_ov37_02189160 .global func_ov37_0217be70 arm_func_start func_ov37_0217be70 func_ov37_0217be70: ; 0x0217be70 stmdb sp!, {r3, r4, lr} sub sp, sp, #4 mov r4, r0 bl func_ov00_020ca668 ldr r2, _0217bf84 ; =data_ov37_02188aa8 mov r1, r4 add r0, r4, #0x21c str r2, [r4] bl func_ov37_02180cc8 add r1, r4, #0xdf0 add r0, r4, #0x2000 mov r2, #0 str r2, [r0, #0xdec] ldr ip, _0217bf88 ; =func_ov37_0217bf98 add r0, r1, #0x2000 ldr r3, _0217bf8c ; =func_ov37_0217bf9c mov r1, #0xa mov r2, #0x10 str ip, [sp] bl func_0204f614 add r0, r4, #0x29c add r1, r0, #0x2c00 add r0, r4, #0x2ec add r0, r0, #0x2c00 mvn r2, #0 _0217bed4: str r2, [r1] str r2, [r1, #4] add r1, r1, #8 cmp r1, r0 blo _0217bed4 add r0, r4, #0x2000 str r2, [r0, #0xeec] str r2, [r0, #0xef0] add r1, r4, #0x2f4 ldr ip, _0217bf88 ; =func_ov37_0217bf98 add r0, r1, #0x2c00 ldr r3, _0217bf8c ; =func_ov37_0217bf9c mov r1, #4 mov r2, #0x10 str ip, [sp] bl func_0204f614 add r0, r4, #0x334 add r2, r0, #0x2c00 add r0, r4, #0x354 add r0, r0, #0x2c00 mvn r1, #0 _0217bf28: str r1, [r2] str r1, [r2, #4] add r2, r2, #8 cmp r2, r0 blo _0217bf28 add r0, r4, #0x2000 mov r2, #0 str r2, [r0, #0xf98] add r1, r4, #0xfb0 ldr ip, _0217bf90 ; =func_ov00_020b7d74 str r2, [r0, #0xf9c] ldr r3, _0217bf94 ; =func_ov37_0217c2d0 add r0, r1, #0x2000 mov r1, #3 mov r2, #4 str ip, [sp] bl func_0204f614 add r1, r4, #0x2000 mov r2, #0 mov r0, r4 str r2, [r1, #0xfbc] add sp, sp, #4 ldmia sp!, {r3, r4, pc} .align 2, 0 arm_func_end func_ov37_0217be70 _0217bf84: .word data_ov37_02188aa8 _0217bf88: .word func_ov37_0217bf98 _0217bf8c: .word func_ov37_0217bf9c _0217bf90: .word func_ov00_020b7d74 _0217bf94: .word func_ov37_0217c2d0 .global func_ov37_0217bf98 arm_func_start func_ov37_0217bf98 func_ov37_0217bf98: ; 0x0217bf98 bx lr arm_func_end func_ov37_0217bf98 .global func_ov37_0217bf9c arm_func_start func_ov37_0217bf9c func_ov37_0217bf9c: ; 0x0217bf9c bx lr arm_func_end func_ov37_0217bf9c .global func_ov37_0217bfa0 arm_func_start func_ov37_0217bfa0 func_ov37_0217bfa0: ; 0x0217bfa0 stmdb sp!, {r4, lr} ldr r1, _0217c128 ; =data_ov37_02188aa8 mov r4, r0 str r1, [r4] bl func_ov37_0217f8a4 mov r0, r4 bl func_ov37_0217f980 mov r0, r4 bl func_ov37_0217fa8c mov r0, r4 bl func_ov37_0217fbac add r0, r4, #0x3bc add r0, r0, #0x2c00 bl func_ov00_020b7d74 add r0, r4, #0xfb0 add r0, r0, #0x2000 mov r1, #3 mov r2, #4 ldr r3, _0217c12c ; =func_ov00_020b7d74 bl func_0204f754 add r0, r4, #0x2f4 add r0, r0, #0x2c00 mov r1, #4 mov r2, #0x10 ldr r3, _0217c130 ; =func_ov37_0217bf98 bl func_0204f754 add r0, r4, #0xdf0 add r0, r0, #0x2000 mov r1, #0xa mov r2, #0x10 ldr r3, _0217c130 ; =func_ov37_0217bf98 bl func_0204f754 add r0, r4, #0x1dc add r0, r0, #0x2c00 bl func_ov00_020b7e6c add r0, r4, #0x1dc add r0, r0, #0x2c00 bl func_ov00_020b7df0 add r0, r4, #0xdd0 add r0, r0, #0x2000 bl func_ov00_020b7e6c add r0, r4, #0xdd0 add r0, r0, #0x2000 bl func_ov00_020b7df0 add r0, r4, #0x1cc add r0, r0, #0x2c00 bl func_ov00_020b7d74 add r0, r4, #0x318 add r0, r0, #0x1400 blx func_ov00_020a9b6c add r0, r4, #0x298 add r0, r0, #0x1400 blx func_ov00_020a9b6c add r0, r4, #0x23c add r0, r0, #0x1400 blx func_ov00_020a95a4 add r0, r4, #0x19c add r0, r0, #0x1400 blx func_ov00_020a9b6c add r0, r4, #0x11c add r0, r0, #0x1400 blx func_ov00_020a9b6c add r0, r4, #0x14c0 blx func_ov00_020a95a4 add r0, r4, #0x420 add r0, r0, #0x1000 blx func_ov00_020a9b6c add r0, r4, #0x3a0 add r0, r0, #0x1000 blx func_ov00_020a9b6c add r0, r4, #0x344 add r0, r0, #0x1000 blx func_ov00_020a95a4 add r0, r4, #0x2a4 add r0, r0, #0x1000 blx func_ov00_020a9b6c add r0, r4, #0x224 add r0, r0, #0x1000 blx func_ov00_020a9b6c add r0, r4, #0x1c8 add r0, r0, #0x1000 blx func_ov00_020a95a4 add r0, r4, #0x28 add r0, r0, #0x1000 blx func_ov00_020a9b6c add r0, r4, #0x23c blx func_ov00_020a95ec add r0, r4, #0x1d8 bl func_ov00_02081f4c add r0, r4, #0x1c8 mov r1, #2 mov r2, #4 ldr r3, _0217c12c ; =func_ov00_020b7d74 bl func_0204f754 mov r0, r4 bl func_ov00_020c1730 mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_0217bfa0 _0217c128: .word data_ov37_02188aa8 _0217c12c: .word func_ov00_020b7d74 _0217c130: .word func_ov37_0217bf98 .global func_ov37_0217c134 arm_func_start func_ov37_0217c134 func_ov37_0217c134: ; 0x0217c134 stmdb sp!, {r4, lr} ldr r1, _0217c2c4 ; =data_ov37_02188aa8 mov r4, r0 str r1, [r4] bl func_ov37_0217f8a4 mov r0, r4 bl func_ov37_0217f980 mov r0, r4 bl func_ov37_0217fa8c mov r0, r4 bl func_ov37_0217fbac add r0, r4, #0x3bc add r0, r0, #0x2c00 bl func_ov00_020b7d74 add r0, r4, #0xfb0 add r0, r0, #0x2000 mov r1, #3 mov r2, #4 ldr r3, _0217c2c8 ; =func_ov00_020b7d74 bl func_0204f754 add r0, r4, #0x2f4 add r0, r0, #0x2c00 mov r1, #4 mov r2, #0x10 ldr r3, _0217c2cc ; =func_ov37_0217bf98 bl func_0204f754 add r0, r4, #0xdf0 add r0, r0, #0x2000 mov r1, #0xa mov r2, #0x10 ldr r3, _0217c2cc ; =func_ov37_0217bf98 bl func_0204f754 add r0, r4, #0x1dc add r0, r0, #0x2c00 bl func_ov00_020b7e6c add r0, r4, #0x1dc add r0, r0, #0x2c00 bl func_ov00_020b7df0 add r0, r4, #0xdd0 add r0, r0, #0x2000 bl func_ov00_020b7e6c add r0, r4, #0xdd0 add r0, r0, #0x2000 bl func_ov00_020b7df0 add r0, r4, #0x1cc add r0, r0, #0x2c00 bl func_ov00_020b7d74 add r0, r4, #0x318 add r0, r0, #0x1400 blx func_ov00_020a9b6c add r0, r4, #0x298 add r0, r0, #0x1400 blx func_ov00_020a9b6c add r0, r4, #0x23c add r0, r0, #0x1400 blx func_ov00_020a95a4 add r0, r4, #0x19c add r0, r0, #0x1400 blx func_ov00_020a9b6c add r0, r4, #0x11c add r0, r0, #0x1400 blx func_ov00_020a9b6c add r0, r4, #0x14c0 blx func_ov00_020a95a4 add r0, r4, #0x420 add r0, r0, #0x1000 blx func_ov00_020a9b6c add r0, r4, #0x3a0 add r0, r0, #0x1000 blx func_ov00_020a9b6c add r0, r4, #0x344 add r0, r0, #0x1000 blx func_ov00_020a95a4 add r0, r4, #0x2a4 add r0, r0, #0x1000 blx func_ov00_020a9b6c add r0, r4, #0x224 add r0, r0, #0x1000 blx func_ov00_020a9b6c add r0, r4, #0x1c8 add r0, r0, #0x1000 blx func_ov00_020a95a4 add r0, r4, #0x28 add r0, r0, #0x1000 blx func_ov00_020a9b6c add r0, r4, #0x23c blx func_ov00_020a95ec add r0, r4, #0x1d8 bl func_ov00_02081f4c add r0, r4, #0x1c8 mov r1, #2 mov r2, #4 ldr r3, _0217c2c8 ; =func_ov00_020b7d74 bl func_0204f754 mov r0, r4 bl func_ov00_020c1730 mov r0, r4 bl func_0202ea0c mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_0217c134 _0217c2c4: .word data_ov37_02188aa8 _0217c2c8: .word func_ov00_020b7d74 _0217c2cc: .word func_ov37_0217bf98 .global func_ov37_0217c2d0 arm_func_start func_ov37_0217c2d0 func_ov37_0217c2d0: ; 0x0217c2d0 mov r1, #0 str r1, [r0] bx lr arm_func_end func_ov37_0217c2d0 .global func_ov37_0217c2dc arm_func_start func_ov37_0217c2dc func_ov37_0217c2dc: ; 0x0217c2dc stmdb sp!, {r4, lr} mov r1, #1 mov r4, r0 bl func_ov00_020c1bfc cmp r0, #0 movne r0, #0 ldmneia sp!, {r4, pc} ldr r1, _0217c37c ; =data_ov37_02188a20 mov r2, #2 mov r0, r4 str r2, [r4, #0x154] bl func_ov00_020ca8a4 add r0, r4, #0x100 ldrh r3, [r0, #0xb0] add r1, r4, #0x2000 mov r2, #0 bic r3, r3, #4 strh r3, [r0, #0xb0] str r2, [r1, #0xf74] str r2, [r1, #0xf90] mov r0, r4 str r2, [r1, #0xfa0] mov r2, #2 str r2, [r1, #0xfa8] bl func_ov37_0217f80c mov r0, r4 bl func_ov37_0217f9c4 mov r1, #0 add r2, r4, #0x2000 str r1, [r2, #0xf78] str r1, [r2, #0xf7c] sub r3, r1, #1 add r0, r4, #0x21c str r3, [r2, #0xf94] bl func_ov37_021841c4 mov r0, r4 mov r1, #0 bl func_ov37_0217c464 mov r0, #1 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_0217c2dc _0217c37c: .word data_ov37_02188a20 .global func_ov37_0217c380 arm_func_start func_ov37_0217c380 func_ov37_0217c380: ; 0x0217c380 stmdb sp!, {r3, lr} cmp r1, #0 ldmeqia sp!, {r3, pc} add r2, r0, #0x100 ldrsh r3, [r2, #0x22] mov r1, #0 strh r3, [r2, #0x20] bl func_ov37_0217c464 ldmia sp!, {r3, pc} arm_func_end func_ov37_0217c380 .global func_ov37_0217c3a4 arm_func_start func_ov37_0217c3a4 func_ov37_0217c3a4: ; 0x0217c3a4 mov r1, #0 str r1, [r0, #0x60] str r1, [r0, #0x64] str r1, [r0, #0x68] bx lr arm_func_end func_ov37_0217c3a4 .global func_ov37_0217c3b8 arm_func_start func_ov37_0217c3b8 func_ov37_0217c3b8: ; 0x0217c3b8 bx lr arm_func_end func_ov37_0217c3b8 .global func_ov37_0217c3bc arm_func_start func_ov37_0217c3bc func_ov37_0217c3bc: ; 0x0217c3bc mov r1, #0 str r1, [r0, #0x60] str r1, [r0, #0x64] str r1, [r0, #0x68] bx lr arm_func_end func_ov37_0217c3bc .global func_ov37_0217c3d0 arm_func_start func_ov37_0217c3d0 func_ov37_0217c3d0: ; 0x0217c3d0 stmdb sp!, {r3, r4, r5, lr} mov r5, r0 mov r4, r1 bl func_ov00_020c2974 mov r1, r0 mov r2, r4 add r0, r5, #0x78 bl func_0202b154 ldmia sp!, {r3, r4, r5, pc} arm_func_end func_ov37_0217c3d0 .global func_ov37_0217c3f4 arm_func_start func_ov37_0217c3f4 func_ov37_0217c3f4: ; 0x0217c3f4 stmdb sp!, {r4, r5, r6, lr} mov r1, #0 mov r6, r0 mov r5, r1 _0217c404: add r0, r6, r1 add r0, r0, #0x2000 add r1, r1, #1 strb r5, [r0, #0xe90] cmp r1, #0xa blt _0217c404 mov r4, #0 _0217c420: mov r1, r5 mov r2, r4 add r0, r6, #0x21c bl func_ov37_02183640 add r5, r5, #1 cmp r5, #0xa blt _0217c420 mov r0, r6 bl func_ov37_0217f8a4 mov r0, r6 bl func_ov37_0217f8e8 add r0, r6, #0x2000 mvn r1, #0 str r1, [r0, #0xf94] mov r1, #1 str r1, [r0, #0xfa0] ldmia sp!, {r4, r5, r6, pc} arm_func_end func_ov37_0217c3f4 .global func_ov37_0217c464 arm_func_start func_ov37_0217c464 func_ov37_0217c464: ; 0x0217c464 stmdb sp!, {r3, r4, r5, lr} sub sp, sp, #0x18 mov r4, r0 mov r2, #0 str r2, [r4, #0x138] ldr r3, [r4, #0x130] cmp r1, #0x16 str r3, [r4, #0x134] str r1, [r4, #0x130] addls pc, pc, r1, lsl #2 b _0217c8f8 _0217c490: ; jump table b _0217c4ec ; case 0 b _0217c8f8 ; case 1 b _0217c53c ; case 2 b _0217c5ac ; case 3 b _0217c5b8 ; case 4 b _0217c5f0 ; case 5 b _0217c628 ; case 6 b _0217c650 ; case 7 b _0217c694 ; case 8 b _0217c6bc ; case 9 b _0217c700 ; case 10 b _0217c8f8 ; case 11 b _0217c728 ; case 12 b _0217c75c ; case 13 b _0217c8f8 ; case 14 b _0217c788 ; case 15 b _0217c8f8 ; case 16 b _0217c7b4 ; case 17 b _0217c808 ; case 18 b _0217c8f8 ; case 19 b _0217c814 ; case 20 b _0217c8a0 ; case 21 b _0217c8f8 ; case 22 _0217c4ec: ldr r1, _0217c900 ; =0x0000ffff add r0, r4, #0x100 strh r1, [r0, #0x26] ldrh r3, [r0, #0x26] mov r1, #1 sub r0, r1, #2 strh r3, [r4, #0x7a] str r2, [r4, #0x12c] strb r1, [r4, #0x11a] str r0, [r4, #0x20c] mov r1, r2 add r0, r4, #0x21c bl func_ov00_020c5d74 ldr r0, [r4, #0x22c] mov r1, #0 str r1, [r0, #0x10] ldr r0, [r4, #0x22c] add sp, sp, #0x18 str r1, [r0, #0x14] ldmia sp!, {r3, r4, r5, pc} _0217c53c: mov r1, #1 add r0, r4, #0x21c strb r1, [r4, #0x11a] bl func_ov37_021834a4 mov ip, #4 add r1, r4, #0x100 strh ip, [r1, #0x26] ldr r0, _0217c904 ; =data_ov00_020eec68 mov r1, #0xc9 mov r2, #0 mov r3, #0x7f strh ip, [r4, #0x7a] bl func_ov00_020d70a4 add r0, r4, #0x21c mov r1, #0 bl func_ov00_020c5d74 ldr r0, [r4, #0x22c] mov r1, #0x1000 str r1, [r0, #0x10] ldr r1, _0217c908 ; =data_027e0fc8 mov r2, #0 add r0, r4, #0x2000 str r2, [r0, #0xfac] ldr r0, [r1] sub r1, r2, #1 bl func_ov00_020bd070 add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} _0217c5ac: bl func_ov00_020cc960 add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} _0217c5b8: add r0, r4, #0x2000 ldr r0, [r0, #0xfa0] mov r5, #0x1000 cmp r0, #1 add r0, r4, #0x21c mov r1, #1 moveq r5, #0x2000 bl func_ov00_020c5d74 ldr r1, [r4, #0x22c] mov r0, r4 str r5, [r1, #0x10] bl func_ov37_0217c3a4 add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} _0217c5f0: add r0, r4, #0x2000 ldr r0, [r0, #0xfa0] mov r5, #0x1000 cmp r0, #1 add r0, r4, #0x21c mov r1, #2 moveq r5, #0x2000 bl func_ov00_020c5d74 ldr r1, [r4, #0x22c] mov r0, r4 str r5, [r1, #0x10] bl func_ov37_0217c3bc add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} _0217c628: add r0, r4, #0x21c mov r1, #2 bl func_ov00_020c5d74 ldr r1, [r4, #0x22c] mov r2, #0x3000 mov r0, r4 str r2, [r1, #0x10] bl func_ov37_0217c3bc add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} _0217c650: ldrsh r5, [r4, #0x78] bl func_ov00_020c2974 cmp r0, r5 add r0, r4, #0x21c ble _0217c670 mov r1, #3 bl func_ov00_020c5d74 b _0217c678 _0217c670: mov r1, #4 bl func_ov00_020c5d74 _0217c678: ldr r0, [r4, #0x22c] mov r1, #0x1000 str r1, [r0, #0x10] mov r0, r4 bl func_ov37_0217c3a4 add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} _0217c694: add r0, r4, #0x21c mov r1, #7 bl func_ov00_020c5d74 ldr r1, [r4, #0x22c] mov r2, #0x1000 mov r0, r4 str r2, [r1, #0x10] bl func_ov37_0217c3a4 add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} _0217c6bc: ldrsh r5, [r4, #0x78] bl func_ov00_020c2974 cmp r0, r5 add r0, r4, #0x21c ble _0217c6dc mov r1, #0xa bl func_ov00_020c5d74 b _0217c6e4 _0217c6dc: mov r1, #0xb bl func_ov00_020c5d74 _0217c6e4: ldr r0, [r4, #0x22c] mov r1, #0x1000 str r1, [r0, #0x10] mov r0, r4 bl func_ov37_0217c3a4 add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} _0217c700: add r0, r4, #0x21c mov r1, #6 bl func_ov00_020c5d74 ldr r1, [r4, #0x22c] mov r2, #0x1000 mov r0, r4 str r2, [r1, #0x10] bl func_ov37_0217c3a4 add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} _0217c728: ldr r1, _0217c900 ; =0x0000ffff add r0, r4, #0x100 strh r1, [r0, #0x26] ldrh r2, [r0, #0x26] add r0, r4, #0x21c mov r1, #5 strh r2, [r4, #0x7a] bl func_ov00_020c5d74 ldr r0, [r4, #0x22c] mov r1, #0x1000 str r1, [r0, #0x10] add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} _0217c75c: ldr r0, _0217c90c ; =data_ov37_02189160 mov r4, #0xf strb r2, [r0, #0x2c] str r4, [sp] ldr r0, _0217c910 ; =data_027e0c54 ldr r1, _0217c914 ; =func_ov37_0217be34 mov r3, r2 str r4, [sp, #4] blx func_02036140 add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} _0217c788: ldr r0, _0217c90c ; =data_ov37_02189160 mov r4, #0xf strb r2, [r0, #0x2c] str r4, [sp] ldr r0, _0217c910 ; =data_027e0c54 ldr r1, _0217c914 ; =func_ov37_0217be34 mov r3, r2 str r4, [sp, #4] blx func_02036140 add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} _0217c7b4: mov r1, #4 add r0, r4, #0x100 strh r1, [r0, #0x26] strh r1, [r4, #0x7a] add r0, r4, #0x21c mov r1, #0xc bl func_ov00_020c5d74 ldr r1, [r4, #0x22c] mov r2, #0x1000 ldr r0, _0217c908 ; =data_027e0fc8 str r2, [r1, #0x10] ldr r0, [r0] ldr r1, [r0] ldr r1, [r1, #0x80] blx r1 ldr r0, _0217c908 ; =data_027e0fc8 mvn r1, #0 ldr r0, [r0] bl func_ov00_020bd070 add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} _0217c808: bl func_ov00_020cc960 add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} _0217c814: ldr r0, _0217c918 ; =data_027e0f90 mov r1, r2 ldr r0, [r0] bl func_ov00_020a7b10 mov r0, r4 bl func_ov00_020c1b18 ldr r1, [r4, #0x14] add r0, r4, #0x21c str r1, [r4, #0x48] ldr r1, [r4, #0x18] str r1, [r4, #0x4c] ldr r1, [r4, #0x1c] str r1, [r4, #0x50] ldr r1, [r4, #0x48] str r1, [r4, #0x54] ldr r1, [r4, #0x4c] str r1, [r4, #0x58] ldr r1, [r4, #0x50] str r1, [r4, #0x5c] ldrsh r1, [r4, #0x12] strh r1, [r4, #0x78] bl func_ov37_0218391c add r0, r4, #0x21c mvn r1, #0 bl func_ov37_02183e24 add r0, r4, #0x21c mov r1, #0xd bl func_ov00_020c5d74 ldr r1, [r4, #0x22c] mov r2, #0x1000 mov r0, r4 str r2, [r1, #0x10] bl func_ov37_0217fbac add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} _0217c8a0: add r0, r4, #0x48 add ip, sp, #0xc ldmia r0, {r0, r1, r2} stmia ip, {r0, r1, r2} ldr r0, [sp, #0x14] ldr r1, [sp, #0x10] add r0, r0, #0x33 add r2, r1, #0x1800 add r0, r0, #0x2300 str r2, [sp, #0x10] str r0, [sp, #0x14] ldr r3, _0217c91c ; =0x0000101e add r1, r4, #0xfb0 stmia sp, {r3, ip} mov r2, #2 str r2, [sp, #8] ldr r0, _0217c920 ; =data_027e0e58 sub r2, r3, #2 ldr r0, [r0] add r1, r1, #0x2000 sub r3, r3, #1 bl func_ov00_0207c31c _0217c8f8: add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov37_0217c464 _0217c900: .word 0x0000ffff _0217c904: .word data_ov00_020eec68 _0217c908: .word data_027e0fc8 _0217c90c: .word data_ov37_02189160 _0217c910: .word data_027e0c54 _0217c914: .word func_ov37_0217be34 _0217c918: .word data_027e0f90 _0217c91c: .word 0x0000101e _0217c920: .word data_027e0e58 .global func_ov37_0217c924 arm_func_start func_ov37_0217c924 func_ov37_0217c924: ; 0x0217c924 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x4c mov r8, r0 bl func_ov37_0217be60 cmp r0, #0 addeq sp, sp, #0x4c ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} add r0, r8, #0x2000 ldr r0, [r0, #0xfa0] cmp r0, #0 bne _0217caac mov r0, r8 bl func_ov00_020c28ec add r0, r8, #0x29c add r6, r0, #0x2c00 ldr r0, _0217cbdc ; =0x00007fff add r1, r8, #0xdf0 ldr sb, _0217cbe0 ; =data_027e0d0c add r7, r1, #0x2000 mov r4, #0 rsb fp, r0, #0 _0217c978: ldr r0, _0217cbe4 ; =data_027e0fe4 mov r1, r6 ldr r0, [r0] bl func_ov00_020c3674 mov r5, r0 add r0, r8, r4 add r0, r0, #0x2000 ldrb r0, [r0, #0xe90] cmp r0, #0 beq _0217ca88 ldr sl, _0217cbe8 ; =data_ov37_02187dcc add lr, sp, #0x24 ldmia sl!, {r0, r1, r2, r3} mov ip, lr stmia lr!, {r0, r1, r2, r3} ldmia sl!, {r0, r1, r2, r3} stmia lr!, {r0, r1, r2, r3} ldmia sl, {r0, r1} stmia lr, {r0, r1} add r0, sp, #6 str r0, [sp] ldr r1, [ip, r4, lsl #2] add r0, r8, #0x21c mov r2, r7 add r3, sp, #8 bl func_ov37_02183930 add r0, r8, r4, lsl #4 add r2, r0, #0x2000 ldr r3, [r2, #0xdfc] ldr r1, [r2, #0xdf0] mov r0, r7 str r1, [r5, #0x48] ldr sl, [r2, #0xdf4] ldr r1, _0217cbec ; =data_027e0f94 str sl, [r5, #0x4c] ldr sl, [r2, #0xdf8] add r2, sp, #0x18 str sl, [r5, #0x50] str r3, [r5, #0x88] ldr r3, [sb] str r3, [r5, #0x60] ldr r3, [sb, #4] str r3, [r5, #0x64] ldr r3, [sb, #8] str r3, [r5, #0x68] bl func_01ff9bf8 ldr r0, [sp, #0x18] ldr r1, [sp, #0x20] bl func_01ffa0f4 ldrsh r1, [sp, #8] mov r0, r0, lsl #0x10 rsb r0, r1, r0, asr #16 mov r0, r0, lsl #0x10 mov r1, r0, asr #0x10 cmp fp, r0, asr #16 ldrgt r1, _0217cbdc ; =0x00007fff bgt _0217ca6c cmp r1, #0 rsblt r0, r1, #0 movlt r0, r0, lsl #0x10 movlt r1, r0, asr #0x10 _0217ca6c: ldrsh r0, [sp, #6] cmp r1, r0 movlt r0, #7 strlt r0, [r5, #0x12c] movge r0, #0 strge r0, [r5, #0x12c] b _0217ca90 _0217ca88: mov r0, #0 str r0, [r5, #0x12c] _0217ca90: add r6, r6, #8 add r7, r7, #0x10 add r4, r4, #1 cmp r4, #0xa blt _0217c978 add sp, sp, #0x4c ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} _0217caac: cmp r0, #1 addne sp, sp, #0x4c ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} add r0, r8, #0x334 add r7, r0, #0x2c00 ldr r0, _0217cbdc ; =0x00007fff add r1, r8, #0x2f4 ldr r5, _0217cbe0 ; =data_027e0d0c add sb, r1, #0x2c00 mov sl, #0 rsb r4, r0, #0 mov fp, #7 _0217cadc: ldr r0, _0217cbe4 ; =data_027e0fe4 mov r1, r7 ldr r0, [r0] bl func_ov00_020c3674 mov r6, r0 add r0, r8, #0x21c mov r1, sl bl func_ov37_02183e18 cmp r0, #2 bne _0217cbb8 add r0, r8, #0x21c mov r1, sl mov r2, sb add r3, sp, #4 bl func_ov37_02184054 add r0, r8, sl, lsl #4 add r2, r0, #0x2000 ldr r3, [r2, #0xf00] ldr r1, [r2, #0xef4] mov r0, sb str r1, [r6, #0x48] ldr ip, [r2, #0xef8] ldr r1, _0217cbec ; =data_027e0f94 str ip, [r6, #0x4c] ldr ip, [r2, #0xefc] add r2, sp, #0xc str ip, [r6, #0x50] str r3, [r6, #0x88] ldr r3, [r5] str r3, [r6, #0x60] ldr r3, [r5, #4] str r3, [r6, #0x64] ldr r3, [r5, #8] str r3, [r6, #0x68] bl func_01ff9bf8 ldr r0, [sp, #0xc] ldr r1, [sp, #0x14] bl func_01ffa0f4 ldrsh r1, [sp, #4] mov r0, r0, lsl #0x10 rsb r0, r1, r0, asr #16 mov r0, r0, lsl #0x10 cmp r4, r0, asr #16 mov r0, r0, asr #0x10 ldrgt r0, _0217cbdc ; =0x00007fff bgt _0217cba4 cmp r0, #0 rsblt r0, r0, #0 movlt r0, r0, lsl #0x10 movlt r0, r0, asr #0x10 _0217cba4: cmp r0, #0x4000 strlt fp, [r6, #0x12c] movge r0, #0 strge r0, [r6, #0x12c] b _0217cbc0 _0217cbb8: mov r0, #0 str r0, [r6, #0x12c] _0217cbc0: add r7, r7, #8 add sb, sb, #0x10 add sl, sl, #1 cmp sl, #4 blt _0217cadc add sp, sp, #0x4c ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov37_0217c924 _0217cbdc: .word 0x00007fff _0217cbe0: .word data_027e0d0c _0217cbe4: .word data_027e0fe4 _0217cbe8: .word data_ov37_02187dcc _0217cbec: .word data_027e0f94 .global func_ov37_0217cbf0 arm_func_start func_ov37_0217cbf0 func_ov37_0217cbf0: ; 0x0217cbf0 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov00_020c2974 ldrsh r2, [r4, #0x78] ldr r1, _0217cc40 ; =0xffff8001 sub r0, r2, r0 mov r0, r0, lsl #0x10 mov r2, r0, asr #0x10 cmp r1, r0, asr #16 movgt r2, r1, lsr #0x11 bgt _0217cc2c cmp r2, #0 rsblt r0, r2, #0 movlt r0, r0, lsl #0x10 movlt r2, r0, asr #0x10 _0217cc2c: ldr r0, _0217cc44 ; =0x00000e39 cmp r2, r0 movle r0, #1 movgt r0, #0 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_0217cbf0 _0217cc40: .word 0xffff8001 _0217cc44: .word 0x00000e39 .global func_ov37_0217cc48 arm_func_start func_ov37_0217cc48 func_ov37_0217cc48: ; 0x0217cc48 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov00_020c2974 ldrsh r2, [r4, #0x78] ldr r1, _0217cc94 ; =0xffff8001 sub r0, r2, r0 mov r0, r0, lsl #0x10 cmp r1, r0, asr #16 mov r0, r0, asr #0x10 movgt r0, r1, lsr #0x11 bgt _0217cc84 cmp r0, #0 rsblt r0, r0, #0 movlt r0, r0, lsl #0x10 movlt r0, r0, asr #0x10 _0217cc84: cmp r0, #0x6000 movle r0, #1 movgt r0, #0 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_0217cc48 _0217cc94: .word 0xffff8001 .global func_ov37_0217cc98 arm_func_start func_ov37_0217cc98 func_ov37_0217cc98: ; 0x0217cc98 stmdb sp!, {r3, lr} bl func_ov00_020c28ec cmp r0, #0x3800 movlt r0, #1 movge r0, #0 ldmia sp!, {r3, pc} arm_func_end func_ov37_0217cc98 .global func_ov37_0217ccb0 arm_func_start func_ov37_0217ccb0 func_ov37_0217ccb0: ; 0x0217ccb0 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov00_020c28ec cmp r0, #0x5000 ble _0217cd14 cmp r0, #0xb000 bge _0217cd14 mov r0, r4 bl func_ov00_020c2974 ldrsh r2, [r4, #0x78] ldr r1, _0217cd1c ; =0xffff8001 sub r0, r2, r0 mov r0, r0, lsl #0x10 mov r2, r0, asr #0x10 cmp r1, r0, asr #16 movgt r2, r1, lsr #0x11 bgt _0217cd04 cmp r2, #0 rsblt r0, r2, #0 movlt r0, r0, lsl #0x10 movlt r2, r0, asr #0x10 _0217cd04: ldr r0, _0217cd20 ; =0x00000e39 cmp r2, r0 movlt r0, #1 ldmltia sp!, {r4, pc} _0217cd14: mov r0, #0 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_0217ccb0 _0217cd1c: .word 0xffff8001 _0217cd20: .word 0x00000e39 .global func_ov37_0217cd24 arm_func_start func_ov37_0217cd24 func_ov37_0217cd24: ; 0x0217cd24 add r0, r0, #0x2000 ldr r0, [r0, #0xf78] cmp r0, #0x2d movge r0, #1 movlt r0, #0 bx lr arm_func_end func_ov37_0217cd24 .global func_ov37_0217cd3c arm_func_start func_ov37_0217cd3c func_ov37_0217cd3c: ; 0x0217cd3c stmdb sp!, {r4, lr} mov r4, r0 bl func_ov37_0217cf98 cmp r0, #0 ldmeqia sp!, {r4, pc} bl func_ov37_0217be60 cmp r0, #0 ldmneia sp!, {r4, pc} add r0, r4, #0x21c mov r1, #0 bl func_ov37_02183df8 add r2, r4, #0x2000 mov r1, r0 ldr r0, [r2, #0xf98] bl func_ov37_0218510c add r0, r4, #0x21c mov r1, #1 bl func_ov37_02183df8 add r2, r4, #0x2000 mov r1, r0 ldr r0, [r2, #0xf9c] bl func_ov37_0218510c mov r0, r4 bl func_ov37_0217cc98 cmp r0, #0 add r0, r4, #0x2000 ldr r1, [r0, #0xf78] beq _0217cdbc cmp r1, #0x2d addlt r1, r1, #1 strlt r1, [r0, #0xf78] ldmia sp!, {r4, pc} _0217cdbc: cmp r1, #0 subgt r1, r1, #1 strgt r1, [r0, #0xf78] ldmia sp!, {r4, pc} arm_func_end func_ov37_0217cd3c .global func_ov37_0217cdcc arm_func_start func_ov37_0217cdcc func_ov37_0217cdcc: ; 0x0217cdcc stmdb sp!, {r4, lr} add r1, r0, #0x2000 ldr r2, [r1, #0xfa0] cmp r2, #0 bne _0217ce98 mov r3, #0 mov r2, r3 _0217cde8: add r1, r0, r2 add r1, r1, #0x2000 ldrb r1, [r1, #0xe90] add r2, r2, #1 cmp r1, #0 addne r3, r3, #1 cmp r2, #0xa blt _0217cde8 cmp r3, #9 blt _0217ce54 ldr r1, _0217cea4 ; =data_027e0764 add r0, r0, #0x2000 ldr r3, [r1] ldmib r1, {r2, r4} umull lr, ip, r4, r3 mla ip, r4, r2, ip ldr r2, [r1, #0xc] ldr r4, [r1, #0x10] mla ip, r2, r3, ip ldr r2, [r1, #0x14] adds r3, r4, lr str r3, [r1] adc r2, r2, ip str r2, [r1, #4] mov r1, #0 str r1, [r0, #0xf7c] ldmia sp!, {r4, pc} _0217ce54: ldr r1, _0217cea4 ; =data_027e0764 add r0, r0, #0x2000 ldr r3, [r1] ldmib r1, {r2, ip} umull r4, lr, ip, r3 mla lr, ip, r2, lr ldr r2, [r1, #0xc] ldr ip, [r1, #0x10] mla lr, r2, r3, lr ldr r2, [r1, #0x14] adds r3, ip, r4 str r3, [r1] adc r2, r2, lr str r2, [r1, #4] mov r1, #0 str r1, [r0, #0xf7c] ldmia sp!, {r4, pc} _0217ce98: mov r0, #0 str r0, [r1, #0xf7c] ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_0217cdcc _0217cea4: .word data_027e0764 .global func_ov37_0217cea8 arm_func_start func_ov37_0217cea8 func_ov37_0217cea8: ; 0x0217cea8 ldr r1, [r0, #0x130] cmp r1, #7 cmpne r1, #8 cmpne r1, #9 bxeq lr add r0, r0, #0x2000 ldr r1, [r0, #0xf7c] cmp r1, #0 subgt r1, r1, #1 strgt r1, [r0, #0xf7c] bx lr arm_func_end func_ov37_0217cea8 .global func_ov37_0217ced4 arm_func_start func_ov37_0217ced4 func_ov37_0217ced4: ; 0x0217ced4 add r0, r0, #0x2000 ldr r0, [r0, #0xf7c] cmp r0, #0 moveq r0, #1 movne r0, #0 bx lr arm_func_end func_ov37_0217ced4 .global func_ov37_0217ceec arm_func_start func_ov37_0217ceec func_ov37_0217ceec: ; 0x0217ceec stmdb sp!, {r3, lr} cmp r2, #5 addls pc, pc, r2, lsl #2 ldmia sp!, {r3, pc} _0217cefc: ; jump table b _0217cf14 ; case 0 b _0217cf1c ; case 1 b _0217cf24 ; case 2 b _0217cf40 ; case 3 b _0217cf5c ; case 4 b _0217cf78 ; case 5 _0217cf14: bl func_ov37_0217f6d8 ldmia sp!, {r3, pc} _0217cf1c: bl func_ov37_0217f770 ldmia sp!, {r3, pc} _0217cf24: bl func_ov37_0217f288 ldr r0, _0217cf94 ; =data_027e0f64 mov r1, #0xe ldr r0, [r0] ldr r0, [r0, #4] bl func_ov00_02088000 ldmia sp!, {r3, pc} _0217cf40: bl func_ov37_0217f378 ldr r0, _0217cf94 ; =data_027e0f64 mov r1, #0xe ldr r0, [r0] ldr r0, [r0, #4] bl func_ov00_02088000 ldmia sp!, {r3, pc} _0217cf5c: bl func_ov37_0217f468 ldr r0, _0217cf94 ; =data_027e0f64 mov r1, #0xe ldr r0, [r0] ldr r0, [r0, #4] bl func_ov00_02088000 ldmia sp!, {r3, pc} _0217cf78: bl func_ov37_0217f4d4 ldr r0, _0217cf94 ; =data_027e0f64 mov r1, #0xe ldr r0, [r0] ldr r0, [r0, #4] bl func_ov00_02088000 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov37_0217ceec _0217cf94: .word data_027e0f64 .global func_ov37_0217cf98 arm_func_start func_ov37_0217cf98 func_ov37_0217cf98: ; 0x0217cf98 ldr r0, [r0, #0x130] sub r0, r0, #4 cmp r0, #6 movls r0, #1 movhi r0, #0 bx lr arm_func_end func_ov37_0217cf98 .global func_ov37_0217cfb0 arm_func_start func_ov37_0217cfb0 func_ov37_0217cfb0: ; 0x0217cfb0 stmdb sp!, {r3, r4, r5, r6, r7, lr} sub sp, sp, #8 mov r6, r0 add r0, r6, #0x2000 ldr r1, [r0, #0xf74] cmp r1, #0 subgt r1, r1, #1 strgt r1, [r0, #0xf74] add r0, r6, #0x2000 ldr r0, [r0, #0xfa0] cmp r0, #1 bne _0217d058 mov r0, r6 bl func_ov37_0217cf98 cmp r0, #0 beq _0217d058 ldr r1, _0217d5bc ; =data_027e0f94 ldr r0, _0217d5c0 ; =0x0000019a ldr r1, [r1, #4] cmp r1, r0 bgt _0217d058 mov r5, #0 mov r4, r5 _0217d00c: mov r1, r4 add r0, r6, #0x21c bl func_ov37_02183e18 cmp r0, #2 add r4, r4, #1 addeq r5, r5, #1 cmp r4, #4 blt _0217d00c cmp r5, #4 beq _0217d058 ldr r0, _0217d5c4 ; =data_027e0ffc ldr r1, _0217d5c8 ; =0x000002b6 add r2, r6, #0x48 mov r3, #0 bl func_ov00_020ceacc add r0, r6, #0x2000 ldr r1, [r0, #0xfa8] add r0, r6, #0x21c bl func_ov37_02183e24 _0217d058: bl func_ov37_0217be60 cmp r0, #0 addeq sp, sp, #8 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} add r0, r6, #0x2000 ldr r0, [r0, #0xf74] cmp r0, #0 addne sp, sp, #8 ldmneia sp!, {r3, r4, r5, r6, r7, pc} mov r0, r6 bl func_ov37_0217cf98 cmp r0, #0 addeq sp, sp, #8 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} add r2, r6, #0x2000 ldr r0, [r2, #0xfa0] cmp r0, #0 bne _0217d418 ldr r4, [r2, #0xf94] mvn r0, #0 cmp r4, r0 addeq sp, sp, #8 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} add r0, r6, #0xe90 add r3, r0, #0x2000 ldrb r0, [r3, r4] add r1, r6, #0xdf0 add r5, r1, #0x2000 sub r0, r0, #1 strb r0, [r3, r4] ldr r0, [r2, #0xf94] mov ip, #5 add r0, r6, r0 add r0, r0, #0x2000 ldrb r4, [r0, #0xe90] mov r3, #0 ldr r0, _0217d5cc ; =data_027e0e58 str ip, [r2, #0xf74] ldr r2, [r2, #0xf94] ldr r1, _0217d5d0 ; =0x00000222 str r3, [sp] str r3, [sp, #4] add r5, r5, r2, lsl #4 ldr r0, [r0] mov r2, r5 mov r3, #2 bl func_ov00_0207c1b0 mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _0217d5cc ; =data_027e0e58 ldr r1, _0217d5d4 ; =0x00000223 ldr r0, [r0] mov r2, r5 mov r3, #2 bl func_ov00_0207c1b0 add r0, r6, #0x2000 ldr r0, [r0, #0xf94] cmp r0, #9 addls pc, pc, r0, lsl #2 b _0217d298 _0217d14c: ; jump table b _0217d174 ; case 0 b _0217d174 ; case 1 b _0217d174 ; case 2 b _0217d174 ; case 3 b _0217d208 ; case 4 b _0217d208 ; case 5 b _0217d208 ; case 6 b _0217d174 ; case 7 b _0217d174 ; case 8 b _0217d208 ; case 9 _0217d174: mov r1, #0 cmp r4, #0 mov r3, #2 str r1, [sp] bne _0217d1c8 ldr r0, _0217d5cc ; =data_027e0e58 str r1, [sp, #4] ldr r0, [r0] ldr r1, _0217d5d8 ; =0x00001002 mov r2, r5 bl func_ov00_0207c1b0 mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _0217d5cc ; =data_027e0e58 ldr r1, _0217d5dc ; =0x00001003 ldr r0, [r0] mov r2, r5 mov r3, #2 bl func_ov00_0207c1b0 b _0217d298 _0217d1c8: ldr r0, _0217d5cc ; =data_027e0e58 str r1, [sp, #4] ldr r0, [r0] ldr r1, _0217d5e0 ; =0x00001007 mov r2, r5 bl func_ov00_0207c1b0 mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _0217d5cc ; =data_027e0e58 ldr r1, _0217d5e4 ; =0x00001008 ldr r0, [r0] mov r2, r5 mov r3, #2 bl func_ov00_0207c1b0 b _0217d298 _0217d208: mov r1, #0 cmp r4, #0 mov r3, #2 str r1, [sp] bne _0217d25c ldr r0, _0217d5cc ; =data_027e0e58 str r1, [sp, #4] ldr r0, [r0] ldr r1, _0217d5e8 ; =0x00001004 mov r2, r5 bl func_ov00_0207c1b0 mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _0217d5cc ; =data_027e0e58 ldr r1, _0217d5ec ; =0x00001005 ldr r0, [r0] mov r2, r5 mov r3, #2 bl func_ov00_0207c1b0 b _0217d298 _0217d25c: ldr r0, _0217d5cc ; =data_027e0e58 str r1, [sp, #4] ldr r0, [r0] ldr r1, _0217d5f0 ; =0x00001009 mov r2, r5 bl func_ov00_0207c1b0 mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _0217d5cc ; =data_027e0e58 ldr r1, _0217d5f4 ; =0x0000100a ldr r0, [r0] mov r2, r5 mov r3, #2 bl func_ov00_0207c1b0 _0217d298: cmp r4, #0 mov r3, #0 bne _0217d2b8 ldr r0, _0217d5c4 ; =data_027e0ffc ldr r1, _0217d5f8 ; =0x000002a5 mov r2, r5 bl func_ov00_020ceacc b _0217d2c8 _0217d2b8: ldr r0, _0217d5c4 ; =data_027e0ffc mov r2, r5 mov r1, #0x2a4 bl func_ov00_020ceacc _0217d2c8: add r0, r6, #0x2000 ldr r0, [r0, #0xf94] cmp r0, #9 addls pc, pc, r0, lsl #2 b _0217d3c8 _0217d2dc: ; jump table b _0217d304 ; case 0 b _0217d318 ; case 1 b _0217d32c ; case 2 b _0217d340 ; case 3 b _0217d354 ; case 4 b _0217d368 ; case 5 b _0217d37c ; case 6 b _0217d390 ; case 7 b _0217d3a4 ; case 8 b _0217d3b8 ; case 9 _0217d304: mov r2, r4 add r0, r6, #0x21c mov r1, #0 bl func_ov37_02183640 b _0217d3c8 _0217d318: mov r2, r4 add r0, r6, #0x21c mov r1, #1 bl func_ov37_02183640 b _0217d3c8 _0217d32c: mov r2, r4 add r0, r6, #0x21c mov r1, #2 bl func_ov37_02183640 b _0217d3c8 _0217d340: mov r2, r4 add r0, r6, #0x21c mov r1, #3 bl func_ov37_02183640 b _0217d3c8 _0217d354: mov r2, r4 add r0, r6, #0x21c mov r1, #4 bl func_ov37_02183640 b _0217d3c8 _0217d368: mov r2, r4 add r0, r6, #0x21c mov r1, #5 bl func_ov37_02183640 b _0217d3c8 _0217d37c: mov r2, r4 add r0, r6, #0x21c mov r1, #6 bl func_ov37_02183640 b _0217d3c8 _0217d390: mov r2, r4 add r0, r6, #0x21c mov r1, #7 bl func_ov37_02183640 b _0217d3c8 _0217d3a4: mov r2, r4 add r0, r6, #0x21c mov r1, #8 bl func_ov37_02183640 b _0217d3c8 _0217d3b8: mov r2, r4 add r0, r6, #0x21c mov r1, #9 bl func_ov37_02183640 _0217d3c8: mov r1, #0 mov r2, r1 _0217d3d0: add r0, r6, r2 add r0, r0, #0x2000 ldrb r0, [r0, #0xe90] cmp r0, #0 movne r1, #1 bne _0217d3f4 add r2, r2, #1 cmp r2, #0xa blt _0217d3d0 _0217d3f4: cmp r1, #0 bne _0217d404 mov r0, r6 bl func_ov37_0217c3f4 _0217d404: add r0, r6, #0x2000 mvn r1, #0 str r1, [r0, #0xf94] add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} _0217d418: cmp r0, #1 addne sp, sp, #8 ldmneia sp!, {r3, r4, r5, r6, r7, pc} ldr r1, [r2, #0xf94] mvn r0, #0 cmp r1, r0 addeq sp, sp, #8 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} add r0, r6, #0x21c bl func_ov37_02183e18 cmp r0, #2 bne _0217d45c add r0, r6, #0x2000 ldr r1, [r0, #0xf94] add r0, r6, #0x21c mov r2, #3 bl func_ov37_02183e0c _0217d45c: add r0, r6, #0x2000 mov r1, #5 str r1, [r0, #0xf74] ldr r2, [r0, #0xf94] add r0, r6, #0x2f4 mov r1, #0 add r0, r0, #0x2c00 add r4, r0, r2, lsl #4 str r1, [sp] str r1, [sp, #4] ldr r0, _0217d5cc ; =data_027e0e58 ldr r1, _0217d5d0 ; =0x00000222 ldr r0, [r0] mov r2, r4 mov r3, #2 bl func_ov00_0207c1b0 mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _0217d5cc ; =data_027e0e58 ldr r1, _0217d5d4 ; =0x00000223 ldr r0, [r0] mov r2, r4 mov r3, #2 bl func_ov00_0207c1b0 add r0, r6, #0x2000 ldr r1, [r0, #0xf94] add r0, r6, #0x21c mov r2, #3 bl func_ov37_02183e0c mov r5, #0 mov r7, r5 _0217d4dc: mov r1, r7 add r0, r6, #0x21c bl func_ov37_02183e18 cmp r0, #2 add r7, r7, #1 addeq r5, r5, #1 cmp r7, #4 blt _0217d4dc cmp r5, #3 bne _0217d51c ldr r0, _0217d5c4 ; =data_027e0ffc ldr r1, _0217d5fc ; =0x000002b2 mov r2, r4 mov r3, #0 bl func_ov00_020ceacc b _0217d5a8 _0217d51c: cmp r5, #2 bne _0217d53c ldr r0, _0217d5c4 ; =data_027e0ffc ldr r1, _0217d600 ; =0x000002b3 mov r2, r4 mov r3, #0 bl func_ov00_020ceacc b _0217d5a8 _0217d53c: cmp r5, #1 bne _0217d55c ldr r0, _0217d5c4 ; =data_027e0ffc mov r2, r4 mov r1, #0x2b4 mov r3, #0 bl func_ov00_020ceacc b _0217d5a8 _0217d55c: cmp r5, #0 bne _0217d5a8 ldr r0, _0217d5c4 ; =data_027e0ffc ldr r1, _0217d604 ; =0x000002b5 mov r2, r4 mov r3, #0 bl func_ov00_020ceacc add r2, r6, #0x2000 ldr r1, [r2, #0xfa8] mov r0, r6 add r3, r1, #1 mov r1, #0xb str r3, [r2, #0xfa8] bl func_ov37_0217c464 add r0, r6, #0x2000 mvn r1, #0 str r1, [r0, #0xf94] add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} _0217d5a8: add r0, r6, #0x2000 mvn r1, #0 str r1, [r0, #0xf94] add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 arm_func_end func_ov37_0217cfb0 _0217d5bc: .word data_027e0f94 _0217d5c0: .word 0x0000019a _0217d5c4: .word data_027e0ffc _0217d5c8: .word 0x000002b6 _0217d5cc: .word data_027e0e58 _0217d5d0: .word 0x00000222 _0217d5d4: .word 0x00000223 _0217d5d8: .word 0x00001002 _0217d5dc: .word 0x00001003 _0217d5e0: .word 0x00001007 _0217d5e4: .word 0x00001008 _0217d5e8: .word 0x00001004 _0217d5ec: .word 0x00001005 _0217d5f0: .word 0x00001009 _0217d5f4: .word 0x0000100a _0217d5f8: .word 0x000002a5 _0217d5fc: .word 0x000002b2 _0217d600: .word 0x000002b3 _0217d604: .word 0x000002b5 .global func_ov37_0217d608 arm_func_start func_ov37_0217d608 func_ov37_0217d608: ; 0x0217d608 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov00_020c313c cmp r0, #0 ldmeqia sp!, {r4, pc} bl func_ov37_0217be14 ldrb r1, [r0, #0x27] cmp r1, #0 ldrneb r0, [r0, #0x28] ldr r1, _0217d65c ; =data_ov37_02189160 cmpne r0, #0 movne r2, #1 moveq r2, #0 mov r0, r4 strb r2, [r1, #0x2d] bl func_ov00_020c2bf4 mov r0, r4 bl func_ov37_0217d700 add r0, r4, #0x21c bl func_ov00_020c5e20 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_0217d608 _0217d65c: .word data_ov37_02189160 .global func_ov37_0217d660 arm_func_start func_ov37_0217d660 func_ov37_0217d660: ; 0x0217d660 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov00_020cacf4 cmp r0, #0 movne r0, #1 ldmneia sp!, {r4, pc} ldr r0, [r4, #0x130] cmp r0, #1 movls r0, #1 movhi r0, #0 ldmia sp!, {r4, pc} arm_func_end func_ov37_0217d660 .global func_ov37_0217d68c arm_func_start func_ov37_0217d68c func_ov37_0217d68c: ; 0x0217d68c stmdb sp!, {r4, lr} mov r4, r0 bl func_ov00_020c313c cmp r0, #0 ldmeqia sp!, {r4, pc} ldr r1, [r4, #0x218] mvn r0, #0 cmp r1, r0 beq _0217d6c4 mov r0, r4 bl func_ov00_020cc980 cmp r0, #0 mvnne r0, #0 strne r0, [r4, #0x218] _0217d6c4: mov r0, r4 ldr r1, [r0] ldr r1, [r1, #0xb4] blx r1 cmp r0, #0 ldmeqia sp!, {r4, pc} mov r1, #0 mov r0, r4 str r1, [r4, #0x154] bl func_ov00_020c2bf4 mov r0, r4 bl func_ov37_0217d700 add r0, r4, #0x21c bl func_ov00_020c5e20 ldmia sp!, {r4, pc} arm_func_end func_ov37_0217d68c .global func_ov37_0217d700 arm_func_start func_ov37_0217d700 func_ov37_0217d700: ; 0x0217d700 stmdb sp!, {r4, r5, r6, r7, lr} sub sp, sp, #0xe4 sub sp, sp, #0x400 mov r4, r0 ldr r0, [r4, #0x130] cmp r0, #0xf addls pc, pc, r0, lsl #2 b _0217d78c _0217d720: ; jump table b _0217d78c ; case 0 b _0217d78c ; case 1 b _0217d78c ; case 2 b _0217d78c ; case 3 b _0217d760 ; case 4 b _0217d760 ; case 5 b _0217d760 ; case 6 b _0217d760 ; case 7 b _0217d760 ; case 8 b _0217d760 ; case 9 b _0217d760 ; case 10 b _0217d760 ; case 11 b _0217d760 ; case 12 b _0217d760 ; case 13 b _0217d78c ; case 14 b _0217d760 ; case 15 _0217d760: add r0, r4, #0x48 add r3, sp, #0x128 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, _0217e32c ; =data_027e0fc8 ldr r1, [sp, #0x12c] ldr r0, [r0] add r2, r1, #0x7000 mov r1, r3 str r2, [sp, #0x12c] bl func_ov00_020bb6d4 _0217d78c: mov r0, r4 bl func_ov37_0217cfb0 mov r0, r4 bl func_ov37_0217f668 mov r0, r4 bl func_ov37_0217cea8 ldr r0, [r4, #0x130] cmp r0, #8 beq _0217d7bc sub r0, r0, #5 cmp r0, #1 bhi _0217d7cc _0217d7bc: add r0, r4, #0x21c mov r1, #1 bl func_ov37_02183c7c b _0217d7d8 _0217d7cc: add r0, r4, #0x21c mov r1, #0 bl func_ov37_02183c7c _0217d7d8: mov r0, r4 bl func_ov37_0217cd3c ldr r0, [r4, #0x130] cmp r0, #0xe bne _0217d854 mov r5, #0 mov r0, #0x6000 mov r2, #0x3000 mov r1, #0x4800 str r0, [sp, #0x124] add r3, sp, #0x108 str r5, [sp, #0x114] str r5, [sp, #0x11c] add r0, r4, #0x14 str r2, [sp, #0x118] str r1, [sp, #0x120] ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r1, [sp, #0x110] mov r5, #4 sub r1, r1, #0xb800 str r1, [sp, #0x110] add r0, sp, #0x114 stmia sp, {r0, r5} sub r1, r5, #5 str r1, [sp, #8] ldr r0, _0217e330 ; =data_027e0ff8 mov r2, r3 ldr r0, [r0] add r1, r4, #8 bl func_ov05_021082e4 _0217d854: ldr r0, [r4, #0x130] cmp r0, #0x16 addls pc, pc, r0, lsl #2 b _0217f0e8 _0217d864: ; jump table b _0217d8c0 ; case 0 b _0217d8f4 ; case 1 b _0217dae0 ; case 2 b _0217dcb0 ; case 3 b _0217dcf4 ; case 4 b _0217de80 ; case 5 b _0217df5c ; case 6 b _0217e004 ; case 7 b _0217e0d8 ; case 8 b _0217e494 ; case 9 b _0217e538 ; case 10 b _0217e5d4 ; case 11 b _0217e690 ; case 12 b _0217e754 ; case 13 b _0217e8b0 ; case 14 b _0217e904 ; case 15 b _0217ea38 ; case 16 b _0217ec2c ; case 17 b _0217ec60 ; case 18 b _0217eca4 ; case 19 b _0217ee84 ; case 20 b _0217eeb8 ; case 21 b _0217eef0 ; case 22 _0217d8c0: mov r0, r4 mov r1, #0 bl func_ov00_020c1bfc cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r0, r4 mov r1, #1 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217d8f4: mov r0, r4 bl func_ov00_020cc928 cmp r0, #0 mov r0, r4 bne _0217dab4 bl func_ov00_020cc8dc cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} add r0, sp, #0x400 add r0, r0, #0x34 bl func_ov00_0209a4f4 mvn r6, #0 mov r0, #2 mov r2, #0x64 mov r1, #4 strb r0, [sp, #0x43f] str r6, [sp, #0x438] add r0, r4, #0x48 ldr r3, _0217e334 ; =data_027e0f64 add r5, sp, #0xfc strb r2, [sp, #0x43d] strb r1, [sp, #0x43e] ldmia r0, {r0, r1, r2} stmia r5, {r0, r1, r2} ldr r5, [sp, #0xfc] ldr r2, [sp, #0x100] ldr r1, [sp, #0x104] ldr r0, [r3] str r1, [sp, #0x45c] str r5, [sp, #0x454] str r2, [sp, #0x458] ldr r0, [r0, #4] add r1, sp, #0x3cc bl func_ov00_02087d34 mov lr, #0 mov ip, #0x800 add r1, ip, #0x3b8 mov r3, #0x3000 mov r2, #0x14000 mov r0, #0x7d0 ldrb r5, [sp, #0x42c] ldrb r6, [sp, #0x42d] ldr r7, [sp, #0x3cc] strb r5, [sp, #0x4c0] ldrb r5, [sp, #0x42e] strb r6, [sp, #0x4c1] ldrb r6, [sp, #0x42f] strb r5, [sp, #0x4c2] ldrb r5, [sp, #0x430] strb r6, [sp, #0x4c3] ldr r6, [sp, #0x3d0] strb r5, [sp, #0x4c4] ldr r5, [sp, #0x3d4] str r6, [sp, #0x464] ldr r6, [sp, #0x3f4] str r5, [sp, #0x468] ldr r5, [sp, #0x3f8] str r6, [sp, #0x488] ldr r6, [sp, #0x3fc] str r5, [sp, #0x48c] ldr r5, [sp, #0x400] str r6, [sp, #0x490] ldr r6, [sp, #0x404] str r5, [sp, #0x494] ldr r5, [sp, #0x408] str r6, [sp, #0x498] ldr r6, [sp, #0x40c] str r5, [sp, #0x49c] ldr r5, [sp, #0x410] str r6, [sp, #0x4a0] ldr r6, [sp, #0x414] str r5, [sp, #0x4a4] ldr r5, [sp, #0x418] str r6, [sp, #0x4a8] ldr r6, [sp, #0x41c] str r5, [sp, #0x4ac] ldr r5, [sp, #0x420] str r6, [sp, #0x4b0] ldr r6, [sp, #0x424] str r5, [sp, #0x4b4] ldr r5, [sp, #0x428] str lr, [sp, #0x3f0] str r7, [sp, #0x460] str r6, [sp, #0x4b8] str ip, [sp, #0x3ec] str r3, [sp, #0x3e8] str r2, [sp, #0x3e4] str r1, [sp, #0x3dc] str lr, [sp, #0x3e0] str r0, [sp, #0x3d8] str r0, [sp, #0x46c] str r1, [sp, #0x470] str lr, [sp, #0x474] str r2, [sp, #0x478] str r3, [sp, #0x47c] str ip, [sp, #0x480] str lr, [sp, #0x484] str r5, [sp, #0x4bc] add r1, sp, #0x400 mov r2, #1 add r1, r1, #0x34 mov r0, r4 strb r2, [sp, #0x448] bl func_ov00_020cc908 add r0, sp, #0x400 add r0, r0, #0x34 bl func_ov00_0209a508 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217dab4: bl func_ov00_020cc940 cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r0, r4 mov r1, #2 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217dae0: ldr r0, [r4, #0x22c] mov r1, #0xc6000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _0217db00 mov r0, r4 bl func_ov37_0217fcec _0217db00: mov r0, r4 bl func_ov37_0217fcfc ldr r1, [r4, #0x138] cmp r1, #0x1e ble _0217dc40 cmp r1, #0xfa bge _0217dc40 add r3, sp, #0xf0 add r0, r4, #0x48 sub r5, r1, #0x1e ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} add r0, r5, r5, lsl #1 mov r1, r0, lsl #0xc ldr r2, _0217e338 ; =0x094f2095 mov r0, r1, lsr #0x1f smull r1, r6, r2, r1 ldr r3, _0217e334 ; =data_027e0f64 add r6, r0, r6, asr #3 ldr r1, [sp, #0xf4] ldr r0, [r3] add r1, r1, r6 str r1, [sp, #0xf4] ldr r0, [r0, #4] add r1, sp, #0x364 bl func_ov00_02087d34 mov r1, #0 mov r0, r4 str r1, [sp, #0x388] bl func_ov37_0217fd14 mov r3, r5, lsl #0xb ldr r1, _0217e338 ; =0x094f2095 mov r2, r3, lsr #0x1f smull r3, r6, r1, r3 add r6, r2, r6, asr #3 add r2, r6, #0x800 add r0, r2, r0 str r0, [sp, #0x384] mov r0, #0x3000 rsb r0, r0, #0 mul r2, r5, r0 smull r0, r3, r1, r2 mov r0, r2, lsr #0x1f add r3, r0, r3, asr #3 add r0, r3, #0x3000 str r0, [sp, #0x380] mov r0, #0x14000 str r0, [sp, #0x37c] ldr r0, _0217e33c ; =0xffffec78 mov r2, #0x7d0 mul r3, r5, r0 str r2, [sp, #0x370] smull r2, r6, r1, r3 mov r2, r3, lsr #0x1f add r6, r2, r6, asr #3 add r2, r6, #0x3b8 add r2, r2, #0x800 str r2, [sp, #0x374] rsb r2, r0, #0x7d0 mul r3, r5, r2 smull r2, r5, r1, r3 mov r1, r3, lsr #0x1f add r5, r1, r5, asr #3 ldr r2, [sp, #0xf0] ldr r1, [sp, #0xf4] str r2, [sp, #0x18] ldr r2, [sp, #0xf8] str r1, [sp, #0x1c] str r2, [sp, #0x20] str r5, [sp, #0x378] mov r0, r0, asr #0xd mov r1, #0 stmia sp, {r0, r1} ldr r0, _0217e334 ; =data_027e0f64 str r1, [sp, #8] ldr r0, [r0] add r2, sp, #0x18 ldr r0, [r0, #4] add r3, sp, #0x364 bl func_ov00_020888e8 _0217dc40: ldr r0, [r4, #0x22c] mov r1, #0x96000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _0217dc68 ldr r0, _0217e340 ; =data_027e103c ldr r1, _0217e344 ; =0x00150007 ldr r0, [r0] bl func_ov00_020cfc70 _0217dc68: ldr r0, [r4, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} ldr r0, [r4, #0x138] cmp r0, #0xfa addlt sp, sp, #0xe4 addlt sp, sp, #0x400 ldmltia sp!, {r4, r5, r6, r7, pc} mov r0, r4 mov r1, #3 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217dcb0: mov r0, r4 bl func_ov00_020cc980 cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mvn r1, #0 ldr r0, _0217e32c ; =data_027e0fc8 str r1, [r4, #0x218] ldr r0, [r0] bl func_ov00_020bd0a8 mov r0, r4 mov r1, #4 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217dcf4: mov r0, r4 bl func_ov37_0217c3b8 mov r0, r4 bl func_ov37_0217cd24 cmp r0, #0 beq _0217dd38 ldr r0, [r4, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 beq _0217dd38 mov r0, r4 mov r1, #9 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217dd38: mov r0, r4 bl func_ov37_0217cbf0 cmp r0, #0 mov r0, r4 beq _0217de48 bl func_ov37_0217ced4 cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} bl func_ov37_0217bdb0 cmp r0, #0 addne sp, sp, #0xe4 addne sp, sp, #0x400 ldmneia sp!, {r4, r5, r6, r7, pc} mov r0, r4 bl func_ov37_0217ccb0 cmp r0, #0 beq _0217de10 ldr r2, _0217e348 ; =data_027e0764 mov r1, #0 ldr r3, [r2] ldmib r2, {r0, r5} umull r7, r6, r5, r3 mla r6, r5, r0, r6 ldr r0, [r2, #0xc] ldr r5, [r2, #0x10] mla r6, r0, r3, r6 ldr r0, [r2, #0x14] adds r7, r5, r7 adc r6, r0, r6 mov r0, #0x64 umull r3, r5, r6, r0 mla r5, r6, r1, r5 mla r5, r1, r0, r5 str r7, [r2] str r6, [r2, #4] cmp r5, #0x46 mov r0, r4 bge _0217ddf4 bl func_ov37_0217cdcc mov r0, r4 mov r1, #7 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217ddf4: bl func_ov37_0217cdcc mov r0, r4 mov r1, #8 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217de10: mov r0, r4 bl func_ov37_0217cc98 cmp r0, #0 addne sp, sp, #0xe4 addne sp, sp, #0x400 ldmneia sp!, {r4, r5, r6, r7, pc} mov r0, r4 bl func_ov37_0217cdcc mov r0, r4 mov r1, #8 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217de48: bl func_ov37_0217cc48 cmp r0, #0 mov r0, r4 beq _0217de6c mov r1, #5 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217de6c: mov r1, #0xa bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217de80: add r0, r4, #0x21c bl func_ov37_021835c0 cmp r0, #0 beq _0217deb0 add r0, r4, #0x2000 ldr r0, [r0, #0xfa0] mov r1, #0xb6 cmp r0, #1 moveq r1, #0x16c mov r0, r4 bl func_ov37_0217c3d0 b _0217deb8 _0217deb0: mov r0, r4 bl func_ov37_0217c3b8 _0217deb8: add r0, r4, #0x21c bl func_ov37_0218360c ldr r1, [r4, #0x22c] mov r5, r0 add r0, r1, #0xc bl func_0202e58c cmp r0, #0 cmpeq r5, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r0, r4 bl func_ov37_0217cd24 cmp r0, #0 mov r0, r4 beq _0217df0c mov r1, #9 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217df0c: bl func_ov37_0217cbf0 cmp r0, #0 mov r0, r4 beq _0217df30 mov r1, #4 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217df30: bl func_ov37_0217cc48 cmp r0, #0 addne sp, sp, #0xe4 addne sp, sp, #0x400 ldmneia sp!, {r4, r5, r6, r7, pc} mov r0, r4 mov r1, #4 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217df5c: add r0, r4, #0x21c bl func_ov37_021835c0 cmp r0, #0 beq _0217df7c ldr r1, _0217e34c ; =0x00000222 mov r0, r4 bl func_ov37_0217c3d0 b _0217df84 _0217df7c: mov r0, r4 bl func_ov37_0217c3b8 _0217df84: ldr r0, [r4, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 bne _0217dfb0 add r0, r4, #0x21c bl func_ov37_0218360c cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} _0217dfb0: mov r0, r4 bl func_ov37_0217cbf0 cmp r0, #0 beq _0217dfd8 mov r0, r4 mov r1, #4 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217dfd8: ldr r0, [r4, #0x138] cmp r0, #0x96 addle sp, sp, #0xe4 addle sp, sp, #0x400 ldmleia sp!, {r4, r5, r6, r7, pc} mov r0, r4 mov r1, #0xa bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217e004: ldr r0, [r4, #0x230] cmp r0, #3 bne _0217e06c ldr r0, [r4, #0x22c] ldr r0, [r0, #0x14] cmp r0, #0x21000 bge _0217e030 ldr r1, _0217e34c ; =0x00000222 mov r0, r4 bl func_ov37_0217c3d0 b _0217e038 _0217e030: mov r0, r4 bl func_ov37_0217c3b8 _0217e038: ldr r0, [r4, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r0, r4 mov r1, #4 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217e06c: cmp r0, #4 addne sp, sp, #0xe4 addne sp, sp, #0x400 ldmneia sp!, {r4, r5, r6, r7, pc} ldr r0, [r4, #0x22c] ldr r0, [r0, #0x14] cmp r0, #0x21000 bge _0217e09c ldr r1, _0217e34c ; =0x00000222 mov r0, r4 bl func_ov37_0217c3d0 b _0217e0a4 _0217e09c: mov r0, r4 bl func_ov37_0217c3b8 _0217e0a4: ldr r0, [r4, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r0, r4 mov r1, #4 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217e0d8: mov r0, r4 bl func_ov37_0217c3b8 ldr r0, [r4, #0x230] cmp r0, #7 bne _0217e17c ldr r0, [r4, #0x22c] mov r1, #0x1000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _0217e134 add r0, r4, #0x21c mov r1, #1 bl func_ov37_021841c4 add r2, sp, #0xe4 add r0, r4, #0x21c mov r1, #2 bl func_ov37_021841f4 ldr r0, _0217e350 ; =data_027e0ffc add r2, sp, #0xe4 mov r1, #0x2b0 mov r3, #0 bl func_ov00_020ceacc _0217e134: ldr r0, [r4, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r0, #0 str r0, [r4, #0x138] add r0, r4, #0x21c mov r1, #8 bl func_ov00_020c5d74 add sp, sp, #0xe4 ldr r0, [r4, #0x22c] mov r1, #0x1000 str r1, [r0, #0x10] add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217e17c: cmp r0, #8 bne _0217e450 ldr r0, [r4, #0x138] mvn r5, #0 cmp r0, #0x32 bgt _0217e1b4 bge _0217e1d8 cmp r0, #0xa bgt _0217e1a8 moveq r5, #0 b _0217e1e4 _0217e1a8: cmp r0, #0x1e moveq r5, #1 b _0217e1e4 _0217e1b4: cmp r0, #0x5a bgt _0217e1cc bge _0217e1e0 cmp r0, #0x46 moveq r5, #3 b _0217e1e4 _0217e1cc: cmp r0, #0x6e moveq r5, #5 b _0217e1e4 _0217e1d8: mov r5, #2 b _0217e1e4 _0217e1e0: mov r5, #4 _0217e1e4: mvn r0, #0 cmp r5, r0 beq _0217e3fc mov r0, r4 bl func_ov00_020c28ec mov r6, r0 cmp r6, #0x3800 add r2, sp, #0xd8 mov r1, r5 add r0, r4, #0x21c movlt r6, #0x3800 bl func_ov37_021841f4 add r0, r4, #0x21c bl func_ov37_02183c88 mov r7, r0 cmp r5, #5 addls pc, pc, r5, lsl #2 b _0217e290 _0217e22c: ; jump table b _0217e244 ; case 0 b _0217e258 ; case 1 b _0217e290 ; case 2 b _0217e290 ; case 3 b _0217e26c ; case 4 b _0217e280 ; case 5 _0217e244: add r0, r7, #0x39 add r0, r0, #0xe00 mov r0, r0, lsl #0x10 mov r7, r0, asr #0x10 b _0217e290 _0217e258: add r0, r7, #0x31c add r0, r0, #0x400 mov r0, r0, lsl #0x10 mov r7, r0, asr #0x10 b _0217e290 _0217e26c: sub r0, r7, #0x31c sub r0, r0, #0x400 mov r0, r0, lsl #0x10 mov r7, r0, asr #0x10 b _0217e290 _0217e280: sub r0, r7, #0x39 sub r0, r0, #0xe00 mov r0, r0, lsl #0x10 mov r7, r0, asr #0x10 _0217e290: ldr r0, _0217e354 ; =data_027e0f94 ldr lr, _0217e358 ; =data_027e0fa0 add r3, sp, #0xcc ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} add ip, sp, #0xc0 ldmia lr, {r0, r1, r2} stmia ip, {r0, r1, r2} mov r1, ip mov r2, r3 mov r0, #0x1e000 bl func_01ff9e64 add r1, sp, #0xcc mov r0, r4 bl func_ov00_020c2938 sub r1, r7, r0 mov r1, r1, lsl #0x10 ldr r2, _0217e35c ; =0xffff8001 mov r3, r1, asr #0x10 cmp r2, r1, asr #16 movgt r3, r2, lsr #0x11 bgt _0217e2f8 cmp r3, #0 rsblt r1, r3, #0 movlt r1, r1, lsl #0x10 movlt r3, r1, asr #0x10 _0217e2f8: ldr r1, _0217e360 ; =0x00000e39 cmp r3, r1 ble _0217e380 sub r0, r0, r7 mov r0, r0, lsl #0x10 mov r0, r0, asr #0x10 cmp r0, #0 ble _0217e370 add r0, r7, #0x31c add r0, r0, #0x400 mov r0, r0, lsl #0x10 mov r0, r0, asr #0x10 b _0217e380 .align 2, 0 arm_func_end func_ov37_0217d700 _0217e32c: .word data_027e0fc8 _0217e330: .word data_027e0ff8 _0217e334: .word data_027e0f64 _0217e338: .word 0x094f2095 _0217e33c: .word 0xffffec78 _0217e340: .word data_027e103c _0217e344: .word 0x00150007 _0217e348: .word data_027e0764 _0217e34c: .word 0x00000222 _0217e350: .word data_027e0ffc _0217e354: .word data_027e0f94 _0217e358: .word data_027e0fa0 _0217e35c: .word 0xffff8001 _0217e360: .word 0x00000e39 _0217e364: .word 0xfffff8e4 _0217e368: .word data_02050f54 _0217e36c: .word data_ov37_02189160 _0217e370: ldr r0, _0217e364 ; =0xfffff8e4 add r0, r7, r0 mov r0, r0, lsl #0x10 mov r0, r0, asr #0x10 _0217e380: mov r0, r0, lsl #0x10 mov r0, r0, lsr #0x10 mov r0, r0, asr #0x4 mov r2, r0, lsl #0x1 add r0, r2, #1 ldr r1, _0217e368 ; =data_02050f54 mov r2, r2, lsl #0x1 ldrsh lr, [r1, r2] mov r0, r0, lsl #0x1 ldrsh r7, [r1, r0] mov ip, #0 add r1, sp, #0xb4 add r3, sp, #0xcc mov r0, r6 add r2, r4, #0x48 str lr, [sp, #0xb4] str ip, [sp, #0xb8] str r7, [sp, #0xbc] bl func_01ff9e64 ldr r0, _0217e354 ; =data_027e0f94 add r1, sp, #0xd8 ldr r6, [r0, #4] add r2, sp, #0xcc mov r0, r4 mov r3, #0 str r6, [sp, #0xd0] bl func_ov37_0217fbd8 mov r1, r5 add r0, r4, #0x21c mov r2, #0 bl func_ov37_02184134 _0217e3fc: ldr r0, [r4, #0x138] cmp r0, #0x6e addle sp, sp, #0xe4 addle sp, sp, #0x400 ldmleia sp!, {r4, r5, r6, r7, pc} ldr r0, [r4, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} add r0, r4, #0x21c mov r1, #9 bl func_ov00_020c5d74 add sp, sp, #0xe4 ldr r0, [r4, #0x22c] mov r1, #0x1000 str r1, [r0, #0x10] add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217e450: cmp r0, #9 addne sp, sp, #0xe4 addne sp, sp, #0x400 ldmneia sp!, {r4, r5, r6, r7, pc} ldr r0, [r4, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r0, r4 mov r1, #4 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217e494: mov r0, r4 bl func_ov37_0217c3b8 ldr r0, [r4, #0x230] cmp r0, #0xa bne _0217e4e8 ldr r0, [r4, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r0, r4 add r2, r4, #0x2000 mov r3, #0 mov r1, #4 str r3, [r2, #0xf78] bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217e4e8: cmp r0, #0xb addne sp, sp, #0xe4 addne sp, sp, #0x400 ldmneia sp!, {r4, r5, r6, r7, pc} ldr r0, [r4, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r0, r4 add r2, r4, #0x2000 mov r3, #0 mov r1, #4 str r3, [r2, #0xf78] bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217e538: ldr r0, [r4, #0x230] cmp r0, #6 addne sp, sp, #0xe4 addne sp, sp, #0x400 ldmneia sp!, {r4, r5, r6, r7, pc} ldr r0, [r4, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} add r0, r4, #0x21c mov r1, #6 bl func_ov00_020c5d74 ldr r1, [r4, #0x22c] mov r2, #0x1000 mov r0, r4 str r2, [r1, #0x10] bl func_ov37_0217cbf0 cmp r0, #0 beq _0217e5a8 mov r0, r4 mov r1, #4 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217e5a8: ldr r0, [r4, #0x138] cmp r0, #0x96 addle sp, sp, #0xe4 addle sp, sp, #0x400 ldmleia sp!, {r4, r5, r6, r7, pc} mov r0, r4 mov r1, #6 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217e5d4: ldr r0, [r4, #0x230] cmp r0, #7 bne _0217e620 ldr r0, [r4, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} add r0, r4, #0x21c mov r1, #9 bl func_ov00_020c5d74 add sp, sp, #0xe4 ldr r0, [r4, #0x22c] mov r1, #0x1000 str r1, [r0, #0x10] add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217e620: cmp r0, #8 bne _0217e64c add r0, r4, #0x21c mov r1, #9 bl func_ov00_020c5d74 add sp, sp, #0xe4 ldr r0, [r4, #0x22c] mov r1, #0x1000 str r1, [r0, #0x10] add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217e64c: ldr r0, [r4, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 bne _0217e678 add r0, r4, #0x21c bl func_ov37_0218360c cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} _0217e678: mov r0, r4 mov r1, #0xc bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217e690: ldr r0, [r4, #0x22c] ldr r0, [r0, #0x14] cmp r0, #0x46000 ble _0217e720 cmp r0, #0x64000 bge _0217e720 ldr r5, [r4, #0x4c] ldr r3, [r4, #0x50] ldr r2, [r4, #0x48] mov r1, #0x3800 mov r0, r4 str r2, [sp, #0xa4] str r5, [sp, #0xa8] str r3, [sp, #0xac] str r1, [sp, #0xb0] bl func_ov00_020c2974 mov r0, r0, lsl #0x10 mov r0, r0, lsr #0x10 mov r0, r0, asr #0x4 mov r2, r0, lsl #0x1 add r0, r2, #1 mov r3, #0 ldr r1, _0217e368 ; =data_02050f54 mov r2, r2, lsl #0x1 ldrsh r6, [r1, r2] mov r0, r0, lsl #0x1 ldrsh r5, [r1, r0] add r1, sp, #0xa4 add r2, sp, #0x98 str r5, [sp, #0xa0] mov r0, r4 str r6, [sp, #0x98] str r3, [sp, #0x9c] mov r5, #2 str r5, [sp] bl func_ov00_020c1ef8 _0217e720: ldr r0, [r4, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r0, r4 mov r1, #0xd bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217e754: ldr r0, _0217e36c ; =data_ov37_02189160 ldrb r0, [r0, #0x2c] cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r3, #0 mov r0, #0xff add r2, sp, #0x7c str r3, [sp, #0x7c] strb r0, [sp, #0x80] strh r3, [sp, #0x90] strh r3, [sp, #0x92] mov r1, r3 _0217e78c: add r0, r2, r3, lsl #1 add r3, r3, #1 strh r1, [r0, #0x18] cmp r3, #2 blo _0217e78c ldr r0, _0217f0f4 ; =data_027e0e60 add r2, sp, #0x7c ldr r0, [r0] mov r1, #3 bl func_ov00_02083908 cmp r0, #0 beq _0217e7ec ldr r0, _0217f0f4 ; =data_027e0e60 mov r1, #3 ldr r0, [r0] mov r2, #0 bl func_ov00_02083948 ldr r0, _0217e334 ; =data_027e0f64 mov r2, #0 ldr r0, [r0] add r1, sp, #0x7c ldr r0, [r0, #4] mov r3, r2 bl func_ov00_02087400 _0217e7ec: add r1, r4, #0x2000 mov r2, #0 strb r2, [r1, #0xfa4] add r0, r4, #0x21c strb r2, [r1, #0xfa5] bl func_ov37_0218390c mov r0, r4 bl func_ov37_0217fab8 add r0, r4, #0x21c mvn r1, #0 bl func_ov37_02183e24 ldr r0, [r4, #0x14] mov r3, #0 str r0, [r4, #0x48] ldr r0, [r4, #0x18] ldr r5, _0217e32c ; =data_027e0fc8 str r0, [r4, #0x4c] ldr r0, [r4, #0x1c] add r1, sp, #0x70 str r0, [r4, #0x50] ldr r0, [r4, #0x48] sub r2, r3, #0x8000 add r0, r0, #0x33 add r0, r0, #0x300 str r0, [r4, #0x48] ldr r0, [r4, #0x50] sub r0, r0, #0x8000 str r0, [r4, #0x50] ldrsh r0, [r4, #0x12] strh r0, [r4, #0x78] ldr r0, [r4, #0x14] str r0, [sp, #0x70] ldr r0, [r4, #0x18] str r0, [sp, #0x74] ldr r0, [r4, #0x1c] add r0, r0, #0x5000 str r0, [sp, #0x78] str r3, [sp] str r3, [sp, #4] ldr r0, [r5] ldr r5, [r0] ldr r5, [r5, #0x34] blx r5 mov r0, r4 mov r1, #0xe bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217e8b0: add r0, r4, #0x2000 ldrb r1, [r0, #0xfa4] cmp r1, #0 beq _0217e8d8 mov r0, r4 mov r1, #0xf bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217e8d8: ldrb r0, [r0, #0xfa5] cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r0, r4 mov r1, #0x13 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217e904: ldr r0, _0217e36c ; =data_ov37_02189160 ldrb r0, [r0, #0x2c] cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r3, #0 mov r0, #0xff add r2, sp, #0x54 str r3, [sp, #0x54] strb r0, [sp, #0x58] strh r3, [sp, #0x68] strh r3, [sp, #0x6a] mov r1, r3 _0217e93c: add r0, r2, r3, lsl #1 add r3, r3, #1 strh r1, [r0, #0x18] cmp r3, #2 blo _0217e93c ldr r0, _0217f0f4 ; =data_027e0e60 add r2, sp, #0x54 ldr r0, [r0] mov r1, #1 bl func_ov00_02083908 cmp r0, #0 beq _0217e99c ldr r0, _0217f0f4 ; =data_027e0e60 mov r1, #1 ldr r0, [r0] mov r2, #0 bl func_ov00_02083948 ldr r0, _0217e334 ; =data_027e0f64 mov r2, #0 ldr r0, [r0] add r1, sp, #0x54 ldr r0, [r0, #4] mov r3, r2 bl func_ov00_02087400 _0217e99c: mov r0, r4 bl func_ov37_0217fbac ldr r1, [r4, #0x14] add r0, r4, #0x21c str r1, [r4, #0x48] ldr r1, [r4, #0x18] str r1, [r4, #0x4c] ldr r1, [r4, #0x1c] str r1, [r4, #0x50] ldrsh r1, [r4, #0x12] strh r1, [r4, #0x78] bl func_ov37_0218391c add r0, r4, #0x2000 ldr r1, [r0, #0xfa8] add r0, r4, #0x21c bl func_ov37_02183e24 ldr r0, [r4, #0x48] mov r3, #0 str r0, [sp, #0x48] ldr r1, [r4, #0x4c] ldr r0, _0217e32c ; =data_027e0fc8 str r1, [sp, #0x4c] ldr r2, [r4, #0x50] add r1, sp, #0x48 add r2, r2, #0x5000 str r2, [sp, #0x50] str r3, [sp] str r3, [sp, #4] ldr r0, [r0] sub r2, r3, #0x8000 ldr r5, [r0] ldr r5, [r5, #0x34] blx r5 mov r0, r4 mov r1, #0x10 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217ea38: mov r0, r4 bl func_ov00_020cc928 cmp r0, #0 mov r0, r4 bne _0217ec00 bl func_ov00_020cc8dc cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} add r0, sp, #0x2b4 bl func_ov00_0209a4f4 mov r0, #2 mvn r2, #0 mov r1, #0x64 strb r1, [sp, #0x2bd] str r2, [sp, #0x2b8] strb r0, [sp, #0x2be] strb r0, [sp, #0x2bf] ldr r0, [r4, #0x48] add r1, r4, #0x48 str r0, [sp, #0x2d4] ldr r0, [r1, #4] ldr r3, _0217e334 ; =data_027e0f64 str r0, [sp, #0x2d8] ldr r0, [r1, #8] add r5, sp, #0x3c str r0, [sp, #0x2dc] ldmia r1, {r0, r1, r2} stmia r5, {r0, r1, r2} ldr r5, [sp, #0x3c] ldr r2, [sp, #0x40] ldr r1, [sp, #0x44] ldr r0, [r3] str r1, [sp, #0x2dc] str r5, [sp, #0x2d4] str r2, [sp, #0x2d8] ldr r0, [r0, #4] add r1, sp, #0x24c bl func_ov00_02087d34 mov lr, #0 mov ip, #0x800 add r1, ip, #0x3b8 mov r3, #0x3000 mov r2, #0x14000 mov r0, #0x7d0 ldrb r5, [sp, #0x2ac] ldr r6, [sp, #0x24c] str lr, [sp, #0x270] str r6, [sp, #0x2e0] ldr r6, [sp, #0x250] strb r5, [sp, #0x340] ldr r5, [sp, #0x254] str r6, [sp, #0x2e4] ldr r6, [sp, #0x274] str r5, [sp, #0x2e8] ldr r5, [sp, #0x278] str r6, [sp, #0x308] ldr r6, [sp, #0x27c] str r5, [sp, #0x30c] ldr r5, [sp, #0x280] str r6, [sp, #0x310] ldr r6, [sp, #0x284] str r5, [sp, #0x314] ldr r5, [sp, #0x288] str r6, [sp, #0x318] ldr r6, [sp, #0x28c] str r5, [sp, #0x31c] ldr r5, [sp, #0x290] str r6, [sp, #0x320] ldr r6, [sp, #0x294] str r5, [sp, #0x324] ldr r5, [sp, #0x298] str r6, [sp, #0x328] ldr r6, [sp, #0x29c] str r5, [sp, #0x32c] ldr r5, [sp, #0x2a0] str r6, [sp, #0x330] ldr r6, [sp, #0x2a4] str r5, [sp, #0x334] ldr r5, [sp, #0x2a8] str r6, [sp, #0x338] str ip, [sp, #0x26c] str r3, [sp, #0x268] str r2, [sp, #0x264] str r1, [sp, #0x25c] str lr, [sp, #0x260] str r0, [sp, #0x258] str r0, [sp, #0x2ec] str r1, [sp, #0x2f0] str lr, [sp, #0x2f4] str r2, [sp, #0x2f8] str r3, [sp, #0x2fc] str ip, [sp, #0x300] str lr, [sp, #0x304] str r5, [sp, #0x33c] ldrb r7, [sp, #0x2ad] ldrb r6, [sp, #0x2ae] ldrb r5, [sp, #0x2af] ldrb r3, [sp, #0x2b0] mov r2, #1 add r1, sp, #0x2b4 mov r0, r4 strb r7, [sp, #0x341] strb r6, [sp, #0x342] strb r5, [sp, #0x343] strb r3, [sp, #0x344] strb r2, [sp, #0x2c8] bl func_ov00_020cc908 add r0, sp, #0x2b4 bl func_ov00_0209a508 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217ec00: bl func_ov00_020cc940 cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r0, r4 mov r1, #0x11 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217ec2c: ldr r0, [r4, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r0, r4 mov r1, #0x12 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217ec60: mov r0, r4 bl func_ov00_020cc980 cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mvn r1, #0 ldr r0, _0217e32c ; =data_027e0fc8 str r1, [r4, #0x218] ldr r0, [r0] bl func_ov00_020bd0a8 mov r0, r4 mov r1, #4 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217eca4: mov r0, r4 bl func_ov00_020cc928 cmp r0, #0 mov r0, r4 bne _0217ee58 bl func_ov00_020cc8dc cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} add r0, sp, #0x19c bl func_ov00_0209a4f4 mov r0, #2 mvn r2, #0 mov r1, #0x64 strb r0, [sp, #0x1a6] strb r0, [sp, #0x1a7] strb r0, [sp, #0x1a8] strb r0, [sp, #0x1a9] add r0, r4, #0x14 ldr r3, _0217e334 ; =data_027e0f64 add r5, sp, #0x30 str r2, [sp, #0x1a0] strb r1, [sp, #0x1a5] ldmia r0, {r0, r1, r2} stmia r5, {r0, r1, r2} ldr r5, [sp, #0x30] ldr r2, [sp, #0x34] ldr r1, [sp, #0x38] ldr r0, [r3] str r1, [sp, #0x1c4] str r5, [sp, #0x1bc] str r2, [sp, #0x1c0] ldr r0, [r0, #4] add r1, sp, #0x134 bl func_ov00_02087d34 mov ip, #0 mov r3, #0x1000 mov r2, #0x19000 mov r1, #0xfa0 mov r0, #0x7d0 ldrb r7, [sp, #0x194] ldrb r6, [sp, #0x195] ldrb r5, [sp, #0x196] strb r7, [sp, #0x228] strb r6, [sp, #0x229] ldr r7, [sp, #0x138] ldr r6, [sp, #0x13c] str r7, [sp, #0x1cc] ldr r7, [sp, #0x15c] str r6, [sp, #0x1d0] ldr r6, [sp, #0x160] str r7, [sp, #0x1f0] ldr r7, [sp, #0x164] str r6, [sp, #0x1f4] ldr r6, [sp, #0x168] str r7, [sp, #0x1f8] ldr r7, [sp, #0x16c] str r6, [sp, #0x1fc] ldr r6, [sp, #0x170] str r7, [sp, #0x200] ldr r7, [sp, #0x174] str r6, [sp, #0x204] ldr r6, [sp, #0x178] str r7, [sp, #0x208] ldr r7, [sp, #0x17c] str r6, [sp, #0x20c] ldr r6, [sp, #0x180] str r7, [sp, #0x210] ldr r7, [sp, #0x184] str r6, [sp, #0x214] ldr r6, [sp, #0x188] strb r5, [sp, #0x22a] ldrb r5, [sp, #0x197] ldr lr, [sp, #0x134] str r7, [sp, #0x218] ldr r7, [sp, #0x18c] str r6, [sp, #0x21c] ldr r6, [sp, #0x190] str r3, [sp, #0x154] str r3, [sp, #0x1e8] ldrb r3, [sp, #0x198] str r2, [sp, #0x14c] str r2, [sp, #0x1e0] mov r2, #1 str r1, [sp, #0x144] str r1, [sp, #0x1d8] str r0, [sp, #0x140] str r0, [sp, #0x1d4] add r1, sp, #0x19c mov r0, r4 str lr, [sp, #0x1c8] str r7, [sp, #0x220] str ip, [sp, #0x158] str ip, [sp, #0x150] str ip, [sp, #0x148] str ip, [sp, #0x1dc] str ip, [sp, #0x1e4] str ip, [sp, #0x1ec] str r6, [sp, #0x224] strb r5, [sp, #0x22b] strb r3, [sp, #0x22c] strb r2, [sp, #0x1b0] bl func_ov00_020cc908 add r0, sp, #0x19c bl func_ov00_0209a508 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217ee58: bl func_ov00_020cc940 cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r0, r4 mov r1, #0x14 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217ee84: ldr r0, [r4, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r0, r4 mov r1, #0x15 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217eeb8: add r0, r4, #0x21c bl func_ov37_0218431c add r0, r4, #0x21c bl func_ov37_02184358 cmp r0, #0 addeq sp, sp, #0xe4 addeq sp, sp, #0x400 ldmeqia sp!, {r4, r5, r6, r7, pc} mov r0, r4 mov r1, #0x16 bl func_ov37_0217c464 add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} _0217eef0: add r0, r4, #0x21c bl func_ov37_02184370 ldr r0, [r4, #0x138] cmp r0, #0x3c bge _0217ef20 mov r0, #0 str r0, [sp] ldr r3, [r4, #8] ldr r0, _0217e350 ; =data_027e0ffc add r2, r4, #0x48 mov r1, #0x30c bl func_ov00_020cec60 _0217ef20: ldr r0, [r4, #0x138] cmp r0, #0x3c bne _0217f0ac ldr r1, _0217f0f8 ; =data_027e0e58 add r0, r4, #0xfb0 ldr r5, [r1] add r7, r0, #0x2000 mov r6, #0 _0217ef40: mov r0, r5 mov r1, r7 bl func_ov00_0207c444 add r6, r6, #1 cmp r6, #3 add r7, r7, #4 blo _0217ef40 add r0, r4, #0x48 add r3, sp, #0x24 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, [sp, #0x2c] ldr r1, [sp, #0x28] add r0, r0, #0x33 add r1, r1, #0x1800 add r0, r0, #0x2300 str r1, [sp, #0x28] str r0, [sp, #0x2c] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _0217f0f8 ; =data_027e0e58 mov r2, r3 ldr r0, [r0] ldr r1, _0217f0fc ; =0x00001020 mov r3, #2 bl func_ov00_0207c1b0 mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _0217f0f8 ; =data_027e0e58 ldr r1, _0217f100 ; =0x00001021 ldr r0, [r0] add r2, sp, #0x24 mov r3, #2 bl func_ov00_0207c1b0 mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _0217f0f8 ; =data_027e0e58 ldr r1, _0217f104 ; =0x0000101f ldr r0, [r0] add r2, sp, #0x24 mov r3, #2 bl func_ov00_0207c1b0 mov r0, #0 str r0, [sp] str r0, [sp, #4] ldr r0, _0217f0f8 ; =data_027e0e58 ldr r1, _0217f108 ; =0x00001022 ldr r0, [r0] add r2, sp, #0x24 mov r3, #2 bl func_ov00_0207c1b0 mov r0, #0 str r0, [sp] str r0, [sp, #4] ldr r0, _0217f0f8 ; =data_027e0e58 ldr r1, _0217f10c ; =0x00001023 ldr r0, [r0] add r2, sp, #0x24 mov r3, #2 bl func_ov00_0207c1b0 mov r0, #0 str r0, [sp] str r0, [sp, #4] ldr r0, _0217f0f8 ; =data_027e0e58 ldr r1, _0217f110 ; =0x00001024 ldr r0, [r0] add r2, sp, #0x24 mov r3, #2 bl func_ov00_0207c1b0 mov r0, #2 str r0, [sp] ldr r0, _0217f0f8 ; =data_027e0e58 add r1, r4, #0x3bc ldr r0, [r0] ldr r2, _0217f114 ; =0x00001025 add r1, r1, #0x2c00 add r3, sp, #0x24 bl func_ov00_0207c1f8 ldr r0, _0217e350 ; =data_027e0ffc ldr r1, _0217f118 ; =0x0000030d add r2, r4, #0x48 mov r3, #0 bl func_ov00_020ceacc add sp, sp, #0xe4 mov r0, #0 add sp, sp, #0x400 strb r0, [r4, #0x11a] ldmia sp!, {r4, r5, r6, r7, pc} _0217f0ac: cmp r0, #0x96 addne sp, sp, #0xe4 addne sp, sp, #0x400 ldmneia sp!, {r4, r5, r6, r7, pc} add r0, r4, #0x3bc add r0, r0, #0x2c00 bl func_ov00_020b7e6c ldr r0, _0217f11c ; =data_027e0f74 mov r1, #0xf ldr r0, [r0] bl func_ov00_02097968 mov r0, r4 bl func_ov00_020cc960 mov r0, r4 bl func_ov37_0217fccc _0217f0e8: add sp, sp, #0xe4 add sp, sp, #0x400 ldmia sp!, {r4, r5, r6, r7, pc} .align 2, 0 _0217f0f4: .word data_027e0e60 _0217f0f8: .word data_027e0e58 _0217f0fc: .word 0x00001020 _0217f100: .word 0x00001021 _0217f104: .word 0x0000101f _0217f108: .word 0x00001022 _0217f10c: .word 0x00001023 _0217f110: .word 0x00001024 _0217f114: .word 0x00001025 _0217f118: .word 0x0000030d _0217f11c: .word data_027e0f74 .global func_ov37_0217f120 arm_func_start func_ov37_0217f120 func_ov37_0217f120: ; 0x0217f120 stmdb sp!, {r4, r5, lr} sub sp, sp, #0x24 mov r4, r0 add r0, r4, #0x21c mov r5, r1 bl func_ov37_02183580 cmp r0, #0 beq _0217f148 mov r0, r4 bl func_ov37_0217c924 _0217f148: cmp r5, #0 addne sp, sp, #0x24 ldmneia sp!, {r4, r5, pc} ldr r0, [r4, #0x130] cmp r0, #0xe bne _0217f1bc add r0, r4, #0x14 add ip, sp, #0x18 ldmia r0, {r0, r1, r2} stmia ip, {r0, r1, r2} ldr r0, [sp, #0x20] mov r3, #0x4800 sub r0, r0, #0xb800 str r0, [sp, #0x20] str r3, [sp] ldrsh r2, [r4, #0x78] mov r0, #0x14 mov r1, #0 str r2, [sp, #4] str r0, [sp, #8] str r1, [sp, #0xc] mov r4, #1 str r4, [sp, #0x10] ldr r0, _0217f284 ; =data_ov00_020e9370 mov r2, ip str r4, [sp, #0x14] bl func_ov05_02102c2c add sp, sp, #0x24 ldmia sp!, {r4, r5, pc} _0217f1bc: add r0, r4, #0x21c mov r1, #0 bl func_ov37_02183df8 mov r3, #0x1000 str r3, [sp] ldrsh r1, [r4, #0x78] mov r2, r0 mov r0, #0x1f str r1, [sp, #4] str r0, [sp, #8] mov r1, #0 str r1, [sp, #0xc] mov ip, #1 str ip, [sp, #0x10] ldr r0, _0217f284 ; =data_ov00_020e9370 str ip, [sp, #0x14] bl func_ov05_02102c2c add r0, r4, #0x21c mov r1, #1 bl func_ov37_02183df8 mov r3, #0x1000 str r3, [sp] mov r2, r0 ldrsh ip, [r4, #0x78] mov r0, #0x1f mov r1, #0 str ip, [sp, #4] str r0, [sp, #8] str r1, [sp, #0xc] mov r0, #1 str r0, [sp, #0x10] str r0, [sp, #0x14] ldr r0, _0217f284 ; =data_ov00_020e9370 bl func_ov05_02102c2c mov r3, #0x3800 str r3, [sp] ldrsh r1, [r4, #0x78] add r2, r4, #0x48 mov r0, #0x14 str r1, [sp, #4] str r0, [sp, #8] mov r1, #0 str r1, [sp, #0xc] mov r0, #1 str r0, [sp, #0x10] str r0, [sp, #0x14] ldr r0, _0217f284 ; =data_ov00_020e9370 bl func_ov05_02102c2c add sp, sp, #0x24 ldmia sp!, {r4, r5, pc} .align 2, 0 arm_func_end func_ov37_0217f120 _0217f284: .word data_ov00_020e9370 .global func_ov37_0217f288 arm_func_start func_ov37_0217f288 func_ov37_0217f288: ; 0x0217f288 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} sub sp, sp, #0x18 ldr r1, _0217f370 ; =data_ov37_02187df4 mov r3, r0 add r4, sp, #0 ldmia r1, {r0, r1, r2} stmia r4, {r0, r1, r2} ldrh r0, [r3, #0x78] ldr r4, _0217f374 ; =data_02050f54 ldr r8, [sp, #8] mov r0, r0, asr #0x4 mov r2, r0, lsl #0x1 add r0, r2, #1 mov r2, r2, lsl #0x1 ldrsh r2, [r4, r2] mov r0, r0, lsl #0x1 ldrsh r4, [r4, r0] smull r0, r7, r8, r2 adds lr, r0, #0x800 ldr r1, [r3, #0x48] rsb ip, r2, #0 str r1, [sp, #0xc] ldr sb, [r3, #0x4c] ldr r6, [sp] ldr r0, [sp, #4] adc r7, r7, #0 mov lr, lr, lsr #0xc orr lr, lr, r7, lsl #20 smull r2, r5, r8, r4 add r1, r1, lr adds r8, r2, #0x800 str sb, [sp, #0x10] smull lr, r4, r6, r4 adc r7, r5, #0 adds r5, lr, #0x800 smull lr, ip, r6, ip adc r4, r4, #0 mov r5, r5, lsr #0xc orr r5, r5, r4, lsl #20 ldr r2, [r3, #0x50] add r0, sb, r0 str r0, [sp, #0x10] mov r0, r8, lsr #0xc orr r0, r0, r7, lsl #20 add r4, r1, r5 adds lr, lr, #0x800 adc r1, ip, #0 mov ip, lr, lsr #0xc orr ip, ip, r1, lsl #20 add r0, r2, r0 add r2, r0, ip add r1, sp, #0xc mov r0, r3 str r4, [sp, #0xc] str r2, [sp, #0x14] bl func_ov37_0217f540 add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} .align 2, 0 arm_func_end func_ov37_0217f288 _0217f370: .word data_ov37_02187df4 _0217f374: .word data_02050f54 .global func_ov37_0217f378 arm_func_start func_ov37_0217f378 func_ov37_0217f378: ; 0x0217f378 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} sub sp, sp, #0x18 ldr r1, _0217f460 ; =data_ov37_02187e00 mov r3, r0 add r4, sp, #0 ldmia r1, {r0, r1, r2} stmia r4, {r0, r1, r2} ldrh r0, [r3, #0x78] ldr r4, _0217f464 ; =data_02050f54 ldr r8, [sp, #8] mov r0, r0, asr #0x4 mov r2, r0, lsl #0x1 add r0, r2, #1 mov r2, r2, lsl #0x1 ldrsh r2, [r4, r2] mov r0, r0, lsl #0x1 ldrsh r4, [r4, r0] smull r0, r7, r8, r2 adds lr, r0, #0x800 ldr r1, [r3, #0x48] rsb ip, r2, #0 str r1, [sp, #0xc] ldr sb, [r3, #0x4c] ldr r6, [sp] ldr r0, [sp, #4] adc r7, r7, #0 mov lr, lr, lsr #0xc orr lr, lr, r7, lsl #20 smull r2, r5, r8, r4 add r1, r1, lr adds r8, r2, #0x800 str sb, [sp, #0x10] smull lr, r4, r6, r4 adc r7, r5, #0 adds r5, lr, #0x800 smull lr, ip, r6, ip adc r4, r4, #0 mov r5, r5, lsr #0xc orr r5, r5, r4, lsl #20 ldr r2, [r3, #0x50] add r0, sb, r0 str r0, [sp, #0x10] mov r0, r8, lsr #0xc orr r0, r0, r7, lsl #20 add r4, r1, r5 adds lr, lr, #0x800 adc r1, ip, #0 mov ip, lr, lsr #0xc orr ip, ip, r1, lsl #20 add r0, r2, r0 add r2, r0, ip add r1, sp, #0xc mov r0, r3 str r4, [sp, #0xc] str r2, [sp, #0x14] bl func_ov37_0217f540 add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} .align 2, 0 arm_func_end func_ov37_0217f378 _0217f460: .word data_ov37_02187e00 _0217f464: .word data_02050f54 .global func_ov37_0217f468 arm_func_start func_ov37_0217f468 func_ov37_0217f468: ; 0x0217f468 stmdb sp!, {r4, lr} sub sp, sp, #0x18 mov r4, r0 add r0, r4, #0x21c mov r1, #0 bl func_ov37_02183df8 add r3, sp, #0xc ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, _0217f4d0 ; =data_027e0e60 ldr lr, [sp, #0xc] ldr ip, [sp, #0x10] ldr r3, [sp, #0x14] ldr r0, [r0] add r1, sp, #0 mov r2, #1 str lr, [sp] str ip, [sp, #4] str r3, [sp, #8] bl func_ov00_02083ee0 str r0, [sp, #0x10] add r1, sp, #0xc mov r0, r4 bl func_ov37_0217f540 add sp, sp, #0x18 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_0217f468 _0217f4d0: .word data_027e0e60 .global func_ov37_0217f4d4 arm_func_start func_ov37_0217f4d4 func_ov37_0217f4d4: ; 0x0217f4d4 stmdb sp!, {r4, lr} sub sp, sp, #0x18 mov r4, r0 add r0, r4, #0x21c mov r1, #1 bl func_ov37_02183df8 add r3, sp, #0xc ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, _0217f53c ; =data_027e0e60 ldr lr, [sp, #0xc] ldr ip, [sp, #0x10] ldr r3, [sp, #0x14] ldr r0, [r0] add r1, sp, #0 mov r2, #1 str lr, [sp] str ip, [sp, #4] str r3, [sp, #8] bl func_ov00_02083ee0 str r0, [sp, #0x10] add r1, sp, #0xc mov r0, r4 bl func_ov37_0217f540 add sp, sp, #0x18 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_0217f4d4 _0217f53c: .word data_027e0e60 .global func_ov37_0217f540 arm_func_start func_ov37_0217f540 func_ov37_0217f540: ; 0x0217f540 stmdb sp!, {r4, r5, lr} sub sp, sp, #0x2c add r3, sp, #0x20 mov r4, r1 mov r5, r0 ldmia r4, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, _0217f650 ; =data_027e0e60 ldr lr, [sp, #0x20] ldr ip, [sp, #0x24] ldr r3, [sp, #0x28] ldr r0, [r0] add r1, sp, #0x14 mov r2, #1 str lr, [sp, #0x14] str ip, [sp, #0x18] str r3, [sp, #0x1c] bl func_ov00_02083ee0 str r0, [sp, #0x24] ldr r1, [sp, #0x20] add r0, r5, #0x2000 str r1, [r0, #0xf80] ldr r1, [sp, #0x24] mov r2, #0x1800 str r1, [r0, #0xf84] ldr r3, [sp, #0x28] mov r1, #0x1e str r3, [r0, #0xf88] str r2, [r0, #0xf8c] str r1, [r0, #0xf90] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _0217f654 ; =data_027e0e58 ldr r1, _0217f658 ; =0x00001013 ldr r0, [r0] mov r2, r4 mov r3, #2 bl func_ov00_0207c1b0 mov r0, #0 str r0, [sp] str r0, [sp, #4] ldr r0, _0217f654 ; =data_027e0e58 ldr r1, _0217f65c ; =0x00001014 ldr r0, [r0] mov r2, r4 mov r3, #2 bl func_ov00_0207c1b0 mov r0, #0 str r0, [sp] str r0, [sp, #4] ldr r0, _0217f654 ; =data_027e0e58 ldr r1, _0217f660 ; =0x00001015 ldr r0, [r0] mov r2, r4 mov r3, #2 bl func_ov00_0207c1b0 mov r0, #0 str r0, [sp] str r0, [sp, #4] ldr r0, _0217f654 ; =data_027e0e58 ldr r1, _0217f664 ; =0x00001016 ldr r0, [r0] mov r2, r4 mov r3, #2 bl func_ov00_0207c1b0 add sp, sp, #0x2c ldmia sp!, {r4, r5, pc} .align 2, 0 arm_func_end func_ov37_0217f540 _0217f650: .word data_027e0e60 _0217f654: .word data_027e0e58 _0217f658: .word 0x00001013 _0217f65c: .word 0x00001014 _0217f660: .word 0x00001015 _0217f664: .word 0x00001016 .global func_ov37_0217f668 arm_func_start func_ov37_0217f668 func_ov37_0217f668: ; 0x0217f668 stmdb sp!, {r4, lr} sub sp, sp, #0x10 mov r4, r0 add r3, r4, #0x2000 ldr r0, [r3, #0xf90] cmp r0, #0 addle sp, sp, #0x10 ldmleia sp!, {r4, pc} sub r0, r0, #1 str r0, [r3, #0xf90] ldr r1, [r3, #0xf8c] ldr r0, _0217f6d4 ; =data_027e0f94 add r1, r1, #0x11 add ip, r1, #0x100 add r2, sp, #4 add r1, r4, #0x2f80 str ip, [r3, #0xf8c] bl func_01ff9bf8 mov ip, #2 add r2, sp, #4 mov r0, r4 add r1, r4, #0x2f80 mov r3, #4 str ip, [sp] bl func_ov00_020c1ef8 add sp, sp, #0x10 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_0217f668 _0217f6d4: .word data_027e0f94 .global func_ov37_0217f6d8 arm_func_start func_ov37_0217f6d8 func_ov37_0217f6d8: ; 0x0217f6d8 stmdb sp!, {r3, r4, lr} sub sp, sp, #0x1c mov r4, r0 ldrh r0, [r4, #0x78] mov r1, #0 ldr r3, _0217f76c ; =data_02050f54 mov r0, r0, asr #0x4 mov r2, r0, lsl #0x1 add r0, r2, #1 mov r2, r2, lsl #0x1 mov r0, r0, lsl #0x1 ldrsh r2, [r3, r2] ldrsh r0, [r3, r0] str r1, [sp, #0x14] str r2, [sp, #0x10] str r0, [sp, #0x18] add r0, r4, #0x21c bl func_ov37_02183df8 ldr ip, [r0, #4] ldr r2, [r0, #8] ldr r0, [r0] add r1, r4, #0x2000 str r0, [r1, #0xf54] str ip, [r1, #0xf58] str r2, [r1, #0xf5c] mov ip, #0x1800 add r3, r4, #0x354 mov r0, r4 str ip, [r1, #0xf60] mov r4, #2 add r1, r3, #0x2c00 add r2, sp, #0x10 mov r3, #4 str r4, [sp] bl func_ov00_020c1ef8 add sp, sp, #0x1c ldmia sp!, {r3, r4, pc} .align 2, 0 arm_func_end func_ov37_0217f6d8 _0217f76c: .word data_02050f54 .global func_ov37_0217f770 arm_func_start func_ov37_0217f770 func_ov37_0217f770: ; 0x0217f770 stmdb sp!, {r3, r4, lr} sub sp, sp, #0x1c mov r4, r0 ldrh r0, [r4, #0x78] mov r1, #0 ldr r3, _0217f808 ; =data_02050f54 mov r0, r0, asr #0x4 mov r2, r0, lsl #0x1 add r0, r2, #1 mov r2, r2, lsl #0x1 mov r0, r0, lsl #0x1 ldrsh r2, [r3, r2] ldrsh r0, [r3, r0] str r1, [sp, #0x14] str r2, [sp, #0x10] str r0, [sp, #0x18] add r0, r4, #0x21c mov r1, #1 bl func_ov37_02183df8 ldr ip, [r0, #4] ldr r2, [r0, #8] ldr r0, [r0] add r1, r4, #0x2000 str r0, [r1, #0xf64] str ip, [r1, #0xf68] str r2, [r1, #0xf6c] mov ip, #0x1800 add r3, r4, #0x364 mov r0, r4 str ip, [r1, #0xf70] mov r4, #2 add r1, r3, #0x2c00 add r2, sp, #0x10 mov r3, #4 str r4, [sp] bl func_ov00_020c1ef8 add sp, sp, #0x1c ldmia sp!, {r3, r4, pc} .align 2, 0 arm_func_end func_ov37_0217f770 _0217f808: .word data_02050f54 .global func_ov37_0217f80c arm_func_start func_ov37_0217f80c func_ov37_0217f80c: ; 0x0217f80c stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x30 mov sl, r0 add r0, sl, #0x29c ldr fp, _0217f89c ; =0x4c4f4e44 ldr r4, _0217f8a0 ; =data_027e0fe8 add sb, r0, #0x2c00 mov r8, #0 mov r7, #4 add r6, sp, #4 mvn r5, #0 _0217f838: add r0, sl, r8 add r1, r0, #0x2000 mov r0, r6 strb r7, [r1, #0xe90] bl func_ov00_020c1500 mov r0, r6 str r5, [sp, #0x20] str r5, [sp, #0x24] bl func_ov00_020c3348 ldr r0, [sl, #8] mov r1, fp str r0, [sp, #0x20] ldr r0, [sl, #0xc] add r2, sl, #0x48 str r0, [sp, #0x24] str sb, [sp] ldr r0, [r4] mov r3, r6 bl func_ov00_020c4048 add sb, sb, #8 add r8, r8, #1 cmp r8, #0xa blt _0217f838 add sp, sp, #0x30 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov37_0217f80c _0217f89c: .word 0x4c4f4e44 _0217f8a0: .word data_027e0fe8 .global func_ov37_0217f8a4 arm_func_start func_ov37_0217f8a4 func_ov37_0217f8a4: ; 0x0217f8a4 stmdb sp!, {r3, r4, r5, r6, r7, lr} add r0, r0, #0x29c mov r6, #0 ldr r4, _0217f8e4 ; =data_027e0fe4 add r7, r0, #0x2c00 mov r5, r6 _0217f8bc: ldr r0, [r4] mov r1, r7 bl func_ov00_020c3674 cmp r0, #0 add r6, r6, #1 strneb r5, [r0, #0x118] cmp r6, #0xa add r7, r7, #8 blt _0217f8bc ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 arm_func_end func_ov37_0217f8a4 _0217f8e4: .word data_027e0fe4 .global func_ov37_0217f8e8 arm_func_start func_ov37_0217f8e8 func_ov37_0217f8e8: ; 0x0217f8e8 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x30 mov sl, r0 add r0, sl, #0x334 ldr fp, _0217f978 ; =0x4c4f4e44 ldr r4, _0217f97c ; =data_027e0fe8 add sb, r0, #0x2c00 mov r8, #0 mov r7, #1 add r6, sp, #4 mvn r5, #0 _0217f914: add r0, sl, r8 add r1, r0, #0x2000 mov r0, r6 strb r7, [r1, #0xe90] bl func_ov00_020c1500 mov r0, r6 str r5, [sp, #0x20] str r5, [sp, #0x24] bl func_ov00_020c3348 ldr r0, [sl, #8] mov r1, fp str r0, [sp, #0x20] ldr r0, [sl, #0xc] add r2, sl, #0x48 str r0, [sp, #0x24] str sb, [sp] ldr r0, [r4] mov r3, r6 bl func_ov00_020c4048 add sb, sb, #8 add r8, r8, #1 cmp r8, #4 blt _0217f914 add sp, sp, #0x30 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov37_0217f8e8 _0217f978: .word 0x4c4f4e44 _0217f97c: .word data_027e0fe8 .global func_ov37_0217f980 arm_func_start func_ov37_0217f980 func_ov37_0217f980: ; 0x0217f980 stmdb sp!, {r3, r4, r5, r6, r7, lr} add r0, r0, #0x334 mov r6, #0 ldr r4, _0217f9c0 ; =data_027e0fe4 add r7, r0, #0x2c00 mov r5, r6 _0217f998: ldr r0, [r4] mov r1, r7 bl func_ov00_020c3674 cmp r0, #0 add r6, r6, #1 strneb r5, [r0, #0x118] cmp r6, #4 add r7, r7, #8 blt _0217f998 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 arm_func_end func_ov37_0217f980 _0217f9c0: .word data_027e0fe4 .global func_ov37_0217f9c4 arm_func_start func_ov37_0217f9c4 func_ov37_0217f9c4: ; 0x0217f9c4 stmdb sp!, {r4, lr} sub sp, sp, #0x38 mvn r1, #0 mov r4, r0 add r0, sp, #0xc str r1, [sp, #4] str r1, [sp, #8] bl func_ov00_020c1500 mvn r1, #0 add r0, sp, #0xc str r1, [sp, #0x28] str r1, [sp, #0x2c] bl func_ov00_020c3348 ldr r0, [r4, #8] add r1, sp, #4 str r0, [sp, #0x28] ldr r2, [r4, #0xc] ldr r0, _0217fa80 ; =data_027e0fe8 str r2, [sp, #0x2c] str r1, [sp] ldr r0, [r0] ldr r1, _0217fa84 ; =0x57534246 add r3, sp, #0xc add r2, r4, #0x48 bl func_ov00_020c4048 ldr r0, _0217fa88 ; =data_027e0fe4 add r1, sp, #4 ldr r0, [r0] bl func_ov00_020c3674 add r1, r4, #0x2000 str r0, [r1, #0xf98] add r1, sp, #4 str r1, [sp] ldr r0, _0217fa80 ; =data_027e0fe8 ldr r1, _0217fa84 ; =0x57534246 ldr r0, [r0] add r2, r4, #0x48 add r3, sp, #0xc bl func_ov00_020c4048 ldr r0, _0217fa88 ; =data_027e0fe4 add r1, sp, #4 ldr r0, [r0] bl func_ov00_020c3674 add r1, r4, #0x2000 str r0, [r1, #0xf9c] add sp, sp, #0x38 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_0217f9c4 _0217fa80: .word data_027e0fe8 _0217fa84: .word 0x57534246 _0217fa88: .word data_027e0fe4 .global func_ov37_0217fa8c arm_func_start func_ov37_0217fa8c func_ov37_0217fa8c: ; 0x0217fa8c add r1, r0, #0x2000 ldr r2, [r1, #0xf98] add r0, r0, #0x2000 cmp r2, #0 movne r1, #0 strneb r1, [r2, #0x118] ldr r1, [r0, #0xf9c] cmp r1, #0 movne r0, #0 strneb r0, [r1, #0x118] bx lr arm_func_end func_ov37_0217fa8c .global func_ov37_0217fab8 arm_func_start func_ov37_0217fab8 func_ov37_0217fab8: ; 0x0217fab8 stmdb sp!, {r3, r4, lr} sub sp, sp, #0x3c mov r4, r0 add r0, sp, #0x10 bl func_ov00_020c1500 mvn r1, #0 add r0, sp, #0x10 str r1, [sp, #0x2c] str r1, [sp, #0x30] bl func_ov00_020c3348 ldr r0, [r4, #8] add r3, r4, #0x2ec str r0, [sp, #0x2c] ldr r1, [r4, #0xc] mov r0, #0 strh r0, [sp, #0x24] add ip, sp, #4 add r0, r4, #0x14 str r1, [sp, #0x30] ldmia r0, {r0, r1, r2} stmia ip, {r0, r1, r2} add r3, r3, #0x2c00 str r3, [sp] ldr r0, _0217fba0 ; =data_027e0fe8 ldr r1, _0217fba4 ; =0x57534248 ldr r0, [r0] mov r2, ip add r3, sp, #0x10 bl func_ov00_020c4048 ldr r0, _0217fba8 ; =data_027e0fe4 add r1, r4, #0x2ec ldr r0, [r0] add r1, r1, #0x2c00 bl func_ov00_020c3674 add r1, r4, #0x2000 ldr r1, [r1, #0xfa8] cmp r1, #1 bgt _0217fb64 mov r1, #0x3c mov r2, #1 bl func_ov37_02186674 add sp, sp, #0x3c ldmia sp!, {r3, r4, pc} _0217fb64: cmp r1, #2 bne _0217fb80 mov r1, #0x3c mov r2, #1 bl func_ov37_02186674 add sp, sp, #0x3c ldmia sp!, {r3, r4, pc} _0217fb80: cmp r1, #3 addlt sp, sp, #0x3c ldmltia sp!, {r3, r4, pc} mov r1, #0x3c mov r2, #1 bl func_ov37_02186674 add sp, sp, #0x3c ldmia sp!, {r3, r4, pc} .align 2, 0 arm_func_end func_ov37_0217fab8 _0217fba0: .word data_027e0fe8 _0217fba4: .word 0x57534248 _0217fba8: .word data_027e0fe4 .global func_ov37_0217fbac arm_func_start func_ov37_0217fbac func_ov37_0217fbac: ; 0x0217fbac stmdb sp!, {r3, lr} ldr r2, _0217fbd4 ; =data_027e0fe4 add r1, r0, #0x2ec ldr r0, [r2] add r1, r1, #0x2c00 bl func_ov00_020c3674 cmp r0, #0 movne r1, #0 strneb r1, [r0, #0x118] ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov37_0217fbac _0217fbd4: .word data_027e0fe4 .global func_ov37_0217fbd8 arm_func_start func_ov37_0217fbd8 func_ov37_0217fbd8: ; 0x0217fbd8 stmdb sp!, {r4, r5, r6, r7, lr} sub sp, sp, #0x3c mov r7, r0 add r0, sp, #0x10 mov r6, r1 mov r5, r2 mov r4, r3 bl func_ov00_020c1500 mvn r1, #0 add r0, sp, #0x10 str r1, [sp, #0x2c] str r1, [sp, #0x30] bl func_ov00_020c3348 mvn r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] ldr r0, [r7, #8] add r1, sp, #8 str r0, [sp, #0x2c] ldr r2, [r7, #0xc] ldr r0, _0217fcac ; =data_027e0fe8 str r2, [sp, #0x30] str r1, [sp] ldr r0, [r0] ldr r1, _0217fcb0 ; =0x57534242 mov r2, r6 add r3, sp, #0x10 bl func_ov00_020c4048 ldr r0, _0217fcb4 ; =data_027e0fe4 add r1, sp, #8 ldr r0, [r0] bl func_ov00_020c3674 cmp r0, #0 beq _0217fc6c mov r1, r5 mov r2, r4 bl func_ov37_0218452c _0217fc6c: mov r1, #0 str r1, [sp] ldr r0, _0217fcb8 ; =data_027e0e58 str r1, [sp, #4] ldr r0, [r0] ldr r1, _0217fcbc ; =0x00001001 mov r2, r6 mov r3, #2 bl func_ov00_0207c1b0 ldr r0, _0217fcc0 ; =data_027e0ffc ldr r1, _0217fcc4 ; =0x000002b1 mov r2, r6 mov r3, #0 bl func_ov00_020ceacc add sp, sp, #0x3c ldmia sp!, {r4, r5, r6, r7, pc} .align 2, 0 arm_func_end func_ov37_0217fbd8 _0217fcac: .word data_027e0fe8 _0217fcb0: .word 0x57534242 _0217fcb4: .word data_027e0fe4 _0217fcb8: .word data_027e0e58 _0217fcbc: .word 0x00001001 _0217fcc0: .word data_027e0ffc _0217fcc4: .word 0x000002b1 .global func_ov37_0217fcc8 arm_func_start func_ov37_0217fcc8 func_ov37_0217fcc8: ; 0x0217fcc8 bx lr arm_func_end func_ov37_0217fcc8 .global func_ov37_0217fccc arm_func_start func_ov37_0217fccc func_ov37_0217fccc: ; 0x0217fccc stmdb sp!, {r4, lr} mov r1, #1 mov r4, r0 mov r2, r1 bl func_ov00_020c1c20 mov r0, r4 bl func_ov00_020c3180 ldmia sp!, {r4, pc} arm_func_end func_ov37_0217fccc .global func_ov37_0217fcec arm_func_start func_ov37_0217fcec func_ov37_0217fcec: ; 0x0217fcec add r0, r0, #0x2000 mov r1, #0x24 str r1, [r0, #0xfac] bx lr arm_func_end func_ov37_0217fcec .global func_ov37_0217fcfc arm_func_start func_ov37_0217fcfc func_ov37_0217fcfc: ; 0x0217fcfc add r0, r0, #0x2000 ldr r1, [r0, #0xfac] cmp r1, #0 subgt r1, r1, #1 strgt r1, [r0, #0xfac] bx lr arm_func_end func_ov37_0217fcfc .global func_ov37_0217fd14 arm_func_start func_ov37_0217fd14 func_ov37_0217fd14: ; 0x0217fd14 stmdb sp!, {r3, lr} add r0, r0, #0x2000 ldr lr, [r0, #0xfac] cmp lr, #0 movle r0, #0 ldmleia sp!, {r3, pc} ldr r0, _0217fd8c ; =0x0005fffa rsb r1, lr, #0x24 mul ip, r1, r0 ldr r1, _0217fd90 ; =0x0000059a ldr r2, _0217fd94 ; =0x38e38e39 mov r0, ip, lsr #0x1f mul r3, lr, r1 smull r1, ip, r2, ip add ip, r0, ip, asr #3 mov r0, ip, lsl #0x10 mov r0, r0, lsr #0x10 mov r1, r0, asr #0x4 ldr r0, _0217fd98 ; =data_02050f54 mov r1, r1, lsl #0x2 ldrsh ip, [r0, r1] mov r0, r3, lsr #0x1f smull r1, r3, r2, r3 add r3, r0, r3, asr #3 smull r1, r0, ip, r3 adds r2, r1, #0x800 adc r1, r0, #0 mov r0, r2, lsr #0xc orr r0, r0, r1, lsl #20 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov37_0217fd14 _0217fd8c: .word 0x0005fffa _0217fd90: .word 0x0000059a _0217fd94: .word 0x38e38e39 _0217fd98: .word data_02050f54 .global func_ov37_0217fd9c arm_func_start func_ov37_0217fd9c func_ov37_0217fd9c: ; 0x0217fd9c stmdb sp!, {r3, r4, r5, lr} mov r4, r0 add r0, r4, #0x2000 ldr r0, [r0, #0xfa0] cmp r0, #0 bne _0217fe08 ldr r2, [r1] mov r1, #0 _0217fdbc: add r0, r4, r1, lsl #3 add r0, r0, #0x2000 ldr r0, [r0, #0xe9c] cmp r2, r0 bne _0217fdf8 add r0, r4, r1 add r0, r0, #0x2000 ldrb r0, [r0, #0xe90] cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, pc} add r0, r4, #0x2000 str r1, [r0, #0xf94] mov r0, #1 ldmia sp!, {r3, r4, r5, pc} _0217fdf8: add r1, r1, #1 cmp r1, #0xa blt _0217fdbc b _0217fe60 _0217fe08: cmp r0, #1 bne _0217fe60 ldr r1, [r1] mov r5, #0 _0217fe18: add r0, r4, r5, lsl #3 add r0, r0, #0x2000 ldr r0, [r0, #0xf34] cmp r1, r0 bne _0217fe54 mov r1, r5 add r0, r4, #0x21c bl func_ov37_02183e18 cmp r0, #2 movne r0, #0 ldmneia sp!, {r3, r4, r5, pc} add r0, r4, #0x2000 str r5, [r0, #0xf94] mov r0, #1 ldmia sp!, {r3, r4, r5, pc} _0217fe54: add r5, r5, #1 cmp r5, #4 blt _0217fe18 _0217fe60: mov r0, #0 ldmia sp!, {r3, r4, r5, pc} arm_func_end func_ov37_0217fd9c .global func_ov37_0217fe68 arm_func_start func_ov37_0217fe68 func_ov37_0217fe68: ; 0x0217fe68 stmdb sp!, {r4, r5, r6, lr} sub sp, sp, #0x10 mov r4, r0 bl func_ov00_020c6114 ldr r3, _0217ff28 ; =data_ov37_02188c54 add r0, r4, #0xfc add r1, r4, #0x120 mov r2, #0 str r3, [r4] blx func_ov00_020c0c08 ldr r1, _0217ff2c ; =data_ov37_02188c68 ldr r2, _0217ff30 ; =data_ov37_02187e18 str r1, [r4, #0xfc] mov r0, r4 mov r1, #0x5a bl func_ov00_020c5c98 ldr r1, [r4, #4] ldr r0, _0217ff34 ; =data_027e0fec str r1, [r4, #0x104] ldr r1, [r0] ldr r0, _0217ff38 ; =data_ov37_02188c70 add r1, r1, #0x1000 ldr r6, [r1, #0x3b8] blx func_02016fe8 mov r5, r0 ldr r1, _0217ff3c ; =data_ov37_02188c84 add r0, sp, #0 mov r2, #0x10 bl func_020470ec mov r0, r5 add r1, sp, #0 bl func_0201e544 mov r1, r0 mov r2, r6 add r0, r4, #0xfc mov r3, #1 bl func_ov00_020c0cc8 add r0, r4, #0x20 ldr r2, [r0] add r1, r4, #0xfc ldr r2, [r2, #0x24] blx r2 mov r0, r4 mov r1, #1 bl func_ov37_0217ff40 mov r0, r4 add sp, sp, #0x10 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 arm_func_end func_ov37_0217fe68 _0217ff28: .word data_ov37_02188c54 _0217ff2c: .word data_ov37_02188c68 _0217ff30: .word data_ov37_02187e18 _0217ff34: .word data_027e0fec _0217ff38: .word data_ov37_02188c70 _0217ff3c: .word data_ov37_02188c84 .global func_ov37_0217ff40 arm_func_start func_ov37_0217ff40 func_ov37_0217ff40: ; 0x0217ff40 stmdb sp!, {r4, lr} mov r4, r0 cmp r1, #0 beq _0217ff94 cmp r1, #1 beq _0217ff64 cmp r1, #2 beq _0217ffc8 ldmia sp!, {r4, pc} _0217ff64: add r0, r4, #0xfc mov r1, #0 bl func_ov00_020c0e24 mov r0, r4 mov r1, #0 bl func_ov00_020c5d74 ldr r0, [r4, #0x10] mov r1, #0 str r1, [r0, #0x10] ldr r0, [r4, #0x10] str r1, [r0, #0x14] ldmia sp!, {r4, pc} _0217ff94: add r0, r4, #0xfc mov r1, #0x1000 bl func_ov00_020c0e24 mov r0, r4 mov r1, #0 bl func_ov00_020c5d74 ldr r0, [r4, #0x10] mov r1, #0 str r1, [r0, #0x10] ldr r0, [r4, #0x10] mov r1, #0x1000 str r1, [r0, #0x14] ldmia sp!, {r4, pc} _0217ffc8: add r0, r4, #0xfc mov r1, #0x2000 bl func_ov00_020c0e24 mov r0, r4 mov r1, #0 bl func_ov00_020c5d74 ldr r0, [r4, #0x10] mov r1, #0 str r1, [r0, #0x10] ldr r0, [r4, #0x10] mov r1, #0x1000 str r1, [r0, #0x14] ldmia sp!, {r4, pc} arm_func_end func_ov37_0217ff40 .global func_ov37_0217fffc arm_func_start func_ov37_0217fffc func_ov37_0217fffc: ; 0x0217fffc stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x3c bl func_0201e24c ldr r1, [r0] and r0, r1, #0x1c000000 cmp r0, #0x14000000 ldrne r0, [r4, #8] ldreq r0, [r4, #0x18] mov r0, r0, lsl #0x10 mov r0, r0, lsr #0x10 add r0, r1, r0 ldmia sp!, {r4, pc} arm_func_end func_ov37_0217fffc .global func_ov37_02180030 arm_func_start func_ov37_02180030 func_ov37_02180030: ; 0x02180030 stmdb sp!, {r4, lr} mov r4, r0 ldrh r0, [r4, #0x34] add r0, r4, r0 bl func_0201e24c ldr r1, [r4, #0x2c] ldrh r2, [r0, #2] mov r1, r1, lsl #0x10 mov r1, r1, lsr #0x10 tst r2, #1 ldrh r0, [r0] bne _02180070 mov r0, r0, lsl #0xf mov r1, r1, lsl #0xf mov r0, r0, lsr #0x10 mov r1, r1, lsr #0x10 _02180070: add r0, r0, r1 mov r0, r0, lsl #0x10 mov r0, r0, lsr #0x10 ldmia sp!, {r4, pc} arm_func_end func_ov37_02180030 .global func_ov37_02180080 arm_func_start func_ov37_02180080 func_ov37_02180080: ; 0x02180080 ldr r2, _021800a0 ; =0xffffd555 cmp r1, r2 bxlt lr rsb r2, r2, #0 cmp r1, r2 addle r0, r0, #0x500 strleh r1, [r0, #0xaa] bx lr .align 2, 0 arm_func_end func_ov37_02180080 _021800a0: .word 0xffffd555 .global func_ov37_021800a4 arm_func_start func_ov37_021800a4 func_ov37_021800a4: ; 0x021800a4 stmdb sp!, {r3, r4, r5, lr} ldr r1, [r0, #8] mov r5, #0 tst r1, #4 ldrneb r1, [r0, #0xac] ldr r2, _0218014c ; =data_ov37_02189190 mov r3, r5 mvneq r1, #0 mov r4, #1 _021800c8: ldr lr, [r2] add ip, lr, r5, lsl #2 ldr ip, [ip, #0x60] cmp r1, ip bne _021800f4 add ip, lr, r5 ldrb ip, [ip, #0x90] ldr lr, [r0, #0xb8] cmp ip, #0 strne r4, [lr] streq r3, [lr] _021800f4: add r5, r5, #1 cmp r5, #0xc blt _021800c8 mov r5, #0 ldr r2, _0218014c ; =data_ov37_02189190 mov r3, r5 mov ip, #1 _02180110: ldr lr, [r2] add r4, lr, r5, lsl #2 ldr r4, [r4, #0x9c] cmp r1, r4 bne _0218013c add lr, lr, r5 ldrb lr, [lr, #0x308] ldr r4, [r0, #0xb8] cmp lr, #0 strne ip, [r4] streq r3, [r4] _0218013c: add r5, r5, #1 cmp r5, #0xb blt _02180110 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov37_021800a4 _0218014c: .word data_ov37_02189190 .global func_ov37_02180150 arm_func_start func_ov37_02180150 func_ov37_02180150: ; 0x02180150 stmdb sp!, {r3, r4, r5, lr} ldr r1, [r0, #8] ldr r3, _02180288 ; =0xc00f0000 tst r1, #8 ldrneb r2, [r0, #0xad] ldr r1, [r0, #0xb0] ldr ip, _0218028c ; =data_ov37_02189190 mvneq r2, #0 mov r0, #0 _02180174: ldr r4, [ip] add lr, r4, r0, lsl #2 ldr r4, [lr, #0x524] cmp r2, r4 bne _02180224 ldr r4, [lr, #0x54c] cmp r4, #0 bne _021801c0 ldr r4, [r1, #0x10] and lr, r4, r3 str lr, [r1, #0x10] ldr r4, [ip] ldr r4, [r4, #0x574] orr r4, lr, r4 str r4, [r1, #0x10] ldr r4, [ip] ldr r4, [r4, #0x578] str r4, [r1, #0x14] b _02180224 _021801c0: cmp r4, #1 bne _021801f4 ldr r4, [r1, #0x10] and lr, r4, r3 str lr, [r1, #0x10] ldr r4, [ip] ldr r4, [r4, #0x57c] orr r4, lr, r4 str r4, [r1, #0x10] ldr r4, [ip] ldr r4, [r4, #0x580] str r4, [r1, #0x14] b _02180224 _021801f4: cmp r4, #2 bne _02180224 ldr r4, [r1, #0x10] and lr, r4, r3 str lr, [r1, #0x10] ldr r4, [ip] ldr r4, [r4, #0x584] orr r4, lr, r4 str r4, [r1, #0x10] ldr r4, [ip] ldr r4, [r4, #0x588] str r4, [r1, #0x14] _02180224: add r0, r0, #1 cmp r0, #0xa blt _02180174 mov r5, #0 ldr r0, _0218028c ; =data_ov37_02189190 mov ip, r5 mov lr, #0x1f _02180240: ldr r4, [r0] add r3, r4, r5, lsl #2 ldr r3, [r3, #0x58c] cmp r2, r3 bne _02180278 add r3, r4, r5 ldrb r3, [r3, #0x5a4] cmp r3, #0 ldr r3, [r1, #0xc] movne r4, lr moveq r4, ip bic r3, r3, #0x1f0000 orr r3, r3, r4, lsl #16 str r3, [r1, #0xc] _02180278: add r5, r5, #1 cmp r5, #6 blt _02180240 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov37_02180150 _02180288: .word 0xc00f0000 _0218028c: .word data_ov37_02189190 .global func_ov37_02180290 arm_func_start func_ov37_02180290 func_ov37_02180290: ; 0x02180290 stmdb sp!, {r4, lr} sub sp, sp, #0x48 ldr r1, _021803c8 ; =data_ov37_02189190 mov r4, r0 ldr r0, [r4, #8] ldr r2, [r1] tst r0, #0x10 ldrneb r3, [r4, #0xae] ldrb r0, [r2, #0x9b] mvneq r3, #0 cmp r0, #0 beq _02180338 ldr r0, [r2, #0x8c] cmp r3, r0 bne _02180338 ldr ip, [r4, #0xb4] ldr r3, _021803cc ; =data_02050f54 ldr r2, [ip] add r0, sp, #0x24 bic r2, r2, #2 str r2, [ip] ldr r1, [r1] add r1, r1, #0x500 ldrh r1, [r1, #0xaa] mov r1, r1, asr #0x4 mov r2, r1, lsl #0x1 add r1, r2, #1 mov ip, r2, lsl #0x1 mov r2, r1, lsl #0x1 ldrsh r1, [r3, ip] ldrsh r2, [r3, r2] blx func_01ff8214 ldr r2, [r4, #0xb4] add r0, sp, #0x24 add r1, r2, #0x28 add r2, r2, #0x28 bl func_0202e030 mov r0, #0 str r0, [r4, #0x24] add sp, sp, #0x48 strb r0, [r4, #0x92] ldmia sp!, {r4, pc} _02180338: ldrb r0, [r2, #0x312] cmp r0, #0 addeq sp, sp, #0x48 ldmeqia sp!, {r4, pc} ldr r0, [r2, #0xc4] cmp r3, r0 addne sp, sp, #0x48 ldmneia sp!, {r4, pc} ldr r2, [r4, #0xb4] ldr r0, _021803c8 ; =data_ov37_02189190 ldr r1, [r2] ldr r3, _021803cc ; =data_02050f54 bic r1, r1, #2 str r1, [r2] ldr r1, [r0] add r0, sp, #0 add r1, r1, #0x500 ldrh r1, [r1, #0xaa] mov r1, r1, asr #0x4 mov r2, r1, lsl #0x1 add r1, r2, #1 mov ip, r2, lsl #0x1 mov r2, r1, lsl #0x1 ldrsh r1, [r3, ip] ldrsh r2, [r3, r2] blx func_01ff8214 ldr r2, [r4, #0xb4] add r0, sp, #0 add r1, r2, #0x28 add r2, r2, #0x28 bl func_0202e030 mov r0, #0 str r0, [r4, #0x24] strb r0, [r4, #0x92] add sp, sp, #0x48 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_02180290 _021803c8: .word data_ov37_02189190 _021803cc: .word data_02050f54 .global func_ov37_021803d0 arm_func_start func_ov37_021803d0 func_ov37_021803d0: ; 0x021803d0 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} sub sp, sp, #0x60 ldr r1, [r0, #8] mov r7, #0 tst r1, #0x10 ldrneb r4, [r0, #0xae] ldr sb, _021804f0 ; =data_ov37_02189190 mov r8, r7 mvneq r4, #0 add r6, sp, #0x30 mov r5, r7 _021803fc: ldr r1, [sb] add r0, r1, r7, lsl #2 ldr r0, [r0, #0x60] cmp r4, r0 bne _02180448 add r0, r1, r7 ldrb r0, [r0, #0x90] cmp r0, #0 beq _02180448 mov r0, r6 mov r1, r5 bl func_0201b1bc bl func_02018450 ldr r2, [sb] mov r1, r0 add r0, r2, #0xc8 add r2, r0, r8 mov r0, r6 bl func_0202de3c _02180448: add r7, r7, #1 cmp r7, #0xc add r8, r8, #0x30 blt _021803fc mov r8, #0 ldr sb, _021804f0 ; =data_ov37_02189190 mov r7, r8 add r6, sp, #0 mov r5, r8 _0218046c: ldr r1, [sb] add r0, r1, r8, lsl #2 ldr r0, [r0, #0x9c] cmp r4, r0 bne _021804d8 add r0, r1, r8 ldrb r0, [r0, #0x308] cmp r0, #0 beq _021804d8 cmp r8, #0 cmpne r8, #2 cmpne r8, #4 cmpne r8, #7 beq _021804b0 sub r0, r8, #9 cmp r0, #1 bhi _021804d8 _021804b0: mov r0, r6 mov r1, r5 bl func_0201b1bc bl func_02018450 ldr r2, [sb] mov r1, r0 add r0, r2, #0x314 add r2, r0, r7 mov r0, r6 bl func_0202de3c _021804d8: add r8, r8, #1 cmp r8, #0xb add r7, r7, #0x30 blt _0218046c add sp, sp, #0x60 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} .align 2, 0 arm_func_end func_ov37_021803d0 _021804f0: .word data_ov37_02189190 .global func_ov37_021804f4 arm_func_start func_ov37_021804f4 func_ov37_021804f4: ; 0x021804f4 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} sub sp, sp, #0x60 ldr r1, [r0, #8] mov r7, #0 tst r1, #0x10 ldrneb r4, [r0, #0xae] ldr sb, _02180624 ; =data_ov37_02189190 mov r8, r7 mvneq r4, #0 add r6, sp, #0x30 mov r5, r7 _02180520: ldr r1, [sb] add r0, r1, r7, lsl #2 ldr r0, [r0, #0x60] cmp r4, r0 bne _0218057c add r0, r1, r7 ldrb r0, [r0, #0x90] cmp r0, #0 beq _0218057c cmp r7, #0xb cmpne r7, #8 cmpne r7, #0xa bne _0218057c mov r0, r6 mov r1, r5 bl func_0201b1bc bl func_02018450 ldr r2, [sb] mov r1, r0 add r0, r2, #0xc8 add r2, r0, r8 mov r0, r6 bl func_0202de3c _0218057c: add r7, r7, #1 cmp r7, #0xc add r8, r8, #0x30 blt _02180520 mov r8, #0 ldr sb, _02180624 ; =data_ov37_02189190 mov r7, r8 add r6, sp, #0 mov r5, r8 _021805a0: ldr r1, [sb] add r0, r1, r8, lsl #2 ldr r0, [r0, #0x9c] cmp r4, r0 bne _0218060c add r0, r1, r8 ldrb r0, [r0, #0x308] cmp r0, #0 beq _0218060c cmp r8, #0 cmpne r8, #2 cmpne r8, #4 cmpne r8, #7 beq _021805e4 sub r0, r8, #9 cmp r0, #1 bhi _0218060c _021805e4: mov r0, r6 mov r1, r5 bl func_0201b1bc bl func_02018450 ldr r2, [sb] mov r1, r0 add r0, r2, #0x314 add r2, r0, r7 mov r0, r6 bl func_0202de3c _0218060c: add r8, r8, #1 cmp r8, #0xb add r7, r7, #0x30 blt _021805a0 add sp, sp, #0x60 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} .align 2, 0 arm_func_end func_ov37_021804f4 _02180624: .word data_ov37_02189190 .global func_ov37_02180628 arm_func_start func_ov37_02180628 func_ov37_02180628: ; 0x02180628 ldr r2, _0218063c ; =func_ov37_02180290 mov r1, #2 str r2, [r0, #0x24] strb r1, [r0, #0x92] bx lr .align 2, 0 arm_func_end func_ov37_02180628 _0218063c: .word func_ov37_02180290 .global func_ov37_02180640 arm_func_start func_ov37_02180640 func_ov37_02180640: ; 0x02180640 stmdb sp!, {r4, lr} ldr r1, _02180684 ; =func_ov37_021800a4 mov r4, r0 str r1, [r4, #0x14] mov r1, #2 ldr r0, _02180688 ; =func_ov37_02180150 strb r1, [r4, #0x8e] str r0, [r4, #0x1c] strb r1, [r4, #0x90] bl func_ov37_0217be60 cmp r0, #0 ldrne r1, _0218068c ; =func_ov37_021803d0 ldreq r1, _02180690 ; =func_ov37_021804f4 mov r0, #3 str r1, [r4, #0x24] strb r0, [r4, #0x92] ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_02180640 _02180684: .word func_ov37_021800a4 _02180688: .word func_ov37_02180150 _0218068c: .word func_ov37_021803d0 _02180690: .word func_ov37_021804f4 .global func_ov37_02180694 arm_func_start func_ov37_02180694 func_ov37_02180694: ; 0x02180694 ldr r1, _021806b4 ; =func_ov37_021800a4 mov r2, #2 str r1, [r0, #0x14] ldr r1, _021806b8 ; =func_ov37_02180150 strb r2, [r0, #0x8e] str r1, [r0, #0x1c] strb r2, [r0, #0x90] bx lr .align 2, 0 arm_func_end func_ov37_02180694 _021806b4: .word func_ov37_021800a4 _021806b8: .word func_ov37_02180150 .global func_ov37_021806bc arm_func_start func_ov37_021806bc func_ov37_021806bc: ; 0x021806bc ldr ip, _021806cc ; =func_02018cb8 ldr r1, _021806d0 ; =func_ov37_02180628 add r0, r0, #4 bx ip .align 2, 0 arm_func_end func_ov37_021806bc _021806cc: .word func_02018cb8 _021806d0: .word func_ov37_02180628 .global func_ov37_021806d4 arm_func_start func_ov37_021806d4 func_ov37_021806d4: ; 0x021806d4 stmdb sp!, {r3, lr} ldrb r1, [r0, #0x5c] cmp r1, #0 beq _021806f4 ldr r1, _02180704 ; =func_ov37_02180640 add r0, r0, #4 bl func_02018cb8 ldmia sp!, {r3, pc} _021806f4: ldr r1, _02180708 ; =func_ov37_02180694 add r0, r0, #4 bl func_02018cb8 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov37_021806d4 _02180704: .word func_ov37_02180640 _02180708: .word func_ov37_02180694 .global func_ov37_0218070c arm_func_start func_ov37_0218070c func_ov37_0218070c: ; 0x0218070c stmdb sp!, {r3, r4, r5, r6, r7, lr} mov r1, #0 mov r7, r0 blx func_ov00_020a956c ldr r0, _0218075c ; =data_ov37_02188c0c mov r5, #0 str r0, [r7] strb r5, [r7, #0x5c] add r0, r7, #0x500 mov r6, r5 strh r5, [r0, #0xaa] add r4, r7, #0xc8 _0218073c: add r0, r4, r6 bl func_01ff892c add r5, r5, #1 cmp r5, #0xc add r6, r6, #0x30 blt _0218073c mov r0, r7 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 arm_func_end func_ov37_0218070c _0218075c: .word data_ov37_02188c0c .global func_ov37_02180760 arm_func_start func_ov37_02180760 func_ov37_02180760: ; 0x02180760 stmdb sp!, {r3, r4, r5, lr} mov r4, r0 ldr r0, [r4, #8] ldr r1, _02180c00 ; =data_ov37_021881fc add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0x60] ldr r0, [r4, #8] ldr r1, _02180c04 ; =data_ov37_02188210 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0x64] ldr r0, [r4, #8] ldr r1, _02180c08 ; =data_ov37_02188224 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0x68] ldr r0, [r4, #8] ldr r1, _02180c0c ; =data_ov37_02188238 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0x6c] ldr r0, [r4, #8] ldr r1, _02180c10 ; =data_ov37_0218824c add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0x70] ldr r0, [r4, #8] ldr r1, _02180c14 ; =data_ov37_02188260 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0x74] ldr r0, [r4, #8] ldr r1, _02180c18 ; =data_ov37_02188274 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0x78] ldr r0, [r4, #8] ldr r1, _02180c1c ; =data_ov37_02188288 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0x7c] ldr r0, [r4, #8] ldr r1, _02180c20 ; =data_ov37_0218829c add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0x80] ldr r0, [r4, #8] ldr r1, _02180c24 ; =data_ov37_021882b0 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0x84] ldr r0, [r4, #8] ldr r1, _02180c28 ; =data_ov37_021882c4 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0x88] ldr r0, [r4, #8] ldr r1, _02180c2c ; =data_ov37_021882d8 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0x8c] ldr r0, [r4, #8] ldr r1, _02180c30 ; =data_ov37_021882ec add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0x9c] ldr r0, [r4, #8] ldr r1, _02180c34 ; =data_ov37_02188300 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0xa0] ldr r0, [r4, #8] ldr r1, _02180c38 ; =data_ov37_02188314 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0xa4] ldr r0, [r4, #8] ldr r1, _02180c3c ; =data_ov37_02188328 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0xa8] ldr r0, [r4, #8] ldr r1, _02180c40 ; =data_ov37_0218833c add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0xac] ldr r0, [r4, #8] ldr r1, _02180c44 ; =data_ov37_02188350 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0xb4] ldr r0, [r4, #8] ldr r1, _02180c48 ; =data_ov37_02188364 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0xb8] ldr r0, [r4, #8] ldr r1, _02180c4c ; =data_ov37_02188378 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0xbc] ldr r0, [r4, #8] ldr r1, _02180c50 ; =data_ov37_0218838c add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0xc0] ldr r0, [r4, #8] ldr r1, _02180c54 ; =data_ov37_021883a0 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0xb0] ldr r0, [r4, #8] ldr r1, _02180c58 ; =data_ov37_021883b4 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0xc4] ldr r2, [r4, #8] ldr r1, _02180c5c ; =data_ov37_021883c8 ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x524] ldr r2, [r4, #8] ldr r1, _02180c60 ; =data_ov37_021883dc ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x528] ldr r2, [r4, #8] ldr r1, _02180c64 ; =data_ov37_021883f0 ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x52c] ldr r2, [r4, #8] ldr r1, _02180c68 ; =data_ov37_02188404 ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x530] ldr r2, [r4, #8] ldr r1, _02180c6c ; =data_ov37_02188418 ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x534] ldr r2, [r4, #8] ldr r1, _02180c70 ; =data_ov37_0218842c ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x538] ldr r2, [r4, #8] ldr r0, [r2, #8] ldr r1, _02180c74 ; =data_ov37_02188440 add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x540] ldr r2, [r4, #8] ldr r1, _02180c78 ; =data_ov37_02188454 ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x544] ldr r2, [r4, #8] ldr r1, _02180c7c ; =data_ov37_02188468 ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x53c] ldr r2, [r4, #8] ldr r1, _02180c80 ; =data_ov37_0218847c ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x548] ldr r2, [r4, #8] ldr r1, _02180c84 ; =data_ov37_02188490 ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x58c] ldr r1, [r4, #8] ldr r0, [r1, #8] add r0, r1, r0 ldr r1, _02180c88 ; =data_ov37_021884a4 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x590] ldr r2, [r4, #8] ldr r1, _02180c8c ; =data_ov37_021884b8 ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x594] ldr r2, [r4, #8] ldr r1, _02180c90 ; =data_ov37_021884cc ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x598] ldr r2, [r4, #8] ldr r1, _02180c94 ; =data_ov37_021884e0 ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x59c] ldr r2, [r4, #8] ldr r1, _02180c98 ; =data_ov37_021884f4 ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x5a0] mov r2, #0 mov r1, #1 b _02180b0c _02180b00: add r0, r4, r2 strb r1, [r0, #0x90] add r2, r2, #1 _02180b0c: cmp r2, #0xc blt _02180b00 mov r2, #0 mov r1, r2 b _02180b2c _02180b20: add r0, r4, r2 strb r1, [r0, #0x308] add r2, r2, #1 _02180b2c: cmp r2, #0xb blt _02180b20 mov r2, #0 mov r1, r2 b _02180b4c _02180b40: add r0, r4, r2, lsl #2 str r1, [r0, #0x54c] add r2, r2, #1 _02180b4c: cmp r2, #0xa blt _02180b40 mov r2, #0 mov r1, #1 b _02180b6c _02180b60: add r0, r4, r2 strb r1, [r0, #0x5a4] add r2, r2, #1 _02180b6c: cmp r2, #6 blt _02180b60 ldr r0, _02180c9c ; =data_027e0fec ldr r1, _02180ca0 ; =data_ov37_02187e2c ldr r0, [r0] add r0, r0, #0x1340 ldr r5, [r0, #8] mov r0, r5 bl func_ov37_0217fffc str r0, [r4, #0x574] ldr r1, _02180ca4 ; =data_ov37_02187e40 mov r0, r5 bl func_ov37_02180030 str r0, [r4, #0x578] ldr r1, _02180ca8 ; =data_ov37_02187e54 mov r0, r5 bl func_ov37_0217fffc str r0, [r4, #0x57c] ldr r1, _02180cac ; =data_ov37_02187e68 mov r0, r5 bl func_ov37_02180030 str r0, [r4, #0x580] ldr r1, _02180cb0 ; =data_ov37_02187e7c mov r0, r5 bl func_ov37_0217fffc str r0, [r4, #0x584] ldr r1, _02180cb4 ; =data_ov37_02187e90 mov r0, r5 bl func_ov37_02180030 add r1, r4, #0x1ac add r1, r1, #0x400 str r0, [r4, #0x588] ldr r2, _02180cb8 ; =data_ov37_02189190 mov r0, r4 str r4, [r2] bl func_ov00_020a9960 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov37_02180760 _02180c00: .word data_ov37_021881fc _02180c04: .word data_ov37_02188210 _02180c08: .word data_ov37_02188224 _02180c0c: .word data_ov37_02188238 _02180c10: .word data_ov37_0218824c _02180c14: .word data_ov37_02188260 _02180c18: .word data_ov37_02188274 _02180c1c: .word data_ov37_02188288 _02180c20: .word data_ov37_0218829c _02180c24: .word data_ov37_021882b0 _02180c28: .word data_ov37_021882c4 _02180c2c: .word data_ov37_021882d8 _02180c30: .word data_ov37_021882ec _02180c34: .word data_ov37_02188300 _02180c38: .word data_ov37_02188314 _02180c3c: .word data_ov37_02188328 _02180c40: .word data_ov37_0218833c _02180c44: .word data_ov37_02188350 _02180c48: .word data_ov37_02188364 _02180c4c: .word data_ov37_02188378 _02180c50: .word data_ov37_0218838c _02180c54: .word data_ov37_021883a0 _02180c58: .word data_ov37_021883b4 _02180c5c: .word data_ov37_021883c8 _02180c60: .word data_ov37_021883dc _02180c64: .word data_ov37_021883f0 _02180c68: .word data_ov37_02188404 _02180c6c: .word data_ov37_02188418 _02180c70: .word data_ov37_0218842c _02180c74: .word data_ov37_02188440 _02180c78: .word data_ov37_02188454 _02180c7c: .word data_ov37_02188468 _02180c80: .word data_ov37_0218847c _02180c84: .word data_ov37_02188490 _02180c88: .word data_ov37_021884a4 _02180c8c: .word data_ov37_021884b8 _02180c90: .word data_ov37_021884cc _02180c94: .word data_ov37_021884e0 _02180c98: .word data_ov37_021884f4 _02180c9c: .word data_027e0fec _02180ca0: .word data_ov37_02187e2c _02180ca4: .word data_ov37_02187e40 _02180ca8: .word data_ov37_02187e54 _02180cac: .word data_ov37_02187e68 _02180cb0: .word data_ov37_02187e7c _02180cb4: .word data_ov37_02187e90 _02180cb8: .word data_ov37_02189190 .global func_ov37_02180cbc arm_func_start func_ov37_02180cbc func_ov37_02180cbc: ; 0x02180cbc add r0, r0, r1, lsl #2 str r2, [r0, #0x54c] bx lr arm_func_end func_ov37_02180cbc .global func_ov37_02180cc8 arm_func_start func_ov37_02180cc8 func_ov37_02180cc8: ; 0x02180cc8 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} sub sp, sp, #8 mov r8, r0 add r3, r8, #0x20c add r2, r8, #0x20 add r3, r3, #0xc00 mov r4, r1 bl func_ov00_020c5c2c ldr r1, _02180f04 ; =data_ov37_02188bf8 add r0, r8, #0x20 str r1, [r8] bl func_ov37_0218070c add r0, r8, #0x20c add r0, r0, #0xc00 add r1, r0, #0x24 mov r2, #0 blx func_ov00_020c0c08 add r0, r8, #0x38c ldr r2, _02180f08 ; =data_ov37_02188c68 mov r1, r4 add r0, r0, #0xc00 str r2, [r8, #0xe0c] bl func_ov37_0217fe68 add r0, r8, #0x108 mov r1, r4 add r0, r0, #0x1000 bl func_ov37_0217fe68 add r0, r8, #0x284 add r0, r0, #0x1000 mov r1, r4 bl func_ov37_0217fe68 mov r1, r4 add r0, r8, #0x1400 bl func_ov37_0217fe68 mov r4, #0 add r1, r8, #0x1000 str r4, [r1, #0x5a4] str r4, [r1, #0x5a8] str r4, [r1, #0x5ac] add r0, r8, #0x1cc str r4, [r1, #0x5b0] add r0, r0, #0x1400 str r0, [r1, #0x5b8] add r0, r8, #0xbc add r0, r0, #0x2000 str r0, [r1, #0x5bc] mov r0, #0xaf0 str r0, [r1, #0x5c0] str r4, [r1, #0x5c8] add r1, r8, #0x2000 str r4, [r1, #0xbb0] add r0, r8, #0x3b4 str r4, [r1, #0xbb4] add r0, r0, #0x2800 sub r2, r4, #1 stmib r0, {r2, r4} str r4, [r1, #0xbc0] add r0, r8, #0x2bc0 stmib r0, {r2, r4} add r0, r8, #0x28c mov r5, r4 mov r6, r4 add sb, r0, #0xc00 mov r7, r4 _02180dc8: add r0, sb, r5 bl func_01ff80d4 add r0, r8, r6 str r7, [r0, #0xf1c] str r7, [r0, #0xf20] add r4, r4, #1 str r7, [r0, #0xf24] cmp r4, #4 add r5, r5, #0x24 add r6, r6, #0xc blt _02180dc8 mov r2, r8 mov r1, #0 _02180dfc: add r0, r2, #0x1000 str r1, [r0, #0x58c] str r1, [r0, #0x590] add r7, r7, #1 str r1, [r0, #0x594] cmp r7, #2 add r2, r2, #0xc blt _02180dfc ldr r0, _02180f0c ; =data_027e0fec ldr r5, [r0] add r0, r5, #0x1340 bl func_ov00_020c4588 mov r4, r0 add r0, r5, #0x1340 bl func_ov00_020c45b0 mov r2, r0 ldr r3, _02180f10 ; =data_ov37_02187ea4 mov r0, r8 mov r1, r4 bl func_ov00_020c5c64 add r0, r8, #0x20 bl func_ov37_02180760 mov r2, #0 mov r1, r2 _02180e5c: add r0, r8, r2, lsl #2 add r2, r2, #1 str r1, [r0, #0xf7c] add r0, r0, #0x1000 str r1, [r0, #0x57c] cmp r2, #4 blt _02180e5c add r0, r8, #0x38c add r1, r8, #0x108 add r2, r8, #0x284 add r3, r0, #0xc00 add r0, r8, #0x1000 str r3, [r0, #0x57c] add r1, r1, #0x1000 str r1, [r0, #0x580] add r1, r2, #0x1000 str r1, [r0, #0x584] add r1, r8, #0x1400 add r4, r8, #0x1a4 mov r2, #0x800 ldr r3, _02180f14 ; =0x00000333 str r1, [r0, #0x588] ldr r1, _02180f18 ; =0x00001610 str r3, [sp] ldr r0, _02180f0c ; =data_027e0fec str r1, [sp, #4] ldr r0, [r0] mov r3, r2 add r0, r0, #0x1000 ldr r1, [r0, #0x348] add r0, r4, #0x1400 bl func_ov17_02168660 ldr r0, _02180f1c ; =0x0000100e add r1, r8, #0x2000 str r0, [r1, #0xbb8] mov r2, #2 str r2, [r1, #0xbbc] str r0, [r1, #0xbc4] mov r0, r8 str r2, [r1, #0xbc8] add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} .align 2, 0 arm_func_end func_ov37_02180cc8 _02180f04: .word data_ov37_02188bf8 _02180f08: .word data_ov37_02188c68 _02180f0c: .word data_027e0fec _02180f10: .word data_ov37_02187ea4 _02180f14: .word 0x00000333 _02180f18: .word 0x00001610 _02180f1c: .word 0x0000100e .global func_ov37_02180f20 arm_func_start func_ov37_02180f20 func_ov37_02180f20: ; 0x02180f20 stmdb sp!, {r4, lr} mov r4, r0 blx func_ov00_020a95ec mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov37_02180f20 .global func_ov37_02180f34 arm_func_start func_ov37_02180f34 func_ov37_02180f34: ; 0x02180f34 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x1a4 add r0, r0, #0x1400 bl func_ov17_021687f0 mov r0, r4 bl func_ov00_020c5e58 ldmia sp!, {r4, pc} arm_func_end func_ov37_02180f34 .global func_ov37_02180f54 arm_func_start func_ov37_02180f54 func_ov37_02180f54: ; 0x02180f54 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x314 mov r5, r0 ldr r0, [r5, #0x1c] ldr r1, [r5, #0x10] add r0, r0, #0x2000 ldr r0, [r0, #0xfa0] ldr r4, [r1, #0x14] cmp r0, #1 bne _0218104c ldr r0, [r5, #0x14] cmp r0, #0xb addls pc, pc, r0, lsl #2 b _0218104c _02180f8c: ; jump table b _0218104c ; case 0 b _0218104c ; case 1 b _02180fbc ; case 2 b _02181020 ; case 3 b _02181020 ; case 4 b _0218104c ; case 5 b _02181020 ; case 6 b _02181020 ; case 7 b _0218104c ; case 8 b _02181020 ; case 9 b _02181020 ; case 10 b _02181020 ; case 11 _02180fbc: add r0, r1, #0xc mov r1, #0x1000 bl func_0202e310 cmp r0, #0 beq _02180fec ldr r1, [r5, #0x1c] ldr r0, _02181ed4 ; =data_027e0ffc add r2, r1, #0x48 mov r1, #0x2b8 mov r3, #0 bl func_ov00_020ceacc b _0218104c _02180fec: ldr r0, [r5, #0x10] mov r1, #0x29000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _0218104c ldr r1, [r5, #0x1c] ldr r0, _02181ed4 ; =data_027e0ffc add r2, r1, #0x48 mov r1, #0x2b8 mov r3, #0 bl func_ov00_020ceacc b _0218104c _02181020: add r0, r1, #0xc mov r1, #0x1000 bl func_0202e310 cmp r0, #0 beq _0218104c ldr r1, [r5, #0x1c] ldr r0, _02181ed4 ; =data_027e0ffc add r2, r1, #0x48 mov r1, #0x2b8 mov r3, #0 bl func_ov00_020ceacc _0218104c: ldr r0, [r5, #0x14] cmp r0, #0xd addls pc, pc, r0, lsl #2 b _0218343c _0218105c: ; jump table b _02181094 ; case 0 b _0218343c ; case 1 b _02181b64 ; case 2 b _02181d00 ; case 3 b _02182070 ; case 4 b _02181864 ; case 5 b _0218343c ; case 6 b _0218343c ; case 7 b _0218343c ; case 8 b _0218343c ; case 9 b _02182368 ; case 10 b _02182438 ; case 11 b _0218343c ; case 12 b _02182508 ; case 13 _02181094: ldr r0, [r5, #0x10] mov r1, #0x1000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _021810d8 mov r0, #2 str r0, [sp] ldr r0, _02181ed8 ; =data_027e0e58 ldr r2, [r5, #0x1c] add r1, r5, #0xbb0 ldr r0, [r0] add r1, r1, #0x2000 add r3, r2, #0x48 mov r2, #0x1000 bl func_ov00_0207c1f8 b _021810fc _021810d8: ldr r0, [r5, #0x10] mov r1, #0x5a000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _021810fc add r0, r5, #0xbb0 add r0, r0, #0x2000 bl func_ov00_020b7e6c _021810fc: ldr r0, [r5, #0x10] mov r1, #0x68000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02181204 ldr r0, _02181edc ; =data_ov37_02187fbc add r3, sp, #0x2fc ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r7, [r5, #0x1c] ldr r1, _02181ee0 ; =data_02050f54 ldrh r0, [r7, #0x78] ldr r2, [r7, #0x48] ldr r3, [sp, #0x304] mov r0, r0, asr #0x4 mov r6, r0, lsl #0x1 add r0, r6, #1 mov r6, r6, lsl #0x1 ldrsh r8, [r1, r6] mov r0, r0, lsl #0x1 ldrsh r1, [r1, r0] smull r6, sb, r3, r8 adds sl, r6, #0x800 str r2, [sp, #0x308] adc sb, sb, #0 mov sl, sl, lsr #0xc orr sl, sl, sb, lsl #20 add r2, r2, sl smull sl, sb, r3, r1 adds sl, sl, #0x800 ldr r6, [r7, #0x4c] ldr r0, [sp, #0x2fc] adc r3, sb, #0 mov fp, sl, lsr #0xc str r6, [sp, #0x30c] orr fp, fp, r3, lsl #20 smull sl, sb, r0, r1 ldr r3, [r7, #0x50] rsb r8, r8, #0 add r1, r3, fp smull r7, r3, r0, r8 adds r8, sl, #0x800 adc r0, sb, #0 mov r8, r8, lsr #0xc orr r8, r8, r0, lsl #20 add r0, r2, r8 adds r2, r7, #0x800 ldr r7, [sp, #0x300] str r0, [sp, #0x308] adc r0, r3, #0 mov r2, r2, lsr #0xc orr r2, r2, r0, lsl #20 add r0, r1, r2 add r6, r6, r7 str r0, [sp, #0x310] str r6, [sp, #0x30c] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02181ee4 ; =0x00001018 ldr r0, [r0] add r2, sp, #0x308 mov r3, #2 bl func_ov00_0207c1b0 _02181204: ldr r0, [r5, #0x10] mov r1, #0xc0000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _0218130c ldr r0, _02181ee8 ; =data_ov37_02187fc8 add r3, sp, #0x2e4 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r7, [r5, #0x1c] ldr r1, _02181ee0 ; =data_02050f54 ldrh r0, [r7, #0x78] ldr r2, [r7, #0x48] ldr r3, [sp, #0x2ec] mov r0, r0, asr #0x4 mov r6, r0, lsl #0x1 add r0, r6, #1 mov r6, r6, lsl #0x1 ldrsh r8, [r1, r6] mov r0, r0, lsl #0x1 ldrsh r1, [r1, r0] smull r6, sb, r3, r8 adds sl, r6, #0x800 str r2, [sp, #0x2f0] adc sb, sb, #0 mov sl, sl, lsr #0xc orr sl, sl, sb, lsl #20 add r2, r2, sl smull sl, sb, r3, r1 adds sl, sl, #0x800 ldr r6, [r7, #0x4c] ldr r0, [sp, #0x2e4] adc r3, sb, #0 mov fp, sl, lsr #0xc str r6, [sp, #0x2f4] orr fp, fp, r3, lsl #20 smull sl, sb, r0, r1 ldr r3, [r7, #0x50] rsb r8, r8, #0 add r1, r3, fp smull r7, r3, r0, r8 adds r8, sl, #0x800 adc r0, sb, #0 mov r8, r8, lsr #0xc orr r8, r8, r0, lsl #20 add r0, r2, r8 adds r2, r7, #0x800 ldr r7, [sp, #0x2e8] str r0, [sp, #0x2f0] adc r0, r3, #0 mov r2, r2, lsr #0xc orr r2, r2, r0, lsl #20 add r0, r1, r2 add r6, r6, r7 str r0, [sp, #0x2f8] str r6, [sp, #0x2f4] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02181eec ; =0x00001017 ldr r0, [r0] add r2, sp, #0x2f0 mov r3, #2 bl func_ov00_0207c1b0 _0218130c: cmp r4, #0x1000 ble _0218133c cmp r4, #0x68000 bge _0218133c ldr r2, [r5, #0x1c] mov r0, #0 str r0, [sp] ldr r3, [r2, #8] ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02181ef0 ; =0x000002a6 add r2, r2, #0x48 bl func_ov00_020cec60 _0218133c: ldr r0, [r5, #0x10] mov r1, #0x52000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02181388 ldr r0, [r5, #0x1c] add r3, sp, #0x2d8 add r0, r0, #0x48 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r1, [sp, #0x2dc] mov r2, r3 add r4, r1, #0x3000 ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02181ef4 ; =0x000002a7 mov r3, #0 str r4, [sp, #0x2dc] bl func_ov00_020ceacc _02181388: ldr r0, [r5, #0x10] mov r1, #0x58000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02181480 ldr r0, _02181ef8 ; =data_ov37_02187fd4 add r3, sp, #0x2c0 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02181ee0 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x2c8] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x2cc] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x2c4] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x2d0] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x2c0] orr sb, sb, r8, lsl #20 str sl, [sp, #0x2d0] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r6, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r4, r0, r3 ldr r0, _02181ed4 ; =data_027e0ffc add r2, sp, #0x2cc mov r3, #0 mov r1, #0x2a8 str r6, [sp, #0x2cc] str r4, [sp, #0x2d4] bl func_ov00_020ceacc _02181480: ldr r0, [r5, #0x10] mov r1, #0x5c000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02181578 ldr r0, _02181efc ; =data_ov37_02187fe0 add r3, sp, #0x2a8 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02181ee0 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x2b0] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x2b4] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x2ac] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x2b8] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x2a8] orr sb, sb, r8, lsl #20 str sl, [sp, #0x2b8] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r6, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r4, r0, r3 ldr r0, _02181ed4 ; =data_027e0ffc add r2, sp, #0x2b4 mov r3, #0 mov r1, #0x2a8 str r6, [sp, #0x2b4] str r4, [sp, #0x2bc] bl func_ov00_020ceacc _02181578: ldr r0, [r5, #0x10] mov r1, #0x68000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02181670 ldr r0, _02181f00 ; =data_ov37_02187fec add r3, sp, #0x290 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02181ee0 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x298] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x29c] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x294] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x2a0] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x290] orr sb, sb, r8, lsl #20 str sl, [sp, #0x2a0] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r6, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r4, r0, r3 ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02181f04 ; =0x000002a9 add r2, sp, #0x29c mov r3, #0 str r6, [sp, #0x29c] str r4, [sp, #0x2a4] bl func_ov00_020ceacc _02181670: ldr r0, [r5, #0x10] mov r1, #0xc0000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02181768 ldr r0, _02181f08 ; =data_ov37_02187ff8 add r3, sp, #0x278 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02181ee0 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x280] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x284] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x27c] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x288] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x278] orr sb, sb, r8, lsl #20 str sl, [sp, #0x288] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r6, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r4, r0, r3 ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02181f0c ; =0x000002ab add r2, sp, #0x284 mov r3, #0 str r6, [sp, #0x284] str r4, [sp, #0x28c] bl func_ov00_020ceacc _02181768: ldr r0, [r5, #0x10] mov r1, #0xc8000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _0218343c ldr r0, _02181f10 ; =data_ov37_02188004 add r3, sp, #0x260 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02181ee0 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x268] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x26c] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x264] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x270] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x260] orr sb, sb, r8, lsl #20 str sl, [sp, #0x270] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r6, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r4, r0, r3 ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02181f14 ; =0x000002aa add r2, sp, #0x26c mov r3, #0 str r6, [sp, #0x26c] str r4, [sp, #0x274] bl func_ov00_020ceacc b _0218343c _02181864: ldr r0, [r5, #0x10] mov r1, #0x1000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02181894 ldr r2, [r5, #0x1c] ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02181f18 ; =0x000002b7 add r2, r2, #0x48 mov r3, #0 bl func_ov00_020ceacc _02181894: ldr r0, [r5, #0x10] mov r1, #0x3f000 ldr r2, [r0, #0x1c] add r0, r0, #0xc sub r4, r2, #0x1000 bl func_0202e310 cmp r0, #0 beq _02181908 mov r0, #2 str r0, [sp] ldr r0, _02181ed8 ; =data_027e0e58 ldr r2, [r5, #0x1c] add r1, r5, #0xbb0 ldr r0, [r0] add r1, r1, #0x2000 add r3, r2, #0x48 mov r2, #0x1000 bl func_ov00_0207c1f8 mov r0, #0 str r0, [sp] str r0, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r2, [r5, #0x1c] ldr r0, [r0] ldr r1, _02181f1c ; =0x00001006 add r2, r2, #0x48 mov r3, #2 bl func_ov00_0207c1b0 b _0218192c _02181908: ldr r0, [r5, #0x10] mov r1, r4 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _0218192c add r0, r5, #0xbb0 add r0, r0, #0x2000 bl func_ov00_020b7e6c _0218192c: ldr r0, [r5, #0x10] mov r1, #0x48000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02181a58 ldr r0, _02181f20 ; =data_ov37_02188010 add r3, sp, #0x248 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02181ee0 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x250] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x254] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x24c] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x258] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x248] orr sb, sb, r8, lsl #20 str sl, [sp, #0x258] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r4, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r0, r0, r3 str r0, [sp, #0x25c] str r4, [sp, #0x254] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02181f24 ; =0x0000100f ldr r0, [r0] add r2, sp, #0x254 mov r3, #2 bl func_ov00_0207c1b0 mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02181f28 ; =0x00001010 ldr r0, [r0] add r2, sp, #0x254 mov r3, #2 bl func_ov00_0207c1b0 _02181a58: ldr r0, [r5, #0x10] mov r1, #0x5b000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _0218343c ldr r0, _02181f2c ; =data_ov37_0218801c add r3, sp, #0x230 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02181ee0 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x238] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x23c] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x234] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x240] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x230] orr sb, sb, r8, lsl #20 str sl, [sp, #0x240] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r4, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r0, r0, r3 str r0, [sp, #0x244] str r4, [sp, #0x23c] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02181f30 ; =0x00001011 ldr r0, [r0] add r2, sp, #0x23c mov r3, #2 bl func_ov00_0207c1b0 b _0218343c _02181b64: ldr r0, [r5, #0x10] mov r1, #0x19000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02181c30 mov r0, r5 mov r1, #0 bl func_ov37_02183df8 add r3, sp, #0x224 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, _02181f34 ; =data_027e0e60 ldr r6, [sp, #0x224] ldr r4, [sp, #0x228] ldr r3, [sp, #0x22c] ldr r0, [r0] add r1, sp, #0x44 mov r2, #1 str r6, [sp, #0x44] str r4, [sp, #0x48] str r3, [sp, #0x4c] bl func_ov00_02083ee0 str r0, [sp, #0x228] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02181f38 ; =0x00000153 ldr r0, [r0] add r2, sp, #0x224 mov r3, #2 bl func_ov00_0207c1b0 ldrb r0, [r5, #0xb7] add r2, sp, #0x224 mov r3, #0 cmp r0, #0 beq _02181c0c ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02181f0c ; =0x000002ab bl func_ov00_020ceacc b _02181c18 _02181c0c: ldr r0, _02181ed4 ; =data_027e0ffc mov r1, #0x2ac bl func_ov00_020ceacc _02181c18: ldr r0, [r5, #0x1c] mov r1, r5 ldr r3, [r0] mov r2, #0 ldr r3, [r3, #0xb0] blx r3 _02181c30: ldr r0, [r5, #0x10] mov r1, #0x41000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _0218343c mov r0, r5 mov r1, #1 bl func_ov37_02183df8 add r3, sp, #0x218 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, _02181f34 ; =data_027e0e60 ldr r6, [sp, #0x218] ldr r4, [sp, #0x21c] ldr r3, [sp, #0x220] ldr r0, [r0] add r1, sp, #0x38 mov r2, #1 str r6, [sp, #0x38] str r4, [sp, #0x3c] str r3, [sp, #0x40] bl func_ov00_02083ee0 str r0, [sp, #0x21c] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02181f38 ; =0x00000153 ldr r0, [r0] add r2, sp, #0x218 mov r3, #2 bl func_ov00_0207c1b0 ldrb r0, [r5, #0xb9] add r2, sp, #0x218 mov r3, #0 cmp r0, #0 beq _02181cd8 ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02181f0c ; =0x000002ab bl func_ov00_020ceacc b _02181ce4 _02181cd8: ldr r0, _02181ed4 ; =data_027e0ffc mov r1, #0x2ac bl func_ov00_020ceacc _02181ce4: ldr r0, [r5, #0x1c] mov r1, r5 ldr r3, [r0] mov r2, #1 ldr r3, [r3, #0xb0] blx r3 b _0218343c _02181d00: ldr r0, [r5, #0x10] mov r1, #0x24000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02181e2c ldr r0, _02181f3c ; =data_ov37_02188028 add r3, sp, #0x200 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr sl, [r5, #0x1c] ldr r1, _02181ee0 ; =data_02050f54 ldrh r0, [sl, #0x78] ldr sb, [sl, #0x48] ldr r6, [sp, #0x208] mov r0, r0, asr #0x4 mov r2, r0, lsl #0x1 add r0, r2, #1 mov r2, r2, lsl #0x1 ldrsh r2, [r1, r2] mov r0, r0, lsl #0x1 ldrsh r3, [r1, r0] smull r1, ip, r6, r2 ldr r0, [sp, #0x200] str sb, [sp, #0x20c] ldr r8, [sl, #0x4c] ldr r7, [sp, #0x204] adds lr, r1, #0x800 rsb fp, r2, #0 smull r2, r1, r6, r3 adc r6, ip, #0 mov ip, lr, lsr #0xc orr ip, ip, r6, lsl #20 adds r2, r2, #0x800 smull r6, r3, r0, r3 str r8, [sp, #0x210] add r7, r8, r7 adc r8, r1, #0 mov r2, r2, lsr #0xc adds r1, r6, #0x800 ldr r6, [sl, #0x50] orr r2, r2, r8, lsl #20 smull sl, r8, r0, fp adc r0, r3, #0 adds r3, sl, #0x800 mov sl, r1, lsr #0xc adc r1, r8, #0 mov r3, r3, lsr #0xc orr sl, sl, r0, lsl #20 add r8, sb, ip add r8, r8, sl add r0, r6, r2 orr r3, r3, r1, lsl #20 add r0, r0, r3 str r7, [sp, #0x210] str r8, [sp, #0x20c] str r0, [sp, #0x214] ldrb r0, [r5, #0xb1] mov r3, #0 add r2, sp, #0x20c cmp r0, #0 beq _02181e08 ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02181f40 ; =0x000002ae bl func_ov00_020ceacc b _02181e14 _02181e08: ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02181f44 ; =0x000002af bl func_ov00_020ceacc _02181e14: ldr r0, [r5, #0x1c] mov r1, r5 ldr r3, [r0] mov r2, #2 ldr r3, [r3, #0xb0] blx r3 _02181e2c: ldr r0, [r5, #0x10] mov r1, #0x24000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02181f70 mov r0, r5 mov r1, #0 bl func_ov37_02183df8 add r3, sp, #0x1f4 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, _02181f34 ; =data_027e0e60 ldr r2, [sp, #0x1f4] ldr r6, [sp, #0x1f8] ldr r3, [sp, #0x1fc] str r2, [sp, #0x2c] ldr r0, [r0] add r1, sp, #0x2c mov r2, #1 str r6, [sp, #0x30] str r3, [sp, #0x34] bl func_ov00_02083ee0 str r0, [sp, #0x1f8] mov r0, #0 str r0, [sp] str r0, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02181f38 ; =0x00000153 ldr r0, [r0] add r2, sp, #0x1f4 mov r3, #2 bl func_ov00_0207c1b0 ldrb r0, [r5, #0xb7] add r2, sp, #0x1f4 mov r3, #0 cmp r0, #0 beq _02181f4c ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02181f0c ; =0x000002ab bl func_ov00_020ceacc b _02181f58 .align 2, 0 arm_func_end func_ov37_02180f54 _02181ed4: .word data_027e0ffc _02181ed8: .word data_027e0e58 _02181edc: .word data_ov37_02187fbc _02181ee0: .word data_02050f54 _02181ee4: .word 0x00001018 _02181ee8: .word data_ov37_02187fc8 _02181eec: .word 0x00001017 _02181ef0: .word 0x000002a6 _02181ef4: .word 0x000002a7 _02181ef8: .word data_ov37_02187fd4 _02181efc: .word data_ov37_02187fe0 _02181f00: .word data_ov37_02187fec _02181f04: .word 0x000002a9 _02181f08: .word data_ov37_02187ff8 _02181f0c: .word 0x000002ab _02181f10: .word data_ov37_02188004 _02181f14: .word 0x000002aa _02181f18: .word 0x000002b7 _02181f1c: .word 0x00001006 _02181f20: .word data_ov37_02188010 _02181f24: .word 0x0000100f _02181f28: .word 0x00001010 _02181f2c: .word data_ov37_0218801c _02181f30: .word 0x00001011 _02181f34: .word data_027e0e60 _02181f38: .word 0x00000153 _02181f3c: .word data_ov37_02188028 _02181f40: .word 0x000002ae _02181f44: .word 0x000002af _02181f48: .word data_ov37_02188034 _02181f4c: ldr r0, _02181ed4 ; =data_027e0ffc mov r1, #0x2ac bl func_ov00_020ceacc _02181f58: ldr r0, [r5, #0x1c] mov r1, r5 ldr r3, [r0] mov r2, #0 ldr r3, [r3, #0xb0] blx r3 _02181f70: cmp r4, #0xb000 ble _0218343c cmp r4, #0x24000 bge _0218343c ldr r0, _02181f48 ; =data_ov37_02188034 add r3, sp, #0x1dc ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02181ee0 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x1e4] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x1e8] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x1e0] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x1ec] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x1dc] orr sb, sb, r8, lsl #20 str sl, [sp, #0x1ec] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r4, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r0, r0, r1 add r0, r0, r3 str r0, [sp, #0x1f0] str r4, [sp, #0x1e8] mov r0, #0 str r0, [sp] ldr r1, [r5, #0x1c] ldr r0, _02181ed4 ; =data_027e0ffc ldr r3, [r1, #8] ldr r1, _02182fd4 ; =0x000002ad add r2, sp, #0x1e8 bl func_ov00_020cec60 b _0218343c _02182070: ldr r0, [r5, #0x10] mov r1, #0x24000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _0218219c ldr r0, _02182fd8 ; =data_ov37_02188040 add r3, sp, #0x1c4 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr ip, [r5, #0x1c] ldr r1, _02181ee0 ; =data_02050f54 ldrh r0, [ip, #0x78] ldr fp, [ip, #0x48] ldr r8, [sp, #0x1cc] mov r0, r0, asr #0x4 mov r2, r0, lsl #0x1 add r0, r2, #1 mov r2, r2, lsl #0x1 ldrsh r2, [r1, r2] mov r0, r0, lsl #0x1 ldrsh r3, [r1, r0] smull r1, r6, r8, r2 adds r7, r1, #0x800 rsb lr, r2, #0 str fp, [sp, #0x1d0] ldr sl, [ip, #0x4c] smull r2, r1, r8, r3 ldr sb, [sp, #0x1c8] adc r6, r6, #0 adds r2, r2, #0x800 mov r7, r7, lsr #0xc orr r7, r7, r6, lsl #20 ldr r0, [sp, #0x1c4] add r8, sl, sb smull r6, r3, r0, r3 adc sb, r1, #0 mov r2, r2, lsr #0xc str sl, [sp, #0x1d4] orr r2, r2, sb, lsl #20 adds r1, r6, #0x800 smull sl, sb, r0, lr ldr r6, [ip, #0x50] adc r0, r3, #0 adds r3, sl, #0x800 mov sl, r1, lsr #0xc orr sl, sl, r0, lsl #20 add r7, fp, r7 add r7, r7, sl add r0, r6, r2 adc r1, sb, #0 mov r3, r3, lsr #0xc orr r3, r3, r1, lsl #20 add r0, r0, r3 str r8, [sp, #0x1d4] str r7, [sp, #0x1d0] str r0, [sp, #0x1d8] ldrb r0, [r5, #0xb3] mov r3, #0 add r2, sp, #0x1d0 cmp r0, #0 beq _02182178 ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02181f40 ; =0x000002ae bl func_ov00_020ceacc b _02182184 _02182178: ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02181f44 ; =0x000002af bl func_ov00_020ceacc _02182184: ldr r0, [r5, #0x1c] mov r1, r5 ldr r3, [r0] mov r2, #3 ldr r3, [r3, #0xb0] blx r3 _0218219c: ldr r0, [r5, #0x10] mov r1, #0x24000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02182268 mov r0, r5 mov r1, #1 bl func_ov37_02183df8 add r3, sp, #0x1b8 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, _02181f34 ; =data_027e0e60 ldr r2, [sp, #0x1b8] ldr r6, [sp, #0x1bc] ldr r3, [sp, #0x1c0] str r2, [sp, #0x20] ldr r0, [r0] add r1, sp, #0x20 mov r2, #1 str r6, [sp, #0x24] str r3, [sp, #0x28] bl func_ov00_02083ee0 str r0, [sp, #0x1bc] mov r0, #0 str r0, [sp] str r0, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02181f38 ; =0x00000153 ldr r0, [r0] add r2, sp, #0x1b8 mov r3, #2 bl func_ov00_0207c1b0 ldrb r0, [r5, #0xb9] add r2, sp, #0x1b8 mov r3, #0 cmp r0, #0 beq _02182244 ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02181f0c ; =0x000002ab bl func_ov00_020ceacc b _02182250 _02182244: ldr r0, _02181ed4 ; =data_027e0ffc mov r1, #0x2ac bl func_ov00_020ceacc _02182250: ldr r0, [r5, #0x1c] mov r1, r5 ldr r3, [r0] mov r2, #1 ldr r3, [r3, #0xb0] blx r3 _02182268: cmp r4, #0xb000 ble _0218343c cmp r4, #0x24000 bge _0218343c ldr r0, _02182fdc ; =data_ov37_0218804c add r3, sp, #0x1a0 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02181ee0 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x1a8] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x1ac] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x1a4] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x1b0] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x1a0] orr sb, sb, r8, lsl #20 str sl, [sp, #0x1b0] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r4, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r0, r0, r1 add r0, r0, r3 str r0, [sp, #0x1b4] str r4, [sp, #0x1ac] mov r0, #0 str r0, [sp] ldr r1, [r5, #0x1c] ldr r0, _02181ed4 ; =data_027e0ffc ldr r3, [r1, #8] ldr r1, _02182fd4 ; =0x000002ad add r2, sp, #0x1ac bl func_ov00_020cec60 b _0218343c _02182368: ldr r0, [r5, #0x10] mov r1, #0x27000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _0218343c mov r0, r5 mov r1, #0 bl func_ov37_02183df8 add r3, sp, #0x194 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, _02181f34 ; =data_027e0e60 ldr r6, [sp, #0x194] ldr r4, [sp, #0x198] ldr r3, [sp, #0x19c] ldr r0, [r0] add r1, sp, #0x14 mov r2, #1 str r6, [sp, #0x14] str r4, [sp, #0x18] str r3, [sp, #0x1c] bl func_ov00_02083ee0 str r0, [sp, #0x198] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02181f38 ; =0x00000153 ldr r0, [r0] add r2, sp, #0x194 mov r3, #2 bl func_ov00_0207c1b0 ldrb r0, [r5, #0xb7] add r2, sp, #0x194 mov r3, #0 cmp r0, #0 beq _02182410 ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02181f0c ; =0x000002ab bl func_ov00_020ceacc b _0218241c _02182410: ldr r0, _02181ed4 ; =data_027e0ffc mov r1, #0x2ac bl func_ov00_020ceacc _0218241c: ldr r0, [r5, #0x1c] mov r1, r5 ldr r3, [r0] mov r2, #4 ldr r3, [r3, #0xb0] blx r3 b _0218343c _02182438: ldr r0, [r5, #0x10] mov r1, #0x27000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _0218343c mov r0, r5 mov r1, #1 bl func_ov37_02183df8 add r3, sp, #0x188 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, _02181f34 ; =data_027e0e60 ldr r6, [sp, #0x188] ldr r4, [sp, #0x18c] ldr r3, [sp, #0x190] ldr r0, [r0] add r1, sp, #8 mov r2, #1 str r6, [sp, #8] str r4, [sp, #0xc] str r3, [sp, #0x10] bl func_ov00_02083ee0 str r0, [sp, #0x18c] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02181f38 ; =0x00000153 ldr r0, [r0] add r2, sp, #0x188 mov r3, #2 bl func_ov00_0207c1b0 ldrb r0, [r5, #0xb9] add r2, sp, #0x188 mov r3, #0 cmp r0, #0 beq _021824e0 ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02181f0c ; =0x000002ab bl func_ov00_020ceacc b _021824ec _021824e0: ldr r0, _02181ed4 ; =data_027e0ffc mov r1, #0x2ac bl func_ov00_020ceacc _021824ec: ldr r0, [r5, #0x1c] mov r1, r5 ldr r3, [r0] mov r2, #5 ldr r3, [r3, #0xb0] blx r3 b _0218343c _02182508: cmp r4, #0x7b000 blt _02182588 cmp r4, #0xb9000 bgt _02182588 sub r0, r4, #0x7b000 rsb r0, r0, #0x3e000 mov r1, #0x3e000 bl func_01ff98e0 mov r1, #0x12 mul r1, r0, r1 add r0, r5, #0x2000 ldr r2, [r0, #0xbb4] mov r0, r1, lsl #0x4 cmp r2, #0 mov r3, r0, lsr #0x10 beq _02182560 ldr r1, [r2, #0x84] and r0, r3, #0xff bic r1, r1, #0xff00 mov r0, r0, lsl #0x18 orr r0, r1, r0, lsr #16 str r0, [r2, #0x84] _02182560: add r0, r5, #0x2000 ldr r2, [r0, #0xbc0] cmp r2, #0 beq _02182588 ldr r1, [r2, #0x84] and r0, r3, #0xff bic r1, r1, #0xff00 mov r0, r0, lsl #0x18 orr r0, r1, r0, lsr #16 str r0, [r2, #0x84] _02182588: cmp r4, #0xb9000 bne _021825a4 add r0, r5, #0x3b4 add r0, r0, #0x2800 bl func_ov00_020b7e6c add r0, r5, #0x2bc0 bl func_ov00_020b7e6c _021825a4: ldr r0, [r5, #0x10] mov r1, #0xb000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _021826c0 ldr r0, _02182fe0 ; =data_ov37_02188058 add r3, sp, #0x170 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02181ee0 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x178] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x17c] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x174] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x180] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x170] orr sb, sb, r8, lsl #20 str sl, [sp, #0x180] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r4, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r0, r0, r3 str r0, [sp, #0x184] str r4, [sp, #0x17c] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02182fe4 ; =0x0000100b ldr r0, [r0] add r2, sp, #0x17c mov r3, #2 bl func_ov00_0207c1b0 ldr r0, _02181ed4 ; =data_027e0ffc add r2, sp, #0x17c mov r1, #0x2bc mov r3, #0 bl func_ov00_020ceacc _021826c0: ldr r0, [r5, #0x10] mov r1, #0x26000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _021827dc ldr r0, _02182fe8 ; =data_ov37_02188064 add r3, sp, #0x158 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02181ee0 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x160] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x164] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x15c] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x168] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x158] orr sb, sb, r8, lsl #20 str sl, [sp, #0x168] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r4, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r0, r0, r3 str r0, [sp, #0x16c] str r4, [sp, #0x164] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02182fec ; =0x0000100c ldr r0, [r0] add r2, sp, #0x164 mov r3, #2 bl func_ov00_0207c1b0 ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02182ff0 ; =0x000002bd add r2, sp, #0x164 mov r3, #0 bl func_ov00_020ceacc _021827dc: ldr r0, [r5, #0x10] mov r1, #0x2c000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _021828f8 ldr r0, _02182ff4 ; =data_ov37_02188070 add r3, sp, #0x140 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02181ee0 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x148] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x14c] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x144] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x150] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x140] orr sb, sb, r8, lsl #20 str sl, [sp, #0x150] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r4, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r0, r0, r3 str r0, [sp, #0x154] str r4, [sp, #0x14c] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02182fec ; =0x0000100c ldr r0, [r0] add r2, sp, #0x14c mov r3, #2 bl func_ov00_0207c1b0 ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02182ff0 ; =0x000002bd add r2, sp, #0x14c mov r3, #0 bl func_ov00_020ceacc _021828f8: ldr r0, [r5, #0x10] mov r1, #0x30000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02182a14 ldr r0, _02182ff8 ; =data_ov37_0218807c add r3, sp, #0x128 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02181ee0 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x130] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x134] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x12c] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x138] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x128] orr sb, sb, r8, lsl #20 str sl, [sp, #0x138] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r4, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r0, r0, r3 str r0, [sp, #0x13c] str r4, [sp, #0x134] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02182fec ; =0x0000100c ldr r0, [r0] add r2, sp, #0x134 mov r3, #2 bl func_ov00_0207c1b0 ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02182ff0 ; =0x000002bd add r2, sp, #0x134 mov r3, #0 bl func_ov00_020ceacc _02182a14: ldr r0, [r5, #0x10] mov r1, #0x38000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02182b30 ldr r0, _02182ffc ; =data_ov37_02188088 add r3, sp, #0x110 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02181ee0 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x118] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x11c] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x114] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x120] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x110] orr sb, sb, r8, lsl #20 str sl, [sp, #0x120] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r4, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r0, r0, r3 str r0, [sp, #0x124] str r4, [sp, #0x11c] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02182fec ; =0x0000100c ldr r0, [r0] add r2, sp, #0x11c mov r3, #2 bl func_ov00_0207c1b0 ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02182ff0 ; =0x000002bd add r2, sp, #0x11c mov r3, #0 bl func_ov00_020ceacc _02182b30: ldr r0, [r5, #0x10] mov r1, #0x40000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02182c4c ldr r0, _02183000 ; =data_ov37_02188094 add r3, sp, #0xf8 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02181ee0 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x100] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x104] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0xfc] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x108] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0xf8] orr sb, sb, r8, lsl #20 str sl, [sp, #0x108] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r4, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r0, r0, r3 str r0, [sp, #0x10c] str r4, [sp, #0x104] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02182fec ; =0x0000100c ldr r0, [r0] add r2, sp, #0x104 mov r3, #2 bl func_ov00_0207c1b0 ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02182ff0 ; =0x000002bd add r2, sp, #0x104 mov r3, #0 bl func_ov00_020ceacc _02182c4c: ldr r0, [r5, #0x10] mov r1, #0x48000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02182d68 ldr r0, _02183004 ; =data_ov37_021880a0 add r3, sp, #0xe0 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02181ee0 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0xe8] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0xec] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0xe4] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0xf0] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0xe0] orr sb, sb, r8, lsl #20 str sl, [sp, #0xf0] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r4, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r0, r0, r3 str r0, [sp, #0xf4] str r4, [sp, #0xec] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02181ed8 ; =data_027e0e58 ldr r1, _02182fec ; =0x0000100c ldr r0, [r0] add r2, sp, #0xec mov r3, #2 bl func_ov00_0207c1b0 ldr r0, _02181ed4 ; =data_027e0ffc ldr r1, _02182ff0 ; =0x000002bd add r2, sp, #0xec mov r3, #0 bl func_ov00_020ceacc _02182d68: ldr r0, [r5, #0x10] mov r1, #0x51000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02182e84 ldr r0, _02183008 ; =data_ov37_021880ac add r3, sp, #0xc8 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02181ee0 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0xd0] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0xd4] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0xcc] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0xd8] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0xc8] orr sb, sb, r8, lsl #20 str sl, [sp, #0xd8] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r4, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r0, r0, r3 str r0, [sp, #0xdc] str r4, [sp, #0xd4] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _0218300c ; =data_027e0e58 ldr r1, _02182fec ; =0x0000100c ldr r0, [r0] add r2, sp, #0xd4 mov r3, #2 bl func_ov00_0207c1b0 ldr r0, _02183010 ; =data_027e0ffc ldr r1, _02182ff0 ; =0x000002bd add r2, sp, #0xd4 mov r3, #0 bl func_ov00_020ceacc _02182e84: ldr r0, [r5, #0x10] mov r1, #0x57000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02182fa0 ldr r0, _02183014 ; =data_ov37_021880b8 add r3, sp, #0xb0 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02183018 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0xb8] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0xbc] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0xb4] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0xc0] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0xb0] orr sb, sb, r8, lsl #20 str sl, [sp, #0xc0] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r4, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r0, r0, r3 str r0, [sp, #0xc4] str r4, [sp, #0xbc] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _0218300c ; =data_027e0e58 ldr r1, _02182fec ; =0x0000100c ldr r0, [r0] add r2, sp, #0xbc mov r3, #2 bl func_ov00_0207c1b0 ldr r0, _02183010 ; =data_027e0ffc ldr r1, _02182ff0 ; =0x000002bd add r2, sp, #0xbc mov r3, #0 bl func_ov00_020ceacc _02182fa0: ldr r0, [r5, #0x10] mov r1, #0x5b000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _0218310c ldr r0, _0218301c ; =data_ov37_021880c4 add r3, sp, #0x98 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02183018 ; =data_02050f54 b _02183020 .align 2, 0 _02182fd4: .word 0x000002ad _02182fd8: .word data_ov37_02188040 _02182fdc: .word data_ov37_0218804c _02182fe0: .word data_ov37_02188058 _02182fe4: .word 0x0000100b _02182fe8: .word data_ov37_02188064 _02182fec: .word 0x0000100c _02182ff0: .word 0x000002bd _02182ff4: .word data_ov37_02188070 _02182ff8: .word data_ov37_0218807c _02182ffc: .word data_ov37_02188088 _02183000: .word data_ov37_02188094 _02183004: .word data_ov37_021880a0 _02183008: .word data_ov37_021880ac _0218300c: .word data_027e0e58 _02183010: .word data_027e0ffc _02183014: .word data_ov37_021880b8 _02183018: .word data_02050f54 _0218301c: .word data_ov37_021880c4 _02183020: ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0xa0] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0xa4] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x9c] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0xa8] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x98] orr sb, sb, r8, lsl #20 str sl, [sp, #0xa8] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r4, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r0, r0, r3 str r0, [sp, #0xac] str r4, [sp, #0xa4] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _0218300c ; =data_027e0e58 ldr r1, _02182fec ; =0x0000100c ldr r0, [r0] add r2, sp, #0xa4 mov r3, #2 bl func_ov00_0207c1b0 ldr r0, _02183010 ; =data_027e0ffc ldr r1, _02182ff0 ; =0x000002bd add r2, sp, #0xa4 mov r3, #0 bl func_ov00_020ceacc _0218310c: ldr r0, [r5, #0x10] mov r1, #0x5f000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02183228 ldr r0, _0218348c ; =data_ov37_021880d0 add r3, sp, #0x80 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02183018 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x88] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x8c] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x84] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x90] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x80] orr sb, sb, r8, lsl #20 str sl, [sp, #0x90] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r4, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r0, r0, r3 str r0, [sp, #0x94] str r4, [sp, #0x8c] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _0218300c ; =data_027e0e58 ldr r1, _02182fec ; =0x0000100c ldr r0, [r0] add r2, sp, #0x8c mov r3, #2 bl func_ov00_0207c1b0 ldr r0, _02183010 ; =data_027e0ffc ldr r1, _02182ff0 ; =0x000002bd add r2, sp, #0x8c mov r3, #0 bl func_ov00_020ceacc _02183228: ldr r0, [r5, #0x10] mov r1, #0x64000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _02183320 ldr r0, _02183490 ; =data_ov37_021880dc add r3, sp, #0x68 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02183018 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x70] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x74] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x6c] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x78] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x68] orr sb, sb, r8, lsl #20 str sl, [sp, #0x78] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r6, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r4, r0, r3 ldr r0, _02183010 ; =data_027e0ffc ldr r1, _02183494 ; =0x000002be add r2, sp, #0x74 mov r3, #0 str r6, [sp, #0x74] str r4, [sp, #0x7c] bl func_ov00_020ceacc _02183320: ldr r0, [r5, #0x10] mov r1, #0xab000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _0218343c ldr r0, _02183498 ; =data_ov37_021880e8 add r3, sp, #0x50 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr fp, [r5, #0x1c] ldr r3, _02183018 ; =data_02050f54 ldrh r2, [fp, #0x78] ldr r1, [fp, #0x48] ldr r0, [sp, #0x58] mov r2, r2, asr #0x4 mov r4, r2, lsl #0x1 add r2, r4, #1 mov r4, r4, lsl #0x1 mov r2, r2, lsl #0x1 ldrsh r6, [r3, r4] ldrsh r7, [r3, r2] str r1, [sp, #0x5c] smull r2, r4, r0, r6 adds sb, r2, #0x800 rsb r2, r6, #0 ldr ip, [fp, #0x4c] ldr r6, [sp, #0x54] adc r8, r4, #0 add sl, ip, r6 smull r6, r4, r0, r7 str ip, [sp, #0x60] ldr r0, [fp, #0x50] mov sb, sb, lsr #0xc adds r6, r6, #0x800 ldr r3, [sp, #0x50] orr sb, sb, r8, lsl #20 str sl, [sp, #0x60] smull sl, r8, r3, r7 add r7, r1, sb adc r4, r4, #0 mov r1, r6, lsr #0xc orr r1, r1, r4, lsl #20 adds sb, sl, #0x800 add r0, r0, r1 smull r4, r2, r3, r2 adc r6, r8, #0 adds r3, r4, #0x800 mov r4, sb, lsr #0xc orr r4, r4, r6, lsl #20 add r4, r7, r4 adc r2, r2, #0 mov r3, r3, lsr #0xc orr r3, r3, r2, lsl #20 add r0, r0, r3 str r0, [sp, #0x64] str r4, [sp, #0x5c] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _0218300c ; =data_027e0e58 ldr r1, _0218349c ; =0x0000100d ldr r0, [r0] add r2, sp, #0x5c mov r3, #2 bl func_ov00_0207c1b0 ldr r0, _02183010 ; =data_027e0ffc ldr r1, _021834a0 ; =0x000002bf add r2, sp, #0x5c mov r3, #0 bl func_ov00_020ceacc _0218343c: mov r0, r5 bl func_ov37_02183ca8 add r0, r5, #0x20 bl func_ov37_021806bc add r0, r5, #0x20 ldr r1, [r0] ldr r1, [r1, #0x38] blx r1 mov r0, #1 strb r0, [r5, #0x7c] mov r4, #0 _02183468: add r0, r5, r4, lsl #2 add r0, r0, #0x1000 ldr r0, [r0, #0x57c] bl func_ov00_020c5e20 add r4, r4, #1 cmp r4, #4 blt _02183468 add sp, sp, #0x314 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _0218348c: .word data_ov37_021880d0 _02183490: .word data_ov37_021880dc _02183494: .word 0x000002be _02183498: .word data_ov37_021880e8 _0218349c: .word 0x0000100d _021834a0: .word 0x000002bf .global func_ov37_021834a4 arm_func_start func_ov37_021834a4 func_ov37_021834a4: ; 0x021834a4 add r0, r0, #0x2000 strb r1, [r0, #0xbcc] bx lr arm_func_end func_ov37_021834a4 .global func_ov37_021834b0 arm_func_start func_ov37_021834b0 func_ov37_021834b0: ; 0x021834b0 stmdb sp!, {r4, lr} sub sp, sp, #0x30 mov r4, r0 ldrb r0, [r4, #0xbb] cmp r0, #0 ldreqb r0, [r4, #0x332] cmpeq r0, #1 addeq r0, r4, #0x2000 ldreqb r0, [r0, #0xbcc] cmpeq r0, #1 bne _02183558 ldr r0, _02183574 ; =data_ov37_021880f4 add r3, sp, #0x24 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} add r1, r4, #0x334 add r2, sp, #0x18 mov r0, r3 add r1, r1, #0x1e0 bl func_01ff9158 ldr r0, _02183578 ; =data_027e0e58 add r1, r4, #0x3b4 ldr r0, [r0] add r2, sp, #0x18 add r1, r1, #0x2800 bl func_ov00_0207c474 ldr r0, _0218357c ; =data_ov37_02188100 add r3, sp, #0xc ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} add r1, r4, #0x334 mov r0, r3 add r1, r1, #0x1e0 add r2, sp, #0 bl func_01ff9158 ldr r0, _02183578 ; =data_027e0e58 add r1, r4, #0x2bc0 ldr r0, [r0] add r2, sp, #0 bl func_ov00_0207c474 add sp, sp, #0x30 ldmia sp!, {r4, pc} _02183558: add r0, r4, #0x3b4 add r0, r0, #0x2800 bl func_ov00_020b7e6c add r0, r4, #0x2bc0 bl func_ov00_020b7e6c add sp, sp, #0x30 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_021834b0 _02183574: .word data_ov37_021880f4 _02183578: .word data_027e0e58 _0218357c: .word data_ov37_02188100 .global func_ov37_02183580 arm_func_start func_ov37_02183580 func_ov37_02183580: ; 0x02183580 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x20 bl func_ov37_021806d4 mov r0, r4 bl func_ov00_020c5f1c mov r0, r4 bl func_ov37_02183f88 mov r0, r4 bl func_ov37_021834b0 mov r0, r4 bl func_ov37_02183d24 ldrb r0, [r4, #0x7c] mov r1, #0 strb r1, [r4, #0x7c] ldmia sp!, {r4, pc} arm_func_end func_ov37_02183580 .global func_ov37_021835c0 arm_func_start func_ov37_021835c0 func_ov37_021835c0: ; 0x021835c0 ldr r1, [r0, #0x14] cmp r1, #2 bne _02183604 ldr r0, [r0, #0x10] ldr r0, [r0, #0x14] cmp r0, #0x1000 ble _021835f4 cmp r0, #0x1a000 blt _021835ec cmp r0, #0x29000 ble _021835f4 _021835ec: cmp r0, #0x42000 blt _021835fc _021835f4: mov r0, #0 bx lr _021835fc: mov r0, #1 bx lr _02183604: mov r0, #0 bx lr arm_func_end func_ov37_021835c0 .global func_ov37_0218360c arm_func_start func_ov37_0218360c func_ov37_0218360c: ; 0x0218360c stmdb sp!, {r3, lr} ldr r1, [r0, #0x14] cmp r1, #2 bne _02183638 ldr r0, [r0, #0x10] mov r1, #0x28000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 movne r0, #1 ldmneia sp!, {r3, pc} _02183638: mov r0, #0 ldmia sp!, {r3, pc} arm_func_end func_ov37_0218360c .global func_ov37_02183640 arm_func_start func_ov37_02183640 func_ov37_02183640: ; 0x02183640 stmdb sp!, {r4, r5, r6, r7, r8, lr} mov r4, r0 mov r8, r2 cmp r1, #9 addls pc, pc, r1, lsl #2 b _02183874 _02183658: ; jump table b _02183680 ; case 0 b _021836a4 ; case 1 b _021836b4 ; case 2 b _021836d8 ; case 3 b _021836e8 ; case 4 b _0218370c ; case 5 b _02183730 ; case 6 b _02183740 ; case 7 b _021837d4 ; case 8 b _02183868 ; case 9 _02183680: mov r5, #0 mov r6, r5 mov r7, r5 cmp r8, #0 bne _02183874 mov r1, r5 mov r2, #1 bl func_ov37_02183e0c b _02183874 _021836a4: mov r5, #1 mov r6, r5 mov r7, r5 b _02183874 _021836b4: mov r5, #2 mov r6, r5 mov r7, r5 cmp r8, #0 bne _02183874 mov r1, #1 mov r2, r1 bl func_ov37_02183e0c b _02183874 _021836d8: mov r5, #3 mov r6, r5 mov r7, r5 b _02183874 _021836e8: mov r5, #4 mov r6, r5 mov r7, r5 cmp r8, #0 bne _02183874 mov r1, #2 mov r2, #1 bl func_ov37_02183e0c b _02183874 _0218370c: mov r5, #5 mov r6, r5 cmp r8, #0 mov r7, #4 bne _02183874 mov r1, #3 mov r2, #1 bl func_ov37_02183e0c b _02183874 _02183730: mov r5, #6 mov r6, r5 mov r7, #5 b _02183874 _02183740: cmp r8, #0 mov r1, #7 bne _02183770 mov r2, #0 strb r2, [r4, #0xb7] strb r2, [r4, #0xb8] mov r3, #1 strb r3, [r4, #0x32e] add r0, r4, #0x20 strb r3, [r4, #0x32f] bl func_ov37_02180cbc ldmia sp!, {r4, r5, r6, r7, r8, pc} _02183770: cmp r8, #1 bne _02183794 mov r3, #1 strb r3, [r4, #0xb7] add r0, r4, #0x20 mov r2, #2 strb r3, [r4, #0xb8] bl func_ov37_02180cbc ldmia sp!, {r4, r5, r6, r7, r8, pc} _02183794: sub r0, r8, #2 cmp r0, #1 bhi _021837b8 mov r2, #1 strb r2, [r4, #0xb7] add r0, r4, #0x20 strb r2, [r4, #0xb8] bl func_ov37_02180cbc ldmia sp!, {r4, r5, r6, r7, r8, pc} _021837b8: mov r3, #1 strb r3, [r4, #0xb7] add r0, r4, #0x20 mov r2, #0 strb r3, [r4, #0xb8] bl func_ov37_02180cbc ldmia sp!, {r4, r5, r6, r7, r8, pc} _021837d4: cmp r8, #0 mov r1, #8 bne _02183804 mov r2, #0 strb r2, [r4, #0xb9] strb r2, [r4, #0xba] mov r3, #1 strb r3, [r4, #0x330] add r0, r4, #0x20 strb r3, [r4, #0x331] bl func_ov37_02180cbc ldmia sp!, {r4, r5, r6, r7, r8, pc} _02183804: cmp r8, #1 bne _02183828 mov r3, #1 strb r3, [r4, #0xb9] add r0, r4, #0x20 mov r2, #2 strb r3, [r4, #0xba] bl func_ov37_02180cbc ldmia sp!, {r4, r5, r6, r7, r8, pc} _02183828: sub r0, r8, #2 cmp r0, #1 bhi _0218384c mov r2, #1 strb r2, [r4, #0xb9] add r0, r4, #0x20 strb r2, [r4, #0xba] bl func_ov37_02180cbc ldmia sp!, {r4, r5, r6, r7, r8, pc} _0218384c: mov r3, #1 strb r3, [r4, #0xb9] add r0, r4, #0x20 mov r2, #0 strb r3, [r4, #0xba] bl func_ov37_02180cbc ldmia sp!, {r4, r5, r6, r7, r8, pc} _02183868: mov r5, #0xb mov r6, #9 mov r7, #0xa _02183874: cmp r8, #0 bne _021838a4 mov r1, r6 add r3, r4, r5 mov r2, #0 add r0, r4, #0x20 strb r2, [r3, #0xb0] bl func_ov37_02180cbc add r0, r4, r7 mov r1, #1 strb r1, [r0, #0x328] ldmia sp!, {r4, r5, r6, r7, r8, pc} _021838a4: cmp r8, #1 bne _021838cc add r3, r4, r5 mov ip, #1 mov r1, r6 add r0, r4, #0x20 mov r2, #2 strb ip, [r3, #0xb0] bl func_ov37_02180cbc ldmia sp!, {r4, r5, r6, r7, r8, pc} _021838cc: sub r0, r8, #2 cmp r0, #1 mov r1, r6 add r3, r4, r5 bhi _021838f4 mov r2, #1 add r0, r4, #0x20 strb r2, [r3, #0xb0] bl func_ov37_02180cbc ldmia sp!, {r4, r5, r6, r7, r8, pc} _021838f4: mov ip, #1 add r0, r4, #0x20 mov r2, #0 strb ip, [r3, #0xb0] bl func_ov37_02180cbc ldmia sp!, {r4, r5, r6, r7, r8, pc} arm_func_end func_ov37_02183640 .global func_ov37_0218390c arm_func_start func_ov37_0218390c func_ov37_0218390c: ; 0x0218390c mov r1, #0 strb r1, [r0, #0xbb] strb r1, [r0, #0x332] bx lr arm_func_end func_ov37_0218390c .global func_ov37_0218391c arm_func_start func_ov37_0218391c func_ov37_0218391c: ; 0x0218391c mov r1, #0 strb r1, [r0, #0xbb] mov r1, #1 strb r1, [r0, #0x332] bx lr arm_func_end func_ov37_0218391c .global func_ov37_02183930 arm_func_start func_ov37_02183930 func_ov37_02183930: ; 0x02183930 stmdb sp!, {r3, r4, r5, r6, r7, lr} sub sp, sp, #0x78 ldr r4, [sp, #0x90] mov r7, r0 mov r6, r2 mov r5, r3 cmp r1, #9 addls pc, pc, r1, lsl #2 b _02183c44 _02183954: ; jump table b _0218397c ; case 0 b _021839c0 ; case 1 b _02183a08 ; case 2 b _02183a4c ; case 3 b _02183aa0 ; case 4 b _02183ae8 ; case 5 b _02183b30 ; case 6 b _02183b74 ; case 7 b _02183bbc ; case 8 b _02183c04 ; case 9 _0218397c: ldr r0, _02183c4c ; =data_ov37_0218810c add r3, sp, #0x6c ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} mov r0, r3 mov r2, r6 add r1, r7, #0xe8 bl func_01ff9158 mov r0, #0x1000 str r0, [r6, #0xc] ldr r1, [r7, #0x1c] ldr r0, _02183c50 ; =0x00002aab ldrsh r1, [r1, #0x78] add sp, sp, #0x78 strh r1, [r5] strh r0, [r4] ldmia sp!, {r3, r4, r5, r6, r7, pc} _021839c0: ldr r0, _02183c54 ; =data_ov37_02188118 add r3, sp, #0x60 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} mov r0, r3 mov r2, r6 add r1, r7, #0x118 bl func_01ff9158 mov r0, #0x1000 str r0, [r6, #0xc] ldr r0, [r7, #0x124] ldr r1, [r7, #0x12c] bl func_01ffa0f4 strh r0, [r5] mov r0, #0x6000 add sp, sp, #0x78 strh r0, [r4] ldmia sp!, {r3, r4, r5, r6, r7, pc} _02183a08: ldr r0, _02183c58 ; =data_ov37_02188124 add r3, sp, #0x54 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} mov r0, r3 mov r2, r6 add r1, r7, #0x148 bl func_01ff9158 mov r0, #0x1000 str r0, [r6, #0xc] ldr r1, [r7, #0x1c] ldr r0, _02183c50 ; =0x00002aab ldrsh r1, [r1, #0x78] add sp, sp, #0x78 strh r1, [r5] strh r0, [r4] ldmia sp!, {r3, r4, r5, r6, r7, pc} _02183a4c: ldr r0, _02183c5c ; =data_ov37_02188130 add r3, sp, #0x48 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} mov r0, r3 mov r2, r6 add r1, r7, #0x178 bl func_01ff9158 mov r0, #0x1000 str r0, [r6, #0xc] ldr r0, [r7, #0x184] ldr r1, [r7, #0x18c] bl func_01ffa0f4 mov r0, r0, lsl #0x10 mov r0, r0, asr #0x10 sub r0, r0, #0x8000 strh r0, [r5] mov r0, #0x6000 add sp, sp, #0x78 strh r0, [r4] ldmia sp!, {r3, r4, r5, r6, r7, pc} _02183aa0: ldr r0, _02183c60 ; =data_ov37_0218813c add r3, sp, #0x3c ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} mov r0, r3 mov r2, r6 add r1, r7, #0x1a8 bl func_01ff9158 mov r0, #0x1000 str r0, [r6, #0xc] ldr r1, [r7, #0x1c] ldr r0, _02183c50 ; =0x00002aab ldrsh r1, [r1, #0x78] add sp, sp, #0x78 sub r1, r1, #0x8000 strh r1, [r5] strh r0, [r4] ldmia sp!, {r3, r4, r5, r6, r7, pc} _02183ae8: ldr r0, _02183c64 ; =data_ov37_02188148 add r3, sp, #0x30 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} mov r0, r3 mov r2, r6 add r1, r7, #0x1d8 bl func_01ff9158 mov r0, #0x1000 str r0, [r6, #0xc] ldr r1, [r7, #0x1c] ldr r0, _02183c50 ; =0x00002aab ldrsh r1, [r1, #0x78] add sp, sp, #0x78 sub r1, r1, #0x8000 strh r1, [r5] strh r0, [r4] ldmia sp!, {r3, r4, r5, r6, r7, pc} _02183b30: ldr r0, _02183c68 ; =data_ov37_02188154 add r3, sp, #0x24 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} mov r0, r3 mov r2, r6 add r1, r7, #0x208 bl func_01ff9158 mov r0, #0x1000 str r0, [r6, #0xc] ldr r1, [r7, #0x1c] ldr r0, _02183c50 ; =0x00002aab ldrsh r1, [r1, #0x78] add sp, sp, #0x78 strh r1, [r5] strh r0, [r4] ldmia sp!, {r3, r4, r5, r6, r7, pc} _02183b74: ldr r0, _02183c6c ; =data_ov37_02188160 add r3, sp, #0x18 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} mov r0, r3 mov r2, r6 add r1, r7, #0x238 bl func_01ff9158 mov r0, #0x1000 str r0, [r6, #0xc] ldr r1, [r7, #0x1c] ldr r0, _02183c70 ; =0x0000671c ldrsh r1, [r1, #0x78] add sp, sp, #0x78 sub r1, r1, #0x4000 strh r1, [r5] strh r0, [r4] ldmia sp!, {r3, r4, r5, r6, r7, pc} _02183bbc: ldr r0, _02183c74 ; =data_ov37_0218816c add r3, sp, #0xc ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} mov r0, r3 mov r2, r6 add r1, r7, #0x298 bl func_01ff9158 mov r0, #0x1000 str r0, [r6, #0xc] ldr r1, [r7, #0x1c] ldr r0, _02183c70 ; =0x0000671c ldrsh r1, [r1, #0x78] add sp, sp, #0x78 add r1, r1, #0x4000 strh r1, [r5] strh r0, [r4] ldmia sp!, {r3, r4, r5, r6, r7, pc} _02183c04: ldr r0, _02183c78 ; =data_ov37_02188178 add r3, sp, #0 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} mov r0, r3 mov r2, r6 add r1, r7, #0x2f8 bl func_01ff9158 mov r0, #0x1000 str r0, [r6, #0xc] ldr r0, [r7, #0x2f8] ldr r1, [r7, #0x300] bl func_01ffa0f4 ldr r1, _02183c50 ; =0x00002aab strh r0, [r5] strh r1, [r4] _02183c44: add sp, sp, #0x78 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 arm_func_end func_ov37_02183930 _02183c4c: .word data_ov37_0218810c _02183c50: .word 0x00002aab _02183c54: .word data_ov37_02188118 _02183c58: .word data_ov37_02188124 _02183c5c: .word data_ov37_02188130 _02183c60: .word data_ov37_0218813c _02183c64: .word data_ov37_02188148 _02183c68: .word data_ov37_02188154 _02183c6c: .word data_ov37_02188160 _02183c70: .word 0x0000671c _02183c74: .word data_ov37_0218816c _02183c78: .word data_ov37_02188178 .global func_ov37_02183c7c arm_func_start func_ov37_02183c7c func_ov37_02183c7c: ; 0x02183c7c add r0, r0, #0x2000 strb r1, [r0, #0xbac] bx lr arm_func_end func_ov37_02183c7c .global func_ov37_02183c88 arm_func_start func_ov37_02183c88 func_ov37_02183c88: ; 0x02183c88 ldr r1, [r0, #0x1c] add r0, r0, #0x500 ldrsh r1, [r1, #0x78] ldrsh r0, [r0, #0xca] sub r0, r1, r0 mov r0, r0, lsl #0x10 mov r0, r0, asr #0x10 bx lr arm_func_end func_ov37_02183c88 .global func_ov37_02183ca8 arm_func_start func_ov37_02183ca8 func_ov37_02183ca8: ; 0x02183ca8 stmdb sp!, {r3, r4, r5, lr} mov r4, r0 add r0, r4, #0x2000 ldrb r1, [r0, #0xbac] ldr r0, [r4, #0x1c] cmp r1, #0 moveq r1, #0 beq _02183ce0 ldrsh r5, [r0, #0x78] bl func_ov00_020c2974 sub r0, r0, r5 rsb r0, r0, #0 mov r0, r0, lsl #0x10 mov r1, r0, asr #0x10 _02183ce0: add r0, r4, #0x500 ldrsh r2, [r0, #0xca] sub r1, r1, r2 cmp r1, #0x16c movgt r1, #0x16c bgt _02183d08 mov r0, #0x16c rsb r0, r0, #0 cmp r1, r0 movlt r1, r0 _02183d08: mov r0, r1, lsl #0x10 add r0, r2, r0, asr #16 mov r0, r0, lsl #0x10 mov r1, r0, asr #0x10 add r0, r4, #0x20 bl func_ov37_02180080 ldmia sp!, {r3, r4, r5, pc} arm_func_end func_ov37_02183ca8 .global func_ov37_02183d24 arm_func_start func_ov37_02183d24 func_ov37_02183d24: ; 0x02183d24 stmdb sp!, {r4, lr} sub sp, sp, #0x18 ldr r1, _02183df0 ; =data_ov37_02188184 mov r4, r0 add r3, sp, #0xc ldmia r1, {r0, r1, r2} stmia r3, {r0, r1, r2} ldrb r0, [r4, #0xb8] cmp r0, #0 beq _02183d64 add r2, r4, #0x18c mov r0, r3 add r1, r4, #0x268 add r2, r2, #0x1400 bl func_01ff9158 b _02183d88 _02183d64: ldrb r0, [r4, #0x32f] cmp r0, #0 beq _02183d88 add r1, r4, #0x334 add r2, r4, #0x18c mov r0, r3 add r1, r1, #0x150 add r2, r2, #0x1400 bl func_01ff9158 _02183d88: ldr r0, _02183df4 ; =data_ov37_02188190 add r3, sp, #0 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldrb r0, [r4, #0xba] cmp r0, #0 beq _02183dc0 add r2, r4, #0x198 mov r0, r3 add r1, r4, #0x2c8 add r2, r2, #0x1400 bl func_01ff9158 add sp, sp, #0x18 ldmia sp!, {r4, pc} _02183dc0: ldrb r0, [r4, #0x331] cmp r0, #0 addeq sp, sp, #0x18 ldmeqia sp!, {r4, pc} add r1, r4, #0x334 add r2, r4, #0x198 mov r0, r3 add r1, r1, #0x1b0 add r2, r2, #0x1400 bl func_01ff9158 add sp, sp, #0x18 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_02183d24 _02183df0: .word data_ov37_02188184 _02183df4: .word data_ov37_02188190 .global func_ov37_02183df8 arm_func_start func_ov37_02183df8 func_ov37_02183df8: ; 0x02183df8 add r0, r0, #0x18c add r2, r0, #0x1400 mov r0, #0xc mla r0, r1, r0, r2 bx lr arm_func_end func_ov37_02183df8 .global func_ov37_02183e0c arm_func_start func_ov37_02183e0c func_ov37_02183e0c: ; 0x02183e0c add r0, r0, r1, lsl #2 str r2, [r0, #0xf7c] bx lr arm_func_end func_ov37_02183e0c .global func_ov37_02183e18 arm_func_start func_ov37_02183e18 func_ov37_02183e18: ; 0x02183e18 add r0, r0, r1, lsl #2 ldr r0, [r0, #0xf7c] bx lr arm_func_end func_ov37_02183e18 .global func_ov37_02183e24 arm_func_start func_ov37_02183e24 func_ov37_02183e24: ; 0x02183e24 stmdb sp!, {r4, r5, r6, lr} add r1, r1, #1 mov r6, r0 cmp r1, #3 addls pc, pc, r1, lsl #2 ldmia sp!, {r4, r5, r6, pc} _02183e3c: ; jump table b _02183e4c ; case 0 b _02183e74 ; case 1 b _02183e74 ; case 2 b _02183e74 ; case 3 _02183e4c: mov r5, #0 mov r4, r5 _02183e54: mov r0, r6 mov r1, r5 mov r2, r4 bl func_ov37_02183e0c add r5, r5, #1 cmp r5, #4 blt _02183e54 ldmia sp!, {r4, r5, r6, pc} _02183e74: mov r5, #0 mov r4, #2 _02183e7c: mov r0, r6 mov r1, r5 mov r2, r4 bl func_ov37_02183e0c add r5, r5, #1 cmp r5, #4 blt _02183e7c ldmia sp!, {r4, r5, r6, pc} arm_func_end func_ov37_02183e24 .global func_ov37_02183e9c arm_func_start func_ov37_02183e9c func_ov37_02183e9c: ; 0x02183e9c stmdb sp!, {r4, r5, r6, r7, lr} sub sp, sp, #0xc mov r6, r1 mov r7, r0 cmp r6, #3 addls pc, pc, r6, lsl #2 b _02183f38 _02183eb8: ; jump table b _02183ec8 ; case 0 b _02183ee0 ; case 1 b _02183efc ; case 2 b _02183f1c ; case 3 _02183ec8: ldr r0, _02183f80 ; =0xfffffb33 mov r2, #0 str r2, [sp] str r2, [sp, #4] str r0, [sp, #8] b _02183f38 _02183ee0: ldr r0, _02183f80 ; =0xfffffb33 mov r1, #0 str r1, [sp] str r1, [sp, #4] str r0, [sp, #8] mov r2, #2 b _02183f38 _02183efc: ldr r2, _02183f84 ; =0x00003333 mov r1, #0 mov r0, #0x1000 str r2, [sp] str r1, [sp, #4] str r0, [sp, #8] mov r2, #4 b _02183f38 _02183f1c: mov r2, #0x800 mov r1, #0 mov r0, #0x1000 str r2, [sp] str r1, [sp, #4] str r0, [sp, #8] mov r2, #4 _02183f38: add r1, r7, #0x31c mov r0, #0x30 mul r4, r2, r0 add r1, r1, #0xc00 mov r0, #0xc mla r2, r6, r0, r1 add r5, r7, #0x334 add r0, sp, #0 add r1, r5, r4 bl func_01ff9158 add r0, r7, #0x28c add r1, r0, #0xc00 mov r0, #0x24 mla r1, r6, r0, r1 add r0, r5, r4 bl func_020079d8 add sp, sp, #0xc ldmia sp!, {r4, r5, r6, r7, pc} .align 2, 0 arm_func_end func_ov37_02183e9c _02183f80: .word 0xfffffb33 _02183f84: .word 0x00003333 .global func_ov37_02183f88 arm_func_start func_ov37_02183f88 func_ov37_02183f88: ; 0x02183f88 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} mov sl, r0 add r0, sl, #0x31c add r1, sl, #0x28c mov sb, #0 add r7, r0, #0xc00 add r8, r1, #0xc00 mov r4, sb mov r5, #1 mov r6, #2 _02183fb0: add r0, sl, sb, lsl #2 ldr r0, [r0, #0xf7c] cmp r0, #0 beq _0218403c mov r0, sl mov r1, sb bl func_ov37_02183e9c add r1, sl, sb, lsl #2 ldr r0, [r1, #0xf7c] cmp r0, #1 bne _02183ff0 add r0, r1, #0x1000 ldr r0, [r0, #0x57c] mov r1, r6 bl func_ov37_0217ff40 b _02184024 _02183ff0: cmp r0, #2 bne _0218400c add r0, r1, #0x1000 ldr r0, [r0, #0x57c] mov r1, r5 bl func_ov37_0217ff40 b _02184024 _0218400c: cmp r0, #3 bne _02184024 add r0, r1, #0x1000 ldr r0, [r0, #0x57c] mov r1, r4 bl func_ov37_0217ff40 _02184024: add r0, sl, sb, lsl #2 add r0, r0, #0x1000 ldr r0, [r0, #0x57c] mov r1, r8 mov r2, r7 bl func_ov00_020c5e88 _0218403c: add sb, sb, #1 cmp sb, #4 add r7, r7, #0xc add r8, r8, #0x24 blt _02183fb0 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} arm_func_end func_ov37_02183f88 .global func_ov37_02184054 arm_func_start func_ov37_02184054 func_ov37_02184054: ; 0x02184054 stmdb sp!, {r3, r4, r5, r6, lr} sub sp, sp, #0xc mov r6, r0 mov r5, r2 mov r4, r3 cmp r1, #3 addls pc, pc, r1, lsl #2 b _021840f4 _02184074: ; jump table b _02184084 ; case 0 b _0218409c ; case 1 b _021840b8 ; case 2 b _021840d8 ; case 3 _02184084: mov r2, #0 mov r0, #0x1000 str r2, [sp] str r2, [sp, #4] str r0, [sp, #8] b _021840f4 _0218409c: mov r1, #0 mov r0, #0x1000 str r1, [sp] str r1, [sp, #4] str r0, [sp, #8] mov r2, #2 b _021840f4 _021840b8: ldr r2, _0218412c ; =0x00003333 mov r1, #0 rsb r0, r2, #0x5800 str r2, [sp] str r1, [sp, #4] str r0, [sp, #8] mov r2, #4 b _021840f4 _021840d8: ldr r0, _02184130 ; =0x000024cd mov r2, #0x800 mov r1, #0 str r2, [sp] str r1, [sp, #4] str r0, [sp, #8] mov r2, #4 _021840f4: add r1, r6, #0x334 mov r0, #0x30 mla r1, r2, r0, r1 add r0, sp, #0 mov r2, r5 bl func_01ff9158 mov r0, #0x1800 str r0, [r5, #0xc] ldr r0, [r6, #0x1c] ldrsh r0, [r0, #0x78] sub r0, r0, #0x8000 strh r0, [r4] add sp, sp, #0xc ldmia sp!, {r3, r4, r5, r6, pc} .align 2, 0 arm_func_end func_ov37_02184054 _0218412c: .word 0x00003333 _02184130: .word 0x000024cd .global func_ov37_02184134 arm_func_start func_ov37_02184134 func_ov37_02184134: ; 0x02184134 stmdb sp!, {r4, r5, r6, r7, lr} sub sp, sp, #0x2c ldr r4, _021841b8 ; =data_ov37_0218819c add lr, sp, #0x14 mov r5, r2 mov r7, r0 mov r6, r1 mov ip, lr ldmia r4!, {r0, r1, r2, r3} stmia lr!, {r0, r1, r2, r3} ldmia r4, {r0, r1} stmia lr, {r0, r1} ldr r0, [ip, r6, lsl #2] cmp r5, #1 add r0, r7, r0 addne sp, sp, #0x2c strb r5, [r0, #0x5c4] ldmneia sp!, {r4, r5, r6, r7, pc} add r2, sp, #8 mov r0, r7 mov r1, r6 bl func_ov37_021841f4 mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _021841bc ; =data_027e0e58 ldr r1, _021841c0 ; =0x00001012 ldr r0, [r0] add r2, sp, #8 mov r3, #2 bl func_ov00_0207c1b0 add sp, sp, #0x2c ldmia sp!, {r4, r5, r6, r7, pc} .align 2, 0 arm_func_end func_ov37_02184134 _021841b8: .word data_ov37_0218819c _021841bc: .word data_027e0e58 _021841c0: .word 0x00001012 .global func_ov37_021841c4 arm_func_start func_ov37_021841c4 func_ov37_021841c4: ; 0x021841c4 stmdb sp!, {r4, r5, r6, lr} mov r6, r0 mov r5, r1 mov r4, #0 _021841d4: mov r0, r6 mov r1, r4 mov r2, r5 bl func_ov37_02184134 add r4, r4, #1 cmp r4, #6 blt _021841d4 ldmia sp!, {r4, r5, r6, pc} arm_func_end func_ov37_021841c4 .global func_ov37_021841f4 arm_func_start func_ov37_021841f4 func_ov37_021841f4: ; 0x021841f4 stmdb sp!, {r3, lr} mov r3, r0 cmp r1, #5 addls pc, pc, r1, lsl #2 b _021842c8 _02184208: ; jump table b _02184220 ; case 0 b _0218423c ; case 1 b _02184258 ; case 2 b _02184274 ; case 3 b _02184294 ; case 4 b _021842b0 ; case 5 _02184220: ldr r1, _02184304 ; =0x00000b33 ldr r0, _02184308 ; =0x0000219a str r1, [r2] rsb r1, r1, #0 str r1, [r2, #4] str r0, [r2, #8] b _021842c8 _0218423c: mov r0, #0x1800 ldr r1, _0218430c ; =0xfffff4cd str r0, [r2] ldr r0, _02184310 ; =0x0000199a str r1, [r2, #4] str r0, [r2, #8] b _021842c8 _02184258: ldr r1, _02184308 ; =0x0000219a ldr r0, _0218430c ; =0xfffff4cd str r1, [r2] str r0, [r2, #4] mov r0, #0x800 str r0, [r2, #8] b _021842c8 _02184274: ldr r0, _02184308 ; =0x0000219a ldr r1, _0218430c ; =0xfffff4cd str r0, [r2] mov r0, #0x800 str r1, [r2, #4] rsb r0, r0, #0 str r0, [r2, #8] b _021842c8 _02184294: mov r0, #0x1800 ldr r1, _0218430c ; =0xfffff4cd str r0, [r2] ldr r0, _02184314 ; =0xffffe666 str r1, [r2, #4] str r0, [r2, #8] b _021842c8 _021842b0: ldr r1, _02184304 ; =0x00000b33 ldr r0, _02184318 ; =0xffffde66 str r1, [r2] rsb r1, r1, #0 str r1, [r2, #4] str r0, [r2, #8] _021842c8: ldrb r0, [r3, #0xbb] cmp r0, #0 beq _021842e4 mov r0, r2 add r1, r3, #0x2f8 bl func_01ff9158 ldmia sp!, {r3, pc} _021842e4: ldrb r0, [r3, #0x332] cmp r0, #0 ldmeqia sp!, {r3, pc} add r1, r3, #0x334 mov r0, r2 add r1, r1, #0x1e0 bl func_01ff9158 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov37_021841f4 _02184304: .word 0x00000b33 _02184308: .word 0x0000219a _0218430c: .word 0xfffff4cd _02184310: .word 0x0000199a _02184314: .word 0xffffe666 _02184318: .word 0xffffde66 .global func_ov37_0218431c arm_func_start func_ov37_0218431c func_ov37_0218431c: ; 0x0218431c stmdb sp!, {r3, r4, lr} sub sp, sp, #4 mov r4, r0 add r0, r4, #0x1000 ldr r1, [r0, #0x5a8] add r0, sp, #0 str r1, [sp] mov r1, #0x1000 mov r2, #0x44 bl func_0202b0f4 ldr r1, [sp] add r0, r4, #0x1000 str r1, [r0, #0x5a8] add sp, sp, #4 ldmia sp!, {r3, r4, pc} arm_func_end func_ov37_0218431c .global func_ov37_02184358 arm_func_start func_ov37_02184358 func_ov37_02184358: ; 0x02184358 add r0, r0, #0x1000 ldr r0, [r0, #0x5a8] cmp r0, #0x1000 moveq r0, #1 movne r0, #0 bx lr arm_func_end func_ov37_02184358 .global func_ov37_02184370 arm_func_start func_ov37_02184370 func_ov37_02184370: ; 0x02184370 ldr r1, _02184380 ; =0x0000019a add r0, r0, #0x1000 str r1, [r0, #0x5b0] bx lr .align 2, 0 arm_func_end func_ov37_02184370 _02184380: .word 0x0000019a .global func_ov37_02184384 arm_func_start func_ov37_02184384 func_ov37_02184384: ; 0x02184384 stmdb sp!, {r4, lr} mov r4, r0 blx func_ov00_020a95ec mov r0, r4 bl func_0202ea0c mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov37_02184384 .global func_ov37_021843a0 arm_func_start func_ov37_021843a0 func_ov37_021843a0: ; 0x021843a0 bx lr arm_func_end func_ov37_021843a0 .global func_ov37_021843a4 arm_func_start func_ov37_021843a4 func_ov37_021843a4: ; 0x021843a4 stmdb sp!, {r3, lr} ldr r1, _021843d0 ; =data_027e0fe0 mov r0, #0x1b4 ldr r1, [r1] mov r2, #4 ldr r1, [r1] bl func_0202e9dc cmp r0, #0 ldmeqia sp!, {r3, pc} bl func_ov37_021843d4 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov37_021843a4 _021843d0: .word data_027e0fe0 .global func_ov37_021843d4 arm_func_start func_ov37_021843d4 func_ov37_021843d4: ; 0x021843d4 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov00_020c1554 ldr r1, _02184474 ; =data_ov37_02188cd4 ldr r0, _02184478 ; =data_027e0fb4 str r1, [r4] ldr r0, [r0] mov r1, #4 bl func_ov00_020ad52c mov r2, #0 mov r1, r0 mov r3, r2 add r0, r4, #0x158 blx func_ov00_020bd618 ldr r0, _02184478 ; =data_027e0fb4 mov r1, #5 ldr r0, [r0] bl func_ov00_020ad52c mov r1, r0 add r0, r4, #0x164 mov r2, #0 mov r3, r2 blx func_ov00_020bd618 add r0, r4, #0x158 str r0, [r4, #0x170] mov r2, #0 add r0, r4, #0x100 strh r2, [r0, #0x80] str r2, [r4, #0x7c] str r2, [r4, #0x80] str r2, [r4, #0x84] ldr r1, _0218447c ; =0x000004cd mov r0, r4 str r1, [r4, #0x88] str r2, [r4, #0x8c] str r2, [r4, #0x90] str r2, [r4, #0x94] str r1, [r4, #0x98] str r2, [r4, #0x6c] ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_021843d4 _02184474: .word data_ov37_02188cd4 _02184478: .word data_027e0fb4 _0218447c: .word 0x000004cd .global func_ov37_02184480 arm_func_start func_ov37_02184480 func_ov37_02184480: ; 0x02184480 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x164 blx func_ov00_020b3ea8 add r0, r4, #0x158 blx func_ov00_020b3ea8 mov r0, r4 bl func_ov00_020c1730 mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov37_02184480 .global func_ov37_021844a8 arm_func_start func_ov37_021844a8 func_ov37_021844a8: ; 0x021844a8 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x164 blx func_ov00_020b3ea8 add r0, r4, #0x158 blx func_ov00_020b3ea8 mov r0, r4 bl func_ov00_020c1730 mov r0, r4 bl func_0202ea0c mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov37_021844a8 .global func_ov37_021844d8 arm_func_start func_ov37_021844d8 func_ov37_021844d8: ; 0x021844d8 mov r1, #8 strb r1, [r0, #0x125] mov r2, #0 str r2, [r0, #0x130] mov r1, #0x3c str r1, [r0, #0x17c] str r2, [r0, #0x174] ldr r1, [r0, #0x8c] ldr r2, _02184524 ; =0x000014cd str r1, [r0, #0xa8] ldr r3, [r0, #0x90] ldr r1, _02184528 ; =data_ov37_021891c0 str r3, [r0, #0xac] ldr r3, [r0, #0x94] str r3, [r0, #0xb0] str r2, [r0, #0xb4] str r1, [r0, #0xa0] mov r0, #1 bx lr .align 2, 0 arm_func_end func_ov37_021844d8 _02184524: .word 0x000014cd _02184528: .word data_ov37_021891c0 .global func_ov37_0218452c arm_func_start func_ov37_0218452c func_ov37_0218452c: ; 0x0218452c stmdb sp!, {r3, r4, r5, lr} sub sp, sp, #0x18 mov r4, r0 mov r5, r2 mov r0, r1 add r1, r4, #0x48 add r2, r4, #0x184 bl func_01ff9bf8 ldr r0, [r4, #0x184] cmp r0, #0 ldreq r0, [r4, #0x188] cmpeq r0, #0 ldreq r0, [r4, #0x18c] cmpeq r0, #0 bne _0218457c mov r0, #0x1000 str r0, [r4, #0x184] mov r0, #0 str r0, [r4, #0x188] str r0, [r4, #0x18c] _0218457c: add r0, r4, #0x184 mov r1, r0 bl func_01ff9d4c mov r0, #0x800 cmp r5, #0 ldrne r0, _02184688 ; =0x0000099a ldr r1, [r4, #0x184] smull r2, r1, r0, r1 adds r2, r2, #0x800 adc r1, r1, #0 mov r2, r2, lsr #0xc orr r2, r2, r1, lsl #20 str r2, [r4, #0x60] ldr r1, [r4, #0x188] smull r2, r1, r0, r1 adds r2, r2, #0x800 adc r1, r1, #0 mov r2, r2, lsr #0xc orr r2, r2, r1, lsl #20 str r2, [r4, #0x64] ldr r1, [r4, #0x18c] smull r2, r1, r0, r1 adds r2, r2, #0x800 adc r0, r1, #0 mov r1, r2, lsr #0xc orr r1, r1, r0, lsl #20 str r1, [r4, #0x68] ldr r0, [r4, #0x184] ldr r1, [r4, #0x18c] bl func_01ffa0f4 strh r0, [r4, #0x78] add r0, r4, #0x60 bl func_01ff9cec str r0, [r4, #0x178] mov r3, #0 mov r1, #0x1000 str r1, [sp, #0x10] add r0, sp, #0xc add r2, sp, #0 add r1, r4, #0x184 str r3, [sp, #0xc] str r3, [sp, #0x14] bl func_01ff9c68 add r1, sp, #0 add r0, r4, #0x184 add r2, sp, #0xc bl func_01ff9c68 ldr r0, [sp] str r0, [r4, #0x190] ldr r0, [sp, #4] str r0, [r4, #0x194] ldr r0, [sp, #8] str r0, [r4, #0x198] ldr r0, [sp, #0xc] str r0, [r4, #0x19c] ldr r0, [sp, #0x10] str r0, [r4, #0x1a0] ldr r0, [sp, #0x14] str r0, [r4, #0x1a4] ldr r0, [r4, #0x184] str r0, [r4, #0x1a8] ldr r0, [r4, #0x188] str r0, [r4, #0x1ac] ldr r0, [r4, #0x18c] str r0, [r4, #0x1b0] add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov37_0218452c _02184688: .word 0x0000099a .global func_ov37_0218468c arm_func_start func_ov37_0218468c func_ov37_0218468c: ; 0x0218468c stmdb sp!, {r3, r4, r5, lr} sub sp, sp, #0x30 ldrb r2, [r1, #0x118] mov r5, r0 mov r4, #0 cmp r2, #0 beq _02184708 ldr r0, [r1, #0x88] cmp r0, #0 ldrge r0, [r5, #0x88] cmpge r0, #0 blt _02184708 mov r0, r1 add r1, sp, #0x20 bl func_ov00_020c2a0c add r1, sp, #0x10 mov r0, r5 bl func_ov00_020c2a0c ldr r1, [r5, #0x60] add r0, sp, #0x20 str r1, [sp, #4] ldr r2, [r5, #0x64] add r1, sp, #0x10 str r2, [sp, #8] ldr r3, [r5, #0x68] add r2, sp, #4 str r3, [sp, #0xc] add r3, sp, #0 bl func_ov00_0208ee4c cmp r0, #0 movne r4, #1 _02184708: mov r0, r4 add sp, sp, #0x30 ldmia sp!, {r3, r4, r5, pc} arm_func_end func_ov37_0218468c .global func_ov37_02184714 arm_func_start func_ov37_02184714 func_ov37_02184714: ; 0x02184714 stmdb sp!, {r3, lr} ldr r3, [r0, #0x174] ldr r2, [r0, #0x178] ldr r1, _02184754 ; =0x00000ccd add lr, r3, r2 umull ip, r3, lr, r1 mov r2, #0 mla r3, lr, r2, r3 mov r2, lr, asr #0x1f mla r3, r2, r1, r3 adds ip, ip, #0x800 adc r1, r3, #0 mov r2, ip, lsr #0xc orr r2, r2, r1, lsl #20 str r2, [r0, #0x174] ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov37_02184714 _02184754: .word 0x00000ccd .global func_ov37_02184758 arm_func_start func_ov37_02184758 func_ov37_02184758: ; 0x02184758 stmdb sp!, {r3, r4, lr} sub sp, sp, #0x24 mov r4, r0 add r2, sp, #0x18 add r0, r4, #0x54 add r1, r4, #0x7c bl func_01ff9bc4 add r2, sp, #0xc add r0, r4, #0x48 add r1, r4, #0x7c bl func_01ff9bc4 add r0, r4, #0x60 str r0, [sp] mov r0, #2 str r0, [sp, #4] mov r0, #1 str r0, [sp, #8] ldr r3, [r4, #0x88] add r1, sp, #0x18 add r2, sp, #0xc mov r0, r4 bl func_ov00_020c1f5c cmp r0, #0 addeq sp, sp, #0x24 moveq r0, #0 ldmeqia sp!, {r3, r4, pc} mov r0, r4 mov r1, #2 bl func_ov37_02184b78 mov r0, #1 add sp, sp, #0x24 ldmia sp!, {r3, r4, pc} arm_func_end func_ov37_02184758 .global func_ov37_021847d8 arm_func_start func_ov37_021847d8 func_ov37_021847d8: ; 0x021847d8 stmdb sp!, {r3, r4, r5, lr} mov r5, r0 mov r4, r1 bl func_ov00_020c313c cmp r0, #0 beq _02184930 ldr r0, [r5, #0x48] str r0, [r5, #0x54] ldr r0, [r5, #0x4c] str r0, [r5, #0x58] ldr r0, [r5, #0x50] str r0, [r5, #0x5c] ldr r0, [r5, #0x130] cmp r0, #2 beq _02184834 ldr r0, [r5, #0x17c] sub r0, r0, #1 str r0, [r5, #0x17c] cmp r0, #0 bgt _02184834 mov r0, r5 mov r1, #2 bl func_ov37_02184b78 _02184834: ldr r0, [r5, #0x130] cmp r0, #0 beq _02184850 cmp r0, #1 beq _021848fc cmp r0, #2 b _02184928 _02184850: add r0, r5, #0x48 add r1, r5, #0x60 mov r2, r0 bl func_01ff9bc4 mov r0, #0x800 ldr r1, [r5, #0x4c] rsb r0, r0, #0 cmp r1, r0 ble _02184928 cmp r1, #0x1000 bge _02184928 mov r0, r5 bl func_ov37_02184758 cmp r0, #0 bne _02184928 ldr r2, _02184944 ; =data_ov37_02189194 mov r1, #0 mov r0, r5 str r1, [r2, #0x34] bl func_01fffd04 cmp r0, #0 beq _021848cc ldr r0, [r5, #0xc4] ldr r1, [r5, #0xcc] bl func_01ffa0f4 mov r1, r0, lsl #0x10 mov r0, r5 mov r1, r1, asr #0x10 mov r2, #1 bl func_ov37_021849a4 b _02184928 _021848cc: ldrb r0, [r5, #0x111] cmp r0, #0 beq _02184928 ldr r0, [r5, #0xc4] ldr r1, [r5, #0xcc] bl func_01ffa0f4 mov r1, r0, lsl #0x10 mov r0, r5 mov r1, r1, asr #0x10 mov r2, #1 bl func_ov37_021849a4 b _02184928 _021848fc: add r3, r5, #0x100 ldrsh r2, [r3, #0x80] ldr r1, _02184948 ; =0xfffff1c7 add r0, r5, #0x48 add ip, r2, r1 add r1, r5, #0x60 mov r2, r0 strh ip, [r3, #0x80] bl func_01ff9bc4 mov r0, r5 bl func_ov00_020c3070 _02184928: mov r0, r5 bl func_ov37_02184714 _02184930: mov r1, r4 add r0, r5, #0xa4 add r2, r5, #0x48 bl func_ov00_0207a1c8 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov37_021847d8 _02184944: .word data_ov37_02189194 _02184948: .word 0xfffff1c7 .global func_ov37_0218494c arm_func_start func_ov37_0218494c func_ov37_0218494c: ; 0x0218494c stmdb sp!, {r3, lr} ldr r2, [r0] ldr r2, [r2, #0x14] blx r2 ldmia sp!, {r3, pc} arm_func_end func_ov37_0218494c .global func_ov37_02184960 arm_func_start func_ov37_02184960 func_ov37_02184960: ; 0x02184960 ldrh r1, [r1, #0x78] ldr ip, _021849a0 ; =data_02050f54 mov r2, #0 mov r1, r1, asr #0x4 mov r1, r1, lsl #0x1 mov r3, r1, lsl #0x1 add r1, r1, #1 ldrsh r3, [ip, r3] mov r1, r1, lsl #0x1 ldrsh r1, [ip, r1] rsb r3, r3, #0 strh r3, [r0, #0x50] strh r2, [r0, #0x52] rsb r1, r1, #0 strh r1, [r0, #0x54] bx lr .align 2, 0 arm_func_end func_ov37_02184960 _021849a0: .word data_02050f54 .global func_ov37_021849a4 arm_func_start func_ov37_021849a4 func_ov37_021849a4: ; 0x021849a4 stmdb sp!, {r3, r4, r5, r6, r7, lr} sub sp, sp, #0x38 mov r6, r1 mov r1, #1 mov r5, r0 mov r4, r2 bl func_ov37_02184b78 mov r1, #0 mov r0, #0x1000 str r0, [sp, #0x34] str r1, [sp, #0x2c] str r1, [sp, #0x30] ldr r1, [r5, #0x60] add r0, sp, #0x2c str r1, [sp, #0x20] ldr r2, [r5, #0x64] mov r1, r6 str r2, [sp, #0x24] ldr r2, [r5, #0x68] str r2, [sp, #0x28] ldr r2, [r5, #0x60] str r2, [sp, #0x14] ldr r2, [r5, #0x64] str r2, [sp, #0x18] ldr r2, [r5, #0x68] str r2, [sp, #0x1c] bl func_ov00_020a61ac add r0, sp, #0x20 add r1, sp, #0x2c bl func_01ff9c2c mov r3, #0x1800 rsb r3, r3, #0 mvn ip, #0 umull r7, r6, r0, r3 mla r6, r0, ip, r6 mov lr, r0, asr #0x1f adds r0, r7, #0x800 mla r6, lr, r3, r6 add r2, sp, #0x14 adc r3, r6, #0 mov r0, r0, lsr #0xc orr r0, r0, r3, lsl #20 add r1, sp, #0x2c mov r3, r2 bl func_01ff9e64 add r0, sp, #0x14 mov r1, #0x400 bl func_01fffbec ldr r1, [sp, #0x14] add r0, r5, #0x158 str r1, [r5, #0x60] ldr r1, [sp, #0x18] cmp r4, #0 str r1, [r5, #0x64] ldr r1, [sp, #0x1c] str r1, [r5, #0x68] str r0, [r5, #0x170] beq _02184b50 add r0, r5, #0x48 add r3, sp, #8 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldrh r0, [r5, #0x78] ldr lr, _02184b60 ; =data_02050f54 ldr r4, _02184b64 ; =0x000004cd mov r0, r0, asr #0x4 mov r0, r0, lsl #0x2 ldrsh r1, [lr, r0] ldr r2, [r5, #0x48] ldr r0, _02184b68 ; =data_027e0ffc smulbb r1, r1, r4 add r1, r1, #0x800 sub r1, r2, r1, asr #12 str r1, [r5, #0x48] ldrh r2, [r5, #0x78] ldr ip, [r5, #0x50] ldr r1, _02184b6c ; =0x0000019b mov r2, r2, asr #0x4 mov r2, r2, lsl #0x1 add r2, r2, #1 mov r2, r2, lsl #0x1 ldrsh lr, [lr, r2] mov r2, r3 mov r3, #0 smulbb r4, lr, r4 add r4, r4, #0x800 sub r4, ip, r4, asr #12 str r4, [r5, #0x50] bl func_ov00_020ceacc mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02184b70 ; =data_027e0e58 add r2, sp, #8 ldr r0, [r0] mov r1, #4 mov r3, #2 bl func_ov00_0207c1b0 ldr r1, _02184b74 ; =func_ov37_02184960 str r5, [sp] str r1, [sp, #4] ldr r0, _02184b70 ; =data_027e0e58 add r2, sp, #8 ldr r0, [r0] mov r1, #5 mov r3, #2 bl func_ov00_0207c1b0 _02184b50: mov r0, #0 str r0, [r5, #0x6c] add sp, sp, #0x38 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 arm_func_end func_ov37_021849a4 _02184b60: .word data_02050f54 _02184b64: .word 0x000004cd _02184b68: .word data_027e0ffc _02184b6c: .word 0x0000019b _02184b70: .word data_027e0e58 _02184b74: .word func_ov37_02184960 .global func_ov37_02184b78 arm_func_start func_ov37_02184b78 func_ov37_02184b78: ; 0x02184b78 str r1, [r0, #0x130] cmp r1, #1 beq _02184b90 cmp r1, #2 beq _02184ba8 b _02184bb8 _02184b90: mov r1, #0 str r1, [r0, #0x174] str r1, [r0, #0x178] mov r1, #0x10 str r1, [r0, #0x17c] b _02184bb8 _02184ba8: mov r1, #0 str r1, [r0, #0x174] str r1, [r0, #0x178] strb r1, [r0, #0x118] _02184bb8: mov r0, #1 bx lr arm_func_end func_ov37_02184b78 .global func_ov37_02184bc0 arm_func_start func_ov37_02184bc0 func_ov37_02184bc0: ; 0x02184bc0 stmdb sp!, {r4, r5, lr} sub sp, sp, #0xb4 mov r5, r0 cmp r1, #0 ldrneb r0, [r5, #0xa5] ldreqb r0, [r5, #0xa4] cmp r0, #0 ldrne r0, [r5, #0x130] cmpne r0, #2 addeq sp, sp, #0xb4 ldmeqia sp!, {r4, r5, pc} add r0, r5, #0x48 add r3, sp, #0x84 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} add r0, r5, #0x100 ldrsh r0, [r0, #0x80] cmp r0, #0 beq _02184cc0 mov r0, r0, lsl #0x10 mov r0, r0, lsr #0x10 mov r0, r0, asr #0x4 mov r2, r0, lsl #0x1 add r0, r2, #1 ldr r1, _0218503c ; =data_02050f54 mov r2, r2, lsl #0x1 mov r0, r0, lsl #0x1 ldrsh r4, [r1, r2] ldrsh r2, [r1, r0] add r0, sp, #0x60 mov r1, r4 blx func_01ff81f8 add r0, sp, #0x60 add r2, sp, #0x90 add r1, r5, #0x190 bl func_0202e030 ldr r0, [r5, #0x130] mov r1, #0 cmp r0, #1 ldr r0, _02185040 ; =0x00000333 umull r3, r2, r4, r0 bne _02184c94 mla r2, r4, r1, r2 mov r1, r4, asr #0x1f mla r2, r1, r0, r2 adds r3, r3, #0x800 adc r0, r2, #0 mov r1, r3, lsr #0xc ldr r2, [sp, #0x88] orr r1, r1, r0, lsl #20 sub r0, r2, r1 str r0, [sp, #0x88] b _02184ce0 _02184c94: mla r2, r4, r1, r2 mov r1, r4, asr #0x1f mla r2, r1, r0, r2 adds r3, r3, #0x800 adc r0, r2, #0 mov r1, r3, lsr #0xc ldr r2, [sp, #0x88] orr r1, r1, r0, lsl #20 add r0, r2, r1 str r0, [sp, #0x88] b _02184ce0 _02184cc0: add ip, r5, #0x190 ldmia ip!, {r0, r1, r2, r3} add r4, sp, #0x90 stmia r4!, {r0, r1, r2, r3} ldmia ip!, {r0, r1, r2, r3} stmia r4!, {r0, r1, r2, r3} ldr r0, [ip] str r0, [r4] _02184ce0: ldr r4, [r5, #0x17c] cmp r4, #0x10 bge _02184d14 ldr r0, [r5, #0x170] ldr r1, [r0] ldr r1, [r1, #8] blx r1 mov r2, r4, lsl #0x5 mov r1, r2, asr #0x3 add r1, r2, r1, lsr #28 mov r2, r1, asr #0x4 mov r1, #0 bl func_02019570 _02184d14: ldr r0, _02185044 ; =data_ov37_02188508 add ip, sp, #0x54 ldmia r0, {r0, r1, r2} stmia ip, {r0, r1, r2} ldr r0, [r5, #0x170] add r2, sp, #0x90 ldr r4, [r0] add r3, sp, #0x84 ldr r4, [r4, #0x10] mov r1, ip blx r4 ldr r0, [r5, #0x17c] cmp r0, #0x10 bge _02184d70 ldr r0, [r5, #0x170] ldr r1, [r0] ldr r1, [r1, #8] blx r1 mov r1, #0 mov r2, #0x1f bl func_02019570 add sp, sp, #0xb4 ldmia sp!, {r4, r5, pc} _02184d70: ldr r2, [r5, #0x174] mov r0, #0x800 mov r1, r2, asr #0x1f mov r4, r1, lsl #0xd adds r0, r0, r2, lsl #13 orr r4, r4, r2, lsr #19 mov r3, #2 adc ip, r4, #0 mov r4, r0, lsr #0xc add r1, sp, #0x38 mov r0, #0x10 mov r2, #1 str r3, [sp, #0x38] orr r4, r4, ip, lsl #20 bl func_01ffa9fc mov r1, #0 mov r2, r1 mov r0, #0x11 bl func_01ffa9fc add r0, r5, #0x48 add r3, sp, #0x48 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, [r5, #0x184] mov r1, r3 mov r0, r0, lsl #0xb ldr r3, [sp, #0x48] add r0, r0, #0x800 sub r0, r3, r0, asr #12 str r0, [sp, #0x48] ldr r0, [r5, #0x188] ldr r2, [sp, #0x4c] mov r0, r0, lsl #0xb add r0, r0, #0x800 sub r0, r2, r0, asr #12 str r0, [sp, #0x4c] ldr r2, [r5, #0x18c] ldr r3, [sp, #0x50] mov r2, r2, lsl #0xb add r2, r2, #0x800 sub r2, r3, r2, asr #12 str r2, [sp, #0x50] mov r0, #0x1c mov r2, #3 bl func_01ffa9fc mov r0, #0x1a add r1, sp, #0x90 mov r2, #9 bl func_01ffa9fc mov r0, #0x2000 str r0, [sp, #0x3c] str r0, [sp, #0x40] mov r0, #0x1b add r1, sp, #0x3c mov r2, #3 str r4, [sp, #0x44] bl func_01ffa9fc mov r0, #0 str r0, [sp, #0x34] mov r0, #0x2a add r1, sp, #0x34 mov r2, #1 bl func_01ffa9fc mov r0, #0 str r0, [sp, #0x30] mov r0, #0x2b add r1, sp, #0x30 mov r2, #1 bl func_01ffa9fc ldr r1, _02185048 ; =0x010800c0 mov r0, #0x29 str r1, [sp, #0x2c] add r1, sp, #0x2c mov r2, #1 bl func_01ffa9fc ldr r3, _0218504c ; =0x4210ffff add r1, sp, #0x28 mov r0, #0x30 mov r2, #1 str r3, [sp, #0x28] bl func_01ffa9fc mov r3, #0 add r1, sp, #0x24 mov r0, #0x31 mov r2, #1 str r3, [sp, #0x24] bl func_01ffa9fc mov r3, #0 add r1, sp, #0x20 mov r0, #0x40 mov r2, #1 str r3, [sp, #0x20] bl func_01ffa9fc ldr r2, _02185050 ; =data_ov37_02188508 add r1, sp, #0x18 ldr r0, [r2, #0x10] ldr r3, [r2, #0x14] ldr r4, [r2, #0xc] mov r0, r0, lsl #0x10 mov r2, r0, asr #0x10 mov r0, r4, lsl #0x10 mov r2, r2, lsl #0x10 mov r2, r2, lsr #0x10 mov r3, r3, lsl #0x10 mov r4, r0, asr #0x10 mov r0, r3, asr #0x10 mov r0, r0, lsl #0x10 mov r3, r0, lsr #0x10 mov r0, r4, lsl #0x10 mov r2, r2, lsl #0x10 orr r4, r2, r0, lsr #16 mov r0, #0x23 mov r2, #2 str r4, [sp, #0x18] str r3, [sp, #0x1c] bl func_01ffa9fc ldr r3, _02185050 ; =data_ov37_02188508 add r1, sp, #0x10 ldr r2, [r3, #0x1c] ldr r0, [r3, #0x18] mov r2, r2, lsl #0x10 mov r2, r2, asr #0x10 mov r0, r0, lsl #0x10 mov r2, r2, lsl #0x10 mov r0, r0, asr #0x10 mov r2, r2, lsr #0x10 mov r0, r0, lsl #0x10 mov r2, r2, lsl #0x10 orr r0, r2, r0, lsr #16 str r0, [sp, #0x10] ldr r2, [r3, #0x20] mov r0, #0x23 mov r2, r2, lsl #0x10 mov r2, r2, asr #0x10 mov r2, r2, lsl #0x10 mov r2, r2, lsr #0x10 str r2, [sp, #0x14] mov r2, #2 bl func_01ffa9fc ldr r3, _02185050 ; =data_ov37_02188508 mov r0, #0x23 ldr r2, [r3, #0x28] ldr r1, [r3, #0x24] mov r2, r2, lsl #0x10 mov r2, r2, asr #0x10 mov r1, r1, lsl #0x10 mov r2, r2, lsl #0x10 mov r1, r1, asr #0x10 mov r2, r2, lsr #0x10 mov r1, r1, lsl #0x10 mov r2, r2, lsl #0x10 orr r1, r2, r1, lsr #16 str r1, [sp, #8] ldr r2, [r3, #0x2c] add r1, sp, #8 mov r2, r2, lsl #0x10 mov r2, r2, asr #0x10 mov r2, r2, lsl #0x10 mov r2, r2, lsr #0x10 str r2, [sp, #0xc] mov r2, #2 bl func_01ffa9fc mov r1, #0 mov r0, #0x41 mov r2, r1 bl func_01ffa9fc mov r0, #2 str r0, [sp, #4] mov r0, #0x10 add r1, sp, #4 mov r2, #1 bl func_01ffa9fc mov r2, #1 add r1, sp, #0 mov r0, #0x12 str r2, [sp] bl func_01ffa9fc add sp, sp, #0xb4 ldmia sp!, {r4, r5, pc} .align 2, 0 arm_func_end func_ov37_02184bc0 _0218503c: .word data_02050f54 _02185040: .word 0x00000333 _02185044: .word data_ov37_02188508 _02185048: .word 0x010800c0 _0218504c: .word 0x4210ffff _02185050: .word data_ov37_02188508 .global func_ov37_02185054 arm_func_start func_ov37_02185054 func_ov37_02185054: ; 0x02185054 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov00_02081f4c mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov37_02185054 .global func_ov37_02185068 arm_func_start func_ov37_02185068 func_ov37_02185068: ; 0x02185068 stmdb sp!, {r4, lr} ldr r1, _021850c4 ; =data_027e0fe0 mov r0, #0x184 ldr r1, [r1] mov r2, #4 ldr r1, [r1] bl func_0202e9dc movs r4, r0 beq _021850bc bl func_ov00_020c1554 ldr r0, _021850c8 ; =data_ov37_02188d90 mov r1, #0 str r0, [r4] strb r1, [r4, #0x158] mov r0, #0xb str r0, [r4, #0x168] str r1, [r4, #0x16c] str r1, [r4, #0x17c] str r1, [r4, #0x170] str r1, [r4, #0x174] str r1, [r4, #0x178] _021850bc: mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_02185068 _021850c4: .word data_027e0fe0 _021850c8: .word data_ov37_02188d90 .global func_ov37_021850cc arm_func_start func_ov37_021850cc func_ov37_021850cc: ; 0x021850cc stmdb sp!, {r4, lr} mov r1, #0x12 mov r4, r0 bl func_ov00_020c1fc8 cmp r0, #0 bne _021850fc mov r1, #0 mov r0, r4 mov r2, r1 bl func_ov00_020c243c cmp r0, #0 beq _02185104 _021850fc: mov r0, #1 ldmia sp!, {r4, pc} _02185104: mov r0, #0 ldmia sp!, {r4, pc} arm_func_end func_ov37_021850cc .global func_ov37_0218510c arm_func_start func_ov37_0218510c func_ov37_0218510c: ; 0x0218510c stmdb sp!, {r4, r5, lr} sub sp, sp, #0xc mov r4, r0 add r2, r4, #0x170 mov r0, #4 str r2, [sp] str r0, [sp, #4] mov r5, r1 sub r1, r0, #5 ldr r0, _02185174 ; =data_027e0ff8 str r1, [sp, #8] ldr r0, [r0] mov r2, r5 mov r3, r5 add r1, r4, #8 bl func_ov05_021082e4 ldr r1, [r5] mov r0, r4 str r1, [r4, #0x48] ldr r1, [r5, #4] str r1, [r4, #0x4c] ldr r1, [r5, #8] str r1, [r4, #0x50] bl func_ov37_021850cc add sp, sp, #0xc ldmia sp!, {r4, r5, pc} .align 2, 0 arm_func_end func_ov37_0218510c _02185174: .word data_027e0ff8 .global func_ov37_02185178 arm_func_start func_ov37_02185178 func_ov37_02185178: ; 0x02185178 stmdb sp!, {r4, lr} ldr r2, [r1, #0x10] mov r4, r0 cmp r2, #8 addls pc, pc, r2, lsl #2 b _021852d4 _02185190: ; jump table b _021851b4 ; case 0 b _021851c8 ; case 1 b _02185200 ; case 2 b _02185200 ; case 3 b _02185208 ; case 4 b _02185210 ; case 5 b _02185248 ; case 6 b _02185270 ; case 7 b _0218529c ; case 8 _021851b4: bl func_ov37_02185300 mov r1, #0xf6 mov r2, #0 bl func_ov00_020bf008 b _021852dc _021851c8: ldr r0, [r1, #0x14] cmp r0, #0 beq _021852dc ldr r2, [r0, #4] ldr r1, _021852e4 ; =0x5342454d cmp r2, r1 bne _021852dc bl func_ov14_02146634 ldr r0, _021852e8 ; =data_027e0ffc add r2, r4, #0x48 mov r1, #0xf6 mov r3, #0 bl func_ov00_020ceacc b _021852dc _02185200: mov r0, #0 ldmia sp!, {r4, pc} _02185208: mov r0, #0 ldmia sp!, {r4, pc} _02185210: ldr r0, [r1, #0x14] cmp r0, #0 beq _021852dc ldr r2, [r0, #4] ldr r1, _021852ec ; =0x424d524e cmp r2, r1 bne _021852dc bl func_ov14_021231d4 ldr r0, _021852e8 ; =data_027e0ffc ldr r1, _021852f0 ; =0x0000019d add r2, r4, #0x48 mov r3, #0 bl func_ov00_020ceacc b _021852dc _02185248: ldr r0, [r1, #0x14] cmp r0, #0 beq _021852dc ldr r2, [r0, #4] ldr r1, _021852f4 ; =0x424f4d42 cmp r2, r1 bne _021852dc bl func_ov14_02122e98 mov r0, #0 ldmia sp!, {r4, pc} _02185270: ldr r0, [r1, #0x14] cmp r0, #0 beq _021852dc ldr r2, [r0, #4] ldr r1, _021852f8 ; =0x41525257 cmp r2, r1 bne _021852dc ldrsh r1, [r4, #0x78] mov r2, #1 bl func_ov14_02120ac4 b _021852dc _0218529c: ldr r0, [r1, #0x14] cmp r0, #0 beq _021852dc ldr r2, [r0, #4] ldr r1, _021852fc ; =0x524f5045 cmp r2, r1 bne _021852dc bl func_ov14_02123904 ldr r0, _021852e8 ; =data_027e0ffc add r2, r4, #0x48 mov r1, #0xf6 mov r3, #0 bl func_ov00_020ceacc b _021852dc _021852d4: mov r0, #1 ldmia sp!, {r4, pc} _021852dc: mov r0, #1 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_02185178 _021852e4: .word 0x5342454d _021852e8: .word data_027e0ffc _021852ec: .word 0x424d524e _021852f0: .word 0x0000019d _021852f4: .word 0x424f4d42 _021852f8: .word 0x41525257 _021852fc: .word 0x524f5045 .global func_ov37_02185300 arm_func_start func_ov37_02185300 func_ov37_02185300: ; 0x02185300 ldr ip, _0218530c ; =func_01fffcec mov r0, #0 bx ip .align 2, 0 arm_func_end func_ov37_02185300 _0218530c: .word func_01fffcec .global func_ov37_02185310 arm_func_start func_ov37_02185310 func_ov37_02185310: ; 0x02185310 ldr r1, _02185360 ; =data_027e0d0c mov ip, #0x1000 ldr r3, [r1] mov r2, #0x2000 str r3, [r0, #0x7c] ldr r3, [r1, #4] str r3, [r0, #0x80] ldr r3, [r1, #8] str r3, [r0, #0x84] str ip, [r0, #0x88] ldr r3, [r1] str r3, [r0, #0x170] ldr r3, [r1, #4] str r3, [r0, #0x174] ldr r1, [r1, #8] str r1, [r0, #0x178] str ip, [r0, #0x17c] str r2, [r0, #0x180] mov r0, #1 bx lr .align 2, 0 arm_func_end func_ov37_02185310 _02185360: .word data_027e0d0c .global func_ov37_02185364 arm_func_start func_ov37_02185364 func_ov37_02185364: ; 0x02185364 ldr ip, _02185378 ; =func_ov00_0207a1c8 mov r2, r0 add r0, r2, #0xa4 add r2, r2, #0x48 bx ip .align 2, 0 arm_func_end func_ov37_02185364 _02185378: .word func_ov00_0207a1c8 .global func_ov37_0218537c arm_func_start func_ov37_0218537c func_ov37_0218537c: ; 0x0218537c stmdb sp!, {r4, lr} mov r4, r0 bl func_ov00_020c1730 mov r0, r4 bl func_0202ea0c mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov37_0218537c .global func_ov37_02185398 arm_func_start func_ov37_02185398 func_ov37_02185398: ; 0x02185398 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov00_020c1730 mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov37_02185398 .global func_ov37_021853ac arm_func_start func_ov37_021853ac func_ov37_021853ac: ; 0x021853ac stmdb sp!, {r4, lr} ldr r1, _02185408 ; =data_027e0fe0 mov r0, #0x184 ldr r1, [r1] mov r2, #4 ldr r1, [r1] bl func_0202e9dc movs r4, r0 beq _02185400 bl func_ov00_020c1554 ldr r0, _0218540c ; =data_ov37_02188e4c mov r1, #0 str r0, [r4] strb r1, [r4, #0x158] mov r0, #0xb str r0, [r4, #0x168] str r1, [r4, #0x16c] str r1, [r4, #0x17c] str r1, [r4, #0x170] str r1, [r4, #0x174] str r1, [r4, #0x178] _02185400: mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_021853ac _02185408: .word data_027e0fe0 _0218540c: .word data_ov37_02188e4c .global func_ov37_02185410 arm_func_start func_ov37_02185410 func_ov37_02185410: ; 0x02185410 stmdb sp!, {r3, lr} mov ip, r1 ldrb r1, [ip] mov lr, r0 add r0, ip, #4 strb r1, [lr, #0x158] add r3, lr, #0x15c ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r1, [ip, #0x10] mov r0, #1 str r1, [lr, #0x168] ldr r1, [ip, #0x14] str r1, [lr, #0x16c] ldmia sp!, {r3, pc} arm_func_end func_ov37_02185410 .global func_ov37_0218544c arm_func_start func_ov37_0218544c func_ov37_0218544c: ; 0x0218544c stmdb sp!, {r3, lr} ldr r1, _021854a4 ; =data_027e0d0c ldr ip, _021854a8 ; =0x0000099a ldr r2, [r1] mov r3, #0 str r2, [r0, #0x7c] ldr lr, [r1, #4] rsb r2, ip, #0 str lr, [r0, #0x80] ldr lr, [r1, #8] mov r1, ip, lsl #0x1 str lr, [r0, #0x84] str ip, [r0, #0x88] str r3, [r0, #0x170] str r2, [r0, #0x174] str r3, [r0, #0x178] str ip, [r0, #0x17c] str r1, [r0, #0x180] mov r1, #2 str r1, [r0, #0x12c] mov r0, #1 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov37_0218544c _021854a4: .word data_027e0d0c _021854a8: .word 0x0000099a .global func_ov37_021854ac arm_func_start func_ov37_021854ac func_ov37_021854ac: ; 0x021854ac ldr ip, _021854c0 ; =func_ov00_0207a1c8 mov r2, r0 add r0, r2, #0xa4 add r2, r2, #0x48 bx ip .align 2, 0 arm_func_end func_ov37_021854ac _021854c0: .word func_ov00_0207a1c8 .global func_ov37_021854c4 arm_func_start func_ov37_021854c4 func_ov37_021854c4: ; 0x021854c4 stmdb sp!, {lr} sub sp, sp, #0xc mov r3, r0 add r1, r3, #0x170 mov r0, #4 str r1, [sp] str r0, [sp, #4] sub r1, r0, #5 ldr r0, _02185508 ; =data_027e0ff8 str r1, [sp, #8] ldr r0, [r0] add r1, r3, #8 add r2, r3, #0x48 add r3, r3, #0x48 bl func_ov05_021082e4 add sp, sp, #0xc ldmia sp!, {pc} .align 2, 0 arm_func_end func_ov37_021854c4 _02185508: .word data_027e0ff8 .global func_ov37_0218550c arm_func_start func_ov37_0218550c func_ov37_0218550c: ; 0x0218550c stmdb sp!, {r4, lr} mov r4, r0 bl func_ov00_020c1730 mov r0, r4 bl func_0202ea0c mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov37_0218550c .global func_ov37_02185528 arm_func_start func_ov37_02185528 func_ov37_02185528: ; 0x02185528 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov00_020c1730 mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov37_02185528 .global func_ov37_0218553c arm_func_start func_ov37_0218553c func_ov37_0218553c: ; 0x0218553c stmdb sp!, {r3, lr} ldr r1, _02185568 ; =data_027e0fe0 mov r0, #0x460 ldr r1, [r1] mov r2, #4 ldr r1, [r1] bl func_0202e9dc cmp r0, #0 ldmeqia sp!, {r3, pc} bl func_ov37_0218621c ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov37_0218553c _02185568: .word data_027e0fe0 .global func_ov37_0218556c arm_func_start func_ov37_0218556c func_ov37_0218556c: ; 0x0218556c stmdb sp!, {r4, lr} mov r1, #0 mov r4, r0 blx func_ov00_020a956c ldr r1, _0218558c ; =data_ov37_021890c4 mov r0, r4 str r1, [r4] ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_0218556c _0218558c: .word data_ov37_021890c4 .global func_ov37_02185590 arm_func_start func_ov37_02185590 func_ov37_02185590: ; 0x02185590 stmdb sp!, {r4, lr} mov r4, r0 ldr r0, [r4, #8] ldr r1, _02185690 ; =data_ov37_02188548 add r0, r0, #0x40 bl func_0201e388 str r0, [r4, #0x7c] ldr r2, [r4, #8] ldr r1, _02185694 ; =data_ov37_0218855c ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x5c] ldr r2, [r4, #8] ldr r1, _02185698 ; =data_ov37_02188570 ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x60] ldr r2, [r4, #8] ldr r1, _0218569c ; =data_ov37_02188584 ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x64] ldr r2, [r4, #8] ldr r1, _021856a0 ; =data_ov37_02188598 ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x68] ldr r1, [r4, #8] ldr r0, [r1, #8] add r0, r1, r0 ldr r1, _021856a4 ; =data_ov37_021885ac add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x6c] ldr r2, [r4, #8] ldr r1, _021856a8 ; =data_ov37_021885c0 ldr r0, [r2, #8] add r0, r2, r0 add r0, r0, #4 bl func_0201e388 str r0, [r4, #0x70] add r0, r4, #0x80 bl func_01ff892c mov r2, #0 mov r1, #1 b _02185674 _02185668: add r0, r4, r2 strb r1, [r0, #0x74] add r2, r2, #1 _02185674: cmp r2, #6 blt _02185668 ldr r1, _021856ac ; =func_ov37_0218577c add r0, r4, #4 str r4, [r4, #0x30] bl func_02018cb8 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_02185590 _02185690: .word data_ov37_02188548 _02185694: .word data_ov37_0218855c _02185698: .word data_ov37_02188570 _0218569c: .word data_ov37_02188584 _021856a0: .word data_ov37_02188598 _021856a4: .word data_ov37_021885ac _021856a8: .word data_ov37_021885c0 _021856ac: .word func_ov37_0218577c .global func_ov37_021856b0 arm_func_start func_ov37_021856b0 func_ov37_021856b0: ; 0x021856b0 stmdb sp!, {r4, r5, r6, lr} ldr r1, [r0, #4] ldr r3, [r0, #0xb0] ldr r2, [r1, #0x2c] mov r1, #0 mvn r5, #0 mov lr, r1 mov r4, #0x1f _021856d0: ldr ip, [r0, #8] tst ip, #8 ldrneb r6, [r0, #0xad] add ip, r2, r1, lsl #2 ldr ip, [ip, #0x5c] moveq r6, r5 cmp ip, r6 bne _02185714 add ip, r2, r1 ldrb ip, [ip, #0x74] cmp ip, #0 ldr ip, [r3, #0xc] movne r6, r4 moveq r6, lr bic ip, ip, #0x1f0000 orr ip, ip, r6, lsl #16 str ip, [r3, #0xc] _02185714: add r1, r1, #1 cmp r1, #6 blt _021856d0 ldmia sp!, {r4, r5, r6, pc} arm_func_end func_ov37_021856b0 .global func_ov37_02185724 arm_func_start func_ov37_02185724 func_ov37_02185724: ; 0x02185724 stmdb sp!, {r4, lr} sub sp, sp, #0x30 ldr r2, [r0, #4] ldr r1, [r0, #8] ldr r4, [r2, #0x2c] tst r1, #0x10 ldrneb r1, [r0, #0xae] ldr r0, [r4, #0x7c] mvneq r1, #0 cmp r0, r1 addne sp, sp, #0x30 ldmneia sp!, {r4, pc} add r0, sp, #0 mov r1, #0 bl func_0201b1bc bl func_02018450 mov r1, r0 add r0, sp, #0 add r2, r4, #0x80 bl func_01ff8e84 add sp, sp, #0x30 ldmia sp!, {r4, pc} arm_func_end func_ov37_02185724 .global func_ov37_0218577c arm_func_start func_ov37_0218577c func_ov37_0218577c: ; 0x0218577c ldr r1, _021857a0 ; =func_ov37_02185724 mov r2, #3 str r1, [r0, #0x24] ldr r1, _021857a4 ; =func_ov37_021856b0 strb r2, [r0, #0x92] str r1, [r0, #0x1c] mov r1, #2 strb r1, [r0, #0x90] bx lr .align 2, 0 arm_func_end func_ov37_0218577c _021857a0: .word func_ov37_02185724 _021857a4: .word func_ov37_021856b0 .global func_ov37_021857a8 arm_func_start func_ov37_021857a8 func_ov37_021857a8: ; 0x021857a8 stmdb sp!, {r4, r5, r6, lr} sub sp, sp, #0x10 mov r4, r0 add r2, r4, #0x20 add r3, r4, #0xd0 bl func_ov00_020c5c2c ldr r1, _02185884 ; =data_ov37_021890b0 add r0, r4, #0x20 str r1, [r4] bl func_ov37_0218556c add r0, r4, #0xd0 add r1, r4, #0xf4 mov r2, #0 blx func_ov00_020c0c08 ldr r1, _02185888 ; =data_ov37_02188c68 add r0, r4, #0x150 str r1, [r4, #0xd0] add r1, r4, #0x174 mov r2, #0 blx func_ov00_020c0c08 ldr r1, _02185888 ; =data_ov37_02188c68 mov r0, #0 str r1, [r4, #0x150] str r0, [r4, #0x1d0] str r0, [r4, #0x1d4] ldr r2, _0218588c ; =data_ov37_021885d4 mov r0, r4 mov r1, #0x59 bl func_ov00_020c5c98 add r0, r4, #0x20 bl func_ov37_02185590 ldr r1, [r4, #4] ldr r0, _02185890 ; =data_027e0fec str r1, [r4, #0x158] ldr r1, [r0] ldr r0, _02185894 ; =data_ov37_0218912c add r1, r1, #0x1000 ldr r6, [r1, #0x380] blx func_02016fe8 mov r5, r0 ldr r1, _02185898 ; =data_ov37_02189144 add r0, sp, #0 mov r2, #0x10 bl func_020470ec mov r0, r5 add r1, sp, #0 bl func_0201e544 mov r1, r0 mov r2, r6 add r0, r4, #0x150 mov r3, #1 bl func_ov00_020c0cc8 mov r0, r4 add sp, sp, #0x10 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 arm_func_end func_ov37_021857a8 _02185884: .word data_ov37_021890b0 _02185888: .word data_ov37_02188c68 _0218588c: .word data_ov37_021885d4 _02185890: .word data_027e0fec _02185894: .word data_ov37_0218912c _02185898: .word data_ov37_02189144 .global func_ov37_0218589c arm_func_start func_ov37_0218589c func_ov37_0218589c: ; 0x0218589c stmdb sp!, {r4, lr} mov r4, r0 blx func_ov00_020a95ec mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov37_0218589c .global func_ov37_021858b0 arm_func_start func_ov37_021858b0 func_ov37_021858b0: ; 0x021858b0 stmdb sp!, {r4, lr} sub sp, sp, #0x30 mov r4, r0 ldr r0, [r4, #0x14] cmp r0, #2 bne _021858f8 ldr r0, [r4, #0x10] mov r1, #0x1000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _021858f8 ldr r2, [r4, #0x1c] ldr r0, _021859f4 ; =data_027e0ffc ldr r1, _021859f8 ; =0x000002bb add r2, r2, #0x48 mov r3, #0 bl func_ov00_020ceacc _021858f8: add r0, r4, #0x150 bl func_ov00_020c0e04 ldr r0, _021859fc ; =data_ov37_02188610 add r3, sp, #0x24 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} add r2, sp, #0x18 mov r0, r3 add r1, r4, #0xa0 bl func_01ff9158 ldr r0, [r4, #0x1d0] cmp r0, #0 beq _02185974 ldr r1, [r0, #0x20] ldr r2, [sp, #0x18] ldr r1, [r1] ldr r1, [r1, #4] add r1, r2, r1 str r1, [r0, #0x28] ldr r1, [r0, #0x20] ldr r2, [sp, #0x1c] ldr r1, [r1] ldr r1, [r1, #8] add r1, r2, r1 str r1, [r0, #0x2c] ldr r1, [r0, #0x20] ldr r2, [sp, #0x20] ldr r1, [r1] ldr r1, [r1, #0xc] add r1, r2, r1 str r1, [r0, #0x30] _02185974: ldr r0, _02185a00 ; =data_ov37_0218861c add r3, sp, #0xc ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} add r2, sp, #0 mov r0, r3 add r1, r4, #0xa0 bl func_01ff9158 ldr r0, [r4, #0x1d4] cmp r0, #0 addeq sp, sp, #0x30 ldmeqia sp!, {r4, pc} ldr r1, [r0, #0x20] ldr r2, [sp] ldr r1, [r1] ldr r1, [r1, #4] add r1, r2, r1 str r1, [r0, #0x28] ldr r1, [r0, #0x20] ldr r2, [sp, #4] ldr r1, [r1] ldr r1, [r1, #8] add r1, r2, r1 str r1, [r0, #0x2c] ldr r1, [r0, #0x20] ldr r2, [sp, #8] ldr r1, [r1] ldr r1, [r1, #0xc] add r1, r2, r1 str r1, [r0, #0x30] add sp, sp, #0x30 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_021858b0 _021859f4: .word data_027e0ffc _021859f8: .word 0x000002bb _021859fc: .word data_ov37_02188610 _02185a00: .word data_ov37_0218861c .global func_ov37_02185a04 arm_func_start func_ov37_02185a04 func_ov37_02185a04: ; 0x02185a04 stmdb sp!, {r3, r4, lr} sub sp, sp, #4 mov r1, #2 mov r4, r0 str r1, [sp] ldr r0, _02185a60 ; =data_027e0e58 ldr r3, [r4, #0x1c] ldr r0, [r0] ldr r2, _02185a64 ; =0x0000100e add r1, r4, #0x1d0 add r3, r3, #0x48 bl func_ov00_0207c1f8 mov r0, #2 str r0, [sp] ldr r0, _02185a60 ; =data_027e0e58 ldr r3, [r4, #0x1c] ldr r0, [r0] ldr r2, _02185a64 ; =0x0000100e add r1, r4, #0x1d4 add r3, r3, #0x48 bl func_ov00_0207c1f8 add sp, sp, #4 ldmia sp!, {r3, r4, pc} .align 2, 0 arm_func_end func_ov37_02185a04 _02185a60: .word data_027e0e58 _02185a64: .word 0x0000100e .global func_ov37_02185a68 arm_func_start func_ov37_02185a68 func_ov37_02185a68: ; 0x02185a68 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x20 ldr r1, [r0] ldr r1, [r1, #0x30] blx r1 add r0, r4, #0x20 ldr r2, [r0] add r1, r4, #0x150 ldr r2, [r2, #0x24] blx r2 add r0, r4, #0x150 mov r1, #0 bl func_ov00_020c0e24 mov r0, #0x1000 str r0, [r4, #0x160] ldmia sp!, {r4, pc} arm_func_end func_ov37_02185a68 .global func_ov37_02185aac arm_func_start func_ov37_02185aac func_ov37_02185aac: ; 0x02185aac stmdb sp!, {r4, r5, r6, r7, lr} sub sp, sp, #0x2c ldr r4, _02185b30 ; =data_ov37_02188628 add lr, sp, #0x14 mov r5, r2 mov r7, r0 mov r6, r1 mov ip, lr ldmia r4!, {r0, r1, r2, r3} stmia lr!, {r0, r1, r2, r3} ldmia r4, {r0, r1} stmia lr, {r0, r1} ldr r0, [ip, r6, lsl #2] cmp r5, #1 add r0, r7, r0 addne sp, sp, #0x2c strb r5, [r0, #0x94] ldmneia sp!, {r4, r5, r6, r7, pc} add r2, sp, #8 mov r0, r7 mov r1, r6 bl func_ov37_02185b6c mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02185b34 ; =data_027e0e58 ldr r1, _02185b38 ; =0x00001012 ldr r0, [r0] add r2, sp, #8 mov r3, #2 bl func_ov00_0207c1b0 add sp, sp, #0x2c ldmia sp!, {r4, r5, r6, r7, pc} .align 2, 0 arm_func_end func_ov37_02185aac _02185b30: .word data_ov37_02188628 _02185b34: .word data_027e0e58 _02185b38: .word 0x00001012 .global func_ov37_02185b3c arm_func_start func_ov37_02185b3c func_ov37_02185b3c: ; 0x02185b3c stmdb sp!, {r4, r5, r6, lr} mov r6, r0 mov r5, r1 mov r4, #0 _02185b4c: mov r0, r6 mov r1, r4 mov r2, r5 bl func_ov37_02185aac add r4, r4, #1 cmp r4, #6 blt _02185b4c ldmia sp!, {r4, r5, r6, pc} arm_func_end func_ov37_02185b3c .global func_ov37_02185b6c arm_func_start func_ov37_02185b6c func_ov37_02185b6c: ; 0x02185b6c stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x54 ldr r6, _02186160 ; =data_ov37_02188640 ldr r4, _02186164 ; =data_ov37_0218864c mov r8, r1 ldr ip, _02186168 ; =data_ov37_02188658 ldr sl, _0218616c ; =data_ov37_02188664 add r5, sp, #0x48 add lr, sp, #0x3c add r3, sp, #0x30 add fp, sp, #0x24 mov sb, r0 mov r7, r2 ldmia r6, {r0, r1, r2} stmia r5, {r0, r1, r2} ldmia r4, {r0, r1, r2} stmia lr, {r0, r1, r2} ldmia ip, {r0, r1, r2} stmia r3, {r0, r1, r2} ldmia sl, {r0, r1, r2} stmia fp, {r0, r1, r2} ldr r0, _02186170 ; =data_ov37_02188670 add r3, sp, #0x18 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, _02186174 ; =data_ov37_0218867c add r3, sp, #0xc ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r4, [sb, #0x1c] add r3, sp, #0 add r0, r4, #0x48 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, [sb, #0xc8] cmp r8, #5 str r0, [sp, #4] addls pc, pc, r8, lsl #2 b _02186158 _02185c08: ; jump table b _02185c20 ; case 0 b _02185d00 ; case 1 b _02185de0 ; case 2 b _02185ec0 ; case 3 b _02185fa0 ; case 4 b _02186080 ; case 5 _02185c20: ldrh r1, [r4, #0x78] ldr r0, [sp] ldr r2, _02186178 ; =data_02050f54 str r0, [r7] ldr r0, [sp, #4] mov r1, r1, asr #0x4 str r0, [r7, #4] ldr r0, [sp, #8] mov r4, r1, lsl #0x1 str r0, [r7, #8] ldr r1, [r7, #4] ldr r0, [sp, #0x4c] mov r3, r4, lsl #0x1 add r0, r1, r0 ldrsh r1, [r2, r3] str r0, [r7, #4] add r3, r4, #1 ldr r0, [sp, #0x50] mov r3, r3, lsl #0x1 smull r5, r4, r0, r1 adds r6, r5, #0x800 ldrsh r5, [r2, r3] adc r4, r4, #0 mov r6, r6, lsr #0xc smull r3, r2, r0, r5 ldr r0, [r7] orr r6, r6, r4, lsl #20 add r0, r0, r6 adds r3, r3, #0x800 str r0, [r7] adc r0, r2, #0 mov r2, r3, lsr #0xc ldr r3, [r7, #8] orr r2, r2, r0, lsl #20 add r0, r3, r2 str r0, [r7, #8] ldr r4, [sp, #0x48] rsb r0, r1, #0 smull r1, r2, r4, r5 adds r3, r1, #0x800 smull r1, r0, r4, r0 adc r2, r2, #0 adds r1, r1, #0x800 mov r3, r3, lsr #0xc ldr r4, [r7] orr r3, r3, r2, lsl #20 add r2, r4, r3 str r2, [r7] adc r0, r0, #0 mov r1, r1, lsr #0xc ldr r2, [r7, #8] orr r1, r1, r0, lsl #20 add r0, r2, r1 add sp, sp, #0x54 str r0, [r7, #8] ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} _02185d00: ldrh r1, [r4, #0x78] ldr r0, [sp] ldr r2, _02186178 ; =data_02050f54 str r0, [r7] ldr r0, [sp, #4] mov r1, r1, asr #0x4 str r0, [r7, #4] ldr r0, [sp, #8] mov r4, r1, lsl #0x1 str r0, [r7, #8] ldr r1, [r7, #4] ldr r0, [sp, #0x40] mov r3, r4, lsl #0x1 add r0, r1, r0 ldrsh r1, [r2, r3] str r0, [r7, #4] add r3, r4, #1 ldr r0, [sp, #0x44] mov r3, r3, lsl #0x1 smull r5, r4, r0, r1 adds r6, r5, #0x800 ldrsh r5, [r2, r3] adc r4, r4, #0 mov r6, r6, lsr #0xc smull r3, r2, r0, r5 ldr r0, [r7] orr r6, r6, r4, lsl #20 add r0, r0, r6 adds r3, r3, #0x800 str r0, [r7] adc r0, r2, #0 mov r2, r3, lsr #0xc ldr r3, [r7, #8] orr r2, r2, r0, lsl #20 add r0, r3, r2 str r0, [r7, #8] ldr r4, [sp, #0x3c] rsb r0, r1, #0 smull r1, r2, r4, r5 adds r3, r1, #0x800 smull r1, r0, r4, r0 adc r2, r2, #0 adds r1, r1, #0x800 mov r3, r3, lsr #0xc ldr r4, [r7] orr r3, r3, r2, lsl #20 add r2, r4, r3 str r2, [r7] adc r0, r0, #0 mov r1, r1, lsr #0xc ldr r2, [r7, #8] orr r1, r1, r0, lsl #20 add r0, r2, r1 add sp, sp, #0x54 str r0, [r7, #8] ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} _02185de0: ldrh r1, [r4, #0x78] ldr r0, [sp] ldr r2, _02186178 ; =data_02050f54 str r0, [r7] ldr r0, [sp, #4] mov r1, r1, asr #0x4 str r0, [r7, #4] ldr r0, [sp, #8] mov r4, r1, lsl #0x1 str r0, [r7, #8] ldr r1, [r7, #4] ldr r0, [sp, #0x34] mov r3, r4, lsl #0x1 add r0, r1, r0 ldrsh r1, [r2, r3] str r0, [r7, #4] add r3, r4, #1 ldr r0, [sp, #0x38] mov r3, r3, lsl #0x1 smull r5, r4, r0, r1 adds r6, r5, #0x800 ldrsh r5, [r2, r3] adc r4, r4, #0 mov r6, r6, lsr #0xc smull r3, r2, r0, r5 ldr r0, [r7] orr r6, r6, r4, lsl #20 add r0, r0, r6 adds r3, r3, #0x800 str r0, [r7] adc r0, r2, #0 mov r2, r3, lsr #0xc ldr r3, [r7, #8] orr r2, r2, r0, lsl #20 add r0, r3, r2 str r0, [r7, #8] ldr r4, [sp, #0x30] rsb r0, r1, #0 smull r1, r2, r4, r5 adds r3, r1, #0x800 smull r1, r0, r4, r0 adc r2, r2, #0 adds r1, r1, #0x800 mov r3, r3, lsr #0xc ldr r4, [r7] orr r3, r3, r2, lsl #20 add r2, r4, r3 str r2, [r7] adc r0, r0, #0 mov r1, r1, lsr #0xc ldr r2, [r7, #8] orr r1, r1, r0, lsl #20 add r0, r2, r1 add sp, sp, #0x54 str r0, [r7, #8] ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} _02185ec0: ldrh r1, [r4, #0x78] ldr r0, [sp] ldr r2, _02186178 ; =data_02050f54 str r0, [r7] ldr r0, [sp, #4] mov r1, r1, asr #0x4 str r0, [r7, #4] ldr r0, [sp, #8] mov r4, r1, lsl #0x1 str r0, [r7, #8] ldr r1, [r7, #4] ldr r0, [sp, #0x28] mov r3, r4, lsl #0x1 add r0, r1, r0 ldrsh r1, [r2, r3] str r0, [r7, #4] add r3, r4, #1 ldr r0, [sp, #0x2c] mov r3, r3, lsl #0x1 smull r5, r4, r0, r1 adds r6, r5, #0x800 ldrsh r5, [r2, r3] adc r4, r4, #0 mov r6, r6, lsr #0xc smull r3, r2, r0, r5 ldr r0, [r7] orr r6, r6, r4, lsl #20 add r0, r0, r6 adds r3, r3, #0x800 str r0, [r7] adc r0, r2, #0 mov r2, r3, lsr #0xc ldr r3, [r7, #8] orr r2, r2, r0, lsl #20 add r0, r3, r2 str r0, [r7, #8] ldr r4, [sp, #0x24] rsb r0, r1, #0 smull r1, r2, r4, r5 adds r3, r1, #0x800 smull r1, r0, r4, r0 adc r2, r2, #0 adds r1, r1, #0x800 mov r3, r3, lsr #0xc ldr r4, [r7] orr r3, r3, r2, lsl #20 add r2, r4, r3 str r2, [r7] adc r0, r0, #0 mov r1, r1, lsr #0xc ldr r2, [r7, #8] orr r1, r1, r0, lsl #20 add r0, r2, r1 add sp, sp, #0x54 str r0, [r7, #8] ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} _02185fa0: ldrh r1, [r4, #0x78] ldr r0, [sp] ldr r2, _02186178 ; =data_02050f54 str r0, [r7] ldr r0, [sp, #4] mov r1, r1, asr #0x4 str r0, [r7, #4] ldr r0, [sp, #8] mov r4, r1, lsl #0x1 str r0, [r7, #8] ldr r1, [r7, #4] ldr r0, [sp, #0x1c] mov r3, r4, lsl #0x1 add r0, r1, r0 ldrsh r1, [r2, r3] str r0, [r7, #4] add r3, r4, #1 ldr r0, [sp, #0x20] mov r3, r3, lsl #0x1 smull r5, r4, r0, r1 adds r6, r5, #0x800 ldrsh r5, [r2, r3] adc r4, r4, #0 mov r6, r6, lsr #0xc smull r3, r2, r0, r5 ldr r0, [r7] orr r6, r6, r4, lsl #20 add r0, r0, r6 adds r3, r3, #0x800 str r0, [r7] adc r0, r2, #0 mov r2, r3, lsr #0xc ldr r3, [r7, #8] orr r2, r2, r0, lsl #20 add r0, r3, r2 str r0, [r7, #8] ldr r4, [sp, #0x18] rsb r0, r1, #0 smull r1, r2, r4, r5 adds r3, r1, #0x800 smull r1, r0, r4, r0 adc r2, r2, #0 adds r1, r1, #0x800 mov r3, r3, lsr #0xc ldr r4, [r7] orr r3, r3, r2, lsl #20 add r2, r4, r3 str r2, [r7] adc r0, r0, #0 mov r1, r1, lsr #0xc ldr r2, [r7, #8] orr r1, r1, r0, lsl #20 add r0, r2, r1 add sp, sp, #0x54 str r0, [r7, #8] ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} _02186080: ldrh r1, [r4, #0x78] ldr r0, [sp] ldr r2, _02186178 ; =data_02050f54 str r0, [r7] ldr r0, [sp, #4] mov r1, r1, asr #0x4 str r0, [r7, #4] ldr r0, [sp, #8] mov r4, r1, lsl #0x1 str r0, [r7, #8] ldr r1, [r7, #4] ldr r0, [sp, #0x10] mov r3, r4, lsl #0x1 add r0, r1, r0 str r0, [r7, #4] ldrsh r1, [r2, r3] ldr r0, [sp, #0x14] add r3, r4, #1 smull r5, r4, r0, r1 adds r6, r5, #0x800 mov r3, r3, lsl #0x1 ldrsh r5, [r2, r3] adc r4, r4, #0 mov r6, r6, lsr #0xc smull r3, r2, r0, r5 adds r3, r3, #0x800 ldr r0, [r7] orr r6, r6, r4, lsl #20 add r0, r0, r6 str r0, [r7] adc r0, r2, #0 mov r2, r3, lsr #0xc ldr r3, [r7, #8] orr r2, r2, r0, lsl #20 add r0, r3, r2 str r0, [r7, #8] ldr r4, [sp, #0xc] rsb r0, r1, #0 smull r1, r2, r4, r5 adds r3, r1, #0x800 smull r1, r0, r4, r0 adc r2, r2, #0 adds r1, r1, #0x800 mov r3, r3, lsr #0xc ldr r4, [r7] orr r3, r3, r2, lsl #20 add r2, r4, r3 str r2, [r7] adc r0, r0, #0 mov r1, r1, lsr #0xc ldr r2, [r7, #8] orr r1, r1, r0, lsl #20 add r0, r2, r1 str r0, [r7, #8] _02186158: add sp, sp, #0x54 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov37_02185b6c _02186160: .word data_ov37_02188640 _02186164: .word data_ov37_0218864c _02186168: .word data_ov37_02188658 _0218616c: .word data_ov37_02188664 _02186170: .word data_ov37_02188670 _02186174: .word data_ov37_0218867c _02186178: .word data_02050f54 .global func_ov37_0218617c arm_func_start func_ov37_0218617c func_ov37_0218617c: ; 0x0218617c mov r0, #1 bx lr arm_func_end func_ov37_0218617c .global func_ov37_02186184 arm_func_start func_ov37_02186184 func_ov37_02186184: ; 0x02186184 stmdb sp!, {r4, lr} mov r4, r0 cmp r2, #0 bne _021861b4 ldr r0, [r4, #4] bl func_ov37_02186e60 ldr r0, _02186208 ; =data_027e0fc8 ldr r1, [r4, #4] ldr r0, [r0] add r1, r1, #0x60 bl func_ov00_020bbbb8 b _02186200 _021861b4: ldr r0, _0218620c ; =data_027e0fe4 mov r1, r2 ldr r0, [r0] bl func_ov00_020c35d8 cmp r0, #0 beq _02186200 ldr r2, [r0, #4] ldr r1, _02186210 ; =0x424b4559 cmp r2, r1 ldrne r1, _02186214 ; =0x43525953 cmpne r2, r1 ldrne r1, _02186218 ; =0x464f5243 cmpne r2, r1 bne _02186200 ldr r2, [r0] ldr r1, [r4, #4] ldr r2, [r2, #0x54] add r1, r1, #0x60 blx r2 _02186200: mov r0, #1 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_02186184 _02186208: .word data_027e0fc8 _0218620c: .word data_027e0fe4 _02186210: .word 0x424b4559 _02186214: .word 0x43525953 _02186218: .word 0x464f5243 .global func_ov37_0218621c arm_func_start func_ov37_0218621c func_ov37_0218621c: ; 0x0218621c stmdb sp!, {r4, lr} mov r4, r0 bl func_ov00_020ca668 ldr r2, _021862ac ; =data_ov37_02188f88 mov r1, r4 add r0, r4, #0x21c str r2, [r4] bl func_ov37_021857a8 mvn r0, #0 str r0, [r4, #0x404] str r0, [r4, #0x408] mov r2, #0 strb r2, [r4, #0x41a] strb r2, [r4, #0x41b] strb r2, [r4, #0x41c] strb r2, [r4, #0x41d] ldr r0, _021862b0 ; =data_ov37_02189098 str r2, [r4, #0x420] str r0, [r4, #0x424] add r0, r4, #0x24 ldr r1, _021862b4 ; =data_ov00_020e2f04 str r4, [r0, #0x404] str r1, [r4, #0x42c] add r0, r4, #0x2c mov r1, #1 strb r1, [r0, #0x404] strb r2, [r0, #0x405] str r2, [r0, #0x408] str r2, [r0, #0x40c] ldr r1, _021862b8 ; =data_ov00_020e2dd8 str r2, [r0, #0x410] str r1, [r4, #0x42c] strb r2, [r4, #0x458] mov r0, r4 str r2, [r4, #0x45c] ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_0218621c _021862ac: .word data_ov37_02188f88 _021862b0: .word data_ov37_02189098 _021862b4: .word data_ov00_020e2f04 _021862b8: .word data_ov00_020e2dd8 .global func_ov37_021862bc arm_func_start func_ov37_021862bc func_ov37_021862bc: ; 0x021862bc stmdb sp!, {r4, lr} mov r4, r0 bl func_ov00_02081f6c mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov37_021862bc .global func_ov37_021862d0 arm_func_start func_ov37_021862d0 func_ov37_021862d0: ; 0x021862d0 stmdb sp!, {r4, lr} ldr r1, _02186380 ; =data_ov37_02188f88 mov r4, r0 ldr r0, _02186384 ; =data_027e0fe4 str r1, [r4] add r1, r4, #4 ldr r0, [r0] add r1, r1, #0x400 bl func_ov00_020c3674 cmp r0, #0 beq _02186300 bl func_ov00_020c3180 _02186300: ldr r0, _02186388 ; =data_027e0f6c add r1, r4, #0x2c ldr r0, [r0] add r1, r1, #0x400 bl func_ov00_02093af0 add r0, r4, #0x2c add r0, r0, #0x400 bl func_ov00_02094824 add r0, r4, #0x24 add r0, r0, #0x400 bl func_ov00_02081f6c add r0, r4, #0x3f0 bl func_ov00_020b7d74 add r0, r4, #0x3ec bl func_ov00_020b7d74 add r0, r4, #0x36c blx func_ov00_020a9b6c add r0, r4, #0x2ec blx func_ov00_020a9b6c add r0, r4, #0x23c blx func_ov00_020a95ec add r0, r4, #0x1d8 bl func_ov00_02081f4c add r0, r4, #0x1c8 mov r1, #2 mov r2, #4 ldr r3, _0218638c ; =func_ov00_020b7d74 bl func_0204f754 mov r0, r4 bl func_ov00_020c1730 mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_021862d0 _02186380: .word data_ov37_02188f88 _02186384: .word data_027e0fe4 _02186388: .word data_027e0f6c _0218638c: .word func_ov00_020b7d74 .global func_ov37_02186390 arm_func_start func_ov37_02186390 func_ov37_02186390: ; 0x02186390 stmdb sp!, {r4, lr} ldr r1, _02186448 ; =data_ov37_02188f88 mov r4, r0 ldr r0, _0218644c ; =data_027e0fe4 str r1, [r4] add r1, r4, #4 ldr r0, [r0] add r1, r1, #0x400 bl func_ov00_020c3674 cmp r0, #0 beq _021863c0 bl func_ov00_020c3180 _021863c0: ldr r0, _02186450 ; =data_027e0f6c add r1, r4, #0x2c ldr r0, [r0] add r1, r1, #0x400 bl func_ov00_02093af0 add r0, r4, #0x2c add r0, r0, #0x400 bl func_ov00_02094824 add r0, r4, #0x24 add r0, r0, #0x400 bl func_ov00_02081f6c add r0, r4, #0x3f0 bl func_ov00_020b7d74 add r0, r4, #0x3ec bl func_ov00_020b7d74 add r0, r4, #0x36c blx func_ov00_020a9b6c add r0, r4, #0x2ec blx func_ov00_020a9b6c add r0, r4, #0x23c blx func_ov00_020a95ec add r0, r4, #0x1d8 bl func_ov00_02081f4c add r0, r4, #0x1c8 mov r1, #2 mov r2, #4 ldr r3, _02186454 ; =func_ov00_020b7d74 bl func_0204f754 mov r0, r4 bl func_ov00_020c1730 mov r0, r4 bl func_0202ea0c mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_02186390 _02186448: .word data_ov37_02188f88 _0218644c: .word data_027e0fe4 _02186450: .word data_027e0f6c _02186454: .word func_ov00_020b7d74 .global func_ov37_02186458 arm_func_start func_ov37_02186458 func_ov37_02186458: ; 0x02186458 stmdb sp!, {r4, lr} sub sp, sp, #0x58 mov r4, r0 mov r2, #0 strb r2, [r4, #0x3f4] str r2, [r4, #0x3f8] ldr r1, _0218665c ; =data_ov37_02188f00 str r2, [r4, #0x3fc] bl func_ov00_020ca8a4 mov r1, #0 str r1, [r4, #0x8c] mov r0, #0xc00 str r0, [r4, #0x90] str r1, [r4, #0x94] mov r0, #0x1000 str r0, [r4, #0x98] str r1, [r4, #0x7c] str r1, [r4, #0x80] str r1, [r4, #0x84] mov r0, #0x2000 str r0, [r4, #0x88] add r2, r4, #0x100 ldrh r3, [r2, #0xb0] add r0, r4, #0x1d8 bic r3, r3, #4 strh r3, [r2, #0xb0] bl func_ov00_020ca3d4 mov r2, #4 add r0, r4, #0x100 strh r2, [r0, #0x26] mov r0, r4 add r1, r4, #0x21c strh r2, [r4, #0x7a] bl func_ov00_020cb140 mov r0, #1 strb r0, [r4, #0x431] ldr r0, _02186660 ; =data_027e0f6c add r1, r4, #0x2c ldr r0, [r0] add r1, r1, #0x400 bl func_ov00_02093a5c mov r0, #0 str r0, [sp, #0x40] str r0, [sp, #0x44] str r0, [sp, #0x48] str r0, [sp, #0x4c] str r0, [sp, #0x50] str r0, [sp, #0x54] bic r0, r0, #0x6000 bic r0, r0, #0x1f orr r0, r0, #0x11 orr r3, r0, #0x1ac00000 add r0, r4, #0x24 add r0, r0, #0x400 str r0, [sp] add r0, r4, #0x2c add r0, r0, #0x400 ldr ip, [r0] ldr r2, [r4, #8] ldr ip, [ip, #0x14] add r1, sp, #0x40 str r3, [sp, #4] blx ip add r0, sp, #0x14 bl func_ov00_020c1500 mvn r1, #0 add r0, sp, #0x14 str r1, [sp, #0x30] str r1, [sp, #0x34] bl func_ov00_020c3348 ldr r1, [r4, #8] add r0, r4, #4 str r1, [sp, #0x30] ldr r2, [r4, #0xc] add r1, r0, #0x400 str r2, [sp, #0x34] str r1, [sp] ldr r0, _02186664 ; =data_027e0fe8 ldr r1, _02186668 ; =0x57534243 ldr r0, [r0] add r3, sp, #0x14 add r2, r4, #0x48 bl func_ov00_020c4048 ldr r0, _0218666c ; =data_027e0fe4 add r1, r4, #4 ldr r0, [r0] add r1, r1, #0x400 bl func_ov00_020c3674 add r1, r4, #0x1a add r0, r4, #0x48 add r1, r1, #0x400 bl func_ov00_020c5374 add r0, r4, #0x1a add r0, r0, #0x400 add r1, r4, #0x48 bl func_ov00_020c5330 ldr r1, [r4, #0x48] ldr r0, _02186670 ; =data_027e0e60 str r1, [sp, #8] ldr r2, [r4, #0x4c] ldr r0, [r0] str r2, [sp, #0xc] ldr r3, [r4, #0x50] add r1, sp, #8 mov r2, #1 str r3, [sp, #0x10] bl func_ov00_02083ee0 str r0, [r4, #0x4c] ldr r1, [r4, #0x48] add r0, r4, #0x21c str r1, [r4, #0x54] ldr r2, [r4, #0x4c] mov r1, #0 str r2, [r4, #0x58] ldr r2, [r4, #0x50] str r2, [r4, #0x5c] ldrb r2, [r4, #0x41a] strb r2, [r4, #0x41c] ldrb r2, [r4, #0x41b] strb r2, [r4, #0x41d] bl func_ov37_02185b3c add r0, r4, #0x21c bl func_ov37_02185a04 mov r0, r4 mov r1, #0 bl func_ov37_02186ea0 mov r0, #1 add sp, sp, #0x58 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_02186458 _0218665c: .word data_ov37_02188f00 _02186660: .word data_027e0f6c _02186664: .word data_027e0fe8 _02186668: .word 0x57534243 _0218666c: .word data_027e0fe4 _02186670: .word data_027e0e60 .global func_ov37_02186674 arm_func_start func_ov37_02186674 func_ov37_02186674: ; 0x02186674 add r3, r0, #0x100 strh r1, [r3, #0x22] ldrsh r1, [r3, #0x22] strh r1, [r3, #0x20] strb r2, [r0, #0x3f4] ldrsh r1, [r3, #0x20] str r1, [r0, #0x400] bx lr arm_func_end func_ov37_02186674 .global func_ov37_02186694 arm_func_start func_ov37_02186694 func_ov37_02186694: ; 0x02186694 stmdb sp!, {r3, lr} sub sp, sp, #0x20 mov r3, #0 mov r1, #0x2000 mov r2, #0x1000 mov ip, r0 str r2, [sp, #0x10] add r0, sp, #0xc str r3, [sp, #0xc] str r3, [sp, #0x14] str r1, [sp, #0x18] str r1, [sp, #0x1c] str r0, [sp] ldr r0, [ip, #0x20c] sub r1, r3, #1 str r0, [sp, #4] str r1, [sp, #8] ldr r0, _021866f8 ; =data_027e0ff8 add r1, ip, #8 ldr r0, [r0] add r2, ip, #0x48 add r3, ip, #0x54 bl func_ov05_021082e4 add sp, sp, #0x20 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov37_02186694 _021866f8: .word data_027e0ff8 .global func_ov37_021866fc arm_func_start func_ov37_021866fc func_ov37_021866fc: ; 0x021866fc bx lr arm_func_end func_ov37_021866fc .global func_ov37_02186700 arm_func_start func_ov37_02186700 func_ov37_02186700: ; 0x02186700 stmdb sp!, {r3, lr} mov r1, #0 str r1, [r0, #0x60] str r1, [r0, #0x68] ldr r1, [r0] ldr r1, [r1, #0x104] blx r1 ldmia sp!, {r3, pc} arm_func_end func_ov37_02186700 .global func_ov37_02186720 arm_func_start func_ov37_02186720 func_ov37_02186720: ; 0x02186720 stmdb sp!, {r3, r4, r5, r6, lr} sub sp, sp, #0xa4 mov r4, r0 mov r0, r1 add r1, sp, #0x38 bl func_ov00_020c5330 add r0, r4, #0x1a add r1, sp, #0x2c add r0, r0, #0x400 bl func_ov00_020c5330 add r1, sp, #0x38 add r0, r4, #0x14 bl func_ov00_020ce2f0 cmp r0, #0x9000 addgt sp, sp, #0xa4 movgt r0, #0 ldmgtia sp!, {r3, r4, r5, r6, pc} ldr r0, _02186850 ; =data_027e0fe4 add r1, r4, #0x34 ldr r0, [r0] bl func_ov00_020c3674 add r1, sp, #0x38 add r0, r0, #0x48 bl func_ov00_020ce2f0 cmp r0, #0x5000 addlt sp, sp, #0xa4 movlt r0, #0 ldmltia sp!, {r3, r4, r5, r6, pc} ldr r6, _02186854 ; =0x0000ffff mov r5, #0 ldr lr, [sp, #0x38] ldr ip, [sp, #0x3c] ldr r3, [sp, #0x40] ldr r2, [sp, #0x2c] ldr r1, [sp, #0x30] ldr r0, [sp, #0x34] str r3, [sp, #0x28] str r2, [sp, #0x14] str r0, [sp, #0x1c] strh r6, [sp, #0x68] strh r6, [sp, #0x6a] strh r6, [sp, #0x6c] strh r6, [sp, #0x6e] strh r5, [sp, #0x70] strb r5, [sp, #0x92] strb r5, [sp, #0x93] strb r5, [sp, #0x94] strb r5, [sp, #0x95] strb r5, [sp, #0x9c] strb r5, [sp, #0x9d] strb r5, [sp, #0x9e] strb r5, [sp, #0x9f] strb r5, [sp, #0xa0] strb r5, [sp, #0xa1] str lr, [sp, #0x20] str ip, [sp, #0x24] str r1, [sp, #0x18] add r0, r4, #0x8c str r0, [sp] ldr r1, [r4, #8] mov r0, #1 str r1, [sp, #4] str r0, [sp, #8] str r5, [sp, #0xc] ldr r0, _02186858 ; =data_027e0e60 str r5, [sp, #0x10] ldr r0, [r0] add r1, sp, #0x44 add r2, sp, #0x20 add r3, sp, #0x14 bl func_01ffbe78 cmp r0, #0 movne r0, r5 moveq r0, #1 add sp, sp, #0xa4 ldmia sp!, {r3, r4, r5, r6, pc} .align 2, 0 arm_func_end func_ov37_02186720 _02186850: .word data_027e0fe4 _02186854: .word 0x0000ffff _02186858: .word data_027e0e60 .global func_ov37_0218685c arm_func_start func_ov37_0218685c func_ov37_0218685c: ; 0x0218685c stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #0x28 mov r7, r0 add r1, r7, #0x1a add r0, r7, #0x48 add r1, r1, #0x400 bl func_ov00_020c5374 mov r0, r7 bl func_ov00_020c2974 bl func_0202bc10 cmp r0, #7 addls pc, pc, r0, lsl #2 b _0218694c _02186890: ; jump table b _021868b0 ; case 0 b _021868bc ; case 1 b _021868d8 ; case 2 b _021868e4 ; case 3 b _02186900 ; case 4 b _0218690c ; case 5 b _02186928 ; case 6 b _02186934 ; case 7 _021868b0: str r0, [sp, #8] mov r5, #1 b _0218694c _021868bc: mov r2, #0 mov r1, #2 str r0, [sp, #8] str r2, [sp, #0xc] str r1, [sp, #0x10] mov r5, #3 b _0218694c _021868d8: str r0, [sp, #8] mov r5, #1 b _0218694c _021868e4: mov r2, #4 mov r1, #2 str r0, [sp, #8] str r2, [sp, #0xc] str r1, [sp, #0x10] mov r5, #3 b _0218694c _02186900: str r0, [sp, #8] mov r5, #1 b _0218694c _0218690c: mov r2, #4 mov r1, #6 str r0, [sp, #8] str r2, [sp, #0xc] str r1, [sp, #0x10] mov r5, #3 b _0218694c _02186928: str r0, [sp, #8] mov r5, #1 b _0218694c _02186934: mov r2, #0 mov r1, #6 str r0, [sp, #8] str r2, [sp, #0xc] str r1, [sp, #0x10] mov r5, #3 _0218694c: ldrb r0, [r7, #0x41a] cmp r5, #0 mov r6, #0 strb r0, [r7, #0x41c] ldrb r0, [r7, #0x41b] strb r0, [r7, #0x41d] ble _02186a90 add r8, sp, #4 add r4, sp, #8 _02186970: ldrb r1, [r7, #0x41a] ldr r0, [r4, r6, lsl #2] strb r1, [sp, #4] ldrb r2, [r7, #0x41b] cmp r0, #7 strb r2, [sp, #5] addls pc, pc, r0, lsl #2 b _02186a5c _02186990: ; jump table b _021869b0 ; case 0 b _021869c0 ; case 1 b _021869dc ; case 2 b _021869ec ; case 3 b _02186a08 ; case 4 b _02186a18 ; case 5 b _02186a34 ; case 6 b _02186a44 ; case 7 _021869b0: and r0, r2, #0xff add r0, r0, #1 strb r0, [sp, #5] b _02186a5c _021869c0: and r1, r1, #0xff and r0, r2, #0xff add r1, r1, #1 add r0, r0, #1 strb r1, [sp, #4] strb r0, [sp, #5] b _02186a5c _021869dc: and r0, r1, #0xff add r0, r0, #1 strb r0, [sp, #4] b _02186a5c _021869ec: and r1, r1, #0xff and r0, r2, #0xff add r1, r1, #1 sub r0, r0, #1 strb r1, [sp, #4] strb r0, [sp, #5] b _02186a5c _02186a08: and r0, r2, #0xff sub r0, r0, #1 strb r0, [sp, #5] b _02186a5c _02186a18: and r1, r1, #0xff and r0, r2, #0xff sub r1, r1, #1 sub r0, r0, #1 strb r1, [sp, #4] strb r0, [sp, #5] b _02186a5c _02186a34: and r0, r1, #0xff sub r0, r0, #1 strb r0, [sp, #4] b _02186a5c _02186a44: and r1, r1, #0xff and r0, r2, #0xff sub r1, r1, #1 add r0, r0, #1 strb r1, [sp, #4] strb r0, [sp, #5] _02186a5c: mov r0, r7 mov r1, r8 bl func_ov37_02186720 cmp r0, #1 bne _02186a84 ldrb r0, [sp, #4] strb r0, [r7, #0x41c] ldrb r0, [sp, #5] strb r0, [r7, #0x41d] b _02186a90 _02186a84: add r6, r6, #1 cmp r6, r5 blt _02186970 _02186a90: add r0, r7, #0x1c add r1, r7, #0xc add r0, r0, #0x400 add r1, r1, #0x400 bl func_ov00_020c5330 ldrb r3, [r7, #0x41a] ldrb r1, [r7, #0x41c] ldrb r2, [r7, #0x41b] ldrb r0, [r7, #0x41d] strb r1, [sp, #2] cmp r1, r3 strb r0, [sp, #3] andeq r1, r0, #0xff andeq r0, r2, #0xff strb r3, [sp] strb r2, [sp, #1] cmpeq r1, r0 bne _02186aec mov r0, r7 bl func_ov00_020c2974 bl func_0202bc10 bl func_0202bc04 b _02186afc _02186aec: add r1, r7, #0xc mov r0, r7 add r1, r1, #0x400 bl func_ov00_020c2938 _02186afc: add r1, r7, #0x400 strh r0, [r1, #0x18] mov r1, r7 add r0, r7, #0x420 bl func_ov00_020cd010 add sp, sp, #0x28 ldmia sp!, {r4, r5, r6, r7, r8, pc} arm_func_end func_ov37_0218685c .global func_ov37_02186b18 arm_func_start func_ov37_02186b18 func_ov37_02186b18: ; 0x02186b18 ldr ip, _02186b30 ; =func_ov00_020cd060 add r1, r0, #0x400 ldrsh r1, [r1, #0x18] add r0, r0, #0x420 mov r2, #0x16c bx ip .align 2, 0 arm_func_end func_ov37_02186b18 _02186b30: .word func_ov00_020cd060 .global func_ov37_02186b34 arm_func_start func_ov37_02186b34 func_ov37_02186b34: ; 0x02186b34 add r1, r0, #0x400 ldrsh r2, [r0, #0x78] ldrsh r0, [r1, #0x18] cmp r2, r0 moveq r0, #1 movne r0, #0 bx lr arm_func_end func_ov37_02186b34 .global func_ov37_02186b50 arm_func_start func_ov37_02186b50 func_ov37_02186b50: ; 0x02186b50 ldr r2, _02186b64 ; =0x000004cd mov r1, #0xf5 str r2, [r0, #0x64] str r1, [r0, #0x6c] bx lr .align 2, 0 arm_func_end func_ov37_02186b50 _02186b64: .word 0x000004cd .global func_ov37_02186b68 arm_func_start func_ov37_02186b68 func_ov37_02186b68: ; 0x02186b68 stmdb sp!, {r3, r4, r5, lr} sub sp, sp, #0x38 mov r4, r0 add r0, r4, #0x1a add r1, sp, #0x2c add r0, r0, #0x400 bl func_ov00_020c5330 add r0, r4, #0xc add r1, sp, #0x2c add r0, r0, #0x400 bl func_01ff9ec0 add r1, r4, #0xc mov r5, r0 add r0, r1, #0x400 add r2, sp, #0x20 add r1, r4, #0x48 bl func_01ff9bf8 mov r1, #0 ldr r3, _02186ca8 ; =0x66666667 str r1, [sp, #0x24] smull r2, r1, r3, r5 mov r2, r5, lsr #0x1f add r0, sp, #0x20 add r1, r2, r1, asr #2 mov r2, r0 bl func_0202dc38 ldr r1, [sp, #0x20] mov r0, r4 str r1, [r4, #0x60] ldr r1, [sp, #0x28] str r1, [r4, #0x68] bl func_ov00_020c3070 mov r0, r4 ldr r1, [r0] ldr r1, [r1, #0x104] blx r1 ldrb r0, [r4, #0x111] cmp r0, #0 addeq sp, sp, #0x38 ldmeqia sp!, {r3, r4, r5, pc} add r0, r4, #0x48 add r3, sp, #0x14 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, _02186cac ; =data_027e0e60 ldr lr, [sp, #0x14] ldr ip, [sp, #0x18] ldr r3, [sp, #0x1c] ldr r0, [r0] add r1, sp, #8 mov r2, #1 str lr, [sp, #8] str ip, [sp, #0xc] str r3, [sp, #0x10] bl func_ov00_02083ee0 add r0, r0, #0xcd add r0, r0, #0x400 str r0, [sp, #0x18] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02186cb0 ; =data_027e0e58 ldr r1, _02186cb4 ; =0x000001a9 ldr r0, [r0] add r2, sp, #0x14 mov r3, #2 bl func_ov00_0207c1b0 ldr r0, _02186cb8 ; =data_027e0ffc ldr r1, _02186cbc ; =0x0000032f add r2, r4, #0x48 mov r3, #0 bl func_ov00_020ceacc mov r0, r4 bl func_ov37_02187cec ldrb r0, [r4, #0x41c] strb r0, [r4, #0x41a] ldrb r0, [r4, #0x41d] strb r0, [r4, #0x41b] add sp, sp, #0x38 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov37_02186b68 _02186ca8: .word 0x66666667 _02186cac: .word data_027e0e60 _02186cb0: .word data_027e0e58 _02186cb4: .word 0x000001a9 _02186cb8: .word data_027e0ffc _02186cbc: .word 0x0000032f .global func_ov37_02186cc0 arm_func_start func_ov37_02186cc0 func_ov37_02186cc0: ; 0x02186cc0 ldrb r0, [r0, #0x111] bx lr arm_func_end func_ov37_02186cc0 .global func_ov37_02186cc8 arm_func_start func_ov37_02186cc8 func_ov37_02186cc8: ; 0x02186cc8 mov r1, #0 str r1, [r0, #0x60] str r1, [r0, #0x64] str r1, [r0, #0x68] bx lr arm_func_end func_ov37_02186cc8 .global func_ov37_02186cdc arm_func_start func_ov37_02186cdc func_ov37_02186cdc: ; 0x02186cdc stmdb sp!, {r3, r4, lr} sub sp, sp, #0xc mov r4, r0 add r2, sp, #0 add r0, r4, #0x14 add r1, r4, #0x48 bl func_01ff9bf8 add r0, sp, #0 ldr r1, _02186d38 ; =0x000004cd mov r2, r0 bl func_0202da8c ldr r1, [sp] mov r0, r4 str r1, [r4, #0x60] ldr r1, [sp, #4] str r1, [r4, #0x64] ldr r1, [sp, #8] str r1, [r4, #0x68] ldr r1, [r0] ldr r1, [r1, #0x104] blx r1 add sp, sp, #0xc ldmia sp!, {r3, r4, pc} .align 2, 0 arm_func_end func_ov37_02186cdc _02186d38: .word 0x000004cd .global func_ov37_02186d3c arm_func_start func_ov37_02186d3c func_ov37_02186d3c: ; 0x02186d3c stmdb sp!, {r3, lr} add r1, r0, #0x14 bl func_ov00_020c288c ldr r1, _02186d5c ; =0x0000019a cmp r0, r1 movlt r0, #1 movge r0, #0 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov37_02186d3c _02186d5c: .word 0x0000019a .global func_ov37_02186d60 arm_func_start func_ov37_02186d60 func_ov37_02186d60: ; 0x02186d60 stmdb sp!, {r3, r4, r5, r6, r7, lr} sub sp, sp, #0x48 mov r4, r0 bl func_ov37_0217be14 ldrb r1, [r0, #0x27] cmp r1, #0 ldrneb r0, [r0, #0x28] cmpne r0, #0 beq _02186dd0 ldr r0, _02186e58 ; =data_027e0fa0 ldr r0, [r0, #4] cmp r0, #0 ble _02186dd0 mov r1, #0 add r0, r4, #0x2c str r1, [sp, #0x30] str r1, [sp, #0x34] str r1, [sp, #0x38] str r1, [sp, #0x3c] str r1, [sp, #0x40] str r1, [sp, #0x44] add r0, r0, #0x400 ldr r2, [r0] add r1, sp, #0x30 ldr r2, [r2, #0x20] blx r2 add sp, sp, #0x48 ldmia sp!, {r3, r4, r5, r6, r7, pc} _02186dd0: ldr r0, [r4, #0x2e4] ldr r5, [r4, #0x50] add r3, r0, #0x3000 ldr r1, _02186e5c ; =0xffffe4cd ldr r2, [r4, #0x48] sub ip, r3, #0x800 add r7, r2, r1 add r0, r5, r1 add r1, r5, #0x33 add r6, r1, #0x1b00 add r2, r2, #0x33 str ip, [sp, #0x28] add r5, r2, #0x1b00 add r1, sp, #0x24 add lr, sp, #0 str r7, [sp, #0x24] str r0, [sp, #0x2c] ldmia r1, {r0, r1, r2} stmia lr, {r0, r1, r2} add r0, sp, #0x18 add ip, sp, #0xc str r5, [sp, #0x18] str r3, [sp, #0x1c] str r6, [sp, #0x20] ldmia r0, {r0, r1, r2} stmia ip, {r0, r1, r2} add r0, r4, #0x2c add r0, r0, #0x400 ldr r2, [r0] mov r1, lr ldr r2, [r2, #0x20] blx r2 add sp, sp, #0x48 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 arm_func_end func_ov37_02186d60 _02186e58: .word data_027e0fa0 _02186e5c: .word 0xffffe4cd .global func_ov37_02186e60 arm_func_start func_ov37_02186e60 func_ov37_02186e60: ; 0x02186e60 mov r1, #1 strb r1, [r0, #0x458] bx lr arm_func_end func_ov37_02186e60 .global func_ov37_02186e6c arm_func_start func_ov37_02186e6c func_ov37_02186e6c: ; 0x02186e6c ldr r1, [r0, #0x45c] cmp r1, #0 ble _02186e90 add r1, r0, #0x100 ldrsh r1, [r1, #0x20] ldr r0, [r0, #0x400] sub r0, r0, r1 cmp r0, #0x14 blt _02186e98 _02186e90: mov r0, #1 bx lr _02186e98: mov r0, #0 bx lr arm_func_end func_ov37_02186e6c .global func_ov37_02186ea0 arm_func_start func_ov37_02186ea0 func_ov37_02186ea0: ; 0x02186ea0 stmdb sp!, {r4, lr} mov r4, r0 mov r3, #0 str r3, [r4, #0x138] ldr r2, [r4, #0x130] cmp r1, #8 str r2, [r4, #0x134] str r1, [r4, #0x130] addls pc, pc, r1, lsl #2 ldmia sp!, {r4, pc} _02186ec8: ; jump table b _02186eec ; case 0 b _02186f18 ; case 1 b _02186f44 ; case 2 b _02186f70 ; case 3 b _02186f9c ; case 4 b _02186fc0 ; case 5 b _02186fe4 ; case 6 b _02187010 ; case 7 b _02187034 ; case 8 _02186eec: mov r1, r3 add r0, r4, #0x21c bl func_ov00_020c5d74 ldr r0, [r4, #0x22c] mov r2, #0 str r2, [r0, #0x10] ldr r1, [r4, #0x22c] mov r0, r4 str r2, [r1, #0x14] bl func_ov37_021866fc ldmia sp!, {r4, pc} _02186f18: mov r1, r3 add r0, r4, #0x21c bl func_ov00_020c5d74 ldr r0, [r4, #0x22c] mov r2, #0 str r2, [r0, #0x10] ldr r1, [r4, #0x22c] mov r0, r4 str r2, [r1, #0x14] bl func_ov37_0218685c ldmia sp!, {r4, pc} _02186f44: mov r1, r3 add r0, r4, #0x21c bl func_ov00_020c5d74 ldr r0, [r4, #0x22c] mov r2, #0 str r2, [r0, #0x10] ldr r1, [r4, #0x22c] mov r0, r4 str r2, [r1, #0x14] bl func_ov37_02186b50 ldmia sp!, {r4, pc} _02186f70: mov r1, r3 add r0, r4, #0x21c bl func_ov00_020c5d74 ldr r0, [r4, #0x22c] mov r2, #0 str r2, [r0, #0x10] ldr r1, [r4, #0x22c] mov r0, r4 str r2, [r1, #0x14] bl func_ov37_021866fc ldmia sp!, {r4, pc} _02186f9c: add r0, r4, #0x21c mov r1, #1 bl func_ov00_020c5d74 ldr r1, [r4, #0x22c] mov r2, #0x1000 mov r0, r4 str r2, [r1, #0x10] bl func_ov37_021866fc ldmia sp!, {r4, pc} _02186fc0: add r0, r4, #0x21c mov r1, #2 bl func_ov00_020c5d74 ldr r1, [r4, #0x22c] mov r2, #0x1000 mov r0, r4 str r2, [r1, #0x10] bl func_ov37_021866fc ldmia sp!, {r4, pc} _02186fe4: mov r1, r3 add r0, r4, #0x21c bl func_ov00_020c5d74 ldr r0, [r4, #0x22c] mov r2, #0 str r2, [r0, #0x10] ldr r1, [r4, #0x22c] mov r0, r4 str r2, [r1, #0x14] bl func_ov37_02186cc8 ldmia sp!, {r4, pc} _02187010: mov r1, r3 add r0, r4, #0x21c bl func_ov00_020c5d74 ldr r0, [r4, #0x22c] mov r1, #0 str r1, [r0, #0x10] ldr r0, [r4, #0x22c] str r1, [r0, #0x14] ldmia sp!, {r4, pc} _02187034: bl func_ov37_021866fc ldmia sp!, {r4, pc} arm_func_end func_ov37_02186ea0 .global func_ov37_0218703c arm_func_start func_ov37_0218703c func_ov37_0218703c: ; 0x0218703c stmdb sp!, {r4, lr} ldr r2, _0218707c ; =data_027e0f94 mov r4, r0 ldr r2, [r2, #4] cmp r2, #0x3000 movgt r0, #0 ldmgtia sp!, {r4, pc} bl func_ov00_020cb60c cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r4, pc} add r0, r4, #0x100 mov r1, #0 strh r1, [r0, #0x92] mov r0, #1 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_0218703c _0218707c: .word data_027e0f94 .global func_ov37_02187080 arm_func_start func_ov37_02187080 func_ov37_02187080: ; 0x02187080 stmdb sp!, {r4, r5, r6, lr} sub sp, sp, #0x50 mov r5, r0 ldr r0, [r5, #0x130] cmp r0, #5 addls pc, pc, r0, lsl #2 b _021870c4 _0218709c: ; jump table b _021870b4 ; case 0 b _021870b4 ; case 1 b _021870b4 ; case 2 b _021870b4 ; case 3 b _021870b4 ; case 4 b _021870b4 ; case 5 _021870b4: mov r0, #8 str r0, [r5, #0x164] mov r0, #4 b _021870d0 _021870c4: mov r0, #0 str r0, [r5, #0x164] sub r0, r0, #1 _021870d0: str r0, [r5, #0x20c] mov r0, r5 bl func_ov37_02187c34 ldr r0, _02187744 ; =data_027e0fe4 add r1, r5, #4 ldr r0, [r0] add r1, r1, #0x400 bl func_ov00_020c3674 add r3, sp, #0x44 add r1, r5, #0x48 mov r4, r0 ldmia r1, {r0, r1, r2} stmia r3, {r0, r1, r2} add r0, r5, #0x2c add r0, r0, #0x400 ldr r2, [r0] add r1, sp, #0x2c ldr r2, [r2, #0x2c] blx r2 ldr r1, [sp, #0x3c] add r0, sp, #0x44 add r1, r1, #0x9a add r1, r1, #0x900 str r1, [sp, #0x48] add r1, r4, #0x48 add r2, sp, #8 bl func_01ff9bf8 ldr r1, [sp, #0x44] mov r0, r4 str r1, [r4, #0x48] ldr r1, [sp, #0x48] str r1, [r4, #0x4c] ldr r1, [sp, #0x4c] str r1, [r4, #0x50] ldr r1, [sp, #8] str r1, [r4, #0x60] ldr r1, [sp, #0xc] str r1, [r4, #0x64] ldr r1, [sp, #0x10] str r1, [r4, #0x68] bl func_ov37_021854c4 ldr r0, _02187748 ; =data_027e0fc8 add r1, sp, #0x44 ldr r0, [r0] bl func_ov00_020bb6d4 mov r0, r5 bl func_ov37_02187c48 cmp r0, #0 ldrne r0, [r5, #0x130] cmpne r0, #6 cmpne r0, #7 cmpne r0, #8 beq _0218738c ldr r0, _0218774c ; =data_027e0f94 ldr r0, [r0, #4] cmp r0, #0x3000 ble _0218738c cmp r0, #0x4000 bge _0218738c mov r0, r4 mov r1, #0x1a bl func_ov00_020c1fc8 cmp r0, #0 bne _021871e8 mov r1, #0 mov r0, r4 mov r2, r1 bl func_ov00_020c243c cmp r0, #0 beq _0218738c _021871e8: ldr r0, [r4, #0x168] ldrb r1, [r4, #0x158] cmp r0, #5 beq _0218720c cmp r0, #7 beq _02187284 cmp r0, #8 beq _0218724c b _02187284 _0218720c: ldr r6, [r4, #0x16c] cmp r6, #0 beq _02187244 ldr r1, [r6, #4] ldr r0, _02187750 ; =0x424d524e cmp r1, r0 bne _02187244 ldr r0, _02187754 ; =data_027e0ffc ldr r1, _02187758 ; =0x0000019d add r2, r5, #0x48 mov r3, #0 bl func_ov00_020ceacc mov r0, r6 bl func_ov14_021231d4 _02187244: mov r1, #0 b _02187284 _0218724c: ldr r0, [r4, #0x16c] cmp r0, #0 beq _02187280 ldr r2, [r0, #4] ldr r1, _0218775c ; =0x524f5045 cmp r2, r1 bne _02187280 bl func_ov14_02123904 ldr r0, _02187754 ; =data_027e0ffc add r2, r5, #0x48 mov r1, #0xf6 mov r3, #0 bl func_ov00_020ceacc _02187280: mov r1, #0 _02187284: cmp r1, #0 ble _0218738c add r1, r5, #0x100 ldrsh r2, [r1, #0x20] add r0, r5, #0x21c sub r2, r2, #4 strh r2, [r1, #0x20] bl func_ov37_02185a68 ldr r0, _02187754 ; =data_027e0ffc ldr r1, _02187760 ; =0x000002b9 add r2, r5, #0x48 mov r3, #0 bl func_ov00_020ceacc ldrb r0, [r5, #0x3f4] cmp r0, #0 add r0, r5, #0x100 ldrsh r0, [r0, #0x20] beq _02187344 cmp r0, #0 add r0, r4, #0x48 bgt _02187320 bl func_ov00_020c71fc ldr r0, _02187754 ; =data_027e0ffc ldr r1, _02187764 ; =0x00000191 add r2, r5, #0x48 mov r3, #0 bl func_ov00_020ceacc ldr r0, _02187748 ; =data_027e0fc8 ldr r0, [r0] ldr r1, [r0] ldr r1, [r1, #0x84] blx r1 ldr r0, _02187768 ; =data_ov00_020eec68 mov r1, #5 bl func_ov00_020d716c mov r0, r5 mov r1, #7 bl func_ov37_02186ea0 b _0218738c _02187320: bl func_ov00_020c71fc ldr r0, _02187754 ; =data_027e0ffc add r2, r4, #0x48 mov r1, #0x190 mov r3, #0 bl func_ov00_020ceacc mov r0, r5 bl func_ov37_02187c28 b _0218738c _02187344: cmp r0, #0 bgt _02187368 ldr r0, [r5, #0x130] cmp r0, #4 cmpne r0, #5 beq _02187368 mov r0, r5 mov r1, #4 bl func_ov37_02186ea0 _02187368: add r0, r4, #0x48 bl func_ov00_020c71fc ldr r0, _02187754 ; =data_027e0ffc add r2, r4, #0x48 mov r1, #0x190 mov r3, #0 bl func_ov00_020ceacc mov r0, r5 bl func_ov37_02187c28 _0218738c: ldr r0, [r5, #0x3f8] cmp r0, #0 subgt r0, r0, #1 strgt r0, [r5, #0x3f8] mov r0, r5 bl func_ov00_020c28ec cmp r0, #0x2000 bge _021873c0 ldr r0, [r5, #0x45c] cmp r0, #0 subgt r0, r0, #1 strgt r0, [r5, #0x45c] b _021873c8 _021873c0: mov r0, #0x96 str r0, [r5, #0x45c] _021873c8: ldr r0, [r5, #0x130] cmp r0, #8 addls pc, pc, r0, lsl #2 b _02187730 _021873d8: ; jump table b _021873fc ; case 0 b _02187420 ; case 1 b _021874d8 ; case 2 b _02187580 ; case 3 b _021875ec ; case 4 b _02187640 ; case 5 b _021876bc ; case 6 b _02187700 ; case 7 b _02187730 ; case 8 _021873fc: mov r0, r5 bl func_ov37_02186700 ldr r0, [r5, #0x138] cmp r0, #0x3c ble _02187730 mov r0, r5 mov r1, #1 bl func_ov37_02186ea0 b _02187730 _02187420: mov r0, r5 bl func_ov37_02186b18 mov r0, #0 str r0, [sp] ldr r3, [r5, #8] ldr r0, _02187754 ; =data_027e0ffc ldr r1, _0218776c ; =0x00000333 add r2, r5, #0x48 bl func_ov00_020cec60 add r0, r5, #0x100 ldrsh r0, [r0, #0x20] cmp r0, #0 mov r0, r5 bgt _02187464 mov r1, #7 bl func_ov37_02186ea0 b _02187730 _02187464: bl func_ov37_02186e6c cmp r0, #0 beq _02187480 mov r0, r5 mov r1, #4 bl func_ov37_02186ea0 b _02187730 _02187480: ldr r0, [r5, #0x138] cmp r0, #0xf blt _02187730 mov r0, r5 bl func_ov37_02186b34 cmp r0, #0 beq _02187730 ldr r0, [r5, #0x3f8] cmp r0, #0 bgt _021874c8 mov r0, r5 bl func_ov37_02187bdc cmp r0, #0 beq _021874c8 mov r0, r5 mov r1, #3 bl func_ov37_02186ea0 b _02187730 _021874c8: mov r0, r5 mov r1, #2 bl func_ov37_02186ea0 b _02187730 _021874d8: mov r0, r5 bl func_ov37_02186b68 mov r0, r5 bl func_ov37_02186cc0 cmp r0, #0 beq _02187730 add r0, r5, #0x48 add r3, sp, #0x20 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, _02187770 ; =data_027e0e60 ldr ip, [sp, #0x20] ldr r4, [sp, #0x24] ldr r3, [sp, #0x28] ldr r0, [r0] add r1, sp, #0x14 mov r2, #1 str ip, [sp, #0x14] str r4, [sp, #0x18] str r3, [sp, #0x1c] bl func_ov00_02083ee0 str r0, [sp, #0x24] mov r1, #0 str r1, [sp] str r1, [sp, #4] ldr r0, _02187774 ; =data_027e0e58 ldr r1, _02187778 ; =0x00001011 ldr r0, [r0] add r2, sp, #0x20 mov r3, #2 bl func_ov00_0207c1b0 mov r0, r5 bl func_ov37_02186e6c cmp r0, #0 mov r0, r5 beq _02187574 mov r1, #4 bl func_ov37_02186ea0 b _02187730 _02187574: mov r1, #1 bl func_ov37_02186ea0 b _02187730 _02187580: mov r0, r5 bl func_ov37_02186700 ldr r0, [r5, #0x138] cmp r0, #1 bne _021875b8 add r0, r5, #0x21c mov r1, #1 bl func_ov37_02185b3c ldr r0, _02187754 ; =data_027e0ffc add r2, r5, #0x48 mov r1, #0x2b0 mov r3, #0 bl func_ov00_020ceacc b _02187730 _021875b8: cmp r0, #0x1e bne _02187730 mov r2, #0x32 add r0, r5, #0x21c mov r1, #0 str r2, [r5, #0x3f8] bl func_ov37_02185b3c mov r0, r5 bl func_ov37_021878ac mov r0, r5 mov r1, #1 bl func_ov37_02186ea0 b _02187730 _021875ec: mov r0, #0 str r0, [sp] ldr r3, [r5, #8] ldr r0, _02187754 ; =data_027e0ffc ldr r1, _0218777c ; =0x000002ba add r2, r5, #0x48 bl func_ov00_020cec60 mov r0, r5 bl func_ov37_02186700 ldr r0, [r5, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 beq _02187730 ldr r0, [r5, #0x138] cmp r0, #0x3c ble _02187730 mov r0, r5 mov r1, #5 bl func_ov37_02186ea0 b _02187730 _02187640: mov r0, r5 bl func_ov37_02186700 ldr r0, [r5, #0x22c] mov r1, #0x3000 add r0, r0, #0xc bl func_0202e310 cmp r0, #0 beq _0218767c mov r0, r5 bl func_ov37_02187c5c mov r0, #0x96 str r0, [r5, #0x45c] add r0, r5, #0x100 ldrsh r0, [r0, #0x20] str r0, [r5, #0x400] _0218767c: ldr r0, [r5, #0x22c] add r0, r0, #0xc bl func_0202e58c cmp r0, #0 beq _02187730 add r0, r5, #0x100 ldrsh r0, [r0, #0x20] cmp r0, #0 mov r0, r5 bgt _021876b0 mov r1, #6 bl func_ov37_02186ea0 b _02187730 _021876b0: mov r1, #1 bl func_ov37_02186ea0 b _02187730 _021876bc: mov r0, r5 bl func_ov37_02186cdc mov r0, r5 bl func_ov37_02186d3c cmp r0, #0 beq _02187730 ldr r0, _02187744 ; =data_027e0fe4 add r1, r5, #0x34 ldr r0, [r0] bl func_ov00_020c3674 add r2, r0, #0x2000 mov r3, #1 mov r0, r5 mov r1, #8 strb r3, [r2, #0xfa4] bl func_ov37_02186ea0 b _02187730 _02187700: mov r0, r5 bl func_ov37_02186700 ldr r0, _02187744 ; =data_027e0fe4 add r1, r5, #0x34 ldr r0, [r0] bl func_ov00_020c3674 add r2, r0, #0x2000 mov r3, #1 mov r0, r5 mov r1, #8 strb r3, [r2, #0xfa5] bl func_ov37_02186ea0 _02187730: mov r0, #0 strb r0, [r5, #0x458] mov r0, #1 add sp, sp, #0x50 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 arm_func_end func_ov37_02187080 _02187744: .word data_027e0fe4 _02187748: .word data_027e0fc8 _0218774c: .word data_027e0f94 _02187750: .word 0x424d524e _02187754: .word data_027e0ffc _02187758: .word 0x0000019d _0218775c: .word 0x524f5045 _02187760: .word 0x000002b9 _02187764: .word 0x00000191 _02187768: .word data_ov00_020eec68 _0218776c: .word 0x00000333 _02187770: .word data_027e0e60 _02187774: .word data_027e0e58 _02187778: .word 0x00001011 _0218777c: .word 0x000002ba .global func_ov37_02187780 arm_func_start func_ov37_02187780 func_ov37_02187780: ; 0x02187780 stmdb sp!, {r3, r4, lr} sub sp, sp, #0xc add r1, sp, #0 mov r4, r0 bl func_ov00_020cc1f8 add r1, sp, #0 add r0, r4, #0x21c bl func_ov00_020c5fc0 mov r0, r4 bl func_ov37_02186d60 mov r0, r4 mov r1, #0x1f bl func_ov00_020cc9c4 mov r0, #1 add sp, sp, #0xc ldmia sp!, {r3, r4, pc} arm_func_end func_ov37_02187780 .global func_ov37_021877c0 arm_func_start func_ov37_021877c0 func_ov37_021877c0: ; 0x021877c0 stmdb sp!, {r3, r4, r5, r6, r7, lr} sub sp, sp, #0x48 mov r7, r0 add r0, sp, #0x1c mov r6, r1 mov r5, r2 mov r4, r3 bl func_ov00_020c1500 mvn r1, #0 add r0, sp, #0x1c str r1, [sp, #0x38] str r1, [sp, #0x3c] bl func_ov00_020c3348 mvn r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] ldr r0, [r7, #8] add r1, sp, #8 str r0, [sp, #0x38] ldr r2, [r7, #0xc] ldr r0, _02187898 ; =data_027e0fe8 str r2, [sp, #0x3c] str r1, [sp] ldr r0, [r0] ldr r1, _0218789c ; =0x57534242 mov r2, r6 add r3, sp, #0x1c bl func_ov00_020c4048 ldr r0, _021878a0 ; =data_027e0fe4 add r1, sp, #8 ldr r0, [r0] bl func_ov00_020c3674 movs ip, r0 beq _0218786c add r7, sp, #0x10 ldmia r5, {r0, r1, r2} stmia r7, {r0, r1, r2} ldr r3, [r6, #4] mov r0, ip mov r1, r7 mov r2, r4 str r3, [sp, #0x14] bl func_ov37_0218452c _0218786c: mov r1, #0 str r1, [sp] ldr r0, _021878a4 ; =data_027e0e58 str r1, [sp, #4] ldr r0, [r0] ldr r1, _021878a8 ; =0x00001001 mov r2, r6 mov r3, #2 bl func_ov00_0207c1b0 add sp, sp, #0x48 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 arm_func_end func_ov37_021877c0 _02187898: .word data_027e0fe8 _0218789c: .word 0x57534242 _021878a0: .word data_027e0fe4 _021878a4: .word data_027e0e58 _021878a8: .word 0x00001001 .global func_ov37_021878ac arm_func_start func_ov37_021878ac func_ov37_021878ac: ; 0x021878ac stmdb sp!, {r3, r4, lr} sub sp, sp, #0x24 mov r4, r0 add r2, sp, #0x18 add r0, r4, #0x21c mov r1, #0 bl func_ov37_02185b6c ldrh r0, [r4, #0x78] ldr r1, _02187bcc ; =data_02050f54 mov ip, #0 mov r0, r0, asr #0x4 mov r2, r0, lsl #0x1 add r0, r2, #1 mov r2, r2, lsl #0x1 ldrsh lr, [r1, r2] mov r0, r0, lsl #0x1 ldrsh r3, [r1, r0] add r0, sp, #0 add r1, sp, #0x18 add r2, sp, #0xc str lr, [sp] str ip, [sp, #4] str r3, [sp, #8] bl func_01ff9bc4 add r1, sp, #0x18 add r2, sp, #0xc mov r0, r4 mov r3, #0 bl func_ov37_021877c0 add r0, r4, #0x21c mov r1, #1 add r2, sp, #0x18 bl func_ov37_02185b6c ldrh r2, [r4, #0x78] mov r0, #0 ldr r1, _02187bcc ; =data_02050f54 str r0, [sp, #4] mov r0, r2, asr #0x4 mov r3, r0, lsl #0x1 mov r0, r3, lsl #0x1 ldrsh r2, [r1, r0] add r0, r3, #1 mov r0, r0, lsl #0x1 ldrsh r1, [r1, r0] str r2, [sp] add r0, sp, #0 str r1, [sp, #8] add r1, sp, #0x18 add r2, sp, #0xc bl func_01ff9bc4 mov r0, r4 add r1, sp, #0x18 add r2, sp, #0xc mov r3, #0 bl func_ov37_021877c0 ldr r0, _02187bd0 ; =data_027e0ffc ldr r1, _02187bd4 ; =0x000002b1 add r2, sp, #0x18 mov r3, #0 bl func_ov00_020ceacc add r0, r4, #0x21c mov r1, #2 add r2, sp, #0x18 bl func_ov37_02185b6c ldrsh r0, [r4, #0x78] ldr r1, _02187bcc ; =data_02050f54 add r0, r0, #0xab add r0, r0, #0x2a00 mov r0, r0, lsl #0x10 mov r0, r0, asr #0x10 mov r0, r0, lsl #0x10 mov r0, r0, lsr #0x10 mov r0, r0, asr #0x4 mov r2, r0, lsl #0x1 mov r0, r2, lsl #0x1 ldrsh r0, [r1, r0] str r0, [sp] add r0, r2, #1 mov r0, r0, lsl #0x1 ldrsh r3, [r1, r0] mov ip, #0 add r0, sp, #0 add r1, sp, #0x18 add r2, sp, #0xc str ip, [sp, #4] str r3, [sp, #8] bl func_01ff9bc4 add r1, sp, #0x18 add r2, sp, #0xc mov r0, r4 mov r3, #0 bl func_ov37_021877c0 add r2, sp, #0x18 add r0, r4, #0x21c mov r1, #3 bl func_ov37_02185b6c ldrsh r1, [r4, #0x78] ldr r0, _02187bd8 ; =0xffffd555 ldr r2, _02187bcc ; =data_02050f54 add r0, r1, r0 mov r0, r0, lsl #0x10 mov r0, r0, asr #0x10 mov r0, r0, lsl #0x10 mov r0, r0, lsr #0x10 mov r0, r0, asr #0x4 mov r3, r0, lsl #0x1 mov r0, r3, lsl #0x1 ldrsh r1, [r2, r0] add r0, r3, #1 mov r0, r0, lsl #0x1 ldrsh r0, [r2, r0] str r1, [sp] mov r1, #0 str r1, [sp, #4] str r0, [sp, #8] add r0, sp, #0 add r1, sp, #0x18 add r2, sp, #0xc bl func_01ff9bc4 mov r0, r4 add r1, sp, #0x18 add r2, sp, #0xc mov r3, #0 bl func_ov37_021877c0 ldr r0, _02187bd0 ; =data_027e0ffc ldr r1, _02187bd4 ; =0x000002b1 add r2, sp, #0x18 mov r3, #0 bl func_ov00_020ceacc add r0, r4, #0x21c mov r1, #4 add r2, sp, #0x18 bl func_ov37_02185b6c ldrsh r2, [r4, #0x78] mov r0, #0 ldr r1, _02187bcc ; =data_02050f54 str r0, [sp, #4] add r0, r2, #0xab add r0, r0, #0x2a00 mov r0, r0, lsl #0x10 mov r0, r0, asr #0x10 mov r0, r0, lsl #0x10 mov r0, r0, lsr #0x10 mov r0, r0, asr #0x4 mov r3, r0, lsl #0x1 mov r0, r3, lsl #0x1 ldrsh r2, [r1, r0] add r0, r3, #1 mov r0, r0, lsl #0x1 ldrsh r1, [r1, r0] str r2, [sp] add r0, sp, #0 str r1, [sp, #8] add r1, sp, #0x18 add r2, sp, #0xc bl func_01ff9bc4 add r1, sp, #0x18 add r2, sp, #0xc mov r0, r4 mov r3, #0 bl func_ov37_021877c0 add r2, sp, #0x18 add r0, r4, #0x21c mov r1, #5 bl func_ov37_02185b6c ldrsh r2, [r4, #0x78] ldr r0, _02187bd8 ; =0xffffd555 ldr r1, _02187bcc ; =data_02050f54 add r0, r2, r0 mov r0, r0, lsl #0x10 mov r0, r0, asr #0x10 mov r0, r0, lsl #0x10 mov r0, r0, lsr #0x10 mov r0, r0, asr #0x4 mov r2, r0, lsl #0x1 add r0, r2, #1 mov r2, r2, lsl #0x1 mov r0, r0, lsl #0x1 ldrsh r3, [r1, r0] ldrsh r2, [r1, r2] mov ip, #0 add r0, sp, #0 str r2, [sp] add r1, sp, #0x18 add r2, sp, #0xc str ip, [sp, #4] str r3, [sp, #8] bl func_01ff9bc4 add r1, sp, #0x18 mov r0, r4 add r2, sp, #0xc mov r3, #0 bl func_ov37_021877c0 ldr r0, _02187bd0 ; =data_027e0ffc ldr r1, _02187bd4 ; =0x000002b1 add r2, sp, #0x18 mov r3, #0 bl func_ov00_020ceacc add sp, sp, #0x24 ldmia sp!, {r3, r4, pc} .align 2, 0 arm_func_end func_ov37_021878ac _02187bcc: .word data_02050f54 _02187bd0: .word data_027e0ffc _02187bd4: .word 0x000002b1 _02187bd8: .word 0xffffd555 .global func_ov37_02187bdc arm_func_start func_ov37_02187bdc func_ov37_02187bdc: ; 0x02187bdc stmdb sp!, {r4, lr} ldrsh r4, [r0, #0x78] bl func_ov00_020c2974 sub r0, r0, r4 mov r0, r0, lsl #0x10 ldr r1, _02187c24 ; =0xffff8001 mov r2, r0, asr #0x10 cmp r1, r0, asr #16 movgt r2, r1, lsr #0x11 bgt _02187c14 cmp r2, #0 rsblt r0, r2, #0 movlt r0, r0, lsl #0x10 movlt r2, r0, asr #0x10 _02187c14: cmp r2, #0x2000 movlt r0, #1 movge r0, #0 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_02187bdc _02187c24: .word 0xffff8001 .global func_ov37_02187c28 arm_func_start func_ov37_02187c28 func_ov37_02187c28: ; 0x02187c28 mov r1, #0xa str r1, [r0, #0x3fc] bx lr arm_func_end func_ov37_02187c28 .global func_ov37_02187c34 arm_func_start func_ov37_02187c34 func_ov37_02187c34: ; 0x02187c34 ldr r1, [r0, #0x3fc] cmp r1, #0 subgt r1, r1, #1 strgt r1, [r0, #0x3fc] bx lr arm_func_end func_ov37_02187c34 .global func_ov37_02187c48 arm_func_start func_ov37_02187c48 func_ov37_02187c48: ; 0x02187c48 ldr r0, [r0, #0x3fc] cmp r0, #0 movle r0, #1 movgt r0, #0 bx lr arm_func_end func_ov37_02187c48 .global func_ov37_02187c5c arm_func_start func_ov37_02187c5c func_ov37_02187c5c: ; 0x02187c5c stmdb sp!, {r4, lr} sub sp, sp, #0x28 mov r4, r0 ldr r0, _02187ce4 ; =data_027e0f94 add r2, sp, #0x1c add r1, r4, #0x54 bl func_01ff9bf8 ldr r0, _02187ce8 ; =data_027e0f90 ldr r1, [r4, #0x4c] ldr lr, [r4, #0x50] ldr ip, [r4, #0x48] add r3, r1, #0x3000 mov r2, #0x2000 ldr r0, [r0] add r1, sp, #0xc str ip, [sp, #0xc] str lr, [sp, #0x14] str r3, [sp, #0x10] str r2, [sp, #0x18] bl func_ov00_020a7c1c cmp r0, #0 addeq sp, sp, #0x28 moveq r0, #0 ldmeqia sp!, {r4, pc} ldr r0, _02187ce8 ; =data_027e0f90 mov r1, #2 ldr r0, [r0] add r2, sp, #0x1c ldr ip, [r0] mov r3, r1 ldr ip, [ip, #0x30] blx ip add sp, sp, #0x28 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_02187c5c _02187ce4: .word data_027e0f94 _02187ce8: .word data_027e0f90 .global func_ov37_02187cec arm_func_start func_ov37_02187cec func_ov37_02187cec: ; 0x02187cec stmdb sp!, {r4, lr} sub sp, sp, #0x28 mov r4, r0 ldr r0, _02187d84 ; =data_027e0f94 add r2, sp, #0x1c add r1, r4, #0x54 bl func_01ff9bf8 ldr r0, _02187d88 ; =data_027e0f90 ldr lr, [r4, #0x4c] ldr ip, [r4, #0x50] ldr r3, [r4, #0x48] ldr r2, _02187d8c ; =0x000024cd ldr r0, [r0] add r1, sp, #0xc str r3, [sp, #0xc] str lr, [sp, #0x10] str ip, [sp, #0x14] str r2, [sp, #0x18] bl func_ov00_020a7c1c cmp r0, #0 beq _02187d78 mov r0, r4 bl func_ov00_020cca50 cmp r0, #0 beq _02187d78 ldr r0, _02187d88 ; =data_027e0f90 mov r1, #2 ldr r0, [r0] add r2, sp, #0x1c ldr ip, [r0] mov r3, r1 ldr ip, [ip, #0x30] blx ip add sp, sp, #0x28 ldmia sp!, {r4, pc} _02187d78: mov r0, #0 add sp, sp, #0x28 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov37_02187cec _02187d84: .word data_027e0f94 _02187d88: .word data_027e0f90 _02187d8c: .word 0x000024cd .global func_ov37_02187d90 arm_func_start func_ov37_02187d90 func_ov37_02187d90: ; 0x02187d90 stmdb sp!, {r4, lr} mov r4, r0 blx func_ov00_020a95ec mov r0, r4 bl func_0202ea0c mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov37_02187d90 .global func_ov37_02187dac arm_func_start func_ov37_02187dac func_ov37_02187dac: ; 0x02187dac stmdb sp!, {r4, lr} mov r4, r0 bl func_ov00_02081f6c mov r0, r4 bl func_0202ea0c mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov37_02187dac .rodata .global data_ov37_02187dc8 data_ov37_02187dc8: ; 0x02187dc8 .byte 0x04, 0x00, 0x00, 0x00 .global data_ov37_02187dcc data_ov37_02187dcc: ; 0x02187dcc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187dd0 data_ov37_02187dd0: ; 0x02187dd0 .byte 0x01, 0x00, 0x00, 0x00 .global data_ov37_02187dd4 data_ov37_02187dd4: ; 0x02187dd4 .byte 0x02, 0x00, 0x00, 0x00 .global data_ov37_02187dd8 data_ov37_02187dd8: ; 0x02187dd8 .byte 0x03, 0x00, 0x00, 0x00 .global data_ov37_02187ddc data_ov37_02187ddc: ; 0x02187ddc .byte 0x04, 0x00, 0x00, 0x00 .global data_ov37_02187de0 data_ov37_02187de0: ; 0x02187de0 .byte 0x05, 0x00, 0x00, 0x00 .global data_ov37_02187de4 data_ov37_02187de4: ; 0x02187de4 .byte 0x06, 0x00, 0x00, 0x00 .global data_ov37_02187de8 data_ov37_02187de8: ; 0x02187de8 .byte 0x07, 0x00, 0x00, 0x00 .global data_ov37_02187dec data_ov37_02187dec: ; 0x02187dec .byte 0x08, 0x00, 0x00, 0x00 .global data_ov37_02187df0 data_ov37_02187df0: ; 0x02187df0 .byte 0x09, 0x00, 0x00, 0x00 .global data_ov37_02187df4 data_ov37_02187df4: ; 0x02187df4 .byte 0x9a, 0x11, 0x00, 0x00 .global data_ov37_02187df8 data_ov37_02187df8: ; 0x02187df8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187dfc data_ov37_02187dfc: ; 0x02187dfc .byte 0x00, 0x70, 0x00, 0x00 .global data_ov37_02187e00 data_ov37_02187e00: ; 0x02187e00 .byte 0x66, 0xee, 0xff, 0xff .global data_ov37_02187e04 data_ov37_02187e04: ; 0x02187e04 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187e08 data_ov37_02187e08: ; 0x02187e08 .byte 0x00, 0x70, 0x00, 0x00 .global data_ov37_02187e0c data_ov37_02187e0c: ; 0x02187e0c .byte 0xfa, 0xff, 0x05, 0x00 .global data_ov37_02187e10 data_ov37_02187e10: ; 0x02187e10 .byte 0x00, 0x60, 0x09, 0x00 .global data_ov37_02187e14 data_ov37_02187e14: ; 0x02187e14 .byte 0xdc, 0x00, 0x00, 0x00 .global data_ov37_02187e18 data_ov37_02187e18: ; 0x02187e18 .ascii "oisu_sw" .byte 0x00 .global data_ov37_02187e20 data_ov37_02187e20: ; 0x02187e20 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187e24 data_ov37_02187e24: ; 0x02187e24 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187e28 data_ov37_02187e28: ; 0x02187e28 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187e2c data_ov37_02187e2c: ; 0x02187e2c .ascii "oisu_body.1" .byte 0x00 .global data_ov37_02187e38 data_ov37_02187e38: ; 0x02187e38 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187e3c data_ov37_02187e3c: ; 0x02187e3c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187e40 data_ov37_02187e40: ; 0x02187e40 .ascii "oisu_body.1_pl" .byte 0x00, 0x00 .global data_ov37_02187e50 data_ov37_02187e50: ; 0x02187e50 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187e54 data_ov37_02187e54: ; 0x02187e54 .ascii "oisu_body.2" .byte 0x00 .global data_ov37_02187e60 data_ov37_02187e60: ; 0x02187e60 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187e64 data_ov37_02187e64: ; 0x02187e64 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187e68 data_ov37_02187e68: ; 0x02187e68 .ascii "oisu_body.2_pl" .byte 0x00, 0x00 .global data_ov37_02187e78 data_ov37_02187e78: ; 0x02187e78 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187e7c data_ov37_02187e7c: ; 0x02187e7c .ascii "oisu_body.3" .byte 0x00 .global data_ov37_02187e88 data_ov37_02187e88: ; 0x02187e88 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187e8c data_ov37_02187e8c: ; 0x02187e8c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187e90 data_ov37_02187e90: ; 0x02187e90 .ascii "oisu_body.3_pl" .byte 0x00, 0x00 .global data_ov37_02187ea0 data_ov37_02187ea0: ; 0x02187ea0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187ea4 data_ov37_02187ea4: ; 0x02187ea4 .ascii "set" .byte 0x00 .global data_ov37_02187ea8 data_ov37_02187ea8: ; 0x02187ea8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187eac data_ov37_02187eac: ; 0x02187eac .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187eb0 data_ov37_02187eb0: ; 0x02187eb0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187eb4 data_ov37_02187eb4: ; 0x02187eb4 .byte 0x01, 0x00, 0x00, 0x00 .global data_ov37_02187eb8 data_ov37_02187eb8: ; 0x02187eb8 .ascii "wait" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187ec0 data_ov37_02187ec0: ; 0x02187ec0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187ec4 data_ov37_02187ec4: ; 0x02187ec4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187ec8 data_ov37_02187ec8: ; 0x02187ec8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187ecc data_ov37_02187ecc: ; 0x02187ecc .ascii "turn" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187ed4 data_ov37_02187ed4: ; 0x02187ed4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187ed8 data_ov37_02187ed8: ; 0x02187ed8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187edc data_ov37_02187edc: ; 0x02187edc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187ee0 data_ov37_02187ee0: ; 0x02187ee0 .ascii "punchL" .byte 0x00, 0x00 .global data_ov37_02187ee8 data_ov37_02187ee8: ; 0x02187ee8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187eec data_ov37_02187eec: ; 0x02187eec .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187ef0 data_ov37_02187ef0: ; 0x02187ef0 .byte 0x01, 0x00, 0x00, 0x00 .global data_ov37_02187ef4 data_ov37_02187ef4: ; 0x02187ef4 .ascii "punchR" .byte 0x00, 0x00 .global data_ov37_02187efc data_ov37_02187efc: ; 0x02187efc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187f00 data_ov37_02187f00: ; 0x02187f00 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187f04 data_ov37_02187f04: ; 0x02187f04 .byte 0x01, 0x00, 0x00, 0x00 .global data_ov37_02187f08 data_ov37_02187f08: ; 0x02187f08 .ascii "break" .byte 0x00, 0x00, 0x00 .global data_ov37_02187f10 data_ov37_02187f10: ; 0x02187f10 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187f14 data_ov37_02187f14: ; 0x02187f14 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187f18 data_ov37_02187f18: ; 0x02187f18 .byte 0x01, 0x00, 0x00, 0x00 .global data_ov37_02187f1c data_ov37_02187f1c: ; 0x02187f1c .ascii "kyoro" .byte 0x00, 0x00, 0x00 .global data_ov37_02187f24 data_ov37_02187f24: ; 0x02187f24 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187f28 data_ov37_02187f28: ; 0x02187f28 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187f2c data_ov37_02187f2c: ; 0x02187f2c .byte 0x01, 0x00, 0x00, 0x00 .global data_ov37_02187f30 data_ov37_02187f30: ; 0x02187f30 .ascii "arrow_st" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187f3c data_ov37_02187f3c: ; 0x02187f3c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187f40 data_ov37_02187f40: ; 0x02187f40 .byte 0x01, 0x00, 0x00, 0x00 .global data_ov37_02187f44 data_ov37_02187f44: ; 0x02187f44 .ascii "arrow" .byte 0x00, 0x00, 0x00 .global data_ov37_02187f4c data_ov37_02187f4c: ; 0x02187f4c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187f50 data_ov37_02187f50: ; 0x02187f50 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187f54 data_ov37_02187f54: ; 0x02187f54 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187f58 data_ov37_02187f58: ; 0x02187f58 .ascii "arrow_end" .byte 0x00, 0x00, 0x00 .global data_ov37_02187f64 data_ov37_02187f64: ; 0x02187f64 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187f68 data_ov37_02187f68: ; 0x02187f68 .byte 0x01, 0x00, 0x00, 0x00 .global data_ov37_02187f6c data_ov37_02187f6c: ; 0x02187f6c .ascii "footfallL" .byte 0x00, 0x00, 0x00 .global data_ov37_02187f78 data_ov37_02187f78: ; 0x02187f78 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187f7c data_ov37_02187f7c: ; 0x02187f7c .byte 0x01, 0x00, 0x00, 0x00 .global data_ov37_02187f80 data_ov37_02187f80: ; 0x02187f80 .ascii "footfallR" .byte 0x00, 0x00, 0x00 .global data_ov37_02187f8c data_ov37_02187f8c: ; 0x02187f8c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187f90 data_ov37_02187f90: ; 0x02187f90 .byte 0x01, 0x00, 0x00, 0x00 .global data_ov37_02187f94 data_ov37_02187f94: ; 0x02187f94 .ascii "back" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187f9c data_ov37_02187f9c: ; 0x02187f9c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187fa0 data_ov37_02187fa0: ; 0x02187fa0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187fa4 data_ov37_02187fa4: ; 0x02187fa4 .byte 0x01, 0x00, 0x00, 0x00 .global data_ov37_02187fa8 data_ov37_02187fa8: ; 0x02187fa8 .ascii "dead" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187fb0 data_ov37_02187fb0: ; 0x02187fb0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187fb4 data_ov37_02187fb4: ; 0x02187fb4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187fb8 data_ov37_02187fb8: ; 0x02187fb8 .byte 0x01, 0x00, 0x00, 0x00 .global data_ov37_02187fbc data_ov37_02187fbc: ; 0x02187fbc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187fc0 data_ov37_02187fc0: ; 0x02187fc0 .byte 0x00, 0x90, 0x00, 0x00 .global data_ov37_02187fc4 data_ov37_02187fc4: ; 0x02187fc4 .byte 0xcd, 0x14, 0x00, 0x00 .global data_ov37_02187fc8 data_ov37_02187fc8: ; 0x02187fc8 .byte 0xcd, 0x1c, 0x00, 0x00 .global data_ov37_02187fcc data_ov37_02187fcc: ; 0x02187fcc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187fd0 data_ov37_02187fd0: ; 0x02187fd0 .byte 0x00, 0x08, 0x00, 0x00 .global data_ov37_02187fd4 data_ov37_02187fd4: ; 0x02187fd4 .byte 0x00, 0xe0, 0xff, 0xff .global data_ov37_02187fd8 data_ov37_02187fd8: ; 0x02187fd8 .byte 0x00, 0x50, 0x00, 0x00 .global data_ov37_02187fdc data_ov37_02187fdc: ; 0x02187fdc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187fe0 data_ov37_02187fe0: ; 0x02187fe0 .byte 0x00, 0x20, 0x00, 0x00 .global data_ov37_02187fe4 data_ov37_02187fe4: ; 0x02187fe4 .byte 0x00, 0x50, 0x00, 0x00 .global data_ov37_02187fe8 data_ov37_02187fe8: ; 0x02187fe8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187fec data_ov37_02187fec: ; 0x02187fec .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187ff0 data_ov37_02187ff0: ; 0x02187ff0 .byte 0x00, 0x50, 0x00, 0x00 .global data_ov37_02187ff4 data_ov37_02187ff4: ; 0x02187ff4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02187ff8 data_ov37_02187ff8: ; 0x02187ff8 .byte 0x00, 0x20, 0x00, 0x00 .global data_ov37_02187ffc data_ov37_02187ffc: ; 0x02187ffc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188000 data_ov37_02188000: ; 0x02188000 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188004 data_ov37_02188004: ; 0x02188004 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188008 data_ov37_02188008: ; 0x02188008 .byte 0x00, 0x50, 0x00, 0x00 .global data_ov37_0218800c data_ov37_0218800c: ; 0x0218800c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188010 data_ov37_02188010: ; 0x02188010 .byte 0x33, 0xe3, 0xff, 0xff .global data_ov37_02188014 data_ov37_02188014: ; 0x02188014 .byte 0x33, 0x03, 0x00, 0x00 .global data_ov37_02188018 data_ov37_02188018: ; 0x02188018 .byte 0x33, 0x23, 0x00, 0x00 .global data_ov37_0218801c data_ov37_0218801c: ; 0x0218801c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188020 data_ov37_02188020: ; 0x02188020 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188024 data_ov37_02188024: ; 0x02188024 .byte 0x33, 0x23, 0x00, 0x00 .global data_ov37_02188028 data_ov37_02188028: ; 0x02188028 .byte 0x9a, 0x11, 0x00, 0x00 .global data_ov37_0218802c data_ov37_0218802c: ; 0x0218802c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188030 data_ov37_02188030: ; 0x02188030 .byte 0x00, 0x70, 0x00, 0x00 .global data_ov37_02188034 data_ov37_02188034: ; 0x02188034 .byte 0x00, 0x20, 0x00, 0x00 .global data_ov37_02188038 data_ov37_02188038: ; 0x02188038 .byte 0x00, 0x20, 0x00, 0x00 .global data_ov37_0218803c data_ov37_0218803c: ; 0x0218803c .byte 0x00, 0x40, 0x00, 0x00 .global data_ov37_02188040 data_ov37_02188040: ; 0x02188040 .byte 0x66, 0xee, 0xff, 0xff .global data_ov37_02188044 data_ov37_02188044: ; 0x02188044 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188048 data_ov37_02188048: ; 0x02188048 .byte 0x00, 0x70, 0x00, 0x00 .global data_ov37_0218804c data_ov37_0218804c: ; 0x0218804c .byte 0x00, 0xe0, 0xff, 0xff .global data_ov37_02188050 data_ov37_02188050: ; 0x02188050 .byte 0x00, 0x20, 0x00, 0x00 .global data_ov37_02188054 data_ov37_02188054: ; 0x02188054 .byte 0x00, 0x40, 0x00, 0x00 .global data_ov37_02188058 data_ov37_02188058: ; 0x02188058 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218805c data_ov37_0218805c: ; 0x0218805c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188060 data_ov37_02188060: ; 0x02188060 .byte 0x00, 0x28, 0x00, 0x00 .global data_ov37_02188064 data_ov37_02188064: ; 0x02188064 .byte 0x00, 0x20, 0x00, 0x00 .global data_ov37_02188068 data_ov37_02188068: ; 0x02188068 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218806c data_ov37_0218806c: ; 0x0218806c .byte 0x00, 0x20, 0x00, 0x00 .global data_ov37_02188070 data_ov37_02188070: ; 0x02188070 .byte 0x9a, 0x09, 0x00, 0x00 .global data_ov37_02188074 data_ov37_02188074: ; 0x02188074 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188078 data_ov37_02188078: ; 0x02188078 .byte 0x9a, 0x19, 0x00, 0x00 .global data_ov37_0218807c data_ov37_0218807c: ; 0x0218807c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188080 data_ov37_02188080: ; 0x02188080 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188084 data_ov37_02188084: ; 0x02188084 .byte 0x00, 0x18, 0x00, 0x00 .global data_ov37_02188088 data_ov37_02188088: ; 0x02188088 .byte 0x00, 0xe0, 0xff, 0xff .global data_ov37_0218808c data_ov37_0218808c: ; 0x0218808c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188090 data_ov37_02188090: ; 0x02188090 .byte 0x00, 0x30, 0x00, 0x00 .global data_ov37_02188094 data_ov37_02188094: ; 0x02188094 .byte 0x33, 0xfb, 0xff, 0xff .global data_ov37_02188098 data_ov37_02188098: ; 0x02188098 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218809c data_ov37_0218809c: ; 0x0218809c .byte 0x00, 0x48, 0x00, 0x00 .global data_ov37_021880a0 data_ov37_021880a0: ; 0x021880a0 .byte 0x00, 0x10, 0x00, 0x00 .global data_ov37_021880a4 data_ov37_021880a4: ; 0x021880a4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021880a8 data_ov37_021880a8: ; 0x021880a8 .byte 0x00, 0x48, 0x00, 0x00 .global data_ov37_021880ac data_ov37_021880ac: ; 0x021880ac .byte 0x9a, 0x09, 0x00, 0x00 .global data_ov37_021880b0 data_ov37_021880b0: ; 0x021880b0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021880b4 data_ov37_021880b4: ; 0x021880b4 .byte 0x00, 0x50, 0x00, 0x00 .global data_ov37_021880b8 data_ov37_021880b8: ; 0x021880b8 .byte 0x00, 0xe0, 0xff, 0xff .global data_ov37_021880bc data_ov37_021880bc: ; 0x021880bc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021880c0 data_ov37_021880c0: ; 0x021880c0 .byte 0x33, 0x33, 0x00, 0x00 .global data_ov37_021880c4 data_ov37_021880c4: ; 0x021880c4 .byte 0x00, 0xf0, 0xff, 0xff .global data_ov37_021880c8 data_ov37_021880c8: ; 0x021880c8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021880cc data_ov37_021880cc: ; 0x021880cc .byte 0x33, 0x13, 0x00, 0x00 .global data_ov37_021880d0 data_ov37_021880d0: ; 0x021880d0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021880d4 data_ov37_021880d4: ; 0x021880d4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021880d8 data_ov37_021880d8: ; 0x021880d8 .byte 0x66, 0x1e, 0x00, 0x00 .global data_ov37_021880dc data_ov37_021880dc: ; 0x021880dc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021880e0 data_ov37_021880e0: ; 0x021880e0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021880e4 data_ov37_021880e4: ; 0x021880e4 .byte 0x00, 0x30, 0x00, 0x00 .global data_ov37_021880e8 data_ov37_021880e8: ; 0x021880e8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021880ec data_ov37_021880ec: ; 0x021880ec .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021880f0 data_ov37_021880f0: ; 0x021880f0 .byte 0x00, 0x30, 0x00, 0x00 .global data_ov37_021880f4 data_ov37_021880f4: ; 0x021880f4 .byte 0x33, 0x0b, 0x00, 0x00 .global data_ov37_021880f8 data_ov37_021880f8: ; 0x021880f8 .byte 0x33, 0xe3, 0xff, 0xff .global data_ov37_021880fc data_ov37_021880fc: ; 0x021880fc .byte 0x66, 0x16, 0x00, 0x00 .global data_ov37_02188100 data_ov37_02188100: ; 0x02188100 .byte 0x33, 0x0b, 0x00, 0x00 .global data_ov37_02188104 data_ov37_02188104: ; 0x02188104 .byte 0x33, 0xe3, 0xff, 0xff .global data_ov37_02188108 data_ov37_02188108: ; 0x02188108 .byte 0x9a, 0xe9, 0xff, 0xff .global data_ov37_0218810c data_ov37_0218810c: ; 0x0218810c .byte 0x00, 0x10, 0x00, 0x00 .global data_ov37_02188110 data_ov37_02188110: ; 0x02188110 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188114 data_ov37_02188114: ; 0x02188114 .byte 0x00, 0xf0, 0xff, 0xff .global data_ov37_02188118 data_ov37_02188118: ; 0x02188118 .byte 0x00, 0x10, 0x00, 0x00 .global data_ov37_0218811c data_ov37_0218811c: ; 0x0218811c .byte 0xcd, 0xf4, 0xff, 0xff .global data_ov37_02188120 data_ov37_02188120: ; 0x02188120 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188124 data_ov37_02188124: ; 0x02188124 .byte 0x00, 0x10, 0x00, 0x00 .global data_ov37_02188128 data_ov37_02188128: ; 0x02188128 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218812c data_ov37_0218812c: ; 0x0218812c .byte 0x00, 0xf0, 0xff, 0xff .global data_ov37_02188130 data_ov37_02188130: ; 0x02188130 .byte 0x00, 0x10, 0x00, 0x00 .global data_ov37_02188134 data_ov37_02188134: ; 0x02188134 .byte 0x33, 0x0b, 0x00, 0x00 .global data_ov37_02188138 data_ov37_02188138: ; 0x02188138 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218813c data_ov37_0218813c: ; 0x0218813c .byte 0x9a, 0x39, 0x00, 0x00 .global data_ov37_02188140 data_ov37_02188140: ; 0x02188140 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188144 data_ov37_02188144: ; 0x02188144 .byte 0x66, 0x1e, 0x00, 0x00 .global data_ov37_02188148 data_ov37_02188148: ; 0x02188148 .byte 0x9a, 0x11, 0x00, 0x00 .global data_ov37_0218814c data_ov37_0218814c: ; 0x0218814c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188150 data_ov37_02188150: ; 0x02188150 .byte 0x00, 0x20, 0x00, 0x00 .global data_ov37_02188154 data_ov37_02188154: ; 0x02188154 .byte 0x00, 0x10, 0x00, 0x00 .global data_ov37_02188158 data_ov37_02188158: ; 0x02188158 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218815c data_ov37_0218815c: ; 0x0218815c .byte 0x33, 0xdb, 0xff, 0xff .global data_ov37_02188160 data_ov37_02188160: ; 0x02188160 .byte 0xcd, 0x0c, 0x00, 0x00 .global data_ov37_02188164 data_ov37_02188164: ; 0x02188164 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188168 data_ov37_02188168: ; 0x02188168 .byte 0x00, 0xf0, 0xff, 0xff .global data_ov37_0218816c data_ov37_0218816c: ; 0x0218816c .byte 0xcd, 0x0c, 0x00, 0x00 .global data_ov37_02188170 data_ov37_02188170: ; 0x02188170 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188174 data_ov37_02188174: ; 0x02188174 .byte 0x00, 0x10, 0x00, 0x00 .global data_ov37_02188178 data_ov37_02188178: ; 0x02188178 .byte 0x00, 0xe8, 0xff, 0xff .global data_ov37_0218817c data_ov37_0218817c: ; 0x0218817c .byte 0x00, 0xf0, 0xff, 0xff .global data_ov37_02188180 data_ov37_02188180: ; 0x02188180 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188184 data_ov37_02188184: ; 0x02188184 .byte 0x00, 0x18, 0x00, 0x00 .global data_ov37_02188188 data_ov37_02188188: ; 0x02188188 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218818c data_ov37_0218818c: ; 0x0218818c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188190 data_ov37_02188190: ; 0x02188190 .byte 0x00, 0x18, 0x00, 0x00 .global data_ov37_02188194 data_ov37_02188194: ; 0x02188194 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188198 data_ov37_02188198: ; 0x02188198 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218819c data_ov37_0218819c: ; 0x0218819c .byte 0x05, 0x00, 0x00, 0x00 .global data_ov37_021881a0 data_ov37_021881a0: ; 0x021881a0 .byte 0x04, 0x00, 0x00, 0x00 .global data_ov37_021881a4 data_ov37_021881a4: ; 0x021881a4 .byte 0x03, 0x00, 0x00, 0x00 .global data_ov37_021881a8 data_ov37_021881a8: ; 0x021881a8 .byte 0x02, 0x00, 0x00, 0x00 .global data_ov37_021881ac data_ov37_021881ac: ; 0x021881ac .byte 0x01, 0x00, 0x00, 0x00 .global data_ov37_021881b0 data_ov37_021881b0: ; 0x021881b0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021881b4 data_ov37_021881b4: ; 0x021881b4 .byte 0x44, 0x00, 0x00, 0x00 .global data_ov37_021881b8 data_ov37_021881b8: ; 0x021881b8 .byte 0x6c, 0x01, 0x00, 0x00 .global data_ov37_021881bc data_ov37_021881bc: ; 0x021881bc .byte 0x00, 0xe0, 0x03, 0x00 .global data_ov37_021881c0 data_ov37_021881c0: ; 0x021881c0 .byte 0x00, 0x90, 0x0b, 0x00 .global data_ov37_021881c4 data_ov37_021881c4: ; 0x021881c4 .byte 0x00, 0xb0, 0x07, 0x00 .global data_ov37_021881c8 data_ov37_021881c8: ; 0x021881c8 .byte 0x00, 0x70, 0x02, 0x00 .global data_ov37_021881cc data_ov37_021881cc: ; 0x021881cc .byte 0x00, 0x70, 0x02, 0x00 .global data_ov37_021881d0 data_ov37_021881d0: ; 0x021881d0 .byte 0x00, 0x40, 0x02, 0x00 .global data_ov37_021881d4 data_ov37_021881d4: ; 0x021881d4 .byte 0x00, 0x40, 0x02, 0x00 .global data_ov37_021881d8 data_ov37_021881d8: ; 0x021881d8 .byte 0x00, 0x10, 0x04, 0x00 .global data_ov37_021881dc data_ov37_021881dc: ; 0x021881dc .byte 0x00, 0x90, 0x01, 0x00 .global data_ov37_021881e0 data_ov37_021881e0: ; 0x021881e0 .byte 0x00, 0xb0, 0x05, 0x00 .global data_ov37_021881e4 data_ov37_021881e4: ; 0x021881e4 .byte 0x00, 0x80, 0x04, 0x00 .global data_ov37_021881e8 data_ov37_021881e8: ; 0x021881e8 .byte 0x00, 0xf0, 0x03, 0x00 .global data_ov37_021881ec data_ov37_021881ec: ; 0x021881ec .byte 0x00, 0xa0, 0x05, 0x00 .global data_ov37_021881f0 data_ov37_021881f0: ; 0x021881f0 .byte 0x00, 0x10, 0x00, 0x00 .global data_ov37_021881f4 data_ov37_021881f4: ; 0x021881f4 .byte 0xab, 0x2a, 0x00, 0x00 .global data_ov37_021881f8 data_ov37_021881f8: ; 0x021881f8 .byte 0x5a, 0x00, 0x00, 0x00 .global data_ov37_021881fc data_ov37_021881fc: ; 0x021881fc .ascii "LarmA" .byte 0x00, 0x00, 0x00 .global data_ov37_02188204 data_ov37_02188204: ; 0x02188204 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188208 data_ov37_02188208: ; 0x02188208 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218820c data_ov37_0218820c: ; 0x0218820c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188210 data_ov37_02188210: ; 0x02188210 .ascii "LarmB" .byte 0x00, 0x00, 0x00 .global data_ov37_02188218 data_ov37_02188218: ; 0x02188218 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218821c data_ov37_0218821c: ; 0x0218821c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188220 data_ov37_02188220: ; 0x02188220 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188224 data_ov37_02188224: ; 0x02188224 .ascii "RarmA" .byte 0x00, 0x00, 0x00 .global data_ov37_0218822c data_ov37_0218822c: ; 0x0218822c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188230 data_ov37_02188230: ; 0x02188230 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188234 data_ov37_02188234: ; 0x02188234 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188238 data_ov37_02188238: ; 0x02188238 .ascii "RarmB" .byte 0x00, 0x00, 0x00 .global data_ov37_02188240 data_ov37_02188240: ; 0x02188240 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188244 data_ov37_02188244: ; 0x02188244 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188248 data_ov37_02188248: ; 0x02188248 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218824c data_ov37_0218824c: ; 0x0218824c .ascii "chest" .byte 0x00, 0x00, 0x00 .global data_ov37_02188254 data_ov37_02188254: ; 0x02188254 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188258 data_ov37_02188258: ; 0x02188258 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218825c data_ov37_0218825c: ; 0x0218825c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188260 data_ov37_02188260: ; 0x02188260 .ascii "waist" .byte 0x00, 0x00, 0x00 .global data_ov37_02188268 data_ov37_02188268: ; 0x02188268 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218826c data_ov37_0218826c: ; 0x0218826c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188270 data_ov37_02188270: ; 0x02188270 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188274 data_ov37_02188274: ; 0x02188274 .ascii "hip" .byte 0x00 .global data_ov37_02188278 data_ov37_02188278: ; 0x02188278 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218827c data_ov37_0218827c: ; 0x0218827c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188280 data_ov37_02188280: ; 0x02188280 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188284 data_ov37_02188284: ; 0x02188284 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188288 data_ov37_02188288: ; 0x02188288 .ascii "LlegA" .byte 0x00, 0x00, 0x00 .global data_ov37_02188290 data_ov37_02188290: ; 0x02188290 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188294 data_ov37_02188294: ; 0x02188294 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188298 data_ov37_02188298: ; 0x02188298 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218829c data_ov37_0218829c: ; 0x0218829c .ascii "LlegB" .byte 0x00, 0x00, 0x00 .global data_ov37_021882a4 data_ov37_021882a4: ; 0x021882a4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021882a8 data_ov37_021882a8: ; 0x021882a8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021882ac data_ov37_021882ac: ; 0x021882ac .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021882b0 data_ov37_021882b0: ; 0x021882b0 .ascii "RlegA" .byte 0x00, 0x00, 0x00 .global data_ov37_021882b8 data_ov37_021882b8: ; 0x021882b8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021882bc data_ov37_021882bc: ; 0x021882bc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021882c0 data_ov37_021882c0: ; 0x021882c0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021882c4 data_ov37_021882c4: ; 0x021882c4 .ascii "RlegB" .byte 0x00, 0x00, 0x00 .global data_ov37_021882cc data_ov37_021882cc: ; 0x021882cc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021882d0 data_ov37_021882d0: ; 0x021882d0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021882d4 data_ov37_021882d4: ; 0x021882d4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021882d8 data_ov37_021882d8: ; 0x021882d8 .ascii "head" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021882e0 data_ov37_021882e0: ; 0x021882e0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021882e4 data_ov37_021882e4: ; 0x021882e4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021882e8 data_ov37_021882e8: ; 0x021882e8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021882ec data_ov37_021882ec: ; 0x021882ec .ascii "BLarmA" .byte 0x00, 0x00 .global data_ov37_021882f4 data_ov37_021882f4: ; 0x021882f4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021882f8 data_ov37_021882f8: ; 0x021882f8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021882fc data_ov37_021882fc: ; 0x021882fc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188300 data_ov37_02188300: ; 0x02188300 .ascii "BLarmB" .byte 0x00, 0x00 .global data_ov37_02188308 data_ov37_02188308: ; 0x02188308 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218830c data_ov37_0218830c: ; 0x0218830c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188310 data_ov37_02188310: ; 0x02188310 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188314 data_ov37_02188314: ; 0x02188314 .ascii "BRarmA" .byte 0x00, 0x00 .global data_ov37_0218831c data_ov37_0218831c: ; 0x0218831c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188320 data_ov37_02188320: ; 0x02188320 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188324 data_ov37_02188324: ; 0x02188324 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188328 data_ov37_02188328: ; 0x02188328 .ascii "BRarmB" .byte 0x00, 0x00 .global data_ov37_02188330 data_ov37_02188330: ; 0x02188330 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188334 data_ov37_02188334: ; 0x02188334 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188338 data_ov37_02188338: ; 0x02188338 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218833c data_ov37_0218833c: ; 0x0218833c .ascii "Bchest_waist" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218834c data_ov37_0218834c: ; 0x0218834c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188350 data_ov37_02188350: ; 0x02188350 .ascii "BLlegA" .byte 0x00, 0x00 .global data_ov37_02188358 data_ov37_02188358: ; 0x02188358 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218835c data_ov37_0218835c: ; 0x0218835c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188360 data_ov37_02188360: ; 0x02188360 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188364 data_ov37_02188364: ; 0x02188364 .ascii "BLlegB" .byte 0x00, 0x00 .global data_ov37_0218836c data_ov37_0218836c: ; 0x0218836c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188370 data_ov37_02188370: ; 0x02188370 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188374 data_ov37_02188374: ; 0x02188374 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188378 data_ov37_02188378: ; 0x02188378 .ascii "BRlegA" .byte 0x00, 0x00 .global data_ov37_02188380 data_ov37_02188380: ; 0x02188380 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188384 data_ov37_02188384: ; 0x02188384 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188388 data_ov37_02188388: ; 0x02188388 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218838c data_ov37_0218838c: ; 0x0218838c .ascii "BRlegB" .byte 0x00, 0x00 .global data_ov37_02188394 data_ov37_02188394: ; 0x02188394 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188398 data_ov37_02188398: ; 0x02188398 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218839c data_ov37_0218839c: ; 0x0218839c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021883a0 data_ov37_021883a0: ; 0x021883a0 .ascii "Bhip" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021883a8 data_ov37_021883a8: ; 0x021883a8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021883ac data_ov37_021883ac: ; 0x021883ac .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021883b0 data_ov37_021883b0: ; 0x021883b0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021883b4 data_ov37_021883b4: ; 0x021883b4 .ascii "Bhead" .byte 0x00, 0x00, 0x00 .global data_ov37_021883bc data_ov37_021883bc: ; 0x021883bc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021883c0 data_ov37_021883c0: ; 0x021883c0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021883c4 data_ov37_021883c4: ; 0x021883c4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021883c8 data_ov37_021883c8: ; 0x021883c8 .ascii "mt_LarmA" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021883d4 data_ov37_021883d4: ; 0x021883d4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021883d8 data_ov37_021883d8: ; 0x021883d8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021883dc data_ov37_021883dc: ; 0x021883dc .ascii "mt_LarmB" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021883e8 data_ov37_021883e8: ; 0x021883e8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021883ec data_ov37_021883ec: ; 0x021883ec .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021883f0 data_ov37_021883f0: ; 0x021883f0 .ascii "mt_RarmA" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021883fc data_ov37_021883fc: ; 0x021883fc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188400 data_ov37_02188400: ; 0x02188400 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188404 data_ov37_02188404: ; 0x02188404 .ascii "mt_RarmB" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188410 data_ov37_02188410: ; 0x02188410 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188414 data_ov37_02188414: ; 0x02188414 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188418 data_ov37_02188418: ; 0x02188418 .ascii "mt_chest" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188424 data_ov37_02188424: ; 0x02188424 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188428 data_ov37_02188428: ; 0x02188428 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218842c data_ov37_0218842c: ; 0x0218842c .ascii "mt_waist" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188438 data_ov37_02188438: ; 0x02188438 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218843c data_ov37_0218843c: ; 0x0218843c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188440 data_ov37_02188440: ; 0x02188440 .ascii "mt_Lleg" .byte 0x00 .global data_ov37_02188448 data_ov37_02188448: ; 0x02188448 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218844c data_ov37_0218844c: ; 0x0218844c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188450 data_ov37_02188450: ; 0x02188450 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188454 data_ov37_02188454: ; 0x02188454 .ascii "mt_Rleg" .byte 0x00 .global data_ov37_0218845c data_ov37_0218845c: ; 0x0218845c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188460 data_ov37_02188460: ; 0x02188460 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188464 data_ov37_02188464: ; 0x02188464 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188468 data_ov37_02188468: ; 0x02188468 .ascii "mt_hip" .byte 0x00, 0x00 .global data_ov37_02188470 data_ov37_02188470: ; 0x02188470 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188474 data_ov37_02188474: ; 0x02188474 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188478 data_ov37_02188478: ; 0x02188478 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218847c data_ov37_0218847c: ; 0x0218847c .ascii "mt_head" .byte 0x00 .global data_ov37_02188484 data_ov37_02188484: ; 0x02188484 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188488 data_ov37_02188488: ; 0x02188488 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218848c data_ov37_0218848c: ; 0x0218848c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188490 data_ov37_02188490: ; 0x02188490 .ascii "mt_oisu_arA" .byte 0x00 .global data_ov37_0218849c data_ov37_0218849c: ; 0x0218849c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021884a0 data_ov37_021884a0: ; 0x021884a0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021884a4 data_ov37_021884a4: ; 0x021884a4 .ascii "mt_oisu_arB" .byte 0x00 .global data_ov37_021884b0 data_ov37_021884b0: ; 0x021884b0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021884b4 data_ov37_021884b4: ; 0x021884b4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021884b8 data_ov37_021884b8: ; 0x021884b8 .ascii "mt_oisu_arC" .byte 0x00 .global data_ov37_021884c4 data_ov37_021884c4: ; 0x021884c4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021884c8 data_ov37_021884c8: ; 0x021884c8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021884cc data_ov37_021884cc: ; 0x021884cc .ascii "mt_oisu_arD" .byte 0x00 .global data_ov37_021884d8 data_ov37_021884d8: ; 0x021884d8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021884dc data_ov37_021884dc: ; 0x021884dc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021884e0 data_ov37_021884e0: ; 0x021884e0 .ascii "mt_oisu_arE" .byte 0x00 .global data_ov37_021884ec data_ov37_021884ec: ; 0x021884ec .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021884f0 data_ov37_021884f0: ; 0x021884f0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021884f4 data_ov37_021884f4: ; 0x021884f4 .ascii "mt_oisu_arF" .byte 0x00 .global data_ov37_02188500 data_ov37_02188500: ; 0x02188500 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188504 data_ov37_02188504: ; 0x02188504 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188508 data_ov37_02188508: ; 0x02188508 .byte 0x00, 0x20, 0x00, 0x00 .global data_ov37_0218850c data_ov37_0218850c: ; 0x0218850c .byte 0x00, 0x20, 0x00, 0x00 .global data_ov37_02188510 data_ov37_02188510: ; 0x02188510 .byte 0x00, 0x20, 0x00, 0x00 .global data_ov37_02188514 data_ov37_02188514: ; 0x02188514 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188518 data_ov37_02188518: ; 0x02188518 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218851c data_ov37_0218851c: ; 0x0218851c .byte 0x00, 0xf0, 0xff, 0xff .global data_ov37_02188520 data_ov37_02188520: ; 0x02188520 .byte 0xc0, 0xfe, 0xff, 0xff .global data_ov37_02188524 data_ov37_02188524: ; 0x02188524 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188528 data_ov37_02188528: ; 0x02188528 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218852c data_ov37_0218852c: ; 0x0218852c .byte 0x40, 0x01, 0x00, 0x00 .global data_ov37_02188530 data_ov37_02188530: ; 0x02188530 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188534 data_ov37_02188534: ; 0x02188534 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188538 data_ov37_02188538: ; 0x02188538 .byte 0x00, 0x08, 0x00, 0x00 .global data_ov37_0218853c data_ov37_0218853c: ; 0x0218853c .byte 0x00, 0x20, 0x00, 0x00 .global data_ov37_02188540 data_ov37_02188540: ; 0x02188540 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188544 data_ov37_02188544: ; 0x02188544 .byte 0xc7, 0xf1, 0xff, 0xff .global data_ov37_02188548 data_ov37_02188548: ; 0x02188548 .ascii "oisu_head" .byte 0x00, 0x00, 0x00 .global data_ov37_02188554 data_ov37_02188554: ; 0x02188554 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188558 data_ov37_02188558: ; 0x02188558 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218855c data_ov37_0218855c: ; 0x0218855c .ascii "mt_oisu_arA" .byte 0x00 .global data_ov37_02188568 data_ov37_02188568: ; 0x02188568 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218856c data_ov37_0218856c: ; 0x0218856c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188570 data_ov37_02188570: ; 0x02188570 .ascii "mt_oisu_arB" .byte 0x00 .global data_ov37_0218857c data_ov37_0218857c: ; 0x0218857c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188580 data_ov37_02188580: ; 0x02188580 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188584 data_ov37_02188584: ; 0x02188584 .ascii "mt_oisu_arC" .byte 0x00 .global data_ov37_02188590 data_ov37_02188590: ; 0x02188590 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188594 data_ov37_02188594: ; 0x02188594 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188598 data_ov37_02188598: ; 0x02188598 .ascii "mt_oisu_arD" .byte 0x00 .global data_ov37_021885a4 data_ov37_021885a4: ; 0x021885a4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021885a8 data_ov37_021885a8: ; 0x021885a8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021885ac data_ov37_021885ac: ; 0x021885ac .ascii "mt_oisu_arE" .byte 0x00 .global data_ov37_021885b8 data_ov37_021885b8: ; 0x021885b8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021885bc data_ov37_021885bc: ; 0x021885bc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021885c0 data_ov37_021885c0: ; 0x021885c0 .ascii "mt_oisu_arF" .byte 0x00 .global data_ov37_021885cc data_ov37_021885cc: ; 0x021885cc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021885d0 data_ov37_021885d0: ; 0x021885d0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021885d4 data_ov37_021885d4: ; 0x021885d4 .ascii "Hwait" .byte 0x00, 0x00, 0x00 .global data_ov37_021885dc data_ov37_021885dc: ; 0x021885dc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021885e0 data_ov37_021885e0: ; 0x021885e0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021885e4 data_ov37_021885e4: ; 0x021885e4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021885e8 data_ov37_021885e8: ; 0x021885e8 .ascii "Hflick_st" .byte 0x00, 0x00, 0x00 .global data_ov37_021885f4 data_ov37_021885f4: ; 0x021885f4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021885f8 data_ov37_021885f8: ; 0x021885f8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021885fc data_ov37_021885fc: ; 0x021885fc .ascii "Hflick" .byte 0x00, 0x00 .global data_ov37_02188604 data_ov37_02188604: ; 0x02188604 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188608 data_ov37_02188608: ; 0x02188608 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218860c data_ov37_0218860c: ; 0x0218860c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188610 data_ov37_02188610: ; 0x02188610 .byte 0x66, 0x16, 0x00, 0x00 .global data_ov37_02188614 data_ov37_02188614: ; 0x02188614 .byte 0xcd, 0x1c, 0x00, 0x00 .global data_ov37_02188618 data_ov37_02188618: ; 0x02188618 .byte 0x33, 0x0b, 0x00, 0x00 .global data_ov37_0218861c data_ov37_0218861c: ; 0x0218861c .byte 0x9a, 0xe9, 0xff, 0xff .global data_ov37_02188620 data_ov37_02188620: ; 0x02188620 .byte 0xcd, 0x1c, 0x00, 0x00 .global data_ov37_02188624 data_ov37_02188624: ; 0x02188624 .byte 0x33, 0x0b, 0x00, 0x00 .global data_ov37_02188628 data_ov37_02188628: ; 0x02188628 .byte 0x05, 0x00, 0x00, 0x00 .global data_ov37_0218862c data_ov37_0218862c: ; 0x0218862c .byte 0x04, 0x00, 0x00, 0x00 .global data_ov37_02188630 data_ov37_02188630: ; 0x02188630 .byte 0x03, 0x00, 0x00, 0x00 .global data_ov37_02188634 data_ov37_02188634: ; 0x02188634 .byte 0x02, 0x00, 0x00, 0x00 .global data_ov37_02188638 data_ov37_02188638: ; 0x02188638 .byte 0x01, 0x00, 0x00, 0x00 .global data_ov37_0218863c data_ov37_0218863c: ; 0x0218863c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188640 data_ov37_02188640: ; 0x02188640 .byte 0x00, 0x08, 0x00, 0x00 .global data_ov37_02188644 data_ov37_02188644: ; 0x02188644 .byte 0x33, 0x0b, 0x00, 0x00 .global data_ov37_02188648 data_ov37_02188648: ; 0x02188648 .byte 0x00, 0x20, 0x00, 0x00 .global data_ov37_0218864c data_ov37_0218864c: ; 0x0218864c .byte 0x00, 0xf8, 0xff, 0xff .global data_ov37_02188650 data_ov37_02188650: ; 0x02188650 .byte 0x33, 0x0b, 0x00, 0x00 .global data_ov37_02188654 data_ov37_02188654: ; 0x02188654 .byte 0x00, 0x20, 0x00, 0x00 .global data_ov37_02188658 data_ov37_02188658: ; 0x02188658 .byte 0x00, 0x18, 0x00, 0x00 .global data_ov37_0218865c data_ov37_0218865c: ; 0x0218865c .byte 0x33, 0x0b, 0x00, 0x00 .global data_ov37_02188660 data_ov37_02188660: ; 0x02188660 .byte 0x00, 0x18, 0x00, 0x00 .global data_ov37_02188664 data_ov37_02188664: ; 0x02188664 .byte 0x00, 0xe8, 0xff, 0xff .global data_ov37_02188668 data_ov37_02188668: ; 0x02188668 .byte 0x33, 0x0b, 0x00, 0x00 .global data_ov37_0218866c data_ov37_0218866c: ; 0x0218866c .byte 0x00, 0x18, 0x00, 0x00 .global data_ov37_02188670 data_ov37_02188670: ; 0x02188670 .byte 0x00, 0x20, 0x00, 0x00 .global data_ov37_02188674 data_ov37_02188674: ; 0x02188674 .byte 0x33, 0x0b, 0x00, 0x00 .global data_ov37_02188678 data_ov37_02188678: ; 0x02188678 .byte 0x9a, 0x09, 0x00, 0x00 .global data_ov37_0218867c data_ov37_0218867c: ; 0x0218867c .byte 0x00, 0xe0, 0xff, 0xff .global data_ov37_02188680 data_ov37_02188680: ; 0x02188680 .byte 0x33, 0x0b, 0x00, 0x00 .global data_ov37_02188684 data_ov37_02188684: ; 0x02188684 .byte 0x9a, 0x09, 0x00, 0x00 .global data_ov37_02188688 data_ov37_02188688: ; 0x02188688 .byte 0x04, 0x00, 0x0f, 0x00 .global data_ov37_0218868c data_ov37_0218868c: ; 0x0218868c .byte 0x08, 0x00, 0x00, 0x00 .section .init, 4, 1, 4 .global func_ov37_02188690 arm_func_start func_ov37_02188690 func_ov37_02188690: ; 0x02188690 stmdb sp!, {lr} sub sp, sp, #0x84 ldr r0, _02188790 ; =data_ov37_0218916c ldr r1, _02188794 ; =0x57534253 ldr r2, _02188798 ; =func_ov37_0217bd80 mov r3, #0 bl func_0203e784 ldr r0, _02188790 ; =data_ov37_0218916c ldr r1, _0218879c ; =func_0203e7b4 ldr r2, _021887a0 ; =data_ov37_02189160 bl func_0204f8d4 mov lr, #0 str lr, [sp] mov ip, #1 ldr r0, _021887a4 ; =0x00001b33 stmib sp, {ip, lr} str r0, [sp, #0xc] mov r3, #0x800 str r3, [sp, #0x10] str r0, [sp, #0x14] mov r2, #2 str r2, [sp, #0x18] mov r1, #4 str r1, [sp, #0x1c] str r1, [sp, #0x20] str lr, [sp, #0x24] str lr, [sp, #0x28] str r1, [sp, #0x2c] str r1, [sp, #0x30] str r1, [sp, #0x34] str r1, [sp, #0x38] str r1, [sp, #0x3c] str r1, [sp, #0x40] str r1, [sp, #0x44] mov r1, #0x96 str r1, [sp, #0x48] mov r1, #0x1000 str r1, [sp, #0x4c] sub r0, r0, #0x1000 str lr, [sp, #0x50] str r0, [sp, #0x54] str lr, [sp, #0x58] str r0, [sp, #0x5c] str r3, [sp, #0x60] str r3, [sp, #0x64] str lr, [sp, #0x68] mov r0, #0x2000 str r0, [sp, #0x6c] mov r0, #0x6000 str r0, [sp, #0x70] str lr, [sp, #0x74] str lr, [sp, #0x78] str lr, [sp, #0x7c] ldr r0, _021887a8 ; =data_ov37_02188a20 mov r3, r2 mov r1, #5 str ip, [sp, #0x80] bl func_ov00_020ccdd4 ldr r0, _021887a8 ; =data_ov37_02188a20 ldr r1, _021887ac ; =func_ov00_020cceec ldr r2, _021887b0 ; =data_ov37_02189180 bl func_0204f8d4 add sp, sp, #0x84 ldmia sp!, {pc} .align 2, 0 arm_func_end func_ov37_02188690 _02188790: .word data_ov37_0218916c _02188794: .word 0x57534253 _02188798: .word func_ov37_0217bd80 _0218879c: .word func_0203e7b4 _021887a0: .word data_ov37_02189160 _021887a4: .word 0x00001b33 _021887a8: .word data_ov37_02188a20 _021887ac: .word func_ov00_020cceec _021887b0: .word data_ov37_02189180 .global func_ov37_021887b4 arm_func_start func_ov37_021887b4 func_ov37_021887b4: ; 0x021887b4 stmdb sp!, {r3, lr} ldr r0, _021887fc ; =data_ov37_021891a0 ldr r1, _02188800 ; =0x57534242 ldr r2, _02188804 ; =func_ov37_021843a4 mov r3, #0 bl func_0203e784 ldr r0, _021887fc ; =data_ov37_021891a0 ldr r1, _02188808 ; =func_0203e7b4 ldr r2, _0218880c ; =data_ov37_02189194 bl func_0204f8d4 ldr r0, _02188810 ; =data_ov37_021891c0 mov r1, #0 bl func_ov00_020bebc0 ldr r0, _02188810 ; =data_ov37_021891c0 ldr r1, _02188814 ; =func_ov37_02185054 ldr r2, _02188818 ; =data_ov37_021891b4 bl func_0204f8d4 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov37_021887b4 _021887fc: .word data_ov37_021891a0 _02188800: .word 0x57534242 _02188804: .word func_ov37_021843a4 _02188808: .word func_0203e7b4 _0218880c: .word data_ov37_02189194 _02188810: .word data_ov37_021891c0 _02188814: .word func_ov37_02185054 _02188818: .word data_ov37_021891b4 .global func_ov37_0218881c arm_func_start func_ov37_0218881c func_ov37_0218881c: ; 0x0218881c stmdb sp!, {r3, lr} ldr r0, _02188848 ; =data_ov37_021891d8 ldr r1, _0218884c ; =0x57534246 ldr r2, _02188850 ; =func_ov37_02185068 mov r3, #0 bl func_0203e784 ldr r0, _02188848 ; =data_ov37_021891d8 ldr r1, _02188854 ; =func_0203e7b4 ldr r2, _02188858 ; =data_ov37_021891cc bl func_0204f8d4 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov37_0218881c _02188848: .word data_ov37_021891d8 _0218884c: .word 0x57534246 _02188850: .word func_ov37_02185068 _02188854: .word func_0203e7b4 _02188858: .word data_ov37_021891cc .global func_ov37_0218885c arm_func_start func_ov37_0218885c func_ov37_0218885c: ; 0x0218885c stmdb sp!, {r3, lr} ldr r0, _02188888 ; =data_ov37_021891f8 ldr r1, _0218888c ; =0x57534243 ldr r2, _02188890 ; =func_ov37_021853ac mov r3, #0 bl func_0203e784 ldr r0, _02188888 ; =data_ov37_021891f8 ldr r1, _02188894 ; =func_0203e7b4 ldr r2, _02188898 ; =data_ov37_021891ec bl func_0204f8d4 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov37_0218885c _02188888: .word data_ov37_021891f8 _0218888c: .word 0x57534243 _02188890: .word func_ov37_021853ac _02188894: .word func_0203e7b4 _02188898: .word data_ov37_021891ec .global func_ov37_0218889c arm_func_start func_ov37_0218889c func_ov37_0218889c: ; 0x0218889c stmdb sp!, {lr} sub sp, sp, #0x84 ldr r0, _02188994 ; =data_ov37_02189218 ldr r1, _02188998 ; =0x57534248 ldr r2, _0218899c ; =func_ov37_0218553c mov r3, #0 bl func_0203e784 ldr r0, _02188994 ; =data_ov37_02189218 ldr r1, _021889a0 ; =func_0203e7b4 ldr r2, _021889a4 ; =data_ov37_0218920c bl func_0204f8d4 mov r2, #0 str r2, [sp] mov r1, #1 str r1, [sp, #4] mov ip, #2 str ip, [sp, #8] mov r0, #0x1000 str r0, [sp, #0xc] str r0, [sp, #0x10] str r0, [sp, #0x14] str r1, [sp, #0x18] mov r0, #4 str r0, [sp, #0x1c] str r0, [sp, #0x20] str r2, [sp, #0x24] str r2, [sp, #0x28] str r0, [sp, #0x2c] str r0, [sp, #0x30] str r0, [sp, #0x34] str r0, [sp, #0x38] str r0, [sp, #0x3c] str r0, [sp, #0x40] str r0, [sp, #0x44] mov r0, #0x96 str r0, [sp, #0x48] str r2, [sp, #0x4c] str r2, [sp, #0x50] mov r0, #0x2000 str r0, [sp, #0x54] str r2, [sp, #0x58] str r0, [sp, #0x5c] mov r0, #0x1800 str r0, [sp, #0x60] str r0, [sp, #0x64] str r2, [sp, #0x68] str r2, [sp, #0x6c] str r2, [sp, #0x70] str r2, [sp, #0x74] str r2, [sp, #0x78] mov r0, #9 str r0, [sp, #0x7c] ldr r0, _021889a8 ; =data_ov37_02188f00 mov r3, r2 str ip, [sp, #0x80] bl func_ov00_020ccdd4 ldr r0, _021889a8 ; =data_ov37_02188f00 ldr r1, _021889ac ; =func_ov00_020cceec ldr r2, _021889b0 ; =data_ov37_0218922c bl func_0204f8d4 add sp, sp, #0x84 ldmia sp!, {pc} .align 2, 0 arm_func_end func_ov37_0218889c _02188994: .word data_ov37_02189218 _02188998: .word 0x57534248 _0218899c: .word func_ov37_0218553c _021889a0: .word func_0203e7b4 _021889a4: .word data_ov37_0218920c _021889a8: .word data_ov37_02188f00 _021889ac: .word func_ov00_020cceec _021889b0: .word data_ov37_0218922c .section .sinit, 4, 1, 4 .global data_ov37_021889b4 data_ov37_021889b4: ; 0x021889b4 .byte 0x90, 0x86, 0x18, 0x02 .global data_ov37_021889b8 data_ov37_021889b8: ; 0x021889b8 .byte 0xb4, 0x87, 0x18, 0x02 .global data_ov37_021889bc data_ov37_021889bc: ; 0x021889bc .byte 0x1c, 0x88, 0x18, 0x02 .global data_ov37_021889c0 data_ov37_021889c0: ; 0x021889c0 .byte 0x5c, 0x88, 0x18, 0x02 .global data_ov37_021889c4 data_ov37_021889c4: ; 0x021889c4 .byte 0x9c, 0x88, 0x18, 0x02 .data .global data_ov37_021889e0 data_ov37_021889e0: ; 0x021889e0 .ascii "brg" .byte 0x00 .global data_ov37_021889e4 data_ov37_021889e4: ; 0x021889e4 .ascii "fnl" .byte 0x00 .global data_ov37_021889e8 data_ov37_021889e8: ; 0x021889e8 .ascii "pdl" .byte 0x00 .global data_ov37_021889ec data_ov37_021889ec: ; 0x021889ec .ascii "dco" .byte 0x00 .global data_ov37_021889f0 data_ov37_021889f0: ; 0x021889f0 .ascii "can" .byte 0x00 .global data_ov37_021889f4 data_ov37_021889f4: ; 0x021889f4 .ascii "hul" .byte 0x00 .global data_ov37_021889f8 data_ov37_021889f8: ; 0x021889f8 .ascii "bow" .byte 0x00 .global data_ov37_021889fc data_ov37_021889fc: ; 0x021889fc .ascii "anc" .byte 0x00 .global data_ov37_02188a00 data_ov37_02188a00: ; 0x02188a00 .byte 0xfc, 0x89, 0x18, 0x02 .global data_ov37_02188a04 data_ov37_02188a04: ; 0x02188a04 .byte 0xf8, 0x89, 0x18, 0x02 .global data_ov37_02188a08 data_ov37_02188a08: ; 0x02188a08 .byte 0xf4, 0x89, 0x18, 0x02 .global data_ov37_02188a0c data_ov37_02188a0c: ; 0x02188a0c .byte 0xf0, 0x89, 0x18, 0x02 .global data_ov37_02188a10 data_ov37_02188a10: ; 0x02188a10 .byte 0xec, 0x89, 0x18, 0x02 .global data_ov37_02188a14 data_ov37_02188a14: ; 0x02188a14 .byte 0xe8, 0x89, 0x18, 0x02 .global data_ov37_02188a18 data_ov37_02188a18: ; 0x02188a18 .byte 0xe4, 0x89, 0x18, 0x02 .global data_ov37_02188a1c data_ov37_02188a1c: ; 0x02188a1c .byte 0xe0, 0x89, 0x18, 0x02 .global data_ov37_02188a20 data_ov37_02188a20: ; 0x02188a20 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a24 data_ov37_02188a24: ; 0x02188a24 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a28 data_ov37_02188a28: ; 0x02188a28 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a2c data_ov37_02188a2c: ; 0x02188a2c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a30 data_ov37_02188a30: ; 0x02188a30 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a34 data_ov37_02188a34: ; 0x02188a34 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a38 data_ov37_02188a38: ; 0x02188a38 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a3c data_ov37_02188a3c: ; 0x02188a3c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a40 data_ov37_02188a40: ; 0x02188a40 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a44 data_ov37_02188a44: ; 0x02188a44 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a48 data_ov37_02188a48: ; 0x02188a48 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a4c data_ov37_02188a4c: ; 0x02188a4c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a50 data_ov37_02188a50: ; 0x02188a50 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a54 data_ov37_02188a54: ; 0x02188a54 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a58 data_ov37_02188a58: ; 0x02188a58 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a5c data_ov37_02188a5c: ; 0x02188a5c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a60 data_ov37_02188a60: ; 0x02188a60 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a64 data_ov37_02188a64: ; 0x02188a64 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a68 data_ov37_02188a68: ; 0x02188a68 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a6c data_ov37_02188a6c: ; 0x02188a6c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a70 data_ov37_02188a70: ; 0x02188a70 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a74 data_ov37_02188a74: ; 0x02188a74 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a78 data_ov37_02188a78: ; 0x02188a78 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a7c data_ov37_02188a7c: ; 0x02188a7c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a80 data_ov37_02188a80: ; 0x02188a80 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a84 data_ov37_02188a84: ; 0x02188a84 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a88 data_ov37_02188a88: ; 0x02188a88 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a8c data_ov37_02188a8c: ; 0x02188a8c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a90 data_ov37_02188a90: ; 0x02188a90 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a94 data_ov37_02188a94: ; 0x02188a94 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a98 data_ov37_02188a98: ; 0x02188a98 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188a9c data_ov37_02188a9c: ; 0x02188a9c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188aa0 data_ov37_02188aa0: ; 0x02188aa0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188aa4 data_ov37_02188aa4: ; 0x02188aa4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188aa8 data_ov37_02188aa8: ; 0x02188aa8 .byte 0xa0, 0xbf, 0x17, 0x02 .global data_ov37_02188aac data_ov37_02188aac: ; 0x02188aac .byte 0x34, 0xc1, 0x17, 0x02 .global data_ov37_02188ab0 data_ov37_02188ab0: ; 0x02188ab0 .byte 0x00, 0xaa, 0x0c, 0x02 .global data_ov37_02188ab4 data_ov37_02188ab4: ; 0x02188ab4 .byte 0x3c, 0x17, 0x0c, 0x02 .global data_ov37_02188ab8 data_ov37_02188ab8: ; 0x02188ab8 .byte 0x80, 0xc3, 0x17, 0x02 .global data_ov37_02188abc data_ov37_02188abc: ; 0x02188abc .byte 0x08, 0xd6, 0x17, 0x02 .global data_ov37_02188ac0 data_ov37_02188ac0: ; 0x02188ac0 .byte 0x8c, 0xd6, 0x17, 0x02 .global data_ov37_02188ac4 data_ov37_02188ac4: ; 0x02188ac4 .byte 0xd4, 0x17, 0x0c, 0x02 .global data_ov37_02188ac8 data_ov37_02188ac8: ; 0x02188ac8 .byte 0x20, 0xf1, 0x17, 0x02 .global data_ov37_02188acc data_ov37_02188acc: ; 0x02188acc .byte 0x44, 0x17, 0x0c, 0x02 .global data_ov37_02188ad0 data_ov37_02188ad0: ; 0x02188ad0 .byte 0x48, 0x17, 0x0c, 0x02 .global data_ov37_02188ad4 data_ov37_02188ad4: ; 0x02188ad4 .byte 0xa8, 0x17, 0x0c, 0x02 .global data_ov37_02188ad8 data_ov37_02188ad8: ; 0x02188ad8 .byte 0xb0, 0x17, 0x0c, 0x02 .global data_ov37_02188adc data_ov37_02188adc: ; 0x02188adc .byte 0x4c, 0x17, 0x0c, 0x02 .global data_ov37_02188ae0 data_ov37_02188ae0: ; 0x02188ae0 .byte 0x7c, 0x17, 0x0c, 0x02 .global data_ov37_02188ae4 data_ov37_02188ae4: ; 0x02188ae4 .byte 0xe4, 0x27, 0x0c, 0x02 .global data_ov37_02188ae8 data_ov37_02188ae8: ; 0x02188ae8 .byte 0x04, 0x30, 0x0c, 0x02 .global data_ov37_02188aec data_ov37_02188aec: ; 0x02188aec .byte 0x44, 0x27, 0x0c, 0x02 .global data_ov37_02188af0 data_ov37_02188af0: ; 0x02188af0 .byte 0xb4, 0xae, 0x0c, 0x02 .global data_ov37_02188af4 data_ov37_02188af4: ; 0x02188af4 .byte 0x40, 0xa8, 0x0c, 0x02 .global data_ov37_02188af8 data_ov37_02188af8: ; 0x02188af8 .byte 0x0c, 0x31, 0x0c, 0x02 .global data_ov37_02188afc data_ov37_02188afc: ; 0x02188afc .byte 0x14, 0x31, 0x0c, 0x02 .global data_ov37_02188b00 data_ov37_02188b00: ; 0x02188b00 .byte 0xa8, 0x18, 0x0c, 0x02 .global data_ov37_02188b04 data_ov37_02188b04: ; 0x02188b04 .byte 0xc4, 0x18, 0x0c, 0x02 .global data_ov37_02188b08 data_ov37_02188b08: ; 0x02188b08 .byte 0xfc, 0x18, 0x0c, 0x02 .global data_ov37_02188b0c data_ov37_02188b0c: ; 0x02188b0c .byte 0x04, 0x19, 0x0c, 0x02 .global data_ov37_02188b10 data_ov37_02188b10: ; 0x02188b10 .byte 0x10, 0x19, 0x0c, 0x02 .global data_ov37_02188b14 data_ov37_02188b14: ; 0x02188b14 .byte 0x14, 0x19, 0x0c, 0x02 .global data_ov37_02188b18 data_ov37_02188b18: ; 0x02188b18 .byte 0x1c, 0x19, 0x0c, 0x02 .global data_ov37_02188b1c data_ov37_02188b1c: ; 0x02188b1c .byte 0x24, 0x19, 0x0c, 0x02 .global data_ov37_02188b20 data_ov37_02188b20: ; 0x02188b20 .byte 0x2c, 0x19, 0x0c, 0x02 .global data_ov37_02188b24 data_ov37_02188b24: ; 0x02188b24 .byte 0x28, 0x19, 0x0c, 0x02 .global data_ov37_02188b28 data_ov37_02188b28: ; 0x02188b28 .byte 0x34, 0x19, 0x0c, 0x02 .global data_ov37_02188b2c data_ov37_02188b2c: ; 0x02188b2c .byte 0x38, 0x19, 0x0c, 0x02 .global data_ov37_02188b30 data_ov37_02188b30: ; 0x02188b30 .byte 0x3c, 0x19, 0x0c, 0x02 .global data_ov37_02188b34 data_ov37_02188b34: ; 0x02188b34 .byte 0x40, 0x19, 0x0c, 0x02 .global data_ov37_02188b38 data_ov37_02188b38: ; 0x02188b38 .byte 0x48, 0x19, 0x0c, 0x02 .global data_ov37_02188b3c data_ov37_02188b3c: ; 0x02188b3c .byte 0x50, 0x19, 0x0c, 0x02 .global data_ov37_02188b40 data_ov37_02188b40: ; 0x02188b40 .byte 0x54, 0x19, 0x0c, 0x02 .global data_ov37_02188b44 data_ov37_02188b44: ; 0x02188b44 .byte 0x58, 0x19, 0x0c, 0x02 .global data_ov37_02188b48 data_ov37_02188b48: ; 0x02188b48 .byte 0x6c, 0x1b, 0x0c, 0x02 .global data_ov37_02188b4c data_ov37_02188b4c: ; 0x02188b4c .byte 0xb4, 0x1b, 0x0c, 0x02 .global data_ov37_02188b50 data_ov37_02188b50: ; 0x02188b50 .byte 0xf8, 0x1b, 0x0c, 0x02 .global data_ov37_02188b54 data_ov37_02188b54: ; 0x02188b54 .byte 0xfc, 0x31, 0x0c, 0x02 .global data_ov37_02188b58 data_ov37_02188b58: ; 0x02188b58 .byte 0xec, 0xce, 0x17, 0x02 .global data_ov37_02188b5c data_ov37_02188b5c: ; 0x02188b5c .byte 0x60, 0xd6, 0x17, 0x02 .global data_ov37_02188b60 data_ov37_02188b60: ; 0x02188b60 .byte 0xdc, 0xc2, 0x17, 0x02 .global data_ov37_02188b64 data_ov37_02188b64: ; 0x02188b64 .byte 0x98, 0xae, 0x0c, 0x02 .global data_ov37_02188b68 data_ov37_02188b68: ; 0x02188b68 .byte 0xa0, 0xae, 0x0c, 0x02 .global data_ov37_02188b6c data_ov37_02188b6c: ; 0x02188b6c .byte 0xc8, 0xfc, 0x17, 0x02 .global data_ov37_02188b70 data_ov37_02188b70: ; 0x02188b70 .byte 0xf8, 0xae, 0x0c, 0x02 .global data_ov37_02188b74 data_ov37_02188b74: ; 0x02188b74 .byte 0xfc, 0xae, 0x0c, 0x02 .global data_ov37_02188b78 data_ov37_02188b78: ; 0x02188b78 .byte 0xb8, 0xaf, 0x0c, 0x02 .global data_ov37_02188b7c data_ov37_02188b7c: ; 0x02188b7c .byte 0xbc, 0xaf, 0x0c, 0x02 .global data_ov37_02188b80 data_ov37_02188b80: ; 0x02188b80 .byte 0xd0, 0xaf, 0x0c, 0x02 .global data_ov37_02188b84 data_ov37_02188b84: ; 0x02188b84 .byte 0x58, 0xb0, 0x0c, 0x02 .global data_ov37_02188b88 data_ov37_02188b88: ; 0x02188b88 .byte 0x6c, 0xb0, 0x0c, 0x02 .global data_ov37_02188b8c data_ov37_02188b8c: ; 0x02188b8c .byte 0x80, 0xb0, 0x0c, 0x02 .global data_ov37_02188b90 data_ov37_02188b90: ; 0x02188b90 .byte 0x0c, 0xb1, 0x0c, 0x02 .global data_ov37_02188b94 data_ov37_02188b94: ; 0x02188b94 .byte 0x20, 0xb1, 0x0c, 0x02 .global data_ov37_02188b98 data_ov37_02188b98: ; 0x02188b98 .byte 0x2c, 0xb1, 0x0c, 0x02 .global data_ov37_02188b9c data_ov37_02188b9c: ; 0x02188b9c .byte 0x3c, 0xb1, 0x0c, 0x02 .global data_ov37_02188ba0 data_ov37_02188ba0: ; 0x02188ba0 .byte 0x50, 0xc1, 0x0c, 0x02 .global data_ov37_02188ba4 data_ov37_02188ba4: ; 0x02188ba4 .byte 0x5c, 0xc1, 0x0c, 0x02 .global data_ov37_02188ba8 data_ov37_02188ba8: ; 0x02188ba8 .byte 0x90, 0xc4, 0x0c, 0x02 .global data_ov37_02188bac data_ov37_02188bac: ; 0x02188bac .byte 0x24, 0xc5, 0x0c, 0x02 .global data_ov37_02188bb0 data_ov37_02188bb0: ; 0x02188bb0 .ascii "brg" .byte 0x00 .global data_ov37_02188bb4 data_ov37_02188bb4: ; 0x02188bb4 .ascii "fnl" .byte 0x00 .global data_ov37_02188bb8 data_ov37_02188bb8: ; 0x02188bb8 .ascii "pdl" .byte 0x00 .global data_ov37_02188bbc data_ov37_02188bbc: ; 0x02188bbc .ascii "dco" .byte 0x00 .global data_ov37_02188bc0 data_ov37_02188bc0: ; 0x02188bc0 .ascii "can" .byte 0x00 .global data_ov37_02188bc4 data_ov37_02188bc4: ; 0x02188bc4 .ascii "hul" .byte 0x00 .global data_ov37_02188bc8 data_ov37_02188bc8: ; 0x02188bc8 .ascii "bow" .byte 0x00 .global data_ov37_02188bcc data_ov37_02188bcc: ; 0x02188bcc .ascii "anc" .byte 0x00 .global data_ov37_02188bd0 data_ov37_02188bd0: ; 0x02188bd0 .byte 0xcc, 0x8b, 0x18, 0x02 .global data_ov37_02188bd4 data_ov37_02188bd4: ; 0x02188bd4 .byte 0xc8, 0x8b, 0x18, 0x02 .global data_ov37_02188bd8 data_ov37_02188bd8: ; 0x02188bd8 .byte 0xc4, 0x8b, 0x18, 0x02 .global data_ov37_02188bdc data_ov37_02188bdc: ; 0x02188bdc .byte 0xc0, 0x8b, 0x18, 0x02 .global data_ov37_02188be0 data_ov37_02188be0: ; 0x02188be0 .byte 0xbc, 0x8b, 0x18, 0x02 .global data_ov37_02188be4 data_ov37_02188be4: ; 0x02188be4 .byte 0xb8, 0x8b, 0x18, 0x02 .global data_ov37_02188be8 data_ov37_02188be8: ; 0x02188be8 .byte 0xb4, 0x8b, 0x18, 0x02 .global data_ov37_02188bec data_ov37_02188bec: ; 0x02188bec .byte 0xb0, 0x8b, 0x18, 0x02 .global data_ov37_02188bf0 data_ov37_02188bf0: ; 0x02188bf0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188bf4 data_ov37_02188bf4: ; 0x02188bf4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188bf8 data_ov37_02188bf8: ; 0x02188bf8 .byte 0x34, 0x5d, 0x0c, 0x02 .global data_ov37_02188bfc data_ov37_02188bfc: ; 0x02188bfc .byte 0x54, 0x0f, 0x18, 0x02 .global data_ov37_02188c00 data_ov37_02188c00: ; 0x02188c00 .byte 0x34, 0x0f, 0x18, 0x02 .global data_ov37_02188c04 data_ov37_02188c04: ; 0x02188c04 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188c08 data_ov37_02188c08: ; 0x02188c08 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188c0c data_ov37_02188c0c: ; 0x02188c0c .byte 0x20, 0x0f, 0x18, 0x02 .global data_ov37_02188c10 data_ov37_02188c10: ; 0x02188c10 .byte 0x84, 0x43, 0x18, 0x02 .global data_ov37_02188c14 data_ov37_02188c14: ; 0x02188c14 .byte 0x0c, 0x96, 0x0a, 0x02 .global data_ov37_02188c18 data_ov37_02188c18: ; 0x02188c18 .byte 0x14, 0x96, 0x0a, 0x02 .global data_ov37_02188c1c data_ov37_02188c1c: ; 0x02188c1c .byte 0x50, 0x96, 0x0a, 0x02 .global data_ov37_02188c20 data_ov37_02188c20: ; 0x02188c20 .byte 0xd4, 0x96, 0x0a, 0x02 .global data_ov37_02188c24 data_ov37_02188c24: ; 0x02188c24 .byte 0x40, 0x97, 0x0a, 0x02 .global data_ov37_02188c28 data_ov37_02188c28: ; 0x02188c28 .byte 0x64, 0x97, 0x0a, 0x02 .global data_ov37_02188c2c data_ov37_02188c2c: ; 0x02188c2c .byte 0xd0, 0x97, 0x0a, 0x02 .global data_ov37_02188c30 data_ov37_02188c30: ; 0x02188c30 .byte 0xe0, 0x97, 0x0a, 0x02 .global data_ov37_02188c34 data_ov37_02188c34: ; 0x02188c34 .byte 0xf8, 0x97, 0x0a, 0x02 .global data_ov37_02188c38 data_ov37_02188c38: ; 0x02188c38 .byte 0x64, 0x98, 0x0a, 0x02 .global data_ov37_02188c3c data_ov37_02188c3c: ; 0x02188c3c .byte 0xbc, 0x98, 0x0a, 0x02 .global data_ov37_02188c40 data_ov37_02188c40: ; 0x02188c40 .byte 0x90, 0x98, 0x0a, 0x02 .global data_ov37_02188c44 data_ov37_02188c44: ; 0x02188c44 .byte 0x68, 0x99, 0x0a, 0x02 .global data_ov37_02188c48 data_ov37_02188c48: ; 0x02188c48 .byte 0x94, 0x99, 0x0a, 0x02 .global data_ov37_02188c4c data_ov37_02188c4c: ; 0x02188c4c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188c50 data_ov37_02188c50: ; 0x02188c50 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188c54 data_ov37_02188c54: ; 0x02188c54 .byte 0x34, 0x5d, 0x0c, 0x02 .global data_ov37_02188c58 data_ov37_02188c58: ; 0x02188c58 .byte 0xa0, 0x43, 0x18, 0x02 .global data_ov37_02188c5c data_ov37_02188c5c: ; 0x02188c5c .byte 0x58, 0x5e, 0x0c, 0x02 .global data_ov37_02188c60 data_ov37_02188c60: ; 0x02188c60 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188c64 data_ov37_02188c64: ; 0x02188c64 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188c68 data_ov37_02188c68: ; 0x02188c68 .byte 0x6d, 0x9b, 0x0a, 0x02 .global data_ov37_02188c6c data_ov37_02188c6c: ; 0x02188c6c .byte 0x79, 0x9b, 0x0a, 0x02 .global data_ov37_02188c70 data_ov37_02188c70: ; 0x02188c70 .ascii "OIW:/oisu_sw.nsbtp" .byte 0x00, 0x00 .global data_ov37_02188c84 data_ov37_02188c84: ; 0x02188c84 .ascii "oisu_sw" .byte 0x00 .global data_ov37_02188c8c data_ov37_02188c8c: ; 0x02188c8c .ascii "brg" .byte 0x00 .global data_ov37_02188c90 data_ov37_02188c90: ; 0x02188c90 .ascii "fnl" .byte 0x00 .global data_ov37_02188c94 data_ov37_02188c94: ; 0x02188c94 .ascii "pdl" .byte 0x00 .global data_ov37_02188c98 data_ov37_02188c98: ; 0x02188c98 .ascii "dco" .byte 0x00 .global data_ov37_02188c9c data_ov37_02188c9c: ; 0x02188c9c .ascii "can" .byte 0x00 .global data_ov37_02188ca0 data_ov37_02188ca0: ; 0x02188ca0 .ascii "hul" .byte 0x00 .global data_ov37_02188ca4 data_ov37_02188ca4: ; 0x02188ca4 .ascii "bow" .byte 0x00 .global data_ov37_02188ca8 data_ov37_02188ca8: ; 0x02188ca8 .ascii "anc" .byte 0x00 .global data_ov37_02188cac data_ov37_02188cac: ; 0x02188cac .byte 0xa8, 0x8c, 0x18, 0x02 .global data_ov37_02188cb0 data_ov37_02188cb0: ; 0x02188cb0 .byte 0xa4, 0x8c, 0x18, 0x02 .global data_ov37_02188cb4 data_ov37_02188cb4: ; 0x02188cb4 .byte 0xa0, 0x8c, 0x18, 0x02 .global data_ov37_02188cb8 data_ov37_02188cb8: ; 0x02188cb8 .byte 0x9c, 0x8c, 0x18, 0x02 .global data_ov37_02188cbc data_ov37_02188cbc: ; 0x02188cbc .byte 0x98, 0x8c, 0x18, 0x02 .global data_ov37_02188cc0 data_ov37_02188cc0: ; 0x02188cc0 .byte 0x94, 0x8c, 0x18, 0x02 .global data_ov37_02188cc4 data_ov37_02188cc4: ; 0x02188cc4 .byte 0x90, 0x8c, 0x18, 0x02 .global data_ov37_02188cc8 data_ov37_02188cc8: ; 0x02188cc8 .byte 0x8c, 0x8c, 0x18, 0x02 .global data_ov37_02188ccc data_ov37_02188ccc: ; 0x02188ccc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188cd0 data_ov37_02188cd0: ; 0x02188cd0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188cd4 data_ov37_02188cd4: ; 0x02188cd4 .byte 0x80, 0x44, 0x18, 0x02 .global data_ov37_02188cd8 data_ov37_02188cd8: ; 0x02188cd8 .byte 0xa8, 0x44, 0x18, 0x02 .global data_ov37_02188cdc data_ov37_02188cdc: ; 0x02188cdc .byte 0xd8, 0x44, 0x18, 0x02 .global data_ov37_02188ce0 data_ov37_02188ce0: ; 0x02188ce0 .byte 0x3c, 0x17, 0x0c, 0x02 .global data_ov37_02188ce4 data_ov37_02188ce4: ; 0x02188ce4 .byte 0x40, 0x17, 0x0c, 0x02 .global data_ov37_02188ce8 data_ov37_02188ce8: ; 0x02188ce8 .byte 0xd8, 0x47, 0x18, 0x02 .global data_ov37_02188cec data_ov37_02188cec: ; 0x02188cec .byte 0x4c, 0x49, 0x18, 0x02 .global data_ov37_02188cf0 data_ov37_02188cf0: ; 0x02188cf0 .byte 0xd4, 0x17, 0x0c, 0x02 .global data_ov37_02188cf4 data_ov37_02188cf4: ; 0x02188cf4 .byte 0xc0, 0x4b, 0x18, 0x02 .global data_ov37_02188cf8 data_ov37_02188cf8: ; 0x02188cf8 .byte 0x44, 0x17, 0x0c, 0x02 .global data_ov37_02188cfc data_ov37_02188cfc: ; 0x02188cfc .byte 0x48, 0x17, 0x0c, 0x02 .global data_ov37_02188d00 data_ov37_02188d00: ; 0x02188d00 .byte 0xa8, 0x17, 0x0c, 0x02 .global data_ov37_02188d04 data_ov37_02188d04: ; 0x02188d04 .byte 0xb0, 0x17, 0x0c, 0x02 .global data_ov37_02188d08 data_ov37_02188d08: ; 0x02188d08 .byte 0x4c, 0x17, 0x0c, 0x02 .global data_ov37_02188d0c data_ov37_02188d0c: ; 0x02188d0c .byte 0x7c, 0x17, 0x0c, 0x02 .global data_ov37_02188d10 data_ov37_02188d10: ; 0x02188d10 .byte 0xe4, 0x27, 0x0c, 0x02 .global data_ov37_02188d14 data_ov37_02188d14: ; 0x02188d14 .byte 0x04, 0x30, 0x0c, 0x02 .global data_ov37_02188d18 data_ov37_02188d18: ; 0x02188d18 .byte 0x8c, 0x46, 0x18, 0x02 .global data_ov37_02188d1c data_ov37_02188d1c: ; 0x02188d1c .byte 0x48, 0x1c, 0x0c, 0x02 .global data_ov37_02188d20 data_ov37_02188d20: ; 0x02188d20 .byte 0x50, 0x1c, 0x0c, 0x02 .global data_ov37_02188d24 data_ov37_02188d24: ; 0x02188d24 .byte 0x0c, 0x31, 0x0c, 0x02 .global data_ov37_02188d28 data_ov37_02188d28: ; 0x02188d28 .byte 0x14, 0x31, 0x0c, 0x02 .global data_ov37_02188d2c data_ov37_02188d2c: ; 0x02188d2c .byte 0xa8, 0x18, 0x0c, 0x02 .global data_ov37_02188d30 data_ov37_02188d30: ; 0x02188d30 .byte 0xc4, 0x18, 0x0c, 0x02 .global data_ov37_02188d34 data_ov37_02188d34: ; 0x02188d34 .byte 0xfc, 0x18, 0x0c, 0x02 .global data_ov37_02188d38 data_ov37_02188d38: ; 0x02188d38 .byte 0x04, 0x19, 0x0c, 0x02 .global data_ov37_02188d3c data_ov37_02188d3c: ; 0x02188d3c .byte 0x10, 0x19, 0x0c, 0x02 .global data_ov37_02188d40 data_ov37_02188d40: ; 0x02188d40 .byte 0x14, 0x19, 0x0c, 0x02 .global data_ov37_02188d44 data_ov37_02188d44: ; 0x02188d44 .byte 0x1c, 0x19, 0x0c, 0x02 .global data_ov37_02188d48 data_ov37_02188d48: ; 0x02188d48 .byte 0x24, 0x19, 0x0c, 0x02 .global data_ov37_02188d4c data_ov37_02188d4c: ; 0x02188d4c .byte 0x2c, 0x19, 0x0c, 0x02 .global data_ov37_02188d50 data_ov37_02188d50: ; 0x02188d50 .byte 0x28, 0x19, 0x0c, 0x02 .global data_ov37_02188d54 data_ov37_02188d54: ; 0x02188d54 .byte 0x34, 0x19, 0x0c, 0x02 .global data_ov37_02188d58 data_ov37_02188d58: ; 0x02188d58 .byte 0x38, 0x19, 0x0c, 0x02 .global data_ov37_02188d5c data_ov37_02188d5c: ; 0x02188d5c .byte 0x3c, 0x19, 0x0c, 0x02 .global data_ov37_02188d60 data_ov37_02188d60: ; 0x02188d60 .byte 0x40, 0x19, 0x0c, 0x02 .global data_ov37_02188d64 data_ov37_02188d64: ; 0x02188d64 .byte 0x48, 0x19, 0x0c, 0x02 .global data_ov37_02188d68 data_ov37_02188d68: ; 0x02188d68 .byte 0x50, 0x19, 0x0c, 0x02 .global data_ov37_02188d6c data_ov37_02188d6c: ; 0x02188d6c .byte 0x54, 0x19, 0x0c, 0x02 .global data_ov37_02188d70 data_ov37_02188d70: ; 0x02188d70 .byte 0x58, 0x19, 0x0c, 0x02 .global data_ov37_02188d74 data_ov37_02188d74: ; 0x02188d74 .byte 0x6c, 0x1b, 0x0c, 0x02 .global data_ov37_02188d78 data_ov37_02188d78: ; 0x02188d78 .byte 0xb4, 0x1b, 0x0c, 0x02 .global data_ov37_02188d7c data_ov37_02188d7c: ; 0x02188d7c .byte 0xf8, 0x1b, 0x0c, 0x02 .global data_ov37_02188d80 data_ov37_02188d80: ; 0x02188d80 .byte 0xfc, 0x31, 0x0c, 0x02 .global data_ov37_02188d84 data_ov37_02188d84: ; 0x02188d84 .byte 0x2c, 0x32, 0x0c, 0x02 .global data_ov37_02188d88 data_ov37_02188d88: ; 0x02188d88 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188d8c data_ov37_02188d8c: ; 0x02188d8c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188d90 data_ov37_02188d90: ; 0x02188d90 .byte 0x98, 0x53, 0x18, 0x02 .global data_ov37_02188d94 data_ov37_02188d94: ; 0x02188d94 .byte 0x7c, 0x53, 0x18, 0x02 .global data_ov37_02188d98 data_ov37_02188d98: ; 0x02188d98 .byte 0x10, 0x53, 0x18, 0x02 .global data_ov37_02188d9c data_ov37_02188d9c: ; 0x02188d9c .byte 0x3c, 0x17, 0x0c, 0x02 .global data_ov37_02188da0 data_ov37_02188da0: ; 0x02188da0 .byte 0x40, 0x17, 0x0c, 0x02 .global data_ov37_02188da4 data_ov37_02188da4: ; 0x02188da4 .byte 0x64, 0x53, 0x18, 0x02 .global data_ov37_02188da8 data_ov37_02188da8: ; 0x02188da8 .byte 0xbc, 0x17, 0x0c, 0x02 .global data_ov37_02188dac data_ov37_02188dac: ; 0x02188dac .byte 0xd4, 0x17, 0x0c, 0x02 .global data_ov37_02188db0 data_ov37_02188db0: ; 0x02188db0 .byte 0x94, 0x18, 0x0c, 0x02 .global data_ov37_02188db4 data_ov37_02188db4: ; 0x02188db4 .byte 0x44, 0x17, 0x0c, 0x02 .global data_ov37_02188db8 data_ov37_02188db8: ; 0x02188db8 .byte 0x48, 0x17, 0x0c, 0x02 .global data_ov37_02188dbc data_ov37_02188dbc: ; 0x02188dbc .byte 0xa8, 0x17, 0x0c, 0x02 .global data_ov37_02188dc0 data_ov37_02188dc0: ; 0x02188dc0 .byte 0xb0, 0x17, 0x0c, 0x02 .global data_ov37_02188dc4 data_ov37_02188dc4: ; 0x02188dc4 .byte 0x4c, 0x17, 0x0c, 0x02 .global data_ov37_02188dc8 data_ov37_02188dc8: ; 0x02188dc8 .byte 0x7c, 0x17, 0x0c, 0x02 .global data_ov37_02188dcc data_ov37_02188dcc: ; 0x02188dcc .byte 0xe4, 0x27, 0x0c, 0x02 .global data_ov37_02188dd0 data_ov37_02188dd0: ; 0x02188dd0 .byte 0x04, 0x30, 0x0c, 0x02 .global data_ov37_02188dd4 data_ov37_02188dd4: ; 0x02188dd4 .byte 0x44, 0x27, 0x0c, 0x02 .global data_ov37_02188dd8 data_ov37_02188dd8: ; 0x02188dd8 .byte 0x78, 0x51, 0x18, 0x02 .global data_ov37_02188ddc data_ov37_02188ddc: ; 0x02188ddc .byte 0x50, 0x1c, 0x0c, 0x02 .global data_ov37_02188de0 data_ov37_02188de0: ; 0x02188de0 .byte 0x0c, 0x31, 0x0c, 0x02 .global data_ov37_02188de4 data_ov37_02188de4: ; 0x02188de4 .byte 0x14, 0x31, 0x0c, 0x02 .global data_ov37_02188de8 data_ov37_02188de8: ; 0x02188de8 .byte 0xa8, 0x18, 0x0c, 0x02 .global data_ov37_02188dec data_ov37_02188dec: ; 0x02188dec .byte 0xc4, 0x18, 0x0c, 0x02 .global data_ov37_02188df0 data_ov37_02188df0: ; 0x02188df0 .byte 0xfc, 0x18, 0x0c, 0x02 .global data_ov37_02188df4 data_ov37_02188df4: ; 0x02188df4 .byte 0x04, 0x19, 0x0c, 0x02 .global data_ov37_02188df8 data_ov37_02188df8: ; 0x02188df8 .byte 0x10, 0x19, 0x0c, 0x02 .global data_ov37_02188dfc data_ov37_02188dfc: ; 0x02188dfc .byte 0x14, 0x19, 0x0c, 0x02 .global data_ov37_02188e00 data_ov37_02188e00: ; 0x02188e00 .byte 0x1c, 0x19, 0x0c, 0x02 .global data_ov37_02188e04 data_ov37_02188e04: ; 0x02188e04 .byte 0x24, 0x19, 0x0c, 0x02 .global data_ov37_02188e08 data_ov37_02188e08: ; 0x02188e08 .byte 0x2c, 0x19, 0x0c, 0x02 .global data_ov37_02188e0c data_ov37_02188e0c: ; 0x02188e0c .byte 0x28, 0x19, 0x0c, 0x02 .global data_ov37_02188e10 data_ov37_02188e10: ; 0x02188e10 .byte 0x34, 0x19, 0x0c, 0x02 .global data_ov37_02188e14 data_ov37_02188e14: ; 0x02188e14 .byte 0x38, 0x19, 0x0c, 0x02 .global data_ov37_02188e18 data_ov37_02188e18: ; 0x02188e18 .byte 0x3c, 0x19, 0x0c, 0x02 .global data_ov37_02188e1c data_ov37_02188e1c: ; 0x02188e1c .byte 0x40, 0x19, 0x0c, 0x02 .global data_ov37_02188e20 data_ov37_02188e20: ; 0x02188e20 .byte 0x48, 0x19, 0x0c, 0x02 .global data_ov37_02188e24 data_ov37_02188e24: ; 0x02188e24 .byte 0x50, 0x19, 0x0c, 0x02 .global data_ov37_02188e28 data_ov37_02188e28: ; 0x02188e28 .byte 0x54, 0x19, 0x0c, 0x02 .global data_ov37_02188e2c data_ov37_02188e2c: ; 0x02188e2c .byte 0x58, 0x19, 0x0c, 0x02 .global data_ov37_02188e30 data_ov37_02188e30: ; 0x02188e30 .byte 0x6c, 0x1b, 0x0c, 0x02 .global data_ov37_02188e34 data_ov37_02188e34: ; 0x02188e34 .byte 0xb4, 0x1b, 0x0c, 0x02 .global data_ov37_02188e38 data_ov37_02188e38: ; 0x02188e38 .byte 0xf8, 0x1b, 0x0c, 0x02 .global data_ov37_02188e3c data_ov37_02188e3c: ; 0x02188e3c .byte 0xfc, 0x31, 0x0c, 0x02 .global data_ov37_02188e40 data_ov37_02188e40: ; 0x02188e40 .byte 0x2c, 0x32, 0x0c, 0x02 .global data_ov37_02188e44 data_ov37_02188e44: ; 0x02188e44 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188e48 data_ov37_02188e48: ; 0x02188e48 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188e4c data_ov37_02188e4c: ; 0x02188e4c .byte 0x28, 0x55, 0x18, 0x02 .global data_ov37_02188e50 data_ov37_02188e50: ; 0x02188e50 .byte 0x0c, 0x55, 0x18, 0x02 .global data_ov37_02188e54 data_ov37_02188e54: ; 0x02188e54 .byte 0x4c, 0x54, 0x18, 0x02 .global data_ov37_02188e58 data_ov37_02188e58: ; 0x02188e58 .byte 0x3c, 0x17, 0x0c, 0x02 .global data_ov37_02188e5c data_ov37_02188e5c: ; 0x02188e5c .byte 0x40, 0x17, 0x0c, 0x02 .global data_ov37_02188e60 data_ov37_02188e60: ; 0x02188e60 .byte 0xac, 0x54, 0x18, 0x02 .global data_ov37_02188e64 data_ov37_02188e64: ; 0x02188e64 .byte 0xbc, 0x17, 0x0c, 0x02 .global data_ov37_02188e68 data_ov37_02188e68: ; 0x02188e68 .byte 0xd4, 0x17, 0x0c, 0x02 .global data_ov37_02188e6c data_ov37_02188e6c: ; 0x02188e6c .byte 0x94, 0x18, 0x0c, 0x02 .global data_ov37_02188e70 data_ov37_02188e70: ; 0x02188e70 .byte 0x44, 0x17, 0x0c, 0x02 .global data_ov37_02188e74 data_ov37_02188e74: ; 0x02188e74 .byte 0x48, 0x17, 0x0c, 0x02 .global data_ov37_02188e78 data_ov37_02188e78: ; 0x02188e78 .byte 0xa8, 0x17, 0x0c, 0x02 .global data_ov37_02188e7c data_ov37_02188e7c: ; 0x02188e7c .byte 0xb0, 0x17, 0x0c, 0x02 .global data_ov37_02188e80 data_ov37_02188e80: ; 0x02188e80 .byte 0x4c, 0x17, 0x0c, 0x02 .global data_ov37_02188e84 data_ov37_02188e84: ; 0x02188e84 .byte 0x7c, 0x17, 0x0c, 0x02 .global data_ov37_02188e88 data_ov37_02188e88: ; 0x02188e88 .byte 0xe4, 0x27, 0x0c, 0x02 .global data_ov37_02188e8c data_ov37_02188e8c: ; 0x02188e8c .byte 0x04, 0x30, 0x0c, 0x02 .global data_ov37_02188e90 data_ov37_02188e90: ; 0x02188e90 .byte 0x44, 0x27, 0x0c, 0x02 .global data_ov37_02188e94 data_ov37_02188e94: ; 0x02188e94 .byte 0x10, 0x54, 0x18, 0x02 .global data_ov37_02188e98 data_ov37_02188e98: ; 0x02188e98 .byte 0x50, 0x1c, 0x0c, 0x02 .global data_ov37_02188e9c data_ov37_02188e9c: ; 0x02188e9c .byte 0x0c, 0x31, 0x0c, 0x02 .global data_ov37_02188ea0 data_ov37_02188ea0: ; 0x02188ea0 .byte 0x14, 0x31, 0x0c, 0x02 .global data_ov37_02188ea4 data_ov37_02188ea4: ; 0x02188ea4 .byte 0xa8, 0x18, 0x0c, 0x02 .global data_ov37_02188ea8 data_ov37_02188ea8: ; 0x02188ea8 .byte 0xc4, 0x18, 0x0c, 0x02 .global data_ov37_02188eac data_ov37_02188eac: ; 0x02188eac .byte 0xfc, 0x18, 0x0c, 0x02 .global data_ov37_02188eb0 data_ov37_02188eb0: ; 0x02188eb0 .byte 0x04, 0x19, 0x0c, 0x02 .global data_ov37_02188eb4 data_ov37_02188eb4: ; 0x02188eb4 .byte 0x10, 0x19, 0x0c, 0x02 .global data_ov37_02188eb8 data_ov37_02188eb8: ; 0x02188eb8 .byte 0x14, 0x19, 0x0c, 0x02 .global data_ov37_02188ebc data_ov37_02188ebc: ; 0x02188ebc .byte 0x1c, 0x19, 0x0c, 0x02 .global data_ov37_02188ec0 data_ov37_02188ec0: ; 0x02188ec0 .byte 0x24, 0x19, 0x0c, 0x02 .global data_ov37_02188ec4 data_ov37_02188ec4: ; 0x02188ec4 .byte 0x2c, 0x19, 0x0c, 0x02 .global data_ov37_02188ec8 data_ov37_02188ec8: ; 0x02188ec8 .byte 0x28, 0x19, 0x0c, 0x02 .global data_ov37_02188ecc data_ov37_02188ecc: ; 0x02188ecc .byte 0x34, 0x19, 0x0c, 0x02 .global data_ov37_02188ed0 data_ov37_02188ed0: ; 0x02188ed0 .byte 0x38, 0x19, 0x0c, 0x02 .global data_ov37_02188ed4 data_ov37_02188ed4: ; 0x02188ed4 .byte 0x3c, 0x19, 0x0c, 0x02 .global data_ov37_02188ed8 data_ov37_02188ed8: ; 0x02188ed8 .byte 0x40, 0x19, 0x0c, 0x02 .global data_ov37_02188edc data_ov37_02188edc: ; 0x02188edc .byte 0x48, 0x19, 0x0c, 0x02 .global data_ov37_02188ee0 data_ov37_02188ee0: ; 0x02188ee0 .byte 0x50, 0x19, 0x0c, 0x02 .global data_ov37_02188ee4 data_ov37_02188ee4: ; 0x02188ee4 .byte 0x54, 0x19, 0x0c, 0x02 .global data_ov37_02188ee8 data_ov37_02188ee8: ; 0x02188ee8 .byte 0x58, 0x19, 0x0c, 0x02 .global data_ov37_02188eec data_ov37_02188eec: ; 0x02188eec .byte 0x6c, 0x1b, 0x0c, 0x02 .global data_ov37_02188ef0 data_ov37_02188ef0: ; 0x02188ef0 .byte 0xb4, 0x1b, 0x0c, 0x02 .global data_ov37_02188ef4 data_ov37_02188ef4: ; 0x02188ef4 .byte 0xf8, 0x1b, 0x0c, 0x02 .global data_ov37_02188ef8 data_ov37_02188ef8: ; 0x02188ef8 .byte 0xfc, 0x31, 0x0c, 0x02 .global data_ov37_02188efc data_ov37_02188efc: ; 0x02188efc .byte 0x2c, 0x32, 0x0c, 0x02 .global data_ov37_02188f00 data_ov37_02188f00: ; 0x02188f00 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f04 data_ov37_02188f04: ; 0x02188f04 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f08 data_ov37_02188f08: ; 0x02188f08 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f0c data_ov37_02188f0c: ; 0x02188f0c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f10 data_ov37_02188f10: ; 0x02188f10 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f14 data_ov37_02188f14: ; 0x02188f14 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f18 data_ov37_02188f18: ; 0x02188f18 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f1c data_ov37_02188f1c: ; 0x02188f1c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f20 data_ov37_02188f20: ; 0x02188f20 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f24 data_ov37_02188f24: ; 0x02188f24 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f28 data_ov37_02188f28: ; 0x02188f28 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f2c data_ov37_02188f2c: ; 0x02188f2c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f30 data_ov37_02188f30: ; 0x02188f30 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f34 data_ov37_02188f34: ; 0x02188f34 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f38 data_ov37_02188f38: ; 0x02188f38 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f3c data_ov37_02188f3c: ; 0x02188f3c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f40 data_ov37_02188f40: ; 0x02188f40 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f44 data_ov37_02188f44: ; 0x02188f44 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f48 data_ov37_02188f48: ; 0x02188f48 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f4c data_ov37_02188f4c: ; 0x02188f4c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f50 data_ov37_02188f50: ; 0x02188f50 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f54 data_ov37_02188f54: ; 0x02188f54 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f58 data_ov37_02188f58: ; 0x02188f58 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f5c data_ov37_02188f5c: ; 0x02188f5c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f60 data_ov37_02188f60: ; 0x02188f60 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f64 data_ov37_02188f64: ; 0x02188f64 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f68 data_ov37_02188f68: ; 0x02188f68 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f6c data_ov37_02188f6c: ; 0x02188f6c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f70 data_ov37_02188f70: ; 0x02188f70 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f74 data_ov37_02188f74: ; 0x02188f74 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f78 data_ov37_02188f78: ; 0x02188f78 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f7c data_ov37_02188f7c: ; 0x02188f7c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f80 data_ov37_02188f80: ; 0x02188f80 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f84 data_ov37_02188f84: ; 0x02188f84 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02188f88 data_ov37_02188f88: ; 0x02188f88 .byte 0xd0, 0x62, 0x18, 0x02 .global data_ov37_02188f8c data_ov37_02188f8c: ; 0x02188f8c .byte 0x90, 0x63, 0x18, 0x02 .global data_ov37_02188f90 data_ov37_02188f90: ; 0x02188f90 .byte 0x00, 0xaa, 0x0c, 0x02 .global data_ov37_02188f94 data_ov37_02188f94: ; 0x02188f94 .byte 0x3c, 0x17, 0x0c, 0x02 .global data_ov37_02188f98 data_ov37_02188f98: ; 0x02188f98 .byte 0xe8, 0xa7, 0x0c, 0x02 .global data_ov37_02188f9c data_ov37_02188f9c: ; 0x02188f9c .byte 0x28, 0xaa, 0x0c, 0x02 .global data_ov37_02188fa0 data_ov37_02188fa0: ; 0x02188fa0 .byte 0x30, 0xad, 0x0c, 0x02 .global data_ov37_02188fa4 data_ov37_02188fa4: ; 0x02188fa4 .byte 0xd4, 0x17, 0x0c, 0x02 .global data_ov37_02188fa8 data_ov37_02188fa8: ; 0x02188fa8 .byte 0xc0, 0xb1, 0x0c, 0x02 .global data_ov37_02188fac data_ov37_02188fac: ; 0x02188fac .byte 0x44, 0x17, 0x0c, 0x02 .global data_ov37_02188fb0 data_ov37_02188fb0: ; 0x02188fb0 .byte 0x48, 0x17, 0x0c, 0x02 .global data_ov37_02188fb4 data_ov37_02188fb4: ; 0x02188fb4 .byte 0xa8, 0x17, 0x0c, 0x02 .global data_ov37_02188fb8 data_ov37_02188fb8: ; 0x02188fb8 .byte 0xb0, 0x17, 0x0c, 0x02 .global data_ov37_02188fbc data_ov37_02188fbc: ; 0x02188fbc .byte 0x4c, 0x17, 0x0c, 0x02 .global data_ov37_02188fc0 data_ov37_02188fc0: ; 0x02188fc0 .byte 0x7c, 0x17, 0x0c, 0x02 .global data_ov37_02188fc4 data_ov37_02188fc4: ; 0x02188fc4 .byte 0xe4, 0x27, 0x0c, 0x02 .global data_ov37_02188fc8 data_ov37_02188fc8: ; 0x02188fc8 .byte 0x04, 0x30, 0x0c, 0x02 .global data_ov37_02188fcc data_ov37_02188fcc: ; 0x02188fcc .byte 0x44, 0x27, 0x0c, 0x02 .global data_ov37_02188fd0 data_ov37_02188fd0: ; 0x02188fd0 .byte 0x3c, 0x70, 0x18, 0x02 .global data_ov37_02188fd4 data_ov37_02188fd4: ; 0x02188fd4 .byte 0x40, 0xa8, 0x0c, 0x02 .global data_ov37_02188fd8 data_ov37_02188fd8: ; 0x02188fd8 .byte 0x0c, 0x31, 0x0c, 0x02 .global data_ov37_02188fdc data_ov37_02188fdc: ; 0x02188fdc .byte 0x14, 0x31, 0x0c, 0x02 .global data_ov37_02188fe0 data_ov37_02188fe0: ; 0x02188fe0 .byte 0xa8, 0x18, 0x0c, 0x02 .global data_ov37_02188fe4 data_ov37_02188fe4: ; 0x02188fe4 .byte 0xc4, 0x18, 0x0c, 0x02 .global data_ov37_02188fe8 data_ov37_02188fe8: ; 0x02188fe8 .byte 0xfc, 0x18, 0x0c, 0x02 .global data_ov37_02188fec data_ov37_02188fec: ; 0x02188fec .byte 0x04, 0x19, 0x0c, 0x02 .global data_ov37_02188ff0 data_ov37_02188ff0: ; 0x02188ff0 .byte 0x10, 0x19, 0x0c, 0x02 .global data_ov37_02188ff4 data_ov37_02188ff4: ; 0x02188ff4 .byte 0x14, 0x19, 0x0c, 0x02 .global data_ov37_02188ff8 data_ov37_02188ff8: ; 0x02188ff8 .byte 0x1c, 0x19, 0x0c, 0x02 .global data_ov37_02188ffc data_ov37_02188ffc: ; 0x02188ffc .byte 0x24, 0x19, 0x0c, 0x02 .global data_ov37_02189000 data_ov37_02189000: ; 0x02189000 .byte 0x2c, 0x19, 0x0c, 0x02 .global data_ov37_02189004 data_ov37_02189004: ; 0x02189004 .byte 0x28, 0x19, 0x0c, 0x02 .global data_ov37_02189008 data_ov37_02189008: ; 0x02189008 .byte 0x34, 0x19, 0x0c, 0x02 .global data_ov37_0218900c data_ov37_0218900c: ; 0x0218900c .byte 0x38, 0x19, 0x0c, 0x02 .global data_ov37_02189010 data_ov37_02189010: ; 0x02189010 .byte 0x3c, 0x19, 0x0c, 0x02 .global data_ov37_02189014 data_ov37_02189014: ; 0x02189014 .byte 0x40, 0x19, 0x0c, 0x02 .global data_ov37_02189018 data_ov37_02189018: ; 0x02189018 .byte 0x48, 0x19, 0x0c, 0x02 .global data_ov37_0218901c data_ov37_0218901c: ; 0x0218901c .byte 0x50, 0x19, 0x0c, 0x02 .global data_ov37_02189020 data_ov37_02189020: ; 0x02189020 .byte 0x54, 0x19, 0x0c, 0x02 .global data_ov37_02189024 data_ov37_02189024: ; 0x02189024 .byte 0x58, 0x19, 0x0c, 0x02 .global data_ov37_02189028 data_ov37_02189028: ; 0x02189028 .byte 0x6c, 0x1b, 0x0c, 0x02 .global data_ov37_0218902c data_ov37_0218902c: ; 0x0218902c .byte 0xb4, 0x1b, 0x0c, 0x02 .global data_ov37_02189030 data_ov37_02189030: ; 0x02189030 .byte 0xf8, 0x1b, 0x0c, 0x02 .global data_ov37_02189034 data_ov37_02189034: ; 0x02189034 .byte 0xfc, 0x31, 0x0c, 0x02 .global data_ov37_02189038 data_ov37_02189038: ; 0x02189038 .byte 0x2c, 0x32, 0x0c, 0x02 .global data_ov37_0218903c data_ov37_0218903c: ; 0x0218903c .byte 0xf4, 0xac, 0x0c, 0x02 .global data_ov37_02189040 data_ov37_02189040: ; 0x02189040 .byte 0x58, 0x64, 0x18, 0x02 .global data_ov37_02189044 data_ov37_02189044: ; 0x02189044 .byte 0x80, 0x70, 0x18, 0x02 .global data_ov37_02189048 data_ov37_02189048: ; 0x02189048 .byte 0x80, 0x77, 0x18, 0x02 .global data_ov37_0218904c data_ov37_0218904c: ; 0x0218904c .byte 0xa8, 0xae, 0x0c, 0x02 .global data_ov37_02189050 data_ov37_02189050: ; 0x02189050 .byte 0xf8, 0xae, 0x0c, 0x02 .global data_ov37_02189054 data_ov37_02189054: ; 0x02189054 .byte 0xfc, 0xae, 0x0c, 0x02 .global data_ov37_02189058 data_ov37_02189058: ; 0x02189058 .byte 0xb8, 0xaf, 0x0c, 0x02 .global data_ov37_0218905c data_ov37_0218905c: ; 0x0218905c .byte 0xbc, 0xaf, 0x0c, 0x02 .global data_ov37_02189060 data_ov37_02189060: ; 0x02189060 .byte 0xd0, 0xaf, 0x0c, 0x02 .global data_ov37_02189064 data_ov37_02189064: ; 0x02189064 .byte 0x58, 0xb0, 0x0c, 0x02 .global data_ov37_02189068 data_ov37_02189068: ; 0x02189068 .byte 0x6c, 0xb0, 0x0c, 0x02 .global data_ov37_0218906c data_ov37_0218906c: ; 0x0218906c .byte 0x80, 0xb0, 0x0c, 0x02 .global data_ov37_02189070 data_ov37_02189070: ; 0x02189070 .byte 0x0c, 0xb1, 0x0c, 0x02 .global data_ov37_02189074 data_ov37_02189074: ; 0x02189074 .byte 0x20, 0xb1, 0x0c, 0x02 .global data_ov37_02189078 data_ov37_02189078: ; 0x02189078 .byte 0x2c, 0xb1, 0x0c, 0x02 .global data_ov37_0218907c data_ov37_0218907c: ; 0x0218907c .byte 0x3c, 0xb1, 0x0c, 0x02 .global data_ov37_02189080 data_ov37_02189080: ; 0x02189080 .byte 0x50, 0xc1, 0x0c, 0x02 .global data_ov37_02189084 data_ov37_02189084: ; 0x02189084 .byte 0x5c, 0xc1, 0x0c, 0x02 .global data_ov37_02189088 data_ov37_02189088: ; 0x02189088 .byte 0x94, 0x66, 0x18, 0x02 .global data_ov37_0218908c data_ov37_0218908c: ; 0x0218908c .byte 0x24, 0xc5, 0x0c, 0x02 .global data_ov37_02189090 data_ov37_02189090: ; 0x02189090 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02189094 data_ov37_02189094: ; 0x02189094 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02189098 data_ov37_02189098: ; 0x02189098 .byte 0xbc, 0x62, 0x18, 0x02 .global data_ov37_0218909c data_ov37_0218909c: ; 0x0218909c .byte 0xac, 0x7d, 0x18, 0x02 .global data_ov37_021890a0 data_ov37_021890a0: ; 0x021890a0 .byte 0x7c, 0x61, 0x18, 0x02 .global data_ov37_021890a4 data_ov37_021890a4: ; 0x021890a4 .byte 0x84, 0x61, 0x18, 0x02 .global data_ov37_021890a8 data_ov37_021890a8: ; 0x021890a8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021890ac data_ov37_021890ac: ; 0x021890ac .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021890b0 data_ov37_021890b0: ; 0x021890b0 .byte 0x34, 0x5d, 0x0c, 0x02 .global data_ov37_021890b4 data_ov37_021890b4: ; 0x021890b4 .byte 0xb0, 0x58, 0x18, 0x02 .global data_ov37_021890b8 data_ov37_021890b8: ; 0x021890b8 .byte 0x58, 0x5e, 0x0c, 0x02 .global data_ov37_021890bc data_ov37_021890bc: ; 0x021890bc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021890c0 data_ov37_021890c0: ; 0x021890c0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_021890c4 data_ov37_021890c4: ; 0x021890c4 .byte 0x9c, 0x58, 0x18, 0x02 .global data_ov37_021890c8 data_ov37_021890c8: ; 0x021890c8 .byte 0x90, 0x7d, 0x18, 0x02 .global data_ov37_021890cc data_ov37_021890cc: ; 0x021890cc .byte 0x0c, 0x96, 0x0a, 0x02 .global data_ov37_021890d0 data_ov37_021890d0: ; 0x021890d0 .byte 0x14, 0x96, 0x0a, 0x02 .global data_ov37_021890d4 data_ov37_021890d4: ; 0x021890d4 .byte 0x50, 0x96, 0x0a, 0x02 .global data_ov37_021890d8 data_ov37_021890d8: ; 0x021890d8 .byte 0xd4, 0x96, 0x0a, 0x02 .global data_ov37_021890dc data_ov37_021890dc: ; 0x021890dc .byte 0x40, 0x97, 0x0a, 0x02 .global data_ov37_021890e0 data_ov37_021890e0: ; 0x021890e0 .byte 0x64, 0x97, 0x0a, 0x02 .global data_ov37_021890e4 data_ov37_021890e4: ; 0x021890e4 .byte 0xd0, 0x97, 0x0a, 0x02 .global data_ov37_021890e8 data_ov37_021890e8: ; 0x021890e8 .byte 0xe0, 0x97, 0x0a, 0x02 .global data_ov37_021890ec data_ov37_021890ec: ; 0x021890ec .byte 0xf8, 0x97, 0x0a, 0x02 .global data_ov37_021890f0 data_ov37_021890f0: ; 0x021890f0 .byte 0x64, 0x98, 0x0a, 0x02 .global data_ov37_021890f4 data_ov37_021890f4: ; 0x021890f4 .byte 0xbc, 0x98, 0x0a, 0x02 .global data_ov37_021890f8 data_ov37_021890f8: ; 0x021890f8 .byte 0x90, 0x98, 0x0a, 0x02 .global data_ov37_021890fc data_ov37_021890fc: ; 0x021890fc .byte 0x68, 0x99, 0x0a, 0x02 .global data_ov37_02189100 data_ov37_02189100: ; 0x02189100 .byte 0x94, 0x99, 0x0a, 0x02 .global data_ov37_02189104 data_ov37_02189104: ; 0x02189104 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02189108 data_ov37_02189108: ; 0x02189108 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218910c data_ov37_0218910c: ; 0x0218910c .byte 0x6d, 0x9b, 0x0a, 0x02 .global data_ov37_02189110 data_ov37_02189110: ; 0x02189110 .byte 0x79, 0x9b, 0x0a, 0x02 .global data_ov37_02189114 data_ov37_02189114: ; 0x02189114 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02189118 data_ov37_02189118: ; 0x02189118 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218911c data_ov37_0218911c: ; 0x0218911c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02189120 data_ov37_02189120: ; 0x02189120 .byte 0x58, 0x1f, 0x08, 0x02 .global data_ov37_02189124 data_ov37_02189124: ; 0x02189124 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02189128 data_ov37_02189128: ; 0x02189128 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218912c data_ov37_0218912c: ; 0x0218912c .ascii "OIH:/oisu_head_sw.nsbtp" .byte 0x00 .global data_ov37_02189144 data_ov37_02189144: ; 0x02189144 .ascii "oisu_head_sw" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02189154 data_ov37_02189154: ; 0x02189154 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_02189158 data_ov37_02189158: ; 0x02189158 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov37_0218915c data_ov37_0218915c: ; 0x0218915c .byte 0x00, 0x00, 0x00, 0x00 ; 0x02189160 .bss .global data_ov37_02189160 data_ov37_02189160: .space 0x4 .global data_ov37_02189164 data_ov37_02189164: .space 0x4 .global data_ov37_02189168 data_ov37_02189168: .space 0x4 .global data_ov37_0218916c data_ov37_0218916c: .space 0x4 .global data_ov37_02189170 data_ov37_02189170: .space 0x4 .global data_ov37_02189174 data_ov37_02189174: .space 0x4 .global data_ov37_02189178 data_ov37_02189178: .space 0x4 .global data_ov37_0218917c data_ov37_0218917c: .space 0x4 .global data_ov37_02189180 data_ov37_02189180: .space 0x4 .global data_ov37_02189184 data_ov37_02189184: .space 0x4 .global data_ov37_02189188 data_ov37_02189188: .space 0x4 .global data_ov37_0218918c data_ov37_0218918c: .space 0x1 .global data_ov37_0218918d data_ov37_0218918d: .space 0x1 .global data_ov37_0218918e data_ov37_0218918e: .space 0x1 .global data_ov37_0218918f data_ov37_0218918f: .space 0x1 .global data_ov37_02189190 data_ov37_02189190: .space 0x4 .global data_ov37_02189194 data_ov37_02189194: .space 0x4 .global data_ov37_02189198 data_ov37_02189198: .space 0x4 .global data_ov37_0218919c data_ov37_0218919c: .space 0x4 .global data_ov37_021891a0 data_ov37_021891a0: .space 0x4 .global data_ov37_021891a4 data_ov37_021891a4: .space 0x4 .global data_ov37_021891a8 data_ov37_021891a8: .space 0x4 .global data_ov37_021891ac data_ov37_021891ac: .space 0x4 .global data_ov37_021891b0 data_ov37_021891b0: .space 0x4 .global data_ov37_021891b4 data_ov37_021891b4: .space 0x4 .global data_ov37_021891b8 data_ov37_021891b8: .space 0x4 .global data_ov37_021891bc data_ov37_021891bc: .space 0x4 .global data_ov37_021891c0 data_ov37_021891c0: .space 0x4 .global data_ov37_021891c4 data_ov37_021891c4: .space 0x4 .global data_ov37_021891c8 data_ov37_021891c8: .space 0x4 .global data_ov37_021891cc data_ov37_021891cc: .space 0x4 .global data_ov37_021891d0 data_ov37_021891d0: .space 0x4 .global data_ov37_021891d4 data_ov37_021891d4: .space 0x4 .global data_ov37_021891d8 data_ov37_021891d8: .space 0x4 .global data_ov37_021891dc data_ov37_021891dc: .space 0x4 .global data_ov37_021891e0 data_ov37_021891e0: .space 0x4 .global data_ov37_021891e4 data_ov37_021891e4: .space 0x4 .global data_ov37_021891e8 data_ov37_021891e8: .space 0x4 .global data_ov37_021891ec data_ov37_021891ec: .space 0x4 .global data_ov37_021891f0 data_ov37_021891f0: .space 0x4 .global data_ov37_021891f4 data_ov37_021891f4: .space 0x4 .global data_ov37_021891f8 data_ov37_021891f8: .space 0x4 .global data_ov37_021891fc data_ov37_021891fc: .space 0x4 .global data_ov37_02189200 data_ov37_02189200: .space 0x4 .global data_ov37_02189204 data_ov37_02189204: .space 0x4 .global data_ov37_02189208 data_ov37_02189208: .space 0x4 .global data_ov37_0218920c data_ov37_0218920c: .space 0x4 .global data_ov37_02189210 data_ov37_02189210: .space 0x4 .global data_ov37_02189214 data_ov37_02189214: .space 0x4 .global data_ov37_02189218 data_ov37_02189218: .space 0x4 .global data_ov37_0218921c data_ov37_0218921c: .space 0x4 .global data_ov37_02189220 data_ov37_02189220: .space 0x4 .global data_ov37_02189224 data_ov37_02189224: .space 0x4 .global data_ov37_02189228 data_ov37_02189228: .space 0x4 .global data_ov37_0218922c data_ov37_0218922c: .space 0x4 .global data_ov37_02189230 data_ov37_02189230: .space 0x4 .global data_ov37_02189234 data_ov37_02189234: .space 0x4 .global data_ov37_02189238 data_ov37_02189238: .space 0x4 .global data_ov37_0218923c data_ov37_0218923c: .space 0x4