.include "macros/function.inc" .include "include/ov10.inc" .text .global func_ov10_02112c20 thumb_func_start func_ov10_02112c20 func_ov10_02112c20: ; 0x02112c20 push {r4, lr} ldr r1, _02112c3c ; =data_027e0ce0 add r4, r0, #0 ldr r1, [r1, #4] mov r0, #0x18 mov r2, #4 blx _ZN9SysObjectnwEmPjj cmp r0, #0 beq _02112c3a add r1, r4, #0 bl func_ov10_02112c40 _02112c3a: pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_02112c20 _02112c3c: .word data_027e0ce0 .global func_ov10_02112c40 thumb_func_start func_ov10_02112c40 func_ov10_02112c40: ; 0x02112c40 push {r3, r4, r5, r6, r7, lr} sub sp, #8 add r4, r0, #0 ldr r0, _02112d20 ; =data_02057634 mov r5, #0 str r0, [r4] ldr r0, _02112d24 ; =data_ov10_0211ea68 str r1, [r4, #4] str r0, [r4] ldr r0, _02112d28 ; =data_027e0618 str r5, [r4, #8] ldr r0, [r0, #4] cmp r0, #7 bhi _02112c7a add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _02112c68: ; jump table .short _02112c7a - _02112c68 - 2 ; case 0 .short _02112c7a - _02112c68 - 2 ; case 1 .short _02112c7a - _02112c68 - 2 ; case 2 .short _02112c7a - _02112c68 - 2 ; case 3 .short _02112c78 - _02112c68 - 2 ; case 4 .short _02112c78 - _02112c68 - 2 ; case 5 .short _02112c78 - _02112c68 - 2 ; case 6 .short _02112c78 - _02112c68 - 2 ; case 7 _02112c78: mov r5, #0xc _02112c7a: ldr r1, _02112d2c ; =data_027e0ce0 mov r0, #0xd8 ldr r1, [r1, #4] mov r2, #4 blx _ZN9SysObjectnwEmPjj cmp r0, #0 beq _02112c92 add r1, r4, #0 add r2, r5, #0 bl func_ov10_0211303c _02112c92: str r0, [r4, #0x14] ldr r0, _02112d30 ; =data_027e0d54 blx func_ov10_021177d8 ldr r7, _02112d34 ; =0x0000350c ldr r6, _02112d2c ; =data_027e0ce0 mov r5, #0 _02112ca0: ldr r1, [r6, #4] add r0, r7, #0 mov r2, #4 blx _ZN9SysObjectnwEmPjj cmp r0, #0 beq _02112cb4 add r1, r5, #0 blx func_ov10_02119c70 _02112cb4: lsl r1, r5, #2 add r1, r4, r1 str r0, [r1, #0xc] add r0, r5, #1 lsl r0, r0, #0x10 lsr r5, r0, #0x10 cmp r5, #2 blo _02112ca0 ldr r0, [r4, #0x14] bl func_ov10_02113bc4 blx func_ov06_02102214 add r1, r4, #0 ldr r0, _02112d30 ; =data_027e0d54 add r1, #0xc blx func_ov10_02117c18 ldr r0, [r4, #0x14] mov r1, #1 add r0, #0xd0 strb r1, [r0] blx func_020329b0 ldr r1, _02112d38 ; =0x00000112 blx func_02032bd8 blx func_020329b0 mov r1, #0x10 str r1, [sp] mov r1, #1 str r1, [sp, #4] ldr r1, _02112d38 ; =0x00000112 mov r2, #0 mov r3, #0xa0 blx func_02032a74 blx func_020329b0 mov r1, #0x10 str r1, [sp] mov r2, #1 ldr r1, _02112d38 ; =0x00000112 mov r3, #0xa0 str r2, [sp, #4] blx func_02032a74 ldr r0, _02112d3c ; =data_ov00_020eed2c blx func_ov00_020d8718 add r0, r4, #0 add sp, #8 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end func_ov10_02112c40 _02112d20: .word data_02057634 _02112d24: .word data_ov10_0211ea68 _02112d28: .word data_027e0618 _02112d2c: .word data_027e0ce0 _02112d30: .word data_027e0d54 _02112d34: .word 0x0000350c _02112d38: .word 0x00000112 _02112d3c: .word data_ov00_020eed2c .global func_ov10_02112d40 arm_func_start func_ov10_02112d40 func_ov10_02112d40: ; 0x02112d40 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x11c ldr r3, _02112d90 ; =func_ov10_02112da4 add r0, r0, #0xc00 mov r1, #8 mov r2, #0x30 bl func_0204f754 ldr r3, _02112d94 ; =func_ov10_02112da0 add r0, r4, #0x2f8 mov r1, #0xcf mov r2, #0xc bl func_0204f754 ldr r3, _02112d98 ; =func_ov10_02112d9c add r0, r4, #0xf8 mov r1, #0x40 mov r2, #8 bl func_0204f754 mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02112d40 _02112d90: .word func_ov10_02112da4 - 1 _02112d94: .word func_ov10_02112da0 - 1 _02112d98: .word func_ov10_02112d9c - 1 .global func_ov10_02112d9c arm_func_start func_ov10_02112d9c func_ov10_02112d9c: ; 0x02112d9c bx lr arm_func_end func_ov10_02112d9c .global func_ov10_02112da0 arm_func_start func_ov10_02112da0 func_ov10_02112da0: ; 0x02112da0 bx lr arm_func_end func_ov10_02112da0 .global func_ov10_02112da4 arm_func_start func_ov10_02112da4 func_ov10_02112da4: ; 0x02112da4 bx lr arm_func_end func_ov10_02112da4 .global func_ov10_02112da8 thumb_func_start func_ov10_02112da8 func_ov10_02112da8: ; 0x02112da8 push {r3, r4, r5, r6, r7, lr} add r7, r0, #0 ldr r0, _02112e28 ; =data_ov10_0211ea68 str r0, [r7] ldr r0, _02112e2c ; =data_ov00_020eed2c blx func_ov00_020d8728 ldr r0, [r7, #0x14] bl func_ov10_02113580 blx func_020329b0 ldr r1, _02112e30 ; =0x00000112 blx func_02032c10 blx func_02004ba8 blx func_02004c7c add r0, r7, #0 ldr r1, [r0] ldr r1, [r1, #0x18] blx r1 blx func_ov06_0210226c mov r6, #0 add r5, r7, #0 _02112dde: ldr r4, [r5, #0xc] cmp r4, #0 beq _02112df8 mov r2, #5 ldr r3, _02112e34 ; =func_ov10_02112d40 add r0, r4, #4 mov r1, #2 lsl r2, r2, #0xa blx func_0204f754 add r0, r4, #0 blx _ZN9SysObjectdlEPv _02112df8: add r6, r6, #1 add r5, r5, #4 cmp r6, #2 blt _02112dde ldr r0, _02112e38 ; =data_027e0d54 blx func_ov10_02117a90 ldr r4, [r7, #0x14] cmp r4, #0 beq _02112e18 add r0, r4, #0 bl func_ov10_021132e4 add r0, r4, #0 blx _ZN9SysObjectdlEPv _02112e18: add r0, r7, #0 bl func_0202c0b8 add r0, r7, #0 blx _ZN9SysObjectdlEPv add r0, r7, #0 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end func_ov10_02112da8 _02112e28: .word data_ov10_0211ea68 _02112e2c: .word data_ov00_020eed2c _02112e30: .word 0x00000112 _02112e34: .word func_ov10_02112d40 - 1 _02112e38: .word data_027e0d54 .global func_ov10_02112e3c thumb_func_start func_ov10_02112e3c func_ov10_02112e3c: ; 0x02112e3c push {r3, r4, r5, r6, r7, lr} add r7, r0, #0 ldr r0, _02112eb8 ; =data_ov10_0211ea68 str r0, [r7] ldr r0, _02112ebc ; =data_ov00_020eed2c blx func_ov00_020d8728 ldr r0, [r7, #0x14] bl func_ov10_02113580 blx func_020329b0 ldr r1, _02112ec0 ; =0x00000112 blx func_02032c10 blx func_02004ba8 blx func_02004c7c add r0, r7, #0 ldr r1, [r0] ldr r1, [r1, #0x18] blx r1 blx func_ov06_0210226c mov r6, #0 add r5, r7, #0 _02112e72: ldr r4, [r5, #0xc] cmp r4, #0 beq _02112e8c mov r2, #5 ldr r3, _02112ec4 ; =func_ov10_02112d40 add r0, r4, #4 mov r1, #2 lsl r2, r2, #0xa blx func_0204f754 add r0, r4, #0 blx _ZN9SysObjectdlEPv _02112e8c: add r6, r6, #1 add r5, r5, #4 cmp r6, #2 blt _02112e72 ldr r0, _02112ec8 ; =data_027e0d54 blx func_ov10_02117a90 ldr r4, [r7, #0x14] cmp r4, #0 beq _02112eac add r0, r4, #0 bl func_ov10_021132e4 add r0, r4, #0 blx _ZN9SysObjectdlEPv _02112eac: add r0, r7, #0 bl func_0202c0b8 add r0, r7, #0 pop {r3, r4, r5, r6, r7, pc} nop thumb_func_end func_ov10_02112e3c _02112eb8: .word data_ov10_0211ea68 _02112ebc: .word data_ov00_020eed2c _02112ec0: .word 0x00000112 _02112ec4: .word func_ov10_02112d40 - 1 _02112ec8: .word data_027e0d54 .global func_ov10_02112ecc thumb_func_start func_ov10_02112ecc func_ov10_02112ecc: ; 0x02112ecc push {r4, lr} ldr r2, _02112ef0 ; =data_027e0698 mov r4, #0 ldr r2, [r2, #0x4c] cmp r2, #0 beq _02112ee8 cmp r2, #1 bne _02112eea cmp r1, #0 bne _02112eea ldr r0, [r0, #0x14] bl func_ov10_0211337c b _02112eea _02112ee8: ldr r4, [r0, #8] _02112eea: add r0, r4, #0 pop {r4, pc} nop thumb_func_end func_ov10_02112ecc _02112ef0: .word data_027e0698 .global func_ov10_02112ef4 thumb_func_start func_ov10_02112ef4 func_ov10_02112ef4: ; 0x02112ef4 ldr r3, _02112efc ; =func_ov10_02113528 ldr r0, [r0, #0x14] bx r3 nop thumb_func_end func_ov10_02112ef4 _02112efc: .word func_ov10_02113528 .global func_ov10_02112f00 thumb_func_start func_ov10_02112f00 func_ov10_02112f00: ; 0x02112f00 ldr r3, _02112f08 ; =func_ov10_0211356c ldr r0, [r0, #0x14] bx r3 nop thumb_func_end func_ov10_02112f00 _02112f08: .word func_ov10_0211356c .global func_ov10_02112f0c thumb_func_start func_ov10_02112f0c func_ov10_02112f0c: ; 0x02112f0c ldr r3, _02112f14 ; =func_ov10_021135ac ldr r0, [r0, #0x14] bx r3 nop thumb_func_end func_ov10_02112f0c _02112f14: .word func_ov10_021135ac .global func_ov10_02112f18 thumb_func_start func_ov10_02112f18 func_ov10_02112f18: ; 0x02112f18 push {r3, r4} ldr r4, _02112f30 ; =data_ov10_0211ea8c str r4, [r0] str r2, [r0, #4] str r1, [r0, #8] str r3, [r0, #0xc] str r3, [r0, #0x10] mov r1, #0 str r1, [r0, #0x14] pop {r3, r4} bx lr nop thumb_func_end func_ov10_02112f18 _02112f30: .word data_ov10_0211ea8c .global func_ov10_02112f34 thumb_func_start func_ov10_02112f34 func_ov10_02112f34: ; 0x02112f34 bx lr .align 2, 0 thumb_func_end func_ov10_02112f34 .global func_ov10_02112f38 thumb_func_start func_ov10_02112f38 func_ov10_02112f38: ; 0x02112f38 push {r4, lr} add r4, r0, #0 blx _ZN9SysObjectdlEPv add r0, r4, #0 pop {r4, pc} thumb_func_end func_ov10_02112f38 .global func_ov10_02112f44 thumb_func_start func_ov10_02112f44 func_ov10_02112f44: ; 0x02112f44 bx lr .align 2, 0 thumb_func_end func_ov10_02112f44 .global func_ov10_02112f48 arm_func_start func_ov10_02112f48 func_ov10_02112f48: ; 0x02112f48 mov r2, #0 str r2, [r0, #0x14] str r1, [r0, #0xc] str r1, [r0, #0x10] bx lr arm_func_end func_ov10_02112f48 .global func_ov10_02112f5c arm_func_start func_ov10_02112f5c func_ov10_02112f5c: ; 0x02112f5c bx lr arm_func_end func_ov10_02112f5c .global func_ov10_02112f60 arm_func_start func_ov10_02112f60 func_ov10_02112f60: ; 0x02112f60 bx lr arm_func_end func_ov10_02112f60 .global func_ov10_02112f64 arm_func_start func_ov10_02112f64 func_ov10_02112f64: ; 0x02112f64 bx lr arm_func_end func_ov10_02112f64 .global func_ov10_02112f68 thumb_func_start func_ov10_02112f68 func_ov10_02112f68: ; 0x02112f68 push {r3, r4, r5, lr} add r5, r0, #0 add r4, r1, #0 blx func_020386d8 ldr r0, _02112f7c ; =data_ov10_0211eaf0 str r0, [r5] str r4, [r5, #0x14] add r0, r5, #0 pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end func_ov10_02112f68 _02112f7c: .word data_ov10_0211eaf0 .global func_ov10_02112f80 thumb_func_start func_ov10_02112f80 func_ov10_02112f80: ; 0x02112f80 push {r3, r4, r5, lr} add r5, r0, #0 ldrb r0, [r5, #0x1c] add r4, r1, #0 cmp r0, #1 bne _02112fd2 mov r0, #0x1e ldrsh r1, [r5, r0] cmp r1, #0 ble _02112fac sub r1, r1, #1 strh r1, [r5, #0x1e] ldrsh r0, [r5, r0] cmp r0, #0x14 bne _02112fda ldr r1, [r5, #0x14] ldr r0, _02112fdc ; =data_027e0d54 add r1, #0xd2 ldrb r1, [r1] blx func_ov10_02118120 b _02112fd2 _02112fac: ldr r0, _02112fdc ; =data_027e0d54 ldrb r0, [r0, #0xd] cmp r0, #0 bne _02112fb8 mov r0, #1 b _02112fba _02112fb8: mov r0, #0 _02112fba: cmp r0, #0 beq _02112fda add r0, r4, #0 blx func_02038b40 mov r0, #0 strb r0, [r5, #0x1c] ldr r0, _02112fe0 ; =data_ov00_020eec9c mov r1, #0x18 blx func_ov00_020d77e4 pop {r3, r4, r5, pc} _02112fd2: add r0, r5, #0 add r1, r4, #0 blx func_02037854 _02112fda: pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end func_ov10_02112f80 _02112fdc: .word data_027e0d54 _02112fe0: .word data_ov00_020eec9c .global func_ov10_02112fe4 thumb_func_start func_ov10_02112fe4 func_ov10_02112fe4: ; 0x02112fe4 push {r3, lr} ldrb r2, [r1, #1] cmp r2, #0x1e bne _02112ffa ldr r2, [r1, #4] cmp r2, #4 bne _02112ffa mov r1, #1 strb r1, [r0, #0x1c] add r0, r1, #0 pop {r3, pc} _02112ffa: blx func_02037f58 pop {r3, pc} thumb_func_end func_ov10_02112fe4 .global func_ov10_02113000 thumb_func_start func_ov10_02113000 func_ov10_02113000: ; 0x02113000 push {r0, r1, r2, r3} push {r3, r4} ldr r3, [sp, #0x10] ldrb r2, [r3, #3] lsl r4, r2, #0x10 ldrh r2, [r3, #4] add r3, r4, #0 orr r3, r2 ldr r2, _02113034 ; =0x00fe0001 cmp r3, r2 bne _0211302a ldr r1, [r1, #0x14] ldr r2, _02113038 ; =data_ov10_0211e750 add r1, #0xd2 ldrb r1, [r1] lsl r1, r1, #3 add r1, r2, r1 str r1, [r0] pop {r3, r4} add sp, #0x10 bx lr _0211302a: mov r1, #0 str r1, [r0] pop {r3, r4} add sp, #0x10 bx lr .align 2, 0 thumb_func_end func_ov10_02113000 _02113034: .word 0x00fe0001 _02113038: .word data_ov10_0211e750 .global func_ov10_0211303c thumb_func_start func_ov10_0211303c func_ov10_0211303c: ; 0x0211303c push {r3, r4, r5, r6, r7, lr} add r5, r0, #0 str r1, [r5] str r2, [r5, #4] str r2, [r5, #8] mov r0, #0 str r0, [r5, #0xc] str r5, [r5, #0x10] str r2, [r5, #0x14] str r0, [r5, #0x18] str r0, [r5, #0x50] str r0, [r5, #0x54] add r0, r5, #0 add r0, #0x68 bl func_0202ab78 ldr r1, _021132c4 ; =data_027e0ce0 mov r0, #0x10 ldr r1, [r1, #4] mov r2, #4 blx _ZN9SysObjectnwEmPjj cmp r0, #0 beq _02113070 blx func_ov01_020f6e28 _02113070: add r1, r5, #0 add r1, #0x8c str r0, [r1] add r0, r5, #0 mov r1, #0 add r0, #0x90 str r1, [r0] add r0, r5, #0 add r0, #0x94 add r1, r5, #0 bl func_ov10_02112f68 add r1, r5, #0 mov r0, #0 add r1, #0xd0 strb r0, [r1] add r1, r5, #0 add r1, #0xd1 strb r0, [r1] add r1, r5, #0 mov r2, #0xff add r1, #0xd2 strb r2, [r1] add r1, r5, #0 mov r2, #6 add r1, #0xd3 strb r2, [r1] add r1, r5, #0 add r1, #0xd5 strb r0, [r1] add r1, r5, #0 add r1, #0x58 mov r2, #0x10 blx func_020078f4 mov r1, #0 add r0, r5, #0 mvn r1, r1 add r0, #0x64 strb r1, [r0] mov r1, #0 add r2, r5, #0 add r0, r1, #0 _021130c6: add r1, r1, #1 str r0, [r2, #0x1c] add r2, r2, #4 cmp r1, #0xd blt _021130c6 ldr r1, _021132c4 ; =data_027e0ce0 mov r0, #0x18 ldr r1, [r1, #4] mov r2, #4 blx _ZN9SysObjectnwEmPjj add r4, r0, #0 beq _021130ee add r1, r5, #0 mov r2, #2 mov r3, #0 bl func_ov10_02112f18 ldr r0, _021132c8 ; =data_ov10_0211ec88 str r0, [r4] _021130ee: ldr r1, _021132c4 ; =data_027e0ce0 str r4, [r5, #0x1c] ldr r1, [r1, #4] mov r0, #0xc0 mov r2, #4 blx _ZN9SysObjectnwEmPjj cmp r0, #0 beq _02113106 add r1, r5, #0 bl func_ov10_02113de0 _02113106: ldr r1, _021132c4 ; =data_027e0ce0 str r0, [r5, #0x20] ldr r1, [r1, #4] mov r0, #0xbc mov r2, #4 blx _ZN9SysObjectnwEmPjj cmp r0, #0 beq _0211311e add r1, r5, #0 bl func_ov10_02115424 _0211311e: ldr r1, _021132c4 ; =data_027e0ce0 str r0, [r5, #0x24] ldr r1, [r1, #4] mov r0, #0x90 mov r2, #4 blx _ZN9SysObjectnwEmPjj cmp r0, #0 beq _02113136 add r1, r5, #0 bl func_ov10_02116c4c _02113136: ldr r1, _021132c4 ; =data_027e0ce0 str r0, [r5, #0x28] mov r0, #0x59 ldr r1, [r1, #4] lsl r0, r0, #2 mov r2, #4 blx _ZN9SysObjectnwEmPjj cmp r0, #0 beq _02113150 add r1, r5, #0 bl func_ov10_02118b38 _02113150: ldr r1, _021132c4 ; =data_027e0ce0 str r0, [r5, #0x2c] ldr r1, [r1, #4] mov r0, #0x58 mov r2, #4 blx _ZN9SysObjectnwEmPjj cmp r0, #0 beq _02113168 add r1, r5, #0 bl func_ov10_02116608 _02113168: ldr r1, _021132c4 ; =data_027e0ce0 str r0, [r5, #0x30] mov r0, #0x4d ldr r1, [r1, #4] lsl r0, r0, #2 mov r2, #4 blx _ZN9SysObjectnwEmPjj cmp r0, #0 beq _02113182 add r1, r5, #0 bl func_ov10_02114704 _02113182: ldr r1, _021132c4 ; =data_027e0ce0 str r0, [r5, #0x34] ldr r1, [r1, #4] mov r0, #0xe8 mov r2, #4 blx _ZN9SysObjectnwEmPjj cmp r0, #0 beq _0211319a add r1, r5, #0 bl func_ov10_0211a9dc _0211319a: ldr r1, _021132c4 ; =data_027e0ce0 str r0, [r5, #0x38] mov r0, #0x79 ldr r1, [r1, #4] lsl r0, r0, #2 mov r2, #4 blx _ZN9SysObjectnwEmPjj cmp r0, #0 beq _021131b4 add r1, r5, #0 bl func_ov10_0211b324 _021131b4: ldr r1, _021132c4 ; =data_027e0ce0 str r0, [r5, #0x3c] ldr r1, [r1, #4] mov r0, #0x30 mov r2, #4 blx _ZN9SysObjectnwEmPjj cmp r0, #0 beq _021131cc add r1, r5, #0 bl func_ov10_0211b500 _021131cc: ldr r1, _021132c4 ; =data_027e0ce0 str r0, [r5, #0x40] ldr r1, [r1, #4] mov r0, #0xd4 mov r2, #4 blx _ZN9SysObjectnwEmPjj cmp r0, #0 beq _021131e4 add r1, r5, #0 bl func_ov10_0211b8f8 _021131e4: ldr r1, _021132c4 ; =data_027e0ce0 str r0, [r5, #0x44] ldr r0, _021132cc ; =0x0000044c ldr r1, [r1, #4] mov r2, #4 blx _ZN9SysObjectnwEmPjj cmp r0, #0 beq _021131fc add r1, r5, #0 bl func_ov10_0211d268 _021131fc: ldr r1, _021132c4 ; =data_027e0ce0 str r0, [r5, #0x48] ldr r1, [r1, #4] mov r0, #0x18 mov r2, #4 blx _ZN9SysObjectnwEmPjj cmp r0, #0 beq _02113214 add r1, r5, #0 bl func_ov10_0211e2dc _02113214: ldr r1, _021132c4 ; =data_027e0ce0 str r0, [r5, #0x4c] ldr r1, [r1, #4] mov r0, #8 mov r2, #4 blx func_0202e9f4 mov r6, #0 ldr r7, _021132c4 ; =data_027e0ce0 str r0, [r5, #0x50] add r4, r6, #0 _0211322a: mov r0, #0xb6 ldr r1, [r7, #4] lsl r0, r0, #2 mov r2, #4 blx _ZN9SysObjectnwEmPjj cmp r0, #0 beq _02113242 add r1, r5, #0 add r2, r6, #0 bl func_ov10_02115c04 _02113242: ldr r1, [r5, #0x50] str r0, [r1, r4] add r0, r6, #1 lsl r0, r0, #0x10 asr r6, r0, #0x10 add r4, r4, #4 cmp r6, #2 blt _0211322a ldr r1, _021132c4 ; =data_027e0ce0 mov r0, #0x15 ldr r1, [r1, #4] lsl r0, r0, #6 mov r2, #4 blx _ZN9SysObjectnwEmPjj add r7, r0, #0 beq _02113298 mov r0, #7 lsl r0, r0, #6 add r4, r7, r0 mov r0, #0x12 lsl r0, r0, #6 add r6, r7, r0 _02113270: mov r0, #0 add r1, r4, #0 mov r2, #0x16 blx func_020078c0 add r4, #0x16 cmp r4, r6 blo _02113270 add r0, r6, #0 bl func_ov00_0207a4f0 add r0, r7, #0 add r0, #0x40 bl func_ov00_0207a5ac mov r0, #0 add r1, r7, #0 mov r2, #0x40 blx func_020078f4 _02113298: add r0, r5, #0 add r0, #0x68 str r7, [r5, #0x54] bl func_0202ab54 add r1, r5, #0 ldr r0, _021132d0 ; =data_027e071c add r1, #0x68 blx func_0202d77c mov r0, #1 str r0, [r5, #0x68] mov r2, #0 ldr r0, _021132d4 ; =data_ov00_020eec68 mov r1, #0x27 mov r3, #0x7f str r2, [r5, #0x70] blx func_ov00_020d70a4 add r0, r5, #0 pop {r3, r4, r5, r6, r7, pc} nop thumb_func_end func_ov10_0211303c _021132c4: .word data_027e0ce0 _021132c8: .word data_ov10_0211ec88 _021132cc: .word 0x0000044c _021132d0: .word data_027e071c _021132d4: .word data_ov00_020eec68 .global func_ov10_021132d8 thumb_func_start func_ov10_021132d8 func_ov10_021132d8: ; 0x021132d8 push {r4, lr} add r4, r0, #0 blx func_0203780c add r0, r4, #0 pop {r4, pc} thumb_func_end func_ov10_021132d8 .global func_ov10_021132e4 thumb_func_start func_ov10_021132e4 func_ov10_021132e4: ; 0x021132e4 push {r3, r4, r5, r6, r7, lr} add r7, r0, #0 add r0, #0x8c ldr r4, [r0] cmp r4, #0 beq _021132fc add r0, r4, #0 blx func_ov01_020f6e50 add r0, r4, #0 blx _ZN9SysObjectdlEPv _021132fc: ldr r0, [r7, #0x54] blx _ZN9SysObjectdlEPv mov r6, #0 add r5, r6, #0 _02113306: ldr r0, [r7, #0x50] ldr r4, [r0, r5] cmp r4, #0 beq _0211331a add r0, r4, #0 bl func_ov10_02115cd4 add r0, r4, #0 blx _ZN9SysObjectdlEPv _0211331a: add r0, r6, #1 lsl r0, r0, #0x10 asr r6, r0, #0x10 add r5, r5, #4 cmp r6, #2 blt _02113306 ldr r0, [r7, #0x50] blx func_0202ea18 mov r4, #0 add r5, r7, #0 _02113330: ldr r0, [r5, #0x1c] cmp r0, #0 beq _0211333c ldr r1, [r0] ldr r1, [r1, #4] blx r1 _0211333c: add r4, r4, #1 add r5, r5, #4 cmp r4, #0xd blt _02113330 add r0, r7, #0 add r0, #0x94 blx func_0203780c add r0, r7, #0 add r0, #0x68 bl func_0202ab64 add r0, r7, #0 pop {r3, r4, r5, r6, r7, pc} thumb_func_end func_ov10_021132e4 .global func_ov10_02113358 thumb_func_start func_ov10_02113358 func_ov10_02113358: ; 0x02113358 ldr r2, [r0] lsl r0, r1, #2 add r0, r2, r0 ldr r0, [r0, #0xc] bx lr .align 2, 0 thumb_func_end func_ov10_02113358 .global func_ov10_02113364 thumb_func_start func_ov10_02113364 func_ov10_02113364: ; 0x02113364 ldr r0, [r0] ldr r3, _02113374 ; =func_0202cec8 str r1, [r0, #8] add r1, r2, #0 ldr r0, _02113378 ; =data_027e0618 mov r2, #0 bx r3 nop thumb_func_end func_ov10_02113364 _02113374: .word func_0202cec8 _02113378: .word data_027e0618 .global func_ov10_0211337c thumb_func_start func_ov10_0211337c func_ov10_0211337c: ; 0x0211337c push {r4, r5, r6, lr} add r4, r0, #0 add r1, r4, #0 mov r0, #0 add r1, #0xd5 strb r0, [r1] add r1, r4, #0 add r1, #0xd0 ldrb r1, [r1] cmp r1, #1 bne _021133be ldr r1, _02113518 ; =data_027e0d54 ldrb r1, [r1, #0xd] cmp r1, #0 bne _0211339c mov r0, #1 _0211339c: cmp r0, #0 beq _021133be add r0, r4, #0 mov r1, #0xff add r0, #0xd2 strb r1, [r0] add r0, r4, #0 mov r1, #0 add r0, #0xd3 strb r1, [r0] add r0, r4, #0 bl func_ov10_021135b0 add r0, r4, #0 mov r1, #0 add r0, #0xd0 strb r1, [r0] _021133be: add r0, r4, #0 add r0, #0xd3 ldrb r0, [r0] cmp r0, #6 beq _02113470 add r1, r4, #0 add r1, #0x90 ldr r1, [r1] cmp r1, #0 bne _02113470 add r1, r4, #0 add r1, #0xac ldr r2, [r1] ldr r1, _0211351c ; =0xffff0000 and r2, r1 mov r1, #1 lsl r1, r1, #0x18 cmp r2, r1 bne _02113470 cmp r0, #5 bhi _02113462 add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _021133f4: ; jump table .short _02113400 - _021133f4 - 2 ; case 0 .short _02113408 - _021133f4 - 2 ; case 1 .short _02113412 - _021133f4 - 2 ; case 2 .short _02113432 - _021133f4 - 2 ; case 3 .short _0211343c - _021133f4 - 2 ; case 4 .short _0211345c - _021133f4 - 2 ; case 5 _02113400: add r0, r4, #0 bl func_ov10_021138a4 b _02113462 _02113408: add r0, r4, #0 mov r1, #0 bl func_ov10_021138e4 b _02113462 _02113412: add r0, r4, #0 add r0, #0xd1 ldrb r0, [r0] cmp r0, #0 beq _02113462 add r1, r4, #0 ldr r0, _02113520 ; =data_027e0c68 ldr r2, _02113524 ; =0x00ca000b add r1, #0x94 blx func_02036ce4 add r0, r4, #0 mov r1, #0 add r0, #0xd1 strb r1, [r0] b _02113462 _02113432: add r0, r4, #0 mov r1, #1 bl func_ov10_021138e4 b _02113462 _0211343c: add r0, r4, #0 add r0, #0xd1 ldrb r0, [r0] cmp r0, #0 beq _02113462 add r1, r4, #0 ldr r0, _02113520 ; =data_027e0c68 ldr r2, _02113524 ; =0x00ca000b add r1, #0x94 blx func_02036ce4 add r0, r4, #0 mov r1, #0 add r0, #0xd1 strb r1, [r0] b _02113462 _0211345c: add r0, r4, #0 bl func_ov10_021135b0 _02113462: add r0, r4, #0 add r0, #0xd3 ldrb r0, [r0] add r1, r0, #1 add r0, r4, #0 add r0, #0xd3 strb r1, [r0] _02113470: add r0, r4, #0 add r0, #0xac ldr r1, [r0] ldr r0, _0211351c ; =0xffff0000 and r1, r0 mov r0, #1 lsl r0, r0, #0x18 cmp r1, r0 beq _0211348e add r1, r4, #0 ldr r0, _02113520 ; =data_027e0c68 add r1, #0x94 blx func_02036888 b _021134aa _0211348e: add r0, r4, #0 add r0, #0x90 ldr r1, [r0] cmp r1, #0 beq _021134aa mov r0, #0x57 lsl r0, r0, #2 ldrsh r0, [r1, r0] cmp r0, #0 bgt _021134aa add r0, r4, #0 mov r1, #0 add r0, #0x90 str r1, [r0] _021134aa: add r0, r4, #0 add r0, #0xd3 ldrb r0, [r0] cmp r0, #6 bne _02113516 ldr r0, [r4, #0xc] add r0, r0, #1 str r0, [r4, #0xc] bpl _021134c0 mov r0, #0 str r0, [r4, #0xc] _021134c0: ldr r0, [r4, #4] lsl r0, r0, #2 add r0, r4, r0 ldr r0, [r0, #0x1c] ldr r1, [r0] ldr r1, [r1, #0x10] blx r1 mov r6, #0 add r5, r6, #0 _021134d2: ldr r0, [r4, #0x50] ldr r0, [r0, r5] blx func_ov10_02115f54 add r6, r6, #1 add r5, r5, #4 cmp r6, #2 blt _021134d2 ldr r5, [r4, #0x14] ldr r0, [r4, #4] cmp r0, r5 beq _02113516 lsl r0, r0, #2 add r0, r4, r0 ldr r0, [r0, #0x1c] ldr r6, [r4, #0x18] ldr r1, [r0] ldr r1, [r1, #0xc] blx r1 mov r0, #0 str r0, [r4, #0xc] ldr r0, [r4, #4] add r1, r6, #0 str r0, [r4, #8] lsl r0, r5, #2 str r5, [r4, #4] add r0, r4, r0 ldr r0, [r0, #0x1c] ldr r2, [r0] ldr r2, [r2, #8] blx r2 mov r0, #1 add r4, #0xd5 strb r0, [r4] _02113516: pop {r4, r5, r6, pc} .align 2, 0 thumb_func_end func_ov10_0211337c _02113518: .word data_027e0d54 _0211351c: .word 0xffff0000 _02113520: .word data_027e0c68 _02113524: .word 0x00ca000b .global func_ov10_02113528 thumb_func_start func_ov10_02113528 func_ov10_02113528: ; 0x02113528 push {r4, r5, r6, lr} add r5, r0, #0 add r0, #0xd5 ldrb r0, [r0] cmp r0, #0 beq _02113540 add r0, r5, #0 ldr r1, [r5, #4] ldr r2, [r5, #8] add r0, #0x10 blx func_ov10_0211c95c _02113540: mov r6, #0 add r4, r6, #0 _02113544: ldr r0, [r5, #0x50] ldr r0, [r0, r4] blx func_ov10_02116098 add r6, r6, #1 add r4, r4, #4 cmp r6, #2 blt _02113544 ldr r0, [r5, #4] lsl r0, r0, #2 add r0, r5, r0 ldr r0, [r0, #0x1c] ldr r1, [r0] ldr r1, [r1, #0x18] blx r1 add r5, #0x8c ldr r0, [r5] blx func_ov01_020f6fc4 pop {r4, r5, r6, pc} thumb_func_end func_ov10_02113528 .global func_ov10_0211356c thumb_func_start func_ov10_0211356c func_ov10_0211356c: ; 0x0211356c push {r3, lr} ldr r1, [r0, #4] lsl r1, r1, #2 add r0, r0, r1 ldr r0, [r0, #0x1c] ldr r1, [r0] ldr r1, [r1, #0x14] blx r1 pop {r3, pc} .align 2, 0 thumb_func_end func_ov10_0211356c .global func_ov10_02113580 thumb_func_start func_ov10_02113580 func_ov10_02113580: ; 0x02113580 push {r3, lr} ldr r1, [r0, #4] lsl r1, r1, #2 add r0, r0, r1 ldr r0, [r0, #0x1c] ldr r1, [r0] ldr r1, [r1, #0xc] blx r1 blx func_02004c68 blx func_02004c7c blx func_02004ba8 blx func_02004b94 blx func_02004c90 blx func_02004c54 pop {r3, pc} .align 2, 0 thumb_func_end func_ov10_02113580 .global func_ov10_021135ac thumb_func_start func_ov10_021135ac func_ov10_021135ac: ; 0x021135ac bx lr .align 2, 0 thumb_func_end func_ov10_021135ac .global func_ov10_021135b0 thumb_func_start func_ov10_021135b0 func_ov10_021135b0: ; 0x021135b0 push {r4, r5, r6, lr} sub sp, #8 mov r4, #0 add r6, r0, #0 add r5, r4, #0 _021135ba: ldr r0, [r6, #0x50] ldr r0, [r0, r5] bl func_ov10_02115d00 add r0, r4, #1 lsl r0, r0, #0x10 asr r4, r0, #0x10 add r5, r5, #4 cmp r4, #2 blt _021135ba mov r0, #0 str r0, [sp, #4] str r0, [sp] ldr r0, _02113614 ; =0x00000112 mov r1, #1 add r2, sp, #4 add r3, sp, #0 blx func_02034698 ldr r1, [sp, #4] ldr r0, _02113618 ; =0x00000113 ldr r3, [sp] add r2, r1, r0 add r0, r6, #0 mov r1, #0 str r2, [sp, #4] bl func_ov10_0211361c ldr r0, _02113614 ; =0x00000112 mov r1, #0x1a add r2, sp, #4 add r3, sp, #0 blx func_02034698 ldr r1, [sp, #4] ldr r0, _02113618 ; =0x00000113 ldr r3, [sp] add r2, r1, r0 add r0, r6, #0 mov r1, #1 str r2, [sp, #4] bl func_ov10_0211361c add sp, #8 pop {r4, r5, r6, pc} .align 2, 0 thumb_func_end func_ov10_021135b0 _02113614: .word 0x00000112 _02113618: .word 0x00000113 .global func_ov10_0211361c thumb_func_start func_ov10_0211361c func_ov10_0211361c: ; 0x0211361c push {r3, r4} ldr r4, [r0, #0x50] lsl r0, r1, #2 lsl r1, r2, #0x10 ldr r0, [r4, r0] asr r4, r1, #0x10 ldr r1, _02113648 ; =0x000002ca lsl r2, r3, #0x10 asr r3, r2, #0x10 strh r4, [r0, r1] add r2, r1, #2 strh r3, [r0, r2] add r2, r1, #4 strh r4, [r0, r2] add r1, r1, #6 strh r3, [r0, r1] mov r1, #0x1a ldrsh r1, [r0, r1] strh r1, [r0, #0x18] pop {r3, r4} bx lr nop thumb_func_end func_ov10_0211361c _02113648: .word 0x000002ca .global func_ov10_0211364c thumb_func_start func_ov10_0211364c func_ov10_0211364c: ; 0x0211364c push {r3, r4, r5, r6, r7, lr} add r7, r1, #0 ldr r1, _02113754 ; =data_027e0d54 add r4, r3, #0 ldrh r3, [r1, #0x16] add r0, r2, #0 ldr r5, [sp, #0x18] add r1, r3, #1 lsr r2, r1, #0x1f lsl r6, r1, #0x1f sub r6, r6, r2 mov r1, #0x1f ror r6, r1 cmp r0, #1 beq _0211366c add r3, r2, r6 _0211366c: cmp r7, #4 bhi _02113752 add r1, r7, r7 add r1, pc ldrh r1, [r1, #6] lsl r1, r1, #0x10 asr r1, r1, #0x10 add pc, r1 _0211367c: ; jump table .short _02113686 - _0211367c - 2 ; case 0 .short _021136a4 - _0211367c - 2 ; case 1 .short _021136ba - _0211367c - 2 ; case 2 .short _021136ea - _0211367c - 2 ; case 3 .short _0211371c - _0211367c - 2 ; case 4 _02113686: cmp r3, #0 bne _0211368e mov r1, #1 b _02113690 _0211368e: mov r1, #0x1a _02113690: ldr r0, _02113758 ; =0x00000112 add r2, r4, #0 add r3, r5, #0 blx func_02034698 ldr r1, [r4] ldr r0, _0211375c ; =0x00000113 add r0, r1, r0 str r0, [r4] pop {r3, r4, r5, r6, r7, pc} _021136a4: cmp r3, #0 bne _021136ac mov r1, #1 b _021136ae _021136ac: mov r1, #0x1a _021136ae: ldr r0, _02113758 ; =0x00000112 add r2, r4, #0 add r3, r5, #0 blx func_02034698 pop {r3, r4, r5, r6, r7, pc} _021136ba: cmp r0, #0 beq _021136cc ldr r0, _02113758 ; =0x00000112 mov r1, #1 add r2, r4, #0 add r3, r5, #0 blx func_02034698 pop {r3, r4, r5, r6, r7, pc} _021136cc: cmp r3, #0 bne _021136d4 mov r1, #1 b _021136d6 _021136d4: mov r1, #0x1a _021136d6: ldr r0, _02113758 ; =0x00000112 add r2, r4, #0 add r3, r5, #0 blx func_02034698 ldr r1, [r4] ldr r0, _0211375c ; =0x00000113 add r0, r1, r0 str r0, [r4] pop {r3, r4, r5, r6, r7, pc} _021136ea: cmp r0, #0 beq _021136fe mov r0, #0x45 lsl r0, r0, #2 mov r1, #4 add r2, r4, #0 add r3, r5, #0 blx func_02034698 pop {r3, r4, r5, r6, r7, pc} _021136fe: cmp r3, #0 bne _02113706 mov r1, #1 b _02113708 _02113706: mov r1, #0x1a _02113708: ldr r0, _02113758 ; =0x00000112 add r2, r4, #0 add r3, r5, #0 blx func_02034698 ldr r1, [r4] ldr r0, _0211375c ; =0x00000113 add r0, r1, r0 str r0, [r4] pop {r3, r4, r5, r6, r7, pc} _0211371c: cmp r0, #0 beq _02113736 mov r0, #0x45 lsl r0, r0, #2 mov r1, #4 add r2, r4, #0 add r3, r5, #0 blx func_02034698 mov r0, #0x63 mvn r0, r0 str r0, [r5] pop {r3, r4, r5, r6, r7, pc} _02113736: cmp r3, #0 bne _0211373e mov r1, #1 b _02113740 _0211373e: mov r1, #0x1a _02113740: ldr r0, _02113758 ; =0x00000112 add r2, r4, #0 add r3, r5, #0 blx func_02034698 ldr r1, [r5] ldr r0, _0211375c ; =0x00000113 add r0, r1, r0 str r0, [r5] _02113752: pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end func_ov10_0211364c _02113754: .word data_027e0d54 _02113758: .word 0x00000112 _0211375c: .word 0x00000113 .global func_ov10_02113760 thumb_func_start func_ov10_02113760 func_ov10_02113760: ; 0x02113760 push {r4, r5, r6, r7, lr} sub sp, #0x14 ldr r2, _021137ec ; =data_027e0d54 add r5, r0, #0 ldrh r4, [r2, #0x16] add r2, sp, #0xc add r3, sp, #0x10 str r2, [sp] mov r2, #1 add r7, r1, #0 bl func_ov10_0211364c ldr r1, [sp, #0x10] ldr r0, [sp, #0xc] lsl r1, r1, #0x10 lsl r0, r0, #0x10 ldr r3, [r5, #0x50] lsl r2, r4, #2 ldr r2, [r3, r2] ldr r3, _021137f0 ; =0x000002ca asr r1, r1, #0x10 strh r1, [r2, r3] asr r0, r0, #0x10 add r6, r3, #2 strh r0, [r2, r6] add r6, r3, #4 strh r1, [r2, r6] add r1, r3, #6 strh r0, [r2, r1] mov r0, #0x1a ldrsh r0, [r2, r0] add r1, r7, #0 add r3, sp, #8 strh r0, [r2, #0x18] add r0, sp, #4 str r0, [sp] add r0, r5, #0 mov r2, #0 bl func_ov10_0211364c add r3, r4, #1 ldr r0, [r5, #0x50] ldr r1, [sp, #8] ldr r2, [sp, #4] lsr r5, r3, #0x1f lsl r4, r3, #0x1f sub r4, r4, r5 mov r3, #0x1f ror r4, r3 add r3, r5, r4 lsl r3, r3, #2 lsl r1, r1, #0x10 asr r4, r1, #0x10 ldr r0, [r0, r3] ldr r1, _021137f0 ; =0x000002ca lsl r2, r2, #0x10 asr r3, r2, #0x10 strh r4, [r0, r1] add r2, r1, #2 strh r3, [r0, r2] add r2, r1, #4 strh r4, [r0, r2] add r1, r1, #6 strh r3, [r0, r1] mov r1, #0x1a ldrsh r1, [r0, r1] strh r1, [r0, #0x18] add sp, #0x14 pop {r4, r5, r6, r7, pc} nop thumb_func_end func_ov10_02113760 _021137ec: .word data_027e0d54 _021137f0: .word 0x000002ca .global func_ov10_021137f4 thumb_func_start func_ov10_021137f4 func_ov10_021137f4: ; 0x021137f4 push {r3, r4, r5, r6, lr} sub sp, #0x14 ldr r2, _02113860 ; =data_027e0d54 add r5, r0, #0 ldrh r4, [r2, #0x16] add r2, sp, #0xc add r3, sp, #0x10 str r2, [sp] mov r2, #1 add r6, r1, #0 bl func_ov10_0211364c ldr r2, [r5, #0x50] lsl r0, r4, #2 ldr r0, [r2, r0] ldr r1, [sp, #0xc] ldr r3, [sp, #0x10] ldr r2, _02113864 ; =0x000002ce strh r3, [r0, r2] add r2, r2, #2 strh r1, [r0, r2] mov r1, #0x1a ldrsh r1, [r0, r1] mov r2, #0 add r3, sp, #8 strh r1, [r0, #0x18] add r0, sp, #4 str r0, [sp] add r0, r5, #0 add r1, r6, #0 bl func_ov10_0211364c add r2, r4, #1 lsr r4, r2, #0x1f lsl r3, r2, #0x1f sub r3, r3, r4 mov r2, #0x1f ror r3, r2 add r2, r4, r3 ldr r0, [r5, #0x50] lsl r2, r2, #2 ldr r3, [r0, r2] ldr r1, [sp, #4] ldr r2, [sp, #8] ldr r0, _02113864 ; =0x000002ce strh r2, [r3, r0] add r0, r0, #2 strh r1, [r3, r0] mov r0, #0x1a ldrsh r0, [r3, r0] strh r0, [r3, #0x18] add sp, #0x14 pop {r3, r4, r5, r6, pc} nop thumb_func_end func_ov10_021137f4 _02113860: .word data_027e0d54 _02113864: .word 0x000002ce .global func_ov10_02113868 thumb_func_start func_ov10_02113868 func_ov10_02113868: ; 0x02113868 ldr r2, [r0, #0x50] lsl r0, r1, #2 ldr r0, [r2, r0] bx lr thumb_func_end func_ov10_02113868 .global func_ov10_02113870 thumb_func_start func_ov10_02113870 func_ov10_02113870: ; 0x02113870 ldr r2, [r0, #0x50] lsl r0, r1, #2 ldr r0, [r2, r0] bx lr thumb_func_end func_ov10_02113870 .global func_ov10_02113878 thumb_func_start func_ov10_02113878 func_ov10_02113878: ; 0x02113878 push {r4, lr} ldr r4, [r0, #0x50] lsl r0, r1, #2 ldr r0, [r4, r0] add r1, r2, #0 ldr r4, [r0] add r2, r3, #0 ldr r4, [r4] mov r3, #0 blx r4 pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_02113878 .global func_ov10_02113890 thumb_func_start func_ov10_02113890 func_ov10_02113890: ; 0x02113890 push {r4, lr} ldr r4, [r0, #0x50] lsl r0, r1, #2 ldr r0, [r4, r0] add r1, r2, #0 add r2, r3, #0 blx func_ov10_0211609c pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_02113890 .global func_ov10_021138a4 thumb_func_start func_ov10_021138a4 func_ov10_021138a4: ; 0x021138a4 push {r4, lr} add r4, r0, #0 mov r2, #0 add r0, #0x90 str r2, [r0] ldr r0, _021138d8 ; =data_ov00_020ee698 ldrb r1, [r0] cmp r1, #0 beq _021138c8 strb r2, [r0] ldr r0, _021138dc ; =data_027e0c68 ldr r1, _021138e0 ; =0x00130016 sub r2, r2, #1 blx func_02036edc add r1, r4, #0 add r1, #0x90 str r0, [r1] _021138c8: add r4, #0x90 ldr r0, [r4] cmp r0, #0 beq _021138d4 mov r0, #1 pop {r4, pc} _021138d4: mov r0, #0 pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_021138a4 _021138d8: .word data_ov00_020ee698 _021138dc: .word data_027e0c68 _021138e0: .word 0x00130016 .global func_ov10_021138e4 thumb_func_start func_ov10_021138e4 func_ov10_021138e4: ; 0x021138e4 push {r4, lr} add r4, r0, #0 add r2, r4, #0 add r2, #0xd2 strb r1, [r2] add r1, r4, #0 add r1, #0xd2 ldrb r1, [r1] bl func_ov10_02113358 ldr r1, _02113994 ; =0x00003508 ldr r0, [r0, r1] cmp r0, #6 bhi _0211397a add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _0211390c: ; jump table .short _0211391a - _0211390c - 2 ; case 0 .short _02113928 - _0211390c - 2 ; case 1 .short _02113936 - _0211390c - 2 ; case 2 .short _02113944 - _0211390c - 2 ; case 3 .short _02113952 - _0211390c - 2 ; case 4 .short _02113960 - _0211390c - 2 ; case 5 .short _0211396e - _0211390c - 2 ; case 6 _0211391a: add r1, r4, #0 ldr r0, _02113998 ; =data_027e0c68 ldr r2, _0211399c ; =0x00ca0005 add r1, #0x94 blx func_02036ce4 b _0211397a _02113928: add r1, r4, #0 ldr r0, _02113998 ; =data_027e0c68 ldr r2, _021139a0 ; =0x00ca0006 add r1, #0x94 blx func_02036ce4 b _0211397a _02113936: add r1, r4, #0 ldr r0, _02113998 ; =data_027e0c68 ldr r2, _021139a4 ; =0x00ca0007 add r1, #0x94 blx func_02036ce4 b _0211397a _02113944: add r1, r4, #0 ldr r0, _02113998 ; =data_027e0c68 ldr r2, _021139a8 ; =0x00ca0008 add r1, #0x94 blx func_02036ce4 b _0211397a _02113952: add r1, r4, #0 ldr r0, _02113998 ; =data_027e0c68 ldr r2, _021139ac ; =0x00ca0009 add r1, #0x94 blx func_02036ce4 b _0211397a _02113960: add r1, r4, #0 ldr r0, _02113998 ; =data_027e0c68 ldr r2, _021139b0 ; =0x00ca000a add r1, #0x94 blx func_02036ce4 b _0211397a _0211396e: add r1, r4, #0 ldr r0, _02113998 ; =data_027e0c68 ldr r2, _021139b4 ; =0x00ca000d add r1, #0x94 blx func_02036ce4 _0211397a: add r0, r4, #0 add r0, #0xac ldr r1, [r0] ldr r0, _021139b8 ; =0xffff0000 and r1, r0 mov r0, #1 lsl r0, r0, #0x18 cmp r1, r0 beq _02113992 mov r0, #1 add r4, #0xd1 strb r0, [r4] _02113992: pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_021138e4 _02113994: .word 0x00003508 _02113998: .word data_027e0c68 _0211399c: .word 0x00ca0005 _021139a0: .word 0x00ca0006 _021139a4: .word 0x00ca0007 _021139a8: .word 0x00ca0008 _021139ac: .word 0x00ca0009 _021139b0: .word 0x00ca000a _021139b4: .word 0x00ca000d _021139b8: .word 0xffff0000 .global func_ov10_021139bc thumb_func_start func_ov10_021139bc func_ov10_021139bc: ; 0x021139bc push {r3, r4, r5, lr} add r5, r0, #0 add r4, r1, #0 add r0, #0x64 strb r4, [r0] ldr r1, [r5, #0x54] mov r0, #0xc add r1, #0x40 mul r0, r4 add r0, r1, r0 bl func_ov00_0207792c str r0, [r5, #0x58] str r1, [r5, #0x5c] mov r0, #7 ldr r1, [r5, #0x54] lsl r0, r0, #6 add r1, r1, r0 mov r0, #0x16 mul r0, r4 add r0, r1, r0 str r0, [r5, #0x60] pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end func_ov10_021139bc .global func_ov10_021139ec thumb_func_start func_ov10_021139ec func_ov10_021139ec: ; 0x021139ec push {r3, r4, lr} sub sp, #4 ldr r1, _02113a44 ; =data_027e0d54 add r4, r0, #0 ldrh r1, [r1, #0x16] bl func_ov10_02113358 ldr r1, _02113a48 ; =0x00002804 add r2, r0, r1 mov r0, #0x64 ldrsb r1, [r4, r0] mov r0, #0xc mul r0, r1 add r0, r2, r0 bl func_ov00_020777d0 cmp r0, #0 beq _02113a1e mov r1, #0x64 ldrsb r1, [r4, r1] add r0, r4, #0 bl func_ov10_02113a4c cmp r0, #0 beq _02113a34 _02113a1e: ldr r0, [r4, #0x60] mov r1, #0x64 str r0, [sp] ldrsb r1, [r4, r1] ldr r0, [r4, #0x54] ldr r2, [r4, #0x58] ldr r3, [r4, #0x5c] blx func_ov10_0211cbd0 add sp, #4 pop {r3, r4, pc} _02113a34: mov r1, #0x64 ldrsb r1, [r4, r1] ldr r0, [r4, #0x54] ldr r2, [r4, #0x60] blx func_ov10_0211cc84 add sp, #4 pop {r3, r4, pc} .align 2, 0 thumb_func_end func_ov10_021139ec _02113a44: .word data_027e0d54 _02113a48: .word 0x00002804 .global func_ov10_02113a4c thumb_func_start func_ov10_02113a4c func_ov10_02113a4c: ; 0x02113a4c ldr r3, _02113a54 ; =func_ov10_0211cb64 ldr r0, [r0, #0x54] bx r3 nop thumb_func_end func_ov10_02113a4c _02113a54: .word func_ov10_0211cb64 - 1 .global func_ov10_02113a58 thumb_func_start func_ov10_02113a58 func_ov10_02113a58: ; 0x02113a58 push {r3, r4, r5, lr} add r5, r0, #0 mov r0, #1 mov r4, #0 str r0, [r5, #0x68] add r0, r5, #0 add r0, #0x68 mov r1, #0x20 add r2, r4, #0 str r4, [r5, #0x70] bl func_0202abf4 cmp r0, #0 beq _02113a88 add r0, r5, #0 add r1, r4, #0 add r0, #0x88 strb r1, [r0] add r5, #0x68 ldr r0, _02113a8c ; =data_027e071c add r1, r5, #0 blx func_0202d77c mov r4, #1 _02113a88: add r0, r4, #0 pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end func_ov10_02113a58 _02113a8c: .word data_027e071c .global func_ov10_02113a90 thumb_func_start func_ov10_02113a90 func_ov10_02113a90: ; 0x02113a90 push {r3, r4, r5, lr} add r5, r0, #0 mov r4, #0 str r4, [r5, #0x68] add r0, #0x88 ldrb r0, [r0] cmp r0, #0 beq _02113aa6 add r0, r4, #0 sub r0, #0x10 b _02113aa8 _02113aa6: mov r0, #0x10 _02113aa8: str r0, [r5, #0x70] add r0, r5, #0 add r0, #0x68 mov r1, #0x20 mov r2, #0 bl func_0202abdc cmp r0, #0 beq _02113ace add r0, r5, #0 mov r1, #0 add r0, #0x88 strb r1, [r0] add r5, #0x68 ldr r0, _02113ad4 ; =data_027e071c add r1, r5, #0 blx func_0202d77c mov r4, #1 _02113ace: add r0, r4, #0 pop {r3, r4, r5, pc} nop thumb_func_end func_ov10_02113a90 _02113ad4: .word data_027e071c .global func_ov10_02113ad8 thumb_func_start func_ov10_02113ad8 func_ov10_02113ad8: ; 0x02113ad8 push {r3, r4, r5, r6, lr} sub sp, #0x1c mov r0, #1 add r5, r1, #0 add r4, r2, #0 str r0, [sp] mov r3, #0x33 ldr r0, _02113b58 ; =data_ov10_0211eb24 ldr r1, _02113b5c ; =data_ov10_0211eb28 ldr r2, _02113b60 ; =data_020691a0 lsl r3, r3, #0xa bl func_0202d5b4 add r6, r0, #0 ldr r1, _02113b64 ; =data_ov10_0211eb3c add r0, sp, #0x10 bl func_02031e1c cmp r5, #0 beq _02113b24 ldr r2, _02113b68 ; =0x0400000c mov r0, #0x43 ldrh r1, [r2] mov r3, #1 and r1, r0 mov r0, #4 orr r0, r1 strh r0, [r2] mov r2, #0 str r2, [sp] str r2, [sp, #4] str r2, [sp, #8] mov r0, #0xf str r0, [sp, #0xc] add r0, sp, #0x10 mov r1, #2 bl func_02031f18 _02113b24: cmp r4, #0 beq _02113b4c ldr r2, _02113b6c ; =0x0400100c mov r0, #0x43 ldrh r1, [r2] mov r3, #1 and r1, r0 mov r0, #4 orr r0, r1 strh r0, [r2] mov r2, #0 str r2, [sp] str r2, [sp, #4] str r2, [sp, #8] mov r0, #0xf str r0, [sp, #0xc] add r0, sp, #0x10 mov r1, #6 bl func_02031f18 _02113b4c: add r0, r6, #0 bl func_02016fcc add sp, #0x1c pop {r3, r4, r5, r6, pc} nop thumb_func_end func_ov10_02113ad8 _02113b58: .word data_ov10_0211eb24 _02113b5c: .word data_ov10_0211eb28 _02113b60: .word data_020691a0 _02113b64: .word data_ov10_0211eb3c _02113b68: .word 0x0400000c _02113b6c: .word 0x0400100c .global func_ov10_02113b70 thumb_func_start func_ov10_02113b70 func_ov10_02113b70: ; 0x02113b70 push {r3, r4, lr} sub sp, #0x1c mov r0, #1 str r0, [sp] mov r3, #0x33 ldr r0, _02113bb4 ; =data_ov10_0211eb48 ldr r1, _02113bb8 ; =data_ov10_0211eb4c ldr r2, _02113bbc ; =data_020691a0 lsl r3, r3, #0xa bl func_0202d5b4 add r4, r0, #0 ldr r1, _02113bc0 ; =data_ov10_0211eb68 add r0, sp, #0x10 bl func_02031e1c mov r2, #1 str r2, [sp] mov r0, #0 str r0, [sp, #4] str r2, [sp, #8] mov r0, #0xf str r0, [sp, #0xc] add r0, sp, #0x10 mov r1, #7 mov r3, #3 bl func_02031f18 add r0, r4, #0 bl func_02016fcc add sp, #0x1c pop {r3, r4, pc} nop thumb_func_end func_ov10_02113b70 _02113bb4: .word data_ov10_0211eb48 _02113bb8: .word data_ov10_0211eb4c _02113bbc: .word data_020691a0 _02113bc0: .word data_ov10_0211eb68 .global func_ov10_02113bc4 thumb_func_start func_ov10_02113bc4 func_ov10_02113bc4: ; 0x02113bc4 push {r3, r4, lr} sub sp, #4 add r4, r0, #0 mov r0, #1 blx func_02003f74 mov r0, #2 blx func_02003ce4 mov r0, #8 blx func_020047d8 mov r0, #4 blx func_02004730 mov r1, #0 mov r0, #1 add r2, r1, #0 blx func_02003a9c mov r0, #0 blx func_02003b04 ldr r0, _02113c6c ; =0x0400100c mov r2, #3 ldrh r3, [r0] mov r1, #3 bic r3, r2 orr r1, r3 strh r1, [r0] ldrh r3, [r0, #2] mov r1, #2 bic r3, r2 orr r1, r3 strh r1, [r0, #2] ldrh r1, [r0] mov r2, #0x43 add r3, r1, #0 and r3, r2 mov r1, #4 orr r1, r3 strh r1, [r0] ldrh r1, [r0, #2] and r2, r1 ldr r1, _02113c70 ; =0x0000810c orr r1, r2 strh r1, [r0, #2] add r0, r4, #0 bl func_ov10_02113c80 mov r0, #1 lsl r0, r0, #0x1a ldr r1, [r0] ldr r2, _02113c74 ; =0xffffe0ff add r3, r1, #0 mov r1, #5 and r3, r2 lsl r1, r1, #0xa orr r1, r3 str r1, [r0] ldr r3, _02113c78 ; =0x04001000 add r0, #0x50 ldr r1, [r3] and r2, r1 mov r1, #7 lsl r1, r1, #0xa orr r1, r2 str r1, [r3] mov r1, #0 mov r2, #0x3f mov r3, #0x1f str r1, [sp] blx func_020052e4 mov r1, #0 ldr r0, _02113c7c ; =0x04001050 mov r2, #0x3f mov r3, #0x1f str r1, [sp] blx func_020052e4 add sp, #4 pop {r3, r4, pc} nop thumb_func_end func_ov10_02113bc4 _02113c6c: .word 0x0400100c _02113c70: .word 0x0000810c _02113c74: .word 0xffffe0ff _02113c78: .word 0x04001000 _02113c7c: .word 0x04001050 .global func_ov10_02113c80 thumb_func_start func_ov10_02113c80 func_ov10_02113c80: ; 0x02113c80 push {r4, lr} add r4, r0, #0 mov r2, #0 ldr r0, _02113ce4 ; =data_027e0cbc mov r1, #0x2e sub r3, r2, #1 blx func_0203d77c mov r2, #0 ldr r0, _02113ce4 ; =data_027e0cbc mov r1, #0x32 sub r3, r2, #1 blx func_0203d77c mov r2, #0 ldr r0, _02113ce4 ; =data_027e0cbc mov r1, #0x34 sub r3, r2, #1 blx func_0203d77c mov r2, #0 ldr r0, _02113ce4 ; =data_027e0cbc mov r1, #0x33 sub r3, r2, #1 blx func_0203d77c mov r2, #0 ldr r0, _02113ce4 ; =data_027e0cbc mov r1, #0x39 sub r3, r2, #1 blx func_0203d77c ldr r0, _02113ce8 ; =data_027e0c38 mov r1, #7 mov r2, #0xf mov r3, #0 blx func_02033e70 mov r1, #1 add r0, r4, #0 add r2, r1, #0 bl func_ov10_02113ad8 ldr r1, _02113cec ; =0x01060000 ldr r0, _02113cf0 ; =0x0400101c str r1, [r0] add r0, r4, #0 bl func_ov10_02113b70 pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_02113c80 _02113ce4: .word data_027e0cbc _02113ce8: .word data_027e0c38 _02113cec: .word 0x01060000 _02113cf0: .word 0x0400101c .global func_ov10_02113cf4 thumb_func_start func_ov10_02113cf4 func_ov10_02113cf4: ; 0x02113cf4 push {r3, r4, r5, lr} sub sp, #8 ldr r1, _02113d40 ; =data_027e0d54 add r5, r0, #0 ldrh r4, [r1, #0x16] add r1, r4, #0 bl func_ov10_02113358 ldr r1, _02113d44 ; =0x00002804 add r0, r0, r1 blx func_ov01_020f5640 ldr r2, _02113d48 ; =0x0400000a mov r0, #0x43 ldrh r1, [r2] and r1, r0 add r0, #0xc9 orr r0, r1 strh r0, [r2] add r0, r5, #0 add r1, r4, #0 bl func_ov10_02113358 add r3, r0, #0 mov r0, #3 ldr r1, _02113d4c ; =0x00002c44 str r0, [sp] mov r2, #1 add r1, r3, r1 str r2, [sp, #4] add r5, #0x8c ldr r0, [r5] add r3, r2, #0 blx func_ov01_020f6e68 add sp, #8 pop {r3, r4, r5, pc} nop thumb_func_end func_ov10_02113cf4 _02113d40: .word data_027e0d54 _02113d44: .word 0x00002804 _02113d48: .word 0x0400000a _02113d4c: .word 0x00002c44 .global func_ov10_02113d50 thumb_func_start func_ov10_02113d50 func_ov10_02113d50: ; 0x02113d50 ldr r3, _02113d5c ; =func_ov01_020f6fa8 add r0, #0x8c ldr r0, [r0] mov r1, #1 bx r3 nop thumb_func_end func_ov10_02113d50 _02113d5c: .word func_ov01_020f6fa8 .global func_ov10_02113d60 thumb_func_start func_ov10_02113d60 func_ov10_02113d60: ; 0x02113d60 ldr r3, _02113d6c ; =func_ov01_020f732c add r0, #0x8c ldr r0, [r0] mov r1, #0 bx r3 nop thumb_func_end func_ov10_02113d60 _02113d6c: .word func_ov01_020f732c .global func_ov10_02113d70 thumb_func_start func_ov10_02113d70 func_ov10_02113d70: ; 0x02113d70 push {r4, lr} sub sp, #0x18 add r0, sp, #0 add r4, r1, #0 blx func_02037628 mov r3, #0 add r0, sp, #0 strb r3, [r0, #0x15] mov r1, #1 strb r1, [r0, #0x14] ldr r0, _02113d9c ; =data_027e0c68 add r1, r4, #0 add r2, sp, #0 blx func_02036f68 ldr r1, _02113da0 ; =0x00000151 mov r2, #7 strb r2, [r0, r1] add sp, #0x18 pop {r4, pc} nop thumb_func_end func_ov10_02113d70 _02113d9c: .word data_027e0c68 _02113da0: .word 0x00000151 .global func_ov10_02113da4 thumb_func_start func_ov10_02113da4 func_ov10_02113da4: ; 0x02113da4 push {r3, lr} ldr r0, _02113dc0 ; =data_027e0c68 blx func_02036700 cmp r0, #0 beq _02113dbe mov r1, #0x57 lsl r1, r1, #2 ldrsh r1, [r0, r1] cmp r1, #0 ble _02113dbe blx func_02038b40 _02113dbe: pop {r3, pc} .align 2, 0 thumb_func_end func_ov10_02113da4 _02113dc0: .word data_027e0c68 .global func_ov10_02113dc4 arm_func_start func_ov10_02113dc4 func_ov10_02113dc4: ; 0x02113dc4 stmdb sp!, {r4, lr} mov r4, r0 bl func_0203780c mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_02113dc4 .global func_ov10_02113de0 thumb_func_start func_ov10_02113de0 func_ov10_02113de0: ; 0x02113de0 push {r4, lr} sub sp, #0x10 mov r2, #9 mov r3, #3 add r4, r0, #0 bl func_ov10_02112f18 ldr r0, _02113e60 ; =data_ov10_0211ebc4 str r0, [r4] mov r0, #0 strb r0, [r4, #0x18] sub r0, r0, #1 str r0, [r4, #0x1c] add r0, r4, #0 add r0, #0x20 blx func_02035064 ldr r0, _02113e64 ; =func_ov10_02113e6c ldr r3, _02113e68 ; =func_ov10_02113e70 str r0, [sp] add r0, r4, #0 add r0, #0xa8 mov r1, #1 mov r2, #0x18 blx func_0204f614 mov r2, #0 add r0, r4, #0 str r2, [sp] add r0, #0x20 mov r1, #0x2f add r3, r2, #0 str r2, [sp, #4] blx func_020350b4 mov r1, #0 add r0, r4, #0 add r0, #0x20 add r2, r1, #0 add r3, r1, #0 str r1, [sp] blx func_020351b8 mov r1, #0x55 str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0xa8 add r1, #0xbd mov r2, #0x33 mov r3, #2 blx func_ov00_020cfed0 add r0, r4, #0 mov r1, #0x36 add r0, #0xbb strb r1, [r0] add r0, r4, #0 add sp, #0x10 pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_02113de0 _02113e60: .word data_ov10_0211ebc4 _02113e64: .word func_ov10_02113e6c - 1 _02113e68: .word func_ov10_02113e70 - 1 .global func_ov10_02113e6c arm_func_start func_ov10_02113e6c func_ov10_02113e6c: ; 0x02113e6c bx lr arm_func_end func_ov10_02113e6c .global func_ov10_02113e70 arm_func_start func_ov10_02113e70 func_ov10_02113e70: ; 0x02113e70 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov00_020d05dc ldr r0, _02113ea8 ; =data_ov00_020e899c mov r1, #0 str r0, [r4] strb r1, [r4, #0x10] sub r0, r1, #1 strb r0, [r4, #0x11] strb r0, [r4, #0x12] strb r0, [r4, #0x13] mov r0, r4 str r1, [r4, #0x14] ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02113e70 _02113ea8: .word data_ov00_020e899c .global func_ov10_02113eac arm_func_start func_ov10_02113eac func_ov10_02113eac: ; 0x02113eac ldrb r1, [r0, #0x18] cmp r1, #0 moveq r1, #1 streqb r1, [r0, #0x18] bx lr arm_func_end func_ov10_02113eac .global func_ov10_02113ec0 arm_func_start func_ov10_02113ec0 func_ov10_02113ec0: ; 0x02113ec0 stmdb sp!, {r3, r4, r5, lr} mov r5, r0 ldrb r2, [r5, #0x18] mov r4, r1 cmp r2, #0 cmpeq r4, #2 bne _02113ee0 bl func_ov10_02113eac _02113ee0: mov r2, #1 mov r0, r5 mov r1, r4 strb r2, [r5, #0xb5] bl func_ov10_02112f48 mov r0, r5 mov r1, r4 bl func_ov10_02113f14 mov r0, r5 ldr r1, [r0] ldr r1, [r1, #0x10] blx r1 ldmia sp!, {r3, r4, r5, pc} arm_func_end func_ov10_02113ec0 .global func_ov10_02113f14 arm_func_start func_ov10_02113f14 func_ov10_02113f14: ; 0x02113f14 stmdb sp!, {r3, r4, r5, lr} mov r5, r0 ldrb r2, [r5, #0x18] mov r4, r1 cmp r2, #0 cmpeq r4, #2 bne _02113f34 bl func_ov10_02113eac _02113f34: cmp r4, #0 beq _02113f50 cmp r4, #2 beq _02113f6c cmp r4, #6 beq _02113f9c b _02113fbc _02113f50: ldr r1, _02113fcc ; =0x00000101 ldr r0, _02113fd0 ; =data_027e0c68 rsb r2, r1, #0x100 bl func_02036edc mov r1, #7 strb r1, [r0, #0x151] b _02113fbc _02113f6c: ldr r0, [r5, #8] mov r1, #0 blx func_ov10_02113760 ldr r0, [r5, #8] mov r1, #1 blx func_ov10_021137f4 ldr r0, [r5, #8] mov r1, #1 blx func_ov10_02113870 mov r1, #5 strb r1, [r0, #0x2d4] b _02113fbc _02113f9c: ldr r0, [r5, #8] mov r1, #0 blx func_ov10_021137f4 ldr r0, [r5, #8] mov r1, #1 blx func_ov10_02113870 mov r1, #5 strb r1, [r0, #0x2d4] _02113fbc: mov r0, #0 str r0, [r5, #0x14] str r4, [r5, #0x10] ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov10_02113f14 _02113fcc: .word 0x00000101 _02113fd0: .word data_027e0c68 .global func_ov10_02113fd4 arm_func_start func_ov10_02113fd4 func_ov10_02113fd4: ; 0x02113fd4 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x20 bl func_0203516c ldr r0, [r4, #0x14] adds r0, r0, #1 str r0, [r4, #0x14] movmi r0, #0 strmi r0, [r4, #0x14] ldr r0, [r4, #0x10] cmp r0, #8 addls pc, pc, r0, lsl #2 ldmia sp!, {r4, pc} _02114008: ; jump table b _0211402c ; case 0 b _02114090 ; case 1 b _021140c0 ; case 2 b _02114184 ; case 3 b _02114134 ; case 4 b _02114160 ; case 5 b _021140dc ; case 6 b _02114100 ; case 7 b _02114124 ; case 8 _0211402c: ldr r0, [r4, #0x14] cmp r0, #6 bne _02114044 ldr r0, _02114190 ; =data_027e0d54 bl func_ov10_0211802c ldmia sp!, {r4, pc} _02114044: ldmleia sp!, {r4, pc} ldr r0, _02114190 ; =data_027e0d54 ldrb r0, [r0, #0xd] cmp r0, #0 moveq r0, #1 movne r0, #0 cmp r0, #0 ldmeqia sp!, {r4, pc} ldr r0, _02114194 ; =data_027e0c68 bl func_020366c4 bl func_02038b40 ldr r0, _02114194 ; =data_027e0c68 ldr r1, _02114198 ; =0x00130008 mvn r2, #0 bl func_02036edc mov r0, r4 mov r1, #1 bl func_ov10_02113f14 ldmia sp!, {r4, pc} _02114090: ldr r0, _02114194 ; =data_027e0c68 bl func_020367ec cmp r0, #0 ldmneia sp!, {r4, pc} ldr r0, _02114194 ; =data_027e0c68 bl func_02036808 cmp r0, #0 ldmneia sp!, {r4, pc} mov r0, r4 mov r1, #2 bl func_ov10_02113f14 ldmia sp!, {r4, pc} _021140c0: ldr r0, [r4, #0x14] cmp r0, #0x1e ldmleia sp!, {r4, pc} mov r0, r4 mov r1, #3 bl func_ov10_02113f14 ldmia sp!, {r4, pc} _021140dc: ldr r0, [r4, #0x14] cmp r0, #0x1e ldmleia sp!, {r4, pc} ldr r0, [r4, #8] mov r1, #0 add r0, r0, #0x10 mov r2, #1 bl func_ov10_0211c784 ldmia sp!, {r4, pc} _02114100: ldr r1, [r4, #8] ldr r0, [r1, #0x68] cmp r0, #0 ldmneia sp!, {r4, pc} add r0, r1, #0x10 mov r1, #5 mov r2, #0 bl func_ov10_0211c784 ldmia sp!, {r4, pc} _02114124: mov r0, r4 mov r1, #3 bl func_ov10_02113f14 ldmia sp!, {r4, pc} _02114134: mov r0, r4 bl func_ov10_0211419c ldr r0, [r4, #0x14] cmp r0, #0xa ldmleia sp!, {r4, pc} ldr r0, [r4, #8] mov r1, #2 add r0, r0, #0x10 mov r2, #0 bl func_ov10_0211c784 ldmia sp!, {r4, pc} _02114160: mov r0, r4 bl func_ov10_021141f8 ldr r0, [r4, #0x14] cmp r0, #0xa ldmleia sp!, {r4, pc} mov r0, r4 mov r1, #3 bl func_ov10_02113f14 ldmia sp!, {r4, pc} _02114184: mov r0, r4 bl func_ov10_02114254 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02113fd4 _02114190: .word data_027e0d54 _02114194: .word data_027e0c68 _02114198: .word 0x00130008 .global func_ov10_0211419c arm_func_start func_ov10_0211419c func_ov10_0211419c: ; 0x0211419c stmdb sp!, {r4, lr} sub sp, sp, #8 mov r4, r0 ldr r0, [r4, #0x14] mov r1, #0xa000 mov r0, r0, lsl #0xc bl Divide ldr r0, _021141f0 ; =0x00000112 add r2, sp, #4 add r3, sp, #0 mov r1, #1 bl func_02034698 ldr r1, [sp] ldr r0, _021141f4 ; =data_027e0d54 sub r1, r1, #5 str r1, [sp] ldrh r1, [r0, #0x16] ldr r0, [r4, #8] blx func_ov10_02113868 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_0211419c _021141f0: .word 0x00000112 _021141f4: .word data_027e0d54 .global func_ov10_021141f8 arm_func_start func_ov10_021141f8 func_ov10_021141f8: ; 0x021141f8 stmdb sp!, {r4, lr} sub sp, sp, #8 mov r4, r0 ldr r0, [r4, #0x14] mov r1, #0xa000 mov r0, r0, lsl #0xc bl Divide ldr r0, _0211424c ; =0x00000112 add r2, sp, #4 add r3, sp, #0 mov r1, #1 bl func_02034698 ldr r1, [sp] ldr r0, _02114250 ; =data_027e0d54 sub r1, r1, #5 str r1, [sp] ldrh r1, [r0, #0x16] ldr r0, [r4, #8] blx func_ov10_02113868 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_021141f8 _0211424c: .word 0x00000112 _02114250: .word data_027e0d54 .global func_ov10_02114254 arm_func_start func_ov10_02114254 func_ov10_02114254: ; 0x02114254 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} mov r4, r0 ldr r0, [r4, #0x10] cmp r0, #3 movne r0, #0 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} mov r6, #0 mov r5, r6 _02114274: ldr r0, [r4, #8] mov r1, r6 blx func_ov10_02113868 ldrh r7, [r0, #0xa] ldr r0, [r4, #8] mov r1, r6 mov r2, r5 mov r3, r5 blx func_ov10_02113878 mov r2, r0 mov r0, r4 mov r1, r7 bl func_ov10_02114330 cmp r0, #0 movne r0, #1 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} add r0, r6, #1 mov r0, r0, lsl #0x10 mov r6, r0, lsr #0x10 cmp r6, #2 blo _02114274 mov r6, #0 mov r8, r4 add sb, r4, #0xa8 mov r5, r6 _021142d8: mov r0, sb ldr ip, [r0] ldrh r7, [r8, #0xb2] ldr ip, [ip] mov r1, r5 mov r2, r5 mov r3, r5 blx ip mov r2, r0 mov r0, r4 mov r1, r7 bl func_ov10_02114330 cmp r0, #0 movne r0, #1 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} add r6, r6, #1 cmp r6, #1 add r8, r8, #0x18 add sb, sb, #0x18 blt _021142d8 mov r0, #0 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} arm_func_end func_ov10_02114254 .global func_ov10_02114330 arm_func_start func_ov10_02114330 func_ov10_02114330: ; 0x02114330 stmdb sp!, {r3, lr} tst r2, #8 moveq r0, #0 ldmeqia sp!, {r3, pc} cmp r1, #0x55 beq _02114394 cmp r1, #0x67 beq _0211435c cmp r1, #0x68 beq _02114378 b _021143c4 _0211435c: mov r1, #0 bl func_ov10_021143d4 ldr r0, _021143cc ; =data_ov00_020eec9c mov r1, #0x10 bl func_ov00_020d77e4 mov r0, #1 ldmia sp!, {r3, pc} _02114378: mov r1, #1 bl func_ov10_021143d4 ldr r0, _021143cc ; =data_ov00_020eec9c mov r1, #0x10 bl func_ov00_020d77e4 mov r0, #1 ldmia sp!, {r3, pc} _02114394: ldr r0, [r0, #8] mov r1, #4 mov r2, #1 blx func_ov10_02113364 ldr r0, _021143cc ; =data_ov00_020eec9c mov r1, #0x10 bl func_ov00_020d77e4 ldr r0, _021143d0 ; =data_ov00_020eec68 mov r1, #0x20 bl func_ov00_020d716c mov r0, #1 ldmia sp!, {r3, pc} _021143c4: mov r0, #0 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov10_02114330 _021143cc: .word data_ov00_020eec9c _021143d0: .word data_ov00_020eec68 .global func_ov10_021143d4 arm_func_start func_ov10_021143d4 func_ov10_021143d4: ; 0x021143d4 stmdb sp!, {r3, r4, r5, lr} mov r5, r0 mov r4, r1 ldr r0, _02114430 ; =data_027e0d54 str r4, [r5, #0x1c] bl func_ov10_02117e40 ldr r0, [r5, #8] mov r1, r4 blx func_ov10_02113358 add r0, r0, #0x3000 ldrb r0, [r0, #0x481] cmp r0, #0 beq _02114418 mov r0, r5 mov r1, #4 bl func_ov10_02113f14 ldmia sp!, {r3, r4, r5, pc} _02114418: ldr r0, [r5, #8] blx func_ov10_02113a58 mov r0, r5 mov r1, #7 bl func_ov10_02113f14 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov10_021143d4 _02114430: .word data_027e0d54 .global func_ov10_02114434 arm_func_start func_ov10_02114434 func_ov10_02114434: ; 0x02114434 stmdb sp!, {r4, r5, r6, lr} sub sp, sp, #8 mov r5, r0 ldr r0, _02114634 ; =data_027e0cbc mov r1, #0x2e bl func_0203d7e0 cmp r0, #0 beq _0211446c mov r1, #0 ldr r0, _02114638 ; =0x0000010f mov r2, r1 mov r3, r1 str r1, [sp] bl func_0203493c _0211446c: ldr r0, [r5, #0x10] mov r4, #0 mov r6, r4 cmp r0, #6 addls pc, pc, r0, lsl #2 b _02114584 _02114484: ; jump table b _02114584 ; case 0 b _02114584 ; case 1 b _021144a0 ; case 2 b _02114584 ; case 3 b _02114530 ; case 4 b _0211455c ; case 5 b _021144e8 ; case 6 _021144a0: ldr r0, [r5, #0x14] mov r1, #0x19000 mov r0, r0, lsl #0xc bl Divide mov r4, r0 mov r2, r4 mov r0, #0x32000 mov r1, r6 bl func_ov00_020d03f8 add r3, r0, #0x800 mov r2, r4 mov r0, #0x32000 mov r1, r6 mov r4, r3, asr #0xc bl func_ov00_020d03f8 add r0, r0, #0x800 mov r6, r0, asr #0xc b _02114584 _021144e8: ldr r0, [r5, #0x14] mov r1, #0x19000 mov r0, r0, lsl #0xc bl Divide mov r4, r0 mov r2, r4 mov r0, r6 mov r1, #0x32000 bl func_ov00_020d03f8 add r3, r0, #0x800 mov r2, r4 mov r0, r6 mov r1, #0x32000 mov r4, r3, asr #0xc bl func_ov00_020d03f8 add r0, r0, #0x800 mov r6, r0, asr #0xc b _02114584 _02114530: ldr r0, [r5, #0x14] mov r1, #0xa000 mov r0, r0, lsl #0xc bl Divide mov r2, r0 mov r0, r4 mov r1, #0x32000 bl func_ov00_020d03f8 add r0, r0, #0x800 mov r6, r0, asr #0xc b _02114584 _0211455c: ldr r0, [r5, #0x14] mov r1, #0xa000 mov r0, r0, lsl #0xc bl Divide mov r2, r0 mov r0, #0x32000 mov r1, r4 bl func_ov00_020d03f8 add r0, r0, #0x800 mov r6, r0, asr #0xc _02114584: ldr r0, [r5, #0x10] cmp r0, #0 cmpne r0, #1 beq _021145c4 mov r1, #0 ldr r0, _0211463c ; =0x00000112 mov r2, r1 rsb r3, r4, #0 str r1, [sp] bl func_0203493c mov r1, #0 mov r2, r6 mov r3, r1 add r0, r5, #0xa8 str r1, [sp] bl func_ov00_020d00c4 _021145c4: ldr r0, [r5, #0x10] cmp r0, #0 beq _021145e0 cmp r0, #1 addeq sp, sp, #8 ldmeqia sp!, {r4, r5, r6, pc} b _02114604 _021145e0: mov r2, #0 str r2, [sp] ldr r1, _02114640 ; =0x00000115 mov r3, r2 add r0, r5, #0x20 str r2, [sp, #4] bl func_02034b0c add sp, sp, #8 ldmia sp!, {r4, r5, r6, pc} _02114604: mov r1, #0 ldr r0, [r5, #8] mov r2, r1 mov r3, r1 blx func_ov10_02113890 mov r2, #0 ldr r0, [r5, #8] mov r3, r2 mov r1, #1 blx func_ov10_02113890 add sp, sp, #8 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 arm_func_end func_ov10_02114434 _02114634: .word data_027e0cbc _02114638: .word 0x0000010f _0211463c: .word 0x00000112 _02114640: .word 0x00000115 .global func_ov10_02114644 arm_func_start func_ov10_02114644 func_ov10_02114644: ; 0x02114644 stmdb sp!, {r4, lr} mov r4, r0 ldr r3, _02114680 ; =func_ov10_02113e6c add r0, r4, #0xa8 mov r1, #1 mov r2, #0x18 bl func_0204f754 add r0, r4, #0x20 bl func_020350ac mov r0, r4 blx func_ov10_02112f44 mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02114644 _02114680: .word func_ov10_02113e6c - 1 .global func_ov10_02114684 arm_func_start func_ov10_02114684 func_ov10_02114684: ; 0x02114684 stmdb sp!, {r4, lr} mov r4, r0 ldr r3, _021146b8 ; =func_ov10_02113e6c add r0, r4, #0xa8 mov r1, #1 mov r2, #0x18 bl func_0204f754 add r0, r4, #0x20 bl func_020350ac mov r0, r4 blx func_ov10_02112f44 mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02114684 _021146b8: .word func_ov10_02113e6c - 1 .global func_ov10_021146bc thumb_func_start func_ov10_021146bc func_ov10_021146bc: ; 0x021146bc push {r3, r4, r5, lr} add r5, r0, #0 add r4, r1, #0 blx func_020386d8 ldr r0, _021146d0 ; =data_ov10_0211ec4c str r0, [r5] str r4, [r5, #0x14] add r0, r5, #0 pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end func_ov10_021146bc _021146d0: .word data_ov10_0211ec4c .global func_ov10_021146d4 thumb_func_start func_ov10_021146d4 func_ov10_021146d4: ; 0x021146d4 push {r3, lr} ldrb r2, [r1, #1] ldr r3, [r0, #0x14] cmp r2, #0x11 bne _021146fe ldr r2, [r1, #4] cmp r2, #0 beq _021146ea cmp r2, #1 beq _021146f4 b _021146fe _021146ea: add r0, r3, #0 bl func_ov10_021149dc mov r0, #1 pop {r3, pc} _021146f4: add r0, r3, #0 bl func_ov10_02114fec mov r0, #1 pop {r3, pc} _021146fe: blx func_02037f58 pop {r3, pc} thumb_func_end func_ov10_021146d4 .global func_ov10_02114704 thumb_func_start func_ov10_02114704 func_ov10_02114704: ; 0x02114704 push {r4, lr} sub sp, #0x10 mov r2, #6 mov r3, #1 add r4, r0, #0 bl func_ov10_02112f18 ldr r0, _02114874 ; =data_ov10_0211ec28 ldr r3, _02114878 ; =func_ov10_02113e70 str r0, [r4] ldr r0, _0211487c ; =func_ov10_02113e6c mov r1, #8 str r0, [sp] add r0, r4, #0 add r0, #0x18 mov r2, #0x18 blx func_0204f614 add r1, r4, #0 mov r0, #0 add r1, #0xd8 mov r2, #4 blx func_020078f4 add r1, r4, #0 mov r0, #0 add r1, #0xdc mov r2, #4 blx func_020078f4 add r0, r4, #0 add r0, #0xe0 add r1, r4, #0 bl func_ov10_021146bc mov r1, #0x4a lsl r1, r1, #2 mov r3, #0 str r3, [r4, r1] add r0, r1, #4 str r3, [r4, r0] mov r0, #1 add r1, #8 str r0, [r4, r1] mov r1, #0x7f str r1, [sp] mov r0, #2 str r0, [sp, #4] add r0, r4, #0 str r3, [sp, #8] add r0, #0x18 add r1, #0x9c mov r2, #0xd str r3, [sp, #0xc] blx func_ov00_020cfed0 add r0, r4, #0 mov r1, #0x17 add r0, #0x2b strb r1, [r0] mov r1, #0x80 str r1, [sp] mov r0, #3 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x30 add r1, #0x9b mov r2, #0xe mov r3, #1 blx func_ov00_020cfed0 add r0, r4, #0 mov r1, #0x18 add r0, #0x43 strb r1, [r0] mov r1, #0x81 str r1, [sp] mov r3, #2 str r3, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x48 add r1, #0x9a mov r2, #0xf blx func_ov00_020cfed0 add r0, r4, #0 mov r1, #0x17 add r0, #0x5b strb r1, [r0] mov r1, #0x82 str r1, [sp] mov r3, #3 str r3, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x60 add r1, #0x99 mov r2, #0x10 blx func_ov00_020cfed0 add r0, r4, #0 mov r1, #0x18 add r0, #0x73 strb r1, [r0] mov r1, #0x83 str r1, [sp] mov r0, #2 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x78 add r1, #0x98 mov r2, #0x11 mov r3, #4 blx func_ov00_020cfed0 add r0, r4, #0 mov r1, #0x17 add r0, #0x8b strb r1, [r0] mov r1, #0x84 str r1, [sp] mov r0, #3 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x90 add r1, #0x97 mov r2, #0x12 mov r3, #5 blx func_ov00_020cfed0 add r0, r4, #0 mov r1, #0x18 add r0, #0xa3 strb r1, [r0] mov r1, #0x85 str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0xa8 add r1, #0x96 mov r2, #0x16 mov r3, #7 blx func_ov00_020cfed0 mov r1, #0x86 str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0xc0 add r1, #0x95 mov r2, #0x13 mov r3, #6 blx func_ov00_020cfed0 add r0, r4, #0 mov r1, #0x19 add r0, #0xd3 strb r1, [r0] add r0, r4, #0 add sp, #0x10 pop {r4, pc} nop thumb_func_end func_ov10_02114704 _02114874: .word data_ov10_0211ec28 _02114878: .word func_ov10_02113e70 - 1 _0211487c: .word func_ov10_02113e6c - 1 .global func_ov10_02114880 thumb_func_start func_ov10_02114880 func_ov10_02114880: ; 0x02114880 push {r4, lr} add r4, r0, #0 blx func_0203780c add r0, r4, #0 pop {r4, pc} thumb_func_end func_ov10_02114880 .global func_ov10_0211488c thumb_func_start func_ov10_0211488c func_ov10_0211488c: ; 0x0211488c push {r3, r4, r5, lr} add r5, r0, #0 add r4, r1, #0 mov r2, #0 add r3, r5, #0 mov r1, #1 _02114898: add r0, r3, #0 add r0, #0x25 add r2, r2, #1 add r3, #0x18 strb r1, [r0] cmp r2, #8 blt _02114898 ldr r2, _02114908 ; =0x04001000 ldr r0, _0211490c ; =0xffffe0ff ldr r1, [r2] and r1, r0 mov r0, #5 lsl r0, r0, #0xa orr r0, r1 str r0, [r2] mov r2, #0 ldr r0, _02114910 ; =data_027e0cbc mov r1, #0x31 sub r3, r2, #1 blx func_0203d77c ldr r2, _02114914 ; =data_ov00_020ec754 add r0, r5, #0 ldr r1, [r2] add r0, #0xd8 str r1, [r0] add r0, r5, #0 ldr r1, [r2] add r0, #0xdc str r1, [r0] mov r1, #0x47 ldr r0, _02114918 ; =func_ov10_02115030 lsl r1, r1, #2 str r0, [r5, r1] add r0, r1, #4 str r5, [r5, r0] add r0, r5, r1 bl func_0200b954 ldr r0, _0211491c ; =data_ov00_020ee734 blx func_ov10_0211e5cc add r0, r5, #0 add r1, r4, #0 blx func_ov10_02112f48 ldr r0, _02114920 ; =data_ov00_020ee820 ldrb r0, [r0, #2] cmp r0, #0 bne _02114904 add r0, r5, #0 mov r1, #3 bl func_ov10_0211495c _02114904: pop {r3, r4, r5, pc} nop thumb_func_end func_ov10_0211488c _02114908: .word 0x04001000 _0211490c: .word 0xffffe0ff _02114910: .word data_027e0cbc _02114914: .word data_ov00_020ec754 _02114918: .word func_ov10_02115030 _0211491c: .word data_ov00_020ee734 _02114920: .word data_ov00_020ee820 .global func_ov10_02114924 thumb_func_start func_ov10_02114924 func_ov10_02114924: ; 0x02114924 push {r4, lr} ldr r2, _02114950 ; =0x04001000 add r4, r0, #0 ldr r1, [r2] ldr r0, _02114954 ; =0xffffe0ff and r1, r0 mov r0, #7 lsl r0, r0, #0xa orr r0, r1 str r0, [r2] mov r0, #0x47 lsl r0, r0, #2 add r0, r4, r0 bl func_0200b974 add r0, r4, #0 blx func_ov10_02112f5c ldr r0, _02114958 ; =data_ov00_020ee734 blx func_ov10_0211e5f8 pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_02114924 _02114950: .word 0x04001000 _02114954: .word 0xffffe0ff _02114958: .word data_ov00_020ee734 .global func_ov10_0211495c thumb_func_start func_ov10_0211495c func_ov10_0211495c: ; 0x0211495c push {r4, r5, r6, lr} add r4, r0, #0 ldr r6, [r4, #0x10] add r5, r1, #0 cmp r6, #0 beq _0211496e ldr r0, [r4, #8] bl func_ov10_02113da4 _0211496e: cmp r5, #4 bhi _021149ba add r0, r5, r5 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _0211497e: ; jump table .short _021149ba - _0211497e - 2 ; case 0 .short _02114988 - _0211497e - 2 ; case 1 .short _02114992 - _0211497e - 2 ; case 2 .short _021149a8 - _0211497e - 2 ; case 3 .short _021149a8 - _0211497e - 2 ; case 4 _02114988: ldr r0, [r4, #8] ldr r1, _021149c8 ; =0x0013000e bl func_ov10_02113d70 b _021149ba _02114992: ldr r0, [r4, #8] ldr r1, _021149cc ; =0x00130027 bl func_ov10_02113d70 mov r0, #0x4a mov r1, #0 lsl r0, r0, #2 str r1, [r4, r0] add r0, r0, #4 str r1, [r4, r0] b _021149ba _021149a8: mov r2, #0 ldr r0, _021149d0 ; =data_027e0c68 ldr r1, _021149d4 ; =0x0013002a mvn r2, r2 blx func_02036edc ldr r1, _021149d8 ; =0x00000151 mov r2, #7 strb r2, [r0, r1] _021149ba: mov r0, #0 str r0, [r4, #0x14] mov r0, #0x13 lsl r0, r0, #4 str r6, [r4, r0] str r5, [r4, #0x10] pop {r4, r5, r6, pc} .align 2, 0 thumb_func_end func_ov10_0211495c _021149c8: .word 0x0013000e _021149cc: .word 0x00130027 _021149d0: .word data_027e0c68 _021149d4: .word 0x0013002a _021149d8: .word 0x00000151 .global func_ov10_021149dc thumb_func_start func_ov10_021149dc func_ov10_021149dc: ; 0x021149dc push {r4, lr} add r4, r0, #0 ldr r0, [r4, #8] bl func_ov10_02113a58 add r1, r4, #0 add r1, #0xdc ldr r0, _02114a10 ; =data_027e0d54 ldr r1, [r1] blx func_ov10_02118a14 add r0, r4, #0 mov r1, #5 bl func_ov10_0211495c add r0, r4, #0 bl func_ov10_02115014 cmp r0, #0 bne _02114a0c ldr r0, _02114a14 ; =data_ov00_020eec9c mov r1, #0x33 blx func_ov00_020d77e4 _02114a0c: pop {r4, pc} nop thumb_func_end func_ov10_021149dc _02114a10: .word data_027e0d54 _02114a14: .word data_ov00_020eec9c .global func_ov10_02114a18 thumb_func_start func_ov10_02114a18 func_ov10_02114a18: ; 0x02114a18 push {r4, lr} add r4, r0, #0 ldr r0, [r4, #0x14] add r0, r0, #1 str r0, [r4, #0x14] bpl _02114a28 mov r0, #0 str r0, [r4, #0x14] _02114a28: add r0, r4, #0 add r0, #0xf8 ldr r1, [r0] ldr r0, _02114b8c ; =0xffff0000 and r1, r0 mov r0, #1 lsl r0, r0, #0x18 cmp r1, r0 beq _02114a44 add r1, r4, #0 ldr r0, _02114b90 ; =data_027e0c68 add r1, #0xe0 blx func_02036888 _02114a44: ldr r0, [r4, #0x10] cmp r0, #5 bhi _02114a6a add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _02114a56: ; jump table .short _02114a62 - _02114a56 - 2 ; case 0 .short _02114a76 - _02114a56 - 2 ; case 1 .short _02114aba - _02114a56 - 2 ; case 2 .short _02114b1c - _02114a56 - 2 ; case 3 .short _02114b1c - _02114a56 - 2 ; case 4 .short _02114b50 - _02114a56 - 2 ; case 5 _02114a62: ldr r0, [r4, #8] ldr r0, [r0, #0x68] cmp r0, #1 beq _02114a6c _02114a6a: b _02114b88 _02114a6c: add r0, r4, #0 mov r1, #1 bl func_ov10_0211495c pop {r4, pc} _02114a76: add r0, r4, #0 add r0, #0xf8 ldr r1, [r0] ldr r0, _02114b8c ; =0xffff0000 and r1, r0 mov r0, #1 lsl r0, r0, #0x18 cmp r1, r0 bne _02114b88 ldr r0, _02114b94 ; =data_027e05f8 ldrh r1, [r0, #2] mov r0, #2 tst r0, r1 beq _02114ab2 add r0, r4, #0 bl func_ov10_02115014 cmp r0, #0 beq _02114aaa add r4, #0xe0 ldr r0, _02114b90 ; =data_027e0c68 ldr r2, _02114b98 ; =0x00ca000e add r1, r4, #0 blx func_02036ce4 pop {r4, pc} _02114aaa: add r0, r4, #0 bl func_ov10_021149dc pop {r4, pc} _02114ab2: add r0, r4, #0 bl func_ov10_02114bb0 pop {r4, pc} _02114aba: ldr r0, _02114b9c ; =data_ov00_020eec68 blx func_ov00_020d71a0 ldr r0, _02114ba0 ; =data_ov00_020eed2c blx func_ov00_020d873c mov r1, #0x4a lsl r1, r1, #2 ldr r2, [r4, r1] cmp r0, r2 blt _02114ada str r0, [r4, r1] mov r2, #0 add r0, r1, #4 str r2, [r4, r0] b _02114afa _02114ada: add r0, r1, #4 ldr r0, [r4, r0] add r2, r0, #1 add r0, r1, #4 str r2, [r4, r0] ldr r0, [r4, r0] cmp r0, #0xa ble _02114afa ldr r0, [r4, r1] cmp r0, #1 blt _02114afa sub r0, r0, #1 str r0, [r4, r1] mov r2, #0 add r0, r1, #4 str r2, [r4, r0] _02114afa: ldr r0, _02114b94 ; =data_027e05f8 ldrh r1, [r0, #2] mov r0, #2 tst r0, r1 beq _02114b14 add r0, r4, #0 mov r1, #1 bl func_ov10_0211495c mov r0, #1 add r4, #0xb5 strb r0, [r4] pop {r4, pc} _02114b14: add r0, r4, #0 bl func_ov10_02114bb0 pop {r4, pc} _02114b1c: ldr r0, _02114ba4 ; =data_ov00_020ee820 ldrb r0, [r0, #2] cmp r0, #0 beq _02114b88 ldr r0, _02114b90 ; =data_027e0c68 blx func_020366c4 blx func_02038b40 mov r0, #0x13 lsl r0, r0, #4 ldr r0, [r4, r0] cmp r0, #2 beq _02114b3c cmp r0, #4 bne _02114b46 _02114b3c: add r0, r4, #0 mov r1, #2 bl func_ov10_0211495c pop {r4, pc} _02114b46: add r0, r4, #0 mov r1, #1 bl func_ov10_0211495c pop {r4, pc} _02114b50: ldr r0, [r4, #8] ldr r0, [r0, #0x68] cmp r0, #0 bne _02114b88 ldr r0, _02114ba8 ; =data_027e0d54 ldrb r0, [r0, #0xd] cmp r0, #0 bne _02114b64 mov r0, #1 b _02114b66 _02114b64: mov r0, #0 _02114b66: cmp r0, #0 beq _02114b88 mov r2, #0 ldr r0, _02114bac ; =data_027e0cbc mov r1, #0x2f sub r3, r2, #1 blx func_0203d77c ldr r0, [r4, #8] mov r1, #3 add r0, #0x10 mov r2, #6 blx func_ov10_0211c784 ldr r0, [r4, #8] bl func_ov10_02113a90 _02114b88: pop {r4, pc} nop thumb_func_end func_ov10_02114a18 _02114b8c: .word 0xffff0000 _02114b90: .word data_027e0c68 _02114b94: .word data_027e05f8 _02114b98: .word 0x00ca000e _02114b9c: .word data_ov00_020eec68 _02114ba0: .word data_ov00_020eed2c _02114ba4: .word data_ov00_020ee820 _02114ba8: .word data_027e0d54 _02114bac: .word data_027e0cbc .global func_ov10_02114bb0 thumb_func_start func_ov10_02114bb0 func_ov10_02114bb0: ; 0x02114bb0 push {r3, r4, r5, r6, r7, lr} sub sp, #8 str r0, [sp] ldr r0, [r0, #0x10] cmp r0, #1 beq _02114bc2 cmp r0, #2 beq _02114bfc b _02114c26 _02114bc2: ldr r6, [sp] mov r7, #0 add r4, r6, #0 add r4, #0x18 _02114bca: ldrh r0, [r6, #0x22] mov r1, #0 add r2, r1, #0 str r0, [sp, #4] add r0, r4, #0 ldr r5, [r0] add r3, r1, #0 ldr r5, [r5] blx r5 add r2, r0, #0 ldr r0, [sp] ldr r1, [sp, #4] bl func_ov10_02114c2c cmp r0, #0 beq _02114bf0 add sp, #8 mov r0, #1 pop {r3, r4, r5, r6, r7, pc} _02114bf0: add r7, r7, #1 add r6, #0x18 add r4, #0x18 cmp r7, #8 blt _02114bca b _02114c26 _02114bfc: ldr r0, [sp] mov r1, #0 add r0, #0xb2 ldrh r5, [r0] ldr r0, [sp] add r2, r1, #0 add r0, #0xa8 ldr r4, [r0] add r3, r1, #0 ldr r4, [r4] blx r4 add r2, r0, #0 ldr r0, [sp] add r1, r5, #0 bl func_ov10_02114c2c cmp r0, #0 beq _02114c26 add sp, #8 mov r0, #1 pop {r3, r4, r5, r6, r7, pc} _02114c26: mov r0, #0 add sp, #8 pop {r3, r4, r5, r6, r7, pc} thumb_func_end func_ov10_02114bb0 .global func_ov10_02114c2c thumb_func_start func_ov10_02114c2c func_ov10_02114c2c: ; 0x02114c2c push {r3, r4, r5, lr} mov r3, #8 add r4, r0, #0 tst r2, r3 bne _02114c3a mov r0, #0 pop {r3, r4, r5, pc} _02114c3a: sub r1, #0x7f cmp r1, #7 bls _02114c42 b _02114e20 _02114c42: add r1, r1, r1 add r1, pc ldrh r1, [r1, #6] lsl r1, r1, #0x10 asr r1, r1, #0x10 add pc, r1 _02114c4e: ; jump table .short _02114c5e - _02114c4e - 2 ; case 0 .short _02114c9e - _02114c4e - 2 ; case 1 .short _02114cde - _02114c4e - 2 ; case 2 .short _02114d20 - _02114c4e - 2 ; case 3 .short _02114d62 - _02114c4e - 2 ; case 4 .short _02114da4 - _02114c4e - 2 ; case 5 .short _02114de6 - _02114c4e - 2 ; case 6 .short _02114e1a - _02114c4e - 2 ; case 7 _02114c5e: ldr r0, _02114e24 ; =data_ov00_020eec9c mov r1, #0x2e blx func_ov00_020d77e4 add r0, r4, #0 add r0, #0xdc ldr r0, [r0] mov r1, #3 lsl r0, r0, #0x18 lsr r0, r0, #0x18 add r0, r0, #2 blx func_02002c14 add r0, r4, #0 add r0, #0xdc ldr r2, [r0] mov r0, #0xff bic r2, r0 lsl r0, r1, #0x18 lsr r0, r0, #0x18 add r1, r2, #0 orr r1, r0 add r0, r4, #0 add r0, #0xdc str r1, [r0] add r4, #0xdc add r0, r4, #0 mov r1, #1 blx func_ov10_021199bc mov r0, #1 pop {r3, r4, r5, pc} _02114c9e: ldr r0, _02114e24 ; =data_ov00_020eec9c mov r1, #0x2f blx func_ov00_020d77e4 add r0, r4, #0 add r0, #0xdc ldr r0, [r0] mov r1, #3 lsl r0, r0, #0x18 lsr r0, r0, #0x18 add r0, r0, #4 blx func_02002c14 add r0, r4, #0 add r0, #0xdc ldr r2, [r0] mov r0, #0xff bic r2, r0 lsl r0, r1, #0x18 lsr r0, r0, #0x18 add r1, r2, #0 orr r1, r0 add r0, r4, #0 add r0, #0xdc str r1, [r0] add r4, #0xdc add r0, r4, #0 mov r1, #1 blx func_ov10_021199bc mov r0, #1 pop {r3, r4, r5, pc} _02114cde: ldr r0, _02114e24 ; =data_ov00_020eec9c mov r1, #0x30 blx func_ov00_020d77e4 add r1, r4, #0 add r1, #0xdc ldr r2, [r1] ldr r1, _02114e28 ; =0xffff00ff add r0, r4, #0 and r1, r2 add r2, r4, #0 add r2, #0xdc ldr r2, [r2] add r4, #0xdc lsl r2, r2, #0x10 lsr r2, r2, #0x18 add r2, r2, #3 lsr r5, r2, #0x1f lsl r3, r2, #0x1e sub r3, r3, r5 mov r2, #0x1e ror r3, r2 add r2, r5, r3 lsl r2, r2, #0x18 lsr r2, r2, #0x10 orr r1, r2 str r1, [r4] add r0, #0xdc mov r1, #1 blx func_ov10_021199bc mov r0, #1 pop {r3, r4, r5, pc} _02114d20: ldr r0, _02114e24 ; =data_ov00_020eec9c mov r1, #0x30 blx func_ov00_020d77e4 add r1, r4, #0 add r1, #0xdc ldr r2, [r1] ldr r1, _02114e28 ; =0xffff00ff add r0, r4, #0 and r1, r2 add r2, r4, #0 add r2, #0xdc ldr r2, [r2] add r4, #0xdc lsl r2, r2, #0x10 lsr r2, r2, #0x18 add r2, r2, #5 lsr r5, r2, #0x1f lsl r3, r2, #0x1e sub r3, r3, r5 mov r2, #0x1e ror r3, r2 add r2, r5, r3 lsl r2, r2, #0x18 lsr r2, r2, #0x10 orr r1, r2 str r1, [r4] add r0, #0xdc mov r1, #1 blx func_ov10_021199bc mov r0, #1 pop {r3, r4, r5, pc} _02114d62: ldr r0, _02114e24 ; =data_ov00_020eec9c mov r1, #0x31 blx func_ov00_020d77e4 add r1, r4, #0 add r1, #0xdc ldr r2, [r1] ldr r1, _02114e2c ; =0xff00ffff add r0, r4, #0 and r1, r2 add r2, r4, #0 add r2, #0xdc ldr r2, [r2] add r4, #0xdc lsl r2, r2, #8 lsr r2, r2, #0x18 add r2, r2, #3 lsr r5, r2, #0x1f lsl r3, r2, #0x1f sub r3, r3, r5 mov r2, #0x1f ror r3, r2 add r2, r5, r3 lsl r2, r2, #0x18 lsr r2, r2, #8 orr r1, r2 str r1, [r4] add r0, #0xdc mov r1, #1 blx func_ov10_021199bc mov r0, #1 pop {r3, r4, r5, pc} _02114da4: ldr r0, _02114e24 ; =data_ov00_020eec9c mov r1, #0x32 blx func_ov00_020d77e4 add r1, r4, #0 add r1, #0xdc ldr r2, [r1] ldr r1, _02114e2c ; =0xff00ffff add r0, r4, #0 and r1, r2 add r2, r4, #0 add r2, #0xdc ldr r2, [r2] add r4, #0xdc lsl r2, r2, #8 lsr r2, r2, #0x18 add r2, r2, #1 lsr r5, r2, #0x1f lsl r3, r2, #0x1f sub r3, r3, r5 mov r2, #0x1f ror r3, r2 add r2, r5, r3 lsl r2, r2, #0x18 lsr r2, r2, #8 orr r1, r2 str r1, [r4] add r0, #0xdc mov r1, #1 blx func_ov10_021199bc mov r0, #1 pop {r3, r4, r5, pc} _02114de6: ldr r1, [r4, #0x10] cmp r1, #2 bne _02114df4 mov r1, #1 bl func_ov10_0211495c b _02114e16 _02114df4: bl func_ov10_02115014 cmp r0, #0 beq _02114e10 ldr r0, [r4, #8] bl func_ov10_02113da4 add r4, #0xe0 ldr r0, _02114e30 ; =data_027e0c68 ldr r2, _02114e34 ; =0x00ca000e add r1, r4, #0 blx func_02036ce4 b _02114e16 _02114e10: add r0, r4, #0 bl func_ov10_021149dc _02114e16: mov r0, #1 pop {r3, r4, r5, pc} _02114e1a: mov r1, #2 bl func_ov10_0211495c _02114e20: mov r0, #0 pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end func_ov10_02114c2c _02114e24: .word data_ov00_020eec9c _02114e28: .word 0xffff00ff _02114e2c: .word 0xff00ffff _02114e30: .word data_027e0c68 _02114e34: .word 0x00ca000e .global func_ov10_02114e38 thumb_func_start func_ov10_02114e38 func_ov10_02114e38: ; 0x02114e38 push {r4, r5, r6, lr} sub sp, #8 mov r1, #0 add r5, r0, #0 ldr r0, _02114fe0 ; =0x0000011b str r1, [sp] add r2, r1, #0 add r3, r1, #0 blx func_0203493c ldr r2, [r5, #0x10] cmp r2, #2 beq _02114e5e cmp r2, #3 beq _02114e5a cmp r2, #4 bne _02114e5c _02114e5a: b _02114fda _02114e5c: b _02114ef2 _02114e5e: mov r1, #0 mov r0, #0x47 lsl r0, r0, #2 add r2, r1, #0 add r3, r1, #0 str r1, [sp] blx func_0203493c mov r0, #0x4a lsl r0, r0, #2 ldr r1, [r5, r0] cmp r1, #1 blt _02114e86 mov r2, #0 sub r0, #0xc mov r1, #1 add r3, r2, #0 str r2, [sp] blx func_0203493c _02114e86: mov r0, #0x4a lsl r0, r0, #2 ldr r1, [r5, r0] cmp r1, #2 blt _02114e9e mov r2, #0 sub r0, #0xc mov r1, #2 add r3, r2, #0 str r2, [sp] blx func_0203493c _02114e9e: mov r0, #0x4a lsl r0, r0, #2 ldr r1, [r5, r0] cmp r1, #3 blt _02114eb6 mov r2, #0 sub r0, #0xc mov r1, #3 add r3, r2, #0 str r2, [sp] blx func_0203493c _02114eb6: mov r0, #0x4a lsl r0, r0, #2 ldr r1, [r5, r0] cmp r1, #4 blt _02114ece mov r2, #0 sub r0, #0xc mov r1, #4 add r3, r2, #0 str r2, [sp] blx func_0203493c _02114ece: mov r2, #0 mov r0, #0x47 lsl r0, r0, #2 mov r1, #5 add r3, r2, #0 str r2, [sp] blx func_0203493c mov r1, #0 add r5, #0xa8 add r0, r5, #0 add r2, r1, #0 add r3, r1, #0 str r1, [sp] blx func_ov00_020d00c4 add sp, #8 pop {r4, r5, r6, pc} _02114ef2: add r0, r5, #0 add r0, #0xf8 ldr r1, [r0] ldr r0, _02114fe4 ; =0xffff0000 and r1, r0 mov r0, #1 lsl r0, r0, #0x18 cmp r1, r0 bne _02114fda cmp r2, #5 bne _02114f12 add r0, r5, #0 bl func_ov10_02115014 cmp r0, #0 bne _02114fda _02114f12: add r0, r5, #0 add r0, #0xdc ldr r0, [r0] mov r1, #0 lsl r0, r0, #0x18 lsr r0, r0, #0x18 beq _02114f2a cmp r0, #1 beq _02114f2e cmp r0, #2 beq _02114f32 b _02114f34 _02114f2a: mov r1, #6 b _02114f34 _02114f2e: mov r1, #5 b _02114f34 _02114f32: mov r1, #4 _02114f34: mov r3, #0 str r3, [sp] ldr r0, _02114fe0 ; =0x0000011b mov r2, #4 str r3, [sp, #4] blx func_020349cc mov r3, #0 str r3, [sp] add r1, r5, #0 str r3, [sp, #4] add r1, #0xdc ldr r1, [r1] ldr r0, _02114fe0 ; =0x0000011b lsl r1, r1, #0x10 lsr r2, r1, #0x18 ldr r1, _02114fe8 ; =data_ov10_0211e764 ldrb r1, [r1, r2] mov r2, #7 blx func_020349cc mov r3, #0 str r3, [sp] add r1, r5, #0 str r3, [sp, #4] add r1, #0xdc ldr r1, [r1] ldr r0, _02114fe0 ; =0x0000011b lsl r1, r1, #8 lsr r1, r1, #0x18 add r1, #0xb mov r2, #0xb blx func_020349cc mov r2, #0 ldr r0, _02114fe0 ; =0x0000011b mov r1, #1 add r3, r2, #0 str r2, [sp] blx func_0203493c mov r2, #0 ldr r0, _02114fe0 ; =0x0000011b mov r1, #2 add r3, r2, #0 str r2, [sp] blx func_0203493c mov r2, #0 ldr r0, _02114fe0 ; =0x0000011b mov r1, #3 add r3, r2, #0 str r2, [sp] blx func_0203493c mov r2, #0 ldr r0, _02114fe0 ; =0x0000011b mov r1, #0x14 add r3, r2, #0 str r2, [sp] blx func_0203493c mov r2, #0 ldr r0, _02114fe0 ; =0x0000011b mov r1, #0x15 add r3, r2, #0 str r2, [sp] blx func_0203493c mov r4, #0 add r5, #0x18 add r6, r4, #0 _02114fc4: add r0, r5, #0 add r1, r6, #0 add r2, r6, #0 add r3, r6, #0 str r6, [sp] blx func_ov00_020d00c4 add r4, r4, #1 add r5, #0x18 cmp r4, #8 blt _02114fc4 _02114fda: add sp, #8 pop {r4, r5, r6, pc} nop thumb_func_end func_ov10_02114e38 _02114fe0: .word 0x0000011b _02114fe4: .word 0xffff0000 _02114fe8: .word data_ov10_0211e764 .global func_ov10_02114fec thumb_func_start func_ov10_02114fec func_ov10_02114fec: ; 0x02114fec push {r4, lr} add r4, r0, #0 add r0, #0xd8 mov r1, #1 blx func_ov10_021199bc add r0, r4, #0 add r0, #0xd8 ldr r1, [r0] add r0, r4, #0 add r0, #0xdc str r1, [r0] ldr r0, [r4, #8] ldr r1, _02115010 ; =0x0013000e bl func_ov10_02113d70 pop {r4, pc} nop thumb_func_end func_ov10_02114fec _02115010: .word 0x0013000e .global func_ov10_02115014 thumb_func_start func_ov10_02115014 func_ov10_02115014: ; 0x02115014 push {r3, lr} add r1, r0, #0 add r1, #0xdc add r0, #0xd8 mov r2, #4 blx func_0204366c cmp r0, #0 beq _0211502a mov r0, #1 pop {r3, pc} _0211502a: mov r0, #0 pop {r3, pc} .align 2, 0 thumb_func_end func_ov10_02115014 .global func_ov10_02115030 thumb_func_start func_ov10_02115030 func_ov10_02115030: ; 0x02115030 push {r4, lr} add r4, r0, #0 ldr r0, _0211508c ; =data_027e0c68 blx func_020366c4 cmp r0, #0 beq _02115060 ldr r0, _0211508c ; =data_027e0c68 blx func_020366c4 mov r1, #0x57 lsl r1, r1, #2 ldrsh r0, [r0, r1] cmp r0, #0 ble _02115060 add r0, r4, #0 ldr r1, _02115090 ; =0x0000ffff add r0, #0xf8 str r1, [r0] ldr r0, _0211508c ; =data_027e0c68 blx func_020366c4 blx func_02038b40 _02115060: ldr r0, [r4, #8] ldr r0, [r0, #0x68] cmp r0, #1 beq _0211506c cmp r0, #2 bne _02115088 _0211506c: ldr r0, [r4, #0x10] cmp r0, #2 beq _02115076 cmp r0, #4 bne _02115080 _02115076: add r0, r4, #0 mov r1, #4 bl func_ov10_0211495c pop {r4, pc} _02115080: add r0, r4, #0 mov r1, #3 bl func_ov10_0211495c _02115088: pop {r4, pc} nop thumb_func_end func_ov10_02115030 _0211508c: .word data_027e0c68 _02115090: .word 0x0000ffff .global func_ov10_02115094 arm_func_start func_ov10_02115094 func_ov10_02115094: ; 0x02115094 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0xe0 bl func_0203780c ldr r3, _021150d0 ; =func_ov10_02113e6c add r0, r4, #0x18 mov r1, #8 mov r2, #0x18 bl func_0204f754 mov r0, r4 blx func_ov10_02112f44 mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02115094 _021150d0: .word func_ov10_02113e6c - 1 .global func_ov10_021150d4 arm_func_start func_ov10_021150d4 func_ov10_021150d4: ; 0x021150d4 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0xe0 bl func_0203780c ldr r3, _02115108 ; =func_ov10_02113e6c add r0, r4, #0x18 mov r1, #8 mov r2, #0x18 bl func_0204f754 mov r0, r4 blx func_ov10_02112f44 mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_021150d4 _02115108: .word func_ov10_02113e6c - 1 .global func_ov10_0211510c arm_func_start func_ov10_0211510c func_ov10_0211510c: ; 0x0211510c stmdb sp!, {r4, lr} mov r4, r0 bl func_0203780c mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211510c .global func_ov10_02115128 arm_func_start func_ov10_02115128 func_ov10_02115128: ; 0x02115128 stmdb sp!, {r3, lr} ldr r1, [r0, #0x14] adds r1, r1, #1 str r1, [r0, #0x14] movmi r1, #0 strmi r1, [r0, #0x14] ldr r1, [r0, #0x10] cmp r1, #0 beq _02115158 cmp r1, #1 beq _0211519c ldmia sp!, {r3, pc} _02115158: ldr r1, _021151d4 ; =data_027e0d54 ldrb r1, [r1, #0xd] cmp r1, #0 moveq r1, #1 movne r1, #0 cmp r1, #0 ldmeqia sp!, {r3, pc} ldr r1, _021151d4 ; =data_027e0d54 ldr r0, [r0, #8] ldrb r1, [r1, #0xc] add r0, r0, #0x10 cmp r1, #0 movne r2, #0 moveq r2, #2 mov r1, #1 bl func_ov10_0211c784 ldmia sp!, {r3, pc} _0211519c: ldr r1, _021151d8 ; =data_027e0d78 ldrh r1, [r1, #0x34] tst r1, #2 ldmeqia sp!, {r3, pc} ldr r1, _021151d4 ; =data_027e0d54 ldr r0, [r0, #8] ldrb r1, [r1, #0xc] add r0, r0, #0x10 cmp r1, #0 movne r2, #0 moveq r2, #2 mov r1, #1 bl func_ov10_0211c784 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov10_02115128 _021151d4: .word data_027e0d54 _021151d8: .word data_027e0d78 .global func_ov10_021151dc arm_func_start func_ov10_021151dc func_ov10_021151dc: ; 0x021151dc stmdb sp!, {r3, lr} ldr r0, _02115210 ; =data_027e0cbc mov r1, #0x2e bl func_0203d7e0 cmp r0, #0 ldmeqia sp!, {r3, pc} mov r1, #0 ldr r0, _02115214 ; =0x0000010f mov r2, r1 mov r3, r1 str r1, [sp] bl func_0203493c ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov10_021151dc _02115210: .word data_027e0cbc _02115214: .word 0x0000010f .global func_ov10_02115218 arm_func_start func_ov10_02115218 func_ov10_02115218: ; 0x02115218 stmdb sp!, {r4, lr} mov r4, r0 blx func_ov10_02112f44 mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_02115218 .global func_ov10_02115234 arm_func_start func_ov10_02115234 func_ov10_02115234: ; 0x02115234 stmdb sp!, {r4, lr} mov r4, r0 blx func_ov10_02112f44 mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_02115234 .global func_ov10_02115248 arm_func_start func_ov10_02115248 func_ov10_02115248: ; 0x02115248 stmdb sp!, {r3, r4, r5, lr} mov r5, r0 mov r4, r1 bl func_020386d8 ldr r1, _02115274 ; =data_ov10_0211ed10 mov r0, #2 str r1, [r5] str r0, [r5, #0x3c] mov r0, r5 str r4, [r5, #0x14] ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov10_02115248 _02115274: .word data_ov10_0211ed10 .global func_ov10_02115278 arm_func_start func_ov10_02115278 func_ov10_02115278: ; 0x02115278 stmdb sp!, {r3, r4, r5, lr} mov r4, r0 ldrb r2, [r4, #0x1c] cmp r2, #1 bne _02115360 ldrsh r0, [r4, #0x1e] cmp r0, #0 ble _02115324 sub r0, r0, #1 strh r0, [r4, #0x1e] ldrsh r0, [r4, #0x1e] cmp r0, #0x14 ldmneia sp!, {r3, r4, r5, pc} ldr r0, [r4, #0x3c] cmp r0, #0 beq _021152c4 cmp r0, #1 beq _02115300 ldmia sp!, {r3, r4, r5, pc} _021152c4: ldr r0, _02115368 ; =data_027e0d54 ldrh r0, [r0, #0x16] cmp r0, #0 moveq r0, #1 movne r0, #0 mov r0, r0, lsl #0x10 mov r5, r0, lsr #0x10 ldr r0, _02115368 ; =data_027e0d54 mov r1, r5 bl func_ov10_02118390 ldr r0, [r4, #0x14] mov r1, #5 strb r5, [r0, #0xb8] bl func_ov10_02115534 ldmia sp!, {r3, r4, r5, pc} _02115300: ldr r0, _02115368 ; =data_027e0d54 bl func_ov10_021184e0 ldr r1, _02115368 ; =data_027e0d54 ldr r0, [r4, #0x14] ldrh r2, [r1, #0x16] mov r1, #5 strb r2, [r0, #0xb8] bl func_ov10_02115534 ldmia sp!, {r3, r4, r5, pc} _02115324: ldr r0, _02115368 ; =data_027e0d54 ldrb r0, [r0, #0xd] cmp r0, #0 moveq r0, #1 movne r0, #0 cmp r0, #0 ldmeqia sp!, {r3, r4, r5, pc} mov r0, r1 bl func_02038b40 mov r2, #0 ldr r0, _0211536c ; =data_ov00_020eec9c mov r1, #0x18 strb r2, [r4, #0x1c] bl func_ov00_020d77e4 ldmia sp!, {r3, r4, r5, pc} _02115360: bl func_02037854 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov10_02115278 _02115368: .word data_027e0d54 _0211536c: .word data_ov00_020eec9c .global func_ov10_02115370 arm_func_start func_ov10_02115370 func_ov10_02115370: ; 0x02115370 stmdb sp!, {r3, lr} ldrb r2, [r1, #1] cmp r2, #0x1e bne _021153c4 ldr r2, [r1, #4] cmp r2, #0 beq _02115398 cmp r2, #1 beq _021153b0 b _021153c4 _02115398: mov r1, #0 str r1, [r0, #0x3c] mov r1, #1 strb r1, [r0, #0x1c] mov r0, r1 ldmia sp!, {r3, pc} _021153b0: mov r1, #1 str r1, [r0, #0x3c] strb r1, [r0, #0x1c] mov r0, r1 ldmia sp!, {r3, pc} _021153c4: bl func_02037f58 ldmia sp!, {r3, pc} arm_func_end func_ov10_02115370 .global func_ov10_021153cc arm_func_start func_ov10_021153cc func_ov10_021153cc: ; 0x021153cc stmdb sp!, {r0, r1, r2, r3} ldr r2, [sp, #8] ldr r1, _02115418 ; =0x00fe0001 ldrb r3, [r2, #3] ldrh r2, [r2, #4] orr r2, r2, r3, lsl #16 cmp r2, r1 bne _02115408 ldr r1, _0211541c ; =data_027e0d54 ldr r2, _02115420 ; =data_ov10_0211e768 ldrh r1, [r1, #0x16] add sp, sp, #0x10 add r1, r2, r1, lsl #3 str r1, [r0] bx lr _02115408: mov r1, #0 str r1, [r0] add sp, sp, #0x10 bx lr .align 2, 0 arm_func_end func_ov10_021153cc _02115418: .word 0x00fe0001 _0211541c: .word data_027e0d54 _02115420: .word data_ov10_0211e768 .global func_ov10_02115424 thumb_func_start func_ov10_02115424 func_ov10_02115424: ; 0x02115424 push {r4, lr} sub sp, #0x10 mov r2, #6 mov r3, #1 add r4, r0, #0 bl func_ov10_02112f18 ldr r0, _021154e8 ; =data_ov10_0211ecec ldr r3, _021154ec ; =func_ov10_02113e70 str r0, [r4] ldr r0, _021154f0 ; =func_ov10_02113e6c mov r1, #4 str r0, [sp] add r0, r4, #0 add r0, #0x18 mov r2, #0x18 blx func_0204f614 add r0, r4, #0 add r0, #0x78 add r1, r4, #0 blx func_ov10_02115248 mov r1, #0 add r0, r4, #0 mov r2, #0 mvn r1, r1 add r0, #0xb8 strb r1, [r0] mov r1, #0x56 str r1, [sp] mov r0, #1 str r0, [sp, #4] add r0, r4, #0 str r2, [sp, #8] add r0, #0x48 add r1, #0xbd add r3, r2, #0 str r2, [sp, #0xc] blx func_ov00_020cfed0 add r0, r4, #0 mov r2, #1 mov r1, #4 add r0, #0x5b strb r1, [r0] mov r1, #0x57 str r1, [sp] str r2, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x18 add r1, #0xbc add r3, r2, #0 blx func_ov00_020cfed0 add r0, r4, #0 mov r2, #2 mov r1, #5 add r0, #0x2b strb r1, [r0] mov r1, #0x58 str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x30 add r1, #0xbb add r3, r2, #0 blx func_ov00_020cfed0 add r0, r4, #0 mov r2, #3 mov r1, #6 add r0, #0x43 strb r1, [r0] mov r1, #0x59 str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x60 add r1, #0xba add r3, r2, #0 blx func_ov00_020cfed0 add r0, r4, #0 add sp, #0x10 pop {r4, pc} nop thumb_func_end func_ov10_02115424 _021154e8: .word data_ov10_0211ecec _021154ec: .word func_ov10_02113e70 - 1 _021154f0: .word func_ov10_02113e6c - 1 .global func_ov10_021154f4 arm_func_start func_ov10_021154f4 func_ov10_021154f4: ; 0x021154f4 stmdb sp!, {r4, lr} mov r4, r0 bl func_0203780c mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_021154f4 .global func_ov10_02115508 arm_func_start func_ov10_02115508 func_ov10_02115508: ; 0x02115508 stmdb sp!, {r3, lr} mov ip, r0 mov r3, #0 mov r2, #1 _02115518: add r3, r3, #1 strb r2, [ip, #0x25] cmp r3, #4 add ip, ip, #0x18 blt _02115518 bl func_ov10_02112f48 ldmia sp!, {r3, pc} arm_func_end func_ov10_02115508 .global func_ov10_02115534 arm_func_start func_ov10_02115534 func_ov10_02115534: ; 0x02115534 stmdb sp!, {r3, r4, r5, lr} mov r4, r1 mov r5, r0 cmp r4, #3 beq _02115568 cmp r4, #4 bne _0211557c mov r2, #0 ldr r0, _0211558c ; =data_027e0c38 mov r3, r2 mov r1, #7 bl func_02033e70 b _0211557c _02115568: ldr r0, _0211558c ; =data_027e0c38 mov r1, #7 mov r2, #0xf mov r3, #0 bl func_02033e70 _0211557c: mov r0, #0 str r0, [r5, #0x14] str r4, [r5, #0x10] ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov10_02115534 _0211558c: .word data_027e0c38 .global func_ov10_02115590 arm_func_start func_ov10_02115590 func_ov10_02115590: ; 0x02115590 stmdb sp!, {r4, lr} mov r4, r0 ldr r0, _021155c4 ; =data_ov00_020eec9c mov r1, #0x11 bl func_ov00_020d77e4 mov r0, r4 mov r1, #2 bl func_ov10_02115534 ldr r0, _021155c8 ; =data_ov00_020ee734 mov r1, #1 mov r2, #0 bl func_ov10_0211e500 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02115590 _021155c4: .word data_ov00_020eec9c _021155c8: .word data_ov00_020ee734 .global func_ov10_021155cc arm_func_start func_ov10_021155cc func_ov10_021155cc: ; 0x021155cc stmdb sp!, {r4, lr} mov r4, r0 mov r0, #0x10000 ldr r1, [r4, #0x90] rsb r0, r0, #0 and r0, r1, r0 cmp r0, #0x1000000 beq _021155f8 ldr r0, _021157b4 ; =data_027e0c68 add r1, r4, #0x78 bl func_02036888 _021155f8: ldr r0, [r4, #0x14] adds r0, r0, #1 str r0, [r4, #0x14] movmi r0, #0 strmi r0, [r4, #0x14] ldr r0, [r4, #0x10] cmp r0, #5 addls pc, pc, r0, lsl #2 ldmia sp!, {r4, pc} _0211561c: ; jump table b _02115670 ; case 0 b _02115634 ; case 1 b _021156cc ; case 2 b _021156f0 ; case 3 b _02115670 ; case 4 b _0211574c ; case 5 _02115634: mov r0, #0x10000 ldr r1, [r4, #0x90] rsb r0, r0, #0 and r0, r1, r0 cmp r0, #0x1000000 ldmneia sp!, {r4, pc} ldr r0, _021157b8 ; =data_027e05f8 ldrh r0, [r0, #2] tst r0, #2 mov r0, r4 beq _02115668 bl func_ov10_02115590 ldmia sp!, {r4, pc} _02115668: bl func_ov10_021157c4 ldmia sp!, {r4, pc} _02115670: cmp r0, #4 bne _021156b0 ldr r0, [r4, #0x14] mov r1, #0x1e000 mov r0, r0, lsl #0xc bl Divide mov r2, r0 mov r0, #0 mov r1, #0xf000 bl func_ov00_020d03c4 add r1, r0, #0x800 mov r2, r1, asr #0xc ldr r0, _021157bc ; =data_027e0c38 mov r1, #7 mov r3, #0 bl func_02033e70 _021156b0: ldr r0, [r4, #0x14] cmp r0, #0x1e ldmleia sp!, {r4, pc} mov r0, r4 mov r1, #1 bl func_ov10_02115534 ldmia sp!, {r4, pc} _021156cc: ldr r0, [r4, #0x14] cmp r0, #0x1e ldmleia sp!, {r4, pc} ldr r0, [r4, #8] mov r1, #1 add r0, r0, #0x10 mov r2, #5 bl func_ov10_0211c784 ldmia sp!, {r4, pc} _021156f0: ldr r0, [r4, #0x14] mov r1, #0x1e000 mov r0, r0, lsl #0xc bl Divide mov r2, r0 mov r0, #0xf000 mov r1, #0 bl func_ov00_020d03c4 add r1, r0, #0x800 mov r2, r1, asr #0xc ldr r0, _021157bc ; =data_027e0c38 mov r1, #7 mov r3, #0 bl func_02033e70 ldr r0, [r4, #0x14] cmp r0, #0x1e ldmleia sp!, {r4, pc} ldr r0, [r4, #8] mov r1, #3 add r0, r0, #0x10 mov r2, #0 bl func_ov10_0211c784 ldmia sp!, {r4, pc} _0211574c: ldr r0, _021157c0 ; =data_027e0d54 ldrb r0, [r0, #0xd] cmp r0, #0 moveq r0, #1 movne r0, #0 cmp r0, #0 ldmeqia sp!, {r4, pc} mov r0, #0 strb r0, [r4, #0x94] ldr r1, [r4, #0x90] sub r0, r0, #0x10000 and r0, r1, r0 cmp r0, #0x1000000 ldmneia sp!, {r4, pc} ldrsb r1, [r4, #0xb8] ldr r0, [r4, #8] blx func_ov10_02113870 blx func_ov10_02115d00 ldr r0, [r4, #8] mov r1, #1 add r0, r0, #0x10 mov r2, #5 bl func_ov10_0211c784 mvn r0, #0 strb r0, [r4, #0xb8] ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_021155cc _021157b4: .word data_027e0c68 _021157b8: .word data_027e05f8 _021157bc: .word data_027e0c38 _021157c0: .word data_027e0d54 .global func_ov10_021157c4 arm_func_start func_ov10_021157c4 func_ov10_021157c4: ; 0x021157c4 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} mov r4, r0 ldr r0, [r4, #0x10] cmp r0, #1 movne r0, #0 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} ldr r1, _0211588c ; =data_027e0d54 ldr r0, [r4, #8] ldrh r6, [r1, #0x16] mov r1, r6 blx func_ov10_02113868 ldrh r5, [r0, #0xa] mov r2, #0 ldr r0, [r4, #8] mov r1, r6 mov r3, r2 blx func_ov10_02113878 mov r2, r0 mov r0, r4 mov r1, r5 bl func_ov10_02115890 cmp r0, #0 movne r0, #1 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} mov r6, #0 mov r8, r4 add sb, r4, #0x18 mov r5, r6 _02115834: mov r0, sb ldr ip, [r0] ldrh r7, [r8, #0x22] ldr ip, [ip] mov r1, r5 mov r2, r5 mov r3, r5 blx ip mov r2, r0 mov r0, r4 mov r1, r7 bl func_ov10_02115890 cmp r0, #0 movne r0, #1 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} add r6, r6, #1 cmp r6, #4 add r8, r8, #0x18 add sb, sb, #0x18 blt _02115834 mov r0, #0 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} .align 2, 0 arm_func_end func_ov10_021157c4 _0211588c: .word data_027e0d54 .global func_ov10_02115890 arm_func_start func_ov10_02115890 func_ov10_02115890: ; 0x02115890 stmdb sp!, {r4, lr} mov r4, r0 tst r2, #8 moveq r0, #0 ldmeqia sp!, {r4, pc} cmp r1, #0x67 bgt _021158d0 bge _021158d8 sub r2, r1, #0x56 cmp r2, #3 addls pc, pc, r2, lsl #2 b _02115920 _021158c0: ; jump table b _021158d8 ; case 0 b _021158f4 ; case 1 b _02115908 ; case 2 b _0211591c ; case 3 _021158d0: cmp r1, #0x68 bne _02115920 _021158d8: ldr r0, _02115928 ; =data_ov00_020eec9c mov r1, #4 bl func_ov00_020d77e4 mov r0, r4 mov r1, #3 bl func_ov10_02115534 b _02115920 _021158f4: ldr r0, _0211592c ; =data_027e0c68 ldr r2, _02115930 ; =0x00ca0001 add r1, r4, #0x78 bl func_02036ce4 b _02115920 _02115908: ldr r0, _0211592c ; =data_027e0c68 ldr r2, _02115934 ; =0x00ca0002 add r1, r4, #0x78 bl func_02036ce4 b _02115920 _0211591c: bl func_ov10_02115590 _02115920: mov r0, #0 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02115890 _02115928: .word data_ov00_020eec9c _0211592c: .word data_027e0c68 _02115930: .word 0x00ca0001 _02115934: .word 0x00ca0002 .global func_ov10_02115938 arm_func_start func_ov10_02115938 func_ov10_02115938: ; 0x02115938 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x44 mov sb, r0 ldr r0, _02115b68 ; =data_027e0cbc mov r1, #0x2e bl func_0203d7e0 cmp r0, #0 beq _02115984 add r0, sp, #0x24 bl func_01ffbe34 mov r1, #0 mov r0, #1 str r0, [sp, #0x34] add r4, sp, #0x24 mov r2, r1 mov r3, r1 rsb r0, r0, #0x110 str r4, [sp] bl func_0203493c _02115984: ldr r0, [sb, #0x14] mov r1, #0xf000 mov r0, r0, lsl #0xc bl Divide mov r4, r0 add r0, sp, #4 mov r5, #0 bl func_01ffbe34 mov r0, #1 strb r0, [sp, #0xe] ldr r0, [sb, #0x10] cmp r0, #3 beq _021159c4 cmp r0, #4 beq _021159f8 b _02115a30 _021159c4: mov r0, r5 mov r2, r4 sub r1, r0, #0x64000 bl func_ov00_020d03f8 add r3, r0, #0x800 mov r1, r5 add r6, sp, #4 ldr r0, _02115b6c ; =0x00000112 mov r2, r1 mov r3, r3, asr #0xc str r6, [sp] bl func_0203493c b _02115a4c _021159f8: mov r0, #0x64000 mov r2, r4 rsb r0, r0, #0 mov r1, r5 bl func_ov00_020d03f8 add r3, r0, #0x800 mov r1, r5 add r6, sp, #4 ldr r0, _02115b6c ; =0x00000112 mov r2, r1 mov r3, r3, asr #0xc str r6, [sp] bl func_0203493c b _02115a4c _02115a30: mov r1, r5 add r6, sp, #4 ldr r0, _02115b6c ; =0x00000112 mov r2, r1 mov r3, r1 str r6, [sp] bl func_0203493c _02115a4c: mov r1, #0 ldr r0, [sb, #8] mov r2, r1 mov r3, r1 blx func_ov10_02113890 mov r2, #0 ldr r0, [sb, #8] mov r3, r2 mov r1, #1 blx func_ov10_02113890 mov r0, #0x10000 ldr r1, [sb, #0x90] rsb r0, r0, #0 and r0, r1, r0 cmp r0, #0x1000000 addne sp, sp, #0x44 ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} mov r6, #0 mov r7, r6 add r8, sb, #0x18 mov sl, #0x32000 mov fp, r6 _02115aa4: ldr r0, [sb, #0x10] cmp r0, #4 addls pc, pc, r0, lsl #2 b _02115b0c _02115ab4: ; jump table b _02115ac8 ; case 0 b _02115b0c ; case 1 b _02115aec ; case 2 b _02115aec ; case 3 b _02115ac8 ; case 4 _02115ac8: mov r0, r7, asr #0x1 add r2, r7, r0, lsr #30 mov r0, sl mov r1, fp sub r2, r4, r2, asr #2 bl func_ov00_020d03f8 add r0, r0, #0x800 mov r5, r0, asr #0xc b _02115b0c _02115aec: mov r0, r7, asr #0x1 add r2, r7, r0, lsr #30 mov r0, #0 mov r1, #0x32000 sub r2, r4, r2, asr #2 bl func_ov00_020d03f8 add r0, r0, #0x800 mov r5, r0, asr #0xc _02115b0c: cmp r6, #3 mov r0, r8 bne _02115b34 mov r2, #0 mov r1, r2 str r1, [sp] rsb r1, r5, #0 mov r3, r2 bl func_ov00_020d00c4 b _02115b4c _02115b34: mov r1, #0 mov r2, r1 str r2, [sp] mov r2, r5 mov r3, r1 bl func_ov00_020d00c4 _02115b4c: add r6, r6, #1 cmp r6, #4 add r7, r7, #0x1000 add r8, r8, #0x18 blt _02115aa4 add sp, sp, #0x44 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov10_02115938 _02115b68: .word data_027e0cbc _02115b6c: .word 0x00000112 .global func_ov10_02115b70 arm_func_start func_ov10_02115b70 func_ov10_02115b70: ; 0x02115b70 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x78 bl func_0203780c ldr r3, _02115bac ; =func_ov10_02113e6c add r0, r4, #0x18 mov r1, #4 mov r2, #0x18 bl func_0204f754 mov r0, r4 blx func_ov10_02112f44 mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02115b70 _02115bac: .word func_ov10_02113e6c - 1 .global func_ov10_02115bb0 arm_func_start func_ov10_02115bb0 func_ov10_02115bb0: ; 0x02115bb0 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x78 bl func_0203780c ldr r3, _02115be4 ; =func_ov10_02113e6c add r0, r4, #0x18 mov r1, #4 mov r2, #0x18 bl func_0204f754 mov r0, r4 blx func_ov10_02112f44 mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02115bb0 _02115be4: .word func_ov10_02113e6c - 1 .global func_ov10_02115be8 arm_func_start func_ov10_02115be8 func_ov10_02115be8: ; 0x02115be8 stmdb sp!, {r4, lr} mov r4, r0 bl func_0203780c mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_02115be8 .global func_ov10_02115c04 thumb_func_start func_ov10_02115c04 func_ov10_02115c04: ; 0x02115c04 push {r4, r5, r6, lr} sub sp, #8 add r5, r0, #0 add r6, r1, #0 add r4, r2, #0 blx func_ov00_020d05dc ldr r0, _02115cc4 ; =data_ov10_0211ed8c mov r1, #0 str r0, [r5] add r0, r5, #0 str r6, [r5, #0x10] add r0, #0x18 add r2, r1, #0 mov r3, #0xf str r1, [r5, #0x14] blx func_ov00_020d0490 add r0, r5, #0 add r0, #0x20 blx func_02035064 add r0, r5, #0 add r0, #0xa8 blx func_02035064 ldr r0, _02115cc8 ; =func_020350ac ldr r3, _02115ccc ; =func_02035064 str r0, [sp] mov r0, #0x13 lsl r0, r0, #4 add r0, r5, r0 mov r1, #3 mov r2, #0x88 blx func_0204f614 mov r0, #0xb2 lsl r0, r0, #2 strh r4, [r5, r0] mov r1, #0 add r2, r0, #2 strh r1, [r5, r2] add r2, r0, #4 strh r1, [r5, r2] add r2, r0, #6 strh r1, [r5, r2] add r2, r0, #0 add r2, #8 strh r1, [r5, r2] add r2, r0, #0 add r2, #0xa strb r1, [r5, r2] add r2, r0, #0 add r2, #0xb add r0, #0xc strb r1, [r5, r2] strb r1, [r5, r0] cmp r4, #0 bne _02115c7e mov r3, #0x67 b _02115c80 _02115c7e: mov r3, #0x68 _02115c80: mov r0, #1 str r0, [sp] mov r2, #0 ldr r1, _02115cd0 ; =0x00000112 add r0, r5, #0 str r2, [sp, #4] blx func_ov00_020d0644 cmp r4, #0 bne _02115c98 mov r2, #1 b _02115c9a _02115c98: mov r2, #2 _02115c9a: mov r3, #0 add r0, r5, #0 lsl r2, r2, #0x18 str r3, [sp] add r0, #0x20 mov r1, #0x2f lsr r2, r2, #0x18 str r3, [sp, #4] blx func_020350b4 mov r1, #0 add r0, r5, #0 add r0, #0x20 add r2, r1, #0 add r3, r1, #0 str r1, [sp] blx func_020351b8 add r0, r5, #0 add sp, #8 pop {r4, r5, r6, pc} .align 2, 0 thumb_func_end func_ov10_02115c04 _02115cc4: .word data_ov10_0211ed8c _02115cc8: .word func_020350ac _02115ccc: .word func_02035064 _02115cd0: .word 0x00000112 .global func_ov10_02115cd4 thumb_func_start func_ov10_02115cd4 func_ov10_02115cd4: ; 0x02115cd4 push {r4, lr} add r4, r0, #0 mov r0, #0x13 lsl r0, r0, #4 ldr r3, _02115cfc ; =func_020350ac add r0, r4, r0 mov r1, #3 mov r2, #0x88 blx func_0204f754 add r0, r4, #0 add r0, #0xa8 blx func_020350ac add r0, r4, #0 add r0, #0x20 blx func_020350ac add r0, r4, #0 pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_02115cd4 _02115cfc: .word func_020350ac .global func_ov10_02115d00 thumb_func_start func_ov10_02115d00 func_ov10_02115d00: ; 0x02115d00 push {r3, r4, r5, r6, r7, lr} sub sp, #8 add r6, r0, #0 ldr r0, _02115ddc ; =0x000002d3 ldrb r0, [r6, r0] cmp r0, #0 bne _02115d20 blx func_020329b0 mov r2, #0xb2 lsl r2, r2, #2 ldrsh r2, [r6, r2] ldr r1, _02115de0 ; =0x00000112 blx func_02032a20 str r0, [r6, #0x14] _02115d20: mov r1, #0xb2 lsl r1, r1, #2 ldrh r1, [r6, r1] ldr r0, [r6, #0x10] bl func_ov10_02113358 add r7, r0, #0 mov r0, #0x13 mov r3, #0 lsl r0, r0, #4 str r3, [sp] add r0, r6, r0 mov r1, #0x2f mov r2, #7 str r3, [sp, #4] blx func_020350b4 mov r0, #0x6e mov r3, #0 lsl r0, r0, #2 str r3, [sp] add r0, r6, r0 mov r1, #0x2f mov r2, #8 str r3, [sp, #4] blx func_020350b4 add r0, r7, #0 blx func_ov10_0211a890 cmp r0, #0 beq _02115d64 mov r2, #9 b _02115d66 _02115d64: mov r2, #0xa _02115d66: mov r0, #9 mov r3, #0 lsl r0, r0, #6 lsl r2, r2, #0x18 str r3, [sp] add r0, r6, r0 mov r1, #0x2f lsr r2, r2, #0x18 str r3, [sp, #4] blx func_020350b4 mov r0, #0x13 lsl r0, r0, #4 mov r4, #0 add r5, r6, r0 _02115d84: mov r1, #0 mov r0, #0 str r0, [sp] add r0, r5, #0 add r2, r1, #0 add r3, r1, #0 blx func_020351b8 add r4, r4, #1 add r5, #0x88 cmp r4, #3 blt _02115d84 add r7, #0x95 ldrb r0, [r7] mov r1, #4 sub r0, r0, #1 blx func_01ff9b88 add r2, r0, #0 add r2, r2, #3 mov r3, #0 add r0, r6, #0 lsl r2, r2, #0x18 str r3, [sp] add r0, #0xa8 mov r1, #0x2f lsr r2, r2, #0x18 str r3, [sp, #4] blx func_020350b4 mov r1, #0 add r0, r6, #0 add r0, #0xa8 add r2, r1, #0 add r3, r1, #0 str r1, [sp] blx func_020351b8 add r0, r6, #0 blx func_ov10_02115de4 add sp, #8 pop {r3, r4, r5, r6, r7, pc} nop thumb_func_end func_ov10_02115d00 _02115ddc: .word 0x000002d3 _02115de0: .word 0x00000112 .global func_ov10_02115de4 arm_func_start func_ov10_02115de4 func_ov10_02115de4: ; 0x02115de4 stmdb sp!, {r4, lr} mov r4, r0 mov r2, #0 ldr r0, [r4, #0x14] mov r3, r2 mov r1, #1 bl func_02032714 mov r0, r4 bl func_ov10_0211653c strb r0, [r4, #0x2d2] mov r0, r4 bl func_ov10_02115e88 ldmia sp!, {r4, pc} arm_func_end func_ov10_02115de4 .global func_ov10_02115e18 arm_func_start func_ov10_02115e18 func_ov10_02115e18: ; 0x02115e18 stmdb sp!, {r3, r4, r5, r6, r7, lr} sub sp, sp, #8 mov r6, r0 mov r4, r2 mov r7, r3 mov r5, r1 ldr r0, _02115e84 ; =0x00000112 add r2, sp, #4 add r3, sp, #0 mov r1, #1 bl func_02034698 add r0, r6, #0x200 ldrsh lr, [r0, #0xca] ldrsh ip, [r0, #0xcc] ldr r1, [sp, #4] ldr r2, [sp] sub r1, lr, r1 sub r2, ip, r2 mov r3, r7 mov r0, r6 add r1, r5, r1 add r2, r4, r2 bl func_ov00_020d0670 strb r0, [r6, #0xd] and r0, r0, #0xff add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 arm_func_end func_ov10_02115e18 _02115e84: .word 0x00000112 .global func_ov10_02115e88 arm_func_start func_ov10_02115e88 func_ov10_02115e88: ; 0x02115e88 stmdb sp!, {r4, lr} sub sp, sp, #8 mov r4, r0 ldr r0, [r4, #0x14] mov r1, #0 ldr r2, [r0] ldr r2, [r2, #0x10] blx r2 mov r0, r4 bl func_ov10_0211653c cmp r0, #0 beq _02115f0c ldrb r0, [r4, #0x2d3] cmp r0, #0 addne sp, sp, #8 ldmneia sp!, {r4, pc} add r0, r4, #0x200 ldrh r1, [r0, #0xc8] ldr r0, [r4, #0x10] blx func_ov10_02113358 mov r1, #4 str r1, [sp] mov r2, r0 ldr r0, [r4, #0x14] add r3, r2, #0x44 ldr ip, [r0] mov r1, #0 ldr ip, [ip, #8] mov r2, r1 add r3, r3, #0x3400 blx ip add sp, sp, #8 ldmia sp!, {r4, pc} _02115f0c: ldr r1, _02115f4c ; =data_027e0c68 ldr r2, _02115f50 ; =0x0013000a add r0, sp, #4 bl func_0203643c mvn r0, #0 str r0, [sp] ldr r0, [r4, #0x14] add r2, sp, #4 ldr ip, [r0] mov r1, #0 ldr r3, [r2] ldr ip, [ip, #8] mov r2, r1 blx ip add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02115e88 _02115f4c: .word data_027e0c68 _02115f50: .word 0x0013000a .global func_ov10_02115f54 arm_func_start func_ov10_02115f54 func_ov10_02115f54: ; 0x02115f54 stmdb sp!, {r4, r5, r6, lr} mov r4, r0 ldrsh r0, [r4, #0x18] ldrsh r2, [r4, #0x1a] cmp r0, r2 moveq r2, #0 beq _02115f98 ldrsh r1, [r4, #0x1c] cmp r0, r1 moveq r2, #0x1000 beq _02115f98 sub r0, r0, r2 sub r1, r1, r2 mov r0, r0, lsl #0xc mov r1, r1, lsl #0xc bl Divide mov r2, r0 _02115f98: add r0, r4, #0x200 ldrsh r1, [r0, #0xce] ldrsh r3, [r0, #0xca] mov r1, r1, lsl #0xc mov r0, r3, lsl #0xc bl func_ov00_020d03f8 add r0, r0, #0x800 mov r1, r0, asr #0xc add r0, r4, #0x200 strh r1, [r0, #0xca] ldrsh r0, [r4, #0x18] ldrsh r2, [r4, #0x1a] cmp r0, r2 moveq r2, #0 beq _02115ffc ldrsh r1, [r4, #0x1c] cmp r0, r1 moveq r2, #0x1000 beq _02115ffc sub r0, r0, r2 sub r1, r1, r2 mov r0, r0, lsl #0xc mov r1, r1, lsl #0xc bl Divide mov r2, r0 _02115ffc: add r0, r4, #0x200 ldrsh r1, [r0, #0xd0] ldrsh r3, [r0, #0xcc] mov r1, r1, lsl #0xc mov r0, r3, lsl #0xc bl func_ov00_020d03f8 add r0, r0, #0x800 mov r1, r0, asr #0xc add r0, r4, #0x200 strh r1, [r0, #0xcc] ldrsb r0, [r0, #0xd4] cmp r0, #0 subgt r0, r0, #1 strgtb r0, [r4, #0x2d4] bgt _02116040 add r0, r4, #0x18 bl func_ov00_020d054c _02116040: add r0, r4, #0x20 bl func_0203516c add r6, r4, #0x130 mov r5, #0 _02116050: mov r0, r6 bl func_0203516c add r5, r5, #1 cmp r5, #3 add r6, r6, #0x88 blt _02116050 add r0, r4, #0xa8 bl func_0203516c mov r0, r4 bl func_ov10_0211653c ldrb r1, [r4, #0x2d2] mov r5, r0 cmp r5, r1 beq _02116090 mov r0, r4 bl func_ov10_02115e88 _02116090: strb r5, [r4, #0x2d2] ldmia sp!, {r4, r5, r6, pc} arm_func_end func_ov10_02115f54 .global func_ov10_02116098 arm_func_start func_ov10_02116098 func_ov10_02116098: ; 0x02116098 bx lr arm_func_end func_ov10_02116098 .global func_ov10_0211609c arm_func_start func_ov10_0211609c func_ov10_0211609c: ; 0x0211609c stmdb sp!, {r3, r4, r5, r6, lr} sub sp, sp, #0xc mov r6, r0 add r0, r6, #0x200 ldrsh r4, [r0, #0xca] ldrsh r3, [r0, #0xcc] ldrb r0, [r6, #0xd] add r4, r4, r1 add r5, r3, r2 tst r0, #4 ldr r0, _02116118 ; =0x00000112 add r2, sp, #8 add r3, sp, #4 mov r1, #1 addne r5, r5, #2 bl func_02034698 ldrb r0, [r6, #0x2d3] ldr r2, [sp, #8] ldr r1, [sp, #4] cmp r0, #0 sub r3, r4, r2 addne sp, sp, #0xc sub ip, r5, r1 ldmneia sp!, {r3, r4, r5, r6, pc} mov r0, r6 mov r1, r4 mov r2, r5 str ip, [sp] bl func_ov10_0211611c add sp, sp, #0xc ldmia sp!, {r3, r4, r5, r6, pc} .align 2, 0 arm_func_end func_ov10_0211609c _02116118: .word 0x00000112 .global func_ov10_0211611c arm_func_start func_ov10_0211611c func_ov10_0211611c: ; 0x0211611c stmdb sp!, {r3, r4, r5, r6, r7, r8, lr} sub sp, sp, #0x34 mov r8, r0 add r0, sp, #0x14 mov r7, r1 mov r6, r2 mov r5, r3 bl func_01ffbe34 mov r4, #1 strb r4, [sp, #0x1e] ldrb r0, [r8, #0xd] add r1, sp, #0x14 mov r3, r6 tst r0, #4 str r1, [sp] add r0, r8, #0x200 ldrsh r2, [r0, #0xc8] ldr r1, _02116220 ; =data_ov10_0211e780 moveq r4, #0 add r1, r1, r2, lsl #1 ldrb r1, [r4, r1] ldr r0, _02116224 ; =0x00000112 mov r2, r7 bl func_02034984 cmp r4, #0 bne _021161bc add r1, sp, #0xc str r1, [sp] ldr r0, _02116224 ; =0x00000112 add r3, sp, #0x10 mov r1, #1 mov r2, #2 bl func_02034710 ldr r1, [sp, #0x10] ldr r2, [sp, #0xc] add r3, sp, #0x14 add r0, r8, #0x20 add r1, r7, r1 add r2, r6, r2 bl func_02034a1c _021161bc: mov r0, r8 bl func_ov10_0211653c cmp r0, #0 beq _021161dc ldr r2, [sp, #0x50] mov r0, r8 mov r1, r5 bl func_ov10_0211627c _021161dc: ldr r0, _02116224 ; =0x00000112 add r2, sp, #8 add r3, sp, #4 mov r1, #0 bl func_0203489c ldr r2, [sp, #8] ldr r1, [sp, #0x50] ldr r0, [sp, #4] add r3, r5, r2 add r2, r1, r0 sub r1, r3, #0x50 ldr r0, [r8, #0x14] sub r2, r2, #8 mov r3, #0 bl func_0203e1b0 add sp, sp, #0x34 ldmia sp!, {r3, r4, r5, r6, r7, r8, pc} .align 2, 0 arm_func_end func_ov10_0211611c _02116220: .word data_ov10_0211e780 _02116224: .word 0x00000112 .global func_ov10_02116228 arm_func_start func_ov10_02116228 func_ov10_02116228: ; 0x02116228 stmdb sp!, {r3, r4, r5, r6, lr} sub sp, sp, #0xc mov r6, r0 mov r5, r2 mov r4, r3 ldr r0, _02116278 ; =0x00000112 add r2, sp, #8 add r3, sp, #4 bl func_02034698 ldr r1, [sp, #0x20] ldr r0, _02116278 ; =0x00000112 str r1, [sp] ldr r2, [sp, #8] ldr r3, [sp, #4] mov r1, r6 add r2, r2, r5 add r3, r3, r4 bl func_02034984 add sp, sp, #0xc ldmia sp!, {r3, r4, r5, r6, pc} .align 2, 0 arm_func_end func_ov10_02116228 _02116278: .word 0x00000112 .global func_ov10_0211627c arm_func_start func_ov10_0211627c func_ov10_0211627c: ; 0x0211627c stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x28 mov r4, r0 mov sl, r1 mov sb, r2 bl func_ov10_0211642c add r0, sp, #8 bl func_01ffbe34 mov r0, #1 strb r0, [sp, #0x12] add r0, r4, #0x200 ldrh r1, [r0, #0xc8] ldr r0, [r4, #0x10] blx func_ov10_02113358 add r5, r4, #0x130 mov r7, r0 mov r8, #0x13 mov fp, #1 add r6, sp, #8 mov r4, #0x88 _021162cc: cmp r8, #0x13 beq _021162e8 cmp r8, #0x14 beq _02116300 cmp r8, #0x15 beq _02116318 b _0211633c _021162e8: mov r0, r7 mov r1, fp bl func_ov10_0211a86c cmp r0, #0 bne _0211633c b _0211635c _02116300: mov r0, r7 mov r1, #2 bl func_ov10_0211a86c cmp r0, #0 bne _0211633c b _0211635c _02116318: mov r0, r7 mov r1, #0 bl func_ov10_0211a86c cmp r0, #0 bne _0211633c mov r0, r7 bl func_ov10_0211a890 cmp r0, #0 beq _0211635c _0211633c: sub r1, r8, #0x13 mla r0, r1, r4, r5 str sb, [sp] ldr r1, _02116428 ; =0x00000112 mov r2, r8 mov r3, sl str r6, [sp, #4] bl func_02034b0c _0211635c: add r8, r8, #1 cmp r8, #0x15 ble _021162cc mov r5, #0x16 mov r6, r5 add r4, sp, #8 _02116374: cmp r6, #0x16 beq _02116390 cmp r6, #0x17 beq _021163a4 cmp r6, #0x18 beq _021163b8 b _021163c8 _02116390: mov r0, r7 bl func_ov10_0211a8d4 cmp r0, #0 bne _021163c8 b _021163e4 _021163a4: mov r0, r7 bl func_ov10_0211a8c0 cmp r0, #0 bne _021163c8 b _021163e4 _021163b8: mov r0, r7 bl func_ov10_0211a8e8 cmp r0, #0 beq _021163e4 _021163c8: mov r0, r6 mov r1, r5 mov r2, sl mov r3, sb str r4, [sp] bl func_ov10_02116228 add r5, r5, #1 _021163e4: add r6, r6, #1 cmp r6, #0x18 ble _02116374 mov r0, r7 bl func_ov10_0211a8ac cmp r0, #0 addeq sp, sp, #0x28 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} mov r0, #0x19 add r4, sp, #8 mov r1, r0 mov r2, sl mov r3, sb str r4, [sp] bl func_ov10_02116228 add sp, sp, #0x28 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov10_0211627c _02116428: .word 0x00000112 .global func_ov10_0211642c arm_func_start func_ov10_0211642c func_ov10_0211642c: ; 0x0211642c stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x38 str r0, [sp, #8] add r0, r0, #0x200 mov sl, r1 ldrh r1, [r0, #0xc8] ldr r0, [sp, #8] mov sb, r2 ldr r0, [r0, #0x10] blx func_ov10_02113358 ldrb r1, [r0, #0x94] ldrb r4, [r0, #0x95] add r0, sp, #0x18 mov r5, r1, asr #0x2 cmp r5, #0x10 mov r6, #1 movge r5, #0x10 bl func_01ffbe34 mov r0, #1 strb r0, [sp, #0x22] mov r0, #0 subs r7, r5, #1 str r0, [sp, #0xc] bmi _02116508 ldr fp, _02116538 ; =0x00000112 mov r8, r7, lsl #0x2 _02116494: subs r5, r4, r8 movmi r5, #0 movmi r6, #1 bmi _021164ac cmp r5, #4 movgt r5, #4 _021164ac: cmp r6, #0 beq _021164c4 cmp r5, #0 strgt r7, [sp, #0xc] movgt r6, #0 bgt _021164fc _021164c4: mov r0, fp add r1, r7, #3 add r2, sp, #0x14 add r3, sp, #0x10 bl func_02034698 add r0, sp, #0x18 str r0, [sp] ldr r2, [sp, #0x14] ldr r3, [sp, #0x10] add r1, r5, #0x37 mov r0, fp add r2, r2, sl add r3, r3, sb bl func_02034984 _021164fc: sub r8, r8, #4 subs r7, r7, #1 bpl _02116494 _02116508: ldr r0, [sp, #8] ldr r2, [sp, #0xc] ldr r1, _02116538 ; =0x00000112 add r4, sp, #0x18 str sb, [sp] mov r3, sl add r0, r0, #0xa8 add r2, r2, #3 str r4, [sp, #4] bl func_02034b0c add sp, sp, #0x38 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov10_0211642c _02116538: .word 0x00000112 .global func_ov10_0211653c arm_func_start func_ov10_0211653c func_ov10_0211653c: ; 0x0211653c stmdb sp!, {r3, lr} add r1, r0, #0x200 ldrh r1, [r1, #0xc8] ldr r0, [r0, #0x10] blx func_ov10_02113358 add r0, r0, #0x3000 ldrb r0, [r0, #0x481] ldmia sp!, {r3, pc} arm_func_end func_ov10_0211653c .global func_ov10_0211655c arm_func_start func_ov10_0211655c func_ov10_0211655c: ; 0x0211655c stmdb sp!, {r3, r4, r5, lr} mov r5, r0 mov r4, r1 bl func_020386d8 ldr r1, _02116580 ; =data_ov10_0211ee0c mov r0, r5 str r1, [r5] str r4, [r5, #0x14] ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov10_0211655c _02116580: .word data_ov10_0211ee0c .global func_ov10_02116584 arm_func_start func_ov10_02116584 func_ov10_02116584: ; 0x02116584 stmdb sp!, {r3, lr} ldrb r2, [r1, #1] cmp r2, #0x1e bne _021165f8 ldr r1, [r1, #4] cmp r1, #2 beq _021165b0 cmp r1, #5 cmpne r1, #6 beq _021165c0 b _021165f8 _021165b0: ldr r0, [r0, #0x14] bl func_ov10_02116b20 mov r0, #1 ldmia sp!, {r3, pc} _021165c0: ldr r0, _02116600 ; =data_ov00_020ebe18 cmp r1, #5 ldr r0, [r0, #0x93c] add r1, sp, #0 str r0, [sp] bic r0, r0, #0xff0000 streq r0, [sp] orrne r0, r0, #0x10000 strne r0, [sp] ldr r0, _02116604 ; =data_027e0d54 ldr r1, [r1] bl func_ov10_02118a14 mov r0, #1 ldmia sp!, {r3, pc} _021165f8: mov r0, #1 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov10_02116584 _02116600: .word data_ov00_020ebe18 _02116604: .word data_027e0d54 .global func_ov10_02116608 thumb_func_start func_ov10_02116608 func_ov10_02116608: ; 0x02116608 push {r4, lr} mov r2, #9 mov r3, #3 add r4, r0, #0 bl func_ov10_02112f18 ldr r0, _0211662c ; =data_ov10_0211ede8 add r1, r4, #0 str r0, [r4] mov r0, #3 str r0, [r4, #0x18] add r0, r4, #0 add r0, #0x1c blx func_ov10_0211655c add r0, r4, #0 pop {r4, pc} nop thumb_func_end func_ov10_02116608 _0211662c: .word data_ov10_0211ede8 .global func_ov10_02116630 arm_func_start func_ov10_02116630 func_ov10_02116630: ; 0x02116630 stmdb sp!, {r4, lr} mov r4, r0 bl func_0203780c mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_02116630 .global func_ov10_02116644 arm_func_start func_ov10_02116644 func_ov10_02116644: ; 0x02116644 stmdb sp!, {r3, r4, r5, r6, lr} sub sp, sp, #0x14 mov r5, r0 mov r4, r1 bl func_ov06_0210225c bl func_ov06_021027d8 ldr r0, [r5, #8] blx func_ov10_02113a90 cmp r4, #0 beq _02116680 cmp r4, #1 beq _021166ac cmp r4, #2 beq _021166e8 b _02116724 _02116680: mov r0, #0 str r0, [r5, #0x18] ldr r0, [r5, #8] ldr r1, _02116738 ; =0x0013000c blx func_ov10_02113d70 add r0, sp, #0 blx func_ov00_0207a4d4 bl func_ov06_0210225c add r1, sp, #0 bl func_ov06_02101e48 b _02116724 _021166ac: mov r0, #1 str r0, [r5, #0x18] ldr r0, [r5, #8] ldr r1, _0211673c ; =0x0013000b blx func_ov10_02113d70 ldr r1, _02116740 ; =data_027e0d54 ldr r0, [r5, #8] ldrh r1, [r1, #0x16] blx func_ov10_02113358 mov r6, r0 bl func_ov06_0210225c add r1, r6, #0x44 add r1, r1, #0x2c00 bl func_ov06_02101e48 b _02116724 _021166e8: mov r0, #2 str r0, [r5, #0x18] ldr r0, [r5, #8] ldr r1, _02116744 ; =0x00130010 blx func_ov10_02113d70 ldr r0, [r5, #8] ldr r6, [r0, #0x60] cmp r6, #0 beq _0211671c bl func_ov06_0210225c mov r1, r6 bl func_ov06_02101e48 b _02116724 _0211671c: bl func_ov06_0210225c bl func_ov06_02101e18 _02116724: mov r0, r5 mov r1, r4 bl func_ov10_02112f48 add sp, sp, #0x14 ldmia sp!, {r3, r4, r5, r6, pc} .align 2, 0 arm_func_end func_ov10_02116644 _02116738: .word 0x0013000c _0211673c: .word 0x0013000b _02116740: .word data_027e0d54 _02116744: .word 0x00130010 .global func_ov10_02116748 arm_func_start func_ov10_02116748 func_ov10_02116748: ; 0x02116748 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov06_0210225c bl func_ov06_02102824 mov r0, r4 bl func_ov10_02112f5c ldmia sp!, {r4, pc} arm_func_end func_ov10_02116748 .global func_ov10_02116764 arm_func_start func_ov10_02116764 func_ov10_02116764: ; 0x02116764 stmdb sp!, {r3, r4, r5, lr} mov r4, r1 mov r5, r0 cmp r4, #6 bne _02116790 ldr r0, [r5, #8] blx func_ov10_02113da4 ldr r0, _021167a0 ; =data_027e0c68 ldr r2, _021167a4 ; =0x00ca000c add r1, r5, #0x1c bl func_02036ce4 _02116790: mov r0, #0 str r0, [r5, #0x14] str r4, [r5, #0x10] ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov10_02116764 _021167a0: .word data_027e0c68 _021167a4: .word 0x00ca000c .global func_ov10_021167a8 arm_func_start func_ov10_021167a8 func_ov10_021167a8: ; 0x021167a8 stmdb sp!, {r4, lr} mov r4, r0 ldr r0, [r4, #8] blx func_ov10_02113a58 mov r0, r4 mov r1, #5 bl func_ov10_02116764 ldmia sp!, {r4, pc} arm_func_end func_ov10_021167a8 .global func_ov10_021167c8 arm_func_start func_ov10_021167c8 func_ov10_021167c8: ; 0x021167c8 stmdb sp!, {r4, lr} mov r4, r0 ldr r0, [r4, #0x14] adds r0, r0, #1 str r0, [r4, #0x14] movmi r0, #0 strmi r0, [r4, #0x14] mov r0, #0x10000 ldr r1, [r4, #0x34] rsb r0, r0, #0 and r0, r1, r0 cmp r0, #0x1000000 beq _0211680c ldr r0, _02116a54 ; =data_027e0c68 add r1, r4, #0x1c bl func_02036888 b _02116828 _0211680c: bl func_ov06_0210225c ldrb r0, [r0, #0x23a] cmp r0, #3 bne _02116828 bl func_ov06_0210225c mov r1, #4 strb r1, [r0, #0x23a] _02116828: bl func_ov06_0210225c bl func_ov06_021022a8 ldr r0, [r4, #0x10] cmp r0, #7 addls pc, pc, r0, lsl #2 ldmia sp!, {r4, pc} _02116840: ; jump table b _02116860 ; case 0 b _02116860 ; case 1 b _02116860 ; case 2 b _021169b4 ; case 3 b _02116880 ; case 4 b _02116880 ; case 5 b _021169f8 ; case 6 b _02116a28 ; case 7 _02116860: ldr r0, [r4, #8] ldr r0, [r0, #0x68] cmp r0, #1 ldmneia sp!, {r4, pc} mov r0, r4 mov r1, #3 bl func_ov10_02116764 ldmia sp!, {r4, pc} _02116880: ldr r0, [r4, #8] ldr r0, [r0, #0x68] cmp r0, #0 ldmneia sp!, {r4, pc} ldr r0, _02116a58 ; =data_027e0d54 ldrb r0, [r0, #0xd] cmp r0, #0 moveq r0, #1 movne r0, #0 cmp r0, #0 ldmeqia sp!, {r4, pc} bl func_ov06_0210225c bl func_ov06_02102c68 ldr r0, [r4, #8] blx func_ov10_02113bc4 ldr r0, [r4, #0x18] cmp r0, #0 beq _021168dc cmp r0, #1 beq _021168f4 cmp r0, #2 beq _02116938 b _021169a8 _021168dc: ldr r0, [r4, #8] mov r1, #1 add r0, r0, #0x10 mov r2, #8 bl func_ov10_0211c784 b _021169a8 _021168f4: ldr r0, [r4, #0x10] cmp r0, #5 ldreq r1, [r4, #8] ldreq r0, [r1, #8] cmpeq r0, #3 bne _02116920 add r0, r1, #0x10 mov r1, #3 mov r2, #4 bl func_ov10_0211c784 b _021169a8 _02116920: ldr r0, [r4, #8] mov r1, #4 add r0, r0, #0x10 mov r2, #1 bl func_ov10_0211c784 b _021169a8 _02116938: ldr r0, [r4, #8] ldr r1, [r0, #8] cmp r1, #0xa bne _0211697c ldrsb r1, [r0, #0x64] blx func_ov10_02113a4c cmp r0, #0 ldr r0, [r4, #8] mov r1, #0xa add r0, r0, #0x10 beq _02116970 mov r2, #0xd bl func_ov10_0211c784 b _021169a8 _02116970: mov r2, #0xe bl func_ov10_0211c784 b _021169a8 _0211697c: ldr r1, [r4, #0x10] add r0, r0, #0x10 cmp r1, #4 bne _0211699c mov r1, #8 mov r2, #1 bl func_ov10_0211c784 b _021169a8 _0211699c: mov r1, #7 mov r2, #0 bl func_ov10_0211c784 _021169a8: ldr r0, [r4, #8] blx func_ov10_02113a90 ldmia sp!, {r4, pc} _021169b4: bl func_ov06_0210225c ldrb r0, [r0, #0x23a] cmp r0, #1 ldmneia sp!, {r4, pc} ldr r0, _02116a5c ; =data_027e05f8 ldrh r0, [r0, #2] tst r0, #2 beq _021169ec ldr r0, _02116a60 ; =data_ov00_020eec9c mov r1, #5 bl func_ov00_020d77e4 mov r0, r4 bl func_ov10_021167a8 ldmia sp!, {r4, pc} _021169ec: mov r0, r4 bl func_ov10_02116a64 ldmia sp!, {r4, pc} _021169f8: mov r0, #0x10000 ldr r1, [r4, #0x34] rsb r0, r0, #0 and r0, r1, r0 cmp r0, #0x1000000 ldmneia sp!, {r4, pc} ldr r0, [r4, #8] blx func_ov10_02113a58 mov r0, r4 mov r1, #4 bl func_ov10_02116764 ldmia sp!, {r4, pc} _02116a28: ldr r0, _02116a58 ; =data_027e0d54 ldrb r0, [r0, #0xd] cmp r0, #0 moveq r0, #1 movne r0, #0 cmp r0, #0 ldmeqia sp!, {r4, pc} mov r0, r4 mov r1, #6 bl func_ov10_02116764 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_021167c8 _02116a54: .word data_027e0c68 _02116a58: .word data_027e0d54 _02116a5c: .word data_027e05f8 _02116a60: .word data_ov00_020eec9c .global func_ov10_02116a64 arm_func_start func_ov10_02116a64 func_ov10_02116a64: ; 0x02116a64 stmdb sp!, {r3, r4, r5, lr} mov r5, r0 ldr r0, [r5, #0x10] cmp r0, #7 addls pc, pc, r0, lsl #2 b _02116a9c _02116a7c: ; jump table b _02116af4 ; case 0 b _02116af4 ; case 1 b _02116af4 ; case 2 b _02116a9c ; case 3 b _02116af4 ; case 4 b _02116af4 ; case 5 b _02116a9c ; case 6 b _02116af4 ; case 7 _02116a9c: ldr r0, _02116afc ; =data_027e0c68 bl func_02036808 cmp r0, #0 movne r0, #0 ldmneia sp!, {r3, r4, r5, pc} bl func_ov06_0210225c mov r4, r0 bl func_ov06_02102564 ldr r0, [r4, #0x230] cmp r0, #5 bne _02116ad4 mov r0, r5 bl func_ov10_021167a8 b _02116af4 _02116ad4: cmp r0, #6 bne _02116af4 mov r3, #3 ldr r0, _02116afc ; =data_027e0c68 add r1, r5, #0x1c add r2, r3, #0xca0000 strb r3, [r4, #0x23a] bl func_02036ce4 _02116af4: mov r0, #0 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov10_02116a64 _02116afc: .word data_027e0c68 .global func_ov10_02116b00 arm_func_start func_ov10_02116b00 func_ov10_02116b00: ; 0x02116b00 stmdb sp!, {r3, lr} bl func_ov06_0210225c bl func_ov06_021023d8 ldmia sp!, {r3, pc} arm_func_end func_ov10_02116b00 .global func_ov10_02116b10 arm_func_start func_ov10_02116b10 func_ov10_02116b10: ; 0x02116b10 stmdb sp!, {r3, lr} bl func_ov06_0210225c bl func_ov06_021024f0 ldmia sp!, {r3, pc} arm_func_end func_ov10_02116b10 .global func_ov10_02116b20 arm_func_start func_ov10_02116b20 func_ov10_02116b20: ; 0x02116b20 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov06_0210225c bl func_ov06_02101c9c cmp r0, #0 ldmeqia sp!, {r4, pc} bl func_ov06_0210225c mov r1, #5 strb r1, [r0, #0x23a] ldr r0, [r4, #0x18] cmp r0, #0 beq _02116b64 cmp r0, #1 beq _02116b88 cmp r0, #2 beq _02116bb4 ldmia sp!, {r4, pc} _02116b64: bl func_ov06_0210225c mov r1, r0 ldr r0, _02116be4 ; =data_027e0d54 add r1, r1, #4 bl func_ov10_021185e8 mov r0, r4 mov r1, #7 bl func_ov10_02116764 ldmia sp!, {r4, pc} _02116b88: bl func_ov06_0210225c mov r1, r0 ldr r0, _02116be4 ; =data_027e0d54 add r1, r1, #4 bl func_ov10_02118774 ldr r0, [r4, #8] blx func_ov10_02113a58 mov r0, r4 mov r1, #4 bl func_ov10_02116764 ldmia sp!, {r4, pc} _02116bb4: bl func_ov06_0210225c ldr r1, [r4, #8] add r0, r0, #4 str r0, [r1, #0x60] ldr r0, [r4, #8] blx func_ov10_021139ec ldr r0, [r4, #8] blx func_ov10_02113a58 mov r0, r4 mov r1, #4 bl func_ov10_02116764 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02116b20 _02116be4: .word data_027e0d54 .global func_ov10_02116be8 arm_func_start func_ov10_02116be8 func_ov10_02116be8: ; 0x02116be8 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x1c bl func_0203780c mov r0, r4 blx func_ov10_02112f44 mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_02116be8 .global func_ov10_02116c10 arm_func_start func_ov10_02116c10 func_ov10_02116c10: ; 0x02116c10 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x1c bl func_0203780c mov r0, r4 blx func_ov10_02112f44 mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_02116c10 .global func_ov10_02116c30 arm_func_start func_ov10_02116c30 func_ov10_02116c30: ; 0x02116c30 stmdb sp!, {r4, lr} mov r4, r0 bl func_0203780c mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_02116c30 .global func_ov10_02116c4c thumb_func_start func_ov10_02116c4c func_ov10_02116c4c: ; 0x02116c4c push {r4, lr} sub sp, #0x10 mov r2, #8 mov r3, #1 add r4, r0, #0 bl func_ov10_02112f18 ldr r0, _02116d20 ; =data_ov10_0211ee88 ldr r3, _02116d24 ; =func_ov10_02113e70 str r0, [r4] ldr r0, _02116d28 ; =func_ov10_02113e6c mov r1, #5 str r0, [sp] add r0, r4, #0 add r0, #0x18 mov r2, #0x18 blx func_0204f614 mov r1, #0x5a str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r2, #0 add r0, r4, #0 str r2, [sp, #8] add r0, #0x18 add r1, #0xba add r3, r2, #0 str r2, [sp, #0xc] blx func_ov00_020cfed0 add r0, r4, #0 mov r2, #1 mov r1, #6 add r0, #0x2b strb r1, [r0] mov r1, #0x5b str r1, [sp] str r2, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x30 add r1, #0xb9 add r3, r2, #0 blx func_ov00_020cfed0 add r0, r4, #0 mov r2, #3 mov r1, #7 add r0, #0x43 strb r1, [r0] mov r1, #0x5c str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x60 add r1, #0xb8 add r3, r2, #0 blx func_ov00_020cfed0 add r0, r4, #0 mov r2, #2 mov r1, #9 add r0, #0x73 strb r1, [r0] mov r1, #0x5e str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x48 add r1, #0xb6 add r3, r2, #0 blx func_ov00_020cfed0 add r0, r4, #0 mov r1, #8 add r0, #0x5b strb r1, [r0] mov r1, #0x5d str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x78 add r1, #0xb7 mov r2, #5 mov r3, #4 blx func_ov00_020cfed0 add r0, r4, #0 add sp, #0x10 pop {r4, pc} nop thumb_func_end func_ov10_02116c4c _02116d20: .word data_ov10_0211ee88 _02116d24: .word func_ov10_02113e70 - 1 _02116d28: .word func_ov10_02113e6c - 1 .global func_ov10_02116d2c arm_func_start func_ov10_02116d2c func_ov10_02116d2c: ; 0x02116d2c stmdb sp!, {r3, lr} mov ip, r0 mov r3, #0 mov r2, #1 _02116d3c: add r3, r3, #1 strb r2, [ip, #0x25] cmp r3, #5 add ip, ip, #0x18 blt _02116d3c bl func_ov10_02112f48 ldmia sp!, {r3, pc} arm_func_end func_ov10_02116d2c .global func_ov10_02116d58 arm_func_start func_ov10_02116d58 func_ov10_02116d58: ; 0x02116d58 mov r2, #0 str r2, [r0, #0x14] str r1, [r0, #0x10] bx lr arm_func_end func_ov10_02116d58 .global func_ov10_02116d68 arm_func_start func_ov10_02116d68 func_ov10_02116d68: ; 0x02116d68 stmdb sp!, {r3, lr} mov r1, #2 bl func_ov10_02116d58 ldr r0, _02116d84 ; =data_ov00_020eec9c mov r1, #0x11 bl func_ov00_020d77e4 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov10_02116d68 _02116d84: .word data_ov00_020eec9c .global func_ov10_02116d88 arm_func_start func_ov10_02116d88 func_ov10_02116d88: ; 0x02116d88 stmdb sp!, {r4, lr} mov r4, r0 ldr r0, [r4, #0x14] adds r0, r0, #1 str r0, [r4, #0x14] movmi r0, #0 strmi r0, [r4, #0x14] ldr r0, [r4, #0x10] cmp r0, #7 addls pc, pc, r0, lsl #2 ldmia sp!, {r4, pc} _02116db4: ; jump table b _02116df8 ; case 0 b _02116dd4 ; case 1 b _02116e38 ; case 2 b _02116e14 ; case 3 b _02116df8 ; case 4 b _02116e5c ; case 5 b _02116e88 ; case 6 b _02116df8 ; case 7 _02116dd4: ldr r0, _02116ea8 ; =data_027e05f8 ldrh r0, [r0, #2] tst r0, #2 mov r0, r4 beq _02116df0 bl func_ov10_02116d68 ldmia sp!, {r4, pc} _02116df0: bl func_ov10_02116eac ldmia sp!, {r4, pc} _02116df8: ldr r0, [r4, #0x14] cmp r0, #0x1e ldmleia sp!, {r4, pc} mov r0, r4 mov r1, #1 bl func_ov10_02116d58 ldmia sp!, {r4, pc} _02116e14: ldr r0, [r4, #0x14] cmp r0, #0x1e ldmleia sp!, {r4, pc} ldr r0, [r4, #8] mov r1, #4 add r0, r0, #0x10 mov r2, #0 bl func_ov10_0211c784 ldmia sp!, {r4, pc} _02116e38: ldr r0, [r4, #0x14] cmp r0, #0x1e ldmleia sp!, {r4, pc} ldr r0, [r4, #8] mov r1, #2 add r0, r0, #0x10 mov r2, #4 bl func_ov10_0211c784 ldmia sp!, {r4, pc} _02116e5c: ldr r1, [r4, #8] ldr r0, [r1, #0x68] cmp r0, #0 ldmneia sp!, {r4, pc} add r0, r1, #0x10 mov r1, #6 mov r2, #0 bl func_ov10_0211c784 ldr r0, [r4, #8] blx func_ov10_02113a90 ldmia sp!, {r4, pc} _02116e88: ldr r0, [r4, #8] ldr r0, [r0, #0x68] cmp r0, #1 ldmneia sp!, {r4, pc} mov r0, r4 mov r1, #1 bl func_ov10_02116d58 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02116d88 _02116ea8: .word data_027e05f8 .global func_ov10_02116eac arm_func_start func_ov10_02116eac func_ov10_02116eac: ; 0x02116eac stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} mov r4, r0 ldr r0, [r4, #0x10] cmp r0, #1 movne r0, #0 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} mov r6, #0 mov r8, r4 add sb, r4, #0x18 mov r5, r6 _02116ed4: mov r0, sb ldr ip, [r0] ldrh r7, [r8, #0x22] ldr ip, [ip] mov r1, r5 mov r2, r5 mov r3, r5 blx ip mov r2, r0 mov r0, r4 mov r1, r7 bl func_ov10_02116f2c cmp r0, #0 movne r0, #1 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} add r6, r6, #1 cmp r6, #5 add r8, r8, #0x18 add sb, sb, #0x18 blt _02116ed4 mov r0, #0 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} arm_func_end func_ov10_02116eac .global func_ov10_02116f2c arm_func_start func_ov10_02116f2c func_ov10_02116f2c: ; 0x02116f2c stmdb sp!, {r4, lr} mov r4, r0 tst r2, #8 moveq r0, #0 ldmeqia sp!, {r4, pc} sub r1, r1, #0x5a cmp r1, #4 addls pc, pc, r1, lsl #2 b _02117028 _02116f50: ; jump table b _02116f64 ; case 0 b _0211700c ; case 1 b _02116fac ; case 2 b _02117024 ; case 3 b _02116fd0 ; case 4 _02116f64: ldr r1, _02117030 ; =data_027e0d54 ldr r0, [r4, #8] ldrh r1, [r1, #0x16] blx func_ov10_02113358 ldr r0, [r0, #0xcf0] mov r1, #2 cmp r0, #0x47 movne r2, #1 ldr r0, [r4, #8] moveq r2, #0 blx func_ov10_02113364 ldr r0, _02117034 ; =data_ov00_020eec9c mov r1, #4 bl func_ov00_020d77e4 ldr r0, _02117038 ; =data_ov00_020eec68 mov r1, #0x20 bl func_ov00_020d716c b _02117028 _02116fac: ldr r0, [r4, #8] blx func_ov10_02113a58 mov r0, r4 mov r1, #5 bl func_ov10_02116d58 ldr r0, _02117034 ; =data_ov00_020eec9c mov r1, #0x10 bl func_ov00_020d77e4 b _02117028 _02116fd0: ldr r1, _02117030 ; =data_027e0d54 ldr r0, [r4, #8] ldrh r1, [r1, #0x16] blx func_ov10_02113358 bl func_ov10_0211a8fc cmp r0, #0 beq _02117028 ldr r0, [r4, #8] mov r1, #7 mov r2, #1 blx func_ov10_02113364 ldr r0, _02117034 ; =data_ov00_020eec9c mov r1, #0x10 bl func_ov00_020d77e4 b _02117028 _0211700c: mov r1, #3 bl func_ov10_02116d58 ldr r0, _02117034 ; =data_ov00_020eec9c mov r1, #0x10 bl func_ov00_020d77e4 b _02117028 _02117024: bl func_ov10_02116d68 _02117028: mov r0, #0 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02116f2c _02117030: .word data_027e0d54 _02117034: .word data_ov00_020eec9c _02117038: .word data_ov00_020eec68 .global func_ov10_0211703c arm_func_start func_ov10_0211703c func_ov10_0211703c: ; 0x0211703c stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x44 mov sl, r0 ldr r0, [sl, #0x14] mov r1, #0xf000 mov r0, r0, lsl #0xc bl Divide mov r5, r0 add r0, sp, #0x24 mov r6, #0 bl func_01ffbe34 mov r0, #1 strb r0, [sp, #0x2e] add r8, sl, #0x18 mov r7, r6 add r4, sp, #4 mov fp, #0xfa000 _02117080: ldr r0, [sl, #0x10] cmp r7, #4 subeq r5, r5, #0xc00 cmp r0, #7 addls pc, pc, r0, lsl #2 b _021170e4 _02117098: ; jump table b _021170b8 ; case 0 b _021170e4 ; case 1 b _021170d0 ; case 2 b _021170d0 ; case 3 b _021170b8 ; case 4 b _021170e4 ; case 5 b _021170e4 ; case 6 b _021170b8 ; case 7 _021170b8: mov r0, #0x1000 mov r1, #0 mov r2, r5 bl func_ov00_020d03f8 mov r6, r0 b _021170e4 _021170d0: mov r0, #0 mov r1, #0x1000 mov r2, r5 bl func_ov00_020d03f8 mov r6, r0 _021170e4: cmp r7, #4 addls pc, pc, r7, lsl #2 b _021172cc _021170f0: ; jump table b _02117104 ; case 0 b _02117160 ; case 1 b _021171b4 ; case 2 b _02117224 ; case 3 b _02117278 ; case 4 _02117104: mov r0, r4 bl func_01ffbe34 umull lr, ip, r6, fp adds r1, lr, #0x800 mov r2, #0 mov lr, r1, lsr #0xc mov r1, r2 mla ip, r6, r1, ip mov sb, r6, asr #0x1f mla ip, sb, fp, ip adc r1, ip, r1 orr lr, lr, r1, lsl #20 mov r0, #1 add r1, lr, #0x800 strb r0, [sp, #0xe] mov r0, #0 mov r1, r1, asr #0xc str r0, [sp] mov r0, r8 mov r3, r4 rsb r1, r1, #0 bl func_ov00_020d00c4 b _021172cc _02117160: mov sb, #0xfa000 umull lr, ip, r6, sb adds sb, lr, #0x800 mov r2, #0 mov lr, sb, lsr #0xc mov sb, r2 mla ip, r6, sb, ip mov r1, r6, asr #0x1f mov sb, #0xfa000 mla ip, r1, sb, ip mov r1, r2 adc r1, ip, r1 orr lr, lr, r1, lsl #20 mov r0, #0 add r1, lr, #0x800 str r0, [sp] mov r0, r8 mov r3, r4 mov r1, r1, asr #0xc bl func_ov00_020d00c4 b _021172cc _021171b4: ldr r1, _0211736c ; =data_027e0d54 ldr r0, [sl, #8] ldrh r1, [r1, #0x16] blx func_ov10_02113358 bl func_ov10_0211a8fc cmp r0, #0 beq _021172cc mov sb, #0x3c000 umull lr, ip, r6, sb adds sb, lr, #0x800 mov r1, #0 mov lr, sb, lsr #0xc mov sb, r1 mla ip, r6, sb, ip mov r2, r6, asr #0x1f mov sb, #0x3c000 mla ip, r2, sb, ip mov r2, r1 adc r2, ip, r2 orr lr, lr, r2, lsl #20 mov r0, #0 add r2, lr, #0x800 str r0, [sp] mov r0, r8 mov r3, r4 mov r2, r2, asr #0xc bl func_ov00_020d00c4 b _021172cc _02117224: mov sb, #0x7d000 umull lr, ip, r6, sb adds sb, lr, #0x800 mov r2, #0 mov lr, sb, lsr #0xc mov sb, r2 mla ip, r6, sb, ip mov r1, r6, asr #0x1f mov sb, #0x7d000 mla ip, r1, sb, ip mov r1, r2 adc r1, ip, r1 orr lr, lr, r1, lsl #20 mov r0, #0 add r1, lr, #0x800 str r0, [sp] mov r0, r8 mov r3, r4 mov r1, r1, asr #0xc bl func_ov00_020d00c4 b _021172cc _02117278: mov sb, #0x64000 umull lr, ip, r6, sb adds sb, lr, #0x800 mov r2, #0 mov lr, sb, lsr #0xc mov sb, r2 mla ip, r6, sb, ip mov r1, r6, asr #0x1f mov sb, #0x64000 mla ip, r1, sb, ip mov r1, r2 adc r1, ip, r1 orr lr, lr, r1, lsl #20 add r1, lr, #0x800 mov r0, #0 mov r1, r1, asr #0xc str r0, [sp] mov r0, r8 mov r3, r4 rsb r1, r1, #0 bl func_ov00_020d00c4 _021172cc: add r8, r8, #0x18 add r7, r7, #1 cmp r7, #5 blt _02117080 ldr r0, [sl, #0x10] cmp r0, #3 beq _02117308 cmp r0, #4 cmpne r0, #7 bne _0211731c mov r2, r5 mov r0, #0x1000 mov r1, #0 bl func_ov00_020d03f8 b _02117320 _02117308: mov r2, r5 mov r0, #0 mov r1, #0x1000 bl func_ov00_020d03f8 b _02117320 _0211731c: mov r0, #0 _02117320: mov r2, #0 sub r1, r2, #0x64000 umull r5, r4, r0, r1 sub r3, r2, #1 mla r4, r0, r3, r4 mov r0, r0, asr #0x1f adds r3, r5, #0x800 mla r4, r0, r1, r4 ldr r0, _0211736c ; =data_027e0d54 adc r1, r4, #0 mov r3, r3, lsr #0xc orr r3, r3, r1, lsl #20 add r3, r3, #0x800 ldrh r1, [r0, #0x16] ldr r0, [sl, #8] mov r3, r3, asr #0xc blx func_ov10_02113890 add sp, sp, #0x44 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov10_0211703c _0211736c: .word data_027e0d54 .global func_ov10_02117370 arm_func_start func_ov10_02117370 func_ov10_02117370: ; 0x02117370 stmdb sp!, {r3, lr} ldr r1, [r0, #0x10] cmp r1, #0 beq _02117390 cmp r1, #2 beq _021173f8 cmp r1, #7 bne _02117460 _02117390: ldr r0, [r0, #0x14] mov r1, #0xf000 mov r0, r0, lsl #0xc bl Divide mov r2, r0 mov r0, #0x1000 mov r1, #0 bl func_ov00_020d03f8 mov r1, #0xfa000 rsb r1, r1, #0 umull ip, r3, r0, r1 mvn r2, #0 mla r3, r0, r2, r3 mov r0, r0, asr #0x1f mla r3, r0, r1, r3 adds ip, ip, #0x800 adc r0, r3, #0 mov r1, ip, lsr #0xc orr r1, r1, r0, lsl #20 add r1, r1, #0x800 mov r2, r1, asr #0xc ldr r0, _02117470 ; =0x01ff0000 ldr r1, _02117474 ; =0x0400101c and r0, r0, r2, lsl #16 str r0, [r1] ldmia sp!, {r3, pc} _021173f8: ldr r0, [r0, #0x14] mov r1, #0xf000 mov r0, r0, lsl #0xc bl Divide mov r2, r0 mov r0, #0 mov r1, #0x1000 bl func_ov00_020d03f8 mov r1, #0xfa000 rsb r1, r1, #0 umull ip, r3, r0, r1 mvn r2, #0 mla r3, r0, r2, r3 mov r0, r0, asr #0x1f mla r3, r0, r1, r3 adds ip, ip, #0x800 adc r0, r3, #0 mov r1, ip, lsr #0xc orr r1, r1, r0, lsl #20 add r1, r1, #0x800 mov r2, r1, asr #0xc ldr r0, _02117470 ; =0x01ff0000 ldr r1, _02117474 ; =0x0400101c and r0, r0, r2, lsl #16 str r0, [r1] ldmia sp!, {r3, pc} _02117460: ldr r0, _02117474 ; =0x0400101c mov r1, #0 str r1, [r0] ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov10_02117370 _02117470: .word 0x01ff0000 _02117474: .word 0x0400101c .global func_ov10_02117478 arm_func_start func_ov10_02117478 func_ov10_02117478: ; 0x02117478 stmdb sp!, {r4, lr} mov r4, r0 ldr r3, _021174ac ; =func_ov10_02113e6c add r0, r4, #0x18 mov r1, #5 mov r2, #0x18 bl func_0204f754 mov r0, r4 blx func_ov10_02112f44 mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02117478 _021174ac: .word func_ov10_02113e6c - 1 .global func_ov10_021174b0 arm_func_start func_ov10_021174b0 func_ov10_021174b0: ; 0x021174b0 stmdb sp!, {r4, lr} mov r4, r0 ldr r3, _021174dc ; =func_ov10_02113e6c add r0, r4, #0x18 mov r1, #5 mov r2, #0x18 bl func_0204f754 mov r0, r4 blx func_ov10_02112f44 mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_021174b0 _021174dc: .word func_ov10_02113e6c - 1 .global func_ov10_021174e0 arm_func_start func_ov10_021174e0 func_ov10_021174e0: ; 0x021174e0 ldr r1, _021174f8 ; =data_ov10_0211eec4 ldr ip, _021174fc ; =func_ov10_0211ccec mov r2, r0 ldr r1, [r1, #0x20] mov r0, #0 bx ip .align 2, 0 arm_func_end func_ov10_021174e0 _021174f8: .word data_ov10_0211eec4 _021174fc: .word func_ov10_0211ccec - 1 .global func_ov10_02117500 arm_func_start func_ov10_02117500 func_ov10_02117500: ; 0x02117500 ldr r1, _0211751c ; =data_ov10_0211eec4 mov r2, r0 ldr r1, [r1, #0x20] ldr ip, _02117520 ; =func_ov10_0211ccec mov r0, #1 add r1, r1, #0x1400 bx ip .align 2, 0 arm_func_end func_ov10_02117500 _0211751c: .word data_ov10_0211eec4 _02117520: .word func_ov10_0211ccec - 1 .global func_ov10_02117524 arm_func_start func_ov10_02117524 func_ov10_02117524: ; 0x02117524 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x30 ldr r2, _021177c4 ; =0x0003f500 mov sb, r1 mul r2, sb, r2 mov r3, #0xc mov r8, #0 mul r3, r0, r3 str r0, [sp, #0x14] add r0, r2, #0 add r4, r2, #0xf200 add r1, r2, #0xf300 str r0, [sp, #0x24] add r0, r2, #0x3e800 add sl, r4, #0x30000 str r3, [sp, #0x18] str r8, [sp, #0x20] mov fp, r8 mov r5, r8 str r0, [sp, #0x1c] add r6, r1, #0x30000 add r7, r2, #0x3f400 add r4, sp, #0x28 _02117580: ldr r0, [sp, #0x14] cmp r0, #4 addls pc, pc, r0, lsl #2 b _02117658 _02117590: ; jump table b _021175a4 ; case 0 b _021175c8 ; case 1 b _021175ec ; case 2 b _02117610 ; case 3 b _02117634 ; case 4 _021175a4: ldr r1, _021177c8 ; =data_ov10_0211f400 ldr r0, [sp, #0x24] ldr r1, [r1] ldr r1, [r1, sb, lsl #2] add r2, r1, #4 ldr r1, [sp, #0x20] add r1, r2, r1 str r1, [r4, r8, lsl #2] b _02117664 _021175c8: ldr r1, _021177c8 ; =data_ov10_0211f400 ldr r0, [sp, #0x1c] ldr r1, [r1] ldr r1, [r1, sb, lsl #2] add r1, r1, #4 add r1, r1, #0x2800 add r1, r1, fp str r1, [r4, r8, lsl #2] b _02117664 _021175ec: ldr r1, _021177c8 ; =data_ov10_0211f400 mov r0, sl ldr r1, [r1] ldr r1, [r1, sb, lsl #2] add r1, r1, #0x204 add r1, r1, #0x3000 add r1, r1, r5 str r1, [r4, r8, lsl #2] b _02117664 _02117610: ldr r1, _021177c8 ; =data_ov10_0211f400 mov r0, r6 ldr r1, [r1] ldr r1, [r1, sb, lsl #2] add r1, r1, #0x304 add r1, r1, #0x3000 add r1, r1, r5 str r1, [r4, r8, lsl #2] b _02117664 _02117634: ldr r1, _021177c8 ; =data_ov10_0211f400 mov r0, r7 ldr r1, [r1] ldr r1, [r1, sb, lsl #2] add r1, r1, #4 add r1, r1, #0x3400 add r1, r1, r5 str r1, [r4, r8, lsl #2] b _02117664 _02117658: add sp, sp, #0x30 mov r0, #0 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} _02117664: mov r1, #0 str r1, [sp] str r1, [sp, #4] mov r1, #6 str r1, [sp, #8] mov r1, #1 str r1, [sp, #0xc] mov r1, #0 str r1, [sp, #0x10] ldr r3, _021177cc ; =data_ov10_0211e784 ldr r2, [sp, #0x18] ldr r1, [r4, r8, lsl #2] ldr r2, [r3, r2] mov r3, #0 blx func_02040464 cmp r0, #0 addeq sp, sp, #0x30 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} ldr r0, [sp, #0x24] add r8, r8, #1 add r0, r0, #0x1400 str r0, [sp, #0x24] ldr r0, [sp, #0x20] add fp, fp, #0x500 add r0, r0, #0x1400 str r0, [sp, #0x20] ldr r0, [sp, #0x1c] add sl, sl, #0x80 add r0, r0, #0x500 str r0, [sp, #0x1c] add r5, r5, #0x80 add r6, r6, #0x80 add r7, r7, #0x80 cmp r8, #2 blt _02117580 ldr r2, _021177cc ; =data_ov10_0211e784 ldr r1, [sp, #0x18] ldr r0, [sp, #0x28] ldr r4, [r2, r1] mov r1, r4 blx func_0202f154 cmp r0, #0 beq _02117764 ldr r5, [sp, #0x2c] mov r1, r4 mov r0, r5 blx func_0202f154 cmp r0, #0 beq _02117744 ldr r0, [sp, #0x28] mov r1, r5 mov r2, r4 bl func_0204366c cmp r0, #0 beq _021177b8 _02117744: ldr r0, _021177c8 ; =data_ov10_0211f400 ldr r1, _021177d0 ; =data_ov10_0211e78c ldr r2, [r0] ldr r0, [sp, #0x18] ldr r1, [r1, r0] ldr r0, [r2, sb, lsl #2] bl func_ov10_02119fa8 b _021177b8 _02117764: ldr r0, [sp, #0x14] mov r1, #0xc mul r2, r0, r1 ldr r0, _021177c8 ; =data_ov10_0211f400 ldr r1, _021177d4 ; =data_ov10_0211e788 ldr r0, [r0] ldr r1, [r1, r2] ldr r0, [r0, sb, lsl #2] bl func_ov10_02119fa8 ldr r0, [sp, #0x2c] mov r1, r4 blx func_0202f154 cmp r0, #0 bne _021177b8 ldr r0, _021177c8 ; =data_ov10_0211f400 ldr r1, _021177d0 ; =data_ov10_0211e78c ldr r2, [r0] ldr r0, [sp, #0x18] ldr r1, [r1, r0] ldr r0, [r2, sb, lsl #2] bl func_ov10_02119fa8 _021177b8: mov r0, #1 add sp, sp, #0x30 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov10_02117524 _021177c4: .word 0x0003f500 _021177c8: .word data_ov10_0211f400 _021177cc: .word data_ov10_0211e784 _021177d0: .word data_ov10_0211e78c _021177d4: .word data_ov10_0211e788 .global func_ov10_021177d8 arm_func_start func_ov10_021177d8 func_ov10_021177d8: ; 0x021177d8 stmdb sp!, {r4, lr} ldr r1, _0211781c ; =data_027e0ce0 mov r0, #0x1900 ldr r1, [r1, #4] mov r2, #4 bl _ZN9SysObjectnwEmPjj movs r4, r0 beq _02117804 bl func_ov10_02117874 add r0, r4, #0x1400 bl func_ov10_02117828 _02117804: ldr r1, _02117820 ; =data_ov10_0211eec4 ldr r0, _02117824 ; =data_ov10_0211f400 mov r2, #0 str r4, [r1, #0x20] str r2, [r0] ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_021177d8 _0211781c: .word data_027e0ce0 _02117820: .word data_ov10_0211eec4 _02117824: .word data_ov10_0211f400 .global func_ov10_02117828 arm_func_start func_ov10_02117828 func_ov10_02117828: ; 0x02117828 stmdb sp!, {r4, r5, r6, r7, r8, lr} mov r8, r0 add r7, r8, #0x180 add r4, r8, #0x440 mov r6, #0 mov r5, #0x16 _02117840: mov r0, r6 mov r1, r7 mov r2, r5 bl func_020078c0 add r7, r7, #0x16 cmp r7, r4 blo _02117840 mov r0, r4 blx func_ov00_0207a4f0 mov r0, r8 blx func_ov00_0207a5ac mov r0, r8 ldmia sp!, {r4, r5, r6, r7, r8, pc} arm_func_end func_ov10_02117828 .global func_ov10_02117874 arm_func_start func_ov10_02117874 func_ov10_02117874: ; 0x02117874 stmdb sp!, {r3, r4, r5, lr} mov r4, r0 mov r1, r4 mov r0, #0 mov r2, #0x10 bl func_020078f4 add r1, r4, #0x10 mov r0, #0 mov r2, #4 bl func_020078f4 add r1, r4, #0x14 mov r0, #0 mov r2, #0xc bl func_020078f4 mov r0, #0 add r1, r4, #0x20 mov r2, #4 bl func_020078f4 mov r0, #0 strh r0, [r4, #0x7c] strb r0, [r4, #0x7e] strb r0, [r4, #0x7f] mov r0, r4 blx func_ov00_0207a38c mov r0, #0 add r1, r4, #0xa8 mov r2, #0x48 bl func_02007938 mov r0, #0 add r1, r4, #0xf0 mov r2, #8 bl func_020078c0 ldr r1, _021179e0 ; =func_ov10_02112d9c add r0, r4, #0xf8 str r1, [sp] mov r1, #0x40 mov r2, #8 ldr r3, _021179e4 ; =func_ov10_02117a60 bl func_0204f614 ldr r1, _021179e8 ; =func_ov10_02112da0 add r0, r4, #0x2f8 str r1, [sp] mov r1, #0xcf mov r2, #0xc ldr r3, _021179ec ; =func_ov10_02117a10 bl func_0204f614 add r5, r4, #0xac mov r0, #0 add r1, r5, #0xc00 mov r2, #0x40 bl func_020078f4 add r1, r5, #0xc00 mov r0, #0 mov r2, #0x40 bl func_020078f4 add r0, r4, #0xec add r5, r0, #0xc00 ldr r1, _021179f0 ; =func_ov10_02112da4 add r0, r5, #0x30 str r1, [sp] mov r1, #8 mov r2, #0x30 ldr r3, _021179f4 ; =func_ov10_021179f8 bl func_0204f614 mov r0, #0 add r1, r5, #0x1b0 mov r2, #8 bl func_020078f4 add r1, r5, #0x1b8 mov r0, #0 mov r2, #4 bl func_020078f4 mov r0, r5 blx func_ov00_0207a3e4 add r1, r4, #0xeb0 mov r0, #0 mov r2, #8 bl func_020078f4 add r5, r4, #0x2b8 add r1, r5, #0xc00 mov r0, #0 mov r2, #0x540 bl func_020078f4 add r1, r5, #0xc00 mov r0, #0 mov r2, #0x540 bl func_020078f4 mov r0, r4 blx func_ov00_0207a418 mov r0, r4 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov10_02117874 _021179e0: .word func_ov10_02112d9c - 1 _021179e4: .word func_ov10_02117a60 - 1 _021179e8: .word func_ov10_02112da0 - 1 _021179ec: .word func_ov10_02117a10 - 1 _021179f0: .word func_ov10_02112da4 - 1 _021179f4: .word func_ov10_021179f8 - 1 .global func_ov10_021179f8 arm_func_start func_ov10_021179f8 func_ov10_021179f8: ; 0x021179f8 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x1c bl func_ov00_020c1500 mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_021179f8 .global func_ov10_02117a10 arm_func_start func_ov10_02117a10 func_ov10_02117a10: ; 0x02117a10 stmdb sp!, {r4, lr} mov r4, r0 mov r1, r4 mov r0, #0 mov r2, #8 bl func_020078f4 add r1, r4, #8 mov r0, #0 mov r2, #4 bl func_020078f4 mov r1, r4 mov r0, #0 mov r2, #8 bl func_020078f4 add r1, r4, #8 mov r0, #0 mov r2, #4 bl func_020078f4 mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_02117a10 .global func_ov10_02117a60 arm_func_start func_ov10_02117a60 func_ov10_02117a60: ; 0x02117a60 stmdb sp!, {r4, lr} mov r4, r0 mov r1, r4 mov r0, #0 mov r2, #4 bl func_020078f4 mov r1, r4 mov r0, #0 mov r2, #8 bl func_020078f4 mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_02117a60 .global func_ov10_02117a90 arm_func_start func_ov10_02117a90 func_ov10_02117a90: ; 0x02117a90 stmdb sp!, {r4, lr} ldr r0, _02117b04 ; =data_ov10_0211eec4 ldr r4, [r0, #0x20] cmp r4, #0 beq _02117aec add r0, r4, #0x11c ldr r3, _02117b08 ; =func_ov10_02112da4 add r0, r0, #0xc00 mov r1, #8 mov r2, #0x30 bl func_0204f754 ldr r3, _02117b0c ; =func_ov10_02112da0 add r0, r4, #0x2f8 mov r1, #0xcf mov r2, #0xc bl func_0204f754 ldr r3, _02117b10 ; =func_ov10_02112d9c add r0, r4, #0xf8 mov r1, #0x40 mov r2, #8 bl func_0204f754 mov r0, r4 bl _ZN9SysObjectdlEPv _02117aec: ldr r1, _02117b04 ; =data_ov10_0211eec4 mov r2, #0 ldr r0, _02117b14 ; =data_ov10_0211f400 str r2, [r1, #0x20] str r2, [r0] ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02117a90 _02117b04: .word data_ov10_0211eec4 _02117b08: .word func_ov10_02112da4 - 1 _02117b0c: .word func_ov10_02112da0 - 1 _02117b10: .word func_ov10_02112d9c - 1 _02117b14: .word data_ov10_0211f400 .global func_ov10_02117b18 arm_func_start func_ov10_02117b18 func_ov10_02117b18: ; 0x02117b18 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} ldr r8, _02117c10 ; =data_027e0d54 mov sl, r0 ldrh r0, [r8, #0x14] blx func_020400f4 mov sb, #0 ldr r4, _02117c14 ; =data_ov10_0211f400 mov r7, sb mov r6, #1 mov r5, #2 mov fp, #3 _02117b44: cmp sl, #0 beq _02117b58 ldrh r0, [r8, #0x16] cmp sb, r0 beq _02117be8 _02117b58: mov r0, r7 mov r1, sb bl func_ov10_02117524 cmp r0, #0 beq _02117bbc mov r0, r6 mov r1, sb bl func_ov10_02117524 cmp r0, #0 beq _02117bbc mov r0, r5 mov r1, sb bl func_ov10_02117524 cmp r0, #0 beq _02117bbc mov r0, fp mov r1, sb bl func_ov10_02117524 cmp r0, #0 beq _02117bbc mov r0, #4 mov r1, sb bl func_ov10_02117524 cmp r0, #0 bne _02117bd0 _02117bbc: blx func_020400c0 mov r1, #1 str r0, [r8, #0x10] strb r1, [r8, #0xf] b _02117bfc _02117bd0: ldr r0, [r4] ldr r0, [r0, sb, lsl #2] bl func_ov10_0211a108 ldr r0, [r4] ldr r0, [r0, sb, lsl #2] bl func_ov10_0211a2fc _02117be8: add r0, sb, #1 mov r0, r0, lsl #0x10 mov sb, r0, lsr #0x10 cmp sb, #2 blo _02117b44 _02117bfc: ldrh r0, [r8, #0x14] blx func_02040100 mov r0, #0 strb r0, [r8, #0xd] ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov10_02117b18 _02117c10: .word data_027e0d54 _02117c14: .word data_ov10_0211f400 .global func_ov10_02117c18 arm_func_start func_ov10_02117c18 func_ov10_02117c18: ; 0x02117c18 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x104 ldr r2, _02117d94 ; =data_ov10_0211f400 mov sl, r0 str r1, [r2] ldrb r0, [sl, #0xc] cmp r0, #0 ldreq r0, [sl, #0x10] cmpeq r0, #0 addne sp, sp, #0x104 ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} ldr r1, _02117d98 ; =data_027e0618 mov r0, #0 str r0, [sp] ldr r0, [r1, #4] cmp r0, #5 cmpne r0, #6 bne _02117d68 ldr r1, _02117d9c ; =data_ov00_020ec718 mov r2, #1 add r0, sp, #0x84 str r2, [sp] blx func_ov00_0207a614 ldr r1, _02117da0 ; =data_ov00_020ec754 add r0, sp, #4 ldr r1, [r1] bl func_ov10_02119a14 mov r5, #0 ldr fp, _02117da4 ; =data_ov00_020ec218 ldr sb, _02117da8 ; =data_ov00_020ec758 ldr r4, _02117d94 ; =data_ov10_0211f400 mov r6, r5 mov r7, r5 mov r8, r5 _02117ca0: ldrh r1, [sl, #0x16] ldr r3, [r4] ldr r0, _02117dac ; =data_ov00_020e9e18 ldr r1, [r3, r1, lsl #2] mov r2, #0x1400 add r1, r1, #4 add r1, r1, r6 bl func_02007984 ldrh r1, [sl, #0x16] ldr r3, [r4] mov r0, fp ldr r1, [r3, r1, lsl #2] mov r2, #0x500 add r1, r1, #4 add r1, r1, #0x2800 add r1, r1, r7 bl func_02007984 ldrh r1, [sl, #0x16] ldr r3, [r4] add r0, sp, #0x84 ldr r1, [r3, r1, lsl #2] mov r2, #0x80 add r1, r1, #0x204 add r1, r1, #0x3000 add r1, r1, r8 bl func_020078d8 ldrh r1, [sl, #0x16] ldr r3, [r4] add r0, sp, #4 ldr r1, [r3, r1, lsl #2] mov r2, #0x80 add r1, r1, #0x304 add r1, r1, #0x3000 add r1, r1, r8 bl func_02007984 ldrh r1, [sl, #0x16] ldr r3, [r4] mov r0, sb ldr r1, [r3, r1, lsl #2] mov r2, #0x80 add r1, r1, #4 add r1, r1, #0x3400 add r1, r1, r8 bl func_02007984 add r5, r5, #1 add r6, r6, #0x1400 add r7, r7, #0x500 add r8, r8, #0x80 cmp r5, #2 blt _02117ca0 _02117d68: mov r0, sl bl func_ov00_0207a2d8 ldr r0, _02117db0 ; =data_027e08e4 ldr r2, _02117db4 ; =func_ov10_02117b18 ldr r3, [sp] mov r4, #1 mov r1, #0 strb r4, [sl, #0xd] blx func_0202f360 add sp, sp, #0x104 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov10_02117c18 _02117d94: .word data_ov10_0211f400 _02117d98: .word data_027e0618 _02117d9c: .word data_ov00_020ec718 _02117da0: .word data_ov00_020ec754 _02117da4: .word data_ov00_020ec218 _02117da8: .word data_ov00_020ec758 _02117dac: .word data_ov00_020e9e18 _02117db0: .word data_027e08e4 _02117db4: .word func_ov10_02117b18 - 1 .global func_ov10_02117db8 arm_func_start func_ov10_02117db8 func_ov10_02117db8: ; 0x02117db8 stmdb sp!, {r4, lr} sub sp, sp, #0x18 ldr r4, _02117e3c ; =data_027e0d54 ldrh r0, [r4, #0x14] blx func_020400f4 mov r0, #0 str r0, [sp] str r0, [sp, #4] mov r1, #6 str r1, [sp, #8] mov r2, #1 str r2, [sp, #0xc] add r1, sp, #0x14 mov r3, r0 str r0, [sp, #0x10] blx func_02040464 cmp r0, #0 beq _02117e10 ldrh r0, [r4, #0x16] bl func_ov10_0211cee0 cmp r0, #0 bne _02117e20 _02117e10: blx func_020400c0 mov r1, #2 str r0, [r4, #0x10] strb r1, [r4, #0xf] _02117e20: ldrh r0, [r4, #0x14] blx func_02040100 mov r0, #0 strb r0, [r4, #0xd] strb r0, [r4, #0xe] add sp, sp, #0x18 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02117db8 _02117e3c: .word data_027e0d54 .global func_ov10_02117e40 arm_func_start func_ov10_02117e40 func_ov10_02117e40: ; 0x02117e40 stmdb sp!, {r3, r4, r5, r6, r7, lr} mov r4, r0 ldr r0, _02117f20 ; =data_ov10_0211f400 strh r1, [r4, #0x16] ldr r0, [r0] ldr r6, [r0, r1, lsl #2] mov r0, r6 bl func_ov10_0211a930 mov r5, r0 ldr r1, _02117f24 ; =data_ov00_020e9e18 add r0, r6, #4 mov r2, #0x1400 bl func_02007984 add r0, r6, #4 ldr r1, _02117f28 ; =data_ov00_020ec218 add r0, r0, #0x2800 mov r2, #0x500 bl func_02007984 add r0, r6, #0x204 ldr r1, _02117f2c ; =data_ov00_020ec718 add r0, r0, #0x3000 mov r2, #0x3c bl func_020078d8 ldr r7, _02117f30 ; =data_ov00_020ec754 add r0, r6, #0x304 add r0, r0, #0x3000 mov r1, r7 mov r2, #4 bl func_02007908 add r0, r6, #4 ldr r1, _02117f34 ; =data_ov00_020ec758 add r0, r0, #0x3400 mov r2, #0x80 bl func_02007984 ldr r0, _02117f24 ; =data_ov00_020e9e18 blx func_ov10_0211e498 ldr r0, _02117f38 ; =data_ov00_020eacc8 mov r1, r4 mov r2, #8 bl func_02007908 mov r0, r7 mov r1, #0 bl func_ov10_021199bc cmp r5, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} mov r0, r4 bl func_ov00_0207a2d8 mov ip, #1 mov r1, #0 strb ip, [r4, #0xd] ldr r0, _02117f3c ; =data_027e08e4 ldr r2, _02117f40 ; =func_ov10_02117db8 mov r3, r1 strb ip, [r4, #0xe] blx func_0202f360 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 arm_func_end func_ov10_02117e40 _02117f20: .word data_ov10_0211f400 _02117f24: .word data_ov00_020e9e18 _02117f28: .word data_ov00_020ec218 _02117f2c: .word data_ov00_020ec718 _02117f30: .word data_ov00_020ec754 _02117f34: .word data_ov00_020ec758 _02117f38: .word data_ov00_020eacc8 _02117f3c: .word data_027e08e4 _02117f40: .word func_ov10_02117db8 - 1 .global func_ov10_02117f44 arm_func_start func_ov10_02117f44 func_ov10_02117f44: ; 0x02117f44 stmdb sp!, {r4, lr} sub sp, sp, #0x18 ldr r4, _02118028 ; =data_027e0d54 ldrh r0, [r4, #0x14] blx func_020400f4 mov r0, #0 str r0, [sp] str r0, [sp, #4] mov r1, #6 str r1, [sp, #8] mov r2, #1 str r2, [sp, #0xc] add r1, sp, #0x14 mov r3, r0 str r0, [sp, #0x10] blx func_02040464 cmp r0, #0 beq _02117ff8 mvn r0, #0 bl func_ov10_021174e0 cmp r0, #0 beq _02117ff8 mvn r0, #0 bl func_ov10_0211cfd8 cmp r0, #0 beq _02117ff8 mvn r0, #0 bl func_ov10_02117500 cmp r0, #0 beq _02117ff8 mvn r0, #0 bl func_ov10_0211cee0 cmp r0, #0 beq _02117ff8 mvn r0, #0 bl func_ov10_0211cf40 cmp r0, #0 beq _02117ff8 mvn r0, #0 bl func_ov10_0211cf74 cmp r0, #0 beq _02117ff8 bl func_ov10_0211d0b0 cmp r0, #0 bne _02118008 _02117ff8: blx func_020400c0 mov r1, #2 str r0, [r4, #0x10] strb r1, [r4, #0xf] _02118008: ldrh r0, [r4, #0x14] blx func_02040100 mov r0, #0 strb r0, [r4, #0xd] strb r0, [r4, #0xc] strb r0, [r4, #0xe] add sp, sp, #0x18 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02117f44 _02118028: .word data_027e0d54 .global func_ov10_0211802c arm_func_start func_ov10_0211802c func_ov10_0211802c: ; 0x0211802c stmdb sp!, {r4, lr} mov r4, r0 ldr r1, [r4, #0x10] cmp r1, #0 ldmneia sp!, {r4, pc} bl func_ov00_0207a2d8 mov ip, #1 mov r1, #0 strb ip, [r4, #0xd] ldr r0, _02118068 ; =data_027e08e4 ldr r2, _0211806c ; =func_ov10_02117f44 mov r3, r1 strb ip, [r4, #0xe] blx func_0202f360 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_0211802c _02118068: .word data_027e08e4 _0211806c: .word func_ov10_02117f44 - 1 .global func_ov10_02118070 arm_func_start func_ov10_02118070 func_ov10_02118070: ; 0x02118070 stmdb sp!, {r3, r4, r5, lr} sub sp, sp, #0x18 ldr r4, _02118118 ; =data_027e0d54 mov r1, r0, lsl #0x10 ldrh r0, [r4, #0x14] mov r5, r1, lsr #0x10 blx func_020400f4 mov r0, #0 str r0, [sp] str r0, [sp, #4] mov r1, #6 str r1, [sp, #8] mov r2, #1 str r2, [sp, #0xc] add r1, sp, #0x14 mov r3, r0 str r0, [sp, #0x10] blx func_02040464 cmp r0, #0 beq _021180d8 ldr r0, _0211811c ; =data_ov10_0211f400 ldr r0, [r0] ldr r0, [r0, r5, lsl #2] bl func_ov10_0211a5f4 cmp r0, #0 bne _021180ec _021180d8: blx func_020400c0 mov r1, #2 str r0, [r4, #0x10] strb r1, [r4, #0xf] b _021180fc _021180ec: ldr r0, _0211811c ; =data_ov10_0211f400 ldr r0, [r0] ldr r0, [r0, r5, lsl #2] bl func_ov10_02119ddc _021180fc: ldrh r0, [r4, #0x14] blx func_02040100 mov r0, #0 strb r0, [r4, #0xd] strb r0, [r4, #0xe] add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov10_02118070 _02118118: .word data_027e0d54 _0211811c: .word data_ov10_0211f400 .global func_ov10_02118120 arm_func_start func_ov10_02118120 func_ov10_02118120: ; 0x02118120 stmdb sp!, {r4, r5, r6, lr} ldr r2, _02118188 ; =data_ov10_0211f400 mov r5, r1 ldr r1, [r2] mov r6, r0 ldr r0, [r1, r5, lsl #2] ldrb r4, [r0, #2] cmp r4, #0 bne _02118148 bl func_ov10_0211a454 _02118148: ldr r0, [r6, #0x10] cmp r0, #0 ldmneia sp!, {r4, r5, r6, pc} mov r0, r6 bl func_ov00_0207a2d8 mov r0, #1 cmp r4, #0 ldrne r2, _0211818c ; =func_ov10_021183d8 strb r0, [r6, #0xd] strb r0, [r6, #0xe] ldreq r2, _02118190 ; =func_ov10_02118070 ldr r0, _02118194 ; =data_027e08e4 mov r3, r5 mov r1, #0 blx func_0202f360 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 arm_func_end func_ov10_02118120 _02118188: .word data_ov10_0211f400 _0211818c: .word func_ov10_021183d8 - 1 _02118190: .word func_ov10_02118070 - 1 _02118194: .word data_027e08e4 .global func_ov10_02118198 arm_func_start func_ov10_02118198 func_ov10_02118198: ; 0x02118198 stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #0x98 ldr r4, _02118384 ; =data_027e0d54 mov r1, r0, lsl #0x10 add r0, sp, #0x18 mov r6, r1, lsr #0x10 ldrh r5, [r4, #0x16] blx func_ov00_0207a6d0 ldr r0, _02118388 ; =data_ov10_0211f400 add lr, sp, #0x1c ldr r8, [r0] add r3, sp, #0x28 ldr r0, [r8, r6, lsl #2] add ip, sp, #0x40 add r1, r0, #0x3000 add r0, r0, #4 ldr r1, [r1, #0x404] add r7, r0, #0x3400 add r0, r7, #4 str r1, [sp, #0x18] ldmia r0, {r0, r1, r2} stmia lr, {r0, r1, r2} add r0, r7, #0x10 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, [r7, #0x1c] add lr, r7, #0x28 str r0, [sp, #0x34] ldr r0, [r7, #0x20] str r0, [sp, #0x38] ldr r0, [r7, #0x24] str r0, [sp, #0x3c] ldmia lr!, {r0, r1, r2, r3} stmia ip!, {r0, r1, r2, r3} ldr r1, [lr] add r0, sp, #0x18 str r1, [ip] ldr r1, [r7, #0x3c] str r1, [sp, #0x54] ldr r1, [r8, r5, lsl #2] add r1, r1, #4 add r1, r1, #0x3400 bl func_ov10_02119b44 mov r0, r4 ldrh r0, [r0, #0x14] blx func_020400f4 mov r0, #0 str r0, [sp] str r0, [sp, #4] mov r1, #6 str r1, [sp, #8] mov r2, #1 str r2, [sp, #0xc] add r1, sp, #0x14 mov r3, r0 str r0, [sp, #0x10] blx func_02040464 cmp r0, #0 beq _02118328 mov r0, r6 bl func_ov10_0211cfa0 cmp r0, #0 beq _02118328 ldr r0, _02118388 ; =data_ov10_0211f400 mov r1, r6 ldr r0, [r0] ldr r0, [r0, r5, lsl #2] add r0, r0, #4 bl func_ov10_0211cd4c cmp r0, #0 beq _02118328 ldr r2, _0211838c ; =data_ov00_020eb218 mov r0, r5 mov r1, r6 bl func_ov10_0211d13c cmp r0, #0 beq _02118328 ldr r0, _02118388 ; =data_ov10_0211f400 mov r1, r6 ldr r0, [r0] ldr r0, [r0, r5, lsl #2] add r0, r0, #0x204 add r0, r0, #0x3000 blx func_ov00_0207c118 cmp r0, #0 beq _02118328 ldr r0, _02118388 ; =data_ov10_0211f400 mov r1, r6 ldr r0, [r0] ldr r0, [r0, r5, lsl #2] add r0, r0, #0x304 add r0, r0, #0x3000 bl func_ov10_0211ce5c cmp r0, #0 beq _02118328 add r0, sp, #0x18 mov r1, r6 bl func_ov01_020f7b88 cmp r0, #0 bne _0211833c _02118328: blx func_020400c0 mov r1, #2 str r0, [r4, #0x10] strb r1, [r4, #0xf] b _02118358 _0211833c: ldr r0, _02118388 ; =data_ov10_0211f400 add r3, sp, #0x18 ldr r1, [r0] mov r2, #0 ldr r0, [r1, r6, lsl #2] ldr r1, [r1, r5, lsl #2] bl func_ov10_02119e88 _02118358: ldrh r0, [r4, #0x14] blx func_02040100 ldr r1, _0211838c ; =data_ov00_020eb218 mov r0, #0 mov r2, #0x1000 bl func_02007938 mov r0, #0 strb r0, [r4, #0xd] strb r0, [r4, #0xe] add sp, sp, #0x98 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 arm_func_end func_ov10_02118198 _02118384: .word data_027e0d54 _02118388: .word data_ov10_0211f400 _0211838c: .word data_ov00_020eb218 .global func_ov10_02118390 arm_func_start func_ov10_02118390 func_ov10_02118390: ; 0x02118390 stmdb sp!, {r3, r4, r5, lr} mov r5, r0 ldr r2, [r5, #0x10] mov r4, r1 cmp r2, #0 ldmneia sp!, {r3, r4, r5, pc} bl func_ov00_0207a2d8 mov ip, #1 strb ip, [r5, #0xd] ldr r0, _021183d0 ; =data_027e08e4 ldr r2, _021183d4 ; =func_ov10_02118198 mov r3, r4 mov r1, #0 strb ip, [r5, #0xe] blx func_0202f360 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov10_02118390 _021183d0: .word data_027e08e4 _021183d4: .word func_ov10_02118198 - 1 .global func_ov10_021183d8 arm_func_start func_ov10_021183d8 func_ov10_021183d8: ; 0x021183d8 stmdb sp!, {r3, r4, r5, lr} sub sp, sp, #0x18 ldr r4, _021184d8 ; =data_027e0d54 mov r1, r0, lsl #0x10 ldrh r0, [r4, #0x14] mov r5, r1, lsr #0x10 blx func_020400f4 mov r0, #0 str r0, [sp] str r0, [sp, #4] mov r1, #6 str r1, [sp, #8] mov r2, #1 str r2, [sp, #0xc] add r1, sp, #0x14 mov r3, r0 str r0, [sp, #0x10] blx func_02040464 cmp r0, #0 beq _02118498 mov r0, r5 bl func_ov10_0211cfa0 cmp r0, #0 beq _02118498 mov r0, r5 bl func_ov10_021174e0 cmp r0, #0 beq _02118498 mov r0, r5 bl func_ov10_0211cfd8 cmp r0, #0 beq _02118498 mov r0, r5 bl func_ov10_02117500 cmp r0, #0 beq _02118498 mov r0, r5 bl func_ov10_0211cee0 cmp r0, #0 beq _02118498 mov r0, r5 bl func_ov10_0211cf40 cmp r0, #0 beq _02118498 mov r0, r5 bl func_ov10_0211cf74 cmp r0, #0 bne _021184ac _02118498: blx func_020400c0 mov r1, #2 str r0, [r4, #0x10] strb r1, [r4, #0xf] b _021184bc _021184ac: ldr r0, _021184dc ; =data_ov10_0211f400 ldr r0, [r0] ldr r0, [r0, r5, lsl #2] bl func_ov10_02119e0c _021184bc: ldrh r0, [r4, #0x14] blx func_02040100 mov r0, #0 strb r0, [r4, #0xd] strb r0, [r4, #0xe] add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov10_021183d8 _021184d8: .word data_027e0d54 _021184dc: .word data_ov10_0211f400 .global func_ov10_021184e0 arm_func_start func_ov10_021184e0 func_ov10_021184e0: ; 0x021184e0 stmdb sp!, {r4, lr} mov r4, r0 ldr r0, _02118528 ; =data_ov00_020e9e18 bl func_ov10_0211e454 ldr r0, [r4, #0x10] cmp r0, #0 ldmneia sp!, {r4, pc} mov r0, r4 bl func_ov00_0207a2d8 mov r0, #1 strb r0, [r4, #0xd] strb r0, [r4, #0xe] ldrh r3, [r4, #0x16] ldr r0, _0211852c ; =data_027e08e4 ldr r2, _02118530 ; =func_ov10_021183d8 mov r1, #0 blx func_0202f360 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_021184e0 _02118528: .word data_ov00_020e9e18 _0211852c: .word data_027e08e4 _02118530: .word func_ov10_021183d8 - 1 .global func_ov10_02118534 arm_func_start func_ov10_02118534 func_ov10_02118534: ; 0x02118534 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} mov r0, r0, lsl #0x10 mov r0, r0, lsr #0x10 mov r1, #1 mov r2, #0 bl func_ov01_020f79bc ldr r5, _021185d8 ; =data_027e0d54 ldr r0, [r5, #0x10] cmp r0, #0 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} mov r6, #0 ldr sb, _021185dc ; =data_ov00_020ec758 ldr sl, _021185e0 ; =data_ov00_020ec218 ldr r4, _021185e4 ; =data_ov10_0211f400 mov r7, r6 mov r8, r6 mov fp, #0x80 _02118578: ldrh r1, [r5, #0x16] ldr r2, [r4] mov r0, sb ldr r1, [r2, r1, lsl #2] mov r2, fp add r1, r1, #4 add r1, r1, #0x3400 add r1, r1, r7 bl func_02007984 ldrh r1, [r5, #0x16] ldr r2, [r4] mov r0, sl ldr r1, [r2, r1, lsl #2] mov r2, #0x500 add r1, r1, #4 add r1, r1, #0x2800 add r1, r1, r8 bl func_02007984 add r6, r6, #1 cmp r6, #2 add r7, r7, #0x80 add r8, r8, #0x500 blt _02118578 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov10_02118534 _021185d8: .word data_027e0d54 _021185dc: .word data_ov00_020ec758 _021185e0: .word data_ov00_020ec218 _021185e4: .word data_ov10_0211f400 .global func_ov10_021185e8 arm_func_start func_ov10_021185e8 func_ov10_021185e8: ; 0x021185e8 stmdb sp!, {r4, r5, r6, lr} mov r6, r0 ldr r0, _0211865c ; =data_ov00_020ec758 mov r5, r1 bl func_ov10_02119a6c ldr r1, _02118660 ; =data_ov00_020ec658 mov r0, r5 mov r4, #0 bl func_0204b0d4 cmp r0, #0 beq _02118624 mov r0, r6 mov r1, r5 bl func_ov10_021186a4 mov r4, r0 _02118624: ldr r0, [r6, #0x10] cmp r0, #0 ldmneia sp!, {r4, r5, r6, pc} mov r0, r6 bl func_ov00_0207a2d8 mov ip, #1 strb ip, [r6, #0xd] ldr r0, _02118664 ; =data_027e08e4 ldr r2, _02118668 ; =func_ov10_02118534 mov r3, r4 mov r1, #0 strb ip, [r6, #0xe] blx func_0202f360 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 arm_func_end func_ov10_021185e8 _0211865c: .word data_ov00_020ec758 _02118660: .word data_ov00_020ec658 _02118664: .word data_027e08e4 _02118668: .word func_ov10_02118534 - 1 .global func_ov10_0211866c arm_func_start func_ov10_0211866c func_ov10_0211866c: ; 0x0211866c mov r3, r1, lsr #0x8 cmp r3, #5 add r2, r1, r2 bxhs lr mov r1, #1 _02118680: orr r0, r0, r1, lsl r3 mov r0, r0, lsl #0x10 add r3, r3, #1 cmp r2, r3, lsl #8 mov r0, r0, lsr #0x10 bxls lr cmp r3, #5 blo _02118680 bx lr arm_func_end func_ov10_0211866c .global func_ov10_021186a4 arm_func_start func_ov10_021186a4 func_ov10_021186a4: ; 0x021186a4 stmdb sp!, {r3, lr} ldr r0, _021186e0 ; =data_ov00_020ec658 mov r2, #8 bl func_020320c0 ldr r0, _021186e4 ; =data_ov00_020ec218 mov r1, #0x500 blx func_0202f134 mov r0, #0 mov r1, #0x440 mov r2, #0x12 bl func_ov10_0211866c orr r0, r0, #0x10 mov r0, r0, lsl #0x10 mov r0, r0, lsr #0x10 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov10_021186a4 _021186e0: .word data_ov00_020ec658 _021186e4: .word data_ov00_020ec218 .global func_ov10_021186e8 arm_func_start func_ov10_021186e8 func_ov10_021186e8: ; 0x021186e8 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} mov r4, r0 mov r0, r4, lsl #0x10 mov r1, #0 mov r2, r1 mov r0, r0, lsr #0x10 bl func_ov01_020f79bc tst r4, #0x80000000 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} ldr r4, _02118768 ; =data_027e0d54 ldr r0, [r4, #0x10] cmp r0, #0 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} mov r5, #0 ldr r7, _0211876c ; =data_ov00_020ec218 ldr r8, _02118770 ; =data_ov10_0211f400 mov r6, r5 mov sb, #0x500 _02118730: ldrh r1, [r4, #0x16] ldr r2, [r8] mov r0, r7 ldr r1, [r2, r1, lsl #2] mov r2, sb add r1, r1, #4 add r1, r1, #0x2800 add r1, r1, r6 bl func_02007984 add r5, r5, #1 cmp r5, #2 add r6, r6, #0x500 blt _02118730 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} .align 2, 0 arm_func_end func_ov10_021186e8 _02118768: .word data_027e0d54 _0211876c: .word data_ov00_020ec218 _02118770: .word data_ov10_0211f400 .global func_ov10_02118774 arm_func_start func_ov10_02118774 func_ov10_02118774: ; 0x02118774 stmdb sp!, {r3, r4, r5, lr} mov r4, r1 mov r5, r0 ldr r1, _021187e8 ; =data_ov00_020ec658 mov r0, r4 bl func_0204b0d4 cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, pc} mov r0, r5 mov r1, r4 bl func_ov10_021186a4 ldr r1, [r5, #0x10] orr r4, r0, #0x80000000 cmp r1, #0 movne r0, #1 ldmneia sp!, {r3, r4, r5, pc} mov r0, r5 bl func_ov00_0207a2d8 mov ip, #1 strb ip, [r5, #0xd] ldr r0, _021187ec ; =data_027e08e4 ldr r2, _021187f0 ; =func_ov10_021186e8 mov r3, r4 mov r1, #0 strb ip, [r5, #0xe] blx func_0202f360 mov r0, #1 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov10_02118774 _021187e8: .word data_ov00_020ec658 _021187ec: .word data_027e08e4 _021187f0: .word func_ov10_021186e8 - 1 .global func_ov10_021187f4 arm_func_start func_ov10_021187f4 func_ov10_021187f4: ; 0x021187f4 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} ldr r2, _021188b4 ; =data_ov00_020ec678 mov sl, r0 ldrb r0, [r2] cmp r1, r0 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} ldr sb, _021188b8 ; =data_ov00_020ec218 strb r1, [r2] mov r0, sb mov r1, #0x500 blx func_0202f134 mov r0, #0 mov r1, #0x460 mov r2, #1 bl func_ov10_0211866c mov r6, #0 ldr r4, _021188bc ; =data_ov10_0211f400 mov r7, r0 mov r8, r6 mov r5, #0x500 _02118848: ldrh r1, [sl, #0x16] ldr r2, [r4] mov r0, sb ldr r1, [r2, r1, lsl #2] mov r2, r5 add r1, r1, #4 add r1, r1, #0x2800 add r1, r1, r8 bl func_02007984 add r6, r6, #1 cmp r6, #2 add r8, r8, #0x500 blt _02118848 mov r0, sl bl func_ov00_0207a2d8 orr r0, r7, #0x10 mov r1, r0, lsl #0x10 mov r4, #1 strb r4, [sl, #0xd] mov r3, r1, lsr #0x10 ldr r0, _021188c0 ; =data_027e08e4 ldr r2, _021188c4 ; =func_ov10_021186e8 mov r1, #0 strb r4, [sl, #0xe] blx func_0202f360 mov r0, r4 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} .align 2, 0 arm_func_end func_ov10_021187f4 _021188b4: .word data_ov00_020ec678 _021188b8: .word data_ov00_020ec218 _021188bc: .word data_ov10_0211f400 _021188c0: .word data_027e08e4 _021188c4: .word func_ov10_021186e8 - 1 .global func_ov10_021188c8 arm_func_start func_ov10_021188c8 func_ov10_021188c8: ; 0x021188c8 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} mov sb, r1 mov sl, r0 ldr r1, _02118964 ; =data_ov00_020ec218 mov r0, sb bl func_ov01_020f7c08 mov r7, #0 ldr r4, _02118968 ; =data_ov10_0211f400 mov r6, r0 mov r8, r7 mov r5, #0x500 _021188f4: ldrh r1, [sl, #0x16] ldr r2, [r4] mov r0, sb ldr r1, [r2, r1, lsl #2] mov r2, r5 add r1, r1, #4 add r1, r1, #0x2800 add r1, r1, r8 bl func_02007984 add r7, r7, #1 cmp r7, #2 add r8, r8, #0x500 blt _021188f4 cmp r6, #0 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} mov r0, sl bl func_ov00_0207a2d8 mov r4, #1 strb r4, [sl, #0xd] ldr r0, _0211896c ; =data_027e08e4 ldr r2, _02118970 ; =func_ov10_021186e8 mov r3, r6 mov r1, #0 strb r4, [sl, #0xe] blx func_0202f360 mov r0, r4 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} .align 2, 0 arm_func_end func_ov10_021188c8 _02118964: .word data_ov00_020ec218 _02118968: .word data_ov10_0211f400 _0211896c: .word data_027e08e4 _02118970: .word func_ov10_021186e8 - 1 .global func_ov10_02118974 arm_func_start func_ov10_02118974 func_ov10_02118974: ; 0x02118974 stmdb sp!, {r4, lr} sub sp, sp, #0x18 ldr r4, _02118a0c ; =data_027e0d54 ldrh r0, [r4, #0x14] blx func_020400f4 mov r0, #0 str r0, [sp] str r0, [sp, #4] mov r1, #6 str r1, [sp, #8] mov r2, #1 str r2, [sp, #0xc] add r1, sp, #0x14 mov r3, r0 str r0, [sp, #0x10] blx func_02040464 cmp r0, #0 beq _021189e0 ldr r0, _02118a10 ; =data_ov10_0211f400 ldrh r1, [r4, #0x16] ldr r0, [r0] ldr r0, [r0, r1, lsl #2] add r0, r0, #0x304 add r0, r0, #0x3000 bl func_ov10_0211ce5c cmp r0, #0 bne _021189f0 _021189e0: blx func_020400c0 mov r1, #2 str r0, [r4, #0x10] strb r1, [r4, #0xf] _021189f0: ldrh r0, [r4, #0x14] blx func_02040100 mov r0, #0 strb r0, [r4, #0xd] strb r0, [r4, #0xe] add sp, sp, #0x18 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02118974 _02118a0c: .word data_027e0d54 _02118a10: .word data_ov10_0211f400 .global func_ov10_02118a14 arm_func_start func_ov10_02118a14 func_ov10_02118a14: ; 0x02118a14 stmdb sp!, {r0, r1, r2, r3} stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} sub sp, sp, #0x80 ldr r4, _02118b28 ; =data_ov00_020ec754 mov r7, r0 add r1, sp, #0xa4 mov r0, r4 mov r2, #4 bl func_0204366c cmp r0, #0 movne r0, #1 moveq r0, #0 cmp r0, #0 addeq sp, sp, #0x80 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, lr} addeq sp, sp, #0x10 bxeq lr add r0, sp, #0xa4 mov r1, r4 mov r2, #4 bl func_02007908 mov r0, r4 mov r1, #1 bl func_ov10_021199bc add r1, sp, #0xa4 ldr r1, [r1] add r0, sp, #0 bl func_ov10_02119a14 mov r5, #0 ldr r8, _02118b2c ; =data_ov10_0211f400 mov r6, r5 add r4, sp, #0 mov sb, #0x80 _02118a9c: ldrh r1, [r7, #0x16] ldr r2, [r8] mov r0, r4 ldr r1, [r2, r1, lsl #2] mov r2, sb add r1, r1, #0x304 add r1, r1, #0x3000 add r1, r1, r6 bl func_02007984 add r5, r5, #1 cmp r5, #2 add r6, r6, #0x80 blt _02118a9c ldr r0, [r7, #0x10] cmp r0, #0 addne sp, sp, #0x80 movne r0, #1 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, lr} addne sp, sp, #0x10 bxne lr mov r0, r7 bl func_ov00_0207a2d8 mov r4, #1 mov r1, #0 strb r4, [r7, #0xd] ldr r0, _02118b30 ; =data_027e08e4 ldr r2, _02118b34 ; =func_ov10_02118974 mov r3, r1 strb r4, [r7, #0xe] blx func_0202f360 mov r0, r4 add sp, sp, #0x80 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, lr} add sp, sp, #0x10 bx lr .align 2, 0 arm_func_end func_ov10_02118a14 _02118b28: .word data_ov00_020ec754 _02118b2c: .word data_ov10_0211f400 _02118b30: .word data_027e08e4 _02118b34: .word func_ov10_02118974 - 1 .global func_ov10_02118b38 thumb_func_start func_ov10_02118b38 func_ov10_02118b38: ; 0x02118b38 push {r4, lr} sub sp, #0x10 mov r2, #9 mov r3, #3 add r4, r0, #0 bl func_ov10_02112f18 ldr r0, _02118ca8 ; =data_ov10_0211ef30 ldr r3, _02118cac ; =func_ov10_02113e70 str r0, [r4] ldr r0, _02118cb0 ; =func_ov10_02113e6c mov r1, #8 str r0, [sp] add r0, r4, #0 add r0, #0x18 mov r2, #0x18 blx func_0204f614 add r0, r4, #0 add r0, #0xd8 blx func_02035064 mov r0, #0x16 mov r2, #0 lsl r0, r0, #4 strb r2, [r4, r0] mov r1, #0x5f str r1, [sp] mov r0, #1 str r0, [sp, #4] add r0, r4, #0 str r2, [sp, #8] add r0, #0x18 add r1, #0xb9 add r3, r2, #0 str r2, [sp, #0xc] blx func_ov00_020cfed0 add r0, r4, #0 mov r2, #1 mov r1, #9 add r0, #0x2b strb r1, [r0] mov r1, #0x60 str r1, [sp] str r2, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x30 add r1, #0xb8 add r3, r2, #0 blx func_ov00_020cfed0 add r0, r4, #0 mov r2, #2 mov r1, #0xa add r0, #0x43 strb r1, [r0] mov r1, #0x61 str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x48 add r1, #0xb7 add r3, r2, #0 blx func_ov00_020cfed0 add r0, r4, #0 mov r2, #4 mov r1, #0xb add r0, #0x5b strb r1, [r0] mov r1, #0x63 str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x60 add r1, #0xb5 add r3, r2, #0 blx func_ov00_020cfed0 add r0, r4, #0 mov r1, #0xd add r0, #0x73 strb r1, [r0] mov r1, #0x62 str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 mov r2, #3 add r0, #0x78 add r1, #0xb6 add r3, r2, #0 blx func_ov00_020cfed0 add r0, r4, #0 mov r2, #5 mov r1, #0xc add r0, #0x8b strb r1, [r0] mov r1, #0x64 str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x90 add r1, #0xb4 add r3, r2, #0 blx func_ov00_020cfed0 add r0, r4, #0 mov r2, #6 mov r1, #0xe add r0, #0xa3 strb r1, [r0] mov r1, #0x65 str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0xa8 add r1, #0xb3 add r3, r2, #0 blx func_ov00_020cfed0 add r0, r4, #0 mov r1, #0xf add r0, #0xbb strb r1, [r0] mov r1, #0x66 str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0xc0 add r1, #0xb2 mov r2, #7 mov r3, #8 blx func_ov00_020cfed0 mov r2, #0 add r0, r4, #0 str r2, [sp] add r0, #0xd8 mov r1, #0x30 add r3, r2, #0 str r2, [sp, #4] blx func_020350b4 mov r1, #0 add r0, r4, #0 add r0, #0xd8 add r2, r1, #0 add r3, r1, #0 str r1, [sp] blx func_020351b8 add r0, r4, #0 add sp, #0x10 pop {r4, pc} nop thumb_func_end func_ov10_02118b38 _02118ca8: .word data_ov10_0211ef30 _02118cac: .word func_ov10_02113e70 - 1 _02118cb0: .word func_ov10_02113e6c - 1 .global func_ov10_02118cb4 arm_func_start func_ov10_02118cb4 func_ov10_02118cb4: ; 0x02118cb4 stmdb sp!, {r3, r4, r5, lr} mov r4, r0 mov r5, r1 bl func_ov10_02112f48 mov r2, r4 mov r1, #0 mov r0, #1 _02118cd0: add r1, r1, #1 strb r0, [r2, #0x25] cmp r1, #8 add r2, r2, #0x18 blt _02118cd0 ldr r0, [r4, #8] blx func_ov10_02113cf4 cmp r5, #7 bne _02118cfc ldr r0, [r4, #8] blx func_ov10_02113a90 _02118cfc: ldr r1, _02118d34 ; =data_027e0d54 ldr r0, [r4, #8] ldrh r1, [r1, #0x16] blx func_ov10_02113358 bl func_ov10_0211a988 cmp r0, #0 movgt r0, #1 movle r0, #0 strb r0, [r4, #0x160] tst r0, #0xff movne r0, #7 moveq r0, #5 strb r0, [r4, #0x9c] ldmia sp!, {r3, r4, r5, pc} .align 2, 0 arm_func_end func_ov10_02118cb4 _02118d34: .word data_027e0d54 .global func_ov10_02118d38 arm_func_start func_ov10_02118d38 func_ov10_02118d38: ; 0x02118d38 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov10_02112f5c ldr r0, [r4, #8] blx func_ov10_02113d50 ldmia sp!, {r4, pc} arm_func_end func_ov10_02118d38 .global func_ov10_02118d50 arm_func_start func_ov10_02118d50 func_ov10_02118d50: ; 0x02118d50 mov r2, #0 str r2, [r0, #0x14] str r1, [r0, #0x10] bx lr arm_func_end func_ov10_02118d50 .global func_ov10_02118d60 arm_func_start func_ov10_02118d60 func_ov10_02118d60: ; 0x02118d60 stmdb sp!, {r3, lr} mov r1, #4 bl func_ov10_02118d50 ldr r0, _02118d7c ; =data_ov00_020eec9c mov r1, #0x11 bl func_ov00_020d77e4 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov10_02118d60 _02118d7c: .word data_ov00_020eec9c .global func_ov10_02118d80 arm_func_start func_ov10_02118d80 func_ov10_02118d80: ; 0x02118d80 stmdb sp!, {r4, lr} mov r4, r0 ldr r0, [r4, #0x14] adds r0, r0, #1 str r0, [r4, #0x14] movmi r0, #0 strmi r0, [r4, #0x14] add r0, r4, #0xd8 bl func_0203516c ldr r0, [r4, #0x10] cmp r0, #8 addls pc, pc, r0, lsl #2 ldmia sp!, {r4, pc} _02118db4: ; jump table b _02118dfc ; case 0 b _02118dfc ; case 1 b _02118dfc ; case 2 b _02118dd8 ; case 3 b _02118e18 ; case 4 b _02118e3c ; case 5 b _02118e68 ; case 6 b _02118e8c ; case 7 b _02118eac ; case 8 _02118dd8: ldr r0, _02118ed0 ; =data_027e05f8 ldrh r0, [r0, #2] tst r0, #2 mov r0, r4 beq _02118df4 bl func_ov10_02118d60 ldmia sp!, {r4, pc} _02118df4: bl func_ov10_02118ed4 ldmia sp!, {r4, pc} _02118dfc: ldr r0, [r4, #0x14] cmp r0, #0x1e ldmleia sp!, {r4, pc} mov r0, r4 mov r1, #3 bl func_ov10_02118d50 ldmia sp!, {r4, pc} _02118e18: ldr r0, [r4, #0x14] cmp r0, #0x1e ldmleia sp!, {r4, pc} ldr r0, [r4, #8] mov r1, #3 add r0, r0, #0x10 mov r2, #4 bl func_ov10_0211c784 ldmia sp!, {r4, pc} _02118e3c: ldr r1, [r4, #8] ldr r0, [r1, #0x68] cmp r0, #0 ldmneia sp!, {r4, pc} add r0, r1, #0x10 mov r1, #8 mov r2, #0 bl func_ov10_0211c784 ldr r0, [r4, #8] blx func_ov10_02113a90 ldmia sp!, {r4, pc} _02118e68: ldr r1, [r4, #8] ldr r0, [r1, #0x68] cmp r0, #0 ldmneia sp!, {r4, pc} add r0, r1, #0x10 mov r1, #0xb mov r2, #0 bl func_ov10_0211c784 ldmia sp!, {r4, pc} _02118e8c: ldr r0, [r4, #8] ldr r0, [r0, #0x68] cmp r0, #1 ldmneia sp!, {r4, pc} mov r0, r4 mov r1, #3 bl func_ov10_02118d50 ldmia sp!, {r4, pc} _02118eac: ldr r1, [r4, #8] ldr r0, [r1, #0x68] cmp r0, #0 ldmneia sp!, {r4, pc} add r0, r1, #0x10 mov r1, #5 mov r2, #1 bl func_ov10_0211c784 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02118d80 _02118ed0: .word data_027e05f8 .global func_ov10_02118ed4 arm_func_start func_ov10_02118ed4 func_ov10_02118ed4: ; 0x02118ed4 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} mov r4, r0 ldr r0, [r4, #0x10] cmp r0, #3 movne r0, #0 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} mov r6, #0 mov r8, r4 add sb, r4, #0x18 mov r5, r6 _02118efc: mov r0, sb ldr ip, [r0] ldrh r7, [r8, #0x22] ldr ip, [ip] mov r1, r5 mov r2, r5 mov r3, r5 blx ip mov r2, r0 mov r0, r4 mov r1, r7 bl func_ov10_02118f54 cmp r0, #0 movne r0, #1 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} add r6, r6, #1 cmp r6, #8 add r8, r8, #0x18 add sb, sb, #0x18 blt _02118efc mov r0, #0 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} arm_func_end func_ov10_02118ed4 .global func_ov10_02118f54 arm_func_start func_ov10_02118f54 func_ov10_02118f54: ; 0x02118f54 stmdb sp!, {r4, lr} mov r4, r0 tst r2, #8 moveq r0, #0 ldmeqia sp!, {r4, pc} sub r1, r1, #0x5f cmp r1, #7 addls pc, pc, r1, lsl #2 b _021190a4 _02118f78: ; jump table b _02118f98 ; case 0 b _02118fc0 ; case 1 b _02118fec ; case 2 b _0211900c ; case 3 b _02119038 ; case 4 b _02119058 ; case 5 b _02119084 ; case 6 b _0211907c ; case 7 _02118f98: ldr r0, _021190ac ; =data_ov00_020ee698 mov r2, #1 str r2, [r0, #0x2c] ldr r0, [r4, #8] mov r1, #6 blx func_ov10_02113364 ldr r0, _021190b0 ; =data_ov00_020eec9c mov r1, #0x10 bl func_ov00_020d77e4 b _021190a4 _02118fc0: ldr r0, _021190ac ; =data_ov00_020ee698 mov r1, #2 str r1, [r0, #0x2c] ldr r0, [r4, #8] mov r1, #6 mov r2, #1 blx func_ov10_02113364 ldr r0, _021190b0 ; =data_ov00_020eec9c mov r1, #0x10 bl func_ov00_020d77e4 b _021190a4 _02118fec: ldr r0, [r4, #8] mov r1, #5 mov r2, #1 blx func_ov10_02113364 ldr r0, _021190b0 ; =data_ov00_020eec9c mov r1, #0x10 bl func_ov00_020d77e4 b _021190a4 _0211900c: ldr r0, _021190ac ; =data_ov00_020ee698 mov r1, #3 str r1, [r0, #0x2c] ldr r0, [r4, #8] mov r1, #6 mov r2, #1 blx func_ov10_02113364 ldr r0, _021190b0 ; =data_ov00_020eec9c mov r1, #0x10 bl func_ov00_020d77e4 b _021190a4 _02119038: mov r1, #5 bl func_ov10_02118d50 ldr r0, [r4, #8] blx func_ov10_02113a58 ldr r0, _021190b0 ; =data_ov00_020eec9c mov r1, #0x10 bl func_ov00_020d77e4 b _021190a4 _02119058: ldr r0, [r4, #8] blx func_ov10_02113a58 mov r0, r4 mov r1, #6 bl func_ov10_02118d50 ldr r0, _021190b0 ; =data_ov00_020eec9c mov r1, #0x10 bl func_ov00_020d77e4 b _021190a4 _0211907c: bl func_ov10_02118d60 b _021190a4 _02119084: ldr r0, [r4, #8] blx func_ov10_02113a58 mov r0, r4 mov r1, #8 bl func_ov10_02118d50 ldr r0, _021190b0 ; =data_ov00_020eec9c mov r1, #0x10 bl func_ov00_020d77e4 _021190a4: mov r0, #0 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02118f54 _021190ac: .word data_ov00_020ee698 _021190b0: .word data_ov00_020eec9c .global func_ov10_021190b4 arm_func_start func_ov10_021190b4 func_ov10_021190b4: ; 0x021190b4 stmdb sp!, {r4, lr} sub sp, sp, #8 mov r4, r0 ldr r0, [r4, #8] blx func_ov10_02113d60 ldr r0, [r4, #0x10] cmp r0, #8 addls pc, pc, r0, lsl #2 b _02119108 _021190d8: ; jump table b _021190fc ; case 0 b _02119108 ; case 1 b _02119108 ; case 2 b _021190fc ; case 3 b _021190fc ; case 4 b _02119108 ; case 5 b _02119108 ; case 6 b _02119108 ; case 7 b _021190fc ; case 8 _021190fc: mov r0, r4 bl func_ov10_02119154 b _02119110 _02119108: mov r0, r4 bl func_ov10_02119520 _02119110: ldr r0, [r4, #0x10] cmp r0, #3 addne sp, sp, #8 ldmneia sp!, {r4, pc} ldrb r0, [r4, #0x160] cmp r0, #0 addeq sp, sp, #8 ldmeqia sp!, {r4, pc} mov r3, #0 str r3, [sp] add r0, r4, #0xd8 mov r1, #0x118 mov r2, #8 str r3, [sp, #4] bl func_02034b0c add sp, sp, #8 ldmia sp!, {r4, pc} arm_func_end func_ov10_021190b4 .global func_ov10_02119154 arm_func_start func_ov10_02119154 func_ov10_02119154: ; 0x02119154 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x4c ldr r1, _0211951c ; =0x0400101c mov r2, #0 str r2, [r1] mov fp, r0 ldr r0, [fp, #0x10] mov r1, #0xf000 cmp r0, #0 ldr r0, [fp, #0x14] subeq r4, r2, #1 mov r0, r0, lsl #0xc movne r4, #1 bl Divide mov r5, r0 add r0, sp, #0x2c mov r6, #0 bl func_01ffbe34 mov r1, r4, lsl #0xc mov r0, r1, asr #0x1 add r0, r1, r0, lsr #30 mov r2, #1 str r0, [sp, #8] mov sl, #0x64000 mvn r0, #0 strb r2, [sp, #0x36] add r8, fp, #0x18 mov r7, r6 rsb sl, sl, #0 add r4, sp, #0xc str r0, [sp, #4] _021191d0: cmp r7, #3 cmpne r7, #7 ldreq r0, [sp, #8] addeq r5, r5, r0, asr #2 ldr r0, [fp, #0x10] cmp r0, #0 beq _021191f8 cmp r0, #4 beq _02119210 b _02119224 _021191f8: mov r0, #0x1000 mov r1, #0 mov r2, r5 bl func_ov00_020d03f8 mov r6, r0 b _02119224 _02119210: mov r0, #0x1000 mov r1, #0 rsb r2, r5, #0x1000 bl func_ov00_020d03f8 mov r6, r0 _02119224: cmp r7, #7 addls pc, pc, r7, lsl #2 b _02119504 _02119230: ; jump table b _02119250 ; case 0 b _021192b8 ; case 1 b _02119310 ; case 2 b _021193c0 ; case 3 b _02119368 ; case 4 b _02119414 ; case 5 b _02119468 ; case 6 b _021194bc ; case 7 _02119250: mov r0, r4 bl func_01ffbe34 mov sb, #0xfa000 umull lr, ip, r6, sb adds sb, lr, #0x800 mov r2, #0 mov lr, sb, lsr #0xc mov sb, r2 mla ip, r6, sb, ip mov r1, r6, asr #0x1f mov sb, #0xfa000 mla ip, r1, sb, ip mov r1, r2 adc r1, ip, r1 orr lr, lr, r1, lsl #20 mov r0, #1 add r1, lr, #0x800 strb r0, [sp, #0x16] mov r0, #0 mov r1, r1, asr #0xc str r0, [sp] mov r0, r8 mov r3, r4 rsb r1, r1, #0 bl func_ov00_020d00c4 b _02119504 _021192b8: mov sb, #0xfa000 umull lr, ip, r6, sb adds sb, lr, #0x800 mov r2, #0 mov lr, sb, lsr #0xc mov sb, r2 mla ip, r6, sb, ip mov r1, r6, asr #0x1f mov sb, #0xfa000 mla ip, r1, sb, ip mov r1, r2 adc r1, ip, r1 orr lr, lr, r1, lsl #20 add r1, lr, #0x800 mov r0, #0 mov r1, r1, asr #0xc str r0, [sp] mov r0, r8 mov r3, r4 rsb r1, r1, #0 bl func_ov00_020d00c4 b _02119504 _02119310: mov sb, #0xfa000 umull lr, ip, r6, sb adds sb, lr, #0x800 mov r2, #0 mov lr, sb, lsr #0xc mov sb, r2 mla ip, r6, sb, ip mov r1, r6, asr #0x1f mov sb, #0xfa000 mla ip, r1, sb, ip mov r1, r2 adc r1, ip, r1 orr lr, lr, r1, lsl #20 add r1, lr, #0x800 mov r0, #0 mov r1, r1, asr #0xc str r0, [sp] mov r0, r8 mov r3, r4 rsb r1, r1, #0 bl func_ov00_020d00c4 b _02119504 _02119368: mov sb, #0xfa000 umull lr, ip, r6, sb adds sb, lr, #0x800 mov r2, #0 mov lr, sb, lsr #0xc mov sb, r2 mla ip, r6, sb, ip mov r1, r6, asr #0x1f mov sb, #0xfa000 mla ip, r1, sb, ip mov r1, r2 adc r1, ip, r1 orr lr, lr, r1, lsl #20 add r1, lr, #0x800 mov r0, #0 mov r1, r1, asr #0xc str r0, [sp] mov r0, r8 mov r3, r4 rsb r1, r1, #0 bl func_ov00_020d00c4 b _02119504 _021193c0: mov sb, #0xfa000 umull lr, ip, r6, sb adds sb, lr, #0x800 mov r2, #0 mov lr, sb, lsr #0xc mov sb, r2 mla ip, r6, sb, ip mov r1, r6, asr #0x1f mov sb, #0xfa000 mla ip, r1, sb, ip mov r1, r2 adc r1, ip, r1 orr lr, lr, r1, lsl #20 mov r0, #0 add r1, lr, #0x800 str r0, [sp] mov r0, r8 mov r3, r4 mov r1, r1, asr #0xc bl func_ov00_020d00c4 b _02119504 _02119414: mov sb, #0xfa000 umull lr, ip, r6, sb adds sb, lr, #0x800 mov r2, #0 mov lr, sb, lsr #0xc mov sb, r2 mla ip, r6, sb, ip mov r1, r6, asr #0x1f mov sb, #0xfa000 mla ip, r1, sb, ip mov r1, r2 adc r1, ip, r1 orr lr, lr, r1, lsl #20 mov r0, #0 add r1, lr, #0x800 str r0, [sp] mov r0, r8 mov r3, r4 mov r1, r1, asr #0xc bl func_ov00_020d00c4 b _02119504 _02119468: mov sb, #0x7d000 umull sb, ip, r6, sb adds sb, sb, #0x800 mov r1, #0 mov lr, sb, lsr #0xc mov sb, r1 mla ip, r6, sb, ip mov r2, r6, asr #0x1f mov sb, #0x7d000 mla ip, r2, sb, ip mov r2, r1 adc r2, ip, r2 orr lr, lr, r2, lsl #20 mov r0, #0 add r2, lr, #0x800 str r0, [sp] mov r0, r8 mov r3, r4 mov r2, r2, asr #0xc bl func_ov00_020d00c4 b _02119504 _021194bc: umull lr, ip, r6, sl adds r1, lr, #0x800 mov lr, r1, lsr #0xc ldr r1, [sp, #4] mov r0, #0 mla ip, r6, r1, ip mov sb, r6, asr #0x1f mla ip, sb, sl, ip mov r2, #0 mov r1, r2 adc r1, ip, r1 orr lr, lr, r1, lsl #20 add r1, lr, #0x800 str r0, [sp] mov r0, r8 mov r3, r4 mov r1, r1, asr #0xc bl func_ov00_020d00c4 _02119504: add r8, r8, #0x18 add r7, r7, #1 cmp r7, #8 blt _021191d0 add sp, sp, #0x4c ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov10_02119154 _0211951c: .word 0x0400101c .global func_ov10_02119520 arm_func_start func_ov10_02119520 func_ov10_02119520: ; 0x02119520 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x24 mov r7, r0 ldr r0, [r7, #0x14] mov r1, #0xf000 mov r0, r0, lsl #0xc bl Divide mov fp, r0 add r0, sp, #4 mov r5, #0 bl func_01ffbe34 mov r0, #1 mov r8, #0x64000 strb r0, [sp, #0xe] mov r6, r5 rsb r8, r8, #0 mvn sl, #0 add r4, sp, #4 _02119568: ldr ip, [r7, #0x10] mov r2, fp cmp ip, #2 moveq r0, sl movne r0, #1 cmp r6, #3 cmpne r6, #6 cmpne r6, #7 bne _021195a4 mov r3, r0, lsl #0xc ldr r0, _0211989c ; =0x66666667 smull r1, sb, r0, r3 mov r0, r3, lsr #0x1f add sb, r0, sb, asr #1 add r2, r2, sb _021195a4: cmp ip, #2 bne _021195bc mov r0, #0x1000 mov r1, #0 bl func_ov00_020d03f8 mov r5, r0 _021195bc: cmp r6, #7 addls pc, pc, r6, lsl #2 b _02119888 _021195c8: ; jump table b _021195e8 ; case 0 b _02119640 ; case 1 b _02119698 ; case 2 b _02119748 ; case 3 b _021196f0 ; case 4 b _0211979c ; case 5 b _021197f0 ; case 6 b _02119844 ; case 7 _021195e8: mov sb, #0xfa000 umull lr, ip, r5, sb adds sb, lr, #0x800 mov r2, #0 mov lr, sb, lsr #0xc mov sb, r2 mla ip, r5, sb, ip mov r1, r5, asr #0x1f mov sb, #0xfa000 mla ip, r1, sb, ip mov r1, r2 adc r1, ip, r1 orr lr, lr, r1, lsl #20 add r1, lr, #0x800 mov r0, #0 mov r1, r1, asr #0xc str r0, [sp] add r0, r7, #0x18 mov r3, r4 rsb r1, r1, #0 bl func_ov00_020d00c4 b _02119888 _02119640: mov sb, #0xfa000 umull lr, ip, r5, sb adds sb, lr, #0x800 mov r2, #0 mov lr, sb, lsr #0xc mov sb, r2 mla ip, r5, sb, ip mov r1, r5, asr #0x1f mov sb, #0xfa000 mla ip, r1, sb, ip mov r1, r2 adc r1, ip, r1 orr lr, lr, r1, lsl #20 add r1, lr, #0x800 mov r0, #0 mov r1, r1, asr #0xc str r0, [sp] add r0, r7, #0x30 mov r3, r4 rsb r1, r1, #0 bl func_ov00_020d00c4 b _02119888 _02119698: mov sb, #0x7d000 umull lr, ip, r5, sb adds sb, lr, #0x800 mov r2, #0 mov lr, sb, lsr #0xc mov sb, r2 mla ip, r5, sb, ip mov r1, r5, asr #0x1f mov sb, #0x7d000 mla ip, r1, sb, ip mov r1, r2 adc r1, ip, r1 orr lr, lr, r1, lsl #20 add r1, lr, #0x800 mov r0, #0 mov r1, r1, asr #0xc str r0, [sp] add r0, r7, #0x48 mov r3, r4 rsb r1, r1, #0 bl func_ov00_020d00c4 b _02119888 _021196f0: mov sb, #0xfa000 umull lr, ip, r5, sb adds sb, lr, #0x800 mov r2, #0 mov lr, sb, lsr #0xc mov sb, r2 mla ip, r5, sb, ip mov r1, r5, asr #0x1f mov sb, #0xfa000 mla ip, r1, sb, ip mov r1, r2 adc r1, ip, r1 orr lr, lr, r1, lsl #20 add r1, lr, #0x800 mov r0, #0 mov r1, r1, asr #0xc str r0, [sp] add r0, r7, #0x78 mov r3, r4 rsb r1, r1, #0 bl func_ov00_020d00c4 b _02119888 _02119748: mov sb, #0xfa000 umull lr, ip, r5, sb adds sb, lr, #0x800 mov r2, #0 mov lr, sb, lsr #0xc mov sb, r2 mla ip, r5, sb, ip mov r1, r5, asr #0x1f mov sb, #0xfa000 mla ip, r1, sb, ip mov r1, r2 adc r1, ip, r1 orr lr, lr, r1, lsl #20 mov r0, #0 add r1, lr, #0x800 str r0, [sp] add r0, r7, #0x60 mov r3, r4 mov r1, r1, asr #0xc bl func_ov00_020d00c4 b _02119888 _0211979c: mov sb, #0xfa000 umull lr, ip, r5, sb adds sb, lr, #0x800 mov r2, #0 mov lr, sb, lsr #0xc mov sb, r2 mla ip, r5, sb, ip mov r1, r5, asr #0x1f mov sb, #0xfa000 mla ip, r1, sb, ip mov r1, r2 adc r1, ip, r1 orr lr, lr, r1, lsl #20 mov r0, #0 add r1, lr, #0x800 str r0, [sp] add r0, r7, #0x90 mov r3, r4 mov r1, r1, asr #0xc bl func_ov00_020d00c4 b _02119888 _021197f0: mov sb, #0x7d000 umull lr, ip, r5, sb adds sb, lr, #0x800 mov r1, #0 mov lr, sb, lsr #0xc mov sb, r1 mla ip, r5, sb, ip mov r2, r5, asr #0x1f mov sb, #0x7d000 mla ip, r2, sb, ip mov r2, r1 adc r2, ip, r2 orr lr, lr, r2, lsl #20 mov r0, #0 add r2, lr, #0x800 str r0, [sp] add r0, r7, #0xa8 mov r3, r4 mov r2, r2, asr #0xc bl func_ov00_020d00c4 b _02119888 _02119844: umull lr, ip, r5, r8 mla ip, r5, sl, ip mov sb, r5, asr #0x1f adds r1, lr, #0x800 mov r0, #0 str r0, [sp] mla ip, sb, r8, ip mov r2, #0 mov sb, r2 mov r1, r1, lsr #0xc adc sb, ip, sb orr r1, r1, sb, lsl #20 add r1, r1, #0x800 add r0, r7, #0xc0 mov r3, r4 mov r1, r1, asr #0xc bl func_ov00_020d00c4 _02119888: add r6, r6, #1 cmp r6, #8 blt _02119568 add sp, sp, #0x24 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov10_02119520 _0211989c: .word 0x66666667 .global func_ov10_021198a0 arm_func_start func_ov10_021198a0 func_ov10_021198a0: ; 0x021198a0 stmdb sp!, {r4, lr} mov r4, r0 ldr r1, [r4, #0x10] mov r0, #0 cmp r1, #2 bne _021198d8 ldr r0, [r4, #0x14] mov r1, #0xf000 mov r0, r0, lsl #0xc bl Divide mov r2, r0 mov r0, #0x1000 mov r1, #0 bl func_ov00_020d03f8 _021198d8: ldr r1, [r4, #0x10] cmp r1, #2 bne _0211992c mov r1, #0xfa000 rsb r1, r1, #0 mvn r2, #0 umull ip, r3, r0, r1 mla r3, r0, r2, r3 mov r0, r0, asr #0x1f mla r3, r0, r1, r3 adds r2, ip, #0x800 adc r0, r3, #0 mov r1, r2, lsr #0xc orr r1, r1, r0, lsl #20 add r1, r1, #0x800 mov r2, r1, asr #0xc ldr r0, _0211993c ; =0x01ff0000 ldr r1, _02119940 ; =0x0400101c and r0, r0, r2, lsl #16 str r0, [r1] ldmia sp!, {r4, pc} _0211992c: ldr r0, _02119940 ; =0x0400101c mov r1, #0 str r1, [r0] ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_021198a0 _0211993c: .word 0x01ff0000 _02119940: .word 0x0400101c .global func_ov10_02119944 arm_func_start func_ov10_02119944 func_ov10_02119944: ; 0x02119944 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0xd8 bl func_020350ac ldr r3, _02119980 ; =func_ov10_02113e6c add r0, r4, #0x18 mov r1, #8 mov r2, #0x18 bl func_0204f754 mov r0, r4 blx func_ov10_02112f44 mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02119944 _02119980: .word func_ov10_02113e6c - 1 .global func_ov10_02119984 arm_func_start func_ov10_02119984 func_ov10_02119984: ; 0x02119984 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0xd8 bl func_020350ac ldr r3, _021199b8 ; =func_ov10_02113e6c add r0, r4, #0x18 mov r1, #8 mov r2, #0x18 bl func_0204f754 mov r0, r4 blx func_ov10_02112f44 mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_02119984 _021199b8: .word func_ov10_02113e6c - 1 .global func_ov10_021199bc arm_func_start func_ov10_021199bc func_ov10_021199bc: ; 0x021199bc stmdb sp!, {r4, lr} mov r4, r0 ldr r2, [r4] ldr r0, _02119a08 ; =data_027e0c68 mov r2, r2, lsl #0x18 mov r2, r2, lsr #0x18 strh r2, [r0, #0xe] ldr r2, [r4] ldr r0, _02119a0c ; =data_ov00_020ee734 mov r3, r2, lsl #0x10 mov r2, r1 mov r1, r3, lsr #0x18 bl func_ov10_0211e500 ldr r1, [r4] ldr r0, _02119a10 ; =data_027e0c38 mov r1, r1, lsl #0x8 mov r1, r1, lsr #0x18 str r1, [r0, #0x10] ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_021199bc _02119a08: .word data_027e0c68 _02119a0c: .word data_ov00_020ee734 _02119a10: .word data_027e0c38 .global func_ov10_02119a14 arm_func_start func_ov10_02119a14 func_ov10_02119a14: ; 0x02119a14 stmdb sp!, {r0, r1, r2, r3} stmdb sp!, {r4, lr} mov r4, r0 mov r1, r4 mov r0, #0 mov r2, #4 bl func_020078f4 mov r1, r4 mov r0, #0 mov r2, #0x80 bl func_02007938 add r0, sp, #0xc mov r1, r4 mov r2, #4 bl func_02007908 mov r0, r4 mov r1, #0x80 blx func_0202f134 mov r0, r4 ldmia sp!, {r4, lr} add sp, sp, #0x10 bx lr arm_func_end func_ov10_02119a14 .global func_ov10_02119a6c arm_func_start func_ov10_02119a6c func_ov10_02119a6c: ; 0x02119a6c stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} mov r4, r0 mov r5, r1 mov r1, r4 mov r0, #0 mov r2, #0x80 bl func_02007938 ldr r1, _02119b3c ; =0x415a454a mov r0, r4 blx func_ov00_020777ec mov r0, r4 blx func_ov00_020778f0 mov r1, r5 add r0, r4, #0x40 mov r2, #8 bl func_020320c0 ldr r2, _02119b40 ; =data_027e0764 mov r3, #1 ldr r6, [r2] ldmib r2, {r5, r8} umull sl, sb, r8, r6 mla sb, r8, r5, sb ldr r7, [r2, #0xc] ldr lr, [r2, #0x10] mla sb, r7, r6, sb ldr ip, [r2, #0x14] adds r6, lr, sl adc r5, ip, sb str r6, [r2] str r5, [r2, #4] mov r5, r5, lsr #0x18 strb r5, [r4, #0x52] ldr r6, [r2, #8] ldr lr, [r2] ldr ip, [r2, #4] umull r8, r7, r6, lr mla r7, r6, ip, r7 ldr r5, [r2, #0xc] ldr sl, [r2, #0x10] mla r7, r5, lr, r7 ldr sb, [r2, #0x14] adds r6, sl, r8 adc r5, sb, r7 str r6, [r2] str r5, [r2, #4] mov r2, r5, lsr #0x18 strb r2, [r4, #0x7c] mov r0, r4 mov r1, #0x80 strb r3, [r4, #0x7d] blx func_0202f134 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} .align 2, 0 arm_func_end func_ov10_02119a6c _02119b3c: .word 0x415a454a _02119b40: .word data_027e0764 .global func_ov10_02119b44 arm_func_start func_ov10_02119b44 func_ov10_02119b44: ; 0x02119b44 stmdb sp!, {r3, r4, r5, r6, r7, lr} mov r4, r0 ldr r0, [r4] ldr lr, _02119c5c ; =data_ov10_0211f404 ldr r3, _02119c60 ; =data_ov10_0211f408 str r0, [lr] add r0, r4, #4 mov ip, r1 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} add r0, r4, #0x10 ldr r3, _02119c64 ; =data_ov10_0211f414 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, [r4, #0x1c] ldr r5, _02119c68 ; =data_ov10_0211f42c str r0, [lr, #0x1c] ldr r0, [r4, #0x20] add r6, r4, #0x28 str r0, [lr, #0x20] ldr r0, [r4, #0x24] str r0, [lr, #0x24] ldmia r6!, {r0, r1, r2, r3} stmia r5!, {r0, r1, r2, r3} ldr r1, [r6] mov r0, ip str r1, [r5] ldr r2, [r4, #0x3c] mov r1, r4 str r2, [lr, #0x3c] mov r2, #0x80 bl func_02007984 ldr ip, _02119c5c ; =data_ov10_0211f404 ldr r0, _02119c60 ; =data_ov10_0211f408 ldr r1, [ip] add r7, r4, #4 str r1, [r4] ldr r6, _02119c64 ; =data_ov10_0211f414 add r3, r4, #0x10 ldr r5, _02119c68 ; =data_ov10_0211f42c add lr, r4, #0x28 ldmia r0, {r0, r1, r2} stmia r7, {r0, r1, r2} ldmia r6, {r0, r1, r2} stmia r3, {r0, r1, r2} ldr r0, [ip, #0x1c] str r0, [r4, #0x1c] ldr r0, [ip, #0x20] str r0, [r4, #0x20] ldr r0, [ip, #0x24] str r0, [r4, #0x24] ldmia r5!, {r0, r1, r2, r3} stmia lr!, {r0, r1, r2, r3} ldr r1, [r5] mov r0, r4 str r1, [lr] ldr r1, [ip, #0x3c] str r1, [r4, #0x3c] blx func_ov00_020777f4 cmp r0, #0 bne _02119c4c ldr r1, _02119c6c ; =0x415a454a mov r0, r4 blx func_ov00_020777ec mov r0, r4 blx func_ov00_020778f0 _02119c4c: mov r0, r4 mov r1, #0x80 blx func_0202f134 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 arm_func_end func_ov10_02119b44 _02119c5c: .word data_ov10_0211f404 _02119c60: .word data_ov10_0211f408 _02119c64: .word data_ov10_0211f414 _02119c68: .word data_ov10_0211f42c _02119c6c: .word 0x415a454a .global func_ov10_02119c70 arm_func_start func_ov10_02119c70 func_ov10_02119c70: ; 0x02119c70 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, lr} sub sp, sp, #4 mov r5, r0 strh r1, [r5] mov r0, #0 strb r0, [r5, #2] ldr r4, _02119dd4 ; =func_ov10_02112d40 ldr r3, _02119dd8 ; =func_ov10_02117874 add r0, r5, #4 mov r1, #2 mov r2, #0x1400 str r4, [sp] bl func_0204f614 add r0, r5, #4 add sb, r0, #0x2800 add r0, r5, #0x204 add r4, r0, #0x3000 mov r8, #0 mov r7, #0x16 _02119cbc: add sl, sb, #0x180 add r6, sb, #0x440 _02119cc4: mov r0, r8 mov r1, sl mov r2, r7 bl func_020078c0 add sl, sl, #0x16 cmp sl, r6 blo _02119cc4 mov r0, r6 blx func_ov00_0207a4f0 mov r0, sb blx func_ov00_0207a5ac add sb, sb, #0x500 cmp sb, r4 blo _02119cbc add r0, r5, #0x304 add sb, r0, #0x3000 mov r8, #0 mov r7, #0x14 _02119d0c: mov sl, r4 add r6, r4, #0x3c _02119d14: mov r0, r8 mov r1, sl mov r2, r7 bl func_020078c0 add sl, sl, #0x14 cmp sl, r6 blo _02119d14 mov r0, r4 blx func_ov00_0207c170 mov r0, r4 blx func_ov00_0207a5f4 add r4, r4, #0x80 cmp r4, sb blo _02119d0c add r0, r5, #4 add r6, r0, #0x3400 _02119d54: mov r0, sb blx func_ov00_0207a6ac add sb, sb, #0x80 cmp sb, r6 blo _02119d54 add r0, r5, #0x104 add r4, r0, #0x3400 _02119d70: mov r0, r6 blx func_ov00_0207a6d0 add r6, r6, #0x80 cmp r6, r4 blo _02119d70 mov r1, r4 mov r0, #0 mov r2, #4 bl func_020078f4 mov r6, #0 add r0, r5, #0x3000 mvn r1, #0 str r1, [r0, #0x508] add r0, r5, #0x304 mov r7, r6 add r4, r0, #0x3000 _02119db0: add r0, r4, r7 blx func_ov00_0207a68c add r6, r6, #1 cmp r6, #2 add r7, r7, #0x80 blt _02119db0 mov r0, r5 add sp, sp, #4 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, pc} .align 2, 0 arm_func_end func_ov10_02119c70 _02119dd4: .word func_ov10_02112d40 - 1 _02119dd8: .word func_ov10_02117874 - 1 .global func_ov10_02119ddc arm_func_start func_ov10_02119ddc func_ov10_02119ddc: ; 0x02119ddc stmdb sp!, {r4, lr} mov r4, r0 add r1, r4, #0x104 mov r0, #0 add r1, r1, #0x3400 mov r2, #4 strb r0, [r4, #2] bl func_020078f4 add r0, r4, #0x3000 mvn r1, #0 str r1, [r0, #0x508] ldmia sp!, {r4, pc} arm_func_end func_ov10_02119ddc .global func_ov10_02119e0c arm_func_start func_ov10_02119e0c func_ov10_02119e0c: ; 0x02119e0c stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} mov r4, r0 add r6, r4, #4 add r0, r4, #0x204 add r1, r4, #0x304 add r7, r6, #0x2800 add r8, r0, #0x3000 add sb, r1, #0x3000 add sl, r6, #0x3400 mov r5, #0 _02119e34: mov r0, r6 blx func_ov00_0207a418 mov r0, r7 blx func_ov00_0207a5ac mov r0, r8 blx func_ov00_0207a5f4 mov r0, sb blx func_ov00_0207a68c mov r0, sl blx func_ov00_0207a6d0 add r5, r5, #1 cmp r5, #2 add r6, r6, #0x1400 add r7, r7, #0x500 add r8, r8, #0x80 add sb, sb, #0x80 add sl, sl, #0x80 blt _02119e34 mov r0, r4 bl func_ov10_02119ddc ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} arm_func_end func_ov10_02119e0c .global func_ov10_02119e88 arm_func_start func_ov10_02119e88 func_ov10_02119e88: ; 0x02119e88 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x14 add r4, r0, #4 add r5, r1, #4 add r6, r0, #0x204 add r8, r0, #0x304 add r0, r4, #0x2800 str r0, [sp, #0xc] add r0, r5, #0x2800 add r7, r1, #0x204 str r0, [sp, #8] mov r0, #0 add fp, r6, #0x3000 add r6, r7, #0x3000 add r1, r1, #0x304 add r7, r8, #0x3000 str r2, [sp] str r3, [sp, #4] add r8, r1, #0x3000 add sb, r4, #0x3400 add sl, r5, #0x3400 str r0, [sp, #0x10] _02119ee0: mov r0, r5 mov r1, r4 mov r2, #0x1400 bl func_02007984 ldr r0, [sp] cmp r0, #0 beq _02119f0c ldr r0, [sp, #8] ldr r1, [sp, #0xc] mov r2, #0x500 bl func_02007984 _02119f0c: mov r0, r6 mov r1, fp mov r2, #0x80 bl func_020078d8 mov r0, r8 mov r1, r7 mov r2, #0x80 bl func_02007984 ldr r0, [sp, #4] mov r2, #0x80 cmp r0, #0 beq _02119f48 mov r1, sb bl func_02007984 b _02119f54 _02119f48: mov r0, sl mov r1, sb bl func_02007984 _02119f54: ldr r0, [sp, #0xc] add r4, r4, #0x1400 add r0, r0, #0x500 str r0, [sp, #0xc] ldr r0, [sp, #8] add r5, r5, #0x1400 add r0, r0, #0x500 str r0, [sp, #8] ldr r0, [sp, #0x10] add fp, fp, #0x80 add r0, r0, #1 add r6, r6, #0x80 add r7, r7, #0x80 add r8, r8, #0x80 add sb, sb, #0x80 add sl, sl, #0x80 str r0, [sp, #0x10] cmp r0, #2 blt _02119ee0 add sp, sp, #0x14 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} arm_func_end func_ov10_02119e88 .global func_ov10_02119fa8 arm_func_start func_ov10_02119fa8 func_ov10_02119fa8: ; 0x02119fa8 stmdb sp!, {r3, r4, r5, lr} mov r4, r1 mov r5, r0 cmp r4, #9 addls pc, pc, r4, lsl #2 b _0211a080 _02119fc0: ; jump table b _02119fe8 ; case 0 b _02119ff4 ; case 1 b _0211a004 ; case 2 b _0211a014 ; case 3 b _0211a024 ; case 4 b _0211a034 ; case 5 b _0211a044 ; case 6 b _0211a054 ; case 7 b _0211a064 ; case 8 b _0211a074 ; case 9 _02119fe8: add r0, r5, #4 blx func_ov00_0207a418 b _0211a080 _02119ff4: add r0, r5, #4 add r0, r0, #0x1400 blx func_ov00_0207a418 b _0211a080 _0211a004: add r0, r5, #4 add r0, r0, #0x2800 blx func_ov00_0207a5ac b _0211a080 _0211a014: add r0, r5, #0x104 add r0, r0, #0x2c00 blx func_ov00_0207a5ac b _0211a080 _0211a024: add r0, r5, #0x204 add r0, r0, #0x3000 blx func_ov00_0207a5f4 b _0211a080 _0211a034: add r0, r5, #0x284 add r0, r0, #0x3000 blx func_ov00_0207a5f4 b _0211a080 _0211a044: add r0, r5, #0x304 add r0, r0, #0x3000 blx func_ov00_0207a68c b _0211a080 _0211a054: add r0, r5, #0x384 add r0, r0, #0x3000 blx func_ov00_0207a68c b _0211a080 _0211a064: add r0, r5, #4 add r0, r0, #0x3400 blx func_ov00_0207a6d0 b _0211a080 _0211a074: add r0, r5, #0x84 add r0, r0, #0x3400 blx func_ov00_0207a6d0 _0211a080: add r0, r5, #0x104 add r5, r0, #0x3400 mov r3, r4, lsr #0x5 ldr r2, [r5, r3, lsl #2] and r0, r4, #0x1f mov r1, #1 orr r0, r2, r1, lsl r0 str r0, [r5, r3, lsl #2] ldmia sp!, {r3, r4, r5, pc} arm_func_end func_ov10_02119fa8 .global func_ov10_0211a0a4 arm_func_start func_ov10_0211a0a4 func_ov10_0211a0a4: ; 0x0211a0a4 mov r3, r1, lsr #0x5 add r3, r0, r3, lsl #2 add r3, r3, #0x3000 ldr r3, [r3, #0x504] and ip, r1, #0x1f mov r1, #1 tst r3, r1, lsl ip mov r3, r2, lsr #0x5 mvn ip, #0 add r0, r0, r3, lsl #2 beq _0211a0ec add r0, r0, #0x3000 ldr r0, [r0, #0x504] and r2, r2, #0x1f tst r0, r1, lsl r2 movne ip, #0 moveq ip, #2 b _0211a100 _0211a0ec: add r0, r0, #0x3000 ldr r0, [r0, #0x504] and r2, r2, #0x1f tst r0, r1, lsl r2 movne ip, r1 _0211a100: mov r0, ip bx lr arm_func_end func_ov10_0211a0a4 .global func_ov10_0211a108 arm_func_start func_ov10_0211a108 func_ov10_0211a108: ; 0x0211a108 stmdb sp!, {r4, lr} mov r4, r0 mov r3, #0 mov r2, #1 _0211a118: mov r0, r3, lsr #0x5 add r0, r4, r0, lsl #2 add r0, r0, #0x3000 ldr r0, [r0, #0x504] and r1, r3, #0x1f tst r0, r2, lsl r1 bne _0211a144 add r3, r3, #1 cmp r3, #0xa blo _0211a118 mov r2, #0 _0211a144: cmp r2, #0 bne _0211a15c add r0, r4, #0x3000 mvn r1, #0 str r1, [r0, #0x508] ldmia sp!, {r4, pc} _0211a15c: mov r0, r4 mov r1, #8 mov r2, #9 bl func_ov10_0211a0a4 add r1, r4, #0x3000 mvn r2, #0 str r0, [r1, #0x508] cmp r0, r2 ldmneia sp!, {r4, pc} mov r0, r4 mov r1, #0 mov r2, #1 bl func_ov10_0211a0a4 add r1, r4, #0x3000 mvn r2, #0 str r0, [r1, #0x508] cmp r0, r2 ldmneia sp!, {r4, pc} mov r0, r4 mov r1, #4 mov r2, #5 bl func_ov10_0211a0a4 add r1, r4, #0x3000 mvn r2, #0 str r0, [r1, #0x508] cmp r0, r2 ldmneia sp!, {r4, pc} ldr r0, [r1, #0x504] tst r0, #4 beq _0211a1ec tst r0, #8 movne r0, #3 strne r0, [r1, #0x508] moveq r0, #4 streq r0, [r1, #0x508] b _0211a1f8 _0211a1ec: tst r0, #8 movne r0, #1 strne r0, [r1, #0x508] _0211a1f8: add r0, r4, #0x3000 ldr r2, [r0, #0x508] mvn r1, #0 cmp r2, r1 ldmneia sp!, {r4, pc} ldr r1, [r0, #0x504] tst r1, #0x40 beq _0211a230 tst r1, #0x80 movne r1, #5 strne r1, [r0, #0x508] moveq r1, #1 streq r1, [r0, #0x508] ldmia sp!, {r4, pc} _0211a230: tst r1, #0x80 movne r1, #1 strne r1, [r0, #0x508] ldmia sp!, {r4, pc} arm_func_end func_ov10_0211a108 .global func_ov10_0211a240 arm_func_start func_ov10_0211a240 func_ov10_0211a240: ; 0x0211a240 stmdb sp!, {r4, r5, r6, lr} mov r5, r0 mov r4, r1 add r0, r5, r4, lsl #7 add r0, r0, #0x3000 ldrb r0, [r0, #0x481] cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, pc} add r0, r5, #4 add r0, r0, #0x3400 add r0, r0, r4, lsl #7 blx func_ov00_020777f4 cmp r0, #0 movne r0, #0 ldmneia sp!, {r4, r5, r6, pc} add r0, r5, #4 add r0, r0, #0x3400 add r6, r0, r4, lsl #7 ldr r1, _0211a2f8 ; =0x415a454a mov r0, r6 blx func_ov00_020777ec mov r0, r6 blx func_ov00_020778f0 mov r0, r6 mov r1, #0x80 blx func_0202f134 add r0, r5, #4 add r4, r4, r4, lsl #2 add r0, r0, #0x2800 add r6, r0, r4, lsl #8 mov r1, r6 mov r0, #0 mov r2, #0x180 bl func_020078f4 add r0, r5, #0x184 add r0, r0, #0x2800 add r1, r0, r4, lsl #8 mov r0, #0 mov r2, #0x2c0 bl func_020078c0 mov r0, r6 mov r1, #0x500 blx func_0202f134 mov r0, #1 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 arm_func_end func_ov10_0211a240 _0211a2f8: .word 0x415a454a .global func_ov10_0211a2fc arm_func_start func_ov10_0211a2fc func_ov10_0211a2fc: ; 0x0211a2fc stmdb sp!, {r4, r5, r6, lr} mov r6, r0 add r0, r6, #0x3000 ldr r0, [r0, #0x504] ands r1, r0, #0x100 beq _0211a324 tst r0, #0x200 movne r0, #1 strneb r0, [r6, #2] ldmneia sp!, {r4, r5, r6, pc} _0211a324: mov r4, #0 mov r5, r4 cmp r1, #0 bne _0211a35c mov r0, r6 mov r1, r4 bl func_ov10_0211a240 cmp r0, #0 beq _0211a35c add r0, r6, #0x3000 ldr r1, [r0, #0x504] mov r4, #1 orr r1, r1, #0x104 str r1, [r0, #0x504] _0211a35c: add r0, r6, #0x3000 ldr r0, [r0, #0x504] tst r0, #0x200 bne _0211a394 mov r0, r6 mov r1, #1 bl func_ov10_0211a240 cmp r0, #0 beq _0211a394 add r0, r6, #0x3000 ldr r1, [r0, #0x504] mov r5, #1 orr r1, r1, #0x208 str r1, [r0, #0x504] _0211a394: cmp r4, #0 cmpeq r5, #0 ldmeqia sp!, {r4, r5, r6, pc} add r0, r6, #0x3000 ldr r2, [r0, #0x508] mvn r1, #0 cmp r2, r1 ldmneia sp!, {r4, r5, r6, pc} cmp r4, #0 cmpne r5, #0 movne r1, #6 strne r1, [r0, #0x508] bne _0211a3f0 cmp r4, #0 beq _0211a3e0 add r0, r6, #0x3000 mov r1, #2 str r1, [r0, #0x508] b _0211a3f0 _0211a3e0: cmp r5, #0 addne r0, r6, #0x3000 movne r1, #1 strne r1, [r0, #0x508] _0211a3f0: add r0, r6, #0x3000 ldr r0, [r0, #0x504] tst r0, #0x100 beq _0211a420 tst r0, #0x200 beq _0211a420 add r0, r6, #4 add r1, r6, #0x84 add r0, r0, #0x3400 add r1, r1, #0x3400 mov r2, #0x80 bl func_02007984 _0211a420: add r0, r6, #0x3000 ldr r0, [r0, #0x504] tst r0, #4 ldmeqia sp!, {r4, r5, r6, pc} tst r0, #8 ldmeqia sp!, {r4, r5, r6, pc} add r0, r6, #4 add r1, r6, #0x104 add r0, r0, #0x2800 add r1, r1, #0x2c00 mov r2, #0x500 bl func_02007984 ldmia sp!, {r4, r5, r6, pc} arm_func_end func_ov10_0211a2fc .global func_ov10_0211a454 arm_func_start func_ov10_0211a454 func_ov10_0211a454: ; 0x0211a454 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x3000 ldr r0, [r0, #0x504] tst r0, #1 beq _0211a488 tst r0, #2 bne _0211a4a0 add r1, r4, #4 add r0, r1, #0x1400 mov r2, #0x1400 bl func_02007984 b _0211a4a0 _0211a488: tst r0, #2 beq _0211a4a0 add r0, r4, #4 add r1, r0, #0x1400 mov r2, #0x1400 bl func_02007984 _0211a4a0: add r0, r4, #0x3000 ldr r0, [r0, #0x504] tst r0, #4 beq _0211a4d4 tst r0, #8 bne _0211a4f4 add r0, r4, #0x104 add r1, r4, #4 add r0, r0, #0x2c00 add r1, r1, #0x2800 mov r2, #0x500 bl func_02007984 b _0211a4f4 _0211a4d4: tst r0, #8 beq _0211a4f4 add r0, r4, #4 add r1, r4, #0x104 add r0, r0, #0x2800 add r1, r1, #0x2c00 mov r2, #0x500 bl func_02007984 _0211a4f4: add r0, r4, #0x3000 ldr r0, [r0, #0x504] tst r0, #0x10 beq _0211a528 tst r0, #0x20 bne _0211a548 add r0, r4, #0x284 add r1, r4, #0x204 add r0, r0, #0x3000 add r1, r1, #0x3000 mov r2, #0x80 bl func_020078d8 b _0211a548 _0211a528: tst r0, #0x20 beq _0211a548 add r0, r4, #0x204 add r1, r4, #0x284 add r0, r0, #0x3000 add r1, r1, #0x3000 mov r2, #0x80 bl func_020078d8 _0211a548: add r0, r4, #0x3000 ldr r0, [r0, #0x504] tst r0, #0x40 beq _0211a57c tst r0, #0x80 bne _0211a59c add r0, r4, #0x384 add r1, r4, #0x304 add r0, r0, #0x3000 add r1, r1, #0x3000 mov r2, #0x80 bl func_02007984 b _0211a59c _0211a57c: tst r0, #0x80 beq _0211a59c add r0, r4, #0x304 add r1, r4, #0x384 add r0, r0, #0x3000 add r1, r1, #0x3000 mov r2, #0x80 bl func_02007984 _0211a59c: add r0, r4, #0x3000 ldr r0, [r0, #0x504] tst r0, #0x100 beq _0211a5d0 tst r0, #0x200 ldmneia sp!, {r4, pc} add r0, r4, #0x84 add r1, r4, #4 add r0, r0, #0x3400 add r1, r1, #0x3400 mov r2, #0x80 bl func_02007984 ldmia sp!, {r4, pc} _0211a5d0: tst r0, #0x200 ldmeqia sp!, {r4, pc} add r0, r4, #4 add r1, r4, #0x84 add r0, r0, #0x3400 add r1, r1, #0x3400 mov r2, #0x80 bl func_02007984 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211a454 .global func_ov10_0211a5f4 arm_func_start func_ov10_0211a5f4 func_ov10_0211a5f4: ; 0x0211a5f4 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x1c mov sb, r0 add r1, sb, #0x3000 ldr r0, [r1, #0x504] tst r0, #1 beq _0211a648 tst r0, #2 beq _0211a648 ldr r2, [r1, #0x504] add r0, sb, #0x204 orr r2, r2, #0x30 str r2, [r1, #0x504] add r5, r0, #0x3000 mov r4, #0 _0211a630: mov r0, r5 blx func_ov00_0207a5f4 add r4, r4, #1 cmp r4, #2 add r5, r5, #0x80 blo _0211a630 _0211a648: add r0, sb, #0x84 str r0, [sp, #0x18] add r0, sb, #0x384 ldr r4, _0211a868 ; =0x0003f500 mov r8, #0 add r7, sb, #4 str r0, [sp, #0x14] add fp, sb, #0x304 add sl, sb, #0x284 add r5, sb, #0x204 add r6, sb, #0x104 _0211a674: mov r1, r8, lsr #0x5 add r1, sb, r1, lsl #2 add r1, r1, #0x3000 ldr r2, [r1, #0x504] and r0, r8, #0x1f mov r1, #1 tst r2, r1, lsl r0 beq _0211a820 cmp r8, #9 addls pc, pc, r8, lsl #2 b _0211a7d8 _0211a6a0: ; jump table b _0211a6c8 ; case 0 b _0211a6e0 ; case 1 b _0211a6f8 ; case 2 b _0211a710 ; case 3 b _0211a72c ; case 4 b _0211a748 ; case 5 b _0211a764 ; case 6 b _0211a780 ; case 7 b _0211a7a0 ; case 8 b _0211a7b8 ; case 9 _0211a6c8: ldrh r1, [sb] mov r0, r7 mov r2, #0x1400 mul r3, r1, r4 add r1, r3, #0 b _0211a7e4 _0211a6e0: ldrh r1, [sb] add r0, r7, #0x1400 mov r2, #0x1400 mul r3, r1, r4 add r1, r3, #0x1400 b _0211a7e4 _0211a6f8: ldrh r1, [sb] add r0, r7, #0x2800 mov r2, #0x500 mul r3, r1, r4 add r1, r3, #0x3e800 b _0211a7e4 _0211a710: ldrh r1, [sb] add r0, r6, #0x2c00 mov r2, #0x500 mul r3, r1, r4 add r1, r3, #0xed00 add r1, r1, #0x30000 b _0211a7e4 _0211a72c: ldrh r1, [sb] add r0, r5, #0x3000 mov r2, #0x80 mul r3, r1, r4 add r1, r3, #0xf200 add r1, r1, #0x30000 b _0211a7e4 _0211a748: ldrh r1, [sb] add r0, sl, #0x3000 mov r2, #0x80 mul r3, r1, r4 add r1, r3, #0x3280 add r1, r1, #0x3c000 b _0211a7e4 _0211a764: ldrh r1, [sb] add r0, fp, #0x3000 mov r2, #0x80 mul r3, r1, r4 add r1, r3, #0xf300 add r1, r1, #0x30000 b _0211a7e4 _0211a780: ldrh r1, [sb] ldr r0, [sp, #0x14] mov r2, #0x80 mul r3, r1, r4 add r1, r3, #0x3380 add r0, r0, #0x3000 add r1, r1, #0x3c000 b _0211a7e4 _0211a7a0: ldrh r1, [sb] add r0, r7, #0x3400 mov r2, #0x80 mul r3, r1, r4 add r1, r3, #0x3f400 b _0211a7e4 _0211a7b8: ldrh r1, [sb] ldr r0, [sp, #0x18] mov r2, #0x80 mul r3, r1, r4 add r1, r3, #0x3480 add r0, r0, #0x3400 add r1, r1, #0x3c000 b _0211a7e4 _0211a7d8: add sp, sp, #0x1c mov r0, #0 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} _0211a7e4: mov r3, #0 str r3, [sp] str r3, [sp, #4] mov r3, #7 str r3, [sp, #8] mov r3, #0xa str r3, [sp, #0xc] mov r3, #2 str r3, [sp, #0x10] mov r3, #0 blx func_02040464 cmp r0, #0 addeq sp, sp, #0x1c moveq r0, #0 ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} _0211a820: add r8, r8, #1 cmp r8, #0xa blo _0211a674 add r0, sb, #0x3000 ldr r0, [r0, #0x504] tst r0, #1 beq _0211a85c tst r0, #2 beq _0211a85c ldrh r0, [sb] bl func_ov10_0211cfd8 cmp r0, #0 addeq sp, sp, #0x1c moveq r0, #0 ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} _0211a85c: mov r0, #1 add sp, sp, #0x1c ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov10_0211a5f4 _0211a868: .word 0x0003f500 .global func_ov10_0211a86c arm_func_start func_ov10_0211a86c func_ov10_0211a86c: ; 0x0211a86c add r2, r1, #0x14 mov r1, r2, lsr #0x5 add r0, r0, r1, lsl #2 ldr r1, [r0, #4] and r2, r2, #0x1f mov r0, #1 tst r1, r0, lsl r2 moveq r0, #0 bx lr arm_func_end func_ov10_0211a86c .global func_ov10_0211a890 arm_func_start func_ov10_0211a890 func_ov10_0211a890: ; 0x0211a890 ldr r1, [r0, #4] mov r0, #0 tst r1, #0x100000 bxne lr tst r1, #0x20000000 movne r0, #1 bx lr arm_func_end func_ov10_0211a890 .global func_ov10_0211a8ac arm_func_start func_ov10_0211a8ac func_ov10_0211a8ac: ; 0x0211a8ac ldr r0, [r0, #8] tst r0, #0x20 movne r0, #1 moveq r0, #0 bx lr arm_func_end func_ov10_0211a8ac .global func_ov10_0211a8c0 arm_func_start func_ov10_0211a8c0 func_ov10_0211a8c0: ; 0x0211a8c0 ldr r0, [r0, #0xcbc] tst r0, #0x20000000 movne r0, #1 moveq r0, #0 bx lr arm_func_end func_ov10_0211a8c0 .global func_ov10_0211a8d4 arm_func_start func_ov10_0211a8d4 func_ov10_0211a8d4: ; 0x0211a8d4 ldr r0, [r0, #0xcbc] tst r0, #0x40000000 movne r0, #1 moveq r0, #0 bx lr arm_func_end func_ov10_0211a8d4 .global func_ov10_0211a8e8 arm_func_start func_ov10_0211a8e8 func_ov10_0211a8e8: ; 0x0211a8e8 ldr r0, [r0, #0xcbc] tst r0, #0x80000000 movne r0, #1 moveq r0, #0 bx lr arm_func_end func_ov10_0211a8e8 .global func_ov10_0211a8fc arm_func_start func_ov10_0211a8fc func_ov10_0211a8fc: ; 0x0211a8fc stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x204 add r0, r0, #0x3000 blx func_ov00_0207c190 cmp r0, #0 ble _0211a928 ldr r0, [r4, #0xcb0] tst r0, #0x200000 movne r0, #1 ldmneia sp!, {r4, pc} _0211a928: mov r0, #0 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211a8fc .global func_ov10_0211a930 arm_func_start func_ov10_0211a930 func_ov10_0211a930: ; 0x0211a930 stmdb sp!, {r3, r4, r5, r6, r7, lr} ldr r1, [r0, #0xcb0] mov r5, #0 tst r1, #0x200000 bne _0211a980 add r0, r0, #0x204 mov r6, r5 add r7, r0, #0x3000 mov r4, #1 _0211a954: mov r0, r7 blx func_ov00_0207c190 cmp r0, #0 ble _0211a970 mov r0, r7 blx func_ov00_0207a5f4 mov r5, r4 _0211a970: add r6, r6, #1 cmp r6, #2 add r7, r7, #0x80 blt _0211a954 _0211a980: mov r0, r5 ldmia sp!, {r3, r4, r5, r6, r7, pc} arm_func_end func_ov10_0211a930 .global func_ov10_0211a988 arm_func_start func_ov10_0211a988 func_ov10_0211a988: ; 0x0211a988 add r1, r0, #0x2000 ldrb r1, [r1, #0xc64] cmp r1, #4 movhs r0, #0 bxhs lr add r0, r0, #0x2c00 ldrh r3, [r0, #0x5e] mov r2, #0 mov ip, r2 _0211a9ac: tst r3, #1 addne r0, r2, #1 andne r2, r0, #0xff mov r0, r3, lsl #0xf add ip, ip, #1 cmp ip, #0x10 mov r3, r0, lsr #0x10 blt _0211a9ac cmp r1, r2, lsr #2 addlo r0, r1, #1 movhs r0, #0 bx lr arm_func_end func_ov10_0211a988 .global func_ov10_0211a9dc thumb_func_start func_ov10_0211a9dc func_ov10_0211a9dc: ; 0x0211a9dc push {r4, lr} sub sp, #0x20 mov r2, #8 mov r3, #1 add r4, r0, #0 bl func_ov10_02112f18 ldr r0, _0211aab4 ; =data_ov10_0211ef94 ldr r3, _0211aab8 ; =func_ov10_02113e70 str r0, [r4] ldr r0, _0211aabc ; =func_ov10_02113e6c mov r1, #2 str r0, [sp] add r0, r4, #0 add r0, #0x18 mov r2, #0x18 blx func_0204f614 add r0, r4, #0 add r0, #0x48 blx func_ov06_02101b5c add r0, r4, #0 add r0, #0x8c mov r1, #0xff bl func_02032d40 mov r1, #0 add r0, r4, #0 mov r2, #0 mvn r1, r1 add r0, #0xe0 str r1, [r0] add r0, r4, #0 mov r1, #2 add r0, #0xe4 str r1, [r0] mov r1, #0x69 str r1, [sp] mov r0, #1 str r0, [sp, #4] add r0, r4, #0 str r2, [sp, #8] add r0, #0x18 add r1, #0xa0 add r3, r2, #0 str r2, [sp, #0xc] blx func_ov00_020cfed0 add r0, r4, #0 mov r2, #1 mov r1, #7 add r0, #0x2b strb r1, [r0] mov r1, #0x6a str r1, [sp] str r2, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x30 add r1, #0x9f add r3, r2, #0 blx func_ov00_020cfed0 add r0, r4, #0 mov r1, #8 add r0, #0x43 strb r1, [r0] mov r0, #0 str r0, [sp, #0x1c] str r0, [sp, #0x18] ldr r0, _0211aac0 ; =0x00000109 mov r1, #3 add r2, sp, #0x1c add r3, sp, #0x18 blx func_02034698 mov r0, #0xf0 str r0, [sp] mov r2, #0x10 str r2, [sp, #4] add r2, #0xf9 str r2, [sp, #8] mov r0, #3 str r0, [sp, #0xc] ldr r0, [sp, #0x1c] mov r1, #0xc str r0, [sp, #0x10] ldr r0, [sp, #0x18] mov r3, #0 str r0, [sp, #0x14] add r0, r4, #0 add r0, #0x48 blx func_ov06_02101ba8 add r0, r4, #0 mov r1, #0xa add r0, #0x84 strh r1, [r0] add r0, r4, #0 mov r1, #0 add r0, #0x86 strh r1, [r0] add r0, r4, #0 add sp, #0x20 pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_0211a9dc _0211aab4: .word data_ov10_0211ef94 _0211aab8: .word func_ov10_02113e70 - 1 _0211aabc: .word func_ov10_02113e6c - 1 _0211aac0: .word 0x00000109 .global func_ov10_0211aac4 thumb_func_start func_ov10_0211aac4 func_ov10_0211aac4: ; 0x0211aac4 push {r4, r5, r6, r7, lr} sub sp, #0x11c add r5, r0, #0 add r4, r1, #0 mov r1, #0 add r2, r5, #0 mov r6, #1 _0211aad2: add r0, r2, #0 add r0, #0x25 add r1, r1, #1 add r2, #0x18 strb r6, [r0] cmp r1, #2 blt _0211aad2 mov r1, #0 add r0, r5, #0 mvn r1, r1 add r0, #0xe0 str r1, [r0] ldr r3, _0211abd8 ; =0x0400100c mov r0, #3 ldrh r2, [r3] mov r1, #3 mov r7, #0x43 bic r2, r0 orr r1, r2 strh r1, [r3] ldrh r2, [r3, #2] mov r1, #2 bic r2, r0 orr r1, r2 sub r2, r3, #2 strh r1, [r3, #2] ldrh r1, [r2] bic r1, r0 strh r1, [r2] ldrh r0, [r3, #2] add r1, r0, #0 ldr r0, _0211abdc ; =0x0000810c and r1, r7 orr r0, r1 strh r0, [r3, #2] ldrh r0, [r2] mov r3, #0x33 lsl r3, r3, #0xa add r1, r0, #0 ldr r0, _0211abe0 ; =0x00008310 and r1, r7 orr r0, r1 strh r0, [r2] ldr r0, _0211abe4 ; =data_ov10_0211efb0 ldr r1, _0211abe8 ; =data_ov10_0211e7dc ldr r2, _0211abec ; =data_020691a0 str r6, [sp] bl func_0202d5b4 add r6, r0, #0 ldr r1, _0211abf0 ; =data_ov10_0211efb4 add r0, sp, #0x10 bl func_02031e1c mov r2, #1 str r2, [sp] mov r0, #0 str r0, [sp, #4] mov r0, #0xf str r0, [sp, #8] str r0, [sp, #0xc] add r0, sp, #0x10 mov r1, #7 mov r3, #3 bl func_02031f18 add r0, r6, #0 bl func_02016fcc ldr r1, _0211abf4 ; =0x016a0000 ldr r0, _0211abf8 ; =0x04001014 str r1, [r0] str r1, [r0, #8] sub r0, #0x14 ldr r2, [r0] ldr r1, _0211abfc ; =0xffffe0ff and r2, r1 mov r1, #0x1e lsl r1, r1, #8 orr r1, r2 str r1, [r0] add r0, r5, #0 bl func_ov10_0211b1a4 cmp r4, #0 bne _0211abcc ldr r0, [r5, #8] mov r3, #0 ldr r2, [r0, #0x5c] ldr r1, [r0, #0x58] mov r0, #0 eor r3, r2 eor r0, r1 orr r0, r3 bne _0211ab9a add r0, r5, #0 add r0, #0x48 blx func_ov06_02101e18 b _0211abb2 _0211ab9a: add r0, sp, #0x1c mov r3, #0xc blx func_ov00_020d17a0 add r0, sp, #0x1c blx func_0204b068 add r0, r5, #0 add r0, #0x48 add r1, sp, #0x1c blx func_ov06_02101e48 _0211abb2: ldr r0, [r5, #8] ldr r0, [r0, #8] cmp r0, #0xa bne _0211abc4 add r0, r5, #0 mov r1, #1 add r0, #0xe4 str r1, [r0] b _0211abcc _0211abc4: add r0, r5, #0 mov r1, #0 add r0, #0xe4 str r1, [r0] _0211abcc: add r0, r5, #0 add r1, r4, #0 blx func_ov10_02112f48 add sp, #0x11c pop {r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end func_ov10_0211aac4 _0211abd8: .word 0x0400100c _0211abdc: .word 0x0000810c _0211abe0: .word 0x00008310 _0211abe4: .word data_ov10_0211efb0 _0211abe8: .word data_ov10_0211e7dc _0211abec: .word data_020691a0 _0211abf0: .word data_ov10_0211efb4 _0211abf4: .word 0x016a0000 _0211abf8: .word 0x04001014 _0211abfc: .word 0xffffe0ff .global func_ov10_0211ac00 thumb_func_start func_ov10_0211ac00 func_ov10_0211ac00: ; 0x0211ac00 push {r4, lr} ldr r2, _0211ac2c ; =0x04001000 add r4, r0, #0 ldr r1, [r2] ldr r0, _0211ac30 ; =0xffffe0ff and r1, r0 mov r0, #5 lsl r0, r0, #0xa orr r0, r1 str r0, [r2] mov r0, #0 str r0, [r2, #0x14] str r0, [r2, #0x1c] add r0, r4, #0 add r0, #0x48 blx func_ov06_02101c84 add r0, r4, #0 blx func_ov10_02112f5c pop {r4, pc} nop thumb_func_end func_ov10_0211ac00 _0211ac2c: .word 0x04001000 _0211ac30: .word 0xffffe0ff .global func_ov10_0211ac34 thumb_func_start func_ov10_0211ac34 func_ov10_0211ac34: ; 0x0211ac34 push {r3, r4, r5, lr} add r4, r1, #0 add r5, r0, #0 cmp r4, #3 beq _0211ac46 cmp r4, #4 beq _0211ac46 cmp r4, #5 bne _0211ac4c _0211ac46: ldr r0, [r5, #8] bl func_ov10_02113a58 _0211ac4c: mov r0, #0 str r0, [r5, #0x14] str r4, [r5, #0x10] pop {r3, r4, r5, pc} thumb_func_end func_ov10_0211ac34 .global func_ov10_0211ac54 thumb_func_start func_ov10_0211ac54 func_ov10_0211ac54: ; 0x0211ac54 push {r4, lr} add r4, r0, #0 ldr r0, _0211ac80 ; =data_ov00_020eec9c mov r1, #5 blx func_ov00_020d77e4 add r0, r4, #0 add r0, #0xe4 ldr r0, [r0] cmp r0, #0 bne _0211ac74 add r0, r4, #0 mov r1, #3 bl func_ov10_0211ac34 pop {r4, pc} _0211ac74: add r0, r4, #0 mov r1, #4 bl func_ov10_0211ac34 pop {r4, pc} nop thumb_func_end func_ov10_0211ac54 _0211ac80: .word data_ov00_020eec9c .global func_ov10_0211ac84 thumb_func_start func_ov10_0211ac84 func_ov10_0211ac84: ; 0x0211ac84 push {r3, r4, r5, lr} add r4, r0, #0 ldr r0, [r4, #0x14] add r0, r0, #1 str r0, [r4, #0x14] bpl _0211ac94 mov r0, #0 str r0, [r4, #0x14] _0211ac94: ldr r1, [r4, #0x10] cmp r1, #7 bhi _0211acbc add r0, r1, r1 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _0211aca6: ; jump table .short _0211acb6 - _0211aca6 - 2 ; case 0 .short _0211acc8 - _0211aca6 - 2 ; case 1 .short _0211ad2e - _0211aca6 - 2 ; case 2 .short _0211ad48 - _0211aca6 - 2 ; case 3 .short _0211ad48 - _0211aca6 - 2 ; case 4 .short _0211ad72 - _0211aca6 - 2 ; case 5 .short _0211ada4 - _0211aca6 - 2 ; case 6 .short _0211adbe - _0211aca6 - 2 ; case 7 _0211acb6: ldr r0, [r4, #0x14] cmp r0, #0x1e bgt _0211acbe _0211acbc: b _0211adcc _0211acbe: add r0, r4, #0 mov r1, #1 bl func_ov10_0211ac34 pop {r3, r4, r5, pc} _0211acc8: ldr r0, _0211add0 ; =data_027e0c68 blx func_020366c4 cmp r0, #0 beq _0211acdc mov r1, #0x57 lsl r1, r1, #2 ldrsh r0, [r0, r1] cmp r0, #0 bgt _0211adcc _0211acdc: add r0, r4, #0 add r0, #0x89 ldrb r0, [r0] add r5, r0, #1 add r0, r4, #0 add r0, #0x88 ldrb r1, [r0] cmp r5, r1 blt _0211acf8 add r0, r5, #0 blx func_01ff9b88 add r5, r0, #0 b _0211ad0e _0211acf8: cmp r5, #0 bge _0211ad0e mov r0, #0 mvn r0, r0 blx func_01ff9b88 add r1, r4, #0 add r1, #0x88 ldrb r1, [r1] add r1, r5, r1 sub r5, r1, r0 _0211ad0e: add r0, r4, #0 add r0, #0x89 strb r5, [r0] ldr r0, _0211add4 ; =data_027e05f8 ldrh r1, [r0, #2] mov r0, #2 tst r0, r1 beq _0211ad26 add r0, r4, #0 bl func_ov10_0211ac54 pop {r3, r4, r5, pc} _0211ad26: add r0, r4, #0 bl func_ov10_0211addc pop {r3, r4, r5, pc} _0211ad2e: ldr r0, [r4, #0x14] cmp r0, #0x1e ble _0211adcc ldr r0, [r4, #8] ldr r1, [r0, #0x68] cmp r1, #0 bne _0211adcc add r0, #0x10 mov r1, #5 mov r2, #2 blx func_ov10_0211c784 pop {r3, r4, r5, pc} _0211ad48: ldr r0, [r4, #8] ldr r2, [r0, #0x68] cmp r2, #0 bne _0211adcc cmp r1, #3 bne _0211ad60 add r0, #0x10 mov r1, #8 mov r2, #0 blx func_ov10_0211c784 b _0211ad6a _0211ad60: add r0, #0x10 mov r1, #0xa mov r2, #0x10 blx func_ov10_0211c784 _0211ad6a: ldr r0, [r4, #8] bl func_ov10_02113a90 pop {r3, r4, r5, pc} _0211ad72: ldr r0, _0211add8 ; =data_027e0d54 ldrb r0, [r0, #0xd] cmp r0, #0 bne _0211ad7e mov r0, #1 b _0211ad80 _0211ad7e: mov r0, #0 _0211ad80: cmp r0, #0 beq _0211adcc ldr r0, [r4, #0x14] cmp r0, #0x1e ble _0211adcc ldr r0, [r4, #8] ldr r1, [r0, #0x68] cmp r1, #0 bne _0211adcc add r0, #0x10 mov r1, #0xa mov r2, #0x10 blx func_ov10_0211c784 ldr r0, [r4, #8] bl func_ov10_02113a90 pop {r3, r4, r5, pc} _0211ada4: ldr r0, _0211add0 ; =data_027e0c68 blx func_020366c4 mov r1, #0x57 lsl r1, r1, #2 ldrsh r0, [r0, r1] cmp r0, #0 bgt _0211adcc add r0, r4, #0 mov r1, #7 bl func_ov10_0211ac34 pop {r3, r4, r5, pc} _0211adbe: ldr r0, [r4, #0x14] cmp r0, #0x1e ble _0211adcc add r0, r4, #0 mov r1, #1 bl func_ov10_0211ac34 _0211adcc: pop {r3, r4, r5, pc} nop thumb_func_end func_ov10_0211ac84 _0211add0: .word data_027e0c68 _0211add4: .word data_027e05f8 _0211add8: .word data_027e0d54 .global func_ov10_0211addc thumb_func_start func_ov10_0211addc func_ov10_0211addc: ; 0x0211addc push {r4, r5, r6, r7, lr} sub sp, #0xc mov r1, #0 str r0, [sp] mvn r1, r1 add r0, #0xe0 str r1, [r0] ldr r0, [sp] ldr r0, [r0, #0x10] cmp r0, #1 beq _0211adf8 add sp, #0xc mov r0, #0 pop {r4, r5, r6, r7, pc} _0211adf8: ldr r6, [sp] mov r7, #0 add r4, r6, #0 add r4, #0x18 _0211ae00: ldrh r0, [r6, #0x22] mov r1, #0 add r2, r1, #0 str r0, [sp, #8] add r0, r4, #0 ldr r5, [r0] add r3, r1, #0 ldr r5, [r5] blx r5 add r2, r0, #0 ldr r0, [sp] ldr r1, [sp, #8] bl func_ov10_0211aed0 cmp r0, #0 beq _0211ae26 add sp, #0xc mov r0, #1 pop {r4, r5, r6, r7, pc} _0211ae26: add r7, r7, #1 add r6, #0x18 add r4, #0x18 cmp r7, #2 blt _0211ae00 ldr r0, _0211aec0 ; =data_027e0d78 mov r4, #2 ldr r0, [r0, #0x30] str r0, [sp, #4] ldr r0, _0211aec0 ; =data_027e0d78 ldr r7, [r0, #0x2c] ldr r6, [r0, #0x20] ldr r5, [r0, #0x1c] _0211ae40: ldr r0, _0211aec4 ; =0x00000109 ldr r3, [sp, #4] add r1, r4, #0 add r2, r7, #0 blx func_02034b90 cmp r0, #0 beq _0211aeb4 ldr r0, _0211aec4 ; =0x00000109 add r1, r4, #0 add r2, r5, #0 add r3, r6, #0 blx func_02034b90 cmp r0, #0 beq _0211aeb4 ldr r0, _0211aec0 ; =data_027e0d78 ldrh r1, [r0, #0x34] mov r0, #2 tst r0, r1 bne _0211ae70 mov r0, #4 tst r0, r1 beq _0211aea6 _0211ae70: ldr r0, _0211aec8 ; =data_ov00_020eec9c mov r1, #4 blx func_ov00_020d77e4 cmp r4, #2 beq _0211ae82 cmp r4, #3 beq _0211ae8c b _0211ae96 _0211ae82: ldr r0, [sp] add r0, #0x48 blx func_ov06_02101de0 b _0211aea6 _0211ae8c: ldr r0, [sp] add r0, #0x48 blx func_ov06_02101e18 b _0211aea6 _0211ae96: sub r1, r4, #4 lsl r2, r1, #1 ldr r1, _0211aecc ; =data_ov10_0211e7c0 ldr r0, [sp] ldrh r1, [r1, r2] add r0, #0x48 blx func_ov06_02101d1c _0211aea6: ldr r0, [sp] add r0, #0xe0 str r0, [sp] str r4, [r0] add sp, #0xc mov r0, #1 pop {r4, r5, r6, r7, pc} _0211aeb4: add r4, r4, #1 cmp r4, #0xe blt _0211ae40 mov r0, #0 add sp, #0xc pop {r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end func_ov10_0211addc _0211aec0: .word data_027e0d78 _0211aec4: .word 0x00000109 _0211aec8: .word data_ov00_020eec9c _0211aecc: .word data_ov10_0211e7c0 .global func_ov10_0211aed0 thumb_func_start func_ov10_0211aed0 func_ov10_0211aed0: ; 0x0211aed0 push {r3, r4, r5, r6, r7, lr} mov r3, #8 add r5, r0, #0 tst r2, r3 bne _0211aede mov r0, #0 pop {r3, r4, r5, r6, r7, pc} _0211aede: cmp r1, #0x69 beq _0211aee8 cmp r1, #0x6a beq _0211aeee b _0211afd6 _0211aee8: bl func_ov10_0211ac54 b _0211afd6 _0211aeee: ldr r0, [r5, #0x78] cmp r0, #0xc beq _0211aef8 mov r0, #0 pop {r3, r4, r5, r6, r7, pc} _0211aef8: add r0, r5, #0 add r0, #0x4c blx func_ov00_020d1650 add r6, r0, #0 add r4, r1, #0 ldr r0, [r5, #8] add r1, r6, #0 ldr r7, [r0, #0x54] add r2, r4, #0 add r0, r7, #0 bl func_ov00_02077568 cmp r0, #0 beq _0211af1a mov r0, #1 b _0211af1c _0211af1a: mov r0, #0 _0211af1c: cmp r0, #0 bne _0211af38 mov r2, #0 ldr r0, _0211afdc ; =data_027e0c68 ldr r1, _0211afe0 ; =0x00130020 mvn r2, r2 blx func_02036edc add r0, r5, #0 mov r1, #6 bl func_ov10_0211ac34 mov r0, #0 pop {r3, r4, r5, r6, r7, pc} _0211af38: add r0, r7, #0 bl func_ov00_02077998 eor r1, r4 eor r0, r6 orr r0, r1 bne _0211af5e mov r2, #0 ldr r0, _0211afdc ; =data_027e0c68 ldr r1, _0211afe4 ; =0x00130025 mvn r2, r2 blx func_02036edc add r0, r5, #0 mov r1, #6 bl func_ov10_0211ac34 mov r0, #0 pop {r3, r4, r5, r6, r7, pc} _0211af5e: ldr r0, [r5, #8] add r1, r6, #0 ldr r0, [r0, #0x54] add r2, r4, #0 blx func_ov10_0211cb30 cmp r0, #0 beq _0211afa2 add r0, r5, #0 add r0, #0xe4 ldr r0, [r0] cmp r0, #1 bne _0211af8a ldr r0, [r5, #8] add r1, r4, #0 ldr r2, [r0, #0x58] ldr r0, [r0, #0x5c] eor r1, r0 add r0, r6, #0 eor r0, r2 orr r0, r1 beq _0211afa2 _0211af8a: mov r2, #0 ldr r0, _0211afdc ; =data_027e0c68 ldr r1, _0211afe8 ; =0x00130021 mvn r2, r2 blx func_02036edc add r0, r5, #0 mov r1, #6 bl func_ov10_0211ac34 mov r0, #0 pop {r3, r4, r5, r6, r7, pc} _0211afa2: ldr r0, _0211afec ; =data_ov00_020eec9c mov r1, #4 blx func_ov00_020d77e4 ldr r0, [r5, #8] str r6, [r0, #0x58] str r4, [r0, #0x5c] add r0, r5, #0 add r0, #0xe4 ldr r0, [r0] cmp r0, #0 ldr r0, [r5, #8] bne _0211afca bl func_ov10_02113a58 add r0, r5, #0 mov r1, #2 bl func_ov10_0211ac34 b _0211afd6 _0211afca: bl func_ov10_021139ec add r0, r5, #0 mov r1, #5 bl func_ov10_0211ac34 _0211afd6: mov r0, #0 pop {r3, r4, r5, r6, r7, pc} nop thumb_func_end func_ov10_0211aed0 _0211afdc: .word data_027e0c68 _0211afe0: .word 0x00130020 _0211afe4: .word 0x00130025 _0211afe8: .word 0x00130021 _0211afec: .word data_ov00_020eec9c .global func_ov10_0211aff0 thumb_func_start func_ov10_0211aff0 func_ov10_0211aff0: ; 0x0211aff0 push {r3, r4, r5, r6, r7, lr} sub sp, #0x40 add r6, r0, #0 ldr r0, [r6, #0x14] mov r1, #0xf lsl r0, r0, #0xc lsl r1, r1, #0xc blx Divide str r0, [sp, #8] add r0, sp, #0x20 mov r5, #0 blx func_01ffbe34 mov r1, #1 add r0, sp, #0x18 strb r1, [r0, #0x12] add r0, r6, #0 str r0, [sp, #0x14] add r0, #0x48 str r0, [sp, #0x14] add r0, r6, #0 str r0, [sp, #0x10] add r0, #0x30 str r0, [sp, #0x10] add r0, r6, #0 str r0, [sp, #0xc] add r0, #0x18 add r4, r5, #0 str r0, [sp, #0xc] _0211b02c: ldr r2, [sp, #8] cmp r4, #1 beq _0211b036 cmp r4, #2 bne _0211b03c _0211b036: mov r0, #3 lsl r0, r0, #0xa sub r2, r2, r0 _0211b03c: ldr r0, [r6, #0x10] cmp r0, #7 bhi _0211b07c add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _0211b04e: ; jump table .short _0211b05e - _0211b04e - 2 ; case 0 .short _0211b07c - _0211b04e - 2 ; case 1 .short _0211b05e - _0211b04e - 2 ; case 2 .short _0211b05e - _0211b04e - 2 ; case 3 .short _0211b05e - _0211b04e - 2 ; case 4 .short _0211b05e - _0211b04e - 2 ; case 5 .short _0211b070 - _0211b04e - 2 ; case 6 .short _0211b062 - _0211b04e - 2 ; case 7 _0211b05e: mov r5, #0 b _0211b07c _0211b062: mov r0, #1 lsl r0, r0, #0xc mov r1, #0 blx func_ov00_020d03f8 add r5, r0, #0 b _0211b07c _0211b070: mov r1, #1 mov r0, #0 lsl r1, r1, #0xc blx func_ov00_020d03f8 add r5, r0, #0 _0211b07c: ldr r0, [r6, #0x10] cmp r0, #6 beq _0211b086 cmp r0, #7 bne _0211b08a _0211b086: mov r0, #0x32 b _0211b08e _0211b08a: mov r0, #0x63 mvn r0, r0 _0211b08e: cmp r4, #3 bhi _0211b13c add r1, r4, r4 add r1, pc ldrh r1, [r1, #6] lsl r1, r1, #0x10 asr r1, r1, #0x10 add pc, r1 _0211b09e: ; jump table .short _0211b0a6 - _0211b09e - 2 ; case 0 .short _0211b0c4 - _0211b09e - 2 ; case 1 .short _0211b0e2 - _0211b09e - 2 ; case 2 .short _0211b106 - _0211b09e - 2 ; case 3 _0211b0a6: mov r0, #0x95 mvn r0, r0 add r1, r5, #0 mul r1, r0 mov r0, #2 lsl r0, r0, #0xa add r0, r1, r0 asr r0, r0, #0xc lsl r1, r0, #0x10 ldr r0, _0211b198 ; =0x01ff0000 and r1, r0 ldr r0, _0211b19c ; =0x04001014 str r1, [r0] str r1, [r0, #8] b _0211b13c _0211b0c4: mov r2, #0x64 add r3, r5, #0 mul r3, r2 mov r2, #2 mov r0, #0 lsl r2, r2, #0xa add r2, r3, r2 str r0, [sp] ldr r0, [sp, #0xc] mov r1, #0 asr r2, r2, #0xc add r3, sp, #0x20 blx func_ov00_020d00c4 b _0211b13c _0211b0e2: ldr r0, [r6, #0x78] cmp r0, #0xc bne _0211b13c mov r2, #0x64 add r3, r5, #0 mul r3, r2 mov r2, #2 mov r0, #0 lsl r2, r2, #0xa add r2, r3, r2 str r0, [sp] ldr r0, [sp, #0x10] mov r1, #0 asr r2, r2, #0xc add r3, sp, #0x20 blx func_ov00_020d00c4 b _0211b13c _0211b106: add r1, r5, #0 mul r1, r0 mov r0, #2 lsl r0, r0, #0xa add r0, r1, r0 asr r7, r0, #0xc add r0, sp, #0x20 str r0, [sp] ldr r0, _0211b1a0 ; =0x00000109 mov r1, #2 mov r2, #0 add r3, r7, #0 blx func_0203493c ldr r0, [r6, #0x10] cmp r0, #1 bne _0211b12c mov r1, #1 b _0211b12e _0211b12c: mov r1, #0 _0211b12e: add r0, sp, #0x20 str r0, [sp] ldr r0, [sp, #0x14] mov r2, #0 add r3, r7, #0 blx func_ov06_02101fa8 _0211b13c: add r4, r4, #1 cmp r4, #4 bge _0211b144 b _0211b02c _0211b144: add r0, r6, #0 add r0, #0xe0 ldr r0, [r0] cmp r0, #0 blt _0211b192 mov r0, #0 str r0, [sp, #0x1c] str r0, [sp, #0x18] mov r0, #4 str r0, [sp] add r1, r6, #0 str r0, [sp, #4] add r1, #0xe0 ldr r0, _0211b1a0 ; =0x00000109 ldr r1, [r1] add r2, sp, #0x1c add r3, sp, #0x18 blx func_020347b0 add r6, #0xe0 ldr r0, [r6] cmp r0, #2 beq _0211b178 cmp r0, #3 beq _0211b17c b _0211b180 _0211b178: mov r1, #4 b _0211b182 _0211b17c: mov r1, #5 b _0211b182 _0211b180: mov r1, #6 _0211b182: mov r0, #0 str r0, [sp] ldr r3, [sp, #0x18] ldr r0, _0211b1a0 ; =0x00000109 ldr r2, [sp, #0x1c] add r3, r3, #1 blx func_02034984 _0211b192: add sp, #0x40 pop {r3, r4, r5, r6, r7, pc} nop thumb_func_end func_ov10_0211aff0 _0211b198: .word 0x01ff0000 _0211b19c: .word 0x04001014 _0211b1a0: .word 0x00000109 .global func_ov10_0211b1a4 thumb_func_start func_ov10_0211b1a4 func_ov10_0211b1a4: ; 0x0211b1a4 push {r3, r4, r5, r6, r7, lr} sub sp, #0x30 str r0, [sp, #0x18] mov r0, #0 str r0, [sp, #0x2c] str r0, [sp, #0x28] ldr r0, _0211b28c ; =0x00000109 mov r1, #3 add r2, sp, #0x2c add r3, sp, #0x28 blx func_02034698 ldr r0, [sp, #0x18] add r0, #0x48 blx func_ov06_02101bf0 blx func_02004e4c mov r2, #1 add r1, r0, #0 mov r0, #0 lsl r2, r2, #0xc blx func_020078f4 ldr r0, [sp, #0x18] mov r2, #6 add r3, r2, #0 ldr r1, _0211b290 ; =data_02068e7c add r0, #0xb8 str r1, [r0] mov r0, #0xc0 str r0, [sp] mov r1, #1 str r1, [sp, #4] mov r0, #0xf str r0, [sp, #8] ldr r0, [sp, #0x18] str r1, [sp, #0xc] mov r1, #0 str r1, [sp, #0x10] add r0, #0x8c add r3, #0xfa str r1, [sp, #0x14] blx func_02032d68 ldr r0, [sp, #0x18] mov r1, #0 add r0, #0x8c ldr r2, [r0] ldr r2, [r2, #0x10] blx r2 mov r0, #0 str r0, [sp, #0x24] str r0, [sp, #0x20] ldr r0, [sp, #0x18] ldr r5, _0211b294 ; =data_ov10_0211e7c8 str r0, [sp, #0x1c] add r0, #0x8c mov r4, #4 str r0, [sp, #0x1c] _0211b21c: mov r0, #4 str r0, [sp] str r0, [sp, #4] ldr r0, _0211b28c ; =0x00000109 add r1, r4, #0 add r2, sp, #0x24 add r3, sp, #0x20 blx func_020347b0 add r0, r5, #0 sub r0, #8 ldrh r7, [r0] ldr r0, [sp, #0x18] add r0, #0xb8 ldr r6, [r0] add r1, r7, #0 add r0, r6, #0 blx func_02023ea4 add r1, r0, #0 ldr r0, _0211b298 ; =0x0000ffff cmp r1, r0 bne _0211b24e ldr r0, [r6] ldrh r1, [r0, #2] _0211b24e: add r0, r6, #0 blx func_02023eec add r2, r0, #0 mov r0, #1 str r0, [sp] mov r3, #2 ldrsb r3, [r2, r3] ldr r0, [sp, #0x1c] ldr r1, [sp, #0x24] lsr r2, r3, #0x1f add r2, r3, r2 asr r2, r2, #1 sub r1, r1, r2 ldr r2, [sp, #0x20] ldr r6, [r0] sub r2, #0x37 lsl r1, r1, #0x18 lsl r2, r2, #0x18 ldr r6, [r6, #0xc] lsr r1, r1, #0x18 lsr r2, r2, #0x18 add r3, r7, #0 blx r6 add r4, r4, #1 add r5, r5, #2 cmp r4, #0xe blt _0211b21c add sp, #0x30 pop {r3, r4, r5, r6, r7, pc} nop thumb_func_end func_ov10_0211b1a4 _0211b28c: .word 0x00000109 _0211b290: .word data_02068e7c _0211b294: .word data_ov10_0211e7c8 _0211b298: .word 0x0000ffff .global func_ov10_0211b29c arm_func_start func_ov10_0211b29c func_ov10_0211b29c: ; 0x0211b29c stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x8c blx func_02032f94 add r0, r4, #0x48 bl func_ov06_02101ba4 ldr r3, _0211b2e0 ; =func_ov10_02113e6c add r0, r4, #0x18 mov r1, #2 mov r2, #0x18 bl func_0204f754 mov r0, r4 blx func_ov10_02112f44 mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_0211b29c _0211b2e0: .word func_ov10_02113e6c - 1 .global func_ov10_0211b2e4 arm_func_start func_ov10_0211b2e4 func_ov10_0211b2e4: ; 0x0211b2e4 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x8c blx func_02032f94 add r0, r4, #0x48 bl func_ov06_02101ba4 ldr r3, _0211b320 ; =func_ov10_02113e6c add r0, r4, #0x18 mov r1, #2 mov r2, #0x18 bl func_0204f754 mov r0, r4 blx func_ov10_02112f44 mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_0211b2e4 _0211b320: .word func_ov10_02113e6c - 1 .global func_ov10_0211b324 thumb_func_start func_ov10_0211b324 func_ov10_0211b324: ; 0x0211b324 push {r3, r4, r5, lr} mov r2, #8 mov r3, #2 add r5, r0, #0 add r4, r1, #0 bl func_ov10_02112f18 ldr r0, _0211b350 ; =data_ov10_0211f008 add r4, #0x68 str r0, [r5] add r0, r5, #0 add r0, #0x18 add r1, r4, #0 blx func_ov01_020f5c00 mov r1, #0xff add r0, r1, #0 add r0, #0xe1 strb r1, [r5, r0] add r0, r5, #0 pop {r3, r4, r5, pc} nop thumb_func_end func_ov10_0211b324 _0211b350: .word data_ov10_0211f008 .global func_ov10_0211b354 thumb_func_start func_ov10_0211b354 func_ov10_0211b354: ; 0x0211b354 push {r3, r4, r5, r6, r7, lr} add r7, r1, #0 ldr r1, _0211b3e0 ; =data_027e0d54 add r5, r0, #0 ldrh r1, [r1, #0x16] ldr r0, [r5, #8] bl func_ov10_02113358 add r6, r0, #0 ldr r0, [r5, #8] mov r2, #0x40 ldr r4, [r0, #0x54] ldr r0, _0211b3e4 ; =0x00003404 add r1, r4, #0 add r0, r6, r0 blx func_02007908 ldr r2, _0211b3e8 ; =0x00002804 add r1, r4, #0 add r0, r6, r2 add r1, #0x40 lsr r2, r2, #3 blx func_02007984 cmp r7, #1 bne _0211b396 ldr r2, [r5, #8] mov r1, #0x64 ldrsb r1, [r2, r1] add r0, r5, #0 add r0, #0x18 blx func_ov01_020f6e00 _0211b396: ldr r0, [r5, #8] ldr r0, [r0, #8] cmp r0, #9 beq _0211b3a2 cmp r0, #0xa bne _0211b3a6 _0211b3a2: mov r3, #2 b _0211b3a8 _0211b3a6: mov r3, #1 _0211b3a8: add r0, r5, #0 add r0, #0x18 add r1, r4, #0 ldr r4, [r0] mov r2, #1 ldr r4, [r4, #0xc] blx r4 mov r0, #0x1e lsl r0, r0, #4 ldrb r1, [r5, r0] ldr r0, _0211b3e0 ; =data_027e0d54 ldrh r0, [r0, #0x16] cmp r1, r0 beq _0211b3cc add r0, r5, #0 add r0, #0x18 blx func_ov01_020f5fb4 _0211b3cc: ldr r0, _0211b3e0 ; =data_027e0d54 ldrh r1, [r0, #0x16] mov r0, #0x1e lsl r0, r0, #4 strb r1, [r5, r0] add r0, r5, #0 add r1, r7, #0 blx func_ov10_02112f48 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end func_ov10_0211b354 _0211b3e0: .word data_027e0d54 _0211b3e4: .word 0x00003404 _0211b3e8: .word 0x00002804 .global func_ov10_0211b3ec thumb_func_start func_ov10_0211b3ec func_ov10_0211b3ec: ; 0x0211b3ec push {r3, lr} add r0, #0x18 ldr r1, [r0] ldr r1, [r1, #0x10] blx r1 pop {r3, pc} thumb_func_end func_ov10_0211b3ec .global func_ov10_0211b3f8 thumb_func_start func_ov10_0211b3f8 func_ov10_0211b3f8: ; 0x0211b3f8 push {r3, r4, r5, lr} add r4, r0, #0 ldr r0, [r4, #0x14] add r0, r0, #1 str r0, [r4, #0x14] bpl _0211b408 mov r0, #0 str r0, [r4, #0x14] _0211b408: add r0, r4, #0 add r0, #0x18 ldr r1, [r0] ldr r1, [r1, #8] blx r1 cmp r0, #4 bhi _0211b4a8 add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _0211b422: ; jump table .short _0211b4a8 - _0211b422 - 2 ; case 0 .short _0211b42c - _0211b422 - 2 ; case 1 .short _0211b43a - _0211b422 - 2 ; case 2 .short _0211b448 - _0211b422 - 2 ; case 3 .short _0211b47a - _0211b422 - 2 ; case 4 _0211b42c: ldr r0, [r4, #8] mov r1, #4 add r0, #0x10 mov r2, #1 blx func_ov10_0211c784 pop {r3, r4, r5, pc} _0211b43a: ldr r0, [r4, #8] mov r1, #9 add r0, #0x10 mov r2, #0 blx func_ov10_0211c784 pop {r3, r4, r5, pc} _0211b448: ldr r5, [r4, #8] mov r0, #0 add r1, r5, #0 add r1, #0x58 mov r2, #0x10 blx func_020078f4 mov r0, #0 mvn r0, r0 add r5, #0x64 strb r0, [r5] ldr r0, [r4, #8] ldr r0, [r0, #0x54] blx func_ov01_020f53b0 ldr r1, [r4, #8] mov r2, #0 add r1, #0x64 strb r0, [r1] ldr r0, [r4, #8] mov r1, #7 add r0, #0x10 blx func_ov10_0211c784 pop {r3, r4, r5, pc} _0211b47a: ldr r5, [r4, #8] mov r0, #0 add r1, r5, #0 add r1, #0x58 mov r2, #0x10 blx func_020078f4 mov r0, #0 mvn r0, r0 add r5, #0x64 strb r0, [r5] mov r0, #0x6f lsl r0, r0, #2 ldrsh r1, [r4, r0] ldr r0, [r4, #8] mov r2, #0 add r0, #0x64 strb r1, [r0] ldr r0, [r4, #8] mov r1, #0xa add r0, #0x10 blx func_ov10_0211c784 _0211b4a8: pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end func_ov10_0211b3f8 .global func_ov10_0211b4ac thumb_func_start func_ov10_0211b4ac func_ov10_0211b4ac: ; 0x0211b4ac push {r3, lr} add r0, #0x18 ldr r1, [r0] ldr r1, [r1, #0x14] blx r1 pop {r3, pc} thumb_func_end func_ov10_0211b4ac .global func_ov10_0211b4b8 arm_func_start func_ov10_0211b4b8 func_ov10_0211b4b8: ; 0x0211b4b8 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x18 bl func_ov01_020f5c88 mov r0, r4 blx func_ov10_02112f44 mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211b4b8 .global func_ov10_0211b4e0 arm_func_start func_ov10_0211b4e0 func_ov10_0211b4e0: ; 0x0211b4e0 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x18 bl func_ov01_020f5c88 mov r0, r4 blx func_ov10_02112f44 mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211b4e0 .global func_ov10_0211b500 thumb_func_start func_ov10_0211b500 func_ov10_0211b500: ; 0x0211b500 push {r4, lr} sub sp, #0x10 mov r2, #3 mov r3, #0 add r4, r0, #0 bl func_ov10_02112f18 ldr r0, _0211b544 ; =data_ov10_0211f06c ldr r3, _0211b548 ; =func_ov10_02113e70 str r0, [r4] ldr r0, _0211b54c ; =func_ov10_02113e6c mov r1, #1 str r0, [sp] add r0, r4, #0 add r0, #0x18 mov r2, #0x18 blx func_0204f614 mov r1, #0x79 str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r3, #0 add r0, r4, #0 str r3, [sp, #8] add r0, #0x18 add r1, #0x8e mov r2, #2 str r3, [sp, #0xc] blx func_ov00_020cfed0 add r0, r4, #0 add sp, #0x10 pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_0211b500 _0211b544: .word data_ov10_0211f06c _0211b548: .word func_ov10_02113e70 - 1 _0211b54c: .word func_ov10_02113e6c - 1 .global func_ov10_0211b550 thumb_func_start func_ov10_0211b550 func_ov10_0211b550: ; 0x0211b550 push {r4, r5, r6, r7, lr} sub sp, #0x10c add r7, r0, #0 str r1, [sp, #8] mov r1, #1 add r0, #0x25 strb r1, [r0] blx func_020329b0 ldr r1, _0211b644 ; =0x00000107 blx func_02032bd8 ldr r6, _0211b644 ; =0x00000107 mov r5, #0 _0211b56c: cmp r5, #0 beq _0211b576 cmp r5, #1 beq _0211b58e b _0211b5a4 _0211b576: blx func_020329b0 mov r1, #0x10 str r1, [sp] mov r1, #1 str r1, [sp, #4] add r1, r6, #0 add r2, r5, #0 mov r3, #0xf0 blx func_02032a74 b _0211b5a4 _0211b58e: blx func_020329b0 mov r1, #0x10 str r1, [sp] mov r1, #1 str r1, [sp, #4] add r1, r6, #0 add r2, r5, #0 mov r3, #0xa0 blx func_02032a74 _0211b5a4: blx func_020329b0 add r1, r6, #0 add r2, r5, #0 blx func_02032a20 mov r2, #0 mov r1, #1 add r3, r2, #0 add r4, r0, #0 blx func_02032714 ldr r0, _0211b648 ; =data_02068e7c cmp r5, #0 str r0, [r4, #0x2c] ldr r0, [r7, #8] ldr r3, [r0, #0x54] beq _0211b5ce cmp r5, #1 beq _0211b60a b _0211b630 _0211b5ce: add r1, r4, #0 add r1, #0x4e mov r0, #1 strb r0, [r1] add r1, r4, #0 add r1, #0x4f mov r0, #0x14 strb r0, [r1] add r0, r3, #0 bl func_ov00_02077998 add r2, r0, #0 add r3, r1, #0 add r1, r2, #0 add r2, r3, #0 add r0, sp, #0xc mov r3, #0xc blx func_ov00_020d17a0 mov r0, #0 mvn r0, r0 str r0, [sp] add r0, r4, #0 ldr r4, [r0] mov r1, #0 ldr r4, [r4, #8] add r2, r1, #0 add r3, sp, #0xc blx r4 b _0211b630 _0211b60a: add r1, r4, #0 add r1, #0x4e mov r0, #1 strb r0, [r1] add r1, r4, #0 add r1, #0x4f mov r0, #0x14 strb r0, [r1] sub r0, #0x15 str r0, [sp] add r0, r4, #0 mov r4, #0x12 lsl r4, r4, #6 add r3, r3, r4 ldr r4, [r0] mov r1, #0 ldr r4, [r4, #8] add r2, r1, #0 blx r4 _0211b630: add r5, r5, #1 cmp r5, #2 blt _0211b56c ldr r1, [sp, #8] add r0, r7, #0 blx func_ov10_02112f48 add sp, #0x10c pop {r4, r5, r6, r7, pc} nop thumb_func_end func_ov10_0211b550 _0211b644: .word 0x00000107 _0211b648: .word data_02068e7c .global func_ov10_0211b64c thumb_func_start func_ov10_0211b64c func_ov10_0211b64c: ; 0x0211b64c push {r3, lr} blx func_020329b0 ldr r1, _0211b65c ; =0x00000107 blx func_02032c10 pop {r3, pc} nop thumb_func_end func_ov10_0211b64c _0211b65c: .word 0x00000107 .global func_ov10_0211b660 thumb_func_start func_ov10_0211b660 func_ov10_0211b660: ; 0x0211b660 mov r2, #0 str r2, [r0, #0x14] str r1, [r0, #0x10] bx lr thumb_func_end func_ov10_0211b660 .global func_ov10_0211b668 thumb_func_start func_ov10_0211b668 func_ov10_0211b668: ; 0x0211b668 push {r4, lr} add r4, r0, #0 ldr r0, [r4, #0x14] add r0, r0, #1 str r0, [r4, #0x14] bpl _0211b678 mov r0, #0 str r0, [r4, #0x14] _0211b678: ldr r0, [r4, #0x10] cmp r0, #0 beq _0211b6ac cmp r0, #1 beq _0211b688 cmp r0, #2 beq _0211b6bc pop {r4, pc} _0211b688: ldr r0, _0211b6d0 ; =data_027e05f8 ldrh r1, [r0, #2] mov r0, #2 tst r0, r1 beq _0211b6a4 ldr r0, _0211b6d4 ; =data_ov00_020eec9c mov r1, #0x11 blx func_ov00_020d77e4 add r0, r4, #0 mov r1, #2 bl func_ov10_0211b660 pop {r4, pc} _0211b6a4: add r0, r4, #0 bl func_ov10_0211b6d8 pop {r4, pc} _0211b6ac: ldr r0, [r4, #0x14] cmp r0, #0x1e ble _0211b6ce add r0, r4, #0 mov r1, #1 bl func_ov10_0211b660 pop {r4, pc} _0211b6bc: ldr r0, [r4, #0x14] cmp r0, #0x1e ble _0211b6ce ldr r0, [r4, #8] mov r1, #8 add r0, #0x10 mov r2, #0 blx func_ov10_0211c784 _0211b6ce: pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_0211b668 _0211b6d0: .word data_027e05f8 _0211b6d4: .word data_ov00_020eec9c .global func_ov10_0211b6d8 thumb_func_start func_ov10_0211b6d8 func_ov10_0211b6d8: ; 0x0211b6d8 push {r3, r4, r5, r6, r7, lr} sub sp, #8 add r4, r0, #0 str r0, [sp] mov r7, #0 add r6, r0, #0 add r4, #0x18 _0211b6e6: ldrh r0, [r6, #0x22] mov r1, #0 add r2, r1, #0 str r0, [sp, #4] add r0, r4, #0 ldr r5, [r0] add r3, r1, #0 ldr r5, [r5] blx r5 add r2, r0, #0 ldr r0, [sp] ldr r1, [sp, #4] bl func_ov10_0211b71c cmp r0, #0 beq _0211b70c add sp, #8 mov r0, #1 pop {r3, r4, r5, r6, r7, pc} _0211b70c: add r7, r7, #1 add r6, #0x18 add r4, #0x18 cmp r7, #1 blt _0211b6e6 mov r0, #0 add sp, #8 pop {r3, r4, r5, r6, r7, pc} thumb_func_end func_ov10_0211b6d8 .global func_ov10_0211b71c thumb_func_start func_ov10_0211b71c func_ov10_0211b71c: ; 0x0211b71c push {r4, lr} add r4, r0, #0 mov r0, #8 tst r0, r2 bne _0211b72a mov r0, #0 pop {r4, pc} _0211b72a: cmp r1, #0x79 bne _0211b73e ldr r0, _0211b744 ; =data_ov00_020eec9c mov r1, #0x11 blx func_ov00_020d77e4 add r0, r4, #0 mov r1, #2 bl func_ov10_0211b660 _0211b73e: mov r0, #0 pop {r4, pc} nop thumb_func_end func_ov10_0211b71c _0211b744: .word data_ov00_020eec9c .global func_ov10_0211b748 thumb_func_start func_ov10_0211b748 func_ov10_0211b748: ; 0x0211b748 push {r4, r5, r6, r7, lr} sub sp, #0x3c str r0, [sp, #4] ldr r0, [r0, #0x14] mov r1, #0xf lsl r0, r0, #0xc lsl r1, r1, #0xc blx Divide str r0, [sp, #0x10] add r0, sp, #0x1c mov r4, #0 blx func_01ffbe34 mov r1, #1 add r0, sp, #0x1c strb r1, [r0, #0xa] mov r1, #3 ldr r0, [sp, #0x10] lsl r1, r1, #0xa sub r0, r0, r1 str r0, [sp, #0x14] ldr r0, [sp, #4] ldr r7, _0211b858 ; =0x00000107 str r0, [sp, #0x18] add r0, #0x18 add r5, r4, #0 str r0, [sp, #0x18] add r6, sp, #0x1c _0211b782: ldr r2, [sp, #0x10] cmp r5, #2 bne _0211b78a ldr r2, [sp, #0x14] _0211b78a: ldr r0, [sp, #4] ldr r0, [r0, #0x10] cmp r0, #0 beq _0211b798 cmp r0, #2 beq _0211b7a6 b _0211b7b2 _0211b798: mov r0, #1 lsl r0, r0, #0xc mov r1, #0 blx func_ov00_020d03f8 add r4, r0, #0 b _0211b7b2 _0211b7a6: mov r1, #1 mov r0, #0 lsl r1, r1, #0xc blx func_ov00_020d03f8 add r4, r0, #0 _0211b7b2: cmp r5, #0 beq _0211b7c0 cmp r5, #1 beq _0211b7fa cmp r5, #2 beq _0211b832 b _0211b84e _0211b7c0: neg r1, r4 mov r0, #0x4b add r2, r1, #0 lsl r0, r0, #2 mul r2, r0 mov r0, #2 lsl r0, r0, #0xa add r0, r2, r0 asr r0, r0, #0xc str r0, [sp, #0xc] ldr r2, [sp, #0xc] add r0, r7, #0 mov r1, #1 mov r3, #0 str r6, [sp] blx func_0203493c blx func_020329b0 add r1, r7, #0 mov r2, #1 blx func_02032a20 ldr r1, [sp, #0xc] mov r2, #0 add r3, r6, #0 blx func_02032788 b _0211b84e _0211b7fa: mov r0, #0x4b lsl r0, r0, #2 add r1, r4, #0 mul r1, r0 mov r0, #2 lsl r0, r0, #0xa add r0, r1, r0 asr r0, r0, #0xc str r0, [sp, #8] mov r1, #0 ldr r2, [sp, #8] add r0, r7, #0 add r3, r1, #0 str r6, [sp] blx func_0203493c blx func_020329b0 add r1, r7, #0 mov r2, #0 blx func_02032a20 ldr r1, [sp, #8] mov r2, #0 add r3, r6, #0 blx func_02032788 b _0211b84e _0211b832: neg r1, r4 mov r2, #0x64 mul r2, r1 mov r1, #2 mov r0, #0 lsl r1, r1, #0xa add r1, r2, r1 str r0, [sp] ldr r0, [sp, #0x18] asr r1, r1, #0xc mov r2, #0 add r3, r6, #0 blx func_ov00_020d00c4 _0211b84e: add r5, r5, #1 cmp r5, #3 blt _0211b782 add sp, #0x3c pop {r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end func_ov10_0211b748 _0211b858: .word 0x00000107 .global func_ov10_0211b85c arm_func_start func_ov10_0211b85c func_ov10_0211b85c: ; 0x0211b85c stmdb sp!, {r4, lr} mov r4, r0 ldr r3, _0211b890 ; =func_ov10_02113e6c add r0, r4, #0x18 mov r1, #1 mov r2, #0x18 bl func_0204f754 mov r0, r4 blx func_ov10_02112f44 mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_0211b85c _0211b890: .word func_ov10_02113e6c - 1 .global func_ov10_0211b894 arm_func_start func_ov10_0211b894 func_ov10_0211b894: ; 0x0211b894 stmdb sp!, {r4, lr} mov r4, r0 ldr r3, _0211b8c0 ; =func_ov10_02113e6c add r0, r4, #0x18 mov r1, #1 mov r2, #0x18 bl func_0204f754 mov r0, r4 blx func_ov10_02112f44 mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_0211b894 _0211b8c0: .word func_ov10_02113e6c - 1 .global func_ov10_0211b8c4 thumb_func_start func_ov10_0211b8c4 func_ov10_0211b8c4: ; 0x0211b8c4 push {r3, r4, r5, lr} add r5, r0, #0 add r4, r1, #0 blx func_020386d8 ldr r0, _0211b8d8 ; =data_ov10_0211f108 str r0, [r5] str r4, [r5, #0x14] add r0, r5, #0 pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end func_ov10_0211b8c4 _0211b8d8: .word data_ov10_0211f108 .global func_ov10_0211b8dc thumb_func_start func_ov10_0211b8dc func_ov10_0211b8dc: ; 0x0211b8dc push {r3, lr} ldrb r2, [r1, #1] cmp r2, #0x1e bne _0211b8f4 ldr r1, [r1, #4] cmp r1, #3 bne _0211b8f4 ldr r0, [r0, #0x14] bl func_ov10_0211c684 mov r0, #1 pop {r3, pc} _0211b8f4: mov r0, #1 pop {r3, pc} thumb_func_end func_ov10_0211b8dc .global func_ov10_0211b8f8 thumb_func_start func_ov10_0211b8f8 func_ov10_0211b8f8: ; 0x0211b8f8 push {r4, lr} sub sp, #0x10 mov r2, #0x11 mov r3, #0 add r4, r0, #0 bl func_ov10_02112f18 ldr r0, _0211b9ec ; =data_ov10_0211f0e4 ldr r3, _0211b9f0 ; =func_ov10_02113e70 str r0, [r4] mov r0, #0 str r0, [r4, #0x18] ldr r0, _0211b9f4 ; =func_ov10_02113e6c mov r1, #5 str r0, [sp] add r0, r4, #0 add r0, #0x1c mov r2, #0x18 blx func_0204f614 add r0, r4, #0 add r0, #0x94 add r1, r4, #0 bl func_ov10_0211b8c4 add r0, r4, #0 mov r3, #0 add r0, #0xd0 strb r3, [r0] add r0, r4, #0 mov r2, #1 add r0, #0xd1 strb r2, [r0] add r0, r4, #0 add r0, #0xd2 strb r3, [r0] mov r1, #0x7a str r1, [sp] str r2, [sp, #4] str r3, [sp, #8] add r0, r4, #0 mov r2, #5 str r3, [sp, #0xc] add r0, #0x1c add r1, #0x8e add r3, r2, #0 blx func_ov00_020cfed0 mov r1, #0x7b str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 mov r2, #3 add r0, #0x34 add r1, #0x8d add r3, r2, #0 blx func_ov00_020cfed0 add r0, r4, #0 mov r2, #4 mov r1, #8 add r0, #0x47 strb r1, [r0] mov r1, #0x7c str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x4c add r1, #0x8c add r3, r2, #0 blx func_ov00_020cfed0 add r0, r4, #0 mov r2, #0 mov r1, #9 add r0, #0x5f strb r1, [r0] mov r1, #0x7e str r1, [sp] mov r0, #1 str r0, [sp, #4] add r0, r4, #0 str r2, [sp, #8] add r0, #0x64 add r1, #0x8a add r3, r2, #0 str r2, [sp, #0xc] blx func_ov00_020cfed0 add r0, r4, #0 mov r1, #6 add r0, #0x77 strb r1, [r0] mov r1, #0x7d str r1, [sp] mov r2, #1 str r2, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r4, #0 add r0, #0x7c add r1, #0x8b add r3, r2, #0 blx func_ov00_020cfed0 add r0, r4, #0 mov r1, #7 add r0, #0x8f strb r1, [r0] add r0, r4, #0 add sp, #0x10 pop {r4, pc} nop thumb_func_end func_ov10_0211b8f8 _0211b9ec: .word data_ov10_0211f0e4 _0211b9f0: .word func_ov10_02113e70 - 1 _0211b9f4: .word func_ov10_02113e6c - 1 .global func_ov10_0211b9f8 thumb_func_start func_ov10_0211b9f8 func_ov10_0211b9f8: ; 0x0211b9f8 push {r4, lr} add r4, r0, #0 blx func_0203780c add r0, r4, #0 pop {r4, pc} thumb_func_end func_ov10_0211b9f8 .global func_ov10_0211ba04 thumb_func_start func_ov10_0211ba04 func_ov10_0211ba04: ; 0x0211ba04 push {r3, r4, r5, r6, r7, lr} sub sp, #0x120 add r7, r0, #0 str r1, [sp, #0x10] mov r2, #0 add r3, r7, #0 mov r1, #1 _0211ba12: add r0, r3, #0 add r0, #0x29 add r2, r2, #1 add r3, #0x18 strb r1, [r0] cmp r2, #5 blt _0211ba12 add r0, r7, #0 mov r1, #0 add r0, #0xd0 strb r1, [r0] ldr r0, [r7, #8] mov r1, #0x64 ldrsb r5, [r0, r1] add r1, r5, #0 bl func_ov10_02113a4c add r1, r7, #0 add r1, #0xd1 strb r0, [r1] add r0, r7, #0 add r0, #0xd1 ldrb r0, [r0] cmp r0, #0 beq _0211ba48 mov r1, #1 b _0211ba4a _0211ba48: mov r1, #2 _0211ba4a: add r0, r7, #0 add r0, #0xd2 strb r1, [r0] ldr r0, [sp, #0x10] cmp r0, #0 bgt _0211ba5a beq _0211ba6e b _0211ba78 _0211ba5a: cmp r0, #0x10 bgt _0211ba78 cmp r0, #0xd blt _0211ba78 beq _0211ba74 cmp r0, #0xe beq _0211ba6e cmp r0, #0x10 beq _0211ba74 b _0211ba78 _0211ba6e: mov r0, #0 str r0, [r7, #0x18] b _0211ba78 _0211ba74: mov r0, #1 str r0, [r7, #0x18] _0211ba78: blx func_020329b0 mov r1, #0x42 lsl r1, r1, #2 blx func_02032bd8 mov r0, #0xc mul r0, r5 str r0, [sp, #0x18] mov r0, #0x16 mov r4, #0 mul r0, r5 add r6, r4, #0 str r0, [sp, #0x14] _0211ba94: cmp r6, #0 beq _0211ba9e cmp r6, #1 beq _0211bac8 b _0211baf8 _0211ba9e: blx func_020329b0 mov r1, #0x10 str r1, [sp] mov r1, #1 str r1, [sp, #4] mov r1, #0x42 lsl r1, r1, #2 add r2, r6, #0 mov r3, #0xf0 blx func_02032a74 blx func_020329b0 mov r1, #0x42 lsl r1, r1, #2 add r2, r6, #0 blx func_02032a20 add r4, r0, #0 b _0211baf8 _0211bac8: blx func_020329b0 mov r1, #0x10 str r1, [sp] mov r1, #1 add r2, r7, #0 str r1, [sp, #4] add r2, #0xd2 mov r1, #0x42 ldrb r2, [r2] lsl r1, r1, #2 mov r3, #0xa0 blx func_02032a74 blx func_020329b0 add r2, r7, #0 add r2, #0xd2 mov r1, #0x42 ldrb r2, [r2] lsl r1, r1, #2 blx func_02032a20 add r4, r0, #0 _0211baf8: mov r0, #0x12 mov r2, #0 mov r1, #0 lsl r0, r0, #4 strb r1, [r4, r0] add r0, r4, #0 mov r1, #1 add r3, r2, #0 blx func_02032714 ldr r0, [r7, #8] cmp r6, #0 ldr r5, [r0, #0x54] beq _0211bb1a cmp r6, #1 beq _0211bb60 b _0211bb8e _0211bb1a: ldr r0, _0211bbe4 ; =data_02068e7c add r1, r4, #0 str r0, [r4, #0x2c] add r1, #0x4e mov r0, #1 strb r0, [r1] add r1, r4, #0 add r1, #0x4f mov r0, #0x14 strb r0, [r1] ldr r0, [sp, #0x18] add r5, #0x40 add r0, r5, r0 bl func_ov00_0207792c add r3, r0, #0 add r2, r1, #0 add r1, r3, #0 add r0, sp, #0x20 mov r3, #0xc blx func_ov00_020d17a0 mov r0, #0 mvn r0, r0 str r0, [sp] add r0, r4, #0 ldr r5, [r0] mov r1, #0 str r5, [sp, #0x1c] ldr r5, [r5, #8] add r2, r1, #0 add r3, sp, #0x20 str r5, [sp, #0x1c] blx r5 b _0211bb8e _0211bb60: ldr r0, _0211bbe4 ; =data_02068e7c add r1, r4, #0 str r0, [r4, #0x2c] mov r3, #7 lsl r3, r3, #6 add r5, r5, r3 ldr r3, [sp, #0x14] add r1, #0x4e mov r0, #1 strb r0, [r1] add r1, r4, #0 add r1, #0x4f mov r0, #0x14 strb r0, [r1] sub r0, #0x15 str r0, [sp] mov r1, #0 add r0, r4, #0 add r3, r5, r3 ldr r5, [r0] add r2, r1, #0 ldr r5, [r5, #8] blx r5 _0211bb8e: add r6, r6, #1 cmp r6, #2 bge _0211bb96 b _0211ba94 _0211bb96: add r0, r7, #0 add r0, #0xd1 ldrb r0, [r0] cmp r0, #0 beq _0211bba4 mov r3, #1 b _0211bba6 _0211bba4: mov r3, #2 _0211bba6: cmp r0, #0 beq _0211bbae mov r2, #1 b _0211bbb0 _0211bbae: mov r2, #2 _0211bbb0: mov r1, #0x7d str r1, [sp] mov r0, #1 str r0, [sp, #4] mov r0, #0 str r0, [sp, #8] str r0, [sp, #0xc] add r0, r7, #0 lsl r2, r2, #0x18 lsl r3, r3, #0x18 add r0, #0x7c add r1, #0x8b asr r2, r2, #0x18 lsr r3, r3, #0x18 blx func_ov00_020cfed0 add r0, r7, #0 mov r1, #7 add r0, #0x8f strb r1, [r0] ldr r1, [sp, #0x10] add r0, r7, #0 blx func_ov10_02112f48 add sp, #0x120 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end func_ov10_0211ba04 _0211bbe4: .word data_02068e7c .global func_ov10_0211bbe8 thumb_func_start func_ov10_0211bbe8 func_ov10_0211bbe8: ; 0x0211bbe8 push {r3, lr} blx func_020329b0 mov r1, #0x42 lsl r1, r1, #2 blx func_02032c10 pop {r3, pc} thumb_func_end func_ov10_0211bbe8 .global func_ov10_0211bbf8 thumb_func_start func_ov10_0211bbf8 func_ov10_0211bbf8: ; 0x0211bbf8 push {r3, r4, r5, lr} add r5, r0, #0 ldr r0, [r5, #0x10] add r4, r1, #0 cmp r0, #4 bne _0211bc0a ldr r0, [r5, #8] bl func_ov10_02113da4 _0211bc0a: cmp r4, #4 beq _0211bc28 cmp r4, #0xb beq _0211bc16 cmp r4, #0xc bne _0211bc30 _0211bc16: ldr r0, [r5, #8] mov r1, #0x64 ldrsb r1, [r0, r1] bl func_ov10_021139bc ldr r0, [r5, #8] bl func_ov10_02113a58 b _0211bc30 _0211bc28: ldr r0, [r5, #8] ldr r1, _0211bc38 ; =0x00130022 bl func_ov10_02113d70 _0211bc30: mov r0, #0 str r0, [r5, #0x14] str r4, [r5, #0x10] pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end func_ov10_0211bbf8 _0211bc38: .word 0x00130022 .global func_ov10_0211bc3c thumb_func_start func_ov10_0211bc3c func_ov10_0211bc3c: ; 0x0211bc3c push {r4, lr} add r4, r0, #0 mov r2, #0 add r3, r4, #0 mov r1, #1 _0211bc46: add r0, r3, #0 add r0, #0x29 add r2, r2, #1 add r3, #0x18 strb r1, [r0] cmp r2, #5 blt _0211bc46 ldr r0, _0211bc7c ; =data_ov00_020eec9c mov r1, #0x11 blx func_ov00_020d77e4 ldr r0, [r4, #0x18] cmp r0, #0 bne _0211bc6c add r0, r4, #0 mov r1, #9 bl func_ov10_0211bbf8 pop {r4, pc} _0211bc6c: add r0, r4, #0 mov r1, #5 bl func_ov10_0211bbf8 mov r0, #0 str r0, [r4, #0x18] pop {r4, pc} nop thumb_func_end func_ov10_0211bc3c _0211bc7c: .word data_ov00_020eec9c .global func_ov10_0211bc80 thumb_func_start func_ov10_0211bc80 func_ov10_0211bc80: ; 0x0211bc80 push {r4, lr} add r4, r0, #0 ldr r0, [r4, #0x14] add r0, r0, #1 str r0, [r4, #0x14] bpl _0211bc90 mov r0, #0 str r0, [r4, #0x14] _0211bc90: ldr r0, [r4, #0x10] cmp r0, #0x10 bhi _0211bd04 add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _0211bca2: ; jump table .short _0211bcde - _0211bca2 - 2 ; case 0 .short _0211bcc4 - _0211bca2 - 2 ; case 1 .short _0211bcee - _0211bca2 - 2 ; case 2 .short _0211bcfe - _0211bca2 - 2 ; case 3 .short _0211bcc4 - _0211bca2 - 2 ; case 4 .short _0211bd10 - _0211bca2 - 2 ; case 5 .short _0211bd20 - _0211bca2 - 2 ; case 6 .short _0211bd30 - _0211bca2 - 2 ; case 7 .short _0211bd58 - _0211bca2 - 2 ; case 8 .short _0211be04 - _0211bca2 - 2 ; case 9 .short _0211bd7c - _0211bca2 - 2 ; case 10 .short _0211bd98 - _0211bca2 - 2 ; case 11 .short _0211bd98 - _0211bca2 - 2 ; case 12 .short _0211bdac - _0211bca2 - 2 ; case 13 .short _0211bdac - _0211bca2 - 2 ; case 14 .short _0211bdd2 - _0211bca2 - 2 ; case 15 .short _0211bdec - _0211bca2 - 2 ; case 16 _0211bcc4: ldr r0, _0211be18 ; =data_027e05f8 ldrh r1, [r0, #2] mov r0, #2 tst r0, r1 beq _0211bcd6 add r0, r4, #0 bl func_ov10_0211bc3c pop {r4, pc} _0211bcd6: add r0, r4, #0 bl func_ov10_0211be28 pop {r4, pc} _0211bcde: ldr r0, [r4, #0x14] cmp r0, #0x1e ble _0211bd04 add r0, r4, #0 mov r1, #1 bl func_ov10_0211bbf8 pop {r4, pc} _0211bcee: ldr r0, [r4, #0x14] cmp r0, #0x1e ble _0211bd04 add r0, r4, #0 mov r1, #3 bl func_ov10_0211bbf8 pop {r4, pc} _0211bcfe: ldr r0, [r4, #0x14] cmp r0, #0x1e bgt _0211bd06 _0211bd04: b _0211be16 _0211bd06: add r0, r4, #0 mov r1, #4 bl func_ov10_0211bbf8 pop {r4, pc} _0211bd10: ldr r0, [r4, #0x14] cmp r0, #0x1e ble _0211be16 add r0, r4, #0 mov r1, #6 bl func_ov10_0211bbf8 pop {r4, pc} _0211bd20: ldr r0, [r4, #0x14] cmp r0, #0x1e ble _0211be16 add r0, r4, #0 mov r1, #1 bl func_ov10_0211bbf8 pop {r4, pc} _0211bd30: add r0, r4, #0 add r0, #0xac ldr r1, [r0] ldr r0, _0211be1c ; =0xffff0000 and r1, r0 mov r0, #1 lsl r0, r0, #0x18 cmp r1, r0 beq _0211bd4e add r4, #0x94 ldr r0, _0211be20 ; =data_027e0c68 add r1, r4, #0 blx func_02036888 pop {r4, pc} _0211bd4e: add r0, r4, #0 mov r1, #8 bl func_ov10_0211bbf8 pop {r4, pc} _0211bd58: ldr r0, [r4, #0x14] cmp r0, #0x1e ble _0211be16 add r0, r4, #0 add r0, #0xd0 ldrb r0, [r0] cmp r0, #1 bne _0211bd72 add r0, r4, #0 mov r1, #9 bl func_ov10_0211bbf8 pop {r4, pc} _0211bd72: add r0, r4, #0 mov r1, #1 bl func_ov10_0211bbf8 pop {r4, pc} _0211bd7c: ldr r0, _0211be24 ; =data_027e0d54 ldrb r0, [r0, #0xd] cmp r0, #0 bne _0211bd88 mov r0, #1 b _0211bd8a _0211bd88: mov r0, #0 _0211bd8a: cmp r0, #0 beq _0211be16 add r0, r4, #0 mov r1, #8 bl func_ov10_0211bbf8 pop {r4, pc} _0211bd98: ldr r0, [r4, #8] ldr r1, [r0, #0x68] cmp r1, #0 bne _0211be16 add r0, #0x10 mov r1, #5 mov r2, #2 blx func_ov10_0211c784 pop {r4, pc} _0211bdac: ldr r0, [r4, #8] ldr r0, [r0, #0x68] cmp r0, #1 bne _0211be16 add r0, r4, #0 add r0, #0xd1 ldrb r0, [r0] cmp r0, #0 beq _0211bdc8 add r0, r4, #0 mov r1, #4 bl func_ov10_0211bbf8 pop {r4, pc} _0211bdc8: add r0, r4, #0 mov r1, #1 bl func_ov10_0211bbf8 pop {r4, pc} _0211bdd2: ldr r0, [r4, #8] ldr r1, [r0, #0x68] cmp r1, #0 bne _0211be16 add r0, #0x10 mov r1, #7 mov r2, #0 blx func_ov10_0211c784 ldr r0, [r4, #8] bl func_ov10_02113a90 pop {r4, pc} _0211bdec: ldr r0, [r4, #0x14] cmp r0, #0x1e ble _0211be16 ldr r0, [r4, #8] ldr r0, [r0, #0x68] cmp r0, #1 bne _0211be16 add r0, r4, #0 mov r1, #4 bl func_ov10_0211bbf8 pop {r4, pc} _0211be04: ldr r0, [r4, #0x14] cmp r0, #0x1e ble _0211be16 ldr r0, [r4, #8] mov r1, #8 add r0, #0x10 mov r2, #0 blx func_ov10_0211c784 _0211be16: pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_0211bc80 _0211be18: .word data_027e05f8 _0211be1c: .word 0xffff0000 _0211be20: .word data_027e0c68 _0211be24: .word data_027e0d54 .global func_ov10_0211be28 thumb_func_start func_ov10_0211be28 func_ov10_0211be28: ; 0x0211be28 push {r4, r5, r6, r7, lr} sub sp, #0xc add r6, r0, #0 ldr r1, [r6, #8] mov r0, #0x64 ldrsb r1, [r1, r0] mov r0, #0x16 add r7, r6, #0 mul r0, r1 mov r5, #0 str r6, [sp, #8] add r7, #0x1c str r0, [sp] _0211be42: ldr r0, [r6, #0x18] cmp r0, #0 bne _0211be8c cmp r5, #4 bhi _0211be94 add r0, r5, r5 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _0211be58: ; jump table .short _0211be94 - _0211be58 - 2 ; case 0 .short _0211be62 - _0211be58 - 2 ; case 1 .short _0211be76 - _0211be58 - 2 ; case 2 .short _0211bebc - _0211be58 - 2 ; case 3 .short _0211bebc - _0211be58 - 2 ; case 4 _0211be62: ldr r0, [r6, #8] ldr r1, [r0, #0x54] ldr r0, [sp] add r1, r1, r0 mov r0, #0x75 lsl r0, r0, #2 ldrh r0, [r1, r0] lsl r0, r0, #0x14 lsr r0, r0, #0x1f bne _0211bebc _0211be76: ldr r0, [r6, #8] ldr r1, [r0, #0x54] ldr r0, [sp] add r1, r1, r0 mov r0, #0x75 lsl r0, r0, #2 ldrh r0, [r1, r0] lsl r0, r0, #0x14 lsr r0, r0, #0x1f beq _0211be94 b _0211bebc _0211be8c: cmp r5, #1 beq _0211bebc cmp r5, #2 beq _0211bebc _0211be94: ldr r0, [sp, #8] mov r1, #0 ldrh r0, [r0, #0x26] add r2, r1, #0 add r3, r1, #0 str r0, [sp, #4] add r0, r7, #0 ldr r4, [r0] ldr r4, [r4] blx r4 add r2, r0, #0 ldr r1, [sp, #4] add r0, r6, #0 bl func_ov10_0211bed0 cmp r0, #0 beq _0211bebc add sp, #0xc mov r0, #1 pop {r4, r5, r6, r7, pc} _0211bebc: ldr r0, [sp, #8] add r5, r5, #1 add r0, #0x18 add r7, #0x18 str r0, [sp, #8] cmp r5, #5 blt _0211be42 mov r0, #0 add sp, #0xc pop {r4, r5, r6, r7, pc} thumb_func_end func_ov10_0211be28 .global func_ov10_0211bed0 thumb_func_start func_ov10_0211bed0 func_ov10_0211bed0: ; 0x0211bed0 push {r4, lr} mov r3, #8 add r4, r0, #0 tst r2, r3 bne _0211bede mov r0, #0 pop {r4, pc} _0211bede: sub r1, #0x7a cmp r1, #4 bhi _0211bf78 add r1, r1, r1 add r1, pc ldrh r1, [r1, #6] lsl r1, r1, #0x10 asr r1, r1, #0x10 add pc, r1 _0211bef0: ; jump table .short _0211befa - _0211bef0 - 2 ; case 0 .short _0211bf16 - _0211bef0 - 2 ; case 1 .short _0211bf00 - _0211bef0 - 2 ; case 2 .short _0211bf40 - _0211bef0 - 2 ; case 3 .short _0211bf58 - _0211bef0 - 2 ; case 4 _0211befa: bl func_ov10_0211bc3c b _0211bf78 _0211bf00: add r1, r4, #0 ldr r0, _0211bf7c ; =data_027e0c68 ldr r2, _0211bf80 ; =0x00ca0004 add r1, #0x94 blx func_02036ce4 add r0, r4, #0 mov r1, #7 bl func_ov10_0211bbf8 b _0211bf78 _0211bf16: ldr r0, _0211bf84 ; =data_ov00_020eec9c mov r1, #0x10 blx func_ov00_020d77e4 mov r0, #1 str r0, [r4, #0x18] add r0, r4, #0 add r0, #0xd1 ldrb r0, [r0] cmp r0, #0 beq _0211bf36 add r0, r4, #0 mov r1, #2 bl func_ov10_0211bbf8 b _0211bf78 _0211bf36: add r0, r4, #0 mov r1, #0xc bl func_ov10_0211bbf8 b _0211bf78 _0211bf40: ldr r0, _0211bf84 ; =data_ov00_020eec9c mov r1, #0x10 blx func_ov00_020d77e4 add r0, r4, #0 mov r1, #0xb bl func_ov10_0211bbf8 ldr r0, [r4, #8] bl func_ov10_02113a58 b _0211bf78 _0211bf58: ldr r0, _0211bf84 ; =data_ov00_020eec9c mov r1, #0x10 blx func_ov00_020d77e4 ldr r0, [r4, #8] mov r1, #0x64 ldrsb r1, [r0, r1] bl func_ov10_021139bc add r0, r4, #0 mov r1, #0xf bl func_ov10_0211bbf8 ldr r0, [r4, #8] bl func_ov10_02113a58 _0211bf78: mov r0, #0 pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_0211bed0 _0211bf7c: .word data_027e0c68 _0211bf80: .word 0x00ca0004 _0211bf84: .word data_ov00_020eec9c .global func_ov10_0211bf88 thumb_func_start func_ov10_0211bf88 func_ov10_0211bf88: ; 0x0211bf88 push {r3, lr} ldr r1, [r0, #0x10] cmp r1, #0xe bhi _0211bfcc add r1, r1, r1 add r1, pc ldrh r1, [r1, #6] lsl r1, r1, #0x10 asr r1, r1, #0x10 add pc, r1 _0211bf9c: ; jump table .short _0211bfcc - _0211bf9c - 2 ; case 0 .short _0211bfcc - _0211bf9c - 2 ; case 1 .short _0211bfc0 - _0211bf9c - 2 ; case 2 .short _0211bfc6 - _0211bf9c - 2 ; case 3 .short _0211bfcc - _0211bf9c - 2 ; case 4 .short _0211bfc6 - _0211bf9c - 2 ; case 5 .short _0211bfc0 - _0211bf9c - 2 ; case 6 .short _0211bfba - _0211bf9c - 2 ; case 7 .short _0211bfba - _0211bf9c - 2 ; case 8 .short _0211bfcc - _0211bf9c - 2 ; case 9 .short _0211bfba - _0211bf9c - 2 ; case 10 .short _0211bfc6 - _0211bf9c - 2 ; case 11 .short _0211bfcc - _0211bf9c - 2 ; case 12 .short _0211bfcc - _0211bf9c - 2 ; case 13 .short _0211bfcc - _0211bf9c - 2 ; case 14 _0211bfba: bl func_ov10_0211c4cc pop {r3, pc} _0211bfc0: bl func_ov10_0211c220 pop {r3, pc} _0211bfc6: bl func_ov10_0211c3b8 pop {r3, pc} _0211bfcc: bl func_ov10_0211bfd4 pop {r3, pc} .align 2, 0 thumb_func_end func_ov10_0211bf88 .global func_ov10_0211bfd4 thumb_func_start func_ov10_0211bfd4 func_ov10_0211bfd4: ; 0x0211bfd4 push {r3, r4, r5, r6, r7, lr} sub sp, #0x48 add r4, r0, #0 ldr r0, [r4, #0x14] mov r1, #0xf lsl r0, r0, #0xc lsl r1, r1, #0xc blx Divide str r0, [sp, #0xc] add r0, sp, #0x28 blx func_01ffbe34 mov r1, #1 add r0, sp, #0x28 strb r1, [r0, #0xa] mov r1, #3 ldr r0, [sp, #0xc] lsl r1, r1, #0xa sub r0, r0, r1 str r0, [sp, #0x10] add r0, r4, #0 str r0, [sp, #0x14] add r0, #0x7c str r0, [sp, #0x14] add r0, r4, #0 str r0, [sp, #0x18] add r0, #0x64 str r0, [sp, #0x18] add r0, r4, #0 str r0, [sp, #0x24] add r0, #0x1c str r0, [sp, #0x24] add r0, r4, #0 str r0, [sp, #0x20] add r0, #0x4c str r0, [sp, #0x20] add r0, r4, #0 str r0, [sp, #0x1c] add r0, #0x34 mov r5, #0 add r7, sp, #0x28 str r0, [sp, #0x1c] _0211c02a: ldr r0, [r4, #0x10] cmp r0, #4 bgt _0211c034 beq _0211c054 b _0211c05c _0211c034: add r1, r0, #0 sub r1, #0xb cmp r1, #5 bhi _0211c05c add r1, r1, r1 add r1, pc ldrh r1, [r1, #6] lsl r1, r1, #0x10 asr r1, r1, #0x10 add pc, r1 _0211c048: ; jump table .short _0211c054 - _0211c048 - 2 ; case 0 .short _0211c05c - _0211c048 - 2 ; case 1 .short _0211c054 - _0211c048 - 2 ; case 2 .short _0211c05c - _0211c048 - 2 ; case 3 .short _0211c054 - _0211c048 - 2 ; case 4 .short _0211c054 - _0211c048 - 2 ; case 5 _0211c054: cmp r5, #0 beq _0211c0a8 cmp r5, #1 beq _0211c0a8 _0211c05c: mov r2, #0 ldr r3, [sp, #0xc] cmp r5, #2 bne _0211c066 ldr r3, [sp, #0x10] _0211c066: cmp r0, #9 bgt _0211c072 bge _0211c092 cmp r0, #0 beq _0211c082 b _0211c0a4 _0211c072: cmp r0, #0x10 bgt _0211c0a4 cmp r0, #0xf blt _0211c0a4 beq _0211c0a2 cmp r0, #0x10 beq _0211c0a2 b _0211c0a4 _0211c082: mov r0, #1 lsl r0, r0, #0xc mov r1, #0 add r2, r3, #0 blx func_ov00_020d03f8 add r2, r0, #0 b _0211c0a4 _0211c092: mov r1, #1 mov r0, #0 lsl r1, r1, #0xc add r2, r3, #0 blx func_ov00_020d03f8 add r2, r0, #0 b _0211c0a4 _0211c0a2: mov r2, #0 _0211c0a4: cmp r5, #4 bls _0211c0aa _0211c0a8: b _0211c212 _0211c0aa: add r0, r5, r5 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _0211c0b6: ; jump table .short _0211c16c - _0211c0b6 - 2 ; case 0 .short _0211c1ac - _0211c0b6 - 2 ; case 1 .short _0211c1ec - _0211c0b6 - 2 ; case 2 .short _0211c0c0 - _0211c0b6 - 2 ; case 3 .short _0211c114 - _0211c0b6 - 2 ; case 4 _0211c0c0: neg r1, r2 mov r0, #0x4b lsl r0, r0, #2 add r2, r1, #0 mul r2, r0 mov r0, #2 lsl r0, r0, #0xa add r0, r2, r0 asr r0, r0, #0xc str r0, [sp, #8] mov r0, #0 str r0, [sp] ldr r0, [sp, #0x14] ldr r1, [sp, #8] mov r2, #0 add r3, r7, #0 blx func_ov00_020d00c4 add r0, r4, #0 add r0, #0x89 ldrb r1, [r0] mov r0, #6 tst r0, r1 beq _0211c0f4 mov r6, #2 b _0211c0f6 _0211c0f4: mov r6, #0 _0211c0f6: blx func_020329b0 add r2, r4, #0 add r2, #0xd2 mov r1, #0x42 ldrb r2, [r2] lsl r1, r1, #2 blx func_02032a20 ldr r1, [sp, #8] add r2, r6, #0 add r3, r7, #0 blx func_02032788 b _0211c212 _0211c114: add r0, r4, #0 add r0, #0xd1 ldrb r0, [r0] cmp r0, #0 beq _0211c212 mov r0, #0x4b add r1, r2, #0 lsl r0, r0, #2 mul r1, r0 mov r0, #2 lsl r0, r0, #0xa add r0, r1, r0 asr r0, r0, #0xc str r0, [sp, #4] mov r0, #0 str r0, [sp] ldr r0, [sp, #0x18] ldr r1, [sp, #4] mov r2, #0 add r3, r7, #0 blx func_ov00_020d00c4 add r0, r4, #0 add r0, #0x71 ldrb r1, [r0] mov r0, #6 tst r0, r1 beq _0211c150 mov r6, #2 b _0211c152 _0211c150: mov r6, #0 _0211c152: blx func_020329b0 mov r1, #0x42 lsl r1, r1, #2 mov r2, #0 blx func_02032a20 ldr r1, [sp, #4] add r2, r6, #0 add r3, r7, #0 blx func_02032788 b _0211c212 _0211c16c: add r0, r4, #0 add r0, #0xd0 ldrb r0, [r0] cmp r0, #0 bne _0211c212 ldr r3, [r4, #8] mov r1, #0x64 ldr r0, [r3, #0x54] ldrsb r3, [r3, r1] mov r1, #0x16 mul r1, r3 add r1, r0, r1 mov r0, #0x75 lsl r0, r0, #2 ldrh r0, [r1, r0] lsl r0, r0, #0x14 lsr r0, r0, #0x1f bne _0211c212 mov r3, #0x96 mul r3, r2 mov r2, #2 mov r0, #0 lsl r2, r2, #0xa add r2, r3, r2 str r0, [sp] ldr r0, [sp, #0x1c] mov r1, #0 asr r2, r2, #0xc add r3, r7, #0 blx func_ov00_020d00c4 b _0211c212 _0211c1ac: add r0, r4, #0 add r0, #0xd0 ldrb r0, [r0] cmp r0, #0 bne _0211c212 ldr r3, [r4, #8] mov r1, #0x64 ldr r0, [r3, #0x54] ldrsb r3, [r3, r1] mov r1, #0x16 mul r1, r3 add r1, r0, r1 mov r0, #0x75 lsl r0, r0, #2 ldrh r0, [r1, r0] lsl r0, r0, #0x14 lsr r0, r0, #0x1f bne _0211c212 mov r3, #0x96 mul r3, r2 mov r2, #2 mov r0, #0 lsl r2, r2, #0xa add r2, r3, r2 str r0, [sp] ldr r0, [sp, #0x20] mov r1, #0 asr r2, r2, #0xc add r3, r7, #0 blx func_ov00_020d00c4 b _0211c212 _0211c1ec: add r0, r4, #0 add r0, #0xd0 ldrb r0, [r0] cmp r0, #0 bne _0211c212 mov r1, #0x63 mvn r1, r1 mul r1, r2 mov r2, #2 mov r0, #0 lsl r2, r2, #0xa add r1, r1, r2 str r0, [sp] ldr r0, [sp, #0x24] asr r1, r1, #0xc mov r2, #0 add r3, r7, #0 blx func_ov00_020d00c4 _0211c212: add r5, r5, #1 cmp r5, #5 bge _0211c21a b _0211c02a _0211c21a: add sp, #0x48 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end func_ov10_0211bfd4 .global func_ov10_0211c220 thumb_func_start func_ov10_0211c220 func_ov10_0211c220: ; 0x0211c220 push {r4, r5, r6, r7, lr} sub sp, #0x3c add r4, r0, #0 ldr r0, [r4, #0x14] mov r1, #0xf lsl r0, r0, #0xc lsl r1, r1, #0xc blx Divide add r7, r0, #0 add r0, sp, #0x1c blx func_01ffbe34 mov r1, #1 add r0, sp, #0x1c strb r1, [r0, #0xa] mov r0, #3 lsl r0, r0, #0xa sub r0, r7, r0 str r0, [sp, #4] add r0, r4, #0 str r0, [sp, #0x18] add r0, #0x1c str r0, [sp, #0x18] add r0, r4, #0 str r0, [sp, #0x14] add r0, #0x4c str r0, [sp, #0x14] add r0, r4, #0 str r0, [sp, #0x10] add r0, #0x34 str r0, [sp, #0x10] add r0, r4, #0 str r0, [sp, #0xc] add r0, #0x64 str r0, [sp, #0xc] add r0, r4, #0 str r0, [sp, #8] add r0, #0x7c mov r5, #0 add r6, sp, #0x1c str r0, [sp, #8] _0211c274: mov r2, #0 add r3, r7, #0 cmp r5, #2 bne _0211c27e ldr r3, [sp, #4] _0211c27e: ldr r0, [r4, #0x10] cmp r0, #2 beq _0211c298 cmp r0, #6 bne _0211c2a6 mov r0, #1 lsl r0, r0, #0xc mov r1, #0 add r2, r3, #0 blx func_ov00_020d03f8 add r2, r0, #0 b _0211c2a6 _0211c298: mov r1, #1 mov r0, #0 lsl r1, r1, #0xc add r2, r3, #0 blx func_ov00_020d03f8 add r2, r0, #0 _0211c2a6: cmp r5, #4 bhi _0211c3aa add r0, r5, r5 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _0211c2b6: ; jump table .short _0211c322 - _0211c2b6 - 2 ; case 0 .short _0211c358 - _0211c2b6 - 2 ; case 1 .short _0211c38e - _0211c2b6 - 2 ; case 2 .short _0211c2c0 - _0211c2b6 - 2 ; case 3 .short _0211c2ee - _0211c2b6 - 2 ; case 4 _0211c2c0: mov r0, #0 str r0, [sp] mov r1, #0 ldr r0, [sp, #8] add r2, r1, #0 add r3, r6, #0 blx func_ov00_020d00c4 blx func_020329b0 add r2, r4, #0 add r2, #0xd2 mov r1, #0x42 ldrb r2, [r2] lsl r1, r1, #2 blx func_02032a20 mov r1, #0 add r2, r1, #0 add r3, r6, #0 blx func_02032788 b _0211c3aa _0211c2ee: add r0, r4, #0 add r0, #0xd1 ldrb r0, [r0] cmp r0, #0 beq _0211c3aa mov r0, #0 str r0, [sp] mov r1, #0 ldr r0, [sp, #0xc] add r2, r1, #0 add r3, r6, #0 blx func_ov00_020d00c4 blx func_020329b0 mov r1, #0x42 lsl r1, r1, #2 mov r2, #0 blx func_02032a20 mov r1, #0 add r2, r1, #0 add r3, r6, #0 blx func_02032788 b _0211c3aa _0211c322: ldr r3, [r4, #8] mov r1, #0x64 ldr r0, [r3, #0x54] ldrsb r3, [r3, r1] mov r1, #0x16 mul r1, r3 add r1, r0, r1 mov r0, #0x75 lsl r0, r0, #2 ldrh r0, [r1, r0] lsl r0, r0, #0x14 lsr r0, r0, #0x1f bne _0211c3aa mov r3, #0x96 mul r3, r2 mov r2, #2 mov r0, #0 lsl r2, r2, #0xa add r2, r3, r2 str r0, [sp] ldr r0, [sp, #0x10] mov r1, #0 asr r2, r2, #0xc add r3, r6, #0 blx func_ov00_020d00c4 b _0211c3aa _0211c358: ldr r3, [r4, #8] mov r1, #0x64 ldr r0, [r3, #0x54] ldrsb r3, [r3, r1] mov r1, #0x16 mul r1, r3 add r1, r0, r1 mov r0, #0x75 lsl r0, r0, #2 ldrh r0, [r1, r0] lsl r0, r0, #0x14 lsr r0, r0, #0x1f bne _0211c3aa mov r3, #0x96 mul r3, r2 mov r2, #2 mov r0, #0 lsl r2, r2, #0xa add r2, r3, r2 str r0, [sp] ldr r0, [sp, #0x14] mov r1, #0 asr r2, r2, #0xc add r3, r6, #0 blx func_ov00_020d00c4 b _0211c3aa _0211c38e: mov r1, #0x63 mvn r1, r1 mul r1, r2 mov r2, #2 mov r0, #0 lsl r2, r2, #0xa add r1, r1, r2 str r0, [sp] ldr r0, [sp, #0x18] asr r1, r1, #0xc mov r2, #0 add r3, r6, #0 blx func_ov00_020d00c4 _0211c3aa: add r5, r5, #1 cmp r5, #5 bge _0211c3b2 b _0211c274 _0211c3b2: add sp, #0x3c pop {r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end func_ov10_0211c220 .global func_ov10_0211c3b8 thumb_func_start func_ov10_0211c3b8 func_ov10_0211c3b8: ; 0x0211c3b8 push {r4, r5, r6, r7, lr} sub sp, #0x34 add r5, r0, #0 ldr r0, [r5, #0x14] mov r1, #0xf lsl r0, r0, #0xc lsl r1, r1, #0xc blx Divide add r7, r0, #0 add r0, sp, #0x14 blx func_01ffbe34 mov r1, #1 add r0, sp, #0x14 strb r1, [r0, #0xa] mov r0, #3 lsl r0, r0, #0xa sub r0, r7, r0 str r0, [sp, #4] add r0, r5, #0 str r0, [sp, #0x10] add r0, #0x1c str r0, [sp, #0x10] add r0, r5, #0 str r0, [sp, #0xc] add r0, #0x64 str r0, [sp, #0xc] add r0, r5, #0 str r0, [sp, #8] add r0, #0x7c mov r4, #0 add r6, sp, #0x14 str r0, [sp, #8] _0211c3fc: mov r1, #0 add r2, r7, #0 cmp r4, #0 bne _0211c406 ldr r2, [sp, #4] _0211c406: ldr r0, [r5, #0x10] cmp r0, #3 beq _0211c416 cmp r0, #5 beq _0211c424 cmp r0, #0xb beq _0211c432 b _0211c434 _0211c416: mov r0, #1 lsl r0, r0, #0xc mov r1, #0 blx func_ov00_020d03f8 add r1, r0, #0 b _0211c434 _0211c424: mov r1, #1 mov r0, #0 lsl r1, r1, #0xc blx func_ov00_020d03f8 add r1, r0, #0 b _0211c434 _0211c432: mov r1, #0 _0211c434: cmp r4, #0 beq _0211c4a4 cmp r4, #1 beq _0211c442 cmp r4, #2 beq _0211c470 b _0211c4c0 _0211c442: mov r0, #0 str r0, [sp] mov r1, #0 ldr r0, [sp, #8] add r2, r1, #0 add r3, r6, #0 blx func_ov00_020d00c4 blx func_020329b0 add r2, r5, #0 add r2, #0xd2 mov r1, #0x42 ldrb r2, [r2] lsl r1, r1, #2 blx func_02032a20 mov r1, #0 add r2, r1, #0 add r3, r6, #0 blx func_02032788 b _0211c4c0 _0211c470: add r0, r5, #0 add r0, #0xd1 ldrb r0, [r0] cmp r0, #0 beq _0211c4c0 mov r0, #0 str r0, [sp] mov r1, #0 ldr r0, [sp, #0xc] add r2, r1, #0 add r3, r6, #0 blx func_ov00_020d00c4 blx func_020329b0 mov r1, #0x42 lsl r1, r1, #2 mov r2, #0 blx func_02032a20 mov r1, #0 add r2, r1, #0 add r3, r6, #0 blx func_02032788 b _0211c4c0 _0211c4a4: mov r2, #0x63 mvn r2, r2 mul r2, r1 mov r1, #2 mov r0, #0 lsl r1, r1, #0xa add r1, r2, r1 str r0, [sp] ldr r0, [sp, #0x10] asr r1, r1, #0xc mov r2, #0 add r3, r6, #0 blx func_ov00_020d00c4 _0211c4c0: add r4, r4, #1 cmp r4, #3 blt _0211c3fc add sp, #0x34 pop {r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end func_ov10_0211c3b8 .global func_ov10_0211c4cc thumb_func_start func_ov10_0211c4cc func_ov10_0211c4cc: ; 0x0211c4cc push {r3, r4, r5, r6, r7, lr} sub sp, #0x40 add r4, r0, #0 ldr r0, [r4, #0x14] mov r1, #0xf lsl r0, r0, #0xc lsl r1, r1, #0xc blx Divide str r0, [sp, #4] add r0, sp, #0x20 blx func_01ffbe34 mov r1, #1 add r0, sp, #0x20 strb r1, [r0, #0xa] mov r1, #3 ldr r0, [sp, #4] lsl r1, r1, #0xa sub r0, r0, r1 str r0, [sp, #8] add r0, r4, #0 str r0, [sp, #0x1c] add r0, #0x4c str r0, [sp, #0x1c] add r0, r4, #0 str r0, [sp, #0x18] add r0, #0x34 str r0, [sp, #0x18] add r0, r4, #0 str r0, [sp, #0x14] add r0, #0x1c str r0, [sp, #0x14] add r0, r4, #0 str r0, [sp, #0x10] add r0, #0x64 str r0, [sp, #0x10] add r0, r4, #0 str r0, [sp, #0xc] add r0, #0x7c mov r5, #0 add r7, sp, #0x20 str r0, [sp, #0xc] _0211c522: mov r2, #0 ldr r3, [sp, #4] cmp r5, #2 bne _0211c52c ldr r3, [sp, #8] _0211c52c: ldr r0, [r4, #0x10] cmp r0, #7 beq _0211c53c cmp r0, #8 beq _0211c54c cmp r0, #0xa beq _0211c55c b _0211c560 _0211c53c: mov r1, #1 mov r0, #0 lsl r1, r1, #0xc add r2, r3, #0 blx func_ov00_020d03f8 add r2, r0, #0 b _0211c560 _0211c54c: mov r0, #1 lsl r0, r0, #0xc mov r1, #0 add r2, r3, #0 blx func_ov00_020d03f8 add r2, r0, #0 b _0211c560 _0211c55c: mov r2, #1 lsl r2, r2, #0xc _0211c560: cmp r5, #4 bls _0211c566 b _0211c678 _0211c566: add r0, r5, r5 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _0211c572: ; jump table .short _0211c626 - _0211c572 - 2 ; case 0 .short _0211c650 - _0211c572 - 2 ; case 1 .short _0211c5fe - _0211c572 - 2 ; case 2 .short _0211c57c - _0211c572 - 2 ; case 3 .short _0211c5ba - _0211c572 - 2 ; case 4 _0211c57c: mov r0, #0x18 mvn r0, r0 add r1, r2, #0 mul r1, r0 mov r0, #2 lsl r0, r0, #0xa add r0, r1, r0 asr r6, r0, #0xc mov r0, #0 str r0, [sp] ldr r0, [sp, #0xc] mov r1, #0 add r2, r6, #0 add r3, r7, #0 blx func_ov00_020d00c4 blx func_020329b0 add r2, r4, #0 add r2, #0xd2 mov r1, #0x42 ldrb r2, [r2] lsl r1, r1, #2 blx func_02032a20 mov r1, #0 add r2, r6, #0 add r3, r7, #0 blx func_02032788 b _0211c678 _0211c5ba: add r0, r4, #0 add r0, #0xd1 ldrb r0, [r0] cmp r0, #0 beq _0211c678 mov r0, #0x18 mvn r0, r0 add r1, r2, #0 mul r1, r0 mov r0, #2 lsl r0, r0, #0xa add r0, r1, r0 asr r6, r0, #0xc mov r0, #0 str r0, [sp] ldr r0, [sp, #0x10] mov r1, #0 add r2, r6, #0 add r3, r7, #0 blx func_ov00_020d00c4 blx func_020329b0 mov r1, #0x42 lsl r1, r1, #2 mov r2, #0 blx func_02032a20 mov r1, #0 add r2, r6, #0 add r3, r7, #0 blx func_02032788 b _0211c678 _0211c5fe: add r0, r4, #0 add r0, #0xd0 ldrb r0, [r0] cmp r0, #0 bne _0211c678 mov r1, #0x63 mvn r1, r1 mul r1, r2 mov r2, #2 mov r0, #0 lsl r2, r2, #0xa add r1, r1, r2 str r0, [sp] ldr r0, [sp, #0x14] asr r1, r1, #0xc mov r2, #0 add r3, r7, #0 blx func_ov00_020d00c4 b _0211c678 _0211c626: add r0, r4, #0 add r0, #0xd0 ldrb r0, [r0] cmp r0, #0 bne _0211c678 mov r1, #0 add r3, r1, #0 neg r2, r2 sub r3, #0x64 mul r3, r2 mov r2, #2 mov r0, #0 lsl r2, r2, #0xa add r2, r3, r2 str r0, [sp] ldr r0, [sp, #0x18] asr r2, r2, #0xc add r3, r7, #0 blx func_ov00_020d00c4 b _0211c678 _0211c650: add r0, r4, #0 add r0, #0xd0 ldrb r0, [r0] cmp r0, #0 bne _0211c678 mov r1, #0 add r3, r1, #0 neg r2, r2 sub r3, #0x64 mul r3, r2 mov r2, #2 mov r0, #0 lsl r2, r2, #0xa add r2, r3, r2 str r0, [sp] ldr r0, [sp, #0x1c] asr r2, r2, #0xc add r3, r7, #0 blx func_ov00_020d00c4 _0211c678: add r5, r5, #1 cmp r5, #5 bge _0211c680 b _0211c522 _0211c680: add sp, #0x40 pop {r3, r4, r5, r6, r7, pc} thumb_func_end func_ov10_0211c4cc .global func_ov10_0211c684 thumb_func_start func_ov10_0211c684 func_ov10_0211c684: ; 0x0211c684 push {r3, r4, r5, lr} add r5, r0, #0 mov r1, #1 add r0, #0xd0 strb r1, [r0] ldr r2, [r5, #8] mov r1, #0x64 ldrsb r1, [r2, r1] ldr r0, [r2, #0x54] blx func_ov10_0211cba0 blx func_020329b0 add r2, r5, #0 add r2, #0xd2 mov r1, #0x42 ldrb r2, [r2] lsl r1, r1, #2 blx func_02032a20 ldr r2, [r0] mov r1, #0 ldr r2, [r2, #0x10] add r4, r0, #0 blx r2 mov r0, #0 mvn r0, r0 str r0, [sp] add r0, r4, #0 ldr r4, [r0] mov r1, #0 ldr r3, _0211c6ec ; =data_ov10_0211f0c8 ldr r4, [r4, #8] add r2, r1, #0 blx r4 blx func_020329b0 mov r1, #0x42 lsl r1, r1, #2 mov r2, #0 blx func_02032a20 ldr r2, [r0] mov r1, #0 ldr r2, [r2, #0x10] blx r2 add r0, r5, #0 mov r1, #0xa bl func_ov10_0211bbf8 pop {r3, r4, r5, pc} nop thumb_func_end func_ov10_0211c684 _0211c6ec: .word data_ov10_0211f0c8 .global func_ov10_0211c6f0 arm_func_start func_ov10_0211c6f0 func_ov10_0211c6f0: ; 0x0211c6f0 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x94 bl func_0203780c ldr r3, _0211c72c ; =func_ov10_02113e6c add r0, r4, #0x1c mov r1, #5 mov r2, #0x18 bl func_0204f754 mov r0, r4 blx func_ov10_02112f44 mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_0211c6f0 _0211c72c: .word func_ov10_02113e6c - 1 .global func_ov10_0211c730 arm_func_start func_ov10_0211c730 func_ov10_0211c730: ; 0x0211c730 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #0x94 bl func_0203780c ldr r3, _0211c764 ; =func_ov10_02113e6c add r0, r4, #0x1c mov r1, #5 mov r2, #0x18 bl func_0204f754 mov r0, r4 blx func_ov10_02112f44 mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_0211c730 _0211c764: .word func_ov10_02113e6c - 1 .global func_ov10_0211c768 arm_func_start func_ov10_0211c768 func_ov10_0211c768: ; 0x0211c768 stmdb sp!, {r4, lr} mov r4, r0 bl func_0203780c mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211c768 .global func_ov10_0211c784 arm_func_start func_ov10_0211c784 func_ov10_0211c784: ; 0x0211c784 stmdb sp!, {r3, r4, r5, r6, r7, lr} mov r7, r0 ldr r0, [r7] mov r6, r1 mov r5, r2 blx func_ov10_02113da4 ldr r4, [r7, #4] mov r0, r7 mov r1, r6 mov r2, r4 bl func_ov10_0211ca04 mov r0, r7 mov r1, r6 mov r2, r4 bl func_ov10_0211c7dc mov r2, r4 str r6, [r7, #4] str r5, [r7, #8] mov r0, r7 mov r1, r6 bl func_ov10_0211cae8 ldmia sp!, {r3, r4, r5, r6, r7, pc} arm_func_end func_ov10_0211c784 .global func_ov10_0211c7dc arm_func_start func_ov10_0211c7dc func_ov10_0211c7dc: ; 0x0211c7dc stmdb sp!, {r4, r5, r6, lr} mov r5, r1 mov r6, r0 mov r4, r2 cmp r5, #2 bgt _0211c80c cmp r5, #0 blt _0211c85c cmpne r5, #1 cmpne r5, #2 beq _0211c814 b _0211c85c _0211c80c: cmp r5, #0xc bne _0211c85c _0211c814: ldr r0, _0211c954 ; =data_027e0cbc mov r1, #0x2e bl func_0203d7e0 cmp r0, #0 bne _0211c83c mov r2, #0 ldr r0, _0211c954 ; =data_027e0cbc sub r3, r2, #1 mov r1, #0x2e bl func_0203d77c _0211c83c: cmp r5, #2 cmpeq r4, #3 bne _0211c85c mov r2, #0 ldr r0, _0211c958 ; =data_027e0c38 mov r3, r2 mov r1, #7 bl func_02033e70 _0211c85c: cmp r5, #0xa addls pc, pc, r5, lsl #2 ldmia sp!, {r4, r5, r6, pc} _0211c868: ; jump table ldmia sp!, {r4, r5, r6, pc} ; case 0 b _0211c894 ; case 1 b _0211c894 ; case 2 b _0211c894 ; case 3 b _0211c8dc ; case 4 ldmia sp!, {r4, r5, r6, pc} ; case 5 ldmia sp!, {r4, r5, r6, pc} ; case 6 b _0211c92c ; case 7 b _0211c90c ; case 8 b _0211c92c ; case 9 b _0211c92c ; case 10 _0211c894: cmp r4, #1 cmpne r4, #2 cmpne r4, #3 ldmeqia sp!, {r4, r5, r6, pc} ldr r0, [r6] mov r1, #0 blx func_ov10_02113870 bl func_ov10_02115de4 ldr r0, [r6] mov r1, #1 blx func_ov10_02113870 bl func_ov10_02115de4 mov r2, #0 ldr r0, _0211c954 ; =data_027e0cbc mov r1, #0x2f sub r3, r2, #1 bl func_0203d77c ldmia sp!, {r4, r5, r6, pc} _0211c8dc: mov r2, #0 ldr r0, _0211c954 ; =data_027e0cbc sub r3, r2, #1 mov r1, #0x30 bl func_0203d77c cmp r4, #0xb ldmneia sp!, {r4, r5, r6, pc} mov r1, #1 ldr r0, [r6] mov r2, r1 blx func_ov10_02113ad8 ldmia sp!, {r4, r5, r6, pc} _0211c90c: cmp r4, #8 ldmeqia sp!, {r4, r5, r6, pc} mov r2, #0 ldr r0, _0211c954 ; =data_027e0cbc sub r3, r2, #1 mov r1, #0x2d bl func_0203d77c ldmia sp!, {r4, r5, r6, pc} _0211c92c: cmp r4, #7 cmpne r4, #9 cmpne r4, #0xa ldmeqia sp!, {r4, r5, r6, pc} mov r2, #0 ldr r0, _0211c954 ; =data_027e0cbc sub r3, r2, #1 mov r1, #0x2c bl func_0203d77c ldmia sp!, {r4, r5, r6, pc} .align 2, 0 arm_func_end func_ov10_0211c7dc _0211c954: .word data_027e0cbc _0211c958: .word data_027e0c38 .global func_ov10_0211c95c arm_func_start func_ov10_0211c95c func_ov10_0211c95c: ; 0x0211c95c stmdb sp!, {r3, lr} cmp r1, #0xa addls pc, pc, r1, lsl #2 ldmia sp!, {r3, pc} _0211c96c: ; jump table ldmia sp!, {r3, pc} ; case 0 ldmia sp!, {r3, pc} ; case 1 ldmia sp!, {r3, pc} ; case 2 ldmia sp!, {r3, pc} ; case 3 b _0211c998 ; case 4 ldmia sp!, {r3, pc} ; case 5 ldmia sp!, {r3, pc} ; case 6 ldmia sp!, {r3, pc} ; case 7 b _0211c9d0 ; case 8 ldmia sp!, {r3, pc} ; case 9 ldmia sp!, {r3, pc} ; case 10 _0211c998: cmp r2, #8 cmpne r2, #0xb ldmneia sp!, {r3, pc} ldr r2, _0211c9f8 ; =0x01060000 ldr r1, _0211c9fc ; =0x0400101c str r2, [r1] ldr r0, [r0] blx func_ov10_02113b70 ldr r1, _0211ca00 ; =0x04001000 ldr r0, [r1] bic r0, r0, #0x1f00 orr r0, r0, #0x1c00 str r0, [r1] ldmia sp!, {r3, pc} _0211c9d0: cmp r2, #4 beq _0211c9e0 cmp r2, #8 ldmia sp!, {r3, pc} _0211c9e0: ldr r1, _0211ca00 ; =0x04001000 ldr r0, [r1] bic r0, r0, #0x1f00 orr r0, r0, #0x1400 str r0, [r1] ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov10_0211c95c _0211c9f8: .word 0x01060000 _0211c9fc: .word 0x0400101c _0211ca00: .word 0x04001000 .global func_ov10_0211ca04 arm_func_start func_ov10_0211ca04 func_ov10_0211ca04: ; 0x0211ca04 stmdb sp!, {r4, lr} mov r4, r0 cmp r1, #0xc addls pc, pc, r1, lsl #2 ldmia sp!, {r4, pc} _0211ca18: ; jump table b _0211ca4c ; case 0 b _0211ca64 ; case 1 b _0211ca94 ; case 2 b _0211caa4 ; case 3 b _0211cab4 ; case 4 ldmia sp!, {r4, pc} ; case 5 ldmia sp!, {r4, pc} ; case 6 ldmia sp!, {r4, pc} ; case 7 ldmia sp!, {r4, pc} ; case 8 ldmia sp!, {r4, pc} ; case 9 ldmia sp!, {r4, pc} ; case 10 ldmia sp!, {r4, pc} ; case 11 b _0211cad8 ; case 12 _0211ca4c: cmp r2, #1 ldmeqia sp!, {r4, pc} ldr r0, [r4] mov r1, #0 blx func_ov10_02113760 ldmia sp!, {r4, pc} _0211ca64: cmp r2, #0 cmpne r2, #0xc bne _0211ca84 ldr r0, [r4] mov r1, #1 blx func_ov10_02113870 mov r1, #5 strb r1, [r0, #0x2d4] _0211ca84: ldr r0, [r4] mov r1, #1 blx func_ov10_021137f4 ldmia sp!, {r4, pc} _0211ca94: ldr r0, [r4] mov r1, #2 blx func_ov10_021137f4 ldmia sp!, {r4, pc} _0211caa4: ldr r0, [r4] mov r1, #3 blx func_ov10_021137f4 ldmia sp!, {r4, pc} _0211cab4: cmp r2, #0xc bne _0211cac8 ldr r0, [r4] mov r1, #4 blx func_ov10_02113760 _0211cac8: ldr r0, [r4] mov r1, #3 blx func_ov10_021137f4 ldmia sp!, {r4, pc} _0211cad8: ldr r0, [r4] mov r1, #1 blx func_ov10_02113760 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211ca04 .global func_ov10_0211cae8 arm_func_start func_ov10_0211cae8 func_ov10_0211cae8: ; 0x0211cae8 stmdb sp!, {r3, lr} cmp r1, #3 beq _0211cb08 cmp r1, #6 ldmeqia sp!, {r3, pc} cmp r1, #7 beq _0211cb18 ldmia sp!, {r3, pc} _0211cb08: ldr r0, [r0] ldr r1, _0211cb28 ; =0x0013000d blx func_ov10_02113d70 ldmia sp!, {r3, pc} _0211cb18: ldr r0, [r0] ldr r1, _0211cb2c ; =0x0013000f blx func_ov10_02113d70 ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov10_0211cae8 _0211cb28: .word 0x0013000d _0211cb2c: .word 0x0013000f .global func_ov10_0211cb30 arm_func_start func_ov10_0211cb30 func_ov10_0211cb30: ; 0x0211cb30 stmdb sp!, {r3, r4, lr} sub sp, sp, #0xc mov r4, r0 add r0, sp, #0 blx func_ov00_020779b4 add r1, sp, #0 mov r0, r4 bl func_ov01_020f54c8 cmp r0, #0 movge r0, #1 movlt r0, #0 add sp, sp, #0xc ldmia sp!, {r3, r4, pc} arm_func_end func_ov10_0211cb30 .global func_ov10_0211cb64 arm_func_start func_ov10_0211cb64 func_ov10_0211cb64: ; 0x0211cb64 stmdb sp!, {r3, r4, r5, lr} mov r2, #0xc mul r4, r1, r2 add r5, r0, #0x40 add r0, r5, r4 blx func_ov00_020777d0 cmp r0, #0 beq _0211cb98 add r0, r5, r4 blx func_ov00_020774c4 cmp r0, #2 moveq r0, #1 ldmeqia sp!, {r3, r4, r5, pc} _0211cb98: mov r0, #0 ldmia sp!, {r3, r4, r5, pc} arm_func_end func_ov10_0211cb64 .global func_ov10_0211cba0 arm_func_start func_ov10_0211cba0 func_ov10_0211cba0: ; 0x0211cba0 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov01_020f5258 cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r4, pc} ldr r0, _0211cbcc ; =data_027e0d54 add r1, r4, #0x40 bl func_ov10_021188c8 mov r0, #1 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_0211cba0 _0211cbcc: .word data_027e0d54 .global func_ov10_0211cbd0 arm_func_start func_ov10_0211cbd0 func_ov10_0211cbd0: ; 0x0211cbd0 stmdb sp!, {r3, r4, r5, r6, lr} sub sp, sp, #0xc mov r6, r0 mov r5, r1 mov r1, r2 add r0, sp, #0 mov r2, r3 blx func_ov00_020779b4 mov r0, #0x16 mul r4, r5, r0 add r1, r6, #0x1c0 ldr r0, [sp, #0x20] add r1, r1, r4 bl func_0204b0d4 cmp r0, #0 bne _0211cc34 add r1, r6, #0x40 mov r0, #0xc mla r1, r5, r0, r1 add r0, sp, #0 blx func_ov00_02077a40 cmp r0, #0 addne sp, sp, #0xc movne r0, #0 ldmneia sp!, {r3, r4, r5, r6, pc} _0211cc34: add r0, r6, #0x40 mov r2, #0xc mla r1, r5, r2, r0 add r0, sp, #0 bl func_02007908 add r0, r6, #0x1c0 ldr r1, [sp, #0x20] add r0, r0, r4 mov r2, #8 bl func_020320c0 add r0, r6, #0x40 mov r1, #0x500 blx func_0202f134 ldr r0, _0211cc80 ; =data_027e0d54 add r1, r6, #0x40 bl func_ov10_021188c8 mov r0, #1 add sp, sp, #0xc ldmia sp!, {r3, r4, r5, r6, pc} .align 2, 0 arm_func_end func_ov10_0211cbd0 _0211cc80: .word data_027e0d54 .global func_ov10_0211cc84 arm_func_start func_ov10_0211cc84 func_ov10_0211cc84: ; 0x0211cc84 stmdb sp!, {r4, r5, r6, lr} mov r3, #0x16 mul r4, r1, r3 mov r6, r0 mov r5, r2 add r1, r6, #0x1c0 mov r0, r5 add r1, r1, r4 bl func_0204b0d4 cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, pc} add r0, r6, #0x1c0 mov r1, r5 add r0, r0, r4 mov r2, #8 bl func_020320c0 add r0, r6, #0x40 mov r1, #0x500 blx func_0202f134 ldr r0, _0211cce8 ; =data_027e0d54 add r1, r6, #0x40 bl func_ov10_021188c8 mov r0, #1 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 arm_func_end func_ov10_0211cc84 _0211cce8: .word data_027e0d54 .global func_ov10_0211ccec arm_func_start func_ov10_0211ccec func_ov10_0211ccec: ; 0x0211ccec stmdb sp!, {r3, r4, r5, r6, r7, lr} mov r7, r1 ldr r1, _0211cd48 ; =data_ov10_0211e980 mov r6, r2 ldr r4, [r1, r0, lsl #2] mov r5, #0 _0211cd04: cmp r6, #0 blt _0211cd14 cmp r6, r5 bne _0211cd2c _0211cd14: mov r0, r7 mov r1, r5 blx r4 cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} _0211cd2c: add r0, r5, #1 mov r0, r0, lsl #0x10 mov r5, r0, lsr #0x10 cmp r5, #2 blo _0211cd04 mov r0, #1 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 arm_func_end func_ov10_0211ccec _0211cd48: .word data_ov10_0211e980 .global func_ov10_0211cd4c arm_func_start func_ov10_0211cd4c func_ov10_0211cd4c: ; 0x0211cd4c stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x14 ldr r2, _0211cdd0 ; =0x0003f500 mov sl, r0 mul r0, r1, r2 mov r8, #0 add sb, r0, #0 mov r7, r8 mov r6, #7 mov r5, #0xa mov r4, #2 mov fp, #0x1400 _0211cd7c: str r7, [sp] str r7, [sp, #4] str r6, [sp, #8] str r5, [sp, #0xc] mov r0, sl mov r1, sb mov r2, fp mov r3, r7 str r4, [sp, #0x10] blx func_02040464 cmp r0, #0 addeq sp, sp, #0x14 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} add r8, r8, #1 cmp r8, #2 add sb, sb, #0x1400 blt _0211cd7c mov r0, #1 add sp, sp, #0x14 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov10_0211cd4c _0211cdd0: .word 0x0003f500 .global func_ov10_0211cdd4 arm_func_start func_ov10_0211cdd4 func_ov10_0211cdd4: ; 0x0211cdd4 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x14 ldr r2, _0211ce58 ; =0x0003f500 mov sl, r0 mul r0, r1, r2 mov r8, #0 add sb, r0, #0x3e800 mov r7, r8 mov r6, #7 mov r5, #0xa mov r4, #2 mov fp, #0x500 _0211ce04: str r7, [sp] str r7, [sp, #4] str r6, [sp, #8] str r5, [sp, #0xc] mov r0, sl mov r1, sb mov r2, fp mov r3, r7 str r4, [sp, #0x10] blx func_02040464 cmp r0, #0 addeq sp, sp, #0x14 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} add r8, r8, #1 cmp r8, #2 add sb, sb, #0x500 blt _0211ce04 mov r0, #1 add sp, sp, #0x14 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov10_0211cdd4 _0211ce58: .word 0x0003f500 .global func_ov10_0211ce5c arm_func_start func_ov10_0211ce5c func_ov10_0211ce5c: ; 0x0211ce5c stmdb sp!, {r4, r5, lr} sub sp, sp, #0x114 mov r4, r1 add r1, sp, #0x14 mov r2, #0x80 mov r5, r0 bl func_02007ad8 add r1, sp, #0x94 mov r0, r5 mov r2, #0x80 bl func_02007ad8 ldr r0, _0211cedc ; =0x0003f500 mov r3, #0 mul r0, r4, r0 add r1, r0, #0xf300 str r3, [sp] str r3, [sp, #4] mov r0, #7 str r0, [sp, #8] mov r2, #0xa str r2, [sp, #0xc] mov ip, #2 add r0, sp, #0x14 add r1, r1, #0x30000 mov r2, #0x100 str ip, [sp, #0x10] blx func_02040464 cmp r0, #0 movne r0, #1 moveq r0, #0 add sp, sp, #0x114 ldmia sp!, {r4, r5, pc} .align 2, 0 arm_func_end func_ov10_0211ce5c _0211cedc: .word 0x0003f500 .global func_ov10_0211cee0 arm_func_start func_ov10_0211cee0 func_ov10_0211cee0: ; 0x0211cee0 stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #0x80 add r7, sp, #0 mov r8, r0 mov r6, #0 mov r5, #0x14 add r4, sp, #0x3c _0211cefc: mov r0, r6 mov r1, r7 mov r2, r5 bl func_020078c0 add r7, r7, #0x14 cmp r7, r4 blo _0211cefc add r0, sp, #0 blx func_ov00_0207c170 add r0, sp, #0 blx func_ov00_0207a5f4 add r1, sp, #0 mov r2, r8 mov r0, #2 bl func_ov10_0211ccec add sp, sp, #0x80 ldmia sp!, {r4, r5, r6, r7, r8, pc} arm_func_end func_ov10_0211cee0 .global func_ov10_0211cf40 arm_func_start func_ov10_0211cf40 func_ov10_0211cf40: ; 0x0211cf40 stmdb sp!, {r4, lr} sub sp, sp, #0x80 mov r4, r0 add r0, sp, #0 blx func_ov00_0207a6ac add r0, sp, #0 blx func_ov00_0207a68c add r1, sp, #0 mov r2, r4 mov r0, #3 bl func_ov10_0211ccec add sp, sp, #0x80 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211cf40 .global func_ov10_0211cf74 arm_func_start func_ov10_0211cf74 func_ov10_0211cf74: ; 0x0211cf74 stmdb sp!, {r4, lr} sub sp, sp, #0x80 mov r4, r0 add r0, sp, #0 blx func_ov00_0207a6d0 add r1, sp, #0 mov r2, r4 mov r0, #4 bl func_ov10_0211ccec add sp, sp, #0x80 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211cf74 .global func_ov10_0211cfa0 arm_func_start func_ov10_0211cfa0 func_ov10_0211cfa0: ; 0x0211cfa0 stmdb sp!, {r4, lr} sub sp, sp, #0x80 mov r4, r0 add r0, sp, #0 blx func_ov00_0207a6d0 ldrb r0, [sp, #0x52] add r1, sp, #0 mov r2, r4 add r3, r0, #1 mov r0, #4 strb r3, [sp, #0x52] bl func_ov10_0211ccec add sp, sp, #0x80 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211cfa0 .global func_ov10_0211cfd8 arm_func_start func_ov10_0211cfd8 func_ov10_0211cfd8: ; 0x0211cfd8 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x20 ldr r1, _0211d0a8 ; =0x000037fc str r0, [sp, #0x14] mov r0, #0 ldr sb, _0211d0ac ; =data_ov10_0211e998 str r1, [sp, #0x18] str r0, [sp, #0x1c] mov r7, r0 mov r6, #7 mov r5, #0xa mov r4, #2 mov fp, #4 _0211d00c: ldr r0, [sp, #0x14] cmp r0, #0 blt _0211d028 mov r1, r0 ldr r0, [sp, #0x1c] cmp r1, r0 bne _0211d078 _0211d028: ldr sl, [sp, #0x18] mov r8, #0 _0211d030: str r7, [sp] str r7, [sp, #4] str r6, [sp, #8] str r5, [sp, #0xc] mov r0, sb mov r1, sl mov r2, fp mov r3, r7 str r4, [sp, #0x10] blx func_02040464 cmp r0, #0 addeq sp, sp, #0x20 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} add r8, r8, #1 cmp r8, #0x3c add sl, sl, #0x1000 blt _0211d030 _0211d078: ldr r0, [sp, #0x18] add r1, r0, #0xf500 ldr r0, [sp, #0x1c] add r0, r0, #1 str r0, [sp, #0x1c] cmp r0, #2 add r0, r1, #0x30000 str r0, [sp, #0x18] blt _0211d00c mov r0, #1 add sp, sp, #0x20 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov10_0211cfd8 _0211d0a8: .word 0x000037fc _0211d0ac: .word data_ov10_0211e998 .global func_ov10_0211d0b0 arm_func_start func_ov10_0211d0b0 func_ov10_0211d0b0: ; 0x0211d0b0 stmdb sp!, {lr} sub sp, sp, #0x34 mov r0, #0 mov r3, #0x21 add r1, sp, #0x18 mov r2, #0x1a strh r3, [sp, #0x14] strh r0, [sp, #0x16] strh r0, [sp, #0x32] bl func_020078c0 ldr r1, _0211d130 ; =0x0000c2e4 ldr r0, _0211d134 ; =0x00001d3f strh r1, [sp, #0x16] strh r0, [sp, #0x32] mov r3, #0 str r3, [sp] str r3, [sp, #4] mov r0, #7 str r0, [sp, #8] mov r2, #0xa str r2, [sp, #0xc] mov ip, #2 ldr r1, _0211d138 ; =0x0007ea00 add r0, sp, #0x14 mov r2, #0x20 str ip, [sp, #0x10] blx func_02040464 cmp r0, #0 movne r0, #1 moveq r0, #0 add sp, sp, #0x34 ldmia sp!, {pc} .align 2, 0 arm_func_end func_ov10_0211d0b0 _0211d130: .word 0x0000c2e4 _0211d134: .word 0x00001d3f _0211d138: .word 0x0007ea00 .global func_ov10_0211d13c arm_func_start func_ov10_0211d13c func_ov10_0211d13c: ; 0x0211d13c stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x14 ldr r3, _0211d260 ; =0x0003f500 mov sl, r2 mul r4, r1, r3 mul r1, r0, r3 add r0, r4, #0xfe add sb, r4, #0x2800 add r7, r1, #0x2800 add r8, r0, #0x3700 mov r6, #0 add r4, sl, #0xf00 mov r5, #6 mov fp, #1 _0211d174: mov r0, #0 str r0, [sp] stmib sp, {r0, r5, fp} str r0, [sp, #0x10] mov r0, r7 mov r1, sl mov r2, #0x1000 mov r3, #0 blx func_02040464 cmp r0, #0 addeq sp, sp, #0x14 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} ldrh r0, [r4, #0xfe] mov r3, #0 cmp r0, #0 mov r0, #0 str r0, [sp] bne _0211d200 str r0, [sp, #4] mov r0, #7 str r0, [sp, #8] mov r0, #0xa str r0, [sp, #0xc] mov r0, #2 str r0, [sp, #0x10] ldr r0, _0211d264 ; =data_ov10_0211e994 mov r1, r8 mov r2, #2 blx func_02040464 cmp r0, #0 bne _0211d23c add sp, sp, #0x14 mov r0, #0 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} _0211d200: str r0, [sp, #4] mov r0, #7 str r0, [sp, #8] mov r0, #0xa str r0, [sp, #0xc] mov r0, #2 str r0, [sp, #0x10] mov r0, sl mov r1, sb mov r2, #0x1000 blx func_02040464 cmp r0, #0 addeq sp, sp, #0x14 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} _0211d23c: add r7, r7, #0x1000 add r8, r8, #0x1000 add sb, sb, #0x1000 add r6, r6, #1 cmp r6, #0x3c blt _0211d174 mov r0, #1 add sp, sp, #0x14 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end func_ov10_0211d13c _0211d260: .word 0x0003f500 _0211d264: .word data_ov10_0211e994 .global func_ov10_0211d268 thumb_func_start func_ov10_0211d268 func_ov10_0211d268: ; 0x0211d268 push {r3, r4, lr} sub sp, #4 mov r2, #4 mov r3, #0 add r4, r0, #0 bl func_ov10_02112f18 ldr r0, _0211d2d0 ; =data_ov10_0211f264 str r0, [r4] add r0, r4, #0 add r0, #0x1c blx func_ov01_020f7fb0 ldr r0, _0211d2d4 ; =func_ov10_0211d300 ldr r3, _0211d2d8 ; =func_ov10_0211dddc str r0, [sp] add r0, r4, #0 add r0, #0x74 mov r1, #7 mov r2, #0x60 blx func_0204f614 mov r0, #0xc5 lsl r0, r0, #2 add r0, r4, r0 blx func_ov01_020f8278 mov r0, #0xc5 ldr r1, _0211d2dc ; =data_ov10_0211f2ac lsl r0, r0, #2 str r1, [r4, r0] add r0, #0x5c add r0, r4, r0 blx func_ov01_020f8278 mov r0, #0x37 ldr r1, _0211d2dc ; =data_ov10_0211f2ac lsl r0, r0, #4 str r1, [r4, r0] add r0, #0x5c add r0, r4, r0 blx func_ov01_020f7f78 mov r0, #0xf3 ldr r1, _0211d2e0 ; =data_ov10_0211f288 lsl r0, r0, #2 str r1, [r4, r0] ldr r0, _0211d2e4 ; =data_ov10_0211f444 str r4, [r0] add r0, r4, #0 add sp, #4 pop {r3, r4, pc} .align 2, 0 thumb_func_end func_ov10_0211d268 _0211d2d0: .word data_ov10_0211f264 _0211d2d4: .word func_ov10_0211d300 _0211d2d8: .word func_ov10_0211dddc _0211d2dc: .word data_ov10_0211f2ac _0211d2e0: .word data_ov10_0211f288 _0211d2e4: .word data_ov10_0211f444 .global func_ov10_0211d2e8 thumb_func_start func_ov10_0211d2e8 func_ov10_0211d2e8: ; 0x0211d2e8 push {r4, lr} add r4, r0, #0 blx func_ov01_020f8018 add r0, r4, #0 pop {r4, pc} thumb_func_end func_ov10_0211d2e8 .global func_ov10_0211d2f4 thumb_func_start func_ov10_0211d2f4 func_ov10_0211d2f4: ; 0x0211d2f4 push {r4, lr} add r4, r0, #0 blx func_ov01_020f82c8 add r0, r4, #0 pop {r4, pc} thumb_func_end func_ov10_0211d2f4 .global func_ov10_0211d300 thumb_func_start func_ov10_0211d300 func_ov10_0211d300: ; 0x0211d300 push {r4, lr} add r4, r0, #0 blx func_ov01_020f8018 add r0, r4, #0 pop {r4, pc} thumb_func_end func_ov10_0211d300 .global func_ov10_0211d30c thumb_func_start func_ov10_0211d30c func_ov10_0211d30c: ; 0x0211d30c push {r4, lr} add r4, r0, #0 ldr r0, _0211d354 ; =data_ov10_0211f444 mov r1, #0 str r1, [r0] mov r0, #0xf3 lsl r0, r0, #2 add r0, r4, r0 blx func_ov01_020f8018 mov r0, #0x37 lsl r0, r0, #4 add r0, r4, r0 blx func_ov01_020f82c8 mov r0, #0xc5 lsl r0, r0, #2 add r0, r4, r0 blx func_ov01_020f82c8 add r0, r4, #0 ldr r3, _0211d358 ; =func_ov10_0211d300 add r0, #0x74 mov r1, #7 mov r2, #0x60 blx func_0204f754 add r0, r4, #0 add r0, #0x1c blx func_ov01_020f7fe8 add r0, r4, #0 bl func_ov10_02112f44 add r0, r4, #0 pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_0211d30c _0211d354: .word data_ov10_0211f444 _0211d358: .word func_ov10_0211d300 .global func_ov10_0211d35c thumb_func_start func_ov10_0211d35c func_ov10_0211d35c: ; 0x0211d35c push {r4, lr} add r4, r0, #0 ldr r0, _0211d3ac ; =data_ov10_0211f444 mov r1, #0 str r1, [r0] mov r0, #0xf3 lsl r0, r0, #2 add r0, r4, r0 blx func_ov01_020f8018 mov r0, #0x37 lsl r0, r0, #4 add r0, r4, r0 blx func_ov01_020f82c8 mov r0, #0xc5 lsl r0, r0, #2 add r0, r4, r0 blx func_ov01_020f82c8 add r0, r4, #0 ldr r3, _0211d3b0 ; =func_ov10_0211d300 add r0, #0x74 mov r1, #7 mov r2, #0x60 blx func_0204f754 add r0, r4, #0 add r0, #0x1c blx func_ov01_020f7fe8 add r0, r4, #0 bl func_ov10_02112f44 add r0, r4, #0 blx _ZN9SysObjectdlEPv add r0, r4, #0 pop {r4, pc} nop thumb_func_end func_ov10_0211d35c _0211d3ac: .word data_ov10_0211f444 _0211d3b0: .word func_ov10_0211d300 .global func_ov10_0211d3b4 thumb_func_start func_ov10_0211d3b4 func_ov10_0211d3b4: ; 0x0211d3b4 push {r4, r5, r6, r7, lr} sub sp, #0x34 add r5, r0, #0 blx func_ov10_02112f48 mov r2, #1 lsl r2, r2, #0x1a ldr r1, [r2] ldr r0, _0211d71c ; =0xffcfffef and r1, r0 ldr r0, _0211d720 ; =0x00200010 orr r0, r1 str r0, [r2] ldr r0, _0211d724 ; =data_02075dac bl func_0203f904 ldr r0, _0211d728 ; =0x0400000c mov r3, #0xc6 ldrh r1, [r0] mov r2, #0x43 lsl r3, r3, #2 and r1, r2 orr r1, r3 strh r1, [r0] ldrh r1, [r0, #2] add r4, r1, #0 add r1, r3, #0 and r4, r2 add r1, #0xec orr r1, r4 strh r1, [r0, #2] ldr r0, _0211d72c ; =0x0400100c ldrh r1, [r0] and r1, r2 orr r1, r3 strh r1, [r0] ldrh r1, [r0, #2] add r3, #0xec and r1, r2 orr r1, r3 strh r1, [r0, #2] mov r0, #4 str r0, [sp] mov r0, #1 str r0, [sp, #4] ldr r1, _0211d730 ; =data_027e0ce0 ldr r2, _0211d734 ; =data_ov10_0211f2ec ldr r1, [r1, #4] ldr r3, _0211d738 ; =data_ov10_0211e9dc mov r0, #0xd bl func_0202d598 add r6, r0, #0 ldr r1, _0211d73c ; =data_ov10_0211f2f0 add r0, sp, #0x28 bl func_02031e1c mov r0, #0 str r0, [sp] str r0, [sp, #4] str r0, [sp, #8] mov r0, #0xf str r0, [sp, #0xc] add r0, sp, #0x28 mov r1, #3 mov r2, #4 mov r3, #1 bl func_02031f18 mov r0, #0 str r0, [sp] str r0, [sp, #4] str r0, [sp, #8] mov r0, #0xf str r0, [sp, #0xc] add r0, sp, #0x28 mov r1, #7 mov r2, #4 mov r3, #1 bl func_02031f18 mov r0, #1 str r0, [sp] mov r3, #0x33 ldr r0, _0211d740 ; =data_ov10_0211f2fc ldr r1, _0211d744 ; =data_ov10_0211e9f0 ldr r2, _0211d748 ; =data_020691a0 lsl r3, r3, #0xa bl func_0202d5b4 add r4, r0, #0 mov r0, #7 str r0, [sp] ldr r1, _0211d74c ; =data_ov10_0211f300 ldr r2, _0211d750 ; =data_ov10_0211f324 ldr r3, _0211d754 ; =data_ov10_0211f338 add r0, sp, #0x1c bl func_02031ec0 mov r1, #2 str r1, [sp] mov r0, #0 str r0, [sp, #4] str r1, [sp, #8] mov r0, #0xf str r0, [sp, #0xc] add r0, sp, #0x1c mov r2, #3 mov r3, #6 bl func_02031f18 add r0, r4, #0 bl func_02016fcc mov r0, #1 str r0, [sp] mov r3, #0x33 ldr r0, _0211d758 ; =data_ov10_0211f34c ldr r1, _0211d75c ; =data_ov10_0211ea04 ldr r2, _0211d748 ; =data_020691a0 lsl r3, r3, #0xa bl func_0202d5b4 add r4, r0, #0 mov r0, #7 str r0, [sp] ldr r1, _0211d760 ; =data_ov10_0211f350 ldr r2, _0211d764 ; =data_ov10_0211f368 ldr r3, _0211d768 ; =data_ov10_0211f378 add r0, sp, #0x10 bl func_02031ec0 mov r0, #2 str r0, [sp] mov r0, #0 str r0, [sp, #4] mov r0, #7 str r0, [sp, #8] mov r0, #0xf mov r1, #6 str r0, [sp, #0xc] add r0, sp, #0x10 mov r2, #3 add r3, r1, #0 bl func_02031f18 add r0, r4, #0 bl func_02016fcc add r0, r6, #0 bl func_0202d5dc mov r2, #0 ldr r0, _0211d76c ; =data_027e0cbc mov r1, #0x65 sub r3, r2, #1 blx func_0203d77c mov r2, #0 ldr r0, _0211d76c ; =data_027e0cbc mov r1, #0x66 sub r3, r2, #1 blx func_0203d77c mov r2, #0 ldr r0, _0211d76c ; =data_027e0cbc mov r1, #0x33 sub r3, r2, #1 blx func_0203d77c ldr r1, _0211d770 ; =0x04000018 mov r2, #0 str r2, [r1] ldr r0, _0211d774 ; =0x04001018 str r2, [r1, #4] str r2, [r0] add r4, r1, #0 str r2, [r0, #4] sub r4, #0xc ldrh r6, [r4] mov r2, #3 mov r3, #3 bic r6, r2 orr r6, r3 strh r6, [r4] add r4, r1, #0 sub r4, #0xa ldrh r6, [r4] sub r1, #0x18 bic r6, r2 orr r6, r3 strh r6, [r4] add r4, r0, #0 sub r4, #0xc ldrh r6, [r4] bic r6, r2 orr r6, r3 strh r6, [r4] add r4, r0, #0 sub r4, #0xa ldrh r6, [r4] sub r0, #0x18 bic r6, r2 add r2, r6, #0 orr r2, r3 strh r2, [r4] ldr r3, [r1] ldr r2, _0211d778 ; =0xffffe0ff add r4, r3, #0 mov r3, #7 and r4, r2 lsl r3, r3, #0xa orr r4, r3 str r4, [r1] ldr r1, [r0] and r1, r2 orr r1, r3 str r1, [r0] blx func_020329b0 mov r1, #0xb7 blx func_02032bd8 blx func_020329b0 mov r1, #0x10 str r1, [sp] mov r1, #1 str r1, [sp, #4] mov r1, #0xb7 mov r2, #0 mov r3, #0x98 blx func_02032a74 ldr r1, _0211d77c ; =0x0000042c str r0, [r5, r1] blx func_020329b0 mov r1, #0x38 str r1, [sp] mov r2, #1 mov r1, #0xb7 mov r3, #0x98 str r2, [sp, #4] blx func_02032a74 mov r1, #0x43 lsl r1, r1, #4 str r0, [r5, r1] sub r0, r1, #4 ldr r2, [r5, r0] mov r0, #0x12 mov r3, #1 lsl r0, r0, #4 strb r3, [r2, r0] ldr r2, [r5, r1] strb r3, [r2, r0] sub r0, r1, #4 mov r1, #0 ldr r0, [r5, r0] add r2, r1, #0 add r3, r1, #0 blx func_02032714 mov r1, #0 mov r0, #0x43 lsl r0, r0, #4 ldr r0, [r5, r0] add r2, r1, #0 add r3, r1, #0 blx func_02032714 ldr r1, _0211d780 ; =data_027e0d54 ldr r0, [r5, #8] ldrh r1, [r1, #0x16] bl func_ov10_02113358 ldr r1, _0211d784 ; =0x00002c5e ldr r3, _0211d788 ; =0x00000171 ldrh r1, [r0, r1] ldr r0, _0211d78c ; =0x00000444 mov r2, #0 strh r1, [r5, r0] mov r0, #0xb str r0, [sp] str r0, [sp, #4] mov r1, #0xa add r0, r5, #0 str r1, [sp, #8] add r0, #0x1c sub r1, #0x2a blx func_ov01_020f802c mov r0, #0 str r0, [sp] add r0, r5, #0 mov r3, #2 ldr r1, [r5, #0x2c] ldr r2, [r5, #0x30] add r0, #0x1c lsl r3, r3, #0xe blx func_ov01_020f7f34 blx func_020329b0 ldr r1, _0211d788 ; =0x00000171 blx func_02032bd8 mov r6, #0 add r4, r5, #0 add r7, r6, #0 add r4, #0x74 _0211d624: add r0, r4, #0 mov r1, #0 add r2, r7, #0 bl func_ov10_0211ddf4 add r0, r4, #0 add r1, r6, #0 bl func_ov10_0211df08 add r0, r4, #0 bl func_ov10_0211def4 add r0, r4, #0 add r1, r6, #0 bl func_ov10_0211df70 add r6, r6, #1 add r7, #0x1f add r4, #0x60 cmp r6, #7 blt _0211d624 add r0, r5, #0 ldr r1, _0211d790 ; =0x00000434 add r0, #0x74 str r0, [r5, r1] mov r1, #0 add r2, r5, #0 mov r3, #0x60 _0211d65c: add r1, r1, #1 add r4, r1, #0 mul r4, r3 add r6, r0, r4 add r4, r2, #0 add r4, #0x80 add r2, #0x60 str r6, [r4] cmp r1, #5 blt _0211d65c mov r1, #0x95 lsl r1, r1, #2 add r2, r5, r1 ldr r0, _0211d794 ; =0x00000438 sub r1, #0x74 str r2, [r5, r0] add r6, r5, #0 mov r0, #5 add r1, r5, r1 add r6, #0x74 mov r2, #0x60 _0211d686: sub r3, r0, #1 add r4, r3, #0 mul r4, r2 add r3, r6, r4 str r3, [r1, #0x7c] sub r0, r0, #1 sub r1, #0x60 cmp r0, #0 bgt _0211d686 ldr r0, _0211d790 ; =0x00000434 mov r2, #0 ldr r1, [r5, r0] add r3, r0, #0 str r2, [r1, #8] add r1, r0, #4 ldr r1, [r5, r1] add r3, #8 str r2, [r1, #0xc] mov r1, #0xad lsl r1, r1, #2 add r4, r5, r1 str r4, [r5, r3] add r3, r0, #0 add r3, #0x13 strb r2, [r5, r3] add r3, r0, #0 add r3, #0x13 ldrb r4, [r5, r3] add r3, r0, #0 add r3, #0x12 strb r4, [r5, r3] sub r3, r2, #1 add r0, #0x14 strb r3, [r5, r0] mov r0, #8 str r0, [sp] mov r0, #0xf str r0, [sp, #4] add r1, #0x60 add r0, r5, r1 str r2, [sp, #8] ldr r1, _0211d788 ; =0x00000171 mov r2, #9 mov r3, #0xd bl func_ov10_0211dfd4 mov r0, #9 str r0, [sp] mov r0, #0x10 str r0, [sp, #4] mov r0, #1 str r0, [sp, #8] mov r0, #0x37 lsl r0, r0, #4 ldr r1, _0211d788 ; =0x00000171 add r0, r5, r0 mov r2, #0xa mov r3, #0xe bl func_ov10_0211dfd4 mov r0, #0xf3 lsl r0, r0, #2 add r0, r5, r0 mov r1, #0xa bl func_ov10_0211e0f4 ldr r0, [r5, #8] bl func_ov10_02113a90 mov r0, #0x11 mov r1, #0 lsl r0, r0, #6 str r1, [r5, r0] add sp, #0x34 pop {r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end func_ov10_0211d3b4 _0211d71c: .word 0xffcfffef _0211d720: .word 0x00200010 _0211d724: .word data_02075dac _0211d728: .word 0x0400000c _0211d72c: .word 0x0400100c _0211d730: .word data_027e0ce0 _0211d734: .word data_ov10_0211f2ec _0211d738: .word data_ov10_0211e9dc _0211d73c: .word data_ov10_0211f2f0 _0211d740: .word data_ov10_0211f2fc _0211d744: .word data_ov10_0211e9f0 _0211d748: .word data_020691a0 _0211d74c: .word data_ov10_0211f300 _0211d750: .word data_ov10_0211f324 _0211d754: .word data_ov10_0211f338 _0211d758: .word data_ov10_0211f34c _0211d75c: .word data_ov10_0211ea04 _0211d760: .word data_ov10_0211f350 _0211d764: .word data_ov10_0211f368 _0211d768: .word data_ov10_0211f378 _0211d76c: .word data_027e0cbc _0211d770: .word 0x04000018 _0211d774: .word 0x04001018 _0211d778: .word 0xffffe0ff _0211d77c: .word 0x0000042c _0211d780: .word data_027e0d54 _0211d784: .word 0x00002c5e _0211d788: .word 0x00000171 _0211d78c: .word 0x00000444 _0211d790: .word 0x00000434 _0211d794: .word 0x00000438 .global func_ov10_0211d798 thumb_func_start func_ov10_0211d798 func_ov10_0211d798: ; 0x0211d798 push {r4, lr} add r4, r0, #0 blx func_020329b0 ldr r1, _0211d810 ; =0x00000171 blx func_02032c10 blx func_020329b0 mov r1, #0xb7 blx func_02032c10 mov r2, #1 lsl r2, r2, #0x1a ldr r1, [r2] ldr r0, _0211d814 ; =0xffcfffef and r1, r0 mov r0, #0x10 orr r0, r1 str r0, [r2] ldr r0, _0211d818 ; =data_02075dac bl func_0203f904 ldr r0, _0211d81c ; =0x0400100c mov r2, #0x43 ldrh r1, [r0] add r3, r1, #0 and r3, r2 mov r1, #4 orr r1, r3 strh r1, [r0] ldrh r1, [r0, #2] and r2, r1 ldr r1, _0211d820 ; =0x0000810c orr r1, r2 strh r1, [r0, #2] ldrh r3, [r0] mov r2, #3 mov r1, #3 bic r3, r2 orr r1, r3 strh r1, [r0] ldrh r3, [r0, #2] mov r1, #2 bic r3, r2 orr r1, r3 strh r1, [r0, #2] sub r0, #0xc ldr r2, [r0] ldr r1, _0211d824 ; =0xffffe0ff and r2, r1 mov r1, #7 lsl r1, r1, #0xa orr r1, r2 str r1, [r0] add r0, r4, #0 blx func_ov10_02112f5c pop {r4, pc} nop thumb_func_end func_ov10_0211d798 _0211d810: .word 0x00000171 _0211d814: .word 0xffcfffef _0211d818: .word data_02075dac _0211d81c: .word 0x0400100c _0211d820: .word 0x0000810c _0211d824: .word 0xffffe0ff .global func_ov10_0211d828 thumb_func_start func_ov10_0211d828 func_ov10_0211d828: ; 0x0211d828 push {r3, r4, r5, r6, lr} sub sp, #4 add r5, r0, #0 ldr r0, [r5, #0x14] add r0, r0, #1 str r0, [r5, #0x14] bpl _0211d83a mov r0, #0 str r0, [r5, #0x14] _0211d83a: ldr r0, [r5, #0x10] cmp r0, #0 bne _0211d86a ldr r0, [r5, #8] ldr r0, [r0, #0x68] cmp r0, #1 bne _0211d90e add r0, r5, #0 bl func_ov10_0211dd44 cmp r0, #0 beq _0211d85e mov r0, #0 str r0, [r5, #0x14] mov r0, #1 add sp, #4 str r0, [r5, #0x10] pop {r3, r4, r5, r6, pc} _0211d85e: mov r0, #0 str r0, [r5, #0x14] mov r0, #2 add sp, #4 str r0, [r5, #0x10] pop {r3, r4, r5, r6, pc} _0211d86a: cmp r0, #1 bne _0211d8a2 ldr r1, [r5, #0x18] cmp r1, #0 beq _0211d87e mov r0, #0x57 lsl r0, r0, #2 ldrsh r0, [r1, r0] cmp r0, #0 bgt _0211d90e _0211d87e: ldr r0, _0211da70 ; =data_027e0d54 ldrb r0, [r0, #0xd] cmp r0, #0 bne _0211d88a mov r0, #1 b _0211d88c _0211d88a: mov r0, #0 _0211d88c: cmp r0, #0 beq _0211d90e add r0, r5, #0 bl func_ov10_0211dd44 cmp r0, #0 bne _0211d90e mov r0, #0 str r0, [r5, #0x14] mov r0, #2 str r0, [r5, #0x10] _0211d8a2: add r0, r5, #0 add r0, #0x1c ldr r1, [r0] ldr r1, [r1, #8] blx r1 ldr r0, _0211da74 ; =0x00000434 ldr r4, [r5, r0] cmp r4, #0 beq _0211d8c2 _0211d8b4: add r0, r4, #0 ldr r1, [r0] ldr r1, [r1, #8] blx r1 ldr r4, [r4, #0xc] cmp r4, #0 bne _0211d8b4 _0211d8c2: ldr r1, _0211da74 ; =0x00000434 ldr r0, [r5, r1] add r2, r0, #0 add r2, #0x57 ldrb r2, [r2] cmp r2, #0 bne _0211d8de ldr r2, [r0, #0xc] mov r3, #0 str r2, [r5, r1] ldr r2, [r5, r1] add r1, #8 str r3, [r2, #8] str r0, [r5, r1] _0211d8de: ldr r1, _0211da78 ; =0x00000438 ldr r0, [r5, r1] add r2, r0, #0 add r2, #0x57 ldrb r2, [r2] cmp r2, #0 bne _0211d8fa ldr r2, [r0, #8] mov r3, #0 str r2, [r5, r1] ldr r2, [r5, r1] add r1, r1, #4 str r3, [r2, #0xc] str r0, [r5, r1] _0211d8fa: add r0, r5, #0 bl func_ov10_0211db98 ldr r0, [r5, #0x10] cmp r0, #3 bne _0211d91e ldr r0, [r5, #8] ldr r1, [r0, #0x68] cmp r1, #0 beq _0211d910 _0211d90e: b _0211da6c _0211d910: add r0, #0x10 mov r1, #4 mov r2, #7 blx func_ov10_0211c784 add sp, #4 pop {r3, r4, r5, r6, pc} _0211d91e: add r0, r5, #0 add r0, #0x72 ldrb r0, [r0] cmp r0, #0 bne _0211d932 ldr r0, _0211da7c ; =data_027e05f8 ldrh r1, [r0, #2] mov r0, #2 tst r0, r1 beq _0211d95e _0211d932: ldr r0, [r5, #8] bl func_ov10_02113a58 mov r1, #0 mov r3, #2 str r1, [r5, #0x14] mov r0, #3 str r0, [r5, #0x10] str r1, [sp] add r0, r5, #0 ldr r1, [r5, #0x34] ldr r2, [r5, #0x38] add r0, #0x1c lsl r3, r3, #0xe blx func_ov01_020f7f34 ldr r0, _0211da80 ; =data_ov00_020eec9c mov r1, #0x88 blx func_ov00_020d77e4 add sp, #4 pop {r3, r4, r5, r6, pc} _0211d95e: ldr r0, _0211da84 ; =0x0000043c ldr r2, [r5, r0] cmp r2, #0 beq _0211da02 add r1, r0, #0 add r1, #0xa ldrb r3, [r5, r1] add r1, r0, #0 add r1, #0xb ldrb r1, [r5, r1] cmp r1, r3 bhs _0211d9bc mov r1, #0 str r1, [r2, #8] add r2, r0, #0 sub r2, #8 ldr r3, [r5, r2] ldr r2, [r5, r0] sub r1, r1, #1 str r3, [r2, #0xc] add r2, r0, #0 sub r2, #8 ldr r3, [r5, r0] ldr r2, [r5, r2] str r3, [r2, #8] add r2, r0, #0 ldr r3, [r5, r0] sub r2, #8 str r3, [r5, r2] ldr r0, [r5, r0] bl func_ov10_0211df8c ldr r1, _0211da88 ; =0x00000446 ldrb r0, [r5, r1] sub r0, r0, #1 strb r0, [r5, r1] add r0, r1, #0 sub r0, #0xa ldrb r1, [r5, r1] ldr r0, [r5, r0] bl func_ov10_0211df08 add r0, r5, #0 mov r1, #0 bl func_ov10_0211dcb4 b _0211da02 _0211d9bc: cmp r1, r3 bls _0211da02 mov r1, #0 str r1, [r2, #0xc] sub r1, r0, #4 ldr r2, [r5, r1] ldr r1, [r5, r0] str r2, [r1, #8] sub r1, r0, #4 ldr r2, [r5, r0] ldr r1, [r5, r1] str r2, [r1, #0xc] ldr r2, [r5, r0] sub r1, r0, #4 str r2, [r5, r1] ldr r0, [r5, r0] mov r1, #6 bl func_ov10_0211df8c ldr r1, _0211da84 ; =0x0000043c ldr r0, [r5, r1] add r1, #0xa ldrb r1, [r5, r1] add r1, r1, #6 bl func_ov10_0211df08 ldr r0, _0211da88 ; =0x00000446 ldrb r1, [r5, r0] add r1, r1, #1 strb r1, [r5, r0] mov r1, #0 add r0, r5, #0 mvn r1, r1 bl func_ov10_0211dcb4 _0211da02: ldr r0, _0211da84 ; =0x0000043c ldr r1, [r5, r0] cmp r1, #0 beq _0211da6c sub r0, #0x1b ldrb r0, [r5, r0] cmp r0, #0 bne _0211da6c mov r4, #0 add r1, r5, #0 _0211da16: add r0, r1, #0 add r0, #0xca ldrb r0, [r0] cmp r0, #0 beq _0211da4a mov r0, #0x60 add r6, r4, #0 mul r6, r0 add r0, r5, #0 add r0, #0x74 add r0, r0, r6 bl func_ov10_0211dee0 add r1, r5, r6 mov r0, #0xd0 ldrsb r1, [r1, r0] ldr r0, _0211da8c ; =0x00000448 strb r1, [r5, r0] add r0, r5, #0 bl func_ov10_0211db1c ldr r0, _0211da80 ; =data_ov00_020eec9c mov r1, #0xb0 blx func_ov00_020d77e4 b _0211da52 _0211da4a: add r4, r4, #1 add r1, #0x60 cmp r4, #7 blt _0211da16 _0211da52: cmp r4, #7 bge _0211da6c mov r6, #0 add r5, #0x74 _0211da5a: cmp r6, r4 beq _0211da64 add r0, r5, #0 bl func_ov10_0211def4 _0211da64: add r6, r6, #1 add r5, #0x60 cmp r6, #7 blt _0211da5a _0211da6c: add sp, #4 pop {r3, r4, r5, r6, pc} .align 2, 0 thumb_func_end func_ov10_0211d828 _0211da70: .word data_027e0d54 _0211da74: .word 0x00000434 _0211da78: .word 0x00000438 _0211da7c: .word data_027e05f8 _0211da80: .word data_ov00_020eec9c _0211da84: .word 0x0000043c _0211da88: .word 0x00000446 _0211da8c: .word 0x00000448 .global func_ov10_0211da90 thumb_func_start func_ov10_0211da90 func_ov10_0211da90: ; 0x0211da90 push {r3, r4, r5, lr} mov r1, #0 add r5, r0, #0 mov r0, #0xb7 add r2, r1, #0 blx func_0203490c mov r1, #0 ldr r0, _0211db10 ; =0x0000042c add r2, r1, #0 ldr r0, [r5, r0] add r3, r1, #0 blx func_02032788 mov r1, #0 mov r0, #0x43 lsl r0, r0, #4 ldr r0, [r5, r0] add r2, r1, #0 add r3, r1, #0 blx func_02032788 add r0, r5, #0 add r0, #0x1c ldr r1, [r0] ldr r1, [r1, #0xc] blx r1 ldr r0, _0211db14 ; =0x00000434 ldr r4, [r5, r0] cmp r4, #0 beq _0211dadc _0211dace: add r0, r4, #0 ldr r1, [r0] ldr r1, [r1, #0xc] blx r1 ldr r4, [r4, #0xc] cmp r4, #0 bne _0211dace _0211dadc: mov r2, #0 ldr r0, _0211db18 ; =0x00000171 mov r1, #6 add r3, r2, #0 str r2, [sp] blx func_0203493c mov r0, #0xc5 lsl r0, r0, #2 add r0, r5, r0 ldr r1, [r0] ldr r1, [r1, #0xc] blx r1 mov r0, #0xf3 lsl r0, r0, #2 add r0, r5, r0 ldr r1, [r0] ldr r1, [r1, #0xc] blx r1 mov r0, #0x37 lsl r0, r0, #4 add r0, r5, r0 ldr r1, [r0] ldr r1, [r1, #0xc] blx r1 pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end func_ov10_0211da90 _0211db10: .word 0x0000042c _0211db14: .word 0x00000434 _0211db18: .word 0x00000171 .global func_ov10_0211db1c thumb_func_start func_ov10_0211db1c func_ov10_0211db1c: ; 0x0211db1c push {r3, r4, r5, lr} add r5, r0, #0 ldr r0, _0211db88 ; =0x0000042c add r4, r1, #0 ldr r0, [r5, r0] mov r1, #0 ldr r2, [r0] ldr r2, [r2, #0x10] blx r2 ldr r0, _0211db8c ; =0x00000444 mov r2, #1 add r1, r2, #0 ldrh r3, [r5, r0] lsl r1, r4 tst r1, r3 beq _0211db54 add r0, r4, #0 blx func_ov01_020f7c90 add r1, r0, #0 ldr r0, _0211db88 ; =0x0000042c mov r2, #0 mvn r2, r2 ldr r0, [r5, r0] add r3, r2, #0 blx func_020328a8 b _0211db62 _0211db54: sub r0, #0x18 sub r2, r2, #2 ldr r0, [r5, r0] ldr r1, _0211db90 ; =0x00020038 add r3, r2, #0 blx func_020328a8 _0211db62: mov r0, #0x43 lsl r0, r0, #4 ldr r0, [r5, r0] mov r1, #0 ldr r2, [r0] ldr r2, [r2, #0x10] blx r2 mov r0, #0x43 lsl r0, r0, #4 ldr r1, _0211db94 ; =data_ov10_0211e99c lsl r2, r4, #2 ldr r1, [r1, r2] mov r2, #0 mvn r2, r2 ldr r0, [r5, r0] add r3, r2, #0 blx func_020328a8 pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end func_ov10_0211db1c _0211db88: .word 0x0000042c _0211db8c: .word 0x00000444 _0211db90: .word 0x00020038 _0211db94: .word data_ov10_0211e99c .global func_ov10_0211db98 thumb_func_start func_ov10_0211db98 func_ov10_0211db98: ; 0x0211db98 push {r4, lr} add r4, r0, #0 mov r0, #0xc5 lsl r0, r0, #2 add r0, r4, r0 ldr r1, [r0] ldr r1, [r1, #8] blx r1 mov r0, #0x37 lsl r0, r0, #4 add r0, r4, r0 ldr r1, [r0] ldr r1, [r1, #8] blx r1 mov r0, #0xf3 lsl r0, r0, #2 add r0, r4, r0 ldr r1, [r0] ldr r1, [r1, #8] blx r1 ldr r1, _0211dc98 ; =0x00000421 ldrb r0, [r4, r1] cmp r0, #0 beq _0211dbd6 sub r1, #0x55 add r0, r4, r1 bl func_ov10_0211e244 ldr r1, _0211dc9c ; =0x00000447 strb r0, [r4, r1] b _0211dc4e _0211dbd6: add r0, r1, #0 add r0, #0x1b ldr r0, [r4, r0] cmp r0, #0 beq _0211dc4e add r0, r1, #0 sub r0, #0xb7 ldrb r0, [r4, r0] cmp r0, #0 beq _0211dc1a add r0, r1, #0 add r0, #0x26 ldrb r0, [r4, r0] cmp r0, #0 beq _0211dc1a add r0, r1, #0 add r0, #0x26 ldrb r0, [r4, r0] sub r2, r0, #1 add r0, r1, #0 add r0, #0x26 strb r2, [r4, r0] add r0, r1, #0 add r1, #0x26 sub r0, #0x55 ldrb r1, [r4, r1] add r0, r4, r0 bl func_ov10_0211e268 ldr r0, _0211dca0 ; =data_ov00_020eec9c mov r1, #0xb1 blx func_ov00_020d77e4 b _0211dc4e _0211dc1a: ldr r1, _0211dca4 ; =0x000003c6 ldrb r0, [r4, r1] cmp r0, #0 beq _0211dc4e add r0, r1, #0 add r0, #0x81 ldrb r0, [r4, r0] cmp r0, #0xa bhs _0211dc4e add r0, r1, #0 add r0, #0x81 ldrb r0, [r4, r0] add r2, r0, #1 add r0, r1, #0 add r0, #0x81 strb r2, [r4, r0] add r0, r1, #6 add r1, #0x81 ldrb r1, [r4, r1] add r0, r4, r0 bl func_ov10_0211e268 ldr r0, _0211dca0 ; =data_ov00_020eec9c mov r1, #0xb2 blx func_ov00_020d77e4 _0211dc4e: ldr r0, _0211dca8 ; =0x00000408 ldr r1, [r4, r0] sub r0, #0x28 ldr r0, [r4, r0] asr r0, r0, #0xc cmp r1, r0 bgt _0211dc60 mov r0, #1 b _0211dc62 _0211dc60: mov r0, #0 _0211dc62: cmp r0, #0 beq _0211dc6a mov r1, #0 b _0211dc6c _0211dc6a: mov r1, #1 _0211dc6c: ldr r0, _0211dcac ; =0x0000036b strb r1, [r4, r0] ldr r0, _0211dca8 ; =0x00000408 ldr r1, [r4, r0] add r0, #0x1c ldr r0, [r4, r0] cmp r1, r0 blt _0211dc80 mov r0, #1 b _0211dc82 _0211dc80: mov r0, #0 _0211dc82: cmp r0, #0 beq _0211dc8e ldr r0, _0211dcb0 ; =0x000003c7 mov r1, #0 strb r1, [r4, r0] pop {r4, pc} _0211dc8e: mov r1, #1 ldr r0, _0211dcb0 ; =0x000003c7 strb r1, [r4, r0] pop {r4, pc} nop thumb_func_end func_ov10_0211db98 _0211dc98: .word 0x00000421 _0211dc9c: .word 0x00000447 _0211dca0: .word data_ov00_020eec9c _0211dca4: .word 0x000003c6 _0211dca8: .word 0x00000408 _0211dcac: .word 0x0000036b _0211dcb0: .word 0x000003c7 .global func_ov10_0211dcb4 thumb_func_start func_ov10_0211dcb4 func_ov10_0211dcb4: ; 0x0211dcb4 push {r3, r4, r5, r6, r7, lr} add r5, r1, #0 ldr r1, _0211dd24 ; =0x0000043c add r7, r0, #0 ldr r0, [r7, r1] add r1, #0xc ldrsb r2, [r7, r1] mov r1, #0x5c ldrsb r1, [r0, r1] cmp r2, r1 bne _0211dcd0 bl func_ov10_0211dee0 b _0211dcd4 _0211dcd0: bl func_ov10_0211def4 _0211dcd4: ldr r1, _0211dd24 ; =0x0000043c mov r0, #0 str r0, [r7, r1] add r0, r1, #0 add r0, #0xb add r1, #0xa ldrb r2, [r7, r0] ldrb r0, [r7, r1] sub r0, r2, r0 bpl _0211dcea neg r0, r0 _0211dcea: cmp r0, #0 ble _0211dcf4 mov r6, #2 lsl r6, r6, #0xc b _0211dcf8 _0211dcf4: mov r6, #2 lsl r6, r6, #0xe _0211dcf8: ldr r0, _0211dd28 ; =0x00000434 ldr r4, [r7, r0] cmp r4, #0 beq _0211dd12 _0211dd00: add r0, r4, #0 add r1, r5, #0 add r2, r6, #0 bl func_ov10_0211dfa4 ldr r4, [r4, #0xc] add r5, r5, #1 cmp r4, #0 bne _0211dd00 _0211dd12: ldr r0, _0211dd2c ; =0x00000421 ldrb r0, [r7, r0] cmp r0, #0 beq _0211dd22 ldr r0, _0211dd30 ; =data_ov00_020eec9c mov r1, #0xb5 blx func_ov00_020d77e4 _0211dd22: pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end func_ov10_0211dcb4 _0211dd24: .word 0x0000043c _0211dd28: .word 0x00000434 _0211dd2c: .word 0x00000421 _0211dd30: .word data_ov00_020eec9c .global func_ov10_0211dd34 thumb_func_start func_ov10_0211dd34 func_ov10_0211dd34: ; 0x0211dd34 ldr r0, [r0, #8] ldr r0, [r0, #0x68] cmp r0, #1 beq _0211dd40 mov r0, #1 bx lr _0211dd40: mov r0, #0 bx lr thumb_func_end func_ov10_0211dd34 .global func_ov10_0211dd44 thumb_func_start func_ov10_0211dd44 func_ov10_0211dd44: ; 0x0211dd44 push {r3, r4, r5, lr} sub sp, #0x20 ldr r1, _0211ddcc ; =data_027e0d54 add r5, r0, #0 ldrh r1, [r1, #0x16] ldr r0, [r5, #8] bl func_ov10_02113358 blx func_ov10_0211a988 add r4, r0, #0 cmp r4, #0 ble _0211ddc4 mov r0, #0x4b lsl r0, r0, #2 mov r1, #0 add r2, sp, #4 add r3, sp, #0 blx func_02034698 add r0, sp, #8 blx func_02037628 mov r0, #4 str r0, [sp, #0x14] ldr r1, [sp, #4] add r0, sp, #0 strh r1, [r0, #0x18] ldr r1, [sp] add r2, sp, #8 strh r1, [r0, #0x1a] mov r1, #1 strb r1, [r0, #0x1d] cmp r4, #4 blt _0211dd96 ldr r0, _0211ddd0 ; =data_027e0c68 ldr r1, _0211ddd4 ; =0x0002003a mov r3, #0 blx func_02036f68 b _0211dda0 _0211dd96: ldr r0, _0211ddd0 ; =data_027e0c68 ldr r1, _0211ddd8 ; =0x00020039 mov r3, #0 blx func_02036f68 _0211dda0: str r0, [r5, #0x18] mov r0, #0x11 lsl r0, r0, #6 add r1, r5, r0 ldr r2, [r5, #0x18] mov r0, #1 str r1, [r2, #0x38] strh r0, [r2, #0x3c] lsl r0, r4, #2 str r0, [r1] lsl r1, r4, #0x18 ldr r0, _0211ddcc ; =data_027e0d54 lsr r1, r1, #0x18 blx func_ov10_021187f4 add sp, #0x20 mov r0, #1 pop {r3, r4, r5, pc} _0211ddc4: mov r0, #0 str r0, [r5, #0x18] add sp, #0x20 pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end func_ov10_0211dd44 _0211ddcc: .word data_027e0d54 _0211ddd0: .word data_027e0c68 _0211ddd4: .word 0x0002003a _0211ddd8: .word 0x00020039 .global func_ov10_0211dddc thumb_func_start func_ov10_0211dddc func_ov10_0211dddc: ; 0x0211dddc push {r4, lr} add r4, r0, #0 blx func_ov01_020f7f78 ldr r0, _0211ddf0 ; =data_ov10_0211f2d0 str r0, [r4] mov r0, #0 str r0, [r4, #0x58] add r0, r4, #0 pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_0211dddc _0211ddf0: .word data_ov10_0211f2d0 .global func_ov10_0211ddf4 thumb_func_start func_ov10_0211ddf4 func_ov10_0211ddf4: ; 0x0211ddf4 push {r4, r5, lr} sub sp, #0xc mov r5, #0 str r5, [sp] mov r3, #0xc str r3, [sp, #4] ldr r3, _0211de30 ; =0x00000171 add r4, r0, #0 str r5, [sp, #8] blx func_ov01_020f802c blx func_020329b0 mov r1, #0x10 str r1, [sp] add r2, r5, #0 ldr r1, _0211de30 ; =0x00000171 mov r3, #0x98 str r2, [sp, #4] blx func_02032a74 add r2, r5, #0 mov r1, #1 add r3, r2, #0 str r0, [r4, #0x58] blx func_02032714 add sp, #0xc pop {r4, r5, pc} nop thumb_func_end func_ov10_0211ddf4 _0211de30: .word 0x00000171 .global func_ov10_0211de34 thumb_func_start func_ov10_0211de34 func_ov10_0211de34: ; 0x0211de34 push {r3, r4, r5, lr} add r5, r0, #0 add r1, r5, #0 add r1, #0x42 ldrb r4, [r1] ldr r1, [r0] ldr r1, [r1, #0x10] blx r1 cmp r4, #0 beq _0211de66 add r0, r5, #0 add r0, #0x42 ldrb r0, [r0] cmp r0, #0 bne _0211de66 add r0, r5, #0 add r0, #0x52 ldrh r1, [r0] ldr r0, _0211de70 ; =0x0000ffff cmp r1, r0 bne _0211de66 add r0, r5, #0 mov r1, #0 add r0, #0x57 strb r1, [r0] _0211de66: add r0, r5, #0 ldr r1, [r0] ldr r1, [r1, #0x14] blx r1 pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end func_ov10_0211de34 _0211de70: .word 0x0000ffff .global func_ov10_0211de74 thumb_func_start func_ov10_0211de74 func_ov10_0211de74: ; 0x0211de74 push {r4, lr} sub sp, #0x20 add r4, r0, #0 blx func_ov01_020f80f4 add r0, sp, #0 blx func_01ffbe34 mov r0, #2 str r0, [sp, #4] ldr r2, [r4, #0x14] ldr r3, [r4, #0x3c] asr r2, r2, #0xc sub r2, r3, r2 ldr r0, [r4, #0x58] mov r1, #0 add r3, sp, #0 blx func_02032788 add sp, #0x20 pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_0211de74 .global func_ov10_0211dea0 thumb_func_start func_ov10_0211dea0 func_ov10_0211dea0: ; 0x0211dea0 push {r4, lr} add r4, r0, #0 add r2, r4, #0 add r2, #0x57 ldrb r2, [r2] ldr r1, _0211dedc ; =data_027e0d78 cmp r2, #0 beq _0211ded4 add r2, r4, #0 add r2, #0x42 ldrb r2, [r2] cmp r2, #0 bne _0211ded4 ldrh r3, [r1, #0x34] mov r2, #1 tst r2, r3 beq _0211ded4 ldr r2, [r0] ldr r2, [r2, #0x18] blx r2 cmp r0, #0 beq _0211ded4 mov r0, #1 add r4, #0x56 strb r0, [r4] pop {r4, pc} _0211ded4: mov r0, #0 add r4, #0x56 strb r0, [r4] pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_0211dea0 _0211dedc: .word data_027e0d78 .global func_ov10_0211dee0 thumb_func_start func_ov10_0211dee0 func_ov10_0211dee0: ; 0x0211dee0 add r1, r0, #0 ldr r3, _0211def0 ; =func_ov10_0211df10 mov r2, #1 add r1, #0x55 strb r2, [r1] mov r1, #7 bx r3 nop thumb_func_end func_ov10_0211dee0 _0211def0: .word func_ov10_0211df10 .global func_ov10_0211def4 thumb_func_start func_ov10_0211def4 func_ov10_0211def4: ; 0x0211def4 add r1, r0, #0 ldr r3, _0211df04 ; =func_ov10_0211df10 mov r2, #0 add r1, #0x55 strb r2, [r1] mov r1, #4 bx r3 nop thumb_func_end func_ov10_0211def4 _0211df04: .word func_ov10_0211df10 .global func_ov10_0211df08 thumb_func_start func_ov10_0211df08 func_ov10_0211df08: ; 0x0211df08 add r0, #0x5c strb r1, [r0] bx lr .align 2, 0 thumb_func_end func_ov10_0211df08 .global func_ov10_0211df10 thumb_func_start func_ov10_0211df10 func_ov10_0211df10: ; 0x0211df10 push {r4, r5, r6, lr} add r5, r0, #0 ldr r0, _0211df64 ; =data_ov10_0211f444 add r6, r1, #0 ldr r1, [r0] ldr r0, _0211df68 ; =0x00000444 ldrh r4, [r1, r0] ldr r0, [r5, #0x58] mov r1, #0 ldr r2, [r0] ldr r2, [r2, #0x10] blx r2 mov r0, #0x5c ldrsb r0, [r5, r0] cmp r0, #0x10 bge _0211df5a mov r2, #1 add r1, r2, #0 lsl r1, r0 tst r1, r4 beq _0211df4e blx func_ov01_020f7c90 add r1, r0, #0 mov r2, #0 ldr r0, [r5, #0x58] mvn r2, r2 add r3, r6, #0 blx func_020328a8 b _0211df5a _0211df4e: ldr r0, [r5, #0x58] ldr r1, _0211df6c ; =0x00020038 sub r2, r2, #2 add r3, r6, #0 blx func_020328a8 _0211df5a: add r0, r5, #0 blx func_ov01_020f8124 pop {r4, r5, r6, pc} nop thumb_func_end func_ov10_0211df10 _0211df64: .word data_ov10_0211f444 _0211df68: .word 0x00000444 _0211df6c: .word 0x00020038 .global func_ov10_0211df70 thumb_func_start func_ov10_0211df70 func_ov10_0211df70: ; 0x0211df70 cmp r1, #0 blt _0211df7e cmp r1, #6 bge _0211df7e add r0, #0x52 strh r1, [r0] bx lr _0211df7e: ldr r1, _0211df88 ; =0x0000ffff add r0, #0x52 strh r1, [r0] bx lr nop thumb_func_end func_ov10_0211df70 _0211df88: .word 0x0000ffff .global func_ov10_0211df8c thumb_func_start func_ov10_0211df8c func_ov10_0211df8c: ; 0x0211df8c push {r4, lr} add r4, r1, #0 mov r2, #0x1f add r3, r4, #0 mul r3, r2 ldr r2, [r0, #0x14] ldr r1, [r0, #0x38] asr r2, r2, #0xc add r2, r3, r2 blx func_ov01_020f7ec8 pop {r4, pc} thumb_func_end func_ov10_0211df8c .global func_ov10_0211dfa4 thumb_func_start func_ov10_0211dfa4 func_ov10_0211dfa4: ; 0x0211dfa4 push {r3, r4, r5, r6, lr} sub sp, #4 add r4, r1, #0 mov r1, #0 mov r6, #0x1f mul r6, r4 add r5, r0, #0 str r1, [sp] add r3, r2, #0 ldr r2, [r5, #0x14] lsl r6, r6, #0xc ldr r1, [r5, #0x10] add r2, r2, r6 blx func_ov01_020f7f34 add r0, r5, #0 add r1, r4, #0 bl func_ov10_0211df70 mov r0, #1 add r5, #0x57 strb r0, [r5] add sp, #4 pop {r3, r4, r5, r6, pc} thumb_func_end func_ov10_0211dfa4 .global func_ov10_0211dfd4 thumb_func_start func_ov10_0211dfd4 func_ov10_0211dfd4: ; 0x0211dfd4 push {r4, r5, lr} sub sp, #0xc str r2, [sp] add r4, r1, #0 str r3, [sp, #4] add r1, sp, #8 ldrh r1, [r1, #0x10] add r3, r4, #0 add r5, r0, #0 str r1, [sp, #8] mov r1, #0 add r2, r1, #0 blx func_ov01_020f802c add r1, sp, #8 add r0, r5, #0 ldrh r2, [r1, #0x14] add r0, #0x58 strh r2, [r0] ldrb r0, [r1, #0x18] cmp r0, #0 bne _0211e00c add r0, r5, #0 add r0, #0x4c strh r2, [r0] mov r0, #0 add r5, #0x57 strb r0, [r5] _0211e00c: add sp, #0xc pop {r4, r5, pc} thumb_func_end func_ov10_0211dfd4 .global func_ov10_0211e010 thumb_func_start func_ov10_0211e010 func_ov10_0211e010: ; 0x0211e010 push {r3, r4, r5, lr} add r5, r0, #0 add r1, r5, #0 mov r2, #0 add r1, #0x56 strb r2, [r1] add r1, r5, #0 add r1, #0x57 ldrb r1, [r1] ldr r4, _0211e0cc ; =data_027e0d78 cmp r1, #0 beq _0211e078 ldrb r1, [r4, #0xc] cmp r1, #0 beq _0211e078 ldr r2, [r0] add r1, r4, #0 ldr r2, [r2, #0x18] blx r2 cmp r0, #0 beq _0211e078 ldrh r1, [r4, #0x34] mov r0, #1 tst r0, r1 bne _0211e04c add r0, r5, #0 add r0, #0x54 ldrb r0, [r0] cmp r0, #0 beq _0211e0ba _0211e04c: add r0, r5, #0 add r0, #0x55 ldrb r0, [r0] cmp r0, #0 bne _0211e0ba ldr r0, [r5, #0x44] add r0, r0, #2 str r0, [r5, #0x44] add r0, r5, #0 add r0, #0x4e ldrh r1, [r0] add r0, r5, #0 add r0, #0x4c strh r1, [r0] add r0, r5, #0 mov r1, #1 add r0, #0x54 strb r1, [r0] add r0, r5, #0 add r0, #0x55 strb r1, [r0] b _0211e0ba _0211e078: add r0, r5, #0 add r0, #0x55 ldrb r0, [r0] cmp r0, #0 beq _0211e090 ldr r0, [r5, #0x44] mov r1, #0 sub r0, r0, #2 str r0, [r5, #0x44] add r0, r5, #0 add r0, #0x55 strb r1, [r0] _0211e090: add r0, r5, #0 add r0, #0x57 ldrb r0, [r0] cmp r0, #0 beq _0211e0a0 add r0, r5, #0 add r0, #0x50 b _0211e0a4 _0211e0a0: add r0, r5, #0 add r0, #0x58 _0211e0a4: ldrh r1, [r0] add r0, r5, #0 add r0, #0x4c strh r1, [r0] ldrb r0, [r4, #0xc] cmp r0, #0 bne _0211e0ba add r0, r5, #0 mov r1, #0 add r0, #0x54 strb r1, [r0] _0211e0ba: add r0, r5, #0 add r0, #0x55 ldrb r0, [r0] cmp r0, #0 beq _0211e0ca mov r0, #1 add r5, #0x56 strb r0, [r5] _0211e0ca: pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end func_ov10_0211e010 _0211e0cc: .word data_027e0d78 .global func_ov10_0211e0d0 thumb_func_start func_ov10_0211e0d0 func_ov10_0211e0d0: ; 0x0211e0d0 push {r3, r4, r5, lr} add r5, r0, #0 ldr r0, _0211e0f0 ; =data_ov10_0211f444 add r4, r1, #0 ldr r0, [r0] bl func_ov10_0211dd34 cmp r0, #0 beq _0211e0e6 mov r0, #0 pop {r3, r4, r5, pc} _0211e0e6: add r0, r5, #0 add r1, r4, #0 blx func_ov01_020f8234 pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end func_ov10_0211e0d0 _0211e0f0: .word data_ov10_0211f444 .global func_ov10_0211e0f4 thumb_func_start func_ov10_0211e0f4 func_ov10_0211e0f4: ; 0x0211e0f4 push {r4, r5, lr} sub sp, #0xc add r4, r1, #0 mov r1, #7 str r1, [sp] mov r1, #8 str r1, [sp, #4] mov r1, #6 str r1, [sp, #8] mov r1, #0 ldr r3, _0211e130 ; =0x00000171 add r2, r1, #0 add r5, r0, #0 blx func_ov01_020f802c ldr r0, _0211e130 ; =0x00000171 mov r1, #8 blx func_020346f0 str r0, [r5, #0x58] lsl r1, r0, #0xc ldr r0, [r5, #0x14] sub r0, r1, r0 add r1, r4, #0 blx func_01ff9b4c str r0, [r5, #0x5c] add sp, #0xc pop {r4, r5, pc} nop thumb_func_end func_ov10_0211e0f4 _0211e130: .word 0x00000171 .global func_ov10_0211e134 thumb_func_start func_ov10_0211e134 func_ov10_0211e134: ; 0x0211e134 push {r4, lr} add r4, r0, #0 add r1, r4, #0 add r1, #0x55 ldrb r1, [r1] cmp r1, #0 bne _0211e148 ldr r1, [r0] ldr r1, [r1, #0x10] blx r1 _0211e148: add r0, r4, #0 ldr r1, [r0] ldr r1, [r1, #0x14] blx r1 pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_0211e134 .global func_ov10_0211e154 thumb_func_start func_ov10_0211e154 func_ov10_0211e154: ; 0x0211e154 push {r4, r5, r6, lr} add r5, r0, #0 add r1, r5, #0 add r1, #0x42 ldrb r1, [r1] cmp r1, #0 bne _0211e200 ldr r6, _0211e204 ; =data_027e0d78 add r1, r5, #0 ldrh r2, [r6, #0x34] add r1, #0x55 ldrb r4, [r1] mov r1, #1 tst r1, r2 beq _0211e19c ldr r2, [r0] add r1, r6, #0 ldr r2, [r2, #0x18] blx r2 cmp r0, #0 beq _0211e19c add r0, r5, #0 add r0, #0x4e ldrh r1, [r0] add r0, r5, #0 add r0, #0x4c strh r1, [r0] add r0, r5, #0 mov r1, #1 add r0, #0x55 strb r1, [r0] ldr r0, _0211e208 ; =data_ov00_020eec9c mov r1, #0xb3 blx func_ov00_020d77e4 b _0211e1b6 _0211e19c: ldrb r0, [r6, #0xc] cmp r0, #0 bne _0211e1b6 add r0, r5, #0 add r0, #0x50 ldrh r1, [r0] add r0, r5, #0 add r0, #0x4c strh r1, [r0] add r0, r5, #0 mov r1, #0 add r0, #0x55 strb r1, [r0] _0211e1b6: add r0, r5, #0 add r0, #0x55 ldrb r0, [r0] cmp r0, #0 beq _0211e1e6 ldr r0, [r5, #0x14] ldr r1, [r6, #0x14] asr r0, r0, #0xc cmp r1, r0 bgt _0211e1ce str r0, [r5, #0x3c] b _0211e1da _0211e1ce: ldr r0, [r5, #0x58] cmp r1, r0 blt _0211e1d8 str r0, [r5, #0x3c] b _0211e1da _0211e1d8: str r1, [r5, #0x3c] _0211e1da: ldr r1, [r5, #0x38] ldr r2, [r5, #0x3c] add r0, r5, #0 blx func_ov01_020f7ec8 pop {r4, r5, r6, pc} _0211e1e6: cmp r4, #0 beq _0211e200 add r0, r5, #0 bl func_ov10_0211e244 add r1, r0, #0 add r0, r5, #0 bl func_ov10_0211e268 ldr r0, _0211e208 ; =data_ov00_020eec9c mov r1, #0xb4 blx func_ov00_020d77e4 _0211e200: pop {r4, r5, r6, pc} nop thumb_func_end func_ov10_0211e154 _0211e204: .word data_027e0d78 _0211e208: .word data_ov00_020eec9c .global func_ov10_0211e20c thumb_func_start func_ov10_0211e20c func_ov10_0211e20c: ; 0x0211e20c push {r3, r4, r5, lr} add r4, r0, #0 ldr r0, _0211e240 ; =data_ov10_0211f444 add r5, r1, #0 ldr r0, [r0] bl func_ov10_0211dd34 cmp r0, #0 beq _0211e222 mov r0, #0 pop {r3, r4, r5, pc} _0211e222: add r1, r4, #0 add r1, #0x52 ldr r2, [r5, #0x10] ldr r0, [r4, #0x48] ldr r3, [r4, #0x3c] ldr r4, [r4, #0x14] ldrh r1, [r1] asr r4, r4, #0xc ldr r5, [r5, #0x14] sub r3, r3, r4 sub r3, r5, r3 blx func_02034b90 pop {r3, r4, r5, pc} nop thumb_func_end func_ov10_0211e20c _0211e240: .word data_ov10_0211f444 .global func_ov10_0211e244 thumb_func_start func_ov10_0211e244 func_ov10_0211e244: ; 0x0211e244 ldr r2, [r0, #0x14] ldr r1, [r0, #0x2c] sub r1, r1, r2 ldr r2, [r0, #0x5c] asr r0, r2, #1 cmp r1, r0 bge _0211e256 mov r0, #0 bx lr _0211e256: sub r1, r1, r0 mov r0, #1 cmp r1, r2 blt _0211e266 _0211e25e: sub r1, r1, r2 add r0, r0, #1 cmp r1, r2 bge _0211e25e _0211e266: bx lr thumb_func_end func_ov10_0211e244 .global func_ov10_0211e268 thumb_func_start func_ov10_0211e268 func_ov10_0211e268: ; 0x0211e268 push {r3, r4, lr} sub sp, #4 add r3, r1, #0 mov r1, #0 str r1, [sp] ldr r2, [r0, #0x5c] ldr r4, [r0, #0x14] mul r3, r2 add r2, r4, r3 mov r3, #2 ldr r1, [r0, #0x10] lsl r3, r3, #0xe blx func_ov01_020f7f34 add sp, #4 pop {r3, r4, pc} thumb_func_end func_ov10_0211e268 .global func_ov10_0211e288 arm_func_start func_ov10_0211e288 func_ov10_0211e288: ; 0x0211e288 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov01_020f8018 mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211e288 .global func_ov10_0211e2a4 arm_func_start func_ov10_0211e2a4 func_ov10_0211e2a4: ; 0x0211e2a4 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov01_020f82c8 mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211e2a4 .global func_ov10_0211e2c0 arm_func_start func_ov10_0211e2c0 func_ov10_0211e2c0: ; 0x0211e2c0 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov01_020f8018 mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211e2c0 .global func_ov10_0211e2dc thumb_func_start func_ov10_0211e2dc func_ov10_0211e2dc: ; 0x0211e2dc push {r4, lr} mov r2, #1 mov r3, #0 add r4, r0, #0 bl func_ov10_02112f18 ldr r0, _0211e2f0 ; =data_ov10_0211f3d0 str r0, [r4] add r0, r4, #0 pop {r4, pc} .align 2, 0 thumb_func_end func_ov10_0211e2dc _0211e2f0: .word data_ov10_0211f3d0 .global func_ov10_0211e2f4 arm_func_start func_ov10_0211e2f4 func_ov10_0211e2f4: ; 0x0211e2f4 stmdb sp!, {r4, lr} mov r4, r0 ldr r0, [r4, #0x14] adds r0, r0, #1 str r0, [r4, #0x14] movmi r0, #0 strmi r0, [r4, #0x14] ldr r0, [r4, #0x10] cmp r0, #0 ldmneia sp!, {r4, pc} ldr r0, _0211e3cc ; =data_027e0d54 ldrb r0, [r0, #0xd] cmp r0, #0 moveq r0, #1 movne r0, #0 cmp r0, #0 ldmeqia sp!, {r4, pc} ldr r0, _0211e3d0 ; =data_027e0618 ldr r0, [r0, #4] cmp r0, #7 addls pc, pc, r0, lsl #2 ldmia sp!, {r4, pc} _0211e34c: ; jump table ldmia sp!, {r4, pc} ; case 0 ldmia sp!, {r4, pc} ; case 1 ldmia sp!, {r4, pc} ; case 2 ldmia sp!, {r4, pc} ; case 3 b _0211e36c ; case 4 b _0211e384 ; case 5 b _0211e384 ; case 6 b _0211e3a8 ; case 7 _0211e36c: ldr r0, [r4, #8] mov r1, #1 add r0, r0, #0x10 mov r2, #2 bl func_ov10_0211c784 ldmia sp!, {r4, pc} _0211e384: ldr r0, [r4, #8] mov r1, #4 blx func_ov10_02113760 ldr r0, [r4, #8] mov r1, #4 add r0, r0, #0x10 mov r2, #2 bl func_ov10_0211c784 ldmia sp!, {r4, pc} _0211e3a8: ldr r0, [r4, #8] mov r1, #4 blx func_ov10_02113760 ldr r0, [r4, #8] mov r1, #3 add r0, r0, #0x10 mov r2, #7 bl func_ov10_0211c784 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_0211e2f4 _0211e3cc: .word data_027e0d54 _0211e3d0: .word data_027e0618 .global func_ov10_0211e3d4 arm_func_start func_ov10_0211e3d4 func_ov10_0211e3d4: ; 0x0211e3d4 stmdb sp!, {r3, lr} ldr r0, _0211e418 ; =data_027e0618 ldr r0, [r0, #4] cmp r0, #4 ldmneia sp!, {r3, pc} ldr r0, _0211e41c ; =data_027e0cbc mov r1, #0x2e bl func_0203d7e0 cmp r0, #0 ldmeqia sp!, {r3, pc} mov r1, #0 ldr r0, _0211e420 ; =0x0000010f mov r2, r1 mov r3, r1 str r1, [sp] bl func_0203493c ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov10_0211e3d4 _0211e418: .word data_027e0618 _0211e41c: .word data_027e0cbc _0211e420: .word 0x0000010f .global func_ov10_0211e424 arm_func_start func_ov10_0211e424 func_ov10_0211e424: ; 0x0211e424 stmdb sp!, {r4, lr} mov r4, r0 blx func_ov10_02112f44 mov r0, r4 bl _ZN9SysObjectdlEPv mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211e424 .global func_ov10_0211e440 arm_func_start func_ov10_0211e440 func_ov10_0211e440: ; 0x0211e440 stmdb sp!, {r4, lr} mov r4, r0 blx func_ov10_02112f44 mov r0, r4 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211e440 .global func_ov10_0211e454 arm_func_start func_ov10_0211e454 func_ov10_0211e454: ; 0x0211e454 stmdb sp!, {r4, lr} mov r4, r0 blx func_ov00_0207a418 add r1, r4, #0x1400 mov r0, #0 mov r2, #0x1000 bl func_02007938 add r0, r4, #0x2400 blx func_ov00_0207a5ac add r0, r4, #0x2900 blx func_ov00_0207c170 add r0, r4, #0x13c add r0, r0, #0x2800 blx func_ov00_0207a654 add r0, r4, #0x2940 blx func_ov00_0207a6d0 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211e454 .global func_ov10_0211e498 thumb_func_start func_ov10_0211e498 func_ov10_0211e498: ; 0x0211e498 push {r3, r4, r5, r6, r7, lr} sub sp, #8 ldr r1, _0211e4fc ; =0x00002992 str r0, [sp] ldrb r0, [r0, r1] add r2, sp, #4 mov r4, #0 strb r0, [r2] ldr r0, [sp] add r1, #0x2a ldrb r0, [r0, r1] add r5, r4, #0 strb r0, [r2, #1] mov r2, #1 add r0, sp, #4 add r7, r2, #0 _0211e4b8: add r1, r5, #0 tst r1, r7 beq _0211e4c2 mov r6, #1 b _0211e4c4 _0211e4c2: mov r6, #0 _0211e4c4: mov r1, #7 sub r1, r1, r5 add r3, r2, #0 lsl r3, r1 ldrb r1, [r0, r6] tst r1, r3 beq _0211e4d6 add r1, r2, #0 b _0211e4d8 _0211e4d6: mov r1, #0 _0211e4d8: lsl r1, r5 orr r1, r4 lsl r1, r1, #0x18 add r5, r5, #1 lsr r4, r1, #0x18 cmp r5, #8 blt _0211e4b8 add r0, r4, #0 mov r1, #0xa blx func_01ff9b88 mov r2, #0xa7 ldr r1, [sp] lsl r2, r2, #6 str r0, [r1, r2] add sp, #8 pop {r3, r4, r5, r6, r7, pc} nop thumb_func_end func_ov10_0211e498 _0211e4fc: .word 0x00002992 .global func_ov10_0211e500 arm_func_start func_ov10_0211e500 func_ov10_0211e500: ; 0x0211e500 stmdb sp!, {r4, r5, r6, lr} mov r6, r0 ldr r0, [r6, #0xa0] mov r5, r1 cmp r5, r0 ldmeqia sp!, {r4, r5, r6, pc} cmp r5, #3 mov r4, #0 addls pc, pc, r5, lsl #2 b _0211e554 _0211e528: ; jump table b _0211e538 ; case 0 b _0211e55c ; case 1 b _0211e544 ; case 2 b _0211e54c ; case 3 _0211e538: cmp r2, #0 movne r4, #1 b _0211e55c _0211e544: mov r4, #2 b _0211e55c _0211e54c: mov r4, #3 b _0211e55c _0211e554: mov r4, #0 mov r5, #1 _0211e55c: mov r0, #0 bl func_0201f448 bl func_ov10_0211e730 cmp r0, #0 beq _0211e57c bl func_ov10_0211e730 mov r1, r4 bl func_ov10_0211e740 _0211e57c: str r5, [r6, #0xa0] ldmia sp!, {r4, r5, r6, pc} arm_func_end func_ov10_0211e500 .global func_ov10_0211e584 arm_func_start func_ov10_0211e584 func_ov10_0211e584: ; 0x0211e584 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov10_0211e6ac ldr r0, [r4, #0xa0] cmp r0, #3 ldmneia sp!, {r4, pc} mov r0, #0 bl func_0201f448 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211e584 .global func_ov10_0211e5a8 arm_func_start func_ov10_0211e5a8 func_ov10_0211e5a8: ; 0x0211e5a8 stmdb sp!, {r4, lr} mov r4, r0 bl func_ov10_0211e6f4 ldr r0, [r4, #0xa0] cmp r0, #3 ldmneia sp!, {r4, pc} mov r0, #1 bl func_0201f448 ldmia sp!, {r4, pc} arm_func_end func_ov10_0211e5a8 .global func_ov10_0211e5cc arm_func_start func_ov10_0211e5cc func_ov10_0211e5cc: ; 0x0211e5cc stmdb sp!, {r3, lr} ldr r0, [r0, #0xa0] cmp r0, #0 ldmneia sp!, {r3, pc} bl func_ov10_0211e730 cmp r0, #0 ldmeqia sp!, {r3, pc} bl func_ov10_0211e730 mov r1, #1 bl func_ov10_0211e740 ldmia sp!, {r3, pc} arm_func_end func_ov10_0211e5cc .global func_ov10_0211e5f8 arm_func_start func_ov10_0211e5f8 func_ov10_0211e5f8: ; 0x0211e5f8 stmdb sp!, {r3, lr} ldr r0, [r0, #0xa0] cmp r0, #0 ldmneia sp!, {r3, pc} bl func_ov10_0211e730 cmp r0, #0 ldmeqia sp!, {r3, pc} bl func_ov10_0211e730 mov r1, #0 bl func_ov10_0211e740 ldmia sp!, {r3, pc} arm_func_end func_ov10_0211e5f8 .global func_ov10_0211e624 arm_func_start func_ov10_0211e624 func_ov10_0211e624: ; 0x0211e624 stmdb sp!, {r3, r4, lr} sub sp, sp, #4 mov r4, r0 mov r2, #0 mov r1, #0x800 str r2, [r4, #0x800] bl func_0202a56c ldr r0, _0211e67c ; =data_027e0ce0 add r1, sp, #0 ldr r0, [r0, #4] blx func_0202d0cc cmp r0, #0 beq _0211e670 ldr r0, _0211e67c ; =data_027e0ce0 ldr r1, [sp] ldr r0, [r0, #4] mov r2, #4 blx func_0201739c str r0, [r4, #0x800] _0211e670: mov r0, r4 add sp, sp, #4 ldmia sp!, {r3, r4, pc} .align 2, 0 arm_func_end func_ov10_0211e624 _0211e67c: .word data_027e0ce0 .global func_ov10_0211e680 arm_func_start func_ov10_0211e680 func_ov10_0211e680: ; 0x0211e680 stmdb sp!, {r4, lr} mov r4, r0 ldr r1, [r4, #0x800] cmp r1, #0 beq _0211e6a0 ldr r0, _0211e6a8 ; =data_027e0ce0 ldr r0, [r0, #4] blx func_020174a4 _0211e6a0: mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_0211e680 _0211e6a8: .word data_027e0ce0 .global func_ov10_0211e6ac arm_func_start func_ov10_0211e6ac func_ov10_0211e6ac: ; 0x0211e6ac stmdb sp!, {r3, lr} ldr r0, _0211e6ec ; =data_ov10_0211f448 ldr r0, [r0] cmp r0, #0 ldmneia sp!, {r3, pc} ldr r1, _0211e6f0 ; =data_027e0ce0 mov r0, #0x820 ldr r1, [r1, #4] mov r2, #0x20 bl _ZN9SysObjectnwEmPjj cmp r0, #0 beq _0211e6e0 bl func_ov10_0211e624 _0211e6e0: ldr r1, _0211e6ec ; =data_ov10_0211f448 str r0, [r1] ldmia sp!, {r3, pc} .align 2, 0 arm_func_end func_ov10_0211e6ac _0211e6ec: .word data_ov10_0211f448 _0211e6f0: .word data_027e0ce0 .global func_ov10_0211e6f4 arm_func_start func_ov10_0211e6f4 func_ov10_0211e6f4: ; 0x0211e6f4 stmdb sp!, {r4, lr} bl func_0202a5c0 ldr r0, _0211e72c ; =data_ov10_0211f448 ldr r4, [r0] cmp r4, #0 beq _0211e71c mov r0, r4 bl func_ov10_0211e680 mov r0, r4 bl _ZN9SysObjectdlEPv _0211e71c: ldr r0, _0211e72c ; =data_ov10_0211f448 mov r1, #0 str r1, [r0] ldmia sp!, {r4, pc} .align 2, 0 arm_func_end func_ov10_0211e6f4 _0211e72c: .word data_ov10_0211f448 .global func_ov10_0211e730 arm_func_start func_ov10_0211e730 func_ov10_0211e730: ; 0x0211e730 ldr r0, _0211e73c ; =data_ov10_0211f448 ldr r0, [r0] bx lr .align 2, 0 arm_func_end func_ov10_0211e730 _0211e73c: .word data_ov10_0211f448 .global func_ov10_0211e740 arm_func_start func_ov10_0211e740 func_ov10_0211e740: ; 0x0211e740 ldr ip, _0211e74c ; =func_0202a5e8 mov r0, r1 bx ip .align 2, 0 arm_func_end func_ov10_0211e740 _0211e74c: .word func_0202a5e8 .rodata .global data_ov10_0211e750 data_ov10_0211e750: ; 0x0211e750 .byte 0x31, 0x00, 0x00, 0x00 .global data_ov10_0211e754 data_ov10_0211e754: ; 0x0211e754 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211e758 data_ov10_0211e758: ; 0x0211e758 .byte 0x32, 0x00, 0x00, 0x00 .global data_ov10_0211e75c data_ov10_0211e75c: ; 0x0211e75c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211e760 data_ov10_0211e760: ; 0x0211e760 .byte 0x02, 0x00, 0x00, 0x00 .global data_ov10_0211e764 data_ov10_0211e764: ; 0x0211e764 .byte 0x09 .global data_ov10_0211e765 data_ov10_0211e765: ; 0x0211e765 .byte 0x07 .global data_ov10_0211e766 data_ov10_0211e766: ; 0x0211e766 .byte 0x0a .global data_ov10_0211e767 data_ov10_0211e767: ; 0x0211e767 .byte 0x08 .global data_ov10_0211e768 data_ov10_0211e768: ; 0x0211e768 .byte 0x32, 0x00, 0x00, 0x00 .global data_ov10_0211e76c data_ov10_0211e76c: ; 0x0211e76c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211e770 data_ov10_0211e770: ; 0x0211e770 .byte 0x31, 0x00, 0x00, 0x00 .global data_ov10_0211e774 data_ov10_0211e774: ; 0x0211e774 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211e778 data_ov10_0211e778: ; 0x0211e778 .byte 0x9c, 0xff, 0xff, 0xff .global data_ov10_0211e77c data_ov10_0211e77c: ; 0x0211e77c .byte 0x32, 0x00, 0x00, 0x00 .global data_ov10_0211e780 data_ov10_0211e780: ; 0x0211e780 .byte 0x01, 0x34 .global data_ov10_0211e782 data_ov10_0211e782: ; 0x0211e782 .byte 0x1a, 0x35 .global data_ov10_0211e784 data_ov10_0211e784: ; 0x0211e784 .byte 0x00, 0x14 .global data_ov10_0211e786 data_ov10_0211e786: ; 0x0211e786 .byte 0x00, 0x00 .global data_ov10_0211e788 data_ov10_0211e788: ; 0x0211e788 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211e78c data_ov10_0211e78c: ; 0x0211e78c .byte 0x01, 0x00, 0x00, 0x00 .global data_ov10_0211e790 data_ov10_0211e790: ; 0x0211e790 .byte 0x00, 0x05, 0x00, 0x00 .global data_ov10_0211e794 data_ov10_0211e794: ; 0x0211e794 .byte 0x02, 0x00, 0x00, 0x00 .global data_ov10_0211e798 data_ov10_0211e798: ; 0x0211e798 .byte 0x03, 0x00, 0x00, 0x00 .global data_ov10_0211e79c data_ov10_0211e79c: ; 0x0211e79c .byte 0x80, 0x00, 0x00, 0x00 .global data_ov10_0211e7a0 data_ov10_0211e7a0: ; 0x0211e7a0 .byte 0x04, 0x00, 0x00, 0x00 .global data_ov10_0211e7a4 data_ov10_0211e7a4: ; 0x0211e7a4 .byte 0x05, 0x00, 0x00, 0x00 .global data_ov10_0211e7a8 data_ov10_0211e7a8: ; 0x0211e7a8 .byte 0x80, 0x00, 0x00, 0x00 .global data_ov10_0211e7ac data_ov10_0211e7ac: ; 0x0211e7ac .byte 0x06, 0x00, 0x00, 0x00 .global data_ov10_0211e7b0 data_ov10_0211e7b0: ; 0x0211e7b0 .byte 0x07, 0x00, 0x00, 0x00 .global data_ov10_0211e7b4 data_ov10_0211e7b4: ; 0x0211e7b4 .byte 0x80, 0x00, 0x00, 0x00 .global data_ov10_0211e7b8 data_ov10_0211e7b8: ; 0x0211e7b8 .byte 0x08, 0x00, 0x00, 0x00 .global data_ov10_0211e7bc data_ov10_0211e7bc: ; 0x0211e7bc .byte 0x09, 0x00 .global data_ov10_0211e7be data_ov10_0211e7be: ; 0x0211e7be .byte 0x00, 0x00 .global data_ov10_0211e7c0 data_ov10_0211e7c0: ; 0x0211e7c0 .byte 0x30, 0x00 .global data_ov10_0211e7c2 data_ov10_0211e7c2: ; 0x0211e7c2 .byte 0x31, 0x00 .global data_ov10_0211e7c4 data_ov10_0211e7c4: ; 0x0211e7c4 .byte 0x32, 0x00 .global data_ov10_0211e7c6 data_ov10_0211e7c6: ; 0x0211e7c6 .byte 0x33, 0x00 .global data_ov10_0211e7c8 data_ov10_0211e7c8: ; 0x0211e7c8 .byte 0x34, 0x00 .global data_ov10_0211e7ca data_ov10_0211e7ca: ; 0x0211e7ca .byte 0x35, 0x00 .global data_ov10_0211e7cc data_ov10_0211e7cc: ; 0x0211e7cc .byte 0x36, 0x00 .global data_ov10_0211e7ce data_ov10_0211e7ce: ; 0x0211e7ce .byte 0x37, 0x00 .global data_ov10_0211e7d0 data_ov10_0211e7d0: ; 0x0211e7d0 .byte 0x38, 0x00 .global data_ov10_0211e7d2 data_ov10_0211e7d2: ; 0x0211e7d2 .byte 0x39, 0x00 .global data_ov10_0211e7d4 data_ov10_0211e7d4: ; 0x0211e7d4 .byte 0x30, 0x00 .global data_ov10_0211e7d6 data_ov10_0211e7d6: ; 0x0211e7d6 .byte 0x00, 0x00 .global data_ov10_0211e7d8 data_ov10_0211e7d8: ; 0x0211e7d8 .byte 0x00, 0x00 .global data_ov10_0211e7da data_ov10_0211e7da: ; 0x0211e7da .byte 0x00, 0x00 .global data_ov10_0211e7dc data_ov10_0211e7dc: ; 0x0211e7dc .ascii "Menu/Bg/codeSBg.bin" .byte 0x00 .global data_ov10_0211e7f0 data_ov10_0211e7f0: ; 0x0211e7f0 .byte 0x02, 0x00 .global data_ov10_0211e7f2 data_ov10_0211e7f2: ; 0x0211e7f2 .byte 0x0c, 0x0f .global data_ov10_0211e7f4 data_ov10_0211e7f4: ; 0x0211e7f4 .byte 0x00, 0x00 .global data_ov10_0211e7f6 data_ov10_0211e7f6: ; 0x0211e7f6 .byte 0x01, 0x0f .global data_ov10_0211e7f8 data_ov10_0211e7f8: ; 0x0211e7f8 .byte 0x08, 0x00 .global data_ov10_0211e7fa data_ov10_0211e7fa: ; 0x0211e7fa .byte 0x0c, 0x0f .global data_ov10_0211e7fc data_ov10_0211e7fc: ; 0x0211e7fc .byte 0x02, 0x00 .global data_ov10_0211e7fe data_ov10_0211e7fe: ; 0x0211e7fe .byte 0x07, 0x0f .global data_ov10_0211e800 data_ov10_0211e800: ; 0x0211e800 .byte 0x07, 0x00 .global data_ov10_0211e802 data_ov10_0211e802: ; 0x0211e802 .byte 0x0c, 0x0f .global data_ov10_0211e804 data_ov10_0211e804: ; 0x0211e804 .byte 0x00, 0x00 .global data_ov10_0211e806 data_ov10_0211e806: ; 0x0211e806 .byte 0x0f, 0x0f .global data_ov10_0211e808 data_ov10_0211e808: ; 0x0211e808 .byte 0x02, 0x00 .global data_ov10_0211e80a data_ov10_0211e80a: ; 0x0211e80a .byte 0x06, 0x0f .global data_ov10_0211e80c data_ov10_0211e80c: ; 0x0211e80c .byte 0x0d, 0x08 .global data_ov10_0211e80e data_ov10_0211e80e: ; 0x0211e80e .byte 0x0f, 0x0f .global data_ov10_0211e810 data_ov10_0211e810: ; 0x0211e810 .byte 0xb7, 0x00 .global data_ov10_0211e812 data_ov10_0211e812: ; 0x0211e812 .byte 0x00, 0x00 .global data_ov10_0211e814 data_ov10_0211e814: ; 0x0211e814 .word data_ov10_0211f164 .global data_ov10_0211e818 data_ov10_0211e818: ; 0x0211e818 .byte 0x18, 0x01 .global data_ov10_0211e81a data_ov10_0211e81a: ; 0x0211e81a .byte 0x00, 0x00 .global data_ov10_0211e81c data_ov10_0211e81c: ; 0x0211e81c .word data_ov10_0211f20c .global data_ov10_0211e820 data_ov10_0211e820: ; 0x0211e820 .byte 0x00, 0x03 .global data_ov10_0211e822 data_ov10_0211e822: ; 0x0211e822 .byte 0x00, 0x0f .global data_ov10_0211e824 data_ov10_0211e824: ; 0x0211e824 .byte 0x01, 0x03 .global data_ov10_0211e826 data_ov10_0211e826: ; 0x0211e826 .byte 0x01, 0x0f .global data_ov10_0211e828 data_ov10_0211e828: ; 0x0211e828 .byte 0x2c, 0x01 .global data_ov10_0211e82a data_ov10_0211e82a: ; 0x0211e82a .byte 0x00, 0x00 .global data_ov10_0211e82c data_ov10_0211e82c: ; 0x0211e82c .word data_ov10_0211f190 ; func_ov11_0211f190 .global data_ov10_0211e830 data_ov10_0211e830: ; 0x0211e830 .byte 0x71, 0x01, 0x00, 0x00 .global data_ov10_0211e834 data_ov10_0211e834: ; 0x0211e834 .word data_ov10_0211f14c .global data_ov10_0211e838 data_ov10_0211e838: ; 0x0211e838 .byte 0x1b, 0x01, 0x00, 0x00 .global data_ov10_0211e83c data_ov10_0211e83c: ; 0x0211e83c .word data_ov10_0211f174 .global data_ov10_0211e840 data_ov10_0211e840: ; 0x0211e840 .byte 0x1c, 0x01, 0x00, 0x00 .global data_ov10_0211e844 data_ov10_0211e844: ; 0x0211e844 .word data_ov10_0211f17c .global data_ov10_0211e848 data_ov10_0211e848: ; 0x0211e848 .byte 0x07, 0x01, 0x00, 0x00 .global data_ov10_0211e84c data_ov10_0211e84c: ; 0x0211e84c .word data_ov10_0211f19c .global data_ov10_0211e850 data_ov10_0211e850: ; 0x0211e850 .byte 0x08, 0x01, 0x00, 0x00 .global data_ov10_0211e854 data_ov10_0211e854: ; 0x0211e854 .word data_ov10_0211f1b4 .global data_ov10_0211e858 data_ov10_0211e858: ; 0x0211e858 .byte 0x09, 0x01, 0x00, 0x00 .global data_ov10_0211e85c data_ov10_0211e85c: ; 0x0211e85c .word data_ov10_0211f1fc .global data_ov10_0211e860 data_ov10_0211e860: ; 0x0211e860 .word data_ov10_0211f154 .word data_ov10_0211e848 .byte 0x03, 0x00, 0x00, 0x00, 0x06, 0x01, 0x00, 0x00 .byte 0x0a, 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00 .word data_ov10_0211e7f0 .byte 0x01, 0x00, 0x00, 0x00 .global data_ov10_0211e880 data_ov10_0211e880: ; 0x0211e880 .word data_ov10_0211f15c .word data_ov10_0211e838 .byte 0x02, 0x00, 0x00, 0x00, 0x1a, 0x01, 0x00, 0x00 .byte 0x1d, 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00 .word data_ov10_0211e7f0 .byte 0x01, 0x00, 0x00, 0x00 .global data_ov10_0211e8a0 data_ov10_0211e8a0: ; 0x0211e8a0 .byte 0x12, 0x01, 0x00, 0x00 .global data_ov10_0211e8a4 data_ov10_0211e8a4: ; 0x0211e8a4 .word data_ov10_0211f1cc .global data_ov10_0211e8a8 data_ov10_0211e8a8: ; 0x0211e8a8 .byte 0x13, 0x01, 0x00, 0x00 .global data_ov10_0211e8ac data_ov10_0211e8ac: ; 0x0211e8ac .word data_ov10_0211f1dc .global data_ov10_0211e8b0 data_ov10_0211e8b0: ; 0x0211e8b0 .byte 0x14, 0x01, 0x00, 0x00 .global data_ov10_0211e8b4 data_ov10_0211e8b4: ; 0x0211e8b4 .word data_ov10_0211f1ec .global data_ov10_0211e8b8 data_ov10_0211e8b8: ; 0x0211e8b8 .byte 0x15, 0x01, 0x00, 0x00 .global data_ov10_0211e8bc data_ov10_0211e8bc: ; 0x0211e8bc .word data_ov10_0211f144 .global data_ov10_0211e8c0 data_ov10_0211e8c0: ; 0x0211e8c0 .word data_ov10_0211f13c .word data_ov10_0211e830 .byte 0x01, 0x00, 0x00, 0x00, 0x70, 0x01, 0x00, 0x00 .byte 0x72, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00 .word data_ov10_0211e7f0 .byte 0x01, 0x00, 0x00, 0x00 .global data_ov10_0211e8e0 data_ov10_0211e8e0: ; 0x0211e8e0 .word data_ov10_0211f1a8 .word data_ov10_0211e8a0 .byte 0x04, 0x00, 0x00, 0x00, 0x11, 0x01, 0x00, 0x00 .byte 0x16, 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00 .word data_ov10_0211e7f0 .byte 0x01, 0x00, 0x00, 0x00 .global data_ov10_0211e900 data_ov10_0211e900: ; 0x0211e900 .word data_ov10_0211f16c .word data_ov10_0211e810 .byte 0x01, 0x00, 0x00, 0x00, 0xb6, 0x00, 0x00, 0x00 .byte 0xb8, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00 .word data_ov10_0211e804 .byte 0x01, 0x00, 0x00, 0x00 .global data_ov10_0211e920 data_ov10_0211e920: ; 0x0211e920 .word data_ov10_0211f1c0 .word data_ov10_0211e818 .byte 0x01, 0x00, 0x00, 0x00, 0x17, 0x01, 0x00, 0x00 .byte 0x19, 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00 .word data_ov10_0211e7f0 .byte 0x01, 0x00, 0x00, 0x00 .global data_ov10_0211e940 data_ov10_0211e940: ; 0x0211e940 .word data_ov10_0211f184 .word data_ov10_0211e828 .byte 0x01, 0x00, 0x00, 0x00, 0x2b, 0x01, 0x00, 0x00 .byte 0x2d, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00 .word data_ov10_0211e80c .byte 0x01, 0x00, 0x00, 0x00 .global data_ov10_0211e960 data_ov10_0211e960: ; 0x0211e960 .byte 0x2e, 0x00 .global data_ov10_0211e962 data_ov10_0211e962: ; 0x0211e962 .byte 0x2f, 0x00 .global data_ov10_0211e964 data_ov10_0211e964: ; 0x0211e964 .byte 0x30, 0x00 .global data_ov10_0211e966 data_ov10_0211e966: ; 0x0211e966 .byte 0x31, 0x00 .global data_ov10_0211e968 data_ov10_0211e968: ; 0x0211e968 .byte 0x2b, 0x00 .global data_ov10_0211e96a data_ov10_0211e96a: ; 0x0211e96a .byte 0x2c, 0x00 .global data_ov10_0211e96c data_ov10_0211e96c: ; 0x0211e96c .byte 0x2d, 0x00 .global data_ov10_0211e96e data_ov10_0211e96e: ; 0x0211e96e .byte 0x63, 0x00 .global data_ov10_0211e970 data_ov10_0211e970: ; 0x0211e970 .byte 0x65, 0x00 .global data_ov10_0211e972 data_ov10_0211e972: ; 0x0211e972 .byte 0x66, 0x00 .global data_ov10_0211e974 data_ov10_0211e974: ; 0x0211e974 .byte 0x32, 0x04 .global data_ov10_0211e976 data_ov10_0211e976: ; 0x0211e976 .byte 0x33, 0x04 .global data_ov10_0211e978 data_ov10_0211e978: ; 0x0211e978 .byte 0x34, 0x05 .global data_ov10_0211e97a data_ov10_0211e97a: ; 0x0211e97a .byte 0x39, 0x05 .global data_ov10_0211e97c data_ov10_0211e97c: ; 0x0211e97c .byte 0x3b, 0x05 .global data_ov10_0211e97e data_ov10_0211e97e: ; 0x0211e97e .byte 0x6a, 0x06 .global data_ov10_0211e980 data_ov10_0211e980: ; 0x0211e980 .word func_ov10_0211cd4c - 1 .global data_ov10_0211e984 data_ov10_0211e984: ; 0x0211e984 .word func_ov10_0211cdd4 - 1 .global data_ov10_0211e988 data_ov10_0211e988: ; 0x0211e988 .word func_ov00_0207c118 .global data_ov10_0211e98c data_ov10_0211e98c: ; 0x0211e98c .word func_ov10_0211ce5c - 1 .global data_ov10_0211e990 data_ov10_0211e990: ; 0x0211e990 .word func_ov01_020f7b88 ; data_ov02_020f7b88 .global data_ov10_0211e994 data_ov10_0211e994: ; 0x0211e994 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211e998 data_ov10_0211e998: ; 0x0211e998 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211e99c data_ov10_0211e99c: ; 0x0211e99c .byte 0x28, 0x00 .global data_ov10_0211e99e data_ov10_0211e99e: ; 0x0211e99e .byte 0x02, 0x00 .global data_ov10_0211e9a0 data_ov10_0211e9a0: ; 0x0211e9a0 .byte 0x29, 0x00 .global data_ov10_0211e9a2 data_ov10_0211e9a2: ; 0x0211e9a2 .byte 0x02, 0x00 .global data_ov10_0211e9a4 data_ov10_0211e9a4: ; 0x0211e9a4 .byte 0x2a, 0x00 .global data_ov10_0211e9a6 data_ov10_0211e9a6: ; 0x0211e9a6 .byte 0x02, 0x00 .global data_ov10_0211e9a8 data_ov10_0211e9a8: ; 0x0211e9a8 .byte 0x2b, 0x00 .global data_ov10_0211e9aa data_ov10_0211e9aa: ; 0x0211e9aa .byte 0x02, 0x00 .global data_ov10_0211e9ac data_ov10_0211e9ac: ; 0x0211e9ac .byte 0x2c, 0x00 .global data_ov10_0211e9ae data_ov10_0211e9ae: ; 0x0211e9ae .byte 0x02, 0x00 .global data_ov10_0211e9b0 data_ov10_0211e9b0: ; 0x0211e9b0 .byte 0x2d, 0x00 .global data_ov10_0211e9b2 data_ov10_0211e9b2: ; 0x0211e9b2 .byte 0x02, 0x00 .global data_ov10_0211e9b4 data_ov10_0211e9b4: ; 0x0211e9b4 .byte 0x2e, 0x00 .global data_ov10_0211e9b6 data_ov10_0211e9b6: ; 0x0211e9b6 .byte 0x02, 0x00 .global data_ov10_0211e9b8 data_ov10_0211e9b8: ; 0x0211e9b8 .byte 0x2f, 0x00 .global data_ov10_0211e9ba data_ov10_0211e9ba: ; 0x0211e9ba .byte 0x02, 0x00 .global data_ov10_0211e9bc data_ov10_0211e9bc: ; 0x0211e9bc .byte 0x30, 0x00 .global data_ov10_0211e9be data_ov10_0211e9be: ; 0x0211e9be .byte 0x02, 0x00 .global data_ov10_0211e9c0 data_ov10_0211e9c0: ; 0x0211e9c0 .byte 0x31, 0x00 .global data_ov10_0211e9c2 data_ov10_0211e9c2: ; 0x0211e9c2 .byte 0x02, 0x00 .global data_ov10_0211e9c4 data_ov10_0211e9c4: ; 0x0211e9c4 .byte 0x32, 0x00 .global data_ov10_0211e9c6 data_ov10_0211e9c6: ; 0x0211e9c6 .byte 0x02, 0x00 .global data_ov10_0211e9c8 data_ov10_0211e9c8: ; 0x0211e9c8 .byte 0x33, 0x00 .global data_ov10_0211e9ca data_ov10_0211e9ca: ; 0x0211e9ca .byte 0x02, 0x00 .global data_ov10_0211e9cc data_ov10_0211e9cc: ; 0x0211e9cc .byte 0x34, 0x00 .global data_ov10_0211e9ce data_ov10_0211e9ce: ; 0x0211e9ce .byte 0x02, 0x00 .global data_ov10_0211e9d0 data_ov10_0211e9d0: ; 0x0211e9d0 .byte 0x35, 0x00 .global data_ov10_0211e9d2 data_ov10_0211e9d2: ; 0x0211e9d2 .byte 0x02, 0x00 .global data_ov10_0211e9d4 data_ov10_0211e9d4: ; 0x0211e9d4 .byte 0x36, 0x00 .global data_ov10_0211e9d6 data_ov10_0211e9d6: ; 0x0211e9d6 .byte 0x02, 0x00 .global data_ov10_0211e9d8 data_ov10_0211e9d8: ; 0x0211e9d8 .byte 0x37, 0x00 .global data_ov10_0211e9da data_ov10_0211e9da: ; 0x0211e9da .byte 0x02, 0x00 .global data_ov10_0211e9dc data_ov10_0211e9dc: ; 0x0211e9dc .ascii "Menu/Bg/woodBg.bin" .byte 0x00, 0x00 .global data_ov10_0211e9f0 data_ov10_0211e9f0: ; 0x0211e9f0 .ascii "Menu/Bg/rplExBg.bin" .byte 0x00 .global data_ov10_0211ea04 data_ov10_0211ea04: ; 0x0211ea04 .ascii "Menu/Bg/rplBg.bin" .byte 0x00, 0x00, 0x00 .section .init, 4, 1, 4 .section .ctor, 4, 1, 4 .data .global data_ov10_0211ea20 data_ov10_0211ea20: ; 0x0211ea20 .ascii "brg" .byte 0x00 .global data_ov10_0211ea24 data_ov10_0211ea24: ; 0x0211ea24 .ascii "fnl" .byte 0x00 .global data_ov10_0211ea28 data_ov10_0211ea28: ; 0x0211ea28 .ascii "pdl" .byte 0x00 .global data_ov10_0211ea2c data_ov10_0211ea2c: ; 0x0211ea2c .ascii "dco" .byte 0x00 .global data_ov10_0211ea30 data_ov10_0211ea30: ; 0x0211ea30 .ascii "can" .byte 0x00 .global data_ov10_0211ea34 data_ov10_0211ea34: ; 0x0211ea34 .ascii "hul" .byte 0x00 .global data_ov10_0211ea38 data_ov10_0211ea38: ; 0x0211ea38 .ascii "bow" .byte 0x00 .global data_ov10_0211ea3c data_ov10_0211ea3c: ; 0x0211ea3c .ascii "anc" .byte 0x00 .global data_ov10_0211ea40 data_ov10_0211ea40: ; 0x0211ea40 .word data_ov10_0211ea3c ; func_ov11_0211ea3c .global data_ov10_0211ea44 data_ov10_0211ea44: ; 0x0211ea44 .word data_ov10_0211ea38 .global data_ov10_0211ea48 data_ov10_0211ea48: ; 0x0211ea48 .word data_ov10_0211ea34 .global data_ov10_0211ea4c data_ov10_0211ea4c: ; 0x0211ea4c .word data_ov10_0211ea30 .global data_ov10_0211ea50 data_ov10_0211ea50: ; 0x0211ea50 .word data_ov10_0211ea2c .global data_ov10_0211ea54 data_ov10_0211ea54: ; 0x0211ea54 .word data_ov10_0211ea28 .global data_ov10_0211ea58 data_ov10_0211ea58: ; 0x0211ea58 .word data_ov10_0211ea24 .global data_ov10_0211ea5c data_ov10_0211ea5c: ; 0x0211ea5c .word data_ov10_0211ea20 .global data_ov10_0211ea60 data_ov10_0211ea60: ; 0x0211ea60 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ea64 data_ov10_0211ea64: ; 0x0211ea64 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ea68 data_ov10_0211ea68: ; 0x0211ea68 .word func_ov10_02112e3c .global data_ov10_0211ea6c data_ov10_0211ea6c: ; 0x0211ea6c .word func_ov10_02112da8 .global data_ov10_0211ea70 data_ov10_0211ea70: ; 0x0211ea70 .word func_ov10_02112ecc .global data_ov10_0211ea74 data_ov10_0211ea74: ; 0x0211ea74 .word func_ov10_02112ef4 .global data_ov10_0211ea78 data_ov10_0211ea78: ; 0x0211ea78 .word func_ov10_02112f00 .global data_ov10_0211ea7c data_ov10_0211ea7c: ; 0x0211ea7c .word func_0202c0c4 .global data_ov10_0211ea80 data_ov10_0211ea80: ; 0x0211ea80 .word func_ov10_02112f0c .global data_ov10_0211ea84 data_ov10_0211ea84: ; 0x0211ea84 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ea88 data_ov10_0211ea88: ; 0x0211ea88 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ea8c data_ov10_0211ea8c: ; 0x0211ea8c .word func_ov10_02112f34 .global data_ov10_0211ea90 data_ov10_0211ea90: ; 0x0211ea90 .word func_ov10_02112f38 .global data_ov10_0211ea94 data_ov10_0211ea94: ; 0x0211ea94 .word func_ov10_02112f48 - 1 .global data_ov10_0211ea98 data_ov10_0211ea98: ; 0x0211ea98 .word func_ov10_02112f5c - 1 .global data_ov10_0211ea9c data_ov10_0211ea9c: ; 0x0211ea9c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211eaa0 data_ov10_0211eaa0: ; 0x0211eaa0 .word func_ov10_02112f60 - 1 .global data_ov10_0211eaa4 data_ov10_0211eaa4: ; 0x0211eaa4 .word func_ov10_02112f64 - 1 .global data_ov10_0211eaa8 data_ov10_0211eaa8: ; 0x0211eaa8 .ascii "brg" .byte 0x00 .global data_ov10_0211eaac data_ov10_0211eaac: ; 0x0211eaac .ascii "fnl" .byte 0x00 .global data_ov10_0211eab0 data_ov10_0211eab0: ; 0x0211eab0 .ascii "pdl" .byte 0x00 .global data_ov10_0211eab4 data_ov10_0211eab4: ; 0x0211eab4 .ascii "dco" .byte 0x00 .global data_ov10_0211eab8 data_ov10_0211eab8: ; 0x0211eab8 .ascii "can" .byte 0x00 .global data_ov10_0211eabc data_ov10_0211eabc: ; 0x0211eabc .ascii "hul" .byte 0x00 .global data_ov10_0211eac0 data_ov10_0211eac0: ; 0x0211eac0 .ascii "bow" .byte 0x00 .global data_ov10_0211eac4 data_ov10_0211eac4: ; 0x0211eac4 .ascii "anc" .byte 0x00 .global data_ov10_0211eac8 data_ov10_0211eac8: ; 0x0211eac8 .word data_ov10_0211eac4 .global data_ov10_0211eacc data_ov10_0211eacc: ; 0x0211eacc .word data_ov10_0211eac0 .global data_ov10_0211ead0 data_ov10_0211ead0: ; 0x0211ead0 .word data_ov10_0211eabc .global data_ov10_0211ead4 data_ov10_0211ead4: ; 0x0211ead4 .word data_ov10_0211eab8 .global data_ov10_0211ead8 data_ov10_0211ead8: ; 0x0211ead8 .word data_ov10_0211eab4 .global data_ov10_0211eadc data_ov10_0211eadc: ; 0x0211eadc .word data_ov10_0211eab0 .global data_ov10_0211eae0 data_ov10_0211eae0: ; 0x0211eae0 .word data_ov10_0211eaac .global data_ov10_0211eae4 data_ov10_0211eae4: ; 0x0211eae4 .word data_ov10_0211eaa8 .global data_ov10_0211eae8 data_ov10_0211eae8: ; 0x0211eae8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211eaec data_ov10_0211eaec: ; 0x0211eaec .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211eaf0 data_ov10_0211eaf0: ; 0x0211eaf0 .word func_ov10_021132d8 .global data_ov10_0211eaf4 data_ov10_0211eaf4: ; 0x0211eaf4 .word func_ov10_02113dc4 - 1 .global data_ov10_0211eaf8 data_ov10_0211eaf8: ; 0x0211eaf8 .word func_02038758 .global data_ov10_0211eafc data_ov10_0211eafc: ; 0x0211eafc .word func_ov10_02112f80 .global data_ov10_0211eb00 data_ov10_0211eb00: ; 0x0211eb00 .word func_02037918 .global data_ov10_0211eb04 data_ov10_0211eb04: ; 0x0211eb04 .word func_020386b4 .global data_ov10_0211eb08 data_ov10_0211eb08: ; 0x0211eb08 .word func_ov10_02113000 .global data_ov10_0211eb0c data_ov10_0211eb0c: ; 0x0211eb0c .word func_020386c4 .global data_ov10_0211eb10 data_ov10_0211eb10: ; 0x0211eb10 .word func_020386cc .global data_ov10_0211eb14 data_ov10_0211eb14: ; 0x0211eb14 .word func_02038770 .global data_ov10_0211eb18 data_ov10_0211eb18: ; 0x0211eb18 .word func_0203878c .global data_ov10_0211eb1c data_ov10_0211eb1c: ; 0x0211eb1c .word func_ov10_02112fe4 .global data_ov10_0211eb20 data_ov10_0211eb20: ; 0x0211eb20 .word func_020387a4 .global data_ov10_0211eb24 data_ov10_0211eb24: ; 0x0211eb24 .ascii "FSL" .byte 0x00 .global data_ov10_0211eb28 data_ov10_0211eb28: ; 0x0211eb28 .ascii "Menu/Bg/woodBg.bin" .byte 0x00, 0x00 .global data_ov10_0211eb3c data_ov10_0211eb3c: ; 0x0211eb3c .ascii "FSL:woodBg" .byte 0x00, 0x00 .global data_ov10_0211eb48 data_ov10_0211eb48: ; 0x0211eb48 .ascii "FSL" .byte 0x00 .global data_ov10_0211eb4c data_ov10_0211eb4c: ; 0x0211eb4c .ascii "Menu/Bg/fileselectBg.bin" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211eb68 data_ov10_0211eb68: ; 0x0211eb68 .ascii "FSL:fileselectBg" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211eb7c data_ov10_0211eb7c: ; 0x0211eb7c .ascii "brg" .byte 0x00 .global data_ov10_0211eb80 data_ov10_0211eb80: ; 0x0211eb80 .ascii "fnl" .byte 0x00 .global data_ov10_0211eb84 data_ov10_0211eb84: ; 0x0211eb84 .ascii "pdl" .byte 0x00 .global data_ov10_0211eb88 data_ov10_0211eb88: ; 0x0211eb88 .ascii "dco" .byte 0x00 .global data_ov10_0211eb8c data_ov10_0211eb8c: ; 0x0211eb8c .ascii "can" .byte 0x00 .global data_ov10_0211eb90 data_ov10_0211eb90: ; 0x0211eb90 .ascii "hul" .byte 0x00 .global data_ov10_0211eb94 data_ov10_0211eb94: ; 0x0211eb94 .ascii "bow" .byte 0x00 .global data_ov10_0211eb98 data_ov10_0211eb98: ; 0x0211eb98 .ascii "anc" .byte 0x00 .global data_ov10_0211eb9c data_ov10_0211eb9c: ; 0x0211eb9c .word data_ov10_0211eb98 .global data_ov10_0211eba0 data_ov10_0211eba0: ; 0x0211eba0 .word data_ov10_0211eb94 .global data_ov10_0211eba4 data_ov10_0211eba4: ; 0x0211eba4 .word data_ov10_0211eb90 .global data_ov10_0211eba8 data_ov10_0211eba8: ; 0x0211eba8 .word data_ov10_0211eb8c .global data_ov10_0211ebac data_ov10_0211ebac: ; 0x0211ebac .word data_ov10_0211eb88 .global data_ov10_0211ebb0 data_ov10_0211ebb0: ; 0x0211ebb0 .word data_ov10_0211eb84 .global data_ov10_0211ebb4 data_ov10_0211ebb4: ; 0x0211ebb4 .word data_ov10_0211eb80 .global data_ov10_0211ebb8 data_ov10_0211ebb8: ; 0x0211ebb8 .word data_ov10_0211eb7c .global data_ov10_0211ebbc data_ov10_0211ebbc: ; 0x0211ebbc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ebc0 data_ov10_0211ebc0: ; 0x0211ebc0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ebc4 data_ov10_0211ebc4: ; 0x0211ebc4 .word func_ov10_02114684 - 1 .global data_ov10_0211ebc8 data_ov10_0211ebc8: ; 0x0211ebc8 .word func_ov10_02114644 - 1 .global data_ov10_0211ebcc data_ov10_0211ebcc: ; 0x0211ebcc .word func_ov10_02113ec0 - 1 .global data_ov10_0211ebd0 data_ov10_0211ebd0: ; 0x0211ebd0 .word func_ov10_02112f5c - 1 .global data_ov10_0211ebd4 data_ov10_0211ebd4: ; 0x0211ebd4 .word func_ov10_02113fd4 - 1 .global data_ov10_0211ebd8 data_ov10_0211ebd8: ; 0x0211ebd8 .word func_ov10_02114434 - 1 .global data_ov10_0211ebdc data_ov10_0211ebdc: ; 0x0211ebdc .word func_ov10_02112f64 - 1 .global data_ov10_0211ebe0 data_ov10_0211ebe0: ; 0x0211ebe0 .ascii "brg" .byte 0x00 .global data_ov10_0211ebe4 data_ov10_0211ebe4: ; 0x0211ebe4 .ascii "fnl" .byte 0x00 .global data_ov10_0211ebe8 data_ov10_0211ebe8: ; 0x0211ebe8 .ascii "pdl" .byte 0x00 .global data_ov10_0211ebec data_ov10_0211ebec: ; 0x0211ebec .ascii "dco" .byte 0x00 .global data_ov10_0211ebf0 data_ov10_0211ebf0: ; 0x0211ebf0 .ascii "can" .byte 0x00 .global data_ov10_0211ebf4 data_ov10_0211ebf4: ; 0x0211ebf4 .ascii "hul" .byte 0x00 .global data_ov10_0211ebf8 data_ov10_0211ebf8: ; 0x0211ebf8 .ascii "bow" .byte 0x00 .global data_ov10_0211ebfc data_ov10_0211ebfc: ; 0x0211ebfc .ascii "anc" .byte 0x00 .global data_ov10_0211ec00 data_ov10_0211ec00: ; 0x0211ec00 .word data_ov10_0211ebfc .global data_ov10_0211ec04 data_ov10_0211ec04: ; 0x0211ec04 .word data_ov10_0211ebf8 .global data_ov10_0211ec08 data_ov10_0211ec08: ; 0x0211ec08 .word data_ov10_0211ebf4 .global data_ov10_0211ec0c data_ov10_0211ec0c: ; 0x0211ec0c .word data_ov10_0211ebf0 .global data_ov10_0211ec10 data_ov10_0211ec10: ; 0x0211ec10 .word data_ov10_0211ebec .global data_ov10_0211ec14 data_ov10_0211ec14: ; 0x0211ec14 .word data_ov10_0211ebe8 .global data_ov10_0211ec18 data_ov10_0211ec18: ; 0x0211ec18 .word data_ov10_0211ebe4 .global data_ov10_0211ec1c data_ov10_0211ec1c: ; 0x0211ec1c .word data_ov10_0211ebe0 .global data_ov10_0211ec20 data_ov10_0211ec20: ; 0x0211ec20 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ec24 data_ov10_0211ec24: ; 0x0211ec24 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ec28 data_ov10_0211ec28: ; 0x0211ec28 .word func_ov10_021150d4 - 1 .global data_ov10_0211ec2c data_ov10_0211ec2c: ; 0x0211ec2c .word func_ov10_02115094 - 1 .global data_ov10_0211ec30 data_ov10_0211ec30: ; 0x0211ec30 .word func_ov10_0211488c .global data_ov10_0211ec34 data_ov10_0211ec34: ; 0x0211ec34 .word func_ov10_02114924 .global data_ov10_0211ec38 data_ov10_0211ec38: ; 0x0211ec38 .word func_ov10_02114a18 .global data_ov10_0211ec3c data_ov10_0211ec3c: ; 0x0211ec3c .word func_ov10_02114e38 .global data_ov10_0211ec40 data_ov10_0211ec40: ; 0x0211ec40 .word func_ov10_02112f64 - 1 .global data_ov10_0211ec44 data_ov10_0211ec44: ; 0x0211ec44 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ec48 data_ov10_0211ec48: ; 0x0211ec48 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ec4c data_ov10_0211ec4c: ; 0x0211ec4c .word func_ov10_02114880 .global data_ov10_0211ec50 data_ov10_0211ec50: ; 0x0211ec50 .word func_ov10_0211510c - 1 .global data_ov10_0211ec54 data_ov10_0211ec54: ; 0x0211ec54 .word func_02038758 .global data_ov10_0211ec58 data_ov10_0211ec58: ; 0x0211ec58 .word func_02037854 .global data_ov10_0211ec5c data_ov10_0211ec5c: ; 0x0211ec5c .word func_02037918 .global data_ov10_0211ec60 data_ov10_0211ec60: ; 0x0211ec60 .word func_020386b4 .global data_ov10_0211ec64 data_ov10_0211ec64: ; 0x0211ec64 .word func_020386b8 .global data_ov10_0211ec68 data_ov10_0211ec68: ; 0x0211ec68 .word func_020386c4 .global data_ov10_0211ec6c data_ov10_0211ec6c: ; 0x0211ec6c .word func_020386cc .global data_ov10_0211ec70 data_ov10_0211ec70: ; 0x0211ec70 .word func_02038770 .global data_ov10_0211ec74 data_ov10_0211ec74: ; 0x0211ec74 .word func_0203878c .global data_ov10_0211ec78 data_ov10_0211ec78: ; 0x0211ec78 .word func_ov10_021146d4 ; func_ov12_021146d4 .global data_ov10_0211ec7c data_ov10_0211ec7c: ; 0x0211ec7c .word func_020387a4 .global data_ov10_0211ec80 data_ov10_0211ec80: ; 0x0211ec80 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ec84 data_ov10_0211ec84: ; 0x0211ec84 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ec88 data_ov10_0211ec88: ; 0x0211ec88 .word func_ov10_02115234 - 1 .global data_ov10_0211ec8c data_ov10_0211ec8c: ; 0x0211ec8c .word func_ov10_02115218 - 1 .global data_ov10_0211ec90 data_ov10_0211ec90: ; 0x0211ec90 .word func_ov10_02112f48 - 1 .global data_ov10_0211ec94 data_ov10_0211ec94: ; 0x0211ec94 .word func_ov10_02112f5c - 1 .global data_ov10_0211ec98 data_ov10_0211ec98: ; 0x0211ec98 .word func_ov10_02115128 - 1 .global data_ov10_0211ec9c data_ov10_0211ec9c: ; 0x0211ec9c .word func_ov10_021151dc - 1 .global data_ov10_0211eca0 data_ov10_0211eca0: ; 0x0211eca0 .word func_ov10_02112f64 - 1 .global data_ov10_0211eca4 data_ov10_0211eca4: ; 0x0211eca4 .ascii "brg" .byte 0x00 .global data_ov10_0211eca8 data_ov10_0211eca8: ; 0x0211eca8 .ascii "fnl" .byte 0x00 .global data_ov10_0211ecac data_ov10_0211ecac: ; 0x0211ecac .ascii "pdl" .byte 0x00 .global data_ov10_0211ecb0 data_ov10_0211ecb0: ; 0x0211ecb0 .ascii "dco" .byte 0x00 .global data_ov10_0211ecb4 data_ov10_0211ecb4: ; 0x0211ecb4 .ascii "can" .byte 0x00 .global data_ov10_0211ecb8 data_ov10_0211ecb8: ; 0x0211ecb8 .ascii "hul" .byte 0x00 .global data_ov10_0211ecbc data_ov10_0211ecbc: ; 0x0211ecbc .ascii "bow" .byte 0x00 .global data_ov10_0211ecc0 data_ov10_0211ecc0: ; 0x0211ecc0 .ascii "anc" .byte 0x00 .global data_ov10_0211ecc4 data_ov10_0211ecc4: ; 0x0211ecc4 .word data_ov10_0211ecc0 .global data_ov10_0211ecc8 data_ov10_0211ecc8: ; 0x0211ecc8 .word data_ov10_0211ecbc .global data_ov10_0211eccc data_ov10_0211eccc: ; 0x0211eccc .word data_ov10_0211ecb8 .global data_ov10_0211ecd0 data_ov10_0211ecd0: ; 0x0211ecd0 .word data_ov10_0211ecb4 .global data_ov10_0211ecd4 data_ov10_0211ecd4: ; 0x0211ecd4 .word data_ov10_0211ecb0 .global data_ov10_0211ecd8 data_ov10_0211ecd8: ; 0x0211ecd8 .word data_ov10_0211ecac .global data_ov10_0211ecdc data_ov10_0211ecdc: ; 0x0211ecdc .word data_ov10_0211eca8 .global data_ov10_0211ece0 data_ov10_0211ece0: ; 0x0211ece0 .word data_ov10_0211eca4 .global data_ov10_0211ece4 data_ov10_0211ece4: ; 0x0211ece4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ece8 data_ov10_0211ece8: ; 0x0211ece8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ecec data_ov10_0211ecec: ; 0x0211ecec .word func_ov10_02115bb0 - 1 .global data_ov10_0211ecf0 data_ov10_0211ecf0: ; 0x0211ecf0 .word func_ov10_02115b70 - 1 .global data_ov10_0211ecf4 data_ov10_0211ecf4: ; 0x0211ecf4 .word func_ov10_02115508 - 1 .global data_ov10_0211ecf8 data_ov10_0211ecf8: ; 0x0211ecf8 .word func_ov10_02112f5c - 1 .global data_ov10_0211ecfc data_ov10_0211ecfc: ; 0x0211ecfc .word func_ov10_021155cc - 1 .global data_ov10_0211ed00 data_ov10_0211ed00: ; 0x0211ed00 .word func_ov10_02115938 - 1 .global data_ov10_0211ed04 data_ov10_0211ed04: ; 0x0211ed04 .word func_ov10_02112f64 - 1 .global data_ov10_0211ed08 data_ov10_0211ed08: ; 0x0211ed08 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ed0c data_ov10_0211ed0c: ; 0x0211ed0c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ed10 data_ov10_0211ed10: ; 0x0211ed10 .word func_ov10_021154f4 - 1 .global data_ov10_0211ed14 data_ov10_0211ed14: ; 0x0211ed14 .word func_ov10_02115be8 - 1 .global data_ov10_0211ed18 data_ov10_0211ed18: ; 0x0211ed18 .word func_02038758 .global data_ov10_0211ed1c data_ov10_0211ed1c: ; 0x0211ed1c .word func_ov10_02115278 - 1 .global data_ov10_0211ed20 data_ov10_0211ed20: ; 0x0211ed20 .word func_02037918 .global data_ov10_0211ed24 data_ov10_0211ed24: ; 0x0211ed24 .word func_020386b4 .global data_ov10_0211ed28 data_ov10_0211ed28: ; 0x0211ed28 .word func_ov10_021153cc - 1 .global data_ov10_0211ed2c data_ov10_0211ed2c: ; 0x0211ed2c .word func_020386c4 .global data_ov10_0211ed30 data_ov10_0211ed30: ; 0x0211ed30 .word func_020386cc .global data_ov10_0211ed34 data_ov10_0211ed34: ; 0x0211ed34 .word func_02038770 .global data_ov10_0211ed38 data_ov10_0211ed38: ; 0x0211ed38 .word func_0203878c .global data_ov10_0211ed3c data_ov10_0211ed3c: ; 0x0211ed3c .word func_ov10_02115370 - 1 .global data_ov10_0211ed40 data_ov10_0211ed40: ; 0x0211ed40 .word func_020387a4 .global data_ov10_0211ed44 data_ov10_0211ed44: ; 0x0211ed44 .ascii "brg" .byte 0x00 .global data_ov10_0211ed48 data_ov10_0211ed48: ; 0x0211ed48 .ascii "fnl" .byte 0x00 .global data_ov10_0211ed4c data_ov10_0211ed4c: ; 0x0211ed4c .ascii "pdl" .byte 0x00 .global data_ov10_0211ed50 data_ov10_0211ed50: ; 0x0211ed50 .ascii "dco" .byte 0x00 .global data_ov10_0211ed54 data_ov10_0211ed54: ; 0x0211ed54 .ascii "can" .byte 0x00 .global data_ov10_0211ed58 data_ov10_0211ed58: ; 0x0211ed58 .ascii "hul" .byte 0x00 .global data_ov10_0211ed5c data_ov10_0211ed5c: ; 0x0211ed5c .ascii "bow" .byte 0x00 .global data_ov10_0211ed60 data_ov10_0211ed60: ; 0x0211ed60 .ascii "anc" .byte 0x00 .global data_ov10_0211ed64 data_ov10_0211ed64: ; 0x0211ed64 .word data_ov10_0211ed60 .global data_ov10_0211ed68 data_ov10_0211ed68: ; 0x0211ed68 .word data_ov10_0211ed5c .global data_ov10_0211ed6c data_ov10_0211ed6c: ; 0x0211ed6c .word data_ov10_0211ed58 .global data_ov10_0211ed70 data_ov10_0211ed70: ; 0x0211ed70 .word data_ov10_0211ed54 .global data_ov10_0211ed74 data_ov10_0211ed74: ; 0x0211ed74 .word data_ov10_0211ed50 .global data_ov10_0211ed78 data_ov10_0211ed78: ; 0x0211ed78 .word data_ov10_0211ed4c .global data_ov10_0211ed7c data_ov10_0211ed7c: ; 0x0211ed7c .word data_ov10_0211ed48 .global data_ov10_0211ed80 data_ov10_0211ed80: ; 0x0211ed80 .word data_ov10_0211ed44 .global data_ov10_0211ed84 data_ov10_0211ed84: ; 0x0211ed84 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ed88 data_ov10_0211ed88: ; 0x0211ed88 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ed8c data_ov10_0211ed8c: ; 0x0211ed8c .word func_ov10_02115e18 - 1 .global data_ov10_0211ed90 data_ov10_0211ed90: ; 0x0211ed90 .word func_ov00_020d0790 .global data_ov10_0211ed94 data_ov10_0211ed94: ; 0x0211ed94 .word func_ov00_020d0968 .global data_ov10_0211ed98 data_ov10_0211ed98: ; 0x0211ed98 .word func_ov00_020d099c .global data_ov10_0211ed9c data_ov10_0211ed9c: ; 0x0211ed9c .word func_ov00_020d063c .global data_ov10_0211eda0 data_ov10_0211eda0: ; 0x0211eda0 .ascii "brg" .byte 0x00 .global data_ov10_0211eda4 data_ov10_0211eda4: ; 0x0211eda4 .ascii "fnl" .byte 0x00 .global data_ov10_0211eda8 data_ov10_0211eda8: ; 0x0211eda8 .ascii "pdl" .byte 0x00 .global data_ov10_0211edac data_ov10_0211edac: ; 0x0211edac .ascii "dco" .byte 0x00 .global data_ov10_0211edb0 data_ov10_0211edb0: ; 0x0211edb0 .ascii "can" .byte 0x00 .global data_ov10_0211edb4 data_ov10_0211edb4: ; 0x0211edb4 .ascii "hul" .byte 0x00 .global data_ov10_0211edb8 data_ov10_0211edb8: ; 0x0211edb8 .ascii "bow" .byte 0x00 .global data_ov10_0211edbc data_ov10_0211edbc: ; 0x0211edbc .ascii "anc" .byte 0x00 .global data_ov10_0211edc0 data_ov10_0211edc0: ; 0x0211edc0 .word data_ov10_0211edbc .global data_ov10_0211edc4 data_ov10_0211edc4: ; 0x0211edc4 .word data_ov10_0211edb8 .global data_ov10_0211edc8 data_ov10_0211edc8: ; 0x0211edc8 .word data_ov10_0211edb4 .global data_ov10_0211edcc data_ov10_0211edcc: ; 0x0211edcc .word data_ov10_0211edb0 .global data_ov10_0211edd0 data_ov10_0211edd0: ; 0x0211edd0 .word data_ov10_0211edac .global data_ov10_0211edd4 data_ov10_0211edd4: ; 0x0211edd4 .word data_ov10_0211eda8 .global data_ov10_0211edd8 data_ov10_0211edd8: ; 0x0211edd8 .word data_ov10_0211eda4 .global data_ov10_0211eddc data_ov10_0211eddc: ; 0x0211eddc .word data_ov10_0211eda0 .global data_ov10_0211ede0 data_ov10_0211ede0: ; 0x0211ede0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ede4 data_ov10_0211ede4: ; 0x0211ede4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ede8 data_ov10_0211ede8: ; 0x0211ede8 .word func_ov10_02116c10 - 1 .global data_ov10_0211edec data_ov10_0211edec: ; 0x0211edec .word func_ov10_02116be8 - 1 .global data_ov10_0211edf0 data_ov10_0211edf0: ; 0x0211edf0 .word func_ov10_02116644 - 1 .global data_ov10_0211edf4 data_ov10_0211edf4: ; 0x0211edf4 .word func_ov10_02116748 - 1 .global data_ov10_0211edf8 data_ov10_0211edf8: ; 0x0211edf8 .word func_ov10_021167c8 - 1 .global data_ov10_0211edfc data_ov10_0211edfc: ; 0x0211edfc .word func_ov10_02116b00 - 1 .global data_ov10_0211ee00 data_ov10_0211ee00: ; 0x0211ee00 .word func_ov10_02116b10 - 1 .global data_ov10_0211ee04 data_ov10_0211ee04: ; 0x0211ee04 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ee08 data_ov10_0211ee08: ; 0x0211ee08 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ee0c data_ov10_0211ee0c: ; 0x0211ee0c .word func_ov10_02116630 - 1 .global data_ov10_0211ee10 data_ov10_0211ee10: ; 0x0211ee10 .word func_ov10_02116c30 - 1 .global data_ov10_0211ee14 data_ov10_0211ee14: ; 0x0211ee14 .word func_02038758 .global data_ov10_0211ee18 data_ov10_0211ee18: ; 0x0211ee18 .word func_02037854 .global data_ov10_0211ee1c data_ov10_0211ee1c: ; 0x0211ee1c .word func_02037918 .global data_ov10_0211ee20 data_ov10_0211ee20: ; 0x0211ee20 .word func_020386b4 .global data_ov10_0211ee24 data_ov10_0211ee24: ; 0x0211ee24 .word func_020386b8 .global data_ov10_0211ee28 data_ov10_0211ee28: ; 0x0211ee28 .word func_020386c4 .global data_ov10_0211ee2c data_ov10_0211ee2c: ; 0x0211ee2c .word func_020386cc .global data_ov10_0211ee30 data_ov10_0211ee30: ; 0x0211ee30 .word func_02038770 .global data_ov10_0211ee34 data_ov10_0211ee34: ; 0x0211ee34 .word func_0203878c .global data_ov10_0211ee38 data_ov10_0211ee38: ; 0x0211ee38 .word func_ov10_02116584 - 1 .global data_ov10_0211ee3c data_ov10_0211ee3c: ; 0x0211ee3c .word func_020387a4 .global data_ov10_0211ee40 data_ov10_0211ee40: ; 0x0211ee40 .ascii "brg" .byte 0x00 .global data_ov10_0211ee44 data_ov10_0211ee44: ; 0x0211ee44 .ascii "fnl" .byte 0x00 .global data_ov10_0211ee48 data_ov10_0211ee48: ; 0x0211ee48 .ascii "pdl" .byte 0x00 .global data_ov10_0211ee4c data_ov10_0211ee4c: ; 0x0211ee4c .ascii "dco" .byte 0x00 .global data_ov10_0211ee50 data_ov10_0211ee50: ; 0x0211ee50 .ascii "can" .byte 0x00 .global data_ov10_0211ee54 data_ov10_0211ee54: ; 0x0211ee54 .ascii "hul" .byte 0x00 .global data_ov10_0211ee58 data_ov10_0211ee58: ; 0x0211ee58 .ascii "bow" .byte 0x00 .global data_ov10_0211ee5c data_ov10_0211ee5c: ; 0x0211ee5c .ascii "anc" .byte 0x00 .global data_ov10_0211ee60 data_ov10_0211ee60: ; 0x0211ee60 .word data_ov10_0211ee5c .global data_ov10_0211ee64 data_ov10_0211ee64: ; 0x0211ee64 .word data_ov10_0211ee58 .global data_ov10_0211ee68 data_ov10_0211ee68: ; 0x0211ee68 .word data_ov10_0211ee54 .global data_ov10_0211ee6c data_ov10_0211ee6c: ; 0x0211ee6c .word data_ov10_0211ee50 .global data_ov10_0211ee70 data_ov10_0211ee70: ; 0x0211ee70 .word data_ov10_0211ee4c .global data_ov10_0211ee74 data_ov10_0211ee74: ; 0x0211ee74 .word data_ov10_0211ee48 .global data_ov10_0211ee78 data_ov10_0211ee78: ; 0x0211ee78 .word data_ov10_0211ee44 .global data_ov10_0211ee7c data_ov10_0211ee7c: ; 0x0211ee7c .word data_ov10_0211ee40 .global data_ov10_0211ee80 data_ov10_0211ee80: ; 0x0211ee80 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ee84 data_ov10_0211ee84: ; 0x0211ee84 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ee88 data_ov10_0211ee88: ; 0x0211ee88 .word func_ov10_021174b0 - 1 .global data_ov10_0211ee8c data_ov10_0211ee8c: ; 0x0211ee8c .word func_ov10_02117478 - 1 .global data_ov10_0211ee90 data_ov10_0211ee90: ; 0x0211ee90 .word func_ov10_02116d2c - 1 .global data_ov10_0211ee94 data_ov10_0211ee94: ; 0x0211ee94 .word func_ov10_02112f5c - 1 .global data_ov10_0211ee98 data_ov10_0211ee98: ; 0x0211ee98 .word func_ov10_02116d88 - 1 .global data_ov10_0211ee9c data_ov10_0211ee9c: ; 0x0211ee9c .word func_ov10_0211703c - 1 .global data_ov10_0211eea0 data_ov10_0211eea0: ; 0x0211eea0 .word func_ov10_02117370 - 1 .global data_ov10_0211eea4 data_ov10_0211eea4: ; 0x0211eea4 .ascii "brg" .byte 0x00 .global data_ov10_0211eea8 data_ov10_0211eea8: ; 0x0211eea8 .ascii "fnl" .byte 0x00 .global data_ov10_0211eeac data_ov10_0211eeac: ; 0x0211eeac .ascii "pdl" .byte 0x00 .global data_ov10_0211eeb0 data_ov10_0211eeb0: ; 0x0211eeb0 .ascii "dco" .byte 0x00 .global data_ov10_0211eeb4 data_ov10_0211eeb4: ; 0x0211eeb4 .ascii "can" .byte 0x00 .global data_ov10_0211eeb8 data_ov10_0211eeb8: ; 0x0211eeb8 .ascii "hul" .byte 0x00 .global data_ov10_0211eebc data_ov10_0211eebc: ; 0x0211eebc .ascii "bow" .byte 0x00 .global data_ov10_0211eec0 data_ov10_0211eec0: ; 0x0211eec0 .ascii "anc" .byte 0x00 .global data_ov10_0211eec4 data_ov10_0211eec4: ; 0x0211eec4 .word data_ov10_0211eec0 .global data_ov10_0211eec8 data_ov10_0211eec8: ; 0x0211eec8 .word data_ov10_0211eebc .global data_ov10_0211eecc data_ov10_0211eecc: ; 0x0211eecc .word data_ov10_0211eeb8 .global data_ov10_0211eed0 data_ov10_0211eed0: ; 0x0211eed0 .word data_ov10_0211eeb4 .global data_ov10_0211eed4 data_ov10_0211eed4: ; 0x0211eed4 .word data_ov10_0211eeb0 .global data_ov10_0211eed8 data_ov10_0211eed8: ; 0x0211eed8 .word data_ov10_0211eeac .global data_ov10_0211eedc data_ov10_0211eedc: ; 0x0211eedc .word data_ov10_0211eea8 .global data_ov10_0211eee0 data_ov10_0211eee0: ; 0x0211eee0 .word data_ov10_0211eea4 .global data_ov10_0211eee4 data_ov10_0211eee4: ; 0x0211eee4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211eee8 data_ov10_0211eee8: ; 0x0211eee8 .ascii "brg" .byte 0x00 .global data_ov10_0211eeec data_ov10_0211eeec: ; 0x0211eeec .ascii "fnl" .byte 0x00 .global data_ov10_0211eef0 data_ov10_0211eef0: ; 0x0211eef0 .ascii "pdl" .byte 0x00 .global data_ov10_0211eef4 data_ov10_0211eef4: ; 0x0211eef4 .ascii "dco" .byte 0x00 .global data_ov10_0211eef8 data_ov10_0211eef8: ; 0x0211eef8 .ascii "can" .byte 0x00 .global data_ov10_0211eefc data_ov10_0211eefc: ; 0x0211eefc .ascii "hul" .byte 0x00 .global data_ov10_0211ef00 data_ov10_0211ef00: ; 0x0211ef00 .ascii "bow" .byte 0x00 .global data_ov10_0211ef04 data_ov10_0211ef04: ; 0x0211ef04 .ascii "anc" .byte 0x00 .global data_ov10_0211ef08 data_ov10_0211ef08: ; 0x0211ef08 .word data_ov10_0211ef04 .global data_ov10_0211ef0c data_ov10_0211ef0c: ; 0x0211ef0c .word data_ov10_0211ef00 .global data_ov10_0211ef10 data_ov10_0211ef10: ; 0x0211ef10 .word data_ov10_0211eefc .global data_ov10_0211ef14 data_ov10_0211ef14: ; 0x0211ef14 .word data_ov10_0211eef8 .global data_ov10_0211ef18 data_ov10_0211ef18: ; 0x0211ef18 .word data_ov10_0211eef4 .global data_ov10_0211ef1c data_ov10_0211ef1c: ; 0x0211ef1c .word data_ov10_0211eef0 .global data_ov10_0211ef20 data_ov10_0211ef20: ; 0x0211ef20 .word data_ov10_0211eeec .global data_ov10_0211ef24 data_ov10_0211ef24: ; 0x0211ef24 .word data_ov10_0211eee8 .global data_ov10_0211ef28 data_ov10_0211ef28: ; 0x0211ef28 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ef2c data_ov10_0211ef2c: ; 0x0211ef2c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ef30 data_ov10_0211ef30: ; 0x0211ef30 .word func_ov10_02119984 - 1 .global data_ov10_0211ef34 data_ov10_0211ef34: ; 0x0211ef34 .word func_ov10_02119944 - 1 .global data_ov10_0211ef38 data_ov10_0211ef38: ; 0x0211ef38 .word func_ov10_02118cb4 - 1 .global data_ov10_0211ef3c data_ov10_0211ef3c: ; 0x0211ef3c .word func_ov10_02118d38 - 1 .global data_ov10_0211ef40 data_ov10_0211ef40: ; 0x0211ef40 .word func_ov10_02118d80 - 1 .global data_ov10_0211ef44 data_ov10_0211ef44: ; 0x0211ef44 .word func_ov10_021190b4 - 1 .global data_ov10_0211ef48 data_ov10_0211ef48: ; 0x0211ef48 .word func_ov10_021198a0 - 1 .global data_ov10_0211ef4c data_ov10_0211ef4c: ; 0x0211ef4c .ascii "brg" .byte 0x00 .global data_ov10_0211ef50 data_ov10_0211ef50: ; 0x0211ef50 .ascii "fnl" .byte 0x00 .global data_ov10_0211ef54 data_ov10_0211ef54: ; 0x0211ef54 .ascii "pdl" .byte 0x00 .global data_ov10_0211ef58 data_ov10_0211ef58: ; 0x0211ef58 .ascii "dco" .byte 0x00 .global data_ov10_0211ef5c data_ov10_0211ef5c: ; 0x0211ef5c .ascii "can" .byte 0x00 .global data_ov10_0211ef60 data_ov10_0211ef60: ; 0x0211ef60 .ascii "hul" .byte 0x00 .global data_ov10_0211ef64 data_ov10_0211ef64: ; 0x0211ef64 .ascii "bow" .byte 0x00 .global data_ov10_0211ef68 data_ov10_0211ef68: ; 0x0211ef68 .ascii "anc" .byte 0x00 .global data_ov10_0211ef6c data_ov10_0211ef6c: ; 0x0211ef6c .word data_ov10_0211ef68 .global data_ov10_0211ef70 data_ov10_0211ef70: ; 0x0211ef70 .word data_ov10_0211ef64 .global data_ov10_0211ef74 data_ov10_0211ef74: ; 0x0211ef74 .word data_ov10_0211ef60 .global data_ov10_0211ef78 data_ov10_0211ef78: ; 0x0211ef78 .word data_ov10_0211ef5c .global data_ov10_0211ef7c data_ov10_0211ef7c: ; 0x0211ef7c .word data_ov10_0211ef58 ; func_ov11_0211ef58 .global data_ov10_0211ef80 data_ov10_0211ef80: ; 0x0211ef80 .word data_ov10_0211ef54 .global data_ov10_0211ef84 data_ov10_0211ef84: ; 0x0211ef84 .word data_ov10_0211ef50 .global data_ov10_0211ef88 data_ov10_0211ef88: ; 0x0211ef88 .word data_ov10_0211ef4c .global data_ov10_0211ef8c data_ov10_0211ef8c: ; 0x0211ef8c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ef90 data_ov10_0211ef90: ; 0x0211ef90 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211ef94 data_ov10_0211ef94: ; 0x0211ef94 .word func_ov10_0211b2e4 - 1 .global data_ov10_0211ef98 data_ov10_0211ef98: ; 0x0211ef98 .word func_ov10_0211b29c - 1 .global data_ov10_0211ef9c data_ov10_0211ef9c: ; 0x0211ef9c .word func_ov10_0211aac4 .global data_ov10_0211efa0 data_ov10_0211efa0: ; 0x0211efa0 .word func_ov10_0211ac00 .global data_ov10_0211efa4 data_ov10_0211efa4: ; 0x0211efa4 .word func_ov10_0211ac84 .global data_ov10_0211efa8 data_ov10_0211efa8: ; 0x0211efa8 .word func_ov10_0211aff0 .global data_ov10_0211efac data_ov10_0211efac: ; 0x0211efac .word func_ov10_02112f64 - 1 .global data_ov10_0211efb0 data_ov10_0211efb0: ; 0x0211efb0 .ascii "KBD" .byte 0x00 .global data_ov10_0211efb4 data_ov10_0211efb4: ; 0x0211efb4 .ascii "KBD:codeSBg" .byte 0x00 .global data_ov10_0211efc0 data_ov10_0211efc0: ; 0x0211efc0 .ascii "brg" .byte 0x00 .global data_ov10_0211efc4 data_ov10_0211efc4: ; 0x0211efc4 .ascii "fnl" .byte 0x00 .global data_ov10_0211efc8 data_ov10_0211efc8: ; 0x0211efc8 .ascii "pdl" .byte 0x00 .global data_ov10_0211efcc data_ov10_0211efcc: ; 0x0211efcc .ascii "dco" .byte 0x00 .global data_ov10_0211efd0 data_ov10_0211efd0: ; 0x0211efd0 .ascii "can" .byte 0x00 .global data_ov10_0211efd4 data_ov10_0211efd4: ; 0x0211efd4 .ascii "hul" .byte 0x00 .global data_ov10_0211efd8 data_ov10_0211efd8: ; 0x0211efd8 .ascii "bow" .byte 0x00 .global data_ov10_0211efdc data_ov10_0211efdc: ; 0x0211efdc .ascii "anc" .byte 0x00 .global data_ov10_0211efe0 data_ov10_0211efe0: ; 0x0211efe0 .word data_ov10_0211efdc .global data_ov10_0211efe4 data_ov10_0211efe4: ; 0x0211efe4 .word data_ov10_0211efd8 .global data_ov10_0211efe8 data_ov10_0211efe8: ; 0x0211efe8 .word data_ov10_0211efd4 .global data_ov10_0211efec data_ov10_0211efec: ; 0x0211efec .word data_ov10_0211efd0 .global data_ov10_0211eff0 data_ov10_0211eff0: ; 0x0211eff0 .word data_ov10_0211efcc .global data_ov10_0211eff4 data_ov10_0211eff4: ; 0x0211eff4 .word data_ov10_0211efc8 .global data_ov10_0211eff8 data_ov10_0211eff8: ; 0x0211eff8 .word data_ov10_0211efc4 .global data_ov10_0211effc data_ov10_0211effc: ; 0x0211effc .word data_ov10_0211efc0 .global data_ov10_0211f000 data_ov10_0211f000: ; 0x0211f000 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f004 data_ov10_0211f004: ; 0x0211f004 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f008 data_ov10_0211f008: ; 0x0211f008 .word func_ov10_0211b4e0 - 1 .global data_ov10_0211f00c data_ov10_0211f00c: ; 0x0211f00c .word func_ov10_0211b4b8 - 1 .global data_ov10_0211f010 data_ov10_0211f010: ; 0x0211f010 .word func_ov10_0211b354 ; func_ov11_0211b354 .global data_ov10_0211f014 data_ov10_0211f014: ; 0x0211f014 .word func_ov10_0211b3ec .global data_ov10_0211f018 data_ov10_0211f018: ; 0x0211f018 .word func_ov10_0211b3f8 .global data_ov10_0211f01c data_ov10_0211f01c: ; 0x0211f01c .word func_ov10_0211b4ac .global data_ov10_0211f020 data_ov10_0211f020: ; 0x0211f020 .word func_ov10_02112f64 - 1 .global data_ov10_0211f024 data_ov10_0211f024: ; 0x0211f024 .ascii "brg" .byte 0x00 .global data_ov10_0211f028 data_ov10_0211f028: ; 0x0211f028 .ascii "fnl" .byte 0x00 .global data_ov10_0211f02c data_ov10_0211f02c: ; 0x0211f02c .ascii "pdl" .byte 0x00 .global data_ov10_0211f030 data_ov10_0211f030: ; 0x0211f030 .ascii "dco" .byte 0x00 .global data_ov10_0211f034 data_ov10_0211f034: ; 0x0211f034 .ascii "can" .byte 0x00 .global data_ov10_0211f038 data_ov10_0211f038: ; 0x0211f038 .ascii "hul" .byte 0x00 .global data_ov10_0211f03c data_ov10_0211f03c: ; 0x0211f03c .ascii "bow" .byte 0x00 .global data_ov10_0211f040 data_ov10_0211f040: ; 0x0211f040 .ascii "anc" .byte 0x00 .global data_ov10_0211f044 data_ov10_0211f044: ; 0x0211f044 .word data_ov10_0211f040 .global data_ov10_0211f048 data_ov10_0211f048: ; 0x0211f048 .word data_ov10_0211f03c .global data_ov10_0211f04c data_ov10_0211f04c: ; 0x0211f04c .word data_ov10_0211f038 .global data_ov10_0211f050 data_ov10_0211f050: ; 0x0211f050 .word data_ov10_0211f034 .global data_ov10_0211f054 data_ov10_0211f054: ; 0x0211f054 .word data_ov10_0211f030 .global data_ov10_0211f058 data_ov10_0211f058: ; 0x0211f058 .word data_ov10_0211f02c .global data_ov10_0211f05c data_ov10_0211f05c: ; 0x0211f05c .word data_ov10_0211f028 .global data_ov10_0211f060 data_ov10_0211f060: ; 0x0211f060 .word data_ov10_0211f024 .global data_ov10_0211f064 data_ov10_0211f064: ; 0x0211f064 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f068 data_ov10_0211f068: ; 0x0211f068 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f06c data_ov10_0211f06c: ; 0x0211f06c .word func_ov10_0211b894 - 1 .global data_ov10_0211f070 data_ov10_0211f070: ; 0x0211f070 .word func_ov10_0211b85c - 1 .global data_ov10_0211f074 data_ov10_0211f074: ; 0x0211f074 .word func_ov10_0211b550 .global data_ov10_0211f078 data_ov10_0211f078: ; 0x0211f078 .word func_ov10_0211b64c .global data_ov10_0211f07c data_ov10_0211f07c: ; 0x0211f07c .word func_ov10_0211b668 .global data_ov10_0211f080 data_ov10_0211f080: ; 0x0211f080 .word func_ov10_0211b748 .global data_ov10_0211f084 data_ov10_0211f084: ; 0x0211f084 .word func_ov10_02112f64 - 1 .global data_ov10_0211f088 data_ov10_0211f088: ; 0x0211f088 .ascii "brg" .byte 0x00 .global data_ov10_0211f08c data_ov10_0211f08c: ; 0x0211f08c .ascii "fnl" .byte 0x00 .global data_ov10_0211f090 data_ov10_0211f090: ; 0x0211f090 .ascii "pdl" .byte 0x00 .global data_ov10_0211f094 data_ov10_0211f094: ; 0x0211f094 .ascii "dco" .byte 0x00 .global data_ov10_0211f098 data_ov10_0211f098: ; 0x0211f098 .ascii "can" .byte 0x00 .global data_ov10_0211f09c data_ov10_0211f09c: ; 0x0211f09c .ascii "hul" .byte 0x00 .global data_ov10_0211f0a0 data_ov10_0211f0a0: ; 0x0211f0a0 .ascii "bow" .byte 0x00 .global data_ov10_0211f0a4 data_ov10_0211f0a4: ; 0x0211f0a4 .ascii "anc" .byte 0x00 .global data_ov10_0211f0a8 data_ov10_0211f0a8: ; 0x0211f0a8 .word data_ov10_0211f0a4 .global data_ov10_0211f0ac data_ov10_0211f0ac: ; 0x0211f0ac .word data_ov10_0211f0a0 .global data_ov10_0211f0b0 data_ov10_0211f0b0: ; 0x0211f0b0 .word data_ov10_0211f09c .global data_ov10_0211f0b4 data_ov10_0211f0b4: ; 0x0211f0b4 .word data_ov10_0211f098 .global data_ov10_0211f0b8 data_ov10_0211f0b8: ; 0x0211f0b8 .word data_ov10_0211f094 .global data_ov10_0211f0bc data_ov10_0211f0bc: ; 0x0211f0bc .word data_ov10_0211f090 .global data_ov10_0211f0c0 data_ov10_0211f0c0: ; 0x0211f0c0 .word data_ov10_0211f08c .global data_ov10_0211f0c4 data_ov10_0211f0c4: ; 0x0211f0c4 .word data_ov10_0211f088 .global data_ov10_0211f0c8 data_ov10_0211f0c8: ; 0x0211f0c8 .byte 0x2d, 0x00, 0x2d, 0x00, 0x2d, 0x00, 0x2d, 0x00 .byte 0x2d, 0x00, 0x2d, 0x00, 0x2d, 0x00, 0x2d, 0x00, 0x00, 0x00 .global data_ov10_0211f0da data_ov10_0211f0da: ; 0x0211f0da .byte 0x00 .global data_ov10_0211f0db data_ov10_0211f0db: ; 0x0211f0db .byte 0x00 .global data_ov10_0211f0dc data_ov10_0211f0dc: ; 0x0211f0dc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f0e0 data_ov10_0211f0e0: ; 0x0211f0e0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f0e4 data_ov10_0211f0e4: ; 0x0211f0e4 .word func_ov10_0211c730 - 1 .global data_ov10_0211f0e8 data_ov10_0211f0e8: ; 0x0211f0e8 .word func_ov10_0211c6f0 - 1 .global data_ov10_0211f0ec data_ov10_0211f0ec: ; 0x0211f0ec .word func_ov10_0211ba04 .global data_ov10_0211f0f0 data_ov10_0211f0f0: ; 0x0211f0f0 .word func_ov10_0211bbe8 .global data_ov10_0211f0f4 data_ov10_0211f0f4: ; 0x0211f0f4 .word func_ov10_0211bc80 .global data_ov10_0211f0f8 data_ov10_0211f0f8: ; 0x0211f0f8 .word func_ov10_0211bf88 .global data_ov10_0211f0fc data_ov10_0211f0fc: ; 0x0211f0fc .word func_ov10_02112f64 - 1 .global data_ov10_0211f100 data_ov10_0211f100: ; 0x0211f100 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f104 data_ov10_0211f104: ; 0x0211f104 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f108 data_ov10_0211f108: ; 0x0211f108 .word func_ov10_0211b9f8 .global data_ov10_0211f10c data_ov10_0211f10c: ; 0x0211f10c .word func_ov10_0211c768 - 1 .global data_ov10_0211f110 data_ov10_0211f110: ; 0x0211f110 .word func_02038758 .global data_ov10_0211f114 data_ov10_0211f114: ; 0x0211f114 .word func_02037854 .global data_ov10_0211f118 data_ov10_0211f118: ; 0x0211f118 .word func_02037918 .global data_ov10_0211f11c data_ov10_0211f11c: ; 0x0211f11c .word func_020386b4 .global data_ov10_0211f120 data_ov10_0211f120: ; 0x0211f120 .word func_020386b8 .global data_ov10_0211f124 data_ov10_0211f124: ; 0x0211f124 .word func_020386c4 .global data_ov10_0211f128 data_ov10_0211f128: ; 0x0211f128 .word func_020386cc .global data_ov10_0211f12c data_ov10_0211f12c: ; 0x0211f12c .word func_02038770 .global data_ov10_0211f130 data_ov10_0211f130: ; 0x0211f130 .word func_0203878c .global data_ov10_0211f134 data_ov10_0211f134: ; 0x0211f134 .word func_ov10_0211b8dc .global data_ov10_0211f138 data_ov10_0211f138: ; 0x0211f138 .word func_020387a4 .global data_ov10_0211f13c data_ov10_0211f13c: ; 0x0211f13c .ascii "rplS" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f144 data_ov10_0211f144: ; 0x0211f144 .ascii "wait" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f14c data_ov10_0211f14c: ; 0x0211f14c .ascii "rplS" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f154 data_ov10_0211f154: ; 0x0211f154 .ascii "codeS" .byte 0x00, 0x00, 0x00 .global data_ov10_0211f15c data_ov10_0211f15c: ; 0x0211f15c .ascii "option" .byte 0x00, 0x00 .global data_ov10_0211f164 data_ov10_0211f164: ; 0x0211f164 .ascii "rplExS" .byte 0x00, 0x00 .global data_ov10_0211f16c data_ov10_0211f16c: ; 0x0211f16c .ascii "rplExS" .byte 0x00, 0x00 .global data_ov10_0211f174 data_ov10_0211f174: ; 0x0211f174 .ascii "option" .byte 0x00, 0x00 .global data_ov10_0211f17c data_ov10_0211f17c: ; 0x0211f17c .ascii "mictest" .byte 0x00 .global data_ov10_0211f184 data_ov10_0211f184: ; 0x0211f184 .ascii "scriptS04" .byte 0x00, 0x00, 0x00 .global data_ov10_0211f190 data_ov10_0211f190: ; 0x0211f190 .ascii "scriptS04" .byte 0x00, 0x00, 0x00 .global data_ov10_0211f19c data_ov10_0211f19c: ; 0x0211f19c .ascii "codeCheck" .byte 0x00, 0x00, 0x00 .global data_ov10_0211f1a8 data_ov10_0211f1a8: ; 0x0211f1a8 .ascii "fileselect" .byte 0x00, 0x00 .global data_ov10_0211f1b4 data_ov10_0211f1b4: ; 0x0211f1b4 .ascii "codeDelete" .byte 0x00, 0x00 .global data_ov10_0211f1c0 data_ov10_0211f1c0: ; 0x0211f1c0 .ascii "accessStyle" .byte 0x00 .global data_ov10_0211f1cc data_ov10_0211f1cc: ; 0x0211f1cc .ascii "fileselect00" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f1dc data_ov10_0211f1dc: ; 0x0211f1dc .ascii "fileselect01" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f1ec data_ov10_0211f1ec: ; 0x0211f1ec .ascii "fileselect02" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f1fc data_ov10_0211f1fc: ; 0x0211f1fc .ascii "codeKeyboard" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f20c data_ov10_0211f20c: ; 0x0211f20c .ascii "accessStyle00" .byte 0x00, 0x00, 0x00 .global data_ov10_0211f21c data_ov10_0211f21c: ; 0x0211f21c .ascii "brg" .byte 0x00 .global data_ov10_0211f220 data_ov10_0211f220: ; 0x0211f220 .ascii "fnl" .byte 0x00 .global data_ov10_0211f224 data_ov10_0211f224: ; 0x0211f224 .ascii "pdl" .byte 0x00 .global data_ov10_0211f228 data_ov10_0211f228: ; 0x0211f228 .ascii "dco" .byte 0x00 .global data_ov10_0211f22c data_ov10_0211f22c: ; 0x0211f22c .ascii "can" .byte 0x00 .global data_ov10_0211f230 data_ov10_0211f230: ; 0x0211f230 .ascii "hul" .byte 0x00 .global data_ov10_0211f234 data_ov10_0211f234: ; 0x0211f234 .ascii "bow" .byte 0x00 .global data_ov10_0211f238 data_ov10_0211f238: ; 0x0211f238 .ascii "anc" .byte 0x00 .global data_ov10_0211f23c data_ov10_0211f23c: ; 0x0211f23c .word data_ov10_0211f238 .global data_ov10_0211f240 data_ov10_0211f240: ; 0x0211f240 .word data_ov10_0211f234 .global data_ov10_0211f244 data_ov10_0211f244: ; 0x0211f244 .word data_ov10_0211f230 .global data_ov10_0211f248 data_ov10_0211f248: ; 0x0211f248 .word data_ov10_0211f22c .global data_ov10_0211f24c data_ov10_0211f24c: ; 0x0211f24c .word data_ov10_0211f228 .global data_ov10_0211f250 data_ov10_0211f250: ; 0x0211f250 .word data_ov10_0211f224 .global data_ov10_0211f254 data_ov10_0211f254: ; 0x0211f254 .word data_ov10_0211f220 .global data_ov10_0211f258 data_ov10_0211f258: ; 0x0211f258 .word data_ov10_0211f21c .global data_ov10_0211f25c data_ov10_0211f25c: ; 0x0211f25c .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f260 data_ov10_0211f260: ; 0x0211f260 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f264 data_ov10_0211f264: ; 0x0211f264 .word func_ov10_0211d30c .global data_ov10_0211f268 data_ov10_0211f268: ; 0x0211f268 .word func_ov10_0211d35c .global data_ov10_0211f26c data_ov10_0211f26c: ; 0x0211f26c .word func_ov10_0211d3b4 .global data_ov10_0211f270 data_ov10_0211f270: ; 0x0211f270 .word func_ov10_0211d798 .global data_ov10_0211f274 data_ov10_0211f274: ; 0x0211f274 .word func_ov10_0211d828 .global data_ov10_0211f278 data_ov10_0211f278: ; 0x0211f278 .word func_ov10_0211da90 .global data_ov10_0211f27c data_ov10_0211f27c: ; 0x0211f27c .word func_ov10_02112f64 - 1 .global data_ov10_0211f280 data_ov10_0211f280: ; 0x0211f280 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f284 data_ov10_0211f284: ; 0x0211f284 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f288 data_ov10_0211f288: ; 0x0211f288 .word func_ov10_0211d2e8 .global data_ov10_0211f28c data_ov10_0211f28c: ; 0x0211f28c .word func_ov10_0211e288 - 1 .global data_ov10_0211f290 data_ov10_0211f290: ; 0x0211f290 .word func_ov10_0211e134 .global data_ov10_0211f294 data_ov10_0211f294: ; 0x0211f294 .word func_ov01_020f80f4 ; data_ov02_020f80f4 .global data_ov10_0211f298 data_ov10_0211f298: ; 0x0211f298 .word func_ov01_020f7e24 ; data_ov02_020f7e24 .global data_ov10_0211f29c data_ov10_0211f29c: ; 0x0211f29c .word func_ov10_0211e154 .global data_ov10_0211f2a0 data_ov10_0211f2a0: ; 0x0211f2a0 .word func_ov10_0211e20c ; func_ov11_0211e20c .global data_ov10_0211f2a4 data_ov10_0211f2a4: ; 0x0211f2a4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f2a8 data_ov10_0211f2a8: ; 0x0211f2a8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f2ac data_ov10_0211f2ac: ; 0x0211f2ac .word func_ov10_0211d2f4 .global data_ov10_0211f2b0 data_ov10_0211f2b0: ; 0x0211f2b0 .word func_ov10_0211e2a4 - 1 .global data_ov10_0211f2b4 data_ov10_0211f2b4: ; 0x0211f2b4 .word func_ov01_020f80cc ; data_ov02_020f80cc, func_ov03_020f80cc .global data_ov10_0211f2b8 data_ov10_0211f2b8: ; 0x0211f2b8 .word func_ov01_020f80f4 ; data_ov02_020f80f4 .global data_ov10_0211f2bc data_ov10_0211f2bc: ; 0x0211f2bc .word func_ov01_020f82dc ; data_ov02_020f82dc .global data_ov10_0211f2c0 data_ov10_0211f2c0: ; 0x0211f2c0 .word func_ov10_0211e010 .global data_ov10_0211f2c4 data_ov10_0211f2c4: ; 0x0211f2c4 .word func_ov10_0211e0d0 .global data_ov10_0211f2c8 data_ov10_0211f2c8: ; 0x0211f2c8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f2cc data_ov10_0211f2cc: ; 0x0211f2cc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f2d0 data_ov10_0211f2d0: ; 0x0211f2d0 .word func_ov10_0211d300 .global data_ov10_0211f2d4 data_ov10_0211f2d4: ; 0x0211f2d4 .word func_ov10_0211e2c0 - 1 .global data_ov10_0211f2d8 data_ov10_0211f2d8: ; 0x0211f2d8 .word func_ov10_0211de34 .global data_ov10_0211f2dc data_ov10_0211f2dc: ; 0x0211f2dc .word func_ov10_0211de74 .global data_ov10_0211f2e0 data_ov10_0211f2e0: ; 0x0211f2e0 .word func_ov01_020f7e24 ; data_ov02_020f7e24 .global data_ov10_0211f2e4 data_ov10_0211f2e4: ; 0x0211f2e4 .word func_ov10_0211dea0 .global data_ov10_0211f2e8 data_ov10_0211f2e8: ; 0x0211f2e8 .word func_ov01_020f8234 ; data_ov02_020f8234 .global data_ov10_0211f2ec data_ov10_0211f2ec: ; 0x0211f2ec .ascii "FSL" .byte 0x00 .global data_ov10_0211f2f0 data_ov10_0211f2f0: ; 0x0211f2f0 .ascii "FSL:woodBg" .byte 0x00, 0x00 .global data_ov10_0211f2fc data_ov10_0211f2fc: ; 0x0211f2fc .ascii "RLM" .byte 0x00 .global data_ov10_0211f300 data_ov10_0211f300: ; 0x0211f300 .ascii "RLM:rareplaylistExplanationS.NSCR" .byte 0x00, 0x00, 0x00 .global data_ov10_0211f324 data_ov10_0211f324: ; 0x0211f324 .ascii "RLM:rplExBg.NCGR" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f338 data_ov10_0211f338: ; 0x0211f338 .ascii "RLM:rplExBg.NCLR" .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f34c data_ov10_0211f34c: ; 0x0211f34c .ascii "RLS" .byte 0x00 .global data_ov10_0211f350 data_ov10_0211f350: ; 0x0211f350 .ascii "RLS:rareplaylistS.NSCR" .byte 0x00, 0x00 .global data_ov10_0211f368 data_ov10_0211f368: ; 0x0211f368 .ascii "RLS:rplBg.NCGR" .byte 0x00, 0x00 .global data_ov10_0211f378 data_ov10_0211f378: ; 0x0211f378 .ascii "RLS:rplBg.NCLR" .byte 0x00, 0x00 .global data_ov10_0211f388 data_ov10_0211f388: ; 0x0211f388 .ascii "brg" .byte 0x00 .global data_ov10_0211f38c data_ov10_0211f38c: ; 0x0211f38c .ascii "fnl" .byte 0x00 .global data_ov10_0211f390 data_ov10_0211f390: ; 0x0211f390 .ascii "pdl" .byte 0x00 .global data_ov10_0211f394 data_ov10_0211f394: ; 0x0211f394 .ascii "dco" .byte 0x00 .global data_ov10_0211f398 data_ov10_0211f398: ; 0x0211f398 .ascii "can" .byte 0x00 .global data_ov10_0211f39c data_ov10_0211f39c: ; 0x0211f39c .ascii "hul" .byte 0x00 .global data_ov10_0211f3a0 data_ov10_0211f3a0: ; 0x0211f3a0 .ascii "bow" .byte 0x00 .global data_ov10_0211f3a4 data_ov10_0211f3a4: ; 0x0211f3a4 .ascii "anc" .byte 0x00 .global data_ov10_0211f3a8 data_ov10_0211f3a8: ; 0x0211f3a8 .word data_ov10_0211f3a4 .global data_ov10_0211f3ac data_ov10_0211f3ac: ; 0x0211f3ac .word data_ov10_0211f3a0 .global data_ov10_0211f3b0 data_ov10_0211f3b0: ; 0x0211f3b0 .word data_ov10_0211f39c .global data_ov10_0211f3b4 data_ov10_0211f3b4: ; 0x0211f3b4 .word data_ov10_0211f398 .global data_ov10_0211f3b8 data_ov10_0211f3b8: ; 0x0211f3b8 .word data_ov10_0211f394 .global data_ov10_0211f3bc data_ov10_0211f3bc: ; 0x0211f3bc .word data_ov10_0211f390 .global data_ov10_0211f3c0 data_ov10_0211f3c0: ; 0x0211f3c0 .word data_ov10_0211f38c .global data_ov10_0211f3c4 data_ov10_0211f3c4: ; 0x0211f3c4 .word data_ov10_0211f388 .global data_ov10_0211f3c8 data_ov10_0211f3c8: ; 0x0211f3c8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f3cc data_ov10_0211f3cc: ; 0x0211f3cc .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f3d0 data_ov10_0211f3d0: ; 0x0211f3d0 .word func_ov10_0211e440 - 1 .global data_ov10_0211f3d4 data_ov10_0211f3d4: ; 0x0211f3d4 .word func_ov10_0211e424 - 1 .global data_ov10_0211f3d8 data_ov10_0211f3d8: ; 0x0211f3d8 .word func_ov10_02112f48 - 1 .global data_ov10_0211f3dc data_ov10_0211f3dc: ; 0x0211f3dc .word func_ov10_02112f5c - 1 .global data_ov10_0211f3e0 data_ov10_0211f3e0: ; 0x0211f3e0 .word func_ov10_0211e2f4 - 1 .global data_ov10_0211f3e4 data_ov10_0211f3e4: ; 0x0211f3e4 .word func_ov10_0211e3d4 - 1 .global data_ov10_0211f3e8 data_ov10_0211f3e8: ; 0x0211f3e8 .word func_ov10_02112f64 - 1 .global data_ov10_0211f3ec data_ov10_0211f3ec: ; 0x0211f3ec .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f3f0 data_ov10_0211f3f0: ; 0x0211f3f0 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f3f4 data_ov10_0211f3f4: ; 0x0211f3f4 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f3f8 data_ov10_0211f3f8: ; 0x0211f3f8 .byte 0x00, 0x00, 0x00, 0x00 .global data_ov10_0211f3fc data_ov10_0211f3fc: ; 0x0211f3fc .byte 0x00, 0x00, 0x00, 0x00 ; 0x0211f400 .bss .global data_ov10_0211f400 data_ov10_0211f400: .space 0x4 .global data_ov10_0211f404 data_ov10_0211f404: .space 0x4 .global data_ov10_0211f408 data_ov10_0211f408: .space 0x4 .global data_ov10_0211f40c data_ov10_0211f40c: .space 0x4 .global data_ov10_0211f410 data_ov10_0211f410: .space 0x4 .global data_ov10_0211f414 data_ov10_0211f414: .space 0x4 .global data_ov10_0211f418 data_ov10_0211f418: .space 0x4 .global data_ov10_0211f41c data_ov10_0211f41c: .space 0x4 .global data_ov10_0211f420 data_ov10_0211f420: .space 0x4 .global data_ov10_0211f424 data_ov10_0211f424: .space 0x4 .global data_ov10_0211f428 data_ov10_0211f428: .space 0x4 .global data_ov10_0211f42c data_ov10_0211f42c: .space 0x4 .global data_ov10_0211f430 data_ov10_0211f430: .space 0x4 .global data_ov10_0211f434 data_ov10_0211f434: .space 0x4 .global data_ov10_0211f438 data_ov10_0211f438: .space 0x4 .global data_ov10_0211f43c data_ov10_0211f43c: .space 0x4 .global data_ov10_0211f440 data_ov10_0211f440: .space 0x4 .global data_ov10_0211f444 data_ov10_0211f444: .space 0x4 .global data_ov10_0211f448 data_ov10_0211f448: .space 0x4 .global data_ov10_0211f44c data_ov10_0211f44c: .space 0x4 .global data_ov10_0211f450 data_ov10_0211f450: .space 0x4 .global data_ov10_0211f454 data_ov10_0211f454: .space 0x4 .global data_ov10_0211f458 data_ov10_0211f458: .space 0x4 .global data_ov10_0211f45c data_ov10_0211f45c: .space 0x4