.include "asm/macros.inc" .include "overlay_02.inc" .text arm_func_start ov02_02329520 ov02_02329520: ; 0x02329520 stmdb sp!, {r4, lr} bl ov00_022E0A70 bl ov00_022BDC5C ldr r0, _0232955C ; =0x00040020 mov r1, #8 bl MemAlloc mov r4, r0 #ifdef EUROPE bl GetLanguage ldr r1, _02329D88 ; =ov02_023503F4_EU mov r2, #0 ldr r1, [r1, r0, lsl #2] #endif add r0, r4, #0x1f bic r0, r0, #0x1f #if defined(NORTH_AMERICA) mov r1, #1 mov r2, #0 #elif defined(JAPAN) mov r1, #0 mov r2, #0x10 #endif bl ov02_023388B4 mov r0, r4 bl MemFree ldmia sp!, {r4, pc} .align 2, 0 _0232955C: .word 0x00040020 #ifdef EUROPE _02329D88: .word ov02_023503F4_EU #endif arm_func_end ov02_02329520 arm_func_start ov02_02329560 ov02_02329560: ; 0x02329560 mov r2, #0 str r2, [r0] str r2, [r0, #4] strh r2, [r0, #8] strh r1, [r0, #0xa] bx lr arm_func_end ov02_02329560 arm_func_start ov02_02329578 ov02_02329578: ; 0x02329578 ldrh r3, [r0, #0xa] mov r2, #0 add ip, r1, r3 str r2, [ip, #4] str r2, [r1, r3] str r1, [r0] str r1, [r0, #4] ldrh r1, [r0, #8] add r1, r1, #1 strh r1, [r0, #8] bx lr arm_func_end ov02_02329578 arm_func_start ov02_023295A4 ov02_023295A4: ; 0x023295A4 stmdb sp!, {r3, lr} ldr r2, [r0] cmp r2, #0 bne _023295BC bl ov02_02329578 ldmia sp!, {r3, pc} _023295BC: ldrh ip, [r0, #0xa] ldr r3, [r0, #4] mov r2, #0 str r3, [r1, ip] add r3, r1, ip str r2, [r3, #4] ldrh r2, [r0, #0xa] ldr r3, [r0, #4] add r2, r3, r2 str r1, [r2, #4] str r1, [r0, #4] ldrh r1, [r0, #8] add r1, r1, #1 strh r1, [r0, #8] ldmia sp!, {r3, pc} arm_func_end ov02_023295A4 arm_func_start ov02_023295F8 ov02_023295F8: ; 0x023295F8 stmdb sp!, {r3, lr} ldr r2, [r0] cmp r2, #0 bne _02329610 bl ov02_02329578 ldmia sp!, {r3, pc} _02329610: ldrh r3, [r0, #0xa] mov r2, #0 str r2, [r1, r3] ldr r2, [r0] add r3, r1, r3 str r2, [r3, #4] ldrh r2, [r0, #0xa] ldr r3, [r0] str r1, [r3, r2] str r1, [r0] ldrh r1, [r0, #8] add r1, r1, #1 strh r1, [r0, #8] ldmia sp!, {r3, pc} arm_func_end ov02_023295F8 arm_func_start ov02_02329648 ov02_02329648: ; 0x02329648 stmdb sp!, {r3, lr} cmp r1, #0 bne _02329660 mov r1, r2 bl ov02_023295A4 ldmia sp!, {r3, pc} _02329660: ldr r3, [r0] cmp r1, r3 bne _02329678 mov r1, r2 bl ov02_023295F8 ldmia sp!, {r3, pc} _02329678: ldrh lr, [r0, #0xa] ldr r3, [r1, lr] add ip, r2, lr str r3, [r2, lr] str r1, [ip, #4] add r3, r3, lr str r2, [r3, #4] ldrh r3, [r0, #0xa] str r2, [r1, r3] ldrh r1, [r0, #8] add r1, r1, #1 strh r1, [r0, #8] ldmia sp!, {r3, pc} arm_func_end ov02_02329648 arm_func_start ov02_023296AC ov02_023296AC: ; 0x023296AC stmdb sp!, {r3, lr} ldrh ip, [r0, #0xa] ldr r3, [r1, ip] add lr, r1, ip cmp r3, #0 ldreq r1, [lr, #4] streq r1, [r0] ldrne r2, [lr, #4] addne r1, r3, ip strne r2, [r1, #4] ldr r3, [lr, #4] cmp r3, #0 ldreq r1, [lr] streq r1, [r0, #4] ldrneh r1, [r0, #0xa] ldrne r2, [lr] strne r2, [r3, r1] mov r1, #0 str r1, [lr] str r1, [lr, #4] ldrh r1, [r0, #8] sub r1, r1, #1 strh r1, [r0, #8] ldmia sp!, {r3, pc} arm_func_end ov02_023296AC arm_func_start ov02_0232970C ov02_0232970C: ; 0x0232970C cmp r1, #0 ldreq r0, [r0] ldrneh r0, [r0, #0xa] addne r0, r1, r0 ldrne r0, [r0, #4] bx lr arm_func_end ov02_0232970C arm_func_start ov02_02329724 ov02_02329724: ; 0x02329724 cmp r1, #0 ldreq r0, [r0, #4] ldrneh r0, [r0, #0xa] ldrne r0, [r1, r0] bx lr arm_func_end ov02_02329724 arm_func_start ov02_02329738 ov02_02329738: ; 0x02329738 stmdb sp!, {r4, r5, r6, lr} mov r5, r1 mov r1, #0 mov r6, r0 bl ov02_0232970C movs r4, r0 beq _02329798 _02329754: ldr r0, [r4, #0x18] cmp r0, r5 bhi _02329784 ldr r0, [r4, #0x1c] cmp r5, r0 bhs _02329784 mov r1, r5 add r0, r4, #0xc bl ov02_02329738 cmp r0, #0 moveq r0, r4 ldmia sp!, {r4, r5, r6, pc} _02329784: mov r0, r6 mov r1, r4 bl ov02_0232970C movs r4, r0 bne _02329754 _02329798: mov r0, #0 ldmia sp!, {r4, r5, r6, pc} arm_func_end ov02_02329738 arm_func_start ov02_023297A0 ov02_023297A0: ; 0x023297A0 stmdb sp!, {r4, lr} ldr r4, _023297C4 ; =ov02_023544C4 mov r1, r0 mov r0, r4 bl ov02_02329738 cmp r0, #0 addne r4, r0, #0xc mov r0, r4 ldmia sp!, {r4, pc} .align 2, 0 _023297C4: .word ov02_023544C4 arm_func_end ov02_023297A0 arm_func_start ov02_023297C8 ov02_023297C8: ; 0x023297C8 stmdb sp!, {r4, lr} mov r4, r0 ldrh r0, [sp, #8] str r1, [r4] mov ip, #0 str r2, [r4, #0x18] bic r1, ip, #0xff and r0, r0, #0xff orr r2, r1, r0 str r3, [r4, #0x1c] add r0, r4, #0xc mov r1, #4 str r2, [r4, #0x20] bl ov02_02329560 ldr r0, _0232983C ; =ov02_023544C0 ldr r0, [r0] cmp r0, #0 bne _02329828 ldr r0, _02329840 ; =ov02_023544C4 mov r1, #4 bl ov02_02329560 ldr r0, _0232983C ; =ov02_023544C0 mov r1, #1 str r1, [r0] _02329828: mov r0, r4 bl ov02_023297A0 mov r1, r4 bl ov02_023295A4 ldmia sp!, {r4, pc} .align 2, 0 _0232983C: .word ov02_023544C0 _02329840: .word ov02_023544C4 arm_func_end ov02_023297C8 arm_func_start ov02_02329844 ov02_02329844: ; 0x02329844 stmdb sp!, {r4, lr} mov r4, r0 bl ov02_023297A0 mov r1, r4 bl ov02_023296AC ldmia sp!, {r4, pc} arm_func_end ov02_02329844 arm_func_start ov02_0232985C ov02_0232985C: ; 0x0232985C ldrh r2, [r1, #2] add r3, r1, #0x10 mov r2, r2, asr #8 and r2, r2, #0x7f mov r2, r2, lsl #0x10 sub r2, r1, r2, lsr #16 str r2, [r0] ldr r1, [r1, #4] add r1, r1, r3 str r1, [r0, #4] bx lr arm_func_end ov02_0232985C arm_func_start ov02_02329888 ov02_02329888: ; 0x02329888 ldr r2, [r1, #8] ldr r1, [r1, #0xc] cmp r2, #0 strne r1, [r2, #0xc] streq r1, [r0] cmp r1, #0 strne r2, [r1, #8] streq r2, [r0, #4] mov r0, r2 bx lr arm_func_end ov02_02329888 arm_func_start ov02_023298B0 ov02_023298B0: ; 0x023298B0 str r2, [r1, #8] cmp r2, #0 ldrne r3, [r2, #0xc] strne r1, [r2, #0xc] ldreq r3, [r0] streq r1, [r0] str r3, [r1, #0xc] cmp r3, #0 strne r1, [r3, #8] streq r1, [r0, #4] mov r0, r1 bx lr arm_func_end ov02_023298B0 arm_func_start ov02_023298E0 ov02_023298E0: ; 0x023298E0 ldr r3, [r0] mov r2, #0 strh r1, [r3] strh r2, [r3, #2] ldr r1, [r0, #4] add r0, r3, #0x10 sub r0, r1, r0 stmib r3, {r0, r2} mov r0, r3 str r2, [r3, #0xc] bx lr arm_func_end ov02_023298E0 arm_func_start ov02_0232990C ov02_0232990C: ; 0x0232990C stmdb sp!, {r3, r4, lr} sub sp, sp, #0xc mov r3, r1 mov r4, r0 str r2, [sp] ldr r1, _02329978 ; =0x45585048 add r2, r4, #0x38 bl ov02_023297C8 mov r0, #0 strh r0, [r4, #0x34] bic r0, r0, #1 strh r0, [r4, #0x36] ldr r1, [r4, #0x18] add r0, sp, #4 str r1, [sp, #4] ldr r2, [r4, #0x1c] ldr r1, _0232997C ; =0x00004652 str r2, [sp, #8] bl ov02_023298E0 str r0, [r4, #0x24] str r0, [r4, #0x28] mov r1, #0 str r1, [r4, #0x2c] mov r0, r4 str r1, [r4, #0x30] add sp, sp, #0xc ldmia sp!, {r3, r4, pc} .align 2, 0 _02329978: .word 0x45585048 _0232997C: .word 0x00004652 arm_func_end ov02_0232990C arm_func_start ov02_02329980 ov02_02329980: ; 0x02329980 stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #0x18 mov r7, r0 add r0, sp, #0x10 mov r8, r1 mov r6, r2 mov r4, r3 bl ov02_0232985C ldr r3, [sp, #0x14] sub r5, r6, #0x10 add r2, r4, r6 mov r0, r7 mov r1, r8 str r5, [sp, #0x14] str r3, [sp, #0xc] str r2, [sp, #8] bl ov02_02329888 ldr r2, [sp, #0x10] ldr r1, [sp, #0x14] mov r4, r0 sub r0, r1, r2 cmp r0, #0x14 strlo r2, [sp, #0x14] blo _02329A00 ldr r1, _02329AF8 ; =0x00004652 add r0, sp, #0x10 bl ov02_023298E0 mov r1, r0 mov r0, r7 mov r2, r4 bl ov02_023298B0 mov r4, r0 _02329A00: ldr r1, [sp, #0xc] ldr r0, [sp, #8] sub r0, r1, r0 cmp r0, #0x14 strlo r1, [sp, #8] blo _02329A34 ldr r1, _02329AF8 ; =0x00004652 add r0, sp, #8 bl ov02_023298E0 mov r1, r0 mov r0, r7 mov r2, r4 bl ov02_023298B0 _02329A34: ldr r0, [r7, #-4] ldr r1, [sp, #0x14] ldr r2, [sp, #8] and r0, r0, #0xff tst r0, #1 sub r2, r2, r1 beq _02329A58 mov r0, #0 bl ArrayFill32 _02329A58: ldr r2, [sp, #8] ldr r1, _02329AFC ; =0x00005544 add r0, sp, #0 str r5, [sp] str r2, [sp, #4] bl ov02_023298E0 mov r1, r0 ldrh r3, [r1, #2] ldrh r2, [sp, #0x30] add r0, r7, #8 bic r3, r3, #0x8000 strh r3, [r1, #2] ldrh r3, [r1, #2] mov r2, r2, lsl #0x1f orr r2, r3, r2, lsr #16 strh r2, [r1, #2] ldrh r2, [r1, #2] ldr r3, [sp, #0x14] bic r2, r2, #0x7f00 strh r2, [r1, #2] sub r2, r1, r3 mov r2, r2, lsl #0x10 mov r2, r2, lsr #0x10 ldrh r3, [r1, #2] mov r2, r2, lsl #0x19 orr r2, r3, r2, lsr #17 strh r2, [r1, #2] ldrh r2, [r1, #2] ldrh r3, [r7, #0x10] bic r2, r2, #0xff strh r2, [r1, #2] ldrh r2, [r1, #2] and r3, r3, #0xff orr r2, r2, r3 strh r2, [r1, #2] ldr r2, [r7, #0xc] bl ov02_023298B0 mov r0, r6 add sp, sp, #0x18 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _02329AF8: .word 0x00004652 _02329AFC: .word 0x00005544 arm_func_end ov02_02329980 arm_func_start ov02_02329B00 ov02_02329B00: ; 0x02329B00 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} ldrh r4, [r0, #0x36] mov r3, r1 ldr ip, [r0, #0x24] and r1, r4, #1 mov r1, r1, lsl #0x10 movs r1, r1, lsr #0x10 mov r1, #0 moveq r6, #1 movne r6, #0 mov r4, r1 cmp ip, #0 sub lr, r1, #1 beq _02329B90 sub r2, r2, #1 mvn r5, r2 _02329B40: add r8, ip, #0x10 add r7, r2, r8 and sb, r5, r7 sub r7, sb, r8 ldr r8, [ip, #4] add r7, r3, r7 cmp r8, r7 blo _02329B84 cmp lr, r8 bls _02329B84 mov r1, ip mov lr, r8 mov r4, sb cmp r6, #0 bne _02329B90 cmp r8, r3 beq _02329B90 _02329B84: ldr ip, [ip, #0xc] cmp ip, #0 bne _02329B40 _02329B90: cmp r1, #0 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} mov r5, #0 mov r2, r4 add r0, r0, #0x24 str r5, [sp] bl ov02_02329980 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} arm_func_end ov02_02329B00 arm_func_start ov02_02329BB4 ov02_02329BB4: ; 0x02329BB4 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} ldrh r4, [r0, #0x36] mov r3, r1 ldr ip, [r0, #0x28] and r1, r4, #1 mov r1, r1, lsl #0x10 movs r1, r1, lsr #0x10 mov r1, #0 moveq r5, #1 movne r5, #0 mov r4, r1 cmp ip, #0 sub lr, r1, #1 beq _02329C40 sub r2, r2, #1 mvn r2, r2 _02329BF4: ldr r8, [ip, #4] add sb, ip, #0x10 add r6, r8, sb sub r6, r6, r3 and r7, r2, r6 subs r6, r7, sb bmi _02329C34 cmp lr, r8 bls _02329C34 mov r1, ip mov lr, r8 mov r4, r7 cmp r5, #0 bne _02329C40 cmp r8, r3 beq _02329C40 _02329C34: ldr ip, [ip, #8] cmp ip, #0 bne _02329BF4 _02329C40: cmp r1, #0 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} mov r5, #1 mov r2, r4 add r0, r0, #0x24 str r5, [sp] bl ov02_02329980 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} arm_func_end ov02_02329BB4 arm_func_start ov02_02329C64 ov02_02329C64: ; 0x02329C64 stmdb sp!, {r4, r5, r6, lr} sub sp, sp, #8 mov r5, r1 ldr r2, [r5] ldr r1, [r5, #4] mov r6, r0 str r2, [sp] str r1, [sp, #4] ldr r1, [r6] mov r4, #0 cmp r1, #0 beq _02329CD8 ldr r0, [r5] _02329C98: cmp r1, r0 movlo r4, r1 blo _02329CCC ldr r0, [r5, #4] cmp r1, r0 bne _02329CD8 ldr r2, [r1, #4] add r0, r1, #0x10 add r2, r2, r0 mov r0, r6 str r2, [sp, #4] bl ov02_02329888 b _02329CD8 _02329CCC: ldr r1, [r1, #0xc] cmp r1, #0 bne _02329C98 _02329CD8: cmp r4, #0 beq _02329D0C ldr r2, [r4, #4] add r1, r4, #0x10 ldr r0, [r5] add r1, r2, r1 cmp r1, r0 bne _02329D0C mov r0, r6 mov r1, r4 str r4, [sp] bl ov02_02329888 mov r4, r0 _02329D0C: ldr r1, [sp, #4] ldr r0, [sp] sub r0, r1, r0 cmp r0, #0x10 addlo sp, sp, #8 movlo r0, #0 ldmloia sp!, {r4, r5, r6, pc} ldr r1, _02329D50 ; =0x00004652 add r0, sp, #0 bl ov02_023298E0 mov r1, r0 mov r0, r6 mov r2, r4 bl ov02_023298B0 mov r0, #1 add sp, sp, #8 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _02329D50: .word 0x00004652 arm_func_end ov02_02329C64 arm_func_start ov02_02329D54 ov02_02329D54: ; 0x02329D54 stmdb sp!, {r3, lr} add r1, r1, r0 add r0, r0, #3 bic r1, r1, #3 bic r0, r0, #3 cmp r0, r1 bhi _02329D7C sub r3, r1, r0 cmp r3, #0x4c bhs _02329D84 _02329D7C: mov r0, #0 ldmia sp!, {r3, pc} _02329D84: bl ov02_0232990C ldmia sp!, {r3, pc} arm_func_end ov02_02329D54 arm_func_start ov02_02329D8C ov02_02329D8C: ; 0x02329D8C ldr ip, _02329D94 ; =ov02_02329844 bx ip .align 2, 0 _02329D94: .word ov02_02329844 arm_func_end ov02_02329D8C arm_func_start ov02_02329D98 ov02_02329D98: ; 0x02329D98 stmdb sp!, {r3, lr} cmp r1, #0 moveq r1, #1 add r1, r1, #3 cmp r2, #0 bic r1, r1, #3 blt _02329DBC bl ov02_02329B00 ldmia sp!, {r3, pc} _02329DBC: rsb r2, r2, #0 bl ov02_02329BB4 ldmia sp!, {r3, pc} arm_func_end ov02_02329D98 arm_func_start ov02_02329DC8 ov02_02329DC8: ; 0x02329DC8 stmdb sp!, {r3, r4, r5, lr} sub sp, sp, #8 sub r4, r1, #0x10 mov r5, r0 add r0, sp, #0 mov r1, r4 bl ov02_0232985C mov r1, r4 add r0, r5, #0x2c bl ov02_02329888 add r1, sp, #0 add r0, r5, #0x24 bl ov02_02329C64 add sp, sp, #8 ldmia sp!, {r3, r4, r5, pc} arm_func_end ov02_02329DC8 arm_func_start ov02_02329E04 ov02_02329E04: ; 0x02329E04 stmdb sp!, {r3, r4, lr} sub sp, sp, #4 mov r3, r1 mov r4, r0 str r2, [sp] ldr r1, _02329E48 ; =0x46524D48 add r2, r4, #0x30 bl ov02_023297C8 ldr r0, [r4, #0x18] mov r1, #0 str r0, [r4, #0x24] ldr r2, [r4, #0x1c] mov r0, r4 str r2, [r4, #0x28] str r1, [r4, #0x2c] add sp, sp, #4 ldmia sp!, {r3, r4, pc} .align 2, 0 _02329E48: .word 0x46524D48 arm_func_end ov02_02329E04 arm_func_start ov02_02329E4C ov02_02329E4C: ; 0x02329E4C stmdb sp!, {r4, r5, r6, lr} mov r4, r0 ldr r3, [r4] sub r0, r2, #1 mvn r2, r0 add r0, r0, r3 and r5, r2, r0 ldr r0, [r4, #4] add r6, r1, r5 cmp r6, r0 movhi r0, #0 ldmhiia sp!, {r4, r5, r6, pc} ldr r0, [r4, #-4] sub r2, r6, r3 and r0, r0, #0xff tst r0, #1 beq _02329E9C mov r1, r3 mov r0, #0 bl ArrayFill32 _02329E9C: mov r0, r5 str r6, [r4] ldmia sp!, {r4, r5, r6, pc} arm_func_end ov02_02329E4C arm_func_start ov02_02329EA8 ov02_02329EA8: ; 0x02329EA8 stmdb sp!, {r3, r4, r5, lr} mov r4, r0 ldr r3, [r4, #4] sub r0, r2, #1 mvn r2, r0 sub r1, r3, r1 ldr r0, [r4] and r5, r2, r1 cmp r5, r0 movlo r0, #0 ldmloia sp!, {r3, r4, r5, pc} ldr r0, [r4, #-4] sub r2, r3, r5 and r0, r0, #0xff tst r0, #1 beq _02329EF4 mov r1, r5 mov r0, #0 bl ArrayFill32 _02329EF4: mov r0, r5 str r5, [r4, #4] ldmia sp!, {r3, r4, r5, pc} arm_func_end ov02_02329EA8 arm_func_start ov02_02329F00 ov02_02329F00: ; 0x02329F00 ldr r2, [r0, #0x18] mov r1, #0 str r2, [r0, #0x24] str r1, [r0, #0x2c] bx lr arm_func_end ov02_02329F00 arm_func_start ov02_02329F14 ov02_02329F14: ; 0x02329F14 ldr r2, [r0, #0x2c] cmp r2, #0 beq _02329F34 _02329F20: ldr r1, [r0, #0x1c] str r1, [r2, #8] ldr r2, [r2, #0xc] cmp r2, #0 bne _02329F20 _02329F34: ldr r1, [r0, #0x1c] str r1, [r0, #0x28] bx lr arm_func_end ov02_02329F14 arm_func_start ov02_02329F40 ov02_02329F40: ; 0x02329F40 stmdb sp!, {r3, lr} add r1, r1, r0 add r0, r0, #3 bic r1, r1, #3 bic r0, r0, #3 cmp r0, r1 bhi _02329F68 sub r3, r1, r0 cmp r3, #0x30 bhs _02329F70 _02329F68: mov r0, #0 ldmia sp!, {r3, pc} _02329F70: bl ov02_02329E04 ldmia sp!, {r3, pc} arm_func_end ov02_02329F40 arm_func_start ov02_02329F78 ov02_02329F78: ; 0x02329F78 ldr ip, _02329F80 ; =ov02_02329844 bx ip .align 2, 0 _02329F80: .word ov02_02329844 arm_func_end ov02_02329F78 arm_func_start ov02_02329F84 ov02_02329F84: ; 0x02329F84 stmdb sp!, {r3, lr} cmp r1, #0 moveq r1, #1 add r1, r1, #3 cmp r2, #0 bic r1, r1, #3 add r0, r0, #0x24 blt _02329FAC bl ov02_02329E4C ldmia sp!, {r3, pc} _02329FAC: rsb r2, r2, #0 bl ov02_02329EA8 ldmia sp!, {r3, pc} arm_func_end ov02_02329F84 arm_func_start ov02_02329FB8 ov02_02329FB8: ; 0x02329FB8 stmdb sp!, {r3, r4, r5, lr} mov r4, r1 mov r5, r0 tst r4, #1 beq _02329FD0 bl ov02_02329F00 _02329FD0: tst r4, #2 ldmeqia sp!, {r3, r4, r5, pc} mov r0, r5 bl ov02_02329F14 ldmia sp!, {r3, r4, r5, pc} arm_func_end ov02_02329FB8 arm_func_start ov02_02329FE4 ov02_02329FE4: ; 0x02329FE4 ldrh r2, [r0, #0xc] ldrh ip, [r0, #0xe] mov r3, #0 add r0, r0, r2 cmp ip, #0 bls _0232A024 _02329FFC: ldr r2, [r0] cmp r2, r1 bxeq lr add r2, r3, #1 mov r2, r2, lsl #0x10 ldr r3, [r0, #4] cmp ip, r2, lsr #16 add r0, r0, r3 mov r3, r2, lsr #0x10 bhi _02329FFC _0232A024: mov r0, #0 bx lr arm_func_end ov02_02329FE4 arm_func_start ov02_0232A02C ov02_0232A02C: ; 0x0232A02C stmdb sp!, {r3, lr} ldrh r3, [r0, #4] ldr r2, _0232A0F0 ; =0x0000FFFF cmp r3, #0 beq _0232A054 cmp r3, #1 beq _0232A070 cmp r3, #2 beq _0232A084 b _0232A0E8 _0232A054: ldrh r2, [r0] ldrh r3, [r0, #0xc] sub r0, r1, r2 add r0, r3, r0 mov r0, r0, lsl #0x10 mov r2, r0, lsr #0x10 b _0232A0E8 _0232A070: ldrh r2, [r0] sub r1, r1, r2 add r0, r0, r1, lsl #1 ldrh r2, [r0, #0xc] b _0232A0E8 _0232A084: ldrh r3, [r0, #0xc] add ip, r0, #0xe sub r0, r3, #1 add lr, ip, r0, lsl #2 cmp ip, lr bhi _0232A0E8 _0232A09C: sub r3, lr, ip mov r0, r3, asr #1 add r0, r3, r0, lsr #30 mov r0, r0, asr #2 add r0, r0, r0, lsr #31 mov r3, r0, asr #1 mov r0, r3, lsl #2 ldrh r0, [ip, r0] add r3, ip, r3, lsl #2 cmp r0, r1 addlo ip, r3, #4 blo _0232A0E0 cmp r1, r0 sublo lr, r3, #4 blo _0232A0E0 ldrh r2, [r3, #2] b _0232A0E8 _0232A0E0: cmp ip, lr bls _0232A09C _0232A0E8: mov r0, r2 ldmia sp!, {r3, pc} .align 2, 0 _0232A0F0: .word 0x0000FFFF arm_func_end ov02_0232A02C arm_func_start ov02_0232A0F4 ov02_0232A0F4: ; 0x0232A0F4 stmdb sp!, {r4, lr} mov r4, r0 mov r0, r1 mov r1, r4 bl ov02_0232BA74 ldr r0, _0232A114 ; =ov02_0232BD04 str r0, [r4, #4] ldmia sp!, {r4, pc} .align 2, 0 _0232A114: .word ov02_0232BD04 arm_func_end ov02_0232A0F4 arm_func_start ov02_0232A118 ov02_0232A118: ; 0x0232A118 stmdb sp!, {r3, lr} ldr r0, [r0] ldr r0, [r0, #0x10] cmp r0, #0 beq _0232A154 _0232A12C: ldrh r2, [r0] cmp r2, r1 ldrlsh r2, [r0, #2] cmpls r1, r2 bhi _0232A148 bl ov02_0232A02C ldmia sp!, {r3, pc} _0232A148: ldr r0, [r0, #8] cmp r0, #0 bne _0232A12C _0232A154: ldr r0, _0232A15C ; =0x0000FFFF ldmia sp!, {r3, pc} .align 2, 0 _0232A15C: .word 0x0000FFFF arm_func_end ov02_0232A118 arm_func_start ov02_0232A160 ov02_0232A160: ; 0x0232A160 ldr ip, [r0] ldr r3, [ip, #0xc] cmp r3, #0 beq _0232A1A4 _0232A170: ldrh r2, [r3] cmp r2, r1 ldrlsh r0, [r3, #2] cmpls r1, r0 bhi _0232A198 sub r0, r1, r2 add r1, r3, #8 add r0, r0, r0, lsl #1 add r0, r1, r0 bx lr _0232A198: ldr r3, [r3, #4] cmp r3, #0 bne _0232A170 _0232A1A4: add r0, ip, #4 bx lr arm_func_end ov02_0232A160 arm_func_start ov02_0232A1AC ov02_0232A1AC: ; 0x0232A1AC stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, lr} sub sp, sp, #4 mov r8, r0 str r2, [sp] ldr r5, [r8, #4] add r0, sp, #0 mov r7, r1 mov r6, r3 mov r4, #0 blx r5 movs r1, r0 beq _0232A228 ldr sb, _0232A254 ; =0x0000FFFF add sl, sp, #0 _0232A1E4: cmp r1, #0xa beq _0232A228 mov r0, r8 bl ov02_0232A118 mov r1, r0 cmp r1, sb ldreq r0, [r8] ldreqh r1, [r0, #2] mov r0, r8 bl ov02_0232A160 ldrsb r1, [r0, #2] mov r0, sl add r1, r7, r1 add r4, r4, r1 blx r5 movs r1, r0 bne _0232A1E4 _0232A228: cmp r6, #0 beq _0232A240 cmp r1, #0xa ldreq r0, [sp] movne r0, #0 str r0, [r6] _0232A240: cmp r4, #0 subgt r4, r4, r7 mov r0, r4 add sp, sp, #4 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, pc} .align 2, 0 _0232A254: .word 0x0000FFFF arm_func_end ov02_0232A1AC arm_func_start ov02_0232A258 ov02_0232A258: ; 0x0232A258 stmdb sp!, {r3, r4, r5, r6, r7, r8, lr} sub sp, sp, #0xc add r4, sp, #0 mov r3, #0 mov r8, r0 str r2, [sp, #8] str r3, [r4] str r3, [r4, #4] ldr r7, [r8, #4] add r0, sp, #8 mov r4, r1 mov r6, #1 blx r7 cmp r0, #0 beq _0232A2B0 add r5, sp, #8 _0232A298: cmp r0, #0xa mov r0, r5 addeq r6, r6, #1 blx r7 cmp r0, #0 bne _0232A298 _0232A2B0: ldr r0, [r8] ldrsb r0, [r0, #1] add r0, r4, r0 mul r0, r6, r0 sub r0, r0, r4 add sp, sp, #0xc ldmia sp!, {r3, r4, r5, r6, r7, r8, pc} arm_func_end ov02_0232A258 arm_func_start ov02_0232A2CC ov02_0232A2CC: ; 0x0232A2CC stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} sub sp, sp, #8 mov r6, r2 ldr r2, [sp, #0x28] add sb, sp, #0 mov r4, #0 mov r8, r0 mov r7, r1 mov r5, r3 str r4, [sb] str r4, [sb, #4] cmp r2, #0 mov r4, #1 beq _0232A334 add sb, sp, #0x28 _0232A308: mov r0, r7 mov r1, r6 mov r3, sb bl ov02_0232A1AC ldr r1, [sp] ldr r2, [sp, #0x28] cmp r0, r1 strgt r0, [sp] add r4, r4, #1 cmp r2, #0 bne _0232A308 _0232A334: ldr r0, [r7] sub r2, r4, #1 ldrsb r1, [r0, #1] ldr r0, [sp] add r1, r5, r1 mul r1, r2, r1 sub r1, r1, r5 str r1, [sp, #4] stmia r8, {r0, r1} add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} arm_func_end ov02_0232A2CC arm_func_start ov02_0232A360 ov02_0232A360: ; 0x0232A360 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} mov sl, #3 ldr r7, [sp, #0x20] ldr r6, [sp, #0x24] ldr r8, _0232A454 ; =ov02_0234FBF8 mov r5, #0 mov sb, sl mvn r4, #0 _0232A380: and ip, r3, r4, lsl r6 cmp ip, r1 and lr, r2, r4, lsl r7 bhi _0232A3C4 mla r5, r2, ip, r5 cmp lr, r0 bhi _0232A3B4 sub r3, r3, ip mla r5, lr, r3, r5 sub r0, r0, lr sub r1, r1, ip sub r2, r2, lr b _0232A40C _0232A3B4: mov r2, lr sub r1, r1, ip sub r3, r3, ip b _0232A40C _0232A3C4: cmp lr, r0 mvn r3, r4, lsl r6 bhi _0232A3E4 mla r5, lr, ip, r5 mov r3, ip sub r0, r0, lr sub r2, r2, lr b _0232A40C _0232A3E4: and r2, r1, r4, lsl r6 mla r5, lr, r2, r5 and r2, r0, r4, lsl r7 mvn r4, r4, lsl r7 add r2, r5, r2, lsl r6 and r1, r1, r3 add r1, r2, r1, lsl r7 and r0, r0, r4 add r0, r1, r0 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} _0232A40C: cmp r2, #8 movge r6, sl movlt r6, r2 clzlt r6, r6 rsblt r6, r6, #0x1f cmp r3, #8 movge r7, sb movlt r7, r3 clzlt r7, r7 rsblt r7, r7, #0x1f add r7, r8, r7, lsl #3 add ip, r7, r6, lsl #1 ldrb r7, [r7, r6, lsl #1] ldrb r6, [ip, #1] str r7, [sp, #0x20] str r6, [sp, #0x24] b _0232A380 _0232A450: ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} .align 2, 0 _0232A454: .word ov02_0234FBF8 arm_func_end ov02_0232A360 arm_func_start ov02_0232A458 ov02_0232A458: ; 0x0232A458 ldrb r3, [r0, #1] ldr r2, _0232A470 ; =ov02_0234FC18 ldrb r1, [r0] add r0, r2, r3, lsl #4 ldr r0, [r0, r1, lsl #2] bx lr .align 2, 0 _0232A470: .word ov02_0234FC18 arm_func_end ov02_0232A458 arm_func_start ov02_0232A474 ov02_0232A474: ; 0x0232A474 stmdb sp!, {r3, r4, r5, lr} cmp r3, #8 ldreq r4, [sp, #0x10] mov ip, r0 ldr r0, [sp, #0x14] cmpeq r4, #8 bne _0232A4A4 ldr r2, [sp, #0x18] mov r1, ip mov r2, r2, lsl #3 bl ArrayFill32Fast ldmia sp!, {r3, r4, r5, pc} _0232A4A4: ldr r4, [sp, #0x18] cmp r4, #4 bne _0232A504 mov r5, r1, lsl #2 add r4, r5, r3, lsl #2 mvn r3, #0 rsb r4, r4, #0x20 mov r3, r3, lsr r5 add r1, r4, r1, lsl #2 mov r3, r3, lsl r1 ldr r1, [sp, #0x10] add r2, ip, r2, lsl #2 add r5, r2, r1, lsl #2 and r1, r0, r3, lsr r4 mvn r3, r3, lsr r4 cmp r2, r5 ldmhsia sp!, {r3, r4, r5, pc} _0232A4E8: ldr r0, [r2] and r0, r0, r3 orr r0, r1, r0 str r0, [r2], #4 cmp r2, r5 blo _0232A4E8 ldmia sp!, {r3, r4, r5, pc} _0232A504: mov r1, r1, lsl #3 mvn r4, #0 add r3, r1, r3, lsl #3 rsb r3, r3, #0x40 mov r5, r4, lsr r1 cmp r3, #0x20 movlo r5, r5, lsl r1 blo _0232A534 sub lr, r3, #0x20 add r4, r1, lr mov r4, r5, lsl r4 mov r5, r4, lsr lr _0232A534: mvn lr, #0 mov r4, lr, lsl r3 cmp r1, #0x20 movlo r3, r4, lsr r3 blo _0232A558 sub lr, r1, #0x20 add r1, lr, r3 mov r1, r4, lsr r1 mov r3, r1, lsl lr _0232A558: ldr r1, [sp, #0x10] add r4, ip, r2, lsl #3 add ip, r4, r1, lsl #3 and r1, r0, r5 and r2, r0, r3 mvn r5, r5 mvn r3, r3 cmp r4, ip ldmhsia sp!, {r3, r4, r5, pc} _0232A57C: ldr r0, [r4] and r0, r0, r5 orr r0, r1, r0 str r0, [r4] ldr r0, [r4, #4] and r0, r0, r3 orr r0, r2, r0 str r0, [r4, #4] add r4, r4, #8 cmp r4, ip blo _0232A57C ldmia sp!, {r3, r4, r5, pc} arm_func_end ov02_0232A474 arm_func_start ov02_0232A5AC ov02_0232A5AC: ; 0x0232A5AC stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x28 ldr r5, [r0, #8] ldr r4, [r0, #0xc] cmp r5, #0 strge r5, [sp] movlt r1, #0 strlt r1, [sp] ldr r1, [r0, #0x10] cmp r4, #0 add sl, r5, r1 ldr r1, [r0, #0x14] movge r2, r4 movlt r2, #0 cmp sl, #8 add r3, r4, r1 movge sl, #8 cmp r3, #8 movge r3, #8 cmp r4, #0 movgt r4, #0 cmp r5, #0 ldr r7, [r0, #0x20] movgt r5, #0 rsb r1, r4, #0 mul r6, sl, r7 ldr r8, [r0, #0x1c] rsb r4, r5, #0 mul sb, r8, r4 ldr r4, [r0, #0x18] mov sl, r6 str r4, [sp, #0x10] ldr r4, [sp] cmp r7, #4 mul r5, r4, r7 ldr r4, [sp, #0x10] str r5, [sp] mla r4, r1, r4, sb ldr r1, [r0, #4] str r1, [sp, #0x14] ldr r1, [r0] bne _0232A71C ldr r7, [r0, #0x24] add r0, r1, r2, lsl #2 str r0, [sp, #0xc] add r0, r1, r3, lsl #2 ldr r1, [sp, #0xc] str r0, [sp, #8] cmp r1, r0 addhs sp, sp, #0x28 ldmhsia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} mov fp, #0xf add r5, sp, #0x20 _0232A680: ldr r0, [sp, #0xc] mov r1, r4, lsr #0x1f ldr sb, [r0] ldr r0, [sp, #0x14] rsb r2, r1, r4, lsl #29 add r0, r0, r4, lsr #3 str r0, [sp, #0x20] mov r0, #0 strb r0, [sp, #0x24] strb r0, [sp, #0x25] mov r0, r5 add r1, r1, r2, ror #29 bl ov02_0232BCA4 ldr r6, [sp] mov r0, r6 cmp r0, sl bhs _0232A6F4 _0232A6C4: mov r0, r5 mov r1, r8 bl ov02_0232BCA4 cmp r0, #0 beq _0232A6E8 add r0, r7, r0 mvn r1, fp, lsl r6 and r1, sb, r1 orr sb, r1, r0, lsl r6 _0232A6E8: add r6, r6, #4 cmp r6, sl blo _0232A6C4 _0232A6F4: ldr r1, [sp, #0xc] ldr r0, [sp, #8] str sb, [r1], #4 cmp r1, r0 ldr r0, [sp, #0x10] str r1, [sp, #0xc] add r4, r4, r0 blo _0232A680 add sp, sp, #0x28 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} _0232A71C: ldr r5, [r0, #0x24] add r0, r1, r3, lsl #3 add fp, r1, r2, lsl #3 str r0, [sp, #4] cmp fp, r0 addhs sp, sp, #0x28 ldmhsia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} _0232A738: mov r1, r4, lsr #0x1f rsb r0, r1, r4, lsl #29 add r1, r1, r0, ror #29 ldr r0, [sp, #0x14] ldmia fp, {r6, r7} mov r2, #0 add r0, r0, r4, lsr #3 str r0, [sp, #0x18] add r0, sp, #0x18 strb r2, [sp, #0x1c] strb r2, [sp, #0x1d] bl ov02_0232BCA4 ldr sb, [sp] mov r0, sb cmp r0, sl bhs _0232A7C8 _0232A778: add r0, sp, #0x18 mov r1, r8 bl ov02_0232BCA4 cmp r0, #0 beq _0232A7BC add r1, r5, r0 cmp sb, #0x20 mov r0, #0xff bhs _0232A7AC mvn r0, r0, lsl sb and r0, r6, r0 orr r6, r0, r1, lsl sb b _0232A7BC _0232A7AC: sub r2, sb, #0x20 mvn r0, r0, lsl r2 and r0, r7, r0 orr r7, r0, r1, lsl r2 _0232A7BC: add sb, sb, #8 cmp sb, sl blo _0232A778 _0232A7C8: ldr r0, [sp, #4] stmia fp, {r6, r7} add fp, fp, #8 cmp fp, r0 ldr r0, [sp, #0x10] add r4, r4, r0 blo _0232A738 add sp, sp, #0x28 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} arm_func_end ov02_0232A5AC arm_func_start ov02_0232A7EC ov02_0232A7EC: ; 0x0232A7EC stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x2c ldr r4, [sp, #0x54] ldrb r6, [r0, #0xc] str r4, [sp, #0x54] ldr r4, [r4] ldr r5, [r1] mov r7, r6, lsl #6 ldrb r4, [r4, #1] mov r6, r7, asr #2 add r6, r7, r6, lsr #29 cmp r4, #0 ldr r5, [r5, #8] mov sl, r2 mov sb, r3 mov r8, r6, asr #3 addeq sp, sp, #0x2c ldmib r0, {fp, ip} ldr lr, [r0] ldrb r2, [r5, #1] ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} adds r7, sl, r4 addmi sp, sp, #0x2c ldmmiia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} adds r3, sb, r2 addmi sp, sp, #0x2c ldmmiia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} cmp sl, #0 movle r5, #0 movgt r5, sl, lsr #3 cmp sb, #0 movle r6, #0 add r7, r7, #7 movgt r6, sb, lsr #3 cmp fp, r7, lsr #3 mov r7, r7, lsr #3 add r3, r3, #7 movls r7, fp mov fp, r3, lsr #3 cmp ip, r3, lsr #3 movls fp, ip subs r3, r7, r5 sub fp, fp, r6 addmi sp, sp, #0x2c ldmmiia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} cmp fp, #0 addlt sp, sp, #0x2c ldmltia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} ldr r7, [r0, #0x10] cmp sl, #0 mla r6, r7, r6, r5 sub r5, r7, r3 mul r5, r8, r5 str r5, [sp] ldr r5, [sp, #0x54] mla r7, r8, r6, lr ldr ip, [r5, #4] ldr r6, [sp, #0x50] str ip, [sp, #8] sub r5, r6, #1 str r4, [sp, #0x14] str r5, [sp, #0x28] str r2, [sp, #0x18] ldr r2, [r1] andge sl, sl, #7 ldr r2, [r2, #8] cmp sb, #0 ldrb r2, [r2, #6] andge sb, sb, #7 sub fp, sb, fp, lsl #3 str r2, [sp, #0x20] ldrb r0, [r0, #0xc] cmp sb, fp sub r6, sl, r3, lsl #3 str r0, [sp, #0x24] ldr r0, [r1] ldr r0, [r0, #8] ldrb r0, [r0] smulbb r0, r2, r0 str r0, [sp, #0x1c] addle sp, sp, #0x2c ldmleia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} add r4, sp, #4 _0232A938: mov r5, sl str sb, [sp, #0x10] cmp sl, r6 ble _0232A968 _0232A948: mov r0, r4 str r7, [sp, #4] str r5, [sp, #0xc] bl ov02_0232A5AC sub r5, r5, #8 cmp r5, r6 add r7, r7, r8 bgt _0232A948 _0232A968: ldr r0, [sp] sub sb, sb, #8 cmp sb, fp add r7, r7, r0 bgt _0232A938 add sp, sp, #0x2c ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} arm_func_end ov02_0232A7EC arm_func_start ov02_0232A984 ov02_0232A984: ; 0x0232A984 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x4c ldr r6, [sp, #0x74] ldrb r5, [r0, #0xc] ldr r4, [r6] ldr r7, [r1] mov r8, r5, lsl #6 ldrb r4, [r4, #1] mov r5, r8, asr #2 add r5, r8, r5, lsr #29 ldr r7, [r7, #8] str r2, [sp, #8] str r3, [sp, #0xc] cmp r4, #0 mov sb, r5, asr #3 addeq sp, sp, #0x4c ldmib r0, {r3, r5} ldrb r2, [r7, #1] ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} ldr r7, [sp, #8] adds r7, r7, r4 addmi sp, sp, #0x4c ldmmiia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} ldr r8, [sp, #0xc] adds r8, r8, r2 addmi sp, sp, #0x4c ldmmiia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} ldr sl, [sp, #8] add r7, r7, #7 cmp sl, #0 movle sl, #0 strle sl, [sp, #0x10] movgt sl, sl, lsr #3 strgt sl, [sp, #0x10] ldr sl, [sp, #0xc] cmp sl, #0 movle sl, #0 movgt sl, sl, lsr #3 cmp r3, r7, lsr #3 mov r7, r7, lsr #3 movls r7, r3 add r3, r8, #7 cmp r5, r3, lsr #3 mov r8, r3, lsr #3 ldr r3, [sp, #0x10] movls r8, r5 subs r5, r7, r3 sub r7, r8, sl addmi sp, sp, #0x4c ldmmiia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} cmp r7, #0 addlt sp, sp, #0x4c ldmltia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} ldr r3, [sp, #8] ldr fp, [r0] cmp r3, #0 andge r3, r3, #7 strge r3, [sp, #8] ldr r3, [sp, #0xc] ldr r8, [sp, #8] ldr r6, [r6, #4] cmp r3, #0 andge r3, r3, #7 strge r3, [sp, #0xc] ldr r3, [sp, #0x70] sub r5, r8, r5, lsl #3 ldr r8, [sp, #0xc] sub r3, r3, #1 str r3, [sp, #0x48] sub r7, r8, r7, lsl #3 str r2, [sp, #0x38] str r6, [sp, #0x28] str r4, [sp, #0x34] ldr r4, [r1] mov r3, r8 mov r2, r7 cmp r3, r2 ldr r2, [r4, #8] str r7, [sp, #0x1c] ldrb r3, [r2, #6] str r3, [sp, #0x40] ldrb r2, [r0, #0xc] str r2, [sp, #0x44] ldr r1, [r1] ldr r1, [r1, #8] ldrb r1, [r1] smulbb r1, r3, r1 str r1, [sp, #0x3c] ldr r3, [r0, #0x10] ldr r1, [r0, #4] ldr r0, [r0, #8] str r1, [sp, #0x14] mov r2, r3, lsl #0x18 mov r1, r3, lsl #0x10 str r3, [sp, #0x20] str r0, [sp, #0x18] mov r8, r2, lsr #0x18 mov r7, r1, lsr #0x18 addle sp, sp, #0x4c ldmleia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} _0232AB14: ldr r0, [sp, #0xc] ldr r6, [sp, #0x10] str r0, [sp, #0x30] ldr r0, [sp, #8] cmp r0, r5 mov r4, r0 ble _0232AB70 _0232AB30: ldr r2, [sp, #0x14] str r8, [sp] ldr r3, [sp, #0x18] mov r0, r6 mov r1, sl str r7, [sp, #4] bl ov02_0232A360 mla r1, r0, sb, fp add r0, sp, #0x24 str r4, [sp, #0x2c] str r1, [sp, #0x24] bl ov02_0232A5AC sub r4, r4, #8 add r6, r6, #1 cmp r4, r5 bgt _0232AB30 _0232AB70: ldr r0, [sp, #0xc] add sl, sl, #1 sub r1, r0, #8 ldr r0, [sp, #0x1c] str r1, [sp, #0xc] cmp r1, r0 bgt _0232AB14 add sp, sp, #0x4c ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} arm_func_end ov02_0232A984 arm_func_start ov02_0232AB94 ov02_0232AB94: ; 0x0232AB94 stmdb sp!, {r3, lr} mov r3, r0 ldrb r2, [r3, #0xc] ldr ip, [r3, #4] cmp r2, #4 orreq r0, r1, r1, lsl #4 orreq r0, r0, r0, lsl #8 orrne r0, r1, r1, lsl #8 orr r1, r0, r0, lsl #16 ldr r0, [r3, #8] mov r2, r2, lsl #6 mul lr, ip, r0 mov r0, r2, asr #2 add r0, r2, r0, lsr #29 mov r2, r0, asr #3 mov r0, r1 mul r2, lr, r2 ldr r1, [r3] bl ArrayFill32Fast ldmia sp!, {r3, pc} arm_func_end ov02_0232AB94 arm_func_start ov02_0232ABE4 ov02_0232ABE4: ; 0x0232ABE4 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} mov r7, r0 ldrb r2, [r7, #0xc] mov r6, r1 ldr sb, [r7] cmp r2, #4 orreq r0, r6, r6, lsl #4 orreq r0, r0, r0, lsl #8 orrne r0, r6, r6, lsl #8 mov r1, r2, lsl #6 orr r6, r0, r0, lsl #16 mov r0, r1, asr #2 add r0, r1, r0, lsr #29 mov r3, r0, asr #3 ldr r2, [r7, #0x10] ldr r1, [r7, #4] ldr r0, [r7, #8] mul r5, r3, r2 mul r4, r3, r1 mov r8, #0 cmp r0, #0 ldmleia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} _0232AC3C: mov r0, r6 mov r1, sb mov r2, r4 bl ArrayFill32Fast ldr r0, [r7, #8] add r8, r8, #1 cmp r8, r0 add sb, sb, r5 blt _0232AC3C ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} arm_func_end ov02_0232ABE4 arm_func_start ov02_0232AC64 ov02_0232AC64: ; 0x0232AC64 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x30 ldr r4, [sp, #0x58] mov sb, r2 ldrb fp, [r0, #0xc] mov sl, r1 add r1, sb, r4 str r1, [sp, #0x28] ldr r2, [sp, #0x5c] mov r1, r3 add r1, r1, r2 cmp fp, #4 str r1, [sp, #0x24] orreq r1, sl, sl, lsl #4 orreq r1, r1, r1, lsl #8 orrne r1, sl, sl, lsl #8 str r3, [sp, #0xc] orr sl, r1, r1, lsl #16 ldr r1, [sp, #0xc] mov r6, fp, lsl #6 bic r1, r1, #7 mov r4, r6, asr #2 mov r2, r1, asr #2 str r1, [sp, #0x2c] add r1, r1, r2, lsr #29 ldr r2, [r0, #0x10] mov r3, r1, asr #3 mul r1, r3, r2 bic r3, sb, #7 mov r5, r3, asr #2 add r4, r6, r4, lsr #29 str r3, [sp, #0x18] add r5, r3, r5, lsr #29 mov r3, r4, asr #3 str r3, [sp, #0x14] add r4, r1, r5, asr #3 ldr r3, [sp, #0x24] ldr r5, [r0] ldr r1, [sp, #0x14] ldr r0, [sp, #0x28] mla r4, r1, r4, r5 add r3, r3, #7 bic r1, r3, #7 str r1, [sp, #0x20] ldr r1, [sp, #0x14] add r0, r0, #7 mul r1, r2, r1 str r1, [sp, #0x10] ldr r2, [sp, #0x2c] ldr r1, [sp, #0x20] str r4, [sp, #0x1c] cmp r2, r1 bic r6, r0, #7 addge sp, sp, #0x30 ldmgeia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} _0232AD40: ldr r1, [sp, #0x2c] ldr r0, [sp, #0xc] cmp r1, r0 movge r8, #0 bge _0232AD60 mov r1, r0 ldr r0, [sp, #0x2c] sub r8, r1, r0 _0232AD60: ldr r1, [sp, #0x24] ldr r0, [sp, #0x2c] ldr r7, [sp, #0x1c] sub r0, r1, r0 cmp r0, #8 movgt r0, #8 sub r5, r0, r8 ldr r0, [sp, #0x18] cmp r0, r6 mov r4, r0 bge _0232ADD0 _0232AD8C: ldr r0, [sp, #0x28] cmp r4, sb sublt r1, sb, r4 sub r0, r0, r4 movge r1, #0 cmp r0, #8 movgt r0, #8 sub r3, r0, r1 mov r0, r7 mov r2, r8 stmia sp, {r5, sl, fp} bl ov02_0232A474 ldr r0, [sp, #0x14] add r4, r4, #8 add r7, r7, r0 cmp r4, r6 blt _0232AD8C _0232ADD0: ldr r1, [sp, #0x1c] ldr r0, [sp, #0x10] add r0, r1, r0 str r0, [sp, #0x1c] ldr r0, [sp, #0x2c] add r1, r0, #8 ldr r0, [sp, #0x20] str r1, [sp, #0x2c] cmp r1, r0 blt _0232AD40 add sp, sp, #0x30 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} arm_func_end ov02_0232AC64 arm_func_start ov02_0232AE00 ov02_0232AE00: ; 0x0232AE00 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x48 ldrb r4, [r0, #0xc] mov sl, r2 mov fp, r1 str r4, [sp, #0x10] ldr r1, [sp, #0x10] ldr r4, [sp, #0x70] cmp r1, #4 add r1, sl, r4 str r1, [sp, #0x3c] ldr r2, [sp, #0x74] mov r1, r3 add r1, r1, r2 bic r2, sl, #7 str r1, [sp, #0x38] str r3, [sp, #0xc] str r2, [sp, #0x28] ldr r2, [sp, #0xc] orreq r1, fp, fp, lsl #4 bic r2, r2, #7 str r2, [sp, #0x40] ldr r2, [sp, #0x10] orreq r1, r1, r1, lsl #8 mov r5, r2, lsl #6 ldr r2, [sp, #0x38] mov r3, r5, asr #2 add r6, r2, #7 ldr r2, [sp, #0x28] add r3, r5, r3, lsr #29 mov r4, r2, asr #2 ldr r2, [sp, #0x40] orrne r1, fp, fp, lsl #8 mov r5, r2, asr #2 bic r2, r6, #7 str r2, [sp, #0x34] mov r2, r3, asr #3 str r2, [sp, #0x14] ldr r2, [sp, #0x28] orr fp, r1, r1, lsl #16 add r2, r2, r4, lsr #29 mov r2, r2, asr #3 str r2, [sp, #0x2c] ldr r2, [sp, #0x40] ldr r1, [r0, #0x10] add r2, r2, r5, lsr #29 mov r8, r2, asr #3 ldr r3, [sp, #0x40] ldr r2, [sp, #0x34] str r1, [sp, #0x44] cmp r3, r2 ldr r2, [sp, #0x3c] add r2, r2, #7 bic r7, r2, #7 ldr r2, [r0, #4] str r2, [sp, #0x18] ldr r2, [r0, #8] ldr r0, [r0] str r2, [sp, #0x1c] str r0, [sp, #0x30] mov r0, r1, lsl #0x18 mov r0, r0, lsr #0x18 str r0, [sp, #0x20] mov r0, r1, lsl #0x10 mov r0, r0, lsr #0x18 str r0, [sp, #0x24] addge sp, sp, #0x48 ldmgeia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} _0232AF10: ldr r1, [sp, #0x40] ldr r0, [sp, #0xc] cmp r1, r0 movge sb, #0 bge _0232AF30 mov r1, r0 ldr r0, [sp, #0x40] sub sb, r1, r0 _0232AF30: ldr r1, [sp, #0x38] ldr r0, [sp, #0x40] ldr r6, [sp, #0x2c] sub r0, r1, r0 cmp r0, #8 movgt r0, #8 sub r5, r0, sb ldr r0, [sp, #0x28] cmp r0, r7 mov r4, r0 bge _0232AFD0 _0232AF5C: ldr r0, [sp, #0x20] ldr r2, [sp, #0x18] str r0, [sp] ldr r0, [sp, #0x24] ldr r3, [sp, #0x1c] str r0, [sp, #4] mov r0, r6 mov r1, r8 bl ov02_0232A360 ldr r2, [sp, #0x3c] cmp r4, sl sublt r1, sl, r4 sub r2, r2, r4 movge r1, #0 cmp r2, #8 movgt r2, #8 stmia sp, {r5, fp} sub r3, r2, r1 ldr r2, [sp, #0x10] ldr ip, [sp, #0x14] str r2, [sp, #8] ldr r2, [sp, #0x30] mla r0, ip, r0, r2 mov r2, sb bl ov02_0232A474 add r4, r4, #8 add r6, r6, #1 cmp r4, r7 blt _0232AF5C _0232AFD0: ldr r0, [sp, #0x40] add r8, r8, #1 add r1, r0, #8 ldr r0, [sp, #0x34] str r1, [sp, #0x40] cmp r1, r0 blt _0232AF10 add sp, sp, #0x48 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} arm_func_end ov02_0232AE00 arm_func_start ov02_0232AFF4 ov02_0232AFF4: ; 0x0232AFF4 str r2, [r0, #4] ldr r2, [sp] str r3, [r0, #8] strb r2, [r0, #0xc] ldr r2, [sp, #4] str r1, [r0] ldr r1, [sp, #8] str r2, [r0, #0x14] str r1, [r0, #0x10] bx lr arm_func_end ov02_0232AFF4 arm_func_start ov02_0232B01C ov02_0232B01C: ; 0x0232B01C stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #0x10 mov r7, r1 ldrh r1, [sp, #0x2c] mov r8, r0 mov r0, r7 mov r6, r2 mov r5, r3 bl ov02_0232A118 ldr r1, _0232B13C ; =0x0000FFFF mov r4, r0 cmp r4, r1 ldreq r0, [r7] ldreqh r4, [r0, #2] mov r0, r7 mov r1, r4 bl ov02_0232A160 str r0, [sp, #8] ldr r1, [r7] ldr r2, [r1, #8] ldrh r1, [r2, #2] add r2, r2, #8 mla r1, r4, r1, r2 str r1, [sp, #0xc] ldr r1, [r7] ldr r3, [r1, #8] ldrb r1, [r3, #7] cmp r1, #7 addls pc, pc, r1, lsl #2 b _0232B100 _0232B094: ; jump table b _0232B0B4 ; case 0 b _0232B0C0 ; case 1 b _0232B0C0 ; case 2 b _0232B0D4 ; case 3 b _0232B0D4 ; case 4 b _0232B0F0 ; case 5 b _0232B0F0 ; case 6 b _0232B0B4 ; case 7 _0232B0B4: ldrsb r0, [r0] add r6, r6, r0 b _0232B100 _0232B0C0: ldrb r1, [r3] ldrsb r0, [r0] sub r6, r6, r1 add r5, r5, r0 b _0232B100 _0232B0D4: ldrsb r2, [r0] ldrb r1, [r0, #1] ldrb r0, [r3, #1] add r1, r2, r1 sub r6, r6, r1 sub r5, r5, r0 b _0232B100 _0232B0F0: ldrsb r1, [r0] ldrb r0, [r3, #1] add r0, r1, r0 sub r5, r5, r0 _0232B100: ldr r1, [sp, #0x28] add r0, sp, #8 str r1, [sp] str r0, [sp, #4] ldr r1, [r8, #0x14] mov r0, r8 ldr r4, [r1] mov r1, r7 mov r2, r6 mov r3, r5 blx r4 ldr r0, [sp, #8] ldrsb r0, [r0, #2] add sp, sp, #0x10 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _0232B13C: .word 0x0000FFFF arm_func_end ov02_0232B01C arm_func_start ov02_0232B140 ov02_0232B140: ; 0x0232B140 stmdb sp!, {lr} sub sp, sp, #0xc ldr lr, [sp, #0x10] ldr ip, _0232B168 ; =ov02_0234FBE0 str lr, [sp] str ip, [sp, #4] str r2, [sp, #8] bl ov02_0232AFF4 add sp, sp, #0xc ldmia sp!, {pc} .align 2, 0 _0232B168: .word ov02_0234FBE0 arm_func_end ov02_0232B140 arm_func_start ov02_0232B16C ov02_0232B16C: ; 0x0232B16C stmdb sp!, {r3, r4, r5, lr} sub sp, sp, #0x10 cmp r2, #8 movlt r4, r2 movge ip, #3 clzlt r4, r4 rsblt ip, r4, #0x1f cmp r3, #8 movlt r4, r3 movge r5, #3 clzlt r4, r4 rsblt r5, r4, #0x1f ldr r4, _0232B1EC ; =ov02_0234FBF8 ldr lr, [sp, #0xc] add r5, r4, r5, lsl #3 add r4, r5, ip, lsl #1 ldrb ip, [r5, ip, lsl #1] bic r5, lr, #0xff ldrb r4, [r4, #1] ldr lr, [sp, #0x20] orr r5, r5, ip str lr, [sp] ldr ip, _0232B1F0 ; =ov02_0234FBEC bic lr, r5, #0xff00 mov r4, r4, lsl #0x18 orr r4, lr, r4, lsr #16 str ip, [sp, #4] str r4, [sp, #0xc] str r4, [sp, #8] bl ov02_0232AFF4 add sp, sp, #0x10 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0232B1EC: .word ov02_0234FBF8 _0232B1F0: .word ov02_0234FBEC arm_func_end ov02_0232B16C arm_func_start ov02_0232B1F4 ov02_0232B1F4: ; 0x0232B1F4 stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #8 ldr r5, [sp, #0x24] ldr lr, [sp, #0x20] cmp r5, #0x20 ldr ip, [sp, #0x28] bgt _0232B230 mla r4, r5, lr, r3 ldr lr, [sp, #0x2c] mov r3, r5 add r0, r0, r4, lsl #1 stmia sp, {ip, lr} bl ov02_0232B2A4 add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} _0232B230: add r6, lr, r2 ldr r4, [sp, #0x2c] cmp lr, r6 add r5, r3, r1 addge sp, sp, #8 mov r1, r4, lsl #0x1c ldmgeia sp!, {r4, r5, r6, r7, r8, pc} _0232B24C: cmp lr, #0x20 movlt r2, lr addge r2, lr, #0x20 mov r7, r3 cmp r3, r5 add r8, r0, r2, lsl #6 bge _0232B290 _0232B268: cmp r7, #0x20 movlt r2, r7 addge r2, r7, #0x3e0 orr r4, ip, r1, lsr #16 mov r2, r2, lsl #1 add r7, r7, #1 strh r4, [r8, r2] cmp r7, r5 add ip, ip, #1 blt _0232B268 _0232B290: add lr, lr, #1 cmp lr, r6 blt _0232B24C add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} arm_func_end ov02_0232B1F4 arm_func_start ov02_0232B2A4 ov02_0232B2A4: ; 0x0232B2A4 stmdb sp!, {r4, r5, r6, r7, r8, lr} ldr r4, [sp, #0x1c] ldr r8, [sp, #0x18] mov r6, #0 cmp r2, #0 mov ip, r4, lsl #0x1c ldmleia sp!, {r4, r5, r6, r7, r8, pc} mov r4, r6 _0232B2C4: mov r7, r0 mov r5, r4 cmp r1, #0 ble _0232B2EC _0232B2D4: orr lr, r8, ip, lsr #16 add r5, r5, #1 cmp r5, r1 add r8, r8, #1 strh lr, [r7], #2 blt _0232B2D4 _0232B2EC: add r6, r6, #1 cmp r6, r2 add r0, r0, r3, lsl #1 blt _0232B2C4 ldmia sp!, {r4, r5, r6, r7, r8, pc} arm_func_end ov02_0232B2A4 arm_func_start ov02_0232B300 ov02_0232B300: ; 0x0232B300 stmdb sp!, {r3, r4, r5, lr} mov r3, r0, lsr #3 mov r5, r1, lsr #3 mov r2, #0 mla lr, r3, r5, r2 and r4, r0, #2 and r2, r0, #1 add r2, r2, r4, lsr #1 and r0, r0, #4 mov ip, r2, lsl #1 add ip, ip, r0, lsr #2 mla ip, r5, ip, lr and r4, r1, #2 and lr, r1, #1 add r4, lr, r4, lsr #1 and lr, r1, #4 mov r1, r4, lsl #1 add r1, r1, lr, lsr #2 mla ip, r3, r1, ip add r1, r2, r0, lsr #2 add r0, r4, lr, lsr #2 mla r0, r1, r0, ip ldmia sp!, {r3, r4, r5, pc} arm_func_end ov02_0232B300 arm_func_start ov02_0232B35C ov02_0232B35C: ; 0x0232B35C stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x38 mov r7, r0 mov r0, r1 cmp r0, #8 ldr r0, [sp, #0x60] str r1, [sp, #0x10] str r0, [sp, #0x60] str r2, [sp, #0x14] ldrlt r0, [sp, #0x10] str r3, [sp, #0x34] ldr r6, [sp, #0x64] ldr r5, [sp, #0x68] ldr r4, [sp, #0x6c] movge r2, #3 clzlt r0, r0 rsblt r2, r0, #0x1f ldr r0, [sp, #0x14] cmp r0, #8 ldrlt r0, [sp, #0x14] movge r1, #3 clzlt r0, r0 rsblt r1, r0, #0x1f ldr r0, _0232B648 ; =ov02_0234FBF8 mvn r3, #0 add r1, r0, r1, lsl #3 add r0, r1, r2, lsl #1 ldrb fp, [r1, r2, lsl #1] ldrb r1, [r0, #1] ldr r2, [sp, #0x14] cmp r6, #0 str r1, [sp, #0x30] ldr r1, [sp, #0x10] and r1, r1, r3, lsl fp str r1, [sp, #0x2c] ldr r1, [sp, #0x30] and r1, r2, r3, lsl r1 str r1, [sp, #0x28] moveq r1, #1 streq r1, [sp, #0x18] movne r1, #2 strne r1, [sp, #0x18] mov r1, #0 str r1, [sp, #0x24] bl ov02_0232A458 ldr r1, [sp, #0x10] ldr r2, [sp, #0x14] mov sb, r1, asr fp ldr r1, [sp, #0x30] mov r1, r2, asr r1 str r1, [sp, #0x20] ldr r1, [sp, #0x18] mov r2, r1, lsl fp ldr r1, [sp, #0x30] mov r8, r2, lsl r1 mov r1, #0 str r1, [sp, #0x1c] b _0232B4DC _0232B444: ldr r2, [sp, #0x1c] ldr r1, [sp, #0x30] mov sl, #0 mov r2, r2, lsl r1 ldr r1, [sp, #0x60] add r1, r1, r2, lsl #3 mov r2, #0x400 and r3, r1, #0xff rsb r2, r2, #0 b _0232B4C8 _0232B46C: mov ip, sl, lsl fp ldr r1, [sp, #0x34] add sl, sl, #1 add r1, r1, ip, lsl #3 mov lr, r1, lsl #0x17 ldr ip, [r7] ldr r1, _0232B64C ; =0xFE00FF00 and r1, ip, r1 orr r1, r1, r3 orr ip, r1, lr, lsr #7 ldr r1, _0232B650 ; =0x3FFF3FFF and r1, ip, r1 orr r1, r1, r0 str r1, [r7] ldrh r1, [r7, #4] and r1, r1, r2 orr r1, r1, r5 strh r1, [r7, #4] ldr r1, [r7] add r5, r5, r8, asr r4 bic r1, r1, #0x2000 orr r1, r1, r6, lsl #13 str r1, [r7], #8 _0232B4C8: cmp sl, sb blt _0232B46C ldr r1, [sp, #0x1c] add r1, r1, #1 str r1, [sp, #0x1c] _0232B4DC: ldr r2, [sp, #0x1c] ldr r1, [sp, #0x20] cmp r2, r1 blt _0232B444 ldr r0, [sp, #0x24] mla r0, sb, r1, r0 str r0, [sp, #0x24] ldr r1, [sp, #0x2c] ldr r0, [sp, #0x10] cmp r1, r0 bhs _0232B564 ldr r0, [sp, #0x60] ldr r1, [sp, #0x10] stmia sp, {r0, r6} ldr r0, [sp, #0x2c] ldr r2, [sp, #0x2c] sub r8, r1, r0 ldr r1, [sp, #0x34] str r5, [sp, #8] add r3, r1, r2, lsl #3 ldr r2, [sp, #0x28] mov r0, r7 mov r1, r8 str r4, [sp, #0xc] bl ov02_0232B35C ldr r1, [sp, #0x18] add r7, r7, r0, lsl #3 mul r2, r1, r8 ldr r1, [sp, #0x28] mul r2, r1, r2 ldr r1, [sp, #0x24] add r5, r5, r2, lsr r4 add r0, r1, r0 str r0, [sp, #0x24] _0232B564: ldr r1, [sp, #0x28] ldr r0, [sp, #0x14] cmp r1, r0 bhs _0232B5D0 ldr r1, [sp, #0x60] ldr r0, [sp, #0x28] ldr r3, [sp, #0x34] add r0, r1, r0, lsl #3 stmia sp, {r0, r6} str r5, [sp, #8] ldr r1, [sp, #0x14] ldr r0, [sp, #0x28] str r4, [sp, #0xc] sub r8, r1, r0 ldr r1, [sp, #0x2c] mov r0, r7 mov r2, r8 bl ov02_0232B35C ldr r2, [sp, #0x18] ldr r1, [sp, #0x2c] add r7, r7, r0, lsl #3 mul r1, r2, r1 mul r1, r8, r1 add r5, r5, r1, lsr r4 ldr r1, [sp, #0x24] add r0, r1, r0 str r0, [sp, #0x24] _0232B5D0: ldr r1, [sp, #0x2c] ldr r0, [sp, #0x10] cmp r1, r0 ldrlo r1, [sp, #0x28] ldrlo r0, [sp, #0x14] cmplo r1, r0 bhs _0232B63C ldr r1, [sp, #0x60] ldr r0, [sp, #0x28] ldr r2, [sp, #0x10] add r0, r1, r0, lsl #3 stmia sp, {r0, r6} str r5, [sp, #8] ldr r1, [sp, #0x2c] ldr r3, [sp, #0x14] sub r1, r2, r1 ldr r2, [sp, #0x28] ldr r5, [sp, #0x2c] sub r2, r3, r2 ldr r3, [sp, #0x34] mov r0, r7 add r3, r3, r5, lsl #3 str r4, [sp, #0xc] bl ov02_0232B35C ldr r1, [sp, #0x24] add r0, r1, r0 str r0, [sp, #0x24] _0232B63C: ldr r0, [sp, #0x24] add sp, sp, #0x38 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _0232B648: .word ov02_0234FBF8 _0232B64C: .word 0xFE00FF00 _0232B650: .word 0x3FFF3FFF arm_func_end ov02_0232B35C arm_func_start ov02_0232B654 ov02_0232B654: ; 0x0232B654 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x10 mov fp, r0 ldr r4, [fp, #8] ldr r5, [fp, #4] ldr r6, [sp, #0x38] add r0, sp, #0xc str r6, [sp, #0xc] ldr r6, [r5, #4] mov sl, r1 mov sb, r2 str r3, [sp, #8] ldrsb r8, [sp, #0x41] blx r6 cmp r0, #0 beq _0232B6DC ldrsb r7, [sp, #0x40] _0232B698: cmp r0, #0xa beq _0232B6DC ldr r1, [sp, #8] mov r2, sl str r1, [sp] str r0, [sp, #4] ldr r0, [fp] mov r1, r5 mov r3, sb bl ov02_0232B01C add r0, r4, r0 mla sl, r0, r7, sl mla sb, r0, r8, sb add r0, sp, #0xc blx r6 cmp r0, #0 bne _0232B698 _0232B6DC: ldr r1, [sp, #0x3c] cmp r1, #0 addeq sp, sp, #0x10 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} cmp r0, #0xa ldreq r1, [sp, #0xc] ldr r0, [sp, #0x3c] movne r1, #0 str r1, [r0] add sp, sp, #0x10 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} arm_func_end ov02_0232B654 arm_func_start ov02_0232B708 ov02_0232B708: ; 0x0232B708 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x34 mov sl, r0 ldr r0, [sl, #4] ldr r4, [sp, #0x60] ldr r0, [r0] ldrsb r8, [sp, #0x65] ldrsb r0, [r0, #1] ldr r5, [sl, #0xc] ldrsb sb, [sp, #0x64] add r5, r5, r0 rsb r0, r8, #0 mul r0, r5, r0 str r0, [sp, #0x20] mul r0, r5, sb str r0, [sp, #0x1c] ldr r0, [sp, #0x58] str r1, [sp, #0xc] str r2, [sp, #0x10] mov fp, r3 str r4, [sp, #0x30] cmp r4, #0 str r0, [sp, #0x58] addeq sp, sp, #0x34 ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} ldr r2, [sp, #0x5c] mov r6, #0 and r0, r2, #0x800 add r1, fp, #1 str r0, [sp, #0x18] add r0, r1, r1, lsr #31 str r0, [sp, #0x2c] and r0, r2, #0x400 str r0, [sp, #0x14] ldrb r0, [sp, #0x64] mov r7, r6 str r0, [sp, #0x24] ldrb r0, [sp, #0x65] str r0, [sp, #0x28] _0232B7A4: ldr r0, [sp, #0x18] cmp r0, #0 ldr r0, [sp, #0xc] add r4, r0, r6 ldr r0, [sp, #0x10] add r5, r0, r7 beq _0232B7E0 ldr r2, [sp, #0x30] mov r3, #0 ldmib sl, {r0, r1} bl ov02_0232A1AC sub r0, fp, r0 mla r4, r0, sb, r4 mla r5, r0, r8, r5 b _0232B818 _0232B7E0: ldr r0, [sp, #0x14] cmp r0, #0 beq _0232B818 ldr r2, [sp, #0x30] mov r3, #0 ldmib sl, {r0, r1} bl ov02_0232A1AC add r0, r0, #1 add r0, r0, r0, lsr #31 mov r1, r0, asr #1 ldr r0, [sp, #0x2c] rsb r0, r1, r0, asr #1 mla r4, r0, sb, r4 mla r5, r0, r8, r5 _0232B818: ldr r3, [sp, #0x30] mov r1, r4 str r3, [sp] add r3, sp, #0x30 str r3, [sp, #4] ldr r3, [sp, #0x24] mov r2, r5 strb r3, [sp, #8] ldr r3, [sp, #0x28] mov r0, sl strb r3, [sp, #9] ldr r3, [sp, #0x58] bl ov02_0232B654 ldr r0, [sp, #0x20] add r6, r6, r0 ldr r0, [sp, #0x1c] add r7, r7, r0 ldr r0, [sp, #0x30] cmp r0, #0 bne _0232B7A4 add sp, sp, #0x34 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} arm_func_end ov02_0232B708 arm_func_start ov02_0232B870 ov02_0232B870: ; 0x0232B870 stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #0x28 ldr r4, [sp, #0x44] mov r8, r0 str r4, [sp] add r0, sp, #0x18 mov r7, r1 mov r6, r2 mov r5, r3 ldmib r8, {r1, r2, r3} ldr r4, [sp, #0x40] bl ov02_0232A2CC ldr r2, [sp, #0x18] ldr r0, [sp, #0x1c] str r2, [sp, #0x10] str r0, [sp, #0x14] str r2, [sp, #0x20] str r0, [sp, #0x24] tst r4, #0x10 beq _0232B8E4 add r0, r2, #1 rsb r0, r0, #0 add r0, r0, r0, lsr #31 ldrsb r1, [sp, #0x48] mov r2, r0, asr #1 ldrsb r0, [sp, #0x49] mla r7, r2, r1, r7 mla r6, r2, r0, r6 b _0232B900 _0232B8E4: tst r4, #0x20 beq _0232B900 ldrsb r1, [sp, #0x48] ldrsb r0, [sp, #0x49] rsb r2, r2, #0 mla r7, r2, r1, r7 mla r6, r2, r0, r6 _0232B900: tst r4, #2 beq _0232B934 ldr r0, [sp, #0x24] ldrsb r2, [sp, #0x49] add r0, r0, #1 rsb r0, r0, #0 add r0, r0, r0, lsr #31 ldrsb r1, [sp, #0x48] mov r3, r0, asr #1 rsb r0, r2, #0 mla r7, r3, r0, r7 mla r6, r3, r1, r6 b _0232B958 _0232B934: tst r4, #4 beq _0232B958 ldrsb r1, [sp, #0x49] ldr r2, [sp, #0x24] ldrsb r0, [sp, #0x48] rsb r2, r2, #0 rsb r1, r1, #0 mla r7, r2, r1, r7 mla r6, r2, r0, r6 _0232B958: str r5, [sp] ldr r1, [sp, #0x44] str r4, [sp, #4] ldrb r0, [sp, #0x48] str r1, [sp, #8] ldrb r4, [sp, #0x49] strb r0, [sp, #0xc] ldr r3, [sp, #0x20] mov r0, r8 mov r1, r7 mov r2, r6 strb r4, [sp, #0xd] bl ov02_0232B708 add sp, sp, #0x28 ldmia sp!, {r4, r5, r6, r7, r8, pc} arm_func_end ov02_0232B870 arm_func_start ov02_0232B994 ov02_0232B994: ; 0x0232B994 stmdb sp!, {r3, r4, r5, r6, r7, lr} sub sp, sp, #0x10 ldr ip, [sp, #0x30] mov r7, r0 mov r6, r1 mov r5, r2 mov r4, r3 tst ip, #0x100 beq _0232B9E8 ldr r0, [r7, #4] ldr r1, [r7, #0xc] ldr r2, [sp, #0x34] bl ov02_0232A258 ldrsb r2, [sp, #0x39] ldr r3, [sp, #0x28] ldrsb r1, [sp, #0x38] sub r3, r3, r0 rsb r0, r2, #0 mla r6, r3, r0, r6 mla r5, r3, r1, r5 b _0232BA30 _0232B9E8: tst ip, #0x80 beq _0232BA30 ldr r0, [r7, #4] ldr r1, [r7, #0xc] ldr r2, [sp, #0x34] bl ov02_0232A258 ldr r1, [sp, #0x28] add r0, r0, #1 ldrsb r3, [sp, #0x39] add ip, r1, #1 add r1, r0, r0, lsr #31 ldrsb r2, [sp, #0x38] add r0, ip, ip, lsr #31 mov r1, r1, asr #1 rsb r1, r1, r0, asr #1 rsb r0, r3, #0 mla r6, r1, r0, r6 mla r5, r1, r2, r5 _0232BA30: ldr r1, [sp, #0x2c] ldr r0, [sp, #0x30] str r1, [sp] ldr r1, [sp, #0x34] str r0, [sp, #4] ldrb r0, [sp, #0x38] str r1, [sp, #8] ldrb ip, [sp, #0x39] strb r0, [sp, #0xc] mov r0, r7 mov r1, r6 mov r2, r5 mov r3, r4 strb ip, [sp, #0xd] bl ov02_0232B708 add sp, sp, #0x10 ldmia sp!, {r3, r4, r5, r6, r7, pc} arm_func_end ov02_0232B994 arm_func_start ov02_0232BA74 ov02_0232BA74: ; 0x0232BA74 stmdb sp!, {r4, r5, r6, lr} movs r6, r0 mov r5, r1 mov r4, #0 beq _0232BAEC cmp r6, #0 beq _0232BAA4 ldr r1, [r6] ldr r0, _0232BBBC ; =0x4E465452 cmp r1, r0 moveq r0, #1 beq _0232BAA8 _0232BAA4: mov r0, #0 _0232BAA8: cmp r0, #0 movne r0, #1 moveq r0, #0 cmp r0, #0 beq _0232BAF0 cmp r6, #0 beq _0232BAD8 ldrh r1, [r6, #6] ldr r0, _0232BBC0 ; =0x00000101 cmp r1, r0 movhs r0, #1 bhs _0232BADC _0232BAD8: mov r0, #0 _0232BADC: cmp r0, #0 movne r0, #1 moveq r0, #0 b _0232BAF0 _0232BAEC: mov r0, r4 _0232BAF0: cmp r0, #0 bne _0232BB70 cmp r6, #0 beq _0232BB5C beq _0232BB18 ldr r1, [r6] ldr r0, _0232BBBC ; =0x4E465452 cmp r1, r0 moveq r0, #1 beq _0232BB1C _0232BB18: mov r0, #0 _0232BB1C: cmp r0, #0 movne r0, #1 moveq r0, #0 cmp r0, #0 beq _0232BB60 cmp r6, #0 beq _0232BB48 ldrh r0, [r6, #6] cmp r0, #0x100 movhs r0, #1 bhs _0232BB4C _0232BB48: mov r0, #0 _0232BB4C: cmp r0, #0 movne r0, #1 moveq r0, #0 b _0232BB60 _0232BB5C: mov r0, #0 _0232BB60: cmp r0, #0 bne _0232BB6C bl WaitForever2 _0232BB6C: mov r4, #1 _0232BB70: mov r0, r6 bl ov02_0232BBC8 ldr r1, _0232BBC4 ; =0x46494E46 mov r0, r6 bl ov02_02329FE4 cmp r0, #0 moveq r0, #0 streq r0, [r5] ldmeqia sp!, {r4, r5, r6, pc} add r0, r0, #8 str r0, [r5] cmp r4, #0 beq _0232BBB4 ldr r0, [r5] mov r1, #0 ldr r0, [r0, #8] strb r1, [r0, #7] _0232BBB4: mov r0, #1 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _0232BBBC: .word 0x4E465452 _0232BBC0: .word 0x00000101 _0232BBC4: .word 0x46494E46 arm_func_end ov02_0232BA74 arm_func_start ov02_0232BBC8 ov02_0232BBC8: ; 0x0232BBC8 stmdb sp!, {r4, r5, r6, lr} ldrh r1, [r0, #0xc] ldrh r3, [r0, #0xe] mov r2, #0 add r1, r0, r1 cmp r3, #0 ldmleia sp!, {r4, r5, r6, pc} ldr r3, _0232BC94 ; =0x46494E46 ldr ip, _0232BC98 ; =0x43574448 ldr r4, _0232BC9C ; =0x434D4150 ldr lr, _0232BCA0 ; =0x43474C50 _0232BBF4: ldr r5, [r1] cmp r5, r4 bhi _0232BC0C bhs _0232BC68 cmp r5, lr b _0232BC78 _0232BC0C: cmp r5, ip bhi _0232BC1C beq _0232BC54 b _0232BC78 _0232BC1C: cmp r5, r3 bne _0232BC78 ldr r5, [r1, #0x10] add r5, r5, r0 str r5, [r1, #0x10] ldr r5, [r1, #0x14] cmp r5, #0 addne r5, r5, r0 strne r5, [r1, #0x14] ldr r5, [r1, #0x18] cmp r5, #0 addne r5, r5, r0 strne r5, [r1, #0x18] b _0232BC78 _0232BC54: ldr r5, [r1, #0xc] cmp r5, #0 addne r5, r5, r0 strne r5, [r1, #0xc] b _0232BC78 _0232BC68: ldr r5, [r1, #0x10] cmp r5, #0 addne r5, r5, r0 strne r5, [r1, #0x10] _0232BC78: ldrh r5, [r0, #0xe] ldr r6, [r1, #4] add r2, r2, #1 cmp r2, r5 add r1, r1, r6 blt _0232BBF4 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _0232BC94: .word 0x46494E46 _0232BC98: .word 0x43574448 _0232BC9C: .word 0x434D4150 _0232BCA0: .word 0x43474C50 arm_func_end ov02_0232BBC8 arm_func_start ov02_0232BCA4 ov02_0232BCA4: ; 0x0232BCA4 stmdb sp!, {r4, r5, r6, lr} ldrsb r3, [r0, #4] ldrb r4, [r0, #5] mov r5, r1 cmp r3, r5 subge r1, r3, r5 movge r2, r4, lsr r1 strgeb r1, [r0, #4] bge _0232BCF4 ldr r2, [r0] sub r6, r5, r3 add r1, r2, #1 str r1, [r0] ldrb r3, [r2] mov r1, r6 mov r2, #8 strb r3, [r0, #5] strb r2, [r0, #4] bl ov02_0232BCA4 orr r2, r0, r4, lsl r6 _0232BCF4: rsb r0, r5, #8 mov r1, #0xff and r0, r2, r1, asr r0 ldmia sp!, {r4, r5, r6, pc} arm_func_end ov02_0232BCA4 arm_func_start ov02_0232BD04 ov02_0232BD04: ; 0x0232BD04 ldr r1, [r0] ldrh r2, [r1], #2 str r1, [r0] mov r0, r2 bx lr arm_func_end ov02_0232BD04 arm_func_start ov02_0232BD18 ov02_0232BD18: ; 0x0232BD18 stmdb sp!, {r3, lr} ldr r0, _0232BD8C ; =ov02_023544E0 ldr r1, [r0, #0xc] cmp r1, #0 ldmneia sp!, {r3, pc} mov r1, #1 str r1, [r0, #0xc] bl sub_0207CC10 ldr r0, _0232BD90 ; =ov02_0232BDD0 ldr r1, _0232BD8C ; =ov02_023544E0 mov r2, #0 str r0, [r1, #0x10] ldr r0, _0232BD94 ; =ov02_0232BE08 str r2, [r1, #0x14] str r0, [r1, #0x1c] ldr r0, _0232BD98 ; =ov02_023544F0 str r2, [r1, #0x20] bl sub_0208260C ldr r0, _0232BD9C ; =ov02_023544FC bl sub_02082624 bl ov02_0232BE80 bl ov02_0232C84C bl ov02_0232C038 ldr r0, _0232BD8C ; =ov02_023544E0 mvn r1, #0 strb r1, [r0] mov r1, #1 str r1, [r0, #4] ldmia sp!, {r3, pc} .align 2, 0 _0232BD8C: .word ov02_023544E0 _0232BD90: .word ov02_0232BDD0 _0232BD94: .word ov02_0232BE08 _0232BD98: .word ov02_023544F0 _0232BD9C: .word ov02_023544FC arm_func_end ov02_0232BD18 arm_func_start ov02_0232BDA0 ov02_0232BDA0: ; 0x0232BDA0 stmdb sp!, {r4, lr} mov r4, #0 _0232BDA8: mov r0, r4 bl sub_0207CD44 cmp r0, #0 bne _0232BDA8 bl ov02_0232C0EC bl ov02_0232C864 bl ov02_0232D990 mov r0, #0 bl sub_0207CF14 ldmia sp!, {r4, pc} arm_func_end ov02_0232BDA0 arm_func_start ov02_0232BDD0 ov02_0232BDD0: ; 0x0232BDD0 stmdb sp!, {r4, lr} bl ov02_0232C9DC mov r0, #0 mov r1, r0 mov r2, r0 mov r3, r0 bl sub_0207C8E0 bl sub_0207D13C mov r4, r0 mov r0, #1 bl sub_0207CF14 mov r0, r4 bl sub_0207D0D0 ldmia sp!, {r4, pc} arm_func_end ov02_0232BDD0 arm_func_start ov02_0232BE08 ov02_0232BE08: ; 0x0232BE08 ldr ip, _0232BE10 ; =ov02_0232CA3C bx ip .align 2, 0 _0232BE10: .word ov02_0232CA3C arm_func_end ov02_0232BE08 arm_func_start ov02_0232BE14 ov02_0232BE14: ; 0x0232BE14 stmdb sp!, {r4, lr} movs r4, r0 ldmeqia sp!, {r4, pc} mov r1, #0 bl sub_0207C9E4 ldr r0, _0232BE40 ; =ov02_023568E0 mvn r1, r4 ldr r2, [r0, #8] and r1, r2, r1 str r1, [r0, #8] ldmia sp!, {r4, pc} .align 2, 0 _0232BE40: .word ov02_023568E0 arm_func_end ov02_0232BE14 arm_func_start ov02_0232BE44 ov02_0232BE44: ; 0x0232BE44 ldr r1, _0232BE5C ; =ov02_023568E0 mvn r0, r0 ldr r2, [r1] and r0, r2, r0 str r0, [r1] bx lr .align 2, 0 _0232BE5C: .word ov02_023568E0 arm_func_end ov02_0232BE44 arm_func_start ov02_0232BE60 ov02_0232BE60: ; 0x0232BE60 ldr r1, _0232BE7C ; =ov02_023568E0 mov r2, #1 mvn r0, r2, lsl r0 ldr r2, [r1, #4] and r0, r2, r0 str r0, [r1, #4] bx lr .align 2, 0 _0232BE7C: .word ov02_023568E0 arm_func_end ov02_0232BE60 arm_func_start ov02_0232BE80 ov02_0232BE80: ; 0x0232BE80 ldr r0, _0232BE98 ; =ov02_023568E0 mov r1, #0 str r1, [r0, #8] str r1, [r0] str r1, [r0, #4] bx lr .align 2, 0 _0232BE98: .word ov02_023568E0 arm_func_end ov02_0232BE80 arm_func_start ov02_0232BE9C ov02_0232BE9C: ; 0x0232BE9C mov r2, #0x24 mul r2, r0, r2 mov r0, r1, lsl #0x10 ldr r1, _0232BEB8 ; =ov02_02356D5C mov r0, r0, lsr #0x10 str r0, [r1, r2] bx lr .align 2, 0 _0232BEB8: .word ov02_02356D5C arm_func_end ov02_0232BE9C arm_func_start ov02_0232BEBC ov02_0232BEBC: ; 0x0232BEBC mov r2, #0x24 mul r2, r0, r2 ldr r0, _0232BED0 ; =ov02_02356D60 str r1, [r0, r2] bx lr .align 2, 0 _0232BED0: .word ov02_02356D60 arm_func_end ov02_0232BEBC arm_func_start ov02_0232BED4 ov02_0232BED4: ; 0x0232BED4 stmdb sp!, {r3, r4, r5, r6, lr} sub sp, sp, #4 mov r5, r2 mov r6, r0 mov r0, r1 mov r3, #0 ldr r2, _0232BF60 ; =ov02_0232C5F4 add r1, r5, #0x14 str r3, [sp] bl ov02_0232CFB4 movs r4, r0 addeq sp, sp, #4 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, pc} mov r2, #0 str r2, [r4, #0xc] str r6, [r4, #0x10] mov r1, r5 add r0, r4, #0x14 str r2, [r4, #8] bl ov02_0232CE70 cmp r0, #0 addeq sp, sp, #4 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, pc} ldr r2, _0232BF64 ; =ov02_02356D44 mov r1, #0x24 mla r2, r6, r1, r2 str r0, [r4, #8] mov r1, r4 add r0, r2, #0xc bl ov02_023295A4 mov r0, #1 add sp, sp, #4 ldmia sp!, {r3, r4, r5, r6, pc} .align 2, 0 _0232BF60: .word ov02_0232C5F4 _0232BF64: .word ov02_02356D44 arm_func_end ov02_0232BED4 arm_func_start ov02_0232BF68 ov02_0232BF68: ; 0x0232BF68 ldr ip, _0232BF74 ; =ov02_0232C344 ldr r0, [r0] bx ip .align 2, 0 _0232BF74: .word ov02_0232C344 arm_func_end ov02_0232BF68 arm_func_start ov02_0232BF78 ov02_0232BF78: ; 0x0232BF78 mov r1, #0 str r1, [r0] bx lr arm_func_end ov02_0232BF78 arm_func_start ov02_0232BF84 ov02_0232BF84: ; 0x0232BF84 ldr r1, [r0] cmp r1, #0 bxeq lr ldr r1, [r0] mov r2, #0 str r2, [r1] str r2, [r0] bx lr arm_func_end ov02_0232BF84 arm_func_start ov02_0232BFA4 ov02_0232BFA4: ; 0x0232BFA4 ldr r2, [r0] cmp r2, #0 ldrne r0, [r0] strneb r1, [r0, #0x41] bx lr arm_func_end ov02_0232BFA4 arm_func_start ov02_0232BFB8 ov02_0232BFB8: ; 0x0232BFB8 ldr r2, [r0] cmp r2, #0 ldrne r0, [r0] strneb r1, [r0, #0x40] bx lr arm_func_end ov02_0232BFB8 arm_func_start ov02_0232BFCC ov02_0232BFCC: ; 0x0232BFCC stmdb sp!, {r3, lr} ldr r2, [r0] cmp r2, #0 ldmeqia sp!, {r3, pc} ldr r0, [r0] ldrb r0, [r0, #0x3c] bl sub_0207C85C ldmia sp!, {r3, pc} arm_func_end ov02_0232BFCC arm_func_start ov02_0232BFEC ov02_0232BFEC: ; 0x0232BFEC stmdb sp!, {r3, lr} ldr r3, [r0] cmp r3, #0 ldmeqia sp!, {r3, pc} ldr r0, [r0] ldrb r0, [r0, #0x3c] bl sub_0207C874 ldmia sp!, {r3, pc} arm_func_end ov02_0232BFEC arm_func_start ov02_0232C00C ov02_0232C00C: ; 0x0232C00C ldr r3, [r0] cmp r3, #0 bxeq lr ldr r3, [r0] mov ip, #2 strh ip, [r3, #0x34] ldr r3, [r0] strh r1, [r3, #0x38] ldr r0, [r0] strh r2, [r0, #0x3a] bx lr arm_func_end ov02_0232C00C arm_func_start ov02_0232C038 ov02_0232C038: ; 0x0232C038 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} ldr r0, _0232C0DC ; =ov02_023568F8 mov r1, #0x14 bl ov02_02329560 ldr r0, _0232C0E0 ; =ov02_023568EC mov r1, #0x14 bl ov02_02329560 mov r6, #0 ldr r7, _0232C0E4 ; =ov02_02356904 ldr r4, _0232C0E0 ; =ov02_023568EC mov r5, r6 _0232C064: strb r5, [r7, #0x2c] mov r0, r4 mov r1, r7 strb r6, [r7, #0x3c] bl ov02_023295A4 add r6, r6, #1 cmp r6, #0x10 add r7, r7, #0x44 blt _0232C064 mov sl, #0 ldr sb, _0232C0E8 ; =ov02_02356D44 mov r8, #0xc mov r7, sl mov r6, #0x7f mov r5, #1 mov r4, sl _0232C0A4: mov r0, sb mov r1, r8 bl ov02_02329560 mov r1, r7 add r0, sb, #0xc bl ov02_02329560 strb r6, [sb, #0x20] str r5, [sb, #0x18] add sl, sl, #1 str r4, [sb, #0x1c] cmp sl, #0x20 add sb, sb, #0x24 blt _0232C0A4 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} .align 2, 0 _0232C0DC: .word ov02_023568F8 _0232C0E0: .word ov02_023568EC _0232C0E4: .word ov02_02356904 _0232C0E8: .word ov02_02356D44 arm_func_end ov02_0232C038 arm_func_start ov02_0232C0EC ov02_0232C0EC: ; 0x0232C0EC stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} bl sub_0207D444 mov fp, r0 ldr r0, _0232C244 ; =ov02_023568F8 mov r1, #0 bl ov02_0232970C movs r6, r0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} mov r4, #0x8000 ldr r5, _0232C248 ; =_020AE224 rsb r4, r4, #0 _0232C118: ldr r0, _0232C244 ; =ov02_023568F8 mov r1, r6 bl ov02_0232970C ldrb r1, [r6, #0x2d] mov r7, r0 cmp r1, #0 bne _0232C148 ldr r0, [r6, #0x30] bl sub_0207D168 cmp r0, #0 movne r0, #1 strneb r0, [r6, #0x2d] _0232C148: ldrb r0, [r6, #0x2d] cmp r0, #0 beq _0232C170 ldrb r1, [r6, #0x3c] mov r0, #1 tst fp, r0, lsl r1 bne _0232C170 mov r0, r6 bl ov02_0232C570 b _0232C234 _0232C170: add r0, r6, #0x1c bl ov02_0232DD3C ldr r0, [r6, #4] ldrb r2, [r6, #0x41] ldrb r0, [r0, #0x20] ldrb r1, [r6, #0x40] mov r2, r2, lsl #1 mov r0, r0, lsl #1 mov r1, r1, lsl #1 ldrsh sl, [r5, r0] add r0, r6, #0x1c ldrsh r8, [r5, r2] ldrsh sb, [r5, r1] bl ov02_0232DD08 mov r0, r0, asr #8 mov r0, r0, lsl #1 add r1, sb, r8 ldrsh r0, [r5, r0] add r1, sl, r1 add r8, r0, r1 cmp r8, r4 movlt r8, r4 blt _0232C1D8 ldr r0, _0232C24C ; =0x00007FFF cmp r8, r0 movgt r8, r0 _0232C1D8: ldrsh r0, [r6, #0x3e] cmp r8, r0 beq _0232C1F4 ldrb r0, [r6, #0x3c] mov r1, r8 bl sub_0207C844 strh r8, [r6, #0x3e] _0232C1F4: ldrb r0, [r6, #0x2c] cmp r0, #2 bne _0232C218 add r0, r6, #0x1c bl ov02_0232DD54 cmp r0, #0 beq _0232C218 mov r0, r6 bl ov02_0232C4D0 _0232C218: ldrb r0, [r6, #0x2f] cmp r0, #0 beq _0232C234 ldrb r0, [r6, #0x3c] bl sub_0207C824 mov r0, #0 strb r0, [r6, #0x2f] _0232C234: mov r6, r7 cmp r7, #0 bne _0232C118 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 arm_func_end ov02_0232C0EC _0232C244: .word ov02_023568F8 _0232C248: .word _020AE224 _0232C24C: .word 0x00007FFF arm_func_start ov02_0232C250 ov02_0232C250: ; 0x0232C250 stmdb sp!, {r3, r4, r5, r6, r7, lr} ldr ip, _0232C2E4 ; =ov02_02356D44 mov r3, #0x24 mov r4, r0 ldr r5, [r4] mla r6, r1, r3, ip mov r7, r2 cmp r5, #0 beq _0232C278 bl ov02_0232BF84 _0232C278: ldrh r1, [r6, #8] ldr r0, [r6, #0x18] cmp r1, r0 blo _0232C2B4 mov r0, r6 mov r1, #0 bl ov02_0232970C cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} ldrb r1, [r0, #0x3d] cmp r7, r1 movlt r0, #0 ldmltia sp!, {r3, r4, r5, r6, r7, pc} bl ov02_0232C4D0 _0232C2B4: mov r0, r7 bl ov02_0232C508 movs r5, r0 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} mov r0, r6 mov r1, r5 bl ov02_0232C42C str r4, [r5] mov r0, r5 str r5, [r4] ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _0232C2E4: .word ov02_02356D44 arm_func_end ov02_0232C250 arm_func_start ov02_0232C2E8 ov02_0232C2E8: ; 0x0232C2E8 ldr ip, _0232C2F0 ; =ov02_0232C570 bx ip .align 2, 0 _0232C2F0: .word ov02_0232C570 arm_func_end ov02_0232C2E8 arm_func_start ov02_0232C2F4 ov02_0232C2F4: ; 0x0232C2F4 stmdb sp!, {r3, r4, r5, lr} mov r5, r0 ldrb r0, [r5, #0x3c] ldr r4, [r5, #4] bl sub_0207C7FC ldr r2, [r4, #0x1c] cmp r2, #0 beq _0232C320 ldrb r0, [r5, #0x3c] ldr r1, _0232C340 ; =0x0000FFFF bl sub_0207C890 _0232C320: mov r0, r5 bl ov02_0232C3E4 bl sub_0207D13C str r0, [r5, #0x30] mov r0, #1 strb r0, [r5, #0x2f] strb r0, [r5, #0x2c] ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0232C340: .word 0x0000FFFF arm_func_end ov02_0232C2F4 arm_func_start ov02_0232C344 ov02_0232C344: ; 0x0232C344 stmdb sp!, {r4, lr} movs r4, r0 mov r2, r1 ldrneb r1, [r4, #0x2c] cmpne r1, #0 ldmeqia sp!, {r4, pc} cmp r2, #0 bne _0232C36C bl ov02_0232C4D0 ldmia sp!, {r4, pc} _0232C36C: add r0, r4, #0x1c mov r1, #0 bl ov02_0232DCE0 mov r0, r4 mov r1, #0 bl ov02_0232C644 mov r0, #2 strb r0, [r4, #0x2c] ldmia sp!, {r4, pc} arm_func_end ov02_0232C344 arm_func_start ov02_0232C390 ov02_0232C390: ; 0x0232C390 stmdb sp!, {r4, r5, r6, lr} ldr r3, _0232C3E0 ; =ov02_02356D44 mov r2, #0x24 mla r5, r0, r2, r3 mov r6, r1 add r0, r5, #0xc mov r1, #0 bl ov02_0232970C movs r4, r0 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, pc} mov r1, r4 add r0, r5, #0xc bl ov02_023296AC str r6, [r4, #0xc] str r4, [r6, #8] ldr r0, [r4, #8] bl ov02_0232CEF8 ldr r0, [r4, #8] ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _0232C3E0: .word ov02_02356D44 arm_func_end ov02_0232C390 arm_func_start ov02_0232C3E4 ov02_0232C3E4: ; 0x0232C3E4 stmdb sp!, {r4, lr} mov r4, r0 mov r0, #0 strb r0, [r4, #0x2e] strb r0, [r4, #0x2d] strb r0, [r4, #0x2f] strh r0, [r4, #0x34] strh r0, [r4, #0x3e] mov r1, #0x7f strb r1, [r4, #0x40] add r0, r4, #0x1c strb r1, [r4, #0x41] bl ov02_0232DCC8 add r0, r4, #0x1c mov r1, #0x7f00 mov r2, #1 bl ov02_0232DCE0 ldmia sp!, {r4, pc} arm_func_end ov02_0232C3E4 arm_func_start ov02_0232C42C ov02_0232C42C: ; 0x0232C42C stmdb sp!, {r3, r4, r5, lr} mov r4, r1 mov r1, #0 mov r5, r0 bl ov02_0232970C movs r1, r0 beq _0232C468 _0232C448: ldrb r2, [r4, #0x3d] ldrb r0, [r1, #0x3d] cmp r2, r0 blo _0232C468 mov r0, r5 bl ov02_0232970C movs r1, r0 bne _0232C448 _0232C468: mov r0, r5 mov r2, r4 bl ov02_02329648 str r5, [r4, #4] ldmia sp!, {r3, r4, r5, pc} arm_func_end ov02_0232C42C arm_func_start ov02_0232C47C ov02_0232C47C: ; 0x0232C47C stmdb sp!, {r3, r4, r5, lr} mov r5, r0 ldr r0, _0232C4CC ; =ov02_023568F8 mov r1, #0 bl ov02_0232970C movs r1, r0 beq _0232C4BC ldr r4, _0232C4CC ; =ov02_023568F8 _0232C49C: ldrb r2, [r5, #0x3d] ldrb r0, [r1, #0x3d] cmp r2, r0 blo _0232C4BC mov r0, r4 bl ov02_0232970C movs r1, r0 bne _0232C49C _0232C4BC: ldr r0, _0232C4CC ; =ov02_023568F8 mov r2, r5 bl ov02_02329648 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0232C4CC: .word ov02_023568F8 arm_func_end ov02_0232C47C arm_func_start ov02_0232C4D0 ov02_0232C4D0: ; 0x0232C4D0 stmdb sp!, {r4, lr} mov r4, r0 ldrb r0, [r4, #0x2c] cmp r0, #2 bne _0232C4F0 ldrb r0, [r4, #0x3c] ldr r1, _0232C504 ; =0xFFFFFD2D bl sub_0207C844 _0232C4F0: ldrb r0, [r4, #0x3c] bl sub_0207C7DC mov r0, r4 bl ov02_0232C570 ldmia sp!, {r4, pc} .align 2, 0 _0232C504: .word 0xFFFFFD2D arm_func_end ov02_0232C4D0 arm_func_start ov02_0232C508 ov02_0232C508: ; 0x0232C508 stmdb sp!, {r3, r4, r5, lr} mov r5, r0 ldr r0, _0232C568 ; =ov02_023568EC mov r1, #0 bl ov02_0232970C movs r4, r0 bne _0232C548 ldr r0, _0232C56C ; =ov02_023568F8 mov r1, #0 bl ov02_0232970C mov r4, r0 ldrb r1, [r4, #0x3d] cmp r5, r1 movlt r0, #0 ldmltia sp!, {r3, r4, r5, pc} bl ov02_0232C4D0 _0232C548: ldr r0, _0232C568 ; =ov02_023568EC mov r1, r4 bl ov02_023296AC mov r0, r4 strb r5, [r4, #0x3d] bl ov02_0232C47C mov r0, r4 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0232C568: .word ov02_023568EC _0232C56C: .word ov02_023568F8 arm_func_end ov02_0232C508 arm_func_start ov02_0232C570 ov02_0232C570: ; 0x0232C570 stmdb sp!, {r3, r4, r5, lr} mov r4, r0 ldr r1, [r4] cmp r1, #0 movne r0, #0 strne r0, [r1] strne r0, [r4] ldr r5, [r4, #4] mov r1, r4 mov r0, r5 bl ov02_023296AC mov r0, #0 str r0, [r4, #4] ldr r1, [r4, #8] cmp r1, #0 beq _0232C5C8 add r0, r5, #0xc bl ov02_023295A4 ldr r0, [r4, #8] mov r1, #0 str r1, [r0, #0xc] str r1, [r4, #8] _0232C5C8: ldr r0, _0232C5EC ; =ov02_023568F8 mov r1, r4 bl ov02_023296AC ldr r0, _0232C5F0 ; =ov02_023568EC mov r1, r4 bl ov02_023295A4 mov r0, #0 strb r0, [r4, #0x2c] ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0232C5EC: .word ov02_023568F8 _0232C5F0: .word ov02_023568EC arm_func_end ov02_0232C570 arm_func_start ov02_0232C5F4 ov02_0232C5F4: ; 0x0232C5F4 stmdb sp!, {r4, lr} mov r4, r0 ldr r0, [r4, #8] cmp r0, #0 ldmeqia sp!, {r4, pc} bl ov02_0232CEE0 ldr r1, [r4, #0xc] cmp r1, #0 movne r0, #0 strne r0, [r1, #8] ldmneia sp!, {r4, pc} ldr r1, [r4, #0x10] ldr r2, _0232C640 ; =ov02_02356D44 mov r0, #0x24 mla r0, r1, r0, r2 mov r1, r4 add r0, r0, #0xc bl ov02_023296AC ldmia sp!, {r4, pc} .align 2, 0 _0232C640: .word ov02_02356D44 arm_func_end ov02_0232C5F4 arm_func_start ov02_0232C644 ov02_0232C644: ; 0x0232C644 stmdb sp!, {r4, r5, r6, lr} mov r6, r0 ldr r4, [r6, #4] mov r5, r1 cmp r4, #0 beq _0232C670 mov r0, r4 mov r1, r6 bl ov02_023296AC mov r0, #0 str r0, [r6, #4] _0232C670: ldr r0, _0232C6A0 ; =ov02_023568F8 mov r1, r6 bl ov02_023296AC strb r5, [r6, #0x3d] cmp r4, #0 beq _0232C694 mov r0, r4 mov r1, r6 bl ov02_0232C42C _0232C694: mov r0, r6 bl ov02_0232C47C ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _0232C6A0: .word ov02_023568F8 arm_func_end ov02_0232C644 arm_func_start ov02_0232C6A4 ov02_0232C6A4: ; 0x0232C6A4 stmdb sp!, {r4, lr} mov r4, r0 ldr r0, [r4, #0x44] cmp r0, #0 ldmeqia sp!, {r4, pc} bl ov02_0232BE14 mov r0, #0 str r0, [r4, #0x44] str r0, [r4, #0x48] ldmia sp!, {r4, pc} arm_func_end ov02_0232C6A4 arm_func_start ov02_0232C6CC ov02_0232C6CC: ; 0x0232C6CC stmdb sp!, {r4, lr} mov r4, r0 ldr r0, [r4, #0x40] mov r2, #1 mov r1, #0 mov r2, r2, lsl r0 ldr r0, [r4, #0x44] mov r3, r1 bl sub_0207C8B8 ldr r0, [r4, #0x24] mov r0, r0, lsl #0x1e movs r0, r0, asr #0x1f ldmneia sp!, {r4, pc} add r0, r4, #8 bl sub_0208260C add r0, r4, #0x14 bl sub_02082624 ldr r0, [r4, #0x24] orr r0, r0, #2 str r0, [r4, #0x24] ldmia sp!, {r4, pc} arm_func_end ov02_0232C6CC arm_func_start ov02_0232C720 ov02_0232C720: ; 0x0232C720 stmdb sp!, {r3, lr} ldr r1, [r0, #0x24] mov r1, r1, lsl #0x1f movs r1, r1, asr #0x1f ldmeqia sp!, {r3, pc} bl ov02_0232C7A8 ldmia sp!, {r3, pc} arm_func_end ov02_0232C720 arm_func_start ov02_0232C73C ov02_0232C73C: ; 0x0232C73C stmdb sp!, {r4, r5, r6, r7, r8, lr} mov r7, r0 str r1, [r7, #0x3c] ldr r0, [r7, #0x48] mov r6, #0 cmp r0, #0 ldmleia sp!, {r4, r5, r6, r7, r8, pc} ldr r4, _0232C7A4 ; =ov02_02357214 mov r8, #1 _0232C760: add r0, r7, r6 ldrb r5, [r0, #0x4c] ldr r1, [r7, #0x3c] add r0, r4, r5, lsl #3 ldr r0, [r0, #4] add r0, r1, r0 bl sub_0207D540 mov r2, r0 mov r0, r8, lsl r5 and r1, r2, #0xff mov r2, r2, asr #8 bl sub_0207CA24 ldr r0, [r7, #0x48] add r6, r6, #1 cmp r6, r0 blt _0232C760 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _0232C7A4: .word ov02_02357214 arm_func_end ov02_0232C73C arm_func_start ov02_0232C7A8 ov02_0232C7A8: ; 0x0232C7A8 stmdb sp!, {r3, r4, r5, lr} mov r4, r0 ldr r0, [r4, #0x24] mov r0, r0, lsl #0x1e movs r0, r0, asr #0x1f beq _0232C810 ldr r0, [r4, #0x40] mov r2, #1 mov r1, #0 mov r2, r2, lsl r0 ldr r0, [r4, #0x44] mov r3, r1 bl sub_0207C8E0 add r0, r4, #8 bl sub_0208263C add r0, r4, #0x14 bl sub_02082654 ldr r0, [r4, #0x24] bic r0, r0, #2 str r0, [r4, #0x24] bl sub_0207D13C mov r5, r0 mov r0, #1 bl sub_0207CF14 mov r0, r5 bl sub_0207D0D0 _0232C810: mov r0, r4 bl ov02_0232C81C ldmia sp!, {r3, r4, r5, pc} arm_func_end ov02_0232C7A8 arm_func_start ov02_0232C81C ov02_0232C81C: ; 0x0232C81C stmdb sp!, {r4, lr} mov r4, r0 ldr r0, [r4, #0x40] bl ov02_0232BE60 ldr r0, _0232C848 ; =ov02_023571C8 mov r1, r4 bl ov02_023296AC ldr r0, [r4, #0x24] bic r0, r0, #1 str r0, [r4, #0x24] ldmia sp!, {r4, pc} .align 2, 0 _0232C848: .word ov02_023571C8 arm_func_end ov02_0232C81C arm_func_start ov02_0232C84C ov02_0232C84C: ; 0x0232C84C ldr r0, _0232C860 ; =ov02_02357294 mov r1, #0 str r1, [r0] str r1, [r0, #0x48] bx lr .align 2, 0 _0232C860: .word ov02_02357294 arm_func_end ov02_0232C84C arm_func_start ov02_0232C864 ov02_0232C864: ; 0x0232C864 stmdb sp!, {r3, r4, r5, lr} ldr r0, _0232C8E4 ; =ov02_02357294 ldr r4, _0232C8E8 ; =ov02_023572DC ldr r0, [r0, #0x48] cmp r0, #0 ldmeqia sp!, {r3, r4, r5, pc} ldr r0, [r4, #4] cmp r0, #0 ldmneia sp!, {r3, r4, r5, pc} add r0, r4, #0x3c bl ov02_0232DD3C ldr r0, [r4, #0x4c] cmp r0, #0 beq _0232C8B4 add r0, r4, #0x3c bl ov02_0232DD54 cmp r0, #0 beq _0232C8B4 bl ov02_0232C8EC ldmia sp!, {r3, r4, r5, pc} _0232C8B4: add r0, r4, #0x3c bl ov02_0232DD08 ldr r1, [r4, #0x50] mov r5, r0, asr #8 cmp r5, r1 ldmeqia sp!, {r3, r4, r5, pc} ldr r0, [r4, #0x24] mov r1, r5 mov r2, #0 bl sub_0207CA24 str r5, [r4, #0x50] ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0232C8E4: .word ov02_02357294 _0232C8E8: .word ov02_023572DC arm_func_end ov02_0232C864 arm_func_start ov02_0232C8EC ov02_0232C8EC: ; 0x0232C8EC stmdb sp!, {r3, r4, r5, r6, r7, lr} ldr r0, _0232C9D0 ; =ov02_02357294 ldr r4, _0232C9D4 ; =ov02_023572DC ldr r0, [r0, #0x48] cmp r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} ldr r1, [r4, #0x2c] mov r3, #0 cmp r1, #0 movge r7, #1 movlt r7, #0 cmp r7, #0 movne r0, #1 movne r2, r0, lsl r1 ldr r0, [r4, #0x24] ldr r1, [r4, #0x28] moveq r2, #0 bl sub_0207C8E0 cmp r7, #0 beq _0232C974 bl sub_0207D13C mov r5, r0 mov r0, #1 bl sub_0207CF14 mov r0, r5 bl sub_0207D0D0 ldr r6, _0232C9D8 ; =ov02_0235729C mov r5, #0 _0232C95C: mov r0, r6 mov r1, r5 mov r2, r5 bl sub_02079E74 cmp r0, #0 bne _0232C95C _0232C974: ldr r0, [r4, #0x28] cmp r0, #0 beq _0232C984 bl ov02_0232BE44 _0232C984: ldr r0, [r4, #0x20] cmp r0, #0 beq _0232C994 bl ov02_0232BE14 _0232C994: cmp r7, #0 beq _0232C9A4 ldr r0, [r4, #0x2c] bl ov02_0232BE60 _0232C9A4: ldr r0, [r4, #4] cmp r0, #1 bne _0232C9C4 mov r0, #0 mov r1, r0 mov r2, r0 mov r3, r0 bl sub_0207CB54 _0232C9C4: mov r0, #0 str r0, [r4] ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _0232C9D0: .word ov02_02357294 _0232C9D4: .word ov02_023572DC _0232C9D8: .word ov02_0235729C arm_func_end ov02_0232C8EC arm_func_start ov02_0232C9DC ov02_0232C9DC: ; 0x0232C9DC stmdb sp!, {r4, lr} ldr r0, _0232CA34 ; =ov02_02357294 ldr r3, _0232CA38 ; =ov02_023572DC ldr r0, [r0, #0x48] cmp r0, #0 ldmeqia sp!, {r4, pc} ldr r1, [r3, #0x2c] cmp r1, #0 movge r0, #1 movge r2, r0, lsl r1 ldr r0, [r3, #0x24] ldr r1, [r3, #0x28] movlt r2, #0 mov r3, #0 bl sub_0207C8E0 bl sub_0207D13C mov r4, r0 mov r0, #1 bl sub_0207CF14 mov r0, r4 bl sub_0207D0D0 ldmia sp!, {r4, pc} .align 2, 0 _0232CA34: .word ov02_02357294 _0232CA38: .word ov02_023572DC arm_func_end ov02_0232C9DC arm_func_start ov02_0232CA3C ov02_0232CA3C: ; 0x0232CA3C stmdb sp!, {r4, lr} ldr r0, _0232CAB8 ; =ov02_02357294 ldr r4, _0232CABC ; =ov02_023572DC ldr r0, [r0, #0x48] cmp r0, #0 ldmeqia sp!, {r4, pc} ldr r1, [r4, #0xc] mov r0, #0 ldr r2, [r4, #0x14] str r0, [r4, #0x1c] bl ArrayFill32 ldr r1, [r4, #0x10] ldr r2, [r4, #0x14] mov r0, #0 bl ArrayFill32 ldr r0, [r4, #0xc] ldr r1, [r4, #0x14] bl DC_FlushRange ldr r0, [r4, #0x10] ldr r1, [r4, #0x14] bl DC_FlushRange ldr r1, [r4, #0x2c] mov r3, #0 cmp r1, #0 movge r0, #1 movge r2, r0, lsl r1 ldr r0, [r4, #0x24] ldr r1, [r4, #0x28] movlt r2, #0 bl sub_0207C8B8 ldmia sp!, {r4, pc} .align 2, 0 _0232CAB8: .word ov02_02357294 _0232CABC: .word ov02_023572DC arm_func_end ov02_0232CA3C arm_func_start ov02_0232CAC0 ov02_0232CAC0: ; 0x0232CAC0 stmdb sp!, {r3, r4, r5, lr} mov r5, r0 mov r4, r1 mov r0, r4 mov r1, r5 mov r2, #0x30 bl ArrayCopy32 ldr r0, [r5, #0x18] mov r3, #0 cmp r0, #0 moveq r0, #0 addne r0, r4, r0 str r0, [r5, #0x8c] ldr r0, [r5, #0x20] cmp r0, #0 moveq r0, #0 addne r0, r4, r0 str r0, [r5, #0x84] ldr r0, [r5, #0x10] cmp r0, #0 moveq r0, #0 addne r0, r4, r0 str r0, [r5, #0x88] str r3, [r5, #0x90] ldr r2, [r5, #0x84] ldr r0, [r2, #8] cmp r0, #0 bls _0232CB6C mov ip, r3 mov r1, r3 _0232CB38: add r2, r2, #0xc ldr r0, [r2, ip] add r2, r2, ip cmp r0, #0 moveq r0, r1 addne r0, r4, r0 str r0, [r2, #8] ldr r2, [r5, #0x84] add r3, r3, #1 ldr r0, [r2, #8] add ip, ip, #0x10 cmp r3, r0 blo _0232CB38 _0232CB6C: mov r1, #0 ldr r0, _0232CB80 ; =ov02_02357890 str r1, [r5, #0x30] str r5, [r0] ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0232CB80: .word ov02_02357890 arm_func_end ov02_0232CAC0 arm_func_start ov02_0232CB84 ov02_0232CB84: ; 0x0232CB84 ldr r1, _0232CB98 ; =ov02_02357890 ldr r2, [r1] str r0, [r1] mov r0, r2 bx lr .align 2, 0 _0232CB98: .word ov02_02357890 arm_func_end ov02_0232CB84 arm_func_start ov02_0232CB9C ov02_0232CB9C: ; 0x0232CB9C ldr r0, _0232CBA8 ; =ov02_02357890 ldr r0, [r0] bx lr .align 2, 0 _0232CBA8: .word ov02_02357890 arm_func_end ov02_0232CB9C arm_func_start ov02_0232CBAC ov02_0232CBAC: ; 0x0232CBAC ldr r1, _0232CC0C ; =ov02_02357890 ldr r3, [r1] ldr r2, [r3, #0x8c] ldr r1, [r2, #0xc] cmp r1, #0 moveq r2, #0 addne r2, r2, r1 cmp r2, #0 moveq r0, #0 bxeq lr cmp r0, #0 movlt r0, #0 bxlt lr ldr r1, [r2] cmp r0, r1 movhs r0, #0 bxhs lr add r0, r2, r0, lsl #2 ldr r1, [r0, #4] ldr r0, [r3, #0x8c] cmp r1, #0 moveq r0, #0 addne r0, r0, r1 bx lr .align 2, 0 _0232CC0C: .word ov02_02357890 arm_func_end ov02_0232CBAC arm_func_start ov02_0232CC10 ov02_0232CC10: ; 0x0232CC10 ldr r1, _0232CC70 ; =ov02_02357890 ldr r3, [r1] ldr r2, [r3, #0x8c] ldr r1, [r2, #0x10] cmp r1, #0 moveq r2, #0 addne r2, r2, r1 cmp r2, #0 moveq r0, #0 bxeq lr cmp r0, #0 movlt r0, #0 bxlt lr ldr r1, [r2] cmp r0, r1 movhs r0, #0 bxhs lr add r0, r2, r0, lsl #2 ldr r1, [r0, #4] ldr r0, [r3, #0x8c] cmp r1, #0 moveq r0, #0 addne r0, r0, r1 bx lr .align 2, 0 _0232CC70: .word ov02_02357890 arm_func_end ov02_0232CC10 arm_func_start ov02_0232CC74 ov02_0232CC74: ; 0x0232CC74 ldr r1, _0232CCD4 ; =ov02_02357890 ldr r3, [r1] ldr r2, [r3, #0x8c] ldr r1, [r2, #0x14] cmp r1, #0 moveq r2, #0 addne r2, r2, r1 cmp r2, #0 moveq r0, #0 bxeq lr cmp r0, #0 movlt r0, #0 bxlt lr ldr r1, [r2] cmp r0, r1 movhs r0, #0 bxhs lr add r0, r2, r0, lsl #2 ldr r1, [r0, #4] ldr r0, [r3, #0x8c] cmp r1, #0 moveq r0, #0 addne r0, r0, r1 bx lr .align 2, 0 _0232CCD4: .word ov02_02357890 arm_func_end ov02_0232CC74 arm_func_start ov02_0232CCD8 ov02_0232CCD8: ; 0x0232CCD8 ldr r1, _0232CD38 ; =ov02_02357890 ldr r3, [r1] ldr r2, [r3, #0x8c] ldr r1, [r2, #0x18] cmp r1, #0 moveq r2, #0 addne r2, r2, r1 cmp r2, #0 moveq r0, #0 bxeq lr cmp r0, #0 movlt r0, #0 bxlt lr ldr r1, [r2] cmp r0, r1 movhs r0, #0 bxhs lr add r0, r2, r0, lsl #2 ldr r1, [r0, #4] ldr r0, [r3, #0x8c] cmp r1, #0 moveq r0, #0 addne r0, r0, r1 bx lr .align 2, 0 _0232CD38: .word ov02_02357890 arm_func_end ov02_0232CCD8 arm_func_start ov02_0232CD3C ov02_0232CD3C: ; 0x0232CD3C ldr r1, _0232CD60 ; =ov02_02357890 ldr r1, [r1] ldr r2, [r1, #0x84] ldr r1, [r2, #8] cmp r0, r1 movhs r0, #0 addlo r0, r2, r0, lsl #4 ldrlo r0, [r0, #0x10] bx lr .align 2, 0 _0232CD60: .word ov02_02357890 arm_func_end ov02_0232CD3C arm_func_start ov02_0232CD64 ov02_0232CD64: ; 0x0232CD64 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} ldr r4, _0232CE28 ; =ov02_02357890 mov sb, r2 ldr r7, [r4] mov sl, r1 ldr r2, [r7, #0x84] mov r8, r3 ldr r1, [r2, #8] cmp r0, r1 mvnhs r0, #0 ldmhsia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} ldr r5, [r7, #0x90] add r1, r2, #0xc cmp r5, #0 moveq r5, sb add fp, r1, r0, lsl #4 cmp sb, #0 mov r4, #0 ble _0232CE20 _0232CDB0: ldr r0, [fp, #4] sub r6, sb, r4 cmp r6, r5 movgt r6, r5 sub r0, r0, r8 cmp r6, r0 movhi r6, r0 cmp r6, #0 beq _0232CE20 ldr r1, [fp] mov r2, #0 add r0, r7, #0x34 add r1, r1, r8 bl sub_0207F828 cmp r0, #0 mvneq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} mov r1, sl mov r2, r6 add r0, r7, #0x34 bl sub_0207F818 cmp r0, #0 ldmltia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} add r4, r4, r0 cmp r4, sb add r8, r8, r0 add sl, sl, r0 blt _0232CDB0 _0232CE20: mov r0, r4 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _0232CE28: .word ov02_02357890 arm_func_end ov02_0232CD64 arm_func_start ov02_0232CE2C ov02_0232CE2C: ; 0x0232CE2C ldr r1, _0232CE50 ; =ov02_02357890 ldr r1, [r1] ldr r2, [r1, #0x84] ldr r1, [r2, #8] cmp r0, r1 movhs r0, #0 addlo r0, r2, r0, lsl #4 ldrlo r0, [r0, #0x14] bx lr .align 2, 0 _0232CE50: .word ov02_02357890 arm_func_end ov02_0232CE2C arm_func_start ov02_0232CE54 ov02_0232CE54: ; 0x0232CE54 ldr r2, _0232CE6C ; =ov02_02357890 ldr r2, [r2] ldr r2, [r2, #0x84] add r0, r2, r0, lsl #4 str r1, [r0, #0x14] bx lr .align 2, 0 _0232CE6C: .word ov02_02357890 arm_func_end ov02_0232CE54 arm_func_start ov02_0232CE70 ov02_0232CE70: ; 0x0232CE70 stmdb sp!, {r3, r4, r5, lr} add r2, r0, #3 add r0, r0, r1 bic r5, r2, #3 cmp r5, r0 movhi r0, #0 ldmhiia sp!, {r3, r4, r5, pc} sub r1, r0, r5 cmp r1, #0x10 movlo r0, #0 ldmloia sp!, {r3, r4, r5, pc} add r0, r5, #0x10 sub r1, r1, #0x10 mov r2, #0 bl ov02_02329F40 movs r4, r0 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, pc} mov r0, r5 mov r1, r4 bl ov02_0232D02C cmp r0, #0 movne r0, r5 ldmneia sp!, {r3, r4, r5, pc} mov r0, r4 bl ov02_02329F78 mov r0, #0 ldmia sp!, {r3, r4, r5, pc} arm_func_end ov02_0232CE70 arm_func_start ov02_0232CEE0 ov02_0232CEE0: ; 0x0232CEE0 stmdb sp!, {r4, lr} mov r4, r0 bl ov02_0232CEF8 ldr r0, [r4] bl ov02_02329F78 ldmia sp!, {r4, pc} arm_func_end ov02_0232CEE0 arm_func_start ov02_0232CEF8 ov02_0232CEF8: ; 0x0232CEF8 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} mov r8, r0 mov r6, #0 mov r1, r6 add r0, r8, #4 bl ov02_02329724 movs r5, r0 beq _0232CF90 mov sl, #1 mov sb, r6 mov r4, r6 _0232CF24: mov r0, r5 mov r1, r4 bl ov02_02329724 movs r7, r0 beq _0232CF70 _0232CF38: ldr ip, [r7, #0xc] cmp ip, #0 beq _0232CF5C ldr r1, [r7, #8] ldr r2, [r7, #0x10] ldr r3, [r7, #0x14] add r0, r7, #0x20 blx ip mov r6, sl _0232CF5C: mov r0, r5 mov r1, r7 bl ov02_02329724 movs r7, r0 bne _0232CF38 _0232CF70: mov r1, r5 add r0, r8, #4 bl ov02_023296AC mov r1, sb add r0, r8, #4 bl ov02_02329724 movs r5, r0 bne _0232CF24 _0232CF90: ldr r0, [r8] mov r1, #3 bl ov02_02329FB8 cmp r6, #0 beq _0232CFA8 bl ov02_0232D09C _0232CFA8: mov r0, r8 bl ov02_0232D060 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} arm_func_end ov02_0232CEF8 arm_func_start ov02_0232CFB4 ov02_0232CFB4: ; 0x0232CFB4 stmdb sp!, {r4, r5, r6, r7, r8, lr} mov r7, r1 mov r8, r0 add r0, r7, #0x1f bic r1, r0, #0x1f mov r6, r2 ldr r0, [r8] add r1, r1, #0x20 mov r2, #0x20 mov r5, r3 bl ov02_02329F84 movs r4, r0 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, r7, r8, pc} add r0, r8, #4 mov r1, #0 bl ov02_02329724 str r7, [r4, #8] str r6, [r4, #0xc] ldr r2, [sp, #0x18] str r5, [r4, #0x10] mov r1, r4 str r2, [r4, #0x14] bl ov02_023295A4 add r0, r4, #0x20 ldmia sp!, {r4, r5, r6, r7, r8, pc} arm_func_end ov02_0232CFB4 arm_func_start ov02_0232D01C ov02_0232D01C: ; 0x0232D01C ldr ip, _0232D028 ; =ov02_02329560 mov r1, #0 bx ip .align 2, 0 _0232D028: .word ov02_02329560 arm_func_end ov02_0232D01C arm_func_start ov02_0232D02C ov02_0232D02C: ; 0x0232D02C stmdb sp!, {r3, r4, r5, lr} mov r5, r0 mov r4, r1 add r0, r5, #4 mov r1, #0xc bl ov02_02329560 mov r0, r5 str r4, [r5] bl ov02_0232D060 cmp r0, #0 movne r0, #1 moveq r0, #0 ldmia sp!, {r3, r4, r5, pc} arm_func_end ov02_0232D02C arm_func_start ov02_0232D060 ov02_0232D060: ; 0x0232D060 stmdb sp!, {r3, r4, r5, lr} mov r5, r0 ldr r0, [r5] mov r1, #0x14 mov r2, #4 bl ov02_02329F84 movs r4, r0 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, pc} bl ov02_0232D01C mov r1, r4 add r0, r5, #4 bl ov02_023295A4 mov r0, #1 ldmia sp!, {r3, r4, r5, pc} arm_func_end ov02_0232D060 arm_func_start ov02_0232D09C ov02_0232D09C: ; 0x0232D09C stmdb sp!, {r4, lr} bl sub_0207D13C mov r4, r0 mov r0, #1 bl sub_0207CF14 mov r0, r4 bl sub_0207D0D0 ldmia sp!, {r4, pc} arm_func_end ov02_0232D09C arm_func_start ov02_0232D0BC ov02_0232D0BC: ; 0x0232D0BC stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #8 mov sl, r1 mov sb, r2 mov fp, r3 bl ov02_0232CC10 movs r5, r0 addeq sp, sp, #8 moveq r0, #4 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} tst sl, #2 ldr r0, [r5] beq _0232D110 mov r1, sb mov r2, fp bl ov02_0232D328 movs r6, r0 bne _0232D118 add sp, sp, #8 mov r0, #8 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} _0232D110: bl ov02_0232CE2C mov r6, r0 _0232D118: and r8, sl, #4 mov r7, #0 _0232D120: add r0, r5, r7, lsl #1 ldrh r0, [r0, #4] ldr r1, _0232D1F8 ; =0x0000FFFF cmp r0, r1 beq _0232D1D4 bl ov02_0232CC74 movs r4, r0 addeq sp, sp, #8 moveq r0, #5 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} add r0, sp, #4 str r0, [sp] add r0, r5, r7, lsl #1 ldrh r0, [r0, #4] mov r1, sl mov r2, sb mov r3, fp bl ov02_0232D1FC cmp r0, #0 addne sp, sp, #8 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} ldr r0, [r4] mov r0, r0, lsr #0x18 tst r0, #1 cmpne r8, #0 beq _0232D1B8 str sb, [sp] ldr r1, [r4] ldr r0, [sp, #4] mov r3, r1, lsl #8 mov r1, r6 mov r2, r7 mov r3, r3, lsr #8 bl ov02_0232D6F0 cmp r0, #0 addeq sp, sp, #8 moveq r0, #9 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} _0232D1B8: cmp r6, #0 ldrne r2, [sp, #4] cmpne r2, #0 beq _0232D1D4 mov r0, r6 mov r1, r7 bl sub_0207D5B0 _0232D1D4: add r7, r7, #1 cmp r7, #4 blt _0232D120 ldr r0, [sp, #0x30] cmp r0, #0 strne r6, [r0] mov r0, #0 add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _0232D1F8: .word 0x0000FFFF arm_func_end ov02_0232D0BC arm_func_start ov02_0232D1FC ov02_0232D1FC: ; 0x0232D1FC stmdb sp!, {r4, r5, r6, lr} mov r6, r1 mov r5, r2 mov r4, r3 bl ov02_0232CC74 cmp r0, #0 moveq r0, #5 ldmeqia sp!, {r4, r5, r6, pc} tst r6, #4 ldr r0, [r0] beq _0232D268 mov r1, r0, lsr #0x18 tst r1, #1 mov r0, r0, lsl #8 mov r1, r5 beq _0232D24C mov r2, r4 mov r0, r0, lsr #8 bl ov02_0232D400 b _0232D258 _0232D24C: mov r2, r4 mov r0, r0, lsr #8 bl ov02_0232D394 _0232D258: cmp r0, #0 bne _0232D274 mov r0, #9 ldmia sp!, {r4, r5, r6, pc} _0232D268: mov r0, r0, lsl #8 mov r0, r0, lsr #8 bl ov02_0232CE2C _0232D274: ldr r1, [sp, #0x10] cmp r1, #0 strne r0, [r1] mov r0, #0 ldmia sp!, {r4, r5, r6, pc} arm_func_end ov02_0232D1FC arm_func_start ov02_0232D288 ov02_0232D288: ; 0x0232D288 stmdb sp!, {r3, r4, r5, r6, r7, r8, lr} sub sp, sp, #4 mov r8, r0 mov r7, r1 mov r6, r2 mov r4, r3 bl ov02_0232CD3C movs r5, r0 addeq sp, sp, #4 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc} ldr r0, [sp, #0x20] cmp r0, #0 addeq sp, sp, #4 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc} mov r2, r7 mov r3, r6 add r1, r5, #0x20 str r4, [sp] bl ov02_0232CFB4 movs r4, r0 addeq sp, sp, #4 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, pc} mov r0, r8 mov r1, r4 mov r2, r5 mov r3, #0 bl ov02_0232CD64 cmp r5, r0 addne sp, sp, #4 movne r0, #0 ldmneia sp!, {r3, r4, r5, r6, r7, r8, pc} mov r0, r4 mov r1, r5 bl sub_0207A2C0 mov r0, r4 add sp, sp, #4 ldmia sp!, {r3, r4, r5, r6, r7, r8, pc} arm_func_end ov02_0232D288 arm_func_start ov02_0232D328 ov02_0232D328: ; 0x0232D328 stmdb sp!, {r3, r4, r5, r6, r7, lr} mov r7, r0 mov r6, r1 mov r5, r2 bl ov02_0232CE2C movs r4, r0 bne _0232D388 cmp r5, #0 moveq r2, #0 beq _0232D358 bl ov02_0232CB9C mov r2, r0 _0232D358: ldr r1, _0232D390 ; =ov02_0232D560 mov r0, r7 mov r3, r7 str r6, [sp] bl ov02_0232D288 mov r4, r0 cmp r5, #0 cmpne r4, #0 beq _0232D388 mov r0, r7 mov r1, r4 bl ov02_0232CE54 _0232D388: mov r0, r4 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _0232D390: .word ov02_0232D560 arm_func_end ov02_0232D328 arm_func_start ov02_0232D394 ov02_0232D394: ; 0x0232D394 stmdb sp!, {r3, r4, r5, r6, r7, lr} mov r7, r0 mov r6, r1 mov r5, r2 bl ov02_0232CE2C movs r4, r0 bne _0232D3F4 cmp r5, #0 moveq r2, #0 beq _0232D3C4 bl ov02_0232CB9C mov r2, r0 _0232D3C4: ldr r1, _0232D3FC ; =ov02_0232D590 mov r0, r7 mov r3, r7 str r6, [sp] bl ov02_0232D288 mov r4, r0 cmp r5, #0 cmpne r4, #0 beq _0232D3F4 mov r0, r7 mov r1, r4 bl ov02_0232CE54 _0232D3F4: mov r0, r4 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _0232D3FC: .word ov02_0232D590 arm_func_end ov02_0232D394 arm_func_start ov02_0232D400 ov02_0232D400: ; 0x0232D400 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} mov sb, r0 mov r8, r1 mov r7, r2 bl ov02_0232CE2C movs r5, r0 bne _0232D4F4 ldr r1, _0232D4FC ; =ov02_02357894 mov r0, sb mov r2, #0x3c mov r3, #0 bl ov02_0232CD64 cmp r0, #0x3c movne r0, #0 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} ldr r0, _0232D500 ; =ov02_02357894 cmp r8, #0 ldr r0, [r0, #0x38] mov r6, r0, lsl #2 mov r4, r6, lsl #1 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} cmp r7, #0 moveq r3, #0 beq _0232D46C bl ov02_0232CB9C mov r3, r0 _0232D46C: ldr r2, _0232D504 ; =ov02_0232D5C0 mov r0, r8 add r1, r4, #0x5c str sb, [sp] bl ov02_0232CFB4 movs r5, r0 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} mov r0, sb mov r1, r5 add r2, r6, #0x3c mov r3, #0 bl ov02_0232CD64 add r1, r6, #0x3c cmp r0, r1 movne r0, #0 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} ldr r1, [r5, #0x38] add r0, r5, #0x3c mov r2, r6 add r1, r0, r1, lsl #2 bl MemcpyFast mov r2, r6 add r0, r5, #0x3c mov r1, #0 bl MemsetFast mov r0, r5 add r1, r4, #0x3c bl sub_0207A2C0 cmp r7, #0 beq _0232D4F4 mov r0, sb mov r1, r5 bl ov02_0232CE54 _0232D4F4: mov r0, r5 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} .align 2, 0 _0232D4FC: .word ov02_02357894 _0232D500: .word ov02_02357894 _0232D504: .word ov02_0232D5C0 arm_func_end ov02_0232D400 arm_func_start ov02_0232D508 ov02_0232D508: ; 0x0232D508 stmdb sp!, {r3, r4, r5, r6, r7, lr} movs r4, r1 mov r7, r0 mov r6, r2 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} bl EnableIrqFlag mov r5, r0 mov r0, r4 bl ov02_0232CB84 mov r4, r0 mov r0, r6 bl ov02_0232CE2C cmp r7, r0 bne _0232D54C mov r0, r6 mov r1, #0 bl ov02_0232CE54 _0232D54C: mov r0, r4 bl ov02_0232CB84 mov r0, r5 bl SetIrqFlag ldmia sp!, {r3, r4, r5, r6, r7, pc} arm_func_end ov02_0232D508 arm_func_start ov02_0232D560 ov02_0232D560: ; 0x0232D560 stmdb sp!, {r3, r4, r5, lr} mov r4, r1 mov r1, r2 mov r5, r0 mov r2, r3 bl ov02_0232D508 mov r0, r5 add r1, r5, r4 bl sub_0207CB14 mov r0, r5 bl sub_0207D67C ldmia sp!, {r3, r4, r5, pc} arm_func_end ov02_0232D560 arm_func_start ov02_0232D590 ov02_0232D590: ; 0x0232D590 stmdb sp!, {r3, r4, r5, lr} mov r4, r1 mov r1, r2 mov r5, r0 mov r2, r3 bl ov02_0232D508 mov r0, r5 add r1, r5, r4 bl sub_0207CB34 mov r0, r5 bl sub_0207D714 ldmia sp!, {r3, r4, r5, pc} arm_func_end ov02_0232D590 arm_func_start ov02_0232D5C0 ov02_0232D5C0: ; 0x0232D5C0 stmdb sp!, {r4, lr} mov r1, r2 mov r4, r0 mov r2, r3 bl ov02_0232D508 mov r0, r4 bl sub_0207D714 ldmia sp!, {r4, pc} arm_func_end ov02_0232D5C0 arm_func_start ov02_0232D5E0 ov02_0232D5E0: ; 0x0232D5E0 stmdb sp!, {r3, r4, r5, r6, r7, lr} mov r5, r2 mov r7, r0 mov r4, r3 mov r6, r1 mov r0, r5 mov r1, r4 bl sub_0207D968 cmp r7, r0 bne _0232D618 mov r0, r5 mov r1, r4 mov r2, #0 bl sub_0207D934 _0232D618: mov r0, r7 add r1, r7, r6 bl sub_0207CB34 ldmia sp!, {r3, r4, r5, r6, r7, pc} arm_func_end ov02_0232D5E0 arm_func_start ov02_0232D628 ov02_0232D628: ; 0x0232D628 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} mov r8, r0 mov r7, r1 mov r6, r2 mov r5, r3 bl sub_0207D968 cmp r0, #0 movne r0, #1 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} mov r0, r8 bl sub_0207D92C ldr r1, [r8, #0x38] sub r0, r0, #1 add r1, r1, r7 add r1, r8, r1, lsl #2 cmp r7, r0 ldrlo r0, [r1, #0x40] ldr r4, [r1, #0x3c] ldrhs r0, [r8, #8] cmp r5, #0 sub sb, r0, r4 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} ldr r2, _0232D6EC ; =ov02_0232D5E0 mov r0, r5 mov r3, r8 add r1, sb, #0x20 str r7, [sp] bl ov02_0232CFB4 movs r5, r0 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} mov r0, r6 mov r1, r5 mov r2, sb mov r3, r4 bl ov02_0232CD64 cmp sb, r0 movne r0, #0 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} mov r0, r5 mov r1, sb bl sub_0207A2C0 mov r0, r8 mov r1, r7 mov r2, r5 bl sub_0207D934 mov r0, #1 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} .align 2, 0 _0232D6EC: .word ov02_0232D5E0 arm_func_end ov02_0232D628 arm_func_start ov02_0232D6F0 ov02_0232D6F0: ; 0x0232D6F0 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, lr} sub sp, sp, #0x1c mov r8, r0 add r0, sp, #0 mov r7, r1 mov r6, r2 mov r5, r3 ldr r4, [sp, #0x40] bl sub_0207D75C ldr r1, [sp] ldr r0, [sp, #4] str r1, [sp, #8] str r0, [sp, #0xc] cmp r7, #0 add r2, sp, #8 addeq sp, sp, #0x1c moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, pc} add r1, sp, #0x10 mov r0, r7 bl sub_0207D77C cmp r0, #0 beq _0232D7A4 add sl, sp, #0x10 add sb, sp, #8 _0232D754: ldrb r0, [sp, #0x10] cmp r0, #1 ldreqh r0, [sp, #0x14] cmpeq r6, r0 bne _0232D78C ldrh r1, [sp, #0x12] mov r0, r8 mov r2, r5 mov r3, r4 bl ov02_0232D628 cmp r0, #0 addeq sp, sp, #0x1c moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, pc} _0232D78C: mov r0, r7 mov r1, sl mov r2, sb bl sub_0207D77C cmp r0, #0 bne _0232D754 _0232D7A4: mov r0, #1 add sp, sp, #0x1c ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, pc} arm_func_end ov02_0232D6F0 arm_func_start ov02_0232D7B0 ov02_0232D7B0: ; 0x0232D7B0 stmdb sp!, {r4, r5, r6, r7, r8, lr} mov r4, r0 bl ov02_0232CB9C mov r6, #0 mov r5, r6 _0232D7C4: mov r0, r6 bl ov02_0232CCD8 movs r7, r0 beq _0232D838 ldrb r1, [r7] mov r0, r6 bl ov02_0232BE9C ldrh r1, [r7, #2] mov r0, r6 bl ov02_0232BEBC ldr r0, [r7, #4] cmp r0, #0 cmpne r4, #0 beq _0232D838 ldrb r0, [r7] mov r8, r5 cmp r0, #0 ble _0232D838 _0232D80C: ldr r2, [r7, #4] mov r0, r6 mov r1, r4 bl ov02_0232BED4 cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, r7, r8, pc} ldrb r0, [r7] add r8, r8, #1 cmp r8, r0 blt _0232D80C _0232D838: add r6, r6, #1 cmp r6, #0x20 blt _0232D7C4 mov r0, #1 ldmia sp!, {r4, r5, r6, r7, r8, pc} arm_func_end ov02_0232D7B0 arm_func_start ov02_0232D84C ov02_0232D84C: ; 0x0232D84C stmdb sp!, {r3, r4, r5, r6, r7, lr} sub sp, sp, #0x10 mov r6, r1 mov r7, r0 mov r0, r6 mov r5, r2 bl ov02_0232CBAC cmp r0, #0 addeq sp, sp, #0x10 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} ldr r0, [r0] bl ov02_0232CE2C movs r4, r0 addeq sp, sp, #0x10 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} mov r1, r5 bl ov02_0232DC88 cmp r0, #0 addeq sp, sp, #0x10 moveq r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} stmia sp, {r0, r4, r6} str r5, [sp, #0xc] ldrb r1, [r0, #9] ldrh r2, [r0, #4] ldrb r3, [r0, #8] mov r0, r7 bl ov02_0232D8CC add sp, sp, #0x10 ldmia sp!, {r3, r4, r5, r6, r7, pc} arm_func_end ov02_0232D84C arm_func_start ov02_0232D8CC ov02_0232D8CC: ; 0x0232D8CC stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #8 mov r7, r2 mov r2, r3 ldr r6, [sp, #0x20] mov r4, r0 mov r8, r1 bl ov02_0232C250 movs r5, r0 addeq sp, sp, #8 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, r7, r8, pc} mov r0, r8 mov r1, r5 bl ov02_0232C390 add ip, sp, #4 mov r2, r0 mov r0, r7 mov r1, #6 mov r3, #0 str ip, [sp] bl ov02_0232D0BC cmp r0, #0 beq _0232D940 mov r0, r5 bl ov02_0232C2E8 add sp, sp, #8 mov r0, #0 ldmia sp!, {r4, r5, r6, r7, r8, pc} _0232D940: ldr ip, [sp, #0x24] ldr r2, [r6] ldr r1, [ip, #0x18] ldr r3, [sp, #4] mov r0, r5 add r1, ip, r1 bl ov02_0232C2F4 ldrb r1, [r6, #6] mov r0, r4 bl ov02_0232BFB8 ldrb r1, [r6, #7] mov r0, r4 bl ov02_0232BFCC ldr r1, [sp, #0x28] ldr r2, [sp, #0x2c] mov r0, r4 bl ov02_0232C00C mov r0, #1 add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} arm_func_end ov02_0232D8CC arm_func_start ov02_0232D990 ov02_0232D990: ; 0x0232D990 stmdb sp!, {r3, r4, r5, r6, r7, lr} ldr r7, _0232DA98 ; =ov02_02357F6C ldr r4, _0232DA9C ; =_020AE224 mov r5, #0 _0232D9A0: ldr r1, [r7, #0x110] mov r0, r1, lsl #0x1f movs r0, r0, asr #0x1f beq _0232DA84 ldr r0, [r7, #0x114] cmp r0, #0 bne _0232D9C8 mov r0, r7 bl ov02_0232DACC b _0232DA84 _0232D9C8: mov r0, r1, lsl #0x1d movs r0, r0, asr #0x1f ldrne r0, [r7, #0x118] cmpne r0, #0 beq _0232D9F4 mov r0, r7 bl ov02_0232C6CC ldr r0, [r7, #0x110] orr r0, r0, #2 bic r0, r0, #4 str r0, [r7, #0x110] _0232D9F4: ldr r0, [r7, #0x110] mov r0, r0, lsl #0x1e movs r0, r0, asr #0x1f beq _0232DA84 add r0, r7, #0xe8 bl ov02_0232DD3C ldr r1, [r7, #0x154] add r0, r7, #0xe8 mov r1, r1, lsl #1 ldrsh r6, [r4, r1] bl ov02_0232DD08 mov r0, r0, asr #8 ldr r1, [r7, #0x158] mov r0, r0, lsl #1 mov r2, r1, lsl #1 ldrsh r1, [r4, r0] ldrsh r2, [r4, r2] ldr r0, [r7, #0x15c] add r1, r1, r6 add r6, r2, r1 cmp r6, r0 beq _0232DA5C mov r0, r7 mov r1, r6 bl ov02_0232C73C str r6, [r7, #0x15c] _0232DA5C: ldr r0, [r7, #0x110] mov r0, r0, lsl #0x1c movs r0, r0, asr #0x1f beq _0232DA84 add r0, r7, #0xe8 bl ov02_0232DD54 cmp r0, #0 beq _0232DA84 mov r0, r7 bl ov02_0232DACC _0232DA84: add r5, r5, #1 cmp r5, #4 add r7, r7, #0x174 blt _0232D9A0 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _0232DA98: .word ov02_02357F6C _0232DA9C: .word _020AE224 arm_func_end ov02_0232D990 arm_func_start ov02_0232DAA0 ov02_0232DAA0: ; 0x0232DAA0 ldr r2, [r0, #0x14c] cmp r2, #0 movne r1, #0 strne r1, [r2] strne r1, [r0, #0x14c] ldr r1, [r0, #0x110] bic r2, r1, #1 bic r1, r2, #4 bic r1, r1, #2 str r1, [r0, #0x110] bx lr arm_func_end ov02_0232DAA0 arm_func_start ov02_0232DACC ov02_0232DACC: ; 0x0232DACC stmdb sp!, {r4, lr} mov r4, r0 ldr r0, _0232DB5C ; =ov02_02357F48 bl sub_0207A048 ldr r0, _0232DB60 ; =ov02_023578D0 ldr r0, [r0, #4] cmp r0, #0 beq _0232DAF8 add r0, r0, #0xc8 add r0, r0, #0x400 bl sub_0207A048 _0232DAF8: ldr r0, [r4, #0x110] mov r0, r0, lsl #0x1e movs r0, r0, asr #0x1f beq _0232DB10 mov r0, r4 bl ov02_0232C720 _0232DB10: ldr r0, [r4, #0x110] mov r0, r0, lsl #0x1f movs r0, r0, asr #0x1f beq _0232DB2C ldr r1, [r4, #0x170] mov r0, r4 blx r1 _0232DB2C: mov r0, r4 bl ov02_0232DB64 ldr r0, _0232DB5C ; =ov02_02357F48 bl sub_0207A0CC ldr r0, _0232DB60 ; =ov02_023578D0 ldr r0, [r0, #4] cmp r0, #0 ldmeqia sp!, {r4, pc} add r0, r0, #0xc8 add r0, r0, #0x400 bl sub_0207A0CC ldmia sp!, {r4, pc} .align 2, 0 _0232DB5C: .word ov02_02357F48 _0232DB60: .word ov02_023578D0 arm_func_end ov02_0232DACC arm_func_start ov02_0232DB64 ov02_0232DB64: ; 0x0232DB64 stmdb sp!, {r4, lr} mov r4, r0 ldr r1, [r4, #0x110] mov r1, r1, lsl #0x1f movs r1, r1, asr #0x1f ldmeqia sp!, {r4, pc} bl ov02_0232DBC8 ldr r1, [r4, #0x168] mov r0, r4 blx r1 ldr r0, _0232DBC0 ; =ov02_02357F60 mov r1, r4 bl ov02_0232DBEC ldr r0, _0232DBC4 ; =ov02_023578D0 ldr r0, [r0, #4] cmp r0, #0 beq _0232DBB4 mov r1, r4 add r0, r0, #0x4e0 bl ov02_0232DBEC _0232DBB4: mov r0, r4 bl ov02_0232DAA0 ldmia sp!, {r4, pc} .align 2, 0 _0232DBC0: .word ov02_02357F60 _0232DBC4: .word ov02_023578D0 arm_func_end ov02_0232DB64 arm_func_start ov02_0232DBC8 ov02_0232DBC8: ; 0x0232DBC8 stmdb sp!, {r3, lr} ldr r1, [r0, #0x120] cmp r1, #0 ldmeqia sp!, {r3, pc} subs r1, r1, #1 str r1, [r0, #0x120] ldmneia sp!, {r3, pc} bl ov02_0232C6A4 ldmia sp!, {r3, pc} arm_func_end ov02_0232DBC8 arm_func_start ov02_0232DBEC ov02_0232DBEC: ; 0x0232DBEC stmdb sp!, {r4, r5, r6, r7, r8, lr} mov r8, r0 mov r7, r1 bl EnableIrqFlag mov r4, r0 mov r0, r8 mov r1, #0 bl ov02_0232970C movs r5, r0 beq _0232DC50 _0232DC14: mov r0, r8 mov r1, r5 bl ov02_0232970C ldr r1, [r5, #8] mov r6, r0 cmp r1, r7 bne _0232DC44 mov r0, r8 mov r1, r5 bl ov02_023296AC mov r0, r5 bl ov02_0232DC5C _0232DC44: mov r5, r6 cmp r6, #0 bne _0232DC14 _0232DC50: mov r0, r4 bl SetIrqFlag ldmia sp!, {r4, r5, r6, r7, r8, pc} arm_func_end ov02_0232DBEC arm_func_start ov02_0232DC5C ov02_0232DC5C: ; 0x0232DC5C stmdb sp!, {r3, r4, r5, lr} mov r5, r0 bl EnableIrqFlag mov r4, r0 ldr r0, _0232DC84 ; =ov02_023578DC mov r1, r5 bl ov02_023295A4 mov r0, r4 bl SetIrqFlag ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0232DC84: .word ov02_023578DC arm_func_end ov02_0232DC5C arm_func_start ov02_0232DC88 ov02_0232DC88: ; 0x0232DC88 cmp r1, #0 movlt r0, #0 bxlt lr ldr r2, [r0, #0x1c] cmp r1, r2 movhs r0, #0 bxhs lr mov r2, #0xc mul r3, r1, r2 add ip, r0, #0x20 ldr r1, [ip, r3] sub r0, r2, #0xd cmp r1, r0 add r0, ip, r3 moveq r0, #0 bx lr arm_func_end ov02_0232DC88 arm_func_start ov02_0232DCC8 ov02_0232DCC8: ; 0x0232DCC8 mov r1, #0 str r1, [r0, #4] str r1, [r0] str r1, [r0, #0xc] str r1, [r0, #8] bx lr arm_func_end ov02_0232DCC8 arm_func_start ov02_0232DCE0 ov02_0232DCE0: ; 0x0232DCE0 stmdb sp!, {r4, r5, r6, lr} mov r6, r0 mov r5, r1 mov r4, r2 bl ov02_0232DD08 stmia r6, {r0, r5} str r4, [r6, #0xc] mov r0, #0 str r0, [r6, #8] ldmia sp!, {r4, r5, r6, pc} arm_func_end ov02_0232DCE0 arm_func_start ov02_0232DD08 ov02_0232DD08: ; 0x0232DD08 stmdb sp!, {r4, lr} ldr r1, [r0, #0xc] ldr r2, [r0, #8] cmp r2, r1 ldrge r0, [r0, #4] ldmgeia sp!, {r4, pc} ldr r4, [r0] ldr r0, [r0, #4] sub r0, r0, r4 mul r0, r2, r0 bl _s32_div_f add r0, r4, r0 ldmia sp!, {r4, pc} arm_func_end ov02_0232DD08 arm_func_start ov02_0232DD3C ov02_0232DD3C: ; 0x0232DD3C ldr r2, [r0, #8] ldr r1, [r0, #0xc] cmp r2, r1 addlt r1, r2, #1 strlt r1, [r0, #8] bx lr arm_func_end ov02_0232DD3C arm_func_start ov02_0232DD54 ov02_0232DD54: ; 0x0232DD54 ldr r1, [r0, #8] ldr r0, [r0, #0xc] cmp r1, r0 movge r0, #1 movlt r0, #0 bx lr arm_func_end ov02_0232DD54 thumb_func_start ov02_0232DD6C ov02_0232DD6C: ; 0x0232DD6C push {r3, lr} ldr r1, _0232DD78 ; =ov02_02359320 ldr r1, [r1] blx r1 pop {r3, pc} nop _0232DD78: .word ov02_02359320 thumb_func_end ov02_0232DD6C thumb_func_start ov02_0232DD7C ov02_0232DD7C: ; 0x0232DD7C push {r3, lr} ldr r1, _0232DD88 ; =ov02_0235932C ldr r1, [r1] blx r1 pop {r3, pc} nop _0232DD88: .word ov02_0235932C thumb_func_end ov02_0232DD7C thumb_func_start ov02_0232DD8C ov02_0232DD8C: ; 0x0232DD8C push {r4, lr} ldr r2, _0232DE60 ; =0x00000106 add r4, r0, #0 ldrsh r0, [r4, r2] cmp r0, #0 beq _0232DDDC mov r1, #0 mvn r1, r1 cmp r0, r1 blt _0232DDDC add r0, r2, #2 ldrsh r0, [r4, r0] cmp r0, r1 blt _0232DDDC add r0, r2, #4 ldrsh r0, [r4, r0] cmp r0, #0 beq _0232DDDC cmp r0, r1 blt _0232DDDC add r0, r2, #6 ldrsh r0, [r4, r0] cmp r0, r1 blt _0232DDDC add r0, r2, #0 add r0, #8 ldrsh r0, [r4, r0] cmp r0, r1 blt _0232DDDC ldrh r1, [r4, #4] cmp r1, #0 beq _0232DDDC sub r0, r2, #6 cmp r1, r0 bhi _0232DDDC sub r0, r1, #1 add r0, r4, r0 ldrb r0, [r0, #6] cmp r0, #0 beq _0232DDE2 _0232DDDC: mov r1, #0 mvn r1, r1 b _0232DDE4 _0232DDE2: mov r1, #0 _0232DDE4: ldr r0, _0232DE64 ; =ov02_02359320 ldr r0, [r0] cmp r0, #0 beq _0232DDF4 ldr r0, _0232DE68 ; =ov02_0235932C ldr r0, [r0] cmp r0, #0 bne _0232DDF8 _0232DDF4: mov r1, #0 mvn r1, r1 _0232DDF8: mov r0, #0 mvn r0, r0 cmp r1, r0 bne _0232DE10 ldr r0, _0232DE6C ; =0x00000116 mov r1, #0xf strb r1, [r4, r0] bl ov02_0232E8AC mov r0, #0 mvn r0, r0 pop {r4, pc} _0232DE10: ldr r0, _0232DE70 ; =0x000005F8 bl ov02_0232DD6C ldr r1, _0232DE74 ; =ov02_0235853C cmp r0, #0 str r0, [r1, #0x14] bne _0232DE2E ldr r0, _0232DE6C ; =0x00000116 mov r1, #0xf strb r1, [r4, r0] bl ov02_0232E8AC mov r0, #0 mvn r0, r0 pop {r4, pc} _0232DE2E: mov r0, #0 mvn r0, r0 bl ov02_0232EC54 add r0, r4, #0 bl ov02_0232DE7C add r4, r0, #0 ldr r0, _0232DE74 ; =ov02_0235853C ldr r0, [r0, #0x14] bl ov02_0232DD7C bl ov02_0232E8AC ldr r0, _0232DE78 ; =ov02_02352F64 mov r1, #0 ldr r0, [r0] mvn r1, r1 cmp r0, r1 beq _0232DE5A bl ov02_0232FE98 _0232DE5A: add r0, r4, #0 pop {r4, pc} nop _0232DE60: .word 0x00000106 _0232DE64: .word ov02_02359320 _0232DE68: .word ov02_0235932C _0232DE6C: .word 0x00000116 _0232DE70: .word 0x000005F8 _0232DE74: .word ov02_0235853C _0232DE78: .word ov02_02352F64 thumb_func_end ov02_0232DD8C thumb_func_start ov02_0232DE7C ov02_0232DE7C: ; 0x0232DE7C push {r3, r4, r5, r6, r7, lr} sub sp, #0xc8 ldr r1, _0232E1D0 ; =ov02_0234FC58 str r0, [sp, #8] ldrh r2, [r1] ldrh r1, [r1, #2] add r0, sp, #0x2c strh r2, [r0, #0x30] strh r1, [r0, #0x32] mov r0, #0 add r1, sp, #0x58 strh r0, [r1] str r0, [sp, #0x24] strh r0, [r1, #2] mov r0, #1 str r0, [sp, #0x54] ldr r0, [sp, #0x24] ldr r1, [sp, #0x24] str r0, [sp, #0x50] str r0, [sp, #0x1c] add r0, sp, #0xb0 mov r2, #0x18 bl ov02_0232FDFC ldr r1, _0232E1D4 ; =0x00000106 ldr r0, [sp, #8] ldrsh r0, [r0, r1] add r1, sp, #0x2c strh r0, [r1, #0x30] mov r0, #0x30 ldrsh r2, [r1, r0] sub r0, #0x31 cmp r2, r0 bne _0232DEC4 mov r0, #0xa strh r0, [r1, #0x30] _0232DEC4: ldr r1, _0232E1D8 ; =0x0000010A ldr r0, [sp, #8] ldrsh r0, [r0, r1] add r1, sp, #0x2c strh r0, [r1, #0x2c] mov r0, #0x2c ldrsh r2, [r1, r0] sub r0, #0x2d cmp r2, r0 bne _0232DEDC mov r0, #0xa strh r0, [r1, #0x2c] _0232DEDC: mov r1, #0x42 ldr r0, [sp, #8] lsl r1, r1, #2 ldrsh r0, [r0, r1] add r1, sp, #0x2c strh r0, [r1, #0x32] mov r0, #0x32 ldrsh r2, [r1, r0] sub r0, #0x33 cmp r2, r0 bne _0232DEF6 mov r0, #0x64 strh r0, [r1, #0x32] _0232DEF6: mov r1, #0x43 ldr r0, [sp, #8] lsl r1, r1, #2 ldrsh r0, [r0, r1] add r1, sp, #0x2c strh r0, [r1, #0x2e] mov r0, #0x2e ldrsh r2, [r1, r0] sub r0, #0x2f cmp r2, r0 bne _0232DF10 mov r0, #0x64 strh r0, [r1, #0x2e] _0232DF10: ldr r1, _0232E1DC ; =0x0000010E ldr r0, [sp, #8] ldrsh r0, [r0, r1] mov r1, #0 mvn r1, r1 str r0, [sp, #0xc] cmp r0, r1 bne _0232DF26 mov r0, #0x7d lsl r0, r0, #4 str r0, [sp, #0xc] _0232DF26: ldr r0, [sp, #8] bl ov02_0232E8D8 ldr r0, _0232E1E0 ; =ov02_0235853C ldr r1, [r0, #0x2c] mov r0, #1 and r0, r1 cmp r0, #1 beq _0232DF52 mov r0, #0x13 bl ov02_0232E930 ldr r1, _0232E1E4 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232DF52: mov r4, #0 add r0, r4, #0 bl ov02_0232EC54 add r1, sp, #0x2c mov r0, #0x32 ldrsh r6, [r1, r0] mov r0, #0x30 ldrsh r7, [r1, r0] ldr r5, _0232E1E0 ; =ov02_0235853C _0232DF66: ldr r0, [r5, #4] cmp r0, #0 beq _0232DF74 bl ov02_0232DD7C mov r0, #0 str r0, [r5, #4] _0232DF74: ldr r0, _0232E1E8 ; =ov02_02358540 bl ov02_02330234 mov r1, #0 mvn r1, r1 cmp r0, r1 bne _0232DF96 ldr r1, _0232E1E4 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232DF96: ldr r0, [r5, #4] bl ov02_0232EB64 cmp r0, #4 bne _0232DFB4 ldr r1, _0232E1E4 ; =0x00000116 ldr r0, [sp, #8] mov r2, #2 strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232DFB4: cmp r0, #0 beq _0232DFDE cmp r4, r7 blt _0232DFD0 ldr r1, _0232E1E4 ; =0x00000116 ldr r0, [sp, #8] mov r2, #1 strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232DFD0: add r0, r6, #0 bl ov02_0233057C add r0, r4, #1 lsl r0, r0, #0x10 asr r4, r0, #0x10 b _0232DF66 _0232DFDE: mov r0, #1 bl ov02_0232EC54 add r0, sp, #0x74 mov r1, #0 mov r2, #0x3c bl ov02_0232FDFC add r0, sp, #0x74 bl ov02_0232EBE0 cmp r0, #0 beq _0232E00C ldr r1, _0232E1E4 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E00C: mov r0, #0x58 bl ov02_0232DD6C ldr r1, _0232E1E0 ; =ov02_0235853C cmp r0, #0 str r0, [r1, #0xc] bne _0232E02E ldr r1, _0232E1E4 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E02E: mov r1, #0 mov r2, #0x58 bl ov02_0232FDFC add r1, sp, #0x2c mov r0, #0x30 ldrsh r5, [r1, r0] mov r4, #0 cmp r5, #0 ble _0232E086 ldr r7, _0232E1E0 ; =ov02_0235853C _0232E044: ldr r1, [r7, #0xc] add r0, sp, #0x74 bl ov02_023303AC mov r1, #0 mvn r1, r1 cmp r0, r1 bne _0232E068 ldr r1, _0232E1E4 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E068: cmp r0, #0 bne _0232E076 bne _0232E086 ldr r0, [r7, #0xc] ldr r0, [r0] cmp r0, #1 beq _0232E086 _0232E076: add r0, r6, #0 bl ov02_0233057C add r0, r4, #1 lsl r0, r0, #0x10 asr r4, r0, #0x10 cmp r4, r5 blt _0232E044 _0232E086: add r0, sp, #0x2c mov r1, #0x30 ldrsh r0, [r0, r1] cmp r4, r0 bne _0232E0A4 ldr r0, [sp, #8] mov r2, #0xf add r1, #0xe6 strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E0A4: ldr r0, _0232E1EC ; =0xC0A80B65 mov r1, #0xff mvn r1, r1 add r2, r0, #0 bl ov02_0232FD50 cmp r0, #0 beq _0232E0CE mov r0, #0xc bl ov02_0232E930 ldr r1, _0232E1E4 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E0CE: bl ov02_0232E8AC mov r3, #0x11 ldr r2, [sp, #8] lsl r3, r3, #4 mov r0, #3 add r1, sp, #0xb0 add r2, r2, r3 bl ov02_0232EC24 mov r0, #2 add r1, r0, #0 mov r2, #0 bl ov02_0232FE84 ldr r1, _0232E1F0 ; =ov02_02352F64 cmp r0, #0 str r0, [r1] bge _0232E108 ldr r1, _0232E1E4 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E108: mov r1, #4 str r1, [sp] ldr r1, _0232E1F4 ; =0x0000FFFF mov r2, #1 add r3, sp, #0x54 bl ov02_0232FE80 cmp r0, #0 bge _0232E134 mov r0, #0xb bl ov02_0232E930 ldr r1, _0232E1E4 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E134: add r0, sp, #0x2c mov r1, #0 mov r2, #8 bl ov02_0232FDFC mov r1, #2 add r0, sp, #0x2c strb r1, [r0, #1] ldr r0, _0232E1EC ; =0xC0A80B65 bl ov02_0232FEA0 str r0, [sp, #0x30] ldr r0, _0232E1F8 ; =0x00005790 bl ov02_0232FEC8 add r1, sp, #0x2c strh r0, [r1, #2] ldr r0, _0232E1F0 ; =ov02_02352F64 add r1, sp, #0x2c ldr r0, [r0] mov r2, #8 bl ov02_0232FE8C cmp r0, #0 bge _0232E17A ldr r1, _0232E1E4 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E17A: ldr r0, _0232E1E0 ; =ov02_0235853C mov r1, #0 ldr r0, [r0, #0x14] mov r2, #0x14 str r0, [sp, #0x18] add r0, sp, #0x60 bl ov02_0232FDFC ldr r0, _0232E1EC ; =0xC0A80B65 mov r1, #0xfa str r0, [sp, #0x70] sub r0, #0x64 str r0, [sp, #0x60] ldr r0, [sp, #0xc] lsl r1, r1, #2 bl _s32_div_f str r0, [sp, #0x14] mov r1, #0xfa ldr r0, [sp, #0xc] lsl r1, r1, #2 bl _s32_div_f mov r0, #0xfa lsl r0, r0, #2 mul r0, r1 str r0, [sp, #0x10] mov r1, #0x30 add r0, sp, #0x2c ldrsh r7, [r0, r1] ldr r5, _0232E1E0 ; =ov02_0235853C _0232E1B8: ldr r0, [sp, #0x24] cmp r0, #1 bne _0232E1C8 ldr r1, _0232E1FC ; =ov02_0235855C mov r0, #0x1c ldrsb r0, [r1, r0] cmp r0, #1 bne _0232E1CA _0232E1C8: b _0232E444 _0232E1CA: ldr r0, _0232E1F0 ; =ov02_02352F64 b _0232E200 nop _0232E1D0: .word ov02_0234FC58 _0232E1D4: .word 0x00000106 _0232E1D8: .word 0x0000010A _0232E1DC: .word 0x0000010E _0232E1E0: .word ov02_0235853C _0232E1E4: .word 0x00000116 _0232E1E8: .word ov02_02358540 _0232E1EC: .word 0xC0A80B65 _0232E1F0: .word ov02_02352F64 _0232E1F4: .word 0x0000FFFF _0232E1F8: .word 0x00005790 _0232E1FC: .word ov02_0235855C _0232E200: mov r1, #0 ldr r0, [r0] mvn r1, r1 cmp r0, r1 beq _0232E20E bl ov02_0232FE98 _0232E20E: mov r1, #0 ldr r0, _0232E540 ; =ov02_02352F64 mvn r1, r1 str r1, [r0] bl ov02_0232FDA8 cmp r0, #0 beq _0232E232 ldr r1, _0232E544 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E232: mov r0, #0x58 bl ov02_0232DD6C str r0, [r5, #4] cmp r0, #0 bne _0232E252 ldr r1, _0232E544 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E252: ldr r0, [r5, #4] cmp r0, #0 beq _0232E260 bl ov02_0232DD7C mov r0, #0 str r0, [r5, #4] _0232E260: ldr r0, _0232E548 ; =ov02_02358540 bl ov02_02330234 mov r1, #0 mvn r1, r1 str r0, [sp, #0x28] cmp r0, r1 bne _0232E284 ldr r1, _0232E544 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E284: ldr r0, [r5, #4] bl ov02_0232EB64 cmp r0, #4 bne _0232E2A2 ldr r1, _0232E544 ; =0x00000116 ldr r0, [sp, #8] mov r2, #2 strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E2A2: cmp r0, #0 beq _0232E2CC cmp r4, r7 blt _0232E2BE ldr r1, _0232E544 ; =0x00000116 ldr r0, [sp, #8] mov r2, #1 strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E2BE: add r0, r6, #0 bl ov02_0233057C add r0, r4, #1 lsl r0, r0, #0x10 asr r4, r0, #0x10 b _0232E252 _0232E2CC: mov r0, #0 ldr r1, [sp, #0x28] mvn r0, r0 cmp r1, r0 bne _0232E2EA ldr r1, _0232E544 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E2EA: mov r0, #0x58 bl ov02_0232DD6C str r0, [r5, #0xc] cmp r0, #0 bne _0232E30A ldr r1, _0232E544 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E30A: mov r1, #0 mov r2, #0x58 bl ov02_0232FDFC mov r4, #0 cmp r7, #0 ble _0232E35A _0232E318: ldr r1, [r5, #0xc] add r0, sp, #0x74 bl ov02_023303AC mov r1, #0 mvn r1, r1 cmp r0, r1 bne _0232E33C ldr r1, _0232E544 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E33C: cmp r0, #0 bne _0232E34A bne _0232E35A ldr r0, [r5, #0xc] ldr r0, [r0] cmp r0, #1 beq _0232E35A _0232E34A: add r0, r6, #0 bl ov02_0233057C add r0, r4, #1 lsl r0, r0, #0x10 asr r4, r0, #0x10 cmp r4, r7 blt _0232E318 _0232E35A: cmp r4, r7 bne _0232E372 ldr r1, _0232E544 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E372: ldr r0, [r5, #0x34] ldr r1, [r5, #0x38] bl ov02_0232E894 ldr r1, [r5, #0x38] add r2, r0, #0 str r0, [sp, #0x1c] bl ov02_0232FD50 cmp r0, #0 beq _0232E3A2 mov r0, #0xc bl ov02_0232E930 ldr r1, _0232E544 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E3A2: ldr r0, _0232E54C ; =ov02_0235855C mov r1, #1 strb r1, [r0, #0x1c] bl ov02_0232E8AC mov r0, #2 add r1, r0, #0 mov r2, #0 bl ov02_0232FE84 ldr r1, _0232E540 ; =ov02_02352F64 cmp r0, #0 str r0, [r1] bge _0232E3D2 ldr r1, _0232E544 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E3D2: mov r1, #4 str r1, [sp] ldr r1, _0232E550 ; =0x0000FFFF mov r2, #1 add r3, sp, #0x54 bl ov02_0232FE80 cmp r0, #0 bge _0232E3FE mov r0, #0xb bl ov02_0232E930 ldr r1, _0232E544 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E3FE: add r0, sp, #0x2c mov r1, #0 mov r2, #8 bl ov02_0232FDFC mov r1, #2 add r0, sp, #0x2c strb r1, [r0, #1] ldr r0, [sp, #0x1c] bl ov02_0232FEA0 str r0, [sp, #0x30] ldr r0, _0232E554 ; =0x00005790 bl ov02_0232FEC8 add r1, sp, #0x2c strh r0, [r1, #2] ldr r0, _0232E540 ; =ov02_02352F64 add r1, sp, #0x2c ldr r0, [r0] mov r2, #8 bl ov02_0232FE8C cmp r0, #0 bge _0232E444 ldr r1, _0232E544 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E444: ldr r3, _0232E540 ; =ov02_02352F64 ldr r0, [sp, #0x24] ldr r3, [r3] add r1, sp, #0x60 add r2, sp, #0xb0 bl ov02_0232F538 mov r1, #0 mvn r1, r1 cmp r0, r1 bne _0232E47A mov r1, #1 ldr r0, [sp, #0x24] lsl r1, r1, #0xc add r0, r0, r1 bl ov02_0232E930 ldr r1, _0232E544 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E47A: ldr r0, [sp, #0x18] ldr r2, _0232E558 ; =0x000005F8 mov r1, #0 bl ov02_0232FDFC add r0, sp, #0x3c bl ov02_0232FFA4 ldr r0, _0232E540 ; =ov02_02352F64 add r1, sp, #0x3c ldr r0, [r0] bl ov02_0232FFB0 ldr r0, [sp, #0x14] mov r2, #0 str r0, [sp, #0x34] ldr r0, [sp, #0x10] add r1, sp, #0x3c str r0, [sp, #0x38] add r0, sp, #0x34 str r0, [sp] ldr r0, _0232E540 ; =ov02_02352F64 add r3, r2, #0 ldr r0, [r0] add r0, r0, #1 bl ov02_0232FE1C cmp r0, #0 bgt _0232E4F4 ldr r0, [sp, #0x50] add r1, sp, #0x2c add r2, r0, #1 str r2, [sp, #0x50] mov r0, #0x2c ldrsh r0, [r1, r0] cmp r2, r0 ble _0232E4EA ldr r0, [sp, #0x24] cmp r0, #0 bne _0232E4D2 mov r0, #0xf bl ov02_0232E930 b _0232E4E4 _0232E4D2: cmp r0, #1 bne _0232E4DE mov r0, #0x10 bl ov02_0232E930 b _0232E4E4 _0232E4DE: mov r0, #0x11 bl ov02_0232E930 _0232E4E4: mov r5, #0 mvn r5, r5 b _0232E7D2 _0232E4EA: mov r0, #0x2e ldrsh r0, [r1, r0] bl ov02_0233057C b _0232E1B8 _0232E4F4: mov r0, #8 str r0, [sp, #0x44] add r0, sp, #0x48 str r0, [sp] add r0, sp, #0x44 str r0, [sp, #4] ldr r0, _0232E540 ; =ov02_02352F64 ldr r1, [sp, #0x18] ldr r0, [r0] ldr r2, _0232E55C ; =0x000005DC add r1, #0xc mov r3, #0 bl ov02_0232FE08 ldr r1, _0232E540 ; =ov02_02352F64 lsl r0, r0, #0x10 ldr r2, [r1] ldr r1, [sp, #0x18] lsr r0, r0, #0x10 str r2, [r1] bl ov02_0232FF08 ldr r1, [sp, #0x18] add r2, sp, #0x50 str r0, [r1, #4] ldr r0, _0232E540 ; =ov02_02352F64 add r3, sp, #0xb0 ldr r0, [r0] str r0, [sp] ldr r0, [sp, #0x24] bl ov02_0232EC80 str r0, [sp, #0x20] cmp r0, #0x64 bne _0232E560 mov r5, #0 b _0232E7D2 nop _0232E540: .word ov02_02352F64 _0232E544: .word 0x00000116 _0232E548: .word ov02_02358540 _0232E54C: .word ov02_0235855C _0232E550: .word 0x0000FFFF _0232E554: .word 0x00005790 _0232E558: .word 0x000005F8 _0232E55C: .word 0x000005DC _0232E560: mov r5, #0 mvn r5, r5 cmp r0, r5 bne _0232E56A b _0232E7D2 _0232E56A: ldr r1, [sp, #0x24] cmp r1, r0 bne _0232E572 b _0232E794 _0232E572: cmp r0, #2 beq _0232E578 b _0232E78E _0232E578: ldr r0, _0232E87C ; =ov02_02352F64 ldr r0, [r0] cmp r0, r5 beq _0232E584 bl ov02_0232FE98 _0232E584: mov r1, #0 ldr r0, _0232E87C ; =ov02_02352F64 mvn r1, r1 str r1, [r0] bl ov02_0232FDA8 cmp r0, #0 beq _0232E5A8 ldr r1, _0232E880 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E5A8: mov r0, #4 mov r4, #0 bl ov02_0232EC54 add r1, sp, #0x2c mov r0, #0x30 ldrsh r7, [r1, r0] ldr r5, _0232E884 ; =ov02_0235853C _0232E5B8: ldr r0, [r5, #4] cmp r0, #0 beq _0232E5C6 bl ov02_0232DD7C mov r0, #0 str r0, [r5, #4] _0232E5C6: ldr r0, _0232E888 ; =ov02_02358540 bl ov02_02330234 mov r1, #0 mvn r1, r1 cmp r0, r1 bne _0232E5E8 ldr r1, _0232E880 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E5E8: ldr r0, [r5, #4] bl ov02_0232EB64 cmp r0, #4 bne _0232E606 ldr r1, _0232E880 ; =0x00000116 ldr r0, [sp, #8] mov r2, #2 strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E606: cmp r0, #0 beq _0232E630 cmp r4, r7 blt _0232E622 ldr r1, _0232E880 ; =0x00000116 ldr r0, [sp, #8] mov r2, #1 strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E622: add r0, r6, #0 bl ov02_0233057C add r0, r4, #1 lsl r0, r0, #0x10 asr r4, r0, #0x10 b _0232E5B8 _0232E630: mov r0, #0x58 bl ov02_0232DD6C ldr r1, _0232E884 ; =ov02_0235853C cmp r0, #0 str r0, [r1, #0xc] bne _0232E652 ldr r1, _0232E880 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E652: mov r1, #0 mov r2, #0x58 bl ov02_0232FDFC add r1, sp, #0x2c mov r0, #0x30 ldrsh r5, [r1, r0] mov r4, #0 cmp r5, #0 ble _0232E6AA ldr r7, _0232E884 ; =ov02_0235853C _0232E668: ldr r1, [r7, #0xc] add r0, sp, #0x74 bl ov02_023303AC mov r1, #0 mvn r1, r1 cmp r0, r1 bne _0232E68C ldr r1, _0232E880 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E68C: cmp r0, #0 bne _0232E69A bne _0232E6AA ldr r0, [r7, #0xc] ldr r0, [r0] cmp r0, #1 beq _0232E6AA _0232E69A: add r0, r6, #0 bl ov02_0233057C add r0, r4, #1 lsl r0, r0, #0x10 asr r4, r0, #0x10 cmp r4, r5 blt _0232E668 _0232E6AA: add r0, sp, #0x2c mov r1, #0x30 ldrsh r0, [r0, r1] cmp r4, r0 bne _0232E6C8 ldr r0, [sp, #8] mov r2, #0xf add r1, #0xe6 strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E6C8: ldr r1, _0232E884 ; =ov02_0235853C ldr r0, [sp, #0x1c] ldr r1, [r1, #0x38] add r2, r0, #0 bl ov02_0232FD50 cmp r0, #0 beq _0232E6F2 mov r0, #0xc bl ov02_0232E930 ldr r1, _0232E880 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E6F2: bl ov02_0232E8AC mov r0, #2 add r1, r0, #0 mov r2, #0 bl ov02_0232FE84 ldr r1, _0232E87C ; =ov02_02352F64 cmp r0, #0 str r0, [r1] bge _0232E71C ldr r1, _0232E880 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E71C: mov r1, #4 str r1, [sp] ldr r1, _0232E88C ; =0x0000FFFF mov r2, #1 add r3, sp, #0x54 bl ov02_0232FE80 cmp r0, #0 bge _0232E748 mov r0, #0xb bl ov02_0232E930 ldr r1, _0232E880 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E748: add r0, sp, #0x2c mov r1, #0 mov r2, #8 bl ov02_0232FDFC mov r1, #2 add r0, sp, #0x2c strb r1, [r0, #1] ldr r0, [sp, #0x1c] bl ov02_0232FEA0 str r0, [sp, #0x30] ldr r0, _0232E890 ; =0x00005790 bl ov02_0232FEC8 add r1, sp, #0x2c strh r0, [r1, #2] ldr r0, _0232E87C ; =ov02_02352F64 add r1, sp, #0x2c ldr r0, [r0] mov r2, #8 bl ov02_0232FE8C cmp r0, #0 bge _0232E78E ldr r1, _0232E880 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E78E: ldr r0, [sp, #0x20] str r0, [sp, #0x24] b _0232E17A _0232E794: str r0, [sp, #0x24] add r1, sp, #0x2c mov r0, #0x2c ldrsh r0, [r1, r0] ldr r2, [sp, #0x50] cmp r2, r0 ble _0232E7C8 ldr r0, [sp, #0x20] cmp r0, #0 bne _0232E7B0 mov r0, #0xf bl ov02_0232E930 b _0232E7C2 _0232E7B0: cmp r0, #1 bne _0232E7BC mov r0, #0x10 bl ov02_0232E930 b _0232E7C2 _0232E7BC: mov r0, #0x11 bl ov02_0232E930 _0232E7C2: mov r5, #0 mvn r5, r5 b _0232E7D2 _0232E7C8: mov r0, #0x2e ldrsh r0, [r1, r0] bl ov02_0233057C b _0232E17A _0232E7D2: ldr r0, _0232E87C ; =ov02_02352F64 mov r1, #0 ldr r0, [r0] mvn r1, r1 cmp r0, r1 beq _0232E7E2 bl ov02_0232FE98 _0232E7E2: mov r1, #0 ldr r0, _0232E87C ; =ov02_02352F64 mvn r1, r1 str r1, [r0] bl ov02_0232FDA8 cmp r0, #0 beq _0232E806 ldr r1, _0232E880 ; =0x00000116 ldr r0, [sp, #8] mov r2, #0xf strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E806: cmp r5, #0 beq _0232E856 bl ov02_0232E93C sub r0, #0xf cmp r0, #6 bhi _0232E842 add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _0232E820: ; jump table .hword _0232E82E - _0232E820 - 2 ; case 0 .hword _0232E832 - _0232E820 - 2 ; case 1 .hword _0232E836 - _0232E820 - 2 ; case 2 .hword _0232E842 - _0232E820 - 2 ; case 3 .hword _0232E842 - _0232E820 - 2 ; case 4 .hword _0232E83A - _0232E820 - 2 ; case 5 .hword _0232E83E - _0232E820 - 2 ; case 6 _0232E82E: mov r2, #3 b _0232E844 _0232E832: mov r2, #4 b _0232E844 _0232E836: mov r2, #5 b _0232E844 _0232E83A: mov r2, #7 b _0232E844 _0232E83E: mov r2, #8 b _0232E844 _0232E842: mov r2, #0xf _0232E844: ldr r1, _0232E880 ; =0x00000116 ldr r0, [sp, #8] strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E856: ldr r0, [sp, #8] bl ov02_0232E948 cmp r0, #0 beq _0232E874 ldr r1, _0232E880 ; =0x00000116 ldr r0, [sp, #8] mov r2, #6 strb r2, [r0, r1] bl ov02_0232E8AC mov r0, #0 add sp, #0xc8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E874: mov r0, #0 add sp, #0xc8 pop {r3, r4, r5, r6, r7, pc} nop _0232E87C: .word ov02_02352F64 _0232E880: .word 0x00000116 _0232E884: .word ov02_0235853C _0232E888: .word ov02_02358540 _0232E88C: .word 0x0000FFFF _0232E890: .word 0x00005790 thumb_func_end ov02_0232DE7C thumb_func_start ov02_0232E894 ov02_0232E894: ; 0x0232E894 add r2, r0, #0 and r2, r1 mvn r1, r1 and r0, r1 add r0, r0, #1 orr r0, r2 orr r1, r2 cmp r0, r1 blo _0232E8AA mov r0, #1 orr r0, r2 _0232E8AA: bx lr thumb_func_end ov02_0232E894 thumb_func_start ov02_0232E8AC ov02_0232E8AC: ; 0x0232E8AC push {r3, lr} ldr r0, _0232E8D4 ; =ov02_0235853C ldr r0, [r0, #0xc] cmp r0, #0 beq _0232E8C0 bl ov02_0232DD7C ldr r0, _0232E8D4 ; =ov02_0235853C mov r1, #0 str r1, [r0, #0xc] _0232E8C0: ldr r0, _0232E8D4 ; =ov02_0235853C ldr r0, [r0, #4] cmp r0, #0 beq _0232E8D2 bl ov02_0232DD7C ldr r0, _0232E8D4 ; =ov02_0235853C mov r1, #0 str r1, [r0, #4] _0232E8D2: pop {r3, pc} .align 2, 0 _0232E8D4: .word ov02_0235853C thumb_func_end ov02_0232E8AC thumb_func_start ov02_0232E8D8 ov02_0232E8D8: ; 0x0232E8D8 push {r4, lr} add r4, r0, #0 ldr r0, _0232E91C ; =ov02_0235929C mov r1, #0 mov r2, #8 bl ov02_0232FDFC ldr r0, _0232E920 ; =ov02_0235853C mov r1, #1 str r1, [r0, #0x10] ldr r0, _0232E924 ; =ov02_02358560 mov r1, #0 mov r2, #0x1c bl ov02_0232FDFC ldr r1, _0232E920 ; =ov02_0235853C add r0, r4, #6 str r0, [r1, #0x24] ldrh r0, [r4, #4] mov r3, #0 str r0, [r1, #0x28] ldrh r2, [r4] mov r0, #0xf and r0, r2 str r0, [r1, #0x2c] ldrb r2, [r4, #2] ldr r0, _0232E928 ; =ov02_0235855C strb r2, [r0, #0x1d] ldr r2, _0232E92C ; =0xC0A80B01 str r3, [r1, #0x30] str r2, [r1, #0x34] strb r3, [r0, #0x1c] pop {r4, pc} nop _0232E91C: .word ov02_0235929C _0232E920: .word ov02_0235853C _0232E924: .word ov02_02358560 _0232E928: .word ov02_0235855C _0232E92C: .word 0xC0A80B01 thumb_func_end ov02_0232E8D8 thumb_func_start ov02_0232E930 ov02_0232E930: ; 0x0232E930 ldr r1, _0232E938 ; =ov02_0235853C str r0, [r1, #0x10] bx lr nop _0232E938: .word ov02_0235853C thumb_func_end ov02_0232E930 thumb_func_start ov02_0232E93C ov02_0232E93C: ; 0x0232E93C ldr r0, _0232E944 ; =ov02_0235853C ldr r0, [r0, #0x10] bx lr nop _0232E944: .word ov02_0235853C thumb_func_end ov02_0232E93C thumb_func_start ov02_0232E948 ov02_0232E948: ; 0x0232E948 push {r3, r4, r5, r6, r7, lr} sub sp, #8 add r7, r0, #0 ldr r0, _0232EB20 ; =ov02_02358E64 ldr r2, _0232EB24 ; =0x00000117 str r0, [sp, #4] ldr r0, _0232EB28 ; =ov02_02358ED4 add r4, r7, r2 ldr r6, _0232EB2C ; =ov02_02358C04 ldr r5, _0232EB30 ; =ov02_02358D34 str r0, [sp] bne _0232E968 mov r0, #0 add sp, #8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232E968: ldr r1, _0232EB34 ; =ov02_0235853C add r2, #0x3d ldr r0, [r1, #0x2c] ldr r1, [r1, #0x30] and r0, r1 strh r0, [r7] add r0, r4, #0 mov r1, #0 bl ov02_0232FDFC ldrh r1, [r7] mov r0, #1 tst r0, r1 beq _0232E9E6 add r1, r6, #0 ldr r2, [r6, #4] add r0, r4, #0 add r1, #0x30 bl ov02_0232FDEC add r1, r6, #0 ldr r2, [r6, #4] add r0, r4, #6 add r1, #0x70 bl ov02_0232FDEC add r0, r4, #0 add r1, r6, #0 ldr r2, [r6, #4] add r0, #0xc add r1, #0xb0 bl ov02_0232FDEC add r0, r4, #0 add r1, r6, #0 ldr r2, [r6, #4] add r0, #0x12 add r1, #0xf0 bl ov02_0232FDEC add r0, r6, #0 add r0, #8 bl ov02_0232FF20 add r1, r0, #0 add r0, r6, #0 add r0, #8 bl ov02_0232EB40 cmp r0, #0 beq _0232E9D0 b _0232EB0C _0232E9D0: add r0, r6, #0 add r0, #8 bl ov02_0232FF20 add r2, r0, #0 add r0, r4, #0 add r6, #8 add r0, #0x18 add r1, r6, #0 bl ov02_0232FDEC _0232E9E6: ldrh r1, [r7] mov r0, #2 tst r0, r1 beq _0232EA52 add r0, r4, #0 add r1, r5, #0 ldr r2, [r5, #4] add r0, #0x39 add r1, #0x30 bl ov02_0232FDEC add r0, r4, #0 add r1, r5, #0 ldr r2, [r5, #4] add r0, #0x47 add r1, #0x70 bl ov02_0232FDEC add r0, r4, #0 add r1, r5, #0 ldr r2, [r5, #4] add r0, #0x55 add r1, #0xb0 bl ov02_0232FDEC add r0, r4, #0 add r1, r5, #0 ldr r2, [r5, #4] add r0, #0x63 add r1, #0xf0 bl ov02_0232FDEC add r0, r5, #0 add r0, #8 bl ov02_0232FF20 add r1, r0, #0 add r0, r5, #0 add r0, #8 bl ov02_0232EB40 cmp r0, #0 bne _0232EB0C add r0, r5, #0 add r0, #8 bl ov02_0232FF20 add r2, r0, #0 add r0, r4, #0 add r5, #8 add r0, #0x71 add r1, r5, #0 bl ov02_0232FDEC _0232EA52: ldrh r1, [r7] mov r0, #4 tst r0, r1 beq _0232EAAA ldr r1, [sp, #4] ldr r0, [sp, #4] ldr r1, [r1, #4] add r0, #0x30 sub r1, r1, #1 bl ov02_0232EB40 cmp r0, #0 bne _0232EB0C ldr r2, [sp, #4] ldr r1, [sp, #4] add r0, r4, #0 ldr r2, [r2, #4] add r0, #0x92 add r1, #0x30 bl ov02_0232FDEC ldr r0, [sp, #4] add r0, #8 bl ov02_0232FF20 add r1, r0, #0 ldr r0, [sp, #4] add r0, #8 bl ov02_0232EB40 cmp r0, #0 bne _0232EB0C ldr r0, [sp, #4] add r0, #8 bl ov02_0232FF20 ldr r1, [sp, #4] add r2, r0, #0 add r0, r4, #0 add r1, #8 add r0, #0xd2 str r1, [sp, #4] bl ov02_0232FDEC _0232EAAA: ldrh r1, [r7] mov r0, #8 tst r0, r1 beq _0232EB02 ldr r1, [sp] ldr r0, [sp] ldr r1, [r1, #4] add r0, #0x30 sub r1, r1, #1 bl ov02_0232EB40 cmp r0, #0 bne _0232EB0C ldr r2, [sp] ldr r1, [sp] add r0, r4, #0 ldr r2, [r2, #4] add r0, #0xf3 add r1, #0x30 bl ov02_0232FDEC ldr r0, [sp] add r0, #8 bl ov02_0232FF20 add r1, r0, #0 ldr r0, [sp] add r0, #8 bl ov02_0232EB40 cmp r0, #0 bne _0232EB0C ldr r0, [sp] add r0, #8 bl ov02_0232FF20 add r2, r0, #0 ldr r0, _0232EB38 ; =0x00000133 ldr r1, [sp] add r0, r4, r0 add r1, #8 str r1, [sp] bl ov02_0232FDEC _0232EB02: ldr r1, _0232EB3C ; =0x00000116 mov r0, #0 add sp, #8 strb r0, [r7, r1] pop {r3, r4, r5, r6, r7, pc} _0232EB0C: mov r2, #0x55 add r0, r4, #0 mov r1, #0 lsl r2, r2, #2 bl ov02_0232FDFC mov r0, #0 mvn r0, r0 add sp, #8 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _0232EB20: .word ov02_02358E64 _0232EB24: .word 0x00000117 _0232EB28: .word ov02_02358ED4 _0232EB2C: .word ov02_02358C04 _0232EB30: .word ov02_02358D34 _0232EB34: .word ov02_0235853C _0232EB38: .word 0x00000133 _0232EB3C: .word 0x00000116 thumb_func_end ov02_0232E948 thumb_func_start ov02_0232EB40 ov02_0232EB40: ; 0x0232EB40 mov r3, #0 cmp r1, #0 ble _0232EB5E _0232EB46: ldrb r2, [r0] add r0, r0, #1 cmp r2, #0x20 blo _0232EB52 cmp r2, #0x7f bls _0232EB58 _0232EB52: mov r0, #0 mvn r0, r0 bx lr _0232EB58: add r3, r3, #1 cmp r3, r1 blt _0232EB46 _0232EB5E: mov r0, #0 bx lr .align 2, 0 thumb_func_end ov02_0232EB40 thumb_func_start ov02_0232EB64 ov02_0232EB64: ; 0x0232EB64 push {r3, r4, r5, r6, r7, lr} sub sp, #8 add r5, r0, #0 ldr r0, [r5] mov r4, #0 str r4, [sp, #4] str r0, [sp] cmp r0, #0 bne _0232EB7C add sp, #8 mov r0, #5 pop {r3, r4, r5, r6, r7, pc} _0232EB7C: cmp r0, #0x40 bls _0232EB84 mov r0, #0x40 str r0, [sp] _0232EB84: ldr r0, [sp] mov r7, #0 cmp r0, #0 ble _0232EBC6 add r6, r5, #0 add r6, #8 _0232EB90: ldr r1, [r5, #0x54] mov r0, #1 tst r0, r1 beq _0232EBBA ldr r0, _0232EBDC ; =ov02_02352FC4 bl ov02_0232FF20 ldr r1, [r5, #4] cmp r1, r0 bne _0232EBBA ldr r0, _0232EBDC ; =ov02_02352FC4 bl ov02_0232FF20 add r2, r0, #0 ldr r1, _0232EBDC ; =ov02_02352FC4 add r0, r6, #0 bl ov02_0232FDCC cmp r0, #0 bne _0232EBBA add r4, r4, #1 _0232EBBA: ldr r0, [sp] add r7, r7, #1 add r5, #0x54 add r6, #0x54 cmp r7, r0 blt _0232EB90 _0232EBC6: cmp r4, #1 ble _0232EBCE mov r0, #4 str r0, [sp, #4] _0232EBCE: cmp r4, #0 bne _0232EBD6 mov r0, #5 str r0, [sp, #4] _0232EBD6: ldr r0, [sp, #4] add sp, #8 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _0232EBDC: .word ov02_02352FC4 thumb_func_end ov02_0232EB64 thumb_func_start ov02_0232EBE0 ov02_0232EBE0: ; 0x0232EBE0 push {r4, lr} add r4, r0, #0 ldr r0, _0232EC1C ; =ov02_02352FC4 bl ov02_0232FF20 str r0, [r4] ldr r1, _0232EC1C ; =ov02_02352FC4 ldr r2, [r4] add r0, r4, #4 bl ov02_0232FDEC mov r0, #1 str r0, [r4, #0x24] ldr r0, _0232EC20 ; =ov02_02352FD0 bl ov02_0232FF20 add r2, r0, #0 str r0, [r4, #0x28] cmp r2, #0xd bls _0232EC0E mov r0, #0 mvn r0, r0 pop {r4, pc} _0232EC0E: add r4, #0x2c ldr r1, _0232EC20 ; =ov02_02352FD0 add r0, r4, #0 bl ov02_0232FDEC mov r0, #0 pop {r4, pc} .align 2, 0 _0232EC1C: .word ov02_02352FC4 _0232EC20: .word ov02_02352FD0 thumb_func_end ov02_0232EBE0 thumb_func_start ov02_0232EC24 ov02_0232EC24: ; 0x0232EC24 push {r3, r4, r5, r6, r7, lr} add r6, r0, #0 add r5, r1, #0 add r7, r2, #0 mov r4, #0 cmp r6, #0 ble _0232EC52 _0232EC32: add r0, r5, #0 add r1, r7, #0 mov r2, #6 bl ov02_0232FDEC bl ov02_0232FF34 strh r0, [r5, #6] ldrh r0, [r5, #6] bl ov02_0232FEC8 strh r0, [r5, #6] add r4, r4, #1 add r5, #8 cmp r4, r6 blt _0232EC32 _0232EC52: pop {r3, r4, r5, r6, r7, pc} thumb_func_end ov02_0232EC24 thumb_func_start ov02_0232EC54 ov02_0232EC54: ; 0x0232EC54 push {r3, lr} mov r1, #0 mvn r1, r1 cmp r0, r1 bne _0232EC66 ldr r1, _0232EC7C ; =ov02_02352F64 str r0, [r1, #4] mov r0, #0 pop {r3, pc} _0232EC66: ldr r1, _0232EC7C ; =ov02_02352F64 ldr r2, [r1, #4] cmp r2, r0 beq _0232EC76 str r0, [r1, #4] bl ov02_02330584 pop {r3, pc} _0232EC76: mov r0, #0 pop {r3, pc} nop _0232EC7C: .word ov02_02352F64 thumb_func_end ov02_0232EC54 thumb_func_start ov02_0232EC80 ov02_0232EC80: ; 0x0232EC80 push {r3, r4, r5, r6, r7, lr} add r6, r1, #0 add r5, r0, #0 ldrh r0, [r6, #0xc] add r7, r6, #0 add r4, r2, #0 str r3, [sp] add r7, #0xc bl ov02_0232FF08 cmp r0, #1 bhs _0232ECA2 ldr r0, [r4] add r0, r0, #1 str r0, [r4] add r0, r5, #0 pop {r3, r4, r5, r6, r7, pc} _0232ECA2: ldrb r0, [r7, #0xf] cmp r0, #0x11 beq _0232ECB2 ldr r0, [r4] add r0, r0, #1 str r0, [r4] add r0, r5, #0 pop {r3, r4, r5, r6, r7, pc} _0232ECB2: add r0, r6, #0 add r0, #0xc bl ov02_0232EF78 cmp r0, #0 ble _0232ECC8 ldr r0, [r4] add r0, r0, #1 str r0, [r4] add r0, r5, #0 pop {r3, r4, r5, r6, r7, pc} _0232ECC8: ldrh r0, [r7, #6] bl ov02_0232FF08 ldr r1, _0232ED14 ; =0x00001010 cmp r0, r1 beq _0232ECE2 ldr r1, _0232ED18 ; =0x00002010 cmp r0, r1 beq _0232ECF2 ldr r1, _0232ED1C ; =0x00003010 cmp r0, r1 beq _0232ED02 b _0232ED10 _0232ECE2: ldr r3, [sp] add r0, r5, #0 add r1, r6, #0 add r2, r4, #0 bl ov02_0232ED20 add r5, r0, #0 b _0232ED10 _0232ECF2: ldr r3, [sp] add r0, r5, #0 add r1, r6, #0 add r2, r4, #0 bl ov02_0232EDFC add r5, r0, #0 b _0232ED10 _0232ED02: ldr r3, [sp] add r0, r5, #0 add r1, r6, #0 add r2, r4, #0 bl ov02_0232EED4 add r5, r0, #0 _0232ED10: add r0, r5, #0 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _0232ED14: .word 0x00001010 _0232ED18: .word 0x00002010 _0232ED1C: .word 0x00003010 thumb_func_end ov02_0232EC80 thumb_func_start ov02_0232ED20 ov02_0232ED20: ; 0x0232ED20 push {r3, r4, r5, r6, r7, lr} add r6, r0, #0 add r5, r2, #0 cmp r6, #0 beq _0232ED32 ldr r1, [r5] add r1, r1, #1 str r1, [r5] pop {r3, r4, r5, r6, r7, pc} _0232ED32: add r7, r1, #0 add r7, #0xc add r4, r1, #0 add r1, r7, #0 add r0, r3, #0 add r1, #0x10 add r4, #0x24 bl ov02_0232F0B0 cmp r0, #0 bge _0232ED52 ldr r0, [r5] add r0, r0, #1 str r0, [r5] add r0, r6, #0 pop {r3, r4, r5, r6, r7, pc} _0232ED52: ldrh r0, [r4, #2] bl ov02_0232FF08 cmp r0, #0 bne _0232ED66 ldr r0, [r5] add r0, r0, #1 str r0, [r5] add r0, r6, #0 pop {r3, r4, r5, r6, r7, pc} _0232ED66: ldrb r0, [r4] cmp r0, #7 bne _0232EDA4 ldr r0, [r4, #4] bl ov02_0232FEE0 mov r1, #1 mvn r1, r1 cmp r0, r1 bne _0232ED82 mov r0, #0x14 bl ov02_0232E930 b _0232ED9E _0232ED82: ldr r0, [r4, #4] bl ov02_0232FEE0 mov r1, #2 mvn r1, r1 cmp r0, r1 bne _0232ED98 mov r0, #0x15 bl ov02_0232E930 b _0232ED9E _0232ED98: mov r0, #0x18 bl ov02_0232E930 _0232ED9E: mov r0, #0 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232EDA4: cmp r0, #1 beq _0232EDB2 ldr r0, [r5] add r0, r0, #1 str r0, [r5] add r0, r6, #0 pop {r3, r4, r5, r6, r7, pc} _0232EDB2: ldr r1, _0232EDF4 ; =ov02_0235857C add r0, r4, #4 bl ov02_0232F0FC cmp r0, #0 bge _0232EDDC mov r1, #1 mvn r1, r1 cmp r0, r1 bne _0232EDD2 mov r0, #0x16 bl ov02_0232E930 mov r0, #0 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232EDD2: ldr r0, [r5] add r0, r0, #1 str r0, [r5] add r0, r6, #0 pop {r3, r4, r5, r6, r7, pc} _0232EDDC: ldrh r0, [r7, #0xc] bl ov02_0232FF08 bl ov02_0232F528 ldr r1, _0232EDF8 ; =ov02_0235853C str r0, [r1] mov r0, #0 str r0, [r5] mov r0, #1 pop {r3, r4, r5, r6, r7, pc} nop _0232EDF4: .word ov02_0235857C _0232EDF8: .word ov02_0235853C thumb_func_end ov02_0232ED20 thumb_func_start ov02_0232EDFC ov02_0232EDFC: ; 0x0232EDFC push {r3, r4, r5, r6, r7, lr} add r6, r0, #0 add r5, r2, #0 cmp r6, #1 beq _0232EE0E ldr r1, [r5] add r1, r1, #1 str r1, [r5] pop {r3, r4, r5, r6, r7, pc} _0232EE0E: add r7, r1, #0 add r7, #0xc add r4, r1, #0 add r3, #8 add r1, r7, #0 add r0, r3, #0 add r1, #0x10 add r4, #0x24 bl ov02_0232F0B0 cmp r0, #0 bge _0232EE30 ldr r0, [r5] add r0, r0, #1 str r0, [r5] add r0, r6, #0 pop {r3, r4, r5, r6, r7, pc} _0232EE30: ldrh r0, [r4, #2] bl ov02_0232FF08 cmp r0, #0 bne _0232EE44 ldr r0, [r5] add r0, r0, #1 str r0, [r5] add r0, r6, #0 pop {r3, r4, r5, r6, r7, pc} _0232EE44: ldrb r0, [r4] cmp r0, #7 bne _0232EE82 ldr r0, [r4, #4] bl ov02_0232FEE0 mov r1, #1 mvn r1, r1 cmp r0, r1 bne _0232EE60 mov r0, #0x14 bl ov02_0232E930 b _0232EE7C _0232EE60: ldr r0, [r4, #4] bl ov02_0232FEE0 mov r1, #2 mvn r1, r1 cmp r0, r1 bne _0232EE76 mov r0, #0x15 bl ov02_0232E930 b _0232EE7C _0232EE76: mov r0, #0x18 bl ov02_0232E930 _0232EE7C: mov r0, #0 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232EE82: mov r2, #0x6a ldr r0, _0232EEC8 ; =ov02_02358BFC mov r1, #0 lsl r2, r2, #4 bl ov02_0232FDFC ldrh r0, [r7, #0xa] bl ov02_0232FF08 add r2, r0, #0 ldr r0, _0232EECC ; =ov02_0235857C ldr r3, _0232EEC8 ; =ov02_02358BFC str r0, [sp] mov r0, #0 add r1, r4, #0 bl ov02_0232F418 cmp r0, #0 bge _0232EEB2 ldr r0, [r5] add r0, r0, #1 str r0, [r5] add r0, r6, #0 pop {r3, r4, r5, r6, r7, pc} _0232EEB2: ldr r0, _0232EED0 ; =ov02_0235853C ldr r1, [r0, #0x30] ldr r0, [r0, #0x2c] tst r0, r1 bne _0232EEC0 add r0, r6, #0 pop {r3, r4, r5, r6, r7, pc} _0232EEC0: mov r0, #0 str r0, [r5] mov r0, #2 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _0232EEC8: .word ov02_02358BFC _0232EECC: .word ov02_0235857C _0232EED0: .word ov02_0235853C thumb_func_end ov02_0232EDFC thumb_func_start ov02_0232EED4 ov02_0232EED4: ; 0x0232EED4 push {r4, r5, r6, lr} add r6, r0, #0 add r5, r2, #0 cmp r6, #2 beq _0232EEE6 ldr r1, [r5] add r1, r1, #1 str r1, [r5] pop {r4, r5, r6, pc} _0232EEE6: add r4, r1, #0 add r3, #0x10 add r1, #0xc add r0, r3, #0 add r1, #0x10 add r4, #0x24 bl ov02_0232F0B0 cmp r0, #0 bge _0232EF04 ldr r0, [r5] add r0, r0, #1 str r0, [r5] add r0, r6, #0 pop {r4, r5, r6, pc} _0232EF04: ldrb r0, [r4] cmp r0, #7 beq _0232EF14 ldr r0, [r5] add r0, r0, #1 str r0, [r5] add r0, r6, #0 pop {r4, r5, r6, pc} _0232EF14: ldrh r0, [r4, #2] bl ov02_0232FF08 cmp r0, #0 bne _0232EF28 ldr r0, [r5] add r0, r0, #1 str r0, [r5] add r0, r6, #0 pop {r4, r5, r6, pc} _0232EF28: ldr r0, [r4, #4] bl ov02_0232FEE0 cmp r0, #0 bne _0232EF36 mov r0, #0x64 pop {r4, r5, r6, pc} _0232EF36: ldr r0, [r4, #4] bl ov02_0232FEE0 mov r1, #1 mvn r1, r1 cmp r0, r1 bne _0232EF50 mov r0, #0x14 bl ov02_0232E930 mov r0, #0 mvn r0, r0 pop {r4, r5, r6, pc} _0232EF50: ldr r0, [r4, #4] bl ov02_0232FEE0 mov r1, #2 mvn r1, r1 cmp r0, r1 bne _0232EF6A mov r0, #0x15 bl ov02_0232E930 mov r0, #0 mvn r0, r0 pop {r4, r5, r6, pc} _0232EF6A: mov r0, #0x18 bl ov02_0232E930 mov r0, #0 mvn r0, r0 pop {r4, r5, r6, pc} .align 2, 0 thumb_func_end ov02_0232EED4 thumb_func_start ov02_0232EF78 ov02_0232EF78: ; 0x0232EF78 push {r4, r5, r6, r7, lr} sub sp, #0x14 add r5, r0, #0 add r1, r5, #0 add r4, r5, #0 add r0, sp, #0xc add r1, #0x10 mov r2, #8 add r4, #0x18 bl ov02_0232FDEC ldr r0, _0232F064 ; =ov02_02352FD0 bl ov02_0232FF20 add r3, r0, #0 ldr r2, _0232F064 ; =ov02_02352FD0 add r0, sp, #0xc mov r1, #8 bl ov02_0232FC24 mov r1, #0 mvn r1, r1 cmp r0, r1 bne _0232EFB6 mov r0, #2 bl ov02_0232E930 mov r0, #0x63 add sp, #0x14 mvn r0, r0 pop {r4, r5, r6, r7, pc} _0232EFB6: ldrh r0, [r5, #6] bl ov02_0232FF08 add r1, sp, #0xc bl ov02_0232F06C cmp r0, #0 bne _0232F05E ldrh r0, [r5, #6] bl ov02_0232FF08 mov r1, #1 lsl r1, r1, #0xc cmp r0, r1 bne _0232EFDE ldr r0, _0232F068 ; =ov02_0235929C add r1, sp, #0xc mov r2, #8 bl ov02_0232FDEC _0232EFDE: ldrh r0, [r5, #0xc] bl ov02_0232FF08 mov r1, #0xf tst r0, r1 bne _0232EFF0 add sp, #0x14 mov r0, #0 pop {r4, r5, r6, r7, pc} _0232EFF0: ldrh r0, [r4] bl ov02_0232FF08 add r6, r0, #0 bl ov02_0232DD6C add r7, r0, #0 bne _0232F00C mov r0, #2 bl ov02_0232E930 add sp, #0x14 mov r0, #0x64 pop {r4, r5, r6, r7, pc} _0232F00C: add r0, r4, #2 str r0, [sp] ldr r0, _0232F068 ; =ov02_0235929C add r1, r7, #0 str r0, [sp, #4] mov r0, #8 str r0, [sp, #8] ldrb r3, [r5, #0xe] add r0, r4, #4 add r2, r6, #0 bl ov02_0232FA34 cmp r0, #0 bge _0232F042 add r0, r7, #0 bl ov02_0232DD7C bl ov02_0232E93C cmp r0, #2 bne _0232F03C add sp, #0x14 mov r0, #0x64 pop {r4, r5, r6, r7, pc} _0232F03C: add sp, #0x14 mov r0, #0xc8 pop {r4, r5, r6, r7, pc} _0232F042: add r0, r4, #0 add r1, r7, #0 add r2, r6, #0 bl ov02_0232FDEC lsl r0, r6, #0x10 lsr r0, r0, #0x10 bl ov02_0232FEC8 strh r0, [r5, #0xa] add r0, r7, #0 bl ov02_0232DD7C mov r0, #0 _0232F05E: add sp, #0x14 pop {r4, r5, r6, r7, pc} nop _0232F064: .word ov02_02352FD0 _0232F068: .word ov02_0235929C thumb_func_end ov02_0232EF78 thumb_func_start ov02_0232F06C ov02_0232F06C: ; 0x0232F06C push {r4, r5, r6, lr} mov r4, #0 ldr r6, _0232F0AC ; =ov02_0235929C add r5, r4, #0 add r3, r4, #0 _0232F076: ldrb r2, [r6] cmp r2, #0 beq _0232F080 mov r5, #1 b _0232F088 _0232F080: add r3, r3, #1 add r6, r6, #1 cmp r3, #6 blt _0232F076 _0232F088: cmp r5, #0 beq _0232F09C ldr r0, _0232F0AC ; =ov02_0235929C mov r2, #6 bl ov02_0232FDCC cmp r0, #0 beq _0232F0A6 mov r4, #1 b _0232F0A6 _0232F09C: mov r1, #1 lsl r1, r1, #0xc cmp r0, r1 beq _0232F0A6 mov r4, #2 _0232F0A6: add r0, r4, #0 pop {r4, r5, r6, pc} nop _0232F0AC: .word ov02_0235929C thumb_func_end ov02_0232F06C thumb_func_start ov02_0232F0B0 ov02_0232F0B0: ; 0x0232F0B0 push {r4, r5, r6, lr} add r6, r0, #0 ldr r0, _0232F0F8 ; =ov02_02352FD0 add r5, r1, #0 mov r4, #0 bl ov02_0232FF20 add r3, r0, #0 ldr r2, _0232F0F8 ; =ov02_02352FD0 add r0, r5, #0 mov r1, #8 bl ov02_0232FC24 add r0, r6, #0 add r1, r5, #0 mov r2, #6 bl ov02_0232FDCC cmp r0, #0 beq _0232F0DC sub r4, r4, #1 b _0232F0F2 _0232F0DC: ldrh r0, [r6, #6] bl ov02_0232FF08 add r6, r0, #0 ldrh r0, [r5, #6] bl ov02_0232FF08 add r1, r6, #1 cmp r1, r0 beq _0232F0F2 sub r4, r4, #2 _0232F0F2: add r0, r4, #0 pop {r4, r5, r6, pc} nop _0232F0F8: .word ov02_02352FD0 thumb_func_end ov02_0232F0B0 thumb_func_start ov02_0232F0FC ov02_0232F0FC: ; 0x0232F0FC push {r3, r4, r5, r6, r7, lr} add r5, r1, #0 mov r2, #0x41 add r6, r0, #0 add r0, r5, #0 mov r1, #0 lsl r2, r2, #2 bl ov02_0232FDFC add r7, r5, #0 add r4, r6, #0 add r7, #0x80 _0232F114: ldrh r0, [r4, #2] bl ov02_0232FF08 add r2, r0, #0 cmp r2, #0 bgt _0232F126 mov r0, #0 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232F126: ldrb r0, [r4] cmp r0, #6 bhi _0232F19C add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _0232F138: ; jump table .hword _0232F146 - _0232F138 - 2 ; case 0 .hword _0232F150 - _0232F138 - 2 ; case 1 .hword _0232F15A - _0232F138 - 2 ; case 2 .hword _0232F168 - _0232F138 - 2 ; case 3 .hword _0232F168 - _0232F138 - 2 ; case 4 .hword _0232F178 - _0232F138 - 2 ; case 5 .hword _0232F18A - _0232F138 - 2 ; case 6 _0232F146: add r0, r5, #0 add r1, r4, #6 bl ov02_0232FDEC b _0232F1A2 _0232F150: add r0, r7, #0 add r1, r4, #6 bl ov02_0232FDEC b _0232F1A2 _0232F15A: mov r0, #1 lsl r0, r0, #8 add r0, r5, r0 add r1, r4, #6 bl ov02_0232FDEC b _0232F1A2 _0232F168: ldrb r0, [r4, #6] bl ov02_0232FF08 cmp r0, #0 bgt _0232F1A2 mov r0, #1 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232F178: add r0, r4, #6 add r1, r2, #0 bl ov02_0232F1B8 bl ov02_0232FEE0 ldr r1, _0232F1B4 ; =ov02_0235853C str r0, [r1, #0x34] b _0232F1A2 _0232F18A: add r0, r4, #6 add r1, r2, #0 bl ov02_0232F1B8 bl ov02_0232FEE0 ldr r1, _0232F1B4 ; =ov02_0235853C str r0, [r1, #0x38] b _0232F1A2 _0232F19C: mov r0, #0 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232F1A2: ldrh r0, [r4, #4] cmp r0, #0 beq _0232F1B0 bl ov02_0232FF08 add r4, r6, r0 b _0232F114 _0232F1B0: mov r0, #0 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _0232F1B4: .word ov02_0235853C thumb_func_end ov02_0232F0FC thumb_func_start ov02_0232F1B8 ov02_0232F1B8: ; 0x0232F1B8 push {r4, r5} mov r3, #0 sub r2, r1, #1 add r5, r0, r2 add r4, r3, #0 cmp r1, #0 ble _0232F1D4 _0232F1C6: ldrb r0, [r5] lsl r2, r3, #8 add r4, r4, #1 sub r5, r5, #1 add r3, r2, r0 cmp r4, r1 blt _0232F1C6 _0232F1D4: add r0, r3, #0 pop {r4, r5} bx lr .align 2, 0 thumb_func_end ov02_0232F1B8 thumb_func_start ov02_0232F1DC ov02_0232F1DC: ; 0x0232F1DC push {r4, r5, r6, r7, lr} sub sp, #0x14 add r6, r1, #0 add r5, r0, #6 add r0, r6, #0 str r0, [sp, #0xc] add r0, #8 str r0, [sp, #0xc] add r0, r6, #0 str r0, [sp, #8] add r0, #0xf0 str r0, [sp, #8] add r0, r6, #0 str r0, [sp, #4] add r0, #0xb0 str r0, [sp, #4] add r0, r6, #0 str r0, [sp] add r0, #0x70 add r7, r6, #0 str r0, [sp] add r7, #0x30 str r5, [sp, #0x10] _0232F20A: ldrh r0, [r5, #2] bl ov02_0232FF08 add r4, r0, #0 ldrb r0, [r5] cmp r0, #0x21 bgt _0232F242 bge _0232F260 cmp r0, #0x15 bgt _0232F23C add r1, r0, #0 sub r1, #0x10 bmi _0232F278 add r1, r1, r1 add r1, pc ldrh r1, [r1, #6] lsl r1, r1, #0x10 asr r1, r1, #0x10 add pc, r1 _0232F230: ; jump table .hword _0232F254 - _0232F230 - 2 ; case 0 .hword _0232F254 - _0232F230 - 2 ; case 1 .hword _0232F254 - _0232F230 - 2 ; case 2 .hword _0232F254 - _0232F230 - 2 ; case 3 .hword _0232F278 - _0232F230 - 2 ; case 4 .hword _0232F26C - _0232F230 - 2 ; case 5 _0232F23C: cmp r0, #0x20 beq _0232F260 b _0232F278 _0232F242: cmp r0, #0x23 bgt _0232F24E bge _0232F260 cmp r0, #0x22 beq _0232F260 b _0232F278 _0232F24E: cmp r0, #0x25 beq _0232F26C b _0232F278 _0232F254: cmp r4, #5 bls _0232F278 mov r0, #0 add sp, #0x14 mvn r0, r0 pop {r4, r5, r6, r7, pc} _0232F260: cmp r4, #0xd bls _0232F278 mov r0, #0 add sp, #0x14 mvn r0, r0 pop {r4, r5, r6, r7, pc} _0232F26C: cmp r4, #0x21 bls _0232F278 mov r0, #0 add sp, #0x14 mvn r0, r0 pop {r4, r5, r6, r7, pc} _0232F278: cmp r0, #0x21 bgt _0232F2A6 bge _0232F2C6 cmp r0, #0x15 bgt _0232F2A0 add r1, r0, #0 sub r1, #0x10 bmi _0232F310 add r1, r1, r1 add r1, pc ldrh r1, [r1, #6] lsl r1, r1, #0x10 asr r1, r1, #0x10 add pc, r1 _0232F294: ; jump table .hword _0232F2B8 - _0232F294 - 2 ; case 0 .hword _0232F2C6 - _0232F294 - 2 ; case 1 .hword _0232F2D4 - _0232F294 - 2 ; case 2 .hword _0232F2E2 - _0232F294 - 2 ; case 3 .hword _0232F310 - _0232F294 - 2 ; case 4 .hword _0232F2F0 - _0232F294 - 2 ; case 5 _0232F2A0: cmp r0, #0x20 beq _0232F2B8 b _0232F310 _0232F2A6: cmp r0, #0x23 bgt _0232F2B2 bge _0232F2E2 cmp r0, #0x22 beq _0232F2D4 b _0232F310 _0232F2B2: cmp r0, #0x25 beq _0232F2F0 b _0232F310 _0232F2B8: add r0, r7, #0 add r1, r5, #6 add r2, r4, #0 bl ov02_0232FDEC str r4, [r6, #4] b _0232F318 _0232F2C6: ldr r0, [sp] add r1, r5, #6 add r2, r4, #0 bl ov02_0232FDEC str r4, [r6, #4] b _0232F318 _0232F2D4: ldr r0, [sp, #4] add r1, r5, #6 add r2, r4, #0 bl ov02_0232FDEC str r4, [r6, #4] b _0232F318 _0232F2E2: ldr r0, [sp, #8] add r1, r5, #6 add r2, r4, #0 bl ov02_0232FDEC str r4, [r6, #4] b _0232F318 _0232F2F0: cmp r4, #0 beq _0232F304 add r0, r5, r4 ldrb r0, [r0, #5] cmp r0, #0 beq _0232F304 mov r0, #0 add sp, #0x14 mvn r0, r0 pop {r4, r5, r6, r7, pc} _0232F304: ldr r0, [sp, #0xc] add r1, r5, #6 add r2, r4, #0 bl ov02_0232FDEC b _0232F318 _0232F310: mov r0, #0 add sp, #0x14 mvn r0, r0 pop {r4, r5, r6, r7, pc} _0232F318: ldrh r0, [r5, #4] cmp r0, #0 beq _0232F328 bl ov02_0232FF08 ldr r1, [sp, #0x10] add r5, r1, r0 b _0232F20A _0232F328: mov r0, #0 add sp, #0x14 pop {r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end ov02_0232F1DC thumb_func_start ov02_0232F330 ov02_0232F330: ; 0x0232F330 push {r3, r4, r5, r6, r7, lr} sub sp, #8 add r6, r1, #0 add r4, r0, #6 add r0, r6, #0 str r0, [sp] add r0, #8 add r7, r6, #0 str r0, [sp] add r7, #0x30 str r4, [sp, #4] _0232F346: ldrh r0, [r4, #2] bl ov02_0232FF08 add r5, r0, #0 ldrb r0, [r4] cmp r0, #0x35 bgt _0232F35C bge _0232F376 cmp r0, #0x30 beq _0232F36A b _0232F382 _0232F35C: cmp r0, #0x40 bgt _0232F364 beq _0232F36A b _0232F382 _0232F364: cmp r0, #0x45 beq _0232F376 b _0232F382 _0232F36A: cmp r5, #0x40 bls _0232F382 mov r0, #0 add sp, #8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232F376: cmp r5, #0x21 bls _0232F382 mov r0, #0 add sp, #8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232F382: cmp r0, #0x35 bgt _0232F38E bge _0232F3AA cmp r0, #0x30 beq _0232F39C b _0232F3CA _0232F38E: cmp r0, #0x40 bgt _0232F396 beq _0232F39C b _0232F3CA _0232F396: cmp r0, #0x45 beq _0232F3AA b _0232F3CA _0232F39C: add r0, r7, #0 add r1, r4, #6 add r2, r5, #0 bl ov02_0232FDEC str r5, [r6, #4] b _0232F3D2 _0232F3AA: cmp r5, #0 beq _0232F3BE add r0, r4, r5 ldrb r0, [r0, #5] cmp r0, #0 beq _0232F3BE mov r0, #0 add sp, #8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232F3BE: ldr r0, [sp] add r1, r4, #6 add r2, r5, #0 bl ov02_0232FDEC b _0232F3D2 _0232F3CA: mov r0, #0 add sp, #8 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232F3D2: ldrh r0, [r4, #4] cmp r0, #0 beq _0232F3E2 bl ov02_0232FF08 ldr r1, [sp, #4] add r4, r1, r0 b _0232F346 _0232F3E2: mov r0, #0 add sp, #8 pop {r3, r4, r5, r6, r7, pc} thumb_func_end ov02_0232F330 thumb_func_start ov02_0232F3E8 ov02_0232F3E8: ; 0x0232F3E8 push {r3, r4, r5, lr} add r4, r0, #6 ldrh r0, [r4, #2] add r5, r1, #0 bl ov02_0232FF08 add r2, r0, #0 cmp r2, #0 bgt _0232F400 mov r0, #0 mvn r0, r0 pop {r3, r4, r5, pc} _0232F400: ldrb r0, [r4] cmp r0, #0x70 beq _0232F40C mov r0, #0 mvn r0, r0 pop {r3, r4, r5, pc} _0232F40C: add r0, r5, #0 add r1, r4, #6 bl ov02_0232FDEC mov r0, #0 pop {r3, r4, r5, pc} thumb_func_end ov02_0232F3E8 thumb_func_start ov02_0232F418 ov02_0232F418: ; 0x0232F418 push {r4, r5, r6, r7, lr} sub sp, #0x14 add r6, r2, #0 str r0, [sp] add r4, r1, #0 mov r5, #0 str r3, [sp, #4] cmp r6, #0 bgt _0232F430 add sp, #0x14 sub r0, r5, #2 pop {r4, r5, r6, r7, pc} _0232F430: ldr r7, _0232F520 ; =ov02_02352F60 _0232F432: ldr r2, [sp] ldrb r0, [r4] ldrb r2, [r7, r2] add r1, r4, #0 cmp r0, r2 beq _0232F456 ldrh r0, [r4, #2] bl ov02_0232FF08 add r0, r0, #4 sub r6, r6, r0 add r4, r4, r0 cmp r6, #0 bgt _0232F432 mov r0, #3 add sp, #0x14 mvn r0, r0 pop {r4, r5, r6, r7, pc} _0232F456: ldrh r0, [r1, #2] add r4, r4, #4 bl ov02_0232FF08 add r7, r0, #0 mov r1, #0x35 ldr r0, [sp] lsl r1, r1, #4 mul r1, r0 ldr r0, [sp, #4] add r6, r0, r1 ldr r0, [sp, #0x28] str r0, [sp, #8] ldr r0, [sp] add r0, r0, #3 lsl r0, r0, #7 str r0, [sp, #0xc] add r0, r6, #0 str r0, [sp, #0x10] add r0, #8 str r0, [sp, #0x10] _0232F480: ldrb r0, [r4] cmp r0, #0xa bhi _0232F4FA add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _0232F492: ; jump table .hword _0232F4FA - _0232F492 - 2 ; case 0 .hword _0232F4FA - _0232F492 - 2 ; case 1 .hword _0232F4FA - _0232F492 - 2 ; case 2 .hword _0232F4A8 - _0232F492 - 2 ; case 3 .hword _0232F4B6 - _0232F492 - 2 ; case 4 .hword _0232F4C8 - _0232F492 - 2 ; case 5 .hword _0232F4DA - _0232F492 - 2 ; case 6 .hword _0232F4FA - _0232F492 - 2 ; case 7 .hword _0232F4FA - _0232F492 - 2 ; case 8 .hword _0232F4FA - _0232F492 - 2 ; case 9 .hword _0232F4EC - _0232F492 - 2 ; case 10 _0232F4A8: ldr r1, [sp, #0x10] add r0, r4, #0 bl ov02_0232F1DC mov r1, #1 orr r5, r1 b _0232F4FE _0232F4B6: mov r1, #0x4e lsl r1, r1, #2 add r0, r4, #0 add r1, r6, r1 bl ov02_0232F1DC mov r1, #2 orr r5, r1 b _0232F4FE _0232F4C8: mov r1, #0x9a lsl r1, r1, #2 add r0, r4, #0 add r1, r6, r1 bl ov02_0232F330 mov r1, #4 orr r5, r1 b _0232F4FE _0232F4DA: mov r1, #0xb6 lsl r1, r1, #2 add r0, r4, #0 add r1, r6, r1 bl ov02_0232F330 mov r1, #8 orr r5, r1 b _0232F4FE _0232F4EC: ldr r2, [sp, #8] ldr r1, [sp, #0xc] add r0, r4, #0 add r1, r2, r1 bl ov02_0232F3E8 b _0232F4FE _0232F4FA: mov r0, #2 mvn r0, r0 _0232F4FE: cmp r0, #0 bne _0232F51C ldrh r0, [r4, #2] bl ov02_0232FF08 add r0, r0, #4 sub r7, r7, r0 add r4, r4, r0 cmp r7, #0 bgt _0232F480 ldr r0, _0232F524 ; =ov02_0235853C ldr r1, [r0, #0x30] orr r1, r5 str r1, [r0, #0x30] mov r0, #0 _0232F51C: add sp, #0x14 pop {r4, r5, r6, r7, pc} .align 2, 0 _0232F520: .word ov02_02352F60 _0232F524: .word ov02_0235853C thumb_func_end ov02_0232F418 thumb_func_start ov02_0232F528 ov02_0232F528: ; 0x0232F528 mov r1, #0x10 mov r2, #0 tst r0, r1 beq _0232F532 mov r2, #1 _0232F532: add r0, r2, #0 bx lr .align 2, 0 thumb_func_end ov02_0232F528 thumb_func_start ov02_0232F538 ov02_0232F538: ; 0x0232F538 push {r4, r5, r6, lr} add r5, r1, #0 add r4, r2, #0 add r6, r3, #0 cmp r0, #0 beq _0232F54E cmp r0, #1 beq _0232F560 cmp r0, #2 beq _0232F572 b _0232F584 _0232F54E: mov r0, #2 bl ov02_0232EC54 add r0, r5, #0 add r1, r4, #0 add r2, r6, #0 bl ov02_0232F58C pop {r4, r5, r6, pc} _0232F560: mov r0, #3 bl ov02_0232EC54 add r0, r5, #0 add r1, r4, #0 add r2, r6, #0 bl ov02_0232F6D0 pop {r4, r5, r6, pc} _0232F572: mov r0, #5 bl ov02_0232EC54 add r0, r5, #0 add r1, r4, #0 add r2, r6, #0 bl ov02_0232F7AC pop {r4, r5, r6, pc} _0232F584: mov r0, #0 mvn r0, r0 pop {r4, r5, r6, pc} .align 2, 0 thumb_func_end ov02_0232F538 thumb_func_start ov02_0232F58C ov02_0232F58C: ; 0x0232F58C push {r3, r4, r5, r6, r7, lr} sub sp, #0x20 add r7, r1, #0 mov r1, #0 add r0, sp, #0x10 strb r1, [r0] strh r1, [r0, #4] strh r1, [r0, #2] ldr r0, _0232F6C0 ; =ov02_0235853C str r2, [sp, #0xc] ldr r5, [r0, #0x14] ldr r2, _0232F6C4 ; =0x000005DC add r0, r5, #0 bl ov02_0232FDFC mov r0, #0x21 lsl r0, r0, #4 bl ov02_0232DD6C add r4, r0, #0 bne _0232F5C4 mov r0, #2 bl ov02_0232E930 mov r0, #0 add sp, #0x20 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232F5C4: mov r2, #0x21 mov r1, #0 lsl r2, r2, #4 bl ov02_0232FDFC add r6, r5, #0 ldr r0, _0232F6C8 ; =ov02_0235929C add r1, r7, #0 mov r2, #8 add r6, #0x18 bl ov02_0232FDEC add r0, sp, #0x14 ldr r1, _0232F6C8 ; =ov02_0235929C add r0, #2 mov r2, #8 bl ov02_0232FDEC add r0, r4, #4 bl ov02_0232F818 add r1, sp, #0x10 strh r0, [r1, #4] mov r0, #4 ldrsh r0, [r1, r0] cmp r0, #0 bge _0232F612 mov r0, #3 bl ov02_0232E930 cmp r4, #0 beq _0232F60A add r0, r4, #0 bl ov02_0232DD7C _0232F60A: mov r0, #0 add sp, #0x20 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232F612: mov r0, #0 strb r0, [r4] ldrh r0, [r1, #4] bl ov02_0232FEC8 strh r0, [r4, #2] add r1, sp, #0x10 mov r0, #4 ldrsh r0, [r1, r0] add r2, r4, #0 add r3, sp, #0x14 add r0, r0, #4 strh r0, [r1, #4] add r0, sp, #0x10 add r0, #2 str r0, [sp] add r0, sp, #0x10 str r0, [sp, #4] mov r0, #0 add r1, r6, #0 bl ov02_0232F8A4 add r1, sp, #0x10 mov r0, #2 ldrsh r2, [r1, r0] mov r0, #0x10 mov r3, #6 orr r0, r2 strh r0, [r1, #2] add r0, sp, #0x14 ldr r2, _0232F6CC ; =ov02_02352FD0 add r0, #2 mov r1, #8 bl ov02_0232FC24 cmp r0, #0 beq _0232F674 mov r0, #2 bl ov02_0232E930 cmp r4, #0 beq _0232F66C add r0, r4, #0 bl ov02_0232DD7C _0232F66C: mov r0, #0 add sp, #0x20 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232F674: add r3, sp, #0x10 mov r0, #0 ldrsb r0, [r3, r0] mov r1, #1 mov r2, #4 str r0, [sp] mov r0, #0x11 str r0, [sp, #4] add r0, sp, #0x14 add r0, #2 str r0, [sp, #8] mov r6, #2 ldrsh r2, [r3, r2] ldrsh r3, [r3, r6] add r0, r5, #0 lsl r1, r1, #0xc bl ov02_0232F8F8 add r2, sp, #0x10 mov r1, #4 ldrsh r0, [r2, r1] ldr r3, [sp, #0xc] add r0, #0x18 strh r0, [r2, #4] ldrsh r1, [r2, r1] add r0, r5, #0 mov r2, #0xff bl ov02_0232F950 cmp r4, #0 beq _0232F6B8 add r0, r4, #0 bl ov02_0232DD7C _0232F6B8: mov r0, #0 add sp, #0x20 pop {r3, r4, r5, r6, r7, pc} nop _0232F6C0: .word ov02_0235853C _0232F6C4: .word 0x000005DC _0232F6C8: .word ov02_0235929C _0232F6CC: .word ov02_02352FD0 thumb_func_end ov02_0232F58C thumb_func_start ov02_0232F6D0 ov02_0232F6D0: ; 0x0232F6D0 push {r3, r4, r5, r6, lr} sub sp, #0x24 add r5, r1, #0 mov r1, #0 add r0, sp, #0xc strb r1, [r0] strh r1, [r0, #4] strh r1, [r0, #2] ldr r0, _0232F7A0 ; =ov02_0235853C add r6, r2, #0 ldr r4, [r0, #0x14] add r0, sp, #0x14 mov r2, #8 bl ov02_0232FDFC ldr r2, _0232F7A4 ; =0x000005DC add r0, r4, #0 mov r1, #0 bl ov02_0232FDFC mov r1, #2 add r0, sp, #0xc strb r1, [r0, #8] mov r1, #0 strb r1, [r0, #9] mov r0, #4 bl ov02_0232FEC8 add r1, sp, #0xc strh r0, [r1, #0xa] ldr r0, _0232F7A0 ; =ov02_0235853C ldr r0, [r0, #0x2c] str r0, [sp, #0x18] bl ov02_0232FEA0 str r0, [sp, #0x18] mov r1, #8 add r0, sp, #0xc strh r1, [r0, #4] add r0, sp, #0xc add r0, #2 str r0, [sp] add r0, sp, #0xc str r0, [sp, #4] ldr r0, _0232F7A0 ; =ov02_0235853C add r1, r4, #0 ldr r0, [r0] add r1, #0x18 add r2, sp, #0x14 add r3, sp, #0x10 bl ov02_0232F8A4 add r5, #8 add r0, sp, #0x1c add r1, r5, #0 mov r2, #8 bl ov02_0232FDEC ldr r2, _0232F7A8 ; =ov02_02352FD0 add r0, sp, #0x1c mov r1, #8 mov r3, #6 bl ov02_0232FC24 cmp r0, #0 beq _0232F762 mov r0, #2 bl ov02_0232E930 mov r0, #0 add sp, #0x24 mvn r0, r0 pop {r3, r4, r5, r6, pc} _0232F762: add r3, sp, #0xc mov r0, #0 ldrsb r0, [r3, r0] mov r1, #2 mov r2, #4 str r0, [sp] mov r0, #0x11 str r0, [sp, #4] add r0, sp, #0x1c str r0, [sp, #8] mov r5, #2 ldrsh r2, [r3, r2] ldrsh r3, [r3, r5] add r0, r4, #0 lsl r1, r1, #0xc bl ov02_0232F8F8 add r2, sp, #0xc mov r1, #4 ldrsh r0, [r2, r1] add r3, r6, #0 add r0, #0x18 strh r0, [r2, #4] ldrsh r1, [r2, r1] add r0, r4, #0 mov r2, #0 bl ov02_0232F950 mov r0, #0 add sp, #0x24 pop {r3, r4, r5, r6, pc} .align 2, 0 _0232F7A0: .word ov02_0235853C _0232F7A4: .word 0x000005DC _0232F7A8: .word ov02_02352FD0 thumb_func_end ov02_0232F6D0 thumb_func_start ov02_0232F7AC ov02_0232F7AC: ; 0x0232F7AC push {r3, r4, r5, r6, lr} sub sp, #0x14 ldr r0, _0232F80C ; =ov02_0235853C add r6, r2, #0 ldr r4, [r0, #0x14] ldr r2, _0232F810 ; =0x000005DC add r5, r1, #0 add r0, r4, #0 mov r1, #0 bl ov02_0232FDFC add r5, #0x10 add r0, sp, #0xc add r1, r5, #0 mov r2, #8 bl ov02_0232FDEC ldr r0, _0232F814 ; =ov02_02352FD0 bl ov02_0232FF20 add r3, r0, #0 ldr r2, _0232F814 ; =ov02_02352FD0 add r0, sp, #0xc mov r1, #8 bl ov02_0232FC24 mov r2, #0 mov r1, #3 str r2, [sp] mov r0, #0x11 str r0, [sp, #4] add r0, sp, #0xc str r0, [sp, #8] add r0, r4, #0 lsl r1, r1, #0xc add r3, r2, #0 bl ov02_0232F8F8 add r0, r4, #0 mov r1, #0x18 mov r2, #0 add r3, r6, #0 bl ov02_0232F950 mov r0, #0 add sp, #0x14 pop {r3, r4, r5, r6, pc} nop _0232F80C: .word ov02_0235853C _0232F810: .word 0x000005DC _0232F814: .word ov02_02352FD0 thumb_func_end ov02_0232F7AC thumb_func_start ov02_0232F818 ov02_0232F818: ; 0x0232F818 push {r3, r4, r5, r6, r7, lr} ldr r1, _0232F89C ; =ov02_0235855C add r5, r0, #0 mov r0, #0x1d ldrsb r0, [r1, r0] ldr r1, _0232F8A0 ; =ov02_0235853C mov r6, #0 strb r0, [r5] mov r0, #1 strb r0, [r5, #1] ldr r0, [r1, #0x28] ldr r1, [r1, #0x24] lsl r0, r0, #0x10 asr r4, r0, #0x10 add r0, r5, #6 add r2, r4, #0 bl ov02_0232FDEC lsl r0, r4, #0x10 lsr r0, r0, #0x10 bl ov02_0232FEC8 strh r0, [r5, #2] add r0, r4, #6 lsl r0, r0, #0x10 asr r0, r0, #0x10 add r1, r0, #1 lsr r0, r1, #0x1f add r0, r1, r0 asr r0, r0, #1 lsl r0, r0, #0x11 asr r7, r0, #0x10 lsl r0, r7, #0x10 lsr r0, r0, #0x10 bl ov02_0232FEC8 strh r0, [r5, #4] add r0, r6, r7 lsl r0, r0, #0x10 asr r6, r0, #0x10 mov r0, #0x60 strb r0, [r5, r7] add r4, r5, r7 mov r0, #0 strb r0, [r4, #1] bl ov02_0232FEC8 strh r0, [r4, #4] mov r0, #0xe bl ov02_0232FEA0 str r0, [sp] add r0, r4, #6 add r1, sp, #0 mov r2, #4 bl ov02_0232FDEC mov r0, #4 bl ov02_0232FEC8 add r6, #0xa strh r0, [r4, #2] lsl r0, r6, #0x10 asr r0, r0, #0x10 pop {r3, r4, r5, r6, r7, pc} nop _0232F89C: .word ov02_0235855C _0232F8A0: .word ov02_0235853C thumb_func_end ov02_0232F818 thumb_func_start ov02_0232F8A4 ov02_0232F8A4: ; 0x0232F8A4 push {r4, r5, lr} sub sp, #0xc add r5, r1, #0 add r4, r3, #0 cmp r0, #1 bne _0232F8E4 ldr r0, [sp, #0x18] mov r1, #1 strh r1, [r0] add r0, r5, #2 str r0, [sp] ldr r0, _0232F8F4 ; =ov02_0235929C ldr r3, [sp, #0x1c] str r0, [sp, #4] mov r0, #8 str r0, [sp, #8] add r0, r2, #0 mov r2, #0 ldrsh r2, [r4, r2] add r1, r5, #4 bl ov02_0232F9B8 ldrh r0, [r4] bl ov02_0232FEC8 strh r0, [r5] mov r0, #0 ldrsh r0, [r4, r0] add sp, #0xc add r0, r0, #4 strh r0, [r4] pop {r4, r5, pc} _0232F8E4: add r1, r2, #0 mov r2, #0 ldrsh r2, [r4, r2] add r0, r5, #0 bl ov02_0232FDEC add sp, #0xc pop {r4, r5, pc} .align 2, 0 _0232F8F4: .word ov02_0235929C thumb_func_end ov02_0232F8A4 thumb_func_start ov02_0232F8F8 ov02_0232F8F8: ; 0x0232F8F8 push {r3, r4, r5, r6, r7, lr} add r5, r0, #0 mov r0, #1 add r4, r1, #0 add r6, r2, #0 add r7, r3, #0 bl ov02_0232FEC8 strh r0, [r5] mov r0, #0 strh r0, [r5, #2] strh r0, [r5, #4] lsl r0, r4, #0x10 lsr r0, r0, #0x10 bl ov02_0232FEC8 strh r0, [r5, #6] mov r0, #0 strh r0, [r5, #8] lsl r0, r6, #0x10 lsr r0, r0, #0x10 bl ov02_0232FEC8 strh r0, [r5, #0xa] lsl r0, r7, #0x10 lsr r0, r0, #0x10 bl ov02_0232FEC8 strh r0, [r5, #0xc] add r1, sp, #8 mov r0, #0x10 ldrsb r0, [r1, r0] mov r2, #8 strb r0, [r5, #0xe] mov r0, #0x14 ldrsb r0, [r1, r0] ldr r1, [sp, #0x20] strb r0, [r5, #0xf] add r5, #0x10 add r0, r5, #0 bl ov02_0232FDEC pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end ov02_0232F8F8 thumb_func_start ov02_0232F950 ov02_0232F950: ; 0x0232F950 push {r3, r4, r5, r6, r7, lr} sub sp, #0x10 add r5, r0, #0 add r6, r1, #0 add r4, r2, #0 add r0, sp, #8 mov r1, #0 mov r2, #8 add r7, r3, #0 bl ov02_0232FDFC mov r1, #2 add r0, sp, #8 strb r1, [r0, #1] ldr r0, _0232F9AC ; =0x00005790 bl ov02_0232FEC8 add r1, sp, #8 strh r0, [r1, #2] ldr r0, _0232F9B0 ; =ov02_0235853C ldr r0, [r0, #0x34] bl ov02_0232FEA0 str r0, [sp, #0xc] cmp r4, #0xff beq _0232F98E ldr r1, _0232F9B4 ; =ov02_0235855C mov r0, #0x1c ldrsb r0, [r1, r0] cmp r0, #0 bne _0232F994 _0232F98E: mov r0, #0 mvn r0, r0 str r0, [sp, #0xc] _0232F994: add r0, sp, #8 str r0, [sp] mov r0, #8 str r0, [sp, #4] add r0, r7, #0 add r1, r5, #0 add r2, r6, #0 mov r3, #0 bl ov02_0232FE70 add sp, #0x10 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _0232F9AC: .word 0x00005790 _0232F9B0: .word ov02_0235853C _0232F9B4: .word ov02_0235855C thumb_func_end ov02_0232F950 thumb_func_start ov02_0232F9B8 ov02_0232F9B8: ; 0x0232F9B8 push {r4, r5, r6, r7, lr} sub sp, #0x14 add r5, r2, #0 add r7, r1, #0 add r4, r3, #0 add r1, r5, #0 add r6, r0, #0 bl ov02_0232FB8C strb r0, [r4] add r0, r5, #0 bl ov02_0232DD6C str r0, [sp, #0xc] cmp r0, #0 bne _0232F9E0 mov r0, #0 add sp, #0x14 mvn r0, r0 pop {r4, r5, r6, r7, pc} _0232F9E0: bl ov02_0232FF34 add r1, sp, #0 strh r0, [r1] ldr r0, [sp, #0x28] add r1, sp, #0 mov r2, #2 bl ov02_0232FDEC ldr r0, _0232FA2C ; =ov02_023592A4 ldr r1, [sp, #0x28] mov r2, #2 bl ov02_0232FDEC ldr r0, _0232FA30 ; =ov02_023592A6 ldr r1, [sp, #0x2c] ldr r2, [sp, #0x30] bl ov02_0232FDEC ldr r2, [sp, #0x30] ldr r1, _0232FA2C ; =ov02_023592A4 add r0, sp, #4 add r2, r2, #2 add r3, r5, #0 bl ov02_0232FABC add r0, sp, #4 add r1, r7, #0 add r2, r6, #0 add r3, r5, #0 bl ov02_0232FB20 ldr r0, [sp, #0xc] bl ov02_0232DD7C mov r0, #0 add sp, #0x14 pop {r4, r5, r6, r7, pc} .align 2, 0 _0232FA2C: .word ov02_023592A4 _0232FA30: .word ov02_023592A6 thumb_func_end ov02_0232F9B8 thumb_func_start ov02_0232FA34 ov02_0232FA34: ; 0x0232FA34 push {r3, r4, r5, r6, r7, lr} sub sp, #0x10 add r4, r2, #0 add r7, r0, #0 add r0, r4, #0 add r5, r1, #0 add r6, r3, #0 bl ov02_0232DD6C str r0, [sp, #8] cmp r0, #0 bne _0232FA5A mov r0, #2 bl ov02_0232E930 mov r0, #0 add sp, #0x10 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232FA5A: ldr r0, _0232FAB4 ; =ov02_023592A4 ldr r1, [sp, #0x28] mov r2, #2 bl ov02_0232FDEC ldr r0, _0232FAB8 ; =ov02_023592A6 ldr r1, [sp, #0x2c] ldr r2, [sp, #0x30] bl ov02_0232FDEC ldr r2, [sp, #0x30] ldr r1, _0232FAB4 ; =ov02_023592A4 add r0, sp, #0 add r2, r2, #2 add r3, r4, #0 bl ov02_0232FABC add r0, sp, #0 add r1, r5, #0 add r2, r7, #0 add r3, r4, #0 bl ov02_0232FB20 add r0, r5, #0 add r1, r4, #0 bl ov02_0232FB8C cmp r0, r6 beq _0232FAA8 mov r0, #0x12 bl ov02_0232E930 ldr r0, [sp, #8] bl ov02_0232DD7C mov r0, #0 add sp, #0x10 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232FAA8: ldr r0, [sp, #8] bl ov02_0232DD7C mov r0, #0 add sp, #0x10 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _0232FAB4: .word ov02_023592A4 _0232FAB8: .word ov02_023592A6 thumb_func_end ov02_0232FA34 thumb_func_start ov02_0232FABC ov02_0232FABC: ; 0x0232FABC push {r3, r4, r5, r6, r7, lr} sub sp, #0x10 str r0, [sp] str r1, [sp, #4] ldr r4, [r0, #8] ldr r1, [sp] mov r0, #0 str r0, [r1, #4] str r2, [sp, #8] str r0, [r1] add r2, r3, #0 str r2, [r1, #0xc] str r3, [sp, #0xc] add r1, r3, #0 beq _0232FAE4 _0232FADA: ldr r1, [sp, #0xc] strb r0, [r4, r0] add r0, r0, #1 cmp r0, r1 blo _0232FADA _0232FAE4: ldr r0, [sp, #0xc] mov r1, #0 add r6, r1, #0 add r5, r1, #0 cmp r0, #0 bls _0232FB1A _0232FAF0: ldr r0, [sp, #4] ldrb r7, [r4, r5] ldrb r0, [r0, r6] add r0, r1, r0 ldr r1, [sp] add r0, r7, r0 ldr r1, [r1, #0xc] bl _u32_div_f ldrb r0, [r4, r1] add r6, r6, #1 strb r7, [r4, r1] strb r0, [r4, r5] ldr r0, [sp, #8] cmp r6, r0 blo _0232FB12 mov r6, #0 _0232FB12: ldr r0, [sp, #0xc] add r5, r5, #1 cmp r5, r0 blo _0232FAF0 _0232FB1A: add sp, #0x10 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end ov02_0232FABC thumb_func_start ov02_0232FB20 ov02_0232FB20: ; 0x0232FB20 push {r3, r4, r5, r6, r7, lr} str r0, [sp] add r5, r1, #0 add r6, r2, #0 add r7, r3, #0 ldr r4, _0232FB48 ; =0x00000000 beq _0232FB44 _0232FB2E: ldr r0, [sp] bl ov02_0232FB4C lsl r0, r0, #0x18 lsr r1, r0, #0x18 ldrb r0, [r6, r4] eor r0, r1 strb r0, [r5, r4] add r4, r4, #1 cmp r4, r7 blo _0232FB2E _0232FB44: pop {r3, r4, r5, r6, r7, pc} nop _0232FB48: .word 0x00000000 thumb_func_end ov02_0232FB20 thumb_func_start ov02_0232FB4C ov02_0232FB4C: ; 0x0232FB4C push {r3, r4, r5, r6, r7, lr} add r5, r0, #0 ldr r0, [r5, #0xc] ldr r4, [r5, #8] str r0, [sp] ldr r0, [r5] ldr r1, [sp] add r0, r0, #1 bl _u32_div_f lsl r0, r1, #0x18 lsr r7, r0, #0x18 ldrb r6, [r4, r7] ldr r0, [r5, #4] ldr r1, [sp] add r0, r6, r0 bl _u32_div_f lsl r0, r1, #0x18 lsr r1, r0, #0x18 ldrb r0, [r4, r1] str r7, [r5] str r1, [r5, #4] strb r6, [r4, r1] strb r0, [r4, r7] ldr r1, [r5, #0xc] add r0, r6, r0 bl _u32_div_f ldrb r0, [r4, r1] pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end ov02_0232FB4C thumb_func_start ov02_0232FB8C ov02_0232FB8C: ; 0x0232FB8C push {r3, lr} add r3, r0, #0 ldr r0, _0232FBB0 ; =ov02_023587FC add r2, r1, #0 str r0, [sp] mov r0, #0 add r1, r3, #0 mvn r0, r0 mov r3, #0 bl ov02_0232FBB4 mov r1, #0 mvn r1, r1 eor r0, r1 lsl r0, r0, #0x18 lsr r0, r0, #0x18 pop {r3, pc} nop _0232FBB0: .word ov02_023587FC thumb_func_end ov02_0232FB8C thumb_func_start ov02_0232FBB4 ov02_0232FBB4: ; 0x0232FBB4 push {r3, r4, r5, r6, r7, lr} add r5, r0, #0 add r7, r1, #0 add r4, r2, #0 ldr r6, [sp, #0x18] cmp r3, #0 bne _0232FBCA add r0, r3, #0 add r1, r6, #0 bl ov02_0232FBEC _0232FBCA: mov r1, #0 cmp r4, #0 ble _0232FBE6 _0232FBD0: ldrb r2, [r7, r1] lsr r0, r5, #8 add r1, r1, #1 eor r2, r5 lsl r2, r2, #0x18 lsr r2, r2, #0x16 ldr r2, [r6, r2] add r5, r0, #0 eor r5, r2 cmp r1, r4 blt _0232FBD0 _0232FBE6: add r0, r5, #0 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end ov02_0232FBB4 thumb_func_start ov02_0232FBEC ov02_0232FBEC: ; 0x0232FBEC push {r4, r5, r6, r7} mov r5, #1 add r3, r5, #0 ldr r4, _0232FC20 ; =0xEDB88320 mov r0, #0 add r3, #0xff _0232FBF8: add r7, r0, #0 mov r2, #0 _0232FBFC: add r6, r7, #0 tst r6, r5 beq _0232FC0A lsr r6, r7, #1 add r7, r6, #0 eor r7, r4 b _0232FC0C _0232FC0A: lsr r7, r7, #1 _0232FC0C: add r2, r2, #1 cmp r2, #8 blt _0232FBFC add r0, r0, #1 stmia r1!, {r7} cmp r0, r3 blt _0232FBF8 pop {r4, r5, r6, r7} bx lr nop _0232FC20: .word 0xEDB88320 thumb_func_end ov02_0232FBEC thumb_func_start ov02_0232FC24 ov02_0232FC24: ; 0x0232FC24 push {r3, r4, r5, r6, r7, lr} sub sp, #0x10 add r5, r1, #0 add r7, r0, #0 lsr r0, r5, #0x1f add r0, r5, r0 asr r0, r0, #1 str r2, [sp, #4] str r3, [sp, #8] bl ov02_0232DD6C add r6, r0, #0 bne _0232FC46 mov r0, #0 add sp, #0x10 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232FC46: add r0, r5, #0 bl ov02_0232DD6C str r0, [sp, #0xc] cmp r0, #0 bne _0232FC60 add r0, r6, #0 bl ov02_0232DD7C mov r0, #0 add sp, #0x10 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0232FC60: mov r4, #0 _0232FC62: ldr r0, [sp, #8] ldr r3, [sp, #4] str r0, [sp] add r0, r4, #0 add r1, r6, #0 add r2, r5, #0 bl ov02_0232FCA0 add r0, r6, #0 add r1, r7, #0 add r2, r5, #0 bl ov02_0232FCD4 ldr r2, [sp, #0xc] add r0, r7, #0 add r1, r5, #0 bl ov02_0232FCF8 add r4, r4, #1 cmp r4, #2 blt _0232FC62 add r0, r6, #0 bl ov02_0232DD7C ldr r0, [sp, #0xc] bl ov02_0232DD7C mov r0, #0 add sp, #0x10 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end ov02_0232FC24 thumb_func_start ov02_0232FCA0 ov02_0232FCA0: ; 0x0232FCA0 push {r3, r4, r5, r6, r7, lr} add r5, r1, #0 lsr r1, r2, #0x1f add r1, r2, r1 ldr r6, [sp, #0x18] asr r4, r1, #1 add r1, r6, #0 add r7, r3, #0 bl _s32_div_f mov r0, #0 cmp r4, #0 ble _0232FCD2 _0232FCBA: strb r0, [r5, r0] ldrsb r2, [r7, r1] ldrsb r3, [r5, r0] add r1, r1, #1 eor r2, r3 strb r2, [r5, r0] cmp r1, r6 blt _0232FCCC mov r1, #0 _0232FCCC: add r0, r0, #1 cmp r0, r4 blt _0232FCBA _0232FCD2: pop {r3, r4, r5, r6, r7, pc} thumb_func_end ov02_0232FCA0 thumb_func_start ov02_0232FCD4 ov02_0232FCD4: ; 0x0232FCD4 push {r4, r5} lsr r3, r2, #0x1f add r3, r2, r3 asr r4, r3, #1 mov r3, #0 cmp r4, #0 ble _0232FCF4 add r5, r1, r4 _0232FCE4: ldrsb r1, [r0, r3] ldrb r2, [r5] add r3, r3, #1 eor r1, r2 strb r1, [r5] add r5, r5, #1 cmp r3, r4 blt _0232FCE4 _0232FCF4: pop {r4, r5} bx lr thumb_func_end ov02_0232FCD4 thumb_func_start ov02_0232FCF8 ov02_0232FCF8: ; 0x0232FCF8 push {r3, r4, r5, r6, r7, lr} add r6, r1, #0 add r5, r0, #0 lsr r0, r6, #0x1f add r0, r6, r0 asr r7, r0, #1 add r4, r2, #0 add r0, r4, #0 add r1, r5, r7 add r2, r7, #0 bl ov02_0232FDEC add r0, r4, r7 add r1, r5, #0 add r2, r7, #0 bl ov02_0232FDEC add r0, r5, #0 add r1, r4, #0 add r2, r6, #0 bl ov02_0232FDEC pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end ov02_0232FCF8 thumb_func_start ov02_0232FD28 ov02_0232FD28: ; 0x0232FD28 push {r3, lr} cmp r1, #0 ble _0232FD38 add r0, r1, #0 ldr r1, _0232FD3C ; =ov02_02359320 ldr r1, [r1] blx r1 pop {r3, pc} _0232FD38: mov r0, #0 pop {r3, pc} .align 2, 0 _0232FD3C: .word ov02_02359320 thumb_func_end ov02_0232FD28 thumb_func_start ov02_0232FD40 ov02_0232FD40: ; 0x0232FD40 push {r3, lr} add r0, r1, #0 ldr r1, _0232FD4C ; =ov02_0235932C ldr r1, [r1] blx r1 pop {r3, pc} .align 2, 0 _0232FD4C: .word ov02_0235932C thumb_func_end ov02_0232FD40 thumb_func_start ov02_0232FD50 ov02_0232FD50: ; 0x0232FD50 push {r3, r4, r5, lr} add r5, r1, #0 add r4, r2, #0 bl ov02_0232FEA0 ldr r1, _0232FD9C ; =ov02_02352F64 str r0, [r1, #0x18] add r0, r5, #0 bl ov02_0232FEA0 ldr r1, _0232FD9C ; =ov02_02352F64 str r0, [r1, #0x1c] add r0, r4, #0 bl ov02_0232FEA0 ldr r1, _0232FD9C ; =ov02_02352F64 str r0, [r1, #0x20] ldr r0, _0232FDA0 ; =ov02_02352F6C blx ov00_022CF674 cmp r0, #0 bge _0232FD82 mov r0, #0 mvn r0, r0 pop {r3, r4, r5, pc} _0232FD82: ldr r5, _0232FDA4 ; =ov00_023250c8 ldr r0, [r5] cmp r0, #0 bne _0232FD98 mov r4, #0x64 _0232FD8C: add r0, r4, #0 bl sub_02079B14 ldr r0, [r5] cmp r0, #0 beq _0232FD8C _0232FD98: mov r0, #0 pop {r3, r4, r5, pc} .align 2, 0 _0232FD9C: .word ov02_02352F64 _0232FDA0: .word ov02_02352F6C _0232FDA4: .word ov00_023250C8 thumb_func_end ov02_0232FD50 thumb_func_start ov02_0232FDA8 ov02_0232FDA8: ; 0x0232FDA8 push {r3, lr} blx ov00_022CF7E8 cmp r0, #0 bge _0232FDB8 mov r0, #0 mvn r0, r0 pop {r3, pc} _0232FDB8: bl ov02_023301FC cmp r0, #0 beq _0232FDC4 mov r0, #1 b _0232FDC6 _0232FDC4: mov r0, #0 _0232FDC6: neg r0, r0 pop {r3, pc} .align 2, 0 thumb_func_end ov02_0232FDA8 thumb_func_start ov02_0232FDCC ov02_0232FDCC: ; 0x0232FDCC push {r3, r4} mov r3, #0 b _0232FDD6 _0232FDD2: add r0, r0, #1 add r1, r1, #1 _0232FDD6: add r4, r2, #0 sub r2, r2, #1 cmp r4, #0 ble _0232FDE6 ldrb r4, [r0] ldrb r3, [r1] sub r3, r4, r3 beq _0232FDD2 _0232FDE6: add r0, r3, #0 pop {r3, r4} bx lr thumb_func_end ov02_0232FDCC thumb_func_start ov02_0232FDEC ov02_0232FDEC: ; 0x0232FDEC add r3, r0, #0 add r0, r1, #0 add r1, r3, #0 ldr r3, _0232FDF8 ; =MemcpyFast bx r3 nop _0232FDF8: .word MemcpyFast thumb_func_end ov02_0232FDEC thumb_func_start ov02_0232FDFC ov02_0232FDFC: ; 0x0232FDFC ldr r3, _0232FE04 ; =MemsetFast lsl r1, r1, #0x18 lsr r1, r1, #0x18 bx r3 .align 2, 0 _0232FE04: .word MemsetFast thumb_func_end ov02_0232FDFC thumb_func_start ov02_0232FE08 ov02_0232FE08: ; 0x0232FE08 push {r3, r4, r5, lr} ldr r4, [sp, #0x14] ldr r5, [r4] ldr r4, [sp, #0x10] strb r5, [r4] str r4, [sp] blx recvfrom pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end ov02_0232FE08 thumb_func_start ov02_0232FE1C ov02_0232FE1C: ; 0x0232FE1C push {r4, r5, r6, lr} sub sp, #8 ldr r2, [r1] ldr r0, [r1, #4] ldr r5, [sp, #0x18] str r2, [sp] str r0, [sp, #4] ldr r0, [r5] mov r4, #0 ldr r2, _0232FE6C ; =0x01FF6210 asr r1, r0, #0x1f add r3, r4, #0 bl _ll_mul lsr r3, r0, #6 lsl r2, r1, #0x1a orr r3, r2 lsr r0, r1, #6 add r6, r4, r3 adc r4, r0 ldr r0, [r5, #4] ldr r2, _0232FE6C ; =0x01FF6210 asr r1, r0, #0x1f mov r3, #0 bl _ll_mul lsr r3, r0, #6 lsl r2, r1, #0x1a orr r3, r2 lsr r0, r1, #6 add r2, r6, r3 adc r4, r0 add r0, sp, #0 mov r1, #1 add r3, r4, #0 blx ov00_022CF918 add sp, #8 pop {r4, r5, r6, pc} nop _0232FE6C: .word 0x01FF6210 thumb_func_end ov02_0232FE1C thumb_func_start ov02_0232FE70 ov02_0232FE70: ; 0x0232FE70 push {r3, r4, r5, lr} ldr r5, [sp, #0x14] ldr r4, [sp, #0x10] strb r5, [r4] str r4, [sp] blx sendto pop {r3, r4, r5, pc} thumb_func_end ov02_0232FE70 thumb_func_start ov02_0232FE80 ov02_0232FE80: ; 0x0232FE80 bx lr .align 2, 0 thumb_func_end ov02_0232FE80 thumb_func_start ov02_0232FE84 ov02_0232FE84: ; 0x0232FE84 ldr r3, _0232FE88 ; =socket bx r3 .align 2, 0 _0232FE88: .word socket thumb_func_end ov02_0232FE84 thumb_func_start ov02_0232FE8C ov02_0232FE8C: ; 0x0232FE8C ldr r3, _0232FE94 ; =bind strb r2, [r1] bx r3 nop _0232FE94: .word bind thumb_func_end ov02_0232FE8C thumb_func_start ov02_0232FE98 ov02_0232FE98: ; 0x0232FE98 ldr r3, _0232FE9C ; =CloseVeneer bx r3 .align 2, 0 _0232FE9C: .word CloseVeneer thumb_func_end ov02_0232FE98 thumb_func_start ov02_0232FEA0 ov02_0232FEA0: ; 0x0232FEA0 push {r4, r5} mov r3, #0xff lsl r1, r0, #0x18 lsl r3, r3, #0x18 add r2, r1, #0 lsl r4, r0, #8 lsr r1, r3, #8 and r1, r4 lsr r4, r0, #0x18 lsl r4, r4, #0x18 lsr r5, r4, #0x18 lsr r4, r0, #8 lsr r0, r3, #0x10 and r0, r4 orr r0, r5 and r2, r3 orr r0, r1 orr r0, r2 pop {r4, r5} bx lr thumb_func_end ov02_0232FEA0 thumb_func_start ov02_0232FEC8 ov02_0232FEC8: ; 0x0232FEC8 asr r1, r0, #8 lsl r1, r1, #0x18 lsr r2, r1, #0x18 lsl r1, r0, #8 mov r0, #0xff lsl r0, r0, #8 and r0, r1 orr r0, r2 lsl r0, r0, #0x10 lsr r0, r0, #0x10 bx lr .align 2, 0 thumb_func_end ov02_0232FEC8 thumb_func_start ov02_0232FEE0 ov02_0232FEE0: ; 0x0232FEE0 push {r4, r5} mov r3, #0xff lsl r1, r0, #0x18 lsl r3, r3, #0x18 add r2, r1, #0 lsl r4, r0, #8 lsr r1, r3, #8 and r1, r4 lsr r4, r0, #0x18 lsl r4, r4, #0x18 lsr r5, r4, #0x18 lsr r4, r0, #8 lsr r0, r3, #0x10 and r0, r4 orr r0, r5 and r2, r3 orr r0, r1 orr r0, r2 pop {r4, r5} bx lr thumb_func_end ov02_0232FEE0 thumb_func_start ov02_0232FF08 ov02_0232FF08: ; 0x0232FF08 asr r1, r0, #8 lsl r1, r1, #0x18 lsr r2, r1, #0x18 lsl r1, r0, #8 mov r0, #0xff lsl r0, r0, #8 and r0, r1 orr r0, r2 lsl r0, r0, #0x10 lsr r0, r0, #0x10 bx lr .align 2, 0 thumb_func_end ov02_0232FF08 thumb_func_start ov02_0232FF20 ov02_0232FF20: ; 0x0232FF20 mov r2, #0 ldrsb r1, [r0, r2] cmp r1, #0 beq _0232FF30 _0232FF28: add r2, r2, #1 ldrsb r1, [r0, r2] cmp r1, #0 bne _0232FF28 _0232FF30: add r0, r2, #0 bx lr thumb_func_end ov02_0232FF20 thumb_func_start ov02_0232FF34 ov02_0232FF34: ; 0x0232FF34 push {r3, r4, lr} sub sp, #0xc ldr r0, _0232FF94 ; =ov02_0235853C ldr r0, [r0, #8] cmp r0, #0 bne _0232FF76 mov r4, #0 add r0, sp, #0 add r1, r4, #0 mov r2, #0xc bl ov02_0232FDFC add r0, sp, #0 bl sub_020827F4 cmp r0, #0 bne _0232FF66 ldr r0, [sp] lsl r0, r0, #0xa add r1, r4, r0 ldr r0, [sp, #4] lsl r0, r0, #3 add r1, r1, r0 ldr r0, [sp, #8] add r4, r1, r0 _0232FF66: ldr r0, _0232FF94 ; =ov02_0235853C ldr r1, _0232FF98 ; =0x5D588B65 str r4, [r0, #0x18] str r1, [r0, #0x1c] ldr r1, _0232FF9C ; =0x00269EC3 str r1, [r0, #0x20] mov r1, #1 str r1, [r0, #8] _0232FF76: ldr r0, _0232FF94 ; =ov02_0235853C ldr r2, [r0, #0x1c] ldr r1, [r0, #0x18] ldr r3, [r0, #0x20] mul r1, r2 add r1, r3, r1 str r1, [r0, #0x18] ldr r0, _0232FFA0 ; =0x00007FFF lsr r1, r1, #0x10 mul r0, r1 lsr r0, r0, #0x10 lsl r0, r0, #0x10 lsr r0, r0, #0x10 add sp, #0xc pop {r3, r4, pc} .align 2, 0 _0232FF94: .word ov02_0235853C _0232FF98: .word 0x5D588B65 _0232FF9C: .word 0x00269EC3 _0232FFA0: .word 0x00007FFF thumb_func_end ov02_0232FF34 thumb_func_start ov02_0232FFA4 ov02_0232FFA4: ; 0x0232FFA4 mov r1, #0 str r1, [r0] strh r1, [r0, #4] strh r1, [r0, #6] bx lr .align 2, 0 thumb_func_end ov02_0232FFA4 thumb_func_start ov02_0232FFB0 ov02_0232FFB0: ; 0x0232FFB0 str r0, [r1] mov r0, #1 strh r0, [r1, #4] bx lr thumb_func_end ov02_0232FFB0 thumb_func_start ov02_0232FFB8 ov02_0232FFB8: ; 0x0232FFB8 push {r3, r4, r5, r6, r7, lr} add r5, r0, #0 ldrh r0, [r5, #0xa] add r4, r1, #0 add r1, r4, #4 str r0, [r4] add r0, r5, #0 add r0, #0xc mov r2, #0x20 bl ArrayCopy16 ldrh r0, [r5, #0x36] add r1, r4, #0 add r1, #0x30 str r0, [r4, #0x24] add r0, r5, #4 mov r2, #6 bl ArrayCopy16 mov r1, #0 ldr r2, _02330040 ; =ov02_02352FD8 add r0, r1, #0 mov r6, #0x80 _0232FFE6: ldrh r7, [r5, #0x30] ldrh r3, [r2] tst r3, r7 beq _02330010 ldrb r7, [r2, #2] add r3, r4, r1 add r3, #0x3c strb r7, [r3] ldrh r7, [r5, #0x2e] ldrh r3, [r2] tst r3, r7 beq _0233000E add r3, r4, r1 add r3, #0x3c ldrb r3, [r3] add r7, r3, #0 add r3, r4, r1 orr r7, r6 add r3, #0x3c strb r7, [r3] _0233000E: add r1, r1, #1 _02330010: add r0, r0, #1 add r2, r2, #4 cmp r0, #0xc blt _0232FFE6 str r1, [r4, #0x38] ldrh r0, [r5, #0x32] str r0, [r4, #0x4c] ldrh r1, [r5, #0x2c] mov r0, #3 and r0, r1 cmp r0, #1 bne _0233002E mov r0, #1 str r0, [r4, #0x50] pop {r3, r4, r5, r6, r7, pc} _0233002E: cmp r0, #2 bne _02330038 mov r0, #2 str r0, [r4, #0x50] pop {r3, r4, r5, r6, r7, pc} _02330038: mov r0, #0 str r0, [r4, #0x50] pop {r3, r4, r5, r6, r7, pc} nop _02330040: .word ov02_02352FD8 thumb_func_end ov02_0232FFB8 thumb_func_start ov02_02330044 ov02_02330044: ; 0x02330044 push {r3, r4, r5, lr} add r5, r0, #0 add r4, r1, #0 mov r0, #0 add r1, #0xc mov r2, #0x20 bl ArrayFill16 ldr r0, [r5] add r1, r4, #0 strh r0, [r4, #0xa] ldrh r2, [r4, #0xa] add r0, r5, #4 add r1, #0xc bl MemcpyFast pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end ov02_02330044 thumb_func_start ov02_02330068 ov02_02330068: ; 0x02330068 add r3, r0, #0 add r0, r1, #0 str r2, [r3] add r1, r3, #4 ldr r3, _02330074 ; =ov02_0232FFB8 bx r3 .align 2, 0 _02330074: .word ov02_0232FFB8 + 1 thumb_func_end ov02_02330068 thumb_func_start ov02_02330078 ov02_02330078: ; 0x02330078 ldr r3, _02330084 ; =sub_02079DE0 add r1, r0, #0 ldr r0, _02330088 ; =ov02_02359340 mov r2, #0 bx r3 nop _02330084: .word sub_02079DE0 _02330088: .word ov02_02359340 thumb_func_end ov02_02330078 thumb_func_start ov02_0233008C ov02_0233008C: ; 0x0233008C ldr r3, _02330098 ; =sub_02079DE0 add r1, r0, #0 ldr r0, _0233009C ; =ov02_02359340 mov r2, #0 bx r3 nop _02330098: .word sub_02079DE0 _0233009C: .word ov02_02359340 thumb_func_end ov02_0233008C thumb_func_start ov02_023300A0 ov02_023300A0: ; 0x023300A0 push {r3, r4, r5, r6, r7, lr} add r5, r0, #0 add r6, r1, #0 ldr r0, _02330150 ; =ov02_02359340 ldr r1, _02330154 ; =ov02_02359330 mov r2, #4 mov r4, #1 bl sub_02079DB8 cmp r5, #0 beq _023300BA cmp r6, #0 bne _023300C0 _023300BA: mov r0, #0 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _023300C0: bl EnableIrqFlag ldr r1, _02330158 ; =ov02_02359320 str r5, [r1] str r6, [r1, #0xc] bl SetIrqFlag ldr r1, _02330158 ; =ov02_02359320 ldr r0, _0233015C ; =0x00005890 ldr r1, [r1] blx r1 add r1, r0, #0 ldr r0, _02330158 ; =ov02_02359320 str r1, [r0, #8] bne _023300E2 sub r0, r4, #2 pop {r3, r4, r5, r6, r7, pc} _023300E2: ldr r0, _02330160 ; =ov02_02330079 ldr r2, _0233015C ; =0x00005890 bl ov02_02330B3C cmp r0, #0 bne _023300F0 mov r4, #0 _023300F0: cmp r4, #0 beq _02330140 ldr r5, _02330150 ; =ov02_02359340 add r6, sp, #0 mov r7, #1 _023300FA: add r0, r5, #0 add r1, r6, #0 add r2, r7, #0 bl sub_02079E74 ldr r0, [sp] cmp r0, #0xf bhi _0233013A add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _02330116: ; jump table .hword _0233013A - _02330116 - 2 ; case 0 .hword _0233013A - _02330116 - 2 ; case 1 .hword _0233013A - _02330116 - 2 ; case 2 .hword _0233013A - _02330116 - 2 ; case 3 .hword _0233013C - _02330116 - 2 ; case 4 .hword _0233013C - _02330116 - 2 ; case 5 .hword _02330136 - _02330116 - 2 ; case 6 .hword _0233013A - _02330116 - 2 ; case 7 .hword _0233013A - _02330116 - 2 ; case 8 .hword _0233013A - _02330116 - 2 ; case 9 .hword _0233013A - _02330116 - 2 ; case 10 .hword _0233013A - _02330116 - 2 ; case 11 .hword _0233013A - _02330116 - 2 ; case 12 .hword _0233013A - _02330116 - 2 ; case 13 .hword _0233013A - _02330116 - 2 ; case 14 .hword _0233013A - _02330116 - 2 ; case 15 _02330136: mov r0, #0 pop {r3, r4, r5, r6, r7, pc} _0233013A: mov r4, #0 _0233013C: cmp r4, #0 bne _023300FA _02330140: ldr r1, _02330158 ; =ov02_02359320 ldr r0, [r1, #8] ldr r1, [r1, #0xc] blx r1 mov r0, #0 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} nop _02330150: .word ov02_02359340 _02330154: .word ov02_02359330 _02330158: .word ov02_02359320 _0233015C: .word 0x00005890 _02330160: .word ov02_02330078 + 1 thumb_func_end ov02_023300A0 thumb_func_start ov02_02330164 ov02_02330164: ; 0x02330164 push {r3, r4, r5, r6, r7, lr} ldr r0, _023301F4 ; =ov02_02359320 mov r4, #1 ldr r0, [r0, #0xc] sub r5, r4, #2 cmp r0, #0 bne _02330176 add r0, r5, #0 pop {r3, r4, r5, r6, r7, pc} _02330176: bl ov02_02330A60 cmp r0, #0 bne _02330182 sub r0, r4, #2 pop {r3, r4, r5, r6, r7, pc} _02330182: ldr r7, _023301F8 ; =ov02_02359340 ldr r6, _023301F4 ; =ov02_02359320 _02330186: add r0, r7, #0 add r1, sp, #0 mov r2, #1 bl sub_02079E74 ldr r0, [sp] cmp r0, #0x14 bhi _023301D8 add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _023301A2: ; jump table .hword _023301D8 - _023301A2 - 2 ; case 0 .hword _023301D8 - _023301A2 - 2 ; case 1 .hword _023301D8 - _023301A2 - 2 ; case 2 .hword _023301D8 - _023301A2 - 2 ; case 3 .hword _023301DA - _023301A2 - 2 ; case 4 .hword _023301DA - _023301A2 - 2 ; case 5 .hword _023301D8 - _023301A2 - 2 ; case 6 .hword _023301D8 - _023301A2 - 2 ; case 7 .hword _023301D8 - _023301A2 - 2 ; case 8 .hword _023301D8 - _023301A2 - 2 ; case 9 .hword _023301D8 - _023301A2 - 2 ; case 10 .hword _023301D8 - _023301A2 - 2 ; case 11 .hword _023301D8 - _023301A2 - 2 ; case 12 .hword _023301D8 - _023301A2 - 2 ; case 13 .hword _023301D8 - _023301A2 - 2 ; case 14 .hword _023301D8 - _023301A2 - 2 ; case 15 .hword _023301D8 - _023301A2 - 2 ; case 16 .hword _023301D8 - _023301A2 - 2 ; case 17 .hword _023301D8 - _023301A2 - 2 ; case 18 .hword _023301D8 - _023301A2 - 2 ; case 19 .hword _023301CC - _023301A2 - 2 ; case 20 _023301CC: ldr r0, [r6, #8] mov r4, #0 ldr r1, [r6, #0xc] add r5, r4, #0 blx r1 b _023301DA _023301D8: mov r4, #0 _023301DA: cmp r4, #0 bne _02330186 bl EnableIrqFlag ldr r1, _023301F4 ; =ov02_02359320 mov r2, #0 str r2, [r1] str r2, [r1, #0xc] bl SetIrqFlag add r0, r5, #0 pop {r3, r4, r5, r6, r7, pc} nop _023301F4: .word ov02_02359320 _023301F8: .word ov02_02359340 thumb_func_end ov02_02330164 thumb_func_start ov02_023301FC ov02_023301FC: ; 0x023301FC push {r3, r4, r5, r6, r7, lr} mov r5, #0 mvn r5, r5 bl ov02_02330A28 cmp r0, #0 beq _0233022C ldr r4, _02330230 ; =ov02_02359340 add r6, sp, #0 mov r7, #1 _02330210: add r0, r4, #0 add r1, r6, #0 add r2, r7, #0 bl sub_02079E74 ldr r0, [sp] cmp r0, #0xe bne _02330226 mov r0, #0 add r5, r0, #0 b _02330228 _02330226: mov r0, #0 _02330228: cmp r0, #0 bne _02330210 _0233022C: add r0, r5, #0 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _02330230: .word ov02_02359340 thumb_func_end ov02_023301FC thumb_func_start ov02_02330234 ov02_02330234: ; 0x02330234 push {r4, r5, r6, r7, lr} sub sp, #0x44 str r0, [sp, #4] mov r0, #0 mvn r0, r0 str r0, [sp, #0x10] mov r0, #1 str r0, [sp, #0xc] mov r6, #0 ldr r0, _02330398 ; =ov02_02359320 add r7, r6, #0 ldr r1, [r0] add r5, r6, #0 cmp r1, #0 beq _02330258 ldr r0, [r0, #0xc] cmp r0, #0 bne _02330260 _02330258: mov r0, #0 add sp, #0x44 mvn r0, r0 pop {r4, r5, r6, r7, pc} _02330260: mov r0, #3 lsl r0, r0, #0xc blx r1 add r4, r0, #0 bne _02330270 add sp, #0x44 sub r0, r6, #1 pop {r4, r5, r6, r7, pc} _02330270: add r0, r6, #0 ldr r3, _0233039C ; =0x0030BFFE add r1, r0, #0 add r2, r0, #0 str r4, [sp, #8] bl ov02_023308FC cmp r0, #0 bne _02330284 b _02330388 _02330284: add r0, sp, #0x18 bl sub_0207B040 mov r0, #0x13 str r0, [sp] ldr r1, _023303A0 ; =0x003FEC42 ldr r3, _023303A4 ; =ov02_0233008D add r0, sp, #0x18 add r2, r6, #0 bl sub_0207B17C _0233029A: ldr r0, _023303A8 ; =ov02_02359340 add r1, sp, #0x14 mov r2, #1 bl sub_02079E74 ldr r0, [sp, #0x14] cmp r0, #0x13 bhi _0233036E add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _023302B6: ; jump table .hword _0233036E - _023302B6 - 2 ; case 0 .hword _0233036E - _023302B6 - 2 ; case 1 .hword _0233036E - _023302B6 - 2 ; case 2 .hword _0233036E - _023302B6 - 2 ; case 3 .hword _02330324 - _023302B6 - 2 ; case 4 .hword _023302FC - _023302B6 - 2 ; case 5 .hword _0233036E - _023302B6 - 2 ; case 6 .hword _0233036E - _023302B6 - 2 ; case 7 .hword _02330324 - _023302B6 - 2 ; case 8 .hword _0233036E - _023302B6 - 2 ; case 9 .hword _0233031E - _023302B6 - 2 ; case 10 .hword _0233036E - _023302B6 - 2 ; case 11 .hword _0233036E - _023302B6 - 2 ; case 12 .hword _0233036E - _023302B6 - 2 ; case 13 .hword _0233036E - _023302B6 - 2 ; case 14 .hword _0233036E - _023302B6 - 2 ; case 15 .hword _0233036E - _023302B6 - 2 ; case 16 .hword _0233036E - _023302B6 - 2 ; case 17 .hword _02330324 - _023302B6 - 2 ; case 18 .hword _023302DE - _023302B6 - 2 ; case 19 _023302DE: cmp r6, #0 bne _02330324 cmp r5, #0 beq _023302F0 add r0, r4, #0 mov r1, #0x40 bl ov02_023308B8 add r7, r0, #0 _023302F0: bl ov02_023309EC cmp r0, #0 beq _0233036E mov r6, #1 b _02330324 _023302FC: cmp r6, #0 bne _02330324 cmp r5, #8 bge _02330308 add r5, r5, #1 b _02330324 _02330308: add r0, r4, #0 mov r1, #0x40 bl ov02_023308B8 add r7, r0, #0 bl ov02_023309EC cmp r0, #0 beq _0233036E mov r6, #1 b _02330324 _0233031E: mov r0, #0 str r0, [sp, #0xc] str r0, [sp, #0x10] _02330324: ldr r0, [sp, #0xc] cmp r0, #0 bne _0233029A cmp r7, #0 beq _02330342 sub r1, r7, #1 mov r0, #0x54 mul r0, r1 ldr r1, _02330398 ; =ov02_02359320 add r0, #0x58 ldr r1, [r1] blx r1 cmp r0, #0 bne _0233034E b _0233036E _02330342: ldr r1, _02330398 ; =ov02_02359320 mov r0, #0x58 ldr r1, [r1] blx r1 cmp r0, #0 beq _0233036E _0233034E: ldr r1, [sp, #4] mov r6, #0 str r0, [r1] str r7, [r0] cmp r7, #0 ble _0233036E add r5, r0, #4 _0233035C: add r0, r4, #0 add r1, r5, #0 bl ov02_0232FFB8 add r6, r6, #1 add r4, #0xc0 add r5, #0x54 cmp r6, r7 blt _0233035C _0233036E: add r0, sp, #0x18 bl sub_0207B1E8 ldr r5, _023303A8 ; =ov02_02359340 add r4, sp, #0x14 mov r6, #0 _0233037A: add r0, r5, #0 add r1, r4, #0 add r2, r6, #0 bl sub_02079E74 cmp r0, #1 beq _0233037A _02330388: ldr r1, _02330398 ; =ov02_02359320 ldr r0, [sp, #8] ldr r1, [r1, #0xc] blx r1 ldr r0, [sp, #0x10] add sp, #0x44 pop {r4, r5, r6, r7, pc} nop _02330398: .word ov02_02359320 _0233039C: .word 0x0030BFFE _023303A0: .word 0x003FEC42 _023303A4: .word ov02_0233008C + 1 _023303A8: .word ov02_02359340 thumb_func_end ov02_02330234 thumb_func_start ov02_023303AC ov02_023303AC: ; 0x023303AC push {r3, r4, r5, r6, r7, lr} sub sp, #0x40 mov r4, #1 add r7, r0, #0 sub r0, r4, #2 str r0, [sp, #0xc] ldr r0, [r7, #0x24] mov r6, #0 str r1, [sp, #4] cmp r0, #0 bne _023303C6 lsl r5, r4, #0x13 b _023303CE _023303C6: cmp r0, #1 bne _023303CE mov r5, #3 lsl r5, r5, #0x12 _023303CE: mov r0, #3 lsl r0, r0, #0x10 orr r5, r0 ldr r0, _02330560 ; =ov02_02359420 mov r1, #0 mov r2, #0x60 bl MemsetFast ldr r0, [r7, #0x28] cmp r0, #5 bne _023303EC ldr r0, _02330560 ; =ov02_02359420 mov r1, #1 strb r1, [r0] b _0233040C _023303EC: cmp r0, #0xd bne _023303F8 ldr r0, _02330560 ; =ov02_02359420 mov r1, #2 strb r1, [r0] b _0233040C _023303F8: cmp r0, #0x10 bne _02330404 ldr r0, _02330560 ; =ov02_02359420 mov r1, #3 strb r1, [r0] b _0233040C _02330404: mov r0, #0 add sp, #0x40 mvn r0, r0 pop {r3, r4, r5, r6, r7, pc} _0233040C: mov r1, #0x14 ldr r2, _02330560 ; =ov02_02359420 mul r1, r6 add r1, r1, #2 add r0, r7, #0 strb r6, [r2, #1] add r1, r2, r1 ldr r2, [r7, #0x28] add r0, #0x2c bl MemcpyFast blx ov00_022D6BDC ldr r2, [r7] ldr r3, _02330564 ; =0x0030BFFE mov r0, #0 add r1, r7, #4 bl ov02_023308FC cmp r0, #0 bne _02330438 b _02330546 _02330438: mov r0, #0 str r0, [sp, #8] add r0, sp, #0x14 bl sub_0207B040 mov r0, #0x12 str r0, [sp] ldr r1, _02330568 ; =0x003FEC42 ldr r3, _0233056C ; =ov02_0233008D add r0, sp, #0x14 mov r2, #0 bl sub_0207B17C b _02330528 _02330454: ldr r0, _02330570 ; =ov02_02359340 add r1, sp, #0x10 mov r2, #1 bl sub_02079E74 ldr r0, [sp, #0x10] cmp r0, #0x13 bhi _02330526 add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _02330470: ; jump table .hword _02330526 - _02330470 - 2 ; case 0 .hword _02330526 - _02330470 - 2 ; case 1 .hword _02330526 - _02330470 - 2 ; case 2 .hword _02330526 - _02330470 - 2 ; case 3 .hword _02330528 - _02330470 - 2 ; case 4 .hword _023304A0 - _02330470 - 2 ; case 5 .hword _02330526 - _02330470 - 2 ; case 6 .hword _02330526 - _02330470 - 2 ; case 7 .hword _02330528 - _02330470 - 2 ; case 8 .hword _02330526 - _02330470 - 2 ; case 9 .hword _023304E6 - _02330470 - 2 ; case 10 .hword _02330526 - _02330470 - 2 ; case 11 .hword _02330500 - _02330470 - 2 ; case 12 .hword _02330506 - _02330470 - 2 ; case 13 .hword _02330526 - _02330470 - 2 ; case 14 .hword _02330526 - _02330470 - 2 ; case 15 .hword _02330526 - _02330470 - 2 ; case 16 .hword _02330526 - _02330470 - 2 ; case 17 .hword _02330498 - _02330470 - 2 ; case 18 .hword _0233049E - _02330470 - 2 ; case 19 _02330498: cmp r6, #0 bne _02330528 mov r4, #0 _0233049E: b _02330528 _023304A0: cmp r6, #0 bne _02330528 add r0, sp, #0x14 bl sub_0207B1E8 ldr r0, _02330574 ; =ov02_02359360 mov r1, #1 bl ov02_023308B8 cmp r0, #1 beq _023304BA mov r4, #0 b _02330528 _023304BA: ldr r1, _02330574 ; =ov02_02359360 add r0, r7, #0 bl ov02_02330044 ldr r1, _02330578 ; =ov02_02359360 mov r0, #0 ldrh r1, [r1, #0xa] b _023304CC _023304CA: add r0, r0, #1 _023304CC: cmp r0, r1 blt _023304CA ldr r0, _02330574 ; =ov02_02359360 ldr r1, _02330560 ; =ov02_02359420 add r2, r5, #0 bl ov02_02330AB8 cmp r0, #0 bne _023304E2 mov r4, #0 b _02330528 _023304E2: mov r6, #1 b _02330528 _023304E6: ldr r1, _02330574 ; =ov02_02359360 add r0, r7, #0 bl ov02_02330044 ldr r0, _02330574 ; =ov02_02359360 ldr r1, _02330560 ; =ov02_02359420 add r2, r5, #0 bl ov02_02330AB8 cmp r0, #0 bne _02330528 mov r4, #0 b _02330528 _02330500: mov r4, #0 str r4, [sp, #0xc] b _02330528 _02330506: ldr r0, [sp, #8] add r0, r0, #1 str r0, [sp, #8] cmp r0, #3 bge _02330522 ldr r0, _02330574 ; =ov02_02359360 ldr r1, _02330560 ; =ov02_02359420 add r2, r5, #0 bl ov02_02330AB8 cmp r0, #0 bne _02330528 mov r4, #0 b _02330528 _02330522: mov r4, #0 b _02330528 _02330526: mov r4, #0 _02330528: cmp r4, #0 bne _02330454 add r0, sp, #0x14 bl sub_0207B1E8 ldr r5, _02330570 ; =ov02_02359340 add r4, sp, #0x10 mov r6, #0 _02330538: add r0, r5, #0 add r1, r4, #0 add r2, r6, #0 bl sub_02079E74 cmp r0, #1 beq _02330538 _02330546: ldr r0, [sp, #0xc] cmp r0, #0 bne _02330550 mov r2, #1 b _02330552 _02330550: mov r2, #0 _02330552: ldr r0, [sp, #4] ldr r1, _02330574 ; =ov02_02359360 bl ov02_02330068 ldr r0, [sp, #0xc] add sp, #0x40 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _02330560: .word ov02_02359420 _02330564: .word 0x0030BFFE _02330568: .word 0x003FEC42 _0233056C: .word ov02_0233008C + 1 _02330570: .word ov02_02359340 _02330574: .word ov02_02359360 _02330578: .word ov02_02359360 thumb_func_end ov02_023303AC thumb_func_start ov02_0233057C ov02_0233057C: ; 0x0233057C ldr r3, _02330580 ; =sub_02079B14 bx r3 .align 2, 0 _02330580: .word sub_02079B14 thumb_func_end ov02_0233057C thumb_func_start ov02_02330584 ov02_02330584: ; 0x02330584 push {r3, lr} ldr r1, _02330594 ; =ov02_02359320 ldr r1, [r1, #4] cmp r1, #0 beq _02330590 blx r1 _02330590: mov r0, #0 pop {r3, pc} .align 2, 0 _02330594: .word ov02_02359320 thumb_func_end ov02_02330584 thumb_func_start ov02_02330598 ov02_02330598: ; 0x02330598 push {r3, lr} cmp r0, #0 bne _023305A0 b _02330848 _023305A0: mov r1, #0 ldrsh r2, [r0, r1] cmp r2, #7 bls _023305AA b _0233083A _023305AA: add r2, r2, r2 add r2, pc ldrh r2, [r2, #6] lsl r2, r2, #0x10 asr r2, r2, #0x10 add pc, r2 _023305B6: ; jump table .hword _0233083A - _023305B6 - 2 ; case 0 .hword _023305C6 - _023305B6 - 2 ; case 1 .hword _023307EE - _023305B6 - 2 ; case 2 .hword _02330646 - _023305B6 - 2 ; case 3 .hword _023306AA - _023305B6 - 2 ; case 4 .hword _02330678 - _023305B6 - 2 ; case 5 .hword _0233074A - _023305B6 - 2 ; case 6 .hword _02330826 - _023305B6 - 2 ; case 7 _023305C6: mov r2, #2 ldrsh r0, [r0, r2] cmp r0, #0 bne _02330632 ldr r2, _0233084C ; =ov02_02359480 ldr r0, [r2, #0x18] cmp r0, #4 bne _023305E6 mov r0, #3 str r0, [r2, #0x18] ldr r2, [r2, #0x1c] cmp r2, #0 beq _0233063E mov r0, #6 blx r2 pop {r3, pc} _023305E6: cmp r0, #6 bne _0233060C ldr r0, [r2, #0x10] ldr r1, [r2, #0x14] ldr r2, [r2, #4] blx ov00_022D4ED4 cmp r0, #3 beq _0233063E ldr r0, _0233084C ; =ov02_02359480 mov r1, #3 str r1, [r0, #0x18] ldr r2, [r0, #0x1c] cmp r2, #0 beq _0233063E mov r0, #2 mov r1, #0 blx r2 pop {r3, pc} _0233060C: cmp r0, #8 bne _0233063E ldr r0, [r2, #0x20] ldr r1, [r2, #0x24] ldr r2, [r2, #0xc] blx ov00_022D5110 cmp r0, #3 beq _0233063E ldr r0, _0233084C ; =ov02_02359480 mov r1, #3 str r1, [r0, #0x18] ldr r2, [r0, #0x1c] cmp r2, #0 beq _0233063E mov r0, #2 mov r1, #0 blx r2 pop {r3, pc} _02330632: ldr r0, _0233084C ; =ov02_02359480 mov r3, #1 str r3, [r0, #0x18] ldr r3, [r0, #0x1c] cmp r3, #0 bne _02330640 _0233063E: b _02330848 _02330640: add r0, r2, #0 blx r3 pop {r3, pc} _02330646: mov r2, #2 ldrsh r0, [r0, r2] cmp r0, #0 bne _02330666 ldr r0, _0233084C ; =ov02_02359480 ldr r2, [r0, #0x18] cmp r2, #6 bne _02330742 mov r2, #5 str r2, [r0, #0x18] ldr r2, [r0, #0x1c] cmp r2, #0 beq _02330742 mov r0, #8 blx r2 pop {r3, pc} _02330666: ldr r0, _0233084C ; =ov02_02359480 mov r2, #3 str r2, [r0, #0x18] ldr r2, [r0, #0x1c] cmp r2, #0 beq _02330742 mov r0, #9 blx r2 pop {r3, pc} _02330678: mov r2, #2 ldrsh r0, [r0, r2] cmp r0, #0 bne _02330698 ldr r0, _0233084C ; =ov02_02359480 ldr r2, [r0, #0x18] cmp r2, #8 bne _02330742 mov r2, #7 str r2, [r0, #0x18] ldr r2, [r0, #0x1c] cmp r2, #0 beq _02330742 mov r0, #0xc blx r2 pop {r3, pc} _02330698: ldr r0, _0233084C ; =ov02_02359480 mov r2, #3 str r2, [r0, #0x18] ldr r2, [r0, #0x1c] cmp r2, #0 beq _02330742 mov r0, #0xd blx r2 pop {r3, pc} _023306AA: mov r2, #2 ldrsh r0, [r0, r2] cmp r0, #0 bne _02330736 ldr r2, _0233084C ; =ov02_02359480 ldr r0, [r2, #0x18] cmp r0, #4 bne _023306CA mov r0, #3 str r0, [r2, #0x18] ldr r2, [r2, #0x1c] cmp r2, #0 beq _02330742 mov r0, #0xa blx r2 pop {r3, pc} _023306CA: cmp r0, #6 bne _023306F0 ldr r0, [r2, #0x10] ldr r1, [r2, #0x14] ldr r2, [r2, #4] blx ov00_022D4ED4 cmp r0, #3 beq _02330742 ldr r0, _0233084C ; =ov02_02359480 mov r1, #3 str r1, [r0, #0x18] ldr r2, [r0, #0x1c] cmp r2, #0 beq _02330742 mov r0, #2 mov r1, #0 blx r2 pop {r3, pc} _023306F0: cmp r0, #2 bne _02330710 blx ov00_022D4DE4 cmp r0, #3 beq _02330742 ldr r0, _0233084C ; =ov02_02359480 mov r1, #3 str r1, [r0, #0x18] ldr r2, [r0, #0x1c] cmp r2, #0 beq _02330742 mov r0, #2 mov r1, #0 blx r2 pop {r3, pc} _02330710: cmp r0, #8 bne _02330742 ldr r0, [r2, #0x20] ldr r1, [r2, #0x24] ldr r2, [r2, #0xc] blx ov00_022D5110 cmp r0, #3 beq _02330742 ldr r0, _0233084C ; =ov02_02359480 mov r1, #3 str r1, [r0, #0x18] ldr r2, [r0, #0x1c] cmp r2, #0 beq _02330742 mov r0, #2 mov r1, #0 blx r2 pop {r3, pc} _02330736: ldr r0, _0233084C ; =ov02_02359480 mov r2, #3 str r2, [r0, #0x18] ldr r2, [r0, #0x1c] cmp r2, #0 bne _02330744 _02330742: b _02330848 _02330744: mov r0, #0xb blx r2 pop {r3, pc} _0233074A: mov r2, #2 ldrsh r0, [r0, r2] cmp r0, #0 bne _023307DC ldr r2, _0233084C ; =ov02_02359480 ldr r0, [r2, #0x18] cmp r0, #4 bne _0233076A mov r0, #3 str r0, [r2, #0x18] ldr r2, [r2, #0x1c] cmp r2, #0 beq _02330848 mov r0, #0xe blx r2 pop {r3, pc} _0233076A: cmp r0, #6 bne _02330790 ldr r0, [r2, #0x10] ldr r1, [r2, #0x14] ldr r2, [r2, #4] blx ov00_022D4ED4 cmp r0, #3 beq _02330848 ldr r0, _0233084C ; =ov02_02359480 mov r1, #3 str r1, [r0, #0x18] ldr r2, [r0, #0x1c] cmp r2, #0 beq _02330848 mov r0, #2 mov r1, #0 blx r2 pop {r3, pc} _02330790: cmp r0, #2 bne _023307B0 blx ov00_022D4DE4 cmp r0, #3 beq _02330848 ldr r0, _0233084C ; =ov02_02359480 mov r1, #3 str r1, [r0, #0x18] ldr r2, [r0, #0x1c] cmp r2, #0 beq _02330848 mov r0, #2 mov r1, #0 blx r2 pop {r3, pc} _023307B0: cmp r0, #8 bne _023307D6 ldr r0, [r2, #0x20] ldr r1, [r2, #0x24] ldr r2, [r2, #0xc] blx ov00_022D5110 cmp r0, #3 beq _02330848 ldr r0, _0233084C ; =ov02_02359480 mov r1, #3 str r1, [r0, #0x18] ldr r2, [r0, #0x1c] cmp r2, #0 beq _02330848 mov r0, #2 mov r1, #0 blx r2 pop {r3, pc} _023307D6: mov r0, #3 str r0, [r2, #0x18] pop {r3, pc} _023307DC: ldr r0, _0233084C ; =ov02_02359480 mov r2, #3 str r2, [r0, #0x18] ldr r2, [r0, #0x1c] cmp r2, #0 beq _02330848 mov r0, #0xf blx r2 pop {r3, pc} _023307EE: mov r2, #2 ldrsh r0, [r0, r2] cmp r0, #0 bne _02330814 ldr r0, _0233084C ; =ov02_02359480 ldr r0, [r0, #0x18] cmp r0, #2 bne _02330848 blx ov00_022D4B88 ldr r0, _0233084C ; =ov02_02359480 mov r1, #0 str r1, [r0, #0x18] ldr r2, [r0, #0x1c] cmp r2, #0 beq _02330848 mov r0, #0x14 blx r2 pop {r3, pc} _02330814: ldr r0, _0233084C ; =ov02_02359480 mov r3, #3 str r3, [r0, #0x18] ldr r3, [r0, #0x1c] cmp r3, #0 beq _02330848 add r0, r2, #0 blx r3 pop {r3, pc} _02330826: ldr r0, _0233084C ; =ov02_02359480 ldr r2, [r0, #0x18] cmp r2, #5 bne _02330848 ldr r2, [r0, #0x1c] cmp r2, #0 beq _02330848 mov r0, #5 blx r2 pop {r3, pc} _0233083A: ldr r0, _0233084C ; =ov02_02359480 ldr r2, [r0, #0x1c] cmp r2, #0 beq _02330848 mov r0, #1 mov r1, #0 blx r2 _02330848: pop {r3, pc} nop _0233084C: .word ov02_02359480 thumb_func_end ov02_02330598 thumb_func_start ov02_02330850 ov02_02330850: ; 0x02330850 push {r3, lr} ldr r1, _023308B0 ; =ov02_02359480 ldr r0, [r1, #0x18] cmp r0, #8 bhi _023308A6 add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _02330866: ; jump table .hword _023308A6 - _02330866 - 2 ; case 0 .hword _02330896 - _02330866 - 2 ; case 1 .hword _023308A6 - _02330866 - 2 ; case 2 .hword _023308A6 - _02330866 - 2 ; case 3 .hword _023308A6 - _02330866 - 2 ; case 4 .hword _02330878 - _02330866 - 2 ; case 5 .hword _023308A6 - _02330866 - 2 ; case 6 .hword _0233088A - _02330866 - 2 ; case 7 .hword _023308A6 - _02330866 - 2 ; case 8 _02330878: mov r0, #0 add r1, r0, #0 add r2, r0, #0 blx ov00_022D4ED4 cmp r0, #3 beq _023308AA mov r0, #0 pop {r3, pc} _0233088A: blx ov00_022D5314 cmp r0, #3 beq _023308AA mov r0, #0 pop {r3, pc} _02330896: ldr r0, [r1, #8] ldr r1, _023308B4 ; =ov02_02330599 blx ov00_022D4BE0 cmp r0, #3 beq _023308AA mov r0, #0 pop {r3, pc} _023308A6: mov r0, #0 pop {r3, pc} _023308AA: mov r0, #1 pop {r3, pc} nop _023308B0: .word ov02_02359480 _023308B4: .word ov02_02330598 + 1 thumb_func_end ov02_02330850 thumb_func_start ov02_023308B8 ov02_023308B8: ; 0x023308B8 push {r3, r4, r5, r6, r7, lr} add r5, r0, #0 mov r0, #1 add r7, r1, #0 blx ov00_022D6C88 blx ov00_022D6C30 add r6, r0, #0 cmp r6, #0 ble _023308F0 mov r4, #0 cmp r6, #0 ble _023308F0 _023308D4: cmp r4, r7 bge _023308F0 lsl r0, r4, #0x10 lsr r0, r0, #0x10 blx ov00_022D6D04 add r1, r5, #0 mov r2, #0xc0 bl ArrayCopy32 add r4, r4, #1 add r5, #0xc0 cmp r4, r6 blt _023308D4 _023308F0: mov r0, #0 blx ov00_022D6C88 add r0, r6, #0 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end ov02_023308B8 thumb_func_start ov02_023308FC ov02_023308FC: ; 0x023308FC push {r3, r4, r5, r6, r7, lr} str r3, [sp] add r5, r0, #0 add r4, r1, #0 add r6, r2, #0 bl EnableIrqFlag add r7, r0, #0 ldr r1, _023309D8 ; =ov02_02359480 ldr r0, [sp] cmp r5, #0 str r0, [r1, #4] beq _02330930 ldr r2, _023309DC ; =ov02_023594A8 mov r1, #0 _0233091A: ldrb r0, [r5] add r1, r1, #1 add r5, r5, #1 strb r0, [r2] add r2, r2, #1 cmp r1, #6 blt _0233091A ldr r1, _023309DC ; =ov02_023594A8 ldr r0, _023309D8 ; =ov02_02359480 str r1, [r0, #0x10] b _02330940 _02330930: ldr r0, _023309DC ; =ov02_023594A8 mov r1, #0xff mov r2, #6 bl MemsetFast ldr r1, _023309E0 ; =ov00_02318158 ldr r0, _023309D8 ; =ov02_02359480 str r1, [r0, #0x10] _02330940: cmp r4, #0 beq _0233097E cmp r6, #0 ble _0233097E cmp r6, #0x20 bgt _0233097E mov r0, #0 cmp r6, #0 ble _02330962 ldr r2, _023309E4 ; =ov02_023594B0 _02330954: ldrb r1, [r4] add r0, r0, #1 add r4, r4, #1 strb r1, [r2] add r2, r2, #1 cmp r0, r6 blt _02330954 _02330962: cmp r0, #0x20 bge _02330976 ldr r1, _023309E4 ; =ov02_023594B0 add r2, r1, r0 mov r1, #0 _0233096C: add r0, r0, #1 strb r1, [r2] add r2, r2, #1 cmp r0, #0x20 blt _0233096C _02330976: ldr r1, _023309E4 ; =ov02_023594B0 ldr r0, _023309D8 ; =ov02_02359480 str r1, [r0, #0x14] b _0233098E _0233097E: ldr r0, _023309E4 ; =ov02_023594B0 mov r1, #0xff mov r2, #0x20 bl MemsetFast ldr r1, _023309E8 ; =ov00_02318160 ldr r0, _023309D8 ; =ov02_02359480 str r1, [r0, #0x14] _0233098E: ldr r2, _023309D8 ; =ov02_02359480 ldr r0, [r2, #0x18] cmp r0, #3 bne _023309B4 ldr r0, [r2, #0x10] ldr r1, [r2, #0x14] ldr r2, [r2, #4] blx ov00_022D4ED4 cmp r0, #3 bne _023309CC ldr r0, _023309D8 ; =ov02_02359480 mov r1, #6 str r1, [r0, #0x18] add r0, r7, #0 bl SetIrqFlag mov r0, #1 pop {r3, r4, r5, r6, r7, pc} _023309B4: bl ov02_02330850 cmp r0, #1 bne _023309CC ldr r0, _023309D8 ; =ov02_02359480 mov r1, #6 str r1, [r0, #0x18] add r0, r7, #0 bl SetIrqFlag mov r0, #1 pop {r3, r4, r5, r6, r7, pc} _023309CC: add r0, r7, #0 bl SetIrqFlag mov r0, #0 pop {r3, r4, r5, r6, r7, pc} nop _023309D8: .word ov02_02359480 _023309DC: .word ov02_023594A8 _023309E0: .word ov00_02318158 _023309E4: .word ov02_023594B0 _023309E8: .word ov00_02318160 thumb_func_end ov02_023308FC thumb_func_start ov02_023309EC ov02_023309EC: ; 0x023309EC push {r4, lr} bl EnableIrqFlag add r4, r0, #0 ldr r0, _02330A24 ; =ov02_02359480 ldr r0, [r0, #0x18] cmp r0, #5 bne _02330A1A mov r0, #0 add r1, r0, #0 add r2, r0, #0 blx ov00_022D4ED4 cmp r0, #3 bne _02330A1A ldr r0, _02330A24 ; =ov02_02359480 mov r1, #4 str r1, [r0, #0x18] add r0, r4, #0 bl SetIrqFlag mov r0, #1 pop {r4, pc} _02330A1A: add r0, r4, #0 bl SetIrqFlag mov r0, #0 pop {r4, pc} .align 2, 0 _02330A24: .word ov02_02359480 thumb_func_end ov02_023309EC thumb_func_start ov02_02330A28 ov02_02330A28: ; 0x02330A28 push {r4, lr} bl EnableIrqFlag add r4, r0, #0 ldr r0, _02330A5C ; =ov02_02359480 ldr r0, [r0, #0x18] cmp r0, #7 bne _02330A50 blx ov00_022D5314 cmp r0, #3 bne _02330A50 ldr r0, _02330A5C ; =ov02_02359480 mov r1, #4 str r1, [r0, #0x18] add r0, r4, #0 bl SetIrqFlag mov r0, #1 pop {r4, pc} _02330A50: add r0, r4, #0 bl SetIrqFlag mov r0, #0 pop {r4, pc} nop _02330A5C: .word ov02_02359480 thumb_func_end ov02_02330A28 thumb_func_start ov02_02330A60 ov02_02330A60: ; 0x02330A60 push {r4, lr} bl EnableIrqFlag add r4, r0, #0 ldr r0, _02330AB4 ; =ov02_02359480 ldr r0, [r0, #0x18] cmp r0, #3 bne _02330A92 blx ov00_022D4DE4 cmp r0, #3 beq _02330A82 add r0, r4, #0 bl SetIrqFlag mov r0, #0 pop {r4, pc} _02330A82: ldr r0, _02330AB4 ; =ov02_02359480 mov r1, #2 str r1, [r0, #0x18] add r0, r4, #0 bl SetIrqFlag mov r0, #1 pop {r4, pc} _02330A92: bl ov02_02330850 cmp r0, #1 bne _02330AAA ldr r0, _02330AB4 ; =ov02_02359480 mov r1, #2 str r1, [r0, #0x18] add r0, r4, #0 bl SetIrqFlag mov r0, #1 pop {r4, pc} _02330AAA: add r0, r4, #0 bl SetIrqFlag mov r0, #0 pop {r4, pc} .align 2, 0 _02330AB4: .word ov02_02359480 thumb_func_end ov02_02330A60 thumb_func_start ov02_02330AB8 ov02_02330AB8: ; 0x02330AB8 push {r3, r4, r5, r6, r7, lr} add r7, r0, #0 add r5, r1, #0 add r6, r2, #0 bl EnableIrqFlag ldr r1, _02330B38 ; =ov02_02359480 add r4, r0, #0 str r6, [r1, #0xc] cmp r5, #0 beq _02330ADA ldr r1, [r1, #0x24] add r0, r5, #0 mov r2, #0x50 bl MemcpyFast b _02330AE4 _02330ADA: ldr r0, [r1, #0x24] mov r1, #0 mov r2, #0x50 bl MemsetFast _02330AE4: ldr r1, _02330B38 ; =ov02_02359480 add r0, r7, #0 ldr r1, [r1, #0x20] mov r2, #0xc0 bl ArrayCopy32 bl ov02_02330850 cmp r0, #1 bne _02330B08 ldr r0, _02330B38 ; =ov02_02359480 mov r1, #8 str r1, [r0, #0x18] add r0, r4, #0 bl SetIrqFlag mov r0, #1 pop {r3, r4, r5, r6, r7, pc} _02330B08: ldr r2, _02330B38 ; =ov02_02359480 ldr r0, [r2, #0x18] cmp r0, #3 bne _02330B2E ldr r0, [r2, #0x20] ldr r1, [r2, #0x24] ldr r2, [r2, #0xc] blx ov00_022D5110 cmp r0, #3 bne _02330B2E ldr r0, _02330B38 ; =ov02_02359480 mov r1, #8 str r1, [r0, #0x18] add r0, r4, #0 bl SetIrqFlag mov r0, #1 pop {r3, r4, r5, r6, r7, pc} _02330B2E: add r0, r4, #0 bl SetIrqFlag mov r0, #0 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _02330B38: .word ov02_02359480 thumb_func_end ov02_02330AB8 thumb_func_start ov02_02330B3C ov02_02330B3C: ; 0x02330B3C push {r3, r4, r5, r6, r7, lr} add r5, r1, #0 add r7, r0, #0 str r2, [sp] bl EnableIrqFlag add r4, r0, #0 add r0, r5, #0 ldr r2, _02330BE8 ; =ov02_02359480 add r0, #0x53 mov r1, #3 bic r0, r1 add r6, r0, #0 str r5, [r2, #0x24] add r6, #0x2f mov r1, #0x1f ldr r3, _02330BEC ; =0x0000231F str r0, [r2, #8] bic r6, r1 str r6, [r2] add r6, r6, r3 bic r6, r1 str r6, [r2, #0x20] add r6, #0xdf bic r6, r1 str r6, [r0, #4] ldr r1, [sp] ldr r0, [r2, #8] add r5, r5, r1 ldr r1, [r0, #4] sub r1, r5, r1 str r1, [r0, #8] ldr r0, [r2, #8] mov r1, #0 str r1, [r0, #0xc] ldr r0, [r2, #8] mov r1, #3 str r1, [r0] str r7, [r2, #0x1c] ldr r0, [r2, #0x18] cmp r0, #0 bne _02330BAE sub r3, #0x1f ldr r0, [r2] add r1, r3, #0 blx ov00_022D4A70 cmp r0, #0 beq _02330BA8 add r0, r4, #0 bl SetIrqFlag mov r0, #0 pop {r3, r4, r5, r6, r7, pc} _02330BA8: ldr r0, _02330BE8 ; =ov02_02359480 mov r1, #1 str r1, [r0, #0x18] _02330BAE: ldr r0, _02330BE8 ; =ov02_02359480 ldr r1, [r0, #0x18] cmp r1, #1 bne _02330BDC ldr r0, [r0, #8] ldr r1, _02330BF0 ; =ov02_02330599 blx ov00_022D4BE0 cmp r0, #3 beq _02330BCC add r0, r4, #0 bl SetIrqFlag mov r0, #0 pop {r3, r4, r5, r6, r7, pc} _02330BCC: ldr r0, _02330BE8 ; =ov02_02359480 mov r1, #4 str r1, [r0, #0x18] add r0, r4, #0 bl SetIrqFlag mov r0, #1 pop {r3, r4, r5, r6, r7, pc} _02330BDC: add r0, r4, #0 bl SetIrqFlag mov r0, #0 pop {r3, r4, r5, r6, r7, pc} nop _02330BE8: .word ov02_02359480 _02330BEC: .word 0x0000231F _02330BF0: .word ov02_02330598 + 1 thumb_func_end ov02_02330B3C thumb_func_start ov02_02330BF4 ov02_02330BF4: ; 0x02330BF4 push {r3, lr} cmp r0, #0 bne _02330BFC b _02330EF6 _02330BFC: mov r1, #0 ldrsh r2, [r0, r1] cmp r2, #9 bls _02330C06 b _02330EE8 _02330C06: add r2, r2, r2 add r2, pc ldrh r2, [r2, #6] lsl r2, r2, #0x10 asr r2, r2, #0x10 add pc, r2 _02330C12: ; jump table .hword _02330EE8 - _02330C12 - 2 ; case 0 .hword _02330C26 - _02330C12 - 2 ; case 1 .hword _02330E76 - _02330C12 - 2 ; case 2 .hword _02330CAC - _02330C12 - 2 ; case 3 .hword _02330D1A - _02330C12 - 2 ; case 4 .hword _02330CE4 - _02330C12 - 2 ; case 5 .hword _02330DC2 - _02330C12 - 2 ; case 6 .hword _02330EB2 - _02330C12 - 2 ; case 7 .hword _02330EC8 - _02330C12 - 2 ; case 8 .hword _02330ED6 - _02330C12 - 2 ; case 9 _02330C26: mov r2, #2 ldrsh r0, [r0, r2] cmp r0, #0 bne _02330C98 ldr r2, _02330EF8 ; =ov02_023594D0 ldr r0, [r2, #0x2c] cmp r0, #4 bne _02330C48 mov r0, #3 str r0, [r2, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330CDC mov r0, #6 blx r2 pop {r3, pc} _02330C48: cmp r0, #6 bne _02330C70 ldr r0, [r2, #0x44] ldr r1, [r2, #0x48] ldr r2, [r2, #0x60] blx ov00_022D4ED4 cmp r0, #3 beq _02330CDC ldr r0, _02330EF8 ; =ov02_023594D0 mov r1, #3 str r1, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330CDC mov r0, #2 mov r1, #0 blx r2 pop {r3, pc} _02330C70: cmp r0, #8 bne _02330CDC ldr r0, [r2, #0x4c] ldr r1, [r2, #0x28] ldr r2, [r2, #0x58] blx ov00_022D5110 cmp r0, #3 beq _02330CDC ldr r0, _02330EF8 ; =ov02_023594D0 mov r1, #3 str r1, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330CDC mov r0, #2 mov r1, #0 blx r2 pop {r3, pc} _02330C98: ldr r0, _02330EF8 ; =ov02_023594D0 mov r3, #1 str r3, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r3, [r0] cmp r3, #0 beq _02330CDC add r0, r2, #0 blx r3 pop {r3, pc} _02330CAC: mov r2, #2 ldrsh r0, [r0, r2] cmp r0, #0 bne _02330CCE ldr r0, _02330EF8 ; =ov02_023594D0 ldr r2, [r0, #0x2c] cmp r2, #6 bne _02330CDC mov r2, #5 str r2, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330CDC mov r0, #8 blx r2 pop {r3, pc} _02330CCE: ldr r0, _02330EF8 ; =ov02_023594D0 mov r2, #3 str r2, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 bne _02330CDE _02330CDC: b _02330EF6 _02330CDE: mov r0, #9 blx r2 pop {r3, pc} _02330CE4: mov r2, #2 ldrsh r0, [r0, r2] cmp r0, #0 bne _02330D06 ldr r0, _02330EF8 ; =ov02_023594D0 ldr r2, [r0, #0x2c] cmp r2, #8 bne _02330DDE mov r2, #7 str r2, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330DDE mov r0, #0xc blx r2 pop {r3, pc} _02330D06: ldr r0, _02330EF8 ; =ov02_023594D0 mov r2, #3 str r2, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330DDE mov r0, #0xd blx r2 pop {r3, pc} _02330D1A: mov r2, #2 ldrsh r0, [r0, r2] cmp r0, #0 bne _02330DAE ldr r2, _02330EF8 ; =ov02_023594D0 ldr r0, [r2, #0x2c] cmp r0, #4 bne _02330D3C mov r0, #3 str r0, [r2, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330DDE mov r0, #0xa blx r2 pop {r3, pc} _02330D3C: cmp r0, #6 bne _02330D64 ldr r0, [r2, #0x44] ldr r1, [r2, #0x48] ldr r2, [r2, #0x60] blx ov00_022D4ED4 cmp r0, #3 beq _02330DDE ldr r0, _02330EF8 ; =ov02_023594D0 mov r1, #3 str r1, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330DDE mov r0, #2 mov r1, #0 blx r2 pop {r3, pc} _02330D64: cmp r0, #2 bne _02330D86 blx ov00_022D4DE4 cmp r0, #3 beq _02330DDE ldr r0, _02330EF8 ; =ov02_023594D0 mov r1, #3 str r1, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330DDE mov r0, #2 mov r1, #0 blx r2 pop {r3, pc} _02330D86: cmp r0, #8 bne _02330DDE ldr r0, [r2, #0x4c] ldr r1, [r2, #0x28] ldr r2, [r2, #0x58] blx ov00_022D5110 cmp r0, #3 beq _02330DDE ldr r0, _02330EF8 ; =ov02_023594D0 mov r1, #3 str r1, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330DDE mov r0, #2 mov r1, #0 blx r2 pop {r3, pc} _02330DAE: ldr r0, _02330EF8 ; =ov02_023594D0 mov r2, #3 str r2, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330DDE mov r0, #0xb blx r2 pop {r3, pc} _02330DC2: mov r2, #2 ldrsh r0, [r0, r2] cmp r0, #0 bne _02330E62 ldr r2, _02330EF8 ; =ov02_023594D0 ldr r0, [r2, #0x2c] cmp r0, #4 bne _02330DE6 mov r0, #3 str r0, [r2, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 bne _02330DE0 _02330DDE: b _02330EF6 _02330DE0: mov r0, #0xe blx r2 pop {r3, pc} _02330DE6: cmp r0, #6 bne _02330E0E ldr r0, [r2, #0x44] ldr r1, [r2, #0x48] ldr r2, [r2, #0x60] blx ov00_022D4ED4 cmp r0, #3 beq _02330EF6 ldr r0, _02330EF8 ; =ov02_023594D0 mov r1, #3 str r1, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330EF6 mov r0, #2 mov r1, #0 blx r2 pop {r3, pc} _02330E0E: cmp r0, #2 bne _02330E30 blx ov00_022D4DE4 cmp r0, #3 beq _02330EF6 ldr r0, _02330EF8 ; =ov02_023594D0 mov r1, #3 str r1, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330EF6 mov r0, #2 mov r1, #0 blx r2 pop {r3, pc} _02330E30: cmp r0, #8 bne _02330E58 ldr r0, [r2, #0x4c] ldr r1, [r2, #0x28] ldr r2, [r2, #0x58] blx ov00_022D5110 cmp r0, #3 beq _02330EF6 ldr r0, _02330EF8 ; =ov02_023594D0 mov r1, #3 str r1, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330EF6 mov r0, #2 mov r1, #0 blx r2 pop {r3, pc} _02330E58: cmp r0, #7 bne _02330EF6 mov r0, #3 str r0, [r2, #0x2c] pop {r3, pc} _02330E62: ldr r0, _02330EF8 ; =ov02_023594D0 mov r2, #3 str r2, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330EF6 mov r0, #0xf blx r2 pop {r3, pc} _02330E76: mov r2, #2 ldrsh r0, [r0, r2] cmp r0, #0 bne _02330E9E ldr r0, _02330EF8 ; =ov02_023594D0 ldr r0, [r0, #0x2c] cmp r0, #2 bne _02330EF6 blx ov00_022D4B88 ldr r0, _02330EF8 ; =ov02_023594D0 mov r1, #0 str r1, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330EF6 mov r0, #0x14 blx r2 pop {r3, pc} _02330E9E: ldr r0, _02330EF8 ; =ov02_023594D0 mov r3, #3 str r3, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r3, [r0] cmp r3, #0 beq _02330EF6 add r0, r2, #0 blx r3 pop {r3, pc} _02330EB2: ldr r0, _02330EF8 ; =ov02_023594D0 ldr r0, [r0, #0x2c] cmp r0, #5 bne _02330EF6 ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330EF6 mov r0, #5 blx r2 pop {r3, pc} _02330EC8: ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330EF6 mov r0, #4 blx r2 pop {r3, pc} _02330ED6: ldr r0, _02330EF8 ; =ov02_023594D0 str r1, [r0, #0x2c] ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330EF6 mov r0, #3 blx r2 pop {r3, pc} _02330EE8: ldr r0, _02330EFC ; =ov02_02359550 ldr r2, [r0] cmp r2, #0 beq _02330EF6 mov r0, #1 mov r1, #0 blx r2 _02330EF6: pop {r3, pc} .align 2, 0 _02330EF8: .word ov02_023594D0 _02330EFC: .word ov02_02359550 thumb_func_end ov02_02330BF4 thumb_func_start ov02_02330F00 ov02_02330F00: ; 0x02330F00 push {r3, lr} ldr r1, _02330F60 ; =ov02_023594D0 ldr r0, [r1, #0x2c] cmp r0, #8 bhi _02330F56 add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _02330F16: ; jump table .hword _02330F56 - _02330F16 - 2 ; case 0 .hword _02330F46 - _02330F16 - 2 ; case 1 .hword _02330F56 - _02330F16 - 2 ; case 2 .hword _02330F56 - _02330F16 - 2 ; case 3 .hword _02330F56 - _02330F16 - 2 ; case 4 .hword _02330F28 - _02330F16 - 2 ; case 5 .hword _02330F56 - _02330F16 - 2 ; case 6 .hword _02330F3A - _02330F16 - 2 ; case 7 .hword _02330F56 - _02330F16 - 2 ; case 8 _02330F28: mov r0, #0 add r1, r0, #0 add r2, r0, #0 blx ov00_022D4ED4 cmp r0, #3 beq _02330F5A mov r0, #0 pop {r3, pc} _02330F3A: blx ov00_022D5314 cmp r0, #3 beq _02330F5A mov r0, #0 pop {r3, pc} _02330F46: ldr r0, [r1, #8] ldr r1, _02330F64 ; =ov02_02330BF5 blx ov00_022D4BE0 cmp r0, #3 beq _02330F5A mov r0, #0 pop {r3, pc} _02330F56: mov r0, #0 pop {r3, pc} _02330F5A: mov r0, #1 pop {r3, pc} nop _02330F60: .word ov02_023594D0 _02330F64: .word ov02_02330BF4 + 1 thumb_func_end ov02_02330F00 thumb_func_start ov02_02330F68 ov02_02330F68: ; 0x02330F68 push {r3, r4, r5, r6, r7, lr} add r5, r0, #0 mov r0, #1 add r7, r1, #0 blx ov00_022D6C88 blx ov00_022D6C30 add r6, r0, #0 cmp r6, #0 ble _02330FA0 mov r4, #0 cmp r6, #0 ble _02330FA0 _02330F84: cmp r4, r7 bge _02330FA0 lsl r0, r4, #0x10 lsr r0, r0, #0x10 blx ov00_022D6D04 add r1, r5, #0 mov r2, #0xc0 bl ArrayCopy32 add r4, r4, #1 add r5, #0xc0 cmp r4, r6 blt _02330F84 _02330FA0: mov r0, #0 blx ov00_022D6C88 add r0, r6, #0 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end ov02_02330F68 thumb_func_start ov02_02330FAC ov02_02330FAC: ; 0x02330FAC push {r3, r4, r5, r6, r7, lr} str r3, [sp] add r5, r0, #0 add r4, r1, #0 add r6, r2, #0 bl EnableIrqFlag add r7, r0, #0 ldr r1, _02331080 ; =ov02_023594D0 ldr r0, [sp] cmp r5, #0 str r0, [r1, #0x60] ldr r0, _02331084 ; =ov02_02359988 str r0, [r1, #0x44] beq _02330FDC mov r2, #0 _02330FCC: ldrb r1, [r5] add r2, r2, #1 add r5, r5, #1 strb r1, [r0] add r0, r0, #1 cmp r2, #6 blt _02330FCC b _02330FEA _02330FDC: mov r1, #0xff mov r2, #6 bl MemsetFast ldr r1, _02331088 ; =ov00_02318158 ldr r0, _02331080 ; =ov02_023594D0 str r1, [r0, #0x44] _02330FEA: ldr r2, _0233108C ; =ov02_023599C0 ldr r0, _02331080 ; =ov02_023594D0 cmp r4, #0 str r2, [r0, #0x48] beq _02331026 cmp r6, #0 ble _02331026 cmp r6, #0x20 bge _02331026 mov r0, #0 cmp r6, #0 ble _02331010 _02331002: ldrb r1, [r4] add r0, r0, #1 add r4, r4, #1 strb r1, [r2] add r2, r2, #1 cmp r0, r6 blt _02331002 _02331010: cmp r0, #0x20 bge _02331036 ldr r1, _0233108C ; =ov02_023599C0 add r2, r1, r0 mov r1, #0 _0233101A: add r0, r0, #1 strb r1, [r2] add r2, r2, #1 cmp r0, #0x20 blt _0233101A b _02331036 _02331026: ldr r0, _0233108C ; =ov02_023599C0 mov r1, #0xff mov r2, #0x20 bl MemsetFast ldr r1, _02331090 ; =ov00_02318160 ldr r0, _02331080 ; =ov02_023594D0 str r1, [r0, #0x48] _02331036: ldr r2, _02331080 ; =ov02_023594D0 ldr r0, [r2, #0x2c] cmp r0, #3 bne _0233105C ldr r1, [r2, #0x48] ldr r0, _02331084 ; =ov02_02359988 ldr r2, [r2, #0x60] blx ov00_022D4ED4 cmp r0, #3 bne _02331074 ldr r0, _02331080 ; =ov02_023594D0 mov r1, #6 str r1, [r0, #0x2c] add r0, r7, #0 bl SetIrqFlag mov r0, #1 pop {r3, r4, r5, r6, r7, pc} _0233105C: bl ov02_02330F00 cmp r0, #1 bne _02331074 ldr r0, _02331080 ; =ov02_023594D0 mov r1, #6 str r1, [r0, #0x2c] add r0, r7, #0 bl SetIrqFlag mov r0, #1 pop {r3, r4, r5, r6, r7, pc} _02331074: add r0, r7, #0 bl SetIrqFlag mov r0, #0 pop {r3, r4, r5, r6, r7, pc} nop _02331080: .word ov02_023594D0 _02331084: .word ov02_02359988 _02331088: .word ov00_02318158 _0233108C: .word ov02_023599C0 _02331090: .word ov00_02318160 thumb_func_end ov02_02330FAC thumb_func_start ov02_02331094 ov02_02331094: ; 0x02331094 push {r4, lr} bl EnableIrqFlag add r4, r0, #0 ldr r0, _023310C8 ; =ov02_023594D0 ldr r0, [r0, #0x2c] cmp r0, #7 bne _023310BC blx ov00_022D5314 cmp r0, #3 bne _023310BC ldr r0, _023310C8 ; =ov02_023594D0 mov r1, #4 str r1, [r0, #0x2c] add r0, r4, #0 bl SetIrqFlag mov r0, #1 pop {r4, pc} _023310BC: add r0, r4, #0 bl SetIrqFlag mov r0, #0 pop {r4, pc} nop _023310C8: .word ov02_023594D0 thumb_func_end ov02_02331094 thumb_func_start ov02_023310CC ov02_023310CC: ; 0x023310CC push {r4, lr} bl EnableIrqFlag add r4, r0, #0 ldr r0, _02331120 ; =ov02_023594D0 ldr r0, [r0, #0x2c] cmp r0, #3 bne _023310FE blx ov00_022D4DE4 cmp r0, #3 beq _023310EE add r0, r4, #0 bl SetIrqFlag mov r0, #0 pop {r4, pc} _023310EE: ldr r0, _02331120 ; =ov02_023594D0 mov r1, #2 str r1, [r0, #0x2c] add r0, r4, #0 bl SetIrqFlag mov r0, #1 pop {r4, pc} _023310FE: bl ov02_02330F00 cmp r0, #1 bne _02331116 ldr r0, _02331120 ; =ov02_023594D0 mov r1, #2 str r1, [r0, #0x2c] add r0, r4, #0 bl SetIrqFlag mov r0, #1 pop {r4, pc} _02331116: add r0, r4, #0 bl SetIrqFlag mov r0, #0 pop {r4, pc} .align 2, 0 _02331120: .word ov02_023594D0 thumb_func_end ov02_023310CC thumb_func_start ov02_02331124 ov02_02331124: ; 0x02331124 push {r3, r4, r5, r6, r7, lr} add r7, r0, #0 add r5, r1, #0 add r6, r2, #0 bl EnableIrqFlag ldr r1, _023311A4 ; =ov02_023594D0 add r4, r0, #0 str r6, [r1, #0x58] cmp r5, #0 beq _02331146 ldr r1, [r1, #0x28] add r0, r5, #0 mov r2, #0x60 bl MemcpyFast b _02331150 _02331146: ldr r0, [r1, #0x28] mov r1, #0 mov r2, #0x60 bl MemsetFast _02331150: ldr r1, _023311A4 ; =ov02_023594D0 add r0, r7, #0 ldr r1, [r1, #0x4c] mov r2, #0xc0 bl ArrayCopy32 bl ov02_02330F00 cmp r0, #1 bne _02331174 ldr r0, _023311A4 ; =ov02_023594D0 mov r1, #8 str r1, [r0, #0x2c] add r0, r4, #0 bl SetIrqFlag mov r0, #1 pop {r3, r4, r5, r6, r7, pc} _02331174: ldr r2, _023311A4 ; =ov02_023594D0 ldr r0, [r2, #0x2c] cmp r0, #3 bne _0233119A ldr r0, [r2, #0x4c] ldr r1, [r2, #0x28] ldr r2, [r2, #0x58] blx ov00_022D5110 cmp r0, #3 bne _0233119A ldr r0, _023311A4 ; =ov02_023594D0 mov r1, #8 str r1, [r0, #0x2c] add r0, r4, #0 bl SetIrqFlag mov r0, #1 pop {r3, r4, r5, r6, r7, pc} _0233119A: add r0, r4, #0 bl SetIrqFlag mov r0, #0 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _023311A4: .word ov02_023594D0 thumb_func_end ov02_02331124 thumb_func_start ov02_023311A8 ov02_023311A8: ; 0x023311A8 push {r3, r4, r5, r6, r7, lr} add r5, r1, #0 add r7, r0, #0 str r2, [sp] bl EnableIrqFlag add r4, r0, #0 add r0, r5, #0 ldr r2, _02331254 ; =ov02_023594D0 add r0, #0x63 mov r1, #3 bic r0, r1 add r6, r0, #0 str r5, [r2, #0x28] add r6, #0x2f mov r1, #0x1f ldr r3, _02331258 ; =0x0000231F str r0, [r2, #8] bic r6, r1 str r6, [r2, #0x3c] add r6, r6, r3 bic r6, r1 str r6, [r2, #0x4c] add r6, #0xdf bic r6, r1 str r6, [r0, #4] ldr r1, [sp] ldr r0, [r2, #8] add r5, r5, r1 ldr r1, [r0, #4] sub r1, r5, r1 str r1, [r0, #8] ldr r0, [r2, #8] mov r1, #0 str r1, [r0, #0xc] ldr r0, [r2, #8] mov r1, #3 str r1, [r0] ldr r0, _0233125C ; =ov02_02359550 str r7, [r0] ldr r0, [r2, #0x2c] cmp r0, #0 bne _0233121C sub r3, #0x1f ldr r0, [r2, #0x3c] add r1, r3, #0 blx ov00_022D4A70 cmp r0, #0 beq _02331216 add r0, r4, #0 bl SetIrqFlag mov r0, #0 pop {r3, r4, r5, r6, r7, pc} _02331216: ldr r0, _02331254 ; =ov02_023594D0 mov r1, #1 str r1, [r0, #0x2c] _0233121C: ldr r0, _02331254 ; =ov02_023594D0 ldr r1, [r0, #0x2c] cmp r1, #1 bne _0233124A ldr r0, [r0, #8] ldr r1, _02331260 ; =ov02_02330BF5 blx ov00_022D4BE0 cmp r0, #3 beq _0233123A add r0, r4, #0 bl SetIrqFlag mov r0, #0 pop {r3, r4, r5, r6, r7, pc} _0233123A: ldr r0, _02331254 ; =ov02_023594D0 mov r1, #4 str r1, [r0, #0x2c] add r0, r4, #0 bl SetIrqFlag mov r0, #1 pop {r3, r4, r5, r6, r7, pc} _0233124A: add r0, r4, #0 bl SetIrqFlag mov r0, #0 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _02331254: .word ov02_023594D0 _02331258: .word 0x0000231F _0233125C: .word ov02_02359550 _02331260: .word ov02_02330BF4 + 1 thumb_func_end ov02_023311A8 thumb_func_start ov02_02331264 ov02_02331264: ; 0x02331264 ldr r0, _0233126C ; =ov02_023594D0 ldr r0, [r0, #0x2c] bx lr nop _0233126C: .word ov02_023594D0 thumb_func_end ov02_02331264 thumb_func_start ov02_02331270 ov02_02331270: ; 0x02331270 push {r4, lr} add r4, r1, #0 cmp r4, #0 ble _02331292 ldr r0, _02331298 ; =ov02_02359564 bl sub_0207A048 ldr r1, _0233129C ; =ov02_023594D0 add r0, r4, #0 ldr r1, [r1, #4] blx r1 add r4, r0, #0 ldr r0, _02331298 ; =ov02_02359564 bl sub_0207A0CC add r0, r4, #0 pop {r4, pc} _02331292: mov r0, #0 pop {r4, pc} nop _02331298: .word ov02_02359564 _0233129C: .word ov02_023594D0 thumb_func_end ov02_02331270 thumb_func_start ov02_023312A0 ov02_023312A0: ; 0x023312A0 push {r4, lr} add r4, r1, #0 beq _023312BE cmp r2, #0 ble _023312BE ldr r0, _023312C0 ; =ov02_02359564 bl sub_0207A048 ldr r1, _023312C4 ; =ov02_023594D0 add r0, r4, #0 ldr r1, [r1, #0xc] blx r1 ldr r0, _023312C0 ; =ov02_02359564 bl sub_0207A0CC _023312BE: pop {r4, pc} .align 2, 0 _023312C0: .word ov02_02359564 _023312C4: .word ov02_023594D0 thumb_func_end ov02_023312A0 thumb_func_start ov02_023312C8 ov02_023312C8: ; 0x023312C8 push {r3, lr} bl EnableIrqFlag ldr r1, _023312E8 ; =ov02_023594D0 mov r2, #0 str r2, [r1, #0x68] str r2, [r1, #0x6c] ldr r3, _023312EC ; =ov02_02359554 add r1, r2, #0 _023312DA: add r2, r2, #1 stmia r3!, {r1} cmp r2, #4 blt _023312DA bl SetIrqFlag pop {r3, pc} .align 2, 0 _023312E8: .word ov02_023594D0 _023312EC: .word ov02_02359554 thumb_func_end ov02_023312C8 thumb_func_start ov02_023312F0 ov02_023312F0: ; 0x023312F0 push {r3, r4, r5, lr} bl EnableIrqFlag ldr r1, _02331320 ; =ov02_023594D0 ldr r5, [r1, #0x6c] ldr r2, [r1, #0x68] cmp r2, r5 bne _02331304 mov r4, #0 b _02331316 _02331304: ldr r2, _02331324 ; =ov02_02359554 lsl r3, r5, #2 ldr r4, [r2, r3] add r2, r5, #1 str r2, [r1, #0x6c] cmp r2, #4 blt _02331316 mov r2, #0 str r2, [r1, #0x6c] _02331316: bl SetIrqFlag add r0, r4, #0 pop {r3, r4, r5, pc} nop _02331320: .word ov02_023594D0 _02331324: .word ov02_02359554 thumb_func_end ov02_023312F0 thumb_func_start ov02_02331328 ov02_02331328: ; 0x02331328 push {r3, r4} ldr r1, _02331350 ; =ov02_023594D0 ldr r3, [r1, #0x68] ldr r2, [r1, #0x6c] add r4, r3, #1 cmp r4, r2 beq _0233134C add r2, r2, #3 cmp r3, r2 beq _0233134C ldr r2, _02331354 ; =ov02_02359554 lsl r3, r3, #2 str r0, [r2, r3] str r4, [r1, #0x68] cmp r4, #4 blt _0233134C mov r0, #0 str r0, [r1, #0x68] _0233134C: pop {r3, r4} bx lr .align 2, 0 _02331350: .word ov02_023594D0 _02331354: .word ov02_02359554 thumb_func_end ov02_02331328 thumb_func_start ov02_02331358 ov02_02331358: ; 0x02331358 ldr r3, _02331360 ; =ov02_02331328 mov r1, #0 bx r3 nop _02331360: .word ov02_02331328 + 1 thumb_func_end ov02_02331358 thumb_func_start ov02_02331364 ov02_02331364: ; 0x02331364 push {r3, r4, r5, r6, r7, lr} add r6, r0, #0 ldr r0, _023313F8 ; =ov02_023594D0 mov r4, #1 str r6, [r0, #0x70] bl ov02_023312C8 mov r0, #0xd0 add r7, r6, #0 mul r7, r0 ldr r0, _023313FC ; =0x000024D0 add r1, r7, r0 mov r0, #0xc0 mul r0, r6 add r0, r1, r0 ldr r1, _023313F8 ; =ov02_023594D0 ldr r1, [r1, #4] blx r1 ldr r6, _023313F8 ; =ov02_023594D0 cmp r0, #0 str r0, [r6, #0x54] bne _02331394 sub r0, r4, #2 pop {r3, r4, r5, r6, r7, pc} _02331394: mov r1, #0x1f add r2, r0, r1 add r0, r1, #0 sub r0, #0x3f add r3, r2, #0 and r3, r0 ldr r0, _02331400 ; =0x00002490 str r3, [r6, #0x40] add r2, r7, r0 add r0, r3, r2 add r0, r0, r1 sub r1, #0x3f and r0, r1 str r0, [r6, #0x5c] ldr r0, _02331404 ; =ov02_02331329 add r1, r3, #0 bl ov02_023311A8 cmp r0, #0 bne _023313C0 sub r0, r4, #3 pop {r3, r4, r5, r6, r7, pc} _023313C0: mov r6, #0 add r7, r4, #0 _023313C4: mov r0, #0xa bl sub_02079B14 bl ov02_023312F0 cmp r0, #0 beq _023313F0 _023313D2: cmp r0, #4 beq _023313E8 cmp r0, #5 beq _023313E8 cmp r0, #6 bne _023313E4 add r4, r6, #0 add r5, r7, #0 b _023313E8 _023313E4: mov r4, #0 sub r5, r4, #2 _023313E8: bl ov02_023312F0 cmp r0, #0 bne _023313D2 _023313F0: cmp r4, #0 bne _023313C4 add r0, r5, #0 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _023313F8: .word ov02_023594D0 _023313FC: .word 0x000024D0 _02331400: .word 0x00002490 _02331404: .word ov02_02331328 + 1 thumb_func_end ov02_02331364 thumb_func_start ov02_02331408 ov02_02331408: ; 0x02331408 push {r3, r4, r5, r6, r7, lr} mov r5, #1 bl ov02_023310CC cmp r0, #0 beq _02331446 mov r6, #0 add r4, r6, #0 mov r7, #0xa _0233141A: add r0, r7, #0 bl sub_02079B14 bl ov02_023312F0 cmp r0, #0 beq _02331442 _02331428: cmp r0, #4 beq _0233143A cmp r0, #5 beq _0233143A cmp r0, #0x14 bne _02331438 add r5, r4, #0 b _0233143A _02331438: add r5, r6, #0 _0233143A: bl ov02_023312F0 cmp r0, #0 bne _02331428 _02331442: cmp r5, #0 bne _0233141A _02331446: ldr r1, _0233145C ; =ov02_023594D0 ldr r0, [r1, #0x54] cmp r0, #0 beq _02331458 ldr r1, [r1, #0xc] blx r1 ldr r0, _0233145C ; =ov02_023594D0 mov r1, #0 str r1, [r0, #0x54] _02331458: mov r0, #1 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _0233145C: .word ov02_023594D0 thumb_func_end ov02_02331408 thumb_func_start ov02_02331460 ov02_02331460: ; 0x02331460 push {r3, r4, r5, r6, r7, lr} sub sp, #0x30 ldr r0, _02331570 ; =ov02_023594D0 mov r4, #1 ldr r3, [r0, #0x5c] ldr r0, [r0, #0x18] mov r2, #0xc0 add r1, r0, #0 mul r1, r2 sub r5, r4, #3 add r6, r3, r1 bne _0233147E add sp, #0x30 mov r0, #0 pop {r3, r4, r5, r6, r7, pc} _0233147E: add r0, r6, #0 mov r1, #0 lsl r2, r2, #0xa bl ov02_02331124 cmp r0, #0 bne _02331492 add sp, #0x30 sub r0, r4, #3 pop {r3, r4, r5, r6, r7, pc} _02331492: add r0, sp, #4 bl sub_0207B040 mov r0, #0x12 str r0, [sp] ldr r1, _02331574 ; =0x003FEC42 ldr r3, _02331578 ; =ov02_02331358 add r0, sp, #4 mov r2, #0 bl sub_0207B17C mov r7, #0 _023314AA: bl ov02_02334140 ldr r1, _0233157C ; =ov02_02353008 ldr r1, [r1, #0xc] cmp r0, r1 blo _023314BC mov r5, #2 mvn r5, r5 b _0233153C _023314BC: ldr r0, _02331570 ; =ov02_023594D0 ldr r0, [r0, #0x10] cmp r0, #0 beq _023314CA mov r5, #7 mvn r5, r5 b _0233153C _023314CA: mov r0, #0xa bl sub_02079B14 bl ov02_023312F0 cmp r0, #0 beq _02331538 _023314D8: cmp r0, #0xc bgt _023314EE bge _02331502 cmp r0, #5 bgt _0233152E cmp r0, #4 blt _0233152E beq _02331530 cmp r0, #5 beq _02331530 b _0233152E _023314EE: cmp r0, #0x13 bgt _0233152E cmp r0, #0xd blt _0233152E beq _02331508 cmp r0, #0x12 beq _02331530 cmp r0, #0x13 beq _02331530 b _0233152E _02331502: add r4, r7, #0 mov r5, #1 b _02331530 _02331508: ldr r0, _02331570 ; =ov02_023594D0 ldr r0, [r0, #0x10] cmp r0, #0 beq _02331518 mov r4, #0 add r5, r4, #0 sub r5, #8 b _02331530 _02331518: mov r2, #3 add r0, r6, #0 mov r1, #0 lsl r2, r2, #0x10 bl ov02_02331124 cmp r0, #0 bne _02331530 add sp, #0x30 add r0, r5, #0 pop {r3, r4, r5, r6, r7, pc} _0233152E: mov r4, #0 _02331530: bl ov02_023312F0 cmp r0, #0 bne _023314D8 _02331538: cmp r4, #0 bne _023314AA _0233153C: add r0, sp, #4 bl sub_0207B1E8 _02331542: bl ov02_023312F0 cmp r0, #0 bne _02331542 cmp r5, #0 ble _0233156A ldr r0, _02331570 ; =ov02_023594D0 mov r1, #1 str r1, [r0, #0x20] ldr r0, _02331580 ; =ov02_0235301C blx ov00_022CF674 cmp r0, #0 bge _02331564 mov r5, #1 mvn r5, r5 b _0233156A _02331564: ldr r0, _02331570 ; =ov02_023594D0 mov r1, #1 str r1, [r0, #0x24] _0233156A: add r0, r5, #0 add sp, #0x30 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _02331570: .word ov02_023594D0 _02331574: .word 0x003FEC42 _02331578: .word ov02_02331358 + 1 _0233157C: .word ov02_02353008 _02331580: .word ov02_0235301C thumb_func_end ov02_02331460 thumb_func_start ov02_02331584 ov02_02331584: ; 0x02331584 push {r3, r4, r5, r6, r7, lr} ldr r0, _023315E4 ; =ov02_023594D0 mov r5, #1 ldr r0, [r0, #0x20] cmp r0, #0 beq _023315D0 bl ov02_02331094 cmp r0, #0 beq _023315CA mov r6, #0 add r4, r6, #0 mov r7, #0xa _0233159E: add r0, r7, #0 bl sub_02079B14 bl ov02_023312F0 cmp r0, #0 beq _023315C6 _023315AC: cmp r0, #4 beq _023315BE cmp r0, #5 beq _023315BE cmp r0, #0xe bne _023315BC add r5, r4, #0 b _023315BE _023315BC: add r5, r6, #0 _023315BE: bl ov02_023312F0 cmp r0, #0 bne _023315AC _023315C6: cmp r5, #0 bne _0233159E _023315CA: ldr r0, _023315E4 ; =ov02_023594D0 mov r1, #0 str r1, [r0, #0x20] _023315D0: ldr r0, _023315E4 ; =ov02_023594D0 ldr r1, [r0, #0x24] cmp r1, #0 beq _023315E0 mov r1, #0 str r1, [r0, #0x24] blx ov00_022CF7E8 _023315E0: pop {r3, r4, r5, r6, r7, pc} nop _023315E4: .word ov02_023594D0 thumb_func_end ov02_02331584 thumb_func_start ov02_023315E8 ov02_023315E8: ; 0x023315E8 push {r4, r5, r6, r7, lr} sub sp, #0x6c str r0, [sp] mov r0, #0 str r0, [sp, #0x20] str r0, [sp, #0x1c] ldr r0, [sp] str r1, [sp, #4] add r6, r0, #4 add r0, r1, #0 add r4, r0, #4 ldr r0, [sp, #0x20] str r2, [sp, #8] str r0, [sp, #0xc] ldr r0, [sp] ldr r0, [r0] cmp r0, #0 bls _023316BC _0233160C: add r2, sp, #0x48 add r2, #2 mov r1, #0x22 mov r0, #0 _02331614: strb r0, [r2] add r2, r2, #1 sub r1, r1, #1 bne _02331614 add r0, sp, #0x48 add r0, #2 add r1, r6, #4 mov r2, #0x20 bl memcpy add r0, sp, #0x48 ldr r1, [r6] mov r7, #0 add r0, #2 strb r7, [r0, r1] ldr r0, [sp, #4] ldr r0, [r0] str r0, [sp, #0x10] cmp r0, #0 bls _023316A0 add r0, r6, #0 str r0, [sp, #0x24] add r0, #0x28 ldr r5, [r6] str r0, [sp, #0x24] _02331646: cmp r5, #0 beq _023316A0 cmp r5, #0x20 bhi _023316A0 cmp r5, #1 bne _0233165C ldrb r0, [r6, #4] cmp r0, #0 beq _023316A0 cmp r0, #0x20 beq _023316A0 _0233165C: add r0, sp, #0x48 add r0, #2 bl strlen add r2, r0, #0 add r0, sp, #0x48 add r0, #2 add r1, r4, #4 bl memcmp cmp r0, #0 bne _02331696 add r1, r4, #0 ldr r0, [sp, #0x24] add r1, #0x28 mov r2, #6 bl memcmp cmp r0, #0 bne _02331696 ldrh r1, [r6, #0x2e] ldrh r0, [r4, #0x2e] cmp r1, r0 beq _02331696 cmp r1, #0 bne _02331696 mov r0, #1 str r0, [sp, #0x20] b _023316A0 _02331696: ldr r0, [sp, #0x10] add r7, r7, #1 add r4, #0x30 cmp r7, r0 blo _02331646 _023316A0: ldr r0, [sp, #0x20] cmp r0, #0 bne _023316BC ldr r0, [sp, #4] add r6, #0x30 add r4, r0, #4 ldr r0, [sp, #0xc] add r0, r0, #1 str r0, [sp, #0xc] ldr r0, [sp] ldr r1, [r0] ldr r0, [sp, #0xc] cmp r0, r1 blo _0233160C _023316BC: ldr r0, [sp, #0x20] cmp r0, #0 bne _02331798 add r2, sp, #0x28 mov r1, #0x22 mov r0, #0 _023316C8: strb r0, [r2] add r2, r2, #1 sub r1, r1, #1 bne _023316C8 mov r0, #0 str r0, [sp, #0x18] str r0, [sp, #0x14] ldr r0, [sp] ldr r6, [sp, #0x18] add r4, r0, #4 ldr r0, [sp, #4] add r5, r0, #4 ldr r0, [r0] cmp r0, #0 bls _02331724 add r7, sp, #0x28 _023316E8: add r0, r7, #0 add r1, r5, #4 mov r2, #0x20 bl memcpy ldr r1, [r5] mov r0, #0 strb r0, [r7, r1] ldr r0, _023317B0 ; =ov02_02353074 bl strlen add r2, r0, #0 ldr r1, _023317B0 ; =ov02_02353074 add r0, r7, #0 bl memcmp cmp r0, #0 bne _02331718 ldrh r0, [r5, #0x2e] cmp r0, #0 bne _02331718 mov r0, #1 str r0, [sp, #0x14] b _02331724 _02331718: ldr r0, [sp, #4] add r6, r6, #1 ldr r0, [r0] add r5, #0x30 cmp r6, r0 blo _023316E8 _02331724: mov r0, #0 str r0, [sp, #0xc] ldr r0, [sp] ldr r0, [r0] cmp r0, #0 bls _02331788 ldr r7, _023317B0 ; =ov02_02353074 add r5, sp, #0x28 _02331734: add r0, r5, #0 add r1, r4, #4 mov r2, #0x20 bl memcpy ldr r1, [r4] mov r0, #0 strb r0, [r5, r1] add r0, r5, #0 bl strlen add r6, r0, #0 add r0, r7, #0 bl strlen cmp r6, r0 bne _02331776 add r0, r7, #0 bl strlen add r2, r0, #0 add r0, r5, #0 add r1, r7, #0 bl memcmp cmp r0, #0 bne _02331776 ldrh r0, [r4, #0x2e] cmp r0, #0 bne _02331776 mov r0, #1 str r0, [sp, #0x18] b _02331788 _02331776: ldr r0, [sp, #0xc] add r4, #0x30 add r0, r0, #1 str r0, [sp, #0xc] ldr r0, [sp] ldr r1, [r0] ldr r0, [sp, #0xc] cmp r0, r1 blo _02331734 _02331788: ldr r0, [sp, #0x18] cmp r0, #0 beq _02331798 ldr r0, [sp, #0x14] cmp r0, #0 bne _02331798 mov r0, #1 str r0, [sp, #0x20] _02331798: ldr r0, [sp, #0x20] cmp r0, #0 beq _023317A8 ldr r1, [sp, #0xc] ldr r0, [sp, #8] str r1, [r0] mov r0, #1 str r0, [sp, #0x1c] _023317A8: ldr r0, [sp, #0x1c] add sp, #0x6c pop {r4, r5, r6, r7, pc} nop _023317B0: .word ov02_02353074 thumb_func_end ov02_023315E8 thumb_func_start ov02_023317B4 ov02_023317B4: ; 0x023317B4 push {r3, r4, r5, r6, r7, lr} sub sp, #0x70 mov r0, #0 str r0, [sp, #8] str r0, [sp, #0x20] ldr r0, _02331A2C ; =ov02_023594D0 mov r4, #0 ldr r1, [r0, #0x70] mov r0, #0x30 mul r0, r1 str r0, [sp, #0x10] add r0, #0x34 str r0, [sp, #0x10] ldr r1, [sp, #0x10] mov r0, #1 mvn r4, r4 bl ov02_0233415C str r0, [sp, #0xc] cmp r0, #0 beq _023317EC ldr r1, [sp, #0x10] mov r0, #1 bl ov02_0233415C str r0, [sp, #8] cmp r0, #0 bne _023317EE _023317EC: b _02331A12 _023317EE: mov r0, #0 str r0, [sp, #0x1c] b _023319DA _023317F4: bl ov02_02334140 ldr r1, _02331A30 ; =ov02_02353008 ldr r1, [r1, #0xc] cmp r0, r1 bhs _023318DE mov r0, #0 ldr r3, _02331A34 ; =0x0030BFFE add r1, r0, #0 add r2, r0, #0 bl ov02_02330FAC cmp r0, #0 bne _02331816 mov r4, #1 mvn r4, r4 b _02331A12 _02331816: add r0, sp, #0x24 bl sub_0207B040 mov r0, #0x13 str r0, [sp] ldr r1, _02331A38 ; =0x000FFB10 ldr r3, _02331A3C ; =ov02_02331358 add r0, sp, #0x24 mov r2, #0 bl sub_0207B17C ldr r7, _02331A2C ; =ov02_023594D0 mov r5, #1 mov r4, #0 add r6, sp, #0x24 _02331834: mov r0, #0xa bl sub_02079B14 bl ov02_02334140 ldr r1, _02331A30 ; =ov02_02353008 ldr r1, [r1, #0xc] cmp r0, r1 bhs _023318C8 ldr r0, [r7, #0x10] cmp r0, #0 bne _023318C8 bl ov02_023312F0 cmp r0, #0 beq _023318C4 _02331854: cmp r0, #0x13 bhi _023318BA add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _02331864: ; jump table .hword _023318BA - _02331864 - 2 ; case 0 .hword _023318BA - _02331864 - 2 ; case 1 .hword _023318BA - _02331864 - 2 ; case 2 .hword _023318BA - _02331864 - 2 ; case 3 .hword _023318BC - _02331864 - 2 ; case 4 .hword _02331890 - _02331864 - 2 ; case 5 .hword _023318BA - _02331864 - 2 ; case 6 .hword _023318BA - _02331864 - 2 ; case 7 .hword _023318BC - _02331864 - 2 ; case 8 .hword _023318BA - _02331864 - 2 ; case 9 .hword _023318B6 - _02331864 - 2 ; case 10 .hword _023318BA - _02331864 - 2 ; case 11 .hword _023318BA - _02331864 - 2 ; case 12 .hword _023318BA - _02331864 - 2 ; case 13 .hword _023318BA - _02331864 - 2 ; case 14 .hword _023318BA - _02331864 - 2 ; case 15 .hword _023318BA - _02331864 - 2 ; case 16 .hword _023318BA - _02331864 - 2 ; case 17 .hword _023318BC - _02331864 - 2 ; case 18 .hword _0233188C - _02331864 - 2 ; case 19 _0233188C: mov r5, #0 b _023318BC _02331890: ldr r0, [r7, #0x5c] ldr r1, [r7, #0x70] bl ov02_02330F68 cmp r0, r4 ble _023318BC add r4, r0, #0 add r0, r6, #0 bl sub_0207B1E8 mov r0, #0x13 str r0, [sp] ldr r1, _02331A38 ; =0x000FFB10 ldr r3, _02331A3C ; =ov02_02331358 add r0, r6, #0 mov r2, #0 bl sub_0207B17C b _023318BC _023318B6: mov r5, #0 b _023318BC _023318BA: mov r5, #0 _023318BC: bl ov02_023312F0 cmp r0, #0 bne _02331854 _023318C4: cmp r5, #0 bne _02331834 _023318C8: add r0, sp, #0x24 bl sub_0207B1E8 _023318CE: bl ov02_023312F0 cmp r0, #0 bne _023318CE ldr r1, _02331A2C ; =ov02_023594D0 ldr r0, [r1, #0x10] cmp r0, #0 beq _023318E0 _023318DE: b _023319EA _023318E0: mov r0, #0 str r0, [sp, #0x14] ldr r0, [r1, #0x70] cmp r4, r0 blt _023318F0 ldr r0, [sp, #0x14] sub r4, r0, #6 b _02331A12 _023318F0: ldr r0, [sp, #0x14] ldr r5, [r1, #0x5c] str r0, [sp, #0x18] cmp r4, #0 ble _02331966 ble _02331966 ldr r0, [sp, #0xc] ldr r7, [sp, #0xc] str r0, [sp, #4] add r0, #8 add r6, r7, #0 str r0, [sp, #4] add r6, #0x2c _0233190A: add r1, r5, #0 ldr r0, [sp, #4] add r1, #0xc mov r2, #0x20 bl memcpy ldrh r0, [r5, #0xa] str r0, [r7, #4] ldrh r0, [r5, #0xa] add r1, r7, r0 mov r0, #0 strb r0, [r1, #8] ldrh r1, [r5, #0x2c] mov r0, #0x10 tst r0, r1 beq _0233192E mov r0, #1 b _02331930 _0233192E: mov r0, #0 _02331930: strh r0, [r7, #0x32] ldrb r0, [r5, #4] add r7, #0x30 strb r0, [r6] ldrb r0, [r5, #5] strb r0, [r6, #1] ldrb r0, [r5, #6] strb r0, [r6, #2] ldrb r0, [r5, #7] strb r0, [r6, #3] ldrb r0, [r5, #8] strb r0, [r6, #4] ldrb r0, [r5, #9] add r5, #0xc0 strb r0, [r6, #5] ldr r0, [sp, #4] add r6, #0x30 add r0, #0x30 str r0, [sp, #4] ldr r0, [sp, #0x14] add r0, r0, #1 str r0, [sp, #0x14] ldr r0, [sp, #0x18] add r0, r0, #1 str r0, [sp, #0x18] cmp r0, r4 blt _0233190A _02331966: ldr r0, [sp, #0xc] str r4, [r0] ldr r0, _02331A2C ; =ov02_023594D0 ldr r0, [r0, #0x38] cmp r0, #1 beq _023319C0 ldr r0, [sp, #0xc] ldr r1, [sp, #8] add r2, sp, #0x20 bl ov02_023315E8 cmp r0, #0 beq _023319C0 ldr r0, [sp, #0xc] ldr r2, [sp, #0x20] add r1, r0, #4 mov r0, #0x30 mul r0, r2 add r4, r1, r0 ldr r0, _02331A2C ; =ov02_023594D0 add r1, r4, #4 str r2, [r0, #0x18] ldr r0, _02331A40 ; =ov02_023599E0 bl strcpy add r0, r4, #0 add r4, #0x28 ldrb r2, [r4] ldr r1, _02331A44 ; =ov02_02359980 add r0, #0x28 strb r2, [r1] ldrb r2, [r0, #1] strb r2, [r1, #1] ldrb r2, [r0, #2] strb r2, [r1, #2] ldrb r2, [r0, #3] strb r2, [r1, #3] ldrb r2, [r0, #4] strb r2, [r1, #4] ldrb r0, [r0, #5] strb r0, [r1, #5] add r0, sp, #0x50 bl ov02_023341C4 b _023319EA _023319C0: ldr r0, [sp, #8] ldr r1, [sp, #0xc] ldr r2, [sp, #0x10] bl memcpy ldr r0, _02331A2C ; =ov02_023594D0 mov r1, #2 str r1, [r0, #0x38] bl ov02_023343C0 ldr r0, [sp, #0x1c] add r0, r0, #1 str r0, [sp, #0x1c] _023319DA: ldr r0, [sp, #0x1c] cmp r0, #0x1e bge _023319EA ldr r0, _02331A2C ; =ov02_023594D0 ldr r0, [r0, #0x10] cmp r0, #0 bne _023319EA b _023317F4 _023319EA: ldr r0, [sp, #0x1c] cmp r0, #0x1e bge _023319FC bl ov02_02334140 ldr r1, _02331A30 ; =ov02_02353008 ldr r1, [r1, #0xc] cmp r0, r1 bls _02331A02 _023319FC: mov r4, #2 mvn r4, r4 b _02331A12 _02331A02: ldr r0, _02331A2C ; =ov02_023594D0 ldr r0, [r0, #0x10] cmp r0, #0 beq _02331A10 mov r4, #7 mvn r4, r4 b _02331A12 _02331A10: mov r4, #1 _02331A12: ldr r0, [sp, #0xc] cmp r0, #0 beq _02331A1C bl ov02_02334180 _02331A1C: ldr r0, [sp, #8] cmp r0, #0 beq _02331A26 bl ov02_02334180 _02331A26: add r0, r4, #0 add sp, #0x70 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _02331A2C: .word ov02_023594D0 _02331A30: .word ov02_02353008 _02331A34: .word 0x0030BFFE _02331A38: .word 0x000FFB10 _02331A3C: .word ov02_02331358 + 1 _02331A40: .word ov02_023599E0 _02331A44: .word ov02_02359980 thumb_func_end ov02_023317B4 thumb_func_start ov02_02331A48 ov02_02331A48: ; 0x02331A48 push {r3, lr} ldr r2, [sp, #8] str r1, [sp] add r1, r3, #0 mov r3, #0 blx sendto cmp r0, #0 bge _02331A5E mov r0, #3 mvn r0, r0 _02331A5E: pop {r3, pc} thumb_func_end ov02_02331A48 thumb_func_start ov02_02331A60 ov02_02331A60: ; 0x02331A60 push {r4, r5, r6, lr} sub sp, #0x10 add r5, r0, #0 add r6, r1, #0 mov r1, #8 add r0, sp, #4 strb r1, [r0, #4] mov r1, #2 strb r1, [r0, #5] sub r1, r1, #3 str r1, [sp, #0xc] ldr r1, _02331A98 ; =0x000001E6 add r4, r2, #0 strh r1, [r0, #6] blx ov00_022CEF10 add r1, sp, #4 blx ov00_022CF8F8 add r0, r5, #0 add r1, sp, #8 add r2, sp, #4 add r3, r6, #0 str r4, [sp] bl ov02_02331A48 add sp, #0x10 pop {r4, r5, r6, pc} .align 2, 0 _02331A98: .word 0x000001E6 thumb_func_end ov02_02331A60 thumb_func_start ov02_02331A9C ov02_02331A9C: ; 0x02331A9C add r1, r2, #0 add r2, r3, #0 ldr r3, _02331AA4 ; =ov02_02331A60 bx r3 .align 2, 0 _02331AA4: .word ov02_02331A60 + 1 thumb_func_end ov02_02331A9C thumb_func_start ov02_02331AA8 ov02_02331AA8: ; 0x02331AA8 push {r3, r4, r5, r6} ldrh r5, [r0] mov r3, #0 asr r4, r5, #8 lsl r4, r4, #0x18 lsr r6, r4, #0x18 lsl r4, r5, #8 mov r5, #0xff lsl r5, r5, #8 and r4, r5 orr r4, r6 lsl r4, r4, #0x10 lsr r4, r4, #0x10 str r4, [r1] ldrh r6, [r0, #2] asr r1, r6, #8 lsl r1, r1, #0x18 lsr r4, r1, #0x18 lsl r1, r6, #8 and r1, r5 orr r1, r4 lsl r1, r1, #0x10 lsr r4, r1, #0x10 add r1, r0, #6 str r4, [r2] add r2, r1, r4 add r4, r0, #0 cmp r0, r2 bhs _02331AEC _02331AE2: ldrb r1, [r4] add r4, r4, #1 add r3, r3, r1 cmp r4, r2 blo _02331AE2 _02331AEC: ldrh r5, [r2] lsl r1, r3, #0x10 lsr r1, r1, #0x10 asr r2, r5, #8 lsl r2, r2, #0x18 lsr r4, r2, #0x18 mov r2, #0xff lsl r3, r5, #8 lsl r2, r2, #8 and r2, r3 orr r2, r4 lsl r2, r2, #0x10 lsr r2, r2, #0x10 cmp r1, r2 beq _02331B10 mov r0, #0 pop {r3, r4, r5, r6} bx lr _02331B10: add r0, r0, #6 pop {r3, r4, r5, r6} bx lr .align 2, 0 thumb_func_end ov02_02331AA8 thumb_func_start ov02_02331B18 ov02_02331B18: ; 0x02331B18 push {r3, r4, r5, r6} add r4, r0, #0 ldr r0, [r4] cmp r0, r1 blo _02331B28 mov r0, #0 pop {r3, r4, r5, r6} bx lr _02331B28: ldrh r5, [r0] asr r1, r5, #8 lsl r1, r1, #0x18 lsr r6, r1, #0x18 lsl r1, r5, #8 mov r5, #0xff lsl r5, r5, #8 and r1, r5 orr r1, r6 lsl r1, r1, #0x10 lsr r1, r1, #0x10 str r1, [r2] ldrh r6, [r0, #2] add r0, r0, #4 asr r1, r6, #8 lsl r1, r1, #0x18 lsr r2, r1, #0x18 lsl r1, r6, #8 and r1, r5 orr r1, r2 lsl r1, r1, #0x10 lsr r2, r1, #0x10 str r2, [r3] add r2, #0xb mov r1, #7 bic r2, r1 sub r1, r2, #4 add r1, r0, r1 str r1, [r4] pop {r3, r4, r5, r6} bx lr .align 2, 0 thumb_func_end ov02_02331B18 thumb_func_start ov02_02331B68 ov02_02331B68: ; 0x02331B68 push {r3, r4, r5, r6, lr} sub sp, #4 add r5, r0, #0 add r5, #8 str r5, [sp] add r3, r2, #0 ldrh r2, [r0] add r4, r1, #0 add r0, sp, #0 asr r1, r2, #8 lsl r6, r2, #8 mov r2, #0xff lsl r1, r1, #0x18 lsl r2, r2, #8 lsr r1, r1, #0x18 and r2, r6 orr r1, r2 lsl r1, r1, #0x10 lsr r1, r1, #0x10 add r1, r5, r1 add r2, r4, #0 bl ov02_02331B18 add sp, #4 pop {r3, r4, r5, r6, pc} .align 2, 0 thumb_func_end ov02_02331B68 thumb_func_start ov02_02331B9C ov02_02331B9C: ; 0x02331B9C push {r3, r4, r5, r6, r7, lr} sub sp, #8 add r7, r3, #0 add r6, r0, #0 add r0, r7, #0 sub r0, #8 str r1, [sp, #4] lsl r0, r0, #0x10 add r1, r2, #0 mov r5, #0 strb r5, [r1] lsr r0, r0, #0x10 strb r5, [r1, #1] asr r2, r0, #8 strb r5, [r1, #2] lsl r2, r2, #0x18 strb r5, [r1, #3] lsr r3, r2, #0x18 lsl r2, r0, #8 mov r0, #0xff strb r5, [r1, #4] lsl r0, r0, #8 strb r5, [r1, #5] and r0, r2 strb r5, [r1, #6] orr r0, r3 strb r5, [r1, #7] ldr r3, [sp, #0x20] add r4, r6, #0 strh r0, [r1] cmp r3, #0 beq _02331BEC mov r0, #0x10 str r0, [sp] add r0, r6, #6 add r2, r7, #0 bl ov02_023327DC add r7, #8 b _02331BF4 _02331BEC: add r0, r6, #6 add r2, r7, #0 bl memcpy _02331BF4: mov r0, #0 strb r0, [r6] strb r0, [r6, #1] strb r0, [r6, #2] strb r0, [r6, #3] strb r0, [r6, #4] strb r0, [r6, #5] ldr r0, [sp, #4] lsl r0, r0, #0x10 lsr r1, r0, #0x10 asr r0, r1, #8 lsl r0, r0, #0x18 lsr r2, r0, #0x18 mov r0, #0xff lsl r1, r1, #8 lsl r0, r0, #8 and r1, r0 orr r1, r2 strh r1, [r6] lsl r1, r7, #0x10 lsr r2, r1, #0x10 asr r1, r2, #8 lsl r1, r1, #0x18 lsl r2, r2, #8 lsr r1, r1, #0x18 and r0, r2 orr r0, r1 strh r0, [r6, #2] add r0, r4, #6 add r4, r0, r7 add r1, r6, #0 cmp r6, r4 bhs _02331C40 _02331C36: ldrb r0, [r1] add r1, r1, #1 add r5, r5, r0 cmp r1, r4 blo _02331C36 _02331C40: lsl r0, r5, #0x10 lsr r1, r0, #0x10 asr r0, r1, #8 lsl r0, r0, #0x18 lsr r2, r0, #0x18 mov r0, #0xff lsl r1, r1, #8 lsl r0, r0, #8 and r0, r1 orr r0, r2 strh r0, [r4] add r0, r4, #2 sub r0, r0, r6 add sp, #8 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end ov02_02331B9C thumb_func_start ov02_02331C60 ov02_02331C60: ; 0x02331C60 push {r3, r4, r5, r6, r7, lr} add r5, r0, #0 lsl r0, r1, #0x10 add r4, r3, #0 mov r3, #0 lsr r0, r0, #0x10 add r7, r2, #0 strb r3, [r5] asr r1, r0, #8 lsl r2, r0, #8 mov r0, #0xff strb r3, [r5, #1] lsl r1, r1, #0x18 lsl r0, r0, #8 strb r3, [r5, #2] lsr r1, r1, #0x18 and r2, r0 orr r1, r2 strb r3, [r5, #3] add r2, r4, #0 strh r1, [r5] add r2, #0xb mov r1, #7 bic r2, r1 lsl r1, r4, #0x10 sub r6, r2, #4 lsr r2, r1, #0x10 asr r1, r2, #8 lsl r1, r1, #0x18 lsl r2, r2, #8 and r0, r2 lsr r1, r1, #0x18 orr r0, r1 strh r0, [r5, #2] add r5, r5, #4 add r0, r5, #0 add r1, r3, #0 add r2, r6, #0 bl memset add r0, r5, #0 add r1, r7, #0 add r2, r4, #0 bl memcpy add r0, r5, r6 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end ov02_02331C60 thumb_func_start ov02_02331CC0 ov02_02331CC0: ; 0x02331CC0 push {r4, lr} add r4, r0, #0 mov r0, #0 strb r0, [r4] strb r0, [r4, #1] strb r0, [r4, #2] strb r0, [r4, #3] strb r0, [r4, #4] strb r0, [r4, #5] strb r0, [r4, #6] strb r0, [r4, #7] add r0, r4, #0 add r0, #8 bl ov02_02331C60 sub r0, r0, r4 add r1, r0, #0 sub r1, #8 strh r1, [r4] pop {r4, pc} thumb_func_end ov02_02331CC0 thumb_func_start ov02_02331CE8 ov02_02331CE8: ; 0x02331CE8 push {r4, r5, r6, r7, lr} sub sp, #0x1c str r1, [sp] add r1, sp, #0x18 add r2, sp, #0x14 bl ov02_02331AA8 mov r6, #0 add r5, r0, #0 add r7, r6, #0 str r5, [sp, #8] str r6, [sp, #4] cmp r5, #0 bne _02331D0A add sp, #0x1c add r0, r6, #0 pop {r4, r5, r6, r7, pc} _02331D0A: ldr r0, [sp, #0x18] cmp r0, #1 beq _02331D16 add sp, #0x1c add r0, r6, #0 pop {r4, r5, r6, r7, pc} _02331D16: ldr r4, [sp, #0x14] add r0, r5, #0 add r0, #8 str r0, [sp, #8] add r0, sp, #8 add r1, r5, r4 add r2, sp, #0x10 add r3, sp, #0xc bl ov02_02331B18 cmp r0, #0 beq _02331D96 _02331D2E: ldr r1, [sp, #0x10] cmp r1, #1 beq _02331D3E cmp r1, #2 beq _02331D56 cmp r1, #5 beq _02331D70 b _02331D86 _02331D3E: ldrh r1, [r0] asr r0, r1, #8 lsl r0, r0, #0x18 lsr r2, r0, #0x18 mov r0, #0xff lsl r1, r1, #8 lsl r0, r0, #8 and r0, r1 orr r0, r2 lsl r0, r0, #0x10 lsr r6, r0, #0x10 b _02331D86 _02331D56: ldrh r1, [r0] asr r0, r1, #8 lsl r2, r1, #8 mov r1, #0xff lsl r0, r0, #0x18 lsl r1, r1, #8 lsr r0, r0, #0x18 and r1, r2 orr r0, r1 lsl r0, r0, #0x10 lsr r0, r0, #0x10 str r0, [sp, #4] b _02331D86 _02331D70: ldrh r1, [r0] asr r0, r1, #8 lsl r0, r0, #0x18 lsr r2, r0, #0x18 mov r0, #0xff lsl r1, r1, #8 lsl r0, r0, #8 and r0, r1 orr r0, r2 lsl r0, r0, #0x10 lsr r7, r0, #0x10 _02331D86: add r0, sp, #8 add r1, r5, r4 add r2, sp, #0x10 add r3, sp, #0xc bl ov02_02331B18 cmp r0, #0 bne _02331D2E _02331D96: cmp r6, #1 bne _02331DA0 ldr r0, [sp, #4] cmp r0, #1 beq _02331DA6 _02331DA0: add sp, #0x1c mov r0, #0 pop {r4, r5, r6, r7, pc} _02331DA6: cmp r7, #1 blt _02331DB0 mov r1, #1 ldr r0, [sp] b _02331DB4 _02331DB0: ldr r0, [sp] mov r1, #0 _02331DB4: str r1, [r0] mov r0, #1 add sp, #0x1c pop {r4, r5, r6, r7, pc} thumb_func_end ov02_02331CE8 thumb_func_start ov02_02331DBC ov02_02331DBC: ; 0x02331DBC push {r3, r4, r5, r6, lr} sub sp, #0xc add r5, r1, #0 add r6, r2, #0 add r1, sp, #8 add r2, sp, #4 add r4, r3, #0 bl ov02_02331AA8 add r1, r0, #0 bne _02331DD8 add sp, #0xc mov r0, #0 pop {r3, r4, r5, r6, pc} _02331DD8: ldr r0, [sp, #8] cmp r0, r5 beq _02331DE4 add sp, #0xc mov r0, #0 pop {r3, r4, r5, r6, pc} _02331DE4: cmp r4, #0 beq _02331DFE mov r0, #0x10 str r0, [sp] ldr r2, [sp, #4] add r0, r6, #0 add r3, r4, #0 bl ov02_02332994 ldr r0, [sp, #4] sub r0, #8 str r0, [sp, #4] b _02331E06 _02331DFE: ldr r2, [sp, #4] add r0, r6, #0 bl memcpy _02331E06: ldr r0, [sp, #4] add sp, #0xc pop {r3, r4, r5, r6, pc} thumb_func_end ov02_02331DBC thumb_func_start ov02_02331E0C ov02_02331E0C: ; 0x02331E0C push {r4, lr} sub sp, #0x10 mov r1, #1 add r4, r0, #0 add r2, sp, #4 lsl r1, r1, #8 add r0, sp, #4 strh r1, [r0] ldr r3, _02331E94 ; =ov02_0234FC5C add r2, #2 mov r1, #7 _02331E22: ldrb r0, [r3] add r3, r3, #1 strb r0, [r2] add r2, r2, #1 sub r1, r1, #1 bne _02331E22 ldr r0, _02331E98 ; =ov02_02353008 mov r1, #1 ldr r0, [r0] add r2, sp, #4 mov r3, #2 bl ov02_02331C60 mov r1, #2 add r2, sp, #4 add r3, r1, #0 bl ov02_02331C60 ldr r1, _02331E9C ; =ov02_023594D0 ldr r1, [r1, #0x50] cmp r1, #0 beq _02331E58 mov r1, #5 add r2, sp, #4 mov r3, #2 bl ov02_02331C60 _02331E58: add r2, sp, #4 mov r1, #3 add r2, #2 mov r3, #7 bl ov02_02331C60 ldr r1, _02331E9C ; =ov02_023594D0 add r3, r0, #0 ldr r1, [r1, #0x50] cmp r1, #0 beq _02331E7A ldr r2, _02331EA0 ; =ov02_02359978 mov r1, #4 mov r3, #6 bl ov02_02331C60 add r3, r0, #0 _02331E7A: mov r0, #0 str r0, [sp] add r0, r4, #0 ldr r4, _02331E98 ; =ov02_02353008 ldr r2, _02331EA4 ; =ov02_02359A04 ldr r4, [r4] mov r1, #2 sub r3, r3, r4 add r3, #8 bl ov02_02331B9C add sp, #0x10 pop {r4, pc} .align 2, 0 _02331E94: .word ov02_0234FC5C _02331E98: .word ov02_02353008 _02331E9C: .word ov02_023594D0 _02331EA0: .word ov02_02359978 _02331EA4: .word ov02_02359A04 thumb_func_end ov02_02331E0C thumb_func_start ov02_02331EA8 ov02_02331EA8: ; 0x02331EA8 push {r3, lr} bl sub_0207B9EC mov r0, #1 pop {r3, pc} .align 2, 0 thumb_func_end ov02_02331EA8 thumb_func_start ov02_02331EB4 ov02_02331EB4: ; 0x02331EB4 push {r3, r4, lr} sub sp, #0x4c ldr r1, _02331FA0 ; =ov02_023530C8 add r4, r0, #0 ldrb r0, [r1] add r2, r4, #0 add r2, #0xc strb r0, [r4, #0xc] ldrb r0, [r1, #1] strb r0, [r2, #1] ldrb r0, [r1, #2] strb r0, [r2, #2] ldrb r0, [r1, #3] add r1, sp, #4 add r1, #2 strb r0, [r2, #3] ldr r0, _02331FA4 ; =ov02_02359980 ldrb r2, [r0] strb r2, [r1] ldrb r2, [r0, #1] strb r2, [r1, #1] ldrb r2, [r0, #2] strb r2, [r1, #2] ldrb r2, [r0, #3] strb r2, [r1, #3] ldrb r2, [r0, #4] ldrb r0, [r0, #5] strb r2, [r1, #4] strb r0, [r1, #5] add r1, sp, #0 ldrb r2, [r1, #6] mov r0, #0xfd and r0, r2 strb r0, [r1, #6] add r0, sp, #0 bl ov02_02331EA8 add r1, sp, #0 ldrb r2, [r1] ldr r0, _02331FA8 ; =ov02_02359978 strb r2, [r0] ldrb r2, [r1, #1] strb r2, [r0, #1] ldrb r2, [r1, #2] strb r2, [r0, #2] ldrb r2, [r1, #3] strb r2, [r0, #3] ldrb r2, [r1, #4] strb r2, [r0, #4] ldrb r2, [r1, #5] strb r2, [r0, #5] add r0, sp, #4 add r0, #2 mov r2, #6 bl memcmp cmp r0, #0 bgt _02331F48 add r1, sp, #0 ldrb r0, [r1] strb r0, [r4] ldrb r0, [r1, #1] strb r0, [r4, #1] ldrb r0, [r1, #2] strb r0, [r4, #2] ldrb r0, [r1, #3] strb r0, [r4, #3] ldrb r0, [r1, #4] strb r0, [r4, #4] ldrb r0, [r1, #5] add r1, sp, #4 add r1, #2 strb r0, [r4, #5] b _02331F66 _02331F48: add r1, sp, #4 add r1, #2 ldrb r0, [r1] strb r0, [r4] ldrb r0, [r1, #1] strb r0, [r4, #1] ldrb r0, [r1, #2] strb r0, [r4, #2] ldrb r0, [r1, #3] strb r0, [r4, #3] ldrb r0, [r1, #4] strb r0, [r4, #4] ldrb r0, [r1, #5] add r1, sp, #0 strb r0, [r4, #5] _02331F66: ldrb r0, [r1] strb r0, [r4, #6] ldrb r0, [r1, #1] strb r0, [r4, #7] ldrb r0, [r1, #2] strb r0, [r4, #8] ldrb r0, [r1, #3] strb r0, [r4, #9] ldrb r0, [r1, #4] strb r0, [r4, #0xa] ldrb r0, [r1, #5] strb r0, [r4, #0xb] ldr r0, _02331FAC ; =ov02_02353008 ldr r0, [r0, #4] cmp r0, #0 beq _02331F98 add r0, sp, #0x2c add r1, sp, #0 bl ov02_023341C4 add r1, sp, #4 add r0, sp, #0xc add r1, #2 bl ov02_023341C4 _02331F98: mov r0, #1 add sp, #0x4c pop {r3, r4, pc} nop _02331FA0: .word ov02_023530C8 _02331FA4: .word ov02_02359980 _02331FA8: .word ov02_02359978 _02331FAC: .word ov02_02353008 thumb_func_end ov02_02331EB4 thumb_func_start ov02_02331FB0 ov02_02331FB0: ; 0x02331FB0 push {r3, r4, r5, r6, r7, lr} sub sp, #0x18 add r1, r0, #0 str r1, [sp, #4] add r1, #8 str r1, [sp, #4] str r1, [sp, #0x14] mov r1, #0 str r1, [sp] ldrh r1, [r0] add r3, sp, #0xc asr r0, r1, #8 lsl r0, r0, #0x18 lsr r2, r0, #0x18 mov r0, #0xff lsl r1, r1, #8 lsl r0, r0, #8 and r0, r1 orr r0, r2 lsl r0, r0, #0x10 lsr r0, r0, #0x10 str r0, [sp, #8] ldr r2, [sp, #4] ldr r1, [sp, #8] add r0, sp, #0x14 add r1, r2, r1 add r2, sp, #0x10 bl ov02_02331B18 add r5, r0, #0 bne _02331FF0 b _02332160 _02331FF0: ldr r2, [sp, #0x10] ldr r0, _02332168 ; =0x00000201 sub r1, r2, r0 cmp r1, #9 bhi _0233207E add r1, r1, r1 add r1, pc ldrh r1, [r1, #6] lsl r1, r1, #0x10 asr r1, r1, #0x10 add pc, r1 _02332006: ; jump table .hword _0233201A - _02332006 - 2 ; case 0 .hword _0233203A - _02332006 - 2 ; case 1 .hword _02332056 - _02332006 - 2 ; case 2 .hword _02332080 - _02332006 - 2 ; case 3 .hword _023320AA - _02332006 - 2 ; case 4 .hword _023320C6 - _02332006 - 2 ; case 5 .hword _023320C6 - _02332006 - 2 ; case 6 .hword _023320C6 - _02332006 - 2 ; case 7 .hword _023320C6 - _02332006 - 2 ; case 8 .hword _02332126 - _02332006 - 2 ; case 9 _0233201A: ldr r3, _0233216C ; =ov02_02359824 mov r0, #0 add r2, r3, #0 add r1, r0, #0 stmia r2!, {r0, r1} stmia r2!, {r0, r1} stmia r2!, {r0, r1} stmia r2!, {r0, r1} ldr r2, [sp, #0xc] add r0, r3, #0 add r1, r5, #0 bl memcpy mov r0, #1 str r0, [sp] b _0233214A _0233203A: ldrh r1, [r5] asr r0, r1, #8 lsl r0, r0, #0x18 lsr r2, r0, #0x18 mov r0, #0xff lsl r1, r1, #8 lsl r0, r0, #8 and r0, r1 orr r0, r2 lsl r0, r0, #0x10 lsr r1, r0, #0x10 ldr r0, _02332170 ; =ov02_02359850 str r1, [r0] b _0233214A _02332056: ldrh r3, [r5] ldr r1, _02332174 ; =ov02_02359724 mov r0, #0 asr r2, r3, #8 lsl r2, r2, #0x18 lsr r4, r2, #0x18 mov r2, #0xff lsl r3, r3, #8 lsl r2, r2, #8 and r2, r3 orr r2, r4 lsl r2, r2, #0x10 lsr r3, r2, #0x10 mov r2, #0x57 lsl r2, r2, #2 _02332074: add r0, r0, #1 str r3, [r1, r2] add r1, #0x28 cmp r0, #4 blt _02332074 _0233207E: b _0233214A _02332080: ldrh r3, [r5] ldr r0, _02332174 ; =ov02_02359724 mov r1, #0 asr r2, r3, #8 lsl r2, r2, #0x18 lsr r4, r2, #0x18 mov r2, #0xff lsl r3, r3, #8 lsl r2, r2, #8 and r2, r3 orr r2, r4 lsl r2, r2, #0x10 lsr r3, r2, #0x10 mov r2, #0x16 lsl r2, r2, #4 _0233209E: add r1, r1, #1 str r3, [r0, r2] add r0, #0x28 cmp r1, #4 blt _0233209E b _0233214A _023320AA: ldrh r1, [r5] asr r0, r1, #8 lsl r0, r0, #0x18 lsr r2, r0, #0x18 mov r0, #0xff lsl r1, r1, #8 lsl r0, r0, #8 and r0, r1 orr r0, r2 lsl r0, r0, #0x10 lsr r1, r0, #0x10 ldr r0, _02332170 ; =ov02_02359850 str r1, [r0, #4] b _0233214A _023320C6: add r0, r0, #5 sub r2, r2, r0 mov r0, #0x28 mul r0, r2 ldr r1, _02332178 ; =ov02_02359888 mov r2, #0x20 add r0, r1, r0 mov r1, #0 bl memset ldr r0, _02332170 ; =ov02_02359850 ldr r1, _0233217C ; =0x00000206 ldr r0, [r0, #0x30] cmp r0, #1 bne _02332110 ldr r2, [sp, #0x10] ldr r0, _02332178 ; =ov02_02359888 sub r2, r2, r1 mov r1, #0x28 mul r1, r2 add r4, r0, r1 ldr r0, [sp, #0xc] mov r6, #0 cmp r0, #0 ble _0233214A add r7, r6, #0 _023320FA: ldrsb r1, [r5, r7] add r0, r4, #0 add r5, r5, #1 bl ov02_02334190 add r4, r4, r0 ldr r0, [sp, #0xc] add r6, r6, #1 cmp r6, r0 blt _023320FA b _0233214A _02332110: ldr r2, [sp, #0x10] ldr r0, _02332178 ; =ov02_02359888 sub r2, r2, r1 mov r1, #0x28 mul r1, r2 add r0, r0, r1 ldr r2, [sp, #0xc] add r1, r5, #0 bl memcpy b _0233214A _02332126: ldr r3, _02332180 ; =ov02_02359920 mov r0, #0 add r2, r3, #0 add r1, r0, #0 stmia r2!, {r0, r1} stmia r2!, {r0, r1} stmia r2!, {r0, r1} stmia r2!, {r0, r1} stmia r2!, {r0, r1} stmia r2!, {r0, r1} stmia r2!, {r0, r1} stmia r2!, {r0, r1} stmia r2!, {r0, r1} ldr r2, [sp, #0xc] add r0, r3, #0 add r1, r5, #0 bl memcpy _0233214A: ldr r2, [sp, #4] ldr r1, [sp, #8] add r0, sp, #0x14 add r1, r2, r1 add r2, sp, #0x10 add r3, sp, #0xc bl ov02_02331B18 add r5, r0, #0 beq _02332160 b _02331FF0 _02332160: ldr r0, [sp] add sp, #0x18 pop {r3, r4, r5, r6, r7, pc} nop _02332168: .word 0x00000201 _0233216C: .word ov02_02359824 _02332170: .word ov02_02359850 _02332174: .word ov02_02359724 _02332178: .word ov02_02359888 _0233217C: .word 0x00000206 _02332180: .word ov02_02359920 thumb_func_end ov02_02331FB0 thumb_func_start ov02_02332184 ov02_02332184: ; 0x02332184 push {r4, r5, r6, r7} add r4, r2, #0 mov r2, #0 add r5, r1, #0 add r3, r2, #0 cmp r4, #0 ble _02332232 mov r7, #0x1f _02332194: ldrsb r1, [r5, r3] cmp r1, #0x63 bgt _023321EA bge _02332202 cmp r1, #0x61 bgt _023321E4 bge _02332202 add r6, r1, #0 sub r6, #0x30 cmp r6, #0x16 bhi _0233220E add r6, r6, r6 add r6, pc ldrh r6, [r6, #6] lsl r6, r6, #0x10 asr r6, r6, #0x10 add pc, r6 _023321B6: ; jump table .hword _023321FC - _023321B6 - 2 ; case 0 .hword _023321FC - _023321B6 - 2 ; case 1 .hword _023321FC - _023321B6 - 2 ; case 2 .hword _023321FC - _023321B6 - 2 ; case 3 .hword _023321FC - _023321B6 - 2 ; case 4 .hword _023321FC - _023321B6 - 2 ; case 5 .hword _023321FC - _023321B6 - 2 ; case 6 .hword _023321FC - _023321B6 - 2 ; case 7 .hword _023321FC - _023321B6 - 2 ; case 8 .hword _023321FC - _023321B6 - 2 ; case 9 .hword _0233220E - _023321B6 - 2 ; case 10 .hword _0233220E - _023321B6 - 2 ; case 11 .hword _0233220E - _023321B6 - 2 ; case 12 .hword _0233220E - _023321B6 - 2 ; case 13 .hword _0233220E - _023321B6 - 2 ; case 14 .hword _0233220E - _023321B6 - 2 ; case 15 .hword _0233220E - _023321B6 - 2 ; case 16 .hword _02332208 - _023321B6 - 2 ; case 17 .hword _02332208 - _023321B6 - 2 ; case 18 .hword _02332208 - _023321B6 - 2 ; case 19 .hword _02332208 - _023321B6 - 2 ; case 20 .hword _02332208 - _023321B6 - 2 ; case 21 .hword _02332208 - _023321B6 - 2 ; case 22 _023321E4: cmp r1, #0x62 beq _02332202 b _0233220E _023321EA: cmp r1, #0x65 bgt _023321F6 bge _02332202 cmp r1, #0x64 beq _02332202 b _0233220E _023321F6: cmp r1, #0x66 beq _02332202 b _0233220E _023321FC: sub r1, #0x30 add r2, r2, r1 b _02332214 _02332202: sub r1, #0x57 add r2, r2, r1 b _02332214 _02332208: sub r1, #0x37 add r2, r2, r1 b _02332214 _0233220E: mov r0, #0 pop {r4, r5, r6, r7} bx lr _02332214: lsr r6, r3, #0x1f lsl r1, r3, #0x1f sub r1, r1, r6 ror r1, r7 add r1, r6, r1 bne _02332224 lsl r2, r2, #4 b _0233222C _02332224: add r6, r3, r6 asr r1, r6, #1 strb r2, [r0, r1] mov r2, #0 _0233222C: add r3, r3, #1 cmp r3, r4 blt _02332194 _02332232: mov r0, #1 pop {r4, r5, r6, r7} bx lr thumb_func_end ov02_02332184 thumb_func_start ov02_02332238 ov02_02332238: ; 0x02332238 push {r3, r4, r5, r6, r7, lr} sub sp, #0x28 mov r0, #1 str r0, [sp] ldr r0, _023323A0 ; =ov02_0235963C ldr r1, _023323A4 ; =ov02_02359824 bl strcpy ldr r1, _023323A8 ; =ov02_02359850 ldr r0, [r1] cmp r0, #3 bls _02332252 b _02332392 _02332252: add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _0233225E: ; jump table .hword _02332266 - _0233225E - 2 ; case 0 .hword _0233226E - _0233225E - 2 ; case 1 .hword _02332366 - _0233225E - 2 ; case 2 .hword _0233237C - _0233225E - 2 ; case 3 _02332266: ldr r0, _023323AC ; =ov02_02359650 mov r1, #0 str r1, [r0, #0xc] b _02332398 _0233226E: ldr r1, [r1, #4] cmp r1, #0 bne _0233227C mov r0, #6 mvn r0, r0 str r0, [sp] b _02332398 _0233227C: ldr r0, _023323AC ; =ov02_02359650 ldr r6, _023323B0 ; =ov02_02359888 ldr r5, _023323B4 ; =ov02_02359664 str r1, [r0, #0x10] mov r7, #0 add r4, sp, #4 _02332288: add r0, sp, #4 add r1, r6, #0 mov r2, #0x20 bl memcpy mov r1, #0 add r0, sp, #0x24 strb r1, [r0] add r0, sp, #4 bl strlen cmp r0, #0x10 bhi _023322C0 cmp r0, #0xa blo _023322B2 beq _023322EA cmp r0, #0xd beq _023322FC cmp r0, #0x10 beq _02332328 b _02332354 _023322B2: cmp r0, #0 bhi _023322BA beq _0233235A b _02332354 _023322BA: cmp r0, #5 beq _023322CE b _02332354 _023322C0: cmp r0, #0x1a bhi _023322C8 beq _02332316 b _02332354 _023322C8: cmp r0, #0x20 beq _02332342 b _02332354 _023322CE: ldr r0, _023323AC ; =ov02_02359650 mov r1, #1 str r1, [r0, #0xc] ldrb r0, [r4] strb r0, [r5] ldrb r0, [r4, #1] strb r0, [r5, #1] ldrb r0, [r4, #2] strb r0, [r5, #2] ldrb r0, [r4, #3] strb r0, [r5, #3] ldrb r0, [r4, #4] strb r0, [r5, #4] b _0233235A _023322EA: ldr r0, _023323AC ; =ov02_02359650 mov r1, #1 str r1, [r0, #0xc] add r0, r5, #0 add r1, r4, #0 mov r2, #0xa bl ov02_02332184 b _0233235A _023322FC: ldr r0, _023323AC ; =ov02_02359650 mov r1, #2 str r1, [r0, #0xc] add r3, r4, #0 add r2, r5, #0 mov r1, #0xd _02332308: ldrb r0, [r3] add r3, r3, #1 strb r0, [r2] add r2, r2, #1 sub r1, r1, #1 bne _02332308 b _0233235A _02332316: ldr r0, _023323AC ; =ov02_02359650 mov r1, #2 str r1, [r0, #0xc] add r0, r5, #0 add r1, r4, #0 mov r2, #0x1a bl ov02_02332184 b _0233235A _02332328: ldr r0, _023323AC ; =ov02_02359650 mov r1, #3 str r1, [r0, #0xc] add r3, r4, #0 add r2, r5, #0 mov r1, #0x10 _02332334: ldrb r0, [r3] add r3, r3, #1 strb r0, [r2] add r2, r2, #1 sub r1, r1, #1 bne _02332334 b _0233235A _02332342: ldr r0, _023323AC ; =ov02_02359650 mov r1, #3 str r1, [r0, #0xc] add r0, r5, #0 add r1, r4, #0 mov r2, #0x20 bl ov02_02332184 b _0233235A _02332354: mov r0, #6 mvn r0, r0 str r0, [sp] _0233235A: add r7, r7, #1 add r6, #0x28 add r5, #0x20 cmp r7, #4 blt _02332288 b _02332398 _02332366: ldr r0, _023323AC ; =ov02_02359650 mov r1, #4 ldr r4, _023323B8 ; =ov02_023596E4 ldr r3, _023323BC ; =ov02_02359920 str r1, [r0, #0xc] mov r2, #8 _02332372: ldmia r3!, {r0, r1} stmia r4!, {r0, r1} sub r2, r2, #1 bne _02332372 b _02332398 _0233237C: ldr r0, _023323AC ; =ov02_02359650 mov r1, #5 ldr r4, _023323B8 ; =ov02_023596E4 ldr r3, _023323BC ; =ov02_02359920 str r1, [r0, #0xc] mov r2, #8 _02332388: ldmia r3!, {r0, r1} stmia r4!, {r0, r1} sub r2, r2, #1 bne _02332388 b _02332398 _02332392: mov r0, #6 mvn r0, r0 str r0, [sp] _02332398: ldr r0, [sp] add sp, #0x28 pop {r3, r4, r5, r6, r7, pc} nop _023323A0: .word ov02_0235963C _023323A4: .word ov02_02359824 _023323A8: .word ov02_02359850 _023323AC: .word ov02_02359650 _023323B0: .word ov02_02359888 _023323B4: .word ov02_02359664 _023323B8: .word ov02_023596E4 _023323BC: .word ov02_02359920 thumb_func_end ov02_02332238 thumb_func_start ov02_023323C0 ov02_023323C0: ; 0x023323C0 push {r4, r5, r6, r7, lr} sub sp, #0x2c mov r4, #0 sub r0, r4, #5 str r0, [sp, #8] ldr r0, _02332708 ; =ov02_023594D0 mov r1, #1 str r4, [sp, #0xc] str r4, [sp, #4] add r6, r4, #0 str r1, [r0, #0x1c] b _02332772 _023323D8: mov r0, #0x7d lsl r0, r0, #2 bl sub_02079B14 ldr r0, _02332708 ; =ov02_023594D0 ldr r0, [r0, #0x1c] cmp r0, #0xa bls _023323EA b _02332772 _023323EA: add r0, r0, r0 add r0, pc ldrh r0, [r0, #6] lsl r0, r0, #0x10 asr r0, r0, #0x10 add pc, r0 _023323F6: ; jump table .hword _02332772 - _023323F6 - 2 ; case 0 .hword _0233240C - _023323F6 - 2 ; case 1 .hword _0233242C - _023323F6 - 2 ; case 2 .hword _02332442 - _023323F6 - 2 ; case 3 .hword _02332490 - _023323F6 - 2 ; case 4 .hword _023324F8 - _023323F6 - 2 ; case 5 .hword _0233251C - _023323F6 - 2 ; case 6 .hword _023325C6 - _023323F6 - 2 ; case 7 .hword _02332622 - _023323F6 - 2 ; case 8 .hword _023326AA - _023323F6 - 2 ; case 9 .hword _02332748 - _023323F6 - 2 ; case 10 _0233240C: bl ov02_023317B4 str r0, [sp, #8] cmp r0, #1 beq _0233241A mov r6, #1 b _02332772 _0233241A: ldr r0, _02332708 ; =ov02_023594D0 mov r1, #3 str r1, [r0, #0x38] bl ov02_023343C0 ldr r0, _02332708 ; =ov02_023594D0 mov r1, #2 str r1, [r0, #0x1c] b _02332772 _0233242C: bl ov02_02331460 str r0, [sp, #8] cmp r0, #1 beq _0233243A mov r6, #1 b _02332772 _0233243A: ldr r0, _02332708 ; =ov02_023594D0 mov r1, #3 str r1, [r0, #0x1c] b _02332772 _02332442: mov r0, #2 add r1, r0, #0 mov r2, #0 blx socket add r4, r0, #0 bpl _0233245A mov r0, #1 mvn r0, r0 str r0, [sp, #8] mov r6, #1 b _02332772 _0233245A: add r5, sp, #0x24 mov r1, #0 str r1, [r5] str r1, [r5, #4] mov r3, #8 add r2, sp, #0x10 strb r3, [r2, #0x14] mov r3, #2 strb r3, [r2, #0x15] ldr r3, _0233270C ; =0x000001E6 strh r3, [r2, #0x16] str r1, [sp, #0x28] add r1, r5, #0 blx bind str r0, [sp, #8] cmp r0, #0 bge _02332488 mov r0, #1 mvn r0, r0 str r0, [sp, #8] mov r6, #1 b _02332772 _02332488: ldr r0, _02332708 ; =ov02_023594D0 mov r1, #4 str r1, [r0, #0x1c] b _02332772 _02332490: bl ov02_02334140 ldr r1, _02332710 ; =ov02_02353008 ldr r1, [r1, #0xc] cmp r0, r1 blo _023324AC add r0, r4, #0 blx CloseVeneer mov r0, #2 mvn r0, r0 str r0, [sp, #8] mov r6, #1 b _02332772 _023324AC: mov r1, #8 add r0, sp, #0x10 strb r1, [r0, #0xc] ldr r0, _02332714 ; =ov02_02359990 add r1, sp, #0x1c bl ov02_02331EB4 add r0, sp, #0x1c mov r2, #2 str r0, [sp] ldr r1, _02332718 ; =ov02_0235A204 add r0, r4, #0 lsl r2, r2, #0xa mov r3, #4 blx recvfrom cmp r0, #0 ble _023325AA ldr r0, _02332718 ; =ov02_0235A204 ldr r1, _0233271C ; =ov02_02359520 bl ov02_02331CE8 cmp r0, #0 beq _023325AA bl ov02_02334140 ldr r1, _02332720 ; =0x00007530 add r1, r0, r1 ldr r0, _02332710 ; =ov02_02353008 str r1, [r0, #0xc] ldr r0, _02332708 ; =ov02_023594D0 mov r1, #5 str r1, [r0, #0x1c] mov r1, #4 str r1, [r0, #0x38] bl ov02_023343C0 b _02332772 _023324F8: ldr r0, _02332718 ; =ov02_0235A204 bl ov02_02331E0C add r3, r0, #0 ldr r0, _02332708 ; =ov02_023594D0 ldr r2, _02332718 ; =ov02_0235A204 str r3, [r0, #0x14] add r0, r4, #0 add r1, sp, #0x1c bl ov02_02331A9C bl ov02_02334140 str r0, [sp, #0xc] ldr r0, _02332708 ; =ov02_023594D0 mov r1, #6 str r1, [r0, #0x1c] b _02332772 _0233251C: bl ov02_02334140 ldr r1, _02332710 ; =ov02_02353008 ldr r1, [r1, #0xc] cmp r0, r1 blo _02332538 add r0, r4, #0 blx CloseVeneer mov r0, #3 mvn r0, r0 str r0, [sp, #8] mov r6, #1 b _02332772 _02332538: add r0, sp, #0x1c mov r2, #2 str r0, [sp] ldr r1, _02332718 ; =ov02_0235A204 add r0, r4, #0 lsl r2, r2, #0xa mov r3, #4 blx recvfrom cmp r0, #0 ble _023325AC ldr r0, _02332718 ; =ov02_0235A204 ldr r2, _02332724 ; =ov02_02359A04 ldr r3, _02332714 ; =ov02_02359990 mov r1, #3 bl ov02_02331DBC cmp r0, #0 beq _023325AC ldr r0, _02332724 ; =ov02_02359A04 add r1, sp, #0x18 add r2, sp, #0x14 bl ov02_02331B68 add r5, r0, #0 ldr r1, [sp, #0x18] ldr r0, _02332728 ; =0x00000101 cmp r1, r0 bne _023325AA bl ov02_02334140 ldr r2, _0233272C ; =ov02_023599A0 str r0, [sp, #0x10] mov r1, #8 _0233257C: ldrb r0, [r5] add r5, r5, #1 strb r0, [r2] add r2, r2, #1 sub r1, r1, #1 bne _0233257C ldr r0, _02332730 ; =ov02_023599A8 add r1, sp, #0x10 mov r2, #4 bl ov02_02334118 mov r0, #0 str r0, [sp, #4] ldr r0, _02332708 ; =ov02_023594D0 mov r1, #7 str r1, [r0, #0x1c] mov r1, #5 str r1, [r0, #0x38] ldr r0, _02332710 ; =ov02_02353008 sub r1, r1, #6 str r1, [r0, #0xc] bl ov02_023343C0 _023325AA: b _02332772 _023325AC: bl ov02_02334140 mov r2, #0xfa ldr r1, [sp, #0xc] lsl r2, r2, #2 add r1, r1, r2 cmp r0, r1 bhs _023325BE b _02332772 _023325BE: ldr r0, _02332708 ; =ov02_023594D0 mov r1, #5 str r1, [r0, #0x1c] b _02332772 _023325C6: ldr r0, _02332724 ; =ov02_02359A04 ldr r1, _02332734 ; =0x00000102 ldr r2, _02332730 ; =ov02_023599A8 mov r3, #8 bl ov02_02331CC0 ldr r3, _02332708 ; =ov02_023594D0 ldr r2, _02332724 ; =ov02_02359A04 str r0, [r3, #0x34] ldr r0, _02332714 ; =ov02_02359990 mov r1, #4 str r0, [sp] ldr r0, _02332718 ; =ov02_0235A204 ldr r3, [r3, #0x34] bl ov02_02331B9C add r3, r0, #0 ldr r0, _02332708 ; =ov02_023594D0 ldr r2, _02332718 ; =ov02_0235A204 str r3, [r0, #0x14] add r0, r4, #0 add r1, sp, #0x1c bl ov02_02331A9C bl ov02_02334140 str r0, [sp, #0xc] mov r0, #0 mov r5, #0x12 ldr r7, _02332738 ; =ov02_02359724 add r1, r0, #0 add r2, r0, #0 add r3, r0, #0 mov ip, r5 _0233260A: stmia r7!, {r0, r1, r2, r3} mov r5, ip sub r5, r5, #1 stmia r7!, {r0, r1, r2, r3} mov ip, r5 bne _0233260A stmia r7!, {r0, r1, r2, r3} str r0, [r7] ldr r0, _02332708 ; =ov02_023594D0 mov r1, #8 str r1, [r0, #0x1c] b _02332772 _02332622: add r0, sp, #0x1c mov r2, #2 str r0, [sp] ldr r1, _02332718 ; =ov02_0235A204 add r0, r4, #0 lsl r2, r2, #0xa mov r3, #4 blx recvfrom cmp r0, #0 ble _02332678 ldr r0, _02332718 ; =ov02_0235A204 ldr r2, _02332724 ; =ov02_02359A04 ldr r3, _0233272C ; =ov02_023599A0 mov r1, #5 bl ov02_02331DBC ldr r1, _02332708 ; =ov02_023594D0 cmp r0, #0 str r0, [r1, #0x34] beq _02332678 ldr r0, _02332724 ; =ov02_02359A04 bl ov02_02331FB0 cmp r0, #0 beq _02332678 ldr r1, _0233273C ; =ov02_02359810 mov r0, #0x14 ldrsb r0, [r1, r0] cmp r0, #0 beq _02332666 mov r1, #1 ldr r0, _02332708 ; =ov02_023594D0 b _0233266A _02332666: ldr r0, _02332708 ; =ov02_023594D0 mov r1, #0 _0233266A: strb r1, [r0] mov r0, #0 str r0, [sp, #4] ldr r0, _02332708 ; =ov02_023594D0 mov r1, #9 str r1, [r0, #0x1c] b _02332772 _02332678: bl ov02_02334140 mov r2, #0xfa ldr r1, [sp, #0xc] lsl r2, r2, #2 add r1, r1, r2 cmp r0, r1 blo _02332772 ldr r0, [sp, #4] add r0, r0, #1 str r0, [sp, #4] cmp r0, #0xa blt _023326A2 add r0, r4, #0 blx CloseVeneer mov r0, #1 mvn r0, r0 str r0, [sp, #8] mov r6, #1 b _02332772 _023326A2: ldr r0, _02332708 ; =ov02_023594D0 mov r1, #7 str r1, [r0, #0x1c] b _02332772 _023326AA: ldr r0, _02332724 ; =ov02_02359A04 ldr r1, _02332740 ; =0x00000301 ldr r2, _02332744 ; =ov02_023594D0 mov r3, #1 bl ov02_02331CC0 ldr r3, _02332708 ; =ov02_023594D0 ldr r2, _02332724 ; =ov02_02359A04 str r0, [r3, #0x34] ldr r0, _0233272C ; =ov02_023599A0 mov r1, #6 str r0, [sp] ldr r0, _02332718 ; =ov02_0235A204 ldr r3, [r3, #0x34] bl ov02_02331B9C ldr r1, _02332708 ; =ov02_023594D0 str r0, [r1, #0x14] bl ov02_02331264 cmp r0, #7 beq _023326EC bl ov02_02334140 mov r1, #0xfa lsl r1, r1, #2 add r0, r0, r1 str r0, [sp, #0xc] mov r0, #0xa ldr r1, _02332708 ; =ov02_023594D0 str r0, [sp, #4] str r0, [r1, #0x1c] b _02332772 _023326EC: ldr r3, _02332708 ; =ov02_023594D0 ldr r2, _02332718 ; =ov02_0235A204 ldr r3, [r3, #0x14] add r0, r4, #0 add r1, sp, #0x1c bl ov02_02331A9C bl ov02_02334140 str r0, [sp, #0xc] ldr r0, _02332708 ; =ov02_023594D0 mov r1, #0xa str r1, [r0, #0x1c] b _02332772 .align 2, 0 _02332708: .word ov02_023594D0 _0233270C: .word 0x000001E6 _02332710: .word ov02_02353008 _02332714: .word ov02_02359990 _02332718: .word ov02_0235A204 _0233271C: .word ov02_02359520 _02332720: .word 0x00007530 _02332724: .word ov02_02359A04 _02332728: .word 0x00000101 _0233272C: .word ov02_023599A0 _02332730: .word ov02_023599A8 _02332734: .word 0x00000102 _02332738: .word ov02_02359724 _0233273C: .word ov02_02359810 _02332740: .word 0x00000301 _02332744: .word ov02_023594D0 _02332748: bl ov02_02334140 mov r2, #0xfa ldr r1, [sp, #0xc] lsl r2, r2, #2 add r1, r1, r2 cmp r0, r1 blo _02332772 ldr r0, [sp, #4] add r0, r0, #1 str r0, [sp, #4] cmp r0, #0xa blt _0233276C mov r6, #1 bl ov02_02332238 str r0, [sp, #8] b _02332772 _0233276C: ldr r0, _023327A0 ; =ov02_023594D0 mov r1, #9 str r1, [r0, #0x1c] _02332772: cmp r6, #0 bne _02332780 ldr r0, _023327A0 ; =ov02_023594D0 ldr r0, [r0, #0x10] cmp r0, #0 bne _02332780 b _023323D8 _02332780: cmp r4, #0 beq _0233278A add r0, r4, #0 blx CloseVeneer _0233278A: ldr r0, _023327A0 ; =ov02_023594D0 ldr r0, [r0, #0x10] cmp r0, #0 beq _02332798 mov r0, #7 mvn r0, r0 str r0, [sp, #8] _02332798: ldr r0, [sp, #8] add sp, #0x2c pop {r4, r5, r6, r7, pc} nop _023327A0: .word ov02_023594D0 thumb_func_end ov02_023323C0 thumb_func_start ov02_023327A4 ov02_023327A4: ; 0x023327A4 push {r4, lr} bl ov02_023323C0 add r4, r0, #0 ldr r0, _023327D4 ; =ov02_023594D0 str r4, [r0, #0x78] bl ov02_02331584 cmp r4, #1 bne _023327BE mov r1, #6 ldr r0, _023327D4 ; =ov02_023594D0 b _023327C2 _023327BE: ldr r0, _023327D4 ; =ov02_023594D0 mov r1, #7 _023327C2: str r1, [r0, #0x38] mov r1, #0 ldr r0, _023327D8 ; =ov02_02353008 mvn r1, r1 str r1, [r0, #0xc] bl ov02_023343C0 pop {r4, pc} nop _023327D4: .word ov02_023594D0 _023327D8: .word ov02_02353008 thumb_func_end ov02_023327A4 thumb_func_start ov02_023327DC ov02_023327DC: ; 0x023327DC push {r3, r4, r5, r6, r7, lr} sub sp, #0x1a8 str r0, [sp] ldr r0, _02332990 ; =0xA6A6A6A6 add r4, r2, #0 add r5, r1, #0 str r0, [sp, #0x48] str r0, [sp, #0x4c] mov r0, #7 add r1, r4, #0 tst r1, r0 bne _023327FA ldr r2, [sp, #0x1c0] tst r0, r2 beq _02332800 _023327FA: add sp, #0x1a8 mov r0, #0 pop {r3, r4, r5, r6, r7, pc} _02332800: lsr r0, r4, #3 str r0, [sp, #0x14] cmp r0, #2 bge _0233280E add sp, #0x1a8 mov r0, #0 pop {r3, r4, r5, r6, r7, pc} _0233280E: add r0, sp, #0x68 add r1, r3, #0 lsl r2, r2, #3 bl ov02_02332B94 str r0, [sp, #0x1c] ldr r0, [sp] add r1, r5, #0 add r0, #8 add r2, r4, #0 bl memcpy add r3, sp, #0x58 add r2, sp, #0x48 mov r1, #8 _0233282C: ldrb r0, [r2] add r2, r2, #1 strb r0, [r3] add r3, r3, #1 sub r1, r1, #1 bne _0233282C mov r0, #0 str r0, [sp, #0x20] ldr r0, [sp, #0x14] asr r0, r0, #0x1f str r0, [sp, #0x18] _02332842: ldr r0, [sp, #0x14] mov r4, #1 cmp r0, #1 bge _0233284C b _02332968 _0233284C: ldr r2, [sp, #0x20] ldr r1, [sp, #0x18] asr r3, r2, #0x1f bl _ll_mul str r0, [sp, #0xc] mov r0, #0 str r1, [sp, #8] str r0, [sp, #0x28] mov r0, #0 mov r1, #0 str r0, [sp, #0x30] add r0, r1, #0 orr r0, r1 str r0, [sp, #0x40] _0233286A: ldr r0, [sp] lsl r1, r4, #3 add r5, r0, r1 add r3, r5, #0 add r2, sp, #0x60 mov r1, #8 _02332876: ldrb r0, [r3] add r3, r3, #1 strb r0, [r2] add r2, r2, #1 sub r1, r1, #1 bne _02332876 add r2, sp, #0x58 ldr r1, [sp, #0x1c] add r0, sp, #0x68 add r3, r2, #0 bl ov02_02332FDC ldr r0, [sp, #0xc] asr r1, r4, #0x1f add r3, r4, r0 ldr r0, [sp, #8] adc r1, r0 mov r0, #0xff lsl r0, r0, #0x18 and r0, r1 lsr r0, r0, #0x18 str r0, [sp, #0x24] mov r0, #0xff lsl r0, r0, #0x10 and r0, r1 lsr r0, r0, #8 str r0, [sp, #0x2c] mov r0, #0xff lsl r0, r0, #8 mov r2, #0 and r0, r1 and r2, r3 lsl r6, r0, #8 lsr r2, r2, #0x18 str r2, [sp, #0x34] orr r2, r6 lsr r0, r0, #0x18 str r2, [sp, #0x34] str r0, [sp, #0x38] mov r0, #0xff mov r2, #0 and r0, r1 and r2, r3 lsl r6, r0, #0x18 lsr r2, r2, #8 str r2, [sp, #0x44] orr r2, r6 lsr r0, r0, #8 str r2, [sp, #0x44] str r0, [sp, #0x3c] mov r0, #0 add r2, r1, #0 and r2, r0 mov r0, #0xff lsl r0, r0, #0x18 and r0, r3 lsr r6, r0, #0x18 lsl r0, r0, #8 mov ip, r0 mov r0, #0 and r1, r0 mov r0, #0xff lsl r0, r0, #0x10 lsl r2, r2, #8 and r0, r3 orr r2, r6 lsr r6, r0, #8 lsl r7, r0, #0x18 mov r0, #0xff lsl r1, r1, #0x18 and r0, r3 orr r1, r6 lsl r6, r0, #0x18 mov r0, #0xff lsl r0, r0, #8 and r0, r3 lsl r0, r0, #8 orr r0, r6 orr r1, r0 ldr r0, [sp, #0x40] add r3, r7, #0 orr r3, r0 mov r0, ip orr r1, r2 add r2, r0, #0 ldr r0, [sp, #0x3c] orr r2, r3 orr r1, r0 ldr r0, [sp, #0x44] orr r2, r0 ldr r0, [sp, #0x38] orr r1, r0 ldr r0, [sp, #0x34] orr r2, r0 ldr r0, [sp, #0x30] orr r1, r0 ldr r0, [sp, #0x2c] orr r2, r0 ldr r0, [sp, #0x28] orr r1, r0 ldr r0, [sp, #0x24] str r1, [sp, #0x54] orr r0, r2 str r0, [sp, #0x50] add r0, sp, #0x58 add r1, sp, #0x50 add r2, r0, #0 bl ov02_02332B4C add r2, sp, #0x60 mov r1, #8 _02332954: ldrb r0, [r2] add r2, r2, #1 strb r0, [r5] add r5, r5, #1 sub r1, r1, #1 bne _02332954 ldr r0, [sp, #0x14] add r4, r4, #1 cmp r4, r0 ble _0233286A _02332968: ldr r0, [sp, #0x20] add r0, r0, #1 str r0, [sp, #0x20] cmp r0, #6 bge _02332974 b _02332842 _02332974: add r3, sp, #0x58 mov r2, #8 _02332978: ldrb r1, [r3] ldr r0, [sp] add r3, r3, #1 strb r1, [r0] add r0, r0, #1 str r0, [sp] sub r2, r2, #1 bne _02332978 mov r0, #1 add sp, #0x1a8 pop {r3, r4, r5, r6, r7, pc} nop _02332990: .word 0xA6A6A6A6 thumb_func_end ov02_023327DC thumb_func_start ov02_02332994 ov02_02332994: ; 0x02332994 push {r3, r4, r5, r6, r7, lr} sub sp, #0x1a8 str r0, [sp] mov r0, #1 str r0, [sp, #0x1c] ldr r0, _02332B48 ; =0xA6A6A6A6 add r4, r2, #0 add r5, r1, #0 str r0, [sp, #0x48] str r0, [sp, #0x4c] mov r0, #7 add r1, r4, #0 tst r1, r0 bne _023329B6 ldr r2, [sp, #0x1c0] tst r0, r2 beq _023329BC _023329B6: add sp, #0x1a8 mov r0, #0 pop {r3, r4, r5, r6, r7, pc} _023329BC: sub r0, r4, #1 lsr r0, r0, #3 str r0, [sp, #0x14] cmp r0, #2 bge _023329CC add sp, #0x1a8 mov r0, #0 pop {r3, r4, r5, r6, r7, pc} _023329CC: add r0, sp, #0x68 add r1, r3, #0 lsl r2, r2, #3 bl ov02_02332E4C str r0, [sp, #0x20] add r3, sp, #0x58 add r2, r5, #0 mov r1, #8 _023329DE: ldrb r0, [r2] add r2, r2, #1 strb r0, [r3] add r3, r3, #1 sub r1, r1, #1 bne _023329DE add r5, #8 ldr r0, [sp] add r1, r5, #0 sub r2, r4, #1 bl memcpy mov r0, #5 str r0, [sp, #0x24] ldr r0, [sp, #0x14] asr r0, r0, #0x1f str r0, [sp, #0x18] _02332A00: ldr r4, [sp, #0x14] add r0, r4, #0 cmp r0, #0 bgt _02332A0A b _02332B24 _02332A0A: ldr r2, [sp, #0x24] ldr r1, [sp, #0x18] asr r3, r2, #0x1f bl _ll_mul str r0, [sp, #0xc] mov r0, #0 str r1, [sp, #8] str r0, [sp, #0x2c] mov r0, #0 mov r1, #0 str r0, [sp, #0x34] add r0, r1, #0 orr r0, r1 str r0, [sp, #0x40] _02332A28: ldr r0, [sp, #0xc] asr r1, r4, #0x1f add r5, r4, r0 ldr r0, [sp, #8] adc r1, r0 mov r0, #0xff lsl r0, r0, #0x18 and r0, r1 lsr r0, r0, #0x18 str r0, [sp, #0x28] mov r0, #0xff lsl r0, r0, #0x10 and r0, r1 lsr r0, r0, #8 str r0, [sp, #0x30] mov r0, #0xff lsl r0, r0, #8 add r2, r1, #0 and r2, r0 mov r0, #0 add r3, r5, #0 and r3, r0 lsl r0, r2, #8 lsr r3, r3, #0x18 orr r3, r0 lsr r0, r2, #0x18 str r0, [sp, #0x38] mov r0, #0xff mov r2, #0 and r0, r1 and r2, r5 lsl r6, r0, #0x18 lsr r2, r2, #8 str r2, [sp, #0x44] orr r2, r6 lsr r0, r0, #8 str r2, [sp, #0x44] str r0, [sp, #0x3c] mov r0, #0 add r2, r1, #0 and r2, r0 mov r0, #0xff lsl r0, r0, #0x18 and r0, r5 lsr r6, r0, #0x18 lsl r0, r0, #8 mov ip, r0 mov r0, #0 and r1, r0 mov r0, #0xff lsl r0, r0, #0x10 lsl r2, r2, #8 and r0, r5 orr r2, r6 lsr r6, r0, #8 lsl r7, r0, #0x18 mov r0, #0xff lsl r1, r1, #0x18 and r0, r5 orr r1, r6 lsl r6, r0, #0x18 mov r0, #0xff lsl r0, r0, #8 and r0, r5 lsl r0, r0, #8 orr r0, r6 orr r1, r0 ldr r0, [sp, #0x40] add r5, r7, #0 orr r5, r0 mov r0, ip orr r1, r2 add r2, r0, #0 ldr r0, [sp, #0x3c] orr r2, r5 orr r1, r0 ldr r0, [sp, #0x44] orr r2, r0 ldr r0, [sp, #0x38] orr r2, r3 orr r1, r0 ldr r0, [sp, #0x34] orr r1, r0 ldr r0, [sp, #0x30] orr r2, r0 ldr r0, [sp, #0x2c] orr r1, r0 ldr r0, [sp, #0x28] str r1, [sp, #0x54] orr r0, r2 str r0, [sp, #0x50] add r0, sp, #0x58 add r1, sp, #0x50 add r2, r0, #0 bl ov02_02332B4C sub r0, r4, #1 lsl r1, r0, #3 ldr r0, [sp] add r2, sp, #0x60 add r5, r0, r1 add r3, r5, #0 mov r1, #8 _02332AF6: ldrb r0, [r3] add r3, r3, #1 strb r0, [r2] add r2, r2, #1 sub r1, r1, #1 bne _02332AF6 add r2, sp, #0x58 ldr r1, [sp, #0x20] add r0, sp, #0x68 add r3, r2, #0 bl ov02_02333398 add r2, sp, #0x60 mov r1, #8 _02332B12: ldrb r0, [r2] add r2, r2, #1 strb r0, [r5] add r5, r5, #1 sub r1, r1, #1 bne _02332B12 sub r4, r4, #1 cmp r4, #0 bgt _02332A28 _02332B24: ldr r0, [sp, #0x24] sub r0, r0, #1 str r0, [sp, #0x24] bmi _02332B2E b _02332A00 _02332B2E: add r0, sp, #0x48 add r1, sp, #0x58 mov r2, #8 bl memcmp cmp r0, #0 beq _02332B40 mov r0, #0 str r0, [sp, #0x1c] _02332B40: ldr r0, [sp, #0x1c] add sp, #0x1a8 pop {r3, r4, r5, r6, r7, pc} nop _02332B48: .word 0xA6A6A6A6 thumb_func_end ov02_02332994 thumb_func_start ov02_02332B4C ov02_02332B4C: ; 0x02332B4C push {r3, r4} ldrb r4, [r0] ldrb r3, [r1] eor r3, r4 strb r3, [r2] ldrb r4, [r0, #1] ldrb r3, [r1, #1] eor r3, r4 strb r3, [r2, #1] ldrb r4, [r0, #2] ldrb r3, [r1, #2] eor r3, r4 strb r3, [r2, #2] ldrb r4, [r0, #3] ldrb r3, [r1, #3] eor r3, r4 strb r3, [r2, #3] ldrb r4, [r0, #4] ldrb r3, [r1, #4] eor r3, r4 strb r3, [r2, #4] ldrb r4, [r0, #5] ldrb r3, [r1, #5] eor r3, r4 strb r3, [r2, #5] ldrb r4, [r0, #6] ldrb r3, [r1, #6] eor r3, r4 strb r3, [r2, #6] ldrb r3, [r0, #7] ldrb r0, [r1, #7] eor r0, r3 strb r0, [r2, #7] pop {r3, r4} bx lr .align 2, 0 thumb_func_end ov02_02332B4C thumb_func_start ov02_02332B94 ov02_02332B94: ; 0x02332B94 push {r3, r4, r5, r6, r7, lr} sub sp, #0x18 add r3, r1, #0 add r1, r2, #0 mov r2, #0 str r2, [sp] ldrb r2, [r3, #2] ldrb r6, [r3, #1] ldrb r5, [r3, #3] lsl r4, r2, #8 ldrb r2, [r3] lsl r6, r6, #0x10 lsl r2, r2, #0x18 eor r2, r6 eor r2, r4 eor r2, r5 str r2, [r0] ldrb r2, [r3, #6] ldrb r6, [r3, #5] ldrb r5, [r3, #7] lsl r4, r2, #8 ldrb r2, [r3, #4] lsl r6, r6, #0x10 lsl r2, r2, #0x18 eor r2, r6 eor r2, r4 eor r2, r5 str r2, [r0, #4] ldrb r2, [r3, #0xa] ldrb r6, [r3, #9] ldrb r5, [r3, #0xb] lsl r4, r2, #8 ldrb r2, [r3, #8] lsl r6, r6, #0x10 lsl r2, r2, #0x18 eor r2, r6 eor r2, r4 eor r2, r5 str r2, [r0, #8] ldrb r2, [r3, #0xe] ldrb r6, [r3, #0xd] ldrb r5, [r3, #0xf] lsl r4, r2, #8 ldrb r2, [r3, #0xc] lsl r6, r6, #0x10 lsl r2, r2, #0x18 eor r2, r6 eor r2, r4 eor r2, r5 str r2, [r0, #0xc] cmp r1, #0x80 bne _02332C78 ldr r5, _02332E44 ; =ov02_0234FC64 ldr r2, _02332E48 ; =ov02_0235188C _02332C00: ldr r4, [r0, #0xc] ldr r3, [r5] lsr r1, r4, #0x18 lsl r1, r1, #2 ldr r1, [r2, r1] add r5, r5, #4 lsl r1, r1, #0x18 lsr r1, r1, #0x18 str r1, [sp, #8] lsl r1, r4, #0x18 lsr r1, r1, #0x16 ldr r6, [r2, r1] mov r1, #0xff lsl r1, r1, #8 add r7, r6, #0 and r7, r1 ldr r1, [r0] str r1, [sp, #4] lsr r1, r4, #0x10 lsl r1, r1, #0x18 lsr r1, r1, #0x16 ldr r6, [r2, r1] mov r1, #0xff lsl r1, r1, #0x18 lsr r4, r4, #8 and r6, r1 ldr r1, [sp, #4] lsl r4, r4, #0x18 lsr r4, r4, #0x16 eor r1, r6 ldr r6, [r2, r4] mov r4, #0xff lsl r4, r4, #0x10 and r4, r6 eor r1, r4 add r4, r7, #0 eor r4, r1 ldr r1, [sp, #8] eor r1, r4 eor r3, r1 str r3, [r0, #0x10] ldr r1, [r0, #4] eor r3, r1 str r3, [r0, #0x14] ldr r1, [r0, #8] eor r3, r1 str r3, [r0, #0x18] ldr r1, [r0, #0xc] eor r1, r3 str r1, [r0, #0x1c] ldr r1, [sp] add r1, r1, #1 str r1, [sp] cmp r1, #0xa blt _02332C74 add sp, #0x18 mov r0, #0xa pop {r3, r4, r5, r6, r7, pc} _02332C74: add r0, #0x10 b _02332C00 _02332C78: ldrb r2, [r3, #0x12] ldrb r6, [r3, #0x11] ldrb r5, [r3, #0x13] lsl r4, r2, #8 ldrb r2, [r3, #0x10] lsl r6, r6, #0x10 lsl r2, r2, #0x18 eor r2, r6 eor r2, r4 eor r2, r5 str r2, [r0, #0x10] ldrb r2, [r3, #0x16] ldrb r6, [r3, #0x15] ldrb r5, [r3, #0x17] lsl r4, r2, #8 ldrb r2, [r3, #0x14] lsl r6, r6, #0x10 lsl r2, r2, #0x18 eor r2, r6 eor r2, r4 eor r2, r5 str r2, [r0, #0x14] cmp r1, #0xc0 bne _02332D34 ldr r5, _02332E44 ; =ov02_0234FC64 ldr r3, _02332E48 ; =ov02_0235188C _02332CAC: ldr r4, [r0, #0x14] ldr r6, [r5] lsr r1, r4, #0x18 lsl r1, r1, #2 ldr r1, [r3, r1] add r5, r5, #4 lsl r1, r1, #0x18 lsr r1, r1, #0x18 str r1, [sp, #0xc] lsl r1, r4, #0x18 lsr r1, r1, #0x16 ldr r2, [r3, r1] mov r1, #0xff lsl r1, r1, #8 add r7, r2, #0 and r7, r1 ldr r1, [r0] mov lr, r1 lsr r1, r4, #0x10 lsl r1, r1, #0x18 lsr r1, r1, #0x16 ldr r2, [r3, r1] mov r1, #0xff lsl r1, r1, #0x18 and r1, r2 mov r2, lr eor r1, r2 lsr r2, r4, #8 lsl r2, r2, #0x18 lsr r2, r2, #0x16 ldr r4, [r3, r2] mov r2, #0xff lsl r2, r2, #0x10 and r2, r4 eor r1, r2 add r2, r7, #0 eor r2, r1 ldr r1, [sp, #0xc] eor r1, r2 add r2, r6, #0 eor r2, r1 str r2, [r0, #0x18] ldr r1, [r0, #4] eor r2, r1 str r2, [r0, #0x1c] ldr r1, [r0, #8] eor r2, r1 str r2, [r0, #0x20] ldr r1, [r0, #0xc] eor r1, r2 str r1, [r0, #0x24] ldr r1, [sp] add r1, r1, #1 str r1, [sp] cmp r1, #8 blt _02332D22 add sp, #0x18 mov r0, #0xc pop {r3, r4, r5, r6, r7, pc} _02332D22: ldr r2, [r0, #0x10] ldr r1, [r0, #0x24] eor r2, r1 str r2, [r0, #0x28] ldr r1, [r0, #0x14] eor r1, r2 str r1, [r0, #0x2c] add r0, #0x18 b _02332CAC _02332D34: ldrb r2, [r3, #0x1a] ldrb r6, [r3, #0x19] ldrb r5, [r3, #0x1b] lsl r4, r2, #8 ldrb r2, [r3, #0x18] lsl r6, r6, #0x10 lsl r2, r2, #0x18 eor r2, r6 eor r2, r4 eor r2, r5 str r2, [r0, #0x18] ldrb r2, [r3, #0x1e] ldrb r5, [r3, #0x1f] lsl r4, r2, #8 ldrb r2, [r3, #0x1c] ldrb r3, [r3, #0x1d] lsl r2, r2, #0x18 lsl r3, r3, #0x10 eor r2, r3 eor r2, r4 eor r2, r5 str r2, [r0, #0x1c] mov r2, #1 lsl r2, r2, #8 cmp r1, r2 bne _02332E3E ldr r5, _02332E44 ; =ov02_0234FC64 ldr r3, _02332E48 ; =ov02_0235188C _02332D6C: ldr r4, [r0, #0x1c] ldr r6, [r5] lsr r1, r4, #0x18 lsl r1, r1, #2 ldr r1, [r3, r1] add r5, r5, #4 lsl r1, r1, #0x18 lsr r1, r1, #0x18 str r1, [sp, #0x10] lsl r1, r4, #0x18 lsr r1, r1, #0x16 ldr r2, [r3, r1] mov r1, #0xff lsl r1, r1, #8 add r7, r2, #0 and r7, r1 ldr r1, [r0] mov ip, r1 lsr r1, r4, #0x10 lsl r1, r1, #0x18 lsr r1, r1, #0x16 ldr r2, [r3, r1] mov r1, #0xff lsl r1, r1, #0x18 and r1, r2 mov r2, ip eor r1, r2 lsr r2, r4, #8 lsl r2, r2, #0x18 lsr r2, r2, #0x16 ldr r4, [r3, r2] mov r2, #0xff lsl r2, r2, #0x10 and r2, r4 eor r1, r2 add r2, r7, #0 eor r2, r1 ldr r1, [sp, #0x10] eor r1, r2 add r2, r6, #0 eor r2, r1 str r2, [r0, #0x20] ldr r1, [r0, #4] eor r2, r1 str r2, [r0, #0x24] ldr r1, [r0, #8] eor r2, r1 str r2, [r0, #0x28] ldr r1, [r0, #0xc] eor r1, r2 str r1, [r0, #0x2c] ldr r1, [sp] add r1, r1, #1 str r1, [sp] cmp r1, #7 blt _02332DE2 add sp, #0x18 mov r0, #0xe pop {r3, r4, r5, r6, r7, pc} _02332DE2: ldr r6, [r0, #0x2c] ldr r7, [r0, #0x10] lsl r1, r6, #0x18 lsr r1, r1, #0x16 ldr r1, [r3, r1] lsl r1, r1, #0x18 lsr r4, r1, #0x18 lsr r1, r6, #8 lsl r1, r1, #0x18 lsr r1, r1, #0x16 ldr r2, [r3, r1] mov r1, #0xff lsl r1, r1, #8 and r1, r2 str r1, [sp, #0x14] lsr r1, r6, #0x18 lsl r1, r1, #2 ldr r2, [r3, r1] mov r1, #0xff lsl r1, r1, #0x18 and r1, r2 lsr r2, r6, #0x10 lsl r2, r2, #0x18 lsr r2, r2, #0x16 ldr r6, [r3, r2] mov r2, #0xff lsl r2, r2, #0x10 eor r1, r7 and r2, r6 eor r2, r1 ldr r1, [sp, #0x14] eor r1, r2 add r2, r4, #0 eor r2, r1 str r2, [r0, #0x30] ldr r1, [r0, #0x14] eor r2, r1 str r2, [r0, #0x34] ldr r1, [r0, #0x18] eor r2, r1 str r2, [r0, #0x38] ldr r1, [r0, #0x1c] eor r1, r2 str r1, [r0, #0x3c] add r0, #0x20 b _02332D6C _02332E3E: ldr r0, [sp] add sp, #0x18 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _02332E44: .word ov02_0234FC64 _02332E48: .word ov02_0235188C thumb_func_end ov02_02332B94 thumb_func_start ov02_02332E4C ov02_02332E4C: ; 0x02332E4C push {r3, r4, r5, r6, r7, lr} add r4, r0, #0 bl ov02_02332B94 mov ip, r0 mov r1, ip lsl r6, r1, #2 mov r0, #0 cmp r6, #0 ble _02332E92 lsl r2, r6, #2 add r1, r4, #0 add r2, r4, r2 _02332E66: ldr r5, [r1] ldr r3, [r2] add r0, r0, #4 str r3, [r1] str r5, [r2] ldr r5, [r1, #4] ldr r3, [r2, #4] sub r6, r6, #4 str r3, [r1, #4] str r5, [r2, #4] ldr r5, [r1, #8] ldr r3, [r2, #8] str r3, [r1, #8] str r5, [r2, #8] ldr r5, [r1, #0xc] ldr r3, [r2, #0xc] str r3, [r1, #0xc] str r5, [r2, #0xc] add r1, #0x10 sub r2, #0x10 cmp r0, r6 blt _02332E66 _02332E92: mov r0, #1 str r0, [sp] mov r0, ip cmp r0, #1 bgt _02332E9E b _02332FC2 _02332E9E: ldr r2, _02332FC8 ; =ov02_0235188C ldr r7, _02332FCC ; =ov02_0235008C _02332EA2: add r4, #0x10 ldr r3, [r4] lsl r0, r3, #0x18 lsr r0, r0, #0x16 ldr r0, [r2, r0] lsl r0, r0, #0x18 lsr r0, r0, #0x16 ldr r1, [r7, r0] lsr r0, r3, #8 lsl r0, r0, #0x18 lsr r0, r0, #0x16 ldr r0, [r2, r0] lsl r0, r0, #0x18 lsr r5, r0, #0x16 ldr r0, _02332FD0 ; =ov02_0234FC8C ldr r6, [r0, r5] lsr r0, r3, #0x18 lsl r0, r0, #2 lsr r3, r3, #0x10 ldr r0, [r2, r0] lsl r3, r3, #0x18 lsr r3, r3, #0x16 lsl r0, r0, #0x18 ldr r3, [r2, r3] lsr r5, r0, #0x16 ldr r0, _02332FD4 ; =ov02_02351C8C lsl r3, r3, #0x18 ldr r0, [r0, r5] lsr r5, r3, #0x16 ldr r3, _02332FD8 ; =ov02_0235208C ldr r3, [r3, r5] eor r0, r3 eor r0, r6 eor r0, r1 str r0, [r4] ldr r3, [r4, #4] lsl r0, r3, #0x18 lsr r0, r0, #0x16 ldr r0, [r2, r0] lsl r0, r0, #0x18 lsr r0, r0, #0x16 ldr r1, [r7, r0] lsr r0, r3, #8 lsl r0, r0, #0x18 lsr r0, r0, #0x16 ldr r0, [r2, r0] lsl r0, r0, #0x18 lsr r5, r0, #0x16 ldr r0, _02332FD0 ; =ov02_0234FC8C ldr r6, [r0, r5] lsr r0, r3, #0x18 lsl r0, r0, #2 lsr r3, r3, #0x10 ldr r0, [r2, r0] lsl r3, r3, #0x18 lsr r3, r3, #0x16 lsl r0, r0, #0x18 ldr r3, [r2, r3] lsr r5, r0, #0x16 ldr r0, _02332FD4 ; =ov02_02351C8C lsl r3, r3, #0x18 ldr r0, [r0, r5] lsr r5, r3, #0x16 ldr r3, _02332FD8 ; =ov02_0235208C ldr r3, [r3, r5] eor r0, r3 eor r0, r6 eor r0, r1 str r0, [r4, #4] ldr r3, [r4, #8] lsl r0, r3, #0x18 lsr r0, r0, #0x16 ldr r0, [r2, r0] lsl r0, r0, #0x18 lsr r0, r0, #0x16 ldr r1, [r7, r0] lsr r0, r3, #8 lsl r0, r0, #0x18 lsr r0, r0, #0x16 ldr r0, [r2, r0] lsl r0, r0, #0x18 lsr r5, r0, #0x16 ldr r0, _02332FD0 ; =ov02_0234FC8C ldr r6, [r0, r5] lsr r0, r3, #0x18 lsl r0, r0, #2 lsr r3, r3, #0x10 ldr r0, [r2, r0] lsl r3, r3, #0x18 lsr r3, r3, #0x16 lsl r0, r0, #0x18 ldr r3, [r2, r3] lsr r5, r0, #0x16 ldr r0, _02332FD4 ; =ov02_02351C8C lsl r3, r3, #0x18 ldr r0, [r0, r5] lsr r5, r3, #0x16 ldr r3, _02332FD8 ; =ov02_0235208C ldr r3, [r3, r5] eor r0, r3 eor r0, r6 eor r0, r1 str r0, [r4, #8] ldr r3, [r4, #0xc] lsl r0, r3, #0x18 lsr r0, r0, #0x16 ldr r0, [r2, r0] lsl r0, r0, #0x18 lsr r0, r0, #0x16 ldr r1, [r7, r0] lsr r0, r3, #8 lsl r0, r0, #0x18 lsr r0, r0, #0x16 ldr r0, [r2, r0] lsl r0, r0, #0x18 lsr r5, r0, #0x16 ldr r0, _02332FD0 ; =ov02_0234FC8C ldr r6, [r0, r5] lsr r0, r3, #0x18 lsl r0, r0, #2 lsr r3, r3, #0x10 ldr r0, [r2, r0] lsl r3, r3, #0x18 lsr r3, r3, #0x16 lsl r0, r0, #0x18 ldr r3, [r2, r3] lsr r5, r0, #0x16 ldr r0, _02332FD4 ; =ov02_02351C8C lsl r3, r3, #0x18 ldr r0, [r0, r5] lsr r5, r3, #0x16 ldr r3, _02332FD8 ; =ov02_0235208C ldr r3, [r3, r5] eor r0, r3 eor r0, r6 eor r0, r1 str r0, [r4, #0xc] ldr r0, [sp] add r1, r0, #1 mov r0, ip str r1, [sp] cmp r1, r0 bge _02332FC2 b _02332EA2 _02332FC2: mov r0, ip pop {r3, r4, r5, r6, r7, pc} nop _02332FC8: .word ov02_0235188C _02332FCC: .word ov02_0235008C _02332FD0: .word ov02_0234FC8C _02332FD4: .word ov02_02351C8C _02332FD8: .word ov02_0235208C thumb_func_end ov02_02332E4C thumb_func_start ov02_02332FDC ov02_02332FDC: ; 0x02332FDC push {r4, r5, r6, r7, lr} sub sp, #0x4c add r7, r1, #0 add r1, r2, #0 ldrb r2, [r1, #2] str r3, [sp] ldrb r6, [r1, #1] lsl r3, r2, #8 ldrb r2, [r1] ldrb r4, [r1, #3] lsl r6, r6, #0x10 lsl r2, r2, #0x18 eor r2, r6 eor r2, r3 eor r2, r4 ldr r5, [r0] ldrb r6, [r1, #5] eor r2, r5 str r2, [sp, #0xc] ldrb r2, [r1, #6] ldrb r4, [r1, #7] lsl r6, r6, #0x10 lsl r3, r2, #8 ldrb r2, [r1, #4] ldr r5, [r0, #4] lsl r2, r2, #0x18 eor r2, r6 eor r2, r3 eor r2, r4 eor r2, r5 str r2, [sp, #8] ldrb r2, [r1, #0xa] ldrb r6, [r1, #9] ldrb r4, [r1, #0xb] lsl r3, r2, #8 ldrb r2, [r1, #8] lsl r6, r6, #0x10 ldr r5, [r0, #8] lsl r2, r2, #0x18 eor r2, r6 eor r2, r3 eor r2, r4 eor r5, r2 ldrb r2, [r1, #0xe] ldrb r4, [r1, #0xf] ldr r6, [r0, #0xc] lsl r3, r2, #8 ldrb r2, [r1, #0xc] ldrb r1, [r1, #0xd] lsl r2, r2, #0x18 lsl r1, r1, #0x10 eor r1, r2 eor r1, r3 eor r1, r4 eor r6, r1 asr r1, r7, #1 str r1, [sp, #4] _0233304E: lsl r1, r6, #0x18 lsr r2, r1, #0x16 ldr r1, _02333384 ; =ov02_0235148C ldr r4, [r0, #0x10] ldr r3, [r1, r2] lsr r1, r5, #8 lsl r1, r1, #0x18 lsr r2, r1, #0x16 ldr r1, _02333388 ; =ov02_0235108C ldr r1, [r1, r2] str r1, [sp, #0x40] ldr r1, [sp, #0xc] lsr r1, r1, #0x18 lsl r2, r1, #2 ldr r1, _0233338C ; =ov02_0235088C ldr r7, [r1, r2] ldr r1, [sp, #8] lsr r1, r1, #0x10 lsl r1, r1, #0x18 lsr r2, r1, #0x16 ldr r1, _02333390 ; =ov02_02350C8C ldr r1, [r1, r2] add r2, r7, #0 eor r2, r1 ldr r1, [sp, #0x40] eor r1, r2 eor r1, r3 eor r1, r4 str r1, [sp, #0x10] ldr r1, [sp, #0xc] ldr r4, [r0, #0x14] lsl r1, r1, #0x18 lsr r2, r1, #0x16 ldr r1, _02333384 ; =ov02_0235148C ldr r3, [r1, r2] lsr r1, r6, #8 lsl r1, r1, #0x18 lsr r2, r1, #0x16 ldr r1, _02333388 ; =ov02_0235108C ldr r1, [r1, r2] str r1, [sp, #0x48] ldr r1, [sp, #8] lsr r1, r1, #0x18 lsl r2, r1, #2 ldr r1, _0233338C ; =ov02_0235088C ldr r7, [r1, r2] lsr r1, r5, #0x10 lsl r1, r1, #0x18 lsr r2, r1, #0x16 ldr r1, _02333390 ; =ov02_02350C8C ldr r1, [r1, r2] add r2, r7, #0 eor r2, r1 ldr r1, [sp, #0x48] eor r1, r2 eor r1, r3 eor r1, r4 str r1, [sp, #0x44] ldr r1, [sp, #8] ldr r4, [r0, #0x18] lsl r1, r1, #0x18 lsr r2, r1, #0x16 ldr r1, _02333384 ; =ov02_0235148C ldr r3, [r1, r2] ldr r1, [sp, #0xc] lsr r1, r1, #8 lsl r1, r1, #0x18 lsr r2, r1, #0x16 ldr r1, _02333388 ; =ov02_0235108C ldr r1, [r1, r2] str r1, [sp, #0x14] lsr r1, r5, #0x18 lsl r2, r1, #2 ldr r1, _0233338C ; =ov02_0235088C ldr r7, [r1, r2] lsr r1, r6, #0x10 lsl r1, r1, #0x18 lsr r2, r1, #0x16 ldr r1, _02333390 ; =ov02_02350C8C ldr r1, [r1, r2] add r2, r7, #0 eor r2, r1 ldr r1, [sp, #0x14] ldr r7, [r0, #0x1c] eor r1, r2 eor r1, r3 add r2, r4, #0 eor r2, r1 lsl r1, r5, #0x18 lsr r3, r1, #0x16 ldr r1, _02333384 ; =ov02_0235148C add r0, #0x20 ldr r3, [r1, r3] ldr r1, [sp, #8] lsr r1, r1, #8 lsl r1, r1, #0x18 lsr r4, r1, #0x16 ldr r1, _02333388 ; =ov02_0235108C ldr r1, [r1, r4] lsr r4, r6, #0x18 lsl r5, r4, #2 ldr r4, _0233338C ; =ov02_0235088C ldr r6, [r4, r5] ldr r4, [sp, #0xc] lsr r4, r4, #0x10 lsl r4, r4, #0x18 lsr r5, r4, #0x16 ldr r4, _02333390 ; =ov02_02350C8C ldr r4, [r4, r5] eor r4, r6 eor r1, r4 eor r1, r3 ldr r3, [sp, #4] eor r1, r7 sub r3, r3, #1 str r3, [sp, #4] beq _02333218 lsl r3, r1, #0x18 lsr r5, r3, #0x16 ldr r3, _02333384 ; =ov02_0235148C ldr r4, [r0] ldr r3, [r3, r5] lsr r5, r2, #8 lsl r5, r5, #0x18 lsr r6, r5, #0x16 ldr r5, _02333388 ; =ov02_0235108C ldr r7, [r5, r6] ldr r5, [sp, #0x10] lsr r5, r5, #0x18 lsl r6, r5, #2 ldr r5, _0233338C ; =ov02_0235088C ldr r5, [r5, r6] str r5, [sp, #0x18] ldr r5, [sp, #0x44] lsr r5, r5, #0x10 lsl r5, r5, #0x18 lsr r6, r5, #0x16 ldr r5, _02333390 ; =ov02_02350C8C ldr r6, [r5, r6] ldr r5, [sp, #0x18] eor r5, r6 eor r5, r7 eor r3, r5 eor r3, r4 str r3, [sp, #0xc] ldr r3, [sp, #0x10] ldr r4, [r0, #4] lsl r3, r3, #0x18 lsr r5, r3, #0x16 ldr r3, _02333384 ; =ov02_0235148C ldr r3, [r3, r5] lsr r5, r1, #8 lsl r5, r5, #0x18 lsr r6, r5, #0x16 ldr r5, _02333388 ; =ov02_0235108C ldr r7, [r5, r6] ldr r5, [sp, #0x44] lsr r5, r5, #0x18 lsl r6, r5, #2 ldr r5, _0233338C ; =ov02_0235088C ldr r5, [r5, r6] str r5, [sp, #0x1c] lsr r5, r2, #0x10 lsl r5, r5, #0x18 lsr r6, r5, #0x16 ldr r5, _02333390 ; =ov02_02350C8C ldr r6, [r5, r6] ldr r5, [sp, #0x1c] eor r5, r6 eor r5, r7 eor r3, r5 eor r3, r4 str r3, [sp, #8] ldr r3, [sp, #0x44] ldr r6, [r0, #8] lsl r3, r3, #0x18 lsr r4, r3, #0x16 ldr r3, _02333384 ; =ov02_0235148C ldr r5, [r3, r4] ldr r3, [sp, #0x10] lsr r3, r3, #8 lsl r3, r3, #0x18 lsr r4, r3, #0x16 ldr r3, _02333388 ; =ov02_0235108C ldr r3, [r3, r4] str r3, [sp, #0x20] lsr r3, r2, #0x18 lsl r4, r3, #2 ldr r3, _0233338C ; =ov02_0235088C lsl r2, r2, #0x18 ldr r7, [r3, r4] lsr r3, r1, #0x10 lsl r3, r3, #0x18 lsr r4, r3, #0x16 ldr r3, _02333390 ; =ov02_02350C8C lsr r1, r1, #0x18 ldr r3, [r3, r4] add r4, r7, #0 eor r4, r3 ldr r3, [sp, #0x20] ldr r7, [r0, #0xc] eor r3, r4 eor r3, r5 add r5, r6, #0 eor r5, r3 lsr r3, r2, #0x16 ldr r2, _02333384 ; =ov02_0235148C ldr r3, [r2, r3] ldr r2, [sp, #0x44] lsr r2, r2, #8 lsl r2, r2, #0x18 lsr r4, r2, #0x16 ldr r2, _02333388 ; =ov02_0235108C ldr r2, [r2, r4] lsl r4, r1, #2 ldr r1, _0233338C ; =ov02_0235088C ldr r6, [r1, r4] ldr r1, [sp, #0x10] lsr r1, r1, #0x10 lsl r1, r1, #0x18 lsr r4, r1, #0x16 ldr r1, _02333390 ; =ov02_02350C8C ldr r1, [r1, r4] eor r1, r6 eor r1, r2 eor r1, r3 add r6, r7, #0 eor r6, r1 b _0233304E _02333218: ldr r3, [r0] mov r6, #0xff str r3, [sp, #0x24] lsl r3, r1, #0x18 lsr r4, r3, #0x16 ldr r3, _02333394 ; =ov02_0235188C lsl r6, r6, #0x10 ldr r4, [r3, r4] lsl r4, r4, #0x18 lsr r4, r4, #0x18 str r4, [sp, #0x28] lsr r4, r2, #8 lsl r4, r4, #0x18 lsr r4, r4, #0x16 ldr r5, [r3, r4] mov r4, #0xff lsl r4, r4, #8 and r4, r5 str r4, [sp, #0x2c] ldr r4, [sp, #0x10] lsr r4, r4, #0x18 lsl r4, r4, #2 ldr r5, [r3, r4] mov r4, #0xff lsl r4, r4, #0x18 and r5, r4 ldr r4, [sp, #0x44] lsr r4, r4, #0x10 lsl r4, r4, #0x18 lsr r4, r4, #0x16 ldr r4, [r3, r4] and r4, r6 eor r5, r4 ldr r4, [sp, #0x2c] eor r5, r4 ldr r4, [sp, #0x28] eor r5, r4 ldr r4, [sp, #0x24] eor r4, r5 ldr r5, [sp] lsr r6, r4, #0x18 strb r6, [r5] lsr r6, r4, #0x10 strb r6, [r5, #1] lsr r6, r4, #8 strb r6, [r5, #2] strb r4, [r5, #3] ldr r4, [r0, #4] mov r6, #0xff str r4, [sp, #0x30] ldr r4, [sp, #0x10] lsl r6, r6, #0x10 lsl r4, r4, #0x18 lsr r4, r4, #0x16 ldr r4, [r3, r4] lsl r4, r4, #0x18 lsr r4, r4, #0x18 str r4, [sp, #0x34] lsr r4, r1, #8 lsl r4, r4, #0x18 lsr r4, r4, #0x16 ldr r5, [r3, r4] mov r4, #0xff lsl r4, r4, #8 and r4, r5 str r4, [sp, #0x38] ldr r4, [sp, #0x44] lsr r4, r4, #0x18 lsl r4, r4, #2 ldr r5, [r3, r4] mov r4, #0xff lsl r4, r4, #0x18 and r5, r4 lsr r4, r2, #0x10 lsl r4, r4, #0x18 lsr r4, r4, #0x16 ldr r4, [r3, r4] and r4, r6 eor r5, r4 ldr r4, [sp, #0x38] eor r5, r4 ldr r4, [sp, #0x34] eor r5, r4 ldr r4, [sp, #0x30] eor r4, r5 ldr r5, [sp] lsr r6, r4, #0x18 strb r6, [r5, #4] lsr r6, r4, #0x10 strb r6, [r5, #5] lsr r6, r4, #8 strb r6, [r5, #6] strb r4, [r5, #7] ldr r4, [r0, #8] str r4, [sp, #0x3c] ldr r4, [sp, #0x44] lsl r4, r4, #0x18 lsr r4, r4, #0x16 ldr r4, [r3, r4] lsl r4, r4, #0x18 lsr r4, r4, #0x18 mov lr, r4 ldr r4, [sp, #0x10] lsr r4, r4, #8 lsl r4, r4, #0x18 lsr r4, r4, #0x16 ldr r5, [r3, r4] mov r4, #0xff lsl r4, r4, #8 and r4, r5 mov ip, r4 lsr r4, r2, #0x18 lsl r4, r4, #2 ldr r5, [r3, r4] mov r4, #0xff lsl r4, r4, #0x18 add r6, r5, #0 and r6, r4 lsr r4, r1, #0x10 lsl r4, r4, #0x18 lsr r4, r4, #0x16 ldr r5, [r3, r4] mov r4, #0xff lsl r4, r4, #0x10 and r4, r5 eor r4, r6 mov r5, ip eor r5, r4 mov r4, lr eor r5, r4 ldr r4, [sp, #0x3c] eor r4, r5 ldr r5, [sp] lsr r6, r4, #0x18 strb r6, [r5, #8] lsr r6, r4, #0x10 strb r6, [r5, #9] lsr r6, r4, #8 strb r6, [r5, #0xa] strb r4, [r5, #0xb] ldr r5, [r0, #0xc] lsl r0, r2, #0x18 lsr r0, r0, #0x16 ldr r0, [r3, r0] lsl r0, r0, #0x18 lsr r4, r0, #0x18 ldr r0, [sp, #0x44] lsr r0, r0, #8 lsl r0, r0, #0x18 lsr r0, r0, #0x16 ldr r2, [r3, r0] mov r0, #0xff lsl r0, r0, #8 and r2, r0 lsr r0, r1, #0x18 lsl r0, r0, #2 ldr r1, [r3, r0] mov r0, #0xff lsl r0, r0, #0x18 and r0, r1 ldr r1, [sp, #0x10] lsr r1, r1, #0x10 lsl r1, r1, #0x18 lsr r1, r1, #0x16 ldr r3, [r3, r1] mov r1, #0xff lsl r1, r1, #0x10 and r1, r3 eor r0, r1 eor r0, r2 eor r0, r4 eor r0, r5 ldr r1, [sp] lsr r2, r0, #0x18 strb r2, [r1, #0xc] lsr r2, r0, #0x10 strb r2, [r1, #0xd] lsr r2, r0, #8 strb r2, [r1, #0xe] strb r0, [r1, #0xf] add sp, #0x4c pop {r4, r5, r6, r7, pc} .align 2, 0 _02333384: .word ov02_0235148C _02333388: .word ov02_0235108C _0233338C: .word ov02_0235088C _02333390: .word ov02_02350C8C _02333394: .word ov02_0235188C thumb_func_end ov02_02332FDC thumb_func_start ov02_02333398 ov02_02333398: ; 0x02333398 push {r3, r4, r5, r6, r7, lr} sub sp, #0x48 add r7, r1, #0 add r1, r2, #0 ldrb r2, [r1, #2] str r3, [sp] ldrb r6, [r1, #1] lsl r3, r2, #8 ldrb r2, [r1] ldrb r4, [r1, #3] lsl r6, r6, #0x10 lsl r2, r2, #0x18 eor r2, r6 eor r2, r3 eor r2, r4 ldr r5, [r0] ldrb r6, [r1, #5] eor r2, r5 str r2, [sp, #0xc] ldrb r2, [r1, #6] ldrb r4, [r1, #7] lsl r6, r6, #0x10 lsl r3, r2, #8 ldrb r2, [r1, #4] ldr r5, [r0, #4] lsl r2, r2, #0x18 eor r2, r6 eor r2, r3 eor r2, r4 eor r2, r5 str r2, [sp, #8] ldrb r2, [r1, #0xa] ldrb r6, [r1, #9] ldrb r4, [r1, #0xb] lsl r3, r2, #8 ldrb r2, [r1, #8] lsl r6, r6, #0x10 ldr r5, [r0, #8] lsl r2, r2, #0x18 eor r2, r6 eor r2, r3 eor r2, r4 eor r2, r5 str r2, [sp, #0x40] ldrb r2, [r1, #0xe] ldr r5, [r0, #0xc] ldrb r4, [r1, #0xf] lsl r3, r2, #8 ldrb r2, [r1, #0xc] ldrb r1, [r1, #0xd] add r6, r5, #0 lsl r2, r2, #0x18 lsl r1, r1, #0x10 eor r1, r2 eor r1, r3 eor r1, r4 eor r6, r1 asr r1, r7, #1 str r1, [sp, #4] _0233340E: ldr r1, [sp, #8] ldr r5, [r0, #0x10] lsl r1, r1, #0x18 lsr r2, r1, #0x16 ldr r1, _02333740 ; =ov02_0235008C ldr r4, [r1, r2] ldr r1, [sp, #0x40] lsr r1, r1, #8 lsl r1, r1, #0x18 lsr r2, r1, #0x16 ldr r1, _02333744 ; =ov02_0234FC8C ldr r3, [r1, r2] ldr r1, [sp, #0xc] lsr r1, r1, #0x18 lsl r2, r1, #2 ldr r1, _02333748 ; =ov02_02351C8C ldr r7, [r1, r2] lsr r1, r6, #0x10 lsl r1, r1, #0x18 lsr r2, r1, #0x16 ldr r1, _0233374C ; =ov02_0235208C ldr r1, [r1, r2] eor r1, r7 eor r1, r3 eor r1, r4 eor r1, r5 str r1, [sp, #0x10] ldr r1, [sp, #0x40] ldr r5, [r0, #0x14] lsl r1, r1, #0x18 lsr r2, r1, #0x16 ldr r1, _02333740 ; =ov02_0235008C ldr r4, [r1, r2] lsr r1, r6, #8 lsl r1, r1, #0x18 lsr r2, r1, #0x16 ldr r1, _02333744 ; =ov02_0234FC8C ldr r3, [r1, r2] ldr r1, [sp, #8] lsr r1, r1, #0x18 lsl r2, r1, #2 ldr r1, _02333748 ; =ov02_02351C8C ldr r7, [r1, r2] ldr r1, [sp, #0xc] lsr r1, r1, #0x10 lsl r1, r1, #0x18 lsr r2, r1, #0x16 ldr r1, _0233374C ; =ov02_0235208C ldr r1, [r1, r2] eor r1, r7 eor r1, r3 eor r1, r4 eor r1, r5 str r1, [sp, #0x44] lsl r1, r6, #0x18 lsr r2, r1, #0x16 ldr r1, _02333740 ; =ov02_0235008C ldr r3, [r0, #0x18] ldr r2, [r1, r2] ldr r1, [sp, #0xc] lsr r1, r1, #8 lsl r1, r1, #0x18 lsr r4, r1, #0x16 ldr r1, _02333744 ; =ov02_0234FC8C ldr r1, [r1, r4] str r1, [sp, #0x14] ldr r1, [sp, #0x40] lsr r1, r1, #0x18 lsl r4, r1, #2 ldr r1, _02333748 ; =ov02_02351C8C ldr r1, [r1, r4] ldr r4, [sp, #8] lsr r4, r4, #0x10 lsl r4, r4, #0x18 lsr r5, r4, #0x16 ldr r4, _0233374C ; =ov02_0235208C ldr r4, [r4, r5] eor r4, r1 ldr r1, [sp, #0x14] eor r1, r4 eor r1, r2 add r2, r3, #0 eor r2, r1 ldr r1, [sp, #0xc] ldr r3, [r0, #0x1c] lsl r1, r1, #0x18 lsr r4, r1, #0x16 ldr r1, _02333740 ; =ov02_0235008C add r0, #0x20 ldr r1, [r1, r4] ldr r4, [sp, #8] lsr r4, r4, #8 lsl r4, r4, #0x18 lsr r5, r4, #0x16 ldr r4, _02333744 ; =ov02_0234FC8C ldr r7, [r4, r5] lsr r4, r6, #0x18 lsl r5, r4, #2 ldr r4, _02333748 ; =ov02_02351C8C ldr r6, [r4, r5] ldr r4, [sp, #0x40] lsr r4, r4, #0x10 lsl r4, r4, #0x18 lsr r5, r4, #0x16 ldr r4, _0233374C ; =ov02_0235208C ldr r4, [r4, r5] eor r4, r6 eor r4, r7 eor r1, r4 eor r1, r3 ldr r3, [sp, #4] sub r3, r3, #1 str r3, [sp, #4] beq _023335D2 ldr r3, [sp, #0x44] ldr r4, [r0] lsl r3, r3, #0x18 lsr r5, r3, #0x16 ldr r3, _02333740 ; =ov02_0235008C ldr r3, [r3, r5] lsr r5, r2, #8 lsl r5, r5, #0x18 lsr r6, r5, #0x16 ldr r5, _02333744 ; =ov02_0234FC8C ldr r7, [r5, r6] ldr r5, [sp, #0x10] lsr r5, r5, #0x18 lsl r6, r5, #2 ldr r5, _02333748 ; =ov02_02351C8C ldr r5, [r5, r6] str r5, [sp, #0x18] lsr r5, r1, #0x10 lsl r5, r5, #0x18 lsr r6, r5, #0x16 ldr r5, _0233374C ; =ov02_0235208C ldr r6, [r5, r6] ldr r5, [sp, #0x18] eor r5, r6 eor r5, r7 eor r3, r5 eor r3, r4 str r3, [sp, #0xc] lsl r3, r2, #0x18 lsr r5, r3, #0x16 ldr r3, _02333740 ; =ov02_0235008C ldr r4, [r0, #4] ldr r3, [r3, r5] lsr r5, r1, #8 lsl r5, r5, #0x18 lsr r6, r5, #0x16 ldr r5, _02333744 ; =ov02_0234FC8C ldr r7, [r5, r6] ldr r5, [sp, #0x44] lsr r5, r5, #0x18 lsl r6, r5, #2 ldr r5, _02333748 ; =ov02_02351C8C ldr r5, [r5, r6] str r5, [sp, #0x1c] ldr r5, [sp, #0x10] lsr r5, r5, #0x10 lsl r5, r5, #0x18 lsr r6, r5, #0x16 ldr r5, _0233374C ; =ov02_0235208C ldr r6, [r5, r6] ldr r5, [sp, #0x1c] eor r5, r6 eor r5, r7 eor r3, r5 eor r3, r4 str r3, [sp, #8] lsl r3, r1, #0x18 lsr r4, r3, #0x16 ldr r3, _02333740 ; =ov02_0235008C ldr r6, [r0, #8] ldr r5, [r3, r4] ldr r3, [sp, #0x10] lsr r1, r1, #0x18 lsr r3, r3, #8 lsl r3, r3, #0x18 lsr r4, r3, #0x16 ldr r3, _02333744 ; =ov02_0234FC8C ldr r3, [r3, r4] str r3, [sp, #0x20] lsr r3, r2, #0x18 lsl r4, r3, #2 ldr r3, _02333748 ; =ov02_02351C8C lsr r2, r2, #0x10 ldr r7, [r3, r4] ldr r3, [sp, #0x44] lsl r2, r2, #0x18 lsr r3, r3, #0x10 lsl r3, r3, #0x18 lsr r4, r3, #0x16 ldr r3, _0233374C ; =ov02_0235208C ldr r3, [r3, r4] add r4, r7, #0 eor r4, r3 ldr r3, [sp, #0x20] eor r3, r4 eor r3, r5 eor r3, r6 str r3, [sp, #0x40] ldr r3, [sp, #0x10] ldr r5, [r0, #0xc] lsl r3, r3, #0x18 lsr r4, r3, #0x16 ldr r3, _02333740 ; =ov02_0235008C ldr r4, [r3, r4] ldr r3, [sp, #0x44] lsr r3, r3, #8 lsl r3, r3, #0x18 lsr r6, r3, #0x16 ldr r3, _02333744 ; =ov02_0234FC8C ldr r3, [r3, r6] lsl r6, r1, #2 ldr r1, _02333748 ; =ov02_02351C8C ldr r1, [r1, r6] lsr r6, r2, #0x16 ldr r2, _0233374C ; =ov02_0235208C ldr r2, [r2, r6] add r6, r5, #0 eor r1, r2 eor r1, r3 eor r1, r4 eor r6, r1 b _0233340E _023335D2: ldr r3, [r0] mov r6, #0xff str r3, [sp, #0x24] ldr r3, [sp, #0x44] lsl r6, r6, #0x10 lsl r3, r3, #0x18 lsr r4, r3, #0x16 ldr r3, _02333750 ; =ov02_0235048C ldr r4, [r3, r4] lsl r4, r4, #0x18 lsr r4, r4, #0x18 str r4, [sp, #0x28] lsr r4, r2, #8 lsl r4, r4, #0x18 lsr r4, r4, #0x16 ldr r5, [r3, r4] mov r4, #0xff lsl r4, r4, #8 and r4, r5 str r4, [sp, #0x2c] ldr r4, [sp, #0x10] lsr r4, r4, #0x18 lsl r4, r4, #2 ldr r5, [r3, r4] mov r4, #0xff lsl r4, r4, #0x18 and r5, r4 lsr r4, r1, #0x10 lsl r4, r4, #0x18 lsr r4, r4, #0x16 ldr r4, [r3, r4] and r4, r6 eor r5, r4 ldr r4, [sp, #0x2c] eor r5, r4 ldr r4, [sp, #0x28] eor r5, r4 ldr r4, [sp, #0x24] eor r4, r5 ldr r5, [sp] lsr r6, r4, #0x18 strb r6, [r5] lsr r6, r4, #0x10 strb r6, [r5, #1] lsr r6, r4, #8 strb r6, [r5, #2] strb r4, [r5, #3] ldr r4, [r0, #4] mov r6, #0xff str r4, [sp, #0x30] lsl r4, r2, #0x18 lsr r4, r4, #0x16 ldr r4, [r3, r4] lsl r6, r6, #0x10 lsl r4, r4, #0x18 lsr r4, r4, #0x18 str r4, [sp, #0x34] lsr r4, r1, #8 lsl r4, r4, #0x18 lsr r4, r4, #0x16 ldr r5, [r3, r4] mov r4, #0xff lsl r4, r4, #8 and r4, r5 str r4, [sp, #0x38] ldr r4, [sp, #0x44] lsr r4, r4, #0x18 lsl r4, r4, #2 ldr r5, [r3, r4] mov r4, #0xff lsl r4, r4, #0x18 and r5, r4 ldr r4, [sp, #0x10] lsr r4, r4, #0x10 lsl r4, r4, #0x18 lsr r4, r4, #0x16 ldr r4, [r3, r4] and r4, r6 eor r5, r4 ldr r4, [sp, #0x38] eor r5, r4 ldr r4, [sp, #0x34] eor r5, r4 ldr r4, [sp, #0x30] eor r4, r5 ldr r5, [sp] lsr r6, r4, #0x18 strb r6, [r5, #4] lsr r6, r4, #0x10 strb r6, [r5, #5] lsr r6, r4, #8 strb r6, [r5, #6] strb r4, [r5, #7] ldr r4, [r0, #8] str r4, [sp, #0x3c] lsl r4, r1, #0x18 lsr r4, r4, #0x16 ldr r4, [r3, r4] lsl r4, r4, #0x18 lsr r4, r4, #0x18 mov lr, r4 ldr r4, [sp, #0x10] lsr r4, r4, #8 lsl r4, r4, #0x18 lsr r4, r4, #0x16 ldr r5, [r3, r4] mov r4, #0xff lsl r4, r4, #8 and r4, r5 mov ip, r4 lsr r4, r2, #0x18 lsl r4, r4, #2 ldr r5, [r3, r4] mov r4, #0xff lsl r4, r4, #0x18 add r6, r5, #0 and r6, r4 ldr r4, [sp, #0x44] lsr r4, r4, #0x10 lsl r4, r4, #0x18 lsr r4, r4, #0x16 ldr r5, [r3, r4] mov r4, #0xff lsl r4, r4, #0x10 and r4, r5 eor r4, r6 mov r5, ip eor r5, r4 mov r4, lr eor r5, r4 ldr r4, [sp, #0x3c] eor r4, r5 ldr r5, [sp] lsr r6, r4, #0x18 strb r6, [r5, #8] lsr r6, r4, #0x10 strb r6, [r5, #9] lsr r6, r4, #8 strb r6, [r5, #0xa] strb r4, [r5, #0xb] ldr r5, [r0, #0xc] ldr r0, [sp, #0x10] lsr r2, r2, #0x10 lsl r0, r0, #0x18 lsr r0, r0, #0x16 ldr r0, [r3, r0] lsr r1, r1, #0x18 lsl r0, r0, #0x18 lsr r4, r0, #0x18 ldr r0, [sp, #0x44] lsl r2, r2, #0x18 lsr r0, r0, #8 lsl r0, r0, #0x18 lsr r0, r0, #0x16 ldr r6, [r3, r0] mov r0, #0xff lsl r0, r0, #8 lsl r1, r1, #2 and r0, r6 mov r6, #0xff lsr r2, r2, #0x16 ldr r1, [r3, r1] ldr r3, [r3, r2] mov r2, #0xff lsl r6, r6, #0x18 lsl r2, r2, #0x10 and r1, r6 and r2, r3 eor r1, r2 eor r0, r1 eor r0, r4 eor r0, r5 ldr r1, [sp] lsr r2, r0, #0x18 strb r2, [r1, #0xc] lsr r2, r0, #0x10 strb r2, [r1, #0xd] lsr r2, r0, #8 strb r2, [r1, #0xe] strb r0, [r1, #0xf] add sp, #0x48 pop {r3, r4, r5, r6, r7, pc} nop _02333740: .word ov02_0235008C _02333744: .word ov02_0234FC8C _02333748: .word ov02_02351C8C _0233374C: .word ov02_0235208C _02333750: .word ov02_0235048C thumb_func_end ov02_02333398 thumb_func_start ov02_02333754 ov02_02333754: ; 0x02333754 mov r1, #0 str r1, [r0, #0x14] str r1, [r0, #0x10] ldr r1, _0233376C ; =0x67452301 str r1, [r0] ldr r1, _02333770 ; =0xEFCDAB89 str r1, [r0, #4] ldr r1, _02333774 ; =0x98BADCFE str r1, [r0, #8] ldr r1, _02333778 ; =0x10325476 str r1, [r0, #0xc] bx lr .align 2, 0 _0233376C: .word 0x67452301 _02333770: .word 0xEFCDAB89 _02333774: .word 0x98BADCFE _02333778: .word 0x10325476 thumb_func_end ov02_02333754 thumb_func_start ov02_0233377C ov02_0233377C: ; 0x0233377C push {r3, r4, r5, r6, r7, lr} add r5, r0, #0 add r7, r1, #0 ldr r1, [r5, #0x10] add r6, r2, #0 lsr r2, r1, #3 mov r0, #0x3f and r0, r2 lsl r2, r6, #3 add r1, r1, r2 str r1, [r5, #0x10] cmp r1, r2 bhs _0233379C ldr r1, [r5, #0x14] add r1, r1, #1 str r1, [r5, #0x14] _0233379C: ldr r2, [r5, #0x14] lsr r1, r6, #0x1d add r1, r2, r1 str r1, [r5, #0x14] mov r1, #0x40 sub r4, r1, r0 cmp r6, r4 blo _023337E2 add r1, r5, #0 add r1, #0x18 add r0, r1, r0 add r1, r7, #0 add r2, r4, #0 bl ov02_023340E8 add r1, r5, #0 add r0, r5, #0 add r1, #0x18 bl ov02_02333848 add r0, r4, #0 add r0, #0x3f cmp r0, r6 bhs _023337DE _023337CC: add r0, r5, #0 add r1, r7, r4 bl ov02_02333848 add r4, #0x40 add r0, r4, #0 add r0, #0x3f cmp r0, r6 blo _023337CC _023337DE: mov r0, #0 b _023337E4 _023337E2: mov r4, #0 _023337E4: add r5, #0x18 add r0, r5, r0 add r1, r7, r4 sub r2, r6, r4 bl ov02_023340E8 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 thumb_func_end ov02_0233377C thumb_func_start ov02_023337F4 ov02_023337F4: ; 0x023337F4 push {r3, r4, r5, lr} sub sp, #8 add r5, r0, #0 add r4, r1, #0 add r0, sp, #0 add r1, #0x10 mov r2, #8 bl ov02_02334090 ldr r0, [r4, #0x10] lsr r1, r0, #3 mov r0, #0x3f and r1, r0 cmp r1, #0x38 bhs _02333816 mov r0, #0x38 b _02333818 _02333816: mov r0, #0x78 _02333818: sub r2, r0, r1 ldr r1, _02333844 ; =ov02_02353088 add r0, r4, #0 bl ov02_0233377C add r0, r4, #0 add r1, sp, #0 mov r2, #8 bl ov02_0233377C add r0, r5, #0 add r1, r4, #0 mov r2, #0x10 bl ov02_02334090 add r0, r4, #0 mov r1, #0 mov r2, #0x58 bl ov02_02334100 add sp, #8 pop {r3, r4, r5, pc} .align 2, 0 _02333844: .word ov02_02353088 thumb_func_end ov02_023337F4 thumb_func_start ov02_02333848 ov02_02333848: ; 0x02333848 push {r4, r5, r6, r7, lr} sub sp, #0x84 add r7, r0, #0 ldr r0, [r7] mov r2, #0x40 str r0, [sp] add r0, sp, #0x44 ldr r4, [r7, #4] ldr r5, [r7, #8] ldr r6, [r7, #0xc] bl ov02_023340BC ldr r0, [sp, #0x44] add r1, r4, #0 str r0, [sp, #4] mvn r0, r4 and r1, r5 and r0, r6 orr r1, r0 ldr r0, [sp, #4] add r1, r0, r1 ldr r0, _02333C20 ; =0x28955B88 sub r1, r1, r0 ldr r0, [sp] add r0, r0, r1 lsl r1, r0, #7 lsr r0, r0, #0x19 orr r0, r1 add r3, r0, r4 ldr r0, [sp, #0x48] mvn r1, r3 str r0, [sp, #8] add r0, r3, #0 and r0, r4 and r1, r5 orr r1, r0 ldr r0, [sp, #8] add r1, r0, r1 ldr r0, _02333C24 ; =0x173848AA sub r0, r1, r0 add r0, r6, r0 lsl r1, r0, #0xc lsr r0, r0, #0x14 orr r0, r1 add r2, r0, r3 ldr r0, [sp, #0x4c] mvn r1, r2 str r0, [sp, #0xc] add r0, r2, #0 and r0, r3 and r1, r4 orr r1, r0 ldr r0, [sp, #0xc] add r1, r0, r1 ldr r0, _02333C28 ; =0x242070DB add r0, r1, r0 add r0, r5, r0 lsl r1, r0, #0x11 lsr r0, r0, #0xf orr r0, r1 add r1, r0, r2 ldr r0, [sp, #0x50] mvn r5, r1 str r0, [sp, #0x10] add r0, r1, #0 and r0, r2 and r5, r3 orr r5, r0 ldr r0, [sp, #0x10] add r5, r0, r5 ldr r0, _02333C2C ; =0x3E423112 sub r0, r5, r0 add r0, r4, r0 lsl r4, r0, #0x16 lsr r0, r0, #0xa orr r0, r4 ldr r4, [sp, #0x54] add r0, r0, r1 str r4, [sp, #0x14] add r4, r0, #0 mvn r5, r0 and r4, r1 and r5, r2 orr r5, r4 ldr r4, [sp, #0x14] add r5, r4, r5 ldr r4, _02333C30 ; =0x0A83F051 sub r4, r5, r4 add r3, r3, r4 lsl r4, r3, #7 lsr r3, r3, #0x19 orr r3, r4 ldr r4, [sp, #0x58] add r3, r3, r0 str r4, [sp, #0x18] add r4, r3, #0 mvn r5, r3 and r4, r0 and r5, r1 orr r5, r4 ldr r4, [sp, #0x18] add r5, r4, r5 ldr r4, _02333C34 ; =0x4787C62A add r4, r5, r4 add r2, r2, r4 lsl r4, r2, #0xc lsr r2, r2, #0x14 orr r2, r4 ldr r4, [sp, #0x5c] add r2, r2, r3 str r4, [sp, #0x1c] add r4, r2, #0 mvn r5, r2 and r4, r3 and r5, r0 orr r5, r4 ldr r4, [sp, #0x1c] add r5, r4, r5 ldr r4, _02333C38 ; =0x57CFB9ED sub r4, r5, r4 add r1, r1, r4 lsl r4, r1, #0x11 lsr r1, r1, #0xf orr r1, r4 ldr r4, [sp, #0x60] add r1, r1, r2 str r4, [sp, #0x20] add r4, r1, #0 mvn r5, r1 and r4, r2 and r5, r3 orr r5, r4 ldr r4, [sp, #0x20] add r5, r4, r5 ldr r4, _02333C3C ; =0x02B96AFF sub r4, r5, r4 add r0, r0, r4 lsl r4, r0, #0x16 lsr r0, r0, #0xa orr r0, r4 ldr r4, [sp, #0x64] add r0, r0, r1 str r4, [sp, #0x24] add r4, r0, #0 mvn r5, r0 and r4, r1 and r5, r2 orr r5, r4 ldr r4, [sp, #0x24] add r5, r4, r5 ldr r4, _02333C40 ; =0x698098D8 add r4, r5, r4 add r3, r3, r4 lsl r4, r3, #7 lsr r3, r3, #0x19 orr r3, r4 ldr r4, [sp, #0x68] add r3, r3, r0 str r4, [sp, #0x28] add r4, r3, #0 mvn r5, r3 and r4, r0 and r5, r1 orr r5, r4 ldr r4, [sp, #0x28] add r5, r4, r5 ldr r4, _02333C44 ; =0x74BB0851 sub r4, r5, r4 add r2, r2, r4 lsl r4, r2, #0xc lsr r2, r2, #0x14 orr r2, r4 ldr r4, [sp, #0x6c] add r2, r2, r3 str r4, [sp, #0x2c] add r4, r2, #0 mvn r5, r2 and r4, r3 and r5, r0 orr r5, r4 ldr r4, [sp, #0x2c] add r5, r4, r5 ldr r4, _02333C48 ; =0x0000A44F sub r4, r5, r4 add r1, r1, r4 lsl r4, r1, #0x11 lsr r1, r1, #0xf orr r1, r4 ldr r4, [sp, #0x70] add r1, r1, r2 str r4, [sp, #0x30] add r4, r1, #0 mvn r5, r1 and r4, r2 and r5, r3 orr r5, r4 ldr r4, [sp, #0x30] add r5, r4, r5 ldr r4, _02333C4C ; =0x76A32842 sub r4, r5, r4 add r0, r0, r4 lsl r4, r0, #0x16 lsr r0, r0, #0xa orr r0, r4 add r0, r0, r1 ldr r4, [sp, #0x74] mvn r5, r0 str r4, [sp, #0x34] add r4, r0, #0 and r4, r1 and r5, r2 orr r5, r4 ldr r4, [sp, #0x34] add r5, r4, r5 ldr r4, _02333C50 ; =0x6B901122 add r4, r5, r4 add r3, r3, r4 lsl r4, r3, #7 lsr r3, r3, #0x19 orr r3, r4 add r4, r3, r0 ldr r3, [sp, #0x78] mvn r5, r4 str r3, [sp, #0x38] add r3, r4, #0 and r3, r0 and r5, r1 orr r5, r3 ldr r3, [sp, #0x38] add r5, r3, r5 ldr r3, _02333C54 ; =0x02678E6D sub r3, r5, r3 add r2, r2, r3 lsl r3, r2, #0xc lsr r2, r2, #0x14 orr r2, r3 add r3, r2, r4 mvn r2, r3 str r2, [sp, #0x3c] ldr r2, [sp, #0x7c] ldr r5, [sp, #0x3c] str r2, [sp, #0x40] add r2, r3, #0 and r2, r4 and r5, r0 orr r5, r2 ldr r2, [sp, #0x40] add r5, r2, r5 ldr r2, _02333C58 ; =0x5986BC72 sub r2, r5, r2 add r1, r1, r2 lsl r2, r1, #0x11 lsr r1, r1, #0xf orr r1, r2 add r2, r1, r3 ldr r1, [sp, #0x80] add r5, r2, #0 mvn r6, r2 mov ip, r1 add r1, r6, #0 and r5, r3 and r1, r4 orr r5, r1 mov r1, ip add r5, r1, r5 ldr r1, _02333C5C ; =0x49B40821 add r1, r5, r1 add r0, r0, r1 lsl r1, r0, #0x16 lsr r0, r0, #0xa orr r0, r1 add r1, r0, r2 ldr r5, [sp, #0x3c] add r0, r1, #0 and r0, r3 and r5, r2 orr r5, r0 ldr r0, [sp, #8] add r5, r0, r5 ldr r0, _02333C60 ; =0x09E1DA9E sub r0, r5, r0 add r0, r4, r0 lsl r4, r0, #5 lsr r0, r0, #0x1b orr r0, r4 add r0, r0, r1 add r4, r0, #0 add r5, r1, #0 and r4, r2 bic r5, r2 orr r5, r4 ldr r4, [sp, #0x1c] add r5, r4, r5 ldr r4, _02333C64 ; =0x3FBF4CC0 sub r4, r5, r4 add r3, r3, r4 lsl r4, r3, #9 lsr r3, r3, #0x17 orr r3, r4 add r3, r3, r0 add r4, r3, #0 mvn r5, r1 and r4, r1 and r5, r0 orr r5, r4 ldr r4, [sp, #0x30] add r5, r4, r5 ldr r4, _02333C68 ; =0x265E5A51 add r4, r5, r4 add r2, r2, r4 lsl r4, r2, #0xe lsr r2, r2, #0x12 orr r2, r4 add r2, r2, r3 add r4, r2, #0 mvn r5, r0 and r4, r0 and r5, r3 orr r5, r4 ldr r4, [sp, #4] add r5, r4, r5 ldr r4, _02333C6C ; =0x16493856 sub r4, r5, r4 add r1, r1, r4 lsl r4, r1, #0x14 lsr r1, r1, #0xc orr r1, r4 add r1, r1, r2 add r4, r1, #0 mvn r5, r3 and r4, r3 and r5, r2 orr r5, r4 ldr r4, [sp, #0x18] add r5, r4, r5 ldr r4, _02333C70 ; =0x29D0EFA3 sub r4, r5, r4 add r0, r0, r4 lsl r4, r0, #5 lsr r0, r0, #0x1b orr r0, r4 add r4, r0, r1 add r0, r4, #0 mvn r5, r2 and r0, r2 and r5, r1 orr r5, r0 ldr r0, [sp, #0x2c] add r5, r0, r5 ldr r0, _02333C74 ; =0x02441453 add r0, r5, r0 add r0, r3, r0 lsl r3, r0, #9 lsr r0, r0, #0x17 orr r0, r3 add r3, r0, r4 add r0, r3, #0 mvn r5, r1 and r0, r1 and r5, r4 orr r5, r0 mov r0, ip add r5, r0, r5 ldr r0, _02333C78 ; =0x275E197F sub r0, r5, r0 add r0, r2, r0 lsl r2, r0, #0xe lsr r0, r0, #0x12 orr r0, r2 add r0, r0, r3 add r2, r0, #0 mvn r5, r4 and r2, r4 and r5, r3 orr r5, r2 ldr r2, [sp, #0x14] add r5, r2, r5 ldr r2, _02333C7C ; =0x182C0438 sub r2, r5, r2 add r1, r1, r2 lsl r2, r1, #0x14 lsr r1, r1, #0xc orr r1, r2 add r5, r1, r0 add r1, r5, #0 mvn r2, r3 and r1, r3 and r2, r0 orr r2, r1 ldr r1, [sp, #0x28] add r2, r1, r2 ldr r1, _02333C80 ; =0x21E1CDE6 add r1, r2, r1 add r1, r4, r1 lsl r2, r1, #5 lsr r1, r1, #0x1b orr r1, r2 add r2, r1, r5 add r1, r2, #0 mvn r4, r0 and r1, r0 and r4, r5 orr r4, r1 ldr r1, [sp, #0x40] add r4, r1, r4 ldr r1, _02333C84 ; =0x3CC8F82A sub r1, r4, r1 add r1, r3, r1 lsl r3, r1, #9 lsr r1, r1, #0x17 orr r1, r3 add r1, r1, r2 add r3, r1, #0 mvn r4, r5 and r3, r5 and r4, r2 orr r4, r3 ldr r3, [sp, #0x10] add r4, r3, r4 ldr r3, _02333C88 ; =0x0B2AF279 sub r3, r4, r3 add r0, r0, r3 lsl r3, r0, #0xe lsr r0, r0, #0x12 orr r0, r3 add r4, r0, r1 add r0, r4, #0 mvn r3, r2 and r0, r2 and r3, r1 orr r3, r0 ldr r0, [sp, #0x24] add r3, r0, r3 ldr r0, _02333C8C ; =0x455A14ED add r0, r3, r0 add r0, r5, r0 lsl r3, r0, #0x14 lsr r0, r0, #0xc orr r0, r3 add r3, r0, r4 add r0, r3, #0 mvn r5, r1 and r0, r1 and r5, r4 orr r5, r0 ldr r0, [sp, #0x38] add r5, r0, r5 ldr r0, _02333C90 ; =0x561C16FB sub r0, r5, r0 add r0, r2, r0 lsl r2, r0, #5 lsr r0, r0, #0x1b orr r0, r2 add r0, r0, r3 add r2, r0, #0 mvn r5, r4 and r2, r4 and r5, r3 orr r5, r2 ldr r2, [sp, #0xc] add r5, r2, r5 ldr r2, _02333C94 ; =0x03105C08 sub r2, r5, r2 add r1, r1, r2 lsl r2, r1, #9 lsr r1, r1, #0x17 orr r1, r2 add r5, r1, r0 add r1, r5, #0 mvn r2, r3 and r1, r3 and r2, r0 orr r2, r1 ldr r1, [sp, #0x20] add r2, r1, r2 ldr r1, _02333C98 ; =0x676F02D9 add r1, r2, r1 add r1, r4, r1 lsl r2, r1, #0xe lsr r1, r1, #0x12 orr r1, r2 add r2, r1, r5 add r1, r2, #0 mvn r4, r0 and r1, r0 and r4, r5 orr r4, r1 ldr r1, [sp, #0x34] add r4, r1, r4 ldr r1, _02333C9C ; =0x72D5B376 b _02333CA0 nop _02333C20: .word 0x28955B88 _02333C24: .word 0x173848AA _02333C28: .word 0x242070DB _02333C2C: .word 0x3E423112 _02333C30: .word 0x0A83F051 _02333C34: .word 0x4787C62A _02333C38: .word 0x57CFB9ED _02333C3C: .word 0x02B96AFF _02333C40: .word 0x698098D8 _02333C44: .word 0x74BB0851 _02333C48: .word 0x0000A44F _02333C4C: .word 0x76A32842 _02333C50: .word 0x6B901122 _02333C54: .word 0x02678E6D _02333C58: .word 0x5986BC72 _02333C5C: .word 0x49B40821 _02333C60: .word 0x09E1DA9E _02333C64: .word 0x3FBF4CC0 _02333C68: .word 0x265E5A51 _02333C6C: .word 0x16493856 _02333C70: .word 0x29D0EFA3 _02333C74: .word 0x02441453 _02333C78: .word 0x275E197F _02333C7C: .word 0x182C0438 _02333C80: .word 0x21E1CDE6 _02333C84: .word 0x3CC8F82A _02333C88: .word 0x0B2AF279 _02333C8C: .word 0x455A14ED _02333C90: .word 0x561C16FB _02333C94: .word 0x03105C08 _02333C98: .word 0x676F02D9 _02333C9C: .word 0x72D5B376 _02333CA0: sub r1, r4, r1 add r1, r3, r1 lsl r3, r1, #0x14 lsr r1, r1, #0xc orr r1, r3 add r1, r1, r2 add r3, r1, #0 eor r3, r2 add r4, r5, #0 eor r4, r3 ldr r3, [sp, #0x18] add r4, r3, r4 ldr r3, _02334010 ; =0x0005C6BE sub r3, r4, r3 add r0, r0, r3 lsl r3, r0, #4 lsr r0, r0, #0x1c orr r0, r3 add r4, r0, r1 add r0, r4, #0 eor r0, r1 add r3, r2, #0 eor r3, r0 ldr r0, [sp, #0x24] add r3, r0, r3 ldr r0, _02334014 ; =0x788E097F sub r0, r3, r0 add r0, r5, r0 lsl r3, r0, #0xb lsr r0, r0, #0x15 orr r0, r3 add r3, r0, r4 add r0, r3, #0 eor r0, r4 add r5, r1, #0 eor r5, r0 ldr r0, [sp, #0x30] add r5, r0, r5 ldr r0, _02334018 ; =0x6D9D6122 add r0, r5, r0 add r0, r2, r0 lsl r2, r0, #0x10 lsr r0, r0, #0x10 orr r0, r2 add r0, r0, r3 add r2, r0, #0 eor r2, r3 add r5, r4, #0 eor r5, r2 ldr r2, [sp, #0x40] add r5, r2, r5 ldr r2, _0233401C ; =0x021AC7F4 sub r2, r5, r2 add r1, r1, r2 lsl r2, r1, #0x17 lsr r1, r1, #9 orr r1, r2 add r5, r1, r0 add r1, r5, #0 eor r1, r0 add r2, r3, #0 eor r2, r1 ldr r1, [sp, #8] add r2, r1, r2 ldr r1, _02334020 ; =0x5B4115BC sub r1, r2, r1 add r1, r4, r1 lsl r2, r1, #4 lsr r1, r1, #0x1c orr r1, r2 add r2, r1, r5 add r1, r2, #0 eor r1, r5 add r4, r0, #0 eor r4, r1 ldr r1, [sp, #0x14] add r4, r1, r4 ldr r1, _02334024 ; =0x4BDECFA9 add r1, r4, r1 add r1, r3, r1 lsl r3, r1, #0xb lsr r1, r1, #0x15 orr r1, r3 add r1, r1, r2 add r3, r1, #0 eor r3, r2 add r4, r5, #0 eor r4, r3 ldr r3, [sp, #0x20] add r4, r3, r4 ldr r3, _02334028 ; =0x0944B4A0 sub r3, r4, r3 add r0, r0, r3 lsl r3, r0, #0x10 lsr r0, r0, #0x10 orr r0, r3 add r4, r0, r1 add r0, r4, #0 eor r0, r1 add r3, r2, #0 eor r3, r0 ldr r0, [sp, #0x2c] add r3, r0, r3 ldr r0, _0233402C ; =0x41404390 sub r0, r3, r0 add r0, r5, r0 lsl r3, r0, #0x17 lsr r0, r0, #9 orr r0, r3 add r3, r0, r4 add r0, r3, #0 eor r0, r4 add r5, r1, #0 eor r5, r0 ldr r0, [sp, #0x38] add r5, r0, r5 ldr r0, _02334030 ; =0x289B7EC6 add r0, r5, r0 add r0, r2, r0 lsl r2, r0, #4 lsr r0, r0, #0x1c orr r0, r2 add r0, r0, r3 add r2, r0, #0 eor r2, r3 add r5, r4, #0 eor r5, r2 ldr r2, [sp, #4] add r5, r2, r5 ldr r2, _02334034 ; =0x155ED806 sub r2, r5, r2 add r1, r1, r2 lsl r2, r1, #0xb lsr r1, r1, #0x15 orr r1, r2 add r5, r1, r0 add r1, r5, #0 eor r1, r0 add r2, r3, #0 eor r2, r1 ldr r1, [sp, #0x10] add r2, r1, r2 ldr r1, _02334038 ; =0x2B10CF7B sub r1, r2, r1 add r1, r4, r1 lsl r2, r1, #0x10 lsr r1, r1, #0x10 orr r1, r2 add r2, r1, r5 add r1, r2, #0 eor r1, r5 add r4, r0, #0 eor r4, r1 ldr r1, [sp, #0x1c] add r4, r1, r4 ldr r1, _0233403C ; =0x04881D05 add r1, r4, r1 add r1, r3, r1 lsl r3, r1, #0x17 lsr r1, r1, #9 orr r1, r3 add r1, r1, r2 add r3, r1, #0 eor r3, r2 add r4, r5, #0 eor r4, r3 ldr r3, [sp, #0x28] add r4, r3, r4 ldr r3, _02334040 ; =0x262B2FC7 sub r3, r4, r3 add r0, r0, r3 lsl r3, r0, #4 lsr r0, r0, #0x1c orr r0, r3 add r4, r0, r1 add r0, r4, #0 eor r0, r1 add r3, r2, #0 eor r3, r0 ldr r0, [sp, #0x34] add r3, r0, r3 ldr r0, _02334044 ; =0x1924661B sub r0, r3, r0 add r0, r5, r0 lsl r3, r0, #0xb lsr r0, r0, #0x15 orr r0, r3 add r3, r0, r4 add r0, r3, #0 eor r0, r4 add r5, r1, #0 eor r5, r0 mov r0, ip add r5, r0, r5 ldr r0, _02334048 ; =0x1FA27CF8 add r0, r5, r0 add r0, r2, r0 lsl r2, r0, #0x10 lsr r0, r0, #0x10 orr r0, r2 add r0, r0, r3 add r2, r0, #0 eor r2, r3 add r5, r4, #0 eor r5, r2 ldr r2, [sp, #0xc] add r5, r2, r5 ldr r2, _0233404C ; =0x3B53A99B sub r2, r5, r2 add r1, r1, r2 lsl r2, r1, #0x17 lsr r1, r1, #9 orr r1, r2 add r5, r1, r0 mvn r1, r3 orr r1, r5 add r2, r0, #0 eor r2, r1 ldr r1, [sp, #4] add r2, r1, r2 ldr r1, _02334050 ; =0x0BD6DDBC sub r1, r2, r1 add r1, r4, r1 lsl r2, r1, #6 lsr r1, r1, #0x1a orr r1, r2 add r2, r1, r5 mvn r1, r0 orr r1, r2 add r4, r5, #0 eor r4, r1 ldr r1, [sp, #0x20] add r4, r1, r4 ldr r1, _02334054 ; =0x432AFF97 add r1, r4, r1 add r1, r3, r1 lsl r3, r1, #0xa lsr r1, r1, #0x16 orr r1, r3 add r1, r1, r2 mvn r3, r5 orr r3, r1 add r4, r2, #0 eor r4, r3 ldr r3, [sp, #0x40] add r4, r3, r4 ldr r3, _02334058 ; =0x546BDC59 sub r3, r4, r3 add r0, r0, r3 lsl r3, r0, #0xf lsr r0, r0, #0x11 orr r0, r3 add r4, r0, r1 mvn r0, r2 orr r0, r4 add r3, r1, #0 eor r3, r0 ldr r0, [sp, #0x18] add r3, r0, r3 ldr r0, _0233405C ; =0x036C5FC7 sub r0, r3, r0 add r0, r5, r0 lsl r3, r0, #0x15 lsr r0, r0, #0xb orr r0, r3 add r3, r0, r4 mvn r0, r1 orr r0, r3 add r5, r4, #0 eor r5, r0 ldr r0, [sp, #0x34] add r5, r0, r5 ldr r0, _02334060 ; =0x655B59C3 add r0, r5, r0 add r0, r2, r0 lsl r2, r0, #6 lsr r0, r0, #0x1a orr r0, r2 add r0, r0, r3 mvn r2, r4 orr r2, r0 add r5, r3, #0 eor r5, r2 ldr r2, [sp, #0x10] add r5, r2, r5 ldr r2, _02334064 ; =0x70F3336E sub r2, r5, r2 add r1, r1, r2 lsl r2, r1, #0xa lsr r1, r1, #0x16 orr r1, r2 add r5, r1, r0 mvn r1, r3 orr r1, r5 add r2, r0, #0 eor r2, r1 ldr r1, [sp, #0x2c] add r2, r1, r2 ldr r1, _02334068 ; =0x00100B83 sub r1, r2, r1 add r1, r4, r1 lsl r2, r1, #0xf lsr r1, r1, #0x11 orr r1, r2 add r2, r1, r5 mvn r1, r0 orr r1, r2 add r4, r5, #0 eor r4, r1 ldr r1, [sp, #8] add r4, r1, r4 ldr r1, _0233406C ; =0x7A7BA22F sub r1, r4, r1 add r1, r3, r1 lsl r3, r1, #0x15 lsr r1, r1, #0xb orr r1, r3 add r1, r1, r2 mvn r3, r5 orr r3, r1 add r4, r2, #0 eor r4, r3 ldr r3, [sp, #0x24] add r4, r3, r4 ldr r3, _02334070 ; =0x6FA87E4F add r3, r4, r3 add r0, r0, r3 lsl r3, r0, #6 lsr r0, r0, #0x1a orr r0, r3 add r3, r0, r1 mvn r0, r2 orr r0, r3 eor r0, r1 mov r4, ip add r4, r4, r0 ldr r0, _02334074 ; =0x01D31920 sub r0, r4, r0 add r0, r5, r0 lsl r4, r0, #0xa lsr r0, r0, #0x16 orr r0, r4 add r0, r0, r3 mvn r4, r1 orr r4, r0 add r5, r3, #0 eor r5, r4 ldr r4, [sp, #0x1c] add r5, r4, r5 ldr r4, _02334078 ; =0x5CFEBCEC sub r4, r5, r4 add r2, r2, r4 lsl r4, r2, #0xf lsr r2, r2, #0x11 orr r2, r4 add r4, r2, r0 mvn r2, r3 orr r2, r4 add r5, r0, #0 eor r5, r2 ldr r2, [sp, #0x38] add r5, r2, r5 ldr r2, _0233407C ; =0x4E0811A1 add r2, r5, r2 add r1, r1, r2 lsl r2, r1, #0x15 lsr r1, r1, #0xb orr r1, r2 add r2, r1, r4 mvn r1, r0 orr r1, r2 add r5, r4, #0 eor r5, r1 ldr r1, [sp, #0x14] add r5, r1, r5 ldr r1, _02334080 ; =0x08AC817E sub r1, r5, r1 add r1, r3, r1 lsl r3, r1, #6 lsr r1, r1, #0x1a orr r1, r3 add r1, r1, r2 mvn r3, r4 orr r3, r1 add r5, r2, #0 eor r5, r3 ldr r3, [sp, #0x30] add r5, r3, r5 ldr r3, _02334084 ; =0x42C50DCB sub r3, r5, r3 add r0, r0, r3 lsl r3, r0, #0xa lsr r0, r0, #0x16 orr r0, r3 add r5, r0, r1 mvn r0, r2 orr r0, r5 add r3, r1, #0 eor r3, r0 ldr r0, [sp, #0xc] add r3, r0, r3 ldr r0, _02334088 ; =0x2AD7D2BB add r0, r3, r0 add r0, r4, r0 lsl r3, r0, #0xf lsr r0, r0, #0x11 orr r0, r3 add r3, r0, r5 mvn r0, r1 orr r0, r3 add r4, r5, #0 eor r4, r0 ldr r0, [sp, #0x28] add r4, r0, r4 ldr r0, _0233408C ; =0x14792C6F sub r0, r4, r0 add r0, r2, r0 lsl r2, r0, #0x15 lsr r0, r0, #0xb orr r0, r2 ldr r2, [r7] add r0, r0, r3 add r1, r2, r1 str r1, [r7] ldr r1, [r7, #4] mov r2, #0x40 add r0, r1, r0 str r0, [r7, #4] ldr r0, [r7, #8] mov r1, #0 add r0, r0, r3 str r0, [r7, #8] ldr r0, [r7, #0xc] add r0, r0, r5 str r0, [r7, #0xc] add r0, sp, #0x44 bl ov02_02334100 add sp, #0x84 pop {r4, r5, r6, r7, pc} .align 2, 0 _02334010: .word 0x0005C6BE _02334014: .word 0x788E097F _02334018: .word 0x6D9D6122 _0233401C: .word 0x021AC7F4 _02334020: .word 0x5B4115BC _02334024: .word 0x4BDECFA9 _02334028: .word 0x0944B4A0 _0233402C: .word 0x41404390 _02334030: .word 0x289B7EC6 _02334034: .word 0x155ED806 _02334038: .word 0x2B10CF7B _0233403C: .word 0x04881D05 _02334040: .word 0x262B2FC7 _02334044: .word 0x1924661B _02334048: .word 0x1FA27CF8 _0233404C: .word 0x3B53A99B _02334050: .word 0x0BD6DDBC _02334054: .word 0x432AFF97 _02334058: .word 0x546BDC59 _0233405C: .word 0x036C5FC7 _02334060: .word 0x655B59C3 _02334064: .word 0x70F3336E _02334068: .word 0x00100B83 _0233406C: .word 0x7A7BA22F _02334070: .word 0x6FA87E4F _02334074: .word 0x01D31920 _02334078: .word 0x5CFEBCEC _0233407C: .word 0x4E0811A1 _02334080: .word 0x08AC817E _02334084: .word 0x42C50DCB _02334088: .word 0x2AD7D2BB _0233408C: .word 0x14792C6F thumb_func_end ov02_02333848 thumb_func_start ov02_02334090 ov02_02334090: ; 0x02334090 push {r4, r5} mov r4, #0 cmp r2, #0 bls _023340B8 _02334098: ldr r5, [r1] add r3, r0, r4 strb r5, [r0, r4] ldr r5, [r1] add r4, r4, #4 lsr r5, r5, #8 strb r5, [r3, #1] ldr r5, [r1] lsr r5, r5, #0x10 strb r5, [r3, #2] ldr r5, [r1] add r1, r1, #4 lsr r5, r5, #0x18 strb r5, [r3, #3] cmp r4, r2 blo _02334098 _023340B8: pop {r4, r5} bx lr thumb_func_end ov02_02334090 thumb_func_start ov02_023340BC ov02_023340BC: ; 0x023340BC push {r4, r5, r6, r7} mov r7, #0 cmp r2, #0 bls _023340E2 _023340C4: add r6, r1, r7 ldrb r3, [r6, #3] lsl r5, r3, #0x18 ldrb r3, [r6, #2] ldrb r6, [r6, #1] lsl r4, r3, #0x10 ldrb r3, [r1, r7] lsl r6, r6, #8 add r7, r7, #4 orr r3, r6 orr r3, r4 orr r3, r5 stmia r0!, {r3} cmp r7, r2 blo _023340C4 _023340E2: pop {r4, r5, r6, r7} bx lr .align 2, 0 thumb_func_end ov02_023340BC thumb_func_start ov02_023340E8 ov02_023340E8: ; 0x023340E8 push {r3, r4} mov r4, #0 cmp r2, #0 bls _023340FA _023340F0: ldrb r3, [r1, r4] strb r3, [r0, r4] add r4, r4, #1 cmp r4, r2 blo _023340F0 _023340FA: pop {r3, r4} bx lr .align 2, 0 thumb_func_end ov02_023340E8 thumb_func_start ov02_02334100 ov02_02334100: ; 0x02334100 mov r3, #0 cmp r2, #0 bls _02334114 lsl r1, r1, #0x18 asr r1, r1, #0x18 _0233410A: add r3, r3, #1 strb r1, [r0] add r0, r0, #1 cmp r3, r2 blo _0233410A _02334114: bx lr .align 2, 0 thumb_func_end ov02_02334100 thumb_func_start ov02_02334118 ov02_02334118: ; 0x02334118 push {r4, r5, r6, lr} sub sp, #0x58 add r5, r0, #0 add r4, r1, #0 add r6, r2, #0 add r0, sp, #0 bl ov02_02333754 add r0, sp, #0 add r1, r4, #0 add r2, r6, #0 bl ov02_0233377C add r0, r5, #0 add r1, sp, #0 bl ov02_023337F4 add sp, #0x58 pop {r4, r5, r6, pc} .align 2, 0 thumb_func_end ov02_02334118 thumb_func_start ov02_02334140 ov02_02334140: ; 0x02334140 push {r3, lr} bl sub_0207AE44 lsr r2, r0, #0x1a lsl r1, r1, #6 orr r1, r2 ldr r2, _02334158 ; =0x000082EA lsl r0, r0, #6 mov r3, #0 bl _ll_udiv pop {r3, pc} .align 2, 0 _02334158: .word 0x000082EA thumb_func_end ov02_02334140 thumb_func_start ov02_0233415C ov02_0233415C: ; 0x0233415C push {r3, r4, r5, lr} add r4, r0, #0 mul r4, r1 ldr r1, _0233417C ; =ov02_023594D0 add r0, r4, #0 ldr r1, [r1, #4] blx r1 add r5, r0, #0 beq _02334176 mov r1, #0 add r2, r4, #0 bl memset _02334176: add r0, r5, #0 pop {r3, r4, r5, pc} nop _0233417C: .word ov02_023594D0 thumb_func_end ov02_0233415C thumb_func_start ov02_02334180 ov02_02334180: ; 0x02334180 push {r3, lr} ldr r1, _0233418C ; =ov02_023594D0 ldr r1, [r1, #0xc] blx r1 pop {r3, pc} nop _0233418C: .word ov02_023594D0 thumb_func_end ov02_02334180 thumb_func_start ov02_02334190 ov02_02334190: ; 0x02334190 push {r4, r5} lsl r1, r1, #0x18 lsr r3, r1, #0x18 mov r1, #0xf0 and r1, r3 asr r5, r1, #4 mov r1, #0xf add r2, r0, #0 mov r4, #0 and r1, r3 _023341A4: cmp r5, #9 bgt _023341AC add r5, #0x30 b _023341AE _023341AC: add r5, #0x37 _023341AE: add r4, r4, #1 strb r5, [r2] add r2, r2, #1 add r5, r1, #0 cmp r4, #2 blt _023341A4 mov r1, #0 strb r1, [r2] sub r0, r2, r0 pop {r4, r5} bx lr thumb_func_end ov02_02334190 thumb_func_start ov02_023341C4 ov02_023341C4: ; 0x023341C4 push {r3, r4, r5, r6, r7, lr} str r0, [sp] add r6, r1, #0 add r4, r0, #0 mov r5, #0 mov r7, #0x3a _023341D0: mov r1, #0 ldrsb r1, [r6, r1] add r0, r4, #0 add r6, r6, #1 bl ov02_02334190 add r0, r4, r0 add r4, r0, #0 cmp r5, #5 bge _023341E8 add r4, r0, #1 strb r7, [r0] _023341E8: add r5, r5, #1 cmp r5, #6 blt _023341D0 mov r0, #0 strb r0, [r4] ldr r0, [sp] sub r0, r4, r0 pop {r3, r4, r5, r6, r7, pc} thumb_func_end ov02_023341C4 thumb_func_start ov02_023341F8 ov02_023341F8: ; 0x023341F8 push {r4, r5, r6, lr} sub sp, #8 add r4, r0, #0 ldr r0, _023342C8 ; =ov02_023594D0 ldr r0, [r0, #0x38] cmp r0, #1 blt _02334212 cmp r0, #5 bgt _02334212 mov r0, #9 add sp, #8 mvn r0, r0 pop {r4, r5, r6, pc} _02334212: ldr r5, _023342CC ; =ov02_02353008 ldr r0, _023342C8 ; =ov02_023594D0 mov r6, #7 str r1, [r5, #0x10] str r6, [r0, #0x38] str r2, [r0, #0x7c] ldr r2, [sp, #0x18] str r3, [r0, #4] str r2, [r0, #0xc] ldr r0, [sp, #0x1c] str r0, [r5, #8] add r0, r1, #0 bl ov02_02331364 mov r2, #1 ldr r1, _023342C8 ; =ov02_023594D0 cmp r0, #0 str r2, [r1, #0x74] bge _0233423E str r0, [r1, #0x78] add sp, #8 pop {r4, r5, r6, pc} _0233423E: add r0, r5, #0 ldr r0, [r0, #8] ldr r1, [r1, #4] blx r1 ldr r1, _023342C8 ; =ov02_023594D0 cmp r0, #0 str r0, [r1, #0x30] bne _02334258 add r0, r6, #0 sub r0, #8 str r0, [r1, #0x78] add sp, #8 pop {r4, r5, r6, pc} _02334258: bl sub_02079550 cmp r0, #1 beq _0233426C add r0, r6, #0 ldr r1, _023342C8 ; =ov02_023594D0 sub r0, #0x10 str r0, [r1, #0x78] add sp, #8 pop {r4, r5, r6, pc} _0233426C: add r0, r5, #0 ldr r3, [r0, #8] ldr r0, _023342D0 ; =ov02_0235957C str r3, [sp] str r4, [sp, #4] ldr r4, _023342C8 ; =ov02_023594D0 ldr r1, _023342D4 ; =ov02_023327A5 ldr r5, [r4, #0x30] mov r4, #7 bic r3, r4 mov r2, #0 add r3, r5, r3 bl StartThread ldr r0, _023342C8 ; =ov02_023594D0 mov r1, #1 str r1, [r0, #0x38] bl ov02_02334140 ldr r1, _023342D8 ; =0x0000EA60 ldr r5, _023342DC ; =ov02_0235963C add r1, r0, r1 ldr r0, _023342CC ; =ov02_02353008 add r4, r6, #0 str r1, [r0, #0xc] mov r0, #0 ldr r1, _023342C8 ; =ov02_023594D0 add r2, r0, #0 str r0, [r1, #0x10] add r1, r0, #0 add r3, r0, #0 _023342AA: stmia r5!, {r0, r1, r2, r3} stmia r5!, {r0, r1, r2, r3} sub r4, r4, #1 bne _023342AA stmia r5!, {r0, r1} bl ov02_023343C0 ldr r0, _023342D0 ; =ov02_0235957C bl OS_WakeupThreadDirect ldr r1, _023342C8 ; =ov02_023594D0 mov r0, #1 str r0, [r1, #0x64] add sp, #8 pop {r4, r5, r6, pc} .align 2, 0 _023342C8: .word ov02_023594D0 _023342CC: .word ov02_02353008 _023342D0: .word ov02_0235957C _023342D4: .word ov02_023327A4 + 1 _023342D8: .word 0x0000EA60 _023342DC: .word ov02_0235963C thumb_func_end ov02_023341F8 thumb_func_start ov02_023342E0 ov02_023342E0: ; 0x023342E0 push {r4, r5, r6, lr} ldr r4, _0233436C ; =ov02_023594D0 ldr r0, [r4, #0x64] cmp r0, #0 beq _02334350 ldr r6, [r4, #0x38] mov r0, #1 str r0, [r4, #0x10] mov r5, #0x64 b _023342FA _023342F4: add r0, r5, #0 bl sub_02079B14 _023342FA: ldr r0, [r4, #0x38] cmp r0, #1 blt _02334304 cmp r0, #5 ble _023342F4 _02334304: mov r0, #0x7d lsl r0, r0, #2 bl sub_02079B14 ldr r0, _02334370 ; =ov02_0235957C bl sub_02079830 cmp r0, #0 bne _0233432E ldr r4, _02334370 ; =ov02_0235957C _02334318: add r0, r4, #0 bl OS_WakeupThreadDirect add r0, r4, #0 bl sub_02079800 add r0, r4, #0 bl sub_02079830 cmp r0, #0 beq _02334318 _0233432E: ldr r1, _0233436C ; =ov02_023594D0 ldr r0, [r1, #0x30] cmp r0, #0 beq _02334340 ldr r1, [r1, #0xc] blx r1 ldr r0, _0233436C ; =ov02_023594D0 mov r1, #0 str r1, [r0, #0x30] _02334340: ldr r0, _0233436C ; =ov02_023594D0 mov r1, #0 str r1, [r0, #0x64] ldr r0, [r0, #0x38] cmp r6, r0 beq _02334350 bl ov02_023343C0 _02334350: ldr r0, _0233436C ; =ov02_023594D0 ldr r0, [r0, #0x74] cmp r0, #0 ble _02334364 bl ov02_02331408 ldr r1, _0233436C ; =ov02_023594D0 mov r2, #0 str r2, [r1, #0x74] pop {r4, r5, r6, pc} _02334364: mov r0, #9 mvn r0, r0 pop {r4, r5, r6, pc} nop _0233436C: .word ov02_023594D0 _02334370: .word ov02_0235957C thumb_func_end ov02_023342E0 thumb_func_start ov02_02334374 ov02_02334374: ; 0x02334374 push {r4, lr} add r4, r0, #0 ldr r0, _023343A4 ; =ov02_023594D0 ldr r0, [r0, #0x38] str r0, [r4] ldr r0, _023343A8 ; =ov02_02353008 ldr r1, [r0, #0xc] mov r0, #0 mvn r0, r0 cmp r1, r0 bne _0233438C b _02334396 _0233438C: bl ov02_02334140 ldr r1, _023343A8 ; =ov02_02353008 ldr r1, [r1, #0xc] sub r0, r1, r0 _02334396: str r0, [r4, #4] ldr r0, _023343A4 ; =ov02_023594D0 ldr r0, [r0, #0x78] str r0, [r4, #8] mov r0, #1 pop {r4, pc} nop _023343A4: .word ov02_023594D0 _023343A8: .word ov02_02353008 thumb_func_end ov02_02334374 thumb_func_start ov02_023343AC ov02_023343AC: ; 0x023343AC push {r3, lr} ldr r1, _023343BC ; =ov02_0235963C mov r2, #0xe8 bl memcpy mov r0, #1 pop {r3, pc} nop _023343BC: .word ov02_0235963C thumb_func_end ov02_023343AC thumb_func_start ov02_023343C0 ov02_023343C0: ; 0x023343C0 push {lr} sub sp, #0xc add r0, sp, #0 bl ov02_02334374 ldr r1, _023343D8 ; =ov02_023594D0 add r0, sp, #0 ldr r1, [r1, #0x7c] blx r1 add sp, #0xc pop {pc} nop _023343D8: .word ov02_023594D0 thumb_func_end ov02_023343C0 arm_func_start ov02_023343DC ov02_023343DC: ; 0x023343DC stmdb sp!, {r4, r5, r6, lr} mov r4, r0 mov r0, #0xc mov r1, #4 bl ov02_0234E7B4 ldr r2, _0233449C ; =ov02_0235AA04 mov r1, #0x47 str r0, [r2] strb r4, [r0, #8] mov r0, #0 bl ov02_0234D6AC ldr lr, _0233449C ; =ov02_0235AA04 ldr r1, _023344A0 ; =ov02_0235248C ldr r2, [lr] ldrb r4, [r1, r4] str r0, [r2, #4] ldr r0, [lr] ldr ip, _023344A4 ; =0xFE00FF00 ldr r5, [r0, #4] ldr r1, _023344A8 ; =ov02_023344E8 ldrh r3, [r5, #4] mov r0, #1 mov r2, #0 bic r3, r3, #0xc00 orr r3, r3, #0x400 strh r3, [r5, #4] ldr r5, [lr] mov r3, #0x78 ldr r6, [r5, #4] ldr r5, [r6] bic r5, r5, #0xc00 str r5, [r6] ldrh r5, [r6, #4] bic r5, r5, #0xf000 orr r4, r5, r4, lsl #12 strh r4, [r6, #4] ldr r4, [lr] ldr r4, [r4, #4] ldr lr, [r4] and ip, lr, ip orr ip, ip, #0x8b orr ip, ip, #0xe60000 str ip, [r4] bl ov02_0234FA98 ldr r1, _0233449C ; =ov02_0235AA04 ldr r1, [r1] str r0, [r1] ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _0233449C: .word ov02_0235AA04 _023344A0: .word ov02_0235248C _023344A4: .word 0xFE00FF00 _023344A8: .word ov02_023344E8 arm_func_end ov02_023343DC arm_func_start ov02_023344AC ov02_023344AC: ; 0x023344AC stmdb sp!, {r3, lr} ldr r1, _023344E0 ; =ov02_0235AA04 mov r0, #1 ldr r1, [r1] ldr r1, [r1] bl ov02_0234FB60 ldr r0, _023344E0 ; =ov02_0235AA04 ldr r0, [r0] ldr r0, [r0, #4] bl ov02_0234F2C0 ldr r0, _023344E4 ; =ov02_0235AA04 bl ov02_0234E7D8 ldmia sp!, {r3, pc} .align 2, 0 _023344E0: .word ov02_0235AA04 _023344E4: .word ov02_0235AA04 arm_func_end ov02_023344AC arm_func_start ov02_023344E8 ov02_023344E8: ; 0x023344E8 stmdb sp!, {r3, lr} ldr r0, _023345A8 ; =ov02_0235AA04 mov r1, #0x28 ldr r0, [r0] ldrb r0, [r0, #9] add r0, r0, #1 bl FX_ModS32 ldr r2, _023345A8 ; =ov02_0235AA04 mov r1, #5 ldr r3, [r2] strb r0, [r3, #9] ldr r0, [r2] ldrb r0, [r0, #9] bl FX_DivS32 ldr r2, _023345A8 ; =ov02_0235AA04 add r1, r0, #0x47 ldr r2, [r2] mov r0, #0 ldr r2, [r2, #4] bl ov02_0234D618 ldr r1, _023345A8 ; =ov02_0235AA04 ldr ip, _023345AC ; =ov02_0235248C ldr r2, [r1] ldr r0, _023345B0 ; =0xFE00FF00 ldr r3, [r2, #4] ldrh r2, [r3, #4] bic r2, r2, #0xc00 orr r2, r2, #0x400 strh r2, [r3, #4] ldr r2, [r1] ldrb lr, [r2, #8] ldr r3, [r2, #4] ldr r2, [r3] ldrb ip, [ip, lr] bic r2, r2, #0xc00 str r2, [r3] ldrh r2, [r3, #4] bic r2, r2, #0xf000 orr r2, r2, ip, lsl #12 strh r2, [r3, #4] ldr r1, [r1] ldr r2, [r1, #4] ldr r1, [r2] and r0, r1, r0 orr r0, r0, #0x8b orr r0, r0, #0xe60000 str r0, [r2] ldmia sp!, {r3, pc} .align 2, 0 _023345A8: .word ov02_0235AA04 _023345AC: .word ov02_0235248C _023345B0: .word 0xFE00FF00 arm_func_end ov02_023344E8 arm_func_start ov02_023345B4 ov02_023345B4: ; 0x023345B4 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} ldr r2, _0233469C ; =ov02_023524BC mov r5, r0 mov r0, #0x1c mov r1, #4 ldrb r8, [r2, r5] bl ov02_0234E7B4 ldr r4, _023346A0 ; =ov02_0235AA08 mvn r7, #1 str r0, [r4] strb r7, [r0, #0x16] ldr r0, [r4] cmp r8, #0 strb r5, [r0, #0x17] mov sb, #0 ble _02334640 ldr r0, _023346A4 ; =ov02_023524A0 mov r6, sb add sl, r0, r5, lsl #1 mov r5, #1 mov fp, r5 _02334608: ldrb r1, [sl], #1 mov r0, r6 mov r2, r5 bl ov02_0234D6D8 ldr r1, [r4] mov r2, fp str r0, [r1, sb, lsl #2] ldr r0, [r4] add r1, r7, #1 ldr r0, [r0, sb, lsl #2] bl ov02_0234D530 add sb, sb, #1 cmp sb, r8 blt _02334608 _02334640: mov r1, #1 mov r2, r1 mov r0, #0 bl ov02_0234D6D8 ldr r3, _023346A0 ; =ov02_0235AA08 mvn r1, #0 ldr r4, [r3] mov r2, #1 str r0, [r4, #8] ldr r0, [r3] ldr r0, [r0, #8] bl ov02_0234D530 mov r0, #0xc0 bl ov02_02334780 mov r0, #0 ldr r1, _023346A8 ; =ov02_02334814 mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _023346A0 ; =ov02_0235AA08 ldr r1, [r1] str r0, [r1, #0xc] ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _0233469C: .word ov02_023524BC _023346A0: .word ov02_0235AA08 _023346A4: .word ov02_023524A0 _023346A8: .word ov02_02334814 arm_func_end ov02_023345B4 arm_func_start ov02_023346AC ov02_023346AC: ; 0x023346AC ldr r0, _023346D0 ; =ov02_0235AA08 mov r3, #1 ldr r2, [r0] ldr ip, _023346D4 ; =ov02_0234FB38 strb r3, [r2, #0x19] ldr r0, [r0] ldr r1, _023346D8 ; =ov02_02334A5C ldr r0, [r0, #0xc] bx ip .align 2, 0 _023346D0: .word ov02_0235AA08 _023346D4: .word ov02_0234FB38 _023346D8: .word ov02_02334A5C arm_func_end ov02_023346AC arm_func_start ov02_023346DC ov02_023346DC: ; 0x023346DC ldr r0, _023346EC ; =ov02_0235AA08 ldr r0, [r0] ldrsb r0, [r0, #0x16] bx lr .align 2, 0 _023346EC: .word ov02_0235AA08 arm_func_end ov02_023346DC arm_func_start ov02_023346F0 ov02_023346F0: ; 0x023346F0 ldr r2, _0233470C ; =ov02_0235AA08 mvn r1, #0 ldr r3, [r2] ldrsb r2, [r3, #0x16] cmp r2, r1 streqb r0, [r3, #0x16] bx lr .align 2, 0 _0233470C: .word ov02_0235AA08 arm_func_end ov02_023346F0 arm_func_start ov02_02334710 ov02_02334710: ; 0x02334710 ldr r1, _02334720 ; =ov02_0235AA08 ldr r1, [r1] strb r0, [r1, #0x16] bx lr .align 2, 0 _02334720: .word ov02_0235AA08 arm_func_end ov02_02334710 arm_func_start ov02_02334724 ov02_02334724: ; 0x02334724 ldr r0, _0233474C ; =ov02_0235AA08 ldr r0, [r0] cmp r0, #0 moveq r0, #1 bxeq lr ldrb r0, [r0, #0x19] cmp r0, #0 moveq r0, #1 movne r0, #0 bx lr .align 2, 0 _0233474C: .word ov02_0235AA08 arm_func_end ov02_02334724 arm_func_start ov02_02334750 ov02_02334750: ; 0x02334750 ldr r0, _02334764 ; =ov02_0235AA08 mov r1, #0 ldr r0, [r0] strb r1, [r0, #0x18] bx lr .align 2, 0 _02334764: .word ov02_0235AA08 arm_func_end ov02_02334750 arm_func_start ov02_02334768 ov02_02334768: ; 0x02334768 ldr r0, _0233477C ; =ov02_0235AA08 mov r1, #1 ldr r0, [r0] strb r1, [r0, #0x18] bx lr .align 2, 0 _0233477C: .word ov02_0235AA08 arm_func_end ov02_02334768 arm_func_start ov02_02334780 ov02_02334780: ; 0x02334780 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} ldr r1, _02334804 ; =ov02_0235AA08 mov r8, r0 ldr r0, [r1] ldr r1, _02334808 ; =ov02_023524BC ldrb r2, [r0, #0x17] ldr r0, [r0, #8] mov r3, r8 ldrb r6, [r1, r2] mvn r1, #0 mov r2, #0 bl ov02_0234D440 mov r7, #0 cmp r6, #0 ldmleia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} ldr r4, _0233480C ; =ov02_023524AE ldr sl, _02334810 ; =ov02_02352498 ldr sb, _02334804 ; =ov02_0235AA08 mvn r5, #0 _023347CC: ldr r0, [sb] mov r1, r5 ldrb r2, [r0, #0x17] ldr r0, [r0, r7, lsl #2] add r3, r8, #4 add r2, r4, r2, lsl #1 ldrb r2, [r7, r2] mov r2, r2, lsl #2 ldrh r2, [sl, r2] bl ov02_0234D440 add r7, r7, #1 cmp r7, r6 blt _023347CC ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} .align 2, 0 _02334804: .word ov02_0235AA08 _02334808: .word ov02_023524BC _0233480C: .word ov02_023524AE _02334810: .word ov02_02352498 arm_func_end ov02_02334780 arm_func_start ov02_02334814 ov02_02334814: ; 0x02334814 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _02334878 ; =ov02_0235AA08 mov r4, r0 ldr r0, [r1] add r2, sp, #4 ldr r0, [r0, #8] add r3, sp, #0 mov r1, #0 bl ov02_0234D590 ldr r0, [sp] sub r0, r0, #4 str r0, [sp] bl ov02_02334780 ldr r0, [sp] cmp r0, #0xa8 addgt sp, sp, #8 ldmgtia sp!, {r4, pc} mov r0, #0xa8 bl ov02_02334780 ldr r1, _0233487C ; =ov02_02334880 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _02334878: .word ov02_0235AA08 _0233487C: .word ov02_02334880 arm_func_end ov02_02334814 arm_func_start ov02_02334880 ov02_02334880: ; 0x02334880 stmdb sp!, {r3, lr} ldr r1, _023348C8 ; =ov02_0235AA08 mvn r3, #0 ldr r2, [r1] strb r3, [r2, #0x16] ldr r3, [r1] ldrh r2, [r3, #0x14] add r2, r2, #1 strh r2, [r3, #0x14] ldr r3, [r1] ldrh r1, [r3, #0x14] cmp r1, #4 ldmloia sp!, {r3, pc} ldr r1, _023348CC ; =ov02_023348D0 mov r2, #0 strh r2, [r3, #0x14] bl ov02_0234FB38 ldmia sp!, {r3, pc} .align 2, 0 _023348C8: .word ov02_0235AA08 _023348CC: .word ov02_023348D0 arm_func_end ov02_02334880 arm_func_start ov02_023348D0 ov02_023348D0: ; 0x023348D0 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} sub sp, sp, #8 ldr r8, _02334A3C ; =ov02_0235AA08 ldr r1, _02334A40 ; =ov02_023524BC ldr r3, [r8] ldrb r2, [r3, #0x17] ldrb r0, [r3, #0x18] ldrb r6, [r1, r2] cmp r0, #0 bne _02334A24 ldrsb r1, [r3, #0x16] mvn r0, #0 cmp r1, r0 addne sp, sp, #8 ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} cmp r6, #0 mov r7, #0 ble _02334A24 ldr r5, _02334A44 ; =ov02_02352498 ldr r4, _02334A48 ; =ov02_023524AE ldr sl, _02334A4C ; =ov02_02352494 add sb, sp, #0 _02334928: ldr r0, [r8] mov r1, sl ldrb r0, [r0, #0x17] mov r2, sb add r0, r4, r0, lsl #1 ldrb r0, [r7, r0] add r0, r5, r0, lsl #2 bl ov02_0234E39C mov r0, sb bl ov02_0234ED04 cmp r0, #0 beq _02334A18 ldr r0, _02334A3C ; =ov02_0235AA08 ldr r3, [r0] ldr r0, [r3, #0x10] cmp r0, #0 bne _02334A24 ldrb r2, [r3, #0x17] ldr r1, _02334A50 ; =ov02_023524A0 ldr r0, [r3, r7, lsl #2] add r1, r1, r2, lsl #1 ldrb r4, [r7, r1] mov r1, #0 bl ov02_0234D308 mov r2, r0 add r1, r4, #1 mov r0, #0 bl ov02_0234D618 ldr r0, _02334A3C ; =ov02_0235AA08 ldr r1, _02334A48 ; =ov02_023524AE ldr r0, [r0] ldr r2, _02334A44 ; =ov02_02352498 ldrb r4, [r0, #0x17] ldr r3, _02334A54 ; =ov02_0235249A ldr r0, [r0, r7, lsl #2] add r1, r1, r4, lsl #1 ldrb r4, [r7, r1] mvn r1, #0 mov r4, r4, lsl #2 ldrh r2, [r2, r4] ldrh r3, [r3, r4] bl ov02_0234D440 ldr r0, _02334A3C ; =ov02_0235AA08 mvn r1, #0 ldr r0, [r0] mov r2, #1 ldr r0, [r0, r7, lsl #2] bl ov02_0234D530 mov r0, #0 ldr r1, _02334A58 ; =ov02_02334B38 mov r2, r0 mov r3, #0x6e bl ov02_0234FA98 ldr r1, _02334A3C ; =ov02_0235AA08 add sp, sp, #8 ldr r2, [r1] str r0, [r2, #0x10] ldr r0, [r1] strb r7, [r0, #0x16] ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} _02334A18: add r7, r7, #1 cmp r7, r6 blt _02334928 _02334A24: ldr r0, _02334A3C ; =ov02_0235AA08 mvn r1, #0 ldr r0, [r0] strb r1, [r0, #0x16] add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} .align 2, 0 _02334A3C: .word ov02_0235AA08 _02334A40: .word ov02_023524BC _02334A44: .word ov02_02352498 _02334A48: .word ov02_023524AE _02334A4C: .word ov02_02352494 _02334A50: .word ov02_023524A0 _02334A54: .word ov02_0235249A _02334A58: .word ov02_02334B38 arm_func_end ov02_023348D0 arm_func_start ov02_02334A5C ov02_02334A5C: ; 0x02334A5C stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _02334AB8 ; =ov02_0235AA08 mov r4, r0 ldr r0, [r1] add r2, sp, #4 ldr r0, [r0, #8] add r3, sp, #0 mov r1, #0 bl ov02_0234D590 ldr r0, [sp] add r0, r0, #4 str r0, [sp] bl ov02_02334780 ldr r0, [sp] cmp r0, #0xc0 addlt sp, sp, #8 ldmltia sp!, {r4, pc} ldr r1, _02334ABC ; =ov02_02334AC0 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _02334AB8: .word ov02_0235AA08 _02334ABC: .word ov02_02334AC0 arm_func_end ov02_02334A5C arm_func_start ov02_02334AC0 ov02_02334AC0: ; 0x02334AC0 stmdb sp!, {r3, r4, r5, lr} mov r1, r0 mov r0, #0 bl ov02_0234FB40 ldr r0, _02334B30 ; =ov02_0235AA08 ldr r0, [r0] ldr r1, [r0, #0x10] cmp r1, #0 beq _02334AEC mov r0, #0 bl ov02_0234FB40 _02334AEC: ldr r4, _02334B30 ; =ov02_0235AA08 mov r5, #0 _02334AF4: ldr r0, [r4] ldr r0, [r0, r5, lsl #2] cmp r0, #0 beq _02334B08 bl ov02_0234D288 _02334B08: add r5, r5, #1 cmp r5, #2 blt _02334AF4 ldr r0, _02334B30 ; =ov02_0235AA08 ldr r0, [r0] ldr r0, [r0, #8] bl ov02_0234D288 ldr r0, _02334B34 ; =ov02_0235AA08 bl ov02_0234E7D8 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _02334B30: .word ov02_0235AA08 _02334B34: .word ov02_0235AA08 arm_func_end ov02_02334AC0 arm_func_start ov02_02334B38 ov02_02334B38: ; 0x02334B38 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} ldr r4, _02334C1C ; =ov02_0235AA08 str r0, [sp] ldr r1, [r4] ldrh r0, [r1, #0x14] add r0, r0, #1 strh r0, [r1, #0x14] ldr r1, [r4] ldrh r0, [r1, #0x14] cmp r0, #0x10 ldmloia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} ldrb r1, [r1, #0x17] ldr r0, _02334C20 ; =ov02_023524BC mov sb, #0 ldrb r8, [r0, r1] cmp r8, #0 ble _02334BD8 ldr r7, _02334C24 ; =ov02_023524A0 mov r6, sb mov fp, sb mvn r5, #0 _02334B8C: ldr r0, [r4] mov r1, r6 ldrb r2, [r0, #0x17] ldr r0, [r0, sb, lsl #2] add r2, r7, r2, lsl #1 ldrb sl, [sb, r2] bl ov02_0234D308 mov r2, r0 mov r1, sl mov r0, fp bl ov02_0234D618 ldr r0, [r4] mov r1, r5 ldr r0, [r0, sb, lsl #2] mov r2, #1 bl ov02_0234D530 add sb, sb, #1 cmp sb, r8 blt _02334B8C _02334BD8: mov r0, #0xa8 bl ov02_02334780 ldr r1, _02334C1C ; =ov02_0235AA08 mov r0, #0 ldr r2, [r1] sub r3, r0, #1 strh r0, [r2, #0x14] ldr r2, [r1] strb r3, [r2, #0x16] ldr r2, [r1] ldr r1, [r2, #0x10] cmp r1, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} ldr r1, [sp] str r0, [r2, #0x10] bl ov02_0234FB40 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _02334C1C: .word ov02_0235AA08 _02334C20: .word ov02_023524BC _02334C24: .word ov02_023524A0 arm_func_end ov02_02334B38 arm_func_start ov02_02334C28 ov02_02334C28: ; 0x02334C28 ldr r0, _02334C38 ; =ov02_0235AA0C mov r1, #0 strb r1, [r0] bx lr .align 2, 0 _02334C38: .word ov02_0235AA0C arm_func_end ov02_02334C28 arm_func_start ov02_02334C3C ov02_02334C3C: ; 0x02334C3C stmdb sp!, {r3, r4, r5, r6, r7, lr} sub sp, sp, #0x10 ldr r3, _02334CF8 ; =ov02_0235AA0C mov r7, r0 ldrb r0, [r3] mov r6, r1 mov r5, r2 cmp r0, #0 addne sp, sp, #0x10 movne r0, #0 ldmneia sp!, {r3, r4, r5, r6, r7, pc} ldr r0, _02334CFC ; =ov02_023530D0 ldr r1, _02334D00 ; =GX_LoadBG0Scr bl ov02_02334DA8 ldr r3, _02334D04 ; =0x01920000 ldr r2, _02334D08 ; =0x04001010 mov r0, #1 mov r1, #0 str r3, [r2] bl ov02_0234DDC8 ldr r1, _02334D0C ; =ov02_0235AA98 mov r4, r0 ldr r0, [r1] mov r1, r7 mov r2, r6 mov r3, r5 bl ov02_02338F74 mov r5, r0 bl ov02_02334FA0 mov r1, #0x40 str r1, [sp] mov r1, #2 str r1, [sp, #4] str r0, [sp, #8] str r5, [sp, #0xc] mov r0, r4 mov r1, #0x14 mov r2, #0 mov r3, #0xd8 bl ov02_0234E1E8 mov r0, r4 bl ov02_0234E354 mov r0, #1 ldr r1, _02334CF8 ; =ov02_0235AA0C strb r0, [r1] add sp, sp, #0x10 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _02334CF8: .word ov02_0235AA0C _02334CFC: .word ov02_023530D0 _02334D00: .word GX_LoadBG0Scr _02334D04: .word 0x01920000 _02334D08: .word 0x04001010 _02334D0C: .word ov02_0235AA98 arm_func_end ov02_02334C3C arm_func_start ov02_02334D10 ov02_02334D10: ; 0x02334D10 stmdb sp!, {r3, lr} ldr r0, _02334D44 ; =ov02_0235AA0C ldrb r0, [r0] cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r3, pc} mov r0, #1 bl ov02_0234E02C ldr r0, _02334D44 ; =ov02_0235AA0C mov r1, #0 strb r1, [r0] mov r0, #1 ldmia sp!, {r3, pc} .align 2, 0 _02334D44: .word ov02_0235AA0C arm_func_end ov02_02334D10 arm_func_start ov02_02334D48 ov02_02334D48: ; 0x02334D48 stmdb sp!, {r4, lr} mov r4, r0 ldr r0, _02334DA0 ; =ov02_0235AA10 mov r1, r4 mov r2, #0x3f bl strncpy ldrb r0, [r4, #5] cmp r0, #0x78 ldreq r0, _02334DA0 ; =ov02_0235AA10 ldmeqia sp!, {r4, pc} bl ov02_02338DF0 ldrb r1, [r4, #5] cmp r1, #0x79 bne _02334D8C cmp r0, #0 ldrne r0, _02334DA0 ; =ov02_0235AA10 ldmneia sp!, {r4, pc} _02334D8C: ldr r1, _02334DA4 ; =ov02_0235250C ldrb r1, [r1, r0] ldr r0, _02334DA0 ; =ov02_0235AA10 strb r1, [r0, #5] ldmia sp!, {r4, pc} .align 2, 0 _02334DA0: .word ov02_0235AA10 _02334DA4: .word ov02_0235250C arm_func_end ov02_02334D48 arm_func_start ov02_02334DA8 ov02_02334DA8: ; 0x02334DA8 stmdb sp!, {r3, r4, r5, lr} mov r5, r1 bl ov02_02334D48 add r1, sp, #0 mov r2, #4 bl ov02_0234CE84 ldr r1, [sp] mov r4, r0 bl DC_FlushRange ldr r2, [sp] mov r0, r4 mov r1, #0 blx r5 mov r0, r4 bl ov02_0234CF78 ldmia sp!, {r3, r4, r5, pc} arm_func_end ov02_02334DA8 arm_func_start ov02_02334DE8 ov02_02334DE8: ; 0x02334DE8 stmdb sp!, {r3, r4, lr} sub sp, sp, #4 mov r4, r0 add r0, sp, #0 mov r1, #0 bl ov02_02338D8C ldr r0, [sp] cmp r0, #1 bne _02334E1C mov r0, r4 bl ov02_02348174 add sp, sp, #4 ldmia sp!, {r3, r4, pc} _02334E1C: cmp r0, #2 addne sp, sp, #4 ldmneia sp!, {r3, r4, pc} mov r0, r4 bl ov02_02348708 add sp, sp, #4 ldmia sp!, {r3, r4, pc} arm_func_end ov02_02334DE8 arm_func_start ov02_02334E38 ov02_02334E38: ; 0x02334E38 stmdb sp!, {r3, r4, lr} sub sp, sp, #4 mov r4, r0 add r1, sp, #0 mov r0, #0 bl ov02_02338D8C ldr r0, [sp] cmp r0, #1 addne sp, sp, #4 ldmneia sp!, {r3, r4, pc} mov r0, r4 bl ov02_023345B4 add sp, sp, #4 ldmia sp!, {r3, r4, pc} arm_func_end ov02_02334E38 arm_func_start ov02_02334E70 ov02_02334E70: ; 0x02334E70 stmdb sp!, {r3, r4, r5, lr} sub sp, sp, #0x10 mov r4, r0 mov r0, #0 mov r1, r0 bl ov02_0234DDC8 ldr r1, _02334EE0 ; =ov02_0235AA98 mov r5, r0 ldr r0, [r1] mov r1, r4 bl ov02_02338F5C mov r4, r0 bl ov02_02334FA0 mov r1, #0x70 str r1, [sp] mov r1, #2 str r1, [sp, #4] str r0, [sp, #8] str r4, [sp, #0xc] mov r0, r5 mov r1, #0xd mov r2, #0x28 mov r3, #0xe6 bl ov02_0234E1E8 mov r0, r5 bl ov02_0234E354 add sp, sp, #0x10 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _02334EE0: .word ov02_0235AA98 arm_func_end ov02_02334E70 arm_func_start ov02_02334EE4 ov02_02334EE4: ; 0x02334EE4 stmdb sp!, {r4, r5, r6, lr} sub sp, sp, #0x10 mov r5, r0 mov r0, #0 mov r6, r1 mov r1, r0 bl ov02_0234DDC8 ldr r1, _02334F90 ; =ov02_0235AA98 mov r4, r0 ldr r0, [r1] mov r1, r6 bl ov02_02338F5C mov r6, r0 bl ov02_02334FA0 mov r1, #0x5e str r1, [sp] mov r1, #2 str r1, [sp, #4] str r0, [sp, #8] mov r0, r4 mov r1, #0xd mov r2, #0x3c mov r3, #0xe6 str r6, [sp, #0xc] bl ov02_0234E1E8 bl ov02_02338DF0 mov r6, r0 bl ov02_02338DF0 ldr r1, _02334F94 ; =0x00000209 mov r3, r0, lsl #2 stmia sp, {r1, r5} ldr r2, _02334F98 ; =ov02_023524F2 ldr r1, _02334F9C ; =ov02_023524F0 mov ip, r6, lsl #2 ldrh r2, [r2, r3] ldrh r1, [r1, ip] mov r0, r4 mov r3, #2 bl ov02_0234E050 mov r0, r4 bl ov02_0234E354 add sp, sp, #0x10 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _02334F90: .word ov02_0235AA98 _02334F94: .word 0x00000209 _02334F98: .word ov02_023524F2 _02334F9C: .word ov02_023524F0 arm_func_end ov02_02334EE4 arm_func_start ov02_02334FA0 ov02_02334FA0: ; 0x02334FA0 stmdb sp!, {r3, lr} bl ov02_02338DF0 ldr r1, _02334FB4 ; =ov02_023524D4 ldr r0, [r1, r0, lsl #2] ldmia sp!, {r3, pc} .align 2, 0 _02334FB4: .word ov02_023524D4 arm_func_end ov02_02334FA0 arm_func_start ov02_02334FB8 ov02_02334FB8: ; 0x02334FB8 stmdb sp!, {r3, lr} mov r0, #0x10 mov r1, #4 bl ov02_0234E7B4 ldr r1, _02334FD4 ; =ov02_0235AA50 str r0, [r1] ldmia sp!, {r3, pc} .align 2, 0 _02334FD4: .word ov02_0235AA50 arm_func_end ov02_02334FB8 arm_func_start ov02_02334FD8 ov02_02334FD8: ; 0x02334FD8 stmdb sp!, {r3, lr} bl ov02_0233519C ldr r0, _02334FEC ; =ov02_0235AA50 bl ov02_0234E7D8 ldmia sp!, {r3, pc} .align 2, 0 _02334FEC: .word ov02_0235AA50 arm_func_end ov02_02334FD8 arm_func_start ov02_02334FF0 ov02_02334FF0: ; 0x02334FF0 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #8 mov r4, r0 str r1, [sp] str r2, [sp, #4] mov fp, r3 bl ov02_0233519C ldr r0, _023350A4 ; =ov02_02352514 mov sb, #0 add sl, r0, r4, lsl #1 mov r7, #1 ldr r4, _023350A8 ; =ov02_0235AA50 mov r8, sb mvn r6, #0 mov r5, r7 _0233502C: ldrb r1, [sl], #1 mov r0, r8 mov r2, r7 bl ov02_0234D6D8 ldr r2, [r4] mov r1, r6 str r0, [r2, sb, lsl #2] ldr r0, [r4] mov r2, r5 ldr r0, [r0, sb, lsl #2] bl ov02_0234D530 add sb, sb, #1 cmp sb, #2 blt _0233502C ldr r0, _023350A8 ; =ov02_0235AA50 ldr r2, [sp] ldr r0, [r0] mov r3, fp ldr r0, [r0] mvn r1, #0 bl ov02_0234D440 ldr r0, _023350A8 ; =ov02_0235AA50 ldr r2, [sp, #4] ldr r0, [r0] mov r3, fp ldr r0, [r0, #4] mvn r1, #0 bl ov02_0234D440 add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _023350A4: .word ov02_02352514 _023350A8: .word ov02_0235AA50 arm_func_end ov02_02334FF0 arm_func_start ov02_023350AC ov02_023350AC: ; 0x023350AC stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0xc mov fp, r0 str r1, [sp] str r2, [sp, #4] str r3, [sp, #8] mov sb, #6 bl ov02_0233519C mov sl, #0 mov r7, #1 ldr r4, _02335198 ; =ov02_0235AA50 mov r8, sl mvn r6, #0 mov r5, r7 _023350E4: mov r0, r8 mov r1, sb mov r2, r7 bl ov02_0234D6D8 ldr r2, [r4] mov r1, r6 str r0, [r2, sl, lsl #2] ldr r0, [r4] mov r2, r5 ldr r0, [r0, sl, lsl #2] bl ov02_0234D530 add sl, sl, #1 cmp sl, #4 add sb, sb, #1 blt _023350E4 ldr r0, _02335198 ; =ov02_0235AA50 ldr r3, [sp, #4] ldr r0, [r0] mov r2, fp ldr r0, [r0] mvn r1, #0 bl ov02_0234D440 ldr r0, _02335198 ; =ov02_0235AA50 ldr r2, [sp] ldr r0, [r0] ldr r3, [sp, #4] ldr r0, [r0, #4] mvn r1, #0 bl ov02_0234D440 ldr r0, _02335198 ; =ov02_0235AA50 ldr r3, [sp, #8] ldr r0, [r0] mov r2, fp ldr r0, [r0, #8] mvn r1, #0 bl ov02_0234D440 ldr r0, _02335198 ; =ov02_0235AA50 ldr r2, [sp] ldr r0, [r0] ldr r3, [sp, #8] ldr r0, [r0, #0xc] mvn r1, #0 bl ov02_0234D440 add sp, sp, #0xc ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _02335198: .word ov02_0235AA50 arm_func_end ov02_023350AC arm_func_start ov02_0233519C ov02_0233519C: ; 0x0233519C stmdb sp!, {r4, r5, r6, lr} mov r6, #0 ldr r4, _023351D8 ; =ov02_0235AA50 mov r5, r6 _023351AC: ldr r0, [r4] ldr r0, [r0, r6, lsl #2] cmp r0, #0 beq _023351C8 bl ov02_0234D288 ldr r0, [r4] str r5, [r0, r6, lsl #2] _023351C8: add r6, r6, #1 cmp r6, #4 blt _023351AC ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _023351D8: .word ov02_0235AA50 arm_func_end ov02_0233519C arm_func_start ov02_023351DC ov02_023351DC: ; 0x023351DC stmdb sp!, {r3, lr} mov r0, #0xc0 mov r1, #4 bl ov02_0234E7B4 ldr r2, _02335240 ; =ov02_0235AA54 ldr r1, _02335244 ; =GX_LoadBG1Char str r0, [r2] ldr r0, _02335248 ; =ov02_02353304 bl ov02_02334DA8 bl ov02_02338E00 cmp r0, #0 beq _02335218 cmp r0, #1 beq _0233522C ldmia sp!, {r3, pc} _02335218: ldr r0, _0233524C ; =ov02_023532B4 ldr r1, _02335250 ; =GX_LoadBG1Scr ldr r0, [r0] bl ov02_02334DA8 ldmia sp!, {r3, pc} _0233522C: ldr r0, _0233524C ; =ov02_023532B4 ldr r1, _02335250 ; =GX_LoadBG1Scr ldr r0, [r0, #4] bl ov02_02334DA8 ldmia sp!, {r3, pc} .align 2, 0 _02335240: .word ov02_0235AA54 _02335244: .word GX_LoadBG1Char _02335248: .word ov02_02353304 _0233524C: .word ov02_023532B4 _02335250: .word GX_LoadBG1Scr arm_func_end ov02_023351DC arm_func_start ov02_02335254 ov02_02335254: ; 0x02335254 ldr ip, _02335260 ; =ov02_0234E7D8 ldr r0, _02335264 ; =ov02_0235AA54 bx ip .align 2, 0 _02335260: .word ov02_0234E7D8 _02335264: .word ov02_0235AA54 arm_func_end ov02_02335254 arm_func_start ov02_02335268 ov02_02335268: ; 0x02335268 stmdb sp!, {r4, lr} ldr r1, _023352B8 ; =ov02_023532B4 ldr r0, [r1, r0, lsl #2] bl ov02_02334D48 mov r1, #0 mov r2, #4 bl ov02_0234CE84 ldr r1, _023352BC ; =ov02_0235AA54 mov r4, r0 ldr r1, [r1] mov r2, #0xc0 bl ArrayCopy32Fast mov r0, r4 bl ov02_0234CF78 mov r0, #1 ldr r1, _023352C0 ; =ov02_023352F4 mov r2, #0 mov r3, #0x78 bl ov02_0234FA98 ldmia sp!, {r4, pc} .align 2, 0 _023352B8: .word ov02_023532B4 _023352BC: .word ov02_0235AA54 _023352C0: .word ov02_023352F4 arm_func_end ov02_02335268 arm_func_start ov02_023352C4 ov02_023352C4: ; 0x023352C4 stmdb sp!, {r3, lr} bl ov02_02347518 ldrb r0, [r0, #0xf4] add r0, r0, #5 bl ov02_02335268 ldmia sp!, {r3, pc} arm_func_end ov02_023352C4 arm_func_start ov02_023352DC ov02_023352DC: ; 0x023352DC stmdb sp!, {r3, lr} bl ov02_02347518 ldrb r0, [r0, #0xf4] add r0, r0, #2 bl ov02_02335268 ldmia sp!, {r3, pc} arm_func_end ov02_023352DC arm_func_start ov02_023352F4 ov02_023352F4: ; 0x023352F4 stmdb sp!, {r4, lr} ldr r1, _02335330 ; =ov02_0235AA54 mov r4, r0 ldr r0, [r1] mov r1, #0xc0 bl DC_FlushRange ldr r0, _02335330 ; =ov02_0235AA54 mov r1, #0 ldr r0, [r0] mov r2, #0xc0 bl GX_LoadBG1Scr mov r1, r4 mov r0, #1 bl ov02_0234FB40 ldmia sp!, {r4, pc} .align 2, 0 _02335330: .word ov02_0235AA54 arm_func_end ov02_023352F4 arm_func_start ov02_02335334 ov02_02335334: ; 0x02335334 stmdb sp!, {r3, r4, r5, lr} ldr r1, _023353DC ; =ov02_0235AA58 mov r4, r0 ldr r0, [r1] cmp r0, #0 ldmneia sp!, {r3, r4, r5, pc} mov r0, #0xc mov r1, #4 bl ov02_0234E7B4 ldr r1, _023353E0 ; =ov02_02352520 ldr r2, _023353DC ; =ov02_0235AA58 ldrb r1, [r1, r4, lsl #2] str r0, [r2] strb r4, [r0, #8] mov r0, #0 bl ov02_0234D6AC ldr lr, _023353DC ; =ov02_0235AA58 ldr ip, _023353E4 ; =0xFE00FF00 ldr r2, [lr] ldr r1, _023353E8 ; =ov02_02335430 str r0, [r2] ldr r2, [lr] mov r0, #0 ldr r5, [r2] mov r2, r0 ldr r4, [r5] mov r3, #0x78 and r4, r4, ip orr r4, r4, #0x26 orr r4, r4, #0xe50000 str r4, [r5] ldr ip, [lr] ldr lr, [ip] ldrh ip, [lr, #4] bic ip, ip, #0xc00 orr ip, ip, #0x800 strh ip, [lr, #4] bl ov02_0234FA98 ldr r1, _023353DC ; =ov02_0235AA58 ldr r1, [r1] str r0, [r1, #4] ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _023353DC: .word ov02_0235AA58 _023353E0: .word ov02_02352520 _023353E4: .word 0xFE00FF00 _023353E8: .word ov02_02335430 arm_func_end ov02_02335334 arm_func_start ov02_023353EC ov02_023353EC: ; 0x023353EC stmdb sp!, {r3, lr} ldr r0, _02335428 ; =ov02_0235AA58 ldr r0, [r0] cmp r0, #0 ldmeqia sp!, {r3, pc} ldr r1, [r0, #4] mov r0, #0 bl ov02_0234FB60 ldr r0, _02335428 ; =ov02_0235AA58 ldr r0, [r0] ldr r0, [r0] bl ov02_0234F2C0 ldr r0, _0233542C ; =ov02_0235AA58 bl ov02_0234E7D8 ldmia sp!, {r3, pc} .align 2, 0 _02335428: .word ov02_0235AA58 _0233542C: .word ov02_0235AA58 arm_func_end ov02_023353EC arm_func_start ov02_02335430 ov02_02335430: ; 0x02335430 stmdb sp!, {r3, r4, r5, lr} ldr r0, _023354C8 ; =0x04000208 mov r4, #0 ldrh r5, [r0] strh r4, [r0] bl ov00_022BF640 cmp r0, #0x8000 beq _02335458 bl ov00_022BF660 mov r4, r0 _02335458: ldr r2, _023354C8 ; =0x04000208 ldr r1, _023354CC ; =ov02_0235AA58 ldrh r0, [r2] ldr r3, _023354D0 ; =ov02_02352520 mov r0, #0 strh r5, [r2] ldr r2, [r1] ldrsb r1, [r2, #8] ldr r2, [r2] add r1, r3, r1, lsl #2 ldrb r1, [r4, r1] bl ov02_0234D618 ldr r1, _023354CC ; =ov02_0235AA58 ldr r0, _023354D4 ; =0xFE00FF00 ldr r2, [r1] ldr r3, [r2] ldr r2, [r3] and r0, r2, r0 orr r0, r0, #0x26 orr r0, r0, #0xe50000 str r0, [r3] ldr r0, [r1] ldr r1, [r0] ldrh r0, [r1, #4] bic r0, r0, #0xc00 orr r0, r0, #0x800 strh r0, [r1, #4] ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _023354C8: .word 0x04000208 _023354CC: .word ov02_0235AA58 _023354D0: .word ov02_02352520 _023354D4: .word 0xFE00FF00 arm_func_end ov02_02335430 arm_func_start ov02_023354D8 ov02_023354D8: ; 0x023354D8 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x24 add r5, sp, #0x1c mov r4, #0 strh r4, [r5, #4] mov r3, #0x11 strh r4, [r5, #6] mov r2, #0x12 mov r0, #0x128 mov r1, #4 strh r4, [r5] strh r4, [r5, #2] strh r3, [sp, #0x20] strh r2, [sp, #0x22] bl ov02_0234E7B4 ldr r8, _02335824 ; =ov02_0235AA5C mov r1, #0xff str r0, [r8] strb r1, [r0, #0x11c] ldr r0, [r8] mov r6, r4 strb r6, [r0, #0x121] mov r5, r4 ldr r0, [r8] mov r1, #1 strb r1, [r0, #0x123] ldr r0, [r8] ldr r7, _02335828 ; =0xC1FFFCFF strb r1, [r0, #0x124] mov r4, #0x34 _02335550: mov r0, r5 mov r1, r4 bl ov02_0234D6AC ldr r1, [r8] add r1, r1, r6, lsl #2 str r0, [r1, #0x30] ldr r0, [r8] add r0, r0, r6, lsl #2 ldr r1, [r0, #0x30] ldr r0, [r1] and r0, r0, r7 orr r0, r0, #0x200 str r0, [r1] ldr r0, [r8] add r0, r0, r6, lsl #2 ldr r1, [r0, #0x30] add r6, r6, #1 ldrh r0, [r1, #4] cmp r6, #0x2f bic r0, r0, #0xc00 orr r0, r0, #0xc00 strh r0, [r1, #4] blt _02335550 mov r6, #0 ldr r5, _0233582C ; =ov02_02352538 ldr r8, _02335824 ; =ov02_0235AA5C ldr r7, _02335828 ; =0xC1FFFCFF mov r4, r6 _023355C0: ldrb r1, [r5], #1 mov r0, r4 bl ov02_0234D6AC ldr r1, [r8] add r1, r1, r6, lsl #2 str r0, [r1, #0xec] ldr r0, [r8] add r0, r0, r6, lsl #2 ldr r1, [r0, #0xec] ldr r0, [r1] and r0, r0, r7 orr r0, r0, #0x200 str r0, [r1] ldr r0, [r8] add r0, r0, r6, lsl #2 ldr r1, [r0, #0xec] add r6, r6, #1 ldrh r0, [r1, #4] cmp r6, #4 bic r0, r0, #0xc00 orr r0, r0, #0xc00 strh r0, [r1, #4] blt _023355C0 mov sl, #0 ldr sb, _02335830 ; =ov02_02352530 ldr r4, _02335824 ; =ov02_0235AA5C mov r8, sl mov r7, #1 mvn r6, #0 mov r5, #0x200 mov fp, sl _0233563C: ldrb r1, [sb], #1 mov r0, r8 mov r2, r7 bl ov02_0234D6D8 ldr r2, [r4] mov r1, r6 add r2, r2, sl, lsl #2 str r0, [r2, #0xfc] ldr r0, [r4] mov r2, r5 add r0, r0, sl, lsl #2 ldr r0, [r0, #0xfc] mov r3, fp bl ov02_0234D31C ldr r0, [r4] mov r1, r6 add r0, r0, sl, lsl #2 ldr r0, [r0, #0xfc] mov r2, #3 bl ov02_0234D530 add sl, sl, #1 cmp sl, #2 blt _0233563C mov sl, #0 strh sl, [sp, #0x16] _023356A0: mov sb, #0 ldr r6, _02335834 ; =ov02_02353324 ldr r4, _02335824 ; =ov02_0235AA5C str sb, [sp, #0x10] mov fp, #2 _023356B4: add r0, sp, #0x18 str r0, [sp] mov r0, #0 str r0, [sp, #4] mov r1, #0x1c mov r2, #2 mov r3, r0 bl ov02_0234DCC0 ldr r1, [r4] mov r2, sb, lsl #2 add r1, r1, sl, lsl #4 str r0, [r1, sb, lsl #2] mov r0, #0 ldr r7, [sp, #0x10] strh r0, [sp, #0x1c] mov r8, r0 add r5, r2, sl, lsl #4 _023356F8: ldr r1, [r6, sl, lsl #2] mov r0, r7, lsl #1 ldrh r1, [r1, r0] ldrh r0, [sp, #0x22] strh r1, [sp, #0x14] stmia sp, {r0, fp} mov r0, #0x480 str r0, [sp, #8] add r0, sp, #0x14 str r0, [sp, #0xc] ldr r0, [r4] ldrh r1, [sp, #0x1c] ldrh r2, [sp, #0x1e] ldrh r3, [sp, #0x20] ldr r0, [r0, r5] bl ov02_0234E1E8 ldrh r0, [sp, #0x1c] add r8, r8, #1 cmp r8, #0xc add r0, r0, #0x12 add r7, r7, #1 strh r0, [sp, #0x1c] blt _023356F8 cmp sl, #0 bne _02335778 ldr r1, [sp, #0x18] mov r0, #0 mov r2, #1 bl ov02_0234D12C ldr r1, [r4] add r1, r1, sb, lsl #2 str r0, [r1, #0x104] _02335778: ldr r0, [sp, #0x10] add sb, sb, #1 add r0, r0, #0xc str r0, [sp, #0x10] cmp sb, #4 blt _023356B4 add sl, sl, #1 cmp sl, #3 blt _023356A0 mov r0, #0 mov r1, #0x40 mov r2, #1 bl ov02_0234D6D8 ldr r3, _02335824 ; =ov02_0235AA5C mvn r1, #0 ldr r4, [r3] mov r2, #0x200 str r0, [r4, #0x114] ldr r0, [r3] mov r3, #0 ldr r0, [r0, #0x114] bl ov02_0234D31C ldr r0, _02335824 ; =ov02_0235AA5C mvn r1, #0 ldr r0, [r0] mov r2, #2 ldr r0, [r0, #0x114] bl ov02_0234D530 mov r0, #0 ldr r1, _02335838 ; =ov02_023358C8 mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 ldr r3, _02335824 ; =ov02_0235AA5C mov r1, #0 ldr r4, [r3] mov r2, #0xc0 str r0, [r4, #0x118] ldr r0, [r3] ldrb r0, [r0, #0x11d] bl ov02_02336574 add sp, sp, #0x24 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _02335824: .word ov02_0235AA5C _02335828: .word 0xC1FFFCFF _0233582C: .word ov02_02352538 _02335830: .word ov02_02352530 _02335834: .word ov02_02353324 _02335838: .word ov02_023358C8 arm_func_end ov02_023354D8 arm_func_start ov02_0233583C ov02_0233583C: ; 0x0233583C stmdb sp!, {r3, lr} ldr r0, _02335868 ; =ov02_0235AA5C ldr r0, [r0] ldr r0, [r0, #0x114] bl ov02_0234D288 ldr r0, _02335868 ; =ov02_0235AA5C ldr r1, _0233586C ; =ov02_02336E50 ldr r0, [r0] ldr r0, [r0, #0x118] bl ov02_0234FB38 ldmia sp!, {r3, pc} .align 2, 0 _02335868: .word ov02_0235AA5C _0233586C: .word ov02_02336E50 arm_func_end ov02_0233583C arm_func_start ov02_02335870 ov02_02335870: ; 0x02335870 ldr r0, _02335880 ; =ov02_0235AA5C ldr r0, [r0] ldrb r0, [r0, #0x11c] bx lr .align 2, 0 _02335880: .word ov02_0235AA5C arm_func_end ov02_02335870 arm_func_start ov02_02335884 ov02_02335884: ; 0x02335884 ldr r1, _02335894 ; =ov02_0235AA5C ldr r1, [r1] strb r0, [r1, #0x123] bx lr .align 2, 0 _02335894: .word ov02_0235AA5C arm_func_end ov02_02335884 arm_func_start ov02_02335898 ov02_02335898: ; 0x02335898 ldr r1, _023358A8 ; =ov02_0235AA5C ldr r1, [r1] strb r0, [r1, #0x124] bx lr .align 2, 0 _023358A8: .word ov02_0235AA5C arm_func_end ov02_02335898 arm_func_start ov02_023358AC ov02_023358AC: ; 0x023358AC ldr r0, _023358C4 ; =ov02_0235AA5C ldr r0, [r0] cmp r0, #0 movne r0, #1 moveq r0, #0 bx lr .align 2, 0 _023358C4: .word ov02_0235AA5C arm_func_end ov02_023358AC arm_func_start ov02_023358C8 ov02_023358C8: ; 0x023358C8 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r2, _02335950 ; =ov02_0235AA5C mov r4, r0 ldr r3, [r2] ldr r1, _02335954 ; =0x01FF0000 ldr r0, [r3, #0x30] ldr r0, [r0] and r1, r0, r1 and r0, r0, #0xff sub r2, r0, #0xc mov r0, r1, lsr #0x10 str r0, [sp, #4] str r2, [sp] cmp r2, #0x51 ldrb r0, [r3, #0x11d] mov r1, #0 ble _0233591C bl ov02_02336574 add sp, sp, #8 ldmia sp!, {r4, pc} _0233591C: mov r2, #0x51 bl ov02_02336574 ldr r0, _02335950 ; =ov02_0235AA5C mov r1, #1 ldr r0, [r0] mov r2, #0xc0 ldrb r0, [r0, #0x11d] bl ov02_02336574 ldr r1, _02335958 ; =ov02_0233595C mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _02335950: .word ov02_0235AA5C _02335954: .word 0x01FF0000 _02335958: .word ov02_0233595C arm_func_end ov02_023358C8 arm_func_start ov02_0233595C ov02_0233595C: ; 0x0233595C stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r2, _023359E4 ; =ov02_0235AA5C mov r4, r0 ldr r3, [r2] ldr r1, _023359E8 ; =0x01FF0000 ldr r0, [r3, #0x60] ldr r0, [r0] and r1, r0, r1 and r0, r0, #0xff sub r2, r0, #0xc mov r0, r1, lsr #0x10 str r0, [sp, #4] str r2, [sp] cmp r2, #0x67 ldrb r0, [r3, #0x11d] mov r1, #1 ble _023359B0 bl ov02_02336574 add sp, sp, #8 ldmia sp!, {r4, pc} _023359B0: mov r2, #0x67 bl ov02_02336574 ldr r0, _023359E4 ; =ov02_0235AA5C mov r1, #2 ldr r0, [r0] mov r2, #0xc0 ldrb r0, [r0, #0x11d] bl ov02_02336574 ldr r1, _023359EC ; =ov02_023359F0 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _023359E4: .word ov02_0235AA5C _023359E8: .word 0x01FF0000 _023359EC: .word ov02_023359F0 arm_func_end ov02_0233595C arm_func_start ov02_023359F0 ov02_023359F0: ; 0x023359F0 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r2, _02335A78 ; =ov02_0235AA5C mov r4, r0 ldr r3, [r2] ldr r1, _02335A7C ; =0x01FF0000 ldr r0, [r3, #0x90] ldr r0, [r0] and r1, r0, r1 and r0, r0, #0xff sub r2, r0, #0xc mov r0, r1, lsr #0x10 str r0, [sp, #4] str r2, [sp] cmp r2, #0x7d ldrb r0, [r3, #0x11d] mov r1, #2 ble _02335A44 bl ov02_02336574 add sp, sp, #8 ldmia sp!, {r4, pc} _02335A44: mov r2, #0x7d bl ov02_02336574 ldr r0, _02335A78 ; =ov02_0235AA5C mov r1, #3 ldr r0, [r0] mov r2, #0xc0 ldrb r0, [r0, #0x11d] bl ov02_02336574 ldr r1, _02335A80 ; =ov02_02335A84 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _02335A78: .word ov02_0235AA5C _02335A7C: .word 0x01FF0000 _02335A80: .word ov02_02335A84 arm_func_end ov02_023359F0 arm_func_start ov02_02335A84 ov02_02335A84: ; 0x02335A84 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r2, _02335B0C ; =ov02_0235AA5C mov r4, r0 ldr r3, [r2] ldr r1, _02335B10 ; =0x01FF0000 ldr r0, [r3, #0xc0] ldr r0, [r0] and r1, r0, r1 and r0, r0, #0xff sub r2, r0, #0xc mov r0, r1, lsr #0x10 str r0, [sp, #4] str r2, [sp] cmp r2, #0x93 ldrb r0, [r3, #0x11d] mov r1, #3 ble _02335AD8 bl ov02_02336574 add sp, sp, #8 ldmia sp!, {r4, pc} _02335AD8: mov r2, #0x93 bl ov02_02336574 ldr r0, _02335B0C ; =ov02_0235AA5C mov r1, #4 ldr r0, [r0] mov r2, #0xc0 ldrb r0, [r0, #0x11d] bl ov02_02336574 ldr r1, _02335B14 ; =ov02_02335B18 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _02335B0C: .word ov02_0235AA5C _02335B10: .word 0x01FF0000 _02335B14: .word ov02_02335B18 arm_func_end ov02_02335A84 arm_func_start ov02_02335B18 ov02_02335B18: ; 0x02335B18 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _02335B9C ; =ov02_0235AA5C mov r4, r0 ldr r0, [r1] add r2, sp, #4 ldr r0, [r0, #0xfc] add r3, sp, #0 mov r1, #0 bl ov02_0234D590 ldr r0, [sp] mov r1, #4 sub r2, r0, #0xc str r2, [sp] cmp r2, #0xaa ble _02335B70 ldr r0, _02335B9C ; =ov02_0235AA5C ldr r0, [r0] ldrb r0, [r0, #0x11d] bl ov02_02336574 add sp, sp, #8 ldmia sp!, {r4, pc} _02335B70: ldr r0, _02335B9C ; =ov02_0235AA5C mov r2, #0xaa ldr r0, [r0] ldrb r0, [r0, #0x11d] bl ov02_02336574 bl ov02_0233693C ldr r1, _02335BA0 ; =ov02_02335BA4 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _02335B9C: .word ov02_0235AA5C _02335BA0: .word ov02_02335BA4 arm_func_end ov02_02335B18 arm_func_start ov02_02335BA4 ov02_02335BA4: ; 0x02335BA4 stmdb sp!, {r3, lr} bl ov02_02335BBC bl ov02_02335DA4 bl ov02_023360EC bl ov02_02336344 ldmia sp!, {r3, pc} arm_func_end ov02_02335BA4 arm_func_start ov02_02335BBC ov02_02335BBC: ; 0x02335BBC stmdb sp!, {r3, r4, r5, r6, r7, lr} sub sp, sp, #8 ldr r0, _02335D80 ; =ov02_02352F34 bl ov02_0234ED04 cmp r0, #0 addeq sp, sp, #8 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} ldr r0, _02335D84 ; =ov02_0235AA5C mvn r1, #0 ldr r0, [r0] ldr r7, _02335D88 ; =ov02_02352588 ldr r6, _02335D8C ; =ov02_02352544 strb r1, [r0, #0x11e] mov r4, #0 add r5, sp, #0 _02335BF8: mov r0, r7 mov r1, r6 mov r2, r5 bl ov02_0234E39C mov r0, r5 bl ov02_0234ED04 cmp r0, #0 beq _02335C58 ldr r0, _02335D84 ; =ov02_0235AA5C ldr r0, [r0] ldrb r0, [r0, #0x124] cmp r0, #0 bne _02335C3C mov r0, #9 bl ov02_023480E0 add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} _02335C3C: mov r0, #0 bl ov02_023480E0 ldr r0, _02335D84 ; =ov02_0235AA5C add sp, sp, #8 ldr r0, [r0] strb r4, [r0, #0x11e] ldmia sp!, {r3, r4, r5, r6, r7, pc} _02335C58: add r4, r4, #1 cmp r4, #0x2f add r7, r7, #4 blt _02335BF8 ldr r6, _02335D90 ; =ov02_02352570 ldr r7, _02335D94 ; =ov02_02352560 mov r4, #0 add r5, sp, #0 _02335C78: mov r0, r7 mov r1, r6 mov r2, r5 bl ov02_0234E39C mov r0, r5 bl ov02_0234ED04 cmp r0, #0 beq _02335D04 cmp r4, #3 bne _02335CB4 ldr r0, _02335D84 ; =ov02_0235AA5C ldr r0, [r0] ldrb r0, [r0, #0x123] cmp r0, #0 beq _02335CD0 _02335CB4: cmp r4, #2 bne _02335CE0 ldr r0, _02335D84 ; =ov02_0235AA5C ldr r0, [r0] ldrb r0, [r0, #0x124] cmp r0, #0 bne _02335CE0 _02335CD0: mov r0, #9 bl ov02_023480E0 add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} _02335CE0: ldr r0, _02335D98 ; =ov02_02353330 ldr r0, [r0, r4, lsl #2] bl ov02_023480E0 ldr r0, _02335D84 ; =ov02_0235AA5C add r1, r4, #0x2f ldr r0, [r0] add sp, sp, #8 strb r1, [r0, #0x11e] ldmia sp!, {r3, r4, r5, r6, r7, pc} _02335D04: add r4, r4, #1 cmp r4, #4 add r6, r6, #4 add r7, r7, #4 blt _02335C78 ldr r6, _02335D9C ; =ov02_02352558 ldr r5, _02335DA0 ; =ov02_02352540 mov r7, #0 add r4, sp, #0 _02335D28: mov r0, r6 mov r1, r5 mov r2, r4 bl ov02_0234E39C mov r0, r4 bl ov02_0234ED04 cmp r0, #0 beq _02335D68 mov r0, #0 bl ov02_023480E0 ldr r0, _02335D84 ; =ov02_0235AA5C add r1, r7, #0x33 ldr r0, [r0] add sp, sp, #8 strb r1, [r0, #0x11e] ldmia sp!, {r3, r4, r5, r6, r7, pc} _02335D68: add r7, r7, #1 cmp r7, #2 add r6, r6, #4 blt _02335D28 add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _02335D80: .word ov02_02352F34 _02335D84: .word ov02_0235AA5C _02335D88: .word ov02_02352588 _02335D8C: .word ov02_02352544 _02335D90: .word ov02_02352570 _02335D94: .word ov02_02352560 _02335D98: .word ov02_02353330 _02335D9C: .word ov02_02352558 _02335DA0: .word ov02_02352540 arm_func_end ov02_02335BBC arm_func_start ov02_02335DA4 ov02_02335DA4: ; 0x02335DA4 stmdb sp!, {r3, r4, r5, r6, r7, lr} sub sp, sp, #8 ldr r1, _02336050 ; =ov02_0235AA5C ldr r0, _02336054 ; =ov02_02352F34 ldr r1, [r1] mov r2, #0 strb r2, [r1, #0x11c] bl ov02_0234EE14 cmp r0, #0 addeq sp, sp, #8 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} ldr r7, _02336058 ; =ov02_02352588 ldr r6, _0233605C ; =ov02_02352544 mov r4, #0 add r5, sp, #0 _02335DE0: mov r0, r7 mov r1, r6 mov r2, r5 bl ov02_0234E39C mov r0, r5 bl ov02_0234EE14 cmp r0, #0 beq _02335E60 ldr r1, _02336050 ; =ov02_0235AA5C ldr r3, [r1] add r0, r3, #0x100 ldrsb r0, [r0, #0x1e] cmp r0, r4 addne sp, sp, #8 ldmneia sp!, {r3, r4, r5, r6, r7, pc} ldrb r2, [r3, #0x11d] ldr r0, _02336060 ; =ov02_02353318 ldr r0, [r0, r2, lsl #2] ldrb r0, [r0, r4] strb r0, [r3, #0x11c] ldr r0, [r1] ldrb r0, [r0, #0x11d] cmp r0, #1 bne _02335E48 mov r0, #0 bl ov02_023367F0 _02335E48: ldr r0, _02336050 ; =ov02_0235AA5C ldr r0, [r0] strb r4, [r0, #0x121] bl ov02_0233693C add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} _02335E60: add r4, r4, #1 cmp r4, #0x2f add r7, r7, #4 blt _02335DE0 ldr r6, _02336064 ; =ov02_02352578 ldr r7, _02336068 ; =ov02_02352568 mov r4, #2 add r5, sp, #0 _02335E80: mov r0, r7 mov r1, r6 mov r2, r5 bl ov02_0234E39C mov r0, r5 bl ov02_0234EE14 cmp r0, #0 beq _02335F00 ldr r1, _02336050 ; =ov02_0235AA5C add r2, r4, #0x2f ldr r3, [r1] add r0, r3, #0x100 ldrsb r0, [r0, #0x1e] cmp r0, r2 addne sp, sp, #8 ldmneia sp!, {r3, r4, r5, r6, r7, pc} ldr r0, _0233606C ; =ov02_02352580 ldrb r0, [r0, r4] strb r0, [r3, #0x11c] ldr r0, [r1] ldrb r0, [r0, #0x11d] cmp r0, #1 bne _02335EE4 mov r0, #0 bl ov02_023367F0 _02335EE4: ldr r0, _02336050 ; =ov02_0235AA5C add r1, r4, #0x2f ldr r0, [r0] strb r1, [r0, #0x121] bl ov02_0233693C add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} _02335F00: add r4, r4, #1 cmp r4, #4 add r6, r6, #4 add r7, r7, #4 blt _02335E80 ldr r7, _02336070 ; =ov02_02352558 ldr r6, _02336074 ; =ov02_02352540 mov r4, #0 add r5, sp, #0 _02335F24: mov r0, r7 mov r1, r6 mov r2, r5 bl ov02_0234E39C mov r0, r5 bl ov02_0234EE14 cmp r0, #0 beq _02335F84 ldr r1, _02336050 ; =ov02_0235AA5C add r2, r4, #0x33 ldr r3, [r1] add r0, r3, #0x100 ldrsb r0, [r0, #0x1e] cmp r0, r2 addne sp, sp, #8 ldmneia sp!, {r3, r4, r5, r6, r7, pc} ldr r0, _02336078 ; =ov02_02352534 ldrb r0, [r0, r4] strb r0, [r3, #0x11c] ldr r0, [r1] strb r2, [r0, #0x121] bl ov02_0233693C add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} _02335F84: add r4, r4, #1 cmp r4, #2 add r7, r7, #4 blt _02335F24 ldr r0, _0233607C ; =ov02_02352560 ldr r1, _02336080 ; =ov02_02352570 add r2, sp, #0 bl ov02_0234E39C add r0, sp, #0 bl ov02_0234EE14 cmp r0, #0 beq _02335FF0 ldr r0, _02336050 ; =ov02_0235AA5C ldr r0, [r0] add r0, r0, #0x100 ldrsb r0, [r0, #0x1e] cmp r0, #0x2f addne sp, sp, #8 ldmneia sp!, {r3, r4, r5, r6, r7, pc} bl ov02_0233608C ldr r0, _02336050 ; =ov02_0235AA5C mov r1, #0x2f ldr r0, [r0] strb r1, [r0, #0x121] bl ov02_0233693C add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} _02335FF0: ldr r0, _02336084 ; =ov02_02352564 ldr r1, _02336088 ; =ov02_02352574 add r2, sp, #0 bl ov02_0234E39C add r0, sp, #0 bl ov02_0234EE14 cmp r0, #0 addeq sp, sp, #8 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} ldr r0, _02336050 ; =ov02_0235AA5C ldr r0, [r0] add r0, r0, #0x100 ldrsb r0, [r0, #0x1e] cmp r0, #0x30 addne sp, sp, #8 ldmneia sp!, {r3, r4, r5, r6, r7, pc} bl ov02_023360BC ldr r0, _02336050 ; =ov02_0235AA5C mov r1, #0x30 ldr r0, [r0] strb r1, [r0, #0x121] bl ov02_0233693C add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _02336050: .word ov02_0235AA5C _02336054: .word ov02_02352F34 _02336058: .word ov02_02352588 _0233605C: .word ov02_02352544 _02336060: .word ov02_02353318 _02336064: .word ov02_02352578 _02336068: .word ov02_02352568 _0233606C: .word ov02_02352580 _02336070: .word ov02_02352558 _02336074: .word ov02_02352540 _02336078: .word ov02_02352534 _0233607C: .word ov02_02352560 _02336080: .word ov02_02352570 _02336084: .word ov02_02352564 _02336088: .word ov02_02352574 arm_func_end ov02_02335DA4 arm_func_start ov02_0233608C ov02_0233608C: ; 0x0233608C stmdb sp!, {r3, lr} ldr r0, _023360B8 ; =ov02_0235AA5C ldr r0, [r0] ldrb r0, [r0, #0x11d] cmp r0, #2 moveq r0, #0 movne r0, #2 bl ov02_023367F0 mov r0, #1 bl ov02_023480E0 ldmia sp!, {r3, pc} .align 2, 0 _023360B8: .word ov02_0235AA5C arm_func_end ov02_0233608C arm_func_start ov02_023360BC ov02_023360BC: ; 0x023360BC stmdb sp!, {r3, lr} ldr r0, _023360E8 ; =ov02_0235AA5C ldr r0, [r0] ldrb r0, [r0, #0x11d] cmp r0, #1 movne r0, #1 moveq r0, #0 bl ov02_023367F0 mov r0, #1 bl ov02_023480E0 ldmia sp!, {r3, pc} .align 2, 0 _023360E8: .word ov02_0235AA5C arm_func_end ov02_023360BC arm_func_start ov02_023360EC ov02_023360EC: ; 0x023360EC stmdb sp!, {r3, r4, r5, r6, r7, lr} sub sp, sp, #8 ldr r0, _023362D0 ; =ov02_02352F34 bl ov02_0234EC7C cmp r0, #0 beq _023362B0 ldr r7, _023362D4 ; =ov02_02352588 ldr r5, _023362D8 ; =ov02_02352544 mov r6, #0 add r4, sp, #0 _02336114: mov r0, r7 mov r1, r5 mov r2, r4 bl ov02_0234E39C mov r0, r4 bl ov02_0234EC7C cmp r0, #0 beq _02336158 ldr r0, _023362DC ; =ov02_0235AA5C ldr r0, [r0] add r0, r0, #0x100 ldrsb r0, [r0, #0x1e] cmp r0, r6 bne _023362B0 mov r0, r6 bl ov02_023362F0 b _023362B8 _02336158: add r6, r6, #1 cmp r6, #0x2f add r7, r7, #4 blt _02336114 ldr r6, _023362E0 ; =ov02_02352578 ldr r7, _023362E4 ; =ov02_02352568 mov r4, #2 add r5, sp, #0 _02336178: mov r0, r7 mov r1, r6 mov r2, r5 bl ov02_0234E39C mov r0, r5 bl ov02_0234EC7C cmp r0, #0 beq _02336238 ldr r1, _023362DC ; =ov02_0235AA5C add r0, r4, #0x2f ldr r1, [r1] add r1, r1, #0x100 ldrsb r1, [r1, #0x1e] cmp r1, r0 bne _023362B0 bl ov02_023362F0 cmp r4, #3 addne sp, sp, #8 ldmneia sp!, {r3, r4, r5, r6, r7, pc} ldr r0, _023362DC ; =ov02_0235AA5C ldr r2, [r0] ldrb r1, [r2, #0x122] add r1, r1, #1 strb r1, [r2, #0x122] ldr r2, [r0] ldrb r1, [r2, #0x122] cmp r1, #0x28 addlo sp, sp, #8 ldmloia sp!, {r3, r4, r5, r6, r7, pc} ldrb r1, [r2, #0x123] cmp r1, #0 bne _02336218 mov r0, #9 bl ov02_023480E0 ldr r0, _023362DC ; =ov02_0235AA5C mvn r1, #0 ldr r0, [r0] add sp, sp, #8 strb r1, [r0, #0x11e] ldmia sp!, {r3, r4, r5, r6, r7, pc} _02336218: mov r1, #0x80 strb r1, [r2, #0x11c] ldr r1, [r0] add sp, sp, #8 ldrb r0, [r1, #0x122] sub r0, r0, #7 strb r0, [r1, #0x122] ldmia sp!, {r3, r4, r5, r6, r7, pc} _02336238: add r4, r4, #1 cmp r4, #4 add r6, r6, #4 add r7, r7, #4 blt _02336178 ldr r6, _023362E8 ; =ov02_02352558 ldr r5, _023362EC ; =ov02_02352540 mov r7, #0 add r4, sp, #0 _0233625C: mov r0, r6 mov r1, r5 mov r2, r4 bl ov02_0234E39C mov r0, r4 bl ov02_0234EC7C cmp r0, #0 beq _023362A0 ldr r1, _023362DC ; =ov02_0235AA5C add r0, r7, #0x33 ldr r1, [r1] add r1, r1, #0x100 ldrsb r1, [r1, #0x1e] cmp r1, r0 bne _023362B0 bl ov02_023362F0 b _023362B8 _023362A0: add r7, r7, #1 cmp r7, #2 add r6, r6, #4 blt _0233625C _023362B0: mvn r0, #0 bl ov02_023362F0 _023362B8: ldr r0, _023362DC ; =ov02_0235AA5C mov r1, #0 ldr r0, [r0] strb r1, [r0, #0x122] add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _023362D0: .word ov02_02352F34 _023362D4: .word ov02_02352588 _023362D8: .word ov02_02352544 _023362DC: .word ov02_0235AA5C _023362E0: .word ov02_02352578 _023362E4: .word ov02_02352568 _023362E8: .word ov02_02352558 _023362EC: .word ov02_02352540 arm_func_end ov02_023360EC arm_func_start ov02_023362F0 ov02_023362F0: ; 0x023362F0 stmdb sp!, {r4, lr} ldr r1, _02336340 ; =ov02_0235AA5C mov r4, r0 ldr r1, [r1] add r1, r1, #0x100 ldrsb r1, [r1, #0x1f] cmp r4, r1 ldmeqia sp!, {r4, pc} mov r1, #1 bl ov02_02336874 ldr r0, _02336340 ; =ov02_0235AA5C mov r1, #0 ldr r0, [r0] add r0, r0, #0x100 ldrsb r0, [r0, #0x1f] bl ov02_02336874 ldr r0, _02336340 ; =ov02_0235AA5C ldr r0, [r0] strb r4, [r0, #0x11f] ldmia sp!, {r4, pc} .align 2, 0 _02336340: .word ov02_0235AA5C arm_func_end ov02_023362F0 arm_func_start ov02_02336344 ov02_02336344: ; 0x02336344 stmdb sp!, {r4, lr} mov r0, #0x20 bl ov02_0234EBFC cmp r0, #0 beq _02336360 mov r0, #0 bl ov02_02336A18 _02336360: mov r0, #0x40 bl ov02_0234EBFC cmp r0, #0 beq _02336378 mov r0, #1 bl ov02_02336A18 _02336378: mov r0, #0x10 bl ov02_0234EBFC cmp r0, #0 beq _02336390 mov r0, #2 bl ov02_02336A18 _02336390: mov r0, #0x80 bl ov02_0234EBFC cmp r0, #0 beq _023363A8 mov r0, #3 bl ov02_02336A18 _023363A8: mov r0, #1 bl ov02_0234EBBC cmp r0, #0 beq _023364C0 ldr r2, _02336564 ; =ov02_0235AA5C ldr r0, [r2] add r1, r0, #0x100 ldrsb r4, [r1, #0x21] cmp r4, #0x2f bge _02336418 ldrb r1, [r0, #0x124] cmp r1, #0 bne _023363E8 mov r0, #9 bl ov02_023480E0 ldmia sp!, {r4, pc} _023363E8: ldrb r3, [r0, #0x11d] ldr r1, _02336568 ; =ov02_02353318 ldr r1, [r1, r3, lsl #2] ldrb r1, [r1, r4] strb r1, [r0, #0x11c] ldr r0, [r2] ldrb r0, [r0, #0x11d] cmp r0, #1 ldmneia sp!, {r4, pc} mov r0, #0 bl ov02_023367F0 ldmia sp!, {r4, pc} _02336418: sub r1, r4, #0x2f cmp r1, #4 bge _023364B0 cmp r1, #3 addls pc, pc, r1, lsl #2 b _02336480 _02336430: ; jump table b _02336440 ; case 0 b _02336448 ; case 1 b _02336450 ; case 2 b _02336468 ; case 3 _02336440: bl ov02_0233608C ldmia sp!, {r4, pc} _02336448: bl ov02_023360BC ldmia sp!, {r4, pc} _02336450: ldrb r1, [r0, #0x124] cmp r1, #0 bne _02336480 mov r0, #9 bl ov02_023480E0 ldmia sp!, {r4, pc} _02336468: ldrb r1, [r0, #0x123] cmp r1, #0 bne _02336480 mov r0, #9 bl ov02_023480E0 ldmia sp!, {r4, pc} _02336480: ldrb r0, [r0, #0x11d] cmp r0, #1 bne _02336494 mov r0, #0 bl ov02_023367F0 _02336494: ldr r1, _0233656C ; =ov02_02352580 sub r2, r4, #0x2f ldr r0, _02336564 ; =ov02_0235AA5C ldrb r1, [r1, r2] ldr r0, [r0] strb r1, [r0, #0x11c] ldmia sp!, {r4, pc} _023364B0: ldr r1, _02336570 ; =ov02_02352534 sub r2, r4, #0x33 ldrb r1, [r1, r2] strb r1, [r0, #0x11c] _023364C0: mov r0, #2 bl ov02_0234EBFC cmp r0, #0 beq _02336518 ldr r0, _02336564 ; =ov02_0235AA5C ldr r1, [r0] ldrb r0, [r1, #0x123] cmp r0, #0 bne _0233650C ldrb r0, [r1, #0x125] cmp r0, #0 ldmneia sp!, {r4, pc} mov r0, #9 bl ov02_023480E0 ldr r0, _02336564 ; =ov02_0235AA5C mov r1, #1 ldr r0, [r0] strb r1, [r0, #0x125] ldmia sp!, {r4, pc} _0233650C: mov r0, #0x80 strb r0, [r1, #0x11c] b _02336538 _02336518: mov r0, #2 bl ov02_0234EC3C cmp r0, #0 beq _02336538 ldr r0, _02336564 ; =ov02_0235AA5C mov r1, #0 ldr r0, [r0] strb r1, [r0, #0x125] _02336538: mov r0, #0x400 bl ov02_0234EBBC cmp r0, #0 beq _0233654C bl ov02_0233608C _0233654C: mov r0, #0x800 bl ov02_0234EBBC cmp r0, #0 ldmeqia sp!, {r4, pc} bl ov02_023360BC ldmia sp!, {r4, pc} .align 2, 0 _02336564: .word ov02_0235AA5C _02336568: .word ov02_02353318 _0233656C: .word ov02_02352580 _02336570: .word ov02_02352534 arm_func_end ov02_02336344 arm_func_start ov02_02336574 ov02_02336574: ; 0x02336574 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x18 ldr r3, _023367D4 ; =ov02_0235253C mov sl, r1 ldrb r5, [r3, #0x11] ldrb r4, [r3, #0x12] mov r1, #0xc mul r1, sl, r1 strb r5, [sp, #0x12] strb r4, [sp, #0x13] ldrb r4, [r3, #0x14] ldrb r5, [r3, #0x13] str r1, [sp, #4] strb r4, [sp, #0x15] strb r5, [sp, #0x14] ldrb r1, [r3, #0x15] mov sb, r2 add r4, sp, #0x12 strb r1, [sp, #0x16] ldrb r1, [r4, sl] ldrb r6, [r3, #0x16] ldrb r2, [r3, #0x17] cmp r1, #0 ldr r5, [sp, #4] strb r6, [sp, #0xd] strb r2, [sp, #0xe] ldrb r7, [r3, #0x18] ldrb r2, [r3, #0x19] mov r6, #0 strb r7, [sp, #0xf] strb r2, [sp, #0x10] ldrb r1, [r3, #0x1a] strb r1, [sp, #0x11] ldrb r2, [r3, #0xc] ldrb r1, [r3, #0xd] strb r2, [sp, #8] strb r1, [sp, #9] ldrb r2, [r3, #0xe] ldrb r1, [r3, #0xf] strb r2, [sp, #0xa] strb r1, [sp, #0xb] ldrb r1, [r3, #0x10] strb r1, [sp, #0xc] ble _02336690 ldr r1, _023367D8 ; =ov02_02352588 ldr fp, _023367DC ; =ov02_0235AA5C ldr lr, _023367E0 ; =0xC1FFFCFF ldr r8, _023367E4 ; =0xFE00FF00 and r7, sb, #0xff _02336638: ldr r2, [fp] mov r3, r5, lsl #2 add r2, r2, r5, lsl #2 ldr r2, [r2, #0x30] ldrh r3, [r1, r3] ldr ip, [r2] add r6, r6, #1 and ip, ip, lr str ip, [r2] mov r2, r3, lsl #0x17 ldr r3, [fp] add r3, r3, r5, lsl #2 ldr r3, [r3, #0x30] add r5, r5, #1 ldr ip, [r3] and ip, ip, r8 orr ip, ip, r7 orr r2, ip, r2, lsr #7 str r2, [r3] ldrb r2, [r4, sl] cmp r6, r2 blt _02336638 _02336690: cmp sl, #4 bge _023366D0 ldr r1, _023367DC ; =ov02_0235AA5C ldr r3, _023367D8 ; =ov02_02352588 ldr r4, [r1] ldr r1, [sp, #4] mov r2, #2 mov r1, r1, lsl #2 str r2, [sp] add r0, r4, r0, lsl #4 add r2, r4, sl, lsl #2 ldrh r1, [r3, r1] ldr r3, [r2, #0x104] ldr r0, [r0, sl, lsl #2] mov r2, sb bl ov02_0234E2BC _023366D0: add r0, sl, #3 mov r1, #4 bl FX_ModS32 add r3, sp, #0xd ldrb r1, [r3, sl] mov r5, #0 cmp r1, #0 ble _02336758 ldr r2, _023367E8 ; =ov02_02352560 mov r1, r0, lsl #2 ldrh r0, [r2, r1] ldr r8, _023367DC ; =ov02_0235AA5C ldr r6, _023367E0 ; =0xC1FFFCFF ldr r7, _023367E4 ; =0xFE00FF00 and r4, sb, #0xff mov r2, r0, lsl #0x17 _02336710: ldr r0, [r8] add r5, r5, #1 add r0, r1, r0 ldr fp, [r0, #0xec] ldr r0, [fp] and r0, r0, r6 str r0, [fp] ldr r0, [r8] add r0, r1, r0 ldr r0, [r0, #0xec] ldr fp, [r0] and fp, fp, r7 orr fp, fp, r4 orr fp, fp, r2, lsr #7 str fp, [r0] ldrb r0, [r3, sl] cmp r5, r0 blt _02336710 _02336758: add r7, sp, #8 ldrb r0, [r7, sl] mov r8, #0 cmp r0, #0 addle sp, sp, #0x18 ldmleia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} ldr r5, _023367EC ; =ov02_02352558 ldr r4, _023367DC ; =ov02_0235AA5C mvn r6, #0 mov fp, r8 _02336780: ldr r0, [r4] mov r1, r6 add r0, r0, r8, lsl #2 ldr r0, [r0, #0xfc] mov r2, fp mov r3, fp bl ov02_0234D31C ldr r0, [r4] mov r1, r8, lsl #2 add r0, r0, r8, lsl #2 ldr r0, [r0, #0xfc] ldrh r2, [r5, r1] mov r1, r6 mov r3, sb bl ov02_0234D440 ldrb r0, [r7, sl] add r8, r8, #1 cmp r8, r0 blt _02336780 add sp, sp, #0x18 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _023367D4: .word ov02_0235253C _023367D8: .word ov02_02352588 _023367DC: .word ov02_0235AA5C _023367E0: .word 0xC1FFFCFF _023367E4: .word 0xFE00FF00 _023367E8: .word ov02_02352560 _023367EC: .word ov02_02352558 arm_func_end ov02_02336574 arm_func_start ov02_023367F0 ov02_023367F0: ; 0x023367F0 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} ldr r1, _0233686C ; =ov02_0235AA5C mov r5, #0 ldr r1, [r1] mov r8, r0 ldr sb, _02336870 ; =ov02_02352588 mov r6, r5 mov r4, r5 mov r7, r5 strb r8, [r1, #0x11d] _02336818: add r0, sb, r7, lsl #2 ldrh r2, [r0, #2] mov r0, r8 mov r1, r4 bl ov02_02336574 add r4, r4, #1 cmp r4, #4 add r7, r7, #0xc blt _02336818 cmp r8, #2 moveq r5, #1 beq _02336850 cmp r8, #1 moveq r6, #1 _02336850: mov r1, r5 mov r0, #0x2f bl ov02_02336874 mov r1, r6 mov r0, #0x30 bl ov02_02336874 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} .align 2, 0 _0233686C: .word ov02_0235AA5C _02336870: .word ov02_02352588 arm_func_end ov02_023367F0 arm_func_start ov02_02336874 ov02_02336874: ; 0x02336874 stmdb sp!, {r3, lr} cmp r0, #0 ldmltia sp!, {r3, pc} cmp r0, #0x2f bge _023368C0 ldr r2, _02336930 ; =ov02_0235AA5C ldr r3, _02336934 ; =ov02_02352528 ldr r2, [r2] ldrb r1, [r3, r1] add r0, r2, r0, lsl #2 ldr r2, [r0, #0x30] ldr r0, [r2] bic r0, r0, #0xc00 str r0, [r2] ldrh r0, [r2, #4] bic r0, r0, #0xf000 orr r0, r0, r1, lsl #12 strh r0, [r2, #4] ldmia sp!, {r3, pc} _023368C0: sub ip, r0, #0x2f cmp ip, #4 bge _02336904 ldr r0, _02336930 ; =ov02_0235AA5C ldr r2, _02336934 ; =ov02_02352528 ldr r3, [r0] ldrb r0, [r2, r1] add r1, r3, ip, lsl #2 ldr r2, [r1, #0xec] ldr r1, [r2] bic r1, r1, #0xc00 str r1, [r2] ldrh r1, [r2, #4] bic r1, r1, #0xf000 orr r0, r1, r0, lsl #12 strh r0, [r2, #4] ldmia sp!, {r3, pc} _02336904: ldr r2, _02336930 ; =ov02_0235AA5C ldr r3, _02336938 ; =ov02_0235252C ldr r2, [r2] sub r0, r0, #0x33 add r0, r2, r0, lsl #2 ldrb r3, [r3, r1] ldr r0, [r0, #0xfc] mvn r1, #0 mov r2, #0 bl ov02_0234D3C0 ldmia sp!, {r3, pc} .align 2, 0 _02336930: .word ov02_0235AA5C _02336934: .word ov02_02352528 _02336938: .word ov02_0235252C arm_func_end ov02_02336874 arm_func_start ov02_0233693C ov02_0233693C: ; 0x0233693C stmdb sp!, {r4, lr} ldr r0, _02336A0C ; =ov02_0235AA5C ldr r1, [r0] add r0, r1, #0x100 ldrsb r0, [r0, #0x21] sub r0, r0, #0x2f cmp r0, #5 addls pc, pc, r0, lsl #2 b _023369A0 _02336960: ; jump table b _02336978 ; case 0 b _02336980 ; case 1 b _02336988 ; case 2 b _02336990 ; case 3 b _02336998 ; case 4 b _02336998 ; case 5 _02336978: mov r4, #0x42 b _023369A4 _02336980: mov r4, #0x41 b _023369A4 _02336988: mov r4, #0x43 b _023369A4 _02336990: mov r4, #0x41 b _023369A4 _02336998: mov r4, #0x45 b _023369A4 _023369A0: mov r4, #0x40 _023369A4: ldr r0, [r1, #0x114] mov r1, #0 bl ov02_0234D308 mov r2, r0 mov r1, r4 mov r0, #0 bl ov02_0234D618 ldr r0, _02336A0C ; =ov02_0235AA5C mvn r1, #0 ldr r0, [r0] mov r2, #2 ldr r0, [r0, #0x114] bl ov02_0234D530 ldr r0, _02336A0C ; =ov02_0235AA5C ldr r2, _02336A10 ; =ov02_02352644 ldr r3, [r0] mvn r1, #0 add r0, r3, #0x100 ldrsb ip, [r0, #0x21] ldr r0, [r3, #0x114] ldr r3, _02336A14 ; =ov02_02352646 mov ip, ip, lsl #2 ldrh r2, [r2, ip] ldrh r3, [r3, ip] bl ov02_0234D440 ldmia sp!, {r4, pc} .align 2, 0 _02336A0C: .word ov02_0235AA5C _02336A10: .word ov02_02352644 _02336A14: .word ov02_02352646 arm_func_end ov02_0233693C arm_func_start ov02_02336A18 ov02_02336A18: ; 0x02336A18 stmdb sp!, {r3, lr} ldr r2, _02336E48 ; =ov02_0235AA5C ldr r3, _02336E4C ; =ov02_02352718 ldr ip, [r2] add r1, ip, #0x100 ldrsb lr, [r1, #0x21] add r1, r3, lr, lsl #2 ldrsb r1, [r0, r1] strb r1, [ip, #0x121] ldr r1, [r2] add r2, r1, #0x100 ldrsb r3, [r2, #0x21] cmp r3, #0x2e cmpeq r0, #3 streqb lr, [r1, #0x120] beq _02336E38 cmp r3, #0x33 bne _02336A70 cmp r0, #1 cmpne r0, #3 streqb lr, [r1, #0x120] beq _02336E38 _02336A70: cmp r3, #0x34 bne _02336A90 cmp r0, #1 cmpne r0, #3 bne _02336A90 cmp lr, #0x2e strneb lr, [r1, #0x120] b _02336E38 _02336A90: mvn r2, #0 cmp r3, r2 bne _02336AC0 add r0, r1, #0x100 ldrsb r0, [r0, #0x20] cmp r0, #0x23 cmpne r0, #0x32 moveq r0, #0x23 streqb r0, [r1, #0x121] movne r0, #0x22 strneb r0, [r1, #0x121] b _02336E38 _02336AC0: sub r0, r2, #1 cmp r3, r0 bne _02336B80 add r0, r1, #0x100 ldrsb r0, [r0, #0x20] cmp r0, #0x26 bgt _02336B18 bge _02336B50 cmp r0, #5 bgt _02336B0C cmp r0, #0 addge pc, pc, r0, lsl #2 b _02336B74 _02336AF4: ; jump table b _02336B38 ; case 0 b _02336B44 ; case 1 b _02336B74 ; case 2 b _02336B50 ; case 3 b _02336B5C ; case 4 b _02336B68 ; case 5 _02336B0C: cmp r0, #0x24 beq _02336B44 b _02336B74 _02336B18: cmp r0, #0x28 bgt _02336B30 bge _02336B68 cmp r0, #0x27 beq _02336B5C b _02336B74 _02336B30: cmp r0, #0x31 bne _02336B74 _02336B38: mov r0, #0x31 strb r0, [r1, #0x121] b _02336E38 _02336B44: mov r0, #0x24 strb r0, [r1, #0x121] b _02336E38 _02336B50: mov r0, #0x26 strb r0, [r1, #0x121] b _02336E38 _02336B5C: mov r0, #0x27 strb r0, [r1, #0x121] b _02336E38 _02336B68: mov r0, #0x28 strb r0, [r1, #0x121] b _02336E38 _02336B74: mov r0, #0x25 strb r0, [r1, #0x121] b _02336E38 _02336B80: sub r0, r2, #2 cmp r3, r0 bne _02336C78 add r0, r1, #0x100 ldrsb r0, [r0, #0x20] cmp r0, #0x23 bgt _02336BF0 bge _02336C60 cmp r0, #0xb bgt _02336BE4 cmp r0, #0 addge pc, pc, r0, lsl #2 b _02336C6C _02336BB4: ; jump table b _02336C6C ; case 0 b _02336C6C ; case 1 b _02336C6C ; case 2 b _02336C6C ; case 3 b _02336C6C ; case 4 b _02336C6C ; case 5 b _02336C30 ; case 6 b _02336C3C ; case 7 b _02336C6C ; case 8 b _02336C48 ; case 9 b _02336C54 ; case 10 b _02336C60 ; case 11 _02336BE4: cmp r0, #0x22 beq _02336C60 b _02336C6C _02336BF0: cmp r0, #0x2a bgt _02336C08 bge _02336C3C cmp r0, #0x29 beq _02336C30 b _02336C6C _02336C08: cmp r0, #0x32 bgt _02336C6C cmp r0, #0x2c blt _02336C6C beq _02336C48 cmp r0, #0x2d beq _02336C54 cmp r0, #0x32 beq _02336C60 b _02336C6C _02336C30: mov r0, #0x29 strb r0, [r1, #0x121] b _02336E38 _02336C3C: mov r0, #0x2a strb r0, [r1, #0x121] b _02336E38 _02336C48: mov r0, #0x2c strb r0, [r1, #0x121] b _02336E38 _02336C54: mov r0, #0x2d strb r0, [r1, #0x121] b _02336E38 _02336C60: mov r0, #0x2e strb r0, [r1, #0x121] b _02336E38 _02336C6C: mov r0, #0x2b strb r0, [r1, #0x121] b _02336E38 _02336C78: sub r0, r2, #3 cmp r3, r0 bne _02336D38 add r0, r1, #0x100 ldrsb r0, [r0, #0x20] cmp r0, #0x26 bgt _02336CD0 bge _02336D08 cmp r0, #5 bgt _02336CC4 cmp r0, #0 addge pc, pc, r0, lsl #2 b _02336D2C _02336CAC: ; jump table b _02336CF0 ; case 0 b _02336CFC ; case 1 b _02336D2C ; case 2 b _02336D08 ; case 3 b _02336D14 ; case 4 b _02336D20 ; case 5 _02336CC4: cmp r0, #0x24 beq _02336CFC b _02336D2C _02336CD0: cmp r0, #0x28 bgt _02336CE8 bge _02336D20 cmp r0, #0x27 beq _02336D14 b _02336D2C _02336CE8: cmp r0, #0x31 bne _02336D2C _02336CF0: mov r0, #0 strb r0, [r1, #0x121] b _02336E38 _02336CFC: mov r0, #1 strb r0, [r1, #0x121] b _02336E38 _02336D08: mov r0, #3 strb r0, [r1, #0x121] b _02336E38 _02336D14: mov r0, #4 strb r0, [r1, #0x121] b _02336E38 _02336D20: mov r0, #5 strb r0, [r1, #0x121] b _02336E38 _02336D2C: mov r0, #2 strb r0, [r1, #0x121] b _02336E38 _02336D38: sub r0, r2, #4 cmp r3, r0 bne _02336E38 add r0, r1, #0x100 ldrsb r0, [r0, #0x20] cmp r0, #0x23 bgt _02336DA8 bge _02336E24 cmp r0, #0xb bgt _02336D9C cmp r0, #0 addge pc, pc, r0, lsl #2 b _02336E30 _02336D6C: ; jump table b _02336E30 ; case 0 b _02336E30 ; case 1 b _02336E30 ; case 2 b _02336E30 ; case 3 b _02336E30 ; case 4 b _02336E30 ; case 5 b _02336DE8 ; case 6 b _02336DF4 ; case 7 b _02336E30 ; case 8 b _02336E00 ; case 9 b _02336E0C ; case 10 b _02336E18 ; case 11 _02336D9C: cmp r0, #0x22 beq _02336E18 b _02336E30 _02336DA8: cmp r0, #0x2a bgt _02336DC0 bge _02336DF4 cmp r0, #0x29 beq _02336DE8 b _02336E30 _02336DC0: cmp r0, #0x32 bgt _02336E30 cmp r0, #0x2c blt _02336E30 beq _02336E00 cmp r0, #0x2d beq _02336E0C cmp r0, #0x32 beq _02336E24 b _02336E30 _02336DE8: mov r0, #6 strb r0, [r1, #0x121] b _02336E38 _02336DF4: mov r0, #7 strb r0, [r1, #0x121] b _02336E38 _02336E00: mov r0, #9 strb r0, [r1, #0x121] b _02336E38 _02336E0C: mov r0, #0xa strb r0, [r1, #0x121] b _02336E38 _02336E18: mov r0, #0xb strb r0, [r1, #0x121] b _02336E38 _02336E24: mov r0, #0x32 strb r0, [r1, #0x121] b _02336E38 _02336E30: mov r0, #8 strb r0, [r1, #0x121] _02336E38: bl ov02_0233693C mov r0, #8 bl ov02_023480E0 ldmia sp!, {r3, pc} .align 2, 0 _02336E48: .word ov02_0235AA5C _02336E4C: .word ov02_02352718 arm_func_end ov02_02336A18 arm_func_start ov02_02336E50 ov02_02336E50: ; 0x02336E50 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _02336EC8 ; =ov02_0235AA5C mov r4, r0 ldr r0, [r1] mov r1, #0 ldr r0, [r0, #0xfc] bl ov02_0234D308 ldr r3, [r0] ldr r1, _02336EC8 ; =ov02_0235AA5C ldr r0, _02336ECC ; =0x01FF0000 and r2, r3, #0xff and r0, r3, r0 mov r3, r0, lsr #0x10 ldr r1, [r1] add r2, r2, #0xc ldrb r0, [r1, #0x11d] str r2, [sp] mov r1, #4 str r3, [sp, #4] bl ov02_02336574 ldr r0, [sp] cmp r0, #0xc0 addlt sp, sp, #8 ldmltia sp!, {r4, pc} ldr r1, _02336ED0 ; =ov02_02336ED4 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _02336EC8: .word ov02_0235AA5C _02336ECC: .word 0x01FF0000 _02336ED0: .word ov02_02336ED4 arm_func_end ov02_02336E50 arm_func_start ov02_02336ED4 ov02_02336ED4: ; 0x02336ED4 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _02336F3C ; =ov02_0235AA5C ldr r2, _02336F40 ; =0x01FF0000 ldr r3, [r1] mov r4, r0 ldr r1, [r3, #0xc0] ldrb r0, [r3, #0x11d] ldr ip, [r1] mov r1, #3 and r3, ip, #0xff and ip, ip, r2 add r2, r3, #0xc mov r3, ip, lsr #0x10 str r2, [sp] str r3, [sp, #4] bl ov02_02336574 ldr r0, [sp] cmp r0, #0xc0 addlt sp, sp, #8 ldmltia sp!, {r4, pc} ldr r1, _02336F44 ; =ov02_02336F48 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _02336F3C: .word ov02_0235AA5C _02336F40: .word 0x01FF0000 _02336F44: .word ov02_02336F48 arm_func_end ov02_02336ED4 arm_func_start ov02_02336F48 ov02_02336F48: ; 0x02336F48 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _02336FB0 ; =ov02_0235AA5C ldr r2, _02336FB4 ; =0x01FF0000 ldr r3, [r1] mov r4, r0 ldr r1, [r3, #0x90] ldrb r0, [r3, #0x11d] ldr ip, [r1] mov r1, #2 and r3, ip, #0xff and ip, ip, r2 add r2, r3, #0xc mov r3, ip, lsr #0x10 str r2, [sp] str r3, [sp, #4] bl ov02_02336574 ldr r0, [sp] cmp r0, #0xc0 addlt sp, sp, #8 ldmltia sp!, {r4, pc} ldr r1, _02336FB8 ; =ov02_02336FBC mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _02336FB0: .word ov02_0235AA5C _02336FB4: .word 0x01FF0000 _02336FB8: .word ov02_02336FBC arm_func_end ov02_02336F48 arm_func_start ov02_02336FBC ov02_02336FBC: ; 0x02336FBC stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _02337024 ; =ov02_0235AA5C ldr r2, _02337028 ; =0x01FF0000 ldr r3, [r1] mov r4, r0 ldr r1, [r3, #0x60] ldrb r0, [r3, #0x11d] ldr ip, [r1] mov r1, #1 and r3, ip, #0xff and ip, ip, r2 add r2, r3, #0xc mov r3, ip, lsr #0x10 str r2, [sp] str r3, [sp, #4] bl ov02_02336574 ldr r0, [sp] cmp r0, #0xc0 addlt sp, sp, #8 ldmltia sp!, {r4, pc} ldr r1, _0233702C ; =ov02_02337030 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _02337024: .word ov02_0235AA5C _02337028: .word 0x01FF0000 _0233702C: .word ov02_02337030 arm_func_end ov02_02336FBC arm_func_start ov02_02337030 ov02_02337030: ; 0x02337030 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _02337098 ; =ov02_0235AA5C ldr r2, _0233709C ; =0x01FF0000 ldr r3, [r1] mov r4, r0 ldr r1, [r3, #0x30] ldrb r0, [r3, #0x11d] ldr ip, [r1] mov r1, #0 and r3, ip, #0xff and ip, ip, r2 add r2, r3, #0xc mov r3, ip, lsr #0x10 str r2, [sp] str r3, [sp, #4] bl ov02_02336574 ldr r0, [sp] cmp r0, #0xc0 addlt sp, sp, #8 ldmltia sp!, {r4, pc} ldr r1, _023370A0 ; =ov02_023370A4 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _02337098: .word ov02_0235AA5C _0233709C: .word 0x01FF0000 _023370A0: .word ov02_023370A4 arm_func_end ov02_02337030 arm_func_start ov02_023370A4 ov02_023370A4: ; 0x023370A4 stmdb sp!, {r3, r4, r5, r6, r7, lr} mov r1, r0 mov r0, #0 bl ov02_0234FB40 mov r5, #0 ldr r7, _0233717C ; =ov02_0235AA5C mov r4, r5 _023370C0: mov r6, r4 _023370C4: ldr r0, [r7] add r0, r0, r5, lsl #4 ldr r0, [r0, r6, lsl #2] bl ov02_0234DD9C cmp r5, #0 bne _023370EC ldr r0, [r7] add r0, r0, r6, lsl #2 ldr r0, [r0, #0x104] bl ov02_0234D288 _023370EC: add r6, r6, #1 cmp r6, #4 blt _023370C4 add r5, r5, #1 cmp r5, #3 blt _023370C0 ldr r4, _0233717C ; =ov02_0235AA5C mov r5, #0 _0233710C: ldr r0, [r4] add r0, r0, r5, lsl #2 ldr r0, [r0, #0xfc] bl ov02_0234D288 add r5, r5, #1 cmp r5, #2 blt _0233710C ldr r4, _0233717C ; =ov02_0235AA5C mov r5, #0 _02337130: ldr r0, [r4] add r0, r0, r5, lsl #2 ldr r0, [r0, #0xec] bl ov02_0234F2C0 add r5, r5, #1 cmp r5, #4 blt _02337130 ldr r4, _0233717C ; =ov02_0235AA5C mov r5, #0 _02337154: ldr r0, [r4] add r0, r0, r5, lsl #2 ldr r0, [r0, #0x30] bl ov02_0234F2C0 add r5, r5, #1 cmp r5, #0x2f blt _02337154 ldr r0, _02337180 ; =ov02_0235AA5C bl ov02_0234E7D8 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _0233717C: .word ov02_0235AA5C _02337180: .word ov02_0235AA5C arm_func_end ov02_023370A4 arm_func_start ov02_02337184 ov02_02337184: ; 0x02337184 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x24 ldr r0, _023374A4 ; =ov02_02352804 mov r3, #0x1c ldrh r5, [r0, #0x20] ldrh r4, [r0, #0x22] mov r2, #0x14 mov r0, #0x6c mov r1, #4 strh r5, [sp, #0x1c] strh r4, [sp, #0x1e] strh r3, [sp, #0x20] strh r2, [sp, #0x22] bl ov02_0234E7B4 ldr r8, _023374A8 ; =ov02_0235AA60 mov r6, #0 mov r1, #0x1f str r0, [r8] strb r1, [r0, #0x60] ldr r0, [r8] mov r1, #1 strb r6, [r0, #0x63] ldr r0, [r8] ldr r7, _023374AC ; =0xC1FFFCFF strb r1, [r0, #0x66] ldr r0, [r8] mov r5, r6 strb r1, [r0, #0x67] ldr r0, [r8] mov r4, #0x36 strb r1, [r0, #0x68] _02337200: mov r0, r5 mov r1, r4 bl ov02_0234D6AC ldr r1, [r8] add r1, r1, r6, lsl #2 str r0, [r1, #0x10] ldr r0, [r8] add r0, r0, r6, lsl #2 ldr r1, [r0, #0x10] ldr r0, [r1] and r0, r0, r7 orr r0, r0, #0x200 str r0, [r1] ldr r0, [r8] add r0, r0, r6, lsl #2 ldr r1, [r0, #0x10] add r6, r6, #1 ldrh r0, [r1, #4] cmp r6, #0xa bic r0, r0, #0xc00 orr r0, r0, #0xc00 strh r0, [r1, #4] blt _02337200 mov r6, #0 ldr r5, _023374B0 ; =ov02_023527F0 ldr r8, _023374A8 ; =ov02_0235AA60 ldr r7, _023374AC ; =0xC1FFFCFF mov r4, r6 _02337270: ldrb r1, [r5], #1 mov r0, r4 bl ov02_0234D6AC ldr r1, [r8] add r1, r1, r6, lsl #2 str r0, [r1, #0x38] ldr r0, [r8] add r0, r0, r6, lsl #2 ldr r1, [r0, #0x38] ldr r0, [r1] and r0, r0, r7 orr r0, r0, #0x200 str r0, [r1] ldr r0, [r8] add r0, r0, r6, lsl #2 ldr r1, [r0, #0x38] add r6, r6, #1 ldrh r0, [r1, #4] cmp r6, #2 bic r0, r0, #0xc00 orr r0, r0, #0xc00 strh r0, [r1, #4] blt _02337270 mov sl, #0 ldr sb, _023374B4 ; =ov02_023527F4 ldr r4, _023374A8 ; =ov02_0235AA60 mov r8, sl mov r7, #1 mvn r6, #0 mov r5, #0x200 mov fp, sl _023372EC: ldrb r1, [sb], #1 mov r0, r8 mov r2, r7 bl ov02_0234D6D8 ldr r2, [r4] mov r1, r6 add r2, r2, sl, lsl #2 str r0, [r2, #0x40] ldr r0, [r4] mov r2, r5 add r0, r0, sl, lsl #2 ldr r0, [r0, #0x40] mov r3, fp bl ov02_0234D31C ldr r0, [r4] mov r1, r6 add r0, r0, sl, lsl #2 ldr r0, [r0, #0x40] mov r2, #3 bl ov02_0234D530 add sl, sl, #1 cmp sl, #2 blt _023372EC mov sl, #0 str sl, [sp, #0x10] strh sl, [sp, #0x16] _02337354: add r1, sp, #0x18 mov r0, #0 str r1, [sp] mov r3, r0 mov r1, #0xc mov r2, #4 str r0, [sp, #4] bl ov02_0234DCC0 ldr fp, _023374A8 ; =ov02_0235AA60 mov sb, #0 ldr r1, [fp] ldr r8, [sp, #0x10] ldr r7, _023374B8 ; =ov02_0235283C str r0, [r1, sl, lsl #2] strh sb, [sp, #0x1c] mov r6, #2 mov r5, #0x480 add r4, sp, #0x14 _0233739C: mov r0, r8, lsl #1 ldrh r2, [r7, r0] ldrh r0, [sp, #0x22] ldrh r1, [sp, #0x1c] strh r2, [sp, #0x14] stmia sp, {r0, r6} str r5, [sp, #8] str r4, [sp, #0xc] ldr r0, [fp] ldrh r2, [sp, #0x1e] ldrh r3, [sp, #0x20] ldr r0, [r0, sl, lsl #2] bl ov02_0234E1E8 ldrh r0, [sp, #0x1c] add sb, sb, #1 cmp sb, #3 add r0, r0, #0x20 strh r0, [sp, #0x1c] add r8, r8, #1 blt _0233739C mov r0, #0 ldr r1, [sp, #0x18] mov r2, r0 bl ov02_0234D12C ldr r1, [sp, #0x10] ldr r2, _023374A8 ; =ov02_0235AA60 add r1, r1, #3 str r1, [sp, #0x10] ldr r1, [r2] add r1, r1, sl, lsl #2 add sl, sl, #1 str r0, [r1, #0x48] cmp sl, #4 blt _02337354 mov r0, #0 mov r1, #0x44 mov r2, #1 bl ov02_0234D6D8 ldr r3, _023374A8 ; =ov02_0235AA60 mvn r1, #0 ldr r4, [r3] mov r2, #0x200 str r0, [r4, #0x58] ldr r0, [r3] mov r3, #0 ldr r0, [r0, #0x58] bl ov02_0234D31C ldr r0, _023374A8 ; =ov02_0235AA60 mvn r1, #0 ldr r0, [r0] mov r2, #2 ldr r0, [r0, #0x58] bl ov02_0234D530 mov r0, #0 ldr r1, _023374BC ; =ov02_02337560 mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 ldr r2, _023374A8 ; =ov02_0235AA60 mov r1, #0xc0 ldr r2, [r2] str r0, [r2, #0x5c] mov r0, #0 bl ov02_02337F80 add sp, sp, #0x24 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _023374A4: .word ov02_02352804 _023374A8: .word ov02_0235AA60 _023374AC: .word 0xC1FFFCFF _023374B0: .word ov02_023527F0 _023374B4: .word ov02_023527F4 _023374B8: .word ov02_0235283C _023374BC: .word ov02_02337560 arm_func_end ov02_02337184 arm_func_start ov02_023374C0 ov02_023374C0: ; 0x023374C0 stmdb sp!, {r3, lr} ldr r0, _023374EC ; =ov02_0235AA60 ldr r0, [r0] ldr r0, [r0, #0x58] bl ov02_0234D288 ldr r0, _023374EC ; =ov02_0235AA60 ldr r1, _023374F0 ; =ov02_023383E0 ldr r0, [r0] ldr r0, [r0, #0x5c] bl ov02_0234FB38 ldmia sp!, {r3, pc} .align 2, 0 _023374EC: .word ov02_0235AA60 _023374F0: .word ov02_023383E0 arm_func_end ov02_023374C0 arm_func_start ov02_023374F4 ov02_023374F4: ; 0x023374F4 ldr r0, _02337504 ; =ov02_0235AA60 ldr r0, [r0] ldrb r0, [r0, #0x60] bx lr .align 2, 0 _02337504: .word ov02_0235AA60 arm_func_end ov02_023374F4 arm_func_start ov02_02337508 ov02_02337508: ; 0x02337508 ldr r1, _02337518 ; =ov02_0235AA60 ldr r1, [r1] strb r0, [r1, #0x66] bx lr .align 2, 0 _02337518: .word ov02_0235AA60 arm_func_end ov02_02337508 arm_func_start ov02_0233751C ov02_0233751C: ; 0x0233751C ldr r1, _0233752C ; =ov02_0235AA60 ldr r1, [r1] strb r0, [r1, #0x67] bx lr .align 2, 0 _0233752C: .word ov02_0235AA60 arm_func_end ov02_0233751C arm_func_start ov02_02337530 ov02_02337530: ; 0x02337530 ldr r1, _02337540 ; =ov02_0235AA60 ldr r1, [r1] strb r0, [r1, #0x68] bx lr .align 2, 0 _02337540: .word ov02_0235AA60 arm_func_end ov02_02337530 arm_func_start ov02_02337544 ov02_02337544: ; 0x02337544 ldr r0, _0233755C ; =ov02_0235AA60 ldr r0, [r0] cmp r0, #0 movne r0, #1 moveq r0, #0 bx lr .align 2, 0 _0233755C: .word ov02_0235AA60 arm_func_end ov02_02337544 arm_func_start ov02_02337560 ov02_02337560: ; 0x02337560 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r2, _023375D8 ; =ov02_0235AA60 mov r4, r0 ldr r2, [r2] ldr r1, _023375DC ; =0x01FF0000 ldr r0, [r2, #0x10] ldr r0, [r0] and r2, r0, r1 and r0, r0, #0xff sub r1, r0, #0xc mov r0, r2, lsr #0x10 str r0, [sp, #4] str r1, [sp] cmp r1, #0x4c mov r0, #0 ble _023375B0 bl ov02_02337F80 add sp, sp, #8 ldmia sp!, {r4, pc} _023375B0: mov r1, #0x4c bl ov02_02337F80 mov r0, #1 mov r1, #0xc0 bl ov02_02337F80 ldr r1, _023375E0 ; =ov02_023375E4 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _023375D8: .word ov02_0235AA60 _023375DC: .word 0x01FF0000 _023375E0: .word ov02_023375E4 arm_func_end ov02_02337560 arm_func_start ov02_023375E4 ov02_023375E4: ; 0x023375E4 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r2, _0233765C ; =ov02_0235AA60 mov r4, r0 ldr r2, [r2] ldr r1, _02337660 ; =0x01FF0000 ldr r0, [r2, #0x1c] ldr r0, [r0] and r2, r0, r1 and r0, r0, #0xff sub r1, r0, #0xc mov r0, r2, lsr #0x10 str r0, [sp, #4] str r1, [sp] cmp r1, #0x63 mov r0, #1 ble _02337634 bl ov02_02337F80 add sp, sp, #8 ldmia sp!, {r4, pc} _02337634: mov r1, #0x63 bl ov02_02337F80 mov r0, #2 mov r1, #0xc0 bl ov02_02337F80 ldr r1, _02337664 ; =ov02_02337668 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _0233765C: .word ov02_0235AA60 _02337660: .word 0x01FF0000 _02337664: .word ov02_02337668 arm_func_end ov02_023375E4 arm_func_start ov02_02337668 ov02_02337668: ; 0x02337668 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r2, _023376E0 ; =ov02_0235AA60 mov r4, r0 ldr r2, [r2] ldr r1, _023376E4 ; =0x01FF0000 ldr r0, [r2, #0x28] ldr r0, [r0] and r2, r0, r1 and r0, r0, #0xff sub r1, r0, #0xc mov r0, r2, lsr #0x10 str r0, [sp, #4] str r1, [sp] cmp r1, #0x7a mov r0, #2 ble _023376B8 bl ov02_02337F80 add sp, sp, #8 ldmia sp!, {r4, pc} _023376B8: mov r1, #0x7a bl ov02_02337F80 mov r0, #3 mov r1, #0xc0 bl ov02_02337F80 ldr r1, _023376E8 ; =ov02_023376EC mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _023376E0: .word ov02_0235AA60 _023376E4: .word 0x01FF0000 _023376E8: .word ov02_023376EC arm_func_end ov02_02337668 arm_func_start ov02_023376EC ov02_023376EC: ; 0x023376EC stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r2, _02337764 ; =ov02_0235AA60 mov r4, r0 ldr r2, [r2] ldr r1, _02337768 ; =0x01FF0000 ldr r0, [r2, #0x34] ldr r0, [r0] and r2, r0, r1 and r0, r0, #0xff sub r1, r0, #0xc mov r0, r2, lsr #0x10 str r0, [sp, #4] str r1, [sp] cmp r1, #0x91 mov r0, #3 ble _0233773C bl ov02_02337F80 add sp, sp, #8 ldmia sp!, {r4, pc} _0233773C: mov r1, #0x91 bl ov02_02337F80 mov r0, #4 mov r1, #0xc0 bl ov02_02337F80 ldr r1, _0233776C ; =ov02_02337770 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _02337764: .word ov02_0235AA60 _02337768: .word 0x01FF0000 _0233776C: .word ov02_02337770 arm_func_end ov02_023376EC arm_func_start ov02_02337770 ov02_02337770: ; 0x02337770 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _023377DC ; =ov02_0235AA60 mov r4, r0 ldr r0, [r1] add r2, sp, #4 ldr r0, [r0, #0x40] add r3, sp, #0 mov r1, #0 bl ov02_0234D590 ldr r0, [sp] sub r1, r0, #0xc str r1, [sp] cmp r1, #0xaa mov r0, #4 ble _023377BC bl ov02_02337F80 add sp, sp, #8 ldmia sp!, {r4, pc} _023377BC: mov r1, #0xaa bl ov02_02337F80 bl ov02_023382A8 ldr r1, _023377E0 ; =ov02_023377E4 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _023377DC: .word ov02_0235AA60 _023377E0: .word ov02_023377E4 arm_func_end ov02_02337770 arm_func_start ov02_023377E4 ov02_023377E4: ; 0x023377E4 stmdb sp!, {r3, lr} bl ov02_023377FC bl ov02_023379D8 bl ov02_02337BA8 bl ov02_02337DE4 ldmia sp!, {r3, pc} arm_func_end ov02_023377E4 arm_func_start ov02_023377FC ov02_023377FC: ; 0x023377FC stmdb sp!, {r3, r4, r5, r6, r7, lr} sub sp, sp, #8 ldr r0, _023379B8 ; =ov02_02352F34 bl ov02_0234ED04 cmp r0, #0 addeq sp, sp, #8 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} ldr r0, _023379BC ; =ov02_0235AA60 mvn r1, #0 ldr r0, [r0] ldr r7, _023379C0 ; =ov02_02352856 ldr r6, _023379C4 ; =ov02_02352804 strb r1, [r0, #0x61] mov r4, #0 add r5, sp, #0 _02337838: mov r0, r7 mov r1, r6 mov r2, r5 bl ov02_0234E39C mov r0, r5 bl ov02_0234ED04 cmp r0, #0 beq _02337898 ldr r0, _023379BC ; =ov02_0235AA60 ldr r0, [r0] ldrb r0, [r0, #0x67] cmp r0, #0 bne _0233787C mov r0, #9 bl ov02_023480E0 add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} _0233787C: mov r0, #0 bl ov02_023480E0 ldr r0, _023379BC ; =ov02_0235AA60 add sp, sp, #8 ldr r0, [r0] strb r4, [r0, #0x61] ldmia sp!, {r3, r4, r5, r6, r7, pc} _02337898: add r4, r4, #1 cmp r4, #0xa add r7, r7, #4 blt _02337838 ldr r7, _023379C8 ; =ov02_0235282C ldr r6, _023379CC ; =ov02_0235280C mov r4, #0 add r5, sp, #0 _023378B8: mov r0, r7 mov r1, r6 mov r2, r5 bl ov02_0234E39C mov r0, r5 bl ov02_0234ED04 cmp r0, #0 beq _02337940 cmp r4, #0 bne _023378F4 ldr r0, _023379BC ; =ov02_0235AA60 ldr r0, [r0] ldrb r0, [r0, #0x66] cmp r0, #0 beq _02337910 _023378F4: cmp r4, #1 bne _02337920 ldr r0, _023379BC ; =ov02_0235AA60 ldr r0, [r0] ldrb r0, [r0, #0x68] cmp r0, #0 bne _02337920 _02337910: mov r0, #9 bl ov02_023480E0 add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} _02337920: mov r0, #0 bl ov02_023480E0 ldr r0, _023379BC ; =ov02_0235AA60 add r1, r4, #0xa ldr r0, [r0] add sp, sp, #8 strb r1, [r0, #0x61] ldmia sp!, {r3, r4, r5, r6, r7, pc} _02337940: add r4, r4, #1 cmp r4, #2 add r7, r7, #4 blt _023378B8 ldr r6, _023379D0 ; =ov02_02352834 ldr r5, _023379D4 ; =ov02_02352810 mov r7, #0 add r4, sp, #0 _02337960: mov r0, r6 mov r1, r5 mov r2, r4 bl ov02_0234E39C mov r0, r4 bl ov02_0234ED04 cmp r0, #0 beq _023379A0 mov r0, #0 bl ov02_023480E0 ldr r0, _023379BC ; =ov02_0235AA60 add r1, r7, #0xc ldr r0, [r0] add sp, sp, #8 strb r1, [r0, #0x61] ldmia sp!, {r3, r4, r5, r6, r7, pc} _023379A0: add r7, r7, #1 cmp r7, #2 add r6, r6, #4 blt _02337960 add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _023379B8: .word ov02_02352F34 _023379BC: .word ov02_0235AA60 _023379C0: .word ov02_02352856 _023379C4: .word ov02_02352804 _023379C8: .word ov02_0235282C _023379CC: .word ov02_0235280C _023379D0: .word ov02_02352834 _023379D4: .word ov02_02352810 arm_func_end ov02_023377FC arm_func_start ov02_023379D8 ov02_023379D8: ; 0x023379D8 stmdb sp!, {r3, r4, r5, r6, r7, lr} sub sp, sp, #8 ldr r1, _02337B7C ; =ov02_0235AA60 ldr r0, _02337B80 ; =ov02_02352F34 ldr r1, [r1] mov r2, #0 strb r2, [r1, #0x60] bl ov02_0234EE14 cmp r0, #0 addeq sp, sp, #8 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} ldr r7, _02337B84 ; =ov02_02352856 ldr r6, _02337B88 ; =ov02_02352804 mov r4, #0 add r5, sp, #0 _02337A14: mov r0, r7 mov r1, r6 mov r2, r5 bl ov02_0234E39C mov r0, r5 bl ov02_0234EE14 cmp r0, #0 beq _02337A6C ldr r0, _02337B7C ; =ov02_0235AA60 ldr r2, [r0] ldrsb r1, [r2, #0x61] cmp r1, r4 addne sp, sp, #8 ldmneia sp!, {r3, r4, r5, r6, r7, pc} ldr r1, _02337B8C ; =ov02_023528F0 ldrb r1, [r1, r4] strb r1, [r2, #0x60] ldr r0, [r0] strb r4, [r0, #0x63] bl ov02_023382A8 add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} _02337A6C: add r4, r4, #1 cmp r4, #0xa add r7, r7, #4 blt _02337A14 ldr r7, _02337B90 ; =ov02_0235282C ldr r6, _02337B94 ; =ov02_0235280C mov r4, #0 add r5, sp, #0 _02337A8C: mov r0, r7 mov r1, r6 mov r2, r5 bl ov02_0234E39C mov r0, r5 bl ov02_0234EE14 cmp r0, #0 beq _02337AE8 ldr r0, _02337B7C ; =ov02_0235AA60 add r2, r4, #0xa ldr r3, [r0] ldrsb r1, [r3, #0x61] cmp r1, r2 addne sp, sp, #8 ldmneia sp!, {r3, r4, r5, r6, r7, pc} ldr r1, _02337B98 ; =ov02_02352800 ldrb r1, [r1, r4] strb r1, [r3, #0x60] ldr r0, [r0] strb r2, [r0, #0x63] bl ov02_023382A8 add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} _02337AE8: add r4, r4, #1 cmp r4, #2 add r7, r7, #4 blt _02337A8C ldr r7, _02337B9C ; =ov02_02352834 ldr r6, _02337BA0 ; =ov02_02352810 mov r4, #0 add r5, sp, #0 _02337B08: mov r0, r7 mov r1, r6 mov r2, r5 bl ov02_0234E39C mov r0, r5 bl ov02_0234EE14 cmp r0, #0 beq _02337B64 ldr r0, _02337B7C ; =ov02_0235AA60 add r2, r4, #0xc ldr r3, [r0] ldrsb r1, [r3, #0x61] cmp r1, r2 addne sp, sp, #8 ldmneia sp!, {r3, r4, r5, r6, r7, pc} ldr r1, _02337BA4 ; =ov02_023527FC ldrb r1, [r1, r4] strb r1, [r3, #0x60] ldr r0, [r0] strb r2, [r0, #0x63] bl ov02_023382A8 add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} _02337B64: add r4, r4, #1 cmp r4, #2 add r7, r7, #4 blt _02337B08 add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _02337B7C: .word ov02_0235AA60 _02337B80: .word ov02_02352F34 _02337B84: .word ov02_02352856 _02337B88: .word ov02_02352804 _02337B8C: .word ov02_023528F0 _02337B90: .word ov02_0235282C _02337B94: .word ov02_0235280C _02337B98: .word ov02_02352800 _02337B9C: .word ov02_02352834 _02337BA0: .word ov02_02352810 _02337BA4: .word ov02_023527FC arm_func_end ov02_023379D8 arm_func_start ov02_02337BA8 ov02_02337BA8: ; 0x02337BA8 stmdb sp!, {r3, r4, r5, r6, r7, lr} sub sp, sp, #8 ldr r0, _02337D78 ; =ov02_02352F34 bl ov02_0234EC7C cmp r0, #0 beq _02337D58 ldr r7, _02337D7C ; =ov02_02352856 ldr r5, _02337D80 ; =ov02_02352804 mov r6, #0 add r4, sp, #0 _02337BD0: mov r0, r7 mov r1, r5 mov r2, r4 bl ov02_0234E39C mov r0, r4 bl ov02_0234EC7C cmp r0, #0 beq _02337C10 ldr r0, _02337D84 ; =ov02_0235AA60 ldr r0, [r0] ldrsb r0, [r0, #0x61] cmp r0, r6 bne _02337D58 mov r0, r6 bl ov02_02337D98 b _02337D60 _02337C10: add r6, r6, #1 cmp r6, #0xa add r7, r7, #4 blt _02337BD0 ldr r6, _02337D88 ; =ov02_0235282C ldr r5, _02337D8C ; =ov02_0235280C mov r7, #0 add r4, sp, #0 _02337C30: mov r0, r6 mov r1, r5 mov r2, r4 bl ov02_0234E39C mov r0, r4 bl ov02_0234EC7C cmp r0, #0 beq _02337CE8 ldr r1, _02337D84 ; =ov02_0235AA60 add r0, r7, #0xa ldr r1, [r1] ldrsb r1, [r1, #0x61] cmp r1, r0 bne _02337D58 bl ov02_02337D98 cmp r7, #0 bne _02337D60 ldr r0, _02337D84 ; =ov02_0235AA60 ldr r2, [r0] ldrb r1, [r2, #0x65] add r1, r1, #1 strb r1, [r2, #0x65] ldr r2, [r0] ldrb r1, [r2, #0x65] cmp r1, #0x28 addlo sp, sp, #8 ldmloia sp!, {r3, r4, r5, r6, r7, pc} ldrb r1, [r2, #0x66] cmp r1, #0 bne _02337CC8 mov r0, #9 bl ov02_023480E0 ldr r0, _02337D84 ; =ov02_0235AA60 mvn r1, #0 ldr r0, [r0] add sp, sp, #8 strb r1, [r0, #0x61] ldmia sp!, {r3, r4, r5, r6, r7, pc} _02337CC8: mov r1, #0x10 strb r1, [r2, #0x60] ldr r1, [r0] add sp, sp, #8 ldrb r0, [r1, #0x65] sub r0, r0, #7 strb r0, [r1, #0x65] ldmia sp!, {r3, r4, r5, r6, r7, pc} _02337CE8: add r7, r7, #1 cmp r7, #2 add r6, r6, #4 blt _02337C30 ldr r6, _02337D90 ; =ov02_02352834 ldr r5, _02337D94 ; =ov02_02352810 mov r7, #0 add r4, sp, #0 _02337D08: mov r0, r6 mov r1, r5 mov r2, r4 bl ov02_0234E39C mov r0, r4 bl ov02_0234EC7C cmp r0, #0 beq _02337D48 ldr r1, _02337D84 ; =ov02_0235AA60 add r0, r7, #0xc ldr r1, [r1] ldrsb r1, [r1, #0x61] cmp r1, r0 bne _02337D58 bl ov02_02337D98 b _02337D60 _02337D48: add r7, r7, #1 cmp r7, #2 add r6, r6, #4 blt _02337D08 _02337D58: mvn r0, #0 bl ov02_02337D98 _02337D60: ldr r0, _02337D84 ; =ov02_0235AA60 mov r1, #0 ldr r0, [r0] strb r1, [r0, #0x65] add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _02337D78: .word ov02_02352F34 _02337D7C: .word ov02_02352856 _02337D80: .word ov02_02352804 _02337D84: .word ov02_0235AA60 _02337D88: .word ov02_0235282C _02337D8C: .word ov02_0235280C _02337D90: .word ov02_02352834 _02337D94: .word ov02_02352810 arm_func_end ov02_02337BA8 arm_func_start ov02_02337D98 ov02_02337D98: ; 0x02337D98 stmdb sp!, {r4, lr} ldr r1, _02337DE0 ; =ov02_0235AA60 mov r4, r0 ldr r1, [r1] ldrsb r1, [r1, #0x62] cmp r4, r1 ldmeqia sp!, {r4, pc} mov r1, #1 bl ov02_023381E0 ldr r0, _02337DE0 ; =ov02_0235AA60 mov r1, #0 ldr r0, [r0] ldrsb r0, [r0, #0x62] bl ov02_023381E0 ldr r0, _02337DE0 ; =ov02_0235AA60 ldr r0, [r0] strb r4, [r0, #0x62] ldmia sp!, {r4, pc} .align 2, 0 _02337DE0: .word ov02_0235AA60 arm_func_end ov02_02337D98 arm_func_start ov02_02337DE4 ov02_02337DE4: ; 0x02337DE4 stmdb sp!, {r3, lr} mov r0, #0x20 bl ov02_0234EBFC cmp r0, #0 beq _02337E00 mov r0, #0 bl ov02_02338334 _02337E00: mov r0, #0x40 bl ov02_0234EBFC cmp r0, #0 beq _02337E18 mov r0, #1 bl ov02_02338334 _02337E18: mov r0, #0x10 bl ov02_0234EBFC cmp r0, #0 beq _02337E30 mov r0, #2 bl ov02_02338334 _02337E30: mov r0, #0x80 bl ov02_0234EBFC cmp r0, #0 beq _02337E48 mov r0, #3 bl ov02_02338334 _02337E48: mov r0, #1 bl ov02_0234EBBC cmp r0, #0 beq _02337EF4 ldr r0, _02337F70 ; =ov02_0235AA60 ldr r0, [r0] ldrsb r2, [r0, #0x63] cmp r2, #0xa bge _02337E94 ldrb r1, [r0, #0x67] cmp r1, #0 beq _02337E88 ldr r1, _02337F74 ; =ov02_023528F0 ldrb r1, [r1, r2] strb r1, [r0, #0x60] ldmia sp!, {r3, pc} _02337E88: mov r0, #9 bl ov02_023480E0 ldmia sp!, {r3, pc} _02337E94: sub r1, r2, #0xa cmp r1, #2 bge _02337EE4 cmp r1, #0 ldreqb r1, [r0, #0x66] cmpeq r1, #0 beq _02337EC4 sub r1, r2, #0xa cmp r1, #1 ldreqb r1, [r0, #0x68] cmpeq r1, #0 bne _02337ED0 _02337EC4: mov r0, #9 bl ov02_023480E0 ldmia sp!, {r3, pc} _02337ED0: ldr r1, _02337F78 ; =ov02_02352800 sub r2, r2, #0xa ldrb r1, [r1, r2] strb r1, [r0, #0x60] ldmia sp!, {r3, pc} _02337EE4: ldr r1, _02337F7C ; =ov02_023527FC sub r2, r2, #0xc ldrb r1, [r1, r2] strb r1, [r0, #0x60] _02337EF4: mov r0, #2 bl ov02_0234EBFC cmp r0, #0 beq _02337F4C ldr r0, _02337F70 ; =ov02_0235AA60 ldr r1, [r0] ldrb r0, [r1, #0x66] cmp r0, #0 bne _02337F40 ldrb r0, [r1, #0x69] cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #9 bl ov02_023480E0 ldr r0, _02337F70 ; =ov02_0235AA60 mov r1, #1 ldr r0, [r0] strb r1, [r0, #0x69] ldmia sp!, {r3, pc} _02337F40: mov r0, #0x10 strb r0, [r1, #0x60] ldmia sp!, {r3, pc} _02337F4C: mov r0, #2 bl ov02_0234EC3C cmp r0, #0 ldmeqia sp!, {r3, pc} ldr r0, _02337F70 ; =ov02_0235AA60 mov r1, #0 ldr r0, [r0] strb r1, [r0, #0x69] ldmia sp!, {r3, pc} .align 2, 0 _02337F70: .word ov02_0235AA60 _02337F74: .word ov02_023528F0 _02337F78: .word ov02_02352800 _02337F7C: .word ov02_023527FC arm_func_end ov02_02337DE4 arm_func_start ov02_02337F80 ov02_02337F80: ; 0x02337F80 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x14 ldr r2, _023381C4 ; =ov02_02352804 mov sl, r0 ldrb r3, [r2, #0x15] ldrb r0, [r2, #0x16] ldrb r4, [r2, #0x17] strb r3, [sp, #0xe] strb r0, [sp, #0xf] ldrb r0, [r2, #0x18] mov sb, r1 add r3, sp, #0xe strb r4, [sp, #0x10] strb r0, [sp, #0x11] ldrb r0, [r2, #0x19] add lr, sl, sl, lsl #1 mov r4, lr strb r0, [sp, #0x12] ldrb r6, [r2, #0x1a] ldrb r1, [r2, #0x1b] ldrb r0, [r3, sl] mov r5, #0 strb r6, [sp, #9] strb r1, [sp, #0xa] ldrb r6, [r2, #0x1c] ldrb r1, [r2, #0x1d] cmp r0, #0 strb r6, [sp, #0xb] strb r1, [sp, #0xc] ldrb r0, [r2, #0x1e] strb r0, [sp, #0xd] ldrb r1, [r2, #0x10] ldrb r0, [r2, #0x11] strb r1, [sp, #4] strb r0, [sp, #5] ldrb r1, [r2, #0x12] ldrb r0, [r2, #0x13] strb r1, [sp, #6] strb r0, [sp, #7] ldrb r0, [r2, #0x14] strb r0, [sp, #8] ble _02338094 ldr r0, _023381C8 ; =ov02_02352856 ldr fp, _023381CC ; =ov02_0235AA60 ldr r7, _023381D0 ; =0xC1FFFCFF ldr r8, _023381D4 ; =0xFE00FF00 and r6, sb, #0xff _0233803C: ldr r1, [fp] mov r2, r4, lsl #2 add r1, r1, r4, lsl #2 ldr r1, [r1, #0x10] ldrh r2, [r0, r2] ldr ip, [r1] add r5, r5, #1 and ip, ip, r7 str ip, [r1] ldr ip, [fp] mov r1, r2, lsl #0x17 add r2, ip, r4, lsl #2 ldr r2, [r2, #0x10] add r4, r4, #1 ldr ip, [r2] and ip, ip, r8 orr ip, ip, r6 orr r1, ip, r1, lsr #7 str r1, [r2] ldrb r1, [r3, sl] cmp r5, r1 blt _0233803C _02338094: cmp sl, #4 bge _023380CC ldr r0, _023381CC ; =ov02_0235AA60 ldr r1, _023381C8 ; =ov02_02352856 ldr r3, [r0] mov r0, lr, lsl #2 mov r2, #2 str r2, [sp] add r2, r3, sl, lsl #2 ldrh r1, [r1, r0] ldr r0, [r3, sl, lsl #2] ldr r3, [r2, #0x48] mov r2, sb bl ov02_0234E2BC _023380CC: add r3, sp, #9 ldrb r0, [r3, sl] mov r5, #0 cmp r0, #0 ble _02338148 ldr r0, _023381D8 ; =ov02_0235282C ldr r8, _023381CC ; =ov02_0235AA60 ldr r6, _023381D0 ; =0xC1FFFCFF ldr r7, _023381D4 ; =0xFE00FF00 and r4, sb, #0xff _023380F4: ldr r1, [r8] mov r2, r5, lsl #2 add r1, r1, r5, lsl #2 ldr fp, [r1, #0x38] ldrh r1, [r0, r2] ldr r2, [fp] and r2, r2, r6 str r2, [fp] ldr r2, [r8] mov r1, r1, lsl #0x17 add r2, r2, r5, lsl #2 ldr r2, [r2, #0x38] add r5, r5, #1 ldr fp, [r2] and fp, fp, r7 orr fp, fp, r4 orr r1, fp, r1, lsr #7 str r1, [r2] ldrb r1, [r3, sl] cmp r5, r1 blt _023380F4 _02338148: add r7, sp, #4 ldrb r0, [r7, sl] mov r8, #0 cmp r0, #0 addle sp, sp, #0x14 ldmleia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} ldr r5, _023381DC ; =ov02_02352834 ldr r4, _023381CC ; =ov02_0235AA60 mvn r6, #0 mov fp, r8 _02338170: ldr r0, [r4] mov r1, r6 add r0, r0, r8, lsl #2 ldr r0, [r0, #0x40] mov r2, fp mov r3, fp bl ov02_0234D31C ldr r0, [r4] mov r1, r8, lsl #2 add r0, r0, r8, lsl #2 ldr r0, [r0, #0x40] ldrh r2, [r5, r1] mov r1, r6 mov r3, sb bl ov02_0234D440 ldrb r0, [r7, sl] add r8, r8, #1 cmp r8, r0 blt _02338170 add sp, sp, #0x14 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _023381C4: .word ov02_02352804 _023381C8: .word ov02_02352856 _023381CC: .word ov02_0235AA60 _023381D0: .word 0xC1FFFCFF _023381D4: .word 0xFE00FF00 _023381D8: .word ov02_0235282C _023381DC: .word ov02_02352834 arm_func_end ov02_02337F80 arm_func_start ov02_023381E0 ov02_023381E0: ; 0x023381E0 stmdb sp!, {r3, lr} cmp r0, #0 ldmltia sp!, {r3, pc} cmp r0, #0xa bge _0233822C ldr r2, _0233829C ; =ov02_0235AA60 ldr r3, _023382A0 ; =ov02_023527F8 ldr r2, [r2] ldrb r1, [r3, r1] add r0, r2, r0, lsl #2 ldr r2, [r0, #0x10] ldr r0, [r2] bic r0, r0, #0xc00 str r0, [r2] ldrh r0, [r2, #4] bic r0, r0, #0xf000 orr r0, r0, r1, lsl #12 strh r0, [r2, #4] ldmia sp!, {r3, pc} _0233822C: sub ip, r0, #0xa cmp ip, #2 bge _02338270 ldr r0, _0233829C ; =ov02_0235AA60 ldr r2, _023382A0 ; =ov02_023527F8 ldr r3, [r0] ldrb r0, [r2, r1] add r1, r3, ip, lsl #2 ldr r2, [r1, #0x38] ldr r1, [r2] bic r1, r1, #0xc00 str r1, [r2] ldrh r1, [r2, #4] bic r1, r1, #0xf000 orr r0, r1, r0, lsl #12 strh r0, [r2, #4] ldmia sp!, {r3, pc} _02338270: ldr r2, _0233829C ; =ov02_0235AA60 ldr r3, _023382A4 ; =ov02_023527EC ldr r2, [r2] sub r0, r0, #0xc add r0, r2, r0, lsl #2 ldrb r3, [r3, r1] ldr r0, [r0, #0x40] mvn r1, #0 mov r2, #0 bl ov02_0234D3C0 ldmia sp!, {r3, pc} .align 2, 0 _0233829C: .word ov02_0235AA60 _023382A0: .word ov02_023527F8 _023382A4: .word ov02_023527EC arm_func_end ov02_023381E0 arm_func_start ov02_023382A8 ov02_023382A8: ; 0x023382A8 stmdb sp!, {r4, lr} ldr r0, _02338328 ; =ov02_0235AA60 ldr r1, [r0] ldrsb r0, [r1, #0x63] cmp r0, #0xb movle r4, #0x44 ldr r0, [r1, #0x58] movgt r4, #0x45 mov r1, #0 bl ov02_0234D308 mov r2, r0 mov r1, r4 mov r0, #0 bl ov02_0234D618 ldr r0, _02338328 ; =ov02_0235AA60 mvn r1, #0 ldr r0, [r0] mov r2, #2 ldr r0, [r0, #0x58] bl ov02_0234D530 ldr r0, _02338328 ; =ov02_0235AA60 ldr r2, _0233832C ; =ov02_0235287E ldr r0, [r0] ldr r3, _02338330 ; =ov02_02352880 ldrsb ip, [r0, #0x63] ldr r0, [r0, #0x58] mvn r1, #0 mov ip, ip, lsl #2 ldrh r2, [r2, ip] ldrh r3, [r3, ip] bl ov02_0234D440 ldmia sp!, {r4, pc} .align 2, 0 _02338328: .word ov02_0235AA60 _0233832C: .word ov02_0235287E _02338330: .word ov02_02352880 arm_func_end ov02_023382A8 arm_func_start ov02_02338334 ov02_02338334: ; 0x02338334 stmdb sp!, {r3, lr} ldr r1, _023383D8 ; =ov02_0235AA60 ldr r2, _023383DC ; =ov02_023528B6 ldr r3, [r1] ldrsb ip, [r3, #0x63] add r2, r2, ip, lsl #2 ldrsb r2, [r0, r2] strb r2, [r3, #0x63] ldr r2, [r1] ldrsb r1, [r2, #0x63] cmp r1, #0xd bne _02338374 cmp r0, #1 cmpne r0, #3 streqb ip, [r2, #0x64] beq _023383C8 _02338374: mvn r0, #0 cmp r1, r0 bne _023383A0 ldrsb r0, [r2, #0x64] cmp r0, #1 cmpne r0, #0xa moveq r0, #0xa streqb r0, [r2, #0x63] movne r0, #0xb strneb r0, [r2, #0x63] b _023383C8 _023383A0: sub r0, r0, #1 cmp r1, r0 bne _023383C8 ldrsb r0, [r2, #0x64] cmp r0, #1 cmpne r0, #0xa moveq r0, #1 streqb r0, [r2, #0x63] movne r0, #2 strneb r0, [r2, #0x63] _023383C8: bl ov02_023382A8 mov r0, #8 bl ov02_023480E0 ldmia sp!, {r3, pc} .align 2, 0 _023383D8: .word ov02_0235AA60 _023383DC: .word ov02_023528B6 arm_func_end ov02_02338334 arm_func_start ov02_023383E0 ov02_023383E0: ; 0x023383E0 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _0233844C ; =ov02_0235AA60 mov r4, r0 ldr r0, [r1] mov r1, #0 ldr r0, [r0, #0x40] bl ov02_0234D308 ldr r2, [r0] ldr r0, _02338450 ; =0x01FF0000 and r1, r2, #0xff and r0, r2, r0 mov r2, r0, lsr #0x10 add r1, r1, #0xc str r1, [sp] mov r0, #4 str r2, [sp, #4] bl ov02_02337F80 ldr r0, [sp] cmp r0, #0xc0 addlt sp, sp, #8 ldmltia sp!, {r4, pc} ldr r1, _02338454 ; =ov02_02338458 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _0233844C: .word ov02_0235AA60 _02338450: .word 0x01FF0000 _02338454: .word ov02_02338458 arm_func_end ov02_023383E0 arm_func_start ov02_02338458 ov02_02338458: ; 0x02338458 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _023384BC ; =ov02_0235AA60 mov r4, r0 ldr r0, [r1] ldr r1, _023384C0 ; =0x01FF0000 ldr r2, [r0, #0x34] mov r0, #3 ldr r3, [r2] and r2, r3, #0xff and r3, r3, r1 add r1, r2, #0xc mov r2, r3, lsr #0x10 str r1, [sp] str r2, [sp, #4] bl ov02_02337F80 ldr r0, [sp] cmp r0, #0xc0 addlt sp, sp, #8 ldmltia sp!, {r4, pc} ldr r1, _023384C4 ; =ov02_023384C8 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _023384BC: .word ov02_0235AA60 _023384C0: .word 0x01FF0000 _023384C4: .word ov02_023384C8 arm_func_end ov02_02338458 arm_func_start ov02_023384C8 ov02_023384C8: ; 0x023384C8 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _0233852C ; =ov02_0235AA60 mov r4, r0 ldr r0, [r1] ldr r1, _02338530 ; =0x01FF0000 ldr r2, [r0, #0x28] mov r0, #2 ldr r3, [r2] and r2, r3, #0xff and r3, r3, r1 add r1, r2, #0xc mov r2, r3, lsr #0x10 str r1, [sp] str r2, [sp, #4] bl ov02_02337F80 ldr r0, [sp] cmp r0, #0xc0 addlt sp, sp, #8 ldmltia sp!, {r4, pc} ldr r1, _02338534 ; =ov02_02338538 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _0233852C: .word ov02_0235AA60 _02338530: .word 0x01FF0000 _02338534: .word ov02_02338538 arm_func_end ov02_023384C8 arm_func_start ov02_02338538 ov02_02338538: ; 0x02338538 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _0233859C ; =ov02_0235AA60 mov r4, r0 ldr r0, [r1] ldr r1, _023385A0 ; =0x01FF0000 ldr r2, [r0, #0x1c] mov r0, #1 ldr r3, [r2] and r2, r3, #0xff and r3, r3, r1 add r1, r2, #0xc mov r2, r3, lsr #0x10 str r1, [sp] str r2, [sp, #4] bl ov02_02337F80 ldr r0, [sp] cmp r0, #0xc0 addlt sp, sp, #8 ldmltia sp!, {r4, pc} ldr r1, _023385A4 ; =ov02_023385A8 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _0233859C: .word ov02_0235AA60 _023385A0: .word 0x01FF0000 _023385A4: .word ov02_023385A8 arm_func_end ov02_02338538 arm_func_start ov02_023385A8 ov02_023385A8: ; 0x023385A8 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _0233860C ; =ov02_0235AA60 mov r4, r0 ldr r0, [r1] ldr r1, _02338610 ; =0x01FF0000 ldr r2, [r0, #0x10] mov r0, #0 ldr r3, [r2] and r2, r3, #0xff and r3, r3, r1 add r1, r2, #0xc mov r2, r3, lsr #0x10 str r1, [sp] str r2, [sp, #4] bl ov02_02337F80 ldr r0, [sp] cmp r0, #0xc0 addlt sp, sp, #8 ldmltia sp!, {r4, pc} ldr r1, _02338614 ; =ov02_02338618 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _0233860C: .word ov02_0235AA60 _02338610: .word 0x01FF0000 _02338614: .word ov02_02338618 arm_func_end ov02_023385A8 arm_func_start ov02_02338618 ov02_02338618: ; 0x02338618 stmdb sp!, {r3, r4, r5, lr} mov r1, r0 mov r0, #0 bl ov02_0234FB40 ldr r4, _023386D0 ; =ov02_0235AA60 mov r5, #0 _02338630: ldr r0, [r4] add r0, r0, r5, lsl #2 ldr r0, [r0, #0x48] bl ov02_0234D288 ldr r0, [r4] ldr r0, [r0, r5, lsl #2] bl ov02_0234DD9C add r5, r5, #1 cmp r5, #4 blt _02338630 ldr r4, _023386D0 ; =ov02_0235AA60 mov r5, #0 _02338660: ldr r0, [r4] add r0, r0, r5, lsl #2 ldr r0, [r0, #0x40] bl ov02_0234D288 add r5, r5, #1 cmp r5, #2 blt _02338660 ldr r4, _023386D0 ; =ov02_0235AA60 mov r5, #0 _02338684: ldr r0, [r4] add r0, r0, r5, lsl #2 ldr r0, [r0, #0x38] bl ov02_0234F2C0 add r5, r5, #1 cmp r5, #2 blt _02338684 ldr r4, _023386D0 ; =ov02_0235AA60 mov r5, #0 _023386A8: ldr r0, [r4] add r0, r0, r5, lsl #2 ldr r0, [r0, #0x10] bl ov02_0234F2C0 add r5, r5, #1 cmp r5, #0xa blt _023386A8 ldr r0, _023386D4 ; =ov02_0235AA60 bl ov02_0234E7D8 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _023386D0: .word ov02_0235AA60 _023386D4: .word ov02_0235AA60 arm_func_end ov02_02338618 arm_func_start ov02_023386D8 ov02_023386D8: ; 0x023386D8 stmdb sp!, {lr} sub sp, sp, #0x104 mov r0, #0x26c mov r1, #4 bl ov02_0234E7B4 ldr r3, _023387D8 ; =ov02_0235AA64 add r1, sp, #0 str r0, [r3, #4] mov r0, #0 mov r2, #0x104 strb r0, [r3] bl ArrayFill16 mov r3, #0x50 mov r2, #0xc ldr r0, _023387DC ; =ov02_023528FC add r1, sp, #4 strb r3, [sp] strh r2, [sp, #2] bl MemcpyFast ldr r0, _023387D8 ; =ov02_0235AA64 mov r2, #3 ldr r1, [r0, #4] add ip, sp, #0 strh r2, [r1] ldr lr, [r0, #4] mov r2, #0x41 add r3, lr, #2 _02338744: ldrh r1, [ip] ldrh r0, [ip, #2] add ip, ip, #4 subs r2, r2, #1 strh r1, [r3] strh r0, [r3, #2] add r3, r3, #4 bne _02338744 ldr r1, _023387D8 ; =ov02_0235AA64 mov r3, #1 add r0, lr, #0x100 strh r3, [r0, #6] ldr r0, [r1, #4] sub r2, r3, #2 add r0, r0, #0x100 strh r2, [r0, #8] ldr r0, [r1, #4] add r0, r0, #0x100 strh r3, [r0, #0xa] ldr r0, [r1, #4] add r0, r0, #0x100 strh r2, [r0, #0xc] ldr r0, [r1, #4] add r0, r0, #0x100 strh r2, [r0, #0xe] ldr r0, [r1, #4] add r0, r0, #0x110 bl sub_0207B9EC ldr r0, _023387E0 ; =ov02_02338898 ldr r1, _023387E4 ; =ov02_023388A8 blx ov02_023300A0 cmp r0, #0 addeq sp, sp, #0x104 ldmeqia sp!, {pc} bl WaitForever2 add sp, sp, #0x104 ldmia sp!, {pc} .align 2, 0 _023387D8: .word ov02_0235AA64 _023387DC: .word ov02_023528FC _023387E0: .word ov02_02338898 _023387E4: .word ov02_023388A8 arm_func_end ov02_023386D8 arm_func_start ov02_023387E8 ov02_023387E8: ; 0x023387E8 stmdb sp!, {r4, lr} mov r4, r0 blx ov02_02330164 cmp r4, #0 beq _02338824 ldr r0, _02338830 ; =ov02_0235AA64 ldr r2, [r0, #4] ldrb r1, [r2, #0x116] cmp r1, #0 ldreqb r0, [r0] cmpeq r0, #1 bne _02338824 add r0, r2, #0x17 add r0, r0, #0x100 bl ov02_02347C0C _02338824: ldr r0, _02338834 ; =ov02_0235AA68 bl ov02_0234E7D8 ldmia sp!, {r4, pc} .align 2, 0 _02338830: .word ov02_0235AA64 _02338834: .word ov02_0235AA68 arm_func_end ov02_023387E8 arm_func_start ov02_02338838 ov02_02338838: ; 0x02338838 stmdb sp!, {r3, lr} ldr r0, _02338894 ; =ov02_0235AA64 ldr r0, [r0, #4] blx ov02_0232DD8C cmp r0, #0 bne _02338860 ldr r1, _02338894 ; =ov02_0235AA64 mov r0, #1 strb r0, [r1] ldmia sp!, {r3, pc} _02338860: ldr r0, _02338894 ; =ov02_0235AA64 ldr r0, [r0, #4] ldrb r0, [r0, #0x116] cmp r0, #1 beq _02338884 add r0, r0, #0xfd and r0, r0, #0xff cmp r0, #2 bhi _0233888C _02338884: mov r0, #0 ldmia sp!, {r3, pc} _0233888C: mov r0, #2 ldmia sp!, {r3, pc} .align 2, 0 _02338894: .word ov02_0235AA64 arm_func_end ov02_02338838 arm_func_start ov02_02338898 ov02_02338898: ; 0x02338898 ldr ip, _023388A4 ; =ov02_0234E7B4 mov r1, #0x20 bx ip .align 2, 0 _023388A4: .word ov02_0234E7B4 arm_func_end ov02_02338898 arm_func_start ov02_023388A8 ov02_023388A8: ; 0x023388A8 ldr ip, _023388B0 ; =ov02_0234E81C bx ip .align 2, 0 _023388B0: .word ov02_0234E81C arm_func_end ov02_023388A8 arm_func_start ov02_023388B4 ov02_023388B4: ; 0x023388B4 stmdb sp!, {r4, r5, r6, lr} ldr r3, _02338950 ; =ov02_0235AA6C str r0, [r3, #4] mov r0, r1 mov r1, r2 bl ov02_0233895C cmp r0, #0 mvneq r0, #0 ldmeqia sp!, {r4, r5, r6, pc} bl ov00_022DBC94 mov r6, r0 ldr r0, _02338954 ; =ov02_023534FC bl ov00_022DBC84 ldr r0, _02338950 ; =ov02_0235AA6C mov r1, #0 strb r1, [r0, #1] bl ov02_023389D8 bl ov02_02338AA0 bl ov02_02348024 ldr r0, _02338958 ; =ov02_0233963C bl ov02_02338D68 ldr r4, _02338950 ; =ov02_0235AA6C mov r5, #0 _02338910: bl ov02_0234E90C ldr r0, [r4, #0xc] blx r0 mov r0, r5 bl ov02_0234F9E8 bl ov02_0234EF6C bl ov02_0234F850 bl sub_0207B860 ldrb r0, [r4, #1] cmp r0, #0 beq _02338910 bl ov02_02338D18 mov r0, r6 bl ov00_022DBC84 mov r0, #0 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _02338950: .word ov02_0235AA6C _02338954: .word ov02_023534FC _02338958: .word ov02_0233963C arm_func_end ov02_023388B4 arm_func_start ov02_0233895C ov02_0233895C: ; 0x0233895C ldr r2, _023389D4 ; =ov02_0235AA6C cmp r0, #0 strb r0, [r2] str r1, [r2, #8] blt _02338978 cmp r0, #6 ble _02338980 _02338978: mov r0, #0 bx lr _02338980: mov r2, r1, lsl #0x1c mov r2, r2, lsr #0x1c cmp r2, #1 movhi r0, #0 bxhi lr mov r1, r1, lsr #4 tst r1, #2 movne r0, #0 bxne lr cmp r0, #0 beq _023389B8 tst r1, #1 movne r0, #0 bxne lr _023389B8: cmp r0, #0 bne _023389CC tst r1, #1 moveq r0, #0 bxeq lr _023389CC: mov r0, #1 bx lr .align 2, 0 _023389D4: .word ov02_0235AA6C arm_func_end ov02_0233895C arm_func_start ov02_023389D8 ov02_023389D8: ; 0x023389D8 stmdb sp!, {r3, lr} ldr r2, _02338A94 ; =0x04000208 mov r0, #0 ldrh r1, [r2] strh r0, [r2] bl GX_DispOff ldr r1, _02338A98 ; =0x04001000 ldr r0, [r1] bic r0, r0, #0x10000 str r0, [r1] bl sub_0207ADCC cmp r0, #0 bne _02338A10 bl WaitForever2 _02338A10: bl sub_0207B030 cmp r0, #0 bne _02338A20 bl WaitForever2 _02338A20: mov r0, #0 bl GX_VBlankIntr bl sub_02076070 mvn r0, #0 bl sub_0207F3BC bl sub_020811EC bl sub_0208266C bl GX_DispOff ldr r1, _02338A98 ; =0x04001000 ldr r0, [r1] bic r0, r0, #0x10000 str r0, [r1] bl ov02_0234F610 ldr r0, _02338A9C ; =ov02_0235AA6C ldr r0, [r0, #4] bl ov02_0234E704 bl ov02_0234EFE8 bl ov02_0234F88C bl ov02_0234CB8C bl ov02_0234E858 bl ov02_0234D860 mov r0, #0x700 mov r1, #0x20 bl ov02_0234E7B4 str r0, [sp] bl ov00_022EE018 add r0, sp, #0 bl ov02_0234E7D8 ldmia sp!, {r3, pc} .align 2, 0 _02338A94: .word 0x04000208 _02338A98: .word 0x04001000 _02338A9C: .word ov02_0235AA6C arm_func_end ov02_023389D8 arm_func_start ov02_02338AA0 ov02_02338AA0: ; 0x02338AA0 stmdb sp!, {r4, lr} mov r0, #0 bl GX_VBlankIntr mov r0, #1 bl GX_SetBankForBG mov r0, #2 bl GX_SetBankForOBJ mov r1, #0 mov r2, r1 mov r0, #1 bl GX_SetGraphicsMode mov r3, #0x4000000 ldr r1, [r3] add r0, r3, #0x6c bic r1, r1, #0x1f00 str r1, [r3] ldr r2, [r3] mov r1, #0 bic r2, r2, #0xe000 str r2, [r3] bl GXx_SetMasterBrightness_ mov r3, #0x4000000 ldr r2, [r3] ldr r0, _02338D04 ; =0xFFCFFFEF ldr r1, _02338D08 ; =0x00200010 and r0, r2, r0 orr r0, r0, #0x10 add ip, r1, #0x3e00000 orr r0, r0, #0x200000 str r0, [r3] ldrh r1, [r3, #8] mov lr, #0 add r0, r3, #0x50 bic r1, r1, #0x40 strh r1, [r3, #8] ldrh r4, [r3, #0xa] mov r1, #0x3f mov r2, #0x10 bic r4, r4, #0x40 strh r4, [r3, #0xa] ldrh r4, [r3, #0xc] bic r4, r4, #0x40 strh r4, [r3, #0xc] ldrh r4, [r3, #0xe] bic r4, r4, #0x40 strh r4, [r3, #0xe] str lr, [ip] str lr, [r3, #0x14] str lr, [r3, #0x18] str lr, [r3, #0x1c] bl G2x_SetBlendBrightness_ mov r0, #0x80 bl GX_SetBankForSubBG mov r0, #0x100 bl GX_SetBankForSubOBJ mov r0, #0 bl GXS_SetGraphicsMode ldr r1, _02338D0C ; =0x04001000 ldr r0, [r1] bic r0, r0, #0x1f00 str r0, [r1] ldr r0, [r1] bic r0, r0, #0xe000 str r0, [r1] add r0, r1, #0x6c mov r1, #0 bl GXx_SetMasterBrightness_ ldr r3, _02338D0C ; =0x04001000 ldr r0, _02338D04 ; =0xFFCFFFEF ldr r1, [r3] mov ip, #0 and r0, r1, r0 orr r0, r0, #0x10 str r0, [r3] ldrh r2, [r3, #8] add r0, r3, #0x50 mov r1, #0x3f bic r2, r2, #0x40 strh r2, [r3, #8] ldrh lr, [r3, #0xa] mov r2, #0x10 bic lr, lr, #0x40 strh lr, [r3, #0xa] ldrh lr, [r3, #0xc] bic lr, lr, #0x40 strh lr, [r3, #0xc] ldrh lr, [r3, #0xe] bic lr, lr, #0x40 strh lr, [r3, #0xe] str ip, [r3, #0x10] str ip, [r3, #0x14] str ip, [r3, #0x18] str ip, [r3, #0x1c] bl G2x_SetBlendBrightness_ ldr r2, _02338D10 ; =0x04000008 ldr r3, _02338D14 ; =0x0400100A ldrh r0, [r2] add r1, r2, #0x1000 and r0, r0, #0x43 orr r0, r0, #0xc00 strh r0, [r2] ldrh r0, [r2, #2] and r0, r0, #0x43 orr r0, r0, #0x108 orr r0, r0, #0xc00 strh r0, [r2, #2] ldrh r0, [r2, #4] and r0, r0, #0x43 orr r0, r0, #0xe10 strh r0, [r2, #4] ldrh r0, [r2, #6] and r0, r0, #0x43 orr r0, r0, #0xf10 strh r0, [r2, #6] ldrh r0, [r1] and r0, r0, #0x43 orr r0, r0, #0xc00 strh r0, [r1] ldrh r0, [r3] and r0, r0, #0x43 orr r0, r0, #0xd00 strh r0, [r3] ldrh r0, [r3, #2] and r0, r0, #0x43 orr r0, r0, #0xe00 strh r0, [r3, #2] ldrh r0, [r3, #4] mov r2, #0x4000000 add r1, r2, #0x304 and r0, r0, #0x43 orr r0, r0, #0xf00 strh r0, [r3, #4] ldr r0, [r2] bic r0, r0, #0x38000000 str r0, [r2] ldr r0, [r2] bic r0, r0, #0x7000000 str r0, [r2] ldrh r0, [r1] bic r0, r0, #0x8000 strh r0, [r1] bl ov02_0234DB70 bl ov02_0234F190 bl ov02_0234F324 bl ov02_0234D004 bl GX_DispOn ldr r2, _02338D0C ; =0x04001000 mov r0, #1 ldr r1, [r2] orr r1, r1, #0x10000 str r1, [r2] bl GX_VBlankIntr ldmia sp!, {r4, pc} .align 2, 0 _02338D04: .word 0xFFCFFFEF _02338D08: .word 0x00200010 _02338D0C: .word 0x04001000 _02338D10: .word 0x04000008 _02338D14: .word 0x0400100A arm_func_end ov02_02338AA0 arm_func_start ov02_02338D18 ov02_02338D18: ; 0x02338D18 stmdb sp!, {r3, lr} bl GX_DispOff ldr r1, _02338D64 ; =0x04001000 ldr r0, [r1] bic r0, r0, #0x10000 str r0, [r1] bl ov02_0234F87C bl ov02_0234E8D4 bl ov02_0234F05C bl ov02_023480B4 bl ov02_0234D0D8 bl ov02_0234F274 bl ov02_0234DC74 bl ov02_0234D8A8 bl ov02_0234CD3C bl ov02_0234F9A0 bl ov02_0234E744 bl ov02_0234F6C4 ldmia sp!, {r3, pc} .align 2, 0 _02338D64: .word 0x04001000 arm_func_end ov02_02338D18 arm_func_start ov02_02338D68 ov02_02338D68: ; 0x02338D68 ldr r1, _02338D74 ; =ov02_0235AA6C str r0, [r1, #0xc] bx lr .align 2, 0 _02338D74: .word ov02_0235AA6C arm_func_end ov02_02338D68 arm_func_start ov02_02338D78 ov02_02338D78: ; 0x02338D78 ldr r2, _02338D88 ; =ov02_0235AA6C str r0, [r2, #0x10] str r1, [r2, #0x14] bx lr .align 2, 0 _02338D88: .word ov02_0235AA6C arm_func_end ov02_02338D78 arm_func_start ov02_02338D8C ov02_02338D8C: ; 0x02338D8C cmp r0, #0 ldrne r2, _02338DB0 ; =ov02_0235AA6C ldrne r2, [r2, #0x10] strne r2, [r0] cmp r1, #0 ldrne r0, _02338DB0 ; =ov02_0235AA6C ldrne r0, [r0, #0x14] strne r0, [r1] bx lr .align 2, 0 _02338DB0: .word ov02_0235AA6C arm_func_end ov02_02338D8C arm_func_start ov02_02338DB4 ov02_02338DB4: ; 0x02338DB4 ldr r2, _02338DC4 ; =ov02_0235AA6C str r0, [r2, #0x18] str r1, [r2, #0x1c] bx lr .align 2, 0 _02338DC4: .word ov02_0235AA6C arm_func_end ov02_02338DB4 arm_func_start ov02_02338DC8 ov02_02338DC8: ; 0x02338DC8 cmp r0, #0 ldrne r2, _02338DEC ; =ov02_0235AA6C ldrne r2, [r2, #0x18] strne r2, [r0] cmp r1, #0 ldrne r0, _02338DEC ; =ov02_0235AA6C ldrne r0, [r0, #0x1c] strne r0, [r1] bx lr .align 2, 0 _02338DEC: .word ov02_0235AA6C arm_func_end ov02_02338DC8 arm_func_start ov02_02338DF0 ov02_02338DF0: ; 0x02338DF0 ldr r0, _02338DFC ; =ov02_0235AA6C ldrb r0, [r0] bx lr .align 2, 0 _02338DFC: .word ov02_0235AA6C arm_func_end ov02_02338DF0 arm_func_start ov02_02338E00 ov02_02338E00: ; 0x02338E00 ldr r0, _02338E14 ; =ov02_0235AA6C ldr r0, [r0, #8] mov r0, r0, lsl #0x1c mov r0, r0, lsr #0x1c bx lr .align 2, 0 _02338E14: .word ov02_0235AA6C arm_func_end ov02_02338E00 arm_func_start ov02_02338E18 ov02_02338E18: ; 0x02338E18 ldr r1, _02338E30 ; =ov02_0235AA6C ldr r1, [r1, #8] tst r0, r1, lsr #4 movne r0, #1 moveq r0, #0 bx lr .align 2, 0 _02338E30: .word ov02_0235AA6C arm_func_end ov02_02338E18 arm_func_start ov02_02338E34 ov02_02338E34: ; 0x02338E34 ldr r0, _02338E44 ; =ov02_0235AA6C mov r1, #1 strb r1, [r0, #1] bx lr .align 2, 0 _02338E44: .word ov02_0235AA6C arm_func_end ov02_02338E34 arm_func_start ov02_02338E48 ov02_02338E48: ; 0x02338E48 ldr r0, _02338E84 ; =ov02_0235AA6C ldrb r1, [r0] cmp r1, #6 moveq r0, #0x38 bxeq lr cmp r1, #1 bne _02338E78 ldr r0, [r0, #8] mov r0, r0, lsr #4 tst r0, #2 moveq r0, #0x37 bxeq lr _02338E78: add r0, r1, #0x31 and r0, r0, #0xff bx lr .align 2, 0 _02338E84: .word ov02_0235AA6C arm_func_end ov02_02338E48 arm_func_start ov02_02338E88 ov02_02338E88: ; 0x02338E88 stmdb sp!, {r3, lr} mov r0, #0x64 mov r1, #4 bl ov02_0234E7B4 mov r1, r0 ldr r3, _02338EC0 ; =ov02_0235AA8C mov r0, #8 mov r2, #0xc str r1, [r3] bl ov02_0234D754 ldr r1, _02338EC0 ; =ov02_0235AA8C ldr r1, [r1] str r0, [r1, #0x60] ldmia sp!, {r3, pc} .align 2, 0 _02338EC0: .word ov02_0235AA8C arm_func_end ov02_02338E88 arm_func_start ov02_02338EC4 ov02_02338EC4: ; 0x02338EC4 ldr ip, _02338ED0 ; =ov02_0234E7D8 ldr r0, _02338ED4 ; =ov02_0235AA8C bx ip .align 2, 0 _02338ED0: .word ov02_0234E7D8 _02338ED4: .word ov02_0235AA8C arm_func_end ov02_02338EC4 arm_func_start ov02_02338ED8 ov02_02338ED8: ; 0x02338ED8 stmdb sp!, {r3, r4, r5, lr} ldr r1, _02338F2C ; =ov02_0235AA8C mov r5, r0 ldr r0, [r1] ldr r0, [r0, #0x60] bl ov02_0234D808 mov r4, r0 add r1, sp, #0 mov r0, r5 mov r2, #4 bl ov02_0234CE84 add r2, r0, #0x20 str r0, [r4, #8] add r0, r2, #0x10 str r0, [r4] ldr r1, [r2, #4] mov r0, r4 add r1, r2, r1 add r1, r1, #8 str r1, [r4, #4] ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _02338F2C: .word ov02_0235AA8C arm_func_end ov02_02338ED8 arm_func_start ov02_02338F30 ov02_02338F30: ; 0x02338F30 stmdb sp!, {r4, lr} mov r4, r0 ldr r0, [r4, #8] bl ov02_0234CF78 ldr r0, _02338F58 ; =ov02_0235AA8C mov r1, r4 ldr r0, [r0] ldr r0, [r0, #0x60] bl ov02_0234D7B0 ldmia sp!, {r4, pc} .align 2, 0 _02338F58: .word ov02_0235AA8C arm_func_end ov02_02338F30 arm_func_start ov02_02338F5C ov02_02338F5C: ; 0x02338F5C mov r1, r1, lsl #0x10 mov r1, r1, lsr #0x10 ldmia r0, {r2, r3} ldr r0, [r2, r1, lsl #2] add r0, r3, r0 bx lr arm_func_end ov02_02338F5C arm_func_start ov02_02338F74 ov02_02338F74: ; 0x02338F74 stmdb sp!, {r3, lr} mov r1, r1, lsl #0x10 mov r1, r1, lsr #0x10 ldmia r0, {ip, lr} ldr r0, [ip, r1, lsl #2] cmp r2, #0 add r0, lr, r0 addge r3, r3, #0x30 movge r1, r2, lsl #1 strgeh r3, [r0, r1] ldmia sp!, {r3, pc} arm_func_end ov02_02338F74 arm_func_start ov02_02338FA0 ov02_02338FA0: ; 0x02338FA0 stmdb sp!, {r3, r4, lr} sub sp, sp, #0x1c mov r4, r0 ldr r0, _02339078 ; =0x0001E2A4 mov r1, #0x20 bl ov02_0234E7B4 ldr r2, _0233907C ; =ov02_0235AA90 add r1, r0, #0x1e000 str r0, [r2] str r4, [r1, #0x298] ldr r0, [r2] mov r4, #0 add r0, r0, #0x1e000 strb r4, [r0, #0x2a0] ldr r0, [r2] ldr lr, _02339080 ; =ov02_02353560 add r0, r0, #0x1e000 strb r4, [r0, #0x2a1] add ip, sp, #0 ldmia lr!, {r0, r1, r2, r3} stmia ip!, {r0, r1, r2, r3} ldmia lr, {r0, r1, r2} stmia ip, {r0, r1, r2} ldr r0, _02339084 ; =ov02_0235AA98 mov r1, r4 ldr r0, [r0] bl ov02_02338F5C ldr r1, _02339084 ; =ov02_0235AA98 str r0, [sp, #4] ldr r0, [r1] mov r1, #1 bl ov02_02338F5C str r0, [sp, #8] bl ov02_02338E48 strb r0, [sp, #0x18] ldr r0, _0233907C ; =ov02_0235AA90 add r1, sp, #0 ldr r0, [r0] bl ov02_0234BD34 bl ov02_0234BF80 cmp r0, #0 bne _0233904C bl WaitForever2 _0233904C: mov r0, #0 ldr r1, _02339088 ; =ov02_02339140 mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _0233907C ; =ov02_0235AA90 ldr r1, [r1] add r1, r1, #0x1e000 str r0, [r1, #0x29c] add sp, sp, #0x1c ldmia sp!, {r3, r4, pc} .align 2, 0 _02339078: .word 0x0001E2A4 _0233907C: .word ov02_0235AA90 _02339080: .word ov02_02353560 _02339084: .word ov02_0235AA98 _02339088: .word ov02_02339140 arm_func_end ov02_02338FA0 arm_func_start ov02_0233908C ov02_0233908C: ; 0x0233908C ldr ip, _023390A4 ; =ov02_0234FA98 mov r0, #0 ldr r1, _023390A8 ; =ov02_023390AC mov r2, r0 mov r3, #0x78 bx ip .align 2, 0 _023390A4: .word ov02_0234FA98 _023390A8: .word ov02_023390AC arm_func_end ov02_0233908C arm_func_start ov02_023390AC ov02_023390AC: ; 0x023390AC stmdb sp!, {r4, lr} mov r4, r0 bl ov02_0234BE24 cmp r0, #0 ldmeqia sp!, {r4, pc} ldr r0, _023390E4 ; =ov02_0235AA90 mov r1, r4 ldr r0, [r0] mov r3, #1 add r2, r0, #0x1e000 mov r0, #0 strb r3, [r2, #0x2a1] bl ov02_0234FB40 ldmia sp!, {r4, pc} .align 2, 0 _023390E4: .word ov02_0235AA90 arm_func_end ov02_023390AC arm_func_start ov02_023390E8 ov02_023390E8: ; 0x023390E8 ldr r0, _02339100 ; =ov02_0235AA90 ldr r0, [r0] cmp r0, #0 moveq r0, #1 movne r0, #0 bx lr .align 2, 0 _02339100: .word ov02_0235AA90 arm_func_end ov02_023390E8 arm_func_start ov02_02339104 ov02_02339104: ; 0x02339104 ldr r1, _02339118 ; =ov02_0235AA90 ldr r1, [r1] add r1, r1, #0x1e000 str r0, [r1, #0x298] bx lr .align 2, 0 _02339118: .word ov02_0235AA90 arm_func_end ov02_02339104 arm_func_start ov02_0233911C ov02_0233911C: ; 0x0233911C ldr ip, _02339124 ; =ov02_0234BFC8 bx ip .align 2, 0 _02339124: .word ov02_0234BFC8 arm_func_end ov02_0233911C arm_func_start ov02_02339128 ov02_02339128: ; 0x02339128 ldr r0, _0233913C ; =ov02_0235AA90 ldr r0, [r0] add r0, r0, #0x2280 add r0, r0, #0x1c000 bx lr .align 2, 0 _0233913C: .word ov02_0235AA90 arm_func_end ov02_02339128 arm_func_start ov02_02339140 ov02_02339140: ; 0x02339140 stmdb sp!, {r3, r4, lr} sub sp, sp, #4 mov r4, r0 bl ov02_0234BFFC ldr r0, _023393D8 ; =ov02_0235AA90 ldr r0, [r0] add r0, r0, #0x1e000 ldrb r1, [r0, #0x2a0] cmp r1, #0 beq _02339194 ldrb r1, [r0, #0x2a1] cmp r1, #0 bne _02339194 ldr r1, [r0, #0x298] cmp r1, #0 addeq sp, sp, #4 ldmeqia sp!, {r3, r4, pc} mov r0, #0 blx r1 add sp, sp, #4 ldmia sp!, {r3, r4, pc} _02339194: add r0, sp, #1 add r1, sp, #0 bl ov02_0234C380 ldrb r0, [sp, #1] cmp r0, #0x1a bgt _02339228 bge _02339334 cmp r0, #0x14 bgt _02339218 cmp r0, #0 addge pc, pc, r0, lsl #2 b _023393D0 _023391C4: ; jump table b _023393D0 ; case 0 b _023393D0 ; case 1 b _023393D0 ; case 2 b _023393D0 ; case 3 b _023393D0 ; case 4 b _0233924C ; case 5 b _023393D0 ; case 6 b _023393D0 ; case 7 b _023393D0 ; case 8 b _023393D0 ; case 9 b _023393D0 ; case 10 b _023393D0 ; case 11 b _02339378 ; case 12 b _023392AC ; case 13 b _023393D0 ; case 14 b _023393D0 ; case 15 b _023393D0 ; case 16 b _023393D0 ; case 17 b _023393D0 ; case 18 b _023393D0 ; case 19 b _023392F0 ; case 20 _02339218: cmp r0, #0x17 beq _023392F0 add sp, sp, #4 ldmia sp!, {r3, r4, pc} _02339228: cmp r0, #0x1d bgt _0233923C beq _02339334 add sp, sp, #4 ldmia sp!, {r3, r4, pc} _0233923C: cmp r0, #0x22 beq _023393BC add sp, sp, #4 ldmia sp!, {r3, r4, pc} _0233924C: ldrb r0, [sp] cmp r0, #0 addeq sp, sp, #4 ldmeqia sp!, {r3, r4, pc} ldr r0, _023393D8 ; =ov02_0235AA90 ldr r0, [r0] add r4, r0, #0x2280 bl ov02_0234C3C4 add r1, r4, #0x1c000 mov r2, #0x16 bl ArrayCopy16 ldr r0, _023393D8 ; =ov02_0235AA90 ldr r0, [r0] add r0, r0, #0x1e000 ldr r1, [r0, #0x298] cmp r1, #0 moveq r1, #1 streqb r1, [r0, #0x2a0] addeq sp, sp, #4 ldmeqia sp!, {r3, r4, pc} mov r0, #0 blx r1 add sp, sp, #4 ldmia sp!, {r3, r4, pc} _023392AC: ldrb r0, [sp] cmp r0, #0 addeq sp, sp, #4 ldmeqia sp!, {r3, r4, pc} ldr r0, _023393D8 ; =ov02_0235AA90 ldr r0, [r0] add r0, r0, #0x1e000 ldr r1, [r0, #0x298] cmp r1, #0 moveq r1, #1 streqb r1, [r0, #0x2a0] addeq sp, sp, #4 ldmeqia sp!, {r3, r4, pc} mov r0, #1 blx r1 add sp, sp, #4 ldmia sp!, {r3, r4, pc} _023392F0: ldrb r0, [sp] cmp r0, #0 addeq sp, sp, #4 ldmeqia sp!, {r3, r4, pc} ldr r0, _023393D8 ; =ov02_0235AA90 ldr r0, [r0] add r0, r0, #0x1e000 ldr r1, [r0, #0x298] cmp r1, #0 moveq r1, #1 streqb r1, [r0, #0x2a0] addeq sp, sp, #4 ldmeqia sp!, {r3, r4, pc} mov r0, #3 blx r1 add sp, sp, #4 ldmia sp!, {r3, r4, pc} _02339334: ldrb r0, [sp] cmp r0, #0 addeq sp, sp, #4 ldmeqia sp!, {r3, r4, pc} ldr r0, _023393D8 ; =ov02_0235AA90 ldr r0, [r0] add r0, r0, #0x1e000 ldr r1, [r0, #0x298] cmp r1, #0 moveq r1, #1 streqb r1, [r0, #0x2a0] addeq sp, sp, #4 ldmeqia sp!, {r3, r4, pc} mov r0, #4 blx r1 add sp, sp, #4 ldmia sp!, {r3, r4, pc} _02339378: ldrb r0, [sp] cmp r0, #0 addeq sp, sp, #4 ldmeqia sp!, {r3, r4, pc} ldr r0, _023393D8 ; =ov02_0235AA90 ldr r0, [r0] add r0, r0, #0x1e000 ldr r1, [r0, #0x298] cmp r1, #0 moveq r1, #1 streqb r1, [r0, #0x2a0] addeq sp, sp, #4 ldmeqia sp!, {r3, r4, pc} mov r0, #2 blx r1 add sp, sp, #4 ldmia sp!, {r3, r4, pc} _023393BC: mov r1, r4 mov r0, #0 bl ov02_0234FB40 ldr r0, _023393DC ; =ov02_0235AA90 bl ov02_0234E7D8 _023393D0: add sp, sp, #4 ldmia sp!, {r3, r4, pc} .align 2, 0 _023393D8: .word ov02_0235AA90 _023393DC: .word ov02_0235AA90 arm_func_end ov02_02339140 arm_func_start ov02_023393E0 ov02_023393E0: ; 0x023393E0 stmdb sp!, {r3, lr} sub sp, sp, #8 mov r0, #0xc sub r1, r0, #0x10 bl ov02_0234E7B4 ldr r1, _0233943C ; =ov02_0235AA94 ldr ip, _02339440 ; =ov02_02339580 str r0, [r1] ldr r2, _02339444 ; =ov02_02339558 ldr r3, _02339448 ; =ov02_02339570 str ip, [sp] mov ip, #0x800 mov r0, #0xf mov r1, #0x40 str ip, [sp, #4] blx ov02_023341F8 cmp r0, #1 beq _0233942C bl WaitForever2 _0233942C: mov r0, #0xa bl sub_02079B14 add sp, sp, #8 ldmia sp!, {r3, pc} .align 2, 0 _0233943C: .word ov02_0235AA94 _02339440: .word ov02_02339580 _02339444: .word ov02_02339558 _02339448: .word ov02_02339570 arm_func_end ov02_023393E0 arm_func_start ov02_0233944C ov02_0233944C: ; 0x0233944C stmdb sp!, {r3, lr} blx ov02_023342E0 cmp r0, #1 beq _02339460 bl WaitForever2 _02339460: ldr r0, _0233946C ; =ov02_0235AA94 bl ov02_0234E7D8 ldmia sp!, {r3, pc} .align 2, 0 _0233946C: .word ov02_0235AA94 arm_func_end ov02_0233944C arm_func_start ov02_02339470 ov02_02339470: ; 0x02339470 stmdb sp!, {r3, lr} sub sp, sp, #0xe8 ldr r1, _02339528 ; =ov02_0235AA94 ldr r1, [r1] ldr r1, [r1] cmp r1, #7 addls pc, pc, r1, lsl #2 b _02339520 _02339490: ; jump table b _023394B0 ; case 0 b _023394B0 ; case 1 b _023394BC ; case 2 b _023394B0 ; case 3 b _023394C8 ; case 4 b _023394B0 ; case 5 b _023394D4 ; case 6 b _0233951C ; case 7 _023394B0: add sp, sp, #0xe8 mov r0, #0 ldmia sp!, {r3, pc} _023394BC: add sp, sp, #0xe8 mov r0, #1 ldmia sp!, {r3, pc} _023394C8: add sp, sp, #0xe8 mov r0, #2 ldmia sp!, {r3, pc} _023394D4: add r0, sp, #0 blx ov02_023343AC cmp r0, #1 beq _023394E8 bl WaitForever2 _023394E8: ldr r0, [sp, #0x20] cmp r0, #0 blt _02339510 cmp r0, #3 bgt _02339510 ldr r0, [sp, #0x24] cmp r0, #1 addeq sp, sp, #0xe8 moveq r0, #3 ldmeqia sp!, {r3, pc} _02339510: add sp, sp, #0xe8 mov r0, #5 ldmia sp!, {r3, pc} _0233951C: mov r0, #4 _02339520: add sp, sp, #0xe8 ldmia sp!, {r3, pc} .align 2, 0 _02339528: .word ov02_0235AA94 arm_func_end ov02_02339470 arm_func_start ov02_0233952C ov02_0233952C: ; 0x0233952C stmdb sp!, {r3, lr} sub sp, sp, #0xe8 add r0, sp, #0 blx ov02_023343AC cmp r0, #1 beq _02339548 bl WaitForever2 _02339548: add r0, sp, #0 bl ov02_02347AF8 add sp, sp, #0xe8 ldmia sp!, {r3, pc} arm_func_end ov02_0233952C arm_func_start ov02_02339558 ov02_02339558: ; 0x02339558 ldr r3, _0233956C ; =ov02_0235AA94 ldmia r0, {r0, r1, r2} ldr r3, [r3] stmia r3, {r0, r1, r2} bx lr .align 2, 0 _0233956C: .word ov02_0235AA94 arm_func_end ov02_02339558 arm_func_start ov02_02339570 ov02_02339570: ; 0x02339570 ldr ip, _0233957C ; =ov02_0234E7B4 mov r1, #0x20 bx ip .align 2, 0 _0233957C: .word ov02_0234E7B4 arm_func_end ov02_02339570 arm_func_start ov02_02339580 ov02_02339580: ; 0x02339580 ldr ip, _02339588 ; =ov02_0234E81C bx ip .align 2, 0 _02339588: .word ov02_0234E81C arm_func_end ov02_02339580 arm_func_start ov02_0233958C ov02_0233958C: ; 0x0233958C stmdb sp!, {r3, lr} mov r0, #3 mov r1, #1 mov r2, #0x3f mov r3, #0x14 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x3f mov r3, #0x14 bl ov02_0234D8E0 ldr r0, _023395C4 ; =ov02_023395C8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023395C4: .word ov02_023395C8 arm_func_end ov02_0233958C arm_func_start ov02_023395C8 ov02_023395C8: ; 0x023395C8 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 mov r1, r0 bl ov02_0234FBB0 mov r0, #1 mov r1, #0 bl ov02_0234FBB0 mov r0, #1 bl ov02_0234D5F0 mov r0, #0 bl ov02_0234D5F0 bl ov02_02335254 bl ov02_02334FD8 ldr r0, _02339638 ; =ov02_0235AA98 ldr r0, [r0] bl ov02_02338F30 bl ov02_02338EC4 bl ov02_02347504 bl ov02_02338E34 ldmia sp!, {r3, pc} .align 2, 0 _02339638: .word ov02_0235AA98 arm_func_end ov02_023395C8 arm_func_start ov02_0233963C ov02_0233963C: ; 0x0233963C stmdb sp!, {r3, lr} bl ov02_023474C0 bl ov02_02338E88 bl ov02_02334FB8 bl ov02_023351DC bl ov02_02334C28 bl ov02_02338DF0 cmp r0, #1 bne _02339684 mov r0, #2 bl ov02_02338E18 cmp r0, #0 beq _02339684 ldr r0, _023397B4 ; =ov02_02353608 bl ov02_02338ED8 ldr r1, _023397B8 ; =ov02_0235AA98 str r0, [r1] b _0233969C _02339684: bl ov02_02338DF0 ldr r1, _023397BC ; =ov02_023535EC ldr r0, [r1, r0, lsl #2] bl ov02_02338ED8 ldr r1, _023397B8 ; =ov02_0235AA98 str r0, [r1] _0233969C: ldr r0, _023397C0 ; =ov02_02353618 bl ov02_02334D48 mov r1, r0 mov r0, #1 bl ov02_0234D5C0 ldr r0, _023397C4 ; =ov02_0235362C bl ov02_02334D48 mov r1, r0 mov r0, #0 bl ov02_0234D5C0 ldr r0, _023397C8 ; =ov02_02353640 ldr r1, _023397CC ; =GXS_LoadBG1Char bl ov02_02334DA8 ldr r0, _023397D0 ; =ov02_02353654 ldr r1, _023397D4 ; =GXS_LoadBGPltt bl ov02_02334DA8 ldr r0, _023397D8 ; =ov02_02353668 ldr r1, _023397DC ; =GXS_LoadOBJ bl ov02_02334DA8 ldr r0, _023397E0 ; =ov02_02353680 ldr r1, _023397E4 ; =GXS_LoadOBJPltt bl ov02_02334DA8 ldr r0, _023397E8 ; =ov02_02353698 ldr r1, _023397EC ; =GX_LoadBG2Char bl ov02_02334DA8 ldr r0, _023397F0 ; =ov02_023536B0 ldr r1, _023397F4 ; =GX_LoadBGPltt bl ov02_02334DA8 ldr r0, _023397F8 ; =ov02_023536C8 ldr r1, _023397FC ; =GX_LoadOBJ bl ov02_02334DA8 ldr r0, _02339800 ; =ov02_023536E0 ldr r1, _02339804 ; =GX_LoadOBJPltt bl ov02_02334DA8 bl ov02_02338E00 cmp r0, #0 beq _0233973C cmp r0, #1 beq _0233974C b _02339758 _0233973C: ldr r0, _02339808 ; =ov02_023536F8 ldr r1, _0233980C ; =GXS_LoadBG1Scr bl ov02_02334DA8 b _02339758 _0233974C: ldr r0, _02339810 ; =ov02_0235370C ldr r1, _0233980C ; =GXS_LoadBG1Scr bl ov02_02334DA8 _02339758: ldr ip, _02339814 ; =0x0400100A mov r0, #1 ldrh r2, [ip] sub r3, ip, #0x1000 mov r1, #2 bic r2, r2, #3 orr r2, r2, #3 strh r2, [ip] ldrh r2, [r3] bic r2, r2, #3 orr r2, r2, #3 strh r2, [r3] ldrh r2, [r3] bic r2, r2, #3 orr r2, r2, #3 strh r2, [r3] bl ov02_0234E3D0 mov r0, #0 mov r1, #2 bl ov02_0234E3D0 ldr r0, _02339818 ; =ov02_0233981C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023397B4: .word ov02_02353608 _023397B8: .word ov02_0235AA98 _023397BC: .word ov02_023535EC _023397C0: .word ov02_02353618 _023397C4: .word ov02_0235362C _023397C8: .word ov02_02353640 _023397CC: .word GXS_LoadBG1Char _023397D0: .word ov02_02353654 _023397D4: .word GXS_LoadBGPltt _023397D8: .word ov02_02353668 _023397DC: .word GXS_LoadOBJ _023397E0: .word ov02_02353680 _023397E4: .word GXS_LoadOBJPltt _023397E8: .word ov02_02353698 _023397EC: .word GX_LoadBG2Char _023397F0: .word ov02_023536B0 _023397F4: .word GX_LoadBGPltt _023397F8: .word ov02_023536C8 _023397FC: .word GX_LoadOBJ _02339800: .word ov02_023536E0 _02339804: .word GX_LoadOBJPltt _02339808: .word ov02_023536F8 _0233980C: .word GXS_LoadBG1Scr _02339810: .word ov02_0235370C _02339814: .word 0x0400100A _02339818: .word ov02_0233981C arm_func_end ov02_0233963C arm_func_start ov02_0233981C ov02_0233981C: ; 0x0233981C stmdb sp!, {r3, lr} mov r0, #2 mov r2, r0 mov r1, #1 mov r3, #0x14 bl ov02_0234D8E0 mov r0, #2 mov r2, r0 mov r1, #0 mov r3, #0x14 bl ov02_0234D8E0 ldr r0, _02339854 ; =ov02_02339858 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02339854: .word ov02_02339858 arm_func_end ov02_0233981C arm_func_start ov02_02339858 ov02_02339858: ; 0x02339858 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02338E00 cmp r0, #0 beq _02339894 cmp r0, #1 beq _023398AC ldmia sp!, {r3, pc} _02339894: mov r0, #0 mov r1, #1 bl ov02_02338D78 ldr r0, _023398C4 ; =ov02_023398CC bl ov02_02338D68 ldmia sp!, {r3, pc} _023398AC: mov r0, #1 mov r1, r0 bl ov02_02338D78 ldr r0, _023398C8 ; =ov02_02343DB0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023398C4: .word ov02_023398CC _023398C8: .word ov02_02343DB0 arm_func_end ov02_02339858 arm_func_start ov02_023398CC ov02_023398CC: ; 0x023398CC stmdb sp!, {r3, lr} bl ov02_02339948 mov r0, #0 bl ov02_02335268 mov r0, #0x2e sub r1, r0, #0x2f mov r2, #0 bl ov02_02334C3C mov r0, #4 bl ov02_02348C1C ldr r0, _02339930 ; =ov02_0235AA9C ldr r3, _02339934 ; =ov02_0235291A ldrb r0, [r0] ldr r1, _02339938 ; =ov02_0235291E ldr r2, _0233993C ; =ov02_0235291C mov ip, r0, lsl #3 ldrh r0, [r3, ip] ldrh r1, [r1, ip] ldrh r2, [r2, ip] ldr r3, _02339940 ; =ov02_02352920 ldrh r3, [r3, ip] bl ov02_023350AC ldr r0, _02339944 ; =ov02_02339A34 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02339930: .word ov02_0235AA9C _02339934: .word ov02_0235291A _02339938: .word ov02_0235291E _0233993C: .word ov02_0235291C _02339940: .word ov02_02352920 _02339944: .word ov02_02339A34 arm_func_end ov02_023398CC arm_func_start ov02_02339948 ov02_02339948: ; 0x02339948 stmdb sp!, {r3, lr} sub sp, sp, #0x18 ldr ip, _02339A0C ; =ov02_0235292A add r3, sp, #0 mov r2, #0xb _0233995C: ldrb r1, [ip] ldrb r0, [ip, #1] add ip, ip, #2 strb r1, [r3] strb r0, [r3, #1] add r3, r3, #2 subs r2, r2, #1 bne _0233995C ldr r0, _02339A10 ; =ov02_02353720 ldr r1, _02339A14 ; =GX_LoadBG2Char bl ov02_02334DA8 ldr r0, _02339A18 ; =ov02_02353738 ldr r1, _02339A1C ; =GX_LoadBGPltt bl ov02_02334DA8 ldr r0, _02339A20 ; =ov02_02353750 ldr r1, _02339A24 ; =GX_LoadBG2Scr bl ov02_02334DA8 add r0, sp, #0 bl ov02_02334D48 mov r1, #0 mov r2, #4 bl ov02_0234CE84 ldr r1, _02339A28 ; =ov02_0235AA9C ldr r2, _02339A2C ; =0x04001008 str r0, [r1, #4] ldrh r0, [r2] ldr r1, _02339A30 ; =0x0400000A bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r2, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2, #2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] add sp, sp, #0x18 ldmia sp!, {r3, pc} .align 2, 0 _02339A0C: .word ov02_0235292A _02339A10: .word ov02_02353720 _02339A14: .word GX_LoadBG2Char _02339A18: .word ov02_02353738 _02339A1C: .word GX_LoadBGPltt _02339A20: .word ov02_02353750 _02339A24: .word GX_LoadBG2Scr _02339A28: .word ov02_0235AA9C _02339A2C: .word 0x04001008 _02339A30: .word 0x0400000A arm_func_end ov02_02339948 arm_func_start ov02_02339A34 ov02_02339A34: ; 0x02339A34 stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #2 mov r1, #0 mov r2, #0x14 mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 mov r0, #0 mov r1, #0x14 bl ov02_0234E3D0 ldr r0, _02339A84 ; =ov02_02339A88 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02339A84: .word ov02_02339A88 arm_func_end ov02_02339A34 arm_func_start ov02_02339A88 ov02_02339A88: ; 0x02339A88 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_02334E38 ldr r0, _02339AC0 ; =ov02_02339AC4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02339AC0: .word ov02_02339AC4 arm_func_end ov02_02339A88 arm_func_start ov02_02339AC4 ov02_02339AC4: ; 0x02339AC4 stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _02339AE8 ; =ov02_02339AEC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02339AE8: .word ov02_02339AEC arm_func_end ov02_02339AC4 arm_func_start ov02_02339AEC ov02_02339AEC: ; 0x02339AEC stmdb sp!, {r3, lr} bl ov02_02339B00 bl ov02_02339C2C bl ov02_02339C30 ldmia sp!, {r3, pc} arm_func_end ov02_02339AEC arm_func_start ov02_02339B00 ov02_02339B00: ; 0x02339B00 stmdb sp!, {r3, r4, r5, lr} ldr r5, _02339C14 ; =ov02_0235290A mov r4, #0 _02339B0C: mov r0, r5 bl ov02_0234ED04 cmp r0, #0 beq _02339B5C mov r0, #1 bl ov02_023346F0 and r1, r4, #0xff mov lr, r1, lsl #3 ldr r0, _02339C18 ; =ov02_0235291A ldr r1, _02339C1C ; =ov02_0235291E ldr r2, _02339C20 ; =ov02_0235291C ldr r3, _02339C24 ; =ov02_02352920 ldr ip, _02339C28 ; =ov02_0235AA9C ldrh r0, [r0, lr] ldrh r1, [r1, lr] ldrh r2, [r2, lr] ldrh r3, [r3, lr] strb r4, [ip] bl ov02_023350AC ldmia sp!, {r3, r4, r5, pc} _02339B5C: add r4, r4, #1 cmp r4, #2 add r5, r5, #8 blo _02339B0C mov r0, #1 bl ov02_0234EBBC cmp r0, #0 beq _02339B88 mov r0, #1 bl ov02_023346F0 ldmia sp!, {r3, r4, r5, pc} _02339B88: mov r0, #2 bl ov02_0234EBBC cmp r0, #0 beq _02339BA4 mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, r4, r5, pc} _02339BA4: mov r0, #0x40 bl ov02_0234EBFC cmp r0, #0 beq _02339BC0 mov r0, #1 bl ov02_02339D94 ldmia sp!, {r3, r4, r5, pc} _02339BC0: mov r0, #0x80 bl ov02_0234EBFC cmp r0, #0 beq _02339BDC mov r0, #3 bl ov02_02339D94 ldmia sp!, {r3, r4, r5, pc} _02339BDC: mov r0, #0x20 bl ov02_0234EBFC cmp r0, #0 beq _02339BF8 mov r0, #0 bl ov02_02339D94 ldmia sp!, {r3, r4, r5, pc} _02339BF8: mov r0, #0x10 bl ov02_0234EBFC cmp r0, #0 ldmeqia sp!, {r3, r4, r5, pc} mov r0, #2 bl ov02_02339D94 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _02339C14: .word ov02_0235290A _02339C18: .word ov02_0235291A _02339C1C: .word ov02_0235291E _02339C20: .word ov02_0235291C _02339C24: .word ov02_02352920 _02339C28: .word ov02_0235AA9C arm_func_end ov02_02339B00 arm_func_start ov02_02339C2C ov02_02339C2C: ; 0x02339C2C bx lr arm_func_end ov02_02339C2C arm_func_start ov02_02339C30 ov02_02339C30: ; 0x02339C30 stmdb sp!, {r3, lr} bl ov02_023346DC cmp r0, #0 beq _02339C4C cmp r0, #1 beq _02339C60 ldmia sp!, {r3, pc} _02339C4C: mov r0, #7 bl ov02_023480E0 ldr r0, _02339C78 ; =ov02_0233958C bl ov02_02338D68 ldmia sp!, {r3, pc} _02339C60: mov r0, #6 bl ov02_023480E0 bl ov02_02339E04 ldr r0, _02339C7C ; =ov02_02339C80 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02339C78: .word ov02_0233958C _02339C7C: .word ov02_02339C80 arm_func_end ov02_02339C30 arm_func_start ov02_02339C80 ov02_02339C80: ; 0x02339C80 stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _02339C9C ; =ov02_02339CA0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02339C9C: .word ov02_02339CA0 arm_func_end ov02_02339C80 arm_func_start ov02_02339CA0 ov02_02339CA0: ; 0x02339CA0 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x16 mov r3, #8 bl ov02_0234D8E0 ldr r0, _02339CE8 ; =ov02_02339CEC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02339CE8: .word ov02_02339CEC arm_func_end ov02_02339CA0 arm_func_start ov02_02339CEC ov02_02339CEC: ; 0x02339CEC stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_0233519C bl ov02_02334D10 ldr r0, _02339D88 ; =ov02_0235AA9C ldr r0, [r0, #4] bl ov02_0234CF78 mov r0, #1 mov r1, r0 bl ov02_0234E424 mov r0, #0 mov r1, #0x14 bl ov02_0234E424 ldr r0, _02339D88 ; =ov02_0235AA9C ldrb r0, [r0] cmp r0, #0 beq _02339D58 cmp r0, #1 beq _02339D70 ldmia sp!, {r3, pc} _02339D58: mov r0, #1 mov r1, #0 bl ov02_02338D78 ldr r0, _02339D8C ; =ov02_02343DB0 bl ov02_02338D68 ldmia sp!, {r3, pc} _02339D70: mov r0, #0 mov r1, r0 bl ov02_02338D78 ldr r0, _02339D90 ; =ov02_0233A904 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02339D88: .word ov02_0235AA9C _02339D8C: .word ov02_02343DB0 _02339D90: .word ov02_0233A904 arm_func_end ov02_02339CEC arm_func_start ov02_02339D94 ov02_02339D94: ; 0x02339D94 stmdb sp!, {r3, lr} cmp r0, #1 cmpne r0, #3 ldmeqia sp!, {r3, pc} ldr r1, _02339DF0 ; =ov02_0235AA9C mov r0, #8 ldrb r2, [r1] eor r2, r2, #1 strb r2, [r1] bl ov02_023480E0 ldr r0, _02339DF0 ; =ov02_0235AA9C ldr ip, _02339DF4 ; =ov02_0235291A ldrb r0, [r0] ldr r1, _02339DF8 ; =ov02_0235291E ldr r2, _02339DFC ; =ov02_0235291C mov lr, r0, lsl #3 ldr r3, _02339E00 ; =ov02_02352920 ldrh r0, [ip, lr] ldrh r1, [r1, lr] ldrh r2, [r2, lr] ldrh r3, [r3, lr] bl ov02_023350AC ldmia sp!, {r3, pc} .align 2, 0 _02339DF0: .word ov02_0235AA9C _02339DF4: .word ov02_0235291A _02339DF8: .word ov02_0235291E _02339DFC: .word ov02_0235291C _02339E00: .word ov02_02352920 arm_func_end ov02_02339D94 arm_func_start ov02_02339E04 ov02_02339E04: ; 0x02339E04 stmdb sp!, {r3, lr} ldr r1, _02339E3C ; =ov02_02352908 ldr r0, _02339E40 ; =ov02_0235AA9C ldrb r3, [r1] ldrb r2, [r1, #1] ldrb r1, [r0] add ip, sp, #0 strb r3, [sp] strb r2, [sp, #1] ldrb r1, [ip, r1] ldr r0, [r0, #4] mov r2, r1 bl ov02_023468A0 ldmia sp!, {r3, pc} .align 2, 0 _02339E3C: .word ov02_02352908 _02339E40: .word ov02_0235AA9C arm_func_end ov02_02339E04 arm_func_start ov02_02339E44 ov02_02339E44: ; 0x02339E44 stmdb sp!, {r3, lr} ldr r0, _02339E84 ; =ov02_0235AAA4 mov r1, #0 strb r1, [r0] bl ov02_02339E8C mov r0, #0x12 bl ov02_02335268 mov r0, #0x3b sub r1, r0, #0x3c mov r2, #0 bl ov02_02334C3C mov r0, #0x17 bl ov02_02334E70 ldr r0, _02339E88 ; =ov02_02339F0C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02339E84: .word ov02_0235AAA4 _02339E88: .word ov02_02339F0C arm_func_end ov02_02339E44 arm_func_start ov02_02339E8C ov02_02339E8C: ; 0x02339E8C stmdb sp!, {r3, lr} ldr r0, _02339EFC ; =ov02_02353764 ldr r1, _02339F00 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _02339F04 ; =0x04001008 ldr r1, _02339F08 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _02339EFC: .word ov02_02353764 _02339F00: .word GX_LoadBG2Scr _02339F04: .word 0x04001008 _02339F08: .word 0x0400000A arm_func_end ov02_02339E8C arm_func_start ov02_02339F0C ov02_02339F0C: ; 0x02339F0C stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _02339F5C ; =ov02_02339F60 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02339F5C: .word ov02_02339F60 arm_func_end ov02_02339F0C arm_func_start ov02_02339F60 ov02_02339F60: ; 0x02339F60 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #3 bl ov02_02334E38 ldr r0, _02339F98 ; =ov02_02339F9C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02339F98: .word ov02_02339F9C arm_func_end ov02_02339F60 arm_func_start ov02_02339F9C ov02_02339F9C: ; 0x02339F9C stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _02339FC0 ; =ov02_02339FC4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02339FC0: .word ov02_02339FC4 arm_func_end ov02_02339F9C arm_func_start ov02_02339FC4 ov02_02339FC4: ; 0x02339FC4 stmdb sp!, {r3, lr} bl ov02_02339FD8 bl ov02_0233A010 bl ov02_0233A014 ldmia sp!, {r3, pc} arm_func_end ov02_02339FC4 arm_func_start ov02_02339FD8 ov02_02339FD8: ; 0x02339FD8 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234EBBC cmp r0, #0 beq _02339FF4 mov r0, #1 bl ov02_023346F0 _02339FF4: mov r0, #2 bl ov02_0234EBBC cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} arm_func_end ov02_02339FD8 arm_func_start ov02_0233A010 ov02_0233A010: ; 0x0233A010 bx lr arm_func_end ov02_0233A010 arm_func_start ov02_0233A014 ov02_0233A014: ; 0x0233A014 stmdb sp!, {r3, lr} bl ov02_023346DC cmp r0, #0 beq _0233A030 cmp r0, #1 beq _0233A044 ldmia sp!, {r3, pc} _0233A030: mov r0, #7 bl ov02_023480E0 ldr r0, _0233A074 ; =ov02_0233A07C bl ov02_02338D68 ldmia sp!, {r3, pc} _0233A044: mov r0, #6 bl ov02_023480E0 mov r2, #1 mov r1, #0 sub r3, r2, #2 mov r0, #0x18 str r1, [sp] bl ov02_02349394 bl ov02_02334768 ldr r0, _0233A078 ; =ov02_0233A1B8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A074: .word ov02_0233A07C _0233A078: .word ov02_0233A1B8 arm_func_end ov02_0233A014 arm_func_start ov02_0233A07C ov02_0233A07C: ; 0x0233A07C stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _0233A098 ; =ov02_0233A09C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A098: .word ov02_0233A09C arm_func_end ov02_0233A07C arm_func_start ov02_0233A09C ov02_0233A09C: ; 0x0233A09C stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_023346AC ldr r0, _0233A0F8 ; =ov02_0235AAA4 ldrb r0, [r0] cmp r0, #0 bne _0233A0D8 mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 _0233A0D8: mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _0233A0FC ; =ov02_0233A100 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A0F8: .word ov02_0235AAA4 _0233A0FC: .word ov02_0233A100 arm_func_end ov02_0233A09C arm_func_start ov02_0233A100 ov02_0233A100: ; 0x0233A100 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233A1AC ; =ov02_0235AAA4 ldrb r0, [r0] cmp r0, #0 bne _0233A134 mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} _0233A134: bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_0234E02C ldr r0, _0233A1AC ; =ov02_0235AAA4 ldrb r0, [r0] cmp r0, #0 bne _0233A168 bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 _0233A168: mov r0, #0 mov r1, #0x15 bl ov02_0234E424 ldr r0, _0233A1AC ; =ov02_0235AAA4 mov r1, #1 ldrb r0, [r0] cmp r0, #0 mov r0, #0 bne _0233A19C bl ov02_02338D78 ldr r0, _0233A1B0 ; =ov02_0233A904 bl ov02_02338D68 ldmia sp!, {r3, pc} _0233A19C: bl ov02_02338D78 ldr r0, _0233A1B4 ; =ov02_0233A228 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A1AC: .word ov02_0235AAA4 _0233A1B0: .word ov02_0233A904 _0233A1B4: .word ov02_0233A228 arm_func_end ov02_0233A100 arm_func_start ov02_0233A1B8 ov02_0233A1B8: ; 0x0233A1B8 stmdb sp!, {r3, lr} bl ov02_02349704 cmp r0, #0 beq _0233A1E8 cmp r0, #1 ldmneia sp!, {r3, pc} mov r0, #0xe bl ov02_023480E0 ldr r0, _0233A200 ; =ov02_0235AAA4 mov r1, #1 strb r1, [r0] b _0233A1F0 _0233A1E8: mov r0, #7 bl ov02_023480E0 _0233A1F0: bl ov02_023496C0 ldr r0, _0233A204 ; =ov02_0233A208 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A200: .word ov02_0235AAA4 _0233A204: .word ov02_0233A208 arm_func_end ov02_0233A1B8 arm_func_start ov02_0233A208 ov02_0233A208: ; 0x0233A208 stmdb sp!, {r3, lr} bl ov02_02349718 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233A224 ; =ov02_0233A07C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A224: .word ov02_0233A07C arm_func_end ov02_0233A208 arm_func_start ov02_0233A228 ov02_0233A228: ; 0x0233A228 stmdb sp!, {r3, lr} bl ov02_0233A24C mov r0, #0x19 bl ov02_02334E70 bl ov02_02347D68 ldr r0, _0233A248 ; =ov02_0233A2CC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A248: .word ov02_0233A2CC arm_func_end ov02_0233A228 arm_func_start ov02_0233A24C ov02_0233A24C: ; 0x0233A24C stmdb sp!, {r3, lr} ldr r0, _0233A2BC ; =ov02_02353778 ldr r1, _0233A2C0 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _0233A2C4 ; =0x04001008 ldr r1, _0233A2C8 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _0233A2BC: .word ov02_02353778 _0233A2C0: .word GX_LoadBG2Scr _0233A2C4: .word 0x04001008 _0233A2C8: .word 0x0400000A arm_func_end ov02_0233A24C arm_func_start ov02_0233A2CC ov02_0233A2CC: ; 0x0233A2CC stmdb sp!, {r3, lr} mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _0233A2FC ; =ov02_0233A300 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A2FC: .word ov02_0233A300 arm_func_end ov02_0233A2CC arm_func_start ov02_0233A300 ov02_0233A300: ; 0x0233A300 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #5 bl ov02_02334E38 ldr r0, _0233A328 ; =ov02_0233A32C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A328: .word ov02_0233A32C arm_func_end ov02_0233A300 arm_func_start ov02_0233A32C ov02_0233A32C: ; 0x0233A32C stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _0233A350 ; =ov02_0233A354 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A350: .word ov02_0233A354 arm_func_end ov02_0233A32C arm_func_start ov02_0233A354 ov02_0233A354: ; 0x0233A354 stmdb sp!, {r3, lr} bl ov02_0233A368 bl ov02_0233A388 bl ov02_0233A38C ldmia sp!, {r3, pc} arm_func_end ov02_0233A354 arm_func_start ov02_0233A368 ov02_0233A368: ; 0x0233A368 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234EBBC cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} arm_func_end ov02_0233A368 arm_func_start ov02_0233A388 ov02_0233A388: ; 0x0233A388 bx lr arm_func_end ov02_0233A388 arm_func_start ov02_0233A38C ov02_0233A38C: ; 0x0233A38C stmdb sp!, {r3, lr} bl ov02_023346DC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #6 bl ov02_023480E0 ldr r0, _0233A3B0 ; =ov02_0233A3B4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A3B0: .word ov02_0233A3B4 arm_func_end ov02_0233A38C arm_func_start ov02_0233A3B4 ov02_0233A3B4: ; 0x0233A3B4 stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _0233A3D0 ; =ov02_0233A3D4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A3D0: .word ov02_0233A3D4 arm_func_end ov02_0233A3B4 arm_func_start ov02_0233A3D4 ov02_0233A3D4: ; 0x0233A3D4 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #3 mov r1, #1 mov r2, #0x3f mov r3, #0x40 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x3f mov r3, #0x40 bl ov02_0234D8E0 ldr r0, _0233A41C ; =ov02_0233A420 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A41C: .word ov02_0233A420 arm_func_end ov02_0233A3D4 arm_func_start ov02_0233A420 ov02_0233A420: ; 0x0233A420 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0x1000000 bl sub_0207B854 bl PM_ForceToPowerOff ldmia sp!, {r3, pc} arm_func_end ov02_0233A420 arm_func_start ov02_0233A454 ov02_0233A454: ; 0x0233A454 stmdb sp!, {r3, lr} bl ov02_0233A488 mov r0, #0x11 bl ov02_02335268 mov r0, #0x3a sub r1, r0, #0x3b mov r2, #0 bl ov02_02334C3C bl ov02_0233A508 ldr r0, _0233A484 ; =ov02_0233A70C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A484: .word ov02_0233A70C arm_func_end ov02_0233A454 arm_func_start ov02_0233A488 ov02_0233A488: ; 0x0233A488 stmdb sp!, {r3, lr} ldr r0, _0233A4F8 ; =ov02_0235378C ldr r1, _0233A4FC ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _0233A500 ; =0x04001008 ldr r1, _0233A504 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _0233A4F8: .word ov02_0235378C _0233A4FC: .word GX_LoadBG2Scr _0233A500: .word 0x04001008 _0233A504: .word 0x0400000A arm_func_end ov02_0233A488 arm_func_start ov02_0233A508 ov02_0233A508: ; 0x0233A508 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x7c mov r0, #0 mov r1, r0 bl ov02_0234DDC8 mov fp, r0 add r0, sp, #0x14 bl sub_0207B9EC ldrb r1, [sp, #0x15] ldr r2, _0233A6FC ; =ov02_023537A0 add r0, sp, #0x1a str r1, [sp] ldrb r3, [sp, #0x16] mov r1, #0x14 str r3, [sp, #4] ldrb r3, [sp, #0x17] str r3, [sp, #8] ldrb r3, [sp, #0x18] str r3, [sp, #0xc] ldrb r3, [sp, #0x19] str r3, [sp, #0x10] ldrb r3, [sp, #0x14] bl sub_0207911C add r0, sp, #0x2e add r1, sp, #0x1a mov r2, #0x14 bl ov02_0234F5C8 mov r0, #0x1c str r0, [sp] mov r0, #2 str r0, [sp, #4] mov r0, #0x480 str r0, [sp, #8] add r1, sp, #0x2e str r1, [sp, #0xc] mov r0, fp mov r1, #8 mov r2, #0x40 mov r3, #0xf0 bl ov02_0234E1E8 add r0, sp, #0x68 bl ov00_022ED468 ldr sl, [sp, #0x6c] ldr r8, [sp, #0x68] cmp sl, #0 mov r3, #0 cmpeq r8, #0 beq _0233A698 mov r0, r8 mov r1, sl mov r2, #0xa bl _ull_mod mov r1, #0x3e8 umull r4, r1, r0, r1 mov r0, r8 mov r1, sl mov r3, #0 mov r2, #0xa str r4, [sp, #0x64] bl _ll_udiv mov sb, #0 ldr r7, _0233A700 ; =0x00002710 mov r8, r0 mov sl, r1 mov r6, sb add r5, sp, #0x58 mov r4, sb _0233A614: mov r0, r8 mov r1, sl mov r2, r7 mov r3, r6 bl _ull_mod rsb r1, sb, #2 str r0, [r5, r1, lsl #2] mov r0, r8 mov r1, sl mov r2, r7 mov r3, r4 bl _ll_udiv mov r8, r0 mov sl, r1 add sb, sb, #1 cmp sb, #3 blt _0233A614 ldr r1, [sp, #0x5c] ldr r0, [sp, #0x60] str r1, [sp] str r0, [sp, #4] ldr r4, [sp, #0x64] ldr r3, [sp, #0x58] ldr r2, _0233A704 ; =ov02_023537C0 add r0, sp, #0x1a mov r1, #0x14 str r4, [sp, #8] bl sub_0207911C add r0, sp, #0x2e add r1, sp, #0x1a mov r2, #0x14 bl ov02_0234F5C8 b _0233A6B8 _0233A698: ldr r2, _0233A708 ; =ov02_023537D4 add r0, sp, #0x1a mov r1, #0x14 bl sub_0207911C add r0, sp, #0x2e add r1, sp, #0x1a mov r2, #0x14 bl ov02_0234F5C8 _0233A6B8: mov r0, #0x1c str r0, [sp] mov r0, #2 str r0, [sp, #4] mov r0, #0x480 str r0, [sp, #8] add r4, sp, #0x2e mov r0, fp mov r1, #8 mov r2, #0x78 mov r3, #0xf0 str r4, [sp, #0xc] bl ov02_0234E1E8 mov r0, fp bl ov02_0234E354 add sp, sp, #0x7c ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _0233A6FC: .word ov02_023537A0 _0233A700: .word 0x00002710 _0233A704: .word ov02_023537C0 _0233A708: .word ov02_023537D4 arm_func_end ov02_0233A508 arm_func_start ov02_0233A70C ov02_0233A70C: ; 0x0233A70C stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _0233A75C ; =ov02_0233A760 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A75C: .word ov02_0233A760 arm_func_end ov02_0233A70C arm_func_start ov02_0233A760 ov02_0233A760: ; 0x0233A760 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #2 bl ov02_02334E38 ldr r0, _0233A798 ; =ov02_0233A79C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A798: .word ov02_0233A79C arm_func_end ov02_0233A760 arm_func_start ov02_0233A79C ov02_0233A79C: ; 0x0233A79C stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _0233A7C0 ; =ov02_0233A7C4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A7C0: .word ov02_0233A7C4 arm_func_end ov02_0233A79C arm_func_start ov02_0233A7C4 ov02_0233A7C4: ; 0x0233A7C4 stmdb sp!, {r3, lr} bl ov02_0233A7D8 bl ov02_0233A7F8 bl ov02_0233A7FC ldmia sp!, {r3, pc} arm_func_end ov02_0233A7C4 arm_func_start ov02_0233A7D8 ov02_0233A7D8: ; 0x0233A7D8 stmdb sp!, {r3, lr} mov r0, #2 bl ov02_0234EBBC cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} arm_func_end ov02_0233A7D8 arm_func_start ov02_0233A7F8 ov02_0233A7F8: ; 0x0233A7F8 bx lr arm_func_end ov02_0233A7F8 arm_func_start ov02_0233A7FC ov02_0233A7FC: ; 0x0233A7FC stmdb sp!, {r3, lr} bl ov02_023346DC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #7 bl ov02_023480E0 ldr r0, _0233A820 ; =ov02_0233A824 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A820: .word ov02_0233A824 arm_func_end ov02_0233A7FC arm_func_start ov02_0233A824 ov02_0233A824: ; 0x0233A824 stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _0233A840 ; =ov02_0233A844 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A840: .word ov02_0233A844 arm_func_end ov02_0233A824 arm_func_start ov02_0233A844 ov02_0233A844: ; 0x0233A844 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_023346AC mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _0233A890 ; =ov02_0233A894 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A890: .word ov02_0233A894 arm_func_end ov02_0233A844 arm_func_start ov02_0233A894 ov02_0233A894: ; 0x0233A894 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_0234E02C bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 mov r0, #0 mov r1, #0x15 bl ov02_0234E424 mov r0, #0 mov r1, #1 bl ov02_02338D78 ldr r0, _0233A900 ; =ov02_0233A904 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233A900: .word ov02_0233A904 arm_func_end ov02_0233A894 arm_func_start ov02_0233A904 ov02_0233A904: ; 0x0233A904 stmdb sp!, {r4, lr} ldr r0, _0233A9B0 ; =ov02_0235AAA8 mov r1, #0 strb r1, [r0, #1] bl ov02_0233A9CC mov r0, #0x10 bl ov02_02335268 mov r0, #3 bl ov02_02348C1C mov r0, #0x39 sub r1, r0, #0x3a mov r2, #0 bl ov02_02334C3C mov r0, #0 mov r1, #0x5b bl ov02_0234D6AC ldr r2, _0233A9B0 ; =ov02_0235AAA8 ldr r1, _0233A9B4 ; =0xFE00FF00 str r0, [r2, #8] ldr r3, [r0] ldr lr, _0233A9B8 ; =ov02_0235298E and r1, r3, r1 orr r1, r1, #0x84 orr r1, r1, #0xe00000 str r1, [r0] ldr r4, [r2, #8] ldr r1, _0233A9BC ; =ov02_02352992 ldrh r0, [r4, #4] ldr ip, _0233A9C0 ; =ov02_02352990 ldr r3, _0233A9C4 ; =ov02_02352994 bic r0, r0, #0xc00 orr r0, r0, #0xc00 strh r0, [r4, #4] ldrb r0, [r2] mov r4, r0, lsl #3 ldrh r0, [lr, r4] ldrh r1, [r1, r4] ldrh r2, [ip, r4] ldrh r3, [r3, r4] bl ov02_023350AC ldr r0, _0233A9C8 ; =ov02_0233AB68 bl ov02_02338D68 ldmia sp!, {r4, pc} .align 2, 0 _0233A9B0: .word ov02_0235AAA8 _0233A9B4: .word 0xFE00FF00 _0233A9B8: .word ov02_0235298E _0233A9BC: .word ov02_02352992 _0233A9C0: .word ov02_02352990 _0233A9C4: .word ov02_02352994 _0233A9C8: .word ov02_0233AB68 arm_func_end ov02_0233A904 arm_func_start ov02_0233A9CC ov02_0233A9CC: ; 0x0233A9CC stmdb sp!, {r3, r4, r5, r6, r7, r8, lr} sub sp, sp, #0x44 ldr r4, _0233AB44 ; =ov02_02352948 add r3, sp, #0x2b mov r2, #0xb _0233A9E0: ldrb r1, [r4] ldrb r0, [r4, #1] add r4, r4, #2 strb r1, [r3] strb r0, [r3, #1] add r3, r3, #2 subs r2, r2, #1 bne _0233A9E0 ldr r4, _0233AB48 ; =ov02_0235295E add r3, sp, #0x14 mov r2, #0xb _0233AA0C: ldrb r1, [r4] ldrb r0, [r4, #1] add r4, r4, #2 strb r1, [r3] strb r0, [r3, #1] add r3, r3, #2 subs r2, r2, #1 bne _0233AA0C ldrb r2, [r4] ldr r0, _0233AB4C ; =ov02_023537E8 ldr r1, _0233AB50 ; =GX_LoadBG2Char strb r2, [r3] bl ov02_02334DA8 ldr r0, _0233AB54 ; =ov02_02353800 ldr r1, _0233AB58 ; =GX_LoadBG2Scr bl ov02_02334DA8 add r0, sp, #0x14 bl ov02_02334D48 mov r1, #0 mov r2, #4 bl ov02_0234CE84 ldr r1, _0233AB5C ; =ov02_0235AAA8 str r0, [r1, #4] add r0, sp, #0x2b bl ov02_02334D48 mov r1, #0 mov r2, #4 bl ov02_0234CE84 mov r8, r0 add r0, sp, #0 bl ov00_022ED468 ldr r0, [sp, #4] ldr r1, [sp] cmp r0, #0 mov r7, #0 cmpeq r1, #0 bne _0233AAD0 add r5, r8, #0xc0 add r6, r8, #0x40 mov r4, #0x20 _0233AAAC: mov r0, r5 mov r1, r6 mov r2, r4 bl MemcpyFast add r7, r7, #1 cmp r7, #2 add r5, r5, #0x20 add r6, r6, #0x20 blt _0233AAAC _0233AAD0: mov r0, r8 mov r1, #0x200 bl DC_FlushRange mov r0, r8 mov r1, #0 mov r2, #0x200 bl GX_LoadBGPltt mov r0, r8 bl ov02_0234CF78 ldr r2, _0233AB60 ; =0x04001008 ldr r1, _0233AB64 ; =0x0400000A ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r2, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2, #2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] add sp, sp, #0x44 ldmia sp!, {r3, r4, r5, r6, r7, r8, pc} .align 2, 0 _0233AB44: .word ov02_02352948 _0233AB48: .word ov02_0235295E _0233AB4C: .word ov02_023537E8 _0233AB50: .word GX_LoadBG2Char _0233AB54: .word ov02_02353800 _0233AB58: .word GX_LoadBG2Scr _0233AB5C: .word ov02_0235AAA8 _0233AB60: .word 0x04001008 _0233AB64: .word 0x0400000A arm_func_end ov02_0233A9CC arm_func_start ov02_0233AB68 ov02_0233AB68: ; 0x0233AB68 stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #2 mov r1, #0 mov r2, #0x14 mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 mov r0, #0 mov r1, #0x14 bl ov02_0234E3D0 ldr r0, _0233ABB8 ; =ov02_0233ABBC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233ABB8: .word ov02_0233ABBC arm_func_end ov02_0233AB68 arm_func_start ov02_0233ABBC ov02_0233ABBC: ; 0x0233ABBC stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_02334E38 ldr r0, _0233ABF4 ; =ov02_0233ABF8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233ABF4: .word ov02_0233ABF8 arm_func_end ov02_0233ABBC arm_func_start ov02_0233ABF8 ov02_0233ABF8: ; 0x0233ABF8 stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _0233AC1C ; =ov02_0233AC20 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233AC1C: .word ov02_0233AC20 arm_func_end ov02_0233ABF8 arm_func_start ov02_0233AC20 ov02_0233AC20: ; 0x0233AC20 stmdb sp!, {r3, lr} bl ov02_0233AC34 bl ov02_0233AD28 bl ov02_0233AD2C ldmia sp!, {r3, pc} arm_func_end ov02_0233AC20 arm_func_start ov02_0233AC34 ov02_0233AC34: ; 0x0233AC34 stmdb sp!, {r3, r4, r5, lr} ldr r5, _0233AD10 ; =ov02_02352976 mov r4, #0 _0233AC40: mov r0, r5 bl ov02_0234ED04 cmp r0, #0 beq _0233AC90 mov r0, #1 bl ov02_023346F0 and r1, r4, #0xff mov lr, r1, lsl #3 ldr r0, _0233AD14 ; =ov02_0235298E ldr r1, _0233AD18 ; =ov02_02352992 ldr r2, _0233AD1C ; =ov02_02352990 ldr r3, _0233AD20 ; =ov02_02352994 ldr ip, _0233AD24 ; =ov02_0235AAA8 ldrh r0, [r0, lr] ldrh r1, [r1, lr] ldrh r2, [r2, lr] ldrh r3, [r3, lr] strb r4, [ip] bl ov02_023350AC ldmia sp!, {r3, r4, r5, pc} _0233AC90: add r4, r4, #1 cmp r4, #3 add r5, r5, #8 blo _0233AC40 mov r0, #1 bl ov02_0234EBBC cmp r0, #0 beq _0233ACBC mov r0, #1 bl ov02_023346F0 ldmia sp!, {r3, r4, r5, pc} _0233ACBC: mov r0, #2 bl ov02_0234EBBC cmp r0, #0 beq _0233ACD8 mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, r4, r5, pc} _0233ACD8: mov r0, #0x40 bl ov02_0234EBFC cmp r0, #0 beq _0233ACF4 mov r0, #1 bl ov02_0233AF60 ldmia sp!, {r3, r4, r5, pc} _0233ACF4: mov r0, #0x80 bl ov02_0234EBFC cmp r0, #0 ldmeqia sp!, {r3, r4, r5, pc} mov r0, #3 bl ov02_0233AF60 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0233AD10: .word ov02_02352976 _0233AD14: .word ov02_0235298E _0233AD18: .word ov02_02352992 _0233AD1C: .word ov02_02352990 _0233AD20: .word ov02_02352994 _0233AD24: .word ov02_0235AAA8 arm_func_end ov02_0233AC34 arm_func_start ov02_0233AD28 ov02_0233AD28: ; 0x0233AD28 bx lr arm_func_end ov02_0233AD28 arm_func_start ov02_0233AD2C ov02_0233AD2C: ; 0x0233AD2C stmdb sp!, {lr} sub sp, sp, #0x14 bl ov02_023346DC cmp r0, #0 beq _0233AD50 cmp r0, #1 beq _0233AD5C add sp, sp, #0x14 ldmia sp!, {pc} _0233AD50: mov r0, #7 bl ov02_023480E0 b _0233ADB8 _0233AD5C: add r0, sp, #0 bl ov00_022ED468 ldr r0, _0233ADC8 ; =ov02_0235AAA8 ldrb r0, [r0] cmp r0, #0 beq _0233ADA0 ldr r0, [sp, #4] ldr r1, [sp] cmp r0, #0 cmpeq r1, #0 bne _0233ADA0 mov r0, #9 bl ov02_023480E0 mvn r0, #0 bl ov02_02334710 add sp, sp, #0x14 ldmia sp!, {pc} _0233ADA0: mov r0, #6 bl ov02_023480E0 bl ov02_0233AFF0 ldr r0, _0233ADC8 ; =ov02_0235AAA8 mov r1, #1 strb r1, [r0, #1] _0233ADB8: ldr r0, _0233ADCC ; =ov02_0233ADD0 bl ov02_02338D68 add sp, sp, #0x14 ldmia sp!, {pc} .align 2, 0 _0233ADC8: .word ov02_0235AAA8 _0233ADCC: .word ov02_0233ADD0 arm_func_end ov02_0233AD2C arm_func_start ov02_0233ADD0 ov02_0233ADD0: ; 0x0233ADD0 stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _0233ADEC ; =ov02_0233ADF0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233ADEC: .word ov02_0233ADF0 arm_func_end ov02_0233ADD0 arm_func_start ov02_0233ADF0 ov02_0233ADF0: ; 0x0233ADF0 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233AE4C ; =ov02_0235AAA8 ldrb r0, [r0, #1] cmp r0, #0 beq _0233AE18 bl ov02_023346AC _0233AE18: mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x14 mov r3, #8 bl ov02_0234D8E0 ldr r0, _0233AE50 ; =ov02_0233AE54 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233AE4C: .word ov02_0235AAA8 _0233AE50: .word ov02_0233AE54 arm_func_end ov02_0233ADF0 arm_func_start ov02_0233AE54 ov02_0233AE54: ; 0x0233AE54 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, pc} ldr r0, _0233AF4C ; =ov02_0235AAA8 ldr r0, [r0, #8] bl ov02_0234F2C0 bl ov02_0233519C bl ov02_02334D10 ldr r0, _0233AF4C ; =ov02_0235AAA8 ldr r0, [r0, #4] bl ov02_0234CF78 mov r0, #1 mov r1, r0 bl ov02_0234E424 mov r0, #0 mov r1, #0x14 bl ov02_0234E424 ldr r0, _0233AF4C ; =ov02_0235AAA8 ldrb r1, [r0, #1] cmp r1, #0 bne _0233AEE4 mov r0, #0 mov r1, r0 bl ov02_02338D78 ldr r0, _0233AF50 ; =ov02_023398CC bl ov02_02338D68 ldmia sp!, {r3, pc} _0233AEE4: ldrb r0, [r0] cmp r0, #0 beq _0233AF04 cmp r0, #1 beq _0233AF1C cmp r0, #2 beq _0233AF34 ldmia sp!, {r3, pc} _0233AF04: mov r0, #0 mov r1, #1 bl ov02_02338D78 ldr r0, _0233AF54 ; =ov02_0233A454 bl ov02_02338D68 ldmia sp!, {r3, pc} _0233AF1C: mov r0, #0 mov r1, #1 bl ov02_02338D78 ldr r0, _0233AF58 ; =ov02_02339E44 bl ov02_02338D68 ldmia sp!, {r3, pc} _0233AF34: mov r0, #0 mov r1, #1 bl ov02_02338D78 ldr r0, _0233AF5C ; =ov02_0233B6D0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233AF4C: .word ov02_0235AAA8 _0233AF50: .word ov02_023398CC _0233AF54: .word ov02_0233A454 _0233AF58: .word ov02_02339E44 _0233AF5C: .word ov02_0233B6D0 arm_func_end ov02_0233AE54 arm_func_start ov02_0233AF60 ov02_0233AF60: ; 0x0233AF60 stmdb sp!, {r3, lr} cmp r0, #1 mov r1, #3 bne _0233AF88 ldr r0, _0233AFDC ; =ov02_0235AAA8 ldrb r0, [r0] add r0, r0, #2 bl FX_ModS32 ldr r1, _0233AFDC ; =ov02_0235AAA8 b _0233AF9C _0233AF88: ldr r0, _0233AFDC ; =ov02_0235AAA8 ldrb r0, [r0] add r0, r0, #1 bl FX_ModS32 ldr r1, _0233AFDC ; =ov02_0235AAA8 _0233AF9C: strb r0, [r1] mov r0, #8 bl ov02_023480E0 ldr r0, _0233AFDC ; =ov02_0235AAA8 ldr ip, _0233AFE0 ; =ov02_0235298E ldrb r0, [r0] ldr r1, _0233AFE4 ; =ov02_02352992 ldr r2, _0233AFE8 ; =ov02_02352990 mov lr, r0, lsl #3 ldr r3, _0233AFEC ; =ov02_02352994 ldrh r0, [ip, lr] ldrh r1, [r1, lr] ldrh r2, [r2, lr] ldrh r3, [r3, lr] bl ov02_023350AC ldmia sp!, {r3, pc} .align 2, 0 _0233AFDC: .word ov02_0235AAA8 _0233AFE0: .word ov02_0235298E _0233AFE4: .word ov02_02352992 _0233AFE8: .word ov02_02352990 _0233AFEC: .word ov02_02352994 arm_func_end ov02_0233AF60 arm_func_start ov02_0233AFF0 ov02_0233AFF0: ; 0x0233AFF0 ldr r0, _0233B010 ; =ov02_0235AAA8 ldr r1, _0233B014 ; =ov02_02352940 ldrb r2, [r0] ldr ip, _0233B018 ; =ov02_023468A0 ldr r0, [r0, #4] ldrb r1, [r1, r2] mov r2, r1 bx ip .align 2, 0 _0233B010: .word ov02_0235AAA8 _0233B014: .word ov02_02352940 _0233B018: .word ov02_023468A0 arm_func_end ov02_0233AFF0 arm_func_start ov02_0233B01C ov02_0233B01C: ; 0x0233B01C stmdb sp!, {r3, lr} bl ov02_0233B054 mov r0, #0x1e bl ov02_02334E70 mov r0, #0 bl ov02_023343DC mov r0, #1 bl ov02_02335334 mov r0, #0xb bl ov02_023480E0 ldr r0, _0233B050 ; =ov02_0233B0D4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B050: .word ov02_0233B0D4 arm_func_end ov02_0233B01C arm_func_start ov02_0233B054 ov02_0233B054: ; 0x0233B054 stmdb sp!, {r3, lr} ldr r0, _0233B0C4 ; =ov02_02353818 ldr r1, _0233B0C8 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _0233B0CC ; =0x04001008 ldr r1, _0233B0D0 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _0233B0C4: .word ov02_02353818 _0233B0C8: .word GX_LoadBG2Scr _0233B0CC: .word 0x04001008 _0233B0D0: .word 0x0400000A arm_func_end ov02_0233B054 arm_func_start ov02_0233B0D4 ov02_0233B0D4: ; 0x0233B0D4 stmdb sp!, {r3, lr} mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _0233B104 ; =ov02_0233B108 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B104: .word ov02_0233B108 arm_func_end ov02_0233B0D4 arm_func_start ov02_0233B108 ov02_0233B108: ; 0x0233B108 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233B130 ; =ov02_0233B20C bl ov02_02339104 ldr r0, _0233B134 ; =ov02_0233B138 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B130: .word ov02_0233B20C _0233B134: .word ov02_0233B138 arm_func_end ov02_0233B108 arm_func_start ov02_0233B138 ov02_0233B138: ; 0x0233B138 stmdb sp!, {r3, lr} bl ov02_0233B148 bl ov02_0233B14C ldmia sp!, {r3, pc} arm_func_end ov02_0233B138 arm_func_start ov02_0233B148 ov02_0233B148: ; 0x0233B148 bx lr arm_func_end ov02_0233B148 arm_func_start ov02_0233B14C ov02_0233B14C: ; 0x0233B14C bx lr arm_func_end ov02_0233B14C arm_func_start ov02_0233B150 ov02_0233B150: ; 0x0233B150 stmdb sp!, {r3, lr} mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _0233B174 ; =ov02_0233B178 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B174: .word ov02_0233B178 arm_func_end ov02_0233B150 arm_func_start ov02_0233B178 ov02_0233B178: ; 0x0233B178 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_023390E8 cmp r0, #0 ldmeqia sp!, {r3, pc} bl ov02_023353EC bl ov02_023344AC mov r0, #0 bl ov02_0234E02C mov r0, #0 mov r1, #0x15 bl ov02_0234E424 mov r0, #0 mov r1, #1 bl ov02_02338D78 ldr r0, _0233B1FC ; =ov02_0235AAB4 ldrb r0, [r0] cmp r0, #0 bne _0233B1DC ldr r0, _0233B200 ; =ov02_0233BC04 bl ov02_02338D68 ldmia sp!, {r3, pc} _0233B1DC: cmp r0, #2 bne _0233B1F0 ldr r0, _0233B204 ; =ov02_0233BA1C bl ov02_02338D68 ldmia sp!, {r3, pc} _0233B1F0: ldr r0, _0233B208 ; =ov02_0233B294 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B1FC: .word ov02_0235AAB4 _0233B200: .word ov02_0233BC04 _0233B204: .word ov02_0233BA1C _0233B208: .word ov02_0233B294 arm_func_end ov02_0233B178 arm_func_start ov02_0233B20C ov02_0233B20C: ; 0x0233B20C stmdb sp!, {r3, lr} cmp r0, #2 bne _0233B238 bl ov02_02347D68 ldr r0, _0233B28C ; =ov02_0235AAB4 mov r1, #1 strb r1, [r0] bl ov02_02348148 mov r0, #0x10 bl ov02_023480E0 b _0233B274 _0233B238: cmp r0, #3 bne _0233B25C ldr r0, _0233B28C ; =ov02_0235AAB4 mov r1, #2 strb r1, [r0] bl ov02_02348148 mov r0, #0x12 bl ov02_023480E0 b _0233B274 _0233B25C: ldr r0, _0233B28C ; =ov02_0235AAB4 mov r1, #0 strb r1, [r0] bl ov02_02348148 mov r0, #0x12 bl ov02_023480E0 _0233B274: mov r0, #0 bl ov02_02339104 bl ov02_0233908C ldr r0, _0233B290 ; =ov02_0233B150 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B28C: .word ov02_0235AAB4 _0233B290: .word ov02_0233B150 arm_func_end ov02_0233B20C arm_func_start ov02_0233B294 ov02_0233B294: ; 0x0233B294 stmdb sp!, {r3, lr} bl ov02_0233B2B4 mov r0, #0x1f bl ov02_02334E70 ldr r0, _0233B2B0 ; =ov02_0233B31C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B2B0: .word ov02_0233B31C arm_func_end ov02_0233B294 arm_func_start ov02_0233B2B4 ov02_0233B2B4: ; 0x0233B2B4 ldr r3, _0233B314 ; =0x04001008 ldr r1, _0233B318 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] bx lr .align 2, 0 _0233B314: .word 0x04001008 _0233B318: .word 0x0400000A arm_func_end ov02_0233B2B4 arm_func_start ov02_0233B31C ov02_0233B31C: ; 0x0233B31C stmdb sp!, {r3, lr} mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _0233B34C ; =ov02_0233B350 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B34C: .word ov02_0233B350 arm_func_end ov02_0233B31C arm_func_start ov02_0233B350 ov02_0233B350: ; 0x0233B350 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #5 bl ov02_02334E38 ldr r0, _0233B378 ; =ov02_0233B37C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B378: .word ov02_0233B37C arm_func_end ov02_0233B350 arm_func_start ov02_0233B37C ov02_0233B37C: ; 0x0233B37C stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _0233B3A0 ; =ov02_0233B3A4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B3A0: .word ov02_0233B3A4 arm_func_end ov02_0233B37C arm_func_start ov02_0233B3A4 ov02_0233B3A4: ; 0x0233B3A4 stmdb sp!, {r3, lr} bl ov02_0233B3B8 bl ov02_0233B3D8 bl ov02_0233B3DC ldmia sp!, {r3, pc} arm_func_end ov02_0233B3A4 arm_func_start ov02_0233B3B8 ov02_0233B3B8: ; 0x0233B3B8 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234EBBC cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} arm_func_end ov02_0233B3B8 arm_func_start ov02_0233B3D8 ov02_0233B3D8: ; 0x0233B3D8 bx lr arm_func_end ov02_0233B3D8 arm_func_start ov02_0233B3DC ov02_0233B3DC: ; 0x0233B3DC stmdb sp!, {r3, lr} bl ov02_023346DC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #6 bl ov02_023480E0 ldr r0, _0233B400 ; =ov02_0233B404 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B400: .word ov02_0233B404 arm_func_end ov02_0233B3DC arm_func_start ov02_0233B404 ov02_0233B404: ; 0x0233B404 stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _0233B420 ; =ov02_0233B424 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B420: .word ov02_0233B424 arm_func_end ov02_0233B404 arm_func_start ov02_0233B424 ov02_0233B424: ; 0x0233B424 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #3 mov r1, #1 mov r2, #0x3f mov r3, #0x40 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x3f mov r3, #0x40 bl ov02_0234D8E0 ldr r0, _0233B46C ; =ov02_0233B470 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B46C: .word ov02_0233B470 arm_func_end ov02_0233B424 arm_func_start ov02_0233B470 ov02_0233B470: ; 0x0233B470 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0x1000000 bl sub_0207B854 bl PM_ForceToPowerOff ldmia sp!, {r3, pc} arm_func_end ov02_0233B470 arm_func_start ov02_0233B4A4 ov02_0233B4A4: ; 0x0233B4A4 stmdb sp!, {r3, lr} bl ov02_0233B4C4 mov r0, #0x1a bl ov02_02334E70 ldr r0, _0233B4C0 ; =ov02_0233B52C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B4C0: .word ov02_0233B52C arm_func_end ov02_0233B4A4 arm_func_start ov02_0233B4C4 ov02_0233B4C4: ; 0x0233B4C4 ldr r3, _0233B524 ; =0x04001008 ldr r1, _0233B528 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] bx lr .align 2, 0 _0233B524: .word 0x04001008 _0233B528: .word 0x0400000A arm_func_end ov02_0233B4C4 arm_func_start ov02_0233B52C ov02_0233B52C: ; 0x0233B52C stmdb sp!, {r3, lr} mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _0233B55C ; =ov02_0233B560 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B55C: .word ov02_0233B560 arm_func_end ov02_0233B52C arm_func_start ov02_0233B560 ov02_0233B560: ; 0x0233B560 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #4 bl ov02_02334E38 ldr r0, _0233B598 ; =ov02_0233B59C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B598: .word ov02_0233B59C arm_func_end ov02_0233B560 arm_func_start ov02_0233B59C ov02_0233B59C: ; 0x0233B59C stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _0233B5C0 ; =ov02_0233B5C4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B5C0: .word ov02_0233B5C4 arm_func_end ov02_0233B59C arm_func_start ov02_0233B5C4 ov02_0233B5C4: ; 0x0233B5C4 stmdb sp!, {r3, lr} bl ov02_0233B5D8 bl ov02_0233B5F8 bl ov02_0233B5FC ldmia sp!, {r3, pc} arm_func_end ov02_0233B5C4 arm_func_start ov02_0233B5D8 ov02_0233B5D8: ; 0x0233B5D8 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234EBBC cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} arm_func_end ov02_0233B5D8 arm_func_start ov02_0233B5F8 ov02_0233B5F8: ; 0x0233B5F8 bx lr arm_func_end ov02_0233B5F8 arm_func_start ov02_0233B5FC ov02_0233B5FC: ; 0x0233B5FC stmdb sp!, {r3, lr} bl ov02_023346DC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #6 bl ov02_023480E0 ldr r0, _0233B620 ; =ov02_0233B624 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B620: .word ov02_0233B624 arm_func_end ov02_0233B5FC arm_func_start ov02_0233B624 ov02_0233B624: ; 0x0233B624 stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _0233B640 ; =ov02_0233B644 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B640: .word ov02_0233B644 arm_func_end ov02_0233B624 arm_func_start ov02_0233B644 ov02_0233B644: ; 0x0233B644 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_023346AC mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _0233B67C ; =ov02_0233B680 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B67C: .word ov02_0233B680 arm_func_end ov02_0233B644 arm_func_start ov02_0233B680 ov02_0233B680: ; 0x0233B680 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_0234E02C mov r0, #0 mov r1, #0x15 bl ov02_0234E424 mov r0, #0 mov r1, #1 bl ov02_02338D78 ldr r0, _0233B6CC ; =ov02_0233C364 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B6CC: .word ov02_0233C364 arm_func_end ov02_0233B680 arm_func_start ov02_0233B6D0 ov02_0233B6D0: ; 0x0233B6D0 stmdb sp!, {r3, lr} ldr r0, _0233B710 ; =ov02_0235AAB8 mov r1, #0 strb r1, [r0] bl ov02_0233B718 mov r0, #0x13 bl ov02_02335268 mov r0, #0x3c sub r1, r0, #0x3d mov r2, #0 bl ov02_02334C3C mov r0, #0x1b bl ov02_02334E70 ldr r0, _0233B714 ; =ov02_0233B798 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B710: .word ov02_0235AAB8 _0233B714: .word ov02_0233B798 arm_func_end ov02_0233B6D0 arm_func_start ov02_0233B718 ov02_0233B718: ; 0x0233B718 stmdb sp!, {r3, lr} ldr r0, _0233B788 ; =ov02_0235382C ldr r1, _0233B78C ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _0233B790 ; =0x04001008 ldr r1, _0233B794 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _0233B788: .word ov02_0235382C _0233B78C: .word GX_LoadBG2Scr _0233B790: .word 0x04001008 _0233B794: .word 0x0400000A arm_func_end ov02_0233B718 arm_func_start ov02_0233B798 ov02_0233B798: ; 0x0233B798 stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _0233B7E8 ; =ov02_0233B7EC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B7E8: .word ov02_0233B7EC arm_func_end ov02_0233B798 arm_func_start ov02_0233B7EC ov02_0233B7EC: ; 0x0233B7EC stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #3 bl ov02_02334E38 ldr r0, _0233B814 ; =ov02_0233B818 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B814: .word ov02_0233B818 arm_func_end ov02_0233B7EC arm_func_start ov02_0233B818 ov02_0233B818: ; 0x0233B818 stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _0233B83C ; =ov02_0233B840 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B83C: .word ov02_0233B840 arm_func_end ov02_0233B818 arm_func_start ov02_0233B840 ov02_0233B840: ; 0x0233B840 stmdb sp!, {r3, lr} bl ov02_0233B854 bl ov02_0233B88C bl ov02_0233B890 ldmia sp!, {r3, pc} arm_func_end ov02_0233B840 arm_func_start ov02_0233B854 ov02_0233B854: ; 0x0233B854 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234EBBC cmp r0, #0 beq _0233B870 mov r0, #1 bl ov02_023346F0 _0233B870: mov r0, #2 bl ov02_0234EBBC cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} arm_func_end ov02_0233B854 arm_func_start ov02_0233B88C ov02_0233B88C: ; 0x0233B88C bx lr arm_func_end ov02_0233B88C arm_func_start ov02_0233B890 ov02_0233B890: ; 0x0233B890 stmdb sp!, {r3, lr} bl ov02_023346DC cmp r0, #0 beq _0233B8AC cmp r0, #1 beq _0233B8B8 ldmia sp!, {r3, pc} _0233B8AC: mov r0, #7 bl ov02_023480E0 b _0233B8CC _0233B8B8: mov r0, #6 bl ov02_023480E0 ldr r0, _0233B8D8 ; =ov02_0235AAB8 mov r1, #1 strb r1, [r0] _0233B8CC: ldr r0, _0233B8DC ; =ov02_0233B8E0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B8D8: .word ov02_0235AAB8 _0233B8DC: .word ov02_0233B8E0 arm_func_end ov02_0233B890 arm_func_start ov02_0233B8E0 ov02_0233B8E0: ; 0x0233B8E0 stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _0233B8FC ; =ov02_0233B900 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B8FC: .word ov02_0233B900 arm_func_end ov02_0233B8E0 arm_func_start ov02_0233B900 ov02_0233B900: ; 0x0233B900 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_023346AC ldr r0, _0233B95C ; =ov02_0235AAB8 ldrb r0, [r0] cmp r0, #0 bne _0233B93C mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 _0233B93C: mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _0233B960 ; =ov02_0233B964 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233B95C: .word ov02_0235AAB8 _0233B960: .word ov02_0233B964 arm_func_end ov02_0233B900 arm_func_start ov02_0233B964 ov02_0233B964: ; 0x0233B964 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233BA10 ; =ov02_0235AAB8 ldrb r0, [r0] cmp r0, #0 bne _0233B998 mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} _0233B998: bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_0234E02C ldr r0, _0233BA10 ; =ov02_0235AAB8 ldrb r0, [r0] cmp r0, #0 bne _0233B9CC bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 _0233B9CC: mov r0, #0 mov r1, #0x15 bl ov02_0234E424 ldr r0, _0233BA10 ; =ov02_0235AAB8 mov r1, #1 ldrb r0, [r0] cmp r0, #0 mov r0, #0 bne _0233BA00 bl ov02_02338D78 ldr r0, _0233BA14 ; =ov02_0233A904 bl ov02_02338D68 ldmia sp!, {r3, pc} _0233BA00: bl ov02_02338D78 ldr r0, _0233BA18 ; =ov02_0233B4A4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233BA10: .word ov02_0235AAB8 _0233BA14: .word ov02_0233A904 _0233BA18: .word ov02_0233B4A4 arm_func_end ov02_0233B964 arm_func_start ov02_0233BA1C ov02_0233BA1C: ; 0x0233BA1C stmdb sp!, {r3, lr} ldr r0, _0233BA44 ; =ov02_0235AABC mov r1, #0 strb r1, [r0] bl ov02_0233BA4C mov r0, #0x21 bl ov02_02334E70 ldr r0, _0233BA48 ; =ov02_0233BAB8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233BA44: .word ov02_0235AABC _0233BA48: .word ov02_0233BAB8 arm_func_end ov02_0233BA1C arm_func_start ov02_0233BA4C ov02_0233BA4C: ; 0x0233BA4C stmdb sp!, {r3, lr} ldr r0, _0233BAA8 ; =ov02_02353840 ldr r1, _0233BAAC ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r2, _0233BAB0 ; =0x04001008 ldr r1, _0233BAB4 ; =0x0400000A ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r2, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2, #2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _0233BAA8: .word ov02_02353840 _0233BAAC: .word GX_LoadBG2Scr _0233BAB0: .word 0x04001008 _0233BAB4: .word 0x0400000A arm_func_end ov02_0233BA4C arm_func_start ov02_0233BAB8 ov02_0233BAB8: ; 0x0233BAB8 stmdb sp!, {r3, lr} mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _0233BAE8 ; =ov02_0233BAEC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233BAE8: .word ov02_0233BAEC arm_func_end ov02_0233BAB8 arm_func_start ov02_0233BAEC ov02_0233BAEC: ; 0x0233BAEC stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_023390E8 cmp r0, #0 ldmeqia sp!, {r3, pc} ldr r0, _0233BB18 ; =ov02_0233BB1C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233BB18: .word ov02_0233BB1C arm_func_end ov02_0233BAEC arm_func_start ov02_0233BB1C ov02_0233BB1C: ; 0x0233BB1C stmdb sp!, {r3, lr} bl ov02_0233BBD0 bl ov02_0233BB2C ldmia sp!, {r3, pc} arm_func_end ov02_0233BB1C arm_func_start ov02_0233BB2C ov02_0233BB2C: ; 0x0233BB2C bx lr arm_func_end ov02_0233BB2C arm_func_start ov02_0233BB30 ov02_0233BB30: ; 0x0233BB30 stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _0233BB68 ; =ov02_0233BB6C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233BB68: .word ov02_0233BB6C arm_func_end ov02_0233BB30 arm_func_start ov02_0233BB6C ov02_0233BB6C: ; 0x0233BB6C stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234E02C bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 mov r0, #0 mov r1, #0x15 bl ov02_0234E424 mov r0, #0 mov r1, #1 bl ov02_02338D78 ldr r0, _0233BBCC ; =ov02_0233A904 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233BBCC: .word ov02_0233A904 arm_func_end ov02_0233BB6C arm_func_start ov02_0233BBD0 ov02_0233BBD0: ; 0x0233BBD0 stmdb sp!, {r3, lr} ldr r0, _0233BBFC ; =ov02_0235AABC ldrb r1, [r0] add r2, r1, #1 and r1, r2, #0xff strb r2, [r0] cmp r1, #0x78 ldmloia sp!, {r3, pc} ldr r0, _0233BC00 ; =ov02_0233BB30 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233BBFC: .word ov02_0235AABC _0233BC00: .word ov02_0233BB30 arm_func_end ov02_0233BBD0 arm_func_start ov02_0233BC04 ov02_0233BC04: ; 0x0233BC04 stmdb sp!, {r3, lr} bl ov02_0233BC40 mov r0, #0x20 bl ov02_02334E70 mov r0, #0x3c sub r1, r0, #0x3d mov r2, #0 bl ov02_02334C3C ldr r1, _0233BC38 ; =ov02_0235AAC0 strb r0, [r1] ldr r0, _0233BC3C ; =ov02_0233BCC0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233BC38: .word ov02_0235AAC0 _0233BC3C: .word ov02_0233BCC0 arm_func_end ov02_0233BC04 arm_func_start ov02_0233BC40 ov02_0233BC40: ; 0x0233BC40 stmdb sp!, {r3, lr} ldr r0, _0233BCB0 ; =ov02_02353854 ldr r1, _0233BCB4 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _0233BCB8 ; =0x04001008 ldr r1, _0233BCBC ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _0233BCB0: .word ov02_02353854 _0233BCB4: .word GX_LoadBG2Scr _0233BCB8: .word 0x04001008 _0233BCBC: .word 0x0400000A arm_func_end ov02_0233BC40 arm_func_start ov02_0233BCC0 ov02_0233BCC0: ; 0x0233BCC0 stmdb sp!, {r3, lr} mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _0233BD20 ; =ov02_0235AAC0 ldrb r0, [r0] cmp r0, #0 beq _0233BD14 mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 _0233BD14: ldr r0, _0233BD24 ; =ov02_0233BD28 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233BD20: .word ov02_0235AAC0 _0233BD24: .word ov02_0233BD28 arm_func_end ov02_0233BCC0 arm_func_start ov02_0233BD28 ov02_0233BD28: ; 0x0233BD28 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #3 bl ov02_02334E38 ldr r0, _0233BD60 ; =ov02_0233BD64 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233BD60: .word ov02_0233BD64 arm_func_end ov02_0233BD28 arm_func_start ov02_0233BD64 ov02_0233BD64: ; 0x0233BD64 stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_023390E8 cmp r0, #0 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _0233BD94 ; =ov02_0233BD98 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233BD94: .word ov02_0233BD98 arm_func_end ov02_0233BD64 arm_func_start ov02_0233BD98 ov02_0233BD98: ; 0x0233BD98 stmdb sp!, {r3, lr} bl ov02_0233BDAC bl ov02_0233BDE4 bl ov02_0233BDE8 ldmia sp!, {r3, pc} arm_func_end ov02_0233BD98 arm_func_start ov02_0233BDAC ov02_0233BDAC: ; 0x0233BDAC stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234EBBC cmp r0, #0 beq _0233BDC8 mov r0, #1 bl ov02_023346F0 _0233BDC8: mov r0, #2 bl ov02_0234EBBC cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} arm_func_end ov02_0233BDAC arm_func_start ov02_0233BDE4 ov02_0233BDE4: ; 0x0233BDE4 bx lr arm_func_end ov02_0233BDE4 arm_func_start ov02_0233BDE8 ov02_0233BDE8: ; 0x0233BDE8 stmdb sp!, {r3, lr} bl ov02_023346DC cmp r0, #0 beq _0233BE18 cmp r0, #1 ldmneia sp!, {r3, pc} ldr r1, _0233BE38 ; =ov02_0235AAC0 mov r2, #1 mov r0, #6 strb r2, [r1, #1] bl ov02_023480E0 b _0233BE2C _0233BE18: ldr r1, _0233BE38 ; =ov02_0235AAC0 mov r2, #0 mov r0, #7 strb r2, [r1, #1] bl ov02_023480E0 _0233BE2C: ldr r0, _0233BE3C ; =ov02_0233BE40 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233BE38: .word ov02_0235AAC0 _0233BE3C: .word ov02_0233BE40 arm_func_end ov02_0233BDE8 arm_func_start ov02_0233BE40 ov02_0233BE40: ; 0x0233BE40 stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _0233BE5C ; =ov02_0233BE60 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233BE5C: .word ov02_0233BE60 arm_func_end ov02_0233BE40 arm_func_start ov02_0233BE60 ov02_0233BE60: ; 0x0233BE60 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_023346AC ldr r0, _0233BEBC ; =ov02_0235AAC0 ldrb r0, [r0, #1] cmp r0, #0 bne _0233BE9C mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 _0233BE9C: mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _0233BEC0 ; =ov02_0233BEC4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233BEBC: .word ov02_0235AAC0 _0233BEC0: .word ov02_0233BEC4 arm_func_end ov02_0233BE60 arm_func_start ov02_0233BEC4 ov02_0233BEC4: ; 0x0233BEC4 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_0234E02C ldr r0, _0233BF60 ; =ov02_0235AAC0 ldrb r0, [r0, #1] cmp r0, #0 bne _0233BF1C bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 _0233BF1C: mov r0, #0 mov r1, #0x15 bl ov02_0234E424 ldr r0, _0233BF60 ; =ov02_0235AAC0 mov r1, #1 ldrb r0, [r0, #1] cmp r0, #0 mov r0, #0 bne _0233BF50 bl ov02_02338D78 ldr r0, _0233BF64 ; =ov02_0233A904 bl ov02_02338D68 ldmia sp!, {r3, pc} _0233BF50: bl ov02_02338D78 ldr r0, _0233BF68 ; =ov02_0233C364 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233BF60: .word ov02_0235AAC0 _0233BF64: .word ov02_0233A904 _0233BF68: .word ov02_0233C364 arm_func_end ov02_0233BEC4 arm_func_start ov02_0233BF6C ov02_0233BF6C: ; 0x0233BF6C stmdb sp!, {r3, r4, r5, lr} sub sp, sp, #0x28 bl ov02_02339128 mov r5, r0 mov r0, #0 mov r1, r0 bl ov02_0234DDC8 ldr r1, _0233C030 ; =ov02_0235AAC4 mov r2, #0 strb r2, [r1, #1] mov r4, r0 strb r2, [r1] bl ov02_0233C03C mov r0, #0 add r1, sp, #0x10 mov r2, #0x16 bl ArrayFill16 ldrb r2, [r5, #1] add r0, r5, #2 add r1, sp, #0x10 mov r2, r2, lsl #1 bl ArrayCopy16 mov r0, #0x1c str r0, [sp] mov r0, #2 str r0, [sp, #4] mov r0, #0x480 str r0, [sp, #8] add r1, sp, #0x10 str r1, [sp, #0xc] mov r0, r4 mov r1, #8 mov r2, #0x35 mov r3, #0xf0 bl ov02_0234E1E8 mov r0, r4 bl ov02_0234E354 ldr r0, _0233C034 ; =ov02_0233C330 bl ov02_02339104 mov r1, #4 mov r2, #0 mov r0, #0x1d sub r3, r1, #5 str r2, [sp] bl ov02_02349394 ldr r0, _0233C038 ; =ov02_0233C0BC bl ov02_02338D68 add sp, sp, #0x28 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0233C030: .word ov02_0235AAC4 _0233C034: .word ov02_0233C330 _0233C038: .word ov02_0233C0BC arm_func_end ov02_0233BF6C arm_func_start ov02_0233C03C ov02_0233C03C: ; 0x0233C03C stmdb sp!, {r3, lr} ldr r0, _0233C0AC ; =ov02_02353868 ldr r1, _0233C0B0 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _0233C0B4 ; =0x04001008 ldr r1, _0233C0B8 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _0233C0AC: .word ov02_02353868 _0233C0B0: .word GX_LoadBG2Scr _0233C0B4: .word 0x04001008 _0233C0B8: .word 0x0400000A arm_func_end ov02_0233C03C arm_func_start ov02_0233C0BC ov02_0233C0BC: ; 0x0233C0BC stmdb sp!, {r3, lr} mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _0233C0EC ; =ov02_0233C0F0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C0EC: .word ov02_0233C0F0 arm_func_end ov02_0233C0BC arm_func_start ov02_0233C0F0 ov02_0233C0F0: ; 0x0233C0F0 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233C110 ; =ov02_0233C114 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C110: .word ov02_0233C114 arm_func_end ov02_0233C0F0 arm_func_start ov02_0233C114 ov02_0233C114: ; 0x0233C114 stmdb sp!, {r3, lr} bl ov02_02349704 mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} ldr r0, _0233C134 ; =ov02_0233C138 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C134: .word ov02_0233C138 arm_func_end ov02_0233C114 arm_func_start ov02_0233C138 ov02_0233C138: ; 0x0233C138 stmdb sp!, {r3, lr} bl ov02_0233C1A8 bl ov02_0233C1AC bl ov02_02349704 cmp r0, #0 beq _0233C15C cmp r0, #1 beq _0233C174 ldmia sp!, {r3, pc} _0233C15C: ldr r1, _0233C1A0 ; =ov02_0235AAC4 mov r2, #0 mov r0, #7 strb r2, [r1, #1] bl ov02_023480E0 b _0233C188 _0233C174: ldr r1, _0233C1A0 ; =ov02_0235AAC4 mov r2, #1 mov r0, #0xe strb r2, [r1, #1] bl ov02_023480E0 _0233C188: mov r0, #0 bl ov02_02339104 bl ov02_023496C0 ldr r0, _0233C1A4 ; =ov02_0233C1B0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C1A0: .word ov02_0235AAC4 _0233C1A4: .word ov02_0233C1B0 arm_func_end ov02_0233C138 arm_func_start ov02_0233C1A8 ov02_0233C1A8: ; 0x0233C1A8 bx lr arm_func_end ov02_0233C1A8 arm_func_start ov02_0233C1AC ov02_0233C1AC: ; 0x0233C1AC bx lr arm_func_end ov02_0233C1AC arm_func_start ov02_0233C1B0 ov02_0233C1B0: ; 0x0233C1B0 stmdb sp!, {r3, lr} bl ov02_02349718 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233C204 ; =ov02_0235AAC4 ldrb r0, [r0, #1] cmp r0, #0 bne _0233C1E4 mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 _0233C1E4: mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _0233C208 ; =ov02_0233C20C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C204: .word ov02_0235AAC4 _0233C208: .word ov02_0233C20C arm_func_end ov02_0233C1B0 arm_func_start ov02_0233C20C ov02_0233C20C: ; 0x0233C20C stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233C260 ; =ov02_0235AAC4 ldrb r1, [r0] cmp r1, #0 ldreqb r0, [r0, #1] cmpeq r0, #1 bne _0233C250 bl ov02_0233911C b _0233C254 _0233C250: bl ov02_0233908C _0233C254: ldr r0, _0233C264 ; =ov02_0233C268 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C260: .word ov02_0235AAC4 _0233C264: .word ov02_0233C268 arm_func_end ov02_0233C20C arm_func_start ov02_0233C268 ov02_0233C268: ; 0x0233C268 stmdb sp!, {r3, lr} ldr r0, _0233C320 ; =ov02_0235AAC4 ldrb r1, [r0] cmp r1, #0 bne _0233C288 ldrb r0, [r0, #1] cmp r0, #0 bne _0233C294 _0233C288: bl ov02_023390E8 cmp r0, #0 ldmeqia sp!, {r3, pc} _0233C294: mov r0, #0 bl ov02_0234E02C mov r0, #0 mov r1, #0x15 bl ov02_0234E424 ldr r0, _0233C320 ; =ov02_0235AAC4 ldrb r0, [r0, #1] cmp r0, #0 bne _0233C2C8 bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 _0233C2C8: mov r0, #0 mov r1, #1 bl ov02_02338D78 ldr r0, _0233C320 ; =ov02_0235AAC4 ldrb r1, [r0] cmp r1, #0 beq _0233C2F0 ldr r0, _0233C324 ; =ov02_0233BC04 bl ov02_02338D68 ldmia sp!, {r3, pc} _0233C2F0: ldrb r0, [r0, #1] cmp r0, #0 bne _0233C314 mov r0, #1 mov r1, r0 bl ov02_0234E424 ldr r0, _0233C328 ; =ov02_0233A904 bl ov02_02338D68 ldmia sp!, {r3, pc} _0233C314: ldr r0, _0233C32C ; =ov02_0233B01C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C320: .word ov02_0235AAC4 _0233C324: .word ov02_0233BC04 _0233C328: .word ov02_0233A904 _0233C32C: .word ov02_0233B01C arm_func_end ov02_0233C268 arm_func_start ov02_0233C330 ov02_0233C330: ; 0x0233C330 ldr r0, _0233C340 ; =ov02_0235AAC4 mov r1, #1 strb r1, [r0] bx lr .align 2, 0 _0233C340: .word ov02_0235AAC4 arm_func_end ov02_0233C330 arm_func_start ov02_0233C344 ov02_0233C344: ; 0x0233C344 ldr r0, _0233C360 ; =0x027FFFA8 ldrh r0, [r0] and r0, r0, #0x8000 movs r0, r0, asr #0xf movne r0, #1 moveq r0, #0 bx lr .align 2, 0 _0233C360: .word 0x027FFFA8 arm_func_end ov02_0233C344 arm_func_start ov02_0233C364 ov02_0233C364: ; 0x0233C364 stmdb sp!, {r3, lr} ldr r0, _0233C3A4 ; =ov02_0233C6E0 bl ov02_02338FA0 ldr r0, _0233C3A8 ; =ov02_0235AAC8 mov r1, #0 strb r1, [r0] bl ov02_0233C3B0 mov r0, #0x1c bl ov02_02334E70 mov r0, #0 bl ov02_023343DC mov r0, #0xb bl ov02_023480E0 ldr r0, _0233C3AC ; =ov02_0233C430 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C3A4: .word ov02_0233C6E0 _0233C3A8: .word ov02_0235AAC8 _0233C3AC: .word ov02_0233C430 arm_func_end ov02_0233C364 arm_func_start ov02_0233C3B0 ov02_0233C3B0: ; 0x0233C3B0 stmdb sp!, {r3, lr} ldr r0, _0233C420 ; =ov02_0235387C ldr r1, _0233C424 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _0233C428 ; =0x04001008 ldr r1, _0233C42C ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _0233C420: .word ov02_0235387C _0233C424: .word GX_LoadBG2Scr _0233C428: .word 0x04001008 _0233C42C: .word 0x0400000A arm_func_end ov02_0233C3B0 arm_func_start ov02_0233C430 ov02_0233C430: ; 0x0233C430 stmdb sp!, {r3, lr} mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _0233C460 ; =ov02_0233C464 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C460: .word ov02_0233C464 arm_func_end ov02_0233C430 arm_func_start ov02_0233C464 ov02_0233C464: ; 0x0233C464 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #1 bl ov02_02334E38 ldr r0, _0233C48C ; =ov02_0233C490 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C48C: .word ov02_0233C490 arm_func_end ov02_0233C464 arm_func_start ov02_0233C490 ov02_0233C490: ; 0x0233C490 stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} ldr r0, _0233C4B0 ; =ov02_0233C4B4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C4B0: .word ov02_0233C4B4 arm_func_end ov02_0233C490 arm_func_start ov02_0233C4B4 ov02_0233C4B4: ; 0x0233C4B4 stmdb sp!, {r3, lr} bl ov02_0233C4C8 bl ov02_0233C500 bl ov02_0233C504 ldmia sp!, {r3, pc} arm_func_end ov02_0233C4B4 arm_func_start ov02_0233C4C8 ov02_0233C4C8: ; 0x0233C4C8 stmdb sp!, {r3, lr} mov r0, #2 bl ov02_0234EBBC cmp r0, #0 beq _0233C4E8 mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} _0233C4E8: bl ov02_0233C344 cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} arm_func_end ov02_0233C4C8 arm_func_start ov02_0233C500 ov02_0233C500: ; 0x0233C500 bx lr arm_func_end ov02_0233C500 arm_func_start ov02_0233C504 ov02_0233C504: ; 0x0233C504 stmdb sp!, {r3, lr} bl ov02_023346DC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02348148 mov r0, #7 bl ov02_023480E0 ldr r0, _0233C52C ; =ov02_0233C530 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C52C: .word ov02_0233C530 arm_func_end ov02_0233C504 arm_func_start ov02_0233C530 ov02_0233C530: ; 0x0233C530 stmdb sp!, {r3, lr} ldr r0, _0233C560 ; =ov02_0235AAC8 ldrb r0, [r0] cmp r0, #0 bne _0233C548 bl ov02_0233908C _0233C548: bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _0233C564 ; =ov02_0233C568 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C560: .word ov02_0235AAC8 _0233C564: .word ov02_0233C568 arm_func_end ov02_0233C530 arm_func_start ov02_0233C568 ov02_0233C568: ; 0x0233C568 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233C5E0 ; =ov02_0235AAC8 ldrb r0, [r0] cmp r0, #0 bne _0233C598 bl ov02_023390E8 cmp r0, #0 ldmeqia sp!, {r3, pc} _0233C598: bl ov02_023346AC ldr r0, _0233C5E0 ; =ov02_0235AAC8 ldrb r0, [r0] cmp r0, #0 bne _0233C5C0 mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 _0233C5C0: mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _0233C5E4 ; =ov02_0233C5E8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C5E0: .word ov02_0235AAC8 _0233C5E4: .word ov02_0233C5E8 arm_func_end ov02_0233C568 arm_func_start ov02_0233C5E8 ov02_0233C5E8: ; 0x0233C5E8 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233C6D0 ; =ov02_0235AAC8 ldrb r0, [r0] cmp r0, #0 bne _0233C61C mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} _0233C61C: bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, pc} ldr r0, _0233C6D0 ; =ov02_0235AAC8 ldrb r0, [r0] cmp r0, #0 bne _0233C644 bl ov02_023390E8 cmp r0, #0 ldmeqia sp!, {r3, pc} _0233C644: bl ov02_023344AC mov r0, #0 bl ov02_0234E02C ldr r0, _0233C6D0 ; =ov02_0235AAC8 ldrb r0, [r0] cmp r0, #0 bne _0233C670 bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 _0233C670: mov r0, #0 mov r1, #0x15 bl ov02_0234E424 ldr r0, _0233C6D0 ; =ov02_0235AAC8 mov r1, #1 ldrb r0, [r0] cmp r0, #0 bne _0233C6A4 mov r0, #0 bl ov02_02338D78 ldr r0, _0233C6D4 ; =ov02_0233A904 bl ov02_02338D68 ldmia sp!, {r3, pc} _0233C6A4: cmp r0, #2 mov r0, #0 bne _0233C6C0 bl ov02_02338D78 ldr r0, _0233C6D8 ; =ov02_0233BC04 bl ov02_02338D68 ldmia sp!, {r3, pc} _0233C6C0: bl ov02_02338D78 ldr r0, _0233C6DC ; =ov02_0233BF6C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C6D0: .word ov02_0235AAC8 _0233C6D4: .word ov02_0233A904 _0233C6D8: .word ov02_0233BC04 _0233C6DC: .word ov02_0233BF6C arm_func_end ov02_0233C5E8 arm_func_start ov02_0233C6E0 ov02_0233C6E0: ; 0x0233C6E0 stmdb sp!, {r4, lr} mov r4, r0 bl ov02_02348148 cmp r4, #0 bne _0233C70C ldr r1, _0233C734 ; =ov02_0235AAC8 mov r2, #1 mov r0, #0x10 strb r2, [r1] bl ov02_023480E0 b _0233C720 _0233C70C: ldr r1, _0233C734 ; =ov02_0235AAC8 mov r2, #2 mov r0, #0x12 strb r2, [r1] bl ov02_023480E0 _0233C720: mov r0, #0 bl ov02_02339104 ldr r0, _0233C738 ; =ov02_0233C530 bl ov02_02338D68 ldmia sp!, {r4, pc} .align 2, 0 _0233C734: .word ov02_0235AAC8 _0233C738: .word ov02_0233C530 arm_func_end ov02_0233C6E0 arm_func_start ov02_0233C73C ov02_0233C73C: ; 0x0233C73C ldr r0, _0233C758 ; =0x027FFFA8 ldrh r0, [r0] and r0, r0, #0x8000 movs r0, r0, asr #0xf movne r0, #1 moveq r0, #0 bx lr .align 2, 0 _0233C758: .word 0x027FFFA8 arm_func_end ov02_0233C73C arm_func_start ov02_0233C75C ov02_0233C75C: ; 0x0233C75C stmdb sp!, {r3, lr} ldr r0, _0233C7B4 ; =ov02_0235AACC mov r1, #0 strh r1, [r0, #2] bl ov02_0233C7BC bl ov02_023352C4 mov r0, #0x36 sub r1, r0, #0x37 mov r2, #0 bl ov02_02334C3C mov r0, #2 bl ov02_02334DE8 mov r0, #0x22 bl ov02_02334E70 mov r0, #0 bl ov02_023343DC bl ov02_023386D8 mov r0, #0xb bl ov02_023480E0 ldr r0, _0233C7B8 ; =ov02_0233C864 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C7B4: .word ov02_0235AACC _0233C7B8: .word ov02_0233C864 arm_func_end ov02_0233C75C arm_func_start ov02_0233C7BC ov02_0233C7BC: ; 0x0233C7BC stmdb sp!, {r3, lr} ldr r0, _0233C844 ; =ov02_02353890 ldr r1, _0233C848 ; =GX_LoadBG2Char bl ov02_02334DA8 ldr r0, _0233C84C ; =ov02_023538A8 ldr r1, _0233C850 ; =GX_LoadBGPltt bl ov02_02334DA8 ldr r0, _0233C854 ; =ov02_023538C0 ldr r1, _0233C858 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _0233C85C ; =0x04001008 ldr r1, _0233C860 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _0233C844: .word ov02_02353890 _0233C848: .word GX_LoadBG2Char _0233C84C: .word ov02_023538A8 _0233C850: .word GX_LoadBGPltt _0233C854: .word ov02_023538C0 _0233C858: .word GX_LoadBG2Scr _0233C85C: .word 0x04001008 _0233C860: .word 0x0400000A arm_func_end ov02_0233C7BC arm_func_start ov02_0233C864 ov02_0233C864: ; 0x0233C864 stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _0233C8B4 ; =ov02_0233C8B8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C8B4: .word ov02_0233C8B8 arm_func_end ov02_0233C864 arm_func_start ov02_0233C8B8 ov02_0233C8B8: ; 0x0233C8B8 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #1 bl ov02_02334E38 ldr r0, _0233C8F0 ; =ov02_0233C8F4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C8F0: .word ov02_0233C8F4 arm_func_end ov02_0233C8B8 arm_func_start ov02_0233C8F4 ov02_0233C8F4: ; 0x0233C8F4 stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} ldr r1, _0233C930 ; =ov02_0233CC14 mov r0, #1 mov r2, #0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _0233C934 ; =ov02_0235AACC str r0, [r1, #4] ldr r0, _0233C938 ; =ov02_0233C93C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233C930: .word ov02_0233CC14 _0233C934: .word ov02_0235AACC _0233C938: .word ov02_0233C93C arm_func_end ov02_0233C8F4 arm_func_start ov02_0233C93C ov02_0233C93C: ; 0x0233C93C stmdb sp!, {r3, lr} bl ov02_0233CA10 bl ov02_0233CA48 bl ov02_0233CA4C bl ov02_02338838 cmp r0, #0 ldmeqia sp!, {r3, pc} cmp r0, #1 beq _0233C96C cmp r0, #2 beq _0233C9A0 ldmia sp!, {r3, pc} _0233C96C: ldr r2, _0233CA04 ; =ov02_0235AACC ldr r1, [r2, #4] cmp r1, #0 ldmeqia sp!, {r3, pc} mov r0, #1 strb r0, [r2] bl ov02_0234FB60 ldr r1, _0233CA04 ; =ov02_0235AACC mov r2, #0 ldr r0, _0233CA08 ; =ov02_0233CC7C str r2, [r1, #4] bl ov02_02338D68 ldmia sp!, {r3, pc} _0233C9A0: ldr r0, _0233CA04 ; =ov02_0235AACC ldr r0, [r0, #4] cmp r0, #0 ldmeqia sp!, {r3, pc} bl ov02_02348148 mov r1, #1 mov ip, #0 mov r2, r1 sub r3, r1, #2 mov r0, #0xc str ip, [sp] bl ov02_02349394 mov r0, #9 bl ov02_023480E0 bl ov02_02334768 ldr r1, _0233CA04 ; =ov02_0235AACC mov r0, #1 ldr r1, [r1, #4] bl ov02_0234FB60 ldr r1, _0233CA04 ; =ov02_0235AACC mov r2, #0 ldr r0, _0233CA0C ; =ov02_0233CC30 str r2, [r1, #4] bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233CA04: .word ov02_0235AACC _0233CA08: .word ov02_0233CC7C _0233CA0C: .word ov02_0233CC30 arm_func_end ov02_0233C93C arm_func_start ov02_0233CA10 ov02_0233CA10: ; 0x0233CA10 stmdb sp!, {r3, lr} mov r0, #2 bl ov02_0234EBBC cmp r0, #0 beq _0233CA30 mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} _0233CA30: bl ov02_0233C73C cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} arm_func_end ov02_0233CA10 arm_func_start ov02_0233CA48 ov02_0233CA48: ; 0x0233CA48 bx lr arm_func_end ov02_0233CA48 arm_func_start ov02_0233CA4C ov02_0233CA4C: ; 0x0233CA4C stmdb sp!, {r3, lr} bl ov02_023346DC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233CA90 ; =ov02_0235AACC ldr r1, [r0, #4] cmp r1, #0 ldmeqia sp!, {r3, pc} mov r0, #1 bl ov02_0234FB40 ldr r0, _0233CA90 ; =ov02_0235AACC mov r1, #0 str r1, [r0, #4] bl ov02_02334768 ldr r0, _0233CA94 ; =ov02_0233CCC8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233CA90: .word ov02_0235AACC _0233CA94: .word ov02_0233CCC8 arm_func_end ov02_0233CA4C arm_func_start ov02_0233CA98 ov02_0233CA98: ; 0x0233CA98 stmdb sp!, {r3, lr} bl ov02_02334768 ldr r0, _0233CACC ; =ov02_0235AACC ldr r1, [r0, #4] cmp r1, #0 beq _0233CAB8 mov r0, #1 bl ov02_0234FB60 _0233CAB8: mov r0, #8 bl ov02_0234DAE0 ldr r0, _0233CAD0 ; =ov02_0233CAD4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233CACC: .word ov02_0235AACC _0233CAD0: .word ov02_0233CAD4 arm_func_end ov02_0233CA98 arm_func_start ov02_0233CAD4 ov02_0233CAD4: ; 0x0233CAD4 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_023346AC ldr r0, _0233CB30 ; =ov02_0235AACC ldrb r0, [r0] cmp r0, #0 bne _0233CB10 mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 _0233CB10: mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _0233CB34 ; =ov02_0233CB38 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233CB30: .word ov02_0235AACC _0233CB34: .word ov02_0233CB38 arm_func_end ov02_0233CAD4 arm_func_start ov02_0233CB38 ov02_0233CB38: ; 0x0233CB38 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233CC08 ; =ov02_0235AACC ldrb r0, [r0] cmp r0, #0 bne _0233CB6C mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} _0233CB6C: bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, pc} ldr r0, _0233CC08 ; =ov02_0235AACC ldrb r0, [r0] cmp r0, #0 movne r0, #1 moveq r0, #0 bl ov02_023387E8 bl ov02_023344AC mov r0, #0 bl ov02_0234E02C ldr r0, _0233CC08 ; =ov02_0235AACC ldrb r0, [r0] cmp r0, #0 bne _0233CBBC bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 _0233CBBC: mov r0, #0 mov r1, #0x15 bl ov02_0234E424 ldr r0, _0233CC08 ; =ov02_0235AACC ldrb r0, [r0] cmp r0, #0 bne _0233CBF0 mov r0, #2 mov r1, #1 bl ov02_02338D78 ldr r0, _0233CC0C ; =ov02_02344AF0 bl ov02_02338D68 ldmia sp!, {r3, pc} _0233CBF0: mov r0, #0 mov r1, r0 bl ov02_02338D78 ldr r0, _0233CC10 ; =ov02_0233CCF8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233CC08: .word ov02_0235AACC _0233CC0C: .word ov02_02344AF0 _0233CC10: .word ov02_0233CCF8 arm_func_end ov02_0233CB38 arm_func_start ov02_0233CC14 ov02_0233CC14: ; 0x0233CC14 stmdb sp!, {r3, lr} bl ov02_0234E90C mov r0, #0 bl ov02_0234F9E8 bl ov02_0233CA10 bl ov02_0233CA4C ldmia sp!, {r3, pc} arm_func_end ov02_0233CC14 arm_func_start ov02_0233CC30 ov02_0233CC30: ; 0x0233CC30 stmdb sp!, {r3, lr} bl ov02_02349704 cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #6 bl ov02_023480E0 bl ov02_023496C0 ldr r0, _0233CC58 ; =ov02_0233CC5C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233CC58: .word ov02_0233CC5C arm_func_end ov02_0233CC30 arm_func_start ov02_0233CC5C ov02_0233CC5C: ; 0x0233CC5C stmdb sp!, {r3, lr} bl ov02_02349718 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233CC78 ; =ov02_0233CA98 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233CC78: .word ov02_0233CA98 arm_func_end ov02_0233CC5C arm_func_start ov02_0233CC7C ov02_0233CC7C: ; 0x0233CC7C stmdb sp!, {r3, lr} bl ov02_0233CA10 bl ov02_0233CA48 bl ov02_0233CA4C ldr r1, _0233CCBC ; =ov02_0235AACC ldr r0, _0233CCC0 ; =0x00000438 ldrh r2, [r1, #2] add r2, r2, #1 strh r2, [r1, #2] ldrh r1, [r1, #2] cmp r1, r0 ldmloia sp!, {r3, pc} bl ov02_02348148 ldr r0, _0233CCC4 ; =ov02_0233CA98 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233CCBC: .word ov02_0235AACC _0233CCC0: .word 0x00000438 _0233CCC4: .word ov02_0233CA98 arm_func_end ov02_0233CC7C arm_func_start ov02_0233CCC8 ov02_0233CCC8: ; 0x0233CCC8 stmdb sp!, {r3, lr} bl ov02_02348148 mov r0, #7 bl ov02_023480E0 ldr r1, _0233CCF0 ; =ov02_0235AACC mov r2, #0 ldr r0, _0233CCF4 ; =ov02_0233CA98 strb r2, [r1] bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233CCF0: .word ov02_0235AACC _0233CCF4: .word ov02_0233CA98 arm_func_end ov02_0233CCC8 arm_func_start ov02_0233CCF8 ov02_0233CCF8: ; 0x0233CCF8 stmdb sp!, {r3, lr} ldr r0, _0233CD2C ; =ov02_0235AAD4 mov r1, #0 strb r1, [r0] bl ov02_0233CD34 bl ov02_023352C4 mov r0, #0x23 bl ov02_02334E70 mov r0, #0x10 bl ov02_023480E0 ldr r0, _0233CD30 ; =ov02_0233CDA0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233CD2C: .word ov02_0235AAD4 _0233CD30: .word ov02_0233CDA0 arm_func_end ov02_0233CCF8 arm_func_start ov02_0233CD34 ov02_0233CD34: ; 0x0233CD34 stmdb sp!, {r3, lr} ldr r0, _0233CD90 ; =ov02_023538D4 ldr r1, _0233CD94 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r2, _0233CD98 ; =0x04001008 ldr r1, _0233CD9C ; =0x0400000A ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r2, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2, #2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _0233CD90: .word ov02_023538D4 _0233CD94: .word GX_LoadBG2Scr _0233CD98: .word 0x04001008 _0233CD9C: .word 0x0400000A arm_func_end ov02_0233CD34 arm_func_start ov02_0233CDA0 ov02_0233CDA0: ; 0x0233CDA0 stmdb sp!, {r3, lr} mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _0233CDD0 ; =ov02_0233CDD4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233CDD0: .word ov02_0233CDD4 arm_func_end ov02_0233CDA0 arm_func_start ov02_0233CDD4 ov02_0233CDD4: ; 0x0233CDD4 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233CDF4 ; =ov02_0233CDF8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233CDF4: .word ov02_0233CDF8 arm_func_end ov02_0233CDD4 arm_func_start ov02_0233CDF8 ov02_0233CDF8: ; 0x0233CDF8 stmdb sp!, {r3, lr} bl ov02_0233CEB8 bl ov02_0233CE08 ldmia sp!, {r3, pc} arm_func_end ov02_0233CDF8 arm_func_start ov02_0233CE08 ov02_0233CE08: ; 0x0233CE08 bx lr arm_func_end ov02_0233CE08 arm_func_start ov02_0233CE0C ov02_0233CE0C: ; 0x0233CE0C stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _0233CE44 ; =ov02_0233CE48 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233CE44: .word ov02_0233CE48 arm_func_end ov02_0233CE0C arm_func_start ov02_0233CE48 ov02_0233CE48: ; 0x0233CE48 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234E02C bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 mov r0, #0 mov r1, #0x15 bl ov02_0234E424 mov r0, #0 mov r1, r0 bl ov02_02338D78 mov r0, #0 mov r1, #1 bl ov02_02338DB4 ldr r0, _0233CEB4 ; =ov02_02345968 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233CEB4: .word ov02_02345968 arm_func_end ov02_0233CE48 arm_func_start ov02_0233CEB8 ov02_0233CEB8: ; 0x0233CEB8 stmdb sp!, {r3, lr} ldr r0, _0233CEE4 ; =ov02_0235AAD4 ldrb r1, [r0] add r2, r1, #1 and r1, r2, #0xff strb r2, [r0] cmp r1, #0x78 ldmloia sp!, {r3, pc} ldr r0, _0233CEE8 ; =ov02_0233CE0C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233CEE4: .word ov02_0235AAD4 _0233CEE8: .word ov02_0233CE0C arm_func_end ov02_0233CEB8 arm_func_start ov02_0233CEEC ov02_0233CEEC: ; 0x0233CEEC stmdb sp!, {r3, lr} mov r0, #0x5c mov r1, #4 bl ov02_0234E7B4 ldr r2, _0233CFB8 ; =ov02_0235AAD8 mov r1, #0 str r0, [r2, #4] add r0, sp, #0 bl ov02_02338DC8 ldr r0, [sp] cmp r0, #0 bne _0233CF2C ldr r0, _0233CFB8 ; =ov02_0235AAD8 mov r1, #0 strb r1, [r0] strh r1, [r0, #2] _0233CF2C: ldr r0, _0233CFB8 ; =ov02_0235AAD8 ldr r0, [r0, #4] bl ov02_0234722C ldr r1, _0233CFB8 ; =ov02_0235AAD8 ldr r1, [r1, #4] strb r0, [r1, #0x51] bl ov02_0233CFC4 bl ov02_023352C4 mov r0, #0x34 sub r1, r0, #0x35 mov r2, #0 bl ov02_02334C3C mov r0, #2 bl ov02_02334DE8 bl ov02_0233D118 bl ov02_0233D1C0 mov r0, #0 mov r1, r0 bl ov02_0234DDC8 ldr r2, _0233CFB8 ; =ov02_0235AAD8 ldr r1, _0233CFBC ; =ov02_0233E118 ldr r3, [r2, #4] mov r2, #0 str r0, [r3, #0xc] mov r0, #1 mov r3, #0x6e bl ov02_0234FA98 ldr r1, _0233CFB8 ; =ov02_0235AAD8 ldr r1, [r1, #4] str r0, [r1, #0x3c] bl ov02_0233DC5C bl ov02_0233E174 ldr r0, _0233CFC0 ; =ov02_0233D334 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233CFB8: .word ov02_0235AAD8 _0233CFBC: .word ov02_0233E118 _0233CFC0: .word ov02_0233D334 arm_func_end ov02_0233CEEC arm_func_start ov02_0233CFC4 ov02_0233CFC4: ; 0x0233CFC4 stmdb sp!, {r3, lr} sub sp, sp, #0x30 ldr r3, _0233D0FC ; =ov02_023529BF add lr, sp, #0x16 mov r2, #0xc _0233CFD8: ldrb r1, [r3] ldrb r0, [r3, #1] add r3, r3, #2 strb r1, [lr] strb r0, [lr, #1] add lr, lr, #2 subs r2, r2, #1 bne _0233CFD8 ldrb r0, [r3] ldr ip, _0233D100 ; =ov02_023529A9 add r3, sp, #0 strb r0, [lr] mov r2, #0xb _0233D00C: ldrb r1, [ip] ldrb r0, [ip, #1] add ip, ip, #2 strb r1, [r3] strb r0, [r3, #1] add r3, r3, #2 subs r2, r2, #1 bne _0233D00C ldr r0, _0233D104 ; =ov02_023538E8 ldr r1, _0233D108 ; =GX_LoadBG3Scr bl ov02_02334DA8 add r0, sp, #0x16 bl ov02_02334D48 mov r1, #0 mov r2, #4 bl ov02_0234CE84 ldr r1, _0233D10C ; =ov02_0235AAD8 ldr r2, [r1, #4] str r0, [r2, #4] ldr r0, [r1, #4] ldr r0, [r0, #4] bl ov02_02346750 bl ov02_023467DC add r0, sp, #0 bl ov02_02334D48 mov r1, #0 mov r2, #4 bl ov02_0234CE84 ldr r1, _0233D10C ; =ov02_0235AAD8 ldr r3, _0233D110 ; =0x04001008 ldr r1, [r1, #4] sub r2, r3, #0x1000 str r0, [r1, #8] ldrh r0, [r3] ldr r1, _0233D114 ; =0x0400000A bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #2 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldrh r0, [r1, #4] bic r0, r0, #3 orr r0, r0, #2 strh r0, [r1, #4] add sp, sp, #0x30 ldmia sp!, {r3, pc} .align 2, 0 _0233D0FC: .word ov02_023529BF _0233D100: .word ov02_023529A9 _0233D104: .word ov02_023538E8 _0233D108: .word GX_LoadBG3Scr _0233D10C: .word ov02_0235AAD8 _0233D110: .word 0x04001008 _0233D114: .word 0x0400000A arm_func_end ov02_0233CFC4 arm_func_start ov02_0233D118 ov02_0233D118: ; 0x0233D118 stmdb sp!, {r3, r4, lr} sub sp, sp, #4 ldr r2, _0233D1BC ; =ov02_0235AAD8 mov r1, #0x1c ldr ip, [r2, #4] mov r0, #0 ldrb r3, [ip, #0x51] sub r3, r3, #4 mul r1, r3, r1 strh r1, [ip, #0x40] ldr r2, [r2, #4] ldrb r1, [r2, #0x51] cmp r1, #4 movls r4, r0 strlsb r0, [r2, #0x53] bls _0233D178 cmp r1, #8 movhi r1, #0x37 strhib r1, [r2, #0x53] movhi r4, #2 bhi _0233D178 mov r1, #0x1f strb r1, [r2, #0x53] mov r4, #1 _0233D178: cmp r4, #0 beq _0233D19C ldr r0, _0233D1BC ; =ov02_0235AAD8 ldr r1, [r0, #4] ldrh r2, [r0, #2] ldrb r0, [r1, #0x53] ldrh r1, [r1, #0x40] mul r0, r2, r0 bl FX_DivS32 _0233D19C: str r0, [sp] mov r0, r4 mov r1, #0x55 mov r2, #0xec mov r3, #0x3f bl ov02_02346964 add sp, sp, #4 ldmia sp!, {r3, r4, pc} .align 2, 0 _0233D1BC: .word ov02_0235AAD8 arm_func_end ov02_0233D118 arm_func_start ov02_0233D1C0 ov02_0233D1C0: ; 0x0233D1C0 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} ldr r0, _0233D324 ; =ov02_0235AAD8 mov sb, #0 ldr r0, [r0, #4] ldrb r8, [r0, #0x51] cmp r8, #5 movgt r8, #5 cmp r8, #0 ble _0233D234 ldr sl, _0233D324 ; =ov02_0235AAD8 mov r7, sb mov r6, #0x2e mov r5, sb mov r4, #0x18 _0233D1F8: mov r0, r7 mov r1, r6 bl ov02_0234D6AC ldr r2, [sl, #4] mov r1, r4 add r2, r2, sb, lsl #2 str r0, [r2, #0x10] mov r0, r5 bl ov02_0234D6AC ldr r1, [sl, #4] add r1, r1, sb, lsl #2 add sb, sb, #1 str r0, [r1, #0x24] cmp sb, r8 blt _0233D1F8 _0233D234: mov r6, #0 ldr r5, _0233D328 ; =ov02_02352A28 ldr sb, _0233D324 ; =ov02_0235AAD8 ldr r7, _0233D32C ; =0x000003FF mov r4, r6 _0233D248: ldr r0, [sb, #4] ldrb r1, [r5], #1 ldr r2, [r0, #0x10] mov r0, r4 bl ov02_0234D618 ldr r0, [sb, #4] ldr r1, [r0, #0x10] add r0, r0, r6, lsl #1 ldrh r1, [r1, #4] add r6, r6, #1 cmp r6, #3 and r1, r1, r7 strh r1, [r0, #0x42] blo _0233D248 mov r6, #0 ldr r5, _0233D330 ; =ov02_02352A2C ldr sb, _0233D324 ; =ov02_0235AAD8 ldr r7, _0233D32C ; =0x000003FF mov r4, r6 _0233D294: ldr r0, [sb, #4] ldrb r1, [r5], #1 ldr r2, [r0, #0x24] mov r0, r4 bl ov02_0234D618 ldr r0, [sb, #4] ldr r1, [r0, #0x24] add r0, r0, r6, lsl #1 ldrh r1, [r1, #4] add r6, r6, #1 cmp r6, #4 and r1, r1, r7 strh r1, [r0, #0x48] blo _0233D294 cmp r8, #0 mov r0, #0 ldmleia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} ldr r1, _0233D324 ; =ov02_0235AAD8 _0233D2DC: ldr r2, [r1, #4] add r2, r2, r0, lsl #2 ldr r3, [r2, #0x10] ldrh r2, [r3, #4] bic r2, r2, #0xc00 orr r2, r2, #0xc00 strh r2, [r3, #4] ldr r2, [r1, #4] add r2, r2, r0, lsl #2 ldr r3, [r2, #0x24] add r0, r0, #1 ldrh r2, [r3, #4] cmp r0, r8 bic r2, r2, #0xc00 orr r2, r2, #0xc00 strh r2, [r3, #4] blt _0233D2DC ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} .align 2, 0 _0233D324: .word ov02_0235AAD8 _0233D328: .word ov02_02352A28 _0233D32C: .word 0x000003FF _0233D330: .word ov02_02352A2C arm_func_end ov02_0233D1C0 arm_func_start ov02_0233D334 ov02_0233D334: ; 0x0233D334 stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #2 mov r1, #0 mov r2, #0x1d mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 mov r0, #0 mov r1, #0x1d bl ov02_0234E3D0 ldr r0, _0233D384 ; =ov02_0233D388 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233D384: .word ov02_0233D388 arm_func_end ov02_0233D334 arm_func_start ov02_0233D388 ov02_0233D388: ; 0x0233D388 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_02334E38 ldr r0, _0233D3C0 ; =ov02_0233D3C4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233D3C0: .word ov02_0233D3C4 arm_func_end ov02_0233D388 arm_func_start ov02_0233D3C4 ov02_0233D3C4: ; 0x0233D3C4 stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _0233D3E8 ; =ov02_0233D3EC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233D3E8: .word ov02_0233D3EC arm_func_end ov02_0233D3C4 arm_func_start ov02_0233D3EC ov02_0233D3EC: ; 0x0233D3EC stmdb sp!, {r3, lr} bl ov02_0233D400 bl ov02_0233D654 bl ov02_0233D8C4 ldmia sp!, {r3, pc} arm_func_end ov02_0233D3EC arm_func_start ov02_0233D400 ov02_0233D400: ; 0x0233D400 stmdb sp!, {r3, r4, r5, lr} ldr r0, _0233D648 ; =ov02_0235AAD8 ldr r1, [r0, #4] ldr r0, [r1, #0x38] cmp r0, #0 ldreqb r0, [r1, #0x57] cmpeq r0, #0 ldmneia sp!, {r3, r4, r5, pc} ldr r0, _0233D64C ; =ov02_02352F34 bl ov02_0234ED04 cmp r0, #0 beq _0233D498 ldr r0, _0233D648 ; =ov02_0235AAD8 mvn r1, #0 ldr r0, [r0, #4] ldr r5, _0233D650 ; =ov02_023529D8 strb r1, [r0, #0x50] mov r4, #0 _0233D448: mov r0, r5 bl ov02_0234ED04 cmp r0, #0 beq _0233D488 cmp r4, #4 bge _0233D470 ldr r0, _0233D648 ; =ov02_0235AAD8 ldr r0, [r0, #4] strb r4, [r0, #0x50] b _0233D498 _0233D470: mov r0, #1 bl ov02_023346F0 ldr r0, _0233D648 ; =ov02_0235AAD8 strb r4, [r0] bl ov02_0233E174 ldmia sp!, {r3, r4, r5, pc} _0233D488: add r4, r4, #1 cmp r4, #5 add r5, r5, #8 blo _0233D448 _0233D498: ldr r0, _0233D64C ; =ov02_02352F34 bl ov02_0234EE14 cmp r0, #0 beq _0233D514 ldr r4, _0233D650 ; =ov02_023529D8 mov r5, #0 _0233D4B0: mov r0, r4 bl ov02_0234EE14 cmp r0, #0 beq _0233D504 ldr r0, _0233D648 ; =ov02_0235AAD8 ldr r1, [r0, #4] ldrsb r0, [r1, #0x50] cmp r0, r5 bne _0233D514 ldrb r0, [r1, #0x51] cmp r5, r0 blt _0233D4EC mov r0, #9 bl ov02_023480E0 b _0233D514 _0233D4EC: mov r0, #1 bl ov02_023346F0 ldr r0, _0233D648 ; =ov02_0235AAD8 strb r5, [r0] bl ov02_0233E174 ldmia sp!, {r3, r4, r5, pc} _0233D504: add r5, r5, #1 cmp r5, #4 add r4, r4, #8 blt _0233D4B0 _0233D514: mov r0, #1 bl ov02_0234EBBC cmp r0, #0 beq _0233D534 mov r0, #1 bl ov02_023346F0 bl ov02_02346AC4 ldmia sp!, {r3, r4, r5, pc} _0233D534: mov r0, #2 bl ov02_0234EBBC cmp r0, #0 beq _0233D550 mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, r4, r5, pc} _0233D550: mov r0, #0x200 bl ov02_0234EBFC cmp r0, #0 beq _0233D568 bl ov02_0233E380 ldmia sp!, {r3, r4, r5, pc} _0233D568: mov r0, #0x200 bl ov02_0234EC3C cmp r0, #0 beq _0233D58C ldr r0, _0233D648 ; =ov02_0235AAD8 mov r1, #0 ldr r0, [r0, #4] strb r1, [r0, #0x59] ldmia sp!, {r3, r4, r5, pc} _0233D58C: mov r0, #0x100 bl ov02_0234EBFC cmp r0, #0 beq _0233D5A4 bl ov02_0233E30C ldmia sp!, {r3, r4, r5, pc} _0233D5A4: mov r0, #0x100 bl ov02_0234EC3C cmp r0, #0 beq _0233D5C8 ldr r0, _0233D648 ; =ov02_0235AAD8 mov r1, #0 ldr r0, [r0, #4] strb r1, [r0, #0x59] ldmia sp!, {r3, r4, r5, pc} _0233D5C8: mov r0, #0x40 bl ov02_0234EBFC cmp r0, #0 beq _0233D5E4 mov r0, #1 bl ov02_0233E1C0 ldmia sp!, {r3, r4, r5, pc} _0233D5E4: mov r0, #0x40 bl ov02_0234EC3C cmp r0, #0 beq _0233D608 ldr r0, _0233D648 ; =ov02_0235AAD8 mov r1, #0 ldr r0, [r0, #4] strb r1, [r0, #0x59] ldmia sp!, {r3, r4, r5, pc} _0233D608: mov r0, #0x80 bl ov02_0234EBFC cmp r0, #0 beq _0233D624 mov r0, #3 bl ov02_0233E1C0 ldmia sp!, {r3, r4, r5, pc} _0233D624: mov r0, #0x80 bl ov02_0234EC3C cmp r0, #0 ldmeqia sp!, {r3, r4, r5, pc} ldr r0, _0233D648 ; =ov02_0235AAD8 mov r1, #0 ldr r0, [r0, #4] strb r1, [r0, #0x59] ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0233D648: .word ov02_0235AAD8 _0233D64C: .word ov02_02352F34 _0233D650: .word ov02_023529D8 arm_func_end ov02_0233D400 arm_func_start ov02_0233D654 ov02_0233D654: ; 0x0233D654 stmdb sp!, {r3, lr} ldr r0, _0233D8B8 ; =ov02_0235AAD8 ldr r1, [r0, #4] ldr r0, [r1, #0x38] cmp r0, #0 ldmneia sp!, {r3, pc} ldrb r0, [r1, #0x55] cmp r0, #0 subne r0, r0, #1 strneb r0, [r1, #0x55] bl ov02_02346A8C cmp r0, #7 addls pc, pc, r0, lsl #2 ldmia sp!, {r3, pc} _0233D68C: ; jump table ldmia sp!, {r3, pc} ; case 0 b _0233D6AC ; case 1 b _0233D6C4 ; case 2 b _0233D718 ; case 3 b _0233D7C4 ; case 4 b _0233D8A4 ; case 5 b _0233D82C ; case 6 b _0233D8A4 ; case 7 _0233D6AC: ldr r0, _0233D8B8 ; =ov02_0235AAD8 mov r1, #1 ldr r0, [r0, #4] strb r1, [r0, #0x57] bl ov02_02334768 ldmia sp!, {r3, pc} _0233D6C4: ldr r0, _0233D8B8 ; =ov02_0235AAD8 ldr r0, [r0, #4] ldrb r0, [r0, #0x55] cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_0233519C bl ov02_02346A78 ldr r1, _0233D8B8 ; =ov02_0235AAD8 ldr r1, [r1, #4] ldrh r2, [r1, #0x40] ldrb r1, [r1, #0x53] mul r0, r2, r0 bl FX_DivS32 ldr r1, _0233D8B8 ; =ov02_0235AAD8 strh r0, [r1, #2] bl ov02_0233DC5C ldr r0, _0233D8B8 ; =ov02_0235AAD8 mov r1, #4 ldr r0, [r0, #4] strb r1, [r0, #0x55] ldmia sp!, {r3, pc} _0233D718: ldr r0, _0233D8B8 ; =ov02_0235AAD8 mov r1, #0 ldr r0, [r0, #4] strb r1, [r0, #0x57] bl ov02_02334750 bl ov02_02346A78 ldr r1, _0233D8B8 ; =ov02_0235AAD8 ldr r1, [r1, #4] ldrh r2, [r1, #0x40] ldrb r1, [r1, #0x53] mul r0, r2, r0 bl FX_DivS32 ldr r1, _0233D8B8 ; =ov02_0235AAD8 strh r0, [r1, #2] mov r0, #0x13 bl ov02_023480E0 bl ov02_0233DC5C ldr r0, _0233D8B8 ; =ov02_0235AAD8 mov r1, #0x1c ldrh r0, [r0, #2] bl FX_ModS32 cmp r0, #0 bne _0233D77C bl ov02_0233E174 ldmia sp!, {r3, pc} _0233D77C: cmp r0, #0xe mov r0, #0 mov r3, #0x78 bge _0233D7A8 ldr r1, _0233D8BC ; =ov02_0233DFC4 mov r2, r0 bl ov02_0234FA98 ldr r1, _0233D8B8 ; =ov02_0235AAD8 ldr r1, [r1, #4] str r0, [r1, #0x38] ldmia sp!, {r3, pc} _0233D7A8: ldr r1, _0233D8C0 ; =ov02_0233E080 mov r2, r0 bl ov02_0234FA98 ldr r1, _0233D8B8 ; =ov02_0235AAD8 ldr r1, [r1, #4] str r0, [r1, #0x38] ldmia sp!, {r3, pc} _0233D7C4: ldr r0, _0233D8B8 ; =ov02_0235AAD8 ldrh r1, [r0, #2] cmp r1, #0 bne _0233D800 ldr r0, [r0, #4] ldrb r0, [r0, #0x58] cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #9 bl ov02_023480E0 ldr r0, _0233D8B8 ; =ov02_0235AAD8 mov r1, #1 ldr r0, [r0, #4] strb r1, [r0, #0x58] ldmia sp!, {r3, pc} _0233D800: mov r0, #0x13 bl ov02_023480E0 mov r0, #0 ldr r1, _0233D8BC ; =ov02_0233DFC4 mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _0233D8B8 ; =ov02_0235AAD8 ldr r1, [r1, #4] str r0, [r1, #0x38] ldmia sp!, {r3, pc} _0233D82C: ldr r0, _0233D8B8 ; =ov02_0235AAD8 ldr r2, [r0, #4] ldrb r1, [r2, #0x51] cmp r1, #4 bls _0233D850 ldrh r1, [r0, #2] ldrh r0, [r2, #0x40] cmp r1, r0 bne _0233D878 _0233D850: ldrb r0, [r2, #0x58] cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #9 bl ov02_023480E0 ldr r0, _0233D8B8 ; =ov02_0235AAD8 mov r1, #1 ldr r0, [r0, #4] strb r1, [r0, #0x58] ldmia sp!, {r3, pc} _0233D878: mov r0, #0x13 bl ov02_023480E0 mov r0, #0 ldr r1, _0233D8C0 ; =ov02_0233E080 mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _0233D8B8 ; =ov02_0235AAD8 ldr r1, [r1, #4] str r0, [r1, #0x38] ldmia sp!, {r3, pc} _0233D8A4: ldr r0, _0233D8B8 ; =ov02_0235AAD8 mov r1, #0 ldr r0, [r0, #4] strb r1, [r0, #0x58] ldmia sp!, {r3, pc} .align 2, 0 _0233D8B8: .word ov02_0235AAD8 _0233D8BC: .word ov02_0233DFC4 _0233D8C0: .word ov02_0233E080 arm_func_end ov02_0233D654 arm_func_start ov02_0233D8C4 ov02_0233D8C4: ; 0x0233D8C4 stmdb sp!, {r3, lr} ldr r0, _0233D9C4 ; =ov02_0235AAD8 ldr r1, [r0, #4] ldr r0, [r1, #0x38] cmp r0, #0 ldreqb r0, [r1, #0x57] cmpeq r0, #0 ldmneia sp!, {r3, pc} bl ov02_023346DC cmp r0, #0 beq _0233D8FC cmp r0, #1 beq _0233D908 ldmia sp!, {r3, pc} _0233D8FC: mov r0, #7 bl ov02_023480E0 b _0233D9B8 _0233D908: ldr r0, _0233D9C4 ; =ov02_0235AAD8 ldrb r1, [r0] cmp r1, #4 bne _0233D934 ldr r1, [r0, #4] mov r2, #1 mov r0, #6 strb r2, [r1, #0x54] bl ov02_023480E0 bl ov02_0233E404 b _0233D9B8 _0233D934: ldrh r0, [r0, #2] mov r1, #0x1c bl FX_DivS32 ldr r2, _0233D9C4 ; =ov02_0235AAD8 mov r1, #0x2a ldrb lr, [r2] ldr ip, [r2, #4] ldr r3, [ip] add lr, lr, r0 mla r0, lr, r1, r3 ldrb r0, [r0, #0x28] cmp r0, #2 bne _0233D9A0 mov r0, #9 bl ov02_023480E0 bl ov02_02346AC4 bl ov02_02334768 mov r1, #1 mov r0, #0 str r0, [sp] mov r2, r1 mov r0, #0xe sub r3, r1, #2 bl ov02_02349394 ldr r0, _0233D9C8 ; =ov02_0233E434 bl ov02_02338D68 ldmia sp!, {r3, pc} _0233D9A0: mov r0, #1 strb r0, [ip, #0x54] ldr r1, [r2, #4] mov r0, #6 strb lr, [r1, #0x52] bl ov02_023480E0 _0233D9B8: ldr r0, _0233D9CC ; =ov02_0233D9D0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233D9C4: .word ov02_0235AAD8 _0233D9C8: .word ov02_0233E434 _0233D9CC: .word ov02_0233D9D0 arm_func_end ov02_0233D8C4 arm_func_start ov02_0233D9D0 ov02_0233D9D0: ; 0x0233D9D0 stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _0233D9EC ; =ov02_0233D9F0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233D9EC: .word ov02_0233D9F0 arm_func_end ov02_0233D9D0 arm_func_start ov02_0233D9F0 ov02_0233D9F0: ; 0x0233D9F0 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233DA58 ; =ov02_0235AAD8 ldr r0, [r0, #4] ldrb r0, [r0, #0x54] cmp r0, #0 beq _0233DA20 bl ov02_023346AC b _0233DA24 _0233DA20: bl ov02_02334768 _0233DA24: mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x1d mov r3, #8 bl ov02_0234D8E0 ldr r0, _0233DA5C ; =ov02_0233DA60 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233DA58: .word ov02_0235AAD8 _0233DA5C: .word ov02_0233DA60 arm_func_end ov02_0233D9F0 arm_func_start ov02_0233DA60 ov02_0233DA60: ; 0x0233DA60 stmdb sp!, {r3, r4, r5, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, r4, r5, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, r4, r5, pc} bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, r4, r5, pc} ldr r1, _0233DC40 ; =ov02_0235AAD8 mov r0, #1 ldr r1, [r1, #4] ldr r1, [r1, #0x3c] bl ov02_0234FB60 ldr r4, _0233DC40 ; =ov02_0235AAD8 mov r5, #0 _0233DAAC: ldr r0, [r4, #4] add r0, r0, r5, lsl #2 ldr r0, [r0, #0x10] cmp r0, #0 beq _0233DAC4 bl ov02_0234F2C0 _0233DAC4: ldr r0, [r4, #4] add r0, r0, r5, lsl #2 ldr r0, [r0, #0x24] cmp r0, #0 beq _0233DADC bl ov02_0234F2C0 _0233DADC: add r5, r5, #1 cmp r5, #5 blt _0233DAAC ldr r0, _0233DC40 ; =ov02_0235AAD8 ldr r0, [r0, #4] ldr r0, [r0, #0xc] bl ov02_0234DFC8 bl ov02_02346A3C bl ov02_0233519C bl ov02_02334D10 bl ov02_023467B0 ldr r0, _0233DC40 ; =ov02_0235AAD8 ldr r0, [r0, #4] ldr r0, [r0, #4] bl ov02_0234CF78 ldr r0, _0233DC40 ; =ov02_0235AAD8 ldr r0, [r0, #4] ldr r0, [r0, #8] bl ov02_0234CF78 mov r0, #1 mov r1, r0 bl ov02_0234E424 mov r0, #0 mov r1, #0x1d bl ov02_0234E424 mov r2, #0 ldr r1, _0233DC44 ; =0x04000010 ldr r0, _0233DC40 ; =ov02_0235AAD8 str r2, [r1] str r2, [r1, #8] ldr r2, [r0, #4] ldrb r1, [r2, #0x54] cmp r1, #0 bne _0233DB8C bl ov02_0234705C bl ov02_02347518 ldrb r0, [r0, #0xf4] bl ov02_0234793C mov r0, #2 mov r1, #0 bl ov02_02338D78 ldr r0, _0233DC48 ; =ov02_02344AF0 bl ov02_02338D68 b _0233DC34 _0233DB8C: ldrb r0, [r0] cmp r0, #4 bne _0233DBB4 bl ov02_0234705C mov r0, #0 mov r1, #1 bl ov02_02338D78 ldr r0, _0233DC4C ; =ov02_023438CC bl ov02_02338D68 b _0233DC34 _0233DBB4: ldrb r1, [r2, #0x52] ldr r2, [r2] mov r0, #0x2a mla r0, r1, r0, r2 bl ov02_02347554 mov r0, #0 mov r1, r0 bl ov02_02338D78 ldr r1, _0233DC40 ; =ov02_0235AAD8 mov r0, #0x2a ldr r2, [r1, #4] ldrb r1, [r2, #0x52] ldr r2, [r2] mla r0, r1, r0, r2 ldrb r0, [r0, #0x28] mov r1, #1 cmp r0, #0 mov r0, #0 beq _0233DC1C bl ov02_02338D78 mov r0, #1 mov r1, r0 bl ov02_02338DB4 ldr r0, _0233DC50 ; =ov02_0233E488 bl ov02_02338D68 b _0233DC34 _0233DC1C: bl ov02_02338D78 mov r0, #0 mov r1, #1 bl ov02_02338DB4 ldr r0, _0233DC54 ; =ov02_02345968 bl ov02_02338D68 _0233DC34: ldr r0, _0233DC58 ; =ov02_0235AADC bl ov02_0234E7D8 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0233DC40: .word ov02_0235AAD8 _0233DC44: .word 0x04000010 _0233DC48: .word ov02_02344AF0 _0233DC4C: .word ov02_023438CC _0233DC50: .word ov02_0233E488 _0233DC54: .word ov02_02345968 _0233DC58: .word ov02_0235AADC arm_func_end ov02_0233DA60 arm_func_start ov02_0233DC5C ov02_0233DC5C: ; 0x0233DC5C stmdb sp!, {r3, r4, r5, r6, r7, lr} ldr r0, _0233DD00 ; =ov02_0235AAD8 mov r1, #0x1c ldrh r0, [r0, #2] bl FX_DivS32 ldr r1, _0233DD00 ; =ov02_0235AAD8 mov r7, r0 ldr r0, [r1, #4] mov r1, #0 ldrb r4, [r0, #0x51] ldr r0, [r0, #0xc] bl ov02_0234E2A8 cmp r4, #5 movgt r4, #5 mov r5, r7 cmp r4, #0 mov r6, #0 ble _0233DCC0 _0233DCA4: mov r0, r5 mov r1, r6 bl ov02_0233DD04 add r6, r6, #1 cmp r6, r4 add r5, r5, #1 blt _0233DCA4 _0233DCC0: cmp r4, #0 mov r5, #0 ble _0233DCE8 _0233DCCC: mov r0, r7 mov r1, r5 bl ov02_0233DE7C add r5, r5, #1 cmp r5, r4 add r7, r7, #1 blt _0233DCCC _0233DCE8: ldr r0, _0233DD00 ; =ov02_0235AAD8 ldr r0, [r0, #4] ldr r0, [r0, #0xc] bl ov02_0234E354 bl ov02_0233DF08 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _0233DD00: .word ov02_0235AAD8 arm_func_end ov02_0233DC5C arm_func_start ov02_0233DD04 ov02_0233DD04: ; 0x0233DD04 stmdb sp!, {r3, r4, r5, r6, r7, lr} sub sp, sp, #0x30 mov r7, r0 mov r0, #0x2a ldr r2, _0233DE78 ; =ov02_0235AAD8 mul r6, r7, r0 ldr r0, [r2, #4] mov r4, r1 ldr r0, [r0] mov r1, #0x20 add r0, r0, r6 bl ov02_0234F59C ldr r2, _0233DE78 ; =ov02_0235AAD8 mov r1, #0x1c mul r5, r4, r1 ldr r2, [r2, #4] mov r4, r0 ldrb r1, [r2, #0x51] cmp r7, r1 addge sp, sp, #0x30 ldmgeia sp!, {r3, r4, r5, r6, r7, pc} add r0, sp, #0xc cmp r4, #0x10 mov r1, #0 mov r2, #0x22 addle r5, r5, #6 bl MemsetFast cmp r4, #0x10 movle ip, r4 movgt ip, #0x10 cmp ip, #0 mov r3, #0 ble _0233DDB4 ldr r0, _0233DE78 ; =ov02_0235AAD8 ldr r7, [r0, #4] add r0, sp, #0xc _0233DD94: ldr r2, [r7] mov r1, r3, lsl #1 add r2, r6, r2 ldrb r2, [r3, r2] add r3, r3, #1 cmp r3, ip strh r2, [r0, r1] blt _0233DD94 _0233DDB4: mov r1, #0xa add r0, sp, #0xc str r1, [sp] str r0, [sp, #4] mov r2, #1 str r2, [sp, #8] ldr r0, _0233DE78 ; =ov02_0235AAD8 mov r2, r5 ldr r0, [r0, #4] mov r3, #2 ldr r0, [r0, #0xc] bl ov02_0234E13C cmp r4, #0x10 addle sp, sp, #0x30 ldmleia sp!, {r3, r4, r5, r6, r7, pc} add r0, sp, #0xc mov r1, #0 mov r2, #0x22 bl MemsetFast sub r3, r4, #0x10 cmp r3, #0 mov r7, #0 ble _0233DE40 ldr r0, _0233DE78 ; =ov02_0235AAD8 ldr r4, [r0, #4] add r0, sp, #0xc _0233DE1C: ldr r2, [r4] mov r1, r7, lsl #1 add r2, r6, r2 add r2, r7, r2 ldrb r2, [r2, #0x10] add r7, r7, #1 cmp r7, r3 strh r2, [r0, r1] blt _0233DE1C _0233DE40: mov r1, #0xa add r0, sp, #0xc str r1, [sp] str r0, [sp, #4] mov r2, #1 str r2, [sp, #8] ldr r0, _0233DE78 ; =ov02_0235AAD8 add r2, r5, #0xc ldr r0, [r0, #4] mov r3, #2 ldr r0, [r0, #0xc] bl ov02_0234E13C add sp, sp, #0x30 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _0233DE78: .word ov02_0235AAD8 arm_func_end ov02_0233DD04 arm_func_start ov02_0233DE7C ov02_0233DE7C: ; 0x0233DE7C stmdb sp!, {r4, lr} ldr r3, _0233DF04 ; =ov02_0235AAD8 ldr lr, [r3, #4] ldrb r2, [lr, #0x51] cmp r0, r2 ldmgeia sp!, {r4, pc} mov r2, #0x2a mul r2, r0, r2 ldr r0, [lr] add r4, lr, r1, lsl #2 add r0, r0, r2 ldrb ip, [r0, #0x28] ldr r4, [r4, #0x10] mov r0, #0x400 add ip, lr, ip, lsl #1 ldrh lr, [r4, #4] rsb r0, r0, #0 ldrh ip, [ip, #0x42] and lr, lr, r0 orr ip, lr, ip strh ip, [r4, #4] ldr lr, [r3, #4] ldr r3, [lr] add ip, lr, r1, lsl #2 add r1, r3, r2 ldrh r1, [r1, #0x26] ldr r3, [ip, #0x24] add r1, lr, r1, lsl #1 ldrh r2, [r3, #4] ldrh r1, [r1, #0x48] and r0, r2, r0 orr r0, r0, r1 strh r0, [r3, #4] ldmia sp!, {r4, pc} .align 2, 0 _0233DF04: .word ov02_0235AAD8 arm_func_end ov02_0233DE7C arm_func_start ov02_0233DF08 ov02_0233DF08: ; 0x0233DF08 stmdb sp!, {r4, r5, r6, lr} ldr r0, _0233DFBC ; =ov02_0235AAD8 mov r1, #0x1c ldrh r0, [r0, #2] bl FX_ModS32 ldr r1, _0233DFBC ; =ov02_0235AAD8 rsb r0, r0, #0x36 ldr r1, [r1, #4] mov r2, #0 ldrb r1, [r1, #0x51] cmp r1, #5 movgt r1, #5 cmp r1, #0 ble _0233DFA8 ldr ip, _0233DFBC ; =ov02_0235AAD8 ldr r3, _0233DFC0 ; =0xFE00FF00 _0233DF48: ldr r5, [ip, #4] sub r4, r0, #2 add r5, r5, r2, lsl #2 ldr r6, [r5, #0x10] add lr, r0, #1 ldr r5, [r6] and r4, r4, #0xff and r5, r5, r3 orr r4, r5, r4 orr r4, r4, #0xb30000 str r4, [r6] ldr r4, [ip, #4] and lr, lr, #0xff add r4, r4, r2, lsl #2 ldr r5, [r4, #0x24] add r2, r2, #1 ldr r4, [r5] cmp r2, r1 and r4, r4, r3 orr r4, r4, lr orr r4, r4, #0xd20000 str r4, [r5] add r0, r0, #0x1c blt _0233DF48 _0233DFA8: ldr r0, _0233DFBC ; =ov02_0235AAD8 mov r1, #1 ldr r0, [r0, #4] strb r1, [r0, #0x56] ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _0233DFBC: .word ov02_0235AAD8 _0233DFC0: .word 0xFE00FF00 arm_func_end ov02_0233DF08 arm_func_start ov02_0233DFC4 ov02_0233DFC4: ; 0x0233DFC4 stmdb sp!, {r3, r4, r5, lr} mov r4, r0 bl ov02_02346AC4 bl ov02_0233519C ldr r0, _0233E07C ; =ov02_0235AAD8 ldrh r1, [r0, #2] cmp r1, #4 subhi r1, r1, #4 movls r1, #0 strh r1, [r0, #2] ldr r0, _0233E07C ; =ov02_0235AAD8 mov r1, #0x1c ldrh r0, [r0, #2] bl FX_ModS32 mov r5, r0 cmp r5, #0x18 bne _0233E010 bl ov02_0233DC5C ldmia sp!, {r3, r4, r5, pc} _0233E010: ble _0233E02C ldr r0, _0233E07C ; =ov02_0235AAD8 rsb r1, r5, #0x1c ldrh r2, [r0, #2] mov r5, #0 add r1, r2, r1 strh r1, [r0, #2] _0233E02C: bl ov02_0233DF08 cmp r5, #0 ldmneia sp!, {r3, r4, r5, pc} ldr r0, _0233E07C ; =ov02_0235AAD8 ldr r1, [r0, #4] ldrh r2, [r0, #2] ldrb r0, [r1, #0x53] ldrh r1, [r1, #0x40] mul r0, r2, r0 bl FX_DivS32 bl ov02_02346AA0 bl ov02_02346AAC bl ov02_0233E174 ldr r0, _0233E07C ; =ov02_0235AAD8 mov r1, r4 ldr r2, [r0, #4] mov r0, #0 str r0, [r2, #0x38] bl ov02_0234FB40 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0233E07C: .word ov02_0235AAD8 arm_func_end ov02_0233DFC4 arm_func_start ov02_0233E080 ov02_0233E080: ; 0x0233E080 stmdb sp!, {r4, lr} mov r4, r0 bl ov02_02346AC4 bl ov02_0233519C ldr r0, _0233E114 ; =ov02_0235AAD8 mov r1, #0x1c ldrh r2, [r0, #2] add r2, r2, #4 strh r2, [r0, #2] ldrh r0, [r0, #2] bl FX_ModS32 cmp r0, #4 blt _0233E0BC bl ov02_0233DF08 ldmia sp!, {r4, pc} _0233E0BC: ldr r1, _0233E114 ; =ov02_0235AAD8 ldrh r2, [r1, #2] sub r0, r2, r0 strh r0, [r1, #2] bl ov02_0233DC5C ldr r0, _0233E114 ; =ov02_0235AAD8 ldr r1, [r0, #4] ldrh r2, [r0, #2] ldrb r0, [r1, #0x53] ldrh r1, [r1, #0x40] mul r0, r2, r0 bl FX_DivS32 bl ov02_02346AA0 bl ov02_02346AAC bl ov02_0233E174 ldr r0, _0233E114 ; =ov02_0235AAD8 mov r1, r4 ldr r2, [r0, #4] mov r0, #0 str r0, [r2, #0x38] bl ov02_0234FB40 ldmia sp!, {r4, pc} .align 2, 0 _0233E114: .word ov02_0235AAD8 arm_func_end ov02_0233E080 arm_func_start ov02_0233E118 ov02_0233E118: ; 0x0233E118 stmdb sp!, {r3, lr} ldr r0, _0233E168 ; =ov02_0235AAD8 ldr r1, [r0, #4] ldrb r1, [r1, #0x56] cmp r1, #0 ldmeqia sp!, {r3, pc} ldrh r0, [r0, #2] mov r1, #0x1c bl FX_ModS32 ldr r1, _0233E16C ; =0x01FF0000 sub r0, r0, #0x32 ldr r2, _0233E170 ; =0x04000010 and r1, r1, r0, lsl #16 str r1, [r2] ldr r0, _0233E168 ; =ov02_0235AAD8 str r1, [r2, #8] ldr r0, [r0, #4] mov r1, #0 strb r1, [r0, #0x56] ldmia sp!, {r3, pc} .align 2, 0 _0233E168: .word ov02_0235AAD8 _0233E16C: .word 0x01FF0000 _0233E170: .word 0x04000010 arm_func_end ov02_0233E118 arm_func_start ov02_0233E174 ov02_0233E174: ; 0x0233E174 stmdb sp!, {r3, lr} ldr r0, _0233E1B0 ; =ov02_0235AAD8 ldr r1, _0233E1B4 ; =ov02_02352A00 ldrb r2, [r0] ldr r3, _0233E1B8 ; =ov02_02352A02 mov ip, r2, lsl #3 cmp r2, #4 ldr r2, _0233E1BC ; =ov02_02352A04 movlo r0, #2 ldrh r1, [r1, ip] ldrh r2, [r2, ip] ldrh r3, [r3, ip] movhs r0, #3 bl ov02_02334FF0 ldmia sp!, {r3, pc} .align 2, 0 _0233E1B0: .word ov02_0235AAD8 _0233E1B4: .word ov02_02352A00 _0233E1B8: .word ov02_02352A02 _0233E1BC: .word ov02_02352A04 arm_func_end ov02_0233E174 arm_func_start ov02_0233E1C0 ov02_0233E1C0: ; 0x0233E1C0 stmdb sp!, {r4, lr} ldr r1, _0233E304 ; =ov02_0235AAD8 mov r4, #1 ldrb r3, [r1] cmp r3, #4 addls pc, pc, r3, lsl #2 b _0233E2BC _0233E1DC: ; jump table b _0233E1F0 ; case 0 b _0233E254 ; case 1 b _0233E254 ; case 2 b _0233E280 ; case 3 b _0233E298 ; case 4 _0233E1F0: cmp r0, #1 bne _0233E238 ldrh r0, [r1, #2] cmp r0, #0 moveq r0, #4 streqb r0, [r1] beq _0233E2BC mov r0, #0x13 bl ov02_023480E0 mov r0, #0 ldr r1, _0233E308 ; =ov02_0233DFC4 mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _0233E304 ; =ov02_0235AAD8 ldr r1, [r1, #4] str r0, [r1, #0x38] ldmia sp!, {r4, pc} _0233E238: ldr r0, [r1, #4] ldrb r0, [r0, #0x51] cmp r0, #1 addhi r0, r3, #1 strhib r0, [r1] movls r4, #0 b _0233E2BC _0233E254: cmp r0, #1 subeq r0, r3, #1 streqb r0, [r1] beq _0233E2BC ldr r2, [r1, #4] add r0, r3, #1 ldrb r2, [r2, #0x51] cmp r2, r0 strgtb r0, [r1] movle r4, #0 b _0233E2BC _0233E280: cmp r0, #1 subeq r0, r3, #1 streqb r0, [r1] beq _0233E2BC bl ov02_0233E380 ldmia sp!, {r4, pc} _0233E298: cmp r0, #1 moveq r4, #0 beq _0233E2BC mov r0, #0 strh r0, [r1, #2] strb r0, [r1] bl ov02_0233DC5C mov r0, #0 bl ov02_02346AA0 _0233E2BC: cmp r4, #0 bne _0233E2F4 ldr r0, _0233E304 ; =ov02_0235AAD8 ldr r0, [r0, #4] ldrb r0, [r0, #0x59] cmp r0, #0 ldmneia sp!, {r4, pc} mov r0, #9 bl ov02_023480E0 ldr r0, _0233E304 ; =ov02_0235AAD8 mov r1, #1 ldr r0, [r0, #4] strb r1, [r0, #0x59] ldmia sp!, {r4, pc} _0233E2F4: mov r0, #8 bl ov02_023480E0 bl ov02_0233E174 ldmia sp!, {r4, pc} .align 2, 0 _0233E304: .word ov02_0235AAD8 _0233E308: .word ov02_0233DFC4 arm_func_end ov02_0233E1C0 arm_func_start ov02_0233E30C ov02_0233E30C: ; 0x0233E30C stmdb sp!, {r3, lr} ldr r0, _0233E378 ; =ov02_0235AAD8 ldrh r1, [r0, #2] cmp r1, #0 bne _0233E34C ldr r0, [r0, #4] ldrb r0, [r0, #0x59] cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #9 bl ov02_023480E0 ldr r0, _0233E378 ; =ov02_0235AAD8 mov r1, #1 ldr r0, [r0, #4] strb r1, [r0, #0x59] ldmia sp!, {r3, pc} _0233E34C: mov r0, #0x13 bl ov02_023480E0 mov r0, #0 ldr r1, _0233E37C ; =ov02_0233DFC4 mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _0233E378 ; =ov02_0235AAD8 ldr r1, [r1, #4] str r0, [r1, #0x38] ldmia sp!, {r3, pc} .align 2, 0 _0233E378: .word ov02_0235AAD8 _0233E37C: .word ov02_0233DFC4 arm_func_end ov02_0233E30C arm_func_start ov02_0233E380 ov02_0233E380: ; 0x0233E380 stmdb sp!, {r3, lr} ldr r0, _0233E3FC ; =ov02_0235AAD8 ldr r2, [r0, #4] ldrh r1, [r0, #2] ldrh r0, [r2, #0x40] cmp r1, r0 beq _0233E3A8 ldrb r0, [r2, #0x51] cmp r0, #4 bhi _0233E3D0 _0233E3A8: ldrb r0, [r2, #0x59] cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #9 bl ov02_023480E0 ldr r0, _0233E3FC ; =ov02_0235AAD8 mov r1, #1 ldr r0, [r0, #4] strb r1, [r0, #0x59] ldmia sp!, {r3, pc} _0233E3D0: mov r0, #0x13 bl ov02_023480E0 mov r0, #0 ldr r1, _0233E400 ; =ov02_0233E080 mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _0233E3FC ; =ov02_0235AAD8 ldr r1, [r1, #4] str r0, [r1, #0x38] ldmia sp!, {r3, pc} .align 2, 0 _0233E3FC: .word ov02_0235AAD8 _0233E400: .word ov02_0233E080 arm_func_end ov02_0233E380 arm_func_start ov02_0233E404 ov02_0233E404: ; 0x0233E404 stmdb sp!, {r3, lr} ldr r1, _0233E42C ; =ov02_023529A8 ldr r0, _0233E430 ; =ov02_0235AAD8 ldrb r1, [r1] ldr r0, [r0, #4] ldr r0, [r0, #8] mov r2, r1 strb r1, [sp] bl ov02_023468A0 ldmia sp!, {r3, pc} .align 2, 0 _0233E42C: .word ov02_023529A8 _0233E430: .word ov02_0235AAD8 arm_func_end ov02_0233E404 arm_func_start ov02_0233E434 ov02_0233E434: ; 0x0233E434 stmdb sp!, {r3, lr} bl ov02_02349704 cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #6 bl ov02_023480E0 bl ov02_023496C0 ldr r0, _0233E45C ; =ov02_0233E460 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233E45C: .word ov02_0233E460 arm_func_end ov02_0233E434 arm_func_start ov02_0233E460 ov02_0233E460: ; 0x0233E460 stmdb sp!, {r3, lr} bl ov02_02349718 cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02334750 bl ov02_02346AAC ldr r0, _0233E484 ; =ov02_0233D3EC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233E484: .word ov02_0233D3EC arm_func_end ov02_0233E460 arm_func_start ov02_0233E488 ov02_0233E488: ; 0x0233E488 stmdb sp!, {lr} sub sp, sp, #0xc ldr r1, _0233E5B0 ; =ov02_02352A30 mov r0, #0x2c ldrb r3, [r1] ldrb r2, [r1, #1] mov r1, #4 strb r3, [sp] strb r2, [sp, #1] bl ov02_0234E7B4 ldr r2, _0233E5B4 ; =ov02_0235AAE0 add r1, sp, #4 str r0, [r2] add r0, sp, #8 bl ov02_02338DC8 ldr r0, [sp, #8] cmp r0, #0 bne _0233E500 ldr r0, _0233E5B4 ; =ov02_0235AAE0 ldr r0, [r0] add r0, r0, #8 bl ov02_023477B4 ldr r0, _0233E5B4 ; =ov02_0235AAE0 mov r1, #0x20 ldr r0, [r0] add r0, r0, #8 bl ov02_0234F59C ldr r1, _0233E5B4 ; =ov02_0235AAE0 ldr r1, [r1] strb r0, [r1, #0x29] _0233E500: bl ov02_0233E5BC ldr r0, [sp, #8] add r0, r0, #9 bl ov02_02335268 ldr r0, [sp, #4] cmp r0, #1 bne _0233E530 mov r0, #0x35 sub r1, r0, #0x36 mov r2, #0 bl ov02_02334C3C b _0233E548 _0233E530: ldr r2, [sp, #8] add r0, sp, #0 ldrb r0, [r0, r2] mvn r1, #0 mov r2, #0 bl ov02_02334C3C _0233E548: mov r0, #2 bl ov02_02334DE8 mov r0, #0 mov r1, r0 bl ov02_0234DDC8 ldr r2, _0233E5B4 ; =ov02_0235AAE0 mov r1, #0x3e ldr r2, [r2] str r0, [r2] mov r0, #0 bl ov02_0234D6AC ldr r1, _0233E5B4 ; =ov02_0235AAE0 ldr r2, [r1] str r0, [r2, #4] ldr r0, [r1] ldr r1, [r0, #4] ldrh r0, [r1, #4] bic r0, r0, #0xc00 orr r0, r0, #0xc00 strh r0, [r1, #4] bl ov02_0233EC58 bl ov02_0233EB64 ldr r0, _0233E5B8 ; =ov02_0233E678 bl ov02_02338D68 add sp, sp, #0xc ldmia sp!, {pc} .align 2, 0 _0233E5B0: .word ov02_02352A30 _0233E5B4: .word ov02_0235AAE0 _0233E5B8: .word ov02_0233E678 arm_func_end ov02_0233E488 arm_func_start ov02_0233E5BC ov02_0233E5BC: ; 0x0233E5BC stmdb sp!, {r3, lr} ldr r0, _0233E650 ; =ov02_02353900 ldr r1, _0233E654 ; =GX_LoadOBJPltt bl ov02_02334DA8 ldr r0, _0233E658 ; =ov02_02353914 ldr r1, _0233E65C ; =GX_LoadBG2Char bl ov02_02334DA8 ldr r0, _0233E660 ; =ov02_0235392C ldr r1, _0233E664 ; =GX_LoadBGPltt bl ov02_02334DA8 ldr r0, _0233E668 ; =ov02_02353944 ldr r1, _0233E66C ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _0233E670 ; =0x04001008 ldr r1, _0233E674 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #2 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _0233E650: .word ov02_02353900 _0233E654: .word GX_LoadOBJPltt _0233E658: .word ov02_02353914 _0233E65C: .word GX_LoadBG2Char _0233E660: .word ov02_0235392C _0233E664: .word GX_LoadBGPltt _0233E668: .word ov02_02353944 _0233E66C: .word GX_LoadBG2Scr _0233E670: .word 0x04001008 _0233E674: .word 0x0400000A arm_func_end ov02_0233E5BC arm_func_start ov02_0233E678 ov02_0233E678: ; 0x0233E678 stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _0233E6C8 ; =ov02_0233E6CC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233E6C8: .word ov02_0233E6CC arm_func_end ov02_0233E678 arm_func_start ov02_0233E6CC ov02_0233E6CC: ; 0x0233E6CC stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_023354D8 mov r0, #0x14 bl ov02_023480E0 ldr r0, _0233E740 ; =ov02_0235AAE0 ldr r0, [r0] ldrb r0, [r0, #0x29] cmp r0, #0 bne _0233E718 mov r0, #0 bl ov02_02335884 _0233E718: ldr r0, _0233E740 ; =ov02_0235AAE0 ldr r0, [r0] ldrb r0, [r0, #0x29] cmp r0, #0x20 bne _0233E734 mov r0, #0 bl ov02_02335898 _0233E734: ldr r0, _0233E744 ; =ov02_0233E748 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233E740: .word ov02_0235AAE0 _0233E744: .word ov02_0233E748 arm_func_end ov02_0233E6CC arm_func_start ov02_0233E748 ov02_0233E748: ; 0x0233E748 stmdb sp!, {r3, lr} bl ov02_02335870 cmp r0, #0xff ldmeqia sp!, {r3, pc} ldr r0, _0233E764 ; =ov02_0233E768 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233E764: .word ov02_0233E768 arm_func_end ov02_0233E748 arm_func_start ov02_0233E768 ov02_0233E768: ; 0x0233E768 stmdb sp!, {r3, lr} bl ov02_0233E778 bl ov02_0233E938 ldmia sp!, {r3, pc} arm_func_end ov02_0233E768 arm_func_start ov02_0233E778 ov02_0233E778: ; 0x0233E778 stmdb sp!, {r4, lr} bl ov02_02335870 mov r4, r0 cmp r4, #0x83 bgt _0233E7B8 cmp r4, #0x80 blt _0233E7AC beq _0233E7C4 cmp r4, #0x82 beq _0233E828 cmp r4, #0x83 beq _0233E84C b _0233E8B8 _0233E7AC: cmp r4, #0 beq _0233E91C b _0233E8B8 _0233E7B8: ldr r0, _0233E928 ; =0x0000E01D cmp r4, r0 b _0233E8B8 _0233E7C4: ldr r0, _0233E92C ; =ov02_0235AAE0 ldr r0, [r0] ldrb r0, [r0, #0x29] cmp r0, #0 beq _0233E91C mov r0, #3 bl ov02_023480E0 ldr r1, _0233E92C ; =ov02_0235AAE0 mov r0, #0 ldr r3, [r1] ldrb r2, [r3, #0x29] sub r2, r2, #1 strb r2, [r3, #0x29] ldr r3, [r1] ldrb r2, [r3, #0x29] add r2, r3, r2 strb r0, [r2, #8] ldr r1, [r1] ldrb r1, [r1, #0x29] cmp r1, #0 bne _0233E81C bl ov02_02335884 _0233E81C: mov r0, #1 bl ov02_02335898 b _0233E91C _0233E828: mov r0, #7 bl ov02_023480E0 ldr r1, _0233E92C ; =ov02_0235AAE0 ldr r0, _0233E930 ; =ov02_0233E93C ldr r1, [r1] mov r2, #0 strb r2, [r1, #0x2a] bl ov02_02338D68 ldmia sp!, {r4, pc} _0233E84C: bl ov02_0233EDCC cmp r0, #0 beq _0233E874 mov r0, #6 bl ov02_023480E0 ldr r0, _0233E92C ; =ov02_0235AAE0 mov r1, #1 ldr r0, [r0] strb r1, [r0, #0x2a] b _0233E88C _0233E874: ldr r0, _0233E92C ; =ov02_0235AAE0 mov r2, #2 ldr r1, [r0] mov r0, #9 strb r2, [r1, #0x2a] bl ov02_023480E0 _0233E88C: ldr r0, _0233E92C ; =ov02_0235AAE0 ldr r1, _0233E934 ; =0xC1FFFCFF ldr r2, [r0] ldr r0, _0233E930 ; =ov02_0233E93C ldr r3, [r2, #4] ldr r2, [r3] and r1, r2, r1 orr r1, r1, #0x200 str r1, [r3] bl ov02_02338D68 ldmia sp!, {r4, pc} _0233E8B8: ldr r0, _0233E92C ; =ov02_0235AAE0 ldr r0, [r0] ldrb r0, [r0, #0x29] cmp r0, #0x20 beq _0233E91C mov r0, #1 bl ov02_023480E0 ldr r1, _0233E92C ; =ov02_0235AAE0 mov r0, #1 ldr r3, [r1] ldrb r2, [r3, #0x29] add r2, r3, r2 strb r4, [r2, #8] ldr r2, [r1] ldrb r1, [r2, #0x29] add r1, r1, #1 strb r1, [r2, #0x29] bl ov02_02335884 ldr r0, _0233E92C ; =ov02_0235AAE0 ldr r0, [r0] ldrb r0, [r0, #0x29] cmp r0, #0x20 bne _0233E91C mov r0, #0 bl ov02_02335898 _0233E91C: bl ov02_0233EB64 bl ov02_0233EC58 ldmia sp!, {r4, pc} .align 2, 0 _0233E928: .word 0x0000E01D _0233E92C: .word ov02_0235AAE0 _0233E930: .word ov02_0233E93C _0233E934: .word 0xC1FFFCFF arm_func_end ov02_0233E778 arm_func_start ov02_0233E938 ov02_0233E938: ; 0x0233E938 bx lr arm_func_end ov02_0233E938 arm_func_start ov02_0233E93C ov02_0233E93C: ; 0x0233E93C stmdb sp!, {r3, lr} mov r0, #8 bl ov02_0234DAE0 ldr r0, _0233E954 ; =ov02_0233E958 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233E954: .word ov02_0233E958 arm_func_end ov02_0233E93C arm_func_start ov02_0233E958 ov02_0233E958: ; 0x0233E958 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_0233583C mov r0, #0x15 bl ov02_023480E0 ldr r0, _0233E984 ; =ov02_0233E988 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233E984: .word ov02_0233E988 arm_func_end ov02_0233E958 arm_func_start ov02_0233E988 ov02_0233E988: ; 0x0233E988 stmdb sp!, {r3, lr} sub sp, sp, #0x10 ldr r0, _0233EA4C ; =ov02_02352A30 ldr r1, [r0, #8] ldr r0, [r0, #0xc] str r1, [sp, #8] str r0, [sp, #0xc] bl ov02_023358AC cmp r0, #0 addne sp, sp, #0x10 ldmneia sp!, {r3, pc} ldr r0, _0233EA50 ; =ov02_0235AAE0 ldr r0, [r0] ldrb r0, [r0, #0x2a] cmp r0, #0 bne _0233E9D8 ldr r0, _0233EA54 ; =ov02_0233EA60 bl ov02_02338D68 add sp, sp, #0x10 ldmia sp!, {r3, pc} _0233E9D8: cmp r0, #2 bne _0233EA0C mov r2, #1 mov ip, #0 sub r3, r2, #2 mov r0, #6 mov r1, #3 str ip, [sp] bl ov02_02349394 ldr r0, _0233EA58 ; =ov02_0233EF58 bl ov02_02338D68 add sp, sp, #0x10 ldmia sp!, {r3, pc} _0233EA0C: add r1, sp, #4 mov r0, #0 bl ov02_02338DC8 mov r0, #0 str r0, [sp] mov r2, #1 ldr r1, [sp, #4] add r0, sp, #8 ldr r0, [r0, r1, lsl #2] sub r3, r2, #2 mov r1, #2 bl ov02_02349394 ldr r0, _0233EA5C ; =ov02_0233ECC0 bl ov02_02338D68 add sp, sp, #0x10 ldmia sp!, {r3, pc} .align 2, 0 _0233EA4C: .word ov02_02352A30 _0233EA50: .word ov02_0235AAE0 _0233EA54: .word ov02_0233EA60 _0233EA58: .word ov02_0233EF58 _0233EA5C: .word ov02_0233ECC0 arm_func_end ov02_0233E988 arm_func_start ov02_0233EA60 ov02_0233EA60: ; 0x0233EA60 stmdb sp!, {r3, lr} sub sp, sp, #8 bl ov02_02334D10 ldr r0, _0233EB48 ; =ov02_0235AAE0 ldr r0, [r0] ldr r0, [r0, #4] bl ov02_0234F2C0 mov r0, #0 bl ov02_0234E02C ldr r0, _0233EB4C ; =ov02_02353958 ldr r1, _0233EB50 ; =GX_LoadOBJPltt bl ov02_02334DA8 mov r0, #1 mov r1, r0 bl ov02_0234E424 mov r0, #0 mov r1, #0x15 bl ov02_0234E424 add r0, sp, #4 add r1, sp, #0 bl ov02_02338DC8 ldr r0, [sp] cmp r0, #0 bne _0233EAE4 mov r0, #2 mov r1, #1 bl ov02_02338D78 ldr r1, [sp, #4] mov r0, #0 bl ov02_02338DB4 ldr r0, _0233EB54 ; =ov02_023402CC bl ov02_02338D68 b _0233EB38 _0233EAE4: ldr r0, _0233EB48 ; =ov02_0235AAE0 ldr r0, [r0] ldrb r0, [r0, #0x2a] cmp r0, #0 mov r0, #0 bne _0233EB1C mov r1, #1 bl ov02_02338D78 mov r0, #1 mov r1, #0 bl ov02_02338DB4 ldr r0, _0233EB58 ; =ov02_0233CEEC bl ov02_02338D68 b _0233EB38 _0233EB1C: mov r1, r0 bl ov02_02338D78 mov r0, #0 mov r1, #1 bl ov02_02338DB4 ldr r0, _0233EB5C ; =ov02_02345968 bl ov02_02338D68 _0233EB38: ldr r0, _0233EB60 ; =ov02_0235AAE0 bl ov02_0234E7D8 add sp, sp, #8 ldmia sp!, {r3, pc} .align 2, 0 _0233EB48: .word ov02_0235AAE0 _0233EB4C: .word ov02_02353958 _0233EB50: .word GX_LoadOBJPltt _0233EB54: .word ov02_023402CC _0233EB58: .word ov02_0233CEEC _0233EB5C: .word ov02_02345968 _0233EB60: .word ov02_0235AAE0 arm_func_end ov02_0233EA60 arm_func_start ov02_0233EB64 ov02_0233EB64: ; 0x0233EB64 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x1c ldr r0, _0233EC4C ; =ov02_0235AAE0 add r5, sp, #0x14 mov r1, #0 strh r1, [r5, #2] mov r4, #0x20 strh r1, [r5, #4] mov r3, #0xe strh r1, [r5, #6] mov r2, #0x10 ldr r0, [r0] strh r1, [r5] strh r4, [sp, #0x16] strh r3, [sp, #0x18] strh r2, [sp, #0x1a] ldr r0, [r0] bl ov02_0234E2A8 mov sl, #0 ldr r7, _0233EC50 ; =0x0000E01D ldr r6, _0233EC54 ; =ov02_02352A4C mov sb, sl strh sl, [sp, #0x12] mov r8, #0x31 mov r5, #2 mov r4, #0x480 add fp, sp, #0x10 _0233EBD0: ldr r0, _0233EC4C ; =ov02_0235AAE0 cmp sl, #0x10 ldr r0, [r0] moveq sb, #0 streqh r8, [sp, #0x16] add r1, r0, sl ldrb r1, [r1, #8] ldrb r2, [r6, sb] cmp r1, #0x20 streqh r7, [sp, #0x10] strneh r1, [sp, #0x10] ldrh r1, [sp, #0x1a] strh r2, [sp, #0x14] stmia sp, {r1, r5} str r4, [sp, #8] str fp, [sp, #0xc] ldrh r1, [sp, #0x14] ldrh r2, [sp, #0x16] ldrh r3, [sp, #0x18] ldr r0, [r0] bl ov02_0234E1E8 add sl, sl, #1 cmp sl, #0x20 add sb, sb, #1 blt _0233EBD0 ldr r0, _0233EC4C ; =ov02_0235AAE0 ldr r0, [r0] ldr r0, [r0] bl ov02_0234E354 add sp, sp, #0x1c ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _0233EC4C: .word ov02_0235AAE0 _0233EC50: .word 0x0000E01D _0233EC54: .word ov02_02352A4C arm_func_end ov02_0233EB64 arm_func_start ov02_0233EC58 ov02_0233EC58: ; 0x0233EC58 stmdb sp!, {r3, lr} ldr r0, _0233ECB0 ; =ov02_0235AAE0 ldr r1, [r0] ldrb r0, [r1, #0x29] ldr ip, [r1, #4] ldr r1, _0233ECB4 ; =ov02_02352A48 cmp r0, #0x20 and r2, r0, #0xf mov lr, r0, asr #4 movhs lr, #1 ldr r0, _0233ECB8 ; =ov02_02352A4C movhs r2, #0xf ldrb r3, [r0, r2] ldr r2, [ip] ldr r0, _0233ECBC ; =0xFE00FF00 ldrb r1, [r1, lr] and r0, r2, r0 mov r2, r3, lsl #0x17 orr r0, r0, r1 orr r0, r0, r2, lsr #7 str r0, [ip] ldmia sp!, {r3, pc} .align 2, 0 _0233ECB0: .word ov02_0235AAE0 _0233ECB4: .word ov02_02352A48 _0233ECB8: .word ov02_02352A4C _0233ECBC: .word 0xFE00FF00 arm_func_end ov02_0233EC58 arm_func_start ov02_0233ECC0 ov02_0233ECC0: ; 0x0233ECC0 stmdb sp!, {r3, lr} bl ov02_02349704 ldr r1, _0233ED14 ; =ov02_0235AAE0 ldr r2, [r1] strb r0, [r2, #0x2a] ldr r0, [r1] ldrb r0, [r0, #0x2a] cmp r0, #0 beq _0233ECF0 cmp r0, #1 beq _0233ECFC ldmia sp!, {r3, pc} _0233ECF0: mov r0, #7 bl ov02_023480E0 b _0233ED04 _0233ECFC: mov r0, #0xe bl ov02_023480E0 _0233ED04: bl ov02_023496C0 ldr r0, _0233ED18 ; =ov02_0233ED1C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233ED14: .word ov02_0235AAE0 _0233ED18: .word ov02_0233ED1C arm_func_end ov02_0233ECC0 arm_func_start ov02_0233ED1C ov02_0233ED1C: ; 0x0233ED1C stmdb sp!, {lr} sub sp, sp, #0xc ldr r0, _0233EDB8 ; =ov02_02352A30 ldr r1, [r0, #0x10] ldr r0, [r0, #0x14] str r1, [sp, #4] str r0, [sp, #8] bl ov02_02349718 cmp r0, #0 addne sp, sp, #0xc ldmneia sp!, {pc} ldr r0, _0233EDBC ; =ov02_0235AAE0 ldr r1, [r0] ldrb r0, [r1, #0x2a] cmp r0, #0 bne _0233ED80 ldr r3, [r1, #4] ldr r1, _0233EDC0 ; =0xC1FFFCFF ldr r2, [r3] ldr r0, _0233EDC4 ; =ov02_0233E6CC and r1, r2, r1 str r1, [r3] bl ov02_02338D68 add sp, sp, #0xc ldmia sp!, {pc} _0233ED80: add r0, sp, #0 mov r1, #0 bl ov02_02338DC8 ldr r0, _0233EDBC ; =ov02_0235AAE0 ldr r2, [sp] add r1, sp, #4 ldr r0, [r0] ldr r1, [r1, r2, lsl #2] add r0, r0, #8 blx r1 ldr r0, _0233EDC8 ; =ov02_0233EA60 bl ov02_02338D68 add sp, sp, #0xc ldmia sp!, {pc} .align 2, 0 _0233EDB8: .word ov02_02352A30 _0233EDBC: .word ov02_0235AAE0 _0233EDC0: .word 0xC1FFFCFF _0233EDC4: .word ov02_0233E6CC _0233EDC8: .word ov02_0233EA60 arm_func_end ov02_0233ED1C arm_func_start ov02_0233EDCC ov02_0233EDCC: ; 0x0233EDCC stmdb sp!, {r3, lr} sub sp, sp, #8 add r0, sp, #4 add r1, sp, #0 bl ov02_02338DC8 ldr r0, [sp] cmp r0, #1 bne _0233EDFC mov r0, #0x35 sub r1, r0, #0x36 mov r2, #0 bl ov02_02334C3C _0233EDFC: add r0, sp, #4 add r1, sp, #0 bl ov02_02338DC8 ldr r0, [sp, #4] cmp r0, #0 bne _0233EE34 ldr r0, _0233EF54 ; =ov02_0235AAE0 add sp, sp, #8 ldr r0, [r0] ldrb r0, [r0, #8] cmp r0, #0 movne r0, #1 moveq r0, #0 ldmia sp!, {r3, pc} _0233EE34: ldr r0, [sp] cmp r0, #1 bne _0233EE5C ldr r0, _0233EF54 ; =ov02_0235AAE0 ldr r0, [r0] ldrb r0, [r0, #8] cmp r0, #0 addeq sp, sp, #8 moveq r0, #0 ldmeqia sp!, {r3, pc} _0233EE5C: ldr r0, _0233EF54 ; =ov02_0235AAE0 mov r1, #0x20 ldr r0, [r0] add r0, r0, #8 bl ov02_0234F59C cmp r0, #0x10 bgt _0233EEB0 cmp r0, #0xa blt _0233EE94 beq _0233EED8 cmp r0, #0xd cmpne r0, #0x10 beq _0233EECC b _0233EF48 _0233EE94: cmp r0, #0 bgt _0233EEA4 beq _0233EECC b _0233EF48 _0233EEA4: cmp r0, #5 beq _0233EECC b _0233EF48 _0233EEB0: cmp r0, #0x1a bgt _0233EEC0 beq _0233EED8 b _0233EF48 _0233EEC0: cmp r0, #0x20 beq _0233EED8 b _0233EF48 _0233EECC: add sp, sp, #8 mov r0, #1 ldmia sp!, {r3, pc} _0233EED8: cmp r0, #0 mov r2, #0 ble _0233EF3C ldr r1, _0233EF54 ; =ov02_0235AAE0 ldr r3, [r1] _0233EEEC: ldrb r1, [r3, #8] cmp r1, #0x30 blo _0233EF00 cmp r1, #0x39 bls _0233EF2C _0233EF00: cmp r1, #0x41 blo _0233EF10 cmp r1, #0x46 bls _0233EF2C _0233EF10: cmp r1, #0x61 blo _0233EF20 cmp r1, #0x66 bls _0233EF2C _0233EF20: add sp, sp, #8 mov r0, #0 ldmia sp!, {r3, pc} _0233EF2C: add r2, r2, #1 cmp r2, r0 add r3, r3, #1 blt _0233EEEC _0233EF3C: add sp, sp, #8 mov r0, #1 ldmia sp!, {r3, pc} _0233EF48: mov r0, #0 add sp, sp, #8 ldmia sp!, {r3, pc} .align 2, 0 _0233EF54: .word ov02_0235AAE0 arm_func_end ov02_0233EDCC arm_func_start ov02_0233EF58 ov02_0233EF58: ; 0x0233EF58 stmdb sp!, {r3, lr} bl ov02_02349704 cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #6 bl ov02_023480E0 bl ov02_023496C0 ldr r0, _0233EF80 ; =ov02_0233EF84 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233EF80: .word ov02_0233EF84 arm_func_end ov02_0233EF58 arm_func_start ov02_0233EF84 ov02_0233EF84: ; 0x0233EF84 stmdb sp!, {r3, lr} bl ov02_02349718 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233EFBC ; =ov02_0235AAE0 ldr r1, _0233EFC0 ; =0xC1FFFCFF ldr r2, [r0] ldr r0, _0233EFC4 ; =ov02_0233E6CC ldr r3, [r2, #4] ldr r2, [r3] and r1, r2, r1 str r1, [r3] bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233EFBC: .word ov02_0235AAE0 _0233EFC0: .word 0xC1FFFCFF _0233EFC4: .word ov02_0233E6CC arm_func_end ov02_0233EF84 arm_func_start ov02_0233EFC8 ov02_0233EFC8: ; 0x0233EFC8 stmdb sp!, {r3, r4, r5, lr} sub sp, sp, #0x20 ldr r4, _0233F128 ; =ov02_02352A74 ldr ip, _0233F12C ; =ov02_02352A5C ldmia r4!, {r0, r1, r2, r3} add r5, sp, #0xc stmia r5!, {r0, r1, r2, r3} ldr r4, [r4] ldrb lr, [ip, #0xa] str r4, [r5] ldrb r5, [ip, #8] ldrb r4, [ip, #9] ldrb r3, [ip, #0xb] ldrb r2, [ip, #0xc] mov r0, #0x18 mov r1, #4 strb r5, [sp, #4] strb r4, [sp, #5] strb lr, [sp, #6] strb r3, [sp, #7] strb r2, [sp, #8] bl ov02_0234E7B4 ldr r2, _0233F130 ; =ov02_0235AAE4 mov r1, #0 str r0, [r2] add r0, sp, #0 bl ov02_02338DC8 ldr r0, _0233F130 ; =ov02_0235AAE4 ldr r2, [sp] add r1, sp, #0xc ldr r0, [r0] ldr r1, [r1, r2, lsl #2] add r0, r0, #8 blx r1 ldr r0, _0233F130 ; =ov02_0235AAE4 ldr r1, _0233F134 ; =ov02_02353970 ldr r4, [r0] mov r2, #3 add r0, r4, #8 bl memcmp cmp r0, #0 movne r0, #3 strneb r0, [r4, #0x14] bne _0233F098 add r0, r4, #8 mov r1, #0 mov r2, #0xc bl MemsetFast ldr r0, _0233F130 ; =ov02_0235AAE4 mov r1, #0 ldr r0, [r0] strb r1, [r0, #0x14] _0233F098: bl ov02_0233F13C ldr r0, [sp] add r0, r0, #0xb bl ov02_02335268 ldr r2, [sp] add r0, sp, #4 ldrb r0, [r0, r2] mvn r1, #0 mov r2, #0 bl ov02_02334C3C mov r0, #2 bl ov02_02334DE8 mov r0, #0 mov r1, r0 bl ov02_0234DDC8 ldr r2, _0233F130 ; =ov02_0235AAE4 mov r1, #0x3f ldr r2, [r2] str r0, [r2] mov r0, #0 bl ov02_0234D6AC ldr r1, _0233F130 ; =ov02_0235AAE4 ldr r2, [r1] str r0, [r2, #4] ldr r0, [r1] ldr r1, [r0, #4] ldrh r0, [r1, #4] bic r0, r0, #0xc00 orr r0, r0, #0xc00 strh r0, [r1, #4] bl ov02_0233F8F0 bl ov02_0233F82C ldr r0, _0233F138 ; =ov02_0233F1F8 bl ov02_02338D68 add sp, sp, #0x20 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0233F128: .word ov02_02352A74 _0233F12C: .word ov02_02352A5C _0233F130: .word ov02_0235AAE4 _0233F134: .word ov02_02353970 _0233F138: .word ov02_0233F1F8 arm_func_end ov02_0233EFC8 arm_func_start ov02_0233F13C ov02_0233F13C: ; 0x0233F13C stmdb sp!, {r3, lr} ldr r0, _0233F1D0 ; =ov02_02353974 ldr r1, _0233F1D4 ; =GX_LoadOBJPltt bl ov02_02334DA8 ldr r0, _0233F1D8 ; =ov02_02353988 ldr r1, _0233F1DC ; =GX_LoadBG2Char bl ov02_02334DA8 ldr r0, _0233F1E0 ; =ov02_023539A0 ldr r1, _0233F1E4 ; =GX_LoadBGPltt bl ov02_02334DA8 ldr r0, _0233F1E8 ; =ov02_023539B8 ldr r1, _0233F1EC ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _0233F1F0 ; =0x04001008 ldr r1, _0233F1F4 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #2 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _0233F1D0: .word ov02_02353974 _0233F1D4: .word GX_LoadOBJPltt _0233F1D8: .word ov02_02353988 _0233F1DC: .word GX_LoadBG2Char _0233F1E0: .word ov02_023539A0 _0233F1E4: .word GX_LoadBGPltt _0233F1E8: .word ov02_023539B8 _0233F1EC: .word GX_LoadBG2Scr _0233F1F0: .word 0x04001008 _0233F1F4: .word 0x0400000A arm_func_end ov02_0233F13C arm_func_start ov02_0233F1F8 ov02_0233F1F8: ; 0x0233F1F8 stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _0233F248 ; =ov02_0233F24C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233F248: .word ov02_0233F24C arm_func_end ov02_0233F1F8 arm_func_start ov02_0233F24C ov02_0233F24C: ; 0x0233F24C stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02337184 mov r0, #0x14 bl ov02_023480E0 ldr r0, _0233F2D0 ; =ov02_0235AAE4 ldr r0, [r0] ldrb r0, [r0, #0x14] cmp r0, #0 bne _0233F2A4 mov r0, #0 bl ov02_02337508 mov r0, #0 bl ov02_02337530 b _0233F2C4 _0233F2A4: mov r0, #0x1a bl ov02_0233F618 cmp r0, #0 beq _0233F2BC mov r0, #0 bl ov02_0233751C _0233F2BC: mov r0, #0 bl ov02_02337530 _0233F2C4: ldr r0, _0233F2D4 ; =ov02_0233F2D8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233F2D0: .word ov02_0235AAE4 _0233F2D4: .word ov02_0233F2D8 arm_func_end ov02_0233F24C arm_func_start ov02_0233F2D8 ov02_0233F2D8: ; 0x0233F2D8 stmdb sp!, {r3, lr} bl ov02_023374F4 cmp r0, #0x1f ldmeqia sp!, {r3, pc} ldr r0, _0233F2F4 ; =ov02_0233F2F8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233F2F4: .word ov02_0233F2F8 arm_func_end ov02_0233F2D8 arm_func_start ov02_0233F2F8 ov02_0233F2F8: ; 0x0233F2F8 stmdb sp!, {r3, lr} bl ov02_0233F308 bl ov02_0233F6AC ldmia sp!, {r3, pc} arm_func_end ov02_0233F2F8 arm_func_start ov02_0233F308 ov02_0233F308: ; 0x0233F308 stmdb sp!, {r3, r4, r5, lr} bl ov02_023374F4 mov r4, r0 cmp r4, #0 bgt _0233F324 ldmeqia sp!, {r3, r4, r5, pc} b _0233F4E8 _0233F324: sub r0, r4, #0x10 cmp r0, #3 addls pc, pc, r0, lsl #2 b _0233F4E8 _0233F334: ; jump table b _0233F348 ; case 0 b _0233F3F0 ; case 1 b _0233F444 ; case 2 b _0233F468 ; case 3 ldmia sp!, {r3, r4, r5, pc} ; case 4 _0233F348: ldr r0, _0233F60C ; =ov02_0235AAE4 ldr r1, [r0] ldrb r0, [r1, #0x14] cmp r0, #0 ldreqb r0, [r1, #0xa] cmpeq r0, #0 beq _0233F600 mov r0, #3 bl ov02_023480E0 ldr r0, _0233F60C ; =ov02_0235AAE4 ldr r2, [r0] ldrb r1, [r2, #0x14] add r0, r1, r1, lsl #1 add r0, r0, #2 add r0, r2, r0 ldrb r0, [r0, #8] cmp r0, #0 subeq r0, r1, #1 streqb r0, [r2, #0x14] ldr r0, _0233F60C ; =ov02_0235AAE4 mov r1, #0 ldr r3, [r0] mov r2, #3 ldrb r0, [r3, #0x14] add r3, r3, #8 add r0, r0, r0, lsl #1 add r0, r3, r0 bl MemsetFast ldr r0, _0233F60C ; =ov02_0235AAE4 ldr r1, [r0] ldrb r0, [r1, #0x14] cmp r0, #0 ldreqb r0, [r1, #0xa] cmpeq r0, #0 bne _0233F3DC mov r0, #0 bl ov02_02337508 _0233F3DC: mov r0, #1 bl ov02_0233751C mov r0, #0 bl ov02_02337530 b _0233F600 _0233F3F0: ldr r0, _0233F60C ; =ov02_0235AAE4 ldr r1, [r0] ldrb r0, [r1, #0x14] cmp r0, #3 bhs _0233F600 add r0, r0, r0, lsl #1 add r0, r0, #2 add r0, r1, r0 ldrb r0, [r0, #8] cmp r0, #0 beq _0233F600 mov r0, #1 bl ov02_023480E0 ldr r1, _0233F60C ; =ov02_0235AAE4 mov r0, #0 ldr r2, [r1] ldrb r1, [r2, #0x14] add r1, r1, #1 strb r1, [r2, #0x14] bl ov02_02337530 b _0233F600 _0233F444: ldr r0, _0233F60C ; =ov02_0235AAE4 mov r2, #0 ldr r1, [r0] mov r0, #7 strb r2, [r1, #0x15] bl ov02_023480E0 ldr r0, _0233F610 ; =ov02_0233F6B0 bl ov02_02338D68 ldmia sp!, {r3, r4, r5, pc} _0233F468: bl ov02_0233FACC cmp r0, #0 beq _0233F490 mov r0, #6 bl ov02_023480E0 ldr r0, _0233F60C ; =ov02_0235AAE4 mov r1, #1 ldr r0, [r0] strb r1, [r0, #0x15] b _0233F4A8 _0233F490: ldr r0, _0233F60C ; =ov02_0235AAE4 mov r2, #2 ldr r1, [r0] mov r0, #9 strb r2, [r1, #0x15] bl ov02_023480E0 _0233F4A8: ldr r1, _0233F60C ; =ov02_0235AAE4 mov r3, #3 ldr r2, [r1] ldr r0, _0233F614 ; =0xC1FFFCFF strb r3, [r2, #0x14] ldr r1, [r1] ldr r2, [r1, #4] ldr r1, [r2] and r0, r1, r0 orr r0, r0, #0x200 str r0, [r2] bl ov02_0233F8F0 bl ov02_0233FA54 ldr r0, _0233F610 ; =ov02_0233F6B0 bl ov02_02338D68 ldmia sp!, {r3, r4, r5, pc} _0233F4E8: ldr r0, _0233F60C ; =ov02_0235AAE4 ldr r0, [r0] ldrb r0, [r0, #0x14] cmp r0, #3 bne _0233F50C mov r0, #0x1a bl ov02_0233F618 cmp r0, #0 bne _0233F600 _0233F50C: mov r0, #1 bl ov02_023480E0 ldr r0, _0233F60C ; =ov02_0235AAE4 ldr r2, [r0] ldrb r1, [r2, #0x14] add r5, r2, #8 add lr, r1, r1, lsl #1 add ip, lr, #2 ldrb r3, [r5, ip] cmp r3, #0 streqb r4, [r5, ip] beq _0233F5A4 add r2, lr, #1 ldrb r1, [r5, r2] cmp r1, #0 bne _0233F580 strb r3, [r5, r2] mov r0, #0x1a strb r4, [r5, ip] bl ov02_0233F618 cmp r0, #0 beq _0233F5A4 ldr r0, _0233F60C ; =ov02_0235AAE4 ldr r1, [r0] ldrb r0, [r1, #0x14] cmp r0, #3 addlo r0, r0, #1 strlob r0, [r1, #0x14] b _0233F5A4 _0233F580: strb r1, [r5, lr] ldrb r1, [r5, ip] strb r1, [r5, r2] strb r4, [r5, ip] ldr r1, [r0] ldrb r0, [r1, #0x14] cmp r0, #3 addlo r0, r0, #1 strlob r0, [r1, #0x14] _0233F5A4: mov r0, #1 bl ov02_02337508 ldr r0, _0233F60C ; =ov02_0235AAE4 ldr r0, [r0] ldrb r0, [r0, #0x14] cmp r0, #3 bhs _0233F5CC mov r0, #1 bl ov02_02337530 b _0233F5D4 _0233F5CC: mov r0, #0 bl ov02_02337530 _0233F5D4: ldr r0, _0233F60C ; =ov02_0235AAE4 ldr r0, [r0] ldrb r0, [r0, #0x14] cmp r0, #3 bne _0233F600 mov r0, #0x1a bl ov02_0233F618 cmp r0, #0 beq _0233F600 mov r0, #0 bl ov02_0233751C _0233F600: bl ov02_0233F82C bl ov02_0233F8F0 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0233F60C: .word ov02_0235AAE4 _0233F610: .word ov02_0233F6B0 _0233F614: .word 0xC1FFFCFF arm_func_end ov02_0233F308 arm_func_start ov02_0233F618 ov02_0233F618: ; 0x0233F618 stmdb sp!, {r3, r4, lr} sub sp, sp, #4 ldr r1, _0233F6A8 ; =ov02_0235AAE4 mov r4, r0 ldr r1, [r1] ldrb r0, [r1, #0x14] add r3, r1, #8 add r2, r0, r0, lsl #1 ldrb r0, [r3, r2] cmp r0, #0 cmpne r0, #0x20 addne sp, sp, #4 movne r0, #1 ldmneia sp!, {r3, r4, pc} add r0, r3, r2 add r1, sp, #0 mov r2, #3 bl MemcpyFast mov r2, #0 add r3, sp, #0 strb r2, [sp, #3] mov r0, #0x20 _0233F670: ldrb r1, [r3] cmp r1, #0 bne _0233F68C add r2, r2, #1 cmp r2, #3 strb r0, [r3], #1 blt _0233F670 _0233F68C: add r0, sp, #0 bl sub_0208B360 cmp r0, r4 movge r0, #1 movlt r0, #0 add sp, sp, #4 ldmia sp!, {r3, r4, pc} .align 2, 0 _0233F6A8: .word ov02_0235AAE4 arm_func_end ov02_0233F618 arm_func_start ov02_0233F6AC ov02_0233F6AC: ; 0x0233F6AC bx lr arm_func_end ov02_0233F6AC arm_func_start ov02_0233F6B0 ov02_0233F6B0: ; 0x0233F6B0 stmdb sp!, {r3, lr} mov r0, #8 bl ov02_0234DAE0 ldr r0, _0233F6C8 ; =ov02_0233F6CC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233F6C8: .word ov02_0233F6CC arm_func_end ov02_0233F6B0 arm_func_start ov02_0233F6CC ov02_0233F6CC: ; 0x0233F6CC stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_023374C0 mov r0, #0x15 bl ov02_023480E0 ldr r0, _0233F6F8 ; =ov02_0233F6FC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233F6F8: .word ov02_0233F6FC arm_func_end ov02_0233F6CC arm_func_start ov02_0233F6FC ov02_0233F6FC: ; 0x0233F6FC stmdb sp!, {r3, lr} bl ov02_02337544 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233F778 ; =ov02_0235AAE4 ldr r0, [r0] ldrb r0, [r0, #0x15] cmp r0, #0 bne _0233F72C ldr r0, _0233F77C ; =ov02_0233F788 bl ov02_02338D68 ldmia sp!, {r3, pc} _0233F72C: mov r2, #1 cmp r0, #2 mov ip, #0 sub r3, r2, #2 bne _0233F75C mov r0, #6 mov r1, #3 str ip, [sp] bl ov02_02349394 ldr r0, _0233F780 ; =ov02_0233FC20 bl ov02_02338D68 ldmia sp!, {r3, pc} _0233F75C: mov r0, #0x47 mov r1, #2 str ip, [sp] bl ov02_02349394 ldr r0, _0233F784 ; =ov02_0233F944 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233F778: .word ov02_0235AAE4 _0233F77C: .word ov02_0233F788 _0233F780: .word ov02_0233FC20 _0233F784: .word ov02_0233F944 arm_func_end ov02_0233F6FC arm_func_start ov02_0233F788 ov02_0233F788: ; 0x0233F788 stmdb sp!, {r3, lr} bl ov02_02334D10 ldr r0, _0233F818 ; =ov02_0235AAE4 ldr r0, [r0] ldr r0, [r0, #4] bl ov02_0234F2C0 mov r0, #0 bl ov02_0234E02C ldr r0, _0233F81C ; =ov02_023539D0 ldr r1, _0233F820 ; =GX_LoadOBJPltt bl ov02_02334DA8 mov r0, #1 mov r1, r0 bl ov02_0234E424 mov r0, #0 mov r1, #0x15 bl ov02_0234E424 add r0, sp, #0 mov r1, #0 bl ov02_02338DC8 ldr r0, [sp] mov r1, #1 cmp r0, #3 addge r0, r0, #1 strge r0, [sp] mov r0, #2 bl ov02_02338D78 ldr r1, [sp] mov r0, #0 add r1, r1, #3 bl ov02_02338DB4 ldr r0, _0233F824 ; =ov02_023402CC bl ov02_02338D68 ldr r0, _0233F828 ; =ov02_0235AAE4 bl ov02_0234E7D8 ldmia sp!, {r3, pc} .align 2, 0 _0233F818: .word ov02_0235AAE4 _0233F81C: .word ov02_023539D0 _0233F820: .word GX_LoadOBJPltt _0233F824: .word ov02_023402CC _0233F828: .word ov02_0235AAE4 arm_func_end ov02_0233F788 arm_func_start ov02_0233F82C ov02_0233F82C: ; 0x0233F82C stmdb sp!, {r4, r5, r6, r7, r8, sb, lr} sub sp, sp, #0x1c ldr r0, _0233F8E4 ; =ov02_0235AAE4 ldr r1, _0233F8E8 ; =ov02_02352A5C ldr r0, [r0] ldrh r5, [r1, #0xe] ldrh r4, [r1, #0x10] mov r3, #0xb mov r2, #0x10 ldr r0, [r0] mov r1, #0 strh r5, [sp, #0x14] strh r4, [sp, #0x16] strh r3, [sp, #0x18] strh r2, [sp, #0x1a] bl ov02_0234E2A8 mov r4, #0 ldr r5, _0233F8EC ; =ov02_02352A9C ldr r6, _0233F8E4 ; =ov02_0235AAE4 strh r4, [sp, #0x12] mov sb, #2 mov r8, #0x480 add r7, sp, #0x10 _0233F888: ldr ip, [r6] ldrb r1, [r5], #1 add r0, ip, r4 ldrb r3, [r0, #8] ldrh r0, [sp, #0x1a] ldrh r2, [sp, #0x16] strh r3, [sp, #0x10] stmia sp, {r0, sb} str r8, [sp, #8] str r7, [sp, #0xc] ldrh r3, [sp, #0x18] ldr r0, [ip] strh r1, [sp, #0x14] bl ov02_0234E1E8 add r4, r4, #1 cmp r4, #0xc blt _0233F888 ldr r0, _0233F8E4 ; =ov02_0235AAE4 ldr r0, [r0] ldr r0, [r0] bl ov02_0234E354 add sp, sp, #0x1c ldmia sp!, {r4, r5, r6, r7, r8, sb, pc} .align 2, 0 _0233F8E4: .word ov02_0235AAE4 _0233F8E8: .word ov02_02352A5C _0233F8EC: .word ov02_02352A9C arm_func_end ov02_0233F82C arm_func_start ov02_0233F8F0 ov02_0233F8F0: ; 0x0233F8F0 ldr r0, _0233F938 ; =ov02_0235AAE4 ldr r2, [r0] ldrb r0, [r2, #0x14] ldr r3, [r2, #4] cmp r0, #3 movgt r0, #3 add r1, r0, r0, lsl #1 ldr r0, _0233F93C ; =ov02_02352A9C add r1, r1, #2 ldrb r2, [r0, r1] ldr r1, [r3] ldr r0, _0233F940 ; =0xFE00FF00 mov r2, r2, lsl #0x17 and r0, r1, r0 orr r0, r0, #0x28 orr r0, r0, r2, lsr #7 str r0, [r3] bx lr .align 2, 0 _0233F938: .word ov02_0235AAE4 _0233F93C: .word ov02_02352A9C _0233F940: .word 0xFE00FF00 arm_func_end ov02_0233F8F0 arm_func_start ov02_0233F944 ov02_0233F944: ; 0x0233F944 stmdb sp!, {r3, lr} bl ov02_02349704 ldr r1, _0233F998 ; =ov02_0235AAE4 ldr r2, [r1] strb r0, [r2, #0x15] ldr r0, [r1] ldrb r0, [r0, #0x15] cmp r0, #0 beq _0233F974 cmp r0, #1 beq _0233F980 ldmia sp!, {r3, pc} _0233F974: mov r0, #7 bl ov02_023480E0 b _0233F988 _0233F980: mov r0, #0xe bl ov02_023480E0 _0233F988: bl ov02_023496C0 ldr r0, _0233F99C ; =ov02_0233F9A0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233F998: .word ov02_0235AAE4 _0233F99C: .word ov02_0233F9A0 arm_func_end ov02_0233F944 arm_func_start ov02_0233F9A0 ov02_0233F9A0: ; 0x0233F9A0 stmdb sp!, {r3, lr} sub sp, sp, #0x18 ldr lr, _0233FA40 ; =ov02_02352A88 add ip, sp, #4 ldmia lr!, {r0, r1, r2, r3} stmia ip!, {r0, r1, r2, r3} ldr r0, [lr] str r0, [ip] bl ov02_02349718 cmp r0, #0 addne sp, sp, #0x18 ldmneia sp!, {r3, pc} ldr r0, _0233FA44 ; =ov02_0235AAE4 ldr r1, [r0] ldrb r0, [r1, #0x15] cmp r0, #0 bne _0233FA08 ldr r3, [r1, #4] ldr r1, _0233FA48 ; =0xC1FFFCFF ldr r2, [r3] ldr r0, _0233FA4C ; =ov02_0233F24C and r1, r2, r1 str r1, [r3] bl ov02_02338D68 add sp, sp, #0x18 ldmia sp!, {r3, pc} _0233FA08: add r0, sp, #0 mov r1, #0 bl ov02_02338DC8 ldr r0, _0233FA44 ; =ov02_0235AAE4 ldr r2, [sp] add r1, sp, #4 ldr r0, [r0] ldr r1, [r1, r2, lsl #2] add r0, r0, #8 blx r1 ldr r0, _0233FA50 ; =ov02_0233F788 bl ov02_02338D68 add sp, sp, #0x18 ldmia sp!, {r3, pc} .align 2, 0 _0233FA40: .word ov02_02352A88 _0233FA44: .word ov02_0235AAE4 _0233FA48: .word 0xC1FFFCFF _0233FA4C: .word ov02_0233F24C _0233FA50: .word ov02_0233F788 arm_func_end ov02_0233F9A0 arm_func_start ov02_0233FA54 ov02_0233FA54: ; 0x0233FA54 stmdb sp!, {r4, r5, r6, lr} mov r4, #0 ldr r0, _0233FAC8 ; =ov02_0235AAE4 mov r6, r4 mov r1, #0x20 mov r2, #0x30 mov ip, r4 _0233FA70: ldr r3, [r0] mov r5, ip add r3, r3, #8 add lr, r3, r6 _0233FA80: ldrb r3, [lr, r5] cmp r3, #0x30 cmpne r3, #0x20 cmpne r3, #0 bne _0233FAB0 cmp r5, #2 moveq r3, r2 movne r3, r1 strb r3, [lr, r5] add r5, r5, #1 cmp r5, #3 blt _0233FA80 _0233FAB0: add r4, r4, #1 cmp r4, #4 add r6, r6, #3 blt _0233FA70 bl ov02_0233F82C ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _0233FAC8: .word ov02_0235AAE4 arm_func_end ov02_0233FA54 arm_func_start ov02_0233FACC ov02_0233FACC: ; 0x0233FACC stmdb sp!, {r3, r4, r5, r6, r7, r8, lr} sub sp, sp, #0xc ldr r2, _0233FC18 ; =ov02_02352A5C mov r0, #0 ldrb ip, [r2] ldrb r3, [r2, #1] ldr r1, _0233FC1C ; =ov02_0235AAE4 strb ip, [sp, #8] strb r3, [sp, #9] ldrb ip, [r2, #2] ldrb r3, [r2, #3] ldr r2, [r1] add r4, sp, #8 strb ip, [sp, #0xa] mov r7, r0 strb r3, [sp, #0xb] add lr, r2, #8 mov ip, r0 _0233FB14: ldrb r1, [lr, r7] add r5, lr, r7 cmp r1, #0x20 beq _0233FB58 mov r6, ip mov r8, r4 _0233FB2C: ldrb r3, [r5, r6] ldrb r1, [r8] cmp r3, r1 addhi sp, sp, #0xc movhi r0, #0 ldmhiia sp!, {r3, r4, r5, r6, r7, r8, pc} blo _0233FB58 add r6, r6, #1 cmp r6, #3 add r8, r8, #1 blt _0233FB2C _0233FB58: add r0, r0, #1 cmp r0, #4 add r7, r7, #3 blt _0233FB14 add r1, sp, #0 add r0, r2, #8 bl ov02_02347F80 add r0, sp, #4 mov r1, #0 bl ov02_02338DC8 ldr r0, [sp, #4] cmp r0, #1 bne _0233FBFC mov r4, #0 mov r1, #1 add r5, sp, #0 mov r6, r4 mov r2, r1 mov ip, r4 _0233FBA4: ldrb r3, [r5] mov r7, ip _0233FBAC: cmp r4, #0 rsb r0, r7, #7 beq _0233FBCC tst r3, r2, lsl r0 beq _0233FBD4 add sp, sp, #0xc mov r0, #0 ldmia sp!, {r3, r4, r5, r6, r7, r8, pc} _0233FBCC: tst r3, r1, lsl r0 moveq r4, r1 _0233FBD4: add r7, r7, #1 cmp r7, #8 blt _0233FBAC add r6, r6, #1 cmp r6, #4 add r5, r5, #1 blt _0233FBA4 add sp, sp, #0xc mov r0, #1 ldmia sp!, {r3, r4, r5, r6, r7, r8, pc} _0233FBFC: add r0, sp, #0 bl ov00_022ED8C0 cmp r0, #0 movne r0, #1 moveq r0, #0 add sp, sp, #0xc ldmia sp!, {r3, r4, r5, r6, r7, r8, pc} .align 2, 0 _0233FC18: .word ov02_02352A5C _0233FC1C: .word ov02_0235AAE4 arm_func_end ov02_0233FACC arm_func_start ov02_0233FC20 ov02_0233FC20: ; 0x0233FC20 stmdb sp!, {r3, lr} bl ov02_02349704 cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #6 bl ov02_023480E0 bl ov02_023496C0 ldr r0, _0233FC48 ; =ov02_0233FC4C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233FC48: .word ov02_0233FC4C arm_func_end ov02_0233FC20 arm_func_start ov02_0233FC4C ov02_0233FC4C: ; 0x0233FC4C stmdb sp!, {r3, lr} bl ov02_02349718 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0233FC84 ; =ov02_0235AAE4 ldr r1, _0233FC88 ; =0xC1FFFCFF ldr r2, [r0] ldr r0, _0233FC8C ; =ov02_0233F24C ldr r3, [r2, #4] ldr r2, [r3] and r1, r2, r1 str r1, [r3] bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233FC84: .word ov02_0235AAE4 _0233FC88: .word 0xC1FFFCFF _0233FC8C: .word ov02_0233F24C arm_func_end ov02_0233FC4C arm_func_start ov02_0233FC90 ov02_0233FC90: ; 0x0233FC90 stmdb sp!, {r3, lr} bl ov02_0233FCAC bl ov02_0233FD2C ldr r0, _0233FCA8 ; =ov02_023400A0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0233FCA8: .word ov02_023400A0 arm_func_end ov02_0233FC90 arm_func_start ov02_0233FCAC ov02_0233FCAC: ; 0x0233FCAC stmdb sp!, {r3, lr} ldr r0, _0233FD1C ; =ov02_023539E8 ldr r1, _0233FD20 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _0233FD24 ; =0x04001008 ldr r1, _0233FD28 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _0233FD1C: .word ov02_023539E8 _0233FD20: .word GX_LoadBG2Scr _0233FD24: .word 0x04001008 _0233FD28: .word 0x0400000A arm_func_end ov02_0233FCAC arm_func_start ov02_0233FD2C ov02_0233FD2C: ; 0x0233FD2C stmdb sp!, {r4, r5, r6, r7, lr} sub sp, sp, #0x2c add r1, sp, #0x18 mov r0, #0 bl ov02_02338DC8 ldr r0, _02340074 ; =ov02_0235AAE8 ldr r2, _02340078 ; =0xFFFFB17D ldr r1, [r0] cmp r1, r2 movge r6, #0 bge _0233FF88 sub r0, r2, #1 cmp r1, r0 movge r6, #2 bge _0233FF88 sub r0, r2, #2 cmp r1, r0 movge r6, #0x13 bge _0233FF88 sub r0, r2, #8 cmp r1, r0 movge r6, #2 bge _0233FF88 sub r0, r2, #9 cmp r1, r0 movge r6, #0x12 bge _0233FF88 sub r0, r2, #0xa cmp r1, r0 movge r6, #2 bge _0233FF88 sub r0, r2, #0xb cmp r1, r0 movge r6, #3 bge _0233FF88 sub r0, r2, #0x384 cmp r1, r0 movge r6, #2 bge _0233FF88 ldr r0, _0234007C ; =0xFFFFA629 cmp r1, r0 movge r6, #0 bge _0233FF88 sub r0, r0, #0x3e8 cmp r1, r0 movge r6, #0x13 bge _0233FF88 ldr r0, _02340080 ; =0xFFFF3CB1 cmp r1, r0 movge r6, #0 bge _0233FF88 sub r2, r0, #3 cmp r1, r2 movge r6, #7 bge _0233FF88 sub r2, r0, #4 cmp r1, r2 movge r6, #5 bge _0233FF88 sub r2, r0, #0x63 cmp r1, r2 movge r6, #0 bge _0233FF88 sub r2, r0, #0x64 cmp r1, r2 blt _0233FE48 ldr r0, [sp, #0x18] cmp r0, #2 moveq r6, #5 movne r6, #7 b _0233FF88 _0233FE48: ldr r3, _02340084 ; =0xFFFF3866 cmp r1, r3 movge r6, #0 bge _0233FF88 sub r2, r3, #1 cmp r1, r2 blt _0233FE78 ldr r0, [sp, #0x18] cmp r0, #2 moveq r6, #5 movne r6, #8 b _0233FF88 _0233FE78: sub r2, r3, #4 cmp r1, r2 movge r6, #9 bge _0233FF88 sub r2, r3, #5 cmp r1, r2 movge r6, #5 bge _0233FF88 sub r2, r3, #0x65 cmp r1, r2 movge r6, #0 bge _0233FF88 sub r2, r3, #0xc9 cmp r1, r2 movge r6, #0x14 bge _0233FF88 sub r2, r3, #0xcc cmp r1, r2 movge r6, #0x15 bge _0233FF88 sub r2, r3, #0xcd cmp r1, r2 movge r6, #4 bge _0233FF88 sub r0, r0, #0x7d0 cmp r1, r0 movge r6, #0 bge _0233FF88 sub r0, r3, #0x388 cmp r1, r0 movge r6, #0xa bge _0233FF88 ldr r2, _02340088 ; =0xFFFF34DD cmp r1, r2 movge r6, #0x16 bge _0233FF88 sub r0, r2, #0x60 cmp r1, r0 movge r6, #0 bge _0233FF88 sub r0, r2, #0x64 cmp r1, r0 movge r6, #0xb bge _0233FF88 sub r0, r2, #0xc4 cmp r1, r0 movge r6, #0 bge _0233FF88 sub r0, r2, #0xc8 cmp r1, r0 movge r6, #0xb bge _0233FF88 sub r0, r2, #0x128 cmp r1, r0 movge r6, #0 bge _0233FF88 sub r0, r2, #0x18c cmp r1, r0 movge r6, #2 bge _0233FF88 sub r0, r2, #0x3e4 cmp r1, r0 movge r6, #0 bge _0233FF88 sub r0, r2, #0x510 cmp r1, r0 movge r6, #2 movlt r6, #0 _0233FF88: bl ov02_02338DF0 mov r2, r0 ldr r1, _0234008C ; =ov02_02352AA8 mov r0, #0 ldrb r1, [r1, r2] bl ov02_0234DDC8 ldr r1, _02340090 ; =ov02_0235AA98 mov r5, r0 ldr r0, [r1] mov r1, r6 bl ov02_02338F5C ldr r3, _02340074 ; =ov02_0235AAE8 mov r4, r0 ldr r3, [r3] ldr r2, _02340094 ; =ov02_023539FC add r0, sp, #0x10 mov r1, #8 rsb r3, r3, #0 bl sub_0207911C add r0, sp, #0x1c add r1, sp, #0x10 mov r2, #8 bl ov02_0234F5C8 bl ov02_02338DF0 mov r1, r0, lsl #2 ldr r0, _02340098 ; =ov02_02352ABA ldrh r7, [r0, r1] bl ov02_02338DF0 mov r3, r0, lsl #2 ldr r1, _0234009C ; =ov02_02352AB8 mov r0, #0xa ldrh r1, [r1, r3] str r0, [sp] add r3, sp, #0x1c str r3, [sp, #4] mov r0, #0 str r0, [sp, #8] mov r2, r7 mov r0, r5 mov r3, #2 bl ov02_0234E13C cmp r6, #0 beq _02340064 bl ov02_02334FA0 mov r1, #0x5e str r1, [sp] mov r1, #2 str r1, [sp, #4] str r0, [sp, #8] mov r0, r5 mov r1, #0xd mov r2, #0x3c mov r3, #0xe6 str r4, [sp, #0xc] bl ov02_0234E1E8 _02340064: mov r0, r5 bl ov02_0234E354 add sp, sp, #0x2c ldmia sp!, {r4, r5, r6, r7, pc} .align 2, 0 _02340074: .word ov02_0235AAE8 _02340078: .word 0xFFFFB17D _0234007C: .word 0xFFFFA629 _02340080: .word 0xFFFF3CB1 _02340084: .word 0xFFFF3866 _02340088: .word 0xFFFF34DD _0234008C: .word ov02_02352AA8 _02340090: .word ov02_0235AA98 _02340094: .word ov02_023539FC _02340098: .word ov02_02352ABA _0234009C: .word ov02_02352AB8 arm_func_end ov02_0233FD2C arm_func_start ov02_023400A0 ov02_023400A0: ; 0x023400A0 stmdb sp!, {r3, lr} mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _023400D0 ; =ov02_023400D4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023400D0: .word ov02_023400D4 arm_func_end ov02_023400A0 arm_func_start ov02_023400D4 ov02_023400D4: ; 0x023400D4 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #4 bl ov02_02334E38 ldr r0, _0234010C ; =ov02_02340110 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0234010C: .word ov02_02340110 arm_func_end ov02_023400D4 arm_func_start ov02_02340110 ov02_02340110: ; 0x02340110 stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _02340134 ; =ov02_02340138 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02340134: .word ov02_02340138 arm_func_end ov02_02340110 arm_func_start ov02_02340138 ov02_02340138: ; 0x02340138 stmdb sp!, {r3, lr} bl ov02_0234014C bl ov02_0234016C bl ov02_02340170 ldmia sp!, {r3, pc} arm_func_end ov02_02340138 arm_func_start ov02_0234014C ov02_0234014C: ; 0x0234014C stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234EBBC cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} arm_func_end ov02_0234014C arm_func_start ov02_0234016C ov02_0234016C: ; 0x0234016C bx lr arm_func_end ov02_0234016C arm_func_start ov02_02340170 ov02_02340170: ; 0x02340170 stmdb sp!, {r3, lr} bl ov02_023346DC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #6 bl ov02_023480E0 ldr r0, _02340194 ; =ov02_02340198 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02340194: .word ov02_02340198 arm_func_end ov02_02340170 arm_func_start ov02_02340198 ov02_02340198: ; 0x02340198 stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _023401B4 ; =ov02_023401B8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023401B4: .word ov02_023401B8 arm_func_end ov02_02340198 arm_func_start ov02_023401B8 ov02_023401B8: ; 0x023401B8 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_023346AC mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _02340204 ; =ov02_02340208 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02340204: .word ov02_02340208 arm_func_end ov02_023401B8 arm_func_start ov02_02340208 ov02_02340208: ; 0x02340208 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_0234E02C bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 mov r0, #0 mov r1, #0x15 bl ov02_0234E424 add r1, sp, #0 mov r0, #0 bl ov02_02338DC8 ldr r0, [sp] cmp r0, #0 mov r0, #2 beq _0234028C mov r1, #1 bl ov02_02338D78 ldr r0, _023402B4 ; =ov02_02343DB0 bl ov02_02338D68 ldmia sp!, {r3, pc} _0234028C: mov r1, #0 bl ov02_02338D78 mov r0, #0 mov r1, r0 bl ov02_02338DB4 mov r0, #0 bl ov02_02342798 ldr r0, _023402B8 ; =ov02_023402CC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023402B4: .word ov02_02343DB0 _023402B8: .word ov02_023402CC arm_func_end ov02_02340208 arm_func_start ov02_023402BC ov02_023402BC: ; 0x023402BC ldr r1, _023402C8 ; =ov02_0235AAE8 str r0, [r1] bx lr .align 2, 0 _023402C8: .word ov02_0235AAE8 arm_func_end ov02_023402BC arm_func_start ov02_023402CC ov02_023402CC: ; 0x023402CC stmdb sp!, {r3, r4, r5, r6, r7, r8, lr} sub sp, sp, #4 bl ov02_02347518 mov r4, r0 mov r0, #0x48 mov r1, #4 bl ov02_0234E7B4 ldr r1, _023404B0 ; =ov02_0235AAEC mov r2, #0xc str r0, [r1, #8] ldrb r3, [r4, #0xf6] strb r3, [r0, #0x43] ldr r0, [r1, #8] strb r2, [r0, #0x42] bl ov02_023406DC bl ov02_023404C8 ldr r0, _023404B0 ; =ov02_0235AAEC ldrb r0, [r0, #1] cmp r0, #0 bne _0234033C bl ov02_02338DF0 ldr r1, _023404B4 ; =ov02_02352BB0 ldrb r2, [r4, #0xf4] ldrsb r1, [r1, r0] mov r0, #0x30 add r2, r2, #1 bl ov02_02334C3C b _0234034C _0234033C: mov r0, #0x45 sub r1, r0, #0x46 mov r2, #0 bl ov02_02334C3C _0234034C: mov r0, #1 bl ov02_02334DE8 bl ov02_023352DC ldr r0, _023404B0 ; =ov02_0235AAEC mov r1, #0x37 ldrh r3, [r0, #4] ldr r2, _023404B8 ; =0xE1FC780F mov r0, #2 mul r5, r3, r1 smull r1, r3, r2, r5 add r3, r5, r3 mov r1, r5, lsr #0x1f add r3, r1, r3, asr #7 str r3, [sp] mov r1, #0x55 mov r2, #0xf1 mov r3, #0x41 bl ov02_02346964 mov r0, #0 mov r1, #1 bl ov02_0234DDC8 ldr r6, _023404B0 ; =ov02_0235AAEC mov r5, #0 ldr r1, [r6, #8] mov r8, r5 str r0, [r1, #0x14] mov r7, #0x29 _023403B8: mov r0, r8 mov r1, r7 bl ov02_0234D6AC ldr r1, [r6, #8] add r1, r1, r5, lsl #2 add r5, r5, #1 str r0, [r1, #0x18] cmp r5, #7 blt _023403B8 ldrb r0, [r4, #0xe7] cmp r0, #1 beq _023403F4 cmp r0, #2 beq _02340428 b _02340458 _023403F4: mov r0, #0 mov r1, #0x50 bl ov02_0234D6AC ldr r1, _023404B0 ; =ov02_0235AAEC ldr r2, [r1, #8] str r0, [r2, #0x34] ldr r0, [r1, #8] ldr r1, [r0, #0x34] ldrh r0, [r1, #4] bic r0, r0, #0xc00 orr r0, r0, #0xc00 strh r0, [r1, #4] b _02340458 _02340428: mov r0, #0 mov r1, #0x51 bl ov02_0234D6AC ldr r1, _023404B0 ; =ov02_0235AAEC ldr r2, [r1, #8] str r0, [r2, #0x34] ldr r0, [r1, #8] ldr r1, [r0, #0x34] ldrh r0, [r1, #4] bic r0, r0, #0xc00 orr r0, r0, #0xc00 strh r0, [r1, #4] _02340458: ldr r1, _023404BC ; =ov02_02342020 mov r0, #1 mov r2, #0 mov r3, #0x6e bl ov02_0234FA98 ldr r2, _023404B0 ; =ov02_0235AAEC ldr r1, _023404C0 ; =ov02_02342580 ldr r2, [r2, #8] mov r3, #0x78 str r0, [r2, #0x3c] mov r0, #0 mov r2, r0 bl ov02_0234FA98 ldr r1, _023404B0 ; =ov02_0235AAEC ldr r1, [r1, #8] str r0, [r1] bl ov02_02341294 bl ov02_023420A4 ldr r0, _023404C4 ; =ov02_02340718 bl ov02_02338D68 add sp, sp, #4 ldmia sp!, {r3, r4, r5, r6, r7, r8, pc} .align 2, 0 _023404B0: .word ov02_0235AAEC _023404B4: .word ov02_02352BB0 _023404B8: .word 0xE1FC780F _023404BC: .word ov02_02342020 _023404C0: .word ov02_02342580 _023404C4: .word ov02_02340718 arm_func_end ov02_023402CC arm_func_start ov02_023404C8 ov02_023404C8: ; 0x023404C8 stmdb sp!, {lr} sub sp, sp, #0x44 ldr r3, _0234069C ; =ov02_02352B4F add ip, sp, #0x2b mov r2, #0xb _023404DC: ldrb r1, [r3] ldrb r0, [r3, #1] add r3, r3, #2 strb r1, [ip] strb r0, [ip, #1] add ip, ip, #2 subs r2, r2, #1 bne _023404DC ldrb r0, [r3] ldr r3, _023406A0 ; =ov02_02352B24 add lr, sp, #0x16 strb r0, [ip] mov r2, #0xa _02340510: ldrb r1, [r3] ldrb r0, [r3, #1] add r3, r3, #2 strb r1, [lr] strb r0, [lr, #1] add lr, lr, #2 subs r2, r2, #1 bne _02340510 ldrb r0, [r3] ldr ip, _023406A4 ; =ov02_02352B39 add r3, sp, #0 strb r0, [lr] mov r2, #0xb _02340544: ldrb r1, [ip] ldrb r0, [ip, #1] add ip, ip, #2 strb r1, [r3] strb r0, [r3, #1] add r3, r3, #2 subs r2, r2, #1 bne _02340544 ldr r3, _023406A8 ; =0x0400000C ldr r0, _023406AC ; =ov02_02353A00 ldrh r2, [r3] ldr r1, _023406B0 ; =GX_LoadOBJPltt and r2, r2, #0x43 orr r2, r2, #0x218 orr r2, r2, #0xc00 strh r2, [r3] bl ov02_02334DA8 ldr r0, _023406B4 ; =ov02_02353A14 ldr r1, _023406B8 ; =GX_LoadBG3Char bl ov02_02334DA8 ldr r0, _023406BC ; =ov02_02353A2C ldr r1, _023406C0 ; =GX_LoadBG2Char bl ov02_02334DA8 ldr r1, _023406C4 ; =GX_LoadBGPltt add r0, sp, #0x16 bl ov02_02334DA8 ldr r0, _023406C8 ; =ov02_02353A44 ldr r1, _023406CC ; =GX_LoadBG3Scr bl ov02_02334DA8 add r0, sp, #0x2b bl ov02_02334D48 mov r1, #0 mov r2, #4 bl ov02_0234CE84 ldr r1, _023406D0 ; =ov02_0235AAEC ldr r2, [r1, #8] str r0, [r2, #8] ldr r0, [r1, #8] ldr r0, [r0, #8] bl ov02_02346750 bl ov02_023467DC add r0, sp, #0x16 bl ov02_02334D48 mov r1, #0 mov r2, #4 bl ov02_0234CE84 ldr r1, _023406D0 ; =ov02_0235AAEC ldr r1, [r1, #8] str r0, [r1, #0xc] add r0, sp, #0 bl ov02_02334D48 mov r1, #0 mov r2, #4 bl ov02_0234CE84 ldr r1, _023406D0 ; =ov02_0235AAEC ldr r2, _023406D4 ; =0x04001008 ldr r1, [r1, #8] str r0, [r1, #0x10] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r2, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2, #2] sub r2, r2, #0x1000 ldrh r0, [r2] ldr r1, _023406D8 ; =0x0400000A bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #2 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldrh r0, [r1, #4] bic r0, r0, #3 orr r0, r0, #2 strh r0, [r1, #4] add sp, sp, #0x44 ldmia sp!, {pc} .align 2, 0 _0234069C: .word ov02_02352B4F _023406A0: .word ov02_02352B24 _023406A4: .word ov02_02352B39 _023406A8: .word 0x0400000C _023406AC: .word ov02_02353A00 _023406B0: .word GX_LoadOBJPltt _023406B4: .word ov02_02353A14 _023406B8: .word GX_LoadBG3Char _023406BC: .word ov02_02353A2C _023406C0: .word GX_LoadBG2Char _023406C4: .word GX_LoadBGPltt _023406C8: .word ov02_02353A44 _023406CC: .word GX_LoadBG3Scr _023406D0: .word ov02_0235AAEC _023406D4: .word 0x04001008 _023406D8: .word 0x0400000A arm_func_end ov02_023404C8 arm_func_start ov02_023406DC ov02_023406DC: ; 0x023406DC stmdb sp!, {r3, lr} bl ov02_02347518 add r1, sp, #0 mov r0, #0 bl ov02_02338DC8 ldr r0, [sp] cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02340714 ; =ov02_0235AAEC mov r1, #0 strh r1, [r0, #4] strb r1, [r0] strb r1, [r0, #2] ldmia sp!, {r3, pc} .align 2, 0 _02340714: .word ov02_0235AAEC arm_func_end ov02_023406DC arm_func_start ov02_02340718 ov02_02340718: ; 0x02340718 stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #2 mov r1, #0 mov r2, #0x1d mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 mov r0, #0 mov r1, #0x1d bl ov02_0234E3D0 ldr r0, _02340768 ; =ov02_0234076C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02340768: .word ov02_0234076C arm_func_end ov02_02340718 arm_func_start ov02_0234076C ov02_0234076C: ; 0x0234076C stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0234079C ; =ov02_023407A0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0234079C: .word ov02_023407A0 arm_func_end ov02_0234076C arm_func_start ov02_023407A0 ov02_023407A0: ; 0x023407A0 stmdb sp!, {r3, lr} bl ov02_023407B0 bl ov02_02340CD8 ldmia sp!, {r3, pc} arm_func_end ov02_023407A0 arm_func_start ov02_023407B0 ov02_023407B0: ; 0x023407B0 stmdb sp!, {r3, lr} ldr r0, _02340A20 ; =ov02_0235AAEC ldr r1, [r0, #8] ldr r0, [r1, #0x38] cmp r0, #0 ldreqb r0, [r1, #0x45] cmpeq r0, #0 ldmneia sp!, {r3, pc} bl ov02_02340A30 cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #1 bl ov02_0234EBBC cmp r0, #0 beq _023407FC ldr r0, _02340A20 ; =ov02_0235AAEC ldrb r0, [r0] bl ov02_02340AB4 ldmia sp!, {r3, pc} _023407FC: mov r0, #2 bl ov02_0234EBBC cmp r0, #0 beq _02340830 mov r0, #7 bl ov02_023480E0 ldr r1, _02340A20 ; =ov02_0235AAEC ldr r0, _02340A24 ; =ov02_02340F34 ldr r1, [r1, #8] mov r2, #0xd strb r2, [r1, #0x40] bl ov02_02338D68 ldmia sp!, {r3, pc} _02340830: mov r0, #0x200 bl ov02_0234EBFC cmp r0, #0 beq _023408A8 ldr r0, _02340A20 ; =ov02_0235AAEC ldrh r1, [r0, #4] cmp r1, #0x91 bne _0234087C ldr r0, [r0, #8] ldrb r0, [r0, #0x47] cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #9 bl ov02_023480E0 ldr r0, _02340A20 ; =ov02_0235AAEC mov r1, #1 ldr r0, [r0, #8] strb r1, [r0, #0x47] ldmia sp!, {r3, pc} _0234087C: mov r0, #0x13 bl ov02_023480E0 mov r0, #0 ldr r1, _02340A28 ; =ov02_02341F7C mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _02340A20 ; =ov02_0235AAEC ldr r1, [r1, #8] str r0, [r1, #0x38] ldmia sp!, {r3, pc} _023408A8: mov r0, #0x200 bl ov02_0234EC3C cmp r0, #0 beq _023408CC ldr r0, _02340A20 ; =ov02_0235AAEC mov r1, #0 ldr r0, [r0, #8] strb r1, [r0, #0x47] ldmia sp!, {r3, pc} _023408CC: mov r0, #0x100 bl ov02_0234EBFC cmp r0, #0 beq _02340944 ldr r0, _02340A20 ; =ov02_0235AAEC ldrh r1, [r0, #4] cmp r1, #0 bne _02340918 ldr r0, [r0, #8] ldrb r0, [r0, #0x47] cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #9 bl ov02_023480E0 ldr r0, _02340A20 ; =ov02_0235AAEC mov r1, #1 ldr r0, [r0, #8] strb r1, [r0, #0x47] ldmia sp!, {r3, pc} _02340918: mov r0, #0x13 bl ov02_023480E0 mov r0, #0 ldr r1, _02340A2C ; =ov02_02341EB4 mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _02340A20 ; =ov02_0235AAEC ldr r1, [r1, #8] str r0, [r1, #0x38] ldmia sp!, {r3, pc} _02340944: mov r0, #0x100 bl ov02_0234EC3C cmp r0, #0 beq _02340968 ldr r0, _02340A20 ; =ov02_0235AAEC mov r1, #0 ldr r0, [r0, #8] strb r1, [r0, #0x47] ldmia sp!, {r3, pc} _02340968: mov r0, #0x40 bl ov02_0234EBFC cmp r0, #0 beq _02340984 mov r0, #1 bl ov02_0234225C ldmia sp!, {r3, pc} _02340984: mov r0, #0x40 bl ov02_0234EC3C cmp r0, #0 beq _023409A8 ldr r0, _02340A20 ; =ov02_0235AAEC mov r1, #0 ldr r0, [r0, #8] strb r1, [r0, #0x47] ldmia sp!, {r3, pc} _023409A8: mov r0, #0x80 bl ov02_0234EBFC cmp r0, #0 beq _023409C4 mov r0, #3 bl ov02_0234225C ldmia sp!, {r3, pc} _023409C4: mov r0, #0x80 bl ov02_0234EC3C cmp r0, #0 beq _023409E8 ldr r0, _02340A20 ; =ov02_0235AAEC mov r1, #0 ldr r0, [r0, #8] strb r1, [r0, #0x47] ldmia sp!, {r3, pc} _023409E8: mov r0, #0x20 bl ov02_0234EBFC cmp r0, #0 beq _02340A04 mov r0, #0 bl ov02_0234225C ldmia sp!, {r3, pc} _02340A04: mov r0, #0x10 bl ov02_0234EBFC cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #2 bl ov02_0234225C ldmia sp!, {r3, pc} .align 2, 0 _02340A20: .word ov02_0235AAEC _02340A24: .word ov02_02340F34 _02340A28: .word ov02_02341F7C _02340A2C: .word ov02_02341EB4 arm_func_end ov02_023407B0 arm_func_start ov02_02340A30 ov02_02340A30: ; 0x02340A30 stmdb sp!, {r4, lr} bl ov02_02347518 bl ov02_02341BD8 mov r4, r0 cmp r4, #0xe moveq r0, #0 ldmeqia sp!, {r4, pc} bl ov02_02341644 cmp r0, #0 bne _02340A68 mov r0, #9 bl ov02_023480E0 mov r0, #1 ldmia sp!, {r4, pc} _02340A68: mov r0, r4 bl ov02_0234222C cmp r4, #8 addls pc, pc, r4, lsl #2 b _02340AA4 _02340A7C: ; jump table b _02340AA4 ; case 0 b _02340AA4 ; case 1 b _02340AA0 ; case 2 b _02340AA0 ; case 3 b _02340AA4 ; case 4 b _02340AA4 ; case 5 b _02340AA4 ; case 6 b _02340AA0 ; case 7 b _02340AA0 ; case 8 _02340AA0: bl ov02_023425D4 _02340AA4: mov r0, r4 bl ov02_02340AB4 mov r0, #1 ldmia sp!, {r4, pc} arm_func_end ov02_02340A30 arm_func_start ov02_02340AB4 ov02_02340AB4: ; 0x02340AB4 stmdb sp!, {r3, r4, lr} sub sp, sp, #4 mov r4, r0 bl ov02_02341644 cmp r0, #0 bne _02340ADC mov r0, #9 bl ov02_023480E0 add sp, sp, #4 ldmia sp!, {r3, r4, pc} _02340ADC: cmp r4, #8 addls pc, pc, r4, lsl #2 b _02340B54 _02340AE8: ; jump table b _02340B54 ; case 0 b _02340B54 ; case 1 b _02340B0C ; case 2 b _02340B0C ; case 3 b _02340B54 ; case 4 b _02340B54 ; case 5 b _02340B54 ; case 6 b _02340B30 ; case 7 b _02340B30 ; case 8 _02340B0C: mov r0, #6 bl ov02_023480E0 sub r0, r4, #2 teq r0, #1 movne r0, #1 moveq r0, #0 bl ov02_02340C34 add sp, sp, #4 ldmia sp!, {r3, r4, pc} _02340B30: mov r0, #6 bl ov02_023480E0 sub r0, r4, #7 teq r0, #1 movne r0, #1 moveq r0, #0 bl ov02_02340CA0 add sp, sp, #4 ldmia sp!, {r3, r4, pc} _02340B54: ldr r0, _02340C24 ; =ov02_0235AAEC sub r1, r4, #0xb ldr r0, [r0, #8] cmp r1, #1 strb r4, [r0, #0x40] bhi _02340BD0 bl ov02_0234254C bl ov02_02342698 cmp r0, #0 bne _02340BB0 mov r0, #9 bl ov02_023480E0 mov r1, #1 mov ip, #0 mov r2, r1 sub r3, r1, #2 mov r0, #6 str ip, [sp] bl ov02_02349394 ldr r0, _02340C28 ; =ov02_02342738 bl ov02_02338D68 add sp, sp, #4 ldmia sp!, {r3, r4, pc} _02340BB0: cmp r4, #0xb bne _02340BC4 mov r0, #6 bl ov02_023480E0 b _02340C10 _02340BC4: mov r0, #0xe bl ov02_023480E0 b _02340C10 _02340BD0: cmp r4, #0xd bne _02340BE8 bl ov02_0234254C mov r0, #7 bl ov02_023480E0 b _02340C10 _02340BE8: mov r0, #6 bl ov02_023480E0 ldr r0, _02340C2C ; =ov02_02352BD0 ldrb r0, [r0, r4] bl ov02_02341E4C mov r2, r0 mov r0, #0 mov r1, #1 bl ov02_023416D8 bl ov02_023419C8 _02340C10: bl ov02_02346AC4 ldr r0, _02340C30 ; =ov02_02340F34 bl ov02_02338D68 add sp, sp, #4 ldmia sp!, {r3, r4, pc} .align 2, 0 _02340C24: .word ov02_0235AAEC _02340C28: .word ov02_02342738 _02340C2C: .word ov02_02352BD0 _02340C30: .word ov02_02340F34 arm_func_end ov02_02340AB4 arm_func_start ov02_02340C34 ov02_02340C34: ; 0x02340C34 stmdb sp!, {r3, r4, r5, lr} mov r4, r0 bl ov02_02347518 ldrb r1, [r0, #0xf5] cmp r1, r4 ldmeqia sp!, {r3, r4, r5, pc} cmp r4, #0 beq _02340C70 ldr r0, _02340C9C ; =ov02_0235AAEC ldr r0, [r0, #8] ldrb r0, [r0, #0x43] cmp r0, #0 movne r5, #1 moveq r5, #0 b _02340C84 _02340C70: ldr r1, _02340C9C ; =ov02_0235AAEC ldrb r2, [r0, #0xf6] ldr r0, [r1, #8] mov r5, #0 strb r2, [r0, #0x43] _02340C84: mov r0, r4 bl ov02_0234752C mov r0, r5 bl ov02_02347540 bl ov02_02341294 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _02340C9C: .word ov02_0235AAEC arm_func_end ov02_02340C34 arm_func_start ov02_02340CA0 ov02_02340CA0: ; 0x02340CA0 stmdb sp!, {r4, lr} mov r4, r0 bl ov02_02347518 ldrb r0, [r0, #0xf6] cmp r0, r4 ldmeqia sp!, {r4, pc} ldr r1, _02340CD4 ; =ov02_0235AAEC mov r0, r4 ldr r1, [r1, #8] strb r4, [r1, #0x43] bl ov02_02347540 bl ov02_02341294 ldmia sp!, {r4, pc} .align 2, 0 _02340CD4: .word ov02_0235AAEC arm_func_end ov02_02340CA0 arm_func_start ov02_02340CD8 ov02_02340CD8: ; 0x02340CD8 stmdb sp!, {r3, lr} ldr r0, _02340F24 ; =ov02_0235AAEC ldr r1, [r0, #8] ldr r0, [r1, #0x38] cmp r0, #0 ldmneia sp!, {r3, pc} ldrb r0, [r1, #0x41] cmp r0, #0 subne r0, r0, #1 strneb r0, [r1, #0x41] bl ov02_02346A8C cmp r0, #7 addls pc, pc, r0, lsl #2 ldmia sp!, {r3, pc} _02340D10: ; jump table ldmia sp!, {r3, pc} ; case 0 b _02340D30 ; case 1 b _02340D44 ; case 2 b _02340D98 ; case 3 b _02340E40 ; case 4 b _02340F10 ; case 5 b _02340EA8 ; case 6 b _02340F10 ; case 7 _02340D30: ldr r0, _02340F24 ; =ov02_0235AAEC mov r1, #1 ldr r0, [r0, #8] strb r1, [r0, #0x45] ldmia sp!, {r3, pc} _02340D44: ldr r0, _02340F24 ; =ov02_0235AAEC ldr r0, [r0, #8] ldrb r0, [r0, #0x41] cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_0233519C bl ov02_02346A78 mov r1, #0x91 mul r1, r0, r1 ldr r2, _02340F28 ; =0x094F2095 mov r0, r1, lsr #0x1f smull r1, r3, r2, r1 ldr r1, _02340F24 ; =ov02_0235AAEC add r3, r0, r3, asr #1 strh r3, [r1, #4] bl ov02_02341294 ldr r0, _02340F24 ; =ov02_0235AAEC mov r1, #4 ldr r0, [r0, #8] strb r1, [r0, #0x41] ldmia sp!, {r3, pc} _02340D98: ldr r0, _02340F24 ; =ov02_0235AAEC mov r1, #0 ldr r0, [r0, #8] strb r1, [r0, #0x45] bl ov02_02346A78 mov r1, #0x91 mul r1, r0, r1 ldr r2, _02340F28 ; =0x094F2095 mov r0, r1, lsr #0x1f smull r1, r3, r2, r1 ldr r1, _02340F24 ; =ov02_0235AAEC add r3, r0, r3, asr #1 mov r0, #0x13 strh r3, [r1, #4] bl ov02_023480E0 bl ov02_02341294 ldr r0, _02340F24 ; =ov02_0235AAEC mov r1, #0x1d ldrh r0, [r0, #4] bl FX_ModS32 cmp r0, #0 bne _02340DF8 bl ov02_0234217C ldmia sp!, {r3, pc} _02340DF8: cmp r0, #0x10 mov r0, #0 mov r3, #0x78 bge _02340E24 ldr r1, _02340F2C ; =ov02_02341EB4 mov r2, r0 bl ov02_0234FA98 ldr r1, _02340F24 ; =ov02_0235AAEC ldr r1, [r1, #8] str r0, [r1, #0x38] ldmia sp!, {r3, pc} _02340E24: ldr r1, _02340F30 ; =ov02_02341F7C mov r2, r0 bl ov02_0234FA98 ldr r1, _02340F24 ; =ov02_0235AAEC ldr r1, [r1, #8] str r0, [r1, #0x38] ldmia sp!, {r3, pc} _02340E40: ldr r0, _02340F24 ; =ov02_0235AAEC ldrh r1, [r0, #4] cmp r1, #0 bne _02340E7C ldr r0, [r0, #8] ldrb r0, [r0, #0x46] cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #9 bl ov02_023480E0 ldr r0, _02340F24 ; =ov02_0235AAEC mov r1, #1 ldr r0, [r0, #8] strb r1, [r0, #0x46] ldmia sp!, {r3, pc} _02340E7C: mov r0, #0x13 bl ov02_023480E0 mov r0, #0 ldr r1, _02340F2C ; =ov02_02341EB4 mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _02340F24 ; =ov02_0235AAEC ldr r1, [r1, #8] str r0, [r1, #0x38] ldmia sp!, {r3, pc} _02340EA8: ldr r0, _02340F24 ; =ov02_0235AAEC ldrh r1, [r0, #4] cmp r1, #0x91 bne _02340EE4 ldr r0, [r0, #8] ldrb r0, [r0, #0x46] cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #9 bl ov02_023480E0 ldr r0, _02340F24 ; =ov02_0235AAEC mov r1, #1 ldr r0, [r0, #8] strb r1, [r0, #0x46] ldmia sp!, {r3, pc} _02340EE4: mov r0, #0x13 bl ov02_023480E0 mov r0, #0 ldr r1, _02340F30 ; =ov02_02341F7C mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _02340F24 ; =ov02_0235AAEC ldr r1, [r1, #8] str r0, [r1, #0x38] ldmia sp!, {r3, pc} _02340F10: ldr r0, _02340F24 ; =ov02_0235AAEC mov r1, #0 ldr r0, [r0, #8] strb r1, [r0, #0x46] ldmia sp!, {r3, pc} .align 2, 0 _02340F24: .word ov02_0235AAEC _02340F28: .word 0x094F2095 _02340F2C: .word ov02_02341EB4 _02340F30: .word ov02_02341F7C arm_func_end ov02_02340CD8 arm_func_start ov02_02340F34 ov02_02340F34: ; 0x02340F34 stmdb sp!, {r3, lr} bl ov02_02346AC4 mov r0, #8 bl ov02_0234DAE0 ldr r0, _02340F50 ; =ov02_02340F54 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02340F50: .word ov02_02340F54 arm_func_end ov02_02340F34 arm_func_start ov02_02340F54 ov02_02340F54: ; 0x02340F54 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x1d mov r3, #8 bl ov02_0234D8E0 ldr r0, _02340F9C ; =ov02_02340FA0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02340F9C: .word ov02_02340FA0 arm_func_end ov02_02340F54 arm_func_start ov02_02340FA0 ov02_02340FA0: ; 0x02340FA0 stmdb sp!, {r3, r4, r5, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, r4, r5, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, r4, r5, pc} ldr r1, _02341268 ; =ov02_0235AAEC mov r0, #0 ldr r1, [r1, #8] ldr r1, [r1] bl ov02_0234FB60 ldr r1, _02341268 ; =ov02_0235AAEC mov r0, #1 ldr r1, [r1, #8] ldr r1, [r1, #0x3c] bl ov02_0234FB60 ldr r4, _02341268 ; =ov02_0235AAEC mov r5, #0 _02340FF4: ldr r0, [r4, #8] add r0, r0, r5, lsl #2 ldr r0, [r0, #0x18] bl ov02_0234F2C0 add r5, r5, #1 cmp r5, #7 blt _02340FF4 ldr r0, _02341268 ; =ov02_0235AAEC ldr r0, [r0, #8] ldr r0, [r0, #0x34] cmp r0, #0 beq _02341028 bl ov02_0234F2C0 _02341028: bl ov02_02346A3C mov r0, #0 bl ov02_0234E02C bl ov02_0233519C ldr r0, _02341268 ; =ov02_0235AAEC ldr r0, [r0, #8] ldrb r0, [r0, #0x40] cmp r0, #0xc beq _02341050 bl ov02_02334D10 _02341050: bl ov02_023467B0 ldr r0, _02341268 ; =ov02_0235AAEC ldr r0, [r0, #8] ldr r0, [r0, #8] bl ov02_0234CF78 ldr r4, _02341268 ; =ov02_0235AAEC mov r5, #0 _0234106C: ldr r0, [r4, #8] add r0, r0, r5, lsl #2 ldr r0, [r0, #0xc] bl ov02_0234CF78 add r5, r5, #1 cmp r5, #2 blt _0234106C ldr r0, _0234126C ; =ov02_02353A58 ldr r1, _02341270 ; =GX_LoadOBJPltt bl ov02_02334DA8 mov r0, #1 mov r1, r0 bl ov02_0234E424 mov r0, #0 mov r1, #0x1d bl ov02_0234E424 ldr r0, _02341274 ; =0x04000010 mov r1, #0 str r1, [r0] sub r3, r0, #4 str r1, [r0, #8] ldrh r0, [r3] ldr r2, _02341268 ; =ov02_0235AAEC and r0, r0, #0x43 orr r0, r0, #0xe10 strh r0, [r3] ldr r0, [r2, #8] ldrb r0, [r0, #0x40] cmp r0, #0xd addls pc, pc, r0, lsl #2 b _0234125C _023410E8: ; jump table b _02341120 ; case 0 b _02341120 ; case 1 b _0234125C ; case 2 b _0234125C ; case 3 b _0234113C ; case 4 b _0234113C ; case 5 b _0234113C ; case 6 b _0234125C ; case 7 b _0234125C ; case 8 b _0234113C ; case 9 b _0234113C ; case 10 b _0234116C ; case 11 b _02341204 ; case 12 b _02341218 ; case 13 _02341120: bl ov02_02338DB4 mov r0, #2 mov r1, #0 bl ov02_02338D78 ldr r0, _02341278 ; =ov02_0233E488 bl ov02_02338D68 b _0234125C _0234113C: sub r4, r0, #4 cmp r0, #9 subhs r4, r4, #2 mov r0, #2 mov r1, #0 bl ov02_02338D78 mov r0, r4 mov r1, #0 bl ov02_02338DB4 ldr r0, _0234127C ; =ov02_0233EFC8 bl ov02_02338D68 b _0234125C _0234116C: bl ov02_02347518 mov r4, r0 add r0, r4, #0xf0 bl ov00_022ED7C0 strb r0, [r4, #0xd0] ldrb r0, [r4, #0xf5] cmp r0, #0 beq _023411C4 add r0, r4, #0xc0 mov r1, #0 mov r2, #4 bl MemsetFast add r0, r4, #0xc4 mov r1, #0 mov r2, #4 bl MemsetFast add r0, r4, #0xf0 mov r1, #0 mov r2, #4 bl MemsetFast mov r0, #0 strb r0, [r4, #0xd0] _023411C4: ldrb r0, [r4, #0xf6] cmp r0, #0 beq _023411E0 add r0, r4, #0xc8 mov r1, #0 mov r2, #8 bl MemsetFast _023411E0: mov r0, #2 mov r1, #0 bl ov02_02338D78 mov r0, #0 mov r1, r0 bl ov02_02338DB4 ldr r0, _02341280 ; =ov02_023452A8 bl ov02_02338D68 b _0234125C _02341204: mov r0, r1 bl ov02_02338D78 ldr r0, _02341284 ; =ov02_023427A8 bl ov02_02338D68 b _0234125C _02341218: ldrb r0, [r2, #1] cmp r0, #0 bne _0234123C mov r0, #2 mov r1, #1 bl ov02_02338D78 ldr r0, _02341288 ; =ov02_02343DB0 bl ov02_02338D68 b _0234125C _0234123C: bl ov02_02347518 ldrb r0, [r0, #0xf4] bl ov02_0234793C mov r0, #0 mov r1, #1 bl ov02_02338D78 ldr r0, _0234128C ; =ov02_02344AF0 bl ov02_02338D68 _0234125C: ldr r0, _02341290 ; =ov02_0235AAF4 bl ov02_0234E7D8 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _02341268: .word ov02_0235AAEC _0234126C: .word ov02_02353A58 _02341270: .word GX_LoadOBJPltt _02341274: .word 0x04000010 _02341278: .word ov02_0233E488 _0234127C: .word ov02_0233EFC8 _02341280: .word ov02_023452A8 _02341284: .word ov02_023427A8 _02341288: .word ov02_02343DB0 _0234128C: .word ov02_02344AF0 _02341290: .word ov02_0235AAF4 arm_func_end ov02_02340FA0 arm_func_start ov02_02341294 ov02_02341294: ; 0x02341294 stmdb sp!, {r4, r5, r6, lr} ldr r0, _0234134C ; =ov02_0235AAEC mov r1, #0x1d ldrh r0, [r0, #4] bl FX_DivS32 ldr r1, _0234134C ; =ov02_0235AAEC mov r4, r0 ldr r0, [r1, #8] mov r1, #0 ldr r0, [r0, #0x14] bl ov02_0234E2A8 mov r5, r4 mov r6, #0 _023412C8: mov r0, r5 mov r1, r6 bl ov02_02341354 add r6, r6, #1 cmp r6, #5 add r5, r5, #1 blt _023412C8 ldr r0, _0234134C ; =ov02_0235AAEC ldr r1, _02341350 ; =ov02_02352B12 mov r2, r4, lsl #1 ldr r3, [r0, #8] ldrh r0, [r1, r2] ldr r2, [r3, #8] mov r1, #0 add r0, r2, r0, lsl #1 mov r2, #0x1e mov r3, #0x13 bl ov02_023467F4 mov r5, #0 _02341314: mov r0, r4 mov r1, r5 bl ov02_023414F0 add r5, r5, #1 cmp r5, #5 add r4, r4, #1 blt _02341314 bl ov02_023467DC ldr r0, _0234134C ; =ov02_0235AAEC ldr r0, [r0, #8] ldr r0, [r0, #0x14] bl ov02_0234E354 bl ov02_023419C8 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _0234134C: .word ov02_0235AAEC _02341350: .word ov02_02352B12 arm_func_end ov02_02341294 arm_func_start ov02_02341354 ov02_02341354: ; 0x02341354 stmdb sp!, {r3, r4, r5, r6, lr} sub sp, sp, #0x24 mov r6, r0 mov r5, r1 bl ov02_02347518 cmp r6, #8 addls pc, pc, r6, lsl #2 b _023414E8 _02341374: ; jump table b _02341398 ; case 0 b _023413AC ; case 1 b _023414E8 ; case 2 b _0234143C ; case 3 b _02341460 ; case 4 b _02341484 ; case 5 b _023414E8 ; case 6 b _023414A8 ; case 7 b _023414CC ; case 8 _02341398: mov r1, r5 add r0, r0, #0x40 bl ov02_023417DC add sp, sp, #0x24 ldmia sp!, {r3, r4, r5, r6, pc} _023413AC: ldrb r1, [r0, #0xe6] mov r1, r1, lsl #0x1e mov r1, r1, lsr #0x1e cmp r1, #3 addls pc, pc, r1, lsl #2 b _023413F0 _023413C4: ; jump table b _023413D4 ; case 0 b _023413DC ; case 1 b _023413E4 ; case 2 b _023413EC ; case 3 _023413D4: add sp, sp, #0x24 ldmia sp!, {r3, r4, r5, r6, pc} _023413DC: mov r4, #0xa b _023413F0 _023413E4: mov r4, #0x1a b _023413F0 _023413EC: mov r4, #0x20 _023413F0: ldrb r0, [r0, #0xe6] mov r1, #0 mov r2, #0x21 mov r0, r0, lsl #0x18 mov r0, r0, lsr #0x1a cmp r0, #1 addeq r0, r4, r4, lsr #31 moveq r4, r0, asr #1 add r0, sp, #0 bl MemsetFast add r0, sp, #0 mov r2, r4 mov r1, #0x2a bl memset add r0, sp, #0 mov r1, r5 bl ov02_023417DC add sp, sp, #0x24 ldmia sp!, {r3, r4, r5, r6, pc} _0234143C: ldrb r1, [r0, #0xf5] cmp r1, #0 addne sp, sp, #0x24 ldmneia sp!, {r3, r4, r5, r6, pc} mov r1, r5 add r0, r0, #0xc0 bl ov02_02341930 add sp, sp, #0x24 ldmia sp!, {r3, r4, r5, r6, pc} _02341460: ldrb r1, [r0, #0xf5] cmp r1, #0 addne sp, sp, #0x24 ldmneia sp!, {r3, r4, r5, r6, pc} mov r1, r5 add r0, r0, #0xf0 bl ov02_02341930 add sp, sp, #0x24 ldmia sp!, {r3, r4, r5, r6, pc} _02341484: ldrb r1, [r0, #0xf5] cmp r1, #0 addne sp, sp, #0x24 ldmneia sp!, {r3, r4, r5, r6, pc} mov r1, r5 add r0, r0, #0xc4 bl ov02_02341930 add sp, sp, #0x24 ldmia sp!, {r3, r4, r5, r6, pc} _023414A8: ldrb r1, [r0, #0xf6] cmp r1, #0 addne sp, sp, #0x24 ldmneia sp!, {r3, r4, r5, r6, pc} mov r1, r5 add r0, r0, #0xc8 bl ov02_02341930 add sp, sp, #0x24 ldmia sp!, {r3, r4, r5, r6, pc} _023414CC: ldrb r1, [r0, #0xf6] cmp r1, #0 addne sp, sp, #0x24 ldmneia sp!, {r3, r4, r5, r6, pc} mov r1, r5 add r0, r0, #0xcc bl ov02_02341930 _023414E8: add sp, sp, #0x24 ldmia sp!, {r3, r4, r5, r6, pc} arm_func_end ov02_02341354 arm_func_start ov02_023414F0 ov02_023414F0: ; 0x023414F0 stmdb sp!, {r4, r5, r6, lr} mov r4, r0 mov r6, r1 bl ov02_02347518 cmp r4, #8 addls pc, pc, r4, lsl #2 b _02341624 _0234150C: ; jump table b _02341530 ; case 0 b _02341530 ; case 1 b _0234154C ; case 2 b _02341598 ; case 3 b _02341598 ; case 4 b _02341598 ; case 5 b _023415B0 ; case 6 b _0234160C ; case 7 b _0234160C ; case 8 _02341530: mov r4, #0 mov r0, r4 mov r5, r4 bl ov02_02341644 cmp r0, #0 moveq r5, #2 b _0234162C _0234154C: ldr r2, _02341640 ; =ov02_0235AAEC ldrb r0, [r0, #0xf5] ldr r3, [r2, #8] mov r1, #0 ldrb r2, [r3, #4] cmp r0, #0 movne r4, #1 movne r0, #4 moveq r4, #2 moveq r0, #3 cmp r2, #0 mov r5, r1 ldrb r2, [r3, #5] movne r5, #1 cmp r2, #0 movne r1, #1 mov r2, r6 bl ov02_023416D8 b _0234162C _02341598: ldrb r0, [r0, #0xf5] mov r4, #0 cmp r0, #0 movne r5, #2 moveq r5, r4 b _0234162C _023415B0: ldrb r2, [r0, #0xf6] mov r1, #0 mov r5, r1 cmp r2, #0 movne r4, #1 movne r0, #4 bne _023415E0 ldrb r0, [r0, #0xf5] mov r4, #2 cmp r0, #0 moveq r5, #2 mov r0, #3 _023415E0: ldr r2, _02341640 ; =ov02_0235AAEC ldr r3, [r2, #8] ldrb r2, [r3, #6] cmp r2, #0 ldrb r2, [r3, #7] movne r5, #1 cmp r2, #0 movne r1, #1 mov r2, r6 bl ov02_023416D8 b _0234162C _0234160C: ldrb r0, [r0, #0xf6] mov r4, #0 cmp r0, #0 movne r5, #2 moveq r5, r4 b _0234162C _02341624: mov r4, #0 mov r5, #2 _0234162C: mov r0, r4 mov r1, r5 mov r2, r6 bl ov02_023416D8 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _02341640: .word ov02_0235AAEC arm_func_end ov02_023414F0 arm_func_start ov02_02341644 ov02_02341644: ; 0x02341644 stmdb sp!, {r4, lr} mov r4, r0 bl ov02_02347518 cmp r4, #0xa mov r1, #1 addls pc, pc, r4, lsl #2 b _023416D0 _02341660: ; jump table b _0234169C ; case 0 b _0234169C ; case 1 b _023416D0 ; case 2 b _023416D0 ; case 3 b _023416B4 ; case 4 b _023416B4 ; case 5 b _023416B4 ; case 6 b _0234168C ; case 7 b _023416D0 ; case 8 b _023416C4 ; case 9 b _023416C4 ; case 10 _0234168C: ldrb r0, [r0, #0xf5] cmp r0, #0 moveq r1, #0 b _023416D0 _0234169C: ldrb r0, [r0, #0xe7] add r0, r0, #0xff and r0, r0, #0xff cmp r0, #1 movls r1, #0 b _023416D0 _023416B4: ldrb r0, [r0, #0xf5] cmp r0, #0 movne r1, #0 b _023416D0 _023416C4: ldrb r0, [r0, #0xf6] cmp r0, #0 movne r1, #0 _023416D0: mov r0, r1 ldmia sp!, {r4, pc} arm_func_end ov02_02341644 arm_func_start ov02_023416D8 ov02_023416D8: ; 0x023416D8 stmdb sp!, {r3, r4, r5, r6, lr} sub sp, sp, #0xc ldr r3, _023417D0 ; =ov02_0235AAEC mov ip, #0xc0 ldr r3, [r3, #8] mov r6, r0 mov r4, #0x8f add r3, r3, #0x18 sub r0, r6, #1 mov lr, #0xcc mov r5, r1 strh lr, [sp] strh ip, [sp, #2] strh ip, [sp, #4] strh r4, [sp, #6] strh r4, [sp, #8] cmp r0, #1 add r4, r3, r2, lsl #2 bhi _0234174C mov r0, r2 bl ov02_02341E90 cmp r0, #2 ldrne r0, _023417D0 ; =ov02_0235AAEC ldrne r0, [r0, #8] addne r4, r0, #0x30 bne _0234174C ldr r0, _023417D0 ; =ov02_0235AAEC ldr r0, [r0, #8] add r4, r0, #0x2c _0234174C: ldr r0, _023417D4 ; =ov02_02352B02 add r1, r6, r6, lsl #1 add r0, r0, r1 ldrb r1, [r5, r0] ldr r2, [r4] cmp r1, #0 beq _023417B4 mov r0, #0 bl ov02_0234D618 add r0, sp, #0 mov r1, r6, lsl #1 ldrh r2, [r0, r1] ldr r3, [r4] ldr r0, _023417D8 ; =0xFE00FF00 ldr r1, [r3] mov r2, r2, lsl #0x17 and r0, r1, r0 orr r0, r0, r2, lsr #7 str r0, [r3] ldr r1, [r4] add sp, sp, #0xc ldrh r0, [r1, #4] bic r0, r0, #0xc00 orr r0, r0, #0xc00 strh r0, [r1, #4] ldmia sp!, {r3, r4, r5, r6, pc} _023417B4: ldr r0, _023417D8 ; =0xFE00FF00 ldr r1, [r2] and r0, r1, r0 orr r0, r0, #0x1000000 str r0, [r2] add sp, sp, #0xc ldmia sp!, {r3, r4, r5, r6, pc} .align 2, 0 _023417D0: .word ov02_0235AAEC _023417D4: .word ov02_02352B02 _023417D8: .word 0xFE00FF00 arm_func_end ov02_023416D8 arm_func_start ov02_023417DC ov02_023417DC: ; 0x023417DC stmdb sp!, {r4, r5, r6, lr} sub sp, sp, #0x30 mov r6, r0 mov r5, r1 add r0, sp, #0xc mov r1, #0 mov r2, #0x22 bl MemsetFast mov r0, r6 mov r1, #0x20 bl ov02_0234F59C mov r4, r0 cmp r4, #0x10 movle lr, r4 movgt lr, #0x10 cmp lr, #0 mov ip, #0 ble _0234184C ldr r2, _02341928 ; =0x0000E01D add r1, sp, #0xc _0234182C: ldrb r3, [r6, ip] mov r0, ip, lsl #1 add ip, ip, #1 cmp r3, #0x20 streqh r2, [r1, r0] strneh r3, [r1, r0] cmp ip, lr blt _0234182C _0234184C: mov r0, #0x1d mul r0, r5, r0 mov r1, #8 add r5, r0, #2 str r1, [sp] add r0, sp, #0xc str r0, [sp, #4] mov r1, #1 str r1, [sp, #8] ldr r0, _0234192C ; =ov02_0235AAEC cmp r4, #0x10 ldr r0, [r0, #8] addle r5, r5, #5 ldr r0, [r0, #0x14] mov r2, r5 mov r1, #0x48 mov r3, #2 bl ov02_0234E13C cmp r4, #0x10 addle sp, sp, #0x30 ldmleia sp!, {r4, r5, r6, pc} add r0, sp, #0xc mov r1, #0 mov r2, #0x22 bl MemsetFast sub r4, r4, #0x10 cmp r4, #0 mov ip, #0 ble _023418EC ldr r2, _02341928 ; =0x0000E01D add r1, sp, #0xc _023418C8: add r0, r6, ip ldrb r3, [r0, #0x10] mov r0, ip, lsl #1 add ip, ip, #1 cmp r3, #0x20 streqh r2, [r1, r0] strneh r3, [r1, r0] cmp ip, r4 blt _023418C8 _023418EC: mov r1, #8 str r1, [sp] add r0, sp, #0xc str r0, [sp, #4] mov r1, #1 str r1, [sp, #8] ldr r0, _0234192C ; =ov02_0235AAEC add r2, r5, #0xc ldr r0, [r0, #8] mov r1, #0x48 ldr r0, [r0, #0x14] mov r3, #2 bl ov02_0234E13C add sp, sp, #0x30 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _02341928: .word 0x0000E01D _0234192C: .word ov02_0235AAEC arm_func_end ov02_023417DC arm_func_start ov02_02341930 ov02_02341930: ; 0x02341930 stmdb sp!, {r3, r4, lr} sub sp, sp, #0x3c mov ip, r0 ldrb r2, [ip, #1] mov r4, r1 add r0, sp, #0xc str r2, [sp] ldrb r3, [ip, #2] ldr r2, _023419C0 ; =ov02_02353A70 mov r1, #0x10 str r3, [sp, #4] ldrb r3, [ip, #3] str r3, [sp, #8] ldrb r3, [ip] bl sub_0207911C add r0, sp, #0x1c add r1, sp, #0xc mov r2, #0x10 bl ov02_0234F5C8 mov r2, #7 mov r0, #0x1d mul r1, r4, r0 str r2, [sp] add r0, sp, #0x1c str r0, [sp, #4] mov r2, #1 str r2, [sp, #8] ldr r0, _023419C4 ; =ov02_0235AAEC add r2, r1, #8 ldr r0, [r0, #8] mov r1, #0x5f ldr r0, [r0, #0x14] mov r3, #2 bl ov02_0234E13C add sp, sp, #0x3c ldmia sp!, {r3, r4, pc} .align 2, 0 _023419C0: .word ov02_02353A70 _023419C4: .word ov02_0235AAEC arm_func_end ov02_02341930 arm_func_start ov02_023419C8 ov02_023419C8: ; 0x023419C8 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} sub sp, sp, #8 ldr r0, _02341BCC ; =ov02_0235AAEC mov r1, #0x1d ldrh r0, [r0, #4] bl FX_DivS32 ldr r1, _02341BCC ; =ov02_0235AAEC mov r4, r0 ldrh r0, [r1, #4] mov r1, #0x1d bl FX_ModS32 ldr r1, _02341BCC ; =ov02_0235AAEC rsb ip, r0, #0x34 ldr r1, [r1, #8] ldr r0, [r1, #0x34] cmp r0, #0 beq _02341A48 ldr r5, [r1, #0x34] cmp r4, #0 moveq r0, #0x26 streq r0, [sp, #4] movne r0, #0x100 strne r0, [sp, #4] ldr r2, [r5] ldr r0, _02341BD0 ; =0xFE00FF00 ldr r3, [sp, #4] and r0, r2, r0 and r1, ip, #0xff mov r2, r3, lsl #0x17 orr r0, r0, r1 orr r0, r0, r2, lsr #7 str r0, [r5] _02341A48: ldr r8, _02341BCC ; =ov02_0235AAEC ldr r6, _02341BD4 ; =0x01FF0000 ldr r7, _02341BD0 ; =0xFE00FF00 mov lr, ip mov r5, #0 _02341A5C: ldr r0, [r8, #8] and sb, lr, #0xff add r0, r0, r5, lsl #2 ldr r3, [r0, #0x18] add r5, r5, #1 ldr r1, [r3] cmp r5, #5 mov r0, r1 and r2, r1, r6 and sl, r0, r7 mov r2, r2, lsr #0x10 mov r0, r2, lsl #0x17 orr sb, sl, sb orr r0, sb, r0, lsr #7 str r0, [r3] and r0, r1, #0xff add lr, lr, #0x1d blt _02341A5C str r0, [sp] str r2, [sp, #4] cmp r4, #2 bgt _02341B0C ldr r0, _02341BCC ; =ov02_0235AAEC rsb r2, r4, #2 ldr r0, [r0, #8] mov r1, #0x1d ldr r0, [r0, #0x2c] mla r3, r2, r1, ip ldr r2, [r0] ldr r1, _02341BD4 ; =0x01FF0000 and r6, r2, #0xff and r1, r2, r1 mov r7, r1, lsr #0x10 mov r5, r2 ldr r1, _02341BD0 ; =0xFE00FF00 and r2, r3, #0xff and r1, r5, r1 mov r3, r7, lsl #0x17 orr r1, r1, r2 orr r1, r1, r3, lsr #7 str r7, [sp, #4] str r6, [sp] str r1, [r0] b _02341B2C _02341B0C: ldr r1, _02341BCC ; =ov02_0235AAEC ldr r0, _02341BD0 ; =0xFE00FF00 ldr r1, [r1, #8] ldr r2, [r1, #0x2c] ldr r1, [r2] and r0, r1, r0 orr r0, r0, #0x1000000 str r0, [r2] _02341B2C: cmp r4, #2 blt _02341B94 cmp r4, #6 bgt _02341B94 ldr r0, _02341BCC ; =ov02_0235AAEC rsb r2, r4, #6 ldr r0, [r0, #8] mov r1, #0x1d ldr r0, [r0, #0x30] mla r3, r2, r1, ip ldr r2, [r0] ldr r1, _02341BD4 ; =0x01FF0000 and r5, r2, #0xff and r1, r2, r1 mov r6, r1, lsr #0x10 mov r4, r2 ldr r1, _02341BD0 ; =0xFE00FF00 and r2, r3, #0xff and r1, r4, r1 mov r3, r6, lsl #0x17 orr r1, r1, r2 orr r1, r1, r3, lsr #7 str r6, [sp, #4] str r5, [sp] str r1, [r0] b _02341BB4 _02341B94: ldr r1, _02341BCC ; =ov02_0235AAEC ldr r0, _02341BD0 ; =0xFE00FF00 ldr r1, [r1, #8] ldr r2, [r1, #0x30] ldr r1, [r2] and r0, r1, r0 orr r0, r0, #0x1000000 str r0, [r2] _02341BB4: ldr r0, _02341BCC ; =ov02_0235AAEC mov r1, #1 ldr r0, [r0, #8] strb r1, [r0, #0x44] add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} .align 2, 0 _02341BCC: .word ov02_0235AAEC _02341BD0: .word 0xFE00FF00 _02341BD4: .word 0x01FF0000 arm_func_end ov02_023419C8 arm_func_start ov02_02341BD8 ov02_02341BD8: ; 0x02341BD8 stmdb sp!, {r4, r5, r6, lr} sub sp, sp, #8 ldr r0, _02341E38 ; =ov02_02352F34 bl ov02_0234ED04 cmp r0, #0 addeq sp, sp, #8 moveq r0, #0xe ldmeqia sp!, {r4, r5, r6, pc} ldr r0, _02341E3C ; =ov02_0235AAEC mov r1, #0x1d ldrh r0, [r0, #4] bl FX_DivS32 ldr r1, _02341E40 ; =ov02_02352AD8 mov r5, r0 ldrh r3, [r1, #4] ldrh r2, [r1, #6] add r4, sp, #0 strh r3, [sp] strh r2, [sp, #2] ldrh r2, [r1, #8] ldrh r0, [r1, #0xa] mov r6, #0 strh r2, [sp, #4] strh r0, [sp, #6] _02341C38: cmp r5, #2 cmpne r5, #6 beq _02341C60 mov r0, r4 bl ov02_0234EE9C cmp r0, #0 ldrne r0, _02341E44 ; =ov02_02352BB8 addne sp, sp, #8 ldrneb r0, [r0, r5] ldmneia sp!, {r4, r5, r6, pc} _02341C60: ldrh r0, [sp, #2] add r6, r6, #1 cmp r6, #4 add r0, r0, #0x1d strh r0, [sp, #2] add r5, r5, #1 blt _02341C38 ldr r0, _02341E3C ; =ov02_0235AAEC mov r1, #0x1d ldrh r0, [r0, #4] bl FX_DivS32 mov r3, #0 _02341C90: cmp r0, #2 bne _02341D2C ldr r1, _02341E40 ; =ov02_02352AD8 mov r0, #0x1d ldrh r5, [r1, #0x16] ldrh r2, [r1, #0x14] mul r4, r3, r0 strh r2, [sp] strh r5, [sp, #2] ldrh r3, [r1, #0x18] ldrh r2, [r1, #0x1a] add r1, r5, r4 add r0, sp, #0 strh r3, [sp, #4] strh r2, [sp, #6] strh r1, [sp, #2] bl ov02_0234EE9C cmp r0, #0 addne sp, sp, #8 movne r0, #2 ldmneia sp!, {r4, r5, r6, pc} ldr r1, _02341E40 ; =ov02_02352AD8 add r0, sp, #0 ldrh r5, [r1, #0xe] ldrh r2, [r1, #0xc] strh r5, [sp, #2] strh r2, [sp] ldrh r3, [r1, #0x10] ldrh r2, [r1, #0x12] add r1, r5, r4 strh r3, [sp, #4] strh r2, [sp, #6] strh r1, [sp, #2] bl ov02_0234EE9C cmp r0, #0 beq _02341D3C add sp, sp, #8 mov r0, #3 ldmia sp!, {r4, r5, r6, pc} _02341D2C: add r3, r3, #1 cmp r3, #4 add r0, r0, #1 blt _02341C90 _02341D3C: ldr r0, _02341E3C ; =ov02_0235AAEC mov r1, #0x1d ldrh r0, [r0, #4] bl FX_DivS32 mov r3, #0 _02341D50: cmp r0, #6 bne _02341DEC ldr r1, _02341E40 ; =ov02_02352AD8 mov r0, #0x1d ldrh r5, [r1, #0x16] ldrh r2, [r1, #0x14] mul r4, r3, r0 strh r2, [sp] strh r5, [sp, #2] ldrh r3, [r1, #0x18] ldrh r2, [r1, #0x1a] add r1, r5, r4 add r0, sp, #0 strh r3, [sp, #4] strh r2, [sp, #6] strh r1, [sp, #2] bl ov02_0234EE9C cmp r0, #0 addne sp, sp, #8 movne r0, #7 ldmneia sp!, {r4, r5, r6, pc} ldr r1, _02341E40 ; =ov02_02352AD8 add r0, sp, #0 ldrh r5, [r1, #0xe] ldrh r2, [r1, #0xc] strh r5, [sp, #2] strh r2, [sp] ldrh r3, [r1, #0x10] ldrh r2, [r1, #0x12] add r1, r5, r4 strh r3, [sp, #4] strh r2, [sp, #6] strh r1, [sp, #2] bl ov02_0234EE9C cmp r0, #0 beq _02341DFC add sp, sp, #8 mov r0, #8 ldmia sp!, {r4, r5, r6, pc} _02341DEC: add r3, r3, #1 cmp r3, #4 add r0, r0, #1 blt _02341D50 _02341DFC: ldr r4, _02341E48 ; =ov02_02352B66 mov r5, #0 _02341E04: mov r0, r4 bl ov02_0234ED04 cmp r0, #0 addne sp, sp, #8 addne r0, r5, #0xb ldmneia sp!, {r4, r5, r6, pc} add r5, r5, #1 cmp r5, #3 add r4, r4, #8 blt _02341E04 mov r0, #0xe add sp, sp, #8 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _02341E38: .word ov02_02352F34 _02341E3C: .word ov02_0235AAEC _02341E40: .word ov02_02352AD8 _02341E44: .word ov02_02352BB8 _02341E48: .word ov02_02352B66 arm_func_end ov02_02341BD8 arm_func_start ov02_02341E4C ov02_02341E4C: ; 0x02341E4C stmdb sp!, {r4, lr} ldr r1, _02341E8C ; =ov02_0235AAEC mov r4, r0 ldrh r0, [r1, #4] mov r1, #0x1d bl FX_DivS32 mov r1, #0 _02341E68: cmp r0, r4 moveq r0, r1 ldmeqia sp!, {r4, pc} add r1, r1, #1 cmp r1, #4 add r0, r0, #1 blt _02341E68 mvn r0, #0 ldmia sp!, {r4, pc} .align 2, 0 _02341E8C: .word ov02_0235AAEC arm_func_end ov02_02341E4C arm_func_start ov02_02341E90 ov02_02341E90: ; 0x02341E90 stmdb sp!, {r4, lr} ldr r1, _02341EB0 ; =ov02_0235AAEC mov r4, r0 ldrh r0, [r1, #4] mov r1, #0x1d bl FX_DivS32 add r0, r0, r4 ldmia sp!, {r4, pc} .align 2, 0 _02341EB0: .word ov02_0235AAEC arm_func_end ov02_02341E90 arm_func_start ov02_02341EB4 ov02_02341EB4: ; 0x02341EB4 stmdb sp!, {r3, r4, r5, lr} mov r4, r0 bl ov02_02346AC4 bl ov02_0233519C ldr r0, _02341F74 ; =ov02_0235AAEC ldrh r1, [r0, #4] cmp r1, #6 subhi r1, r1, #6 movls r1, #0 strh r1, [r0, #4] ldr r0, _02341F74 ; =ov02_0235AAEC mov r1, #0x1d ldrh r0, [r0, #4] bl FX_ModS32 mov r5, r0 cmp r5, #0x17 bne _02341F00 bl ov02_02341294 ldmia sp!, {r3, r4, r5, pc} _02341F00: ble _02341F1C ldr r0, _02341F74 ; =ov02_0235AAEC rsb r1, r5, #0x1d ldrh r2, [r0, #4] mov r5, #0 add r1, r2, r1 strh r1, [r0, #4] _02341F1C: bl ov02_023419C8 cmp r5, #0 ldmneia sp!, {r3, r4, r5, pc} ldr r1, _02341F74 ; =ov02_0235AAEC mov r0, #0x37 ldrh r1, [r1, #4] ldr r2, _02341F78 ; =0xE1FC780F mul r3, r1, r0 smull r1, r0, r2, r3 add r0, r3, r0 mov r1, r3, lsr #0x1f add r0, r1, r0, asr #7 bl ov02_02346AA0 bl ov02_02346AAC bl ov02_0234217C ldr r0, _02341F74 ; =ov02_0235AAEC mov r1, r4 ldr r2, [r0, #8] mov r0, #0 str r0, [r2, #0x38] bl ov02_0234FB40 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _02341F74: .word ov02_0235AAEC _02341F78: .word 0xE1FC780F arm_func_end ov02_02341EB4 arm_func_start ov02_02341F7C ov02_02341F7C: ; 0x02341F7C stmdb sp!, {r4, lr} mov r4, r0 bl ov02_02346AC4 bl ov02_0233519C ldr r0, _02342018 ; =ov02_0235AAEC mov r1, #0x1d ldrh r2, [r0, #4] add r2, r2, #6 strh r2, [r0, #4] ldrh r0, [r0, #4] bl FX_ModS32 cmp r0, #6 blt _02341FB8 bl ov02_023419C8 ldmia sp!, {r4, pc} _02341FB8: ldr r1, _02342018 ; =ov02_0235AAEC ldrh r2, [r1, #4] sub r0, r2, r0 strh r0, [r1, #4] bl ov02_02341294 ldr r1, _02342018 ; =ov02_0235AAEC mov r0, #0x37 ldrh r1, [r1, #4] ldr r2, _0234201C ; =0xE1FC780F mul r3, r1, r0 smull r1, r0, r2, r3 add r0, r3, r0 mov r1, r3, lsr #0x1f add r0, r1, r0, asr #7 bl ov02_02346AA0 bl ov02_02346AAC bl ov02_0234217C ldr r0, _02342018 ; =ov02_0235AAEC mov r1, r4 ldr r2, [r0, #8] mov r0, #0 str r0, [r2, #0x38] bl ov02_0234FB40 ldmia sp!, {r4, pc} .align 2, 0 _02342018: .word ov02_0235AAEC _0234201C: .word 0xE1FC780F arm_func_end ov02_02341F7C arm_func_start ov02_02342020 ov02_02342020: ; 0x02342020 stmdb sp!, {r4, lr} ldr r0, _02342094 ; =ov02_0235AAEC ldr r1, [r0, #8] ldrb r1, [r1, #0x44] cmp r1, #0 ldmeqia sp!, {r4, pc} ldrh r0, [r0, #4] mov r1, #0x1d bl FX_DivS32 ldr r1, _02342094 ; =ov02_0235AAEC mov r4, r0 ldrh r0, [r1, #4] mov r1, #0x1d bl FX_ModS32 ldr r2, _02342098 ; =ov02_02352BC4 ldr r1, _0234209C ; =0x01FF0000 sub ip, r0, #0x33 ldrb r0, [r2, r4] ldr r2, _023420A0 ; =0x04000010 and r3, r1, ip, lsl #16 add r0, ip, r0 str r3, [r2] and r1, r1, r0, lsl #16 ldr r0, _02342094 ; =ov02_0235AAEC str r1, [r2, #8] ldr r0, [r0, #8] mov r1, #0 strb r1, [r0, #0x44] ldmia sp!, {r4, pc} .align 2, 0 _02342094: .word ov02_0235AAEC _02342098: .word ov02_02352BC4 _0234209C: .word 0x01FF0000 _023420A0: .word 0x04000010 arm_func_end ov02_02342020 arm_func_start ov02_023420A4 ov02_023420A4: ; 0x023420A4 stmdb sp!, {r3, lr} sub sp, sp, #0x18 ldr ip, _02342168 ; =ov02_02352AF4 add r3, sp, #8 mov r2, #7 _023420B8: ldrb r1, [ip] ldrb r0, [ip, #1] add ip, ip, #2 strb r1, [r3] strb r0, [r3, #1] add r3, r3, #2 subs r2, r2, #1 bne _023420B8 ldr r0, _0234216C ; =ov02_0235AAEC add r1, sp, #8 ldrb r2, [r0] ldrb r2, [r1, r2] cmp r2, #3 blt _0234211C mov r3, r2, lsl #3 ldr r1, _02342170 ; =ov02_02352B7E ldr r2, _02342174 ; =ov02_02352B82 ldr r0, _02342178 ; =ov02_02352B80 ldrh r1, [r1, r3] ldrh r2, [r2, r3] ldrh r3, [r0, r3] mov r0, #3 bl ov02_02334FF0 add sp, sp, #0x18 ldmia sp!, {r3, pc} _0234211C: ldr r1, _02342170 ; =ov02_02352B7E mov lr, r2, lsl #3 add ip, r1, r2, lsl #3 ldrb r2, [r0, #2] ldrh r3, [ip, #2] mov r0, #0x1d ldrh r1, [r1, lr] mla r0, r2, r0, r3 strh r0, [sp, #2] ldrh r2, [ip, #4] ldrh ip, [ip, #6] ldrh r3, [sp, #2] mov r0, #1 strh r1, [sp] strh r2, [sp, #4] strh ip, [sp, #6] bl ov02_02334FF0 add sp, sp, #0x18 ldmia sp!, {r3, pc} .align 2, 0 _02342168: .word ov02_02352AF4 _0234216C: .word ov02_0235AAEC _02342170: .word ov02_02352B7E _02342174: .word ov02_02352B82 _02342178: .word ov02_02352B80 arm_func_end ov02_023420A4 arm_func_start ov02_0234217C ov02_0234217C: ; 0x0234217C stmdb sp!, {r4, lr} ldr r0, _02342224 ; =ov02_0235AAEC ldrb r0, [r0] add r0, r0, #0xf5 and r0, r0, #0xff cmp r0, #2 bhi _023421A0 bl ov02_023420A4 ldmia sp!, {r4, pc} _023421A0: bl ov02_02347518 ldr r1, _02342224 ; =ov02_0235AAEC mov r4, r0 ldrh r0, [r1, #4] mov r1, #0x1d bl FX_DivS32 ldr r1, _02342224 ; =ov02_0235AAEC ldrb r2, [r1, #2] add r2, r2, r0 cmp r2, #2 beq _023421D8 cmp r2, #6 beq _023421F4 b _02342210 _023421D8: ldrb r0, [r4, #0xf5] cmp r0, #0 movne r0, #2 strneb r0, [r1] moveq r0, #3 streqb r0, [r1] b _0234221C _023421F4: ldrb r0, [r4, #0xf6] cmp r0, #0 movne r0, #7 strneb r0, [r1] moveq r0, #8 streqb r0, [r1] b _0234221C _02342210: ldr r0, _02342228 ; =ov02_02352BB8 ldrb r0, [r0, r2] strb r0, [r1] _0234221C: bl ov02_023420A4 ldmia sp!, {r4, pc} .align 2, 0 _02342224: .word ov02_0235AAEC _02342228: .word ov02_02352BB8 arm_func_end ov02_0234217C arm_func_start ov02_0234222C ov02_0234222C: ; 0x0234222C stmdb sp!, {r3, lr} ldr r1, _02342254 ; =ov02_0235AAEC ldr r2, _02342258 ; =ov02_02352BD0 strb r0, [r1] ldrb r0, [r2, r0] bl ov02_02341E4C ldr r1, _02342254 ; =ov02_0235AAEC strb r0, [r1, #2] bl ov02_023420A4 ldmia sp!, {r3, pc} .align 2, 0 _02342254: .word ov02_0235AAEC _02342258: .word ov02_02352BD0 arm_func_end ov02_0234222C arm_func_start ov02_0234225C ov02_0234225C: ; 0x0234225C stmdb sp!, {r3, r4, r5, lr} mov r5, r0 bl ov02_02347518 ldr r1, _02342540 ; =ov02_0235AAEC mov r4, #0 ldrb r2, [r1] cmp r2, #8 ldreqb r0, [r0, #0xf5] cmpeq r0, #0 bne _02342290 cmp r5, #0 cmpne r5, #2 ldmeqia sp!, {r3, r4, r5, pc} _02342290: cmp r2, #0 bgt _023422A0 beq _023422C0 b _02342424 _023422A0: sub r0, r2, #0xa cmp r0, #3 addls pc, pc, r0, lsl #2 b _02342424 _023422B0: ; jump table b _023422F8 ; case 0 b _02342334 ; case 1 b _0234239C ; case 2 b _0234239C ; case 3 _023422C0: cmp r5, #1 bne _023422D8 ldr r0, _02342540 ; =ov02_0235AAEC mov r1, #0xb strb r1, [r0] b _02342520 _023422D8: cmp r5, #3 movne r4, #2 bne _02342520 ldr r0, _02342540 ; =ov02_0235AAEC ldrb r1, [r0, #2] add r1, r1, #1 strb r1, [r0, #2] b _02342520 _023422F8: cmp r5, #1 bne _02342314 ldr r0, _02342540 ; =ov02_0235AAEC ldrb r1, [r0, #2] sub r1, r1, #1 strb r1, [r0, #2] b _02342520 _02342314: cmp r5, #3 movne r4, #2 bne _02342520 ldr r0, _02342540 ; =ov02_0235AAEC ldr r1, [r0, #8] ldrb r1, [r1, #0x42] strb r1, [r0] b _02342520 _02342334: cmp r5, #1 bne _0234236C ldr r0, _02342540 ; =ov02_0235AAEC ldr r0, [r0, #8] ldrb r0, [r0, #0x47] cmp r0, #0 ldmneia sp!, {r3, r4, r5, pc} mov r0, #9 bl ov02_023480E0 ldr r0, _02342540 ; =ov02_0235AAEC mov r1, #1 ldr r0, [r0, #8] strb r1, [r0, #0x47] ldmia sp!, {r3, r4, r5, pc} _0234236C: cmp r5, #3 movne r4, #2 bne _02342520 ldr r0, _02342540 ; =ov02_0235AAEC mov r1, #0 strb r1, [r0] strb r1, [r0, #2] strh r1, [r0, #4] bl ov02_02341294 mov r0, #0 bl ov02_02346AA0 b _02342520 _0234239C: ldr r0, _02342540 ; =ov02_0235AAEC cmp r5, #1 ldr r1, [r0, #8] strb r2, [r1, #0x42] bne _023423D8 mov r1, #0xa strb r1, [r0] mov r1, #3 strb r1, [r0, #2] mov r1, #0x91 strh r1, [r0, #4] bl ov02_02341294 mov r0, #0x37 bl ov02_02346AA0 b _02342520 _023423D8: cmp r5, #3 bne _0234240C ldr r0, [r0, #8] ldrb r0, [r0, #0x47] cmp r0, #0 ldmneia sp!, {r3, r4, r5, pc} mov r0, #9 bl ov02_023480E0 ldr r0, _02342540 ; =ov02_0235AAEC mov r1, #1 ldr r0, [r0, #8] strb r1, [r0, #0x47] ldmia sp!, {r3, r4, r5, pc} _0234240C: cmp r2, #0xc moveq r1, #0xd streqb r1, [r0] movne r1, #0xc strneb r1, [r0] b _02342520 _02342424: cmp r5, #1 bne _02342470 ldr r0, _02342540 ; =ov02_0235AAEC ldrb r1, [r0, #2] cmp r1, #0 subne r1, r1, #1 strneb r1, [r0, #2] bne _02342520 mov r0, #0x13 bl ov02_023480E0 mov r0, #0 ldr r1, _02342544 ; =ov02_02341EB4 mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _02342540 ; =ov02_0235AAEC ldr r1, [r1, #8] str r0, [r1, #0x38] ldmia sp!, {r3, r4, r5, pc} _02342470: cmp r5, #3 bne _023424BC ldr r0, _02342540 ; =ov02_0235AAEC ldrb r1, [r0, #2] cmp r1, #3 addlo r1, r1, #1 strlob r1, [r0, #2] blo _02342520 mov r0, #0x13 bl ov02_023480E0 mov r0, #0 ldr r1, _02342548 ; =ov02_02341F7C mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _02342540 ; =ov02_0235AAEC ldr r1, [r1, #8] str r0, [r1, #0x38] ldmia sp!, {r3, r4, r5, pc} _023424BC: cmp r2, #2 mov r4, #2 bne _023424D8 ldr r0, _02342540 ; =ov02_0235AAEC mov r1, #3 strb r1, [r0] b _02342514 _023424D8: cmp r2, #3 ldreq r0, _02342540 ; =ov02_0235AAEC streqb r4, [r0] beq _02342514 cmp r2, #7 bne _02342500 ldr r0, _02342540 ; =ov02_0235AAEC mov r1, #8 strb r1, [r0] b _02342514 _02342500: cmp r2, #8 bne _02342520 ldr r0, _02342540 ; =ov02_0235AAEC mov r1, #7 strb r1, [r0] _02342514: mov r0, #8 bl ov02_023480E0 bl ov02_023420A4 _02342520: cmp r4, #2 ldmeqia sp!, {r3, r4, r5, pc} mov r0, #8 bl ov02_023480E0 cmp r4, #0 ldmneia sp!, {r3, r4, r5, pc} bl ov02_0234217C ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _02342540: .word ov02_0235AAEC _02342544: .word ov02_02341EB4 _02342548: .word ov02_02341F7C arm_func_end ov02_0234225C arm_func_start ov02_0234254C ov02_0234254C: ; 0x0234254C ldr r0, _02342574 ; =ov02_0235AAEC ldr r1, _02342578 ; =ov02_02352AD4 ldrb r2, [r0] ldr r0, [r0, #8] ldr ip, _0234257C ; =ov02_023468A0 sub r2, r2, #0xb ldrb r1, [r1, r2] ldr r0, [r0, #0x10] mov r2, r1 bx ip .align 2, 0 _02342574: .word ov02_0235AAEC _02342578: .word ov02_02352AD4 _0234257C: .word ov02_023468A0 arm_func_end ov02_0234254C arm_func_start ov02_02342580 ov02_02342580: ; 0x02342580 stmdb sp!, {r3, r4, r5, lr} ldr r5, _023425D0 ; =ov02_0235AAEC mov r4, #0 _0234258C: ldr r0, [r5, #8] add r1, r0, r4 ldrb r0, [r1, #4] cmp r0, #0 beq _023425C0 sub r0, r0, #1 strb r0, [r1, #4] ldr r0, [r5, #8] add r0, r0, r4 ldrb r0, [r0, #4] cmp r0, #0 bne _023425C0 bl ov02_02341294 _023425C0: add r4, r4, #1 cmp r4, #4 blt _0234258C ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _023425D0: .word ov02_0235AAEC arm_func_end ov02_02342580 arm_func_start ov02_023425D4 ov02_023425D4: ; 0x023425D4 stmdb sp!, {r3} sub sp, sp, #4 ldr r1, _02342690 ; =ov02_02352AD8 ldr r0, _02342694 ; =ov02_0235AAEC ldrb r3, [r1] ldrb r2, [r1, #1] ldrb ip, [r0] strb r3, [sp] strb r2, [sp, #1] ldrb r2, [r1, #2] ldrb r0, [r1, #3] add r1, sp, #0 mov r3, #0 strb r2, [sp, #2] strb r0, [sp, #3] _02342610: ldrb r0, [r1] cmp ip, r0 bne _02342674 ldr r0, _02342694 ; =ov02_0235AAEC mov r2, #0x14 ldr r1, [r0, #8] tst r3, #1 add r1, r1, r3 strb r2, [r1, #4] ldr r1, [r0, #8] beq _02342658 sub r0, r3, #1 add r0, r1, r0 mov r1, #0 strb r1, [r0, #4] add sp, sp, #4 ldmia sp!, {r3} bx lr _02342658: add r0, r3, #1 add r0, r1, r0 mov r1, #0 strb r1, [r0, #4] add sp, sp, #4 ldmia sp!, {r3} bx lr _02342674: add r3, r3, #1 cmp r3, #4 add r1, r1, #1 blt _02342610 add sp, sp, #4 ldmia sp!, {r3} bx lr .align 2, 0 _02342690: .word ov02_02352AD8 _02342694: .word ov02_0235AAEC arm_func_end ov02_023425D4 arm_func_start ov02_02342698 ov02_02342698: ; 0x02342698 stmdb sp!, {r4, lr} bl ov02_02347518 mov r4, r0 ldrb r0, [r4, #0x40] cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r4, pc} ldrb r0, [r4, #0xf6] cmp r0, #0 bne _023426E4 add r0, r4, #0xc8 bl ov00_022ED8C0 cmp r0, #0 bne _023426E4 add r0, r4, #0xcc bl ov00_022ED8C0 cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r4, pc} _023426E4: ldrb r0, [r4, #0xf5] cmp r0, #0 bne _02342730 add r0, r4, #0xc0 bl ov00_022ED8C0 cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r4, pc} add r0, r4, #0xc4 bl ov00_022ED8C0 cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r4, pc} add r0, r4, #0xc0 add r1, r4, #0xf0 bl ov00_022ED85C cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r4, pc} _02342730: mov r0, #1 ldmia sp!, {r4, pc} arm_func_end ov02_02342698 arm_func_start ov02_02342738 ov02_02342738: ; 0x02342738 stmdb sp!, {r3, lr} bl ov02_02349704 cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #6 bl ov02_023480E0 bl ov02_023496C0 ldr r0, _02342770 ; =ov02_0235AAEC ldr r0, [r0, #8] ldr r0, [r0, #0xc] bl ov02_02346908 ldr r0, _02342774 ; =ov02_02342778 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342770: .word ov02_0235AAEC _02342774: .word ov02_02342778 arm_func_end ov02_02342738 arm_func_start ov02_02342778 ov02_02342778: ; 0x02342778 stmdb sp!, {r3, lr} bl ov02_02349718 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02342794 ; =ov02_023407A0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342794: .word ov02_023407A0 arm_func_end ov02_02342778 arm_func_start ov02_02342798 ov02_02342798: ; 0x02342798 ldr r1, _023427A4 ; =ov02_0235AAEC strb r0, [r1, #1] bx lr .align 2, 0 _023427A4: .word ov02_0235AAEC arm_func_end ov02_02342798 arm_func_start ov02_023427A8 ov02_023427A8: ; 0x023427A8 stmdb sp!, {r3, lr} bl ov02_023427C8 bl ov02_023352C4 bl ov02_02347A1C ldr r0, _023427C4 ; =ov02_0234285C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023427C4: .word ov02_0234285C arm_func_end ov02_023427A8 arm_func_start ov02_023427C8 ov02_023427C8: ; 0x023427C8 stmdb sp!, {r3, lr} ldr r0, _0234283C ; =ov02_02353A80 ldr r1, _02342840 ; =GX_LoadBG2Char bl ov02_02334DA8 ldr r0, _02342844 ; =ov02_02353A98 ldr r1, _02342848 ; =GX_LoadBGPltt bl ov02_02334DA8 ldr r0, _0234284C ; =ov02_02353AB0 ldr r1, _02342850 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r2, _02342854 ; =0x04001008 ldr r1, _02342858 ; =0x0400000A ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r2, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2, #2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _0234283C: .word ov02_02353A80 _02342840: .word GX_LoadBG2Char _02342844: .word ov02_02353A98 _02342848: .word GX_LoadBGPltt _0234284C: .word ov02_02353AB0 _02342850: .word GX_LoadBG2Scr _02342854: .word 0x04001008 _02342858: .word 0x0400000A arm_func_end ov02_023427C8 arm_func_start ov02_0234285C ov02_0234285C: ; 0x0234285C stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #2 mov r1, #0 mov r2, #0x14 mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 mov r0, #0 mov r1, #0x14 bl ov02_0234E3D0 ldr r0, _023428AC ; =ov02_023428B0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023428AC: .word ov02_023428B0 arm_func_end ov02_0234285C arm_func_start ov02_023428B0 ov02_023428B0: ; 0x023428B0 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r2, #1 mov ip, #0 sub r3, r2, #2 mov r0, #0x44 mov r1, #5 str ip, [sp] bl ov02_02349394 ldr r0, _023428FC ; =ov02_02342900 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023428FC: .word ov02_02342900 arm_func_end ov02_023428B0 arm_func_start ov02_02342900 ov02_02342900: ; 0x02342900 stmdb sp!, {r3, lr} bl ov02_02342928 bl ov02_0234292C bl ov02_02349718 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02342924 ; =ov02_02342930 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342924: .word ov02_02342930 arm_func_end ov02_02342900 arm_func_start ov02_02342928 ov02_02342928: ; 0x02342928 bx lr arm_func_end ov02_02342928 arm_func_start ov02_0234292C ov02_0234292C: ; 0x0234292C bx lr arm_func_end ov02_0234292C arm_func_start ov02_02342930 ov02_02342930: ; 0x02342930 stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x14 mov r3, #8 bl ov02_0234D8E0 ldr r0, _02342968 ; =ov02_0234296C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342968: .word ov02_0234296C arm_func_end ov02_02342930 arm_func_start ov02_0234296C ov02_0234296C: ; 0x0234296C stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 mov r0, #0 mov r1, #0x14 bl ov02_0234E424 mov r0, #2 mov r1, #1 bl ov02_02338D78 ldr r0, _023429C4 ; =ov02_02343DB0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023429C4: .word ov02_02343DB0 arm_func_end ov02_0234296C arm_func_start ov02_023429C8 ov02_023429C8: ; 0x023429C8 ldr r0, _023429E4 ; =0x027FFFA8 ldrh r0, [r0] and r0, r0, #0x8000 movs r0, r0, asr #0xf movne r0, #1 moveq r0, #0 bx lr .align 2, 0 _023429E4: .word 0x027FFFA8 arm_func_end ov02_023429C8 arm_func_start ov02_023429E8 ov02_023429E8: ; 0x023429E8 stmdb sp!, {r3, lr} ldr r0, _02342A1C ; =ov02_0235AAF8 mov r1, #0 strb r1, [r0] bl ov02_02342A24 bl ov02_023352C4 mov r0, #0x25 bl ov02_02334E70 mov r0, #1 bl ov02_023343DC ldr r0, _02342A20 ; =ov02_02342AA4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342A1C: .word ov02_0235AAF8 _02342A20: .word ov02_02342AA4 arm_func_end ov02_023429E8 arm_func_start ov02_02342A24 ov02_02342A24: ; 0x02342A24 stmdb sp!, {r3, lr} ldr r0, _02342A94 ; =ov02_02353AC4 ldr r1, _02342A98 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _02342A9C ; =0x04001008 ldr r1, _02342AA0 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _02342A94: .word ov02_02353AC4 _02342A98: .word GX_LoadBG2Scr _02342A9C: .word 0x04001008 _02342AA0: .word 0x0400000A arm_func_end ov02_02342A24 arm_func_start ov02_02342AA4 ov02_02342AA4: ; 0x02342AA4 stmdb sp!, {r3, lr} mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _02342AD4 ; =ov02_02342AD8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342AD4: .word ov02_02342AD8 arm_func_end ov02_02342AA4 arm_func_start ov02_02342AD8 ov02_02342AD8: ; 0x02342AD8 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #1 bl ov02_02334E38 ldr r0, _02342B00 ; =ov02_02342B04 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342B00: .word ov02_02342B04 arm_func_end ov02_02342AD8 arm_func_start ov02_02342B04 ov02_02342B04: ; 0x02342B04 stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _02342B28 ; =ov02_02342B2C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342B28: .word ov02_02342B2C arm_func_end ov02_02342B04 arm_func_start ov02_02342B2C ov02_02342B2C: ; 0x02342B2C stmdb sp!, {r3, lr} mov r0, #0xa bl sub_02079B14 bl ov02_02342D10 bl ov02_02342B4C bl ov02_02342B84 bl ov02_02342B88 ldmia sp!, {r3, pc} arm_func_end ov02_02342B2C arm_func_start ov02_02342B4C ov02_02342B4C: ; 0x02342B4C stmdb sp!, {r3, lr} mov r0, #2 bl ov02_0234EBBC cmp r0, #0 beq _02342B6C mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} _02342B6C: bl ov02_023429C8 cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} arm_func_end ov02_02342B4C arm_func_start ov02_02342B84 ov02_02342B84: ; 0x02342B84 bx lr arm_func_end ov02_02342B84 arm_func_start ov02_02342B88 ov02_02342B88: ; 0x02342B88 stmdb sp!, {r3, lr} bl ov02_023346DC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02348148 mov r0, #7 bl ov02_023480E0 ldr r0, _02342BB0 ; =ov02_02342BB4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342BB0: .word ov02_02342BB4 arm_func_end ov02_02342B88 arm_func_start ov02_02342BB4 ov02_02342BB4: ; 0x02342BB4 stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _02342BD0 ; =ov02_02342BD4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342BD0: .word ov02_02342BD4 arm_func_end ov02_02342BB4 arm_func_start ov02_02342BD4 ov02_02342BD4: ; 0x02342BD4 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02342C40 ; =ov02_0235AAF8 ldrb r0, [r0] cmp r0, #0 bne _02342BFC bl ov02_023346AC _02342BFC: ldr r0, _02342C40 ; =ov02_0235AAF8 ldrb r0, [r0] cmp r0, #0 bne _02342C20 mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 _02342C20: mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _02342C44 ; =ov02_02342C48 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342C40: .word ov02_0235AAF8 _02342C44: .word ov02_02342C48 arm_func_end ov02_02342BD4 arm_func_start ov02_02342C48 ov02_02342C48: ; 0x02342C48 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02342D04 ; =ov02_0235AAF8 ldrb r0, [r0] cmp r0, #0 bne _02342C7C mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} _02342C7C: bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, pc} bl ov02_023344AC mov r0, #0 bl ov02_0234E02C ldr r0, _02342D04 ; =ov02_0235AAF8 ldrb r0, [r0] cmp r0, #0 bne _02342CB4 bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 _02342CB4: mov r0, #0 mov r1, #0x15 bl ov02_0234E424 ldr r0, _02342D04 ; =ov02_0235AAF8 ldrb r0, [r0] cmp r0, #0 bne _02342CEC bl ov02_0233944C mov r0, #2 mov r1, #1 bl ov02_02338D78 ldr r0, _02342D08 ; =ov02_02344AF0 bl ov02_02338D68 ldmia sp!, {r3, pc} _02342CEC: mov r0, #0 mov r1, r0 bl ov02_02338D78 ldr r0, _02342D0C ; =ov02_02342E00 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342D04: .word ov02_0235AAF8 _02342D08: .word ov02_02344AF0 _02342D0C: .word ov02_02342E00 arm_func_end ov02_02342C48 arm_func_start ov02_02342D10 ov02_02342D10: ; 0x02342D10 stmdb sp!, {r3, lr} bl ov02_02339470 cmp r0, #2 beq _02342D2C cmp r0, #4 beq _02342D44 ldmia sp!, {r3, pc} _02342D2C: ldr r1, _02342D88 ; =ov02_0235AAF8 mov r2, #1 ldr r0, _02342D8C ; =ov02_02342BB4 strb r2, [r1] bl ov02_02338D68 ldmia sp!, {r3, pc} _02342D44: ldr r0, _02342D88 ; =ov02_0235AAF8 mov r1, #0 strb r1, [r0] bl ov02_02348148 mov r0, #9 bl ov02_023480E0 mov r1, #1 mov ip, #0 mov r2, r1 sub r3, r1, #2 mov r0, #0xd str ip, [sp] bl ov02_02349394 bl ov02_02334768 ldr r0, _02342D90 ; =ov02_02342D94 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342D88: .word ov02_0235AAF8 _02342D8C: .word ov02_02342BB4 _02342D90: .word ov02_02342D94 arm_func_end ov02_02342D10 arm_func_start ov02_02342D94 ov02_02342D94: ; 0x02342D94 stmdb sp!, {r3, lr} bl ov02_02349704 cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #6 bl ov02_023480E0 bl ov02_023496C0 ldr r0, _02342DBC ; =ov02_02342DC0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342DBC: .word ov02_02342DC0 arm_func_end ov02_02342D94 arm_func_start ov02_02342DC0 ov02_02342DC0: ; 0x02342DC0 stmdb sp!, {r3, lr} bl ov02_02349718 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02342DDC ; =ov02_02342BB4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342DDC: .word ov02_02342BB4 arm_func_end ov02_02342DC0 arm_func_start ov02_02342DE0 ov02_02342DE0: ; 0x02342DE0 ldr r0, _02342DFC ; =0x027FFFA8 ldrh r0, [r0] and r0, r0, #0x8000 movs r0, r0, asr #0xf movne r0, #1 moveq r0, #0 bx lr .align 2, 0 _02342DFC: .word 0x027FFFA8 arm_func_end ov02_02342DE0 arm_func_start ov02_02342E00 ov02_02342E00: ; 0x02342E00 stmdb sp!, {r3, lr} ldr r0, _02342E34 ; =ov02_0235AAFC mov r1, #0 strb r1, [r0] bl ov02_02342E3C bl ov02_023352C4 mov r0, #0x2a bl ov02_02334E70 mov r0, #2 bl ov02_023343DC ldr r0, _02342E38 ; =ov02_02342EBC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342E34: .word ov02_0235AAFC _02342E38: .word ov02_02342EBC arm_func_end ov02_02342E00 arm_func_start ov02_02342E3C ov02_02342E3C: ; 0x02342E3C stmdb sp!, {r3, lr} ldr r0, _02342EAC ; =ov02_02353AD8 ldr r1, _02342EB0 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _02342EB4 ; =0x04001008 ldr r1, _02342EB8 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _02342EAC: .word ov02_02353AD8 _02342EB0: .word GX_LoadBG2Scr _02342EB4: .word 0x04001008 _02342EB8: .word 0x0400000A arm_func_end ov02_02342E3C arm_func_start ov02_02342EBC ov02_02342EBC: ; 0x02342EBC stmdb sp!, {r3, lr} mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _02342EEC ; =ov02_02342EF0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342EEC: .word ov02_02342EF0 arm_func_end ov02_02342EBC arm_func_start ov02_02342EF0 ov02_02342EF0: ; 0x02342EF0 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #1 bl ov02_02334E38 ldr r0, _02342F18 ; =ov02_02342F1C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342F18: .word ov02_02342F1C arm_func_end ov02_02342EF0 arm_func_start ov02_02342F1C ov02_02342F1C: ; 0x02342F1C stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _02342F40 ; =ov02_02342F44 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342F40: .word ov02_02342F44 arm_func_end ov02_02342F1C arm_func_start ov02_02342F44 ov02_02342F44: ; 0x02342F44 stmdb sp!, {r3, lr} mov r0, #0xa bl sub_02079B14 bl ov02_0234310C bl ov02_02342F64 bl ov02_02342F9C bl ov02_02342FA0 ldmia sp!, {r3, pc} arm_func_end ov02_02342F44 arm_func_start ov02_02342F64 ov02_02342F64: ; 0x02342F64 stmdb sp!, {r3, lr} mov r0, #2 bl ov02_0234EBBC cmp r0, #0 beq _02342F84 mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} _02342F84: bl ov02_02342DE0 cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} arm_func_end ov02_02342F64 arm_func_start ov02_02342F9C ov02_02342F9C: ; 0x02342F9C bx lr arm_func_end ov02_02342F9C arm_func_start ov02_02342FA0 ov02_02342FA0: ; 0x02342FA0 stmdb sp!, {r3, lr} bl ov02_023346DC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02348148 mov r0, #7 bl ov02_023480E0 ldr r0, _02342FC8 ; =ov02_02342FCC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342FC8: .word ov02_02342FCC arm_func_end ov02_02342FA0 arm_func_start ov02_02342FCC ov02_02342FCC: ; 0x02342FCC stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _02342FE8 ; =ov02_02342FEC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02342FE8: .word ov02_02342FEC arm_func_end ov02_02342FCC arm_func_start ov02_02342FEC ov02_02342FEC: ; 0x02342FEC stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_023346AC ldr r0, _02343048 ; =ov02_0235AAFC ldrb r0, [r0] cmp r0, #0 bne _02343028 mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 _02343028: mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _0234304C ; =ov02_02343050 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343048: .word ov02_0235AAFC _0234304C: .word ov02_02343050 arm_func_end ov02_02342FEC arm_func_start ov02_02343050 ov02_02343050: ; 0x02343050 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02343100 ; =ov02_0235AAFC ldrb r0, [r0] cmp r0, #0 bne _02343084 mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} _02343084: bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, pc} bl ov02_023344AC mov r0, #0 bl ov02_0234E02C ldr r0, _02343100 ; =ov02_0235AAFC ldrb r0, [r0] cmp r0, #0 bne _023430BC bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 _023430BC: bl ov02_0233944C ldr r0, _02343100 ; =ov02_0235AAFC ldrb r0, [r0] cmp r0, #0 bne _023430E8 mov r0, #2 mov r1, #1 bl ov02_02338D78 ldr r0, _02343104 ; =ov02_02344AF0 bl ov02_02338D68 ldmia sp!, {r3, pc} _023430E8: mov r0, #0 mov r1, r0 bl ov02_02338D78 ldr r0, _02343108 ; =ov02_02343230 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343100: .word ov02_0235AAFC _02343104: .word ov02_02344AF0 _02343108: .word ov02_02343230 arm_func_end ov02_02343050 arm_func_start ov02_0234310C ov02_0234310C: ; 0x0234310C stmdb sp!, {r3, lr} bl ov02_02339470 cmp r0, #3 beq _02343130 cmp r0, #4 beq _02343150 cmp r0, #5 beq _02343194 ldmia sp!, {r3, pc} _02343130: ldr r0, _023431D8 ; =ov02_0235AAFC mov r1, #1 strb r1, [r0] bl ov02_02348148 bl ov02_0233952C ldr r0, _023431DC ; =ov02_02342FCC bl ov02_02338D68 ldmia sp!, {r3, pc} _02343150: ldr r0, _023431D8 ; =ov02_0235AAFC mov r1, #0 strb r1, [r0] bl ov02_02348148 mov r0, #9 bl ov02_023480E0 mov r1, #1 mov ip, #0 mov r2, r1 sub r3, r1, #2 mov r0, #0xd str ip, [sp] bl ov02_02349394 bl ov02_02334768 ldr r0, _023431E0 ; =ov02_023431E4 bl ov02_02338D68 ldmia sp!, {r3, pc} _02343194: ldr r0, _023431D8 ; =ov02_0235AAFC mov r1, #0 strb r1, [r0] bl ov02_02348148 mov r0, #0x12 bl ov02_023480E0 mov r1, #1 mov ip, #0 mov r2, r1 sub r3, r1, #2 mov r0, #0xe str ip, [sp] bl ov02_02349394 bl ov02_02334768 ldr r0, _023431E0 ; =ov02_023431E4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023431D8: .word ov02_0235AAFC _023431DC: .word ov02_02342FCC _023431E0: .word ov02_023431E4 arm_func_end ov02_0234310C arm_func_start ov02_023431E4 ov02_023431E4: ; 0x023431E4 stmdb sp!, {r3, lr} bl ov02_02349704 cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #6 bl ov02_023480E0 bl ov02_023496C0 ldr r0, _0234320C ; =ov02_02343210 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0234320C: .word ov02_02343210 arm_func_end ov02_023431E4 arm_func_start ov02_02343210 ov02_02343210: ; 0x02343210 stmdb sp!, {r3, lr} bl ov02_02349718 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0234322C ; =ov02_02342FCC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0234322C: .word ov02_02342FCC arm_func_end ov02_02343210 arm_func_start ov02_02343230 ov02_02343230: ; 0x02343230 stmdb sp!, {r3, lr} ldr r0, _02343264 ; =ov02_0235AB00 mov r1, #0 strb r1, [r0] bl ov02_0234326C bl ov02_023352C4 mov r0, #0x26 bl ov02_02334E70 mov r0, #0x10 bl ov02_023480E0 ldr r0, _02343268 ; =ov02_023432EC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343264: .word ov02_0235AB00 _02343268: .word ov02_023432EC arm_func_end ov02_02343230 arm_func_start ov02_0234326C ov02_0234326C: ; 0x0234326C stmdb sp!, {r3, lr} ldr r0, _023432DC ; =ov02_02353AEC ldr r1, _023432E0 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _023432E4 ; =0x04001008 ldr r1, _023432E8 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _023432DC: .word ov02_02353AEC _023432E0: .word GX_LoadBG2Scr _023432E4: .word 0x04001008 _023432E8: .word 0x0400000A arm_func_end ov02_0234326C arm_func_start ov02_023432EC ov02_023432EC: ; 0x023432EC stmdb sp!, {r3, lr} mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _0234331C ; =ov02_02343320 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0234331C: .word ov02_02343320 arm_func_end ov02_023432EC arm_func_start ov02_02343320 ov02_02343320: ; 0x02343320 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02343340 ; =ov02_02343344 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343340: .word ov02_02343344 arm_func_end ov02_02343320 arm_func_start ov02_02343344 ov02_02343344: ; 0x02343344 stmdb sp!, {r3, lr} bl ov02_02343404 bl ov02_02343354 ldmia sp!, {r3, pc} arm_func_end ov02_02343344 arm_func_start ov02_02343354 ov02_02343354: ; 0x02343354 bx lr arm_func_end ov02_02343354 arm_func_start ov02_02343358 ov02_02343358: ; 0x02343358 stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _02343390 ; =ov02_02343394 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343390: .word ov02_02343394 arm_func_end ov02_02343358 arm_func_start ov02_02343394 ov02_02343394: ; 0x02343394 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234E02C bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 mov r0, #0 mov r1, #0x15 bl ov02_0234E424 mov r0, #0 mov r1, r0 bl ov02_02338D78 mov r0, #0 mov r1, #1 bl ov02_02338DB4 ldr r0, _02343400 ; =ov02_02345968 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343400: .word ov02_02345968 arm_func_end ov02_02343394 arm_func_start ov02_02343404 ov02_02343404: ; 0x02343404 stmdb sp!, {r3, lr} ldr r0, _02343430 ; =ov02_0235AB00 ldrb r1, [r0] add r2, r1, #1 and r1, r2, #0xff strb r2, [r0] cmp r1, #0x78 ldmloia sp!, {r3, pc} ldr r0, _02343434 ; =ov02_02343358 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343430: .word ov02_0235AB00 _02343434: .word ov02_02343358 arm_func_end ov02_02343404 arm_func_start ov02_02343438 ov02_02343438: ; 0x02343438 ldr r0, _02343454 ; =0x027FFFA8 ldrh r0, [r0] and r0, r0, #0x8000 movs r0, r0, asr #0xf movne r0, #1 moveq r0, #0 bx lr .align 2, 0 _02343454: .word 0x027FFFA8 arm_func_end ov02_02343438 arm_func_start ov02_02343458 ov02_02343458: ; 0x02343458 stmdb sp!, {r3, lr} ldr r0, _023434AC ; =ov02_0235AB04 mov r1, #0 strb r1, [r0] bl ov02_023434B4 bl ov02_023352C4 mov r0, #0x37 sub r1, r0, #0x38 mov r2, #0 bl ov02_02334C3C mov r0, #2 bl ov02_02334DE8 mov r0, #0x24 bl ov02_02334E70 mov r0, #0 bl ov02_023343DC mov r0, #0xb bl ov02_023480E0 ldr r0, _023434B0 ; =ov02_0234355C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023434AC: .word ov02_0235AB04 _023434B0: .word ov02_0234355C arm_func_end ov02_02343458 arm_func_start ov02_023434B4 ov02_023434B4: ; 0x023434B4 stmdb sp!, {r3, lr} ldr r0, _0234353C ; =ov02_02353B00 ldr r1, _02343540 ; =GX_LoadBG2Char bl ov02_02334DA8 ldr r0, _02343544 ; =ov02_02353B18 ldr r1, _02343548 ; =GX_LoadBGPltt bl ov02_02334DA8 ldr r0, _0234354C ; =ov02_02353B30 ldr r1, _02343550 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _02343554 ; =0x04001008 ldr r1, _02343558 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _0234353C: .word ov02_02353B00 _02343540: .word GX_LoadBG2Char _02343544: .word ov02_02353B18 _02343548: .word GX_LoadBGPltt _0234354C: .word ov02_02353B30 _02343550: .word GX_LoadBG2Scr _02343554: .word 0x04001008 _02343558: .word 0x0400000A arm_func_end ov02_023434B4 arm_func_start ov02_0234355C ov02_0234355C: ; 0x0234355C stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _023435AC ; =ov02_023435B0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023435AC: .word ov02_023435B0 arm_func_end ov02_0234355C arm_func_start ov02_023435B0 ov02_023435B0: ; 0x023435B0 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_023393E0 mov r0, #1 bl ov02_02334E38 ldr r0, _023435EC ; =ov02_023435F0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023435EC: .word ov02_023435F0 arm_func_end ov02_023435B0 arm_func_start ov02_023435F0 ov02_023435F0: ; 0x023435F0 stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _02343614 ; =ov02_02343618 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343614: .word ov02_02343618 arm_func_end ov02_023435F0 arm_func_start ov02_02343618 ov02_02343618: ; 0x02343618 stmdb sp!, {r3, lr} mov r0, #0xa bl sub_02079B14 bl ov02_023437FC bl ov02_02343638 bl ov02_02343670 bl ov02_02343674 ldmia sp!, {r3, pc} arm_func_end ov02_02343618 arm_func_start ov02_02343638 ov02_02343638: ; 0x02343638 stmdb sp!, {r3, lr} mov r0, #2 bl ov02_0234EBBC cmp r0, #0 beq _02343658 mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} _02343658: bl ov02_02343438 cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} arm_func_end ov02_02343638 arm_func_start ov02_02343670 ov02_02343670: ; 0x02343670 bx lr arm_func_end ov02_02343670 arm_func_start ov02_02343674 ov02_02343674: ; 0x02343674 stmdb sp!, {r3, lr} bl ov02_023346DC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02348148 mov r0, #7 bl ov02_023480E0 ldr r0, _0234369C ; =ov02_023436A0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0234369C: .word ov02_023436A0 arm_func_end ov02_02343674 arm_func_start ov02_023436A0 ov02_023436A0: ; 0x023436A0 stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _023436BC ; =ov02_023436C0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023436BC: .word ov02_023436C0 arm_func_end ov02_023436A0 arm_func_start ov02_023436C0 ov02_023436C0: ; 0x023436C0 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0234372C ; =ov02_0235AB04 ldrb r0, [r0] cmp r0, #0 bne _023436E8 bl ov02_023346AC _023436E8: ldr r0, _0234372C ; =ov02_0235AB04 ldrb r0, [r0] cmp r0, #0 bne _0234370C mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 _0234370C: mov r0, #3 mov r1, #0 mov r2, #0x14 mov r3, #8 bl ov02_0234D8E0 ldr r0, _02343730 ; =ov02_02343734 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0234372C: .word ov02_0235AB04 _02343730: .word ov02_02343734 arm_func_end ov02_023436C0 arm_func_start ov02_02343734 ov02_02343734: ; 0x02343734 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _023437F0 ; =ov02_0235AB04 ldrb r0, [r0] cmp r0, #0 bne _02343768 mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} _02343768: bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, pc} bl ov02_023344AC mov r0, #0 bl ov02_0234E02C ldr r0, _023437F0 ; =ov02_0235AB04 ldrb r0, [r0] cmp r0, #0 bne _023437A0 bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 _023437A0: mov r0, #0 mov r1, #0x15 bl ov02_0234E424 ldr r0, _023437F0 ; =ov02_0235AB04 ldrb r0, [r0] cmp r0, #0 bne _023437D8 bl ov02_0233944C mov r0, #2 mov r1, #1 bl ov02_02338D78 ldr r0, _023437F4 ; =ov02_02344AF0 bl ov02_02338D68 ldmia sp!, {r3, pc} _023437D8: mov r0, #0 mov r1, r0 bl ov02_02338D78 ldr r0, _023437F8 ; =ov02_023429E8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023437F0: .word ov02_0235AB04 _023437F4: .word ov02_02344AF0 _023437F8: .word ov02_023429E8 arm_func_end ov02_02343734 arm_func_start ov02_023437FC ov02_023437FC: ; 0x023437FC stmdb sp!, {r3, lr} bl ov02_02339470 cmp r0, #1 beq _02343818 cmp r0, #4 beq _02343830 ldmia sp!, {r3, pc} _02343818: ldr r1, _02343874 ; =ov02_0235AB04 mov r2, #1 ldr r0, _02343878 ; =ov02_023436A0 strb r2, [r1] bl ov02_02338D68 ldmia sp!, {r3, pc} _02343830: ldr r0, _02343874 ; =ov02_0235AB04 mov r1, #0 strb r1, [r0] bl ov02_02348148 mov r0, #9 bl ov02_023480E0 mov r1, #1 mov ip, #0 mov r2, r1 sub r3, r1, #2 mov r0, #0xd str ip, [sp] bl ov02_02349394 bl ov02_02334768 ldr r0, _0234387C ; =ov02_02343880 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343874: .word ov02_0235AB04 _02343878: .word ov02_023436A0 _0234387C: .word ov02_02343880 arm_func_end ov02_023437FC arm_func_start ov02_02343880 ov02_02343880: ; 0x02343880 stmdb sp!, {r3, lr} bl ov02_02349704 cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #6 bl ov02_023480E0 bl ov02_023496C0 ldr r0, _023438A8 ; =ov02_023438AC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023438A8: .word ov02_023438AC arm_func_end ov02_02343880 arm_func_start ov02_023438AC ov02_023438AC: ; 0x023438AC stmdb sp!, {r3, lr} bl ov02_02349718 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _023438C8 ; =ov02_023436A0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023438C8: .word ov02_023436A0 arm_func_end ov02_023438AC arm_func_start ov02_023438CC ov02_023438CC: ; 0x023438CC stmdb sp!, {r3, lr} ldr r0, _0234392C ; =ov02_0235AB08 mov r1, #0 strh r1, [r0, #2] strb r1, [r0] bl ov02_02343934 mov r0, #0x33 sub r1, r0, #0x34 mov r2, #0 bl ov02_02334C3C bl ov02_023352C4 mov r0, #2 bl ov02_02334DE8 mov r0, #0x33 bl ov02_02334E70 mov r0, #0 bl ov02_023343DC bl ov02_02347028 bl ov02_02347090 mov r0, #0xa bl ov02_023480E0 ldr r0, _02343930 ; =ov02_023439DC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0234392C: .word ov02_0235AB08 _02343930: .word ov02_023439DC arm_func_end ov02_023438CC arm_func_start ov02_02343934 ov02_02343934: ; 0x02343934 stmdb sp!, {r3, lr} ldr r0, _023439BC ; =ov02_02353B44 ldr r1, _023439C0 ; =GX_LoadBG2Char bl ov02_02334DA8 ldr r0, _023439C4 ; =ov02_02353B5C ldr r1, _023439C8 ; =GX_LoadBGPltt bl ov02_02334DA8 ldr r0, _023439CC ; =ov02_02353B74 ldr r1, _023439D0 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _023439D4 ; =0x04001008 ldr r1, _023439D8 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _023439BC: .word ov02_02353B44 _023439C0: .word GX_LoadBG2Char _023439C4: .word ov02_02353B5C _023439C8: .word GX_LoadBGPltt _023439CC: .word ov02_02353B74 _023439D0: .word GX_LoadBG2Scr _023439D4: .word 0x04001008 _023439D8: .word 0x0400000A arm_func_end ov02_02343934 arm_func_start ov02_023439DC ov02_023439DC: ; 0x023439DC stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _02343A2C ; =ov02_02343A30 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343A2C: .word ov02_02343A30 arm_func_end ov02_023439DC arm_func_start ov02_02343A30 ov02_02343A30: ; 0x02343A30 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #1 bl ov02_02334E38 ldr r0, _02343A68 ; =ov02_02343A6C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343A68: .word ov02_02343A6C arm_func_end ov02_02343A30 arm_func_start ov02_02343A6C ov02_02343A6C: ; 0x02343A6C stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _02343A90 ; =ov02_02343A94 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343A90: .word ov02_02343A94 arm_func_end ov02_02343A6C arm_func_start ov02_02343A94 ov02_02343A94: ; 0x02343A94 stmdb sp!, {r3, lr} bl ov02_02343BD4 bl ov02_02343BF8 bl ov02_02343BFC bl ov02_02343AAC ldmia sp!, {r3, pc} arm_func_end ov02_02343A94 arm_func_start ov02_02343AAC ov02_02343AAC: ; 0x02343AAC stmdb sp!, {r3, lr} sub sp, sp, #8 ldr r0, _02343BC8 ; =ov02_0235AB08 ldrh r1, [r0, #2] add r1, r1, #1 strh r1, [r0, #2] ldrh r0, [r0, #2] cmp r0, #0x12c addlo sp, sp, #8 ldmloia sp!, {r3, pc} bl ov02_02348148 add r0, sp, #4 bl ov02_0234722C cmp r0, #0 bne _02343B2C ldr r0, _02343BC8 ; =ov02_0235AB08 mov r1, #1 mov r3, #2 strb r3, [r0] mov ip, #0 mov r2, r1 sub r3, r1, #2 mov r0, #0xf str ip, [sp] bl ov02_02349394 mov r0, #0x12 bl ov02_023480E0 bl ov02_02334768 ldr r0, _02343BCC ; =ov02_02343D64 bl ov02_02338D68 add sp, sp, #8 ldmia sp!, {r3, pc} _02343B2C: cmp r0, #0 mov r2, #0 ble _02343B58 ldr r3, [sp, #4] _02343B3C: ldrb r1, [r3, #0x28] cmp r1, #2 bne _02343B58 add r2, r2, #1 cmp r2, r0 add r3, r3, #0x2a blt _02343B3C _02343B58: cmp r2, r0 bne _02343BA4 ldr r0, _02343BC8 ; =ov02_0235AB08 mov r1, #1 mov r3, #3 strb r3, [r0] mov ip, #0 mov r2, r1 sub r3, r1, #2 mov r0, #0xe str ip, [sp] bl ov02_02349394 mov r0, #0x12 bl ov02_023480E0 bl ov02_02334768 ldr r0, _02343BCC ; =ov02_02343D64 bl ov02_02338D68 add sp, sp, #8 ldmia sp!, {r3, pc} _02343BA4: ldr r1, _02343BC8 ; =ov02_0235AB08 mov r2, #1 mov r0, #0xf strb r2, [r1] bl ov02_023480E0 ldr r0, _02343BD0 ; =ov02_02343C28 bl ov02_02338D68 add sp, sp, #8 ldmia sp!, {r3, pc} .align 2, 0 _02343BC8: .word ov02_0235AB08 _02343BCC: .word ov02_02343D64 _02343BD0: .word ov02_02343C28 arm_func_end ov02_02343AAC arm_func_start ov02_02343BD4 ov02_02343BD4: ; 0x02343BD4 stmdb sp!, {r3, lr} mov r0, #2 bl ov02_0234EBBC cmp r0, #0 ldmeqia sp!, {r3, pc} bl ov02_02348148 mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} arm_func_end ov02_02343BD4 arm_func_start ov02_02343BF8 ov02_02343BF8: ; 0x02343BF8 bx lr arm_func_end ov02_02343BF8 arm_func_start ov02_02343BFC ov02_02343BFC: ; 0x02343BFC stmdb sp!, {r3, lr} bl ov02_023346DC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02348148 mov r0, #7 bl ov02_023480E0 ldr r0, _02343C24 ; =ov02_02343C28 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343C24: .word ov02_02343C28 arm_func_end ov02_02343BFC arm_func_start ov02_02343C28 ov02_02343C28: ; 0x02343C28 stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _02343C44 ; =ov02_02343C48 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343C44: .word ov02_02343C48 arm_func_end ov02_02343C28 arm_func_start ov02_02343C48 ov02_02343C48: ; 0x02343C48 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_023346AC mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _02343C94 ; =ov02_02343C98 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343C94: .word ov02_02343C98 arm_func_end ov02_02343C48 arm_func_start ov02_02343C98 ov02_02343C98: ; 0x02343C98 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, pc} _02343CC8: bl ov02_02347190 cmp r0, #0 beq _02343CC8 bl ov02_023344AC mov r0, #0 bl ov02_0234E02C bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 mov r0, #0 mov r1, #0x15 bl ov02_0234E424 ldr r0, _02343D58 ; =ov02_0235AB08 ldrb r0, [r0] cmp r0, #1 beq _02343D34 bl ov02_0234705C bl ov02_02347518 ldrb r0, [r0, #0xf4] bl ov02_0234793C mov r0, #2 mov r1, #1 bl ov02_02338D78 ldr r0, _02343D5C ; =ov02_02344AF0 bl ov02_02338D68 ldmia sp!, {r3, pc} _02343D34: mov r0, #0 mov r1, #1 bl ov02_02338D78 mov r0, #0 mov r1, r0 bl ov02_02338DB4 ldr r0, _02343D60 ; =ov02_0233CEEC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343D58: .word ov02_0235AB08 _02343D5C: .word ov02_02344AF0 _02343D60: .word ov02_0233CEEC arm_func_end ov02_02343C98 arm_func_start ov02_02343D64 ov02_02343D64: ; 0x02343D64 stmdb sp!, {r3, lr} bl ov02_02349704 cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #6 bl ov02_023480E0 bl ov02_023496C0 ldr r0, _02343D8C ; =ov02_02343D90 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343D8C: .word ov02_02343D90 arm_func_end ov02_02343D64 arm_func_start ov02_02343D90 ov02_02343D90: ; 0x02343D90 stmdb sp!, {r3, lr} bl ov02_02349718 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02343DAC ; =ov02_02343C28 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343DAC: .word ov02_02343C28 arm_func_end ov02_02343D90 arm_func_start ov02_02343DB0 ov02_02343DB0: ; 0x02343DB0 stmdb sp!, {r3, lr} mov r0, #0x20 mov r1, #4 bl ov02_0234E7B4 ldr r1, _02343E08 ; =ov02_0235AB0C mov r2, #0 str r0, [r1, #4] strb r2, [r0, #0x1d] bl ov02_02343E10 mov r0, #1 bl ov02_02335268 mov r0, #0x2f sub r1, r0, #0x30 mov r2, #0 bl ov02_02334C3C mov r0, #0 bl ov02_02334DE8 bl ov02_02343F20 bl ov02_02344590 ldr r0, _02343E0C ; =ov02_02344028 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02343E08: .word ov02_0235AB0C _02343E0C: .word ov02_02344028 arm_func_end ov02_02343DB0 arm_func_start ov02_02343E10 ov02_02343E10: ; 0x02343E10 stmdb sp!, {r3, lr} sub sp, sp, #0x18 ldr ip, _02343EF0 ; =ov02_02352BE8 add r3, sp, #0 mov r2, #0xb _02343E24: ldrb r1, [ip] ldrb r0, [ip, #1] add ip, ip, #2 strb r1, [r3] strb r0, [r3, #1] add r3, r3, #2 subs r2, r2, #1 bne _02343E24 ldr r0, _02343EF4 ; =ov02_02353B88 ldr r1, _02343EF8 ; =GX_LoadOBJPltt bl ov02_02334DA8 ldr r0, _02343EFC ; =ov02_02353B9C ldr r1, _02343F00 ; =GX_LoadBG2Char bl ov02_02334DA8 ldr r0, _02343F04 ; =ov02_02353BB4 ldr r1, _02343F08 ; =GX_LoadBGPltt bl ov02_02334DA8 ldr r0, _02343F0C ; =ov02_02353BCC ldr r1, _02343F10 ; =GX_LoadBG2Scr bl ov02_02334DA8 add r0, sp, #0 bl ov02_02334D48 mov r1, #0 mov r2, #4 bl ov02_0234CE84 ldr r2, _02343F14 ; =ov02_0235AB0C mov r1, #0x10 ldr r2, [r2, #4] str r0, [r2] mov r0, #1 bl ov02_0234E3D0 ldr r2, _02343F18 ; =0x04001008 ldr r1, _02343F1C ; =0x0400000A ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r2, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2, #2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] add sp, sp, #0x18 ldmia sp!, {r3, pc} .align 2, 0 _02343EF0: .word ov02_02352BE8 _02343EF4: .word ov02_02353B88 _02343EF8: .word GX_LoadOBJPltt _02343EFC: .word ov02_02353B9C _02343F00: .word GX_LoadBG2Char _02343F04: .word ov02_02353BB4 _02343F08: .word GX_LoadBGPltt _02343F0C: .word ov02_02353BCC _02343F10: .word GX_LoadBG2Scr _02343F14: .word ov02_0235AB0C _02343F18: .word 0x04001008 _02343F1C: .word 0x0400000A arm_func_end ov02_02343E10 arm_func_start ov02_02343F20 ov02_02343F20: ; 0x02343F20 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} mov sl, #0 ldr r6, _0234401C ; =ov02_02352BFE ldr r5, _02344020 ; =ov02_02352BDC ldr r4, _02344024 ; =ov02_0235AB0C mov fp, sl mvn r7, #0 mov r8, #3 _02343F40: mov r0, sl bl ov02_02347924 mov sb, r0 cmp sb, #0xff moveq sb, r8 beq _02343FB4 mov r0, fp mov r1, #0x11 mov r2, #1 bl ov02_0234D6D8 ldr r1, [r4, #4] add r3, sl, #3 add r1, r1, sl, lsl #2 str r0, [r1, #0x10] mov r2, r3, lsl #2 ldr r0, [r4, #4] add r3, r6, r3, lsl #2 add r0, r0, sl, lsl #2 ldrh r2, [r6, r2] ldrh r3, [r3, #2] ldr r0, [r0, #0x10] mov r1, r7 bl ov02_0234D440 ldr r0, [r4, #4] mov r1, r7 add r0, r0, sl, lsl #2 ldr r0, [r0, #0x10] mov r2, #3 bl ov02_0234D530 _02343FB4: ldrb r1, [r5, sb] mov r0, #0 mov r2, #1 bl ov02_0234D6D8 ldr r1, [r4, #4] mov r2, sl, lsl #2 add r1, r1, sl, lsl #2 str r0, [r1, #4] ldr r0, [r4, #4] add r3, r6, sl, lsl #2 add r0, r0, sl, lsl #2 ldrh r2, [r6, r2] ldrh r3, [r3, #2] ldr r0, [r0, #4] mov r1, r7 bl ov02_0234D440 ldr r0, [r4, #4] mov r1, r7 add r0, r0, sl, lsl #2 ldr r0, [r0, #4] mov r2, #3 bl ov02_0234D530 add sl, sl, #1 cmp sl, #3 blt _02343F40 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _0234401C: .word ov02_02352BFE _02344020: .word ov02_02352BDC _02344024: .word ov02_0235AB0C arm_func_end ov02_02343F20 arm_func_start ov02_02344028 ov02_02344028: ; 0x02344028 stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #2 mov r1, #0 mov r2, #0x14 mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 mov r0, #0 mov r1, #0x14 bl ov02_0234E3D0 ldr r0, _02344078 ; =ov02_0234407C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02344078: .word ov02_0234407C arm_func_end ov02_02344028 arm_func_start ov02_0234407C ov02_0234407C: ; 0x0234407C stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_02334E38 ldr r0, _023440B4 ; =ov02_023440B8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023440B4: .word ov02_023440B8 arm_func_end ov02_0234407C arm_func_start ov02_023440B8 ov02_023440B8: ; 0x023440B8 stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_023487D0 cmp r0, #1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _023440E8 ; =ov02_023440EC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023440E8: .word ov02_023440EC arm_func_end ov02_023440B8 arm_func_start ov02_023440EC ov02_023440EC: ; 0x023440EC stmdb sp!, {r3, lr} bl ov02_02344100 bl ov02_023441F4 bl ov02_023441F8 ldmia sp!, {r3, pc} arm_func_end ov02_023440EC arm_func_start ov02_02344100 ov02_02344100: ; 0x02344100 stmdb sp!, {r3, r4, r5, lr} ldr r5, _023441EC ; =ov02_02352C16 mov r4, #0 _0234410C: mov r0, r5 bl ov02_0234ED04 cmp r0, #0 beq _02344134 mov r0, #1 bl ov02_023346F0 ldr r0, _023441F0 ; =ov02_0235AB0C strb r4, [r0] bl ov02_02344590 ldmia sp!, {r3, r4, r5, pc} _02344134: add r4, r4, #1 cmp r4, #7 add r5, r5, #8 blo _0234410C mov r0, #1 bl ov02_0234EBBC cmp r0, #0 beq _02344160 mov r0, #1 bl ov02_023346F0 ldmia sp!, {r3, r4, r5, pc} _02344160: mov r0, #2 bl ov02_0234EBBC cmp r0, #0 beq _0234417C mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, r4, r5, pc} _0234417C: mov r0, #0x40 bl ov02_0234EBFC cmp r0, #0 beq _02344198 mov r0, #1 bl ov02_0234460C ldmia sp!, {r3, r4, r5, pc} _02344198: mov r0, #0x80 bl ov02_0234EBFC cmp r0, #0 beq _023441B4 mov r0, #3 bl ov02_0234460C ldmia sp!, {r3, r4, r5, pc} _023441B4: mov r0, #0x20 bl ov02_0234EBFC cmp r0, #0 beq _023441D0 mov r0, #0 bl ov02_0234460C ldmia sp!, {r3, r4, r5, pc} _023441D0: mov r0, #0x10 bl ov02_0234EBFC cmp r0, #0 ldmeqia sp!, {r3, r4, r5, pc} mov r0, #2 bl ov02_0234460C ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _023441EC: .word ov02_02352C16 _023441F0: .word ov02_0235AB0C arm_func_end ov02_02344100 arm_func_start ov02_023441F4 ov02_023441F4: ; 0x023441F4 bx lr arm_func_end ov02_023441F4 arm_func_start ov02_023441F8 ov02_023441F8: ; 0x023441F8 stmdb sp!, {r3, r4, lr} sub sp, sp, #4 bl ov02_023346DC cmp r0, #0 beq _0234421C cmp r0, #1 beq _02344264 add sp, sp, #4 ldmia sp!, {r3, r4, pc} _0234421C: bl ov02_02338E00 cmp r0, #0 beq _02344234 cmp r0, #1 beq _02344250 b _02344308 _02344234: mov r0, #7 bl ov02_023480E0 ldr r0, _02344318 ; =ov02_0235AB0C mov r1, #2 ldr r0, [r0, #4] strb r1, [r0, #0x1d] b _02344308 _02344250: bl ov02_02334768 ldr r0, _0234431C ; =ov02_0233958C bl ov02_02338D68 add sp, sp, #4 ldmia sp!, {r3, r4, pc} _02344264: ldr r0, _02344318 ; =ov02_0235AB0C mov r2, #1 ldr r1, [r0, #4] strb r2, [r1, #0x1d] ldrb r0, [r0] cmp r0, #4 blo _023442F0 sub r4, r0, #4 mov r0, r4 bl ov02_02347924 cmp r0, #0xff bne _023442AC mov r0, #9 bl ov02_023480E0 mvn r0, #0 bl ov02_02334710 add sp, sp, #4 ldmia sp!, {r3, r4, pc} _023442AC: mov r0, #6 bl ov02_023480E0 bl ov02_02338DF0 ldr r1, _02344320 ; =ov02_02352C88 add ip, r4, #1 ldrsb r3, [r1, r0] mov r0, #0x46 mov r1, #0 mov r2, #1 str ip, [sp] bl ov02_02349394 bl ov02_02344800 bl ov02_02334768 ldr r0, _02344324 ; =ov02_02344890 bl ov02_02338D68 add sp, sp, #4 ldmia sp!, {r3, r4, pc} _023442F0: cmp r0, #2 bhi _023442FC bl ov02_0234793C _023442FC: mov r0, #6 bl ov02_023480E0 bl ov02_02344A20 _02344308: ldr r0, _02344328 ; =ov02_0234432C bl ov02_02338D68 add sp, sp, #4 ldmia sp!, {r3, r4, pc} .align 2, 0 _02344318: .word ov02_0235AB0C _0234431C: .word ov02_0233958C _02344320: .word ov02_02352C88 _02344324: .word ov02_02344890 _02344328: .word ov02_0234432C arm_func_end ov02_023441F8 arm_func_start ov02_0234432C ov02_0234432C: ; 0x0234432C stmdb sp!, {r3, lr} ldr r0, _02344360 ; =ov02_0235AB0C ldr r0, [r0, #4] ldrb r0, [r0, #0x1d] cmp r0, #2 bne _02344348 bl ov02_023486C8 _02344348: bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _02344364 ; =ov02_02344368 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02344360: .word ov02_0235AB0C _02344364: .word ov02_02344368 arm_func_end ov02_0234432C arm_func_start ov02_02344368 ov02_02344368: ; 0x02344368 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _023443E4 ; =ov02_0235AB0C ldr r1, [r0, #4] ldrb r1, [r1, #0x1d] cmp r1, #1 bne _023443B0 ldrb r0, [r0] cmp r0, #3 beq _023443AC bl ov02_02347518 ldrb r0, [r0, #0xe7] cmp r0, #0xff beq _023443B0 _023443AC: bl ov02_023346AC _023443B0: mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x14 mov r3, #8 bl ov02_0234D8E0 ldr r0, _023443E8 ; =ov02_023443EC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023443E4: .word ov02_0235AB0C _023443E8: .word ov02_023443EC arm_func_end ov02_02344368 arm_func_start ov02_023443EC ov02_023443EC: ; 0x023443EC stmdb sp!, {r3, r4, r5, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, r4, r5, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, r4, r5, pc} bl ov02_02348BF0 cmp r0, #0 ldmeqia sp!, {r3, r4, r5, pc} bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, r4, r5, pc} ldr r4, _02344570 ; =ov02_0235AB0C mov r5, #0 _02344430: ldr r0, [r4, #4] add r0, r0, r5, lsl #2 ldr r0, [r0, #4] cmp r0, #0 beq _02344448 bl ov02_0234D288 _02344448: add r5, r5, #1 cmp r5, #3 blo _02344430 ldr r4, _02344570 ; =ov02_0235AB0C mov r5, #0 _0234445C: ldr r0, [r4, #4] add r0, r0, r5, lsl #2 ldr r0, [r0, #0x10] cmp r0, #0 beq _02344474 bl ov02_0234D288 _02344474: add r5, r5, #1 cmp r5, #3 blo _0234445C bl ov02_0233519C bl ov02_02334D10 ldr r0, _02344570 ; =ov02_0235AB0C ldr r0, [r0, #4] ldr r0, [r0] bl ov02_0234CF78 ldr r0, _02344574 ; =ov02_02353BE0 ldr r1, _02344578 ; =GX_LoadOBJPltt bl ov02_02334DA8 mov r0, #1 mov r1, r0 bl ov02_0234E424 mov r0, #0 mov r1, #0x14 bl ov02_0234E424 ldr r0, _02344570 ; =ov02_0235AB0C ldr r1, [r0, #4] ldrb r1, [r1, #0x1d] cmp r1, #2 bne _023444E8 mov r0, #0 mov r1, r0 bl ov02_02338D78 ldr r0, _0234457C ; =ov02_023398CC bl ov02_02338D68 b _02344564 _023444E8: ldrb r0, [r0] cmp r0, #3 addls pc, pc, r0, lsl #2 b _02344564 _023444F8: ; jump table b _02344508 ; case 0 b _02344508 ; case 1 b _02344508 ; case 2 b _02344550 ; case 3 _02344508: mov r0, #2 mov r1, #0 bl ov02_02338D78 bl ov02_02347518 ldrb r0, [r0, #0xe7] cmp r0, #0xff bne _02344530 ldr r0, _02344580 ; =ov02_02344AF0 bl ov02_02338D68 b _02344564 _02344530: mov r0, #0 mov r1, r0 bl ov02_02338DB4 mov r0, #0 bl ov02_02342798 ldr r0, _02344584 ; =ov02_023402CC bl ov02_02338D68 b _02344564 _02344550: mov r0, #2 mov r1, #1 bl ov02_02338D78 ldr r0, _02344588 ; =ov02_02345DC8 bl ov02_02338D68 _02344564: ldr r0, _0234458C ; =ov02_0235AB10 bl ov02_0234E7D8 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _02344570: .word ov02_0235AB0C _02344574: .word ov02_02353BE0 _02344578: .word GX_LoadOBJPltt _0234457C: .word ov02_023398CC _02344580: .word ov02_02344AF0 _02344584: .word ov02_023402CC _02344588: .word ov02_02345DC8 _0234458C: .word ov02_0235AB10 arm_func_end ov02_023443EC arm_func_start ov02_02344590 ov02_02344590: ; 0x02344590 stmdb sp!, {r3, lr} ldr r0, _023445F8 ; =ov02_0235AB0C ldrb r2, [r0] cmp r2, #4 bhs _023445D0 mov ip, r2, lsl #3 ldr r0, _023445FC ; =ov02_02352C4E ldr r1, _02344600 ; =ov02_02352C52 ldr r2, _02344604 ; =ov02_02352C50 ldr r3, _02344608 ; =ov02_02352C54 ldrh r0, [r0, ip] ldrh r1, [r1, ip] ldrh r2, [r2, ip] ldrh r3, [r3, ip] bl ov02_023350AC ldmia sp!, {r3, pc} _023445D0: ldr r1, _023445FC ; =ov02_02352C4E mov r3, r2, lsl #3 ldr r2, _02344600 ; =ov02_02352C52 ldr r0, _02344604 ; =ov02_02352C50 ldrh r1, [r1, r3] ldrh r2, [r2, r3] ldrh r3, [r0, r3] mov r0, #0 bl ov02_02334FF0 ldmia sp!, {r3, pc} .align 2, 0 _023445F8: .word ov02_0235AB0C _023445FC: .word ov02_02352C4E _02344600: .word ov02_02352C52 _02344604: .word ov02_02352C50 _02344608: .word ov02_02352C54 arm_func_end ov02_02344590 arm_func_start ov02_0234460C ov02_0234460C: ; 0x0234460C stmdb sp!, {r3, lr} ldr r2, _023447FC ; =ov02_0235AB0C mov r1, #1 ldrb r3, [r2] cmp r3, #6 addls pc, pc, r3, lsl #2 b _023447E4 _02344628: ; jump table b _02344644 ; case 0 b _02344684 ; case 1 b _023446C4 ; case 2 b _02344704 ; case 3 b _0234472C ; case 4 b _0234476C ; case 5 b _023447A8 ; case 6 _02344644: ldr r3, [r2, #4] mov ip, #0 cmp r0, #0 strb ip, [r3, #0x1c] moveq r0, #2 streqb r0, [r2] beq _023447E4 cmp r0, #2 streqb r1, [r2] beq _023447E4 cmp r0, #1 moveq r0, #3 streqb r0, [r2] movne r0, #4 strneb r0, [r2] b _023447E4 _02344684: ldr r3, [r2, #4] cmp r0, #0 strb r1, [r3, #0x1c] moveq r0, #0 streqb r0, [r2] beq _023447E4 cmp r0, #2 moveq r0, #2 streqb r0, [r2] beq _023447E4 cmp r0, #1 moveq r0, #3 streqb r0, [r2] movne r0, #5 strneb r0, [r2] b _023447E4 _023446C4: ldr r3, [r2, #4] mov ip, #2 strb ip, [r3, #0x1c] cmp r0, #0 streqb r1, [r2] beq _023447E4 cmp r0, #2 moveq r0, #0 streqb r0, [r2] beq _023447E4 cmp r0, #1 moveq r0, #3 streqb r0, [r2] movne r0, #6 strneb r0, [r2] b _023447E4 _02344704: ldr r3, [r2, #4] cmp r0, #1 ldrb ip, [r3, #0x1c] add r3, ip, #4 streqb r3, [r2] beq _023447E4 cmp r0, #3 streqb ip, [r2] movne r1, #0 b _023447E4 _0234472C: ldr r3, [r2, #4] mov ip, #0 cmp r0, #0 strb ip, [r3, #0x1c] moveq r0, #6 streqb r0, [r2] beq _023447E4 cmp r0, #2 moveq r0, #5 streqb r0, [r2] beq _023447E4 cmp r0, #1 streqb ip, [r2] movne r0, #3 strneb r0, [r2] b _023447E4 _0234476C: ldr r3, [r2, #4] cmp r0, #0 strb r1, [r3, #0x1c] moveq r0, #4 streqb r0, [r2] beq _023447E4 cmp r0, #2 moveq r0, #6 streqb r0, [r2] beq _023447E4 cmp r0, #1 streqb r1, [r2] movne r0, #3 strneb r0, [r2] b _023447E4 _023447A8: ldr r3, [r2, #4] mov ip, #2 cmp r0, #0 strb ip, [r3, #0x1c] moveq r0, #5 streqb r0, [r2] beq _023447E4 cmp r0, #2 moveq r0, #4 streqb r0, [r2] beq _023447E4 cmp r0, #1 streqb ip, [r2] movne r0, #3 strneb r0, [r2] _023447E4: cmp r1, #0 ldmeqia sp!, {r3, pc} mov r0, #8 bl ov02_023480E0 bl ov02_02344590 ldmia sp!, {r3, pc} .align 2, 0 _023447FC: .word ov02_0235AB0C arm_func_end ov02_0234460C arm_func_start ov02_02344800 ov02_02344800: ; 0x02344800 stmdb sp!, {r4, lr} ldr r0, _02344884 ; =ov02_0235AB0C mov r1, #0 ldrb r2, [r0] ldr r0, [r0, #4] sub r4, r2, #4 add r0, r0, r4, lsl #2 ldr r0, [r0, #0x10] bl ov02_0234D308 mov r2, r0 mov r0, #0 mov r1, #0x32 bl ov02_0234D618 ldr r0, _02344884 ; =ov02_0235AB0C add r3, r4, #3 ldr r2, [r0, #4] ldr r1, _02344888 ; =ov02_02352BFE mov r3, r3, lsl #2 ldr r0, _0234488C ; =ov02_02352C00 add ip, r2, r4, lsl #2 ldrh r2, [r1, r3] ldrh r3, [r0, r3] ldr r0, [ip, #0x10] mvn r1, #0 bl ov02_0234D440 ldr r0, _02344884 ; =ov02_0235AB0C mvn r1, #0 ldr r0, [r0, #4] mov r2, #3 add r0, r0, r4, lsl #2 ldr r0, [r0, #0x10] bl ov02_0234D530 ldmia sp!, {r4, pc} .align 2, 0 _02344884: .word ov02_0235AB0C _02344888: .word ov02_02352BFE _0234488C: .word ov02_02352C00 arm_func_end ov02_02344800 arm_func_start ov02_02344890 ov02_02344890: ; 0x02344890 stmdb sp!, {r4, lr} ldr r0, _023449EC ; =ov02_0235AB0C ldrb r0, [r0] sub r4, r0, #4 bl ov02_02349704 cmp r0, #0 beq _02344960 cmp r0, #1 ldmneia sp!, {r4, pc} mov r0, #0xe bl ov02_023480E0 mov r0, r4 bl ov02_02347D2C ldr r0, _023449EC ; =ov02_0235AB0C mov r1, #0 ldr r0, [r0, #4] add r0, r0, r4, lsl #2 ldr r0, [r0, #4] bl ov02_0234D308 mov r2, r0 mov r0, #0 mov r1, #0x56 bl ov02_0234D618 ldr r0, _023449EC ; =ov02_0235AB0C mov ip, r4, lsl #2 ldr r0, [r0, #4] mvn r1, #0 add r0, r0, r4, lsl #2 ldr r0, [r0, #4] ldr r2, _023449F0 ; =ov02_02352BFE ldr r3, _023449F4 ; =ov02_02352C00 ldrh r2, [r2, ip] ldrh r3, [r3, ip] bl ov02_0234D440 ldr r0, _023449EC ; =ov02_0235AB0C mvn r1, #0 ldr r0, [r0, #4] mov r2, #3 add r0, r0, r4, lsl #2 ldr r0, [r0, #4] bl ov02_0234D530 ldr r0, _023449EC ; =ov02_0235AB0C ldr r0, [r0, #4] add r0, r0, r4, lsl #2 ldr r0, [r0, #0x10] bl ov02_0234D288 mov r1, #0 ldr r0, _023449EC ; =ov02_0235AB0C ldr r0, [r0, #4] add r0, r0, r4, lsl #2 str r1, [r0, #0x10] b _023449DC _02344960: mov r0, #7 bl ov02_023480E0 ldr r0, _023449EC ; =ov02_0235AB0C mov r1, #0 ldr r0, [r0, #4] add r0, r0, r4, lsl #2 ldr r0, [r0, #0x10] bl ov02_0234D308 mov r2, r0 mov r0, #0 mov r1, #0x11 bl ov02_0234D618 ldr r0, _023449EC ; =ov02_0235AB0C add r1, r4, #3 ldr r0, [r0, #4] mov ip, r1, lsl #2 ldr r2, _023449F0 ; =ov02_02352BFE ldr r3, _023449F4 ; =ov02_02352C00 add r0, r0, r4, lsl #2 ldrh r2, [r2, ip] ldrh r3, [r3, ip] ldr r0, [r0, #0x10] mvn r1, #0 bl ov02_0234D440 ldr r0, _023449EC ; =ov02_0235AB0C mvn r1, #0 ldr r0, [r0, #4] mov r2, #3 add r0, r0, r4, lsl #2 ldr r0, [r0, #0x10] bl ov02_0234D530 _023449DC: bl ov02_023496C0 ldr r0, _023449F8 ; =ov02_023449FC bl ov02_02338D68 ldmia sp!, {r4, pc} .align 2, 0 _023449EC: .word ov02_0235AB0C _023449F0: .word ov02_02352BFE _023449F4: .word ov02_02352C00 _023449F8: .word ov02_023449FC arm_func_end ov02_02344890 arm_func_start ov02_023449FC ov02_023449FC: ; 0x023449FC stmdb sp!, {r3, lr} bl ov02_02349718 cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02334750 ldr r0, _02344A1C ; =ov02_023440EC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02344A1C: .word ov02_023440EC arm_func_end ov02_023449FC arm_func_start ov02_02344A20 ov02_02344A20: ; 0x02344A20 stmdb sp!, {r3, r4, r5, r6, r7, lr} sub sp, sp, #8 ldr r1, _02344AE8 ; =ov02_02352BE0 ldr r0, _02344AEC ; =ov02_0235AB0C ldrb r7, [r1] ldrb r6, [r1, #1] ldrb r5, [r1, #2] ldrb r4, [r1, #3] ldrb lr, [r1, #4] ldrb ip, [r1, #5] ldrb r3, [r1, #6] ldrb r2, [r1, #7] ldrb r1, [r0] strb r7, [sp, #4] strb r2, [sp, #3] strb r6, [sp, #5] strb r5, [sp, #6] strb r4, [sp, #7] strb lr, [sp] strb ip, [sp, #1] strb r3, [sp, #2] cmp r1, #3 add r2, sp, #4 addhi sp, sp, #8 ldmhiia sp!, {r3, r4, r5, r6, r7, pc} ldrb r1, [r2, r1] ldr r0, [r0, #4] ldr r0, [r0] mov r2, r1 bl ov02_023468A0 ldr r0, _02344AEC ; =ov02_0235AB0C ldrb r0, [r0] cmp r0, #3 addeq sp, sp, #8 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} bl ov02_02347924 ldr r1, _02344AEC ; =ov02_0235AB0C cmp r0, #2 ldrb ip, [r1] ldr r1, [r1, #4] movgt r0, #3 add r2, sp, #0 ldrb r3, [r2, r0] add r0, r1, ip, lsl #2 ldr r0, [r0, #4] mvn r1, #0 mov r2, #0 bl ov02_0234D3C0 add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _02344AE8: .word ov02_02352BE0 _02344AEC: .word ov02_0235AB0C arm_func_end ov02_02344A20 arm_func_start ov02_02344AF0 ov02_02344AF0: ; 0x02344AF0 stmdb sp!, {r4, r5, r6, lr} bl ov02_02347518 ldr r1, _02344BF8 ; =ov02_0235AB14 mov r2, #0 strb r2, [r1, #2] ldrsb r2, [r1] mov r4, r0 cmp r2, #0 moveq r0, #1 streqb r0, [r1] bl ov02_02338DF0 cmp r0, #0 beq _02344B4C ldr r0, _02344BF8 ; =ov02_0235AB14 ldrsb r1, [r0, #1] cmp r1, #2 moveq r1, #0 streqb r1, [r0, #1] ldr r0, _02344BF8 ; =ov02_0235AB14 ldrsb r1, [r0] cmp r1, #2 moveq r1, #1 streqb r1, [r0] _02344B4C: bl ov02_02344C14 bl ov02_023352C4 bl ov02_02338DF0 mov r5, r0 ldrb r1, [r4, #0xf4] mov r0, #0x32 ldr r3, _02344BFC ; =ov02_02352CCC add r2, r1, #1 ldrsb r1, [r3, r5] bl ov02_02334C3C mov r0, #1 bl ov02_02334DE8 mov r0, #1 bl ov02_02338E18 mov r6, r0 mov r0, #1 bl ov02_02338E18 mov r5, r0 mov r0, #1 bl ov02_02338E18 mov r4, r0 mov r0, #1 bl ov02_02338E18 mov r3, r0 ldr r1, _02344C00 ; =ov02_02352D14 ldr r0, _02344BF8 ; =ov02_0235AB14 add ip, r1, r6, lsl #5 ldrsb lr, [r0, #1] ldr r1, _02344C04 ; =ov02_02352D18 ldr r0, _02344C08 ; =ov02_02352D16 add r1, r1, r5, lsl #5 add r2, r0, r4, lsl #5 mov r5, lr, lsl #3 ldrh r0, [r5, ip] ldrh r1, [r5, r1] ldrh r2, [r5, r2] ldr r4, _02344C0C ; =ov02_02352D1A add r3, r4, r3, lsl #5 ldrh r3, [r5, r3] bl ov02_023350AC ldr r0, _02344C10 ; =ov02_02344D00 bl ov02_02338D68 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _02344BF8: .word ov02_0235AB14 _02344BFC: .word ov02_02352CCC _02344C00: .word ov02_02352D14 _02344C04: .word ov02_02352D18 _02344C08: .word ov02_02352D16 _02344C0C: .word ov02_02352D1A _02344C10: .word ov02_02344D00 arm_func_end ov02_02344AF0 arm_func_start ov02_02344C14 ov02_02344C14: ; 0x02344C14 stmdb sp!, {r3, lr} sub sp, sp, #0x18 ldr ip, _02344CD8 ; =ov02_02352C94 add r3, sp, #0 mov r2, #0xb _02344C28: ldrb r1, [ip] ldrb r0, [ip, #1] add ip, ip, #2 strb r1, [r3] strb r0, [r3, #1] add r3, r3, #2 subs r2, r2, #1 bne _02344C28 ldr r0, _02344CDC ; =ov02_02353BF8 ldr r1, _02344CE0 ; =GX_LoadBG2Char bl ov02_02334DA8 ldr r0, _02344CE4 ; =ov02_02353C10 ldr r1, _02344CE8 ; =GX_LoadBGPltt bl ov02_02334DA8 ldr r0, _02344CEC ; =ov02_02353C28 ldr r1, _02344CF0 ; =GX_LoadBG2Scr bl ov02_02334DA8 add r0, sp, #0 bl ov02_02334D48 mov r1, #0 mov r2, #4 bl ov02_0234CE84 ldr r1, _02344CF4 ; =ov02_0235AB14 ldr r2, _02344CF8 ; =0x04001008 str r0, [r1, #4] ldrh r0, [r2] ldr r1, _02344CFC ; =0x0400000A bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r2, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2, #2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] add sp, sp, #0x18 ldmia sp!, {r3, pc} .align 2, 0 _02344CD8: .word ov02_02352C94 _02344CDC: .word ov02_02353BF8 _02344CE0: .word GX_LoadBG2Char _02344CE4: .word ov02_02353C10 _02344CE8: .word GX_LoadBGPltt _02344CEC: .word ov02_02353C28 _02344CF0: .word GX_LoadBG2Scr _02344CF4: .word ov02_0235AB14 _02344CF8: .word 0x04001008 _02344CFC: .word 0x0400000A arm_func_end ov02_02344C14 arm_func_start ov02_02344D00 ov02_02344D00: ; 0x02344D00 stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #2 mov r1, #0 mov r2, #0x14 mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 mov r0, #0 mov r1, #0x14 bl ov02_0234E3D0 ldr r0, _02344D50 ; =ov02_02344D54 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02344D50: .word ov02_02344D54 arm_func_end ov02_02344D00 arm_func_start ov02_02344D54 ov02_02344D54: ; 0x02344D54 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_02334E38 ldr r0, _02344D8C ; =ov02_02344D90 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02344D8C: .word ov02_02344D90 arm_func_end ov02_02344D54 arm_func_start ov02_02344D90 ov02_02344D90: ; 0x02344D90 stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _02344DB4 ; =ov02_02344DB8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02344DB4: .word ov02_02344DB8 arm_func_end ov02_02344D90 arm_func_start ov02_02344DB8 ov02_02344DB8: ; 0x02344DB8 stmdb sp!, {r3, lr} bl ov02_02344DCC bl ov02_02344F50 bl ov02_02344F54 ldmia sp!, {r3, pc} arm_func_end ov02_02344DB8 arm_func_start ov02_02344DCC ov02_02344DCC: ; 0x02344DCC stmdb sp!, {r3, r4, r5, r6, r7, lr} mov r6, #0 ldr r4, _02344F38 ; =ov02_02352CD4 mov r7, r6 mov r5, #1 _02344DE0: mov r0, r5 bl ov02_02338E18 add r0, r4, r0, lsl #5 add r0, r0, r7 bl ov02_0234ED04 cmp r0, #0 beq _02344E80 mov r0, #1 bl ov02_023346F0 ldr r1, _02344F3C ; =ov02_0235AB14 mov r0, #1 strb r6, [r1, #1] bl ov02_02338E18 mov r6, r0 mov r0, #1 bl ov02_02338E18 mov r5, r0 mov r0, #1 bl ov02_02338E18 mov r4, r0 mov r0, #1 bl ov02_02338E18 mov r3, r0 ldr r0, _02344F3C ; =ov02_0235AB14 ldr r1, _02344F40 ; =ov02_02352D14 ldrsb lr, [r0, #1] ldr r0, _02344F44 ; =ov02_02352D16 add ip, r1, r6, lsl #5 ldr r1, _02344F48 ; =ov02_02352D18 add r2, r0, r4, lsl #5 ldr r4, _02344F4C ; =ov02_02352D1A add r1, r1, r5, lsl #5 mov r5, lr, lsl #3 add r3, r4, r3, lsl #5 ldrh r0, [r5, ip] ldrh r1, [r5, r1] ldrh r2, [r5, r2] ldrh r3, [r5, r3] bl ov02_023350AC ldmia sp!, {r3, r4, r5, r6, r7, pc} _02344E80: add r6, r6, #1 cmp r6, #4 add r7, r7, #8 blo _02344DE0 mov r0, #1 bl ov02_0234EBBC cmp r0, #0 beq _02344EAC mov r0, #1 bl ov02_023346F0 ldmia sp!, {r3, r4, r5, r6, r7, pc} _02344EAC: mov r0, #2 bl ov02_0234EBBC cmp r0, #0 beq _02344EC8 mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, r4, r5, r6, r7, pc} _02344EC8: mov r0, #0x40 bl ov02_0234EBFC cmp r0, #0 beq _02344EE4 mov r0, #1 bl ov02_0234515C ldmia sp!, {r3, r4, r5, r6, r7, pc} _02344EE4: mov r0, #0x80 bl ov02_0234EBFC cmp r0, #0 beq _02344F00 mov r0, #3 bl ov02_0234515C ldmia sp!, {r3, r4, r5, r6, r7, pc} _02344F00: mov r0, #0x20 bl ov02_0234EBFC cmp r0, #0 beq _02344F1C mov r0, #0 bl ov02_0234515C ldmia sp!, {r3, r4, r5, r6, r7, pc} _02344F1C: mov r0, #0x10 bl ov02_0234EBFC cmp r0, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} mov r0, #2 bl ov02_0234515C ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _02344F38: .word ov02_02352CD4 _02344F3C: .word ov02_0235AB14 _02344F40: .word ov02_02352D14 _02344F44: .word ov02_02352D16 _02344F48: .word ov02_02352D18 _02344F4C: .word ov02_02352D1A arm_func_end ov02_02344DCC arm_func_start ov02_02344F50 ov02_02344F50: ; 0x02344F50 bx lr arm_func_end ov02_02344F50 arm_func_start ov02_02344F54 ov02_02344F54: ; 0x02344F54 stmdb sp!, {r3, lr} bl ov02_023346DC cmp r0, #0 beq _02344F70 cmp r0, #1 beq _02344F7C ldmia sp!, {r3, pc} _02344F70: mov r0, #7 bl ov02_023480E0 b _02344F94 _02344F7C: mov r0, #6 bl ov02_023480E0 bl ov02_02345250 ldr r0, _02344FA0 ; =ov02_0235AB14 mov r1, #1 strb r1, [r0, #2] _02344F94: ldr r0, _02344FA4 ; =ov02_02344FA8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02344FA0: .word ov02_0235AB14 _02344FA4: .word ov02_02344FA8 arm_func_end ov02_02344F54 arm_func_start ov02_02344FA8 ov02_02344FA8: ; 0x02344FA8 stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _02344FC4 ; =ov02_02344FC8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02344FC4: .word ov02_02344FC8 arm_func_end ov02_02344FA8 arm_func_start ov02_02344FC8 ov02_02344FC8: ; 0x02344FC8 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02345024 ; =ov02_0235AB14 ldrb r0, [r0, #2] cmp r0, #0 beq _02344FF0 bl ov02_023346AC _02344FF0: mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x14 mov r3, #8 bl ov02_0234D8E0 ldr r0, _02345028 ; =ov02_0234502C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345024: .word ov02_0235AB14 _02345028: .word ov02_0234502C arm_func_end ov02_02344FC8 arm_func_start ov02_0234502C ov02_0234502C: ; 0x0234502C stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, pc} bl ov02_0233519C bl ov02_02334D10 ldr r0, _02345144 ; =ov02_0235AB14 ldr r0, [r0, #4] bl ov02_0234CF78 mov r0, #1 mov r1, r0 bl ov02_0234E424 mov r0, #0 mov r1, #0x14 bl ov02_0234E424 ldr r0, _02345144 ; =ov02_0235AB14 ldrb r1, [r0, #2] cmp r1, #0 bne _023450B0 mov r0, #2 mov r1, #0 bl ov02_02338D78 ldr r0, _02345148 ; =ov02_02343DB0 bl ov02_02338D68 ldmia sp!, {r3, pc} _023450B0: ldrsb r0, [r0, #1] cmp r0, #3 addls pc, pc, r0, lsl #2 ldmia sp!, {r3, pc} _023450C0: ; jump table b _023450D0 ; case 0 b _023450E8 ; case 1 b _02345100 ; case 2 b _02345118 ; case 3 _023450D0: mov r0, #2 mov r1, #1 bl ov02_02338D78 ldr r0, _0234514C ; =ov02_023438CC bl ov02_02338D68 ldmia sp!, {r3, pc} _023450E8: mov r0, #2 mov r1, #1 bl ov02_02338D78 ldr r0, _02345150 ; =ov02_0233C75C bl ov02_02338D68 ldmia sp!, {r3, pc} _02345100: mov r0, #2 mov r1, #1 bl ov02_02338D78 ldr r0, _02345154 ; =ov02_02343458 bl ov02_02338D68 ldmia sp!, {r3, pc} _02345118: mov r0, #2 mov r1, #0 bl ov02_02338D78 mov r0, #0 mov r1, r0 bl ov02_02338DB4 mov r0, #1 bl ov02_02342798 ldr r0, _02345158 ; =ov02_023402CC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345144: .word ov02_0235AB14 _02345148: .word ov02_02343DB0 _0234514C: .word ov02_023438CC _02345150: .word ov02_0233C75C _02345154: .word ov02_02343458 _02345158: .word ov02_023402CC arm_func_end ov02_0234502C arm_func_start ov02_0234515C ov02_0234515C: ; 0x0234515C stmdb sp!, {r4, r5, r6, lr} ldr r1, _02345238 ; =ov02_0235AB14 mov r5, r0 mov r0, #1 ldrsb r4, [r1, #1] bl ov02_02338E18 ldr r2, _0234523C ; =ov02_02352CAA mvn r1, #0 add r0, r2, r0, lsl #4 add r0, r0, r4, lsl #2 ldrsb r2, [r5, r0] cmp r2, r1 ldmeqia sp!, {r4, r5, r6, pc} cmp r2, #0 ldreq r0, _02345238 ; =ov02_0235AB14 streqb r4, [r0] mvn r0, #1 cmp r2, r0 ldrne r0, _02345238 ; =ov02_0235AB14 strneb r2, [r0, #1] bne _023451BC ldr r0, _02345238 ; =ov02_0235AB14 ldrsb r1, [r0] strb r1, [r0, #1] _023451BC: mov r0, #8 bl ov02_023480E0 mov r0, #1 bl ov02_02338E18 mov r6, r0 mov r0, #1 bl ov02_02338E18 mov r5, r0 mov r0, #1 bl ov02_02338E18 mov r4, r0 mov r0, #1 bl ov02_02338E18 mov r3, r0 ldr r1, _02345240 ; =ov02_02352D14 ldr r0, _02345238 ; =ov02_0235AB14 add ip, r1, r6, lsl #5 ldrsb lr, [r0, #1] ldr r1, _02345244 ; =ov02_02352D18 ldr r0, _02345248 ; =ov02_02352D16 add r1, r1, r5, lsl #5 add r2, r0, r4, lsl #5 mov r5, lr, lsl #3 ldrh r0, [r5, ip] ldrh r1, [r5, r1] ldrh r2, [r5, r2] ldr r4, _0234524C ; =ov02_02352D1A add r3, r4, r3, lsl #5 ldrh r3, [r5, r3] bl ov02_023350AC ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _02345238: .word ov02_0235AB14 _0234523C: .word ov02_02352CAA _02345240: .word ov02_02352D14 _02345244: .word ov02_02352D18 _02345248: .word ov02_02352D16 _0234524C: .word ov02_02352D1A arm_func_end ov02_0234515C arm_func_start ov02_02345250 ov02_02345250: ; 0x02345250 stmdb sp!, {r3, r4, lr} sub sp, sp, #4 ldr r1, _023452A0 ; =ov02_02352C90 ldr r0, _023452A4 ; =ov02_0235AB14 ldrb lr, [r1] ldrb ip, [r1, #1] ldrb r3, [r1, #2] ldrb r2, [r1, #3] ldrsb r1, [r0, #1] add r4, sp, #0 strb lr, [sp] strb ip, [sp, #1] strb r3, [sp, #2] strb r2, [sp, #3] ldrb r1, [r4, r1] ldr r0, [r0, #4] mov r2, r1 bl ov02_023468A0 add sp, sp, #4 ldmia sp!, {r3, r4, pc} .align 2, 0 _023452A0: .word ov02_02352C90 _023452A4: .word ov02_0235AB14 arm_func_end ov02_02345250 arm_func_start ov02_023452A8 ov02_023452A8: ; 0x023452A8 stmdb sp!, {r3, lr} ldr r0, _0234532C ; =ov02_0235AB1C mov r1, #0 strb r1, [r0] bl ov02_02345334 add r1, sp, #0 mov r0, #0 bl ov02_02338DC8 ldr r0, [sp] cmp r0, #0 bne _023452E4 mov r0, #0x31 sub r1, r0, #0x32 mov r2, #0 bl ov02_02334C3C _023452E4: mov r0, #2 bl ov02_02334DE8 ldr r0, [sp] cmp r0, #0 bne _023452FC bl ov02_023352C4 _023452FC: mov r0, #0x2c bl ov02_02334E70 mov r0, #0 bl ov02_023343DC bl ov02_023453DC mov r0, #0 bl ov02_02335334 mov r0, #0xc bl ov02_023480E0 ldr r0, _02345330 ; =ov02_0234547C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0234532C: .word ov02_0235AB1C _02345330: .word ov02_0234547C arm_func_end ov02_023452A8 arm_func_start ov02_02345334 ov02_02345334: ; 0x02345334 stmdb sp!, {r3, lr} ldr r0, _023453BC ; =ov02_02353C3C ldr r1, _023453C0 ; =GX_LoadBG2Char bl ov02_02334DA8 ldr r0, _023453C4 ; =ov02_02353C54 ldr r1, _023453C8 ; =GX_LoadBGPltt bl ov02_02334DA8 ldr r0, _023453CC ; =ov02_02353C6C ldr r1, _023453D0 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _023453D4 ; =0x04001008 ldr r1, _023453D8 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _023453BC: .word ov02_02353C3C _023453C0: .word GX_LoadBG2Char _023453C4: .word ov02_02353C54 _023453C8: .word GX_LoadBGPltt _023453CC: .word ov02_02353C6C _023453D0: .word GX_LoadBG2Scr _023453D4: .word 0x04001008 _023453D8: .word 0x0400000A arm_func_end ov02_02345334 arm_func_start ov02_023453DC ov02_023453DC: ; 0x023453DC stmdb sp!, {r4, lr} sub sp, sp, #0x10 bl ov02_02347518 mov r4, r0 ldr r0, _02345470 ; =ov02_02352D54 add r1, sp, #4 mov r2, #0xc bl ArrayCopy32 add r1, sp, #0 mov r0, #0 bl ov02_02338DC8 ldr r0, [sp] cmp r0, #2 moveq r0, #4 streqb r0, [sp, #0xe] ldrneb r0, [r4, #0xf4] addne r0, r0, #1 strneb r0, [sp, #0xe] add r0, sp, #4 bl ov00_022D75EC ldr r1, _02345474 ; =ov02_0235AB1C cmp r0, #0 str r0, [r1, #4] beq _02345454 ldr r0, [sp] cmp r0, #0 bne _02345454 ldrb r0, [r4, #0xf4] mov r1, r4 bl ov00_022D7AB0 _02345454: mov r0, #0 ldr r1, _02345478 ; =ov02_0234562C mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 add sp, sp, #0x10 ldmia sp!, {r4, pc} .align 2, 0 _02345470: .word ov02_02352D54 _02345474: .word ov02_0235AB1C _02345478: .word ov02_0234562C arm_func_end ov02_023453DC arm_func_start ov02_0234547C ov02_0234547C: ; 0x0234547C stmdb sp!, {r3, lr} mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 add r1, sp, #0 mov r0, #0 bl ov02_02338DC8 ldr r0, [sp] cmp r0, #0 bne _023454D8 mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 _023454D8: ldr r0, _023454E4 ; =ov02_023454E8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023454E4: .word ov02_023454E8 arm_func_end ov02_0234547C arm_func_start ov02_023454E8 ov02_023454E8: ; 0x023454E8 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02345518 ; =ov02_0234551C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345518: .word ov02_0234551C arm_func_end ov02_023454E8 arm_func_start ov02_0234551C ov02_0234551C: ; 0x0234551C stmdb sp!, {r3, lr} bl ov02_02345530 bl ov02_02345534 bl ov02_02345538 ldmia sp!, {r3, pc} arm_func_end ov02_0234551C arm_func_start ov02_02345530 ov02_02345530: ; 0x02345530 bx lr arm_func_end ov02_02345530 arm_func_start ov02_02345534 ov02_02345534: ; 0x02345534 bx lr arm_func_end ov02_02345534 arm_func_start ov02_02345538 ov02_02345538: ; 0x02345538 bx lr arm_func_end ov02_02345538 arm_func_start ov02_0234553C ov02_0234553C: ; 0x0234553C stmdb sp!, {r3, lr} mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _02345560 ; =ov02_02345564 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345560: .word ov02_02345564 arm_func_end ov02_0234553C arm_func_start ov02_02345564 ov02_02345564: ; 0x02345564 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02345584 ; =ov02_02345588 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345584: .word ov02_02345588 arm_func_end ov02_02345564 arm_func_start ov02_02345588 ov02_02345588: ; 0x02345588 stmdb sp!, {r4, lr} bl ov02_02347D1C ldr r1, _02345620 ; =ov02_0235AB1C mov r4, r0 ldr r0, [r1, #4] cmp r0, #0 beq _023455B0 bl ov00_022D7958 cmp r0, #0 ldmeqia sp!, {r4, pc} _023455B0: bl ov00_022EE00C add r1, r4, #0xf0 mov r2, #0xe bl MemcpyFast bl ov00_022EE00C add r1, r4, #0x1f0 mov r2, #0xe bl MemcpyFast bl ov02_023344AC mov r0, #0 bl ov02_0234E02C mov r0, #0 mov r1, #0x15 bl ov02_0234E424 ldr r0, _02345620 ; =ov02_0235AB1C mov r1, #1 ldrb r0, [r0] cmp r0, #0 mov r0, #0 bne _02345610 bl ov02_02338D78 ldr r0, _02345624 ; =ov02_0233FC90 bl ov02_02338D68 ldmia sp!, {r4, pc} _02345610: bl ov02_02338D78 ldr r0, _02345628 ; =ov02_023456F4 bl ov02_02338D68 ldmia sp!, {r4, pc} .align 2, 0 _02345620: .word ov02_0235AB1C _02345624: .word ov02_0233FC90 _02345628: .word ov02_023456F4 arm_func_end ov02_02345588 arm_func_start ov02_0234562C ov02_0234562C: ; 0x0234562C stmdb sp!, {r3, r4, r5, lr} ldr r1, _023456C4 ; =ov02_0235AB1C mov r4, r0 ldr r0, [r1, #4] cmp r0, #0 beq _02345650 bl InitWfc movs r5, r0 ldmeqia sp!, {r3, r4, r5, pc} _02345650: bl ov02_023353EC bl ov02_02348148 ldr r1, _023456C4 ; =ov02_0235AB1C ldr r0, [r1, #4] cmp r0, #0 beq _02345684 cmp r5, #0 ble _02345684 mov r2, #1 mov r0, #0x11 strb r2, [r1] bl ov02_023480E0 b _023456AC _02345684: cmp r0, #0 ldreq r0, _023456C8 ; =0xFFFF3BE9 beq _02345694 bl ov00_022D7864 _02345694: mvn r1, #9 cmp r0, r1 ldrge r0, _023456C8 ; =0xFFFF3BE9 bl ov02_023402BC mov r0, #0x12 bl ov02_023480E0 _023456AC: ldr r0, _023456CC ; =ov02_0234553C bl ov02_02338D68 mov r1, r4 mov r0, #0 bl ov02_0234FB40 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _023456C4: .word ov02_0235AB1C _023456C8: .word 0xFFFF3BE9 _023456CC: .word ov02_0234553C arm_func_end ov02_0234562C arm_func_start ov02_023456D0 ov02_023456D0: ; 0x023456D0 ldr ip, _023456E0 ; =ov02_0234E7B4 mov r0, r1 mov r1, #0x20 bx ip .align 2, 0 _023456E0: .word ov02_0234E7B4 arm_func_end ov02_023456D0 arm_func_start ov02_023456E4 ov02_023456E4: ; 0x023456E4 ldr ip, _023456F0 ; =ov02_0234E81C mov r0, r1 bx ip .align 2, 0 _023456F0: .word ov02_0234E81C arm_func_end ov02_023456E4 arm_func_start ov02_023456F4 ov02_023456F4: ; 0x023456F4 stmdb sp!, {r3, lr} ldr r0, _0234571C ; =ov02_0235AB24 mov r1, #0 strb r1, [r0] bl ov02_02345724 mov r0, #0x2d bl ov02_02334E70 ldr r0, _02345720 ; =ov02_02345790 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0234571C: .word ov02_0235AB24 _02345720: .word ov02_02345790 arm_func_end ov02_023456F4 arm_func_start ov02_02345724 ov02_02345724: ; 0x02345724 stmdb sp!, {r3, lr} ldr r0, _02345780 ; =ov02_02353C80 ldr r1, _02345784 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r2, _02345788 ; =0x04001008 ldr r1, _0234578C ; =0x0400000A ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r2, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2, #2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _02345780: .word ov02_02353C80 _02345784: .word GX_LoadBG2Scr _02345788: .word 0x04001008 _0234578C: .word 0x0400000A arm_func_end ov02_02345724 arm_func_start ov02_02345790 ov02_02345790: ; 0x02345790 stmdb sp!, {r3, lr} mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _023457C0 ; =ov02_023457C4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023457C0: .word ov02_023457C4 arm_func_end ov02_02345790 arm_func_start ov02_023457C4 ov02_023457C4: ; 0x023457C4 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _023457E4 ; =ov02_023457E8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023457E4: .word ov02_023457E8 arm_func_end ov02_023457C4 arm_func_start ov02_023457E8 ov02_023457E8: ; 0x023457E8 stmdb sp!, {r3, lr} bl ov02_023458F8 bl ov02_023457F8 ldmia sp!, {r3, pc} arm_func_end ov02_023457E8 arm_func_start ov02_023457F8 ov02_023457F8: ; 0x023457F8 bx lr arm_func_end ov02_023457F8 arm_func_start ov02_023457FC ov02_023457FC: ; 0x023457FC stmdb sp!, {r3, lr} add r1, sp, #0 mov r0, #0 bl ov02_02338DC8 ldr r0, [sp] cmp r0, #0 beq _0234581C bl ov02_023486C8 _0234581C: mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _02345850 ; =ov02_02345854 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345850: .word ov02_02345854 arm_func_end ov02_023457FC arm_func_start ov02_02345854 ov02_02345854: ; 0x02345854 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02348BF0 cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_0234E02C bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 mov r0, #0 mov r1, #0x15 bl ov02_0234E424 mov r0, #2 mov r1, #1 bl ov02_02338D78 add r1, sp, #0 mov r0, #0 bl ov02_02338DC8 ldr r0, [sp] cmp r0, #0 bne _023458E4 mov r0, #0 mov r1, r0 bl ov02_02338DB4 ldr r0, _023458F0 ; =ov02_023402CC bl ov02_02338D68 ldmia sp!, {r3, pc} _023458E4: ldr r0, _023458F4 ; =ov02_023398CC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023458F0: .word ov02_023402CC _023458F4: .word ov02_023398CC arm_func_end ov02_02345854 arm_func_start ov02_023458F8 ov02_023458F8: ; 0x023458F8 stmdb sp!, {r3, lr} ldr r0, _0234595C ; =ov02_0235AB24 ldrb r1, [r0] add r2, r1, #1 and r1, r2, #0xff strb r2, [r0] cmp r1, #0xb4 ldmloia sp!, {r3, pc} add r1, sp, #0 mov r0, #0 bl ov02_02338DC8 bl ov02_02338E00 cmp r0, #0 beq _02345950 cmp r0, #1 bne _02345950 ldr r0, [sp] cmp r0, #0 beq _02345950 ldr r0, _02345960 ; =ov02_0233958C bl ov02_02338D68 ldmia sp!, {r3, pc} _02345950: ldr r0, _02345964 ; =ov02_023457FC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0234595C: .word ov02_0235AB24 _02345960: .word ov02_0233958C _02345964: .word ov02_023457FC arm_func_end ov02_023458F8 arm_func_start ov02_02345968 ov02_02345968: ; 0x02345968 stmdb sp!, {r3, lr} bl ov02_0234705C add r1, sp, #0 mov r0, #0 bl ov02_02338DC8 bl ov02_023459C0 mov r0, #0x31 sub r1, r0, #0x32 mov r2, #0 bl ov02_02334C3C ldr r0, [sp] cmp r0, #2 beq _023459A0 bl ov02_023352C4 _023459A0: ldr r0, [sp] cmp r0, #1 bne _023459B0 bl ov02_02347A1C _023459B0: ldr r0, _023459BC ; =ov02_02345A2C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023459BC: .word ov02_02345A2C arm_func_end ov02_02345968 arm_func_start ov02_023459C0 ov02_023459C0: ; 0x023459C0 stmdb sp!, {r3, lr} ldr r0, _02345A1C ; =ov02_02353C94 ldr r1, _02345A20 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r2, _02345A24 ; =0x04001008 ldr r1, _02345A28 ; =0x0400000A ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r2, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2, #2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _02345A1C: .word ov02_02353C94 _02345A20: .word GX_LoadBG2Scr _02345A24: .word 0x04001008 _02345A28: .word 0x0400000A arm_func_end ov02_023459C0 arm_func_start ov02_02345A2C ov02_02345A2C: ; 0x02345A2C stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #2 mov r1, #0 mov r2, #0x14 mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 mov r0, #0 mov r1, #0x14 bl ov02_0234E3D0 ldr r0, _02345A7C ; =ov02_02345A80 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345A7C: .word ov02_02345A80 arm_func_end ov02_02345A2C arm_func_start ov02_02345A80 ov02_02345A80: ; 0x02345A80 stmdb sp!, {lr} sub sp, sp, #0x14 ldr r0, _02345B00 ; =ov02_02352D60 add r3, sp, #8 ldmia r0, {r0, r1, r2} stmia r3, {r0, r1, r2} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 addne sp, sp, #0x14 ldmneia sp!, {pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 addne sp, sp, #0x14 ldmneia sp!, {pc} add r1, sp, #4 mov r0, #0 bl ov02_02338DC8 mov r0, #0 str r0, [sp] mov r1, #1 ldr r3, [sp, #4] add r0, sp, #8 ldr r0, [r0, r3, lsl #2] mov r2, r1 sub r3, r1, #2 bl ov02_02349394 ldr r0, _02345B04 ; =ov02_02345B08 bl ov02_02338D68 add sp, sp, #0x14 ldmia sp!, {pc} .align 2, 0 _02345B00: .word ov02_02352D60 _02345B04: .word ov02_02345B08 arm_func_end ov02_02345A80 arm_func_start ov02_02345B08 ov02_02345B08: ; 0x02345B08 stmdb sp!, {r3, lr} bl ov02_02345B44 bl ov02_02345B48 bl ov02_02349704 cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #6 bl ov02_023480E0 bl ov02_023496C0 mov r0, #6 bl ov02_023480E0 ldr r0, _02345B40 ; =ov02_02345B4C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345B40: .word ov02_02345B4C arm_func_end ov02_02345B08 arm_func_start ov02_02345B44 ov02_02345B44: ; 0x02345B44 bx lr arm_func_end ov02_02345B44 arm_func_start ov02_02345B48 ov02_02345B48: ; 0x02345B48 bx lr arm_func_end ov02_02345B48 arm_func_start ov02_02345B4C ov02_02345B4C: ; 0x02345B4C stmdb sp!, {r3, lr} bl ov02_02349718 cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #3 mov r1, #0 mov r2, #0x14 mov r3, #8 bl ov02_0234D8E0 ldr r0, _02345B7C ; =ov02_02345B80 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345B7C: .word ov02_02345B80 arm_func_end ov02_02345B4C arm_func_start ov02_02345B80 ov02_02345B80: ; 0x02345B80 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 mov r1, #0x14 bl ov02_0234E424 mov r0, #0 mov r1, #1 bl ov02_02338D78 ldr r0, _02345BB8 ; =ov02_023452A8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345BB8: .word ov02_023452A8 arm_func_end ov02_02345B80 arm_func_start ov02_02345BBC ov02_02345BBC: ; 0x02345BBC stmdb sp!, {r3, lr} ldr r0, _02345BF4 ; =ov02_0235AB28 mov r1, #0 strb r1, [r0] bl ov02_02345BFC mov r0, #8 bl ov02_02335268 mov r0, #0x29 bl ov02_02334E70 mov r0, #0x10 bl ov02_023480E0 ldr r0, _02345BF8 ; =ov02_02345C7C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345BF4: .word ov02_0235AB28 _02345BF8: .word ov02_02345C7C arm_func_end ov02_02345BBC arm_func_start ov02_02345BFC ov02_02345BFC: ; 0x02345BFC stmdb sp!, {r3, lr} ldr r0, _02345C6C ; =ov02_02353CA8 ldr r1, _02345C70 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _02345C74 ; =0x04001008 ldr r1, _02345C78 ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _02345C6C: .word ov02_02353CA8 _02345C70: .word GX_LoadBG2Scr _02345C74: .word 0x04001008 _02345C78: .word 0x0400000A arm_func_end ov02_02345BFC arm_func_start ov02_02345C7C ov02_02345C7C: ; 0x02345C7C stmdb sp!, {r3, lr} mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _02345CAC ; =ov02_02345CB0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345CAC: .word ov02_02345CB0 arm_func_end ov02_02345C7C arm_func_start ov02_02345CB0 ov02_02345CB0: ; 0x02345CB0 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02345CD0 ; =ov02_02345CD4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345CD0: .word ov02_02345CD4 arm_func_end ov02_02345CB0 arm_func_start ov02_02345CD4 ov02_02345CD4: ; 0x02345CD4 stmdb sp!, {r3, lr} bl ov02_02345D94 bl ov02_02345CE4 ldmia sp!, {r3, pc} arm_func_end ov02_02345CD4 arm_func_start ov02_02345CE4 ov02_02345CE4: ; 0x02345CE4 bx lr arm_func_end ov02_02345CE4 arm_func_start ov02_02345CE8 ov02_02345CE8: ; 0x02345CE8 stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _02345D20 ; =ov02_02345D24 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345D20: .word ov02_02345D24 arm_func_end ov02_02345CE8 arm_func_start ov02_02345D24 ov02_02345D24: ; 0x02345D24 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234E02C bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 mov r0, #0 mov r1, #0x15 bl ov02_0234E424 mov r0, #0 mov r1, r0 bl ov02_02338D78 mov r0, #0 mov r1, #2 bl ov02_02338DB4 ldr r0, _02345D90 ; =ov02_02345968 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345D90: .word ov02_02345968 arm_func_end ov02_02345D24 arm_func_start ov02_02345D94 ov02_02345D94: ; 0x02345D94 stmdb sp!, {r3, lr} ldr r0, _02345DC0 ; =ov02_0235AB28 ldrb r1, [r0] add r2, r1, #1 and r1, r2, #0xff strb r2, [r0] cmp r1, #0x78 ldmloia sp!, {r3, pc} ldr r0, _02345DC4 ; =ov02_02345CE8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345DC0: .word ov02_0235AB28 _02345DC4: .word ov02_02345CE8 arm_func_end ov02_02345D94 arm_func_start ov02_02345DC8 ov02_02345DC8: ; 0x02345DC8 stmdb sp!, {r3, lr} ldr r0, _02345E10 ; =ov02_0235AB2C mov r1, #0 strb r1, [r0] bl ov02_02345E18 mov r0, #8 bl ov02_02335268 mov r0, #0x38 sub r1, r0, #0x39 mov r2, #0 bl ov02_02334C3C mov r0, #1 bl ov02_02334DE8 mov r0, #0x27 bl ov02_02334E70 ldr r0, _02345E14 ; =ov02_02345EC0 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345E10: .word ov02_0235AB2C _02345E14: .word ov02_02345EC0 arm_func_end ov02_02345DC8 arm_func_start ov02_02345E18 ov02_02345E18: ; 0x02345E18 stmdb sp!, {r3, lr} ldr r0, _02345EA0 ; =ov02_02353CBC ldr r1, _02345EA4 ; =GX_LoadBG2Char bl ov02_02334DA8 ldr r0, _02345EA8 ; =ov02_02353CD4 ldr r1, _02345EAC ; =GX_LoadBGPltt bl ov02_02334DA8 ldr r0, _02345EB0 ; =ov02_02353CEC ldr r1, _02345EB4 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _02345EB8 ; =0x04001008 ldr r1, _02345EBC ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _02345EA0: .word ov02_02353CBC _02345EA4: .word GX_LoadBG2Char _02345EA8: .word ov02_02353CD4 _02345EAC: .word GX_LoadBGPltt _02345EB0: .word ov02_02353CEC _02345EB4: .word GX_LoadBG2Scr _02345EB8: .word 0x04001008 _02345EBC: .word 0x0400000A arm_func_end ov02_02345E18 arm_func_start ov02_02345EC0 ov02_02345EC0: ; 0x02345EC0 stmdb sp!, {r3, lr} mov r1, #1 mov r2, r1 mov r0, #2 mov r3, #8 bl ov02_0234D8E0 mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #1 mov r1, r0 bl ov02_0234E3D0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _02345F10 ; =ov02_02345F14 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345F10: .word ov02_02345F14 arm_func_end ov02_02345EC0 arm_func_start ov02_02345F14 ov02_02345F14: ; 0x02345F14 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #6 bl ov02_02334E38 ldr r0, _02345F4C ; =ov02_02345F50 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345F4C: .word ov02_02345F50 arm_func_end ov02_02345F14 arm_func_start ov02_02345F50 ov02_02345F50: ; 0x02345F50 stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _02345F74 ; =ov02_02345F78 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02345F74: .word ov02_02345F78 arm_func_end ov02_02345F50 arm_func_start ov02_02345F78 ov02_02345F78: ; 0x02345F78 stmdb sp!, {r3, lr} bl ov02_02345F8C bl ov02_02345FC4 bl ov02_02345FC8 ldmia sp!, {r3, pc} arm_func_end ov02_02345F78 arm_func_start ov02_02345F8C ov02_02345F8C: ; 0x02345F8C stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234EBBC cmp r0, #0 beq _02345FA8 mov r0, #1 bl ov02_023346F0 _02345FA8: mov r0, #2 bl ov02_0234EBBC cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} arm_func_end ov02_02345F8C arm_func_start ov02_02345FC4 ov02_02345FC4: ; 0x02345FC4 bx lr arm_func_end ov02_02345FC4 arm_func_start ov02_02345FC8 ov02_02345FC8: ; 0x02345FC8 stmdb sp!, {r3, lr} bl ov02_023346DC cmp r0, #0 beq _02345FE4 cmp r0, #1 beq _02345FF0 ldmia sp!, {r3, pc} _02345FE4: mov r0, #7 bl ov02_023480E0 b _02346004 _02345FF0: mov r0, #6 bl ov02_023480E0 ldr r0, _02346010 ; =ov02_0235AB2C mov r1, #1 strb r1, [r0] _02346004: ldr r0, _02346014 ; =ov02_02346018 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02346010: .word ov02_0235AB2C _02346014: .word ov02_02346018 arm_func_end ov02_02345FC8 arm_func_start ov02_02346018 ov02_02346018: ; 0x02346018 stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _02346034 ; =ov02_02346038 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02346034: .word ov02_02346038 arm_func_end ov02_02346018 arm_func_start ov02_02346038 ov02_02346038: ; 0x02346038 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_023346AC ldr r0, _02346094 ; =ov02_0235AB2C ldrb r0, [r0] cmp r0, #0 bne _02346074 mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 _02346074: mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _02346098 ; =ov02_0234609C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02346094: .word ov02_0235AB2C _02346098: .word ov02_0234609C arm_func_end ov02_02346038 arm_func_start ov02_0234609C ov02_0234609C: ; 0x0234609C stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02346148 ; =ov02_0235AB2C ldrb r0, [r0] cmp r0, #0 bne _023460D0 mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} _023460D0: bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_0234E02C ldr r0, _02346148 ; =ov02_0235AB2C ldrb r0, [r0] cmp r0, #0 bne _02346104 bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 _02346104: mov r0, #0 mov r1, #0x15 bl ov02_0234E424 ldr r0, _02346148 ; =ov02_0235AB2C mov r1, #1 ldrb r0, [r0] cmp r0, #0 mov r0, #2 bne _02346138 bl ov02_02338D78 ldr r0, _0234614C ; =ov02_02343DB0 bl ov02_02338D68 ldmia sp!, {r3, pc} _02346138: bl ov02_02338D78 ldr r0, _02346150 ; =ov02_02346174 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02346148: .word ov02_0235AB2C _0234614C: .word ov02_02343DB0 _02346150: .word ov02_02346174 arm_func_end ov02_0234609C arm_func_start ov02_02346154 ov02_02346154: ; 0x02346154 ldr r0, _02346170 ; =0x027FFFA8 ldrh r0, [r0] and r0, r0, #0x8000 movs r0, r0, asr #0xf movne r0, #1 moveq r0, #0 bx lr .align 2, 0 _02346170: .word 0x027FFFA8 arm_func_end ov02_02346154 arm_func_start ov02_02346174 ov02_02346174: ; 0x02346174 stmdb sp!, {lr} sub sp, sp, #0x6c ldr r0, _023461FC ; =ov02_0235AB30 mov r1, #0 strb r1, [r0] bl ov02_02346208 mov r0, #8 bl ov02_02335268 mov r0, #2 bl ov02_02334DE8 add r0, sp, #0x16 bl GetDsFirmwareUserSettings add r1, sp, #0 mov r0, #0 mov r2, #0x16 bl ArrayFill16 ldrh r2, [sp, #0x30] add r0, sp, #0x1a add r1, sp, #0 mov r2, r2, lsl #1 bl ArrayCopy16 add r0, sp, #0 mov r1, #0x28 bl ov02_02334EE4 mov r0, #0 bl ov02_023343DC ldr r0, _02346200 ; =ov02_02346554 bl ov02_02348CB0 mov r0, #0xb bl ov02_023480E0 ldr r0, _02346204 ; =ov02_023462B0 bl ov02_02338D68 add sp, sp, #0x6c ldmia sp!, {pc} .align 2, 0 _023461FC: .word ov02_0235AB30 _02346200: .word ov02_02346554 _02346204: .word ov02_023462B0 arm_func_end ov02_02346174 arm_func_start ov02_02346208 ov02_02346208: ; 0x02346208 stmdb sp!, {r3, lr} ldr r0, _02346290 ; =ov02_02353D00 ldr r1, _02346294 ; =GX_LoadBG2Char bl ov02_02334DA8 ldr r0, _02346298 ; =ov02_02353D18 ldr r1, _0234629C ; =GX_LoadBGPltt bl ov02_02334DA8 ldr r0, _023462A0 ; =ov02_02353D30 ldr r1, _023462A4 ; =GX_LoadBG2Scr bl ov02_02334DA8 ldr r3, _023462A8 ; =0x04001008 ldr r1, _023462AC ; =0x0400000A ldrh r0, [r3] sub r2, r3, #0x1000 bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3] ldrh r0, [r3, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r3, #2] ldrh r0, [r2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r2] ldrh r0, [r1] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1] ldrh r0, [r1, #2] bic r0, r0, #3 orr r0, r0, #3 strh r0, [r1, #2] ldmia sp!, {r3, pc} .align 2, 0 _02346290: .word ov02_02353D00 _02346294: .word GX_LoadBG2Char _02346298: .word ov02_02353D18 _0234629C: .word GX_LoadBGPltt _023462A0: .word ov02_02353D30 _023462A4: .word GX_LoadBG2Scr _023462A8: .word 0x04001008 _023462AC: .word 0x0400000A arm_func_end ov02_02346208 arm_func_start ov02_023462B0 ov02_023462B0: ; 0x023462B0 stmdb sp!, {r3, lr} mov r0, #2 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 mov r0, #0 mov r1, #0x15 bl ov02_0234E3D0 ldr r0, _023462E0 ; =ov02_023462E4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023462E0: .word ov02_023462E4 arm_func_end ov02_023462B0 arm_func_start ov02_023462E4 ov02_023462E4: ; 0x023462E4 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #2 bl ov02_02334E38 ldr r0, _0234630C ; =ov02_02346310 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _0234630C: .word ov02_02346310 arm_func_end ov02_023462E4 arm_func_start ov02_02346310 ov02_02346310: ; 0x02346310 stmdb sp!, {r3, lr} bl ov02_023346DC mvn r1, #1 cmp r0, r1 ldmeqia sp!, {r3, pc} bl ov02_02334750 ldr r0, _02346334 ; =ov02_02346338 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02346334: .word ov02_02346338 arm_func_end ov02_02346310 arm_func_start ov02_02346338 ov02_02346338: ; 0x02346338 stmdb sp!, {r3, lr} bl ov02_0234634C bl ov02_02346384 bl ov02_02346388 ldmia sp!, {r3, pc} arm_func_end ov02_02346338 arm_func_start ov02_0234634C ov02_0234634C: ; 0x0234634C stmdb sp!, {r3, lr} mov r0, #2 bl ov02_0234EBBC cmp r0, #0 beq _0234636C mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} _0234636C: bl ov02_02346154 cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0 bl ov02_023346F0 ldmia sp!, {r3, pc} arm_func_end ov02_0234634C arm_func_start ov02_02346384 ov02_02346384: ; 0x02346384 bx lr arm_func_end ov02_02346384 arm_func_start ov02_02346388 ov02_02346388: ; 0x02346388 stmdb sp!, {r3, lr} ldr r0, _023463CC ; =ov02_0235AB30 ldrb r0, [r0] cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_023346DC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _023463CC ; =ov02_0235AB30 mov r1, #2 strb r1, [r0] bl ov02_02348148 mov r0, #7 bl ov02_023480E0 ldr r0, _023463D0 ; =ov02_023463D4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023463CC: .word ov02_0235AB30 _023463D0: .word ov02_023463D4 arm_func_end ov02_02346388 arm_func_start ov02_023463D4 ov02_023463D4: ; 0x023463D4 stmdb sp!, {r3, lr} bl ov02_02334768 mov r0, #8 bl ov02_0234DAE0 ldr r0, _023463F0 ; =ov02_023463F4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023463F0: .word ov02_023463F4 arm_func_end ov02_023463D4 arm_func_start ov02_023463F4 ov02_023463F4: ; 0x023463F4 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_023346AC ldr r0, _02346458 ; =ov02_0235AB30 ldrb r0, [r0] add r0, r0, #0xfe and r0, r0, #0xff cmp r0, #1 bhi _02346438 mov r1, #1 mov r2, r1 mov r0, #3 mov r3, #8 bl ov02_0234D8E0 _02346438: mov r0, #3 mov r1, #0 mov r2, #0x15 mov r3, #8 bl ov02_0234D8E0 ldr r0, _0234645C ; =ov02_02346460 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02346458: .word ov02_0235AB30 _0234645C: .word ov02_02346460 arm_func_end ov02_023463F4 arm_func_start ov02_02346460 ov02_02346460: ; 0x02346460 stmdb sp!, {r3, lr} mov r0, #0 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02346544 ; =ov02_0235AB30 ldrb r0, [r0] cmp r0, #2 bne _02346494 mov r0, #1 bl ov02_0234D8BC cmp r0, #0 ldmneia sp!, {r3, pc} _02346494: bl ov02_02334724 cmp r0, #0 ldmeqia sp!, {r3, pc} bl ov02_02348E68 bl ov02_023344AC mov r0, #0 bl ov02_0234E02C ldr r0, _02346544 ; =ov02_0235AB30 ldrb r0, [r0] add r0, r0, #0xfe and r0, r0, #0xff cmp r0, #1 bhi _023464D8 bl ov02_02334D10 mov r0, #1 mov r1, r0 bl ov02_0234E424 _023464D8: mov r0, #0 mov r1, #0x15 bl ov02_0234E424 ldr r0, _02346544 ; =ov02_0235AB30 ldrb r0, [r0] cmp r0, #2 bne _0234650C mov r0, #2 mov r1, #1 bl ov02_02338D78 ldr r0, _02346548 ; =ov02_02343DB0 bl ov02_02338D68 ldmia sp!, {r3, pc} _0234650C: cmp r0, #3 bne _0234652C mov r0, #2 mov r1, #1 bl ov02_02338D78 ldr r0, _0234654C ; =ov02_02345DC8 bl ov02_02338D68 ldmia sp!, {r3, pc} _0234652C: mov r0, #0 mov r1, r0 bl ov02_02338D78 ldr r0, _02346550 ; =ov02_02345BBC bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02346544: .word ov02_0235AB30 _02346548: .word ov02_02343DB0 _0234654C: .word ov02_02345DC8 _02346550: .word ov02_02345BBC arm_func_end ov02_02346460 arm_func_start ov02_02346554 ov02_02346554: ; 0x02346554 stmdb sp!, {r3, lr} ldr r1, _02346630 ; =ov02_0235AB30 ldrb r2, [r1] cmp r2, #0 ldmneia sp!, {r3, pc} cmp r0, #3 addls pc, pc, r0, lsl #2 ldmia sp!, {r3, pc} _02346574: ; jump table b _02346584 ; case 0 b _023465C4 ; case 1 b _023465DC ; case 2 b _02346610 ; case 3 _02346584: mov r0, #3 strb r0, [r1] bl ov02_02348148 mov r0, #0x12 bl ov02_023480E0 mov r1, #1 mov ip, #0 mov r2, r1 sub r3, r1, #2 mov r0, #0x10 str ip, [sp] bl ov02_02349394 bl ov02_02334768 ldr r0, _02346634 ; =ov02_02346640 bl ov02_02338D68 ldmia sp!, {r3, pc} _023465C4: mov r0, #1 strb r0, [r1] bl ov02_02348148 ldr r0, _02346638 ; =ov02_023463D4 bl ov02_02338D68 ldmia sp!, {r3, pc} _023465DC: bl ov02_02348148 mov r0, #0 bl ov02_02348F4C mov r2, #1 mov r1, #0 sub r3, r2, #2 mov r0, #0x11 str r1, [sp] bl ov02_02349394 bl ov02_02334768 ldr r0, _0234663C ; =ov02_0234668C bl ov02_02338D68 ldmia sp!, {r3, pc} _02346610: mov r0, #2 strb r0, [r1] bl ov02_02348148 mov r0, #9 bl ov02_023480E0 ldr r0, _02346638 ; =ov02_023463D4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02346630: .word ov02_0235AB30 _02346634: .word ov02_02346640 _02346638: .word ov02_023463D4 _0234663C: .word ov02_0234668C arm_func_end ov02_02346554 arm_func_start ov02_02346640 ov02_02346640: ; 0x02346640 stmdb sp!, {r3, lr} bl ov02_02349704 cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #6 bl ov02_023480E0 bl ov02_023496C0 ldr r0, _02346668 ; =ov02_0234666C bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02346668: .word ov02_0234666C arm_func_end ov02_02346640 arm_func_start ov02_0234666C ov02_0234666C: ; 0x0234666C stmdb sp!, {r3, lr} bl ov02_02349718 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02346688 ; =ov02_023463D4 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02346688: .word ov02_023463D4 arm_func_end ov02_0234666C arm_func_start ov02_0234668C ov02_0234668C: ; 0x0234668C stmdb sp!, {r3, lr} bl ov02_02349704 cmp r0, #0 beq _023466BC cmp r0, #1 ldmneia sp!, {r3, pc} ldr r1, _023466E0 ; =ov02_0235AB30 mov r2, #3 mov r0, #6 strb r2, [r1] bl ov02_023480E0 b _023466D0 _023466BC: ldr r1, _023466E0 ; =ov02_0235AB30 mov r2, #1 mov r0, #7 strb r2, [r1] bl ov02_023480E0 _023466D0: bl ov02_023496C0 ldr r0, _023466E4 ; =ov02_023466E8 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _023466E0: .word ov02_0235AB30 _023466E4: .word ov02_023466E8 arm_func_end ov02_0234668C arm_func_start ov02_023466E8 ov02_023466E8: ; 0x023466E8 stmdb sp!, {r3, lr} bl ov02_02349718 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02346740 ; =ov02_0235AB30 ldrb r0, [r0] cmp r0, #1 bne _02346714 ldr r0, _02346744 ; =ov02_023463D4 bl ov02_02338D68 ldmia sp!, {r3, pc} _02346714: mov r0, #0xb bl ov02_023480E0 bl ov02_02334750 ldr r1, _02346740 ; =ov02_0235AB30 mov r2, #0 ldr r0, _02346748 ; =ov02_02346554 strb r2, [r1] bl ov02_02348F4C ldr r0, _0234674C ; =ov02_02346338 bl ov02_02338D68 ldmia sp!, {r3, pc} .align 2, 0 _02346740: .word ov02_0235AB30 _02346744: .word ov02_023463D4 _02346748: .word ov02_02346554 _0234674C: .word ov02_02346338 arm_func_end ov02_023466E8 arm_func_start ov02_02346750 ov02_02346750: ; 0x02346750 stmdb sp!, {r4, lr} mov r4, r0 ldr r0, _023467A4 ; =0x00000608 mov r1, #4 bl ov02_0234E7B4 mov ip, r0 ldr r3, _023467A8 ; =ov02_0235AB34 mov r0, r4 add r1, ip, #4 mov r2, #0x600 str ip, [r3] bl ArrayCopy32Fast ldr r1, _023467AC ; =ov02_0234684C mov r0, #1 mov r2, #0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _023467A8 ; =ov02_0235AB34 ldr r1, [r1] str r0, [r1] ldmia sp!, {r4, pc} .align 2, 0 _023467A4: .word 0x00000608 _023467A8: .word ov02_0235AB34 _023467AC: .word ov02_0234684C arm_func_end ov02_02346750 arm_func_start ov02_023467B0 ov02_023467B0: ; 0x023467B0 stmdb sp!, {r3, lr} ldr r1, _023467D4 ; =ov02_0235AB34 mov r0, #1 ldr r1, [r1] ldr r1, [r1] bl ov02_0234FB60 ldr r0, _023467D8 ; =ov02_0235AB34 bl ov02_0234E7D8 ldmia sp!, {r3, pc} .align 2, 0 _023467D4: .word ov02_0235AB34 _023467D8: .word ov02_0235AB34 arm_func_end ov02_023467B0 arm_func_start ov02_023467DC ov02_023467DC: ; 0x023467DC ldr r0, _023467F0 ; =ov02_0235AB34 mov r1, #1 ldr r0, [r0] strb r1, [r0, #0x604] bx lr .align 2, 0 _023467F0: .word ov02_0235AB34 arm_func_end ov02_023467DC arm_func_start ov02_023467F4 ov02_023467F4: ; 0x023467F4 stmdb sp!, {r4, r5, r6, r7, r8, lr} ldr ip, _02346848 ; =ov02_0235AB34 mov r7, r3 ldr r3, [ip] mov r8, r0 add r0, r3, #4 add r4, r0, r1, lsl #1 mov r5, #0 cmp r7, #0 ldmleia sp!, {r4, r5, r6, r7, r8, pc} mov r6, r2, lsl #1 _02346820: mov r0, r8 mov r1, r4 mov r2, r6 bl ArrayCopy16 add r5, r5, #1 cmp r5, r7 add r8, r8, #0x40 add r4, r4, #0x40 blt _02346820 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _02346848: .word ov02_0235AB34 arm_func_end ov02_023467F4 arm_func_start ov02_0234684C ov02_0234684C: ; 0x0234684C stmdb sp!, {r3, lr} ldr r0, _0234689C ; =ov02_0235AB34 ldr r1, [r0] ldrb r0, [r1, #0x604] cmp r0, #0 ldmeqia sp!, {r3, pc} add r0, r1, #4 mov r1, #0x600 bl DC_FlushRange ldr r0, _0234689C ; =ov02_0235AB34 mov r1, #0 ldr r0, [r0] mov r2, #0x600 add r0, r0, #4 bl GX_LoadBG2Scr ldr r0, _0234689C ; =ov02_0235AB34 mov r1, #0 ldr r0, [r0] strb r1, [r0, #0x604] ldmia sp!, {r3, pc} .align 2, 0 _0234689C: .word ov02_0235AB34 arm_func_end ov02_0234684C arm_func_start ov02_023468A0 ov02_023468A0: ; 0x023468A0 stmdb sp!, {r3, lr} ldr ip, _023468D4 ; =ov02_0235AB34 add r3, r0, r1, lsl #5 mov r0, r2, lsl #5 ldr r1, _023468D8 ; =ov02_023468DC str r3, [ip, #4] add lr, r0, #0x5000000 mov r0, #1 mov r2, #0 mov r3, #0x78 str lr, [ip, #8] bl ov02_0234FA98 ldmia sp!, {r3, pc} .align 2, 0 _023468D4: .word ov02_0235AB34 _023468D8: .word ov02_023468DC arm_func_end ov02_023468A0 arm_func_start ov02_023468DC ov02_023468DC: ; 0x023468DC stmdb sp!, {r4, lr} ldr r1, _02346904 ; =ov02_0235AB34 mov r4, r0 mov r2, #0x20 ldmib r1, {r0, r1} bl ArrayCopy16 mov r1, r4 mov r0, #1 bl ov02_0234FB40 ldmia sp!, {r4, pc} .align 2, 0 _02346904: .word ov02_0235AB34 arm_func_end ov02_023468DC arm_func_start ov02_02346908 ov02_02346908: ; 0x02346908 ldr r2, _02346928 ; =ov02_0235AB34 ldr ip, _0234692C ; =ov02_0234FA98 str r0, [r2, #4] ldr r1, _02346930 ; =ov02_02346934 mov r0, #1 mov r2, #0 mov r3, #0x78 bx ip .align 2, 0 _02346928: .word ov02_0235AB34 _0234692C: .word ov02_0234FA98 _02346930: .word ov02_02346934 arm_func_end ov02_02346908 arm_func_start ov02_02346934 ov02_02346934: ; 0x02346934 stmdb sp!, {r4, lr} ldr r1, _02346960 ; =ov02_0235AB34 mov r4, r0 ldr r0, [r1, #4] mov r1, #0x5000000 mov r2, #0x200 bl ArrayCopy16 mov r1, r4 mov r0, #1 bl ov02_0234FB40 ldmia sp!, {r4, pc} .align 2, 0 _02346960: .word ov02_0235AB34 arm_func_end ov02_02346934 arm_func_start ov02_02346964 ov02_02346964: ; 0x02346964 stmdb sp!, {r3, r4, r5, r6, r7, lr} mov r6, r0 mov r7, r1 mov r0, #0x20 mov r1, #4 mov r5, r2 mov r4, r3 bl ov02_0234E7B4 ldr r2, _02346A30 ; =ov02_0235AB40 ldr ip, [sp, #0x18] str r0, [r2] strb r6, [r0, #0x1b] ldr r1, [r2] mov r0, r5 strb r7, [r1, #0x19] ldr r3, [r2] mov r1, r4 strb ip, [r3, #0x1a] ldr r2, [r2] add r2, r2, #0x10 bl ov02_0234E378 ldr r1, _02346A34 ; =ov02_02352D6C mov r0, #0 ldrb r1, [r1, r6] mov r2, #1 bl ov02_0234D6D8 mov r2, r5 ldr r5, _02346A30 ; =ov02_0235AB40 ldr r3, [sp, #0x18] ldr r6, [r5] mvn r1, #0 str r0, [r6] ldr r0, [r5] add r3, r4, r3 ldr r0, [r0] bl ov02_0234D440 mov r0, r5 ldr r0, [r0] mvn r1, #0 ldr r0, [r0] mov r2, #1 bl ov02_0234D530 mov r0, #0 ldr r1, _02346A38 ; =ov02_02346ADC mov r2, r0 mov r3, #0x80 bl ov02_0234FA98 mov r1, r5 ldr r1, [r1] str r0, [r1, #0xc] ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _02346A30: .word ov02_0235AB40 _02346A34: .word ov02_02352D6C _02346A38: .word ov02_02346ADC arm_func_end ov02_02346964 arm_func_start ov02_02346A3C ov02_02346A3C: ; 0x02346A3C stmdb sp!, {r3, lr} ldr r1, _02346A70 ; =ov02_0235AB40 mov r0, #0 ldr r1, [r1] ldr r1, [r1, #0xc] bl ov02_0234FB60 ldr r0, _02346A70 ; =ov02_0235AB40 ldr r0, [r0] ldr r0, [r0] bl ov02_0234D288 ldr r0, _02346A74 ; =ov02_0235AB40 bl ov02_0234E7D8 ldmia sp!, {r3, pc} .align 2, 0 _02346A70: .word ov02_0235AB40 _02346A74: .word ov02_0235AB40 arm_func_end ov02_02346A3C arm_func_start ov02_02346A78 ov02_02346A78: ; 0x02346A78 ldr r0, _02346A88 ; =ov02_0235AB40 ldr r0, [r0] ldrb r0, [r0, #0x1a] bx lr .align 2, 0 _02346A88: .word ov02_0235AB40 arm_func_end ov02_02346A78 arm_func_start ov02_02346A8C ov02_02346A8C: ; 0x02346A8C ldr r0, _02346A9C ; =ov02_0235AB40 ldr r0, [r0] ldrb r0, [r0, #0x1d] bx lr .align 2, 0 _02346A9C: .word ov02_0235AB40 arm_func_end ov02_02346A8C arm_func_start ov02_02346AA0 ov02_02346AA0: ; 0x02346AA0 ldr ip, _02346AA8 ; =ov02_02346FEC bx ip .align 2, 0 _02346AA8: .word ov02_02346FEC arm_func_end ov02_02346AA0 arm_func_start ov02_02346AAC ov02_02346AAC: ; 0x02346AAC ldr r0, _02346AC0 ; =ov02_0235AB40 mov r1, #0 ldr r0, [r0] strb r1, [r0, #0x1e] bx lr .align 2, 0 _02346AC0: .word ov02_0235AB40 arm_func_end ov02_02346AAC arm_func_start ov02_02346AC4 ov02_02346AC4: ; 0x02346AC4 ldr r0, _02346AD8 ; =ov02_0235AB40 mov r1, #1 ldr r0, [r0] strb r1, [r0, #0x1e] bx lr .align 2, 0 _02346AD8: .word ov02_0235AB40 arm_func_end ov02_02346AC4 arm_func_start ov02_02346ADC ov02_02346ADC: ; 0x02346ADC stmdb sp!, {r3, lr} ldr r0, _02346C5C ; =ov02_0235AB40 mov r2, #0 ldr r1, [r0] strb r2, [r1, #0x1d] ldr r1, [r0] ldrb r0, [r1, #0x1c] cmp r0, #3 addls pc, pc, r0, lsl #2 ldmia sp!, {r3, pc} _02346B04: ; jump table b _02346B14 ; case 0 b _02346BC4 ; case 1 b _02346BCC ; case 2 b _02346C14 ; case 3 _02346B14: ldrb r0, [r1, #0x1e] cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_02346E3C cmp r0, #4 addls pc, pc, r0, lsl #2 ldmia sp!, {r3, pc} _02346B30: ; jump table ldmia sp!, {r3, pc} ; case 0 b _02346B44 ; case 1 b _02346BA4 ; case 2 b _02346BB0 ; case 3 b _02346BBC ; case 4 _02346B44: ldr r0, _02346C5C ; =ov02_0235AB40 ldr r0, [r0] ldrb r0, [r0, #0x1b] cmp r0, #0 ldmeqia sp!, {r3, pc} mov r0, #0x16 bl ov02_023480E0 mov r0, #0 bl ov02_02348104 ldr r0, _02346C5C ; =ov02_0235AB40 mov r2, #1 ldr r1, [r0] strb r2, [r1, #0x1d] ldr r0, [r0] add r0, r0, #0x14 bl ov02_0234EF04 ldr r0, _02346C5C ; =ov02_0235AB40 mov r1, #1 ldr r3, [r0] ldrb r2, [r3, #0x1a] strb r2, [r3, #0x18] ldr r0, [r0] strb r1, [r0, #0x1c] ldmia sp!, {r3, pc} _02346BA4: mov r0, #2 bl ov02_02346DA8 ldmia sp!, {r3, pc} _02346BB0: mov r0, #3 bl ov02_02346DA8 ldmia sp!, {r3, pc} _02346BBC: bl ov02_02346DD4 ldmia sp!, {r3, pc} _02346BC4: bl ov02_02346C60 ldmia sp!, {r3, pc} _02346BCC: mov r0, #2 bl ov02_02346EC8 cmp r0, #2 beq _02346BFC ldr r0, _02346C5C ; =ov02_0235AB40 mov r3, #5 ldr r2, [r0] mov r1, #0 strb r3, [r2, #0x1d] ldr r0, [r0] strb r1, [r0, #0x1c] ldmia sp!, {r3, pc} _02346BFC: bl ov02_02346E3C cmp r0, #2 ldmneia sp!, {r3, pc} mov r0, #2 bl ov02_02346DA8 ldmia sp!, {r3, pc} _02346C14: mov r0, #3 bl ov02_02346EC8 cmp r0, #3 beq _02346C44 ldr r0, _02346C5C ; =ov02_0235AB40 mov r3, #7 ldr r2, [r0] mov r1, #0 strb r3, [r2, #0x1d] ldr r0, [r0] strb r1, [r0, #0x1c] ldmia sp!, {r3, pc} _02346C44: bl ov02_02346E3C cmp r0, #3 ldmneia sp!, {r3, pc} mov r0, #3 bl ov02_02346DA8 ldmia sp!, {r3, pc} .align 2, 0 _02346C5C: .word ov02_0235AB40 arm_func_end ov02_02346ADC arm_func_start ov02_02346C60 ov02_02346C60: ; 0x02346C60 stmdb sp!, {r3, r4, lr} sub sp, sp, #4 ldr r0, _02346D24 ; =ov02_02352F34 bl ov02_0234EC7C cmp r0, #0 beq _02346CFC add r0, sp, #0 bl ov02_0234EF04 ldr r0, _02346D28 ; =ov02_0235AB40 ldrh r1, [sp] ldr r3, [r0] ldrh r0, [r3, #0x10] sub r0, r0, #0x1e cmp r1, r0 blt _02346CFC ldrh r1, [sp, #2] ldrh r0, [r3, #0x16] ldrb r2, [r3, #0x18] sub r0, r1, r0 adds r4, r2, r0 movmi r4, #0 bmi _02346CD4 ldrb r1, [r3, #0x1b] ldr r0, _02346D2C ; =ov02_02352D70 ldrb r2, [r3, #0x19] ldrb r0, [r0, r1] sub r0, r2, r0 cmp r4, r0 movge r4, r0 _02346CD4: mov r0, r4 bl ov02_02346D30 mov r0, r4 bl ov02_02346FEC ldr r0, _02346D28 ; =ov02_0235AB40 mov r1, #2 ldr r0, [r0] add sp, sp, #4 strb r1, [r0, #0x1d] ldmia sp!, {r3, r4, pc} _02346CFC: bl ov02_02348148 ldr r0, _02346D28 ; =ov02_0235AB40 mov r3, #0 ldr r2, [r0] mov r1, #3 strb r3, [r2, #0x1c] ldr r0, [r0] strb r1, [r0, #0x1d] add sp, sp, #4 ldmia sp!, {r3, r4, pc} .align 2, 0 _02346D24: .word ov02_02352F34 _02346D28: .word ov02_0235AB40 _02346D2C: .word ov02_02352D70 arm_func_end ov02_02346C60 arm_func_start ov02_02346D30 ov02_02346D30: ; 0x02346D30 stmdb sp!, {r4, lr} ldr r1, _02346DA0 ; =ov02_0235AB40 ldr r1, [r1] ldrb r1, [r1, #0x1a] subs r4, r1, r0 rsbmi r4, r4, #0 cmp r4, #2 movlt r0, #0 blt _02346D68 cmp r4, #6 mov r0, #0x7f bge _02346D68 rsb r1, r4, #6 bl FX_DivS32 _02346D68: bl ov02_02348104 cmp r4, #2 mvnlt r1, #0xff blt _02346D94 cmp r4, #6 movge r1, #0x100 bge _02346D94 rsb r1, r4, #6 mov r0, #0x200 bl FX_DivS32 sub r1, r0, #0x100 _02346D94: ldr r0, _02346DA4 ; =0x0000FFFF bl ov02_02348124 ldmia sp!, {r4, pc} .align 2, 0 _02346DA0: .word ov02_0235AB40 _02346DA4: .word 0x0000FFFF arm_func_end ov02_02346D30 arm_func_start ov02_02346DA8 ov02_02346DA8: ; 0x02346DA8 ldr r1, _02346DD0 ; =ov02_0235AB40 cmp r0, #2 ldr r1, [r1] strb r0, [r1, #0x1c] ldr r0, _02346DD0 ; =ov02_0235AB40 moveq r1, #4 ldr r0, [r0] movne r1, #6 strb r1, [r0, #0x1d] bx lr .align 2, 0 _02346DD0: .word ov02_0235AB40 arm_func_end ov02_02346DA8 arm_func_start ov02_02346DD4 ov02_02346DD4: ; 0x02346DD4 stmdb sp!, {r3, lr} add r0, sp, #0 bl ov02_0234EF04 ldr r0, _02346E34 ; =ov02_0235AB40 ldr r2, _02346E38 ; =ov02_02352D70 ldr ip, [r0] ldrh r1, [sp, #2] ldrb r3, [ip, #0x1b] ldrh r0, [ip, #0x12] ldrb r2, [r2, r3] sub r0, r1, r0 subs r0, r0, r2, lsr #1 movmi r0, #0 bmi _02346E1C ldrb r1, [ip, #0x19] sub r1, r1, r2 cmp r0, r1 movge r0, r1 _02346E1C: bl ov02_02346FEC ldr r0, _02346E34 ; =ov02_0235AB40 mov r1, #3 ldr r0, [r0] strb r1, [r0, #0x1d] ldmia sp!, {r3, pc} .align 2, 0 _02346E34: .word ov02_0235AB40 _02346E38: .word ov02_02352D70 arm_func_end ov02_02346DD4 arm_func_start ov02_02346E3C ov02_02346E3C: ; 0x02346E3C stmdb sp!, {r3, r4, r5, lr} sub sp, sp, #8 add r1, sp, #0 mov r0, #1 bl ov02_02346F14 add r0, sp, #0 bl ov02_0234ED8C cmp r0, #0 addne sp, sp, #8 movne r0, #1 ldmneia sp!, {r3, r4, r5, pc} mov r5, #2 add r4, sp, #0 _02346E70: mov r0, r5 mov r1, r4 bl ov02_02346F14 mov r0, r4 bl ov02_0234ED8C cmp r0, #0 addne sp, sp, #8 movne r0, r5 ldmneia sp!, {r3, r4, r5, pc} add r5, r5, #1 cmp r5, #3 ble _02346E70 add r1, sp, #0 mov r0, #4 bl ov02_02346F14 add r0, sp, #0 bl ov02_0234ED04 cmp r0, #0 movne r0, #4 moveq r0, #0 add sp, sp, #8 ldmia sp!, {r3, r4, r5, pc} arm_func_end ov02_02346E3C arm_func_start ov02_02346EC8 ov02_02346EC8: ; 0x02346EC8 stmdb sp!, {r3, r4, r5, lr} sub sp, sp, #8 mov r5, #2 add r4, sp, #0 _02346ED8: mov r0, r5 mov r1, r4 bl ov02_02346F14 mov r0, r4 bl ov02_0234EC7C cmp r0, #0 addne sp, sp, #8 movne r0, r5 ldmneia sp!, {r3, r4, r5, pc} add r5, r5, #1 cmp r5, #3 ble _02346ED8 mov r0, #0 add sp, sp, #8 ldmia sp!, {r3, r4, r5, pc} arm_func_end ov02_02346EC8 arm_func_start ov02_02346F14 ov02_02346F14: ; 0x02346F14 ldr r2, _02346FE4 ; =ov02_0235AB40 cmp r0, #4 ldr r3, [r2] ldrh r3, [r3, #0x10] strh r3, [r1] add r3, r3, #0xc strh r3, [r1, #4] addls pc, pc, r0, lsl #2 bx lr _02346F38: ; jump table bx lr ; case 0 b _02346F4C ; case 1 b _02346F80 ; case 2 b _02346FA0 ; case 3 b _02346FC4 ; case 4 _02346F4C: ldr r3, [r2] ldr r0, _02346FE8 ; =ov02_02352D70 ldrh ip, [r3, #0x12] ldrb r3, [r3, #0x1a] add r3, ip, r3 strh r3, [r1, #2] ldr r2, [r2] ldrh r3, [r1, #2] ldrb r2, [r2, #0x1b] ldrb r0, [r0, r2] add r0, r3, r0 strh r0, [r1, #6] bx lr _02346F80: ldr r0, [r2] ldrh r0, [r0, #0x12] sub r0, r0, #0xd strh r0, [r1, #2] ldr r0, [r2] ldrh r0, [r0, #0x12] strh r0, [r1, #6] bx lr _02346FA0: ldr r0, [r2] ldrh r2, [r0, #0x12] ldrb r0, [r0, #0x19] add r0, r2, r0 strh r0, [r1, #2] ldrh r0, [r1, #2] add r0, r0, #0xd strh r0, [r1, #6] bx lr _02346FC4: ldr r0, [r2] ldrh r3, [r0, #0x12] strh r3, [r1, #2] ldr r0, [r2] ldrb r0, [r0, #0x19] add r0, r3, r0 strh r0, [r1, #6] bx lr .align 2, 0 _02346FE4: .word ov02_0235AB40 _02346FE8: .word ov02_02352D70 arm_func_end ov02_02346F14 arm_func_start ov02_02346FEC ov02_02346FEC: ; 0x02346FEC stmdb sp!, {r4, lr} ldr r1, _02347024 ; =ov02_0235AB40 mov r4, r0 ldr r0, [r1] mvn r1, #0 ldrh r3, [r0, #0x12] ldrh r2, [r0, #0x10] ldr r0, [r0] add r3, r4, r3 bl ov02_0234D440 ldr r0, _02347024 ; =ov02_0235AB40 ldr r0, [r0] strb r4, [r0, #0x1a] ldmia sp!, {r4, pc} .align 2, 0 _02347024: .word ov02_0235AB40 arm_func_end ov02_02346FEC arm_func_start ov02_02347028 ov02_02347028: ; 0x02347028 stmdb sp!, {r3, lr} ldr r0, _02347054 ; =ov02_0235AB44 ldr r0, [r0] cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _02347058 ; =0x00001E60 mov r1, #0x20 bl ov02_0234E7B4 ldr r1, _02347054 ; =ov02_0235AB44 str r0, [r1] ldmia sp!, {r3, pc} .align 2, 0 _02347054: .word ov02_0235AB44 _02347058: .word 0x00001E60 arm_func_end ov02_02347028 arm_func_start ov02_0234705C ov02_0234705C: ; 0x0234705C stmdb sp!, {r3, lr} ldr r0, _02347088 ; =ov02_0235AB44 ldr r0, [r0] cmp r0, #0 ldmeqia sp!, {r3, pc} _02347070: bl ov00_022BF640 cmp r0, #0x8000 bne _02347070 ldr r0, _0234708C ; =ov02_0235AB44 bl ov02_0234E7D8 ldmia sp!, {r3, pc} .align 2, 0 _02347088: .word ov02_0235AB44 _0234708C: .word ov02_0235AB44 arm_func_end ov02_0234705C arm_func_start ov02_02347090 ov02_02347090: ; 0x02347090 stmdb sp!, {r3, r4, r5, lr} ldr r1, _02347150 ; =ov02_0235AB44 mov r0, #0 ldr r1, [r1] mov r2, #0x348 add r1, r1, #0x1300 bl ArrayFill16 ldr r0, _02347150 ; =ov02_0235AB44 ldr r1, _02347154 ; =ov02_02347288 ldr r0, [r0] mov r2, #3 bl ov00_022BFB14 cmp r0, #2 movne r0, #0 ldmneia sp!, {r3, r4, r5, pc} ldr r4, _02347150 ; =ov02_0235AB44 _023470D0: ldr r0, [r4] add r0, r0, #0x28c add r0, r0, #0x1400 bl ov00_022BF3E0 ldr ip, [r4] add r0, ip, #0x1600 ldrh r0, [r0, #0x8c] cmp r0, #2 bne _023470D0 add r0, ip, #0x248 ldr r5, _02347158 ; =ov02_02352D80 add lr, r0, #0x1400 mov r4, #4 _02347104: ldmia r5!, {r0, r1, r2, r3} stmia lr!, {r0, r1, r2, r3} subs r4, r4, #1 bne _02347104 ldr r0, [r5] add r1, ip, #0xf00 str r0, [lr] add r0, ip, #0x1000 str r1, [r0, #0x648] bl ov00_022BF780 ldr r1, _02347150 ; =ov02_0235AB44 ldr r1, [r1] add r1, r1, #0x1600 strh r0, [r1, #0x50] bl ov02_0234715C cmp r0, #0 movne r0, #1 moveq r0, #0 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _02347150: .word ov02_0235AB44 _02347154: .word ov02_02347288 _02347158: .word ov02_02352D80 arm_func_end ov02_02347090 arm_func_start ov02_0234715C ov02_0234715C: ; 0x0234715C stmdb sp!, {r3, lr} ldr r1, _02347188 ; =ov02_0235AB44 ldr r0, _0234718C ; =ov02_02347288 ldr r1, [r1] add r1, r1, #0x248 add r1, r1, #0x1400 bl ov00_022BFED8 cmp r0, #2 moveq r0, #1 movne r0, #0 ldmia sp!, {r3, pc} .align 2, 0 _02347188: .word ov02_0235AB44 _0234718C: .word ov02_02347288 arm_func_end ov02_0234715C arm_func_start ov02_02347190 ov02_02347190: ; 0x02347190 stmdb sp!, {r4, lr} ldr r1, _02347224 ; =ov02_0235AB44 mov r2, #1 ldr r0, [r1] add r0, r0, #0x1000 strb r2, [r0, #0xe5c] ldr r0, [r1] add r0, r0, #0x28c add r0, r0, #0x1400 bl ov00_022BF3E0 ldr r0, _02347224 ; =ov02_0235AB44 ldr r0, [r0] add r0, r0, #0x1600 ldrh r0, [r0, #0x8c] cmp r0, #2 beq _0234720C ldr r0, _02347228 ; =ov02_02347288 bl ov00_022BFB9C cmp r0, #2 movne r0, #0 ldmneia sp!, {r4, pc} ldr r4, _02347224 ; =ov02_0235AB44 _023471E8: ldr r0, [r4] add r0, r0, #0x28c add r0, r0, #0x1400 bl ov00_022BF3E0 ldr r0, [r4] add r0, r0, #0x1600 ldrh r0, [r0, #0x8c] cmp r0, #2 bne _023471E8 _0234720C: ldr r0, _02347228 ; =ov02_02347288 bl ov00_022BFBD4 cmp r0, #2 movne r0, #0 moveq r0, #1 ldmia sp!, {r4, pc} .align 2, 0 _02347224: .word ov02_0235AB44 _02347228: .word ov02_02347288 arm_func_end ov02_02347190 arm_func_start ov02_0234722C ov02_0234722C: ; 0x0234722C stmdb sp!, {r4, r5, r6, r7, r8, lr} ldr r1, _02347280 ; =ov02_0235AB44 mov r6, #0 ldr r1, [r1] ldr r5, _02347284 ; =ov02_02352D78 add r8, r1, #0x1300 mov r7, r6 str r8, [r0] mov r4, #6 _02347250: mov r1, r5 mov r2, r4 add r0, r8, #0x20 bl memcmp cmp r0, #0 add r7, r7, #1 addne r6, r6, #1 cmp r7, #0x14 add r8, r8, #0x2a blt _02347250 mov r0, r6 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _02347280: .word ov02_0235AB44 _02347284: .word ov02_02352D78 arm_func_end ov02_0234722C arm_func_start ov02_02347288 ov02_02347288: ; 0x02347288 stmdb sp!, {r3, lr} ldrh r1, [r0, #2] cmp r1, #0 ldmneia sp!, {r3, pc} ldr r1, _023472E8 ; =ov02_0235AB44 ldr r1, [r1] add r1, r1, #0x1000 ldrb r1, [r1, #0xe5c] cmp r1, #0 ldreqh r1, [r0] cmpeq r1, #0x26 ldmneia sp!, {r3, pc} ldrh r1, [r0, #8] cmp r1, #4 beq _023472D8 cmp r1, #5 bne _023472E0 bl ov02_023472EC bl ov02_0234715C ldmia sp!, {r3, pc} _023472D8: bl ov02_0234715C ldmia sp!, {r3, pc} _023472E0: bl WaitForever2 ldmia sp!, {r3, pc} .align 2, 0 _023472E8: .word ov02_0235AB44 arm_func_end ov02_02347288 arm_func_start ov02_023472EC ov02_023472EC: ; 0x023472EC stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x88 ldr r1, _023474B4 ; =ov02_0235AB44 mov fp, r0 ldr r2, [r1] mov r1, #0x400 add r0, r2, #0xf00 add r2, r2, #0x1300 str r2, [sp] bl DC_InvalidateRange ldrh r0, [fp, #0xe] mov sl, #0 cmp r0, #0 addle sp, sp, #0x88 ldmleia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} _02347328: add r0, fp, sl, lsl #2 ldr r4, [r0, #0x10] ldrb r0, [r4, #0xc] cmp r0, #0 beq _0234749C ldrh r0, [r4, #0x3c] cmp r0, #0 bne _0234749C ldr r7, [sp] mov r5, #0 mov r6, #6 _02347354: mov r2, r6 add r0, r4, #4 add r1, r7, #0x20 bl memcmp cmp r0, #0 beq _0234737C add r5, r5, #1 cmp r5, #0x14 add r7, r7, #0x2a blt _02347354 _0234737C: cmp r5, #0x14 bne _023473C8 ldr r8, [sp] ldr r7, _023474B8 ; =ov02_02352D78 mov r5, #0 mov r6, #6 _02347394: mov r1, r7 mov r2, r6 add r0, r8, #0x20 bl memcmp cmp r0, #0 beq _023473BC add r5, r5, #1 cmp r5, #0x14 add r8, r8, #0x2a blt _02347394 _023473BC: cmp r5, #0x14 addeq sp, sp, #0x88 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} _023473C8: ldr r0, [sp] mov r1, #0x2a mla sb, r5, r1, r0 add r0, r4, #4 add r1, sb, #0x20 mov r2, #6 bl MemcpyFast mov r1, sb add r0, r4, #0xc mov r2, #0x20 bl MemcpyFast add r0, fp, sl, lsl #1 ldrh r0, [r0, #0x50] strh r0, [sb, #0x26] ldrh r0, [r4, #0x2c] tst r0, #0x10 moveq r0, #0 streqb r0, [sb, #0x28] beq _0234749C mov r2, #1 add r0, sp, #4 mov r1, r4 strb r2, [sb, #0x28] bl ov00_022BF814 ldrb r8, [sp, #4] mov r7, #0 cmp r8, #0 ble _0234749C ldr r5, _023474BC ; =ov02_02352D74 mov r4, #4 add r6, sp, #4 _02347444: add r1, r6, r7, lsl #3 ldrb r0, [r1, #4] cmp r0, #0x30 moveq r0, #2 streqb r0, [sb, #0x28] beq _0234749C cmp r0, #0xdd bne _02347490 ldrb r0, [r1, #5] cmp r0, #4 blo _02347490 ldr r0, [r1, #8] mov r1, r5 mov r2, r4 bl memcmp cmp r0, #0 moveq r0, #2 streqb r0, [sb, #0x28] beq _0234749C _02347490: add r7, r7, #1 cmp r7, r8 blt _02347444 _0234749C: ldrh r0, [fp, #0xe] add sl, sl, #1 cmp sl, r0 blt _02347328 add sp, sp, #0x88 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _023474B4: .word ov02_0235AB44 _023474B8: .word ov02_02352D78 _023474BC: .word ov02_02352D74 arm_func_end ov02_023472EC arm_func_start ov02_023474C0 ov02_023474C0: ; 0x023474C0 stmdb sp!, {r3, lr} ldr r0, _023474F8 ; =0x000006F8 mov r1, #0x20 bl ov02_0234E7B4 ldr r1, _023474FC ; =ov02_0235AB48 add r2, r0, #0xf8 str r0, [r1] ldr r1, _02347500 ; =0x0000A001 add r0, r2, #0x400 bl sub_02085030 ldr r0, _023474FC ; =ov02_0235AB48 ldr r0, [r0] bl ov00_022ED660 ldmia sp!, {r3, pc} .align 2, 0 _023474F8: .word 0x000006F8 _023474FC: .word ov02_0235AB48 _02347500: .word 0x0000A001 arm_func_end ov02_023474C0 arm_func_start ov02_02347504 ov02_02347504: ; 0x02347504 ldr ip, _02347510 ; =ov02_0234E7D8 ldr r0, _02347514 ; =ov02_0235AB48 bx ip .align 2, 0 _02347510: .word ov02_0234E7D8 _02347514: .word ov02_0235AB48 arm_func_end ov02_02347504 arm_func_start ov02_02347518 ov02_02347518: ; 0x02347518 ldr r0, _02347528 ; =ov02_0235AB48 ldr r0, [r0] add r0, r0, #0x400 bx lr .align 2, 0 _02347528: .word ov02_0235AB48 arm_func_end ov02_02347518 arm_func_start ov02_0234752C ov02_0234752C: ; 0x0234752C ldr r1, _0234753C ; =ov02_0235AB48 ldr r1, [r1] strb r0, [r1, #0x4f5] bx lr .align 2, 0 _0234753C: .word ov02_0235AB48 arm_func_end ov02_0234752C arm_func_start ov02_02347540 ov02_02347540: ; 0x02347540 ldr r1, _02347550 ; =ov02_0235AB48 ldr r1, [r1] strb r0, [r1, #0x4f6] bx lr .align 2, 0 _02347550: .word ov02_0235AB48 arm_func_end ov02_02347540 arm_func_start ov02_02347554 ov02_02347554: ; 0x02347554 stmdb sp!, {r3, lr} ldr r1, _02347580 ; =ov02_0235AB48 mov r2, #0x20 ldr r1, [r1] add r1, r1, #0x440 bl MemcpyFast ldr r0, _02347580 ; =ov02_0235AB48 mov r1, #0 ldr r0, [r0] strb r1, [r0, #0x4e7] ldmia sp!, {r3, pc} .align 2, 0 _02347580: .word ov02_0235AB48 arm_func_end ov02_02347554 arm_func_start ov02_02347584 ov02_02347584: ; 0x02347584 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} ldr r1, _02347718 ; =ov02_0235AB48 mov r6, r0 ldr r0, [r1] mov r1, #0 add r0, r0, #0x480 mov r2, #0x10 bl MemsetFast mov r0, r6 mov r1, #0x20 bl ov02_0234F59C mov r5, r0 cmp r5, #0xa bgt _023475CC bge _023475E4 cmp r5, #0 beq _023475E4 b _0234763C _023475CC: cmp r5, #0x1a bgt _023475DC beq _023475E4 b _0234763C _023475DC: cmp r5, #0x20 bne _0234763C _023475E4: ldr r0, _02347718 ; =ov02_0235AB48 cmp r5, #0 ldr r2, [r0] mov r4, #0 ldrb r1, [r2, #0x4e6] bic r1, r1, #0xfc strb r1, [r2, #0x4e6] ldr r0, [r0] add r8, r0, #0x480 ble _02347668 _0234760C: ldrb r0, [r6, r4] add sb, r6, r4 bl ov02_02348008 mov r7, r0 ldrb r0, [sb, #1] bl ov02_02348008 add r0, r0, r7, lsl #4 add r4, r4, #2 cmp r4, r5 strb r0, [r8], #1 blt _0234760C b _02347668 _0234763C: ldr r1, _02347718 ; =ov02_0235AB48 mov r0, r6 ldr r4, [r1] mov r2, #0x10 ldrb r3, [r4, #0x4e6] bic r3, r3, #0xfc orr r3, r3, #4 strb r3, [r4, #0x4e6] ldr r1, [r1] add r1, r1, #0x480 bl MemcpyFast _02347668: cmp r5, #5 bgt _02347680 bge _023476C4 cmp r5, #0 beq _023476AC b _023476FC _02347680: cmp r5, #0xd bgt _023476A0 cmp r5, #0xa blt _023476FC beq _023476C4 cmp r5, #0xd beq _023476E0 b _023476FC _023476A0: cmp r5, #0x1a beq _023476E0 b _023476FC _023476AC: ldr r0, _02347718 ; =ov02_0235AB48 ldr r1, [r0] ldrb r0, [r1, #0x4e6] bic r0, r0, #3 strb r0, [r1, #0x4e6] ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} _023476C4: ldr r0, _02347718 ; =ov02_0235AB48 ldr r1, [r0] ldrb r0, [r1, #0x4e6] bic r0, r0, #3 orr r0, r0, #1 strb r0, [r1, #0x4e6] ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} _023476E0: ldr r0, _02347718 ; =ov02_0235AB48 ldr r1, [r0] ldrb r0, [r1, #0x4e6] bic r0, r0, #3 orr r0, r0, #2 strb r0, [r1, #0x4e6] ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} _023476FC: ldr r0, _02347718 ; =ov02_0235AB48 ldr r1, [r0] ldrb r0, [r1, #0x4e6] bic r0, r0, #3 orr r0, r0, #3 strb r0, [r1, #0x4e6] ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} .align 2, 0 _02347718: .word ov02_0235AB48 arm_func_end ov02_02347584 arm_func_start ov02_0234771C ov02_0234771C: ; 0x0234771C ldr r1, _02347730 ; =ov02_0235AB48 ldr ip, _02347734 ; =ov02_02347F80 ldr r1, [r1] add r1, r1, #0x4c0 bx ip .align 2, 0 _02347730: .word ov02_0235AB48 _02347734: .word ov02_02347F80 arm_func_end ov02_0234771C arm_func_start ov02_02347738 ov02_02347738: ; 0x02347738 ldr r1, _0234774C ; =ov02_0235AB48 ldr ip, _02347750 ; =ov02_02347F80 ldr r1, [r1] add r1, r1, #0x4f0 bx ip .align 2, 0 _0234774C: .word ov02_0235AB48 _02347750: .word ov02_02347F80 arm_func_end ov02_02347738 arm_func_start ov02_02347754 ov02_02347754: ; 0x02347754 ldr r1, _0234776C ; =ov02_0235AB48 ldr ip, _02347770 ; =ov02_02347F80 ldr r1, [r1] add r1, r1, #0xc4 add r1, r1, #0x400 bx ip .align 2, 0 _0234776C: .word ov02_0235AB48 _02347770: .word ov02_02347F80 arm_func_end ov02_02347754 arm_func_start ov02_02347774 ov02_02347774: ; 0x02347774 ldr r1, _0234778C ; =ov02_0235AB48 ldr ip, _02347790 ; =ov02_02347F80 ldr r1, [r1] add r1, r1, #0xc8 add r1, r1, #0x400 bx ip .align 2, 0 _0234778C: .word ov02_0235AB48 _02347790: .word ov02_02347F80 arm_func_end ov02_02347774 arm_func_start ov02_02347794 ov02_02347794: ; 0x02347794 ldr r1, _023477AC ; =ov02_0235AB48 ldr ip, _023477B0 ; =ov02_02347F80 ldr r1, [r1] add r1, r1, #0xcc add r1, r1, #0x400 bx ip .align 2, 0 _023477AC: .word ov02_0235AB48 _023477B0: .word ov02_02347F80 arm_func_end ov02_02347794 arm_func_start ov02_023477B4 ov02_023477B4: ; 0x023477B4 ldr r2, _023477D0 ; =ov02_0235AB48 mov r1, r0 ldr r0, [r2] ldr ip, _023477D4 ; =MemcpyFast mov r2, #0x20 add r0, r0, #0x440 bx ip .align 2, 0 _023477D0: .word ov02_0235AB48 _023477D4: .word MemcpyFast arm_func_end ov02_023477B4 arm_func_start ov02_023477D8 ov02_023477D8: ; 0x023477D8 stmdb sp!, {r3, lr} sub sp, sp, #8 ldr r2, _02347810 ; =ov02_0235AB48 ldr r1, _02347814 ; =ov02_02353D44 ldr r3, [r2] ldrb r2, [r3, #0x4c2] str r2, [sp] ldrb r2, [r3, #0x4c3] str r2, [sp, #4] ldrb r2, [r3, #0x4c0] ldrb r3, [r3, #0x4c1] bl sub_020790DC add sp, sp, #8 ldmia sp!, {r3, pc} .align 2, 0 _02347810: .word ov02_0235AB48 _02347814: .word ov02_02353D44 arm_func_end ov02_023477D8 arm_func_start ov02_02347818 ov02_02347818: ; 0x02347818 stmdb sp!, {r3, lr} sub sp, sp, #8 ldr r2, _02347850 ; =ov02_0235AB48 ldr r1, _02347854 ; =ov02_02353D44 ldr r3, [r2] ldrb r2, [r3, #0x4f2] str r2, [sp] ldrb r2, [r3, #0x4f3] str r2, [sp, #4] ldrb r2, [r3, #0x4f0] ldrb r3, [r3, #0x4f1] bl sub_020790DC add sp, sp, #8 ldmia sp!, {r3, pc} .align 2, 0 _02347850: .word ov02_0235AB48 _02347854: .word ov02_02353D44 arm_func_end ov02_02347818 arm_func_start ov02_02347858 ov02_02347858: ; 0x02347858 stmdb sp!, {r3, lr} sub sp, sp, #8 ldr r2, _02347894 ; =ov02_0235AB48 ldr r1, _02347898 ; =ov02_02353D44 ldr ip, [r2] add r3, ip, #0xc4 ldrb r2, [r3, #0x402] str r2, [sp] ldrb r2, [r3, #0x403] str r2, [sp, #4] ldrb r2, [ip, #0x4c4] ldrb r3, [r3, #0x401] bl sub_020790DC add sp, sp, #8 ldmia sp!, {r3, pc} .align 2, 0 _02347894: .word ov02_0235AB48 _02347898: .word ov02_02353D44 arm_func_end ov02_02347858 arm_func_start ov02_0234789C ov02_0234789C: ; 0x0234789C stmdb sp!, {r3, lr} sub sp, sp, #8 ldr r2, _023478D8 ; =ov02_0235AB48 ldr r1, _023478DC ; =ov02_02353D44 ldr ip, [r2] add r3, ip, #0xc8 ldrb r2, [r3, #0x402] str r2, [sp] ldrb r2, [r3, #0x403] str r2, [sp, #4] ldrb r2, [ip, #0x4c8] ldrb r3, [r3, #0x401] bl sub_020790DC add sp, sp, #8 ldmia sp!, {r3, pc} .align 2, 0 _023478D8: .word ov02_0235AB48 _023478DC: .word ov02_02353D44 arm_func_end ov02_0234789C arm_func_start ov02_023478E0 ov02_023478E0: ; 0x023478E0 stmdb sp!, {r3, lr} sub sp, sp, #8 ldr r2, _0234791C ; =ov02_0235AB48 ldr r1, _02347920 ; =ov02_02353D44 ldr ip, [r2] add r3, ip, #0xcc ldrb r2, [r3, #0x402] str r2, [sp] ldrb r2, [r3, #0x403] str r2, [sp, #4] ldrb r2, [ip, #0x4cc] ldrb r3, [r3, #0x401] bl sub_020790DC add sp, sp, #8 ldmia sp!, {r3, pc} .align 2, 0 _0234791C: .word ov02_0235AB48 _02347920: .word ov02_02353D44 arm_func_end ov02_023478E0 arm_func_start ov02_02347924 ov02_02347924: ; 0x02347924 ldr r1, _02347938 ; =ov02_0235AB48 ldr r1, [r1] add r0, r1, r0, lsl #8 ldrb r0, [r0, #0xe7] bx lr .align 2, 0 _02347938: .word ov02_0235AB48 arm_func_end ov02_02347924 arm_func_start ov02_0234793C ov02_0234793C: ; 0x0234793C stmdb sp!, {r3, r4, r5, lr} ldr r1, _02347A14 ; =ov02_0235AB48 mov r3, #0x78 ldr r5, [r1] add r4, r5, r0, lsl #8 mov lr, r4 add ip, r5, #0x400 _02347958: ldrb r2, [lr] ldrb r1, [lr, #1] add lr, lr, #2 subs r3, r3, #1 strb r2, [ip] strb r1, [ip, #1] add ip, ip, #2 bne _02347958 ldr r1, _02347A18 ; =ov02_02352DC4 strb r0, [r5, #0x4f4] add r0, r4, #0xc0 mov r2, #4 bl memcmp cmp r0, #0 ldrne r0, _02347A14 ; =ov02_0235AB48 movne r1, #0 ldreq r0, _02347A14 ; =ov02_0235AB48 moveq r1, #1 ldr r0, [r0] mov r2, #4 strb r1, [r0, #0x4f5] ldr r1, _02347A18 ; =ov02_02352DC4 add r0, r4, #0xc8 bl memcmp cmp r0, #0 bne _023479D8 ldr r1, _02347A18 ; =ov02_02352DC4 add r0, r4, #0xcc mov r2, #4 bl memcmp cmp r0, #0 beq _023479EC _023479D8: ldr r0, _02347A14 ; =ov02_0235AB48 mov r1, #0 ldr r0, [r0] strb r1, [r0, #0x4f6] b _023479FC _023479EC: ldr r0, _02347A14 ; =ov02_0235AB48 mov r1, #1 ldr r0, [r0] strb r1, [r0, #0x4f6] _023479FC: ldr r1, _02347A14 ; =ov02_0235AB48 ldrb r0, [r4, #0xd0] ldr r1, [r1] add r1, r1, #0x4f0 bl ov00_022ED804 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _02347A14: .word ov02_0235AB48 _02347A18: .word ov02_02352DC4 arm_func_end ov02_0234793C arm_func_start ov02_02347A1C ov02_02347A1C: ; 0x02347A1C stmdb sp!, {r3, r4, r5, lr} ldr r0, _02347AF4 ; =ov02_0235AB48 mov r2, #0x78 ldr r1, [r0] add r4, r1, #0x400 ldrb r0, [r4, #0xf4] mov ip, r4 add r5, r1, r0, lsl #8 mov r3, r5 _02347A40: ldrb r1, [ip] ldrb r0, [ip, #1] add ip, ip, #2 subs r2, r2, #1 strb r1, [r3] strb r0, [r3, #1] add r3, r3, #2 bne _02347A40 ldrb r0, [r4, #0xf5] mov r2, #4 cmp r0, #0 beq _02347A94 add r0, r5, #0xc0 mov r1, #0 bl MemsetFast add r0, r5, #0xc4 mov r1, #0 mov r2, #4 bl MemsetFast mov r0, #0 b _02347AB8 _02347A94: add r0, r4, #0xc0 add r1, r5, #0xc0 bl MemcpyFast add r0, r4, #0xc4 add r1, r5, #0xc4 mov r2, #4 bl MemcpyFast add r0, r4, #0xf0 bl ov00_022ED7C0 _02347AB8: strb r0, [r5, #0xd0] ldrb r0, [r4, #0xf6] mov r2, #8 cmp r0, #0 beq _02347ADC add r0, r5, #0xc8 mov r1, #0 bl MemsetFast b _02347AE8 _02347ADC: add r0, r4, #0xc8 add r1, r5, #0xc8 bl MemcpyFast _02347AE8: ldrb r0, [r4, #0xf4] bl ov02_02347E18 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _02347AF4: .word ov02_0235AB48 arm_func_end ov02_02347A1C arm_func_start ov02_02347AF8 ov02_02347AF8: ; 0x02347AF8 stmdb sp!, {r4, r5, r6, r7, r8, lr} ldr r1, _02347C08 ; =ov02_0235AB48 mov r6, r0 ldr r4, [r1] mov r1, #0 add r0, r4, #0x400 mov r2, #0xef bl MemsetFast mov r0, r6 add r1, r4, #0x440 mov r2, #0x20 bl MemcpyFast ldr r0, [r6, #0x20] cmp r0, #1 beq _02347B48 cmp r0, #2 beq _02347B60 cmp r0, #3 beq _02347B78 b _02347B90 _02347B48: ldrb r0, [r4, #0x4e6] mov r5, #5 bic r0, r0, #3 orr r0, r0, #1 strb r0, [r4, #0x4e6] b _02347BA0 _02347B60: ldrb r0, [r4, #0x4e6] mov r5, #0xd bic r0, r0, #3 orr r0, r0, #2 strb r0, [r4, #0x4e6] b _02347BA0 _02347B78: ldrb r0, [r4, #0x4e6] mov r5, #0x10 bic r0, r0, #3 orr r0, r0, #3 strb r0, [r4, #0x4e6] b _02347BA0 _02347B90: ldrb r0, [r4, #0x4e6] mov r5, #0 bic r0, r0, #3 strb r0, [r4, #0x4e6] _02347BA0: ldrb r0, [r4, #0x4e6] add r8, r6, #0x28 add r7, r4, #0x480 bic r0, r0, #0xfc strb r0, [r4, #0x4e6] mov r6, #0 _02347BB8: mov r0, r8 mov r1, r7 mov r2, r5 bl MemcpyFast add r6, r6, #1 cmp r6, #4 add r7, r7, #0x10 add r8, r8, #0x20 blt _02347BB8 mov r3, #2 add r0, r4, #0x4f0 mov r1, #0 mov r2, #4 strb r3, [r4, #0x4e7] bl MemsetFast mov r0, #1 strb r0, [r4, #0x4f5] strb r0, [r4, #0x4f6] bl ov02_02347A1C ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _02347C08: .word ov02_0235AB48 arm_func_end ov02_02347AF8 arm_func_start ov02_02347C0C ov02_02347C0C: ; 0x02347C0C stmdb sp!, {r3, r4, r5, lr} ldr r1, _02347D18 ; =ov02_0235AB48 mov r5, r0 ldr r0, [r1] mov r1, #0 add r4, r0, #0x400 mov r0, r4 mov r2, #0xef bl MemsetFast mov r0, r5 add r1, r4, #0xd1 mov r2, #5 bl MemcpyFast add r0, r5, #6 add r1, r4, #0xd6 mov r2, #5 bl MemcpyFast add r0, r5, #0xc add r1, r4, #0xdb mov r2, #5 bl MemcpyFast add r0, r5, #0x12 add r1, r4, #0xe0 mov r2, #5 bl MemcpyFast add r0, r5, #0x18 add r1, r4, #0x60 mov r2, #0x20 bl MemcpyFast add r0, r5, #0x39 add r1, r4, #0x80 mov r2, #0xd bl MemcpyFast add r0, r5, #0x47 add r1, r4, #0x90 mov r2, #0xd bl MemcpyFast add r0, r5, #0x55 add r1, r4, #0xa0 mov r2, #0xd bl MemcpyFast add r0, r5, #0x63 add r1, r4, #0xb0 mov r2, #0xd bl MemcpyFast add r0, r5, #0x71 add r1, r4, #0x40 mov r2, #0x20 bl MemcpyFast ldrb r2, [r4, #0xe6] mov r1, #1 add r0, r4, #0xf0 bic r2, r2, #3 orr r2, r2, #2 strb r2, [r4, #0xe6] and r2, r2, #0xff bic r2, r2, #0xfc strb r2, [r4, #0xe6] strb r1, [r4, #0xe7] mov r1, #0 mov r2, #4 bl MemsetFast mov r0, #1 strb r0, [r4, #0xf5] strb r0, [r4, #0xf6] bl ov02_02347A1C ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _02347D18: .word ov02_0235AB48 arm_func_end ov02_02347C0C arm_func_start ov02_02347D1C ov02_02347D1C: ; 0x02347D1C ldr r0, _02347D28 ; =ov02_0235AB48 ldr r0, [r0] bx lr .align 2, 0 _02347D28: .word ov02_0235AB48 arm_func_end ov02_02347D1C arm_func_start ov02_02347D2C ov02_02347D2C: ; 0x02347D2C stmdb sp!, {r3, r4, r5, lr} ldr r1, _02347D64 ; =ov02_0235AB48 mov r5, r0 ldr r0, [r1] mov r1, #0 add r4, r0, r5, lsl #8 mov r0, r4 mov r2, #0xef bl MemsetFast mov r1, #0xff mov r0, r5 strb r1, [r4, #0xe7] bl ov02_02347E18 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _02347D64: .word ov02_0235AB48 arm_func_end ov02_02347D2C arm_func_start ov02_02347D68 ov02_02347D68: ; 0x02347D68 stmdb sp!, {r3, r4, r5, r6, r7, r8, lr} sub sp, sp, #0x14 ldr r1, _02347E14 ; =ov02_0235AB48 mov r0, #0 ldr r1, [r1] mov r2, #0x400 bl ArrayFill16 ldr r0, _02347E14 ; =ov02_0235AB48 mov r3, #0 mov r2, #0xff _02347D90: ldr r1, [r0] add r1, r1, r3, lsl #8 add r3, r3, #1 strb r2, [r1, #0xe7] cmp r3, #3 blt _02347D90 add r0, sp, #0 bl ov00_022EE650 add r0, sp, #0 bl ov00_022EDF4C mov r8, #0 ldr r4, _02347E14 ; =ov02_0235AB48 mov r6, r0 mov r7, r8 mov r5, #0xe _02347DCC: ldr r1, [r4] mov r0, r6 add r1, r1, r7 mov r2, r5 add r1, r1, #0xf0 bl MemcpyFast add r8, r8, #1 cmp r8, #2 add r7, r7, #0x100 blt _02347DCC mov r4, #0 _02347DF8: mov r0, r4 bl ov02_02347E18 add r4, r4, #1 cmp r4, #4 blt _02347DF8 add sp, sp, #0x14 ldmia sp!, {r3, r4, r5, r6, r7, r8, pc} .align 2, 0 _02347E14: .word ov02_0235AB48 arm_func_end ov02_02347D68 arm_func_start ov02_02347E18 ov02_02347E18: ; 0x02347E18 stmdb sp!, {r3, r4, r5, r6, r7, r8, lr} sub sp, sp, #0x14 ldr r1, _02347F7C ; =ov02_0235AB48 mov r7, r0 ldr r0, [r1] mov r6, #0 add r2, r0, r7, lsl #8 ldrb r5, [r2, #0xe7] add r0, sp, #4 mov r1, r6 mov r2, #0x10 mov r4, #1 bl MemsetFast add r0, sp, #4 mov r2, r4 str r2, [r0, r7, lsl #2] cmp r7, #2 bgt _02347EF4 ldr r0, _02347F7C ; =ov02_0235AB48 ldr r0, [r0] ldrb r1, [r0, #0xef] tst r1, r4, lsl r7 movne r6, r2 cmp r5, #0xff bne _02347EB8 cmp r6, #0 beq _02347EB8 ldrb r1, [r0, #0xef] mvn r3, r4, lsl r7 and r2, r1, r3 ldr r1, _02347F7C ; =ov02_0235AB48 strb r2, [r0, #0xef] ldr r2, [r1] mov r0, #1 ldrb r1, [r2, #0x1ef] and r1, r1, r3 strb r1, [r2, #0x1ef] str r0, [sp, #8] str r0, [sp, #4] b _02347EF4 _02347EB8: cmp r5, #0xff beq _02347EF4 cmp r6, #0 bne _02347EF4 ldrb r3, [r0, #0xef] ldr r1, _02347F7C ; =ov02_0235AB48 mov r2, #1 orr r3, r3, r4, lsl r7 strb r3, [r0, #0xef] ldr r1, [r1] ldrb r0, [r1, #0x1ef] orr r0, r0, r4, lsl r7 strb r0, [r1, #0x1ef] str r2, [sp, #8] str r2, [sp, #4] _02347EF4: mov r6, #0 ldr r8, _02347F7C ; =ov02_0235AB48 mov r7, r6 mov r4, #0xfe add r5, sp, #4 _02347F08: ldr r0, [r5, r6, lsl #2] cmp r0, #0 beq _02347F38 ldr r1, [r8] mov r2, r4 add r0, r1, #0xf8 add r0, r0, #0x400 add r1, r1, r7 bl sub_02085158 ldr r1, [r8] add r1, r1, r6, lsl #8 strh r0, [r1, #0xfe] _02347F38: add r6, r6, #1 cmp r6, #4 add r7, r7, #0x100 blt _02347F08 mov r0, #0x100 mov r1, #0x20 bl ov02_0234E7B4 mov r2, r0 ldr r0, _02347F7C ; =ov02_0235AB48 add r1, sp, #4 ldr r0, [r0] str r2, [sp] bl ov00_022ED68C add r0, sp, #0 bl ov02_0234E7D8 add sp, sp, #0x14 ldmia sp!, {r3, r4, r5, r6, r7, r8, pc} .align 2, 0 _02347F7C: .word ov02_0235AB48 arm_func_end ov02_02347E18 arm_func_start ov02_02347F80 ov02_02347F80: ; 0x02347F80 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} mov sl, r0 mov sb, r1 add r0, sp, #0 mov r1, #0 mov r2, #4 bl MemsetFast mov r7, #0 mov r8, r7 mov r4, #0x20 add r6, sp, #0 mov r5, #3 mov fp, r7 _02347FB4: mov r1, r6 mov r2, r5 add r0, sl, r8 bl MemcpyFast mov r1, fp mov r2, r6 _02347FCC: ldrb r0, [r2] cmp r0, #0 bne _02347FE8 add r1, r1, #1 cmp r1, #3 strb r4, [r2], #1 blt _02347FCC _02347FE8: mov r0, r6 bl sub_0208B360 strb r0, [sb, r7] add r7, r7, #1 cmp r7, #4 add r8, r8, #3 blt _02347FB4 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} arm_func_end ov02_02347F80 arm_func_start ov02_02348008 ov02_02348008: ; 0x02348008 cmp r0, #0x39 subls r0, r0, #0x30 bxls lr cmp r0, #0x46 subls r0, r0, #0x37 subhi r0, r0, #0x57 bx lr arm_func_end ov02_02348008 arm_func_start ov02_02348024 ov02_02348024: ; 0x02348024 stmdb sp!, {r3, lr} mov r0, #0xa0 mov r1, #4 bl ov02_0234E7B4 ldr r2, _023480A8 ; =ov02_0235AB4C add r1, sp, #0 str r0, [r2] ldr r0, _023480AC ; =ov02_02353D54 mov r2, #0x20 bl ov02_0234CE84 ldr r1, _023480A8 ; =ov02_0235AB4C ldr r1, [r1] str r0, [r1, #0x98] bl ov02_0232BD18 ldr r0, _023480A8 ; =ov02_0235AB4C ldr r0, [r0] ldr r1, [r0, #0x98] bl ov02_0232CAC0 mov r0, #0 bl ov02_0232D7B0 ldr r0, _023480A8 ; =ov02_0235AB4C ldr r0, [r0] add r0, r0, #0x94 bl ov02_0232BF78 mov r0, #0 ldr r1, _023480B0 ; =ov02_02348168 mov r2, r0 mov r3, #0xc8 bl ov02_0234FA98 ldr r1, _023480A8 ; =ov02_0235AB4C ldr r1, [r1] str r0, [r1, #0x9c] ldmia sp!, {r3, pc} .align 2, 0 _023480A8: .word ov02_0235AB4C _023480AC: .word ov02_02353D54 _023480B0: .word ov02_02348168 arm_func_end ov02_02348024 arm_func_start ov02_023480B4 ov02_023480B4: ; 0x023480B4 stmdb sp!, {r3, lr} ldr r1, _023480D8 ; =ov02_0235AB4C mov r0, #0 ldr r1, [r1] ldr r1, [r1, #0x9c] bl ov02_0234FB40 ldr r0, _023480DC ; =ov02_0235AB4C bl ov02_0234E7D8 ldmia sp!, {r3, pc} .align 2, 0 _023480D8: .word ov02_0235AB4C _023480DC: .word ov02_0235AB4C arm_func_end ov02_023480B4 arm_func_start ov02_023480E0 ov02_023480E0: ; 0x023480E0 ldr r1, _023480FC ; =ov02_0235AB4C mov r2, r0 ldr r0, [r1] ldr ip, _02348100 ; =ov02_0232D84C mov r1, #0 add r0, r0, #0x94 bx ip .align 2, 0 _023480FC: .word ov02_0235AB4C _02348100: .word ov02_0232D84C arm_func_end ov02_023480E0 arm_func_start ov02_02348104 ov02_02348104: ; 0x02348104 ldr r2, _0234811C ; =ov02_0235AB4C mov r1, r0 ldr r0, [r2] ldr ip, _02348120 ; =ov02_0232BFA4 add r0, r0, #0x94 bx ip .align 2, 0 _0234811C: .word ov02_0235AB4C _02348120: .word ov02_0232BFA4 arm_func_end ov02_02348104 arm_func_start ov02_02348124 ov02_02348124: ; 0x02348124 ldr r2, _02348140 ; =ov02_0235AB4C ldr ip, _02348144 ; =ov02_0232BFEC ldr r3, [r2] mov r2, r1 mov r1, r0 add r0, r3, #0x94 bx ip .align 2, 0 _02348140: .word ov02_0235AB4C _02348144: .word ov02_0232BFEC arm_func_end ov02_02348124 arm_func_start ov02_02348148 ov02_02348148: ; 0x02348148 ldr r0, _02348160 ; =ov02_0235AB4C ldr ip, _02348164 ; =ov02_0232BF68 ldr r0, [r0] mov r1, #0 add r0, r0, #0x94 bx ip .align 2, 0 _02348160: .word ov02_0235AB4C _02348164: .word ov02_0232BF68 arm_func_end ov02_02348148 arm_func_start ov02_02348168 ov02_02348168: ; 0x02348168 ldr ip, _02348170 ; =ov02_0232BDA0 bx ip .align 2, 0 _02348170: .word ov02_0232BDA0 arm_func_end ov02_02348168 arm_func_start ov02_02348174 ov02_02348174: ; 0x02348174 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} str r0, [sp] mov r0, #0x1c mov r1, #4 bl ov02_0234E7B4 ldr r1, [sp] ldr r4, _0234825C ; =ov02_0235AB50 add r3, r1, r1, lsl #2 ldr r2, _02348260 ; =ov02_02352DC8 ldr r1, _02348264 ; =ov02_02352DD7 mov r8, #0 mvn r7, #0 ldr r5, _02348268 ; =ov02_02352DE6 str r0, [r4, #4] add sb, r2, r3 add sl, r1, r3 sub r6, r7, #0x29 mov fp, r8 _023481BC: ldrb r1, [sb], #1 mov r0, #1 mov r2, r0 bl ov02_0234D6D8 ldr r2, [r4, #4] mov r1, r7 str r0, [r2, r8, lsl #2] ldr r0, [r4, #4] mov r2, fp ldr r0, [r0, r8, lsl #2] bl ov02_0234D530 ldr r0, [r4, #4] add r3, r5, r8, lsl #2 ldrh r3, [r3, #2] ldr r0, [r0, r8, lsl #2] mov r1, r7 mov r2, r6 bl ov02_0234D440 ldr r0, [r4, #4] ldrb r3, [sl], #1 ldr r0, [r0, r8, lsl #2] mov r1, r7 mov r2, #0 bl ov02_0234D3C0 add r8, r8, #1 cmp r8, #5 blt _023481BC mov r0, #0 ldr r1, _0234826C ; =ov02_02348270 mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _0234825C ; =ov02_0235AB50 ldr r1, [r1, #4] str r0, [r1, #0x14] ldr r0, [sp] bl ov02_02348C1C mov r0, #0xd bl ov02_023480E0 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _0234825C: .word ov02_0235AB50 _02348260: .word ov02_02352DC8 _02348264: .word ov02_02352DD7 _02348268: .word ov02_02352DE6 _0234826C: .word ov02_02348270 arm_func_end ov02_02348174 arm_func_start ov02_02348270 ov02_02348270: ; 0x02348270 stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #8 ldr r1, _02348348 ; =ov02_0235AB50 mov r4, r0 ldr r0, [r1, #4] add r2, sp, #4 ldr r0, [r0] add r3, sp, #0 mov r1, #0 bl ov02_0234D590 ldr r0, [sp, #4] add r0, r0, #8 str r0, [sp, #4] cmp r0, #0x20 blt _023482B4 cmp r0, #0x100 ble _023482F4 _023482B4: ldr r5, _0234834C ; =ov02_02352DE6 ldr r4, _02348348 ; =ov02_0235AB50 mov r7, #0 mvn r6, #0 _023482C4: add r0, r5, r7, lsl #2 ldr r1, [r4, #4] ldrh r3, [r0, #2] ldr r0, [r1, r7, lsl #2] ldr r2, [sp, #4] mov r1, r6 bl ov02_0234D440 add r7, r7, #1 cmp r7, #5 blt _023482C4 add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} _023482F4: mov r0, #0x20 ldr r6, _0234834C ; =ov02_02352DE6 ldr r5, _02348348 ; =ov02_0235AB50 str r0, [sp, #4] mov r8, #0 mvn r7, #0 _0234830C: add r0, r6, r8, lsl #2 ldr r1, [r5, #4] ldrh r3, [r0, #2] ldr r0, [r1, r8, lsl #2] ldr r2, [sp, #4] mov r1, r7 bl ov02_0234D440 add r8, r8, #1 cmp r8, #5 blt _0234830C ldr r1, _02348350 ; =ov02_02348354 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _02348348: .word ov02_0235AB50 _0234834C: .word ov02_02352DE6 _02348350: .word ov02_02348354 arm_func_end ov02_02348270 arm_func_start ov02_02348354 ov02_02348354: ; 0x02348354 stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #8 ldr r1, _0234842C ; =ov02_0235AB50 mov r4, r0 ldr r0, [r1, #4] add r2, sp, #4 ldr r0, [r0, #4] add r3, sp, #0 mov r1, #0 bl ov02_0234D590 ldr r0, [sp, #4] add r0, r0, #8 str r0, [sp, #4] cmp r0, #0x50 blt _02348398 cmp r0, #0x100 ble _023483D8 _02348398: ldr r5, _02348430 ; =ov02_02352DE6 ldr r4, _0234842C ; =ov02_0235AB50 mov r7, #1 mvn r6, #0 _023483A8: add r0, r5, r7, lsl #2 ldr r1, [r4, #4] ldrh r3, [r0, #2] ldr r0, [r1, r7, lsl #2] ldr r2, [sp, #4] mov r1, r6 bl ov02_0234D440 add r7, r7, #1 cmp r7, #5 blt _023483A8 add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} _023483D8: mov r0, #0x50 ldr r6, _02348430 ; =ov02_02352DE6 ldr r5, _0234842C ; =ov02_0235AB50 str r0, [sp, #4] mov r8, #1 mvn r7, #0 _023483F0: add r0, r6, r8, lsl #2 ldr r1, [r5, #4] ldrh r3, [r0, #2] ldr r0, [r1, r8, lsl #2] ldr r2, [sp, #4] mov r1, r7 bl ov02_0234D440 add r8, r8, #1 cmp r8, #5 blt _023483F0 ldr r1, _02348434 ; =ov02_02348438 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _0234842C: .word ov02_0235AB50 _02348430: .word ov02_02352DE6 _02348434: .word ov02_02348438 arm_func_end ov02_02348354 arm_func_start ov02_02348438 ov02_02348438: ; 0x02348438 stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #8 ldr r1, _02348510 ; =ov02_0235AB50 mov r4, r0 ldr r0, [r1, #4] add r2, sp, #4 ldr r0, [r0, #8] add r3, sp, #0 mov r1, #0 bl ov02_0234D590 ldr r0, [sp, #4] add r0, r0, #8 str r0, [sp, #4] cmp r0, #0x68 blt _0234847C cmp r0, #0x100 ble _023484BC _0234847C: ldr r5, _02348514 ; =ov02_02352DE6 ldr r4, _02348510 ; =ov02_0235AB50 mov r7, #2 mvn r6, #0 _0234848C: add r0, r5, r7, lsl #2 ldr r1, [r4, #4] ldrh r3, [r0, #2] ldr r0, [r1, r7, lsl #2] ldr r2, [sp, #4] mov r1, r6 bl ov02_0234D440 add r7, r7, #1 cmp r7, #5 blt _0234848C add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} _023484BC: mov r0, #0x68 ldr r6, _02348514 ; =ov02_02352DE6 ldr r5, _02348510 ; =ov02_0235AB50 str r0, [sp, #4] mov r8, #2 mvn r7, #0 _023484D4: add r0, r6, r8, lsl #2 ldr r1, [r5, #4] ldrh r3, [r0, #2] ldr r0, [r1, r8, lsl #2] ldr r2, [sp, #4] mov r1, r7 bl ov02_0234D440 add r8, r8, #1 cmp r8, #5 blt _023484D4 ldr r1, _02348518 ; =ov02_0234851C mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _02348510: .word ov02_0235AB50 _02348514: .word ov02_02352DE6 _02348518: .word ov02_0234851C arm_func_end ov02_02348438 arm_func_start ov02_0234851C ov02_0234851C: ; 0x0234851C stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #8 ldr r1, _023485F4 ; =ov02_0235AB50 mov r4, r0 ldr r0, [r1, #4] add r2, sp, #4 ldr r0, [r0, #0xc] add r3, sp, #0 mov r1, #0 bl ov02_0234D590 ldr r0, [sp, #4] add r0, r0, #8 str r0, [sp, #4] cmp r0, #0x98 blt _02348560 cmp r0, #0x100 ble _023485A0 _02348560: ldr r5, _023485F8 ; =ov02_02352DE6 ldr r4, _023485F4 ; =ov02_0235AB50 mov r7, #3 mvn r6, #0 _02348570: add r0, r5, r7, lsl #2 ldr r1, [r4, #4] ldrh r3, [r0, #2] ldr r0, [r1, r7, lsl #2] ldr r2, [sp, #4] mov r1, r6 bl ov02_0234D440 add r7, r7, #1 cmp r7, #5 blt _02348570 add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} _023485A0: mov r0, #0x98 ldr r6, _023485F8 ; =ov02_02352DE6 ldr r5, _023485F4 ; =ov02_0235AB50 str r0, [sp, #4] mov r8, #3 mvn r7, #0 _023485B8: add r0, r6, r8, lsl #2 ldr r1, [r5, #4] ldrh r3, [r0, #2] ldr r0, [r1, r8, lsl #2] ldr r2, [sp, #4] mov r1, r7 bl ov02_0234D440 add r8, r8, #1 cmp r8, #5 blt _023485B8 ldr r1, _023485FC ; =ov02_02348600 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _023485F4: .word ov02_0235AB50 _023485F8: .word ov02_02352DE6 _023485FC: .word ov02_02348600 arm_func_end ov02_0234851C arm_func_start ov02_02348600 ov02_02348600: ; 0x02348600 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _02348698 ; =ov02_0235AB50 mov r4, r0 ldr r0, [r1, #4] add r2, sp, #4 ldr r0, [r0, #0x10] add r3, sp, #0 mov r1, #0 bl ov02_0234D590 ldr r0, [sp, #4] add r2, r0, #8 str r2, [sp, #4] cmp r2, #0xb0 blt _02348644 cmp r2, #0x100 ble _02348664 _02348644: ldr r0, _02348698 ; =ov02_0235AB50 mvn r1, #0 ldr r0, [r0, #4] mov r3, #0x21 ldr r0, [r0, #0x10] bl ov02_0234D440 add sp, sp, #8 ldmia sp!, {r4, pc} _02348664: ldr r0, _02348698 ; =ov02_0235AB50 mov r2, #0xb0 ldr r0, [r0, #4] str r2, [sp, #4] ldr r0, [r0, #0x10] sub r1, r2, #0xb1 mov r3, #0x21 bl ov02_0234D440 ldr r1, _0234869C ; =ov02_023486A0 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _02348698: .word ov02_0235AB50 _0234869C: .word ov02_023486A0 arm_func_end ov02_02348600 arm_func_start ov02_023486A0 ov02_023486A0: ; 0x023486A0 stmdb sp!, {r3, lr} mov r1, r0 mov r0, #0 bl ov02_0234FB40 ldr r0, _023486C4 ; =ov02_0235AB50 mov r1, #0 ldr r0, [r0, #4] str r1, [r0, #0x14] ldmia sp!, {r3, pc} .align 2, 0 _023486C4: .word ov02_0235AB50 arm_func_end ov02_023486A0 arm_func_start ov02_023486C8 ov02_023486C8: ; 0x023486C8 stmdb sp!, {r3, lr} ldr r1, _02348700 ; =ov02_0235AB50 mov r0, #0 ldr ip, [r1, #4] mov lr, #1 ldr r1, _02348704 ; =ov02_023487F0 mov r2, r0 mov r3, #0x78 strb lr, [ip, #0x18] bl ov02_0234FA98 ldr r1, _02348700 ; =ov02_0235AB50 ldr r1, [r1, #4] str r0, [r1, #0x14] ldmia sp!, {r3, pc} .align 2, 0 _02348700: .word ov02_0235AB50 _02348704: .word ov02_023487F0 arm_func_end ov02_023486C8 arm_func_start ov02_02348708 ov02_02348708: ; 0x02348708 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} str r0, [sp] add r2, r0, r0, lsl #2 ldr r1, _023487C0 ; =ov02_02352DC8 ldr r0, _023487C4 ; =ov02_02352DD7 mov r8, #0 ldr r5, _023487C8 ; =ov02_02352DE6 ldr r4, _023487CC ; =ov02_0235AB50 add sb, r1, r2 add sl, r0, r2 mov r7, r8 mov fp, #1 mvn r6, #0 _0234873C: ldr r0, [r4, #4] mov r1, r7 ldr r0, [r0, r8, lsl #2] bl ov02_0234D308 mov r2, r0 ldrb r1, [sb], #2 mov r0, fp bl ov02_0234D618 ldr r0, [r4, #4] mov r1, r6 ldr r0, [r0, r8, lsl #2] mov r2, #0 bl ov02_0234D530 ldr r0, [r4, #4] mov r1, r8, lsl #2 add r3, r5, r8, lsl #2 ldrh r2, [r5, r1] ldrh r3, [r3, #2] ldr r0, [r0, r8, lsl #2] mov r1, r6 bl ov02_0234D440 ldr r0, [r4, #4] ldrb r3, [sl], #2 ldr r0, [r0, r8, lsl #2] mov r1, r6 mov r2, #0 bl ov02_0234D3C0 add r8, r8, #2 cmp r8, #5 blt _0234873C ldr r0, [sp] bl ov02_02348C1C ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _023487C0: .word ov02_02352DC8 _023487C4: .word ov02_02352DD7 _023487C8: .word ov02_02352DE6 _023487CC: .word ov02_0235AB50 arm_func_end ov02_02348708 arm_func_start ov02_023487D0 ov02_023487D0: ; 0x023487D0 ldr r0, _023487EC ; =ov02_0235AB50 ldr r0, [r0, #4] ldr r0, [r0, #0x14] cmp r0, #0 movne r0, #1 moveq r0, #0 bx lr .align 2, 0 _023487EC: .word ov02_0235AB50 arm_func_end ov02_023487D0 arm_func_start ov02_023487F0 ov02_023487F0: ; 0x023487F0 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _0234887C ; =ov02_0235AB50 mov r4, r0 ldr r0, [r1, #4] add r2, sp, #4 ldr r0, [r0, #0x10] add r3, sp, #0 mov r1, #0 bl ov02_0234D590 ldr r0, [sp, #4] mov r3, #0x21 sub r2, r0, #8 str r2, [sp, #4] cmp r2, #0x98 ble _0234884C ldr r0, _0234887C ; =ov02_0235AB50 mvn r1, #0 ldr r0, [r0, #4] ldr r0, [r0, #0x10] bl ov02_0234D440 add sp, sp, #8 ldmia sp!, {r4, pc} _0234884C: ldr r0, _0234887C ; =ov02_0235AB50 mov r2, #0x98 ldr r0, [r0, #4] str r2, [sp, #4] ldr r0, [r0, #0x10] sub r1, r2, #0x99 bl ov02_0234D440 ldr r1, _02348880 ; =ov02_02348884 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _0234887C: .word ov02_0235AB50 _02348880: .word ov02_02348884 arm_func_end ov02_023487F0 arm_func_start ov02_02348884 ov02_02348884: ; 0x02348884 stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #8 ldr r1, _02348954 ; =ov02_0235AB50 mov r4, r0 ldr r0, [r1, #4] add r2, sp, #4 ldr r0, [r0, #0xc] add r3, sp, #0 mov r1, #0 bl ov02_0234D590 ldr r0, [sp, #4] sub r0, r0, #8 str r0, [sp, #4] cmp r0, #0x68 ble _02348900 ldr r5, _02348958 ; =ov02_02352DE6 ldr r4, _02348954 ; =ov02_0235AB50 mov r7, #3 mvn r6, #0 _023488D0: add r0, r5, r7, lsl #2 ldr r1, [r4, #4] ldrh r3, [r0, #2] ldr r0, [r1, r7, lsl #2] ldr r2, [sp, #4] mov r1, r6 bl ov02_0234D440 add r7, r7, #1 cmp r7, #5 blt _023488D0 add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} _02348900: mov r0, #0x68 ldr r6, _02348958 ; =ov02_02352DE6 ldr r5, _02348954 ; =ov02_0235AB50 str r0, [sp, #4] mov r8, #3 mvn r7, #0 _02348918: add r0, r6, r8, lsl #2 ldr r1, [r5, #4] ldrh r3, [r0, #2] ldr r0, [r1, r8, lsl #2] ldr r2, [sp, #4] mov r1, r7 bl ov02_0234D440 add r8, r8, #1 cmp r8, #5 blt _02348918 ldr r1, _0234895C ; =ov02_02348960 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _02348954: .word ov02_0235AB50 _02348958: .word ov02_02352DE6 _0234895C: .word ov02_02348960 arm_func_end ov02_02348884 arm_func_start ov02_02348960 ov02_02348960: ; 0x02348960 stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #8 ldr r1, _02348A30 ; =ov02_0235AB50 mov r4, r0 ldr r0, [r1, #4] add r2, sp, #4 ldr r0, [r0, #8] add r3, sp, #0 mov r1, #0 bl ov02_0234D590 ldr r0, [sp, #4] sub r0, r0, #8 str r0, [sp, #4] cmp r0, #0x50 ble _023489DC ldr r5, _02348A34 ; =ov02_02352DE6 ldr r4, _02348A30 ; =ov02_0235AB50 mov r7, #2 mvn r6, #0 _023489AC: add r0, r5, r7, lsl #2 ldr r1, [r4, #4] ldrh r3, [r0, #2] ldr r0, [r1, r7, lsl #2] ldr r2, [sp, #4] mov r1, r6 bl ov02_0234D440 add r7, r7, #1 cmp r7, #5 blt _023489AC add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} _023489DC: mov r0, #0x50 ldr r6, _02348A34 ; =ov02_02352DE6 ldr r5, _02348A30 ; =ov02_0235AB50 str r0, [sp, #4] mov r8, #2 mvn r7, #0 _023489F4: add r0, r6, r8, lsl #2 ldr r1, [r5, #4] ldrh r3, [r0, #2] ldr r0, [r1, r8, lsl #2] ldr r2, [sp, #4] mov r1, r7 bl ov02_0234D440 add r8, r8, #1 cmp r8, #5 blt _023489F4 ldr r1, _02348A38 ; =ov02_02348A3C mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _02348A30: .word ov02_0235AB50 _02348A34: .word ov02_02352DE6 _02348A38: .word ov02_02348A3C arm_func_end ov02_02348960 arm_func_start ov02_02348A3C ov02_02348A3C: ; 0x02348A3C stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #8 ldr r1, _02348B0C ; =ov02_0235AB50 mov r4, r0 ldr r0, [r1, #4] add r2, sp, #4 ldr r0, [r0, #4] add r3, sp, #0 mov r1, #0 bl ov02_0234D590 ldr r0, [sp, #4] sub r0, r0, #8 str r0, [sp, #4] cmp r0, #0x20 ble _02348AB8 ldr r5, _02348B10 ; =ov02_02352DE6 ldr r4, _02348B0C ; =ov02_0235AB50 mov r7, #1 mvn r6, #0 _02348A88: add r0, r5, r7, lsl #2 ldr r1, [r4, #4] ldrh r3, [r0, #2] ldr r0, [r1, r7, lsl #2] ldr r2, [sp, #4] mov r1, r6 bl ov02_0234D440 add r7, r7, #1 cmp r7, #5 blt _02348A88 add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} _02348AB8: mov r0, #0x20 ldr r6, _02348B10 ; =ov02_02352DE6 ldr r5, _02348B0C ; =ov02_0235AB50 str r0, [sp, #4] mov r8, #1 mvn r7, #0 _02348AD0: add r0, r6, r8, lsl #2 ldr r1, [r5, #4] ldrh r3, [r0, #2] ldr r0, [r1, r8, lsl #2] ldr r2, [sp, #4] mov r1, r7 bl ov02_0234D440 add r8, r8, #1 cmp r8, #5 blt _02348AD0 ldr r1, _02348B14 ; =ov02_02348B18 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _02348B0C: .word ov02_0235AB50 _02348B10: .word ov02_02352DE6 _02348B14: .word ov02_02348B18 arm_func_end ov02_02348A3C arm_func_start ov02_02348B18 ov02_02348B18: ; 0x02348B18 stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #8 ldr r1, _02348BE0 ; =ov02_0235AB50 mov r5, r0 ldr r0, [r1, #4] add r2, sp, #4 ldr r0, [r0] add r3, sp, #0 mov r1, #0 bl ov02_0234D590 ldr r0, [sp, #4] ldr r7, _02348BE4 ; =ov02_02352DE6 sub r0, r0, #8 ldr r6, _02348BE0 ; =ov02_0235AB50 mov r4, #0 str r0, [sp, #4] mvn r8, #0 _02348B5C: add r0, r7, r4, lsl #2 ldr r1, [r6, #4] ldrh r3, [r0, #2] ldr r0, [r1, r4, lsl #2] ldr r2, [sp, #4] mov r1, r8 bl ov02_0234D440 add r4, r4, #1 cmp r4, #5 blt _02348B5C ldr r1, [sp, #4] ldr r0, _02348BE8 ; =0x000001D6 cmp r1, r0 addgt sp, sp, #8 ldmgtia sp!, {r4, r5, r6, r7, r8, pc} cmp r1, #0x100 addlt sp, sp, #8 ldmltia sp!, {r4, r5, r6, r7, r8, pc} mov r1, r5 mov r0, #0 bl ov02_0234FB40 ldr r4, _02348BE0 ; =ov02_0235AB50 mov r5, #0 _02348BB8: ldr r0, [r4, #4] ldr r0, [r0, r5, lsl #2] bl ov02_0234D288 add r5, r5, #1 cmp r5, #5 blt _02348BB8 ldr r0, _02348BEC ; =ov02_0235AB54 bl ov02_0234E7D8 add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _02348BE0: .word ov02_0235AB50 _02348BE4: .word ov02_02352DE6 _02348BE8: .word 0x000001D6 _02348BEC: .word ov02_0235AB54 arm_func_end ov02_02348B18 arm_func_start ov02_02348BF0 ov02_02348BF0: ; 0x02348BF0 ldr r0, _02348C18 ; =ov02_0235AB50 ldr r0, [r0, #4] cmp r0, #0 moveq r0, #1 bxeq lr ldrb r0, [r0, #0x18] cmp r0, #0 moveq r0, #1 movne r0, #0 bx lr .align 2, 0 _02348C18: .word ov02_0235AB50 arm_func_end ov02_02348BF0 arm_func_start ov02_02348C1C ov02_02348C1C: ; 0x02348C1C stmdb sp!, {r3, lr} ldr r1, _02348C58 ; =ov02_02353DD0 ldr r0, [r1, r0, lsl #2] bl ov02_02334D48 mov r1, #0 mov r2, #4 bl ov02_0234CE84 ldr r2, _02348C5C ; =ov02_0235AB50 ldr r1, _02348C60 ; =ov02_02348C64 str r0, [r2] mov r0, #1 mov r2, #0 mov r3, #0x78 bl ov02_0234FA98 ldmia sp!, {r3, pc} .align 2, 0 _02348C58: .word ov02_02353DD0 _02348C5C: .word ov02_0235AB50 _02348C60: .word ov02_02348C64 arm_func_end ov02_02348C1C arm_func_start ov02_02348C64 ov02_02348C64: ; 0x02348C64 stmdb sp!, {r4, lr} ldr r1, _02348CAC ; =ov02_0235AB50 mov r4, r0 ldr r0, [r1] mov r1, #0x600 bl DC_FlushRange ldr r0, _02348CAC ; =ov02_0235AB50 mov r1, #0 ldr r0, [r0] mov r2, #0x600 bl GXS_LoadBG1Scr ldr r0, _02348CAC ; =ov02_0235AB50 ldr r0, [r0] bl ov02_0234CF78 mov r1, r4 mov r0, #1 bl ov02_0234FB40 ldmia sp!, {r4, pc} .align 2, 0 _02348CAC: .word ov02_0235AB50 arm_func_end ov02_02348C64 arm_func_start ov02_02348CB0 ov02_02348CB0: ; 0x02348CB0 stmdb sp!, {r4, r5, lr} sub sp, sp, #0x54 mov r4, r0 ldr r0, _02348E18 ; =0x00001BA0 mov r1, #0x20 bl ov02_0234E7B4 ldr r2, _02348E1C ; =ov02_0235AB58 add r1, r0, #0x1000 str r0, [r2] str r4, [r1, #0x370] bl sub_0207AE44 ldr r4, _02348E1C ; =ov02_0235AB58 mov r2, #3 ldr r3, [r4] add r3, r3, #0x1000 str r0, [r3, #0xb88] str r1, [r3, #0xb8c] ldr r0, [r4] ldr r1, _02348E20 ; =ov02_02348F64 bl ov00_022BFB14 cmp r0, #2 bne _02348E04 _02348D08: ldr r0, [r4] add r0, r0, #0x3b8 add r0, r0, #0x1000 bl ov00_022BF3E0 ldr ip, [r4] add r0, ip, #0x1300 ldrh r0, [r0, #0xb8] cmp r0, #2 bne _02348D08 add r0, ip, #0x374 ldr r5, _02348E24 ; =ov02_02352E10 add lr, r0, #0x1000 mov r4, #4 _02348D3C: ldmia r5!, {r0, r1, r2, r3} stmia lr!, {r0, r1, r2, r3} subs r4, r4, #1 bne _02348D3C ldr r0, [r5] add r1, ip, #0xf00 str r0, [lr] add r0, ip, #0x1000 str r1, [r0, #0x374] bl ov00_022BF780 ldr r1, _02348E1C ; =ov02_0235AB58 ldr r1, [r1] add r1, r1, #0x1300 strh r0, [r1, #0x7c] add r0, sp, #0 bl GetDsFirmwareUserSettings ldr r1, _02348E1C ; =ov02_0235AB58 ldr r0, _02348E28 ; =ov02_02352E04 ldr r1, [r1] mov r2, #8 add r1, r1, #0x388 add r1, r1, #0x1000 bl MemcpyFast ldr r2, _02348E1C ; =ov02_0235AB58 mov r3, #1 ldr r1, [r2] add r0, sp, #4 add r1, r1, #0x1000 strb r3, [r1, #0x391] ldr r1, [r2] ldrh r2, [sp, #0x1a] add r1, r1, #0x394 add r1, r1, #0x1000 mov r2, r2, lsl #1 bl MemcpyFast bl ov02_02348E34 cmp r0, #0 beq _02348E04 mov r0, #0 ldr r1, _02348E2C ; =ov02_02349258 mov r2, r0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _02348E1C ; =ov02_0235AB58 add sp, sp, #0x54 ldr r1, [r1] add r1, r1, #0x1000 str r0, [r1, #0xb90] mov r0, #1 ldmia sp!, {r4, r5, pc} _02348E04: ldr r0, _02348E30 ; =ov02_0235AB58 bl ov02_0234E7D8 mov r0, #0 add sp, sp, #0x54 ldmia sp!, {r4, r5, pc} .align 2, 0 _02348E18: .word 0x00001BA0 _02348E1C: .word ov02_0235AB58 _02348E20: .word ov02_02348F64 _02348E24: .word ov02_02352E10 _02348E28: .word ov02_02352E04 _02348E2C: .word ov02_02349258 _02348E30: .word ov02_0235AB58 arm_func_end ov02_02348CB0 arm_func_start ov02_02348E34 ov02_02348E34: ; 0x02348E34 stmdb sp!, {r3, lr} ldr r1, _02348E60 ; =ov02_0235AB58 ldr r0, _02348E64 ; =ov02_02348F64 ldr r1, [r1] add r1, r1, #0x374 add r1, r1, #0x1000 bl ov00_022BFED8 cmp r0, #2 moveq r0, #1 movne r0, #0 ldmia sp!, {r3, pc} .align 2, 0 _02348E60: .word ov02_0235AB58 _02348E64: .word ov02_02348F64 arm_func_end ov02_02348E34 arm_func_start ov02_02348E68 ov02_02348E68: ; 0x02348E68 stmdb sp!, {r4, lr} ldr r1, _02348F40 ; =ov02_0235AB58 mov r2, #1 ldr r0, [r1] add r0, r0, #0x1000 strb r2, [r0, #0xb94] ldr r0, [r1] add r0, r0, #0x3b8 add r0, r0, #0x1000 bl ov00_022BF3E0 ldr r0, _02348F40 ; =ov02_0235AB58 ldr r0, [r0] add r0, r0, #0x1300 ldrh r0, [r0, #0xb8] cmp r0, #2 beq _02348EE4 ldr r0, _02348F44 ; =ov02_02348F64 bl ov00_022BFB9C cmp r0, #2 movne r0, #0 ldmneia sp!, {r4, pc} ldr r4, _02348F40 ; =ov02_0235AB58 _02348EC0: ldr r0, [r4] add r0, r0, #0x3b8 add r0, r0, #0x1000 bl ov00_022BF3E0 ldr r0, [r4] add r0, r0, #0x1300 ldrh r0, [r0, #0xb8] cmp r0, #2 bne _02348EC0 _02348EE4: ldr r0, _02348F44 ; =ov02_02348F64 bl ov00_022BFBD4 cmp r0, #2 movne r0, #0 ldmneia sp!, {r4, pc} ldr r0, _02348F40 ; =ov02_0235AB58 ldr r0, [r0] add r0, r0, #0x1000 ldr r1, [r0, #0xb90] cmp r1, #0 beq _02348F18 mov r0, #0 bl ov02_0234FB60 _02348F18: ldr r0, _02348F40 ; =ov02_0235AB58 ldr r0, [r0] add r0, r0, #0x1000 _02348F24: ldrb r1, [r0, #0xb94] cmp r1, #2 bne _02348F24 ldr r0, _02348F48 ; =ov02_0235AB58 bl ov02_0234E7D8 mov r0, #1 ldmia sp!, {r4, pc} .align 2, 0 _02348F40: .word ov02_0235AB58 _02348F44: .word ov02_02348F64 _02348F48: .word ov02_0235AB58 arm_func_end ov02_02348E68 arm_func_start ov02_02348F4C ov02_02348F4C: ; 0x02348F4C ldr r1, _02348F60 ; =ov02_0235AB58 ldr r1, [r1] add r1, r1, #0x1000 str r0, [r1, #0x370] bx lr .align 2, 0 _02348F60: .word ov02_0235AB58 arm_func_end ov02_02348F4C arm_func_start ov02_02348F64 ov02_02348F64: ; 0x02348F64 stmdb sp!, {r3, lr} ldrh r1, [r0, #2] cmp r1, #0 ldmneia sp!, {r3, pc} ldr r1, _02348FF0 ; =ov02_0235AB58 ldr r1, [r1] add r1, r1, #0x1000 ldrb r2, [r1, #0xb94] cmp r2, #0 beq _02348FA0 ldrh r0, [r0] cmp r0, #2 moveq r0, #2 streqb r0, [r1, #0xb94] ldmia sp!, {r3, pc} _02348FA0: ldrh r2, [r0] cmp r2, #0x26 ldmneia sp!, {r3, pc} ldrh r2, [r0, #8] cmp r2, #4 beq _02348FE0 cmp r2, #5 bne _02348FE8 ldrb r1, [r1, #0xb96] cmp r1, #0 beq _02348FD4 bl ov02_0234914C b _02348FD8 _02348FD4: bl ov02_02348FF4 _02348FD8: bl ov02_02348E34 ldmia sp!, {r3, pc} _02348FE0: bl ov02_02348E34 ldmia sp!, {r3, pc} _02348FE8: bl WaitForever2 ldmia sp!, {r3, pc} .align 2, 0 _02348FF0: .word ov02_0235AB58 arm_func_end ov02_02348F64 arm_func_start ov02_02348FF4 ov02_02348FF4: ; 0x02348FF4 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} mov fp, r0 ldrh r0, [fp, #0xe] mov r7, #0 cmp r0, #0 ldmleia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} _0234900C: add r0, fp, r7, lsl #2 ldr r6, [r0, #0x10] mov r1, #0xc0 mov r0, r6 bl DC_InvalidateRange ldr r1, _02349140 ; =ov02_02352E04 add r0, r6, #0xc mov r2, #8 bl memcmp cmp r0, #0 bne _0234912C ldr r0, _02349144 ; =ov02_0235AB58 mov r5, #0 ldr sb, [r0] mov r4, #6 add r8, sb, #0x1300 _0234904C: mov r1, r8 mov r2, r4 add r0, r6, #4 bl memcmp cmp r0, #0 bne _023490A4 rsb r0, r5, r5, lsl #3 add r0, sb, r0 add r0, r0, #0x1000 ldrb r0, [r0, #0x306] cmp r0, #0 bne _0234912C ldrb r0, [r6, #0x15] tst r0, #1 beq _0234912C add r0, sb, #0x1000 ldr r1, [r0, #0x370] cmp r1, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} mov r0, #1 blx r1 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} _023490A4: add r5, r5, #1 cmp r5, #0x10 add r8, r8, #7 blt _0234904C ldr r5, _02349148 ; =ov02_02352DFC add r8, sb, #0x1300 mov sl, #0 mov r4, #6 _023490C4: mov r0, r8 mov r1, r5 mov r2, r4 bl memcmp cmp r0, #0 bne _0234911C rsb r4, sl, sl, lsl #3 add r1, sb, #0x1300 add r0, r6, #4 add r1, r1, r4 mov r2, #6 bl MemcpyFast ldrb r0, [r6, #0x15] tst r0, #1 ldr r0, _02349144 ; =ov02_0235AB58 movne r1, #1 ldr r0, [r0] moveq r1, #0 add r0, r0, r4 add r0, r0, #0x1000 strb r1, [r0, #0x306] b _0234912C _0234911C: add sl, sl, #1 cmp sl, #0x10 add r8, r8, #7 blt _023490C4 _0234912C: ldrh r0, [fp, #0xe] add r7, r7, #1 cmp r7, r0 blt _0234900C ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _02349140: .word ov02_02352E04 _02349144: .word ov02_0235AB58 _02349148: .word ov02_02352DFC arm_func_end ov02_02348FF4 arm_func_start ov02_0234914C ov02_0234914C: ; 0x0234914C stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} ldr r1, _02349250 ; =ov02_0235AB58 mov sl, r0 ldr r2, [r1] add r1, r2, #0x1000 ldrb r0, [r1, #0xb95] cmp r0, #0 beq _02349180 ldr r1, [r1, #0x370] cmp r1, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} blx r1 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} _02349180: add r0, r2, #0xf00 mov r1, #0x400 bl DC_InvalidateRange ldrh fp, [sl, #0xe] mov r6, #0 cmp fp, #0 ldmleia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} ldr r0, _02349250 ; =ov02_0235AB58 mov r4, #6 ldr sb, [r0] _023491A8: add r0, sl, r6, lsl #2 ldr r5, [r0, #0x10] ldr r1, _02349254 ; =ov02_02352E04 mov r2, #8 add r0, r5, #0xc bl memcmp cmp r0, #0 bne _02349240 ldrb r0, [r5, #0x15] tst r0, #1 beq _02349240 mov r7, #0 add r8, sb, #0x1300 _023491DC: mov r1, r8 mov r2, r4 add r0, r5, #4 bl memcmp cmp r0, #0 bne _02349230 rsb r0, r7, r7, lsl #3 add r0, sb, r0 add r0, r0, #0x1000 ldrb r0, [r0, #0x306] cmp r0, #0 bne _02349240 add r0, sb, #0x1000 ldr r1, [r0, #0x370] cmp r1, #0 moveq r1, #1 streqb r1, [r0, #0xb95] ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} mov r0, #1 blx r1 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} _02349230: add r7, r7, #1 cmp r7, #0x10 add r8, r8, #7 blt _023491DC _02349240: add r6, r6, #1 cmp r6, fp blt _023491A8 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _02349250: .word ov02_0235AB58 _02349254: .word ov02_02352E04 arm_func_end ov02_0234914C arm_func_start ov02_02349258 ov02_02349258: ; 0x02349258 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} str r0, [sp] bl sub_0207AE44 ldr r2, _02349388 ; =ov02_0235AB58 ldr r3, _0234938C ; =0x0017F898 ldr sl, [r2] mov r7, #0 add r2, sl, #0x1000 ldr r4, [r2, #0xb88] ldr r2, [r2, #0xb8c] adds r3, r4, r3 adc r2, r2, #0 cmp r1, r2 cmpeq r0, r3 ldmloia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} ldr r4, _02349390 ; =ov02_02352DFC mov r6, r7 mov r5, r7 mov sb, sl add r8, sl, #0x1300 mov fp, #6 _023492AC: mov r0, r8 mov r1, r4 mov r2, fp bl memcmp cmp r0, #0 beq _023492D8 add r0, sb, #0x1000 ldrb r0, [r0, #0x306] cmp r0, #0 movne r6, #1 moveq r7, #1 _023492D8: add r5, r5, #1 cmp r5, #0x10 add r8, r8, #7 add sb, sb, #7 blt _023492AC cmp r6, #0 cmpne r7, #0 beq _02349314 add r0, sl, #0x1000 ldr r1, [r0, #0x370] cmp r1, #0 beq _02349358 mov r0, #2 blx r1 b _02349358 _02349314: cmp r6, #0 beq _02349338 add r0, sl, #0x1000 ldr r1, [r0, #0x370] cmp r1, #0 beq _02349358 mov r0, #1 blx r1 b _02349358 _02349338: cmp r7, #0 bne _02349358 add r0, sl, #0x1000 ldr r1, [r0, #0x370] cmp r1, #0 beq _02349358 mov r0, #0 blx r1 _02349358: ldr r3, _02349388 ; =ov02_0235AB58 mov r0, #0 ldr r2, [r3] ldr r1, [sp] add r2, r2, #0x1000 str r0, [r2, #0xb90] ldr r2, [r3] mov r3, #1 add r2, r2, #0x1000 strb r3, [r2, #0xb96] bl ov02_0234FB40 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _02349388: .word ov02_0235AB58 _0234938C: .word 0x0017F898 _02349390: .word ov02_02352DFC arm_func_end ov02_02349258 arm_func_start ov02_02349394 ov02_02349394: ; 0x02349394 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x24 ldr r5, _02349690 ; =ov02_02352E54 ldr r4, _02349694 ; =ov02_0235AA98 ldrb sl, [r5, #4] ldrb sb, [r5, #5] ldrb r8, [r5, #6] ldrb r7, [r5, #7] ldrb r6, [r5, #8] ldrb r5, [r5, #9] strb sl, [sp, #0x1c] mov fp, r0 str r2, [sp, #0x10] mov r2, r3 mov sl, r1 ldr r0, [r4] ldr r3, [sp, #0x48] mov r1, fp strb sb, [sp, #0x1d] strb r8, [sp, #0x1e] strb r7, [sp, #0x1f] strb r6, [sp, #0x20] strb r5, [sp, #0x21] bl ov02_02338F74 str r0, [sp, #0x14] mov r0, #0x20 mov r1, #4 bl ov02_0234E7B4 ldr r1, _02349698 ; =ov02_0235AB5C mvn r3, #1 str r0, [r1] strb sl, [r0, #0x1c] ldr r2, [r1] ldr r0, _0234969C ; =0x04000050 strb r3, [r2, #0x1b] ldr r3, [r1] ldr r2, [sp, #0x10] mov r1, #0x1f strb r2, [r3, #0x1e] mov r2, #0 bl G2x_SetBlendBrightness_ ldr r1, _023496A0 ; =ov02_02352F08 mov r0, #0 ldrb r1, [r1, sl] mov r2, r0 bl ov02_0234D6D8 ldr r3, _02349698 ; =ov02_0235AB5C mvn r1, #0 ldr r4, [r3] mov r2, #0x100 str r0, [r4] ldr r0, [r3] mov r3, #0 ldr r0, [r0] bl ov02_0234D440 ldr r0, _02349698 ; =ov02_0235AB5C mvn r1, #0 ldr r0, [r0] mov r2, #0 ldr r0, [r0] bl ov02_0234D530 ldr r7, _023496A4 ; =ov02_02352F10 mov r8, #0 ldrb r0, [r7, sl] cmp r0, #0 ble _02349514 ldr r0, _023496A8 ; =ov02_02352E7A ldr r4, _02349698 ; =ov02_0235AB5C add sb, r0, sl, lsl #1 mvn r6, #0 mov r5, #0x100 mov fp, r8 _023494B4: ldrb r1, [sb], #1 mov r0, #0 mov r2, r0 bl ov02_0234D6D8 ldr r2, [r4] mov r1, r6 add r2, r2, r8, lsl #2 str r0, [r2, #8] ldr r0, [r4] mov r2, r5 add r0, r0, r8, lsl #2 ldr r0, [r0, #8] mov r3, fp bl ov02_0234D440 ldr r0, [r4] mov r1, r6 add r0, r0, r8, lsl #2 ldr r0, [r0, #8] mov r2, #0 bl ov02_0234D530 ldrb r0, [r7, sl] add r8, r8, #1 cmp r8, r0 blt _023494B4 _02349514: add r1, sp, #0x18 str r1, [sp] mov r0, #0 mov r1, #0x20 mov r2, #0xc mov r3, #1 str r0, [sp, #4] bl ov02_0234DCC0 ldr r1, _02349698 ; =ov02_0235AB5C ldr r1, [r1] str r0, [r1, #0x10] mov r0, #0 ldr r1, [sp, #0x18] mov r2, r0 bl ov02_0234D12C ldr r1, _02349698 ; =ov02_0235AB5C ldr r1, [r1] str r0, [r1, #4] bl ov02_02334FA0 ldr r1, _023496AC ; =ov02_02352E9A mov r5, sl, lsl #2 ldrh r4, [r1, r5] mov r3, #2 ldr r2, _02349698 ; =ov02_0235AB5C str r4, [sp] str r3, [sp, #4] str r0, [sp, #8] ldr r0, [sp, #0x14] ldr r3, _023496B0 ; =ov02_02352E98 str r0, [sp, #0xc] ldr r0, [r2] mov r1, #0 ldrh r3, [r3, r5] ldr r0, [r0, #0x10] mov r2, r1 bl ov02_0234E1E8 ldr r0, _02349698 ; =ov02_0235AB5C mov r2, #0 ldr r3, [r0] mov r1, #0x100 str r2, [sp] ldr r0, [r3, #0x10] ldr r3, [r3, #4] bl ov02_0234E2BC mov r0, #0 mov r1, r0 mov r2, #0x1f mov r3, r0 bl ov02_0234E598 ldr r3, _02349698 ; =ov02_0235AB5C add r4, sp, #0x1c ldr r3, [r3] mov r0, #0 ldrb r3, [r3, #0x1c] mov r1, #1 mov r2, #0x1f ldrb r3, [r4, r3] bl ov02_0234E598 mov r0, #0 mov r1, #3 mov r2, #0x1f mov r3, #1 bl ov02_0234E598 ldr r2, _023496B4 ; =ov02_02352E5E mov r0, #0 mov r1, #1 bl ov02_0234E480 mov r0, #0xc0 bl ov02_02349A30 mov r2, #0x4000000 ldr r0, [sp, #0x10] ldr r1, [r2] cmp r0, #0 bic r0, r1, #0xe000 orr r0, r0, #0x6000 str r0, [r2] mov r0, #1 mov r2, #0 beq _02349670 ldr r1, _023496B8 ; =ov02_02349734 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _02349698 ; =ov02_0235AB5C add sp, sp, #0x24 ldr r1, [r1] str r0, [r1, #0x14] ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} _02349670: ldr r1, _023496BC ; =ov02_02349794 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _02349698 ; =ov02_0235AB5C ldr r1, [r1] str r0, [r1, #0x14] add sp, sp, #0x24 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _02349690: .word ov02_02352E54 _02349694: .word ov02_0235AA98 _02349698: .word ov02_0235AB5C _0234969C: .word 0x04000050 _023496A0: .word ov02_02352F08 _023496A4: .word ov02_02352F10 _023496A8: .word ov02_02352E7A _023496AC: .word ov02_02352E9A _023496B0: .word ov02_02352E98 _023496B4: .word ov02_02352E5E _023496B8: .word ov02_02349734 _023496BC: .word ov02_02349794 arm_func_end ov02_02349394 arm_func_start ov02_023496C0 ov02_023496C0: ; 0x023496C0 stmdb sp!, {r3, lr} ldr r1, _023496FC ; =ov02_0235AB5C mov r0, #0 ldr r1, [r1] ldr r1, [r1, #0x14] bl ov02_0234FB40 ldr r1, _02349700 ; =ov02_02349D24 mov r0, #1 mov r2, #0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _023496FC ; =ov02_0235AB5C ldr r1, [r1] str r0, [r1, #0x14] ldmia sp!, {r3, pc} .align 2, 0 _023496FC: .word ov02_0235AB5C _02349700: .word ov02_02349D24 arm_func_end ov02_023496C0 arm_func_start ov02_02349704 ov02_02349704: ; 0x02349704 ldr r0, _02349714 ; =ov02_0235AB5C ldr r0, [r0] ldrsb r0, [r0, #0x1b] bx lr .align 2, 0 _02349714: .word ov02_0235AB5C arm_func_end ov02_02349704 arm_func_start ov02_02349718 ov02_02349718: ; 0x02349718 ldr r0, _02349730 ; =ov02_0235AB5C ldr r0, [r0] cmp r0, #0 movne r0, #1 moveq r0, #0 bx lr .align 2, 0 _02349730: .word ov02_0235AB5C arm_func_end ov02_02349718 arm_func_start ov02_02349734 ov02_02349734: ; 0x02349734 stmdb sp!, {r4, lr} ldr r1, _02349788 ; =ov02_0235AB5C mov r4, r0 ldr r3, [r1] ldr r0, _0234978C ; =0x04000050 ldrsb r2, [r3, #0x1a] sub r2, r2, #1 strb r2, [r3, #0x1a] ldr r1, [r1] ldrsb r1, [r1, #0x1a] bl G2x_ChangeBlendBrightness_ ldr r1, _02349788 ; =ov02_0235AB5C mvn r0, #0xb ldr r1, [r1] ldrsb r1, [r1, #0x1a] cmp r1, r0 ldmgtia sp!, {r4, pc} ldr r1, _02349790 ; =ov02_02349794 mov r0, r4 bl ov02_0234FB38 ldmia sp!, {r4, pc} .align 2, 0 _02349788: .word ov02_0235AB5C _0234978C: .word 0x04000050 _02349790: .word ov02_02349794 arm_func_end ov02_02349734 arm_func_start ov02_02349794 ov02_02349794: ; 0x02349794 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _02349858 ; =ov02_0235AB5C mov r4, r0 ldr r0, [r1] add r2, sp, #4 ldr r0, [r0] add r3, sp, #0 mov r1, #0 bl ov02_0234D590 ldr r0, [sp] ldr r1, _02349858 ; =ov02_0235AB5C sub r0, r0, #0xc ldr r1, [r1] str r0, [sp] ldrb r2, [r1, #0x1c] ldr r1, _0234985C ; =ov02_02352EB2 mov r2, r2, lsl #2 ldrh r1, [r1, r2] cmp r0, r1 ble _023497F4 bl ov02_02349A30 add sp, sp, #8 ldmia sp!, {r4, pc} _023497F4: mov r0, r1 bl ov02_02349A30 ldr r0, _02349858 ; =ov02_0235AB5C mov r3, #0x78 ldr r0, [r0] ldrb r0, [r0, #0x1c] cmp r0, #5 mov r0, #0 bne _0234982C ldr r1, _02349860 ; =ov02_023499C4 mov r2, r0 bl ov02_0234FA98 ldr r1, _02349858 ; =ov02_0235AB5C b _0234983C _0234982C: ldr r1, _02349864 ; =ov02_02349868 mov r2, r0 bl ov02_0234FA98 ldr r1, _02349858 ; =ov02_0235AB5C _0234983C: ldr r1, [r1] str r0, [r1, #0x14] mov r1, r4 mov r0, #1 bl ov02_0234FB40 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _02349858: .word ov02_0235AB5C _0234985C: .word ov02_02352EB2 _02349860: .word ov02_023499C4 _02349864: .word ov02_02349868 arm_func_end ov02_02349794 arm_func_start ov02_02349868 ov02_02349868: ; 0x02349868 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} sub sp, sp, #8 ldr r4, _023499A8 ; =ov02_0235AB5C ldr sb, _023499AC ; =ov02_02352F10 ldr r0, [r4] mov sl, #0 ldrb r1, [r0, #0x1c] ldrb r0, [sb, r1] cmp r0, #0 ble _023498F4 ldr r8, _023499B0 ; =ov02_02352EE0 ldr r7, _023499B4 ; =ov02_02352E66 ldr r6, _023499B8 ; =ov02_02352E84 add r5, sp, #0 _023498A0: add r0, r7, r1, lsl #1 ldrb r0, [sl, r0] add r3, r8, r1, lsl #3 mov r2, r5 add r0, r3, r0, lsl #2 add r1, r6, r1, lsl #2 bl ov02_0234E39C mov r0, r5 bl ov02_0234ED04 cmp r0, #0 beq _023498DC ldr r0, _023499A8 ; =ov02_0235AB5C ldr r0, [r0] strb sl, [r0, #0x1b] b _023498F4 _023498DC: ldr r0, [r4] add sl, sl, #1 ldrb r1, [r0, #0x1c] ldrb r0, [sb, r1] cmp sl, r0 blt _023498A0 _023498F4: mov r0, #1 bl ov02_0234EBBC cmp r0, #0 beq _02349920 ldr r0, _023499A8 ; =ov02_0235AB5C ldr r1, _023499BC ; =ov02_02352E70 ldr r2, [r0] ldrb r0, [r2, #0x1c] mov r0, r0, lsl #1 ldrsb r0, [r1, r0] strb r0, [r2, #0x1b] _02349920: mov r0, #2 bl ov02_0234EBBC cmp r0, #0 beq _0234994C ldr r0, _023499A8 ; =ov02_0235AB5C ldr r1, _023499C0 ; =ov02_02352E71 ldr r2, [r0] ldrb r0, [r2, #0x1c] mov r0, r0, lsl #1 ldrsb r0, [r1, r0] strb r0, [r2, #0x1b] _0234994C: ldr r0, _023499A8 ; =ov02_0235AB5C ldr r2, _023499AC ; =ov02_02352F10 ldr r4, [r0] mov r0, #0 ldrb r1, [r4, #0x1c] ldrb r1, [r2, r1] cmp r1, #0 ble _02349998 ldrsb r3, [r4, #0x1b] _02349970: cmp r0, r3 bne _02349984 bl ov02_02349C64 add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} _02349984: ldrb r1, [r4, #0x1c] add r0, r0, #1 ldrb r1, [r2, r1] cmp r0, r1 blt _02349970 _02349998: mvn r0, #0 strb r0, [r4, #0x1b] add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} .align 2, 0 _023499A8: .word ov02_0235AB5C _023499AC: .word ov02_02352F10 _023499B0: .word ov02_02352EE0 _023499B4: .word ov02_02352E66 _023499B8: .word ov02_02352E84 _023499BC: .word ov02_02352E70 _023499C0: .word ov02_02352E71 arm_func_end ov02_02349868 arm_func_start ov02_023499C4 ov02_023499C4: ; 0x023499C4 stmdb sp!, {r3, lr} ldr r2, _02349A28 ; =ov02_0235AB5C mvn ip, #0 ldr r3, [r2] mov r1, r0 strb ip, [r3, #0x1b] ldr r3, [r2] ldrh r0, [r3, #0x18] add r0, r0, #1 strh r0, [r3, #0x18] ldr r0, [r2] ldrh r0, [r0, #0x18] cmp r0, #0x78 ldmloia sp!, {r3, pc} mov r0, #0 bl ov02_0234FB40 ldr r1, _02349A2C ; =ov02_02349D24 mov r0, #1 mov r2, #0 mov r3, #0x78 bl ov02_0234FA98 ldr r1, _02349A28 ; =ov02_0235AB5C ldr r1, [r1] str r0, [r1, #0x14] ldmia sp!, {r3, pc} .align 2, 0 _02349A28: .word ov02_0235AB5C _02349A2C: .word ov02_02349D24 arm_func_end ov02_023499C4 arm_func_start ov02_02349A30 ov02_02349A30: ; 0x02349A30 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0xc ldr r1, _02349BBC ; =ov02_0235AB5C mov sl, r0 ldr r0, [r1] ldr r1, _02349BC0 ; =ov02_02352EB0 ldrb r2, [r0, #0x1c] ldr r0, [r0] mov r3, sl mov r2, r2, lsl #2 ldrh r2, [r1, r2] mvn r1, #0 bl ov02_0234D440 ldr r0, _02349BBC ; =ov02_0235AB5C ldr r2, _02349BC0 ; =ov02_02352EB0 ldr r0, [r0] add r3, sl, #8 ldrb r4, [r0, #0x1c] ldr r0, [r0, #4] mvn r1, #0 mov r4, r4, lsl #2 ldrh r2, [r2, r4] add r2, r2, #8 bl ov02_0234D440 ldr r0, _02349BBC ; =ov02_0235AB5C mov r1, sl ldr r0, [r0] ldr r0, [r0] bl ov02_02349BD8 ldr r0, _02349BBC ; =ov02_0235AB5C mov r1, sl ldr r0, [r0] ldr r0, [r0, #4] bl ov02_02349BD8 ldr r4, _02349BBC ; =ov02_0235AB5C ldr r8, _02349BC4 ; =ov02_02352F10 ldr r0, [r4] mov sb, #0 ldrb r0, [r0, #0x1c] ldrb r1, [r8, r0] cmp r1, #0 ble _02349B54 ldr r7, _02349BC8 ; =ov02_02352E66 ldr r5, _02349BCC ; =ov02_02352EE0 ldr fp, _02349BC0 ; =ov02_02352EB0 mvn r6, #0 _02349AE8: add r1, r7, r0, lsl #1 ldrb ip, [sb, r1] add r2, r5, r0, lsl #3 add r3, fp, r0, lsl #2 add r0, r2, ip, lsl #2 ldr r1, [r4] mov ip, ip, lsl #2 ldrh r2, [ip, r2] ldrh r0, [r0, #2] add r1, r1, sb, lsl #2 ldrh r3, [r3, #2] add ip, sl, r0 ldr r0, [r1, #8] mov r1, r6 sub r3, ip, r3 bl ov02_0234D440 ldr r0, [r4] mov r1, sl add r0, r0, sb, lsl #2 ldr r0, [r0, #8] bl ov02_02349BD8 ldr r0, [r4] add sb, sb, #1 ldrb r0, [r0, #0x1c] ldrb r1, [r8, r0] cmp sb, r1 blt _02349AE8 _02349B54: and r1, sl, #0xff cmp r1, #0xc0 movge r3, #0 movge r1, r3 bge _02349B78 ldr r2, _02349BD0 ; =ov02_02352ECA mov r3, r0, lsl #2 ldrh r2, [r2, r3] add r3, r1, r2 _02349B78: ldr r4, _02349BC0 ; =ov02_02352EB0 mov r5, r0, lsl #2 ldr r2, _02349BD4 ; =ov02_02352EC8 ldrh r0, [r4, r5] ldrh r2, [r2, r5] cmp r3, #0xc0 add r4, sp, #4 movgt r3, #0xc0 add r2, r0, r2 str r4, [sp] bl ov02_0234E384 mov r0, #0 mov r2, r4 mov r1, r0 bl ov02_0234E480 add sp, sp, #0xc ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _02349BBC: .word ov02_0235AB5C _02349BC0: .word ov02_02352EB0 _02349BC4: .word ov02_02352F10 _02349BC8: .word ov02_02352E66 _02349BCC: .word ov02_02352EE0 _02349BD0: .word ov02_02352ECA _02349BD4: .word ov02_02352EC8 arm_func_end ov02_02349A30 arm_func_start ov02_02349BD8 ov02_02349BD8: ; 0x02349BD8 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #8 mov sl, r0 mov sb, r1 bl ov02_0234D314 mov r7, r0 cmp r7, #0 mov r8, #0 addle sp, sp, #8 ldmleia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} mov fp, #0x200 mov r4, r8 add r6, sp, #4 add r5, sp, #0 _02349C10: mov r0, sl mov r1, r8 mov r2, r6 mov r3, r5 bl ov02_0234D590 ldr r0, [sp] cmp r0, sb blt _02349C3C cmp r0, #0xc0 movlt r2, r4 blt _02349C40 _02349C3C: mov r2, fp _02349C40: mov r0, sl mov r1, r8 mov r3, #0 bl ov02_0234D31C add r8, r8, #1 cmp r8, r7 blt _02349C10 add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} arm_func_end ov02_02349BD8 arm_func_start ov02_02349C64 ov02_02349C64: ; 0x02349C64 stmdb sp!, {r4, lr} ldr r1, _02349D10 ; =ov02_0235AB5C mov r4, r0 ldr r0, [r1] mov r1, #0 add r0, r0, r4, lsl #2 ldr r0, [r0, #8] bl ov02_0234D308 ldr r1, _02349D10 ; =ov02_0235AB5C mov r2, r0 ldr r0, [r1] ldr r1, _02349D14 ; =ov02_02352E7A ldrb r3, [r0, #0x1c] mov r0, #0 add r1, r1, r3, lsl #1 ldrb r1, [r4, r1] add r1, r1, #1 bl ov02_0234D618 ldr r0, _02349D10 ; =ov02_0235AB5C ldr r2, _02349D18 ; =ov02_02352E66 ldr r0, [r0] ldr r1, _02349D1C ; =ov02_02352EE0 ldrb lr, [r0, #0x1c] add r0, r0, r4, lsl #2 ldr r0, [r0, #8] add r2, r2, lr, lsl #1 ldrb r3, [r4, r2] add r2, r1, lr, lsl #3 mvn r1, #0 mov ip, r3, lsl #2 ldrh r2, [ip, r2] ldr r3, _02349D20 ; =ov02_02352EE2 add r3, r3, lr, lsl #3 ldrh r3, [ip, r3] bl ov02_0234D440 ldr r0, _02349D10 ; =ov02_0235AB5C mvn r1, #0 ldr r0, [r0] mov r2, #0 add r0, r0, r4, lsl #2 ldr r0, [r0, #8] bl ov02_0234D530 ldmia sp!, {r4, pc} .align 2, 0 _02349D10: .word ov02_0235AB5C _02349D14: .word ov02_02352E7A _02349D18: .word ov02_02352E66 _02349D1C: .word ov02_02352EE0 _02349D20: .word ov02_02352EE2 arm_func_end ov02_02349C64 arm_func_start ov02_02349D24 ov02_02349D24: ; 0x02349D24 stmdb sp!, {r3, lr} ldr r1, _02349D58 ; =ov02_0235AB5C ldr r3, [r1] ldrb r2, [r3, #0x1d] add r2, r2, #1 strb r2, [r3, #0x1d] ldr r1, [r1] ldrb r1, [r1, #0x1d] cmp r1, #8 ldmloia sp!, {r3, pc} ldr r1, _02349D5C ; =ov02_02349D60 bl ov02_0234FB38 ldmia sp!, {r3, pc} .align 2, 0 _02349D58: .word ov02_0235AB5C _02349D5C: .word ov02_02349D60 arm_func_end ov02_02349D24 arm_func_start ov02_02349D60 ov02_02349D60: ; 0x02349D60 stmdb sp!, {r4, lr} sub sp, sp, #8 ldr r1, _02349DE4 ; =ov02_0235AB5C mov r4, r0 ldr r0, [r1] add r2, sp, #4 ldr r0, [r0] add r3, sp, #0 mov r1, #0 bl ov02_0234D590 ldr r0, [sp] add r0, r0, #0xc str r0, [sp] bl ov02_02349A30 ldr r0, [sp] cmp r0, #0xc0 addlt sp, sp, #8 ldmltia sp!, {r4, pc} ldr r0, _02349DE4 ; =ov02_0235AB5C ldr r0, [r0] ldrb r0, [r0, #0x1e] cmp r0, #0 beq _02349DD0 ldr r1, _02349DE8 ; =ov02_02349DF0 mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} _02349DD0: ldr r1, _02349DEC ; =ov02_02349E4C mov r0, r4 bl ov02_0234FB38 add sp, sp, #8 ldmia sp!, {r4, pc} .align 2, 0 _02349DE4: .word ov02_0235AB5C _02349DE8: .word ov02_02349DF0 _02349DEC: .word ov02_02349E4C arm_func_end ov02_02349D60 arm_func_start ov02_02349DF0 ov02_02349DF0: ; 0x02349DF0 stmdb sp!, {r4, lr} ldr r1, _02349E40 ; =ov02_0235AB5C mov r4, r0 ldr r3, [r1] ldr r0, _02349E44 ; =0x04000050 ldrsb r2, [r3, #0x1a] add r2, r2, #1 strb r2, [r3, #0x1a] ldr r1, [r1] ldrsb r1, [r1, #0x1a] bl G2x_ChangeBlendBrightness_ ldr r0, _02349E40 ; =ov02_0235AB5C ldr r0, [r0] ldrsb r0, [r0, #0x1a] cmp r0, #0 ldmltia sp!, {r4, pc} ldr r1, _02349E48 ; =ov02_02349E4C mov r0, r4 bl ov02_0234FB38 ldmia sp!, {r4, pc} .align 2, 0 _02349E40: .word ov02_0235AB5C _02349E44: .word 0x04000050 _02349E48: .word ov02_02349E4C arm_func_end ov02_02349DF0 arm_func_start ov02_02349E4C ov02_02349E4C: ; 0x02349E4C stmdb sp!, {r3, r4, r5, r6, r7, lr} mov r3, #0x4000000 ldr r2, [r3] ldr r1, _02349EF0 ; =ov02_0235AB5C bic r2, r2, #0xe000 str r2, [r3] ldr r1, [r1] mov r6, r0 ldr r0, [r1] bl ov02_0234D288 ldr r0, _02349EF0 ; =ov02_0235AB5C ldr r0, [r0] ldr r0, [r0, #4] bl ov02_0234D288 ldr r7, _02349EF0 ; =ov02_0235AB5C ldr r4, _02349EF4 ; =ov02_02352F10 ldr r1, [r7] mov r5, #0 ldrb r0, [r1, #0x1c] ldrb r0, [r4, r0] cmp r0, #0 ble _02349ED0 _02349EA4: add r0, r1, r5, lsl #2 ldr r0, [r0, #8] cmp r0, #0 beq _02349EB8 bl ov02_0234D288 _02349EB8: ldr r1, [r7] add r5, r5, #1 ldrb r0, [r1, #0x1c] ldrb r0, [r4, r0] cmp r5, r0 blt _02349EA4 _02349ED0: ldr r0, [r1, #0x10] bl ov02_0234DD9C mov r1, r6 mov r0, #1 bl ov02_0234FB40 ldr r0, _02349EF8 ; =ov02_0235AB5C bl ov02_0234E7D8 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _02349EF0: .word ov02_0235AB5C _02349EF4: .word ov02_02352F10 _02349EF8: .word ov02_0235AB5C arm_func_end ov02_02349E4C arm_func_start ov02_02349EFC ov02_02349EFC: ; 0x02349EFC stmdb sp!, {r3, lr} ldr r2, _02349F38 ; =ov02_0235AB60 add r1, r0, #0x160 str r0, [r2] add r0, r1, #0x1b000 bl ov02_0234AB94 ldr r1, _02349F38 ; =ov02_0235AB60 mov r2, #0 ldr r0, [r1] add r0, r0, #0x1b000 str r2, [r0, #0x140] ldr r0, [r1] add r0, r0, #0x1b000 str r2, [r0, #0x144] ldmia sp!, {r3, pc} .align 2, 0 _02349F38: .word ov02_0235AB60 arm_func_end ov02_02349EFC arm_func_start ov02_02349F3C ov02_02349F3C: ; 0x02349F3C stmdb sp!, {r4, r5, lr} sub sp, sp, #0x7c mov r5, r0 add r0, sp, #0x28 mov r4, r1 bl GetDsFirmwareUserSettings ldrb r2, [sp, #0x12] ldrb r1, [sp, #0x29] ldrh r3, [sp, #0x42] bic r2, r2, #0xf and r1, r1, #0xf orr r2, r2, r1 strb r2, [sp, #0x12] add r0, sp, #0x2c add r1, sp, #0x14 mov r2, r3, lsl #1 strb r3, [sp, #0x13] bl MemcpyFast ldrb r2, [sp, #0x12] ldr r0, _0234A054 ; =ov02_0235AB60 add lr, sp, #4 mov r1, #0 ldr r0, [r0] bic r2, r2, #0xf0 mov ip, r0 strb r2, [sp, #0x12] strh r1, [lr] strh r1, [lr, #2] strh r1, [lr, #4] strh r1, [lr, #6] strh r1, [lr, #8] strh r1, [lr, #0xa] strh r1, [lr, #0xc] mov r3, #3 _02349FC4: ldrh r2, [lr] ldrh r1, [lr, #2] add lr, lr, #4 subs r3, r3, #1 strh r2, [ip] strh r1, [ip, #2] add ip, ip, #4 bne _02349FC4 ldrh r2, [lr] add r1, r0, #0x40 add r1, r1, #0x10000 strh r2, [ip] add r0, r0, #0x1b000 str r1, [r0, #0x140] mov r1, #2 str r1, [sp] ldr r0, _0234A054 ; =ov02_0235AB60 add r1, sp, #0x12 ldr r0, [r0] mov r2, r5 add r0, r0, #0x1b000 ldr r0, [r0, #0x140] mov r3, r4 bl ov00_022C6EFC cmp r0, #0 beq _0234A030 bl WaitForever2 _0234A030: mov r0, #0x100 mov r1, #1 bl ov00_022C7150 ldr r0, _0234A058 ; =ov02_0234A64C bl ov00_022C3270 mov r0, #1 bl ov02_0234A970 add sp, sp, #0x7c ldmia sp!, {r4, r5, pc} .align 2, 0 _0234A054: .word ov02_0235AB60 _0234A058: .word ov02_0234A64C arm_func_end ov02_02349F3C arm_func_start ov02_0234A05C ov02_0234A05C: ; 0x0234A05C stmdb sp!, {r3, r4, r5, lr} mov r5, r0 mov r4, r1 mov r0, #2 bl ov02_0234A970 mov r0, r4 bl ov00_022C74A0 cmp r0, #0 beq _0234A08C mov r0, #7 bl ov02_0234A970 ldmia sp!, {r3, r4, r5, pc} _0234A08C: mov r0, r5 bl ov02_0234A0A4 cmp r0, #0 ldmneia sp!, {r3, r4, r5, pc} bl WaitForever2 ldmia sp!, {r3, r4, r5, pc} arm_func_end ov02_0234A05C arm_func_start ov02_0234A0A4 ov02_0234A0A4: ; 0x0234A0A4 stmdb sp!, {r4, r5, r6, lr} sub sp, sp, #0x48 mov r6, r0 ldr r0, [r6] mov r5, #0 cmp r0, #0 moveq r4, r5 beq _0234A0EC add r0, sp, #0 bl FileInit ldr r1, [r6] add r0, sp, #0 bl sub_0207F6C4 cmp r0, #0 addeq sp, sp, #0x48 moveq r0, r5 ldmeqia sp!, {r4, r5, r6, pc} add r4, sp, #0 _0234A0EC: mov r0, r4 bl ov00_022C4698 cmp r0, #0 beq _0234A158 ldr r1, _0234A174 ; =ov02_0235AB60 ldr r0, [r1] add r2, r0, #0x2c add r0, r0, #0x1b000 str r2, [r0, #0x144] ldr r0, [r1] add r0, r0, #0x1b000 ldr r1, [r0, #0x144] cmp r1, #0 beq _0234A158 mov r0, r4 mov r2, #0x10000 bl ov00_022C4718 cmp r0, #0 beq _0234A158 ldr r1, _0234A174 ; =ov02_0235AB60 mov r0, r6 ldr r1, [r1] add r1, r1, #0x1b000 ldr r1, [r1, #0x144] bl ov00_022C4C08 cmp r0, #0 movne r5, #1 _0234A158: add r0, sp, #0 cmp r4, r0 bne _0234A168 bl sub_0207F70C _0234A168: mov r0, r5 add sp, sp, #0x48 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _0234A174: .word ov02_0235AB60 arm_func_end ov02_0234A0A4 arm_func_start ov02_0234A178 ov02_0234A178: ; 0x0234A178 stmdb sp!, {r3, r4, r5, lr} mov r1, #1 mov r4, r0 bl ov00_022C33BC cmp r0, #0 ldmneia sp!, {r3, r4, r5, pc} mov r0, #1 mvn r0, r0, lsl r4 mov r5, r0, lsl #0x10 bl EnableIrqFlag ldr r1, _0234A214 ; =ov02_0235AB60 ldr r3, [r1] ldrh r2, [r3, #2] and r2, r2, r5, lsr #16 strh r2, [r3, #2] ldr r3, [r1] ldrh r2, [r3, #4] and r2, r2, r5, lsr #16 strh r2, [r3, #4] ldr r3, [r1] ldrh r2, [r3, #6] and r2, r2, r5, lsr #16 strh r2, [r3, #6] ldr r3, [r1] ldrh r2, [r3, #8] and r2, r2, r5, lsr #16 strh r2, [r3, #8] ldr r3, [r1] ldrh r2, [r3, #0xa] and r2, r2, r5, lsr #16 strh r2, [r3, #0xa] ldr r2, [r1] ldrh r1, [r2, #0xc] and r1, r1, r5, lsr #16 strh r1, [r2, #0xc] bl SetIrqFlag mov r0, r4 bl ov00_022C75D8 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0234A214: .word ov02_0235AB60 arm_func_end ov02_0234A178 arm_func_start ov02_0234A218 ov02_0234A218: ; 0x0234A218 stmdb sp!, {r3, r4, r5, lr} mov r1, #0 mov r4, r0 bl ov00_022C33BC cmp r0, #0 bne _0234A2B4 mov r0, #1 mvn r0, r0, lsl r4 mov r5, r0, lsl #0x10 bl EnableIrqFlag ldr r1, _0234A2EC ; =ov02_0235AB60 ldr r3, [r1] ldrh r2, [r3, #2] and r2, r2, r5, lsr #16 strh r2, [r3, #2] ldr r3, [r1] ldrh r2, [r3, #4] and r2, r2, r5, lsr #16 strh r2, [r3, #4] ldr r3, [r1] ldrh r2, [r3, #6] and r2, r2, r5, lsr #16 strh r2, [r3, #6] ldr r3, [r1] ldrh r2, [r3, #8] and r2, r2, r5, lsr #16 strh r2, [r3, #8] ldr r3, [r1] ldrh r2, [r3, #0xa] and r2, r2, r5, lsr #16 strh r2, [r3, #0xa] ldr r2, [r1] ldrh r1, [r2, #0xc] and r1, r1, r5, lsr #16 strh r1, [r2, #0xc] bl SetIrqFlag mov r0, r4 bl ov00_022C75D8 ldmia sp!, {r3, r4, r5, pc} _0234A2B4: bl EnableIrqFlag ldr r1, _0234A2EC ; =ov02_0235AB60 mov r2, #1 ldr r3, [r1] mvn r4, r2, lsl r4 ldrh r2, [r3, #4] and r2, r2, r4 strh r2, [r3, #4] ldr r2, [r1] ldrh r1, [r2, #2] and r1, r1, r4 strh r1, [r2, #2] bl SetIrqFlag ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0234A2EC: .word ov02_0235AB60 arm_func_end ov02_0234A218 arm_func_start ov02_0234A2F0 ov02_0234A2F0: ; 0x0234A2F0 stmdb sp!, {r3, r4, r5, lr} mov r1, #2 mov r4, r0 bl ov00_022C33BC cmp r0, #0 bne _0234A38C mov r0, #1 mvn r0, r0, lsl r4 mov r5, r0, lsl #0x10 bl EnableIrqFlag ldr r1, _0234A3C4 ; =ov02_0235AB60 ldr r3, [r1] ldrh r2, [r3, #2] and r2, r2, r5, lsr #16 strh r2, [r3, #2] ldr r3, [r1] ldrh r2, [r3, #4] and r2, r2, r5, lsr #16 strh r2, [r3, #4] ldr r3, [r1] ldrh r2, [r3, #6] and r2, r2, r5, lsr #16 strh r2, [r3, #6] ldr r3, [r1] ldrh r2, [r3, #8] and r2, r2, r5, lsr #16 strh r2, [r3, #8] ldr r3, [r1] ldrh r2, [r3, #0xa] and r2, r2, r5, lsr #16 strh r2, [r3, #0xa] ldr r2, [r1] ldrh r1, [r2, #0xc] and r1, r1, r5, lsr #16 strh r1, [r2, #0xc] bl SetIrqFlag mov r0, r4 bl ov00_022C75D8 ldmia sp!, {r3, r4, r5, pc} _0234A38C: bl EnableIrqFlag ldr r1, _0234A3C4 ; =ov02_0235AB60 mov ip, #1 ldr r5, [r1] mvn r2, ip, lsl r4 ldrh r3, [r5, #6] and r2, r3, r2 strh r2, [r5, #6] ldr r2, [r1] ldrh r1, [r2, #8] orr r1, r1, ip, lsl r4 strh r1, [r2, #8] bl SetIrqFlag ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0234A3C4: .word ov02_0235AB60 arm_func_end ov02_0234A2F0 arm_func_start ov02_0234A3C8 ov02_0234A3C8: ; 0x0234A3C8 stmdb sp!, {r3, r4, r5, r6, r7, lr} mov r0, #3 bl ov02_0234A970 mov r5, #1 ldr r7, _0234A4A4 ; =ov02_0235AB60 mov r4, r5 _0234A3E0: ldr r1, [r7] ldrh r0, [r1, #2] tst r0, r4, lsl r5 beq _0234A48C ldrh r0, [r1, #4] tst r0, r4, lsl r5 bne _0234A48C ldrh r0, [r1, #6] tst r0, r4, lsl r5 bne _0234A484 mvn r0, r4, lsl r5 mov r6, r0, lsl #0x10 bl EnableIrqFlag ldr r2, [r7] ldrh r1, [r2, #2] and r1, r1, r6, lsr #16 strh r1, [r2, #2] ldr r2, [r7] ldrh r1, [r2, #4] and r1, r1, r6, lsr #16 strh r1, [r2, #4] ldr r2, [r7] ldrh r1, [r2, #6] and r1, r1, r6, lsr #16 strh r1, [r2, #6] ldr r2, [r7] ldrh r1, [r2, #8] and r1, r1, r6, lsr #16 strh r1, [r2, #8] ldr r2, [r7] ldrh r1, [r2, #0xa] and r1, r1, r6, lsr #16 strh r1, [r2, #0xa] ldr r2, [r7] ldrh r1, [r2, #0xc] and r1, r1, r6, lsr #16 strh r1, [r2, #0xc] bl SetIrqFlag mov r0, r5 bl ov00_022C75D8 b _0234A48C _0234A484: mov r0, r5 bl ov02_0234A2F0 _0234A48C: add r0, r5, #1 mov r0, r0, lsl #0x10 mov r5, r0, lsr #0x10 cmp r5, #0x10 blo _0234A3E0 ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _0234A4A4: .word ov02_0235AB60 arm_func_end ov02_0234A3C8 arm_func_start ov02_0234A4A8 ov02_0234A4A8: ; 0x0234A4A8 stmdb sp!, {r4, r5, r6, lr} ldr r4, _0234A50C ; =ov02_0235AB60 ldr r0, [r4] ldrh r0, [r0, #2] cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, pc} mov r6, #1 mov r5, r6 _0234A4CC: ldr r0, [r4] ldrh r0, [r0, #2] tst r0, r5, lsl r6 beq _0234A4F0 mov r0, r6 bl ov00_022C3368 cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, pc} _0234A4F0: add r0, r6, #1 mov r0, r0, lsl #0x10 mov r6, r0, lsr #0x10 cmp r6, #0x10 blo _0234A4CC mov r0, #1 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _0234A50C: .word ov02_0235AB60 arm_func_end ov02_0234A4A8 arm_func_start ov02_0234A510 ov02_0234A510: ; 0x0234A510 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} mov r7, #1 ldr r4, _0234A604 ; =ov02_0235AB60 mov r8, #0 mov r5, #3 mov r6, r7 _0234A528: ldr r0, [r4] ldrh r0, [r0, #0xa] tst r0, r6, lsl r7 beq _0234A5D0 mov r0, r7 mov r1, r5 bl ov00_022C33BC cmp r0, #0 orrne r0, r8, r6, lsl r7 movne r0, r0, lsl #0x10 movne r8, r0, lsr #0x10 bne _0234A5D0 mvn r0, r6, lsl r7 mov sb, r0, lsl #0x10 bl EnableIrqFlag ldr r2, [r4] ldrh r1, [r2, #2] and r1, r1, sb, lsr #16 strh r1, [r2, #2] ldr r2, [r4] ldrh r1, [r2, #4] and r1, r1, sb, lsr #16 strh r1, [r2, #4] ldr r2, [r4] ldrh r1, [r2, #6] and r1, r1, sb, lsr #16 strh r1, [r2, #6] ldr r2, [r4] ldrh r1, [r2, #8] and r1, r1, sb, lsr #16 strh r1, [r2, #8] ldr r2, [r4] ldrh r1, [r2, #0xa] and r1, r1, sb, lsr #16 strh r1, [r2, #0xa] ldr r2, [r4] ldrh r1, [r2, #0xc] and r1, r1, sb, lsr #16 strh r1, [r2, #0xc] bl SetIrqFlag mov r0, r7 bl ov00_022C75D8 _0234A5D0: add r0, r7, #1 mov r0, r0, lsl #0x10 mov r7, r0, lsr #0x10 cmp r7, #0x10 blo _0234A528 cmp r8, #0 bne _0234A5F8 mov r0, #7 bl ov02_0234A970 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} _0234A5F8: mov r0, #4 bl ov02_0234A970 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} .align 2, 0 _0234A604: .word ov02_0235AB60 arm_func_end ov02_0234A510 arm_func_start ov02_0234A608 ov02_0234A608: ; 0x0234A608 stmdb sp!, {r3, lr} mov r0, #6 bl ov02_0234A970 bl ov00_022C759C ldmia sp!, {r3, pc} arm_func_end ov02_0234A608 arm_func_start ov02_0234A61C ov02_0234A61C: ; 0x0234A61C stmdb sp!, {r3, lr} ldr r0, _0234A648 ; =ov02_0235AB60 ldr r2, [r0] ldrh r0, [r2] cmp r0, #4 ldreqh r1, [r2, #2] ldreqh r0, [r2, #0xc] cmpeq r1, r0 ldmneia sp!, {r3, pc} bl ov00_022C759C ldmia sp!, {r3, pc} .align 2, 0 _0234A648: .word ov02_0235AB60 arm_func_end ov02_0234A61C arm_func_start ov02_0234A64C ov02_0234A64C: ; 0x0234A64C stmdb sp!, {r4, r5, r6, lr} mov r5, r0 mov r4, r2 cmp r1, #0xe addls pc, pc, r1, lsl #2 b _0234A964 _0234A664: ; jump table b _0234A964 ; case 0 ldmia sp!, {r4, r5, r6, pc} ; case 1 b _0234A6A0 ; case 2 b _0234A728 ; case 3 ldmia sp!, {r4, r5, r6, pc} ; case 4 ldmia sp!, {r4, r5, r6, pc} ; case 5 ldmia sp!, {r4, r5, r6, pc} ; case 6 b _0234A864 ; case 7 ldmia sp!, {r4, r5, r6, pc} ; case 8 b _0234A894 ; case 9 b _0234A7B4 ; case 10 ldmia sp!, {r4, r5, r6, pc} ; case 11 b _0234A8C8 ; case 12 b _0234A924 ; case 13 b _0234A820 ; case 14 _0234A6A0: bl ov02_0234A984 cmp r0, #2 ldmneia sp!, {r4, r5, r6, pc} ldr r0, _0234A96C ; =ov02_0235AB60 ldr r6, [r0] bl EnableIrqFlag ldrh r2, [r6, #2] mov r1, #1 orr r1, r2, r1, lsl r5 strh r1, [r6, #2] bl SetIrqFlag ldr r1, _0234A96C ; =ov02_0235AB60 sub r3, r5, #1 mov r0, #0x1e mul r0, r3, r0 ldr r2, [r1] add r3, r2, #0x24 ldrb r2, [r4, #0xa] add ip, r3, r0 strb r2, [r3, r0] ldrb r2, [r4, #0xb] strb r2, [ip, #1] ldrb r2, [r4, #0xc] strb r2, [ip, #2] ldrb r2, [r4, #0xd] strb r2, [ip, #3] ldrb r2, [r4, #0xe] strb r2, [ip, #4] ldrb r2, [r4, #0xf] strb r2, [ip, #5] ldr r1, [r1] add r0, r1, r0 strh r5, [r0, #0x2a] ldmia sp!, {r4, r5, r6, pc} _0234A728: bl ov02_0234A9F0 cmp r0, #6 ldmeqia sp!, {r4, r5, r6, pc} mov r0, #1 mvn r0, r0, lsl r5 mov r4, r0, lsl #0x10 bl EnableIrqFlag ldr r1, _0234A96C ; =ov02_0235AB60 ldr r3, [r1] ldrh r2, [r3, #2] and r2, r2, r4, lsr #16 strh r2, [r3, #2] ldr r3, [r1] ldrh r2, [r3, #4] and r2, r2, r4, lsr #16 strh r2, [r3, #4] ldr r3, [r1] ldrh r2, [r3, #6] and r2, r2, r4, lsr #16 strh r2, [r3, #6] ldr r3, [r1] ldrh r2, [r3, #8] and r2, r2, r4, lsr #16 strh r2, [r3, #8] ldr r3, [r1] ldrh r2, [r3, #0xa] and r2, r2, r4, lsr #16 strh r2, [r3, #0xa] ldr r2, [r1] ldrh r1, [r2, #0xc] and r1, r1, r4, lsr #16 strh r1, [r2, #0xc] bl SetIrqFlag bl ov02_0234A61C ldmia sp!, {r4, r5, r6, pc} _0234A7B4: bl ov02_0234A984 cmp r0, #2 beq _0234A7CC mov r0, r5 bl ov02_0234A218 ldmia sp!, {r4, r5, r6, pc} _0234A7CC: ldr r0, _0234A96C ; =ov02_0235AB60 mov r1, #1 ldr r3, [r0] mov r0, r5 ldrh r2, [r3, #4] orr r1, r2, r1, lsl r5 strh r1, [r3, #4] bl ov02_0234A178 mov r0, r5 bl ov00_022C32E4 cmp r0, #0 ldmeqia sp!, {r4, r5, r6, pc} ldr r1, _0234A96C ; =ov02_0235AB60 sub r2, r5, #1 ldr r3, [r1] mov r1, #0x1e add r3, r3, #0xe mla r1, r2, r1, r3 mov r2, #0x16 bl MemcpyFast ldmia sp!, {r4, r5, r6, pc} _0234A820: ldr r0, _0234A96C ; =ov02_0235AB60 mov r4, #1 ldr r3, [r0] mvn r1, r4, lsl r5 ldrh r2, [r3, #4] and r1, r2, r1 strh r1, [r3, #4] ldr r1, [r0] ldrh r0, [r1, #6] orr r0, r0, r4, lsl r5 strh r0, [r1, #6] bl ov02_0234A984 cmp r0, #3 ldmneia sp!, {r4, r5, r6, pc} mov r0, r5 bl ov02_0234A2F0 ldmia sp!, {r4, r5, r6, pc} _0234A864: ldr r0, _0234A96C ; =ov02_0235AB60 mov r4, #1 ldr r3, [r0] mvn r1, r4, lsl r5 ldrh r2, [r3, #8] and r1, r2, r1 strh r1, [r3, #8] ldr r1, [r0] ldrh r0, [r1, #0xa] orr r0, r0, r4, lsl r5 strh r0, [r1, #0xa] ldmia sp!, {r4, r5, r6, pc} _0234A894: ldr r0, _0234A96C ; =ov02_0235AB60 mov r4, #1 ldr r3, [r0] mvn r1, r4, lsl r5 ldrh r2, [r3, #0xa] and r1, r2, r1 strh r1, [r3, #0xa] ldr r1, [r0] ldrh r0, [r1, #0xc] orr r0, r0, r4, lsl r5 strh r0, [r1, #0xc] bl ov02_0234A61C ldmia sp!, {r4, r5, r6, pc} _0234A8C8: bl ov02_0234A984 cmp r0, #4 bne _0234A8E0 mov r0, #5 bl ov02_0234A970 b _0234A8E8 _0234A8E0: mov r0, #0 bl ov02_0234A970 _0234A8E8: ldr r0, _0234A96C ; =ov02_0235AB60 ldr r0, [r0] add r0, r0, #0x1b000 ldr r1, [r0, #0x144] cmp r1, #0 movne r1, #0 strne r1, [r0, #0x144] ldr r0, _0234A96C ; =ov02_0235AB60 ldr r0, [r0] add r0, r0, #0x1b000 ldr r1, [r0, #0x140] cmp r1, #0 movne r1, #0 strne r1, [r0, #0x140] ldmia sp!, {r4, r5, r6, pc} _0234A924: ldrh r0, [r4] cmp r0, #8 bgt _0234A950 ldmgeia sp!, {r4, r5, r6, pc} cmp r0, #2 ldmgtia sp!, {r4, r5, r6, pc} cmp r0, #1 ldmltia sp!, {r4, r5, r6, pc} cmpne r0, #2 beq _0234A958 ldmia sp!, {r4, r5, r6, pc} _0234A950: cmp r0, #9 ldmneia sp!, {r4, r5, r6, pc} _0234A958: mov r0, #7 bl ov02_0234A970 ldmia sp!, {r4, r5, r6, pc} _0234A964: bl WaitForever2 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _0234A96C: .word ov02_0235AB60 arm_func_end ov02_0234A64C arm_func_start ov02_0234A970 ov02_0234A970: ; 0x0234A970 ldr r1, _0234A980 ; =ov02_0235AB60 ldr r1, [r1] strh r0, [r1] bx lr .align 2, 0 _0234A980: .word ov02_0235AB60 arm_func_end ov02_0234A970 arm_func_start ov02_0234A984 ov02_0234A984: ; 0x0234A984 ldr r0, _0234A994 ; =ov02_0235AB60 ldr r0, [r0] ldrh r0, [r0] bx lr .align 2, 0 _0234A994: .word ov02_0235AB60 arm_func_end ov02_0234A984 arm_func_start ov02_0234A998 ov02_0234A998: ; 0x0234A998 ldr r2, _0234A9E4 ; =ov02_0235AB60 ldr r1, _0234A9E8 ; =ov02_02353E54 ldr ip, [r2] ldr r2, _0234A9EC ; =ov02_02353E54 add r3, ip, #2 str r3, [r1] add r3, ip, #4 str r3, [r1, #4] add r3, ip, #6 str r3, [r1, #8] add r3, ip, #8 str r3, [r1, #0xc] add r3, ip, #0xa str r3, [r1, #0x10] add r3, ip, #0xc str r3, [r1, #0x14] ldr r0, [r2, r0, lsl #2] ldrh r0, [r0] bx lr .align 2, 0 _0234A9E4: .word ov02_0235AB60 _0234A9E8: .word ov02_02353E54 _0234A9EC: .word ov02_02353E54 arm_func_end ov02_0234A998 arm_func_start ov02_0234A9F0 ov02_0234A9F0: ; 0x0234A9F0 stmdb sp!, {r3, r4, r5, lr} sub sp, sp, #0x10 mov r4, r0 bl EnableIrqFlag ldr r1, _0234AAB4 ; =ov02_0235AB60 mov r3, #1 ldr r2, [r1] mov r3, r3, lsl r4 ldrh r1, [r2, #2] mov r4, r3, lsl #0x10 mov r5, r0 tst r1, r4, lsr #16 bne _0234AA34 bl SetIrqFlag add sp, sp, #0x10 mov r0, #0 ldmia sp!, {r3, r4, r5, pc} _0234AA34: mov r0, r2 add r1, sp, #0 mov r2, #0xe bl MemcpyFast mov r0, r5 bl SetIrqFlag ldrh r0, [sp, #4] tst r0, r4, lsr #16 addne sp, sp, #0x10 movne r0, #2 ldmneia sp!, {r3, r4, r5, pc} ldrh r0, [sp, #6] tst r0, r4, lsr #16 addne sp, sp, #0x10 movne r0, #3 ldmneia sp!, {r3, r4, r5, pc} ldrh r0, [sp, #8] tst r0, r4, lsr #16 addne sp, sp, #0x10 movne r0, #4 ldmneia sp!, {r3, r4, r5, pc} ldrh r0, [sp, #0xa] tst r0, r4, lsr #16 addne sp, sp, #0x10 movne r0, #5 ldmneia sp!, {r3, r4, r5, pc} ldrh r0, [sp, #0xc] tst r0, r4, lsr #16 movne r0, #6 moveq r0, #1 add sp, sp, #0x10 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0234AAB4: .word ov02_0235AB60 arm_func_end ov02_0234A9F0 arm_func_start ov02_0234AAB8 ov02_0234AAB8: ; 0x0234AAB8 ldr r1, _0234AAE8 ; =ov02_0235AB60 mov r2, #1 ldr r3, [r1] ldrh r1, [r3, #2] tst r1, r2, lsl r0 moveq r0, #0 bxeq lr sub r1, r0, #1 add r2, r3, #0xe mov r0, #0x1e mla r0, r1, r0, r2 bx lr .align 2, 0 _0234AAE8: .word ov02_0235AB60 arm_func_end ov02_0234AAB8 arm_func_start ov02_0234AAEC ov02_0234AAEC: ; 0x0234AAEC stmdb sp!, {r4, r5, r6, r7, r8, lr} ldr r1, _0234AB90 ; =ov02_0235AB60 mov lr, #1 ldr r5, [r1] mov ip, lr ldrh r4, [r5, #2] add r1, r5, #0x24 mov r6, #0x1e _0234AB0C: tst r4, ip, lsl lr beq _0234AB74 sub r2, lr, #1 mul r3, r2, r6 ldrb r8, [r0] ldrb r7, [r1, r3] add r2, r1, r3 cmp r8, r7 ldreqb r8, [r0, #1] ldreqb r7, [r2, #1] cmpeq r8, r7 ldreqb r8, [r0, #2] ldreqb r7, [r2, #2] cmpeq r8, r7 ldreqb r8, [r0, #3] ldreqb r7, [r2, #3] cmpeq r8, r7 ldreqb r8, [r0, #4] ldreqb r7, [r2, #4] cmpeq r8, r7 ldreqb r7, [r0, #5] ldreqb r2, [r2, #5] cmpeq r7, r2 addeq r0, r5, r3 ldreqh r0, [r0, #0x2a] ldmeqia sp!, {r4, r5, r6, r7, r8, pc} _0234AB74: add r2, lr, #1 mov r2, r2, lsl #0x10 mov lr, r2, lsr #0x10 cmp lr, #2 blo _0234AB0C mov r0, #0 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _0234AB90: .word ov02_0235AB60 arm_func_end ov02_0234AAEC arm_func_start ov02_0234AB94 ov02_0234AB94: ; 0x0234AB94 ldr r1, _0234ABCC ; =ov02_0235AB64 mov r2, #0 str r0, [r1, #4] str r2, [r0, #0x40] ldr r0, [r1, #4] add r0, r0, #0x1000 str r2, [r0, #0x3a8] ldr r0, [r1, #4] add r0, r0, #0x1000 str r2, [r0, #0x3ac] ldr r0, [r1, #4] add r0, r0, #0x1000 str r2, [r0, #0x3b0] bx lr .align 2, 0 _0234ABCC: .word ov02_0235AB64 arm_func_end ov02_0234AB94 arm_func_start ov02_0234ABD0 ov02_0234ABD0: ; 0x0234ABD0 stmdb sp!, {r4, lr} ldr r1, _0234AC3C ; =ov02_0235AB64 mov r4, r0 ldr r3, [r1] cmp r3, #0 beq _0234AC04 ldr r1, [r1, #4] ldr r0, _0234AC40 ; =ov02_0235420C ldr r2, [r1, #0x40] ldr r1, _0234AC44 ; =ov02_02354234 ldr r2, [r0, r2, lsl #2] mov r0, #0x8000000 blx r3 _0234AC04: ldr r0, _0234AC3C ; =ov02_0235AB64 ldr r1, [r0, #4] str r4, [r1, #0x40] ldr r3, [r0] cmp r3, #0 ldmeqia sp!, {r4, pc} ldr r1, [r0, #4] ldr r0, _0234AC40 ; =ov02_0235420C ldr r2, [r1, #0x40] ldr r1, _0234AC48 ; =ov02_0235423C ldr r2, [r0, r2, lsl #2] mov r0, #0x8000000 blx r3 ldmia sp!, {r4, pc} .align 2, 0 _0234AC3C: .word ov02_0235AB64 _0234AC40: .word ov02_0235420C _0234AC44: .word ov02_02354234 _0234AC48: .word ov02_0235423C arm_func_end ov02_0234ABD0 arm_func_start ov02_0234AC4C ov02_0234AC4C: ; 0x0234AC4C ldr r1, _0234AC68 ; =ov02_0235AB64 ldr r2, [r1, #4] ldr r1, [r2, #0x40] sub r1, r1, #9 cmp r1, #1 strhi r0, [r2, #0x54] bx lr .align 2, 0 _0234AC68: .word ov02_0235AB64 arm_func_end ov02_0234AC4C arm_func_start ov02_0234AC6C ov02_0234AC6C: ; 0x0234AC6C stmdb sp!, {r3, lr} mov r0, #3 bl ov02_0234ABD0 ldr r1, _0234ACA8 ; =ov02_0235AB64 ldr r0, _0234ACAC ; =ov02_0234ACB0 ldr r1, [r1, #4] bl ov00_022BFC14 cmp r0, #2 moveq r0, #1 ldmeqia sp!, {r3, pc} bl ov02_0234AC4C mov r0, #9 bl ov02_0234ABD0 mov r0, #0 ldmia sp!, {r3, pc} .align 2, 0 _0234ACA8: .word ov02_0235AB64 _0234ACAC: .word ov02_0234ACB0 arm_func_end ov02_0234AC6C arm_func_start ov02_0234ACB0 ov02_0234ACB0: ; 0x0234ACB0 stmdb sp!, {r3, lr} ldrh r0, [r0, #2] cmp r0, #0 beq _0234ACD0 bl ov02_0234AC4C mov r0, #9 bl ov02_0234ABD0 ldmia sp!, {r3, pc} _0234ACD0: ldr r0, _0234AD18 ; =ov02_0235AB64 ldr r0, [r0, #4] add r0, r0, #0x1000 ldr r0, [r0, #0x3ac] cmp r0, #0 beq _0234AD00 bl ov02_0234AD1C cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #9 bl ov02_0234ABD0 ldmia sp!, {r3, pc} _0234AD00: bl ov02_0234ADB8 cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #9 bl ov02_0234ABD0 ldmia sp!, {r3, pc} .align 2, 0 _0234AD18: .word ov02_0235AB64 arm_func_end ov02_0234ACB0 arm_func_start ov02_0234AD1C ov02_0234AD1C: ; 0x0234AD1C stmdb sp!, {r3, lr} mov r0, #3 bl ov02_0234ABD0 ldr r0, _0234AD78 ; =ov02_0235AB64 ldr r1, [r0, #4] add r0, r1, #0x1000 ldr r2, [r0, #0x3ac] add r0, r1, #0x13c0 blx r2 ldr r2, _0234AD78 ; =ov02_0235AB64 mov r1, r0 ldr r2, [r2, #4] ldr r0, _0234AD7C ; =ov02_0234AD80 add r2, r2, #0x13c0 bl ov00_022C13B8 cmp r0, #2 moveq r0, #1 ldmeqia sp!, {r3, pc} bl ov02_0234AC4C mov r0, #9 bl ov02_0234ABD0 mov r0, #0 ldmia sp!, {r3, pc} .align 2, 0 _0234AD78: .word ov02_0235AB64 _0234AD7C: .word ov02_0234AD80 arm_func_end ov02_0234AD1C arm_func_start ov02_0234AD80 ov02_0234AD80: ; 0x0234AD80 stmdb sp!, {r3, lr} ldrh r0, [r0, #2] cmp r0, #0 beq _0234ADA0 bl ov02_0234AC4C mov r0, #9 bl ov02_0234ABD0 ldmia sp!, {r3, pc} _0234ADA0: bl ov02_0234ADB8 cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #9 bl ov02_0234ABD0 ldmia sp!, {r3, pc} arm_func_end ov02_0234AD80 arm_func_start ov02_0234ADB8 ov02_0234ADB8: ; 0x0234ADB8 stmdb sp!, {r3, lr} ldr r0, _0234AE14 ; =ov02_0235AB64 ldr r0, [r0, #4] ldr r0, [r0, #0x40] sub r0, r0, #4 cmp r0, #2 movls r0, #1 ldmlsia sp!, {r3, pc} ldr r0, _0234AE18 ; =ov02_0234AE1C bl ov00_022BFD9C cmp r0, #2 beq _0234ADF4 bl ov02_0234AC4C mov r0, #0 ldmia sp!, {r3, pc} _0234ADF4: ldr r1, _0234AE14 ; =ov02_0235AB64 mov r3, #0 ldr r2, [r1, #4] mov r0, #1 strh r3, [r2, #0x50] ldr r1, [r1, #4] strh r0, [r1, #0x52] ldmia sp!, {r3, pc} .align 2, 0 _0234AE14: .word ov02_0235AB64 _0234AE18: .word ov02_0234AE1C arm_func_end ov02_0234ADB8 arm_func_start ov02_0234AE1C ov02_0234AE1C: ; 0x0234AE1C stmdb sp!, {r3, r4, r5, lr} mov r4, r0 ldrh r2, [r4, #0x10] ldrh r0, [r4, #2] mov r1, #1 mov r1, r1, lsl r2 cmp r0, #0 mov r5, r1, lsl #0x10 beq _0234AE50 bl ov02_0234AC4C mov r0, #9 bl ov02_0234ABD0 ldmia sp!, {r3, r4, r5, pc} _0234AE50: ldrh ip, [r4, #8] cmp ip, #7 bgt _0234AE80 bge _0234AE8C cmp ip, #2 bgt _0234AF58 cmp ip, #0 blt _0234AF58 beq _0234AF40 cmp ip, #2 ldmeqia sp!, {r3, r4, r5, pc} b _0234AF58 _0234AE80: cmp ip, #9 beq _0234AF08 b _0234AF58 _0234AE8C: ldr r0, _0234AF7C ; =ov02_0235AB64 ldr r3, [r0] cmp r3, #0 beq _0234AEA8 ldr r1, _0234AF80 ; =ov02_02354240 mov r0, #0x8000000 blx r3 _0234AEA8: ldr r0, _0234AF7C ; =ov02_0235AB64 ldr r0, [r0, #4] ldr r1, [r0, #0x4c] cmp r1, #0 beq _0234AEF0 mov r0, r4 blx r1 cmp r0, #0 bne _0234AEF0 ldrh r1, [r4, #0x10] mov r0, #0 bl ov00_022C0134 cmp r0, #2 ldmeqia sp!, {r3, r4, r5, pc} bl ov02_0234AC4C mov r0, #9 bl ov02_0234ABD0 ldmia sp!, {r3, r4, r5, pc} _0234AEF0: ldr r0, _0234AF7C ; =ov02_0235AB64 ldr r1, [r0, #4] ldrh r0, [r1, #0x52] orr r0, r0, r5, lsr #16 strh r0, [r1, #0x52] ldmia sp!, {r3, r4, r5, pc} _0234AF08: ldr r0, _0234AF7C ; =ov02_0235AB64 ldr r3, [r0] cmp r3, #0 beq _0234AF24 ldr r1, _0234AF84 ; =ov02_0235426C mov r0, #0x8000000 blx r3 _0234AF24: ldr r0, _0234AF7C ; =ov02_0235AB64 mvn r1, r5, lsr #16 ldr r2, [r0, #4] ldrh r0, [r2, #0x52] and r0, r0, r1 strh r0, [r2, #0x52] ldmia sp!, {r3, r4, r5, pc} _0234AF40: bl ov02_0234AF8C cmp r0, #0 ldmneia sp!, {r3, r4, r5, pc} mov r0, #9 bl ov02_0234ABD0 ldmia sp!, {r3, r4, r5, pc} _0234AF58: ldr r0, _0234AF7C ; =ov02_0235AB64 ldr r3, [r0] cmp r3, #0 ldmeqia sp!, {r3, r4, r5, pc} ldr r1, _0234AF88 ; =ov02_02354298 mov r2, ip mov r0, #0x8000000 blx r3 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0234AF7C: .word ov02_0235AB64 _0234AF80: .word ov02_02354240 _0234AF84: .word ov02_0235426C _0234AF88: .word ov02_02354298 arm_func_end ov02_0234AE1C arm_func_start ov02_0234AF8C ov02_0234AF8C: ; 0x0234AF8C stmdb sp!, {r3, lr} sub sp, sp, #8 ldr r0, _0234B01C ; =ov02_0235AB64 ldr r0, [r0, #4] ldr r0, [r0, #0x40] sub r0, r0, #4 cmp r0, #2 addls sp, sp, #8 movls r0, #1 ldmlsia sp!, {r3, pc} mov r0, #4 bl ov02_0234ABD0 ldr r0, _0234B01C ; =ov02_0235AB64 mov ip, #1 ldr lr, [r0, #4] ldr r0, _0234B020 ; =ov02_0234B024 add r3, lr, #0x1000 ldr r1, [r3, #0x2a0] add r2, lr, #0x60 mov r1, r1, lsl #0x10 mov r1, r1, lsr #0x10 stmia sp, {r1, ip} ldr r3, [r3, #0x2a4] add r1, r2, #0x1000 mov r2, r3, lsl #0x10 mov r2, r2, lsr #0x10 add r3, lr, #0xf80 bl ov00_022C0430 cmp r0, #2 addeq sp, sp, #8 moveq r0, #1 ldmeqia sp!, {r3, pc} bl ov02_0234AC4C mov r0, #0 add sp, sp, #8 ldmia sp!, {r3, pc} .align 2, 0 _0234B01C: .word ov02_0235AB64 _0234B020: .word ov02_0234B024 arm_func_end ov02_0234AF8C arm_func_start ov02_0234B024 ov02_0234B024: ; 0x0234B024 stmdb sp!, {r3, lr} ldrh r1, [r0, #2] cmp r1, #0 beq _0234B048 mov r0, r1 bl ov02_0234AC4C mov r0, #9 bl ov02_0234ABD0 ldmia sp!, {r3, pc} _0234B048: ldrh r2, [r0, #4] sub r0, r2, #0xa cmp r0, #3 addls pc, pc, r0, lsl #2 b _0234B124 _0234B05C: ; jump table b _0234B06C ; case 0 ldmia sp!, {r3, pc} ; case 1 b _0234B124 ; case 2 b _0234B124 ; case 3 _0234B06C: ldr r0, _0234B144 ; =ov02_0235AB64 ldr r1, [r0, #4] ldr r0, [r1, #0x44] cmp r0, #2 bne _0234B0CC ldr r0, [r1, #0x40] cmp r0, #4 bne _0234B0C0 bl ov02_0234B150 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0234B144 ; =ov02_0235AB64 ldr r2, [r0] cmp r2, #0 beq _0234B0B4 ldr r1, _0234B148 ; =ov02_023542B8 mov r0, #0x8000000 blx r2 _0234B0B4: mov r0, #9 bl ov02_0234ABD0 ldmia sp!, {r3, pc} _0234B0C0: cmp r0, #6 bne _0234B118 ldmia sp!, {r3, pc} _0234B0CC: cmp r0, #4 bne _0234B118 add r0, r1, #0x3e0 mov ip, #1 add r0, r0, #0x1000 mov r1, #0xd mov r2, #7 mov r3, #0x44 str ip, [sp] bl ov00_022C0810 cmp r0, #0 beq _0234B10C bl ov02_0234AC4C mov r0, #9 bl ov02_0234ABD0 ldmia sp!, {r3, pc} _0234B10C: mov r0, #5 bl ov02_0234ABD0 ldmia sp!, {r3, pc} _0234B118: mov r0, #4 bl ov02_0234ABD0 ldmia sp!, {r3, pc} _0234B124: ldr r0, _0234B144 ; =ov02_0235AB64 ldr r3, [r0] cmp r3, #0 ldmeqia sp!, {r3, pc} ldr r1, _0234B14C ; =ov02_02354298 mov r0, #0x8000000 blx r3 ldmia sp!, {r3, pc} .align 2, 0 _0234B144: .word ov02_0235AB64 _0234B148: .word ov02_023542B8 _0234B14C: .word ov02_02354298 arm_func_end ov02_0234B024 arm_func_start ov02_0234B150 ov02_0234B150: ; 0x0234B150 stmdb sp!, {r3, lr} mov r0, #6 bl ov02_0234ABD0 ldr r0, _0234B188 ; =ov02_0235AB64 mov r1, #0xd ldr r0, [r0, #4] add r0, r0, #0x1e00 bl ov00_022C1390 cmp r0, #2 moveq r0, #1 ldmeqia sp!, {r3, pc} bl ov02_0234AC4C mov r0, #0 ldmia sp!, {r3, pc} .align 2, 0 _0234B188: .word ov02_0235AB64 arm_func_end ov02_0234B150 arm_func_start ov02_0234B18C ov02_0234B18C: ; 0x0234B18C stmdb sp!, {r3, lr} ldr r0, _0234B1B8 ; =ov02_0235AB64 ldr r0, [r0, #4] add r0, r0, #0x1e00 bl ov00_022C13AC cmp r0, #2 moveq r0, #1 ldmeqia sp!, {r3, pc} bl ov02_0234AC4C mov r0, #0 ldmia sp!, {r3, pc} .align 2, 0 _0234B1B8: .word ov02_0235AB64 arm_func_end ov02_0234B18C arm_func_start ov02_0234B1BC ov02_0234B1BC: ; 0x0234B1BC stmdb sp!, {r3, lr} mov r0, #3 bl ov02_0234ABD0 ldr r0, _0234B1E8 ; =ov02_0234B1EC bl ov00_022C05C8 cmp r0, #2 moveq r0, #1 ldmeqia sp!, {r3, pc} bl ov02_0234AC4C mov r0, #0 ldmia sp!, {r3, pc} .align 2, 0 _0234B1E8: .word ov02_0234B1EC arm_func_end ov02_0234B1BC arm_func_start ov02_0234B1EC ov02_0234B1EC: ; 0x0234B1EC stmdb sp!, {r3, lr} ldrh r0, [r0, #2] cmp r0, #0 beq _0234B208 bl ov02_0234AC4C bl ov02_0234BBC0 ldmia sp!, {r3, pc} _0234B208: bl ov02_0234B240 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0234B238 ; =ov02_0235AB64 ldr r2, [r0] cmp r2, #0 beq _0234B230 ldr r1, _0234B23C ; =ov02_023542E8 mov r0, #0x8000000 blx r2 _0234B230: bl ov02_0234BBC0 ldmia sp!, {r3, pc} .align 2, 0 _0234B238: .word ov02_0235AB64 _0234B23C: .word ov02_023542E8 arm_func_end ov02_0234B1EC arm_func_start ov02_0234B240 ov02_0234B240: ; 0x0234B240 stmdb sp!, {r3, lr} ldr r0, _0234B264 ; =ov02_0234B268 bl ov00_022BFDAC cmp r0, #2 moveq r0, #1 ldmeqia sp!, {r3, pc} bl ov02_0234AC4C mov r0, #0 ldmia sp!, {r3, pc} .align 2, 0 _0234B264: .word ov02_0234B268 arm_func_end ov02_0234B240 arm_func_start ov02_0234B268 ov02_0234B268: ; 0x0234B268 stmdb sp!, {r3, lr} ldrh r0, [r0, #2] cmp r0, #0 beq _0234B280 bl ov02_0234AC4C ldmia sp!, {r3, pc} _0234B280: mov r0, #1 bl ov02_0234ABD0 ldmia sp!, {r3, pc} arm_func_end ov02_0234B268 arm_func_start ov02_0234B28C ov02_0234B28C: ; 0x0234B28C stmdb sp!, {r3, lr} ldr r0, _0234B2D8 ; =ov02_0235AB64 ldr r0, [r0, #4] ldr r0, [r0, #0x40] cmp r0, #6 movne r0, #0 ldmneia sp!, {r3, pc} mov r0, #3 bl ov02_0234ABD0 ldr r0, _0234B2D8 ; =ov02_0235AB64 ldr r0, [r0, #4] add r0, r0, #0x1e00 bl ov00_022C13AC cmp r0, #2 moveq r0, #1 ldmeqia sp!, {r3, pc} bl ov02_0234AC4C mov r0, #0 ldmia sp!, {r3, pc} .align 2, 0 _0234B2D8: .word ov02_0235AB64 arm_func_end ov02_0234B28C arm_func_start ov02_0234B2DC ov02_0234B2DC: ; 0x0234B2DC stmdb sp!, {r3, lr} mov r0, #3 bl ov02_0234ABD0 ldr r0, _0234B308 ; =ov02_0234B30C bl ov00_022C05C8 cmp r0, #2 moveq r0, #1 ldmeqia sp!, {r3, pc} bl ov02_0234AC4C mov r0, #0 ldmia sp!, {r3, pc} .align 2, 0 _0234B308: .word ov02_0234B30C arm_func_end ov02_0234B2DC arm_func_start ov02_0234B30C ov02_0234B30C: ; 0x0234B30C stmdb sp!, {r3, lr} ldrh r0, [r0, #2] cmp r0, #0 beq _0234B328 bl ov02_0234AC4C bl ov02_0234BBDC ldmia sp!, {r3, pc} _0234B328: bl ov02_0234B340 cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #9 bl ov02_0234ABD0 ldmia sp!, {r3, pc} arm_func_end ov02_0234B30C arm_func_start ov02_0234B340 ov02_0234B340: ; 0x0234B340 stmdb sp!, {r3, lr} mov r0, #3 bl ov02_0234ABD0 ldr r0, _0234B374 ; =ov02_0234B378 mov r1, #0 bl ov00_022C0134 cmp r0, #2 moveq r0, #1 ldmeqia sp!, {r3, pc} bl ov02_0234AC4C bl ov02_0234BBC0 mov r0, #0 ldmia sp!, {r3, pc} .align 2, 0 _0234B374: .word ov02_0234B378 arm_func_end ov02_0234B340 arm_func_start ov02_0234B378 ov02_0234B378: ; 0x0234B378 stmdb sp!, {r3, lr} ldrh r0, [r0, #2] cmp r0, #0 beq _0234B390 bl ov02_0234AC4C ldmia sp!, {r3, pc} _0234B390: mov r0, #1 bl ov02_0234ABD0 ldmia sp!, {r3, pc} arm_func_end ov02_0234B378 arm_func_start ov02_0234B39C ov02_0234B39C: ; 0x0234B39C stmdb sp!, {r3, lr} mov r0, #3 bl ov02_0234ABD0 ldr r0, _0234B3C8 ; =ov02_0234B3CC bl ov00_022BFB9C cmp r0, #2 moveq r0, #1 ldmeqia sp!, {r3, pc} bl ov02_0234AC4C mov r0, #0 ldmia sp!, {r3, pc} .align 2, 0 _0234B3C8: .word ov02_0234B3CC arm_func_end ov02_0234B39C arm_func_start ov02_0234B3CC ov02_0234B3CC: ; 0x0234B3CC stmdb sp!, {r4, lr} mov r4, r0 ldrh r0, [r4, #2] cmp r0, #0 beq _0234B3F4 mov r0, #9 bl ov02_0234ABD0 ldrh r0, [r4, #2] bl ov02_0234AC4C ldmia sp!, {r4, pc} _0234B3F4: mov r0, #1 bl ov02_0234ABD0 ldmia sp!, {r4, pc} arm_func_end ov02_0234B3CC arm_func_start ov02_0234B400 ov02_0234B400: ; 0x0234B400 stmdb sp!, {r3, lr} ldrh r0, [r0, #2] cmp r0, #0 beq _0234B41C mov r0, #0xa bl ov02_0234ABD0 ldmia sp!, {r3, pc} _0234B41C: mov r0, #0 bl ov02_0234ABD0 ldmia sp!, {r3, pc} arm_func_end ov02_0234B400 arm_func_start ov02_0234B428 ov02_0234B428: ; 0x0234B428 ldr r1, _0234B438 ; =ov02_0235AB64 ldr r1, [r1, #4] str r0, [r1, #8] bx lr .align 2, 0 _0234B438: .word ov02_0235AB64 arm_func_end ov02_0234B428 arm_func_start ov02_0234B43C ov02_0234B43C: ; 0x0234B43C ldr r0, _0234B44C ; =ov02_0235AB64 ldr r0, [r0, #4] ldrh r0, [r0, #0x52] bx lr .align 2, 0 _0234B44C: .word ov02_0235AB64 arm_func_end ov02_0234B43C arm_func_start ov02_0234B450 ov02_0234B450: ; 0x0234B450 ldr r0, _0234B460 ; =ov02_0235AB64 ldr r0, [r0, #4] ldr r0, [r0, #0x40] bx lr .align 2, 0 _0234B460: .word ov02_0235AB64 arm_func_end ov02_0234B450 arm_func_start ov02_0234B464 ov02_0234B464: ; 0x0234B464 stmdb sp!, {r3, lr} sub sp, sp, #8 add r0, sp, #0 bl sub_0207B9EC ldr r2, _0234B530 ; =0x027FFC3C ldrh r0, [sp] ldr r3, [r2] ldrh r2, [sp, #2] add r0, r0, r3 ldr r1, _0234B534 ; =ov02_0235AB64 add r2, r2, r0 ldrh r3, [sp, #4] ldr r0, [r1, #4] add r2, r3, r2 str r2, [r0, #0x58] ldr ip, [r1, #4] ldr r0, _0234B538 ; =0x00010DCD ldr r2, [ip, #0x58] mov r3, #0 mul r0, r2, r0 add r0, r0, #0x39 add r0, r0, #0x3000 str r0, [ip, #0x58] ldr r0, [r1, #4] mov r2, #0x65 strh r3, [r0, #0x5c] ldr r1, [r1, #4] mov r0, #3 strh r2, [r1, #0x5e] bl ov02_0234ABD0 mov r0, #1 bl ov02_0234B53C cmp r0, #0x18 bne _0234B508 mov r0, #0x18 bl ov02_0234AC4C mov r0, #9 bl ov02_0234ABD0 add sp, sp, #8 mov r0, #0 ldmia sp!, {r3, pc} _0234B508: cmp r0, #2 addeq sp, sp, #8 moveq r0, #1 ldmeqia sp!, {r3, pc} bl ov02_0234AC4C mov r0, #9 bl ov02_0234ABD0 mov r0, #0 add sp, sp, #8 ldmia sp!, {r3, pc} .align 2, 0 _0234B530: .word 0x027FFC3C _0234B534: .word ov02_0235AB64 _0234B538: .word 0x00010DCD arm_func_end ov02_0234B464 arm_func_start ov02_0234B53C ov02_0234B53C: ; 0x0234B53C stmdb sp!, {r4, lr} mov r4, r0 bl ov00_022BF640 cmp r0, #0x8000 bne _0234B568 mov r0, #3 bl ov02_0234AC4C mov r0, #9 bl ov02_0234ABD0 mov r0, #3 ldmia sp!, {r4, pc} _0234B568: cmp r0, #0 bne _0234B588 mov r0, #0x16 bl ov02_0234AC4C mov r0, #9 bl ov02_0234ABD0 mov r0, #0x18 ldmia sp!, {r4, pc} _0234B588: sub r1, r4, #1 mov r2, #1 tst r0, r2, lsl r1 bne _0234B5BC _0234B598: add r1, r4, #1 mov r1, r1, lsl #0x10 mov r4, r1, lsr #0x10 cmp r4, #0x10 movhi r0, #0x18 ldmhiia sp!, {r4, pc} sub r1, r4, #1 tst r0, r2, lsl r1 beq _0234B598 _0234B5BC: ldr r0, _0234B5D4 ; =ov02_0234B5D8 mov r1, r4 bl ov02_0234B6B0 mov r0, r0, lsl #0x10 mov r0, r0, lsr #0x10 ldmia sp!, {r4, pc} .align 2, 0 _0234B5D4: .word ov02_0234B5D8 arm_func_end ov02_0234B53C arm_func_start ov02_0234B5D8 ov02_0234B5D8: ; 0x0234B5D8 stmdb sp!, {r4, lr} mov r4, r0 ldrh r0, [r4, #2] cmp r0, #0 beq _0234B5FC bl ov02_0234AC4C mov r0, #9 bl ov02_0234ABD0 ldmia sp!, {r4, pc} _0234B5FC: ldr r0, _0234B6A8 ; =ov02_0235AB64 ldr ip, [r0] cmp ip, #0 beq _0234B620 ldrh r2, [r4, #8] ldrh r3, [r4, #0xa] ldr r1, _0234B6AC ; =ov02_02354340 mov r0, #0x8000000 blx ip _0234B620: ldr r0, _0234B6A8 ; =ov02_0235AB64 ldrh r2, [r4, #0xa] ldr r3, [r0, #4] ldrh ip, [r4, #8] ldrh r1, [r3, #0x5e] cmp r1, r2 bls _0234B658 strh r2, [r3, #0x5e] sub r1, ip, #1 mov r2, #1 mov r1, r2, lsl r1 ldr r0, [r0, #4] strh r1, [r0, #0x60] b _0234B670 _0234B658: bne _0234B670 ldrh r2, [r3, #0x60] sub r0, ip, #1 mov r1, #1 orr r0, r2, r1, lsl r0 strh r0, [r3, #0x60] _0234B670: add r0, ip, #1 mov r0, r0, lsl #0x10 mov r0, r0, lsr #0x10 bl ov02_0234B53C cmp r0, #0x18 bne _0234B694 mov r0, #7 bl ov02_0234ABD0 ldmia sp!, {r4, pc} _0234B694: cmp r0, #2 ldmeqia sp!, {r4, pc} mov r0, #9 bl ov02_0234ABD0 ldmia sp!, {r4, pc} .align 2, 0 _0234B6A8: .word ov02_0235AB64 _0234B6AC: .word ov02_02354340 arm_func_end ov02_0234B5D8 arm_func_start ov02_0234B6B0 ov02_0234B6B0: ; 0x0234B6B0 stmdb sp!, {r3, lr} mov r3, r1 mov ip, #0x1e mov r1, #3 mov r2, #0x11 str ip, [sp] bl ov00_022C1610 ldmia sp!, {r3, pc} arm_func_end ov02_0234B6B0 arm_func_start ov02_0234B6D0 ov02_0234B6D0: ; 0x0234B6D0 stmdb sp!, {r3, lr} ldr r0, _0234B740 ; =ov02_0235AB64 ldr r0, [r0, #4] ldr r0, [r0, #0x40] cmp r0, #7 beq _0234B6EC bl WaitForever2 _0234B6EC: mov r0, #1 bl ov02_0234ABD0 ldr r0, _0234B740 ; =ov02_0235AB64 ldr r0, [r0, #4] ldrh r0, [r0, #0x60] bl ov02_0234B748 ldr r1, _0234B740 ; =ov02_0235AB64 ldr r2, [r1, #4] strh r0, [r2, #0x5c] ldr r3, [r1] cmp r3, #0 beq _0234B730 ldr r0, [r1, #4] ldr r1, _0234B744 ; =ov02_02354358 ldrh r2, [r0, #0x5c] mov r0, #0x8000000 blx r3 _0234B730: ldr r0, _0234B740 ; =ov02_0235AB64 ldr r0, [r0, #4] ldrh r0, [r0, #0x5c] ldmia sp!, {r3, pc} .align 2, 0 _0234B740: .word ov02_0235AB64 _0234B744: .word ov02_02354358 arm_func_end ov02_0234B6D0 arm_func_start ov02_0234B748 ov02_0234B748: ; 0x0234B748 stmdb sp!, {r4, lr} mov r3, #0 mov r1, r3 mov ip, r3 mov r4, #1 _0234B75C: tst r0, r4, lsl ip beq _0234B77C add r3, ip, #1 add r2, r1, #1 mov r1, r3, lsl #0x10 mov r2, r2, lsl #0x10 mov r3, r1, asr #0x10 mov r1, r2, lsr #0x10 _0234B77C: add r2, ip, #1 mov r2, r2, lsl #0x10 mov ip, r2, asr #0x10 cmp ip, #0x10 blt _0234B75C cmp r1, #1 movls r0, r3 ldmlsia sp!, {r4, pc} ldr ip, _0234B828 ; =ov02_0235AB64 ldr r3, _0234B82C ; =0x00010DCD ldr r4, [ip, #4] mov r2, #0 ldr lr, [r4, #0x58] mul r3, lr, r3 add r3, r3, #0x39 add r3, r3, #0x3000 str r3, [r4, #0x58] ldr r3, [ip, #4] ldr r3, [r3, #0x58] and r3, r3, #0xff mul r3, r1, r3 mov r1, r3, lsl #8 mov r3, r1, lsr #0x10 _0234B7D8: tst r0, #1 beq _0234B804 cmp r3, #0 bne _0234B7F8 add r0, r2, #1 mov r0, r0, lsl #0x10 mov r0, r0, asr #0x10 ldmia sp!, {r4, pc} _0234B7F8: sub r1, r3, #1 mov r1, r1, lsl #0x10 mov r3, r1, lsr #0x10 _0234B804: add r1, r2, #1 mov r1, r1, lsl #0x10 mov r0, r0, lsl #0xf mov r2, r1, asr #0x10 cmp r2, #0x10 mov r0, r0, lsr #0x10 blt _0234B7D8 mov r0, #0 ldmia sp!, {r4, pc} .align 2, 0 _0234B828: .word ov02_0235AB64 _0234B82C: .word 0x00010DCD arm_func_end ov02_0234B748 arm_func_start ov02_0234B830 ov02_0234B830: ; 0x0234B830 stmdb sp!, {r3, lr} ldr r2, _0234B8A4 ; =ov02_0235AB64 mov r0, #0 ldr r1, [r2, #4] mov r3, #1 add r1, r1, #0x1000 str r0, [r1, #0x2a4] ldr r1, [r2, #4] add r1, r1, #0x1000 str r0, [r1, #0x2a0] ldr r1, [r2, #4] str r0, [r1, #0x48] ldr r1, [r2, #4] strh r0, [r1, #0x50] ldr r1, [r2, #4] strh r3, [r1, #0x52] ldr r1, [r2, #4] str r0, [r1, #0x54] ldr r1, [r2, #4] str r0, [r1] ldr r1, [r2, #4] strh r0, [r1, #4] ldr r1, [r2, #4] str r0, [r1, #0x4c] bl ov02_0234B8C8 cmp r0, #0 moveq r0, #0 movne r0, #1 ldmia sp!, {r3, pc} .align 2, 0 _0234B8A4: .word ov02_0235AB64 arm_func_end ov02_0234B830 arm_func_start ov02_0234B8A8 ov02_0234B8A8: ; 0x0234B8A8 stmdb sp!, {r3, lr} ldrh r0, [r0, #2] cmp r0, #8 ldmneia sp!, {r3, pc} mov r0, #9 bl ov02_0234ABD0 bl WaitForever2 ldmia sp!, {r3, pc} arm_func_end ov02_0234B8A8 arm_func_start ov02_0234B8C8 ov02_0234B8C8: ; 0x0234B8C8 stmdb sp!, {r3, lr} mov r0, #3 bl ov02_0234ABD0 ldr r0, _0234B90C ; =ov02_0235AB64 ldr r1, _0234B910 ; =ov02_0234B914 ldr r0, [r0, #4] mov r2, #2 add r0, r0, #0x80 bl ov00_022BFB14 cmp r0, #2 moveq r0, #1 ldmeqia sp!, {r3, pc} bl ov02_0234AC4C mov r0, #0xa bl ov02_0234ABD0 mov r0, #0 ldmia sp!, {r3, pc} .align 2, 0 _0234B90C: .word ov02_0235AB64 _0234B910: .word ov02_0234B914 arm_func_end ov02_0234B8C8 arm_func_start ov02_0234B914 ov02_0234B914: ; 0x0234B914 stmdb sp!, {r3, lr} ldrh r0, [r0, #2] cmp r0, #0 beq _0234B934 bl ov02_0234AC4C mov r0, #0xa bl ov02_0234ABD0 ldmia sp!, {r3, pc} _0234B934: ldr r0, _0234B960 ; =ov02_0234B8A8 bl ov00_022BF2C4 cmp r0, #0 beq _0234B954 bl ov02_0234AC4C mov r0, #0xa bl ov02_0234ABD0 ldmia sp!, {r3, pc} _0234B954: mov r0, #1 bl ov02_0234ABD0 ldmia sp!, {r3, pc} .align 2, 0 _0234B960: .word ov02_0234B8A8 arm_func_end ov02_0234B914 arm_func_start ov02_0234B964 ov02_0234B964: ; 0x0234B964 stmdb sp!, {r4, r5, r6, lr} ldr r3, _0234BACC ; =ov02_0235AB64 mov r6, r0 ldr r0, [r3, #4] mov r5, r1 ldr r0, [r0, #0x40] mov r4, r2 cmp r0, #1 beq _0234B990 bl WaitForever2 movs r0, #0 _0234B990: ldr r1, _0234BACC ; =ov02_0235AB64 mov r3, #0x180 ldr r0, [r1, #4] mov r2, #0xe0 add r0, r0, #0x1000 str r3, [r0, #0x2a4] ldr r0, [r1, #4] add r0, r0, #0x1000 str r2, [r0, #0x2a0] ldr r3, [r1] cmp r3, #0 beq _0234B9D8 ldr r0, [r1, #4] ldr r1, _0234BAD0 ; =ov02_02354310 add r0, r0, #0x1000 ldr r2, [r0, #0x2a4] mov r0, #0x8000000 blx r3 _0234B9D8: ldr r0, _0234BACC ; =ov02_0235AB64 ldr r3, [r0] cmp r3, #0 beq _0234BA00 ldr r0, [r0, #4] ldr r1, _0234BAD4 ; =ov02_02354328 add r0, r0, #0x1000 ldr r2, [r0, #0x2a0] mov r0, #0x8000000 blx r3 _0234BA00: ldr r1, _0234BACC ; =ov02_0235AB64 mov r0, #3 ldr r1, [r1, #4] str r6, [r1, #0x44] bl ov02_0234ABD0 ldr r0, _0234BACC ; =ov02_0235AB64 ldr r1, [r0, #4] strh r5, [r1, #0xc] ldr r0, [r0, #4] strh r4, [r0, #0x32] bl ov00_022BF6F0 ldr r1, _0234BACC ; =ov02_0235AB64 mov r2, #0xd0 ldr r3, [r1, #4] mov r4, #0x44 strh r0, [r3, #0x18] ldr r0, [r1, #4] mov r3, #2 strh r2, [r0, #0x34] ldr r0, [r1, #4] mov r2, #0 strh r4, [r0, #0x36] ldr r0, [r1, #4] mov r4, #1 strh r3, [r0, #0x10] ldr r0, [r1, #4] cmp r6, #2 strh r2, [r0, #0x16] ldr r0, [r1, #4] strh r2, [r0, #0x12] ldr r0, [r1, #4] strh r4, [r0, #0xe] ldr r0, _0234BACC ; =ov02_0235AB64 movne r4, r2 ldr r1, [r0, #4] cmp r6, #0 cmpne r6, #2 strh r4, [r1, #0x14] cmpne r6, #4 bne _0234BAA8 bl ov02_0234AC6C ldmia sp!, {r4, r5, r6, pc} _0234BAA8: ldr r3, [r0] cmp r3, #0 beq _0234BAC4 ldr r1, _0234BAD8 ; =ov02_02354370 mov r2, r6 mov r0, #0x8000000 blx r3 _0234BAC4: mov r0, #0 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _0234BACC: .word ov02_0235AB64 _0234BAD0: .word ov02_02354310 _0234BAD4: .word ov02_02354328 _0234BAD8: .word ov02_02354370 arm_func_end ov02_0234B964 arm_func_start ov02_0234BADC ov02_0234BADC: ; 0x0234BADC ldr r1, _0234BAEC ; =ov02_0235AB64 ldr r1, [r1, #4] str r0, [r1, #0x4c] bx lr .align 2, 0 _0234BAEC: .word ov02_0235AB64 arm_func_end ov02_0234BADC arm_func_start ov02_0234BAF0 ov02_0234BAF0: ; 0x0234BAF0 ldr r1, _0234BB10 ; =ov02_0235AB64 ldr ip, _0234BB14 ; =ov00_022C130C ldr r1, [r1, #4] mov r2, r0 add r0, r1, #0x3e0 add r0, r0, #0x1000 add r1, r1, #0x1c00 bx ip .align 2, 0 _0234BB10: .word ov02_0235AB64 _0234BB14: .word ov00_022C130C arm_func_end ov02_0234BAF0 arm_func_start ov02_0234BB18 ov02_0234BB18: ; 0x0234BB18 stmdb sp!, {r4, lr} ldr r2, _0234BBB4 ; =ov02_0235AB64 mov r1, r0 ldr r2, [r2, #4] add r0, r2, #0x3e0 add r0, r0, #0x1000 add r2, r2, #0x1c00 bl ov00_022C0AAC mov r4, r0 cmp r4, #7 bne _0234BB68 ldr r0, _0234BBB4 ; =ov02_0235AB64 ldr r2, [r0] cmp r2, #0 beq _0234BB60 ldr r1, _0234BBB8 ; =ov02_0235438C mov r0, #0x8000000 blx r2 _0234BB60: mov r0, #0 ldmia sp!, {r4, pc} _0234BB68: cmp r4, #5 bne _0234BB9C ldr r0, _0234BBB4 ; =ov02_0235AB64 ldr r2, [r0] cmp r2, #0 beq _0234BB8C ldr r1, _0234BBBC ; =ov02_023543BC mov r0, #0x8000000 blx r2 _0234BB8C: mov r0, r4 bl ov02_0234AC4C mov r0, #0 ldmia sp!, {r4, pc} _0234BB9C: cmp r4, #0 moveq r0, #1 ldmeqia sp!, {r4, pc} bl ov02_0234AC4C mov r0, #0 ldmia sp!, {r4, pc} .align 2, 0 _0234BBB4: .word ov02_0235AB64 _0234BBB8: .word ov02_0235438C _0234BBBC: .word ov02_023543BC arm_func_end ov02_0234BB18 arm_func_start ov02_0234BBC0 ov02_0234BBC0: ; 0x0234BBC0 stmdb sp!, {r3, lr} bl ov02_0234B39C cmp r0, #0 ldmneia sp!, {r3, pc} mov r0, #0xa bl ov02_0234ABD0 ldmia sp!, {r3, pc} arm_func_end ov02_0234BBC0 arm_func_start ov02_0234BBDC ov02_0234BBDC: ; 0x0234BBDC stmdb sp!, {r3, lr} ldr r0, _0234BCD8 ; =ov02_0235AB64 ldr r1, [r0, #4] ldr r2, [r1, #0x40] cmp r2, #1 bne _0234BC10 ldr r2, [r0] cmp r2, #0 ldmeqia sp!, {r3, pc} ldr r1, _0234BCDC ; =ov02_023543F0 mov r0, #0x8000000 blx r2 ldmia sp!, {r3, pc} _0234BC10: ldr r3, [r0] cmp r3, #0 beq _0234BC28 ldr r1, _0234BCE0 ; =ov02_02354414 mov r0, #0x8000000 blx r3 _0234BC28: ldr r0, _0234BCD8 ; =ov02_0235AB64 ldr r0, [r0, #4] ldr r0, [r0, #0x40] cmp r0, #6 cmpne r0, #5 cmpne r0, #4 mov r0, #3 beq _0234BC54 bl ov02_0234ABD0 bl ov02_0234BBC0 ldmia sp!, {r3, pc} _0234BC54: bl ov02_0234ABD0 ldr r0, _0234BCD8 ; =ov02_0235AB64 ldr r0, [r0, #4] ldr r0, [r0, #0x44] cmp r0, #5 addls pc, pc, r0, lsl #2 ldmia sp!, {r3, pc} _0234BC70: ; jump table b _0234BCC4 ; case 0 b _0234BC9C ; case 1 b _0234BCB0 ; case 2 b _0234BC88 ; case 3 b _0234BCC4 ; case 4 b _0234BC9C ; case 5 _0234BC88: bl ov02_0234B28C cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_0234BBC0 ldmia sp!, {r3, pc} _0234BC9C: bl ov02_0234B2DC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_0234BBC0 ldmia sp!, {r3, pc} _0234BCB0: bl ov02_0234B18C cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_0234BBC0 ldmia sp!, {r3, pc} _0234BCC4: bl ov02_0234B1BC cmp r0, #0 ldmneia sp!, {r3, pc} bl ov02_0234BBC0 ldmia sp!, {r3, pc} .align 2, 0 _0234BCD8: .word ov02_0235AB64 _0234BCDC: .word ov02_023543F0 _0234BCE0: .word ov02_02354414 arm_func_end ov02_0234BBDC arm_func_start ov02_0234BCE4 ov02_0234BCE4: ; 0x0234BCE4 stmdb sp!, {r3, lr} ldr r0, _0234BD2C ; =ov02_0235AB64 ldr r0, [r0, #4] ldr r0, [r0, #0x40] cmp r0, #1 beq _0234BD00 bl WaitForever2 _0234BD00: mov r0, #3 bl ov02_0234ABD0 ldr r0, _0234BD30 ; =ov02_0234B400 bl ov00_022BFBD4 cmp r0, #2 moveq r0, #1 ldmeqia sp!, {r3, pc} mov r0, #9 bl ov02_0234ABD0 mov r0, #0 ldmia sp!, {r3, pc} .align 2, 0 _0234BD2C: .word ov02_0235AB64 _0234BD30: .word ov02_0234B400 arm_func_end ov02_0234BCE4 arm_func_start ov02_0234BD34 ov02_0234BD34: ; 0x0234BD34 stmdb sp!, {r4, lr} ldr r2, _0234BE20 ; =ov02_0235AB6C mov r4, r1 str r0, [r2] add r0, r0, #0xb00 bl ov02_02349EFC ldr r1, _0234BE20 ; =ov02_0235AB6C mov r3, #0 ldr r0, [r1] mov r2, #1 add r0, r0, #0x600 strh r3, [r0, #0x48] ldr r0, [r1] add r0, r0, #0x600 strh r3, [r0, #0x4a] ldr r0, [r1] strb r2, [r0, #0xa90] ldr r0, [r1] strb r2, [r0, #0xa91] ldr r0, [r1] str r3, [r0, #0xa9c] bl ov02_0234C8E4 ldr r0, _0234BE20 ; =ov02_0235AB6C ldr r3, [r4] ldr r2, [r0] mov r1, #2 str r3, [r2, #0xab4] ldr r3, [r4, #4] ldr r2, [r0] str r3, [r2, #0xab8] ldr r3, [r4, #8] ldr r2, [r0] str r3, [r2, #0xabc] ldr r3, [r4, #0xc] ldr r2, [r0] str r3, [r2, #0xac0] ldr r3, [r4, #0x10] ldr r2, [r0] str r3, [r2, #0xac4] ldr r3, [r4, #0x14] ldr r2, [r0] str r3, [r2, #0xac8] ldrb r3, [r4, #0x18] ldr r2, [r0] strb r3, [r2, #0xa92] ldr r0, [r0] strb r1, [r0, #0xacc] bl sub_0207AE44 ldr r0, _0234BE20 ; =ov02_0235AB6C ldr r0, [r0] add r0, r0, #0x24c add r0, r0, #0x400 bl ov00_022ED660 bl sub_0207AE44 bl ov02_02347D1C ldr r1, _0234BE20 ; =ov02_0235AB6C ldr r1, [r1] str r0, [r1, #0xaa4] ldmia sp!, {r4, pc} .align 2, 0 _0234BE20: .word ov02_0235AB6C arm_func_end ov02_0234BD34 arm_func_start ov02_0234BE24 ov02_0234BE24: ; 0x0234BE24 stmdb sp!, {r3, lr} ldr r0, _0234BEFC ; =ov02_0235AB6C ldr r2, [r0] ldrb r1, [r2, #0xa90] cmp r1, #1 cmpne r1, #0x14 cmpne r1, #0x17 cmpne r1, #0x1a cmpne r1, #0x1d bne _0234BE6C mov r1, #0x22 strb r1, [r2, #0xa90] ldr r0, _0234BEFC ; =ov02_0235AB6C mov r1, #0 ldr r0, [r0] strb r1, [r0, #0xaac] mov r0, #1 ldmia sp!, {r3, pc} _0234BE6C: cmp r1, #4 cmpne r1, #5 cmpne r1, #6 cmpne r1, #0xd bne _0234BEC0 cmp r1, #4 bne _0234BE98 ldr r0, [r2, #0xa98] cmp r0, #6 movlo r0, #0 ldmloia sp!, {r3, pc} _0234BE98: bl ov00_022C759C ldr r0, _0234BEFC ; =ov02_0235AB6C mov r3, #0x10 ldr r1, [r0] mov r2, #2 strb r3, [r1, #0xa90] ldr r1, [r0] mov r0, #1 strb r2, [r1, #0xaac] ldmia sp!, {r3, pc} _0234BEC0: add r0, r1, #0xf7 and r0, r0, #0xff cmp r0, #1 bhi _0234BEE0 mov r0, #0x20 strb r0, [r2, #0xa90] mov r0, #1 ldmia sp!, {r3, pc} _0234BEE0: cmp r1, #0xc movne r0, #0 ldmneia sp!, {r3, pc} mov r0, #0x22 strb r0, [r2, #0xa90] mov r0, #1 ldmia sp!, {r3, pc} .align 2, 0 _0234BEFC: .word ov02_0235AB6C arm_func_end ov02_0234BE24 arm_func_start ov02_0234BF00 ov02_0234BF00: ; 0x0234BF00 stmdb sp!, {r3, lr} ldr r0, _0234BF7C ; =ov02_0235AB6C ldr r0, [r0] ldr r0, [r0, #0xac8] bl ov02_0234B428 ldr r0, _0234BF7C ; =ov02_0235AB6C mov r1, #1 ldr r0, [r0] strb r1, [r0, #0xa90] bl ov00_022BF96C ldr r3, _0234BF7C ; =ov02_0235AB6C mov r2, #0x40 ldr r1, [r3] add r1, r1, #0x600 strh r0, [r1, #0x48] ldr r1, [r3] ldr r0, [r1, #0xaa4] add r1, r1, #0xa50 bl MemcpyFast ldr r0, _0234BF7C ; =ov02_0235AB6C mov r2, #0 ldr r1, [r0] strb r2, [r1, #0xa93] ldr r1, [r0] str r2, [r1, #0x204] ldr r0, [r0] add r0, r0, #0x600 ldrh r1, [r0, #0x48] add r1, r1, #1 strh r1, [r0, #0x48] ldmia sp!, {r3, pc} .align 2, 0 _0234BF7C: .word ov02_0235AB6C arm_func_end ov02_0234BF00 arm_func_start ov02_0234BF80 ov02_0234BF80: ; 0x0234BF80 stmdb sp!, {r3, lr} ldr r0, _0234BFC4 ; =ov02_0235AB6C ldr r0, [r0] ldrb r0, [r0, #0xa90] cmp r0, #1 cmpne r0, #0x1a cmpne r0, #0x1d movne r0, #0 ldmneia sp!, {r3, pc} bl ov02_0234BF00 bl ov02_0234B830 ldr r0, _0234BFC4 ; =ov02_0235AB6C mov r2, #2 ldr r1, [r0] mov r0, #1 strb r2, [r1, #0xa90] ldmia sp!, {r3, pc} .align 2, 0 _0234BFC4: .word ov02_0235AB6C arm_func_end ov02_0234BF80 arm_func_start ov02_0234BFC8 ov02_0234BFC8: ; 0x0234BFC8 stmdb sp!, {r3, lr} ldr r0, _0234BFF8 ; =ov02_0235AB6C ldr r1, [r0] ldrb r0, [r1, #0xa90] cmp r0, #5 movne r0, #0 ldmneia sp!, {r3, pc} mov r0, #6 strb r0, [r1, #0xa90] bl ov02_0234A3C8 mov r0, #1 ldmia sp!, {r3, pc} .align 2, 0 _0234BFF8: .word ov02_0235AB6C arm_func_end ov02_0234BFC8 arm_func_start ov02_0234BFFC ov02_0234BFFC: ; 0x0234BFFC stmdb sp!, {r3, lr} ldr r1, _0234C378 ; =ov02_0235AB6C ldr r0, [r1] ldrb r2, [r0, #0xa90] cmp r2, #0x22 addls pc, pc, r2, lsl #2 ldmia sp!, {r3, pc} _0234C018: ; jump table ldmia sp!, {r3, pc} ; case 0 b _0234C0A4 ; case 1 b _0234C0E0 ; case 2 b _0234C0E8 ; case 3 b _0234C100 ; case 4 b _0234C114 ; case 5 b _0234C114 ; case 6 b _0234C11C ; case 7 b _0234C124 ; case 8 b _0234C124 ; case 9 b _0234C124 ; case 10 b _0234C12C ; case 11 ldmia sp!, {r3, pc} ; case 12 ldmia sp!, {r3, pc} ; case 13 ldmia sp!, {r3, pc} ; case 14 ldmia sp!, {r3, pc} ; case 15 b _0234C134 ; case 16 b _0234C14C ; case 17 b _0234C168 ; case 18 b _0234C18C ; case 19 ldmia sp!, {r3, pc} ; case 20 b _0234C1C4 ; case 21 b _0234C1E8 ; case 22 ldmia sp!, {r3, pc} ; case 23 b _0234C220 ; case 24 b _0234C244 ; case 25 ldmia sp!, {r3, pc} ; case 26 b _0234C27C ; case 27 b _0234C2A0 ; case 28 ldmia sp!, {r3, pc} ; case 29 b _0234C370 ; case 30 ldmia sp!, {r3, pc} ; case 31 b _0234C314 ; case 32 b _0234C338 ; case 33 ldmia sp!, {r3, pc} ; case 34 _0234C0A4: ldrb r2, [r0, #0xaac] cmp r2, #1 bne _0234C0C0 mov r1, #0 strb r1, [r0, #0xaac] bl ov02_0234BF80 ldmia sp!, {r3, pc} _0234C0C0: cmp r2, #2 ldmneia sp!, {r3, pc} mov r2, #0 strb r2, [r0, #0xaac] ldr r0, [r1] mov r1, #0x22 strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C0E0: bl ov02_0234C3D4 ldmia sp!, {r3, pc} _0234C0E8: bl ov02_0234C47C ldr r0, _0234C378 ; =ov02_0235AB6C mov r1, #4 ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C100: ldr r1, [r0, #0xa98] add r1, r1, #1 str r1, [r0, #0xa98] bl ov02_0234C4A0 ldmia sp!, {r3, pc} _0234C114: bl ov02_0234C4A0 ldmia sp!, {r3, pc} _0234C11C: bl ov02_0234C658 ldmia sp!, {r3, pc} _0234C124: bl ov02_0234C684 ldmia sp!, {r3, pc} _0234C12C: bl ov02_0234C860 ldmia sp!, {r3, pc} _0234C134: mov r2, #0 str r2, [r0, #0xa9c] ldr r0, [r1] mov r1, #0x11 strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C14C: ldr r2, [r0, #0xa9c] add r1, r2, #1 str r1, [r0, #0xa9c] cmp r2, #0x1e ldmlsia sp!, {r3, pc} bl ov02_0234C878 ldmia sp!, {r3, pc} _0234C168: bl ov00_022C759C ldr r0, _0234C378 ; =ov02_0235AB6C mov r3, #0 ldr r2, [r0] mov r1, #0x16 str r3, [r2, #0xa9c] ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C18C: ldr r2, [r0, #0xa9c] add r1, r2, #1 str r1, [r0, #0xa9c] cmp r2, #0x1e ldmlsia sp!, {r3, pc} bl ov02_0234B450 cmp r0, #1 ldmneia sp!, {r3, pc} bl ov02_0234BCE4 ldr r0, _0234C378 ; =ov02_0235AB6C mov r1, #0x14 ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C1C4: bl ov02_0234BBDC ldr r0, _0234C378 ; =ov02_0235AB6C mov r3, #0 ldr r2, [r0] mov r1, #0x16 str r3, [r2, #0xa9c] ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C1E8: ldr r2, [r0, #0xa9c] add r1, r2, #1 str r1, [r0, #0xa9c] cmp r2, #0x1e ldmlsia sp!, {r3, pc} bl ov02_0234B450 cmp r0, #1 ldmneia sp!, {r3, pc} bl ov02_0234BCE4 ldr r0, _0234C378 ; =ov02_0235AB6C mov r1, #0x17 ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C220: bl ov02_0234BBDC ldr r0, _0234C378 ; =ov02_0235AB6C mov r3, #0 ldr r2, [r0] mov r1, #0x19 str r3, [r2, #0xa9c] ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C244: ldr r2, [r0, #0xa9c] add r1, r2, #1 str r1, [r0, #0xa9c] cmp r2, #0x1e ldmlsia sp!, {r3, pc} bl ov02_0234B450 cmp r0, #1 ldmneia sp!, {r3, pc} bl ov02_0234BCE4 ldr r0, _0234C378 ; =ov02_0235AB6C mov r1, #0x1a ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C27C: bl ov02_0234BBDC ldr r0, _0234C378 ; =ov02_0235AB6C mov r3, #0 ldr r2, [r0] mov r1, #0x1c str r3, [r2, #0xa9c] ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C2A0: ldr r2, [r0, #0xa9c] add r1, r2, #1 str r1, [r0, #0xa9c] cmp r2, #0x1e ldmlsia sp!, {r3, pc} bl ov02_0234B450 cmp r0, #1 bne _0234C2D8 bl ov02_0234BCE4 ldr r0, _0234C378 ; =ov02_0235AB6C mov r1, #0x1d ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C2D8: ldr r1, _0234C378 ; =ov02_0235AB6C ldr r0, _0234C37C ; =0x88888889 ldr r1, [r1] mov r2, #0x1e ldr r3, [r1, #0xa9c] umull r0, r1, r3, r0 mov r1, r1, lsr #4 umull r0, r1, r2, r1 sub r1, r3, r0 cmp r1, #1 ldmneia sp!, {r3, pc} cmp r3, #0x37 ldmlsia sp!, {r3, pc} bl ov02_0234BBDC ldmia sp!, {r3, pc} _0234C314: bl ov02_0234BBDC ldr r0, _0234C378 ; =ov02_0235AB6C mov r3, #0 ldr r2, [r0] mov r1, #0x21 str r3, [r2, #0xa9c] ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C338: ldr r2, [r0, #0xa9c] add r1, r2, #1 str r1, [r0, #0xa9c] cmp r2, #0x1e ldmlsia sp!, {r3, pc} bl ov02_0234B450 cmp r0, #1 ldmneia sp!, {r3, pc} bl ov02_0234BCE4 ldr r0, _0234C378 ; =ov02_0235AB6C mov r1, #0x22 ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C370: bl ov02_0234BBDC ldmia sp!, {r3, pc} .align 2, 0 _0234C378: .word ov02_0235AB6C _0234C37C: .word 0x88888889 arm_func_end ov02_0234BFFC arm_func_start ov02_0234C380 ov02_0234C380: ; 0x0234C380 ldr r2, _0234C3C0 ; =ov02_0235AB6C ldr r3, [r2] ldrb r3, [r3, #0xa90] strb r3, [r0] ldr r0, [r2] ldrb r2, [r0, #0xa90] ldrb r0, [r0, #0xa91] cmp r2, r0 movne r0, #1 moveq r0, #0 strb r0, [r1] ldr r0, _0234C3C0 ; =ov02_0235AB6C ldr r1, [r0] ldrb r0, [r1, #0xa90] strb r0, [r1, #0xa91] bx lr .align 2, 0 _0234C3C0: .word ov02_0235AB6C arm_func_end ov02_0234C380 arm_func_start ov02_0234C3C4 ov02_0234C3C4: ; 0x0234C3C4 ldr ip, _0234C3D0 ; =ov00_022C32E4 mov r0, #1 bx ip .align 2, 0 _0234C3D0: .word ov00_022C32E4 arm_func_end ov02_0234C3C4 arm_func_start ov02_0234C3D4 ov02_0234C3D4: ; 0x0234C3D4 stmdb sp!, {r3, lr} bl ov02_0234B450 cmp r0, #9 addls pc, pc, r0, lsl #2 b _0234C470 _0234C3E8: ; jump table b _0234C448 ; case 0 b _0234C410 ; case 1 b _0234C470 ; case 2 ldmia sp!, {r3, pc} ; case 3 b _0234C470 ; case 4 b _0234C470 ; case 5 b _0234C470 ; case 6 b _0234C418 ; case 7 b _0234C470 ; case 8 b _0234C468 ; case 9 _0234C410: bl ov02_0234B464 ldmia sp!, {r3, pc} _0234C418: bl ov02_0234B6D0 ldr r2, _0234C478 ; =ov02_0235AB6C mov ip, #0 ldr r1, [r2] mov r3, #3 add r1, r1, #0x600 strh r0, [r1, #0x4a] ldr r0, [r2] str ip, [r0, #0xa98] ldr r0, [r2] strb r3, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C448: ldr r0, _0234C478 ; =ov02_0235AB6C mov r3, #0 ldr r2, [r0] mov r1, #3 str r3, [r2, #0xa98] ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C468: bl ov02_0234BBC0 ldmia sp!, {r3, pc} _0234C470: bl WaitForever2 ldmia sp!, {r3, pc} .align 2, 0 _0234C478: .word ov02_0235AB6C arm_func_end ov02_0234C3D4 arm_func_start ov02_0234C47C ov02_0234C47C: ; 0x0234C47C ldr r0, _0234C498 ; =ov02_0235AB6C ldr ip, _0234C49C ; =ov02_02349F3C ldr r2, [r0] add r0, r2, #0x600 ldrh r1, [r0, #0x48] ldr r0, [r2, #0xac8] bx ip .align 2, 0 _0234C498: .word ov02_0235AB6C _0234C49C: .word ov02_02349F3C arm_func_end ov02_0234C47C arm_func_start ov02_0234C4A0 ov02_0234C4A0: ; 0x0234C4A0 stmdb sp!, {r3, lr} bl ov02_0234A984 cmp r0, #7 addls pc, pc, r0, lsl #2 ldmia sp!, {r3, pc} _0234C4B4: ; jump table b _0234C604 ; case 0 b _0234C4D4 ; case 1 b _0234C4F4 ; case 2 b _0234C584 ; case 3 ldmia sp!, {r3, pc} ; case 4 b _0234C5D8 ; case 5 ldmia sp!, {r3, pc} ; case 6 b _0234C5EC ; case 7 _0234C4D4: ldr r0, _0234C654 ; =ov02_0235AB6C ldr r2, [r0] add r0, r2, #0x600 ldrh r1, [r0, #0x4a] add r0, r2, #0x2b4 add r0, r0, #0x800 bl ov02_0234A05C ldmia sp!, {r3, pc} _0234C4F4: mov r0, #2 bl ov02_0234A998 cmp r0, #0 beq _0234C518 ldr r0, _0234C654 ; =ov02_0235AB6C mov r1, #5 ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C518: mov r0, #3 bl ov02_0234A998 cmp r0, #0 bne _0234C538 mov r0, #4 bl ov02_0234A998 cmp r0, #0 beq _0234C54C _0234C538: ldr r0, _0234C654 ; =ov02_0235AB6C mov r1, #6 ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C54C: ldr r0, _0234C654 ; =ov02_0235AB6C ldr r0, [r0] ldrb r0, [r0, #0xa90] cmp r0, #5 ldmneia sp!, {r3, pc} mov r0, #2 bl ov02_0234A998 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0234C654 ; =ov02_0235AB6C mov r1, #0xd ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C584: bl ov02_0234A4A8 cmp r0, #0 beq _0234C598 bl ov02_0234A510 ldmia sp!, {r3, pc} _0234C598: ldr r0, _0234C654 ; =ov02_0235AB6C ldr r0, [r0] ldrb r0, [r0, #0xa90] add r0, r0, #0xfa and r0, r0, #0xff cmp r0, #1 ldmhiia sp!, {r3, pc} mov r0, #3 bl ov02_0234A998 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, _0234C654 ; =ov02_0235AB6C mov r1, #0x12 ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C5D8: ldr r0, _0234C654 ; =ov02_0235AB6C mov r1, #7 ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C5EC: bl ov02_0234A608 ldr r0, _0234C654 ; =ov02_0235AB6C mov r1, #1 ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C604: bl ov02_0234B450 cmp r0, #0 beq _0234C62C cmp r0, #1 beq _0234C624 cmp r0, #3 ldmeqia sp!, {r3, pc} b _0234C640 _0234C624: bl ov02_0234BCE4 ldmia sp!, {r3, pc} _0234C62C: ldr r0, _0234C654 ; =ov02_0235AB6C mov r1, #0x1f ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C640: ldr r0, _0234C654 ; =ov02_0235AB6C mov r1, #0x1f ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} .align 2, 0 _0234C654: .word ov02_0235AB6C arm_func_end ov02_0234C4A0 arm_func_start ov02_0234C658 ov02_0234C658: ; 0x0234C658 stmdb sp!, {r3, lr} bl ov02_0234C8E4 ldr r0, _0234C67C ; =ov02_0234C8A8 bl ov02_0234BADC ldr r0, _0234C680 ; =ov02_0235AB6C mov r1, #8 ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} .align 2, 0 _0234C67C: .word ov02_0234C8A8 _0234C680: .word ov02_0235AB6C arm_func_end ov02_0234C658 arm_func_start ov02_0234C684 ov02_0234C684: ; 0x0234C684 stmdb sp!, {r3, lr} bl ov02_0234B450 cmp r0, #6 addls pc, pc, r0, lsl #2 ldmia sp!, {r3, pc} _0234C698: ; jump table ldmia sp!, {r3, pc} ; case 0 b _0234C6B4 ; case 1 ldmia sp!, {r3, pc} ; case 2 ldmia sp!, {r3, pc} ; case 3 b _0234C6E0 ; case 4 b _0234C6E0 ; case 5 b _0234C6E0 ; case 6 _0234C6B4: ldr r1, _0234C85C ; =ov02_0235AB6C mov r0, #4 ldr r1, [r1] add r1, r1, #0x600 ldrh r3, [r1, #0x48] ldrh r2, [r1, #0x4a] add r1, r3, #1 mov r1, r1, lsl #0x10 mov r1, r1, lsr #0x10 bl ov02_0234B964 ldmia sp!, {r3, pc} _0234C6E0: ldr r1, _0234C85C ; =ov02_0235AB6C mov r0, #0 ldr r2, [r1] add r1, r2, #0x200 ldrh r1, [r1] ldr ip, [r2, #0xaa4] mov r3, r1, lsr #0x1f rsb r2, r3, r1, lsl #28 add r2, r3, r2, ror #28 add r2, ip, r2, lsl #6 bl ov02_0234C928 bl ov02_0234CA90 ldr r0, _0234C85C ; =ov02_0235AB6C ldr r1, [r0] ldrb r0, [r1, #0xa90] cmp r0, #0x1b ldmeqia sp!, {r3, pc} ldr r0, [r1, #0x204] cmp r0, #0x1e0 movhi r0, #0x1b strhib r0, [r1, #0xa90] ldmhiia sp!, {r3, pc} bl ov02_0234CB74 cmp r0, #0x10 beq _0234C750 bl ov02_0234CB74 cmp r0, #0x20 bne _0234C768 _0234C750: bl ov02_0234CB74 ldr r0, _0234C85C ; =ov02_0235AB6C mov r1, #0xa ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C768: bl ov02_0234CB74 cmp r0, #0x40 bne _0234C788 ldr r0, _0234C85C ; =ov02_0235AB6C mov r1, #0xb ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C788: bl ov02_0234CB74 cmp r0, #0xff bne _0234C7A8 ldr r0, _0234C85C ; =ov02_0235AB6C mov r1, #0x1b ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C7A8: bl ov02_0234CB74 cmp r0, #0x50 bne _0234C7C8 ldr r0, _0234C85C ; =ov02_0235AB6C mov r1, #0x15 ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C7C8: bl ov02_0234CB74 cmp r0, #0x60 bne _0234C7E8 ldr r0, _0234C85C ; =ov02_0235AB6C mov r1, #0x18 ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C7E8: bl ov02_0234CB74 cmp r0, #0x70 bne _0234C808 ldr r0, _0234C85C ; =ov02_0235AB6C mov r1, #0x1b ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C808: bl ov02_0234CB74 cmp r0, #0 bne _0234C828 ldr r0, _0234C85C ; =ov02_0235AB6C mov r1, #8 ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C828: bl ov02_0234CB74 cmp r0, #0xbd bne _0234C848 ldr r0, _0234C85C ; =ov02_0235AB6C mov r1, #9 ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} _0234C848: ldr r0, _0234C85C ; =ov02_0235AB6C mov r1, #0x1f ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, pc} .align 2, 0 _0234C85C: .word ov02_0235AB6C arm_func_end ov02_0234C684 arm_func_start ov02_0234C860 ov02_0234C860: ; 0x0234C860 ldr r0, _0234C874 ; =ov02_0235AB6C mov r1, #0xc ldr r0, [r0] strb r1, [r0, #0xa90] bx lr .align 2, 0 _0234C874: .word ov02_0235AB6C arm_func_end ov02_0234C860 arm_func_start ov02_0234C878 ov02_0234C878: ; 0x0234C878 stmdb sp!, {r3, lr} bl ov02_0234B450 cmp r0, #1 movne r0, #0 ldmneia sp!, {r3, pc} bl ov02_0234BCE4 ldr r1, _0234C8A4 ; =ov02_0235AB6C mov r0, #1 ldr r1, [r1] strb r0, [r1, #0xa90] ldmia sp!, {r3, pc} .align 2, 0 _0234C8A4: .word ov02_0235AB6C arm_func_end ov02_0234C878 arm_func_start ov02_0234C8A8 ov02_0234C8A8: ; 0x0234C8A8 stmdb sp!, {r4, lr} add r0, r0, #0xa bl ov02_0234AAEC movs r4, r0 moveq r0, #0 ldmeqia sp!, {r4, pc} bl ov02_0234AAB8 ldr r1, _0234C8E0 ; =ov02_0235AB6C sub r2, r4, #1 ldr r1, [r1] add r1, r1, r2, lsl #2 str r0, [r1, #0xaa0] mov r0, #1 ldmia sp!, {r4, pc} .align 2, 0 _0234C8E0: .word ov02_0235AB6C arm_func_end ov02_0234C8A8 arm_func_start ov02_0234C8E4 ov02_0234C8E4: ; 0x0234C8E4 stmdb sp!, {r3, lr} ldr r0, _0234C924 ; =ov02_0235AB6C mov r1, #0 ldr r0, [r0] mov r2, #0x100 add r0, r0, #0x100 bl MemsetFast ldr r0, _0234C924 ; =ov02_0235AB6C mov r1, #0 ldr r0, [r0] mov r2, #0x100 bl MemsetFast ldr r0, _0234C924 ; =ov02_0235AB6C ldr r0, [r0] str r0, [r0, #0xab0] ldmia sp!, {r3, pc} .align 2, 0 _0234C924: .word ov02_0235AB6C arm_func_end ov02_0234C8E4 arm_func_start ov02_0234C928 ov02_0234C928: ; 0x0234C928 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} ldr r3, _0234CA8C ; =ov02_0235AB6C ldr r5, [r3] ldrb r4, [r5, #0xa93] cmp r4, #1 bne _0234C970 ldr r4, [r5, #0xab0] strh r0, [r4] ldr r4, [r3] mov r0, r2 ldr r4, [r4, #0xab0] mov r2, #0x40 strh r1, [r4, #2] ldr r1, [r3] ldr r1, [r1, #0xab0] add r1, r1, #4 bl MemcpyFast b _0234C99C _0234C970: ldr r0, [r5, #0x204] mov r1, #0xbc add r0, r0, #1 str r0, [r5, #0x204] ldr r0, [r3] ldr r0, [r0, #0xab0] strh r1, [r0] ldr r0, [r3] ldrb r1, [r0, #0xa92] ldr r0, [r0, #0xab0] strb r1, [r0, #4] _0234C99C: bl ov02_0234B450 cmp r0, #5 ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} ldr r0, _0234CA8C ; =ov02_0235AB6C ldr r0, [r0] bl ov02_0234BB18 cmp r0, #0 bne _0234C9D4 ldr r0, _0234CA8C ; =ov02_0235AB6C ldr r1, [r0] ldr r0, [r1, #0x204] add r0, r0, #4 str r0, [r1, #0x204] ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} _0234C9D4: ldr r0, _0234CA8C ; =ov02_0235AB6C ldr r1, [r0] ldrb r0, [r1, #0xa93] cmp r0, #0 bne _0234C9F8 ldr r0, [r1, #0x204] add r0, r0, #1 str r0, [r1, #0x204] b _0234CA20 _0234C9F8: mov r0, #0 str r0, [r1, #0x204] bl ov02_0234B43C cmp r0, #3 beq _0234CA20 ldr r0, _0234CA8C ; =ov02_0235AB6C mov r1, #0x1b ldr r0, [r0] strb r1, [r0, #0xa90] ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} _0234CA20: mov r7, #0 mov r6, #0x44 ldr sb, _0234CA8C ; =ov02_0235AB6C mov r4, r7 mov r5, #1 mov r8, r6 _0234CA38: mov r0, r7 bl ov02_0234BAF0 cmp r0, #0 ldreq r0, [sb] addeq r0, r0, r7, lsl #2 streq r4, [r0, #0x208] beq _0234CA74 ldr r1, [sb] mov r2, r6 add r1, r1, #0x100 mla r1, r7, r8, r1 bl MemcpyFast ldr r0, [sb] add r0, r0, r7, lsl #2 str r5, [r0, #0x208] _0234CA74: add r0, r7, #1 mov r0, r0, lsl #0x10 mov r7, r0, lsr #0x10 cmp r7, #2 blo _0234CA38 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} .align 2, 0 _0234CA8C: .word ov02_0235AB6C arm_func_end ov02_0234C928 arm_func_start ov02_0234CA90 ov02_0234CA90: ; 0x0234CA90 stmdb sp!, {r4, r5, r6, r7, r8, lr} mov ip, #0 ldr r4, _0234CB70 ; =ov02_0235AB6C mov r0, #1 mov r5, ip mov r1, #0xbc mov r2, ip mov lr, #0x44 _0234CAB0: ldr r3, [r4] add r6, r3, ip, lsl #2 ldr r6, [r6, #0x208] cmp r6, #0 beq _0234CB60 mul r7, ip, lr cmp ip, #1 add r8, r3, #0x100 bne _0234CB60 ldrb r6, [r3, #0xa93] cmp r6, #1 bne _0234CB30 ldrh r6, [r8, r7] cmp r6, #0x10 ldmneia sp!, {r4, r5, r6, r7, r8, pc} ldr r6, [r3, #0xa94] add r6, r6, #1 str r6, [r3, #0xa94] ldr r6, [r4] ldr r3, [r6, #0xa94] tst r3, #1 bne _0234CB60 add r3, r6, #0x200 ldrh r6, [r3] add r6, r6, #1 strh r6, [r3] ldr r3, [r4] add r3, r3, #0x200 ldrh r6, [r3] cmp r6, #0x24 strhsh r2, [r3] b _0234CB60 _0234CB30: add r3, r3, #0x200 strh r1, [r3, #2] ldrh r3, [r8, r7] cmp r3, #0xbd bne _0234CB60 ldr r3, [r4] strb r0, [r3, #0xa93] ldr r3, [r4] add r3, r3, #0x200 strh r5, [r3] ldr r3, [r4] str r5, [r3, #0xa94] _0234CB60: add ip, ip, #1 cmp ip, #0x10 blt _0234CAB0 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _0234CB70: .word ov02_0235AB6C arm_func_end ov02_0234CA90 arm_func_start ov02_0234CB74 ov02_0234CB74: ; 0x0234CB74 ldr r0, _0234CB88 ; =ov02_0235AB6C ldr r0, [r0] add r0, r0, #0x100 ldrh r0, [r0, #0x44] bx lr .align 2, 0 _0234CB88: .word ov02_0235AB6C arm_func_end ov02_0234CB74 arm_func_start ov02_0234CB8C ov02_0234CB8C: ; 0x0234CB8C stmdb sp!, {r4, lr} sub sp, sp, #0xe8 mov r0, #0xe8 mov r1, #4 bl ov02_0234E7B4 ldr r1, _0234CD1C ; =ov02_0235AB70 str r0, [r1] add r0, sp, #0xa0 bl FileInit ldr r1, _0234CD20 ; =ov02_02354438 add r0, sp, #0xa0 bl sub_0207F6C4 cmp r0, #0 bne _0234CBC8 bl WaitForever2 _0234CBC8: bl OS_GetLockID ldr r2, _0234CD1C ; =ov02_0235AB70 add r1, sp, #0x18 ldr r3, [r2] mov r2, #8 strh r0, [r3, #0xe4] add r0, sp, #0xa0 ldr r4, [sp, #0xc4] bl sub_0207F818 add r0, sp, #0xa0 add r1, sp, #0x10 mov r2, #8 bl sub_0207F818 add r0, sp, #0xa0 bl sub_0207F70C ldr r0, _0234CD1C ; =ov02_0235AB70 ldr r0, [r0] add r0, r0, #0x88 bl sub_0207ED88 ldr r0, _0234CD1C ; =ov02_0235AB70 ldr r1, _0234CD24 ; =ov02_02352F18 ldr r0, [r0] mov r2, #3 add r0, r0, #0x88 bl sub_0207EDF4 cmp r0, #0 bne _0234CC38 bl WaitForever2 _0234CC38: ldr r0, _0234CD1C ; =ov02_0235AB70 ldr r1, _0234CD28 ; =ov02_0234CDC8 ldr r0, [r0] ldr r2, _0234CD2C ; =0x00000602 add r0, r0, #0x88 bl sub_0207F318 ldr r0, [sp, #0x18] ldr r1, _0234CD30 ; =ov02_0234CE2C str r0, [sp] ldr r2, [sp, #0x1c] ldr r0, _0234CD34 ; =ov02_0234CE7C str r2, [sp, #4] str r1, [sp, #8] str r0, [sp, #0xc] ldr r0, _0234CD1C ; =ov02_0235AB70 ldr r2, [sp, #0x10] ldr r0, [r0] ldr r3, [sp, #0x14] mov r1, r4 add r0, r0, #0x88 bl sub_0207EF2C cmp r0, #0 bne _0234CC98 bl WaitForever2 _0234CC98: ldr r0, _0234CD1C ; =ov02_0235AB70 mov r1, #0 ldr r0, [r0] mov r2, r1 add r0, r0, #0x88 bl sub_0207F05C mov r1, #4 mov r4, r0 bl ov02_0234E7B4 ldr r1, _0234CD1C ; =ov02_0235AB70 mov r2, r4 ldr r3, [r1] str r0, [r3] ldr r0, [r1] ldr r1, [r0], #0x88 bl sub_0207F05C ldr r1, _0234CD1C ; =ov02_0235AB70 mov r0, #0x20 ldr r1, [r1] mov r2, #4 add r1, r1, #4 bl ov02_0234D754 ldr r2, _0234CD1C ; =ov02_0235AB70 ldr r1, _0234CD38 ; =ov02_02354450 ldr r3, [r2] ldr r2, _0234CD24 ; =ov02_02352F18 str r0, [r3, #0x84] add r0, sp, #0x20 bl sub_020790DC add r0, sp, #0x20 bl sub_0207F894 add sp, sp, #0xe8 ldmia sp!, {r4, pc} .align 2, 0 _0234CD1C: .word ov02_0235AB70 _0234CD20: .word ov02_02354438 _0234CD24: .word ov02_02352F18 _0234CD28: .word ov02_0234CDC8 _0234CD2C: .word 0x00000602 _0234CD30: .word ov02_0234CE2C _0234CD34: .word ov02_0234CE7C _0234CD38: .word ov02_02354450 arm_func_end ov02_0234CB8C arm_func_start ov02_0234CD3C ov02_0234CD3C: ; 0x0234CD3C stmdb sp!, {r3, lr} ldr r0, _0234CDBC ; =ov02_02354458 bl sub_0207F894 ldr r0, _0234CDC0 ; =ov02_0235AB70 ldr r0, [r0] add r0, r0, #0x88 bl sub_0207F180 ldr r0, _0234CDC0 ; =ov02_0235AB70 ldr r0, [r0] add r0, r0, #0x88 bl sub_0207EF9C ldr r0, _0234CDC0 ; =ov02_0235AB70 ldr r0, [r0] add r0, r0, #0x88 bl sub_0207EEA8 ldr r0, _0234CDC0 ; =ov02_0235AB70 ldr r0, [r0] ldrh r0, [r0, #0xe4] bl sub_02079094 ldr r0, _0234CDC0 ; =ov02_0235AB70 mov r2, #0 ldr r1, [r0] strh r2, [r1, #0xe4] ldr r0, [r0] bl ov02_0234E7D8 ldr r1, _0234CDC0 ; =ov02_0235AB70 ldr r0, _0234CDC4 ; =ov02_0235AB70 ldr r1, [r1] mov r2, #0 str r2, [r1] bl ov02_0234E7D8 ldmia sp!, {r3, pc} .align 2, 0 _0234CDBC: .word ov02_02354458 _0234CDC0: .word ov02_0235AB70 _0234CDC4: .word ov02_0235AB70 arm_func_end ov02_0234CD3C arm_func_start ov02_0234CDC8 ov02_0234CDC8: ; 0x0234CDC8 stmdb sp!, {r3, lr} cmp r1, #1 beq _0234CE18 cmp r1, #9 beq _0234CDE8 cmp r1, #0xa beq _0234CE00 b _0234CE20 _0234CDE8: ldr r0, _0234CE28 ; =ov02_0235AB70 ldr r0, [r0] ldrh r0, [r0, #0xe4] bl sub_02083434 mov r0, #0 ldmia sp!, {r3, pc} _0234CE00: ldr r0, _0234CE28 ; =ov02_0235AB70 ldr r0, [r0] ldrh r0, [r0, #0xe4] bl sub_02083450 mov r0, #0 ldmia sp!, {r3, pc} _0234CE18: mov r0, #4 ldmia sp!, {r3, pc} _0234CE20: mov r0, #8 ldmia sp!, {r3, pc} .align 2, 0 _0234CE28: .word ov02_0235AB70 arm_func_end ov02_0234CDC8 arm_func_start ov02_0234CE2C ov02_0234CE2C: ; 0x0234CE2C stmdb sp!, {lr} sub sp, sp, #0xc ldr ip, _0234CE68 ; =ov02_0234CE6C mov lr, r1 str ip, [sp] mov ip, #1 stmib sp, {r0, ip} ldr r0, [r0, #0x28] add r1, r2, r0 mov r2, lr sub r0, ip, #2 bl sub_0208420C mov r0, #6 add sp, sp, #0xc ldmia sp!, {pc} .align 2, 0 _0234CE68: .word ov02_0234CE6C arm_func_end ov02_0234CE2C arm_func_start ov02_0234CE6C ov02_0234CE6C: ; 0x0234CE6C ldr ip, _0234CE78 ; =sub_0207F338 mov r1, #0 bx ip .align 2, 0 _0234CE78: .word sub_0207F338 arm_func_end ov02_0234CE6C arm_func_start ov02_0234CE7C ov02_0234CE7C: ; 0x0234CE7C mov r0, #1 bx lr arm_func_end ov02_0234CE7C arm_func_start ov02_0234CE84 ov02_0234CE84: ; 0x0234CE84 stmdb sp!, {r4, r5, r6, r7, lr} sub sp, sp, #0x4c ldr r3, _0234CF70 ; =ov02_0235AB70 mov r6, r0 ldr r0, [r3] mov r5, r1 ldr r0, [r0, #0x84] mov r4, r2 bl ov02_0234D808 add r0, sp, #4 bl FileInit add r0, sp, #4 mov r1, r6 bl sub_0207F6C4 cmp r0, #0 bne _0234CEC8 bl WaitForever2 _0234CEC8: ldr r1, [sp, #0x2c] ldr r0, [sp, #0x28] mov r2, #2 sub r7, r1, r0 cmp r5, #0 ldr r1, _0234CF74 ; =ov02_02354460 mov r0, r6 strne r7, [r5] bl ov02_0234CFAC cmp r0, #0 mvnne r6, #3 moveq r6, r4 mov r0, r7 mov r1, r6 bl ov02_0234E7B4 mov r1, r0 add r0, sp, #4 mov r2, r7 str r1, [sp] bl sub_0207F818 add r0, sp, #4 bl sub_0207F70C cmp r6, #0 ldrgt r0, [sp] addgt sp, sp, #0x4c ldmgtia sp!, {r4, r5, r6, r7, pc} ldr r0, [sp] cmp r5, #0 ldr r0, [r0] mov r1, r4 mov r0, r0, lsr #8 strne r0, [r5] bl ov02_0234E7B4 mov r4, r0 ldr r0, [sp] mov r1, r4 bl sub_0207C650 add r0, sp, #0 bl ov02_0234E7D8 mov r0, r4 add sp, sp, #0x4c ldmia sp!, {r4, r5, r6, r7, pc} .align 2, 0 _0234CF70: .word ov02_0235AB70 _0234CF74: .word ov02_02354460 arm_func_end ov02_0234CE84 arm_func_start ov02_0234CF78 ov02_0234CF78: ; 0x0234CF78 stmdb sp!, {r0, r1, r2, r3} stmdb sp!, {r3, lr} add r0, sp, #8 bl ov02_0234E7D8 ldr r0, _0234CFA8 ; =ov02_0235AB70 ldr r1, [sp, #8] ldr r0, [r0] ldr r0, [r0, #0x84] bl ov02_0234D7B0 ldmia sp!, {r3, lr} add sp, sp, #0x10 bx lr .align 2, 0 _0234CFA8: .word ov02_0235AB70 arm_func_end ov02_0234CF78 arm_func_start ov02_0234CFAC ov02_0234CFAC: ; 0x0234CFAC stmdb sp!, {r3, r4, r5, r6, r7, lr} mov r6, r1 mov r7, r0 mov r5, r2 bl strlen mov r4, r0 mov r0, r6 bl strlen cmp r4, r5 cmpge r0, r5 movlt r0, #0 ldmltia sp!, {r3, r4, r5, r6, r7, pc} sub r1, r0, r5 sub r3, r4, r5 mov r2, r5 add r0, r7, r3 add r1, r6, r1 bl memcmp cmp r0, #0 moveq r0, #1 movne r0, #0 ldmia sp!, {r3, r4, r5, r6, r7, pc} arm_func_end ov02_0234CFAC arm_func_start ov02_0234D004 ov02_0234D004: ; 0x0234D004 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} mov r0, #0x450 mov r1, #4 bl ov02_0234E7B4 ldr sl, _0234D0D4 ; =ov02_0235AB74 mov r8, #0 mov sb, r8 str r0, [sl] mov r7, #0x20 mov r6, #0x10 mov r5, #0x40 mov r4, #0x7f _0234D034: ldr r1, [sl] mov r0, r7 mov r2, r6 add r1, r1, sb bl ov02_0234D754 ldr r1, [sl] add r1, r1, sb str r0, [r1, #0x224] bl ov02_0234F0C0 ldr r2, [sl] mov r1, r5 add r2, r2, sb str r0, [r2, #0x220] mov r0, r8 bl ov02_0234F30C ldr r2, [sl] mov r1, r4 add r2, r2, sb str r0, [r2, #0x208] mov r0, r8 bl ov02_0234F30C add r1, r0, #8 ldr r0, [sl] add r0, r0, sb str r1, [r0, #0x218] ldr r0, [sl] add r1, r0, sb ldr r0, [r1, #0x220] add r1, r1, #0x200 bl ov02_0234F180 ldr r0, [sl] add r1, r0, sb ldr r0, [r1, #0x220] add r1, r1, #0x210 bl ov02_0234F170 add sb, sb, #0x228 add r8, r8, #1 cmp r8, #2 blt _0234D034 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} .align 2, 0 _0234D0D4: .word ov02_0235AB74 arm_func_end ov02_0234D004 arm_func_start ov02_0234D0D8 ov02_0234D0D8: ; 0x0234D0D8 stmdb sp!, {r4, r5, r6, lr} mov r5, #0 ldr r4, _0234D124 ; =ov02_0235AB74 mov r6, r5 _0234D0E8: ldr r0, [r4] add r0, r0, r6 ldr r0, [r0, #0x220] bl ov02_0234F0EC ldr r0, [r4] add r0, r0, r6 ldr r0, [r0, #0x224] bl ov02_0234D794 add r5, r5, #1 cmp r5, #2 add r6, r6, #0x228 blt _0234D0E8 ldr r0, _0234D128 ; =ov02_0235AB74 bl ov02_0234E7D8 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _0234D124: .word ov02_0235AB74 _0234D128: .word ov02_0235AB74 arm_func_end ov02_0234D0D8 arm_func_start ov02_0234D12C ov02_0234D12C: ; 0x0234D12C stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} mov sb, r0 mov r0, #0x228 mul r7, sb, r0 ldr r0, _0234D284 ; =ov02_0235AB74 mov r8, r1 ldr r0, [r0] mov r5, r2 add r0, r0, r7 ldr r0, [r0, #0x224] bl ov02_0234D808 mov r4, r0 mov r0, #1 bl OS_DisableIrqMask mov r6, r0 cmp r5, #0 mov r0, #0x228 beq _0234D1F0 ldr r1, _0234D284 ; =ov02_0235AB74 ldr r1, [r1] mla r0, sb, r0, r1 add r5, r0, #0x200 add r0, r0, #0x210 cmp r5, r0 beq _0234D1D0 add r0, r1, r7 add r1, r0, #0x210 _0234D198: ldrb r3, [r5, #0xc] ldmib r5, {r0, sb} add sb, sb, r3, lsl #3 ldr r2, [r0, #8] add r3, sb, r8, lsl #3 cmp r3, r2 bhi _0234D1C4 mov r1, r4 str sb, [r4, #8] bl ov02_0234F140 b _0234D1D0 _0234D1C4: mov r5, r0 cmp r0, r1 bne _0234D198 _0234D1D0: ldr r0, _0234D284 ; =ov02_0235AB74 ldr r0, [r0] add r0, r0, r7 add r0, r0, #0x210 cmp r5, r0 bne _0234D270 bl WaitForever2 b _0234D270 _0234D1F0: ldr r1, _0234D284 ; =ov02_0235AB74 ldr r1, [r1] mla r0, sb, r0, r1 add r5, r0, #0x210 add r0, r0, #0x200 cmp r5, r0 beq _0234D254 add r0, r1, r7 add r0, r0, #0x200 _0234D214: ldr sb, [r5] ldr r3, [r5, #8] ldrb r1, [sb, #0xc] ldr r2, [sb, #8] sub r3, r3, r8, lsl #3 add r1, r2, r1, lsl #3 cmp r3, r1 blo _0234D248 mov r0, r5 mov r1, r4 str r3, [r4, #8] bl ov02_0234F140 b _0234D254 _0234D248: mov r5, sb cmp sb, r0 bne _0234D214 _0234D254: ldr r0, _0234D284 ; =ov02_0235AB74 ldr r0, [r0] add r0, r0, r7 add r0, r0, #0x200 cmp r5, r0 bne _0234D270 bl WaitForever2 _0234D270: mov r0, r6 bl OS_EnableIrqMask mov r0, r4 strb r8, [r4, #0xc] ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} .align 2, 0 _0234D284: .word ov02_0235AB74 arm_func_end ov02_0234D12C arm_func_start ov02_0234D288 ov02_0234D288: ; 0x0234D288 stmdb sp!, {r3, r4, r5, lr} mov r5, r0 ldrb r0, [r5, #0xc] mov r4, #0 mov r3, r4 cmp r0, #0 ldr r2, [r5, #8] ble _0234D2CC ldr r0, _0234D300 ; =0xC1FFFCFF _0234D2AC: ldr r1, [r2] add r3, r3, #1 and r1, r1, r0 orr r1, r1, #0x200 str r1, [r2], #8 ldrb r1, [r5, #0xc] cmp r3, r1 blt _0234D2AC _0234D2CC: mov r0, r5 bl ov02_0234F108 ldr r0, _0234D304 ; =ov02_0235AB74 ldr r1, [r0] add r0, r1, #0x228 cmp r5, r0 movhs r4, #1 mov r0, #0x228 mla r0, r4, r0, r1 ldr r0, [r0, #0x224] mov r1, r5 bl ov02_0234D7B0 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0234D300: .word 0xC1FFFCFF _0234D304: .word ov02_0235AB74 arm_func_end ov02_0234D288 arm_func_start ov02_0234D308 ov02_0234D308: ; 0x0234D308 ldr r0, [r0, #8] add r0, r0, r1, lsl #3 bx lr arm_func_end ov02_0234D308 arm_func_start ov02_0234D314 ov02_0234D314: ; 0x0234D314 ldrb r0, [r0, #0xc] bx lr arm_func_end ov02_0234D314 arm_func_start ov02_0234D31C ov02_0234D31C: ; 0x0234D31C stmdb sp!, {r4, lr} cmp r1, #0 ldr ip, [r0, #8] blt _0234D368 cmp r2, #0x100 cmpne r2, #0x300 ldr r0, _0234D3BC ; =0xC1FFFCFF beq _0234D350 ldr r3, [ip, r1, lsl #3] and r0, r3, r0 orr r0, r0, r2 str r0, [ip, r1, lsl #3] ldmia sp!, {r4, pc} _0234D350: ldr r4, [ip, r1, lsl #3] and r0, r4, r0 orr r0, r0, r2 orr r0, r0, r3, lsl #25 str r0, [ip, r1, lsl #3] ldmia sp!, {r4, pc} _0234D368: ldrb r4, [r0, #0xc] mov r1, #0 cmp r4, #0 ldmleia sp!, {r4, pc} ldr lr, _0234D3BC ; =0xC1FFFCFF _0234D37C: cmp r2, #0x100 cmpne r2, #0x300 ldr r4, [ip, r1, lsl #3] beq _0234D398 and r4, r4, lr orr r4, r4, r2 b _0234D3A4 _0234D398: and r4, r4, lr orr r4, r4, r2 orr r4, r4, r3, lsl #25 _0234D3A4: str r4, [ip, r1, lsl #3] ldrb r4, [r0, #0xc] add r1, r1, #1 cmp r1, r4 blt _0234D37C ldmia sp!, {r4, pc} .align 2, 0 _0234D3BC: .word 0xC1FFFCFF arm_func_end ov02_0234D31C arm_func_start ov02_0234D3C0 ov02_0234D3C0: ; 0x0234D3C0 stmdb sp!, {r4, lr} cmp r1, #0 ldr ip, [r0, #8] blt _0234D3F8 ldr r0, [ip, r1, lsl #3] add lr, ip, r1, lsl #3 bic r0, r0, #0xc00 orr r0, r0, r2, lsl #10 str r0, [ip, r1, lsl #3] ldrh r0, [lr, #4] bic r0, r0, #0xf000 orr r0, r0, r3, lsl #12 strh r0, [lr, #4] ldmia sp!, {r4, pc} _0234D3F8: ldrb r1, [r0, #0xc] mov r4, #0 cmp r1, #0 ldmleia sp!, {r4, pc} _0234D408: ldr r1, [ip, r4, lsl #3] add lr, ip, r4, lsl #3 bic r1, r1, #0xc00 orr r1, r1, r2, lsl #10 str r1, [ip, r4, lsl #3] ldrh r1, [lr, #4] add r4, r4, #1 bic r1, r1, #0xf000 orr r1, r1, r3, lsl #12 strh r1, [lr, #4] ldrb r1, [r0, #0xc] cmp r4, r1 blt _0234D408 ldmia sp!, {r4, pc} arm_func_end ov02_0234D3C0 arm_func_start ov02_0234D440 ov02_0234D440: ; 0x0234D440 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} sub sp, sp, #0x10 cmp r1, #0 ldr r5, [r0, #8] blt _0234D47C ldr r4, [r5, r1, lsl #3] ldr r0, _0234D528 ; =0xFE00FF00 and r3, r3, #0xff and r0, r4, r0 mov r2, r2, lsl #0x17 orr r0, r0, r3 orr r0, r0, r2, lsr #7 add sp, sp, #0x10 str r0, [r5, r1, lsl #3] ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} _0234D47C: ldr r1, [r5] ldr ip, _0234D528 ; =0xFE00FF00 and r6, r3, #0xff and r7, r1, ip mov sb, r1 ldr r1, _0234D52C ; =0x01FF0000 mov r8, r2, lsl #0x17 orr r6, r7, r6 orr r6, r6, r8, lsr #7 str r6, [r5] ldrb r6, [r0, #0xc] and r4, sb, r1 and lr, sb, #0xff mov r7, r4, lsr #0x10 str r7, [sp, #0xc] cmp r6, #1 str lr, [sp, #8] sub r6, r2, r4, lsr #16 sub r7, r3, lr mov r4, #1 addle sp, sp, #0x10 ldmleia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} _0234D4D4: ldr r2, [r5, r4, lsl #3] and r3, r2, #0xff mov sb, r2 and lr, r2, r1 add r8, r3, r7 add r2, r6, lr, lsr #16 and sb, sb, ip and r8, r8, #0xff mov sl, r2, lsl #0x17 orr r2, sb, r8 orr r2, r2, sl, lsr #7 str r2, [r5, r4, lsl #3] ldrb r2, [r0, #0xc] add r4, r4, #1 mov r8, lr, lsr #0x10 cmp r4, r2 blt _0234D4D4 str r3, [sp] str r8, [sp, #4] add sp, sp, #0x10 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} .align 2, 0 _0234D528: .word 0xFE00FF00 _0234D52C: .word 0x01FF0000 arm_func_end ov02_0234D440 arm_func_start ov02_0234D530 ov02_0234D530: ; 0x0234D530 stmdb sp!, {r3, lr} cmp r1, #0 ldr ip, [r0, #8] blt _0234D558 add r1, ip, r1, lsl #3 ldrh r0, [r1, #4] bic r0, r0, #0xc00 orr r0, r0, r2, lsl #10 strh r0, [r1, #4] ldmia sp!, {r3, pc} _0234D558: ldrb r1, [r0, #0xc] mov lr, #0 cmp r1, #0 ldmleia sp!, {r3, pc} _0234D568: add r3, ip, lr, lsl #3 ldrh r1, [r3, #4] add lr, lr, #1 bic r1, r1, #0xc00 orr r1, r1, r2, lsl #10 strh r1, [r3, #4] ldrb r1, [r0, #0xc] cmp lr, r1 blt _0234D568 ldmia sp!, {r3, pc} arm_func_end ov02_0234D530 arm_func_start ov02_0234D590 ov02_0234D590: ; 0x0234D590 stmdb sp!, {r3, lr} ldr lr, [r0, #8] ldr r0, _0234D5BC ; =0x01FF0000 ldr ip, [lr, r1, lsl #3] and r0, ip, r0 mov r0, r0, lsr #0x10 str r0, [r2] ldr r0, [lr, r1, lsl #3] and r0, r0, #0xff str r0, [r3] ldmia sp!, {r3, pc} .align 2, 0 _0234D5BC: .word 0x01FF0000 arm_func_end ov02_0234D590 arm_func_start ov02_0234D5C0 ov02_0234D5C0: ; 0x0234D5C0 stmdb sp!, {r3, r4, lr} sub sp, sp, #4 mov r4, r0 mov r0, r1 add r1, sp, #0 mov r2, #4 bl ov02_0234CE84 ldr r1, _0234D5EC ; =ov02_0235AB78 str r0, [r1, r4, lsl #2] add sp, sp, #4 ldmia sp!, {r3, r4, pc} .align 2, 0 _0234D5EC: .word ov02_0235AB78 arm_func_end ov02_0234D5C0 arm_func_start ov02_0234D5F0 ov02_0234D5F0: ; 0x0234D5F0 stmdb sp!, {r4, lr} ldr r1, _0234D614 ; =ov02_0235AB78 mov r4, r0 ldr r0, [r1, r4, lsl #2] bl ov02_0234CF78 ldr r0, _0234D614 ; =ov02_0235AB78 mov r1, #0 str r1, [r0, r4, lsl #2] ldmia sp!, {r4, pc} .align 2, 0 _0234D614: .word ov02_0235AB78 arm_func_end ov02_0234D5F0 arm_func_start ov02_0234D618 ov02_0234D618: ; 0x0234D618 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} sub sp, sp, #8 ldr r3, _0234D6A8 ; =ov02_0235AB78 mov r5, r2 ldr r6, [r3, r0, lsl #2] mov r2, r1, lsl #3 add r0, r6, r1, lsl #3 ldr r3, [r0, #4] ldrh r4, [r6, r2] add r1, sp, #0 mov r0, #0 mov r2, #8 add sb, r6, r3 bl ArrayFill32 cmp r4, #0 mov sl, #0 addle sp, sp, #8 ldmleia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} add r8, sp, #0 mov r7, #6 mov r6, #8 _0234D66C: mov r0, sb mov r1, r8 mov r2, r7 bl ArrayCopy16 mov r0, r8 mov r1, r5 mov r2, r6 bl ArrayCopy32 add sl, sl, #1 cmp sl, r4 add sb, sb, #6 add r5, r5, #8 blt _0234D66C add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} .align 2, 0 _0234D6A8: .word ov02_0235AB78 arm_func_end ov02_0234D618 arm_func_start ov02_0234D6AC ov02_0234D6AC: ; 0x0234D6AC stmdb sp!, {r4, r5, r6, lr} mov r6, r0 mov r5, r1 bl ov02_0234F2A0 mov r4, r0 mov r0, r6 mov r1, r5 mov r2, r4 bl ov02_0234D618 mov r0, r4 ldmia sp!, {r4, r5, r6, pc} arm_func_end ov02_0234D6AC arm_func_start ov02_0234D6D8 ov02_0234D6D8: ; 0x0234D6D8 stmdb sp!, {r4, r5, r6, lr} ldr r3, _0234D71C ; =ov02_0235AB78 mov r6, r0 mov r5, r1 ldr r3, [r3, r6, lsl #2] mov r1, r5, lsl #3 ldrh r1, [r3, r1] bl ov02_0234D12C mov r1, #0 mov r4, r0 bl ov02_0234D308 mov r2, r0 mov r0, r6 mov r1, r5 bl ov02_0234D618 mov r0, r4 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _0234D71C: .word ov02_0235AB78 arm_func_end ov02_0234D6D8 arm_func_start ov02_0234D720 ov02_0234D720: ; 0x0234D720 stmdb sp!, {r4, lr} mov r4, r0 add r0, r4, #1 mov r0, r0, lsl #2 add r0, r0, #8 mov r1, #4 bl ov02_0234E7B4 add r1, r4, #1 strh r1, [r0] mov r1, #0 strb r1, [r0, #2] strb r1, [r0, #3] ldmia sp!, {r4, pc} arm_func_end ov02_0234D720 arm_func_start ov02_0234D754 ov02_0234D754: ; 0x0234D754 stmdb sp!, {r4, r5, r6, lr} mov r6, r0 mov r5, r1 mov r4, r2 bl ov02_0234D720 cmp r6, #0 mov r2, #0 ble _0234D78C _0234D774: add r1, r0, r2, lsl #2 add r2, r2, #1 str r5, [r1, #4] cmp r2, r6 add r5, r5, r4 blt _0234D774 _0234D78C: strb r6, [r0, #3] ldmia sp!, {r4, r5, r6, pc} arm_func_end ov02_0234D754 arm_func_start ov02_0234D794 ov02_0234D794: ; 0x0234D794 stmdb sp!, {r0, r1, r2, r3} stmdb sp!, {r3, lr} add r0, sp, #8 bl ov02_0234E7D8 ldmia sp!, {r3, lr} add sp, sp, #0x10 bx lr arm_func_end ov02_0234D794 arm_func_start ov02_0234D7B0 ov02_0234D7B0: ; 0x0234D7B0 stmdb sp!, {r3, r4, r5, r6, r7, lr} mov r5, r0 mov r0, #1 mov r4, r1 bl OS_DisableIrqMask ldrb r2, [r5, #3] mov r6, r0 ldrh r1, [r5] add r0, r2, #1 bl FX_ModS32 ldrb r1, [r5, #2] mov r7, r0 cmp r7, r1 bne _0234D7EC bl WaitForever2 _0234D7EC: ldrb r1, [r5, #3] mov r0, r6 add r1, r5, r1, lsl #2 str r4, [r1, #4] strb r7, [r5, #3] bl OS_EnableIrqMask ldmia sp!, {r3, r4, r5, r6, r7, pc} arm_func_end ov02_0234D7B0 arm_func_start ov02_0234D808 ov02_0234D808: ; 0x0234D808 stmdb sp!, {r4, r5, r6, lr} mov r6, r0 mov r0, #1 mov r4, #0 bl OS_DisableIrqMask ldrb r2, [r6, #3] ldrb r1, [r6, #2] mov r5, r0 cmp r1, r2 beq _0234D850 ldrh r1, [r6] add r0, r2, r1 sub r0, r0, #1 bl FX_ModS32 and r1, r0, #0xff strb r0, [r6, #3] add r0, r6, r1, lsl #2 ldr r4, [r0, #4] _0234D850: mov r0, r5 bl OS_EnableIrqMask mov r0, r4 ldmia sp!, {r4, r5, r6, pc} arm_func_end ov02_0234D808 arm_func_start ov02_0234D860 ov02_0234D860: ; 0x0234D860 stmdb sp!, {r3, lr} mov r0, #0x18 mov r1, #4 bl ov02_0234E7B4 ldr r2, _0234D89C ; =ov02_0235AB80 mov r1, #0x3f str r0, [r2] ldr r0, _0234D8A0 ; =0x04000050 mov r2, #0x10 bl G2x_SetBlendBrightness_ ldr r0, _0234D8A4 ; =0x04001050 mov r1, #0x3f mov r2, #0x10 bl G2x_SetBlendBrightness_ ldmia sp!, {r3, pc} .align 2, 0 _0234D89C: .word ov02_0235AB80 _0234D8A0: .word 0x04000050 _0234D8A4: .word 0x04001050 arm_func_end ov02_0234D860 arm_func_start ov02_0234D8A8 ov02_0234D8A8: ; 0x0234D8A8 ldr ip, _0234D8B4 ; =ov02_0234E7D8 ldr r0, _0234D8B8 ; =ov02_0235AB80 bx ip .align 2, 0 _0234D8B4: .word ov02_0234E7D8 _0234D8B8: .word ov02_0235AB80 arm_func_end ov02_0234D8A8 arm_func_start ov02_0234D8BC ov02_0234D8BC: ; 0x0234D8BC cmp r0, #1 ldreq r0, _0234D8DC ; =ov02_0235AB80 ldreq r0, [r0] ldrne r0, _0234D8DC ; =ov02_0235AB80 ldrne r0, [r0] addne r0, r0, #0xc ldrb r0, [r0, #9] bx lr .align 2, 0 _0234D8DC: .word ov02_0235AB80 arm_func_end ov02_0234D8BC arm_func_start ov02_0234D8E0 ov02_0234D8E0: ; 0x0234D8E0 stmdb sp!, {r3, r4, r5, r6, lr} sub sp, sp, #4 ldr r4, _0234D9A4 ; =ov02_02352F1C mov r5, r0 ldrb r0, [r4, #0xb] ldrb r6, [r4, #8] ldrb lr, [r4, #9] strb r0, [sp, #3] cmp r1, #1 ldreq r0, _0234D9A8 ; =ov02_0235AB80 strb r6, [sp] ldreq r6, [r0] ldrne r0, _0234D9A8 ; =ov02_0235AB80 ldrb ip, [r4, #0xa] ldrne r0, [r0] mov r4, r3 addne r6, r0, #0xc ldrb r0, [r6, #9] strb lr, [sp, #1] strb ip, [sp, #2] cmp r0, #0 addne sp, sp, #4 movne r0, #0 ldmneia sp!, {r3, r4, r5, r6, pc} cmp r1, #1 add r0, sp, #0 mov r1, r2 bne _0234D960 ldrsb r2, [r0, r5] ldr r0, _0234D9AC ; =0x04001050 bl G2x_SetBlendBrightness_ b _0234D96C _0234D960: ldrsb r2, [r0, r5] ldr r0, _0234D9B0 ; =0x04000050 bl G2x_SetBlendBrightness_ _0234D96C: ldr r1, _0234D9B4 ; =ov02_0234D9B8 mov r2, r6 mov r0, #1 mov r3, #0xc8 bl ov02_0234FA98 str r0, [r6] mov r0, #0 strh r0, [r6, #4] strb r5, [r6, #8] strh r4, [r6, #6] mov r0, #1 strb r0, [r6, #9] add sp, sp, #4 ldmia sp!, {r3, r4, r5, r6, pc} .align 2, 0 _0234D9A4: .word ov02_02352F1C _0234D9A8: .word ov02_0235AB80 _0234D9AC: .word 0x04001050 _0234D9B0: .word 0x04000050 _0234D9B4: .word ov02_0234D9B8 arm_func_end ov02_0234D8E0 arm_func_start ov02_0234D9B8 ov02_0234D9B8: ; 0x0234D9B8 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} sub sp, sp, #8 ldr r2, _0234DAD0 ; =ov02_02352F1C mov r4, r1 ldrsh r1, [r4, #4] ldrb sb, [r2, #4] ldrb r8, [r2, #5] ldrb r7, [r2, #6] ldrb r6, [r2, #7] ldrb lr, [r2] ldrb ip, [r2, #1] ldrb r3, [r2, #2] ldrb r2, [r2, #3] add r1, r1, #1 mov r5, r0 strh r1, [r4, #4] ldrsh r0, [r4, #4] ldrh r1, [r4, #6] strb sb, [sp, #4] mov r0, r0, lsl #4 strb r8, [sp, #5] strb r7, [sp, #6] strb r6, [sp, #7] strb lr, [sp] strb ip, [sp, #1] strb r3, [sp, #2] strb r2, [sp, #3] bl FX_DivS32 ldrb r3, [r4, #8] add r2, sp, #4 mov r1, r0 ldrb r0, [r2, r3] tst r0, #1 rsbne r1, r1, #0x10 tst r0, #0x10 ldr r0, _0234DAD4 ; =ov02_0235AB80 rsbne r1, r1, #0 ldr r0, [r0] cmp r4, r0 bne _0234DA64 ldr r0, _0234DAD8 ; =0x04001050 bl G2x_ChangeBlendBrightness_ b _0234DA6C _0234DA64: ldr r0, _0234DADC ; =0x04000050 bl G2x_ChangeBlendBrightness_ _0234DA6C: ldrsh r1, [r4, #4] ldrh r0, [r4, #6] cmp r1, r0 addlt sp, sp, #8 ldmltia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} ldr r0, _0234DAD4 ; =ov02_0235AB80 ldrb r2, [r4, #8] ldr r0, [r0] add r1, sp, #0 cmp r4, r0 bne _0234DAA8 ldrsb r1, [r1, r2] ldr r0, _0234DAD8 ; =0x04001050 bl G2x_ChangeBlendBrightness_ b _0234DAB4 _0234DAA8: ldrsb r1, [r1, r2] ldr r0, _0234DADC ; =0x04000050 bl G2x_ChangeBlendBrightness_ _0234DAB4: mov r2, #0 mov r1, r5 mov r0, #1 strb r2, [r4, #9] bl ov02_0234FB40 add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} .align 2, 0 _0234DAD0: .word ov02_02352F1C _0234DAD4: .word ov02_0235AB80 _0234DAD8: .word 0x04001050 _0234DADC: .word 0x04000050 arm_func_end ov02_0234D9B8 arm_func_start ov02_0234DAE0 ov02_0234DAE0: ; 0x0234DAE0 stmdb sp!, {r3, r4, r5, lr} ldr r1, _0234DB30 ; =ov02_0235AB80 mov r5, r0 ldr r4, [r1] ldrb r0, [r4, #9] cmp r0, #0 movne r0, #0 ldmneia sp!, {r3, r4, r5, pc} ldr r1, _0234DB34 ; =ov02_0234DB38 mov r2, r4 mov r0, #1 mov r3, #0xc8 bl ov02_0234FA98 str r0, [r4] mov r0, #0 strh r0, [r4, #4] strh r5, [r4, #6] mov r0, #1 strb r0, [r4, #9] ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0234DB30: .word ov02_0235AB80 _0234DB34: .word ov02_0234DB38 arm_func_end ov02_0234DAE0 arm_func_start ov02_0234DB38 ov02_0234DB38: ; 0x0234DB38 stmdb sp!, {r3, lr} ldrsh r2, [r1, #4] add r2, r2, #1 strh r2, [r1, #4] ldrsh r3, [r1, #4] ldrh r2, [r1, #6] cmp r3, r2 ldmltia sp!, {r3, pc} mov r2, #0 strb r2, [r1, #9] mov r1, r0 mov r0, #1 bl ov02_0234FB40 ldmia sp!, {r3, pc} arm_func_end ov02_0234DB38 arm_func_start ov02_0234DB70 ov02_0234DB70: ; 0x0234DB70 stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr} mov r0, #0x680 mov r1, #4 bl ov02_0234E7B4 mov r4, r0 ldr r3, _0234DC68 ; =ov02_0235AB84 add r1, r4, #0x10 mov r0, #0x20 mov r2, #0x30 str r4, [r3] bl ov02_0234D754 ldr r1, _0234DC68 ; =ov02_0235AB84 ldr r1, [r1] str r0, [r1, #0x670] bl ov02_02338DF0 cmp r0, #6 mov r4, #4 bne _0234DC10 mov r7, #0 ldr r6, _0234DC6C ; =ov02_02354464 ldr sb, _0234DC68 ; =ov02_0235AB84 mov r8, r7 mov r5, r7 _0234DBCC: ldr r0, [r6, r7, lsl #2] mov r1, r5 mov r2, r4 bl ov02_0234CE84 ldr r1, [sb] add r1, r1, r7, lsl #2 str r0, [r1, #0x674] ldr r2, [sb] add r0, r2, r7, lsl #2 ldr r1, [r0, #0x674] add r0, r2, r8 bl ov02_0232A0F4 add r7, r7, #1 cmp r7, #2 add r8, r8, #8 blt _0234DBCC ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} _0234DC10: mov r8, #0 ldr r6, _0234DC70 ; =ov02_0235446C ldr sb, _0234DC68 ; =ov02_0235AB84 mov r7, r8 mov r5, r8 _0234DC24: ldr r0, [r6, r8, lsl #2] mov r1, r5 mov r2, r4 bl ov02_0234CE84 ldr r1, [sb] add r1, r1, r8, lsl #2 str r0, [r1, #0x674] ldr r2, [sb] add r0, r2, r8, lsl #2 ldr r1, [r0, #0x674] add r0, r2, r7 bl ov02_0232A0F4 add r8, r8, #1 cmp r8, #2 add r7, r7, #8 blt _0234DC24 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} .align 2, 0 _0234DC68: .word ov02_0235AB84 _0234DC6C: .word ov02_02354464 _0234DC70: .word ov02_0235446C arm_func_end ov02_0234DB70 arm_func_start ov02_0234DC74 ov02_0234DC74: ; 0x0234DC74 stmdb sp!, {r3, r4, r5, lr} ldr r4, _0234DCB8 ; =ov02_0235AB84 mov r5, #0 _0234DC80: ldr r0, [r4] add r0, r0, r5, lsl #2 ldr r0, [r0, #0x674] bl ov02_0234CF78 add r5, r5, #1 cmp r5, #2 blt _0234DC80 ldr r0, _0234DCB8 ; =ov02_0235AB84 ldr r0, [r0] ldr r0, [r0, #0x670] bl ov02_0234D794 ldr r0, _0234DCBC ; =ov02_0235AB84 bl ov02_0234E7D8 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0234DCB8: .word ov02_0235AB84 _0234DCBC: .word ov02_0235AB84 arm_func_end ov02_0234DC74 arm_func_start ov02_0234DCC0 ov02_0234DCC0: ; 0x0234DCC0 stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #8 ldr r4, _0234DD98 ; =ov02_0235AB84 mov r7, r0 ldr r0, [r4] mov r6, r1 ldr r0, [r0, #0x670] mov r5, r2 mov r8, r3 bl ov02_0234D808 mov r4, r0 strb r6, [r4, #0x2e] mul r1, r6, r5 mov r2, r8 strb r5, [r4, #0x2f] mov r0, r7 add r3, sp, #4 bl ov02_0234F3E4 str r0, [r4, #0x28] ldr r1, [sp, #4] mov r0, r6 strh r1, [r4, #0x2c] mov r1, r5 bl ov02_0232B300 ldr r1, [sp, #0x20] cmp r7, #1 str r0, [r1] moveq ip, #0x6600000 ldr r7, [sp, #4] mov r1, #4 movne ip, #0x6400000 str r1, [sp] mov r0, r4 mov r2, r6 mov r3, r5 add r1, ip, r7, lsl #7 bl ov02_0232B16C ldr r1, [r4, #0x14] mov r0, r4 ldr r2, [r1, #4] mov r1, #0 blx r2 ldr r0, _0234DD98 ; =ov02_0235AB84 ldr r2, [sp, #0x24] ldr r0, [r0] mov r1, #1 str r4, [r4, #0x18] add r0, r0, r2, lsl #3 str r0, [r4, #0x1c] str r1, [r4, #0x20] mov r0, r4 str r1, [r4, #0x24] add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _0234DD98: .word ov02_0235AB84 arm_func_end ov02_0234DCC0 arm_func_start ov02_0234DD9C ov02_0234DD9C: ; 0x0234DD9C stmdb sp!, {r4, lr} mov r4, r0 ldr r0, [r4, #0x28] bl ov02_0234F55C ldr r0, _0234DDC4 ; =ov02_0235AB84 mov r1, r4 ldr r0, [r0] ldr r0, [r0, #0x670] bl ov02_0234D7B0 ldmia sp!, {r4, pc} .align 2, 0 _0234DDC4: .word ov02_0235AB84 arm_func_end ov02_0234DD9C arm_func_start ov02_0234DDC8 ov02_0234DDC8: ; 0x0234DDC8 stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #0x10 mov r8, r0 ldr r0, _0234DF24 ; =ov02_0235AB84 ldr r3, _0234DF28 ; =ov02_02352F2E mov r4, r8, lsl #2 ldr r2, _0234DF2C ; =ov02_02352F2C ldr r0, [r0] ldrh r5, [r3, r4] ldrh r6, [r2, r4] add r3, r0, #0x610 mov r0, #0x30 mul r2, r6, r5 mov r7, r1 mla r4, r8, r0, r3 mov r0, r2, lsl #5 mov r1, #0x20 bl ov02_0234E7B4 str r0, [r4, #0x28] cmp r8, #1 bne _0234DE40 ldr r1, _0234DF30 ; =0x04001008 ldrh r0, [r1] bic r0, r0, #0x40 strh r0, [r1] ldrh r0, [r1] and r0, r0, #0x43 orr r0, r0, #0xc00 strh r0, [r1] b _0234DE60 _0234DE40: ldr r1, _0234DF34 ; =0x04000008 ldrh r0, [r1] bic r0, r0, #0x40 strh r0, [r1] ldrh r0, [r1] and r0, r0, #0x43 orr r0, r0, #0xc00 strh r0, [r1] _0234DE60: mov r0, #4 str r0, [sp] ldr r1, [r4, #0x28] mov r0, r4 mov r2, r6 mov r3, r5 bl ov02_0232B140 ldr r0, _0234DF24 ; =ov02_0235AB84 mov r1, #1 ldr r0, [r0] cmp r8, #1 str r4, [r4, #0x18] add r0, r0, r7, lsl #3 str r0, [r4, #0x1c] str r1, [r4, #0x20] str r1, [r4, #0x24] bne _0234DEAC bl G2S_GetBG0ScrPtr b _0234DEB0 _0234DEAC: bl G2_GetBG0ScrPtr _0234DEB0: ldr r1, _0234DF38 ; =ov02_02352F28 mov r2, r8, lsl #1 mov r3, #0 ldrh r7, [r1, r2] str r3, [sp] mov r1, #0x20 str r1, [sp, #4] mov r1, r6 mov r2, r5 str r7, [sp, #8] mov r5, #0xf str r5, [sp, #0xc] bl ov02_0232B1F4 mov r0, r4 mov r1, #0 bl ov02_0234E2A8 ldr r0, _0234DF24 ; =ov02_0235AB84 ldr r1, _0234DF3C ; =ov02_0234DF40 ldr r2, [r0] mov r0, #1 add r2, r2, #0x27c add r2, r2, #0x400 add r2, r2, r8 mov r3, #0xc8 bl ov02_0234FA98 str r0, [r4, #0x2c] mov r0, r4 add sp, sp, #0x10 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _0234DF24: .word ov02_0235AB84 _0234DF28: .word ov02_02352F2E _0234DF2C: .word ov02_02352F2C _0234DF30: .word 0x04001008 _0234DF34: .word 0x04000008 _0234DF38: .word ov02_02352F28 _0234DF3C: .word ov02_0234DF40 arm_func_end ov02_0234DDC8 arm_func_start ov02_0234DF40 ov02_0234DF40: ; 0x0234DF40 stmdb sp!, {r4, lr} mov r4, r1 ldrb r0, [r4] cmp r0, #0 ldmeqia sp!, {r4, pc} ldr r0, _0234DFC4 ; =ov02_0235AB84 ldr r1, [r0] add r0, r1, #0x27c add r0, r0, #0x400 cmp r4, r0 bne _0234DF94 ldr r0, [r1, #0x638] mov r1, #0x6000 bl DC_FlushRange ldr r0, _0234DFC4 ; =ov02_0235AB84 mov r1, #0 ldr r0, [r0] mov r2, #0x6000 ldr r0, [r0, #0x638] bl GX_LoadBG0Char b _0234DFB8 _0234DF94: ldr r0, [r1, #0x668] mov r1, #0x3000 bl DC_FlushRange ldr r0, _0234DFC4 ; =ov02_0235AB84 mov r1, #0x3000 ldr r0, [r0] mov r2, r1 ldr r0, [r0, #0x668] bl GXS_LoadBG0Char _0234DFB8: mov r0, #0 strb r0, [r4] ldmia sp!, {r4, pc} .align 2, 0 _0234DFC4: .word ov02_0235AB84 arm_func_end ov02_0234DF40 arm_func_start ov02_0234DFC8 ov02_0234DFC8: ; 0x0234DFC8 stmdb sp!, {r4, lr} mov r4, r0 ldr r1, [r4, #0x2c] mov r0, #1 bl ov02_0234FB60 ldr r0, _0234E028 ; =ov02_0235AB84 ldr r0, [r0] add r0, r0, #0x610 cmp r4, r0 bne _0234E008 bl G2_GetBG0CharPtr mov r1, r0 mov r0, #0 mov r2, #0x6000 bl ArrayFill16 b _0234E01C _0234E008: bl G2_GetBG0CharPtr mov r1, r0 mov r0, #0 mov r2, #0x3000 bl ArrayFill16 _0234E01C: add r0, r4, #0x28 bl ov02_0234E7D8 ldmia sp!, {r4, pc} .align 2, 0 _0234E028: .word ov02_0235AB84 arm_func_end ov02_0234DFC8 arm_func_start ov02_0234E02C ov02_0234E02C: ; 0x0234E02C ldr r2, _0234E048 ; =ov02_0235AB84 mov r1, #0x30 ldr r2, [r2] ldr ip, _0234E04C ; =ov02_0234DFC8 add r2, r2, #0x610 mla r0, r1, r0, r2 bx ip .align 2, 0 _0234E048: .word ov02_0235AB84 _0234E04C: .word ov02_0234DFC8 arm_func_end ov02_0234E02C arm_func_start ov02_0234E050 ov02_0234E050: ; 0x0234E050 stmdb sp!, {r4, lr} sub sp, sp, #0x10 ldr r4, [r0, #0x1c] add ip, sp, #0xc mov lr, #0 strb lr, [ip] strb lr, [ip, #1] ldr ip, [r4] ldr ip, [ip, #8] ldrb ip, [ip, #7] cmp ip, #7 addls pc, pc, ip, lsl #2 b _0234E0D0 _0234E084: ; jump table b _0234E0A4 ; case 0 b _0234E0B0 ; case 1 b _0234E0B0 ; case 2 b _0234E0BC ; case 3 b _0234E0BC ; case 4 b _0234E0C8 ; case 5 b _0234E0C8 ; case 6 b _0234E0A4 ; case 7 _0234E0A4: mov ip, #1 strb ip, [sp, #0xc] b _0234E0D0 _0234E0B0: mov ip, #1 strb ip, [sp, #0xd] b _0234E0D0 _0234E0BC: sub ip, lr, #1 strb ip, [sp, #0xc] b _0234E0D0 _0234E0C8: sub ip, lr, #1 strb ip, [sp, #0xd] _0234E0D0: ldr lr, [sp, #0x18] ldr ip, [sp, #0x1c] str lr, [sp] str ip, [sp, #4] ldrb lr, [sp, #0xc] ldrb ip, [sp, #0xd] add r0, r0, #0x18 strb lr, [sp, #8] strb ip, [sp, #9] bl ov02_0232B870 add sp, sp, #0x10 ldmia sp!, {r4, pc} arm_func_end ov02_0234E050 arm_func_start ov02_0234E100 ov02_0234E100: ; 0x0234E100 stmdb sp!, {r3, lr} sub sp, sp, #8 ldrh ip, [sp, #0x10] str r3, [sp] ldr r3, _0234E138 ; =ov02_0235AB84 str ip, [sp, #4] ldr lr, [r3] ldr ip, [sp, #0x14] mov r3, r2 mov r2, r1 add r1, lr, ip, lsl #3 bl ov02_0232B01C add sp, sp, #8 ldmia sp!, {r3, pc} .align 2, 0 _0234E138: .word ov02_0235AB84 arm_func_end ov02_0234E100 arm_func_start ov02_0234E13C ov02_0234E13C: ; 0x0234E13C stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #8 ldr r6, [sp, #0x34] mov sb, r1 ldrh r1, [r6] ldr r7, [sp, #0x30] ldr r5, [sp, #0x38] cmp r1, #0 mov sl, r0 mov r8, r2 mov fp, r3 addeq sp, sp, #8 ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} _0234E170: ldr r0, _0234E1E0 ; =ov02_0235AB84 ldr r0, [r0] add r4, r0, r5, lsl #3 mov r0, r4 bl ov02_0232A118 mov r1, r0 ldr r0, _0234E1E4 ; =0x0000FFFF cmp r1, r0 ldreq r0, [r4] ldreqh r1, [r0, #2] mov r0, r4 bl ov02_0232A160 ldrh r1, [r6] mov r2, r0 mov r0, sl stmia sp, {r1, r5} ldrsb r1, [r2, #2] mov r2, r8 mov r3, fp sub r1, r7, r1 add r1, sb, r1, asr #1 bl ov02_0234E100 ldrh r1, [r6, #2]! add sb, sb, r7 cmp r1, #0 bne _0234E170 add sp, sp, #8 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _0234E1E0: .word ov02_0235AB84 _0234E1E4: .word 0x0000FFFF arm_func_end ov02_0234E13C arm_func_start ov02_0234E1E8 ov02_0234E1E8: ; 0x0234E1E8 stmdb sp!, {r4, lr} sub sp, sp, #0x18 ldr r4, [r0, #0x1c] add ip, sp, #0x14 mov lr, #0 strb lr, [ip] strb lr, [ip, #1] ldr ip, [r4] ldr ip, [ip, #8] ldrb ip, [ip, #7] cmp ip, #7 addls pc, pc, ip, lsl #2 b _0234E268 _0234E21C: ; jump table b _0234E23C ; case 0 b _0234E248 ; case 1 b _0234E248 ; case 2 b _0234E254 ; case 3 b _0234E254 ; case 4 b _0234E260 ; case 5 b _0234E260 ; case 6 b _0234E23C ; case 7 _0234E23C: mov ip, #1 strb ip, [sp, #0x14] b _0234E268 _0234E248: mov ip, #1 strb ip, [sp, #0x15] b _0234E268 _0234E254: sub ip, lr, #1 strb ip, [sp, #0x14] b _0234E268 _0234E260: sub ip, lr, #1 strb ip, [sp, #0x15] _0234E268: ldr lr, [sp, #0x20] ldr ip, [sp, #0x24] str lr, [sp] ldr lr, [sp, #0x28] str ip, [sp, #4] ldr ip, [sp, #0x2c] str lr, [sp, #8] str ip, [sp, #0xc] ldrb lr, [sp, #0x14] ldrb ip, [sp, #0x15] add r0, r0, #0x18 strb lr, [sp, #0x10] strb ip, [sp, #0x11] bl ov02_0232B994 add sp, sp, #0x18 ldmia sp!, {r4, pc} arm_func_end ov02_0234E1E8 arm_func_start ov02_0234E2A8 ov02_0234E2A8: ; 0x0234E2A8 stmdb sp!, {r3, lr} ldr r2, [r0, #0x14] ldr r2, [r2, #4] blx r2 ldmia sp!, {r3, pc} arm_func_end ov02_0234E2A8 arm_func_start ov02_0234E2BC ov02_0234E2BC: ; 0x0234E2BC stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #0x10 mov r6, r3 mov r4, r0 mov r8, r1 mov r0, r6 mov r1, #0 mov r7, r2 bl ov02_0234D308 mov r2, #0 mov r5, r0 mov r0, r6 mvn r1, #0 mov r3, r2 bl ov02_0234D31C mov r0, r6 mvn r1, #0 mov r2, #0 mov r3, #0xf bl ov02_0234D3C0 mov r0, r6 mvn r1, #0 ldr r2, [sp, #0x28] bl ov02_0234D530 str r7, [sp] mov r0, r5 mov r3, r8 mov r1, #0 str r1, [sp, #4] ldrh r2, [r4, #0x2c] mov r1, #2 str r2, [sp, #8] str r1, [sp, #0xc] ldrb r1, [r4, #0x2e] ldrb r2, [r4, #0x2f] bl ov02_0232B35C add sp, sp, #0x10 ldmia sp!, {r4, r5, r6, r7, r8, pc} arm_func_end ov02_0234E2BC arm_func_start ov02_0234E354 ov02_0234E354: ; 0x0234E354 ldr r1, _0234E374 ; =ov02_0235AB84 ldr r2, [r1] add r1, r2, #0x610 cmp r0, r1 mov r0, #1 streqb r0, [r2, #0x67c] strneb r0, [r2, #0x67d] bx lr .align 2, 0 _0234E374: .word ov02_0235AB84 arm_func_end ov02_0234E354 arm_func_start ov02_0234E378 ov02_0234E378: ; 0x0234E378 strh r0, [r2] strh r1, [r2, #2] bx lr arm_func_end ov02_0234E378 arm_func_start ov02_0234E384 ov02_0234E384: ; 0x0234E384 ldr ip, [sp] strh r0, [ip] strh r1, [ip, #2] strh r2, [ip, #4] strh r3, [ip, #6] bx lr arm_func_end ov02_0234E384 arm_func_start ov02_0234E39C ov02_0234E39C: ; 0x0234E39C ldrh r3, [r0] strh r3, [r2] ldrh r3, [r0, #2] strh r3, [r2, #2] ldrh ip, [r0] ldrh r3, [r1] add r3, ip, r3 strh r3, [r2, #4] ldrh r3, [r0, #2] ldrh r0, [r1, #2] add r0, r3, r0 strh r0, [r2, #6] bx lr arm_func_end ov02_0234E39C arm_func_start ov02_0234E3D0 ov02_0234E3D0: ; 0x0234E3D0 cmp r0, #1 bne _0234E3FC ldr r3, _0234E420 ; =0x04001000 ldr r2, [r3] ldr r0, [r3] and ip, r2, #0x1f00 bic r2, r0, #0x1f00 orr r0, r1, ip, lsr #8 orr r0, r2, r0, lsl #8 str r0, [r3] bx lr _0234E3FC: mov r3, #0x4000000 ldr r2, [r3] ldr r0, [r3] and ip, r2, #0x1f00 bic r2, r0, #0x1f00 orr r0, r1, ip, lsr #8 orr r0, r2, r0, lsl #8 str r0, [r3] bx lr .align 2, 0 _0234E420: .word 0x04001000 arm_func_end ov02_0234E3D0 arm_func_start ov02_0234E424 ov02_0234E424: ; 0x0234E424 cmp r0, #1 bne _0234E454 ldr r3, _0234E47C ; =0x04001000 mvn r0, r1 ldr r2, [r3] ldr r1, [r3] and r2, r2, #0x1f00 bic r1, r1, #0x1f00 and r0, r0, r2, lsr #8 orr r0, r1, r0, lsl #8 str r0, [r3] bx lr _0234E454: mov r3, #0x4000000 ldr r0, [r3] ldr r2, [r3] and ip, r0, #0x1f00 mvn r0, r1 bic r1, r2, #0x1f00 and r0, r0, ip, lsr #8 orr r0, r1, r0, lsl #8 str r0, [r3] bx lr .align 2, 0 _0234E47C: .word 0x04001000 arm_func_end ov02_0234E424 arm_func_start ov02_0234E480 ov02_0234E480: ; 0x0234E480 cmp r0, #1 bne _0234E508 cmp r1, #0 ldrh r0, [r2] ldrh r3, [r2, #2] bne _0234E4D0 ldrh r1, [r2, #4] ldrh ip, [r2, #6] mov r2, r0, lsl #8 mov r0, r3, lsl #8 and r3, r2, #0xff00 and r1, r1, #0xff orr r3, r3, r1 ldr r2, _0234E588 ; =0x04001040 and r1, r0, #0xff00 and r0, ip, #0xff strh r3, [r2] orr r0, r1, r0 strh r0, [r2, #4] bx lr _0234E4D0: ldrh r1, [r2, #4] ldrh ip, [r2, #6] mov r2, r0, lsl #8 mov r0, r3, lsl #8 and r3, r2, #0xff00 and r1, r1, #0xff orr r3, r3, r1 ldr r2, _0234E58C ; =0x04001042 and r1, r0, #0xff00 and r0, ip, #0xff strh r3, [r2] orr r0, r1, r0 strh r0, [r2, #4] bx lr _0234E508: cmp r1, #0 ldrh r0, [r2] ldrh r3, [r2, #2] bne _0234E550 ldrh r1, [r2, #4] ldrh ip, [r2, #6] mov r2, r0, lsl #8 mov r0, r3, lsl #8 and r3, r2, #0xff00 and r1, r1, #0xff orr r3, r3, r1 ldr r2, _0234E590 ; =0x04000040 and r1, r0, #0xff00 and r0, ip, #0xff strh r3, [r2] orr r0, r1, r0 strh r0, [r2, #4] bx lr _0234E550: ldrh r1, [r2, #4] ldrh ip, [r2, #6] mov r2, r0, lsl #8 mov r0, r3, lsl #8 and r3, r2, #0xff00 and r1, r1, #0xff orr r3, r3, r1 ldr r2, _0234E594 ; =0x04000042 and r1, r0, #0xff00 and r0, ip, #0xff strh r3, [r2] orr r0, r1, r0 strh r0, [r2, #4] bx lr .align 2, 0 _0234E588: .word 0x04001040 _0234E58C: .word 0x04001042 _0234E590: .word 0x04000040 _0234E594: .word 0x04000042 arm_func_end ov02_0234E480 arm_func_start ov02_0234E598 ov02_0234E598: ; 0x0234E598 cmp r1, #3 addls pc, pc, r1, lsl #2 bx lr _0234E5A4: ; jump table b _0234E5B4 ; case 0 b _0234E604 ; case 1 b _0234E654 ; case 2 b _0234E6A4 ; case 3 _0234E5B4: cmp r0, #1 bne _0234E5E0 ldr r0, _0234E6F4 ; =0x04001048 cmp r3, #0 ldrh r0, [r0] bic r0, r0, #0x3f orr r1, r0, r2 ldr r0, _0234E6F4 ; =0x04001048 orrne r1, r1, #0x20 strh r1, [r0] bx lr _0234E5E0: ldr r0, _0234E6F8 ; =0x04000048 cmp r3, #0 ldrh r0, [r0] bic r0, r0, #0x3f orr r1, r0, r2 ldr r0, _0234E6F8 ; =0x04000048 orrne r1, r1, #0x20 strh r1, [r0] bx lr _0234E604: cmp r0, #1 bne _0234E630 ldr r0, _0234E6F4 ; =0x04001048 cmp r3, #0 ldrh r0, [r0] bic r0, r0, #0x3f00 orr r1, r0, r2, lsl #8 ldr r0, _0234E6F4 ; =0x04001048 orrne r1, r1, #0x2000 strh r1, [r0] bx lr _0234E630: ldr r0, _0234E6F8 ; =0x04000048 cmp r3, #0 ldrh r0, [r0] bic r0, r0, #0x3f00 orr r1, r0, r2, lsl #8 ldr r0, _0234E6F8 ; =0x04000048 orrne r1, r1, #0x2000 strh r1, [r0] bx lr _0234E654: cmp r0, #1 bne _0234E680 ldr r0, _0234E6FC ; =0x0400104A cmp r3, #0 ldrh r0, [r0] bic r0, r0, #0x3f00 orr r1, r0, r2, lsl #8 ldr r0, _0234E6FC ; =0x0400104A orrne r1, r1, #0x2000 strh r1, [r0] bx lr _0234E680: ldr r0, _0234E700 ; =0x0400004A cmp r3, #0 ldrh r0, [r0] bic r0, r0, #0x3f00 orr r1, r0, r2, lsl #8 ldr r0, _0234E700 ; =0x0400004A orrne r1, r1, #0x2000 strh r1, [r0] bx lr _0234E6A4: cmp r0, #1 bne _0234E6D0 ldr r0, _0234E6FC ; =0x0400104A cmp r3, #0 ldrh r0, [r0] bic r0, r0, #0x3f orr r1, r0, r2 ldr r0, _0234E6FC ; =0x0400104A orrne r1, r1, #0x20 strh r1, [r0] bx lr _0234E6D0: ldr r0, _0234E700 ; =0x0400004A cmp r3, #0 ldrh r0, [r0] bic r0, r0, #0x3f orr r1, r0, r2 ldr r0, _0234E700 ; =0x0400004A orrne r1, r1, #0x20 strh r1, [r0] bx lr .align 2, 0 _0234E6F4: .word 0x04001048 _0234E6F8: .word 0x04000048 _0234E6FC: .word 0x0400104A _0234E700: .word 0x0400004A arm_func_end ov02_0234E598 arm_func_start ov02_0234E704 ov02_0234E704: ; 0x0234E704 stmdb sp!, {r4, lr} mov r4, r0 mov r1, #0 mov r2, #0x40000 bl MemsetFast mov r0, r4 mov r1, #0x40000 mov r2, #0 bl ov02_02329D54 ldr r1, _0234E740 ; =ov02_0235AB88 cmp r0, #0 str r0, [r1] ldmneia sp!, {r4, pc} bl WaitForever2 ldmia sp!, {r4, pc} .align 2, 0 _0234E740: .word ov02_0235AB88 arm_func_end ov02_0234E704 arm_func_start ov02_0234E744 ov02_0234E744: ; 0x0234E744 stmdb sp!, {r3, lr} ldr r0, _0234E764 ; =ov02_0235AB88 ldr r0, [r0] bl ov02_02329D8C ldr r0, _0234E764 ; =ov02_0235AB88 mov r1, #0 str r1, [r0] ldmia sp!, {r3, pc} .align 2, 0 _0234E764: .word ov02_0235AB88 arm_func_end ov02_0234E744 arm_func_start ov02_0234E768 ov02_0234E768: ; 0x0234E768 stmdb sp!, {r4, r5, r6, lr} mov r6, r0 mov r0, #1 mov r4, r1 bl OS_DisableIrqMask ldr r1, _0234E7B0 ; =ov02_0235AB88 mov r5, r0 ldr r0, [r1] mov r1, r6 mov r2, r4 bl ov02_02329D98 movs r4, r0 bne _0234E7A0 bl WaitForever2 _0234E7A0: mov r0, r5 bl OS_EnableIrqMask mov r0, r4 ldmia sp!, {r4, r5, r6, pc} .align 2, 0 _0234E7B0: .word ov02_0235AB88 arm_func_end ov02_0234E768 arm_func_start ov02_0234E7B4 ov02_0234E7B4: ; 0x0234E7B4 stmdb sp!, {r4, lr} mov r4, r0 bl ov02_0234E768 mov r2, r4 mov r1, #0 mov r4, r0 bl MemsetFast mov r0, r4 ldmia sp!, {r4, pc} arm_func_end ov02_0234E7B4 arm_func_start ov02_0234E7D8 ov02_0234E7D8: ; 0x0234E7D8 stmdb sp!, {r3, r4, r5, lr} mov r5, r0 mov r0, #1 bl OS_DisableIrqMask ldr r1, [r5] mov r4, r0 cmp r1, #0 ldmeqia sp!, {r3, r4, r5, pc} ldr r0, _0234E818 ; =ov02_0235AB88 ldr r0, [r0] bl ov02_02329DC8 mov r0, r4 bl OS_EnableIrqMask mov r0, #0 str r0, [r5] ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0234E818: .word ov02_0235AB88 arm_func_end ov02_0234E7D8 arm_func_start ov02_0234E81C ov02_0234E81C: ; 0x0234E81C stmdb sp!, {r3, r4, r5, lr} mov r5, r0 mov r0, #1 bl OS_DisableIrqMask mov r4, r0 cmp r5, #0 ldmeqia sp!, {r3, r4, r5, pc} ldr r0, _0234E854 ; =ov02_0235AB88 mov r1, r5 ldr r0, [r0] bl ov02_02329DC8 mov r0, r4 bl OS_EnableIrqMask ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0234E854: .word ov02_0235AB88 arm_func_end ov02_0234E81C arm_func_start ov02_0234E858 ov02_0234E858: ; 0x0234E858 stmdb sp!, {r3, lr} sub sp, sp, #8 mov r0, #0x3a mov r1, #4 bl ov02_0234E7B4 ldr r1, _0234E8D0 ; =ov02_0235AB8C str r0, [r1, #4] add r0, sp, #0 bl sub_02081264 cmp r0, #0 bne _0234E888 bl WaitForever2 _0234E888: add r0, sp, #0 bl sub_020812F8 ldr r1, _0234E8D0 ; =ov02_0235AB8C mov r0, #0 ldr r2, [r1, #4] mov r1, #4 mov r3, #5 bl sub_0208151C mov r0, #2 bl sub_020819D4 mov r0, #2 bl sub_020819EC cmp r0, #0 beq _0234E8C4 bl WaitForever2 _0234E8C4: bl ov02_0234E90C add sp, sp, #8 ldmia sp!, {r3, pc} .align 2, 0 _0234E8D0: .word ov02_0235AB8C arm_func_end ov02_0234E858 arm_func_start ov02_0234E8D4 ov02_0234E8D4: ; 0x0234E8D4 stmdb sp!, {r3, r4, r5, lr} mov r5, #4 mov r4, r5 _0234E8E0: bl sub_0208161C mov r0, r5 bl sub_020819D4 mov r0, r4 bl sub_020819EC cmp r0, #0 bne _0234E8E0 ldr r0, _0234E908 ; =ov02_0235AB90 bl ov02_0234E7D8 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0234E908: .word ov02_0235AB90 arm_func_end ov02_0234E8D4 arm_func_start ov02_0234E90C ov02_0234E90C: ; 0x0234E90C stmdb sp!, {r3, lr} bl ov02_0234E91C bl ov02_0234EA20 ldmia sp!, {r3, pc} arm_func_end ov02_0234E90C arm_func_start ov02_0234E91C ov02_0234E91C: ; 0x0234E91C stmdb sp!, {r3, r4, r5, r6, r7, lr} ldr r1, _0234EA0C ; =0x04000130 ldr r0, _0234EA10 ; =0x027FFFA8 ldrh r2, [r1] ldrh r1, [r0] ldr r4, _0234EA14 ; =ov02_0235AB8C ldr r0, _0234EA18 ; =0x00002FFF orr r1, r2, r1 eor r1, r1, r0 and r0, r1, r0 ldr r5, [r4, #4] mov r0, r0, lsl #0x10 ldrh r1, [r5, #0x30] mov ip, r0, lsr #0x10 ldr r3, _0234EA1C ; =ov02_0235AB94 eor r1, r1, r0, lsr #16 and r1, r1, r0, lsr #16 strh r1, [r5, #0x32] ldrh r5, [r5, #0x30] ldr r1, [r4, #4] mov r2, #0 eor r0, r5, r0, lsr #16 and r0, r5, r0 strh r0, [r1, #0x36] ldr r0, [r4, #4] mov r5, #0x28 strh ip, [r0, #0x30] ldr r1, [r4, #4] ldrh r0, [r1, #0x32] strh r0, [r1, #0x34] mov r0, r2 mov r1, #1 _0234E99C: mov r6, r1, lsl r2 mov lr, r6, lsl #0x10 tst ip, lr, lsr #16 streqb r0, [r3] beq _0234E9F8 ldrb r6, [r3] add r7, r6, #1 and r6, r7, #0xff strb r7, [r3] cmp r6, #0x28 bne _0234E9DC ldr r7, [r4, #4] ldrh r6, [r7, #0x34] orr r6, r6, lr, lsr #16 strh r6, [r7, #0x34] b _0234E9F8 _0234E9DC: cmp r6, #0x2f bne _0234E9F8 ldr r7, [r4, #4] ldrh r6, [r7, #0x34] orr r6, r6, lr, lsr #16 strh r6, [r7, #0x34] strb r5, [r3] _0234E9F8: add r2, r2, #1 cmp r2, #0xe add r3, r3, #1 blt _0234E99C ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _0234EA0C: .word 0x04000130 _0234EA10: .word 0x027FFFA8 _0234EA14: .word ov02_0235AB8C _0234EA18: .word 0x00002FFF _0234EA1C: .word ov02_0235AB94 arm_func_end ov02_0234E91C arm_func_start ov02_0234EA20 ov02_0234EA20: ; 0x0234EA20 stmdb sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #8 ldr r0, _0234EBB8 ; =ov02_0235AB8C mov r5, #0 ldr r0, [r0, #4] ldrb r0, [r0, #0x38] mov r0, r0, lsl #0x1f movs r0, r0, lsr #0x1f movne r6, #1 moveq r6, #0 bl sub_020816B4 ldr r7, _0234EBB8 ; =ov02_0235AB8C mov r4, r5 ldr r3, [r7, #4] mov r8, #5 ldrh r2, [r3, #0x28] ldrh r1, [r3, #0x2a] strh r2, [r3, #0x2c] strh r1, [r3, #0x2e] _0234EA6C: ldr r1, [r7, #4] add r1, r1, r0, lsl #3 ldrh r2, [r1, #4] cmp r2, #1 ldreqh r2, [r1, #6] cmpeq r2, #0 bne _0234EAB0 add r0, sp, #0 mov r5, #1 bl sub_020818B0 ldr r1, _0234EBB8 ; =ov02_0235AB8C ldrh r0, [sp] ldr r2, [r1, #4] ldrh r1, [sp, #2] add r2, r2, #0x28 bl ov02_0234E378 b _0234EAC8 _0234EAB0: mov r1, r8 add r4, r4, #1 add r0, r0, #4 bl FX_ModS32 cmp r4, #4 blt _0234EA6C _0234EAC8: ldr r0, _0234EBB8 ; =ov02_0235AB8C eor r7, r5, r6 ldr r4, [r0, #4] and r1, r5, r7 ldrb r3, [r4, #0x38] and r2, r1, #0xff and r1, r6, r7 bic r3, r3, #2 mov r2, r2, lsl #0x1f orr r2, r3, r2, lsr #30 strb r2, [r4, #0x38] ldr r4, [r0, #4] and r1, r1, #0xff ldrb r3, [r4, #0x38] mov r2, r1, lsl #0x1f cmp r5, #0 bic r3, r3, #8 orr r2, r3, r2, lsr #28 strb r2, [r4, #0x38] ldr r3, [r0, #4] and r1, r5, #1 ldrb r2, [r3, #0x38] addeq sp, sp, #8 bic r2, r2, #1 orr r1, r2, r1 strb r1, [r3, #0x38] ldr r3, [r0, #4] ldrb r2, [r3, #0x38] mov r1, r2, lsl #0x1e mov r1, r1, lsr #0x1f bic r2, r2, #4 mov r1, r1, lsl #0x1f orr r1, r2, r1, lsr #29 strb r1, [r3, #0x38] moveq r1, #0 streqb r1, [r0, #1] ldmeqia sp!, {r4, r5, r6, r7, r8, pc} ldrb r1, [r0, #1] add r2, r1, #1 and r1, r2, #0xff strb r2, [r0, #1] cmp r1, #0x28 bne _0234EB8C ldr r1, [r0, #4] add sp, sp, #8 ldrb r0, [r1, #0x38] orr r0, r0, #4 strb r0, [r1, #0x38] ldmia sp!, {r4, r5, r6, r7, r8, pc} _0234EB8C: cmp r1, #0x2f addne sp, sp, #8 ldmneia sp!, {r4, r5, r6, r7, r8, pc} ldr r3, [r0, #4] mov r1, #0x28 ldrb r2, [r3, #0x38] orr r2, r2, #4 strb r2, [r3, #0x38] strb r1, [r0, #1] add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _0234EBB8: .word ov02_0235AB8C arm_func_end ov02_0234EA20 arm_func_start ov02_0234EBBC ov02_0234EBBC: ; 0x0234EBBC ldr r1, _0234EBF4 ; =0x027FFFA8 ldrh r1, [r1] and r1, r1, #0x8000 movs r1, r1, asr #0xf movne r0, #0 bxne lr ldr r1, _0234EBF8 ; =ov02_0235AB8C ldr r1, [r1, #4] ldrh r1, [r1, #0x32] and r1, r0, r1 cmp r0, r1 moveq r0, #1 movne r0, #0 bx lr .align 2, 0 _0234EBF4: .word 0x027FFFA8 _0234EBF8: .word ov02_0235AB8C arm_func_end ov02_0234EBBC arm_func_start ov02_0234EBFC ov02_0234EBFC: ; 0x0234EBFC ldr r1, _0234EC34 ; =0x027FFFA8 ldrh r1, [r1] and r1, r1, #0x8000 movs r1, r1, asr #0xf movne r0, #0 bxne lr ldr r1, _0234EC38 ; =ov02_0235AB8C ldr r1, [r1, #4] ldrh r1, [r1, #0x34] and r1, r0, r1 cmp r0, r1 moveq r0, #1 movne r0, #0 bx lr .align 2, 0 _0234EC34: .word 0x027FFFA8 _0234EC38: .word ov02_0235AB8C arm_func_end ov02_0234EBFC arm_func_start ov02_0234EC3C ov02_0234EC3C: ; 0x0234EC3C ldr r1, _0234EC74 ; =0x027FFFA8 ldrh r1, [r1] and r1, r1, #0x8000 movs r1, r1, asr #0xf movne r0, #0 bxne lr ldr r1, _0234EC78 ; =ov02_0235AB8C ldr r1, [r1, #4] ldrh r1, [r1, #0x36] and r1, r0, r1 cmp r0, r1 moveq r0, #1 movne r0, #0 bx lr .align 2, 0 _0234EC74: .word 0x027FFFA8 _0234EC78: .word ov02_0235AB8C arm_func_end ov02_0234EC3C arm_func_start ov02_0234EC7C ov02_0234EC7C: ; 0x0234EC7C ldr r1, _0234ECFC ; =0x027FFFA8 ldrh r1, [r1] and r1, r1, #0x8000 movs r1, r1, asr #0xf movne r0, #0 bxne lr ldr r1, _0234ED00 ; =ov02_0235AB8C ldr r3, [r1, #4] ldrb r1, [r3, #0x38] mov r1, r1, lsl #0x1f movs r1, r1, lsr #0x1f moveq r0, #0 bxeq lr ldrh r2, [r3, #0x28] ldrh r1, [r0] cmp r1, r2 movhi r0, #0 bxhi lr ldrh r1, [r0, #4] cmp r1, r2 movlo r0, #0 bxlo lr ldrh r2, [r3, #0x2a] ldrh r1, [r0, #2] cmp r1, r2 movhi r0, #0 bxhi lr ldrh r0, [r0, #6] cmp r0, r2 movhs r0, #1 movlo r0, #0 bx lr .align 2, 0 _0234ECFC: .word 0x027FFFA8 _0234ED00: .word ov02_0235AB8C arm_func_end ov02_0234EC7C arm_func_start ov02_0234ED04 ov02_0234ED04: ; 0x0234ED04 ldr r1, _0234ED84 ; =0x027FFFA8 ldrh r1, [r1] and r1, r1, #0x8000 movs r1, r1, asr #0xf movne r0, #0 bxne lr ldr r1, _0234ED88 ; =ov02_0235AB8C ldr r3, [r1, #4] ldrb r1, [r3, #0x38] mov r1, r1, lsl #0x1e movs r1, r1, lsr #0x1f moveq r0, #0 bxeq lr ldrh r2, [r3, #0x28] ldrh r1, [r0] cmp r1, r2 movhi r0, #0 bxhi lr ldrh r1, [r0, #4] cmp r1, r2 movlo r0, #0 bxlo lr ldrh r2, [r3, #0x2a] ldrh r1, [r0, #2] cmp r1, r2 movhi r0, #0 bxhi lr ldrh r0, [r0, #6] cmp r0, r2 movhs r0, #1 movlo r0, #0 bx lr .align 2, 0 _0234ED84: .word 0x027FFFA8 _0234ED88: .word ov02_0235AB8C arm_func_end ov02_0234ED04 arm_func_start ov02_0234ED8C ov02_0234ED8C: ; 0x0234ED8C ldr r1, _0234EE0C ; =0x027FFFA8 ldrh r1, [r1] and r1, r1, #0x8000 movs r1, r1, asr #0xf movne r0, #0 bxne lr ldr r1, _0234EE10 ; =ov02_0235AB8C ldr r3, [r1, #4] ldrb r1, [r3, #0x38] mov r1, r1, lsl #0x1d movs r1, r1, lsr #0x1f moveq r0, #0 bxeq lr ldrh r2, [r3, #0x28] ldrh r1, [r0] cmp r1, r2 movhi r0, #0 bxhi lr ldrh r1, [r0, #4] cmp r1, r2 movlo r0, #0 bxlo lr ldrh r2, [r3, #0x2a] ldrh r1, [r0, #2] cmp r1, r2 movhi r0, #0 bxhi lr ldrh r0, [r0, #6] cmp r0, r2 movhs r0, #1 movlo r0, #0 bx lr .align 2, 0 _0234EE0C: .word 0x027FFFA8 _0234EE10: .word ov02_0235AB8C arm_func_end ov02_0234ED8C arm_func_start ov02_0234EE14 ov02_0234EE14: ; 0x0234EE14 ldr r1, _0234EE94 ; =0x027FFFA8 ldrh r1, [r1] and r1, r1, #0x8000 movs r1, r1, asr #0xf movne r0, #0 bxne lr ldr r1, _0234EE98 ; =ov02_0235AB8C ldr r3, [r1, #4] ldrb r1, [r3, #0x38] mov r1, r1, lsl #0x1c movs r1, r1, lsr #0x1f moveq r0, #0 bxeq lr ldrh r2, [r3, #0x28] ldrh r1, [r0] cmp r1, r2 movhi r0, #0 bxhi lr ldrh r1, [r0, #4] cmp r1, r2 movlo r0, #0 bxlo lr ldrh r2, [r3, #0x2a] ldrh r1, [r0, #2] cmp r1, r2 movhi r0, #0 bxhi lr ldrh r0, [r0, #6] cmp r0, r2 movhs r0, #1 movlo r0, #0 bx lr .align 2, 0 _0234EE94: .word 0x027FFFA8 _0234EE98: .word ov02_0235AB8C arm_func_end ov02_0234EE14 arm_func_start ov02_0234EE9C ov02_0234EE9C: ; 0x0234EE9C stmdb sp!, {r3, lr} sub sp, sp, #8 ldr r1, _0234EF00 ; =0x027FFFA8 ldrh r1, [r1] and r1, r1, #0x8000 movs r1, r1, asr #0xf addne sp, sp, #8 movne r0, #0 ldmneia sp!, {r3, pc} ldrh r1, [r0] strh r1, [sp] ldrh r1, [r0, #2] strh r1, [sp, #2] ldrh r2, [r0] ldrh r1, [r0, #4] add r1, r2, r1 strh r1, [sp, #4] ldrh r2, [r0, #2] ldrh r1, [r0, #6] add r0, sp, #0 add r1, r2, r1 strh r1, [sp, #6] bl ov02_0234ED04 add sp, sp, #8 ldmia sp!, {r3, pc} .align 2, 0 _0234EF00: .word 0x027FFFA8 arm_func_end ov02_0234EE9C arm_func_start ov02_0234EF04 ov02_0234EF04: ; 0x0234EF04 ldr r1, _0234EF64 ; =0x027FFFA8 ldrh r1, [r1] and r1, r1, #0x8000 movs r1, r1, asr #0xf movne r0, #0 bxne lr ldr r1, _0234EF68 ; =ov02_0235AB8C ldr r3, [r1, #4] ldrb r1, [r3, #0x38] mov r1, r1, lsl #0x1f movs r1, r1, lsr #0x1f bne _0234EF4C ldrh r2, [r3, #0x2c] ldrh r1, [r3, #0x2e] strh r2, [r0] strh r1, [r0, #2] mov r0, #0 bx lr _0234EF4C: ldrh r2, [r3, #0x28] ldrh r1, [r3, #0x2a] strh r2, [r0] strh r1, [r0, #2] mov r0, #1 bx lr .align 2, 0 _0234EF64: .word 0x027FFFA8 _0234EF68: .word ov02_0235AB8C arm_func_end ov02_0234EF04 arm_func_start ov02_0234EF6C ov02_0234EF6C: ; 0x0234EF6C stmdb sp!, {r3, lr} ldr r0, _0234EFE0 ; =ov02_0235AB8C ldrb r0, [r0] cmp r0, #0 ldr r0, _0234EFE4 ; =0x027FFFA8 beq _0234EFB4 ldrh r0, [r0] and r0, r0, #0x8000 movs r0, r0, asr #0xf ldmneia sp!, {r3, pc} mov r0, #1 bl sub_02082420 cmp r0, #0 ldmeqia sp!, {r3, pc} ldr r0, _0234EFE0 ; =ov02_0235AB8C mov r1, #0 strb r1, [r0] ldmia sp!, {r3, pc} _0234EFB4: ldrh r0, [r0] and r0, r0, #0x8000 movs r0, r0, asr #0xf ldmeqia sp!, {r3, pc} mov r0, #0 bl sub_02082420 cmp r0, #0 ldrne r0, _0234EFE0 ; =ov02_0235AB8C movne r1, #1 strneb r1, [r0] ldmia sp!, {r3, pc} .align 2, 0 _0234EFE0: .word ov02_0235AB8C _0234EFE4: .word 0x027FFFA8 arm_func_end ov02_0234EF6C arm_func_start ov02_0234EFE8 ov02_0234EFE8: ; 0x0234EFE8 stmdb sp!, {r3, lr} ldr r0, _0234F048 ; =0x04000210 ldr r1, _0234F04C ; =ov02_0235ABA4 ldr r2, [r0] ldr r0, _0234F050 ; =0x00040018 str r2, [r1, #4] bl OS_SetIrqMask mov r0, #1 bl OS_EnableIrqMask mov r0, #1 bl sub_02078B20 ldr r2, _0234F04C ; =ov02_0235ABA4 ldr r1, _0234F054 ; =ov02_0234F098 str r0, [r2] mov r0, #1 bl OS_SetIrqFunction mov r0, #1 bl OS_ResetRequestIrqMask ldr r2, _0234F058 ; =0x04000208 mov r0, #1 ldrh r1, [r2] strh r0, [r2] bl ClearIrqFlag ldmia sp!, {r3, pc} .align 2, 0 _0234F048: .word 0x04000210 _0234F04C: .word ov02_0235ABA4 _0234F050: .word 0x00040018 _0234F054: .word ov02_0234F098 _0234F058: .word 0x04000208 arm_func_end ov02_0234EFE8 arm_func_start ov02_0234F05C ov02_0234F05C: ; 0x0234F05C stmdb sp!, {r3, lr} ldr r2, _0234F090 ; =0x04000208 mov r1, #0 ldrh r0, [r2] ldr r0, _0234F094 ; =ov02_0235ABA4 strh r1, [r2] ldr r0, [r0, #4] bl OS_SetIrqMask ldr r1, _0234F094 ; =ov02_0235ABA4 mov r0, #1 ldr r1, [r1] bl OS_SetIrqFunction ldmia sp!, {r3, pc} .align 2, 0 _0234F090: .word 0x04000208 _0234F094: .word ov02_0235ABA4 arm_func_end ov02_0234F05C arm_func_start ov02_0234F098 ov02_0234F098: ; 0x0234F098 stmdb sp!, {r3, lr} mov r0, #1 bl ov02_0234F9E8 ldr r0, _0234F0BC ; =OS_IRQTable add r0, r0, #0x3000 ldr r1, [r0, #0xff8] orr r1, r1, #1 str r1, [r0, #0xff8] ldmia sp!, {r3, pc} .align 2, 0 _0234F0BC: .word OS_IRQTable arm_func_end ov02_0234F098 arm_func_start ov02_0234F0C0 ov02_0234F0C0: ; 0x0234F0C0 stmdb sp!, {r3, lr} mov r0, #0x10 mov r1, #4 bl ov02_0234E7B4 mov r2, #0 str r2, [r0] add r1, r0, #8 str r1, [r0, #4] str r0, [r0, #8] str r2, [r0, #0xc] ldmia sp!, {r3, pc} arm_func_end ov02_0234F0C0 arm_func_start ov02_0234F0EC ov02_0234F0EC: ; 0x0234F0EC stmdb sp!, {r0, r1, r2, r3} stmdb sp!, {r3, lr} add r0, sp, #8 bl ov02_0234E7D8 ldmia sp!, {r3, lr} add sp, sp, #0x10 bx lr arm_func_end ov02_0234F0EC arm_func_start ov02_0234F108 ov02_0234F108: ; 0x0234F108 stmdb sp!, {r4, lr} mov r4, r0 mov r0, #1 bl OS_DisableIrqMask ldmia r4, {r2, r3} str r3, [r2, #4] ldr r3, [r4] ldr r2, [r4, #4] mov r1, #0 str r3, [r2] str r1, [r4, #4] str r1, [r4] bl OS_EnableIrqMask ldmia sp!, {r4, pc} arm_func_end ov02_0234F108 arm_func_start ov02_0234F140 ov02_0234F140: ; 0x0234F140 stmdb sp!, {r3, r4, r5, lr} mov r5, r0 mov r0, #1 mov r4, r1 bl OS_DisableIrqMask ldr r1, [r5] str r4, [r1, #4] ldr r1, [r5] stmia r4, {r1, r5} str r4, [r5] bl OS_EnableIrqMask ldmia sp!, {r3, r4, r5, pc} arm_func_end ov02_0234F140 arm_func_start ov02_0234F170 ov02_0234F170: ; 0x0234F170 ldr ip, _0234F17C ; =ov02_0234F140 add r0, r0, #8 bx ip .align 2, 0 _0234F17C: .word ov02_0234F140 arm_func_end ov02_0234F170 arm_func_start ov02_0234F180 ov02_0234F180: ; 0x0234F180 ldr ip, _0234F18C ; =ov02_0234F140 ldr r0, [r0, #4] bx ip .align 2, 0 _0234F18C: .word ov02_0234F140 arm_func_end ov02_0234F180 arm_func_start ov02_0234F190 ov02_0234F190: ; 0x0234F190 stmdb sp!, {r4, r5, r6, r7, r8, lr} ldr r0, _0234F220 ; =0x0000080C mov r1, #4 bl ov02_0234E7B4 mov r1, r0 ldr r3, _0234F224 ; =ov02_0235ABAC mov r0, #0x200 mov r2, #0x800 str r1, [r3] bl ArrayFill32Fast mov r5, #0 ldr r7, _0234F224 ; =ov02_0235ABAC mov r6, r5 mov r4, #0x40 mov r8, #8 _0234F1CC: ldr r1, [r7] mov r0, r4 mov r2, r8 add r1, r1, r6 bl ov02_0234D754 ldr r1, [r7] add r6, r6, #0x400 add r1, r1, r5, lsl #2 add r5, r5, #1 str r0, [r1, #0x800] cmp r5, #2 blt _0234F1CC ldr r1, _0234F228 ; =ov02_0234F22C mov r0, #1 mov r2, #0 mov r3, #0xc8 bl ov02_0234FA98 ldr r1, _0234F224 ; =ov02_0235ABAC ldr r1, [r1] str r0, [r1, #0x808] ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _0234F220: .word 0x0000080C _0234F224: .word ov02_0235ABAC _0234F228: .word ov02_0234F22C arm_func_end ov02_0234F190 arm_func_start ov02_0234F22C ov02_0234F22C: ; 0x0234F22C stmdb sp!, {r3, lr} ldr r0, _0234F270 ; =ov02_0235ABAC mov r1, #0x800 ldr r0, [r0] bl DC_FlushRange ldr r0, _0234F270 ; =ov02_0235ABAC mov r1, #0 ldr r0, [r0] mov r2, #0x400 bl GX_LoadOAM ldr r0, _0234F270 ; =ov02_0235ABAC mov r1, #0 ldr r0, [r0] mov r2, #0x400 add r0, r0, #0x400 bl GXS_LoadOAM ldmia sp!, {r3, pc} .align 2, 0 _0234F270: .word ov02_0235ABAC arm_func_end ov02_0234F22C arm_func_start ov02_0234F274 ov02_0234F274: ; 0x0234F274 stmdb sp!, {r3, lr} ldr r1, _0234F298 ; =ov02_0235ABAC mov r0, #1 ldr r1, [r1] ldr r1, [r1, #0x808] bl ov02_0234FB60 ldr r0, _0234F29C ; =ov02_0235ABAC bl ov02_0234E7D8 ldmia sp!, {r3, pc} .align 2, 0 _0234F298: .word ov02_0235ABAC _0234F29C: .word ov02_0235ABAC arm_func_end ov02_0234F274 arm_func_start ov02_0234F2A0 ov02_0234F2A0: ; 0x0234F2A0 ldr r1, _0234F2B8 ; =ov02_0235ABAC ldr ip, _0234F2BC ; =ov02_0234D808 ldr r1, [r1] add r0, r1, r0, lsl #2 ldr r0, [r0, #0x800] bx ip .align 2, 0 _0234F2B8: .word ov02_0235ABAC _0234F2BC: .word ov02_0234D808 arm_func_end ov02_0234F2A0 arm_func_start ov02_0234F2C0 ov02_0234F2C0: ; 0x0234F2C0 mov r1, r0 ldr r3, [r1] ldr r0, _0234F300 ; =0xC1FFFCFF ldr r2, _0234F304 ; =ov02_0235ABAC and r0, r3, r0 orr r0, r0, #0x200 str r0, [r1] ldr r3, [r2] mov r2, #0 add r0, r3, #0x400 cmp r1, r0 movhs r2, #1 add r0, r3, r2, lsl #2 ldr ip, _0234F308 ; =ov02_0234D7B0 ldr r0, [r0, #0x800] bx ip .align 2, 0 _0234F300: .word 0xC1FFFCFF _0234F304: .word ov02_0235ABAC _0234F308: .word ov02_0234D7B0 arm_func_end ov02_0234F2C0 arm_func_start ov02_0234F30C ov02_0234F30C: ; 0x0234F30C ldr r2, _0234F320 ; =ov02_0235ABAC ldr r2, [r2] add r0, r2, r0, lsl #10 add r0, r0, r1, lsl #3 bx lr .align 2, 0 _0234F320: .word ov02_0235ABAC arm_func_end ov02_0234F30C arm_func_start ov02_0234F324 ov02_0234F324: ; 0x0234F324 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} mov r0, #0x340 mov r1, #4 bl ov02_0234E7B4 ldr r4, _0234F3E0 ; =ov02_0235ABB0 mov sb, #0 mov sl, sb str r0, [r4] mov r8, #0x20 mov r7, #0xc mov r6, #0x300 mov r5, #0x400 _0234F354: ldr r1, [r4] mov r0, r8 mov r2, r7 add r1, r1, sl bl ov02_0234D754 ldr r1, [r4] add r1, r1, sl str r0, [r1, #0x19c] bl ov02_0234F0C0 ldr r1, [r4] add r1, r1, sl str r0, [r1, #0x198] ldr r0, [r4] add r0, r0, sl add r0, r0, #0x100 strh r6, [r0, #0x88] ldr r0, [r4] add r0, r0, sl add r0, r0, #0x100 strh r5, [r0, #0x94] ldr r0, [r4] add r1, r0, sl ldr r0, [r1, #0x198] add r1, r1, #0x180 bl ov02_0234F180 ldr r0, [r4] add r1, r0, sl ldr r0, [r1, #0x198] add r1, r1, #0x18c bl ov02_0234F170 add sb, sb, #1 cmp sb, #2 add sl, sl, #0x1a0 blt _0234F354 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} .align 2, 0 _0234F3E0: .word ov02_0235ABB0 arm_func_end ov02_0234F324 arm_func_start ov02_0234F3E4 ov02_0234F3E4: ; 0x0234F3E4 stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr} mov r5, r0 mov r0, #0x1a0 mul sb, r5, r0 ldr r0, _0234F558 ; =ov02_0235ABB0 mov r6, r1 ldr r0, [r0] mov sl, r2 add r0, r0, sb ldr r0, [r0, #0x19c] mov r4, r3 bl ov02_0234D808 add r1, r6, #3 bic r1, r1, #3 mov r6, r0 mov r8, r1, asr #2 mov r0, #1 strh r8, [r6, #0xa] bl OS_DisableIrqMask mov r7, r0 cmp sl, #0 mov r0, #0x1a0 beq _0234F4C0 ldr r1, _0234F558 ; =ov02_0235ABB0 ldr r1, [r1] mla r0, r5, r0, r1 add r5, r0, #0x180 add r0, r0, #0x18c cmp r5, r0 beq _0234F4A0 add r0, r1, sb add r1, r0, #0x18c _0234F464: ldr r0, [r5, #4] ldrh sl, [r5, #8] ldrh r3, [r5, #0xa] ldrh r2, [r0, #8] add sl, sl, r3 add r3, sl, r8 cmp r3, r2 bgt _0234F494 mov r1, r6 strh sl, [r6, #8] bl ov02_0234F140 b _0234F4A0 _0234F494: mov r5, r0 cmp r0, r1 bne _0234F464 _0234F4A0: ldr r0, _0234F558 ; =ov02_0235ABB0 ldr r0, [r0] add r0, r0, sb add r0, r0, #0x18c cmp r5, r0 bne _0234F540 bl WaitForever2 b _0234F540 _0234F4C0: ldr r1, _0234F558 ; =ov02_0235ABB0 ldr r1, [r1] mla r0, r5, r0, r1 add r5, r0, #0x18c add r0, r0, #0x180 cmp r5, r0 beq _0234F524 add r0, r1, sb add r0, r0, #0x180 _0234F4E4: ldr sl, [r5] ldrh r3, [r5, #8] ldrh r2, [sl, #8] ldrh r1, [sl, #0xa] sub r3, r3, r8 add r1, r2, r1 cmp r3, r1 blt _0234F518 mov r0, r5 mov r1, r6 strh r3, [r6, #8] bl ov02_0234F140 b _0234F524 _0234F518: mov r5, sl cmp sl, r0 bne _0234F4E4 _0234F524: ldr r0, _0234F558 ; =ov02_0235ABB0 ldr r0, [r0] add r0, r0, sb add r0, r0, #0x180 cmp r5, r0 bne _0234F540 bl WaitForever2 _0234F540: ldrh r1, [r6, #8] mov r0, r7 str r1, [r4] bl OS_EnableIrqMask mov r0, r6 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc} .align 2, 0 _0234F558: .word ov02_0235ABB0 arm_func_end ov02_0234F3E4 arm_func_start ov02_0234F55C ov02_0234F55C: ; 0x0234F55C stmdb sp!, {r3, r4, r5, lr} mov r5, r0 mov r4, #0 bl ov02_0234F108 ldr r0, _0234F598 ; =ov02_0235ABB0 ldr r1, [r0] add r0, r1, #0x1a0 cmp r5, r0 movhs r4, #1 mov r0, #0x1a0 mla r0, r4, r0, r1 ldr r0, [r0, #0x19c] mov r1, r5 bl ov02_0234D7B0 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0234F598: .word ov02_0235ABB0 arm_func_end ov02_0234F55C arm_func_start ov02_0234F59C ov02_0234F59C: ; 0x0234F59C cmp r1, #0 mov r3, #0 ble _0234F5C0 _0234F5A8: ldrb r2, [r0, r3] cmp r2, #0 beq _0234F5C0 add r3, r3, #1 cmp r3, r1 blt _0234F5A8 _0234F5C0: mov r0, r3 bx lr arm_func_end ov02_0234F59C arm_func_start ov02_0234F5C8 ov02_0234F5C8: ; 0x0234F5C8 stmdb sp!, {r3, lr} sub ip, r2, #1 cmp ip, #0 mov lr, #0 ble _0234F5FC _0234F5DC: ldrb r3, [r1, lr] cmp r3, #0 beq _0234F5FC mov r2, lr, lsl #1 add lr, lr, #1 strh r3, [r0, r2] cmp lr, ip blt _0234F5DC _0234F5FC: mov r1, lr, lsl #1 mov r2, #0 strh r2, [r0, r1] mov r0, lr ldmia sp!, {r3, pc} arm_func_end ov02_0234F5C8 arm_func_start ov02_0234F610 ov02_0234F610: ; 0x0234F610 stmdb sp!, {r3, lr} bl GX_DisableBankForBG ldr r1, _0234F6C0 ; =ov02_0235ABB4 str r0, [r1] bl GX_DisableBankForOBJ ldr r1, _0234F6C0 ; =ov02_0235ABB4 str r0, [r1, #4] bl GX_DisableBankForBGExtPltt ldr r1, _0234F6C0 ; =ov02_0235ABB4 str r0, [r1, #8] bl GX_DisableBankForOBJExtPltt ldr r1, _0234F6C0 ; =ov02_0235ABB4 str r0, [r1, #0xc] bl GX_DisableBankForTex ldr r1, _0234F6C0 ; =ov02_0235ABB4 str r0, [r1, #0x10] bl GX_DisableBankForTexPltt ldr r1, _0234F6C0 ; =ov02_0235ABB4 str r0, [r1, #0x14] bl GX_DisableBankForClearImage ldr r1, _0234F6C0 ; =ov02_0235ABB4 str r0, [r1, #0x18] bl GX_DisableBankForSubBG ldr r1, _0234F6C0 ; =ov02_0235ABB4 str r0, [r1, #0x1c] bl GX_DisableBankForSubOBJ ldr r1, _0234F6C0 ; =ov02_0235ABB4 str r0, [r1, #0x20] bl GX_DisableBankForSubBGExtPltt ldr r1, _0234F6C0 ; =ov02_0235ABB4 str r0, [r1, #0x24] bl GX_DisableBankForSubOBJExtPltt ldr r1, _0234F6C0 ; =ov02_0235ABB4 str r0, [r1, #0x28] bl GX_DisableBankForARM7 ldr r1, _0234F6C0 ; =ov02_0235ABB4 str r0, [r1, #0x2c] bl GX_DisableBankForLCDC ldr r1, _0234F6C0 ; =ov02_0235ABB4 str r0, [r1, #0x30] ldr r0, [r1, #0x2c] bl GX_SetBankForARM7 bl ov02_0234F7CC ldmia sp!, {r3, pc} .align 2, 0 _0234F6C0: .word ov02_0235ABB4 arm_func_end ov02_0234F610 arm_func_start ov02_0234F6C4 ov02_0234F6C4: ; 0x0234F6C4 stmdb sp!, {r4, lr} bl GX_DisableBankForBG bl GX_DisableBankForOBJ bl GX_DisableBankForSubBG bl GX_DisableBankForSubOBJ bl ov02_0234F7CC ldr r0, _0234F7C0 ; =ov02_0235ABB4 ldr r0, [r0] bl GX_SetBankForBG ldr r0, _0234F7C0 ; =ov02_0235ABB4 ldr r0, [r0, #4] bl GX_SetBankForOBJ ldr r0, _0234F7C0 ; =ov02_0235ABB4 ldr r0, [r0, #8] bl GX_SetBankForBGExtPltt ldr r0, _0234F7C0 ; =ov02_0235ABB4 ldr r0, [r0, #0xc] bl GX_SetBankForOBJExtPltt ldr r0, _0234F7C0 ; =ov02_0235ABB4 ldr r0, [r0, #0x10] bl GX_SetBankForTex ldr r0, _0234F7C0 ; =ov02_0235ABB4 ldr r0, [r0, #0x14] bl GX_SetBankForTexPltt ldr r0, _0234F7C0 ; =ov02_0235ABB4 ldr r0, [r0, #0x18] bl GX_SetBankForClearImage ldr r0, _0234F7C0 ; =ov02_0235ABB4 ldr r0, [r0, #0x1c] bl GX_SetBankForSubBG ldr r0, _0234F7C0 ; =ov02_0235ABB4 ldr r0, [r0, #0x20] bl GX_SetBankForSubOBJ ldr r0, _0234F7C0 ; =ov02_0235ABB4 ldr r0, [r0, #0x24] bl GX_SetBankForSubBGExtPltt ldr r0, _0234F7C0 ; =ov02_0235ABB4 ldr r0, [r0, #0x28] bl GX_SetBankForSubOBJExtPltt ldr r0, _0234F7C0 ; =ov02_0235ABB4 ldr r0, [r0, #0x30] bl GX_SetBankForLCDC mov r3, #0 ldr r2, _0234F7C4 ; =0x04000050 ldr r0, _0234F7C8 ; =0x04001014 strh r3, [r2] add r1, r2, #0x1000 strh r3, [r1] str r3, [r2, #-0x40] str r3, [r2, #-0x3c] str r3, [r2, #-0x38] str r3, [r2, #-0x34] str r3, [r2, #0xfc0] str r3, [r0] str r3, [r0, #4] str r3, [r0, #8] bl EnableIrqFlag mov r4, r0 mov r0, #1 bl sub_02082420 mov r0, r4 bl SetIrqFlag ldmia sp!, {r4, pc} .align 2, 0 _0234F7C0: .word ov02_0235ABB4 _0234F7C4: .word 0x04000050 _0234F7C8: .word 0x04001014 arm_func_end ov02_0234F6C4 arm_func_start ov02_0234F7CC ov02_0234F7CC: ; 0x0234F7CC stmdb sp!, {r3, lr} ldr r0, _0234F840 ; =0x000001F3 bl GX_SetBankForLCDC mov r0, #0 mov r1, #0x6800000 mov r2, #0x40000 bl ArrayFill32Fast ldr r1, _0234F844 ; =0x06880000 mov r0, #0 mov r2, #0x24000 bl ArrayFill32Fast bl GX_DisableBankForLCDC mov r0, #0x200 mov r1, #0x7000000 mov r2, #0x400 bl ArrayFill32Fast mov r0, #0 mov r1, #0x5000000 mov r2, #0x400 bl ArrayFill32Fast mov r0, #0x200 ldr r1, _0234F848 ; =0x07000400 mov r2, #0x400 bl ArrayFill32Fast mov r0, #0 ldr r1, _0234F84C ; =0x05000400 mov r2, #0x400 bl ArrayFill32Fast ldmia sp!, {r3, pc} .align 2, 0 _0234F840: .word 0x000001F3 _0234F844: .word 0x06880000 _0234F848: .word 0x07000400 _0234F84C: .word 0x05000400 arm_func_end ov02_0234F7CC arm_func_start ov02_0234F850 ov02_0234F850: ; 0x0234F850 stmdb sp!, {r3, lr} add r0, sp, #0 bl sub_02082514 cmp r0, #0 ldmneia sp!, {r3, pc} ldr r0, [sp] cmp r0, #0xf ldmeqia sp!, {r3, pc} mov r0, #0xf bl sub_020824A4 ldmia sp!, {r3, pc} arm_func_end ov02_0234F850 arm_func_start ov02_0234F87C ov02_0234F87C: ; 0x0234F87C ldr ip, _0234F888 ; =sub_020824A4 mov r0, #1 bx ip .align 2, 0 _0234F888: .word sub_020824A4 arm_func_end ov02_0234F87C arm_func_start ov02_0234F88C ov02_0234F88C: ; 0x0234F88C stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} mov r0, #0x80 mov r1, #4 bl ov02_0234E7B4 mov r8, #0 ldr r4, _0234F998 ; =ov02_0235ABE8 ldr sb, _0234F99C ; =ov02_02352F3C mov sl, r8 str r0, [r4] mov r7, r8 mov r6, #0xff mov r5, #1 mov fp, #0x14 _0234F8C0: ldr r0, [r4] ldrb r2, [sb] add r0, r0, r8, lsl #6 mov r1, #4 str r2, [r0, #0x34] ldrb r2, [sb] mul r0, r2, fp bl ov02_0234E7B4 ldr r1, [r4] mov r2, #0x14 add r1, r1, r8, lsl #6 str r0, [r1, #0x3c] ldr r1, [r4] ldrb r0, [sb] add r1, r1, r8, lsl #6 ldr r1, [r1, #0x3c] bl ov02_0234D754 ldr r1, [r4] str r0, [r1, r8, lsl #6] ldrb r0, [sb], #1 bl ov02_0234D720 ldr r1, [r4] add r1, r1, r8, lsl #6 str r0, [r1, #4] bl ov02_0234F0C0 ldr r1, [r4] add r1, r1, r8, lsl #6 str r0, [r1, #8] ldr r0, [r4] add r0, r0, r8, lsl #6 strb r7, [r0, #0x1c] ldr r0, [r4] add r0, r0, r8, lsl #6 strb r6, [r0, #0x30] ldr r1, [r4] add r0, r1, r8, lsl #6 add r1, r1, sl ldr r0, [r0, #8] add r1, r1, #0xc bl ov02_0234F180 ldr r1, [r4] add r0, r1, r8, lsl #6 add r1, r1, sl ldr r0, [r0, #8] add r1, r1, #0x20 bl ov02_0234F170 ldr r0, [r4] add sl, sl, #0x40 add r0, r0, r8, lsl #6 add r8, r8, #1 strb r5, [r0, #0x38] cmp r8, #2 blt _0234F8C0 ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} .align 2, 0 _0234F998: .word ov02_0235ABE8 _0234F99C: .word ov02_02352F3C arm_func_end ov02_0234F88C arm_func_start ov02_0234F9A0 ov02_0234F9A0: ; 0x0234F9A0 stmdb sp!, {r3, r4, r5, lr} ldr r4, _0234F9E0 ; =ov02_0235ABE8 mov r5, #0 _0234F9AC: ldr r0, [r4] add r0, r0, r5, lsl #6 ldr r0, [r0, #8] bl ov02_0234F0EC ldr r0, [r4] ldr r0, [r0, r5, lsl #6] bl ov02_0234D794 add r5, r5, #1 cmp r5, #2 blt _0234F9AC ldr r0, _0234F9E4 ; =ov02_0235ABE8 bl ov02_0234E7D8 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0234F9E0: .word ov02_0235ABE8 _0234F9E4: .word ov02_0235ABE8 arm_func_end ov02_0234F9A0 arm_func_start ov02_0234F9E8 ov02_0234F9E8: ; 0x0234F9E8 stmdb sp!, {r3, r4, r5, r6, r7, lr} ldr r5, _0234FA94 ; =ov02_0235ABE8 mov r6, r0 ldr r0, [r5] add r2, r0, r6, lsl #6 ldrb r1, [r2, #0x38] cmp r1, #0 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} ldr r4, [r2, #0x10] add r1, r2, #0x20 cmp r4, r1 beq _0234FA40 _0234FA18: ldr r1, [r4, #0xc] ldr r2, [r4, #8] mov r0, r4 blx r2 ldr r0, [r5] ldr r4, [r4, #4] add r1, r0, r6, lsl #6 add r1, r1, #0x20 cmp r4, r1 bne _0234FA18 _0234FA40: add r1, r0, r6, lsl #6 ldr r1, [r1, #0x34] mov r4, r6, lsl #6 mov r5, #0 cmp r1, #0 ldmleia sp!, {r3, r4, r5, r6, r7, pc} ldr r7, _0234FA94 ; =ov02_0235ABE8 _0234FA5C: add r0, r4, r0 ldr r0, [r0, #4] bl ov02_0234D808 movs r1, r0 ldmeqia sp!, {r3, r4, r5, r6, r7, pc} mov r0, r6 bl ov02_0234FB6C ldr r0, [r7] add r5, r5, #1 add r1, r4, r0 ldr r1, [r1, #0x34] cmp r5, r1 blt _0234FA5C ldmia sp!, {r3, r4, r5, r6, r7, pc} .align 2, 0 _0234FA94: .word ov02_0235ABE8 arm_func_end ov02_0234F9E8 arm_func_start ov02_0234FA98 ov02_0234FA98: ; 0x0234FA98 stmdb sp!, {r3, lr} mov ip, #0 str ip, [sp] bl ov02_0234FAAC ldmia sp!, {r3, pc} arm_func_end ov02_0234FA98 arm_func_start ov02_0234FAAC ov02_0234FAAC: ; 0x0234FAAC stmdb sp!, {r4, r5, r6, r7, r8, lr} ldr r4, _0234FB34 ; =ov02_0235ABE8 mov r7, r0 ldr r0, [r4] mov r8, r1 ldr r0, [r0, r7, lsl #6] mov r5, r2 mov r6, r3 bl ov02_0234D808 mov r4, r0 str r8, [r4, #8] str r5, [r4, #0xc] ldrb r1, [sp, #0x18] strb r6, [r4, #0x10] mov r0, #1 strb r1, [r4, #0x11] bl OS_DisableIrqMask ldr r1, _0234FB34 ; =ov02_0235ABE8 mov r5, r0 ldr r0, [r1] add r0, r0, r7, lsl #6 ldr r0, [r0, #0x10] _0234FB04: ldrb r1, [r0, #0x10] cmp r6, r1 bhs _0234FB1C mov r1, r4 bl ov02_0234F140 b _0234FB24 _0234FB1C: ldr r0, [r0, #4] b _0234FB04 _0234FB24: mov r0, r5 bl OS_EnableIrqMask mov r0, r4 ldmia sp!, {r4, r5, r6, r7, r8, pc} .align 2, 0 _0234FB34: .word ov02_0235ABE8 arm_func_end ov02_0234FAAC arm_func_start ov02_0234FB38 ov02_0234FB38: ; 0x0234FB38 str r1, [r0, #8] bx lr arm_func_end ov02_0234FB38 arm_func_start ov02_0234FB40 ov02_0234FB40: ; 0x0234FB40 ldr r2, _0234FB58 ; =ov02_0235ABE8 ldr ip, _0234FB5C ; =ov02_0234D7B0 ldr r2, [r2] add r0, r2, r0, lsl #6 ldr r0, [r0, #4] bx ip .align 2, 0 _0234FB58: .word ov02_0235ABE8 _0234FB5C: .word ov02_0234D7B0 arm_func_end ov02_0234FB40 arm_func_start ov02_0234FB60 ov02_0234FB60: ; 0x0234FB60 ldr ip, _0234FB68 ; =ov02_0234FB6C bx ip .align 2, 0 _0234FB68: .word ov02_0234FB6C arm_func_end ov02_0234FB60 arm_func_start ov02_0234FB6C ov02_0234FB6C: ; 0x0234FB6C stmdb sp!, {r3, r4, r5, lr} mov r4, r1 ldrb r1, [r4, #0x11] mov r5, r0 cmp r1, #0 beq _0234FB8C add r0, r4, #0xc bl ov02_0234E7D8 _0234FB8C: mov r0, r4 bl ov02_0234F108 ldr r0, _0234FBAC ; =ov02_0235ABE8 mov r1, r4 ldr r0, [r0] ldr r0, [r0, r5, lsl #6] bl ov02_0234D7B0 ldmia sp!, {r3, r4, r5, pc} .align 2, 0 _0234FBAC: .word ov02_0235ABE8 arm_func_end ov02_0234FB6C arm_func_start ov02_0234FBB0 ov02_0234FBB0: ; 0x0234FBB0 ldr r2, _0234FBC4 ; =ov02_0235ABE8 ldr r2, [r2] add r0, r2, r0, lsl #6 strb r1, [r0, #0x38] bx lr .align 2, 0 _0234FBC4: .word ov02_0235ABE8 arm_func_end ov02_0234FBB0 ; 0x0234FBC8 .rodata #ifdef EUROPE .global ov02_023503F4_EU ov02_023503F4_EU: .byte 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00 .byte 0x05, 0x00, 0x00, 0x00 #endif .byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF .word ov02_0232A7EC .word ov02_0232ABE4 .word ov02_0232AC64 .global ov02_0234FBE0 ov02_0234FBE0: .word ov02_0232A7EC .word ov02_0232AB94 .word ov02_0232AC64 .global ov02_0234FBEC ov02_0234FBEC: .word ov02_0232A984 .word ov02_0232AB94 .word ov02_0232AE00 .global ov02_0234FBF8 ov02_0234FBF8: .byte 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01, 0x02, 0x01 .byte 0x00, 0x02, 0x01, 0x02, 0x02, 0x02, 0x03, 0x02, 0x00, 0x02, 0x01, 0x02, 0x02, 0x03, 0x03, 0x03 .global ov02_0234FC18 ov02_0234FC18: .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x40, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x40, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x80, 0x00, 0x40, 0x00, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0xC0 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0xC0, 0x00, 0x00, 0x00, 0xC0 .global ov02_0234FC58 ov02_0234FC58: .byte 0xFF, 0xFF, 0xFF, 0xFF .global ov02_0234FC5C ov02_0234FC5C: .byte 0x06, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x00 .global ov02_0234FC64 ov02_0234FC64: .byte 0x00, 0x00, 0x00, 0x01 .byte 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x10 .byte 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x1B .byte 0x00, 0x00, 0x00, 0x36 .global ov02_0234FC8C ov02_0234FC8C: .byte 0xF4, 0x51, 0x50, 0xA7, 0x41, 0x7E, 0x53, 0x65, 0x17, 0x1A, 0xC3, 0xA4 .byte 0x27, 0x3A, 0x96, 0x5E, 0xAB, 0x3B, 0xCB, 0x6B, 0x9D, 0x1F, 0xF1, 0x45, 0xFA, 0xAC, 0xAB, 0x58 .byte 0xE3, 0x4B, 0x93, 0x03, 0x30, 0x20, 0x55, 0xFA, 0x76, 0xAD, 0xF6, 0x6D, 0xCC, 0x88, 0x91, 0x76 .byte 0x02, 0xF5, 0x25, 0x4C, 0xE5, 0x4F, 0xFC, 0xD7, 0x2A, 0xC5, 0xD7, 0xCB, 0x35, 0x26, 0x80, 0x44 .byte 0x62, 0xB5, 0x8F, 0xA3, 0xB1, 0xDE, 0x49, 0x5A, 0xBA, 0x25, 0x67, 0x1B, 0xEA, 0x45, 0x98, 0x0E .byte 0xFE, 0x5D, 0xE1, 0xC0, 0x2F, 0xC3, 0x02, 0x75, 0x4C, 0x81, 0x12, 0xF0, 0x46, 0x8D, 0xA3, 0x97 .byte 0xD3, 0x6B, 0xC6, 0xF9, 0x8F, 0x03, 0xE7, 0x5F, 0x92, 0x15, 0x95, 0x9C, 0x6D, 0xBF, 0xEB, 0x7A .byte 0x52, 0x95, 0xDA, 0x59, 0xBE, 0xD4, 0x2D, 0x83, 0x74, 0x58, 0xD3, 0x21, 0xE0, 0x49, 0x29, 0x69 .byte 0xC9, 0x8E, 0x44, 0xC8, 0xC2, 0x75, 0x6A, 0x89, 0x8E, 0xF4, 0x78, 0x79, 0x58, 0x99, 0x6B, 0x3E .byte 0xB9, 0x27, 0xDD, 0x71, 0xE1, 0xBE, 0xB6, 0x4F, 0x88, 0xF0, 0x17, 0xAD, 0x20, 0xC9, 0x66, 0xAC .byte 0xCE, 0x7D, 0xB4, 0x3A, 0xDF, 0x63, 0x18, 0x4A, 0x1A, 0xE5, 0x82, 0x31, 0x51, 0x97, 0x60, 0x33 .byte 0x53, 0x62, 0x45, 0x7F, 0x64, 0xB1, 0xE0, 0x77, 0x6B, 0xBB, 0x84, 0xAE, 0x81, 0xFE, 0x1C, 0xA0 .byte 0x08, 0xF9, 0x94, 0x2B, 0x48, 0x70, 0x58, 0x68, 0x45, 0x8F, 0x19, 0xFD, 0xDE, 0x94, 0x87, 0x6C .byte 0x7B, 0x52, 0xB7, 0xF8, 0x73, 0xAB, 0x23, 0xD3, 0x4B, 0x72, 0xE2, 0x02, 0x1F, 0xE3, 0x57, 0x8F .byte 0x55, 0x66, 0x2A, 0xAB, 0xEB, 0xB2, 0x07, 0x28, 0xB5, 0x2F, 0x03, 0xC2, 0xC5, 0x86, 0x9A, 0x7B .byte 0x37, 0xD3, 0xA5, 0x08, 0x28, 0x30, 0xF2, 0x87, 0xBF, 0x23, 0xB2, 0xA5, 0x03, 0x02, 0xBA, 0x6A .byte 0x16, 0xED, 0x5C, 0x82, 0xCF, 0x8A, 0x2B, 0x1C, 0x79, 0xA7, 0x92, 0xB4, 0x07, 0xF3, 0xF0, 0xF2 .byte 0x69, 0x4E, 0xA1, 0xE2, 0xDA, 0x65, 0xCD, 0xF4, 0x05, 0x06, 0xD5, 0xBE, 0x34, 0xD1, 0x1F, 0x62 .byte 0xA6, 0xC4, 0x8A, 0xFE, 0x2E, 0x34, 0x9D, 0x53, 0xF3, 0xA2, 0xA0, 0x55, 0x8A, 0x05, 0x32, 0xE1 .byte 0xF6, 0xA4, 0x75, 0xEB, 0x83, 0x0B, 0x39, 0xEC, 0x60, 0x40, 0xAA, 0xEF, 0x71, 0x5E, 0x06, 0x9F .byte 0x6E, 0xBD, 0x51, 0x10, 0x21, 0x3E, 0xF9, 0x8A, 0xDD, 0x96, 0x3D, 0x06, 0x3E, 0xDD, 0xAE, 0x05 .byte 0xE6, 0x4D, 0x46, 0xBD, 0x54, 0x91, 0xB5, 0x8D, 0xC4, 0x71, 0x05, 0x5D, 0x06, 0x04, 0x6F, 0xD4 .byte 0x50, 0x60, 0xFF, 0x15, 0x98, 0x19, 0x24, 0xFB, 0xBD, 0xD6, 0x97, 0xE9, 0x40, 0x89, 0xCC, 0x43 .byte 0xD9, 0x67, 0x77, 0x9E, 0xE8, 0xB0, 0xBD, 0x42, 0x89, 0x07, 0x88, 0x8B, 0x19, 0xE7, 0x38, 0x5B .byte 0xC8, 0x79, 0xDB, 0xEE, 0x7C, 0xA1, 0x47, 0x0A, 0x42, 0x7C, 0xE9, 0x0F, 0x84, 0xF8, 0xC9, 0x1E .byte 0x00, 0x00, 0x00, 0x00, 0x80, 0x09, 0x83, 0x86, 0x2B, 0x32, 0x48, 0xED, 0x11, 0x1E, 0xAC, 0x70 .byte 0x5A, 0x6C, 0x4E, 0x72, 0x0E, 0xFD, 0xFB, 0xFF, 0x85, 0x0F, 0x56, 0x38, 0xAE, 0x3D, 0x1E, 0xD5 .byte 0x2D, 0x36, 0x27, 0x39, 0x0F, 0x0A, 0x64, 0xD9, 0x5C, 0x68, 0x21, 0xA6, 0x5B, 0x9B, 0xD1, 0x54 .byte 0x36, 0x24, 0x3A, 0x2E, 0x0A, 0x0C, 0xB1, 0x67, 0x57, 0x93, 0x0F, 0xE7, 0xEE, 0xB4, 0xD2, 0x96 .byte 0x9B, 0x1B, 0x9E, 0x91, 0xC0, 0x80, 0x4F, 0xC5, 0xDC, 0x61, 0xA2, 0x20, 0x77, 0x5A, 0x69, 0x4B .byte 0x12, 0x1C, 0x16, 0x1A, 0x93, 0xE2, 0x0A, 0xBA, 0xA0, 0xC0, 0xE5, 0x2A, 0x22, 0x3C, 0x43, 0xE0 .byte 0x1B, 0x12, 0x1D, 0x17, 0x09, 0x0E, 0x0B, 0x0D, 0x8B, 0xF2, 0xAD, 0xC7, 0xB6, 0x2D, 0xB9, 0xA8 .byte 0x1E, 0x14, 0xC8, 0xA9, 0xF1, 0x57, 0x85, 0x19, 0x75, 0xAF, 0x4C, 0x07, 0x99, 0xEE, 0xBB, 0xDD .byte 0x7F, 0xA3, 0xFD, 0x60, 0x01, 0xF7, 0x9F, 0x26, 0x72, 0x5C, 0xBC, 0xF5, 0x66, 0x44, 0xC5, 0x3B .byte 0xFB, 0x5B, 0x34, 0x7E, 0x43, 0x8B, 0x76, 0x29, 0x23, 0xCB, 0xDC, 0xC6, 0xED, 0xB6, 0x68, 0xFC .byte 0xE4, 0xB8, 0x63, 0xF1, 0x31, 0xD7, 0xCA, 0xDC, 0x63, 0x42, 0x10, 0x85, 0x97, 0x13, 0x40, 0x22 .byte 0xC6, 0x84, 0x20, 0x11, 0x4A, 0x85, 0x7D, 0x24, 0xBB, 0xD2, 0xF8, 0x3D, 0xF9, 0xAE, 0x11, 0x32 .byte 0x29, 0xC7, 0x6D, 0xA1, 0x9E, 0x1D, 0x4B, 0x2F, 0xB2, 0xDC, 0xF3, 0x30, 0x86, 0x0D, 0xEC, 0x52 .byte 0xC1, 0x77, 0xD0, 0xE3, 0xB3, 0x2B, 0x6C, 0x16, 0x70, 0xA9, 0x99, 0xB9, 0x94, 0x11, 0xFA, 0x48 .byte 0xE9, 0x47, 0x22, 0x64, 0xFC, 0xA8, 0xC4, 0x8C, 0xF0, 0xA0, 0x1A, 0x3F, 0x7D, 0x56, 0xD8, 0x2C .byte 0x33, 0x22, 0xEF, 0x90, 0x49, 0x87, 0xC7, 0x4E, 0x38, 0xD9, 0xC1, 0xD1, 0xCA, 0x8C, 0xFE, 0xA2 .byte 0xD4, 0x98, 0x36, 0x0B, 0xF5, 0xA6, 0xCF, 0x81, 0x7A, 0xA5, 0x28, 0xDE, 0xB7, 0xDA, 0x26, 0x8E .byte 0xAD, 0x3F, 0xA4, 0xBF, 0x3A, 0x2C, 0xE4, 0x9D, 0x78, 0x50, 0x0D, 0x92, 0x5F, 0x6A, 0x9B, 0xCC .byte 0x7E, 0x54, 0x62, 0x46, 0x8D, 0xF6, 0xC2, 0x13, 0xD8, 0x90, 0xE8, 0xB8, 0x39, 0x2E, 0x5E, 0xF7 .byte 0xC3, 0x82, 0xF5, 0xAF, 0x5D, 0x9F, 0xBE, 0x80, 0xD0, 0x69, 0x7C, 0x93, 0xD5, 0x6F, 0xA9, 0x2D .byte 0x25, 0xCF, 0xB3, 0x12, 0xAC, 0xC8, 0x3B, 0x99, 0x18, 0x10, 0xA7, 0x7D, 0x9C, 0xE8, 0x6E, 0x63 .byte 0x3B, 0xDB, 0x7B, 0xBB, 0x26, 0xCD, 0x09, 0x78, 0x59, 0x6E, 0xF4, 0x18, 0x9A, 0xEC, 0x01, 0xB7 .byte 0x4F, 0x83, 0xA8, 0x9A, 0x95, 0xE6, 0x65, 0x6E, 0xFF, 0xAA, 0x7E, 0xE6, 0xBC, 0x21, 0x08, 0xCF .byte 0x15, 0xEF, 0xE6, 0xE8, 0xE7, 0xBA, 0xD9, 0x9B, 0x6F, 0x4A, 0xCE, 0x36, 0x9F, 0xEA, 0xD4, 0x09 .byte 0xB0, 0x29, 0xD6, 0x7C, 0xA4, 0x31, 0xAF, 0xB2, 0x3F, 0x2A, 0x31, 0x23, 0xA5, 0xC6, 0x30, 0x94 .byte 0xA2, 0x35, 0xC0, 0x66, 0x4E, 0x74, 0x37, 0xBC, 0x82, 0xFC, 0xA6, 0xCA, 0x90, 0xE0, 0xB0, 0xD0 .byte 0xA7, 0x33, 0x15, 0xD8, 0x04, 0xF1, 0x4A, 0x98, 0xEC, 0x41, 0xF7, 0xDA, 0xCD, 0x7F, 0x0E, 0x50 .byte 0x91, 0x17, 0x2F, 0xF6, 0x4D, 0x76, 0x8D, 0xD6, 0xEF, 0x43, 0x4D, 0xB0, 0xAA, 0xCC, 0x54, 0x4D .byte 0x96, 0xE4, 0xDF, 0x04, 0xD1, 0x9E, 0xE3, 0xB5, 0x6A, 0x4C, 0x1B, 0x88, 0x2C, 0xC1, 0xB8, 0x1F .byte 0x65, 0x46, 0x7F, 0x51, 0x5E, 0x9D, 0x04, 0xEA, 0x8C, 0x01, 0x5D, 0x35, 0x87, 0xFA, 0x73, 0x74 .byte 0x0B, 0xFB, 0x2E, 0x41, 0x67, 0xB3, 0x5A, 0x1D, 0xDB, 0x92, 0x52, 0xD2, 0x10, 0xE9, 0x33, 0x56 .byte 0xD6, 0x6D, 0x13, 0x47, 0xD7, 0x9A, 0x8C, 0x61, 0xA1, 0x37, 0x7A, 0x0C, 0xF8, 0x59, 0x8E, 0x14 .byte 0x13, 0xEB, 0x89, 0x3C, 0xA9, 0xCE, 0xEE, 0x27, 0x61, 0xB7, 0x35, 0xC9, 0x1C, 0xE1, 0xED, 0xE5 .byte 0x47, 0x7A, 0x3C, 0xB1, 0xD2, 0x9C, 0x59, 0xDF, 0xF2, 0x55, 0x3F, 0x73, 0x14, 0x18, 0x79, 0xCE .byte 0xC7, 0x73, 0xBF, 0x37, 0xF7, 0x53, 0xEA, 0xCD, 0xFD, 0x5F, 0x5B, 0xAA, 0x3D, 0xDF, 0x14, 0x6F .byte 0x44, 0x78, 0x86, 0xDB, 0xAF, 0xCA, 0x81, 0xF3, 0x68, 0xB9, 0x3E, 0xC4, 0x24, 0x38, 0x2C, 0x34 .byte 0xA3, 0xC2, 0x5F, 0x40, 0x1D, 0x16, 0x72, 0xC3, 0xE2, 0xBC, 0x0C, 0x25, 0x3C, 0x28, 0x8B, 0x49 .byte 0x0D, 0xFF, 0x41, 0x95, 0xA8, 0x39, 0x71, 0x01, 0x0C, 0x08, 0xDE, 0xB3, 0xB4, 0xD8, 0x9C, 0xE4 .byte 0x56, 0x64, 0x90, 0xC1, 0xCB, 0x7B, 0x61, 0x84, 0x32, 0xD5, 0x70, 0xB6, 0x6C, 0x48, 0x74, 0x5C .byte 0xB8, 0xD0, 0x42, 0x57 .global ov02_0235008C ov02_0235008C: .byte 0x51, 0x50, 0xA7, 0xF4, 0x7E, 0x53, 0x65, 0x41, 0x1A, 0xC3, 0xA4, 0x17 .byte 0x3A, 0x96, 0x5E, 0x27, 0x3B, 0xCB, 0x6B, 0xAB, 0x1F, 0xF1, 0x45, 0x9D, 0xAC, 0xAB, 0x58, 0xFA .byte 0x4B, 0x93, 0x03, 0xE3, 0x20, 0x55, 0xFA, 0x30, 0xAD, 0xF6, 0x6D, 0x76, 0x88, 0x91, 0x76, 0xCC .byte 0xF5, 0x25, 0x4C, 0x02, 0x4F, 0xFC, 0xD7, 0xE5, 0xC5, 0xD7, 0xCB, 0x2A, 0x26, 0x80, 0x44, 0x35 .byte 0xB5, 0x8F, 0xA3, 0x62, 0xDE, 0x49, 0x5A, 0xB1, 0x25, 0x67, 0x1B, 0xBA, 0x45, 0x98, 0x0E, 0xEA .byte 0x5D, 0xE1, 0xC0, 0xFE, 0xC3, 0x02, 0x75, 0x2F, 0x81, 0x12, 0xF0, 0x4C, 0x8D, 0xA3, 0x97, 0x46 .byte 0x6B, 0xC6, 0xF9, 0xD3, 0x03, 0xE7, 0x5F, 0x8F, 0x15, 0x95, 0x9C, 0x92, 0xBF, 0xEB, 0x7A, 0x6D .byte 0x95, 0xDA, 0x59, 0x52, 0xD4, 0x2D, 0x83, 0xBE, 0x58, 0xD3, 0x21, 0x74, 0x49, 0x29, 0x69, 0xE0 .byte 0x8E, 0x44, 0xC8, 0xC9, 0x75, 0x6A, 0x89, 0xC2, 0xF4, 0x78, 0x79, 0x8E, 0x99, 0x6B, 0x3E, 0x58 .byte 0x27, 0xDD, 0x71, 0xB9, 0xBE, 0xB6, 0x4F, 0xE1, 0xF0, 0x17, 0xAD, 0x88, 0xC9, 0x66, 0xAC, 0x20 .byte 0x7D, 0xB4, 0x3A, 0xCE, 0x63, 0x18, 0x4A, 0xDF, 0xE5, 0x82, 0x31, 0x1A, 0x97, 0x60, 0x33, 0x51 .byte 0x62, 0x45, 0x7F, 0x53, 0xB1, 0xE0, 0x77, 0x64, 0xBB, 0x84, 0xAE, 0x6B, 0xFE, 0x1C, 0xA0, 0x81 .byte 0xF9, 0x94, 0x2B, 0x08, 0x70, 0x58, 0x68, 0x48, 0x8F, 0x19, 0xFD, 0x45, 0x94, 0x87, 0x6C, 0xDE .byte 0x52, 0xB7, 0xF8, 0x7B, 0xAB, 0x23, 0xD3, 0x73, 0x72, 0xE2, 0x02, 0x4B, 0xE3, 0x57, 0x8F, 0x1F .byte 0x66, 0x2A, 0xAB, 0x55, 0xB2, 0x07, 0x28, 0xEB, 0x2F, 0x03, 0xC2, 0xB5, 0x86, 0x9A, 0x7B, 0xC5 .byte 0xD3, 0xA5, 0x08, 0x37, 0x30, 0xF2, 0x87, 0x28, 0x23, 0xB2, 0xA5, 0xBF, 0x02, 0xBA, 0x6A, 0x03 .byte 0xED, 0x5C, 0x82, 0x16, 0x8A, 0x2B, 0x1C, 0xCF, 0xA7, 0x92, 0xB4, 0x79, 0xF3, 0xF0, 0xF2, 0x07 .byte 0x4E, 0xA1, 0xE2, 0x69, 0x65, 0xCD, 0xF4, 0xDA, 0x06, 0xD5, 0xBE, 0x05, 0xD1, 0x1F, 0x62, 0x34 .byte 0xC4, 0x8A, 0xFE, 0xA6, 0x34, 0x9D, 0x53, 0x2E, 0xA2, 0xA0, 0x55, 0xF3, 0x05, 0x32, 0xE1, 0x8A .byte 0xA4, 0x75, 0xEB, 0xF6, 0x0B, 0x39, 0xEC, 0x83, 0x40, 0xAA, 0xEF, 0x60, 0x5E, 0x06, 0x9F, 0x71 .byte 0xBD, 0x51, 0x10, 0x6E, 0x3E, 0xF9, 0x8A, 0x21, 0x96, 0x3D, 0x06, 0xDD, 0xDD, 0xAE, 0x05, 0x3E .byte 0x4D, 0x46, 0xBD, 0xE6, 0x91, 0xB5, 0x8D, 0x54, 0x71, 0x05, 0x5D, 0xC4, 0x04, 0x6F, 0xD4, 0x06 .byte 0x60, 0xFF, 0x15, 0x50, 0x19, 0x24, 0xFB, 0x98, 0xD6, 0x97, 0xE9, 0xBD, 0x89, 0xCC, 0x43, 0x40 .byte 0x67, 0x77, 0x9E, 0xD9, 0xB0, 0xBD, 0x42, 0xE8, 0x07, 0x88, 0x8B, 0x89, 0xE7, 0x38, 0x5B, 0x19 .byte 0x79, 0xDB, 0xEE, 0xC8, 0xA1, 0x47, 0x0A, 0x7C, 0x7C, 0xE9, 0x0F, 0x42, 0xF8, 0xC9, 0x1E, 0x84 .byte 0x00, 0x00, 0x00, 0x00, 0x09, 0x83, 0x86, 0x80, 0x32, 0x48, 0xED, 0x2B, 0x1E, 0xAC, 0x70, 0x11 .byte 0x6C, 0x4E, 0x72, 0x5A, 0xFD, 0xFB, 0xFF, 0x0E, 0x0F, 0x56, 0x38, 0x85, 0x3D, 0x1E, 0xD5, 0xAE .byte 0x36, 0x27, 0x39, 0x2D, 0x0A, 0x64, 0xD9, 0x0F, 0x68, 0x21, 0xA6, 0x5C, 0x9B, 0xD1, 0x54, 0x5B .byte 0x24, 0x3A, 0x2E, 0x36, 0x0C, 0xB1, 0x67, 0x0A, 0x93, 0x0F, 0xE7, 0x57, 0xB4, 0xD2, 0x96, 0xEE .byte 0x1B, 0x9E, 0x91, 0x9B, 0x80, 0x4F, 0xC5, 0xC0, 0x61, 0xA2, 0x20, 0xDC, 0x5A, 0x69, 0x4B, 0x77 .byte 0x1C, 0x16, 0x1A, 0x12, 0xE2, 0x0A, 0xBA, 0x93, 0xC0, 0xE5, 0x2A, 0xA0, 0x3C, 0x43, 0xE0, 0x22 .byte 0x12, 0x1D, 0x17, 0x1B, 0x0E, 0x0B, 0x0D, 0x09, 0xF2, 0xAD, 0xC7, 0x8B, 0x2D, 0xB9, 0xA8, 0xB6 .byte 0x14, 0xC8, 0xA9, 0x1E, 0x57, 0x85, 0x19, 0xF1, 0xAF, 0x4C, 0x07, 0x75, 0xEE, 0xBB, 0xDD, 0x99 .byte 0xA3, 0xFD, 0x60, 0x7F, 0xF7, 0x9F, 0x26, 0x01, 0x5C, 0xBC, 0xF5, 0x72, 0x44, 0xC5, 0x3B, 0x66 .byte 0x5B, 0x34, 0x7E, 0xFB, 0x8B, 0x76, 0x29, 0x43, 0xCB, 0xDC, 0xC6, 0x23, 0xB6, 0x68, 0xFC, 0xED .byte 0xB8, 0x63, 0xF1, 0xE4, 0xD7, 0xCA, 0xDC, 0x31, 0x42, 0x10, 0x85, 0x63, 0x13, 0x40, 0x22, 0x97 .byte 0x84, 0x20, 0x11, 0xC6, 0x85, 0x7D, 0x24, 0x4A, 0xD2, 0xF8, 0x3D, 0xBB, 0xAE, 0x11, 0x32, 0xF9 .byte 0xC7, 0x6D, 0xA1, 0x29, 0x1D, 0x4B, 0x2F, 0x9E, 0xDC, 0xF3, 0x30, 0xB2, 0x0D, 0xEC, 0x52, 0x86 .byte 0x77, 0xD0, 0xE3, 0xC1, 0x2B, 0x6C, 0x16, 0xB3, 0xA9, 0x99, 0xB9, 0x70, 0x11, 0xFA, 0x48, 0x94 .byte 0x47, 0x22, 0x64, 0xE9, 0xA8, 0xC4, 0x8C, 0xFC, 0xA0, 0x1A, 0x3F, 0xF0, 0x56, 0xD8, 0x2C, 0x7D .byte 0x22, 0xEF, 0x90, 0x33, 0x87, 0xC7, 0x4E, 0x49, 0xD9, 0xC1, 0xD1, 0x38, 0x8C, 0xFE, 0xA2, 0xCA .byte 0x98, 0x36, 0x0B, 0xD4, 0xA6, 0xCF, 0x81, 0xF5, 0xA5, 0x28, 0xDE, 0x7A, 0xDA, 0x26, 0x8E, 0xB7 .byte 0x3F, 0xA4, 0xBF, 0xAD, 0x2C, 0xE4, 0x9D, 0x3A, 0x50, 0x0D, 0x92, 0x78, 0x6A, 0x9B, 0xCC, 0x5F .byte 0x54, 0x62, 0x46, 0x7E, 0xF6, 0xC2, 0x13, 0x8D, 0x90, 0xE8, 0xB8, 0xD8, 0x2E, 0x5E, 0xF7, 0x39 .byte 0x82, 0xF5, 0xAF, 0xC3, 0x9F, 0xBE, 0x80, 0x5D, 0x69, 0x7C, 0x93, 0xD0, 0x6F, 0xA9, 0x2D, 0xD5 .byte 0xCF, 0xB3, 0x12, 0x25, 0xC8, 0x3B, 0x99, 0xAC, 0x10, 0xA7, 0x7D, 0x18, 0xE8, 0x6E, 0x63, 0x9C .byte 0xDB, 0x7B, 0xBB, 0x3B, 0xCD, 0x09, 0x78, 0x26, 0x6E, 0xF4, 0x18, 0x59, 0xEC, 0x01, 0xB7, 0x9A .byte 0x83, 0xA8, 0x9A, 0x4F, 0xE6, 0x65, 0x6E, 0x95, 0xAA, 0x7E, 0xE6, 0xFF, 0x21, 0x08, 0xCF, 0xBC .byte 0xEF, 0xE6, 0xE8, 0x15, 0xBA, 0xD9, 0x9B, 0xE7, 0x4A, 0xCE, 0x36, 0x6F, 0xEA, 0xD4, 0x09, 0x9F .byte 0x29, 0xD6, 0x7C, 0xB0, 0x31, 0xAF, 0xB2, 0xA4, 0x2A, 0x31, 0x23, 0x3F, 0xC6, 0x30, 0x94, 0xA5 .byte 0x35, 0xC0, 0x66, 0xA2, 0x74, 0x37, 0xBC, 0x4E, 0xFC, 0xA6, 0xCA, 0x82, 0xE0, 0xB0, 0xD0, 0x90 .byte 0x33, 0x15, 0xD8, 0xA7, 0xF1, 0x4A, 0x98, 0x04, 0x41, 0xF7, 0xDA, 0xEC, 0x7F, 0x0E, 0x50, 0xCD .byte 0x17, 0x2F, 0xF6, 0x91, 0x76, 0x8D, 0xD6, 0x4D, 0x43, 0x4D, 0xB0, 0xEF, 0xCC, 0x54, 0x4D, 0xAA .byte 0xE4, 0xDF, 0x04, 0x96, 0x9E, 0xE3, 0xB5, 0xD1, 0x4C, 0x1B, 0x88, 0x6A, 0xC1, 0xB8, 0x1F, 0x2C .byte 0x46, 0x7F, 0x51, 0x65, 0x9D, 0x04, 0xEA, 0x5E, 0x01, 0x5D, 0x35, 0x8C, 0xFA, 0x73, 0x74, 0x87 .byte 0xFB, 0x2E, 0x41, 0x0B, 0xB3, 0x5A, 0x1D, 0x67, 0x92, 0x52, 0xD2, 0xDB, 0xE9, 0x33, 0x56, 0x10 .byte 0x6D, 0x13, 0x47, 0xD6, 0x9A, 0x8C, 0x61, 0xD7, 0x37, 0x7A, 0x0C, 0xA1, 0x59, 0x8E, 0x14, 0xF8 .byte 0xEB, 0x89, 0x3C, 0x13, 0xCE, 0xEE, 0x27, 0xA9, 0xB7, 0x35, 0xC9, 0x61, 0xE1, 0xED, 0xE5, 0x1C .byte 0x7A, 0x3C, 0xB1, 0x47, 0x9C, 0x59, 0xDF, 0xD2, 0x55, 0x3F, 0x73, 0xF2, 0x18, 0x79, 0xCE, 0x14 .byte 0x73, 0xBF, 0x37, 0xC7, 0x53, 0xEA, 0xCD, 0xF7, 0x5F, 0x5B, 0xAA, 0xFD, 0xDF, 0x14, 0x6F, 0x3D .byte 0x78, 0x86, 0xDB, 0x44, 0xCA, 0x81, 0xF3, 0xAF, 0xB9, 0x3E, 0xC4, 0x68, 0x38, 0x2C, 0x34, 0x24 .byte 0xC2, 0x5F, 0x40, 0xA3, 0x16, 0x72, 0xC3, 0x1D, 0xBC, 0x0C, 0x25, 0xE2, 0x28, 0x8B, 0x49, 0x3C .byte 0xFF, 0x41, 0x95, 0x0D, 0x39, 0x71, 0x01, 0xA8, 0x08, 0xDE, 0xB3, 0x0C, 0xD8, 0x9C, 0xE4, 0xB4 .byte 0x64, 0x90, 0xC1, 0x56, 0x7B, 0x61, 0x84, 0xCB, 0xD5, 0x70, 0xB6, 0x32, 0x48, 0x74, 0x5C, 0x6C .byte 0xD0, 0x42, 0x57, 0xB8 .global ov02_0235048C ov02_0235048C: .byte 0x52, 0x52, 0x52, 0x52, 0x09, 0x09, 0x09, 0x09, 0x6A, 0x6A, 0x6A, 0x6A .byte 0xD5, 0xD5, 0xD5, 0xD5, 0x30, 0x30, 0x30, 0x30, 0x36, 0x36, 0x36, 0x36, 0xA5, 0xA5, 0xA5, 0xA5 .byte 0x38, 0x38, 0x38, 0x38, 0xBF, 0xBF, 0xBF, 0xBF, 0x40, 0x40, 0x40, 0x40, 0xA3, 0xA3, 0xA3, 0xA3 .byte 0x9E, 0x9E, 0x9E, 0x9E, 0x81, 0x81, 0x81, 0x81, 0xF3, 0xF3, 0xF3, 0xF3, 0xD7, 0xD7, 0xD7, 0xD7 .byte 0xFB, 0xFB, 0xFB, 0xFB, 0x7C, 0x7C, 0x7C, 0x7C, 0xE3, 0xE3, 0xE3, 0xE3, 0x39, 0x39, 0x39, 0x39 .byte 0x82, 0x82, 0x82, 0x82, 0x9B, 0x9B, 0x9B, 0x9B, 0x2F, 0x2F, 0x2F, 0x2F, 0xFF, 0xFF, 0xFF, 0xFF .byte 0x87, 0x87, 0x87, 0x87, 0x34, 0x34, 0x34, 0x34, 0x8E, 0x8E, 0x8E, 0x8E, 0x43, 0x43, 0x43, 0x43 .byte 0x44, 0x44, 0x44, 0x44, 0xC4, 0xC4, 0xC4, 0xC4, 0xDE, 0xDE, 0xDE, 0xDE, 0xE9, 0xE9, 0xE9, 0xE9 .byte 0xCB, 0xCB, 0xCB, 0xCB, 0x54, 0x54, 0x54, 0x54, 0x7B, 0x7B, 0x7B, 0x7B, 0x94, 0x94, 0x94, 0x94 .byte 0x32, 0x32, 0x32, 0x32, 0xA6, 0xA6, 0xA6, 0xA6, 0xC2, 0xC2, 0xC2, 0xC2, 0x23, 0x23, 0x23, 0x23 .byte 0x3D, 0x3D, 0x3D, 0x3D, 0xEE, 0xEE, 0xEE, 0xEE, 0x4C, 0x4C, 0x4C, 0x4C, 0x95, 0x95, 0x95, 0x95 .byte 0x0B, 0x0B, 0x0B, 0x0B, 0x42, 0x42, 0x42, 0x42, 0xFA, 0xFA, 0xFA, 0xFA, 0xC3, 0xC3, 0xC3, 0xC3 .byte 0x4E, 0x4E, 0x4E, 0x4E, 0x08, 0x08, 0x08, 0x08, 0x2E, 0x2E, 0x2E, 0x2E, 0xA1, 0xA1, 0xA1, 0xA1 .byte 0x66, 0x66, 0x66, 0x66, 0x28, 0x28, 0x28, 0x28, 0xD9, 0xD9, 0xD9, 0xD9, 0x24, 0x24, 0x24, 0x24 .byte 0xB2, 0xB2, 0xB2, 0xB2, 0x76, 0x76, 0x76, 0x76, 0x5B, 0x5B, 0x5B, 0x5B, 0xA2, 0xA2, 0xA2, 0xA2 .byte 0x49, 0x49, 0x49, 0x49, 0x6D, 0x6D, 0x6D, 0x6D, 0x8B, 0x8B, 0x8B, 0x8B, 0xD1, 0xD1, 0xD1, 0xD1 .byte 0x25, 0x25, 0x25, 0x25, 0x72, 0x72, 0x72, 0x72, 0xF8, 0xF8, 0xF8, 0xF8, 0xF6, 0xF6, 0xF6, 0xF6 .byte 0x64, 0x64, 0x64, 0x64, 0x86, 0x86, 0x86, 0x86, 0x68, 0x68, 0x68, 0x68, 0x98, 0x98, 0x98, 0x98 .byte 0x16, 0x16, 0x16, 0x16, 0xD4, 0xD4, 0xD4, 0xD4, 0xA4, 0xA4, 0xA4, 0xA4, 0x5C, 0x5C, 0x5C, 0x5C .byte 0xCC, 0xCC, 0xCC, 0xCC, 0x5D, 0x5D, 0x5D, 0x5D, 0x65, 0x65, 0x65, 0x65, 0xB6, 0xB6, 0xB6, 0xB6 .byte 0x92, 0x92, 0x92, 0x92, 0x6C, 0x6C, 0x6C, 0x6C, 0x70, 0x70, 0x70, 0x70, 0x48, 0x48, 0x48, 0x48 .byte 0x50, 0x50, 0x50, 0x50, 0xFD, 0xFD, 0xFD, 0xFD, 0xED, 0xED, 0xED, 0xED, 0xB9, 0xB9, 0xB9, 0xB9 .byte 0xDA, 0xDA, 0xDA, 0xDA, 0x5E, 0x5E, 0x5E, 0x5E, 0x15, 0x15, 0x15, 0x15, 0x46, 0x46, 0x46, 0x46 .byte 0x57, 0x57, 0x57, 0x57, 0xA7, 0xA7, 0xA7, 0xA7, 0x8D, 0x8D, 0x8D, 0x8D, 0x9D, 0x9D, 0x9D, 0x9D .byte 0x84, 0x84, 0x84, 0x84, 0x90, 0x90, 0x90, 0x90, 0xD8, 0xD8, 0xD8, 0xD8, 0xAB, 0xAB, 0xAB, 0xAB .byte 0x00, 0x00, 0x00, 0x00, 0x8C, 0x8C, 0x8C, 0x8C, 0xBC, 0xBC, 0xBC, 0xBC, 0xD3, 0xD3, 0xD3, 0xD3 .byte 0x0A, 0x0A, 0x0A, 0x0A, 0xF7, 0xF7, 0xF7, 0xF7, 0xE4, 0xE4, 0xE4, 0xE4, 0x58, 0x58, 0x58, 0x58 .byte 0x05, 0x05, 0x05, 0x05, 0xB8, 0xB8, 0xB8, 0xB8, 0xB3, 0xB3, 0xB3, 0xB3, 0x45, 0x45, 0x45, 0x45 .byte 0x06, 0x06, 0x06, 0x06, 0xD0, 0xD0, 0xD0, 0xD0, 0x2C, 0x2C, 0x2C, 0x2C, 0x1E, 0x1E, 0x1E, 0x1E .byte 0x8F, 0x8F, 0x8F, 0x8F, 0xCA, 0xCA, 0xCA, 0xCA, 0x3F, 0x3F, 0x3F, 0x3F, 0x0F, 0x0F, 0x0F, 0x0F .byte 0x02, 0x02, 0x02, 0x02, 0xC1, 0xC1, 0xC1, 0xC1, 0xAF, 0xAF, 0xAF, 0xAF, 0xBD, 0xBD, 0xBD, 0xBD .byte 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x01, 0x13, 0x13, 0x13, 0x13, 0x8A, 0x8A, 0x8A, 0x8A .byte 0x6B, 0x6B, 0x6B, 0x6B, 0x3A, 0x3A, 0x3A, 0x3A, 0x91, 0x91, 0x91, 0x91, 0x11, 0x11, 0x11, 0x11 .byte 0x41, 0x41, 0x41, 0x41, 0x4F, 0x4F, 0x4F, 0x4F, 0x67, 0x67, 0x67, 0x67, 0xDC, 0xDC, 0xDC, 0xDC .byte 0xEA, 0xEA, 0xEA, 0xEA, 0x97, 0x97, 0x97, 0x97, 0xF2, 0xF2, 0xF2, 0xF2, 0xCF, 0xCF, 0xCF, 0xCF .byte 0xCE, 0xCE, 0xCE, 0xCE, 0xF0, 0xF0, 0xF0, 0xF0, 0xB4, 0xB4, 0xB4, 0xB4, 0xE6, 0xE6, 0xE6, 0xE6 .byte 0x73, 0x73, 0x73, 0x73, 0x96, 0x96, 0x96, 0x96, 0xAC, 0xAC, 0xAC, 0xAC, 0x74, 0x74, 0x74, 0x74 .byte 0x22, 0x22, 0x22, 0x22, 0xE7, 0xE7, 0xE7, 0xE7, 0xAD, 0xAD, 0xAD, 0xAD, 0x35, 0x35, 0x35, 0x35 .byte 0x85, 0x85, 0x85, 0x85, 0xE2, 0xE2, 0xE2, 0xE2, 0xF9, 0xF9, 0xF9, 0xF9, 0x37, 0x37, 0x37, 0x37 .byte 0xE8, 0xE8, 0xE8, 0xE8, 0x1C, 0x1C, 0x1C, 0x1C, 0x75, 0x75, 0x75, 0x75, 0xDF, 0xDF, 0xDF, 0xDF .byte 0x6E, 0x6E, 0x6E, 0x6E, 0x47, 0x47, 0x47, 0x47, 0xF1, 0xF1, 0xF1, 0xF1, 0x1A, 0x1A, 0x1A, 0x1A .byte 0x71, 0x71, 0x71, 0x71, 0x1D, 0x1D, 0x1D, 0x1D, 0x29, 0x29, 0x29, 0x29, 0xC5, 0xC5, 0xC5, 0xC5 .byte 0x89, 0x89, 0x89, 0x89, 0x6F, 0x6F, 0x6F, 0x6F, 0xB7, 0xB7, 0xB7, 0xB7, 0x62, 0x62, 0x62, 0x62 .byte 0x0E, 0x0E, 0x0E, 0x0E, 0xAA, 0xAA, 0xAA, 0xAA, 0x18, 0x18, 0x18, 0x18, 0xBE, 0xBE, 0xBE, 0xBE .byte 0x1B, 0x1B, 0x1B, 0x1B, 0xFC, 0xFC, 0xFC, 0xFC, 0x56, 0x56, 0x56, 0x56, 0x3E, 0x3E, 0x3E, 0x3E .byte 0x4B, 0x4B, 0x4B, 0x4B, 0xC6, 0xC6, 0xC6, 0xC6, 0xD2, 0xD2, 0xD2, 0xD2, 0x79, 0x79, 0x79, 0x79 .byte 0x20, 0x20, 0x20, 0x20, 0x9A, 0x9A, 0x9A, 0x9A, 0xDB, 0xDB, 0xDB, 0xDB, 0xC0, 0xC0, 0xC0, 0xC0 .byte 0xFE, 0xFE, 0xFE, 0xFE, 0x78, 0x78, 0x78, 0x78, 0xCD, 0xCD, 0xCD, 0xCD, 0x5A, 0x5A, 0x5A, 0x5A .byte 0xF4, 0xF4, 0xF4, 0xF4, 0x1F, 0x1F, 0x1F, 0x1F, 0xDD, 0xDD, 0xDD, 0xDD, 0xA8, 0xA8, 0xA8, 0xA8 .byte 0x33, 0x33, 0x33, 0x33, 0x88, 0x88, 0x88, 0x88, 0x07, 0x07, 0x07, 0x07, 0xC7, 0xC7, 0xC7, 0xC7 .byte 0x31, 0x31, 0x31, 0x31, 0xB1, 0xB1, 0xB1, 0xB1, 0x12, 0x12, 0x12, 0x12, 0x10, 0x10, 0x10, 0x10 .byte 0x59, 0x59, 0x59, 0x59, 0x27, 0x27, 0x27, 0x27, 0x80, 0x80, 0x80, 0x80, 0xEC, 0xEC, 0xEC, 0xEC .byte 0x5F, 0x5F, 0x5F, 0x5F, 0x60, 0x60, 0x60, 0x60, 0x51, 0x51, 0x51, 0x51, 0x7F, 0x7F, 0x7F, 0x7F .byte 0xA9, 0xA9, 0xA9, 0xA9, 0x19, 0x19, 0x19, 0x19, 0xB5, 0xB5, 0xB5, 0xB5, 0x4A, 0x4A, 0x4A, 0x4A .byte 0x0D, 0x0D, 0x0D, 0x0D, 0x2D, 0x2D, 0x2D, 0x2D, 0xE5, 0xE5, 0xE5, 0xE5, 0x7A, 0x7A, 0x7A, 0x7A .byte 0x9F, 0x9F, 0x9F, 0x9F, 0x93, 0x93, 0x93, 0x93, 0xC9, 0xC9, 0xC9, 0xC9, 0x9C, 0x9C, 0x9C, 0x9C .byte 0xEF, 0xEF, 0xEF, 0xEF, 0xA0, 0xA0, 0xA0, 0xA0, 0xE0, 0xE0, 0xE0, 0xE0, 0x3B, 0x3B, 0x3B, 0x3B .byte 0x4D, 0x4D, 0x4D, 0x4D, 0xAE, 0xAE, 0xAE, 0xAE, 0x2A, 0x2A, 0x2A, 0x2A, 0xF5, 0xF5, 0xF5, 0xF5 .byte 0xB0, 0xB0, 0xB0, 0xB0, 0xC8, 0xC8, 0xC8, 0xC8, 0xEB, 0xEB, 0xEB, 0xEB, 0xBB, 0xBB, 0xBB, 0xBB .byte 0x3C, 0x3C, 0x3C, 0x3C, 0x83, 0x83, 0x83, 0x83, 0x53, 0x53, 0x53, 0x53, 0x99, 0x99, 0x99, 0x99 .byte 0x61, 0x61, 0x61, 0x61, 0x17, 0x17, 0x17, 0x17, 0x2B, 0x2B, 0x2B, 0x2B, 0x04, 0x04, 0x04, 0x04 .byte 0x7E, 0x7E, 0x7E, 0x7E, 0xBA, 0xBA, 0xBA, 0xBA, 0x77, 0x77, 0x77, 0x77, 0xD6, 0xD6, 0xD6, 0xD6 .byte 0x26, 0x26, 0x26, 0x26, 0xE1, 0xE1, 0xE1, 0xE1, 0x69, 0x69, 0x69, 0x69, 0x14, 0x14, 0x14, 0x14 .byte 0x63, 0x63, 0x63, 0x63, 0x55, 0x55, 0x55, 0x55, 0x21, 0x21, 0x21, 0x21, 0x0C, 0x0C, 0x0C, 0x0C .byte 0x7D, 0x7D, 0x7D, 0x7D .global ov02_0235088C ov02_0235088C: .byte 0xA5, 0x63, 0x63, 0xC6, 0x84, 0x7C, 0x7C, 0xF8, 0x99, 0x77, 0x77, 0xEE .byte 0x8D, 0x7B, 0x7B, 0xF6, 0x0D, 0xF2, 0xF2, 0xFF, 0xBD, 0x6B, 0x6B, 0xD6, 0xB1, 0x6F, 0x6F, 0xDE .byte 0x54, 0xC5, 0xC5, 0x91, 0x50, 0x30, 0x30, 0x60, 0x03, 0x01, 0x01, 0x02, 0xA9, 0x67, 0x67, 0xCE .byte 0x7D, 0x2B, 0x2B, 0x56, 0x19, 0xFE, 0xFE, 0xE7, 0x62, 0xD7, 0xD7, 0xB5, 0xE6, 0xAB, 0xAB, 0x4D .byte 0x9A, 0x76, 0x76, 0xEC, 0x45, 0xCA, 0xCA, 0x8F, 0x9D, 0x82, 0x82, 0x1F, 0x40, 0xC9, 0xC9, 0x89 .byte 0x87, 0x7D, 0x7D, 0xFA, 0x15, 0xFA, 0xFA, 0xEF, 0xEB, 0x59, 0x59, 0xB2, 0xC9, 0x47, 0x47, 0x8E .byte 0x0B, 0xF0, 0xF0, 0xFB, 0xEC, 0xAD, 0xAD, 0x41, 0x67, 0xD4, 0xD4, 0xB3, 0xFD, 0xA2, 0xA2, 0x5F .byte 0xEA, 0xAF, 0xAF, 0x45, 0xBF, 0x9C, 0x9C, 0x23, 0xF7, 0xA4, 0xA4, 0x53, 0x96, 0x72, 0x72, 0xE4 .byte 0x5B, 0xC0, 0xC0, 0x9B, 0xC2, 0xB7, 0xB7, 0x75, 0x1C, 0xFD, 0xFD, 0xE1, 0xAE, 0x93, 0x93, 0x3D .byte 0x6A, 0x26, 0x26, 0x4C, 0x5A, 0x36, 0x36, 0x6C, 0x41, 0x3F, 0x3F, 0x7E, 0x02, 0xF7, 0xF7, 0xF5 .byte 0x4F, 0xCC, 0xCC, 0x83, 0x5C, 0x34, 0x34, 0x68, 0xF4, 0xA5, 0xA5, 0x51, 0x34, 0xE5, 0xE5, 0xD1 .byte 0x08, 0xF1, 0xF1, 0xF9, 0x93, 0x71, 0x71, 0xE2, 0x73, 0xD8, 0xD8, 0xAB, 0x53, 0x31, 0x31, 0x62 .byte 0x3F, 0x15, 0x15, 0x2A, 0x0C, 0x04, 0x04, 0x08, 0x52, 0xC7, 0xC7, 0x95, 0x65, 0x23, 0x23, 0x46 .byte 0x5E, 0xC3, 0xC3, 0x9D, 0x28, 0x18, 0x18, 0x30, 0xA1, 0x96, 0x96, 0x37, 0x0F, 0x05, 0x05, 0x0A .byte 0xB5, 0x9A, 0x9A, 0x2F, 0x09, 0x07, 0x07, 0x0E, 0x36, 0x12, 0x12, 0x24, 0x9B, 0x80, 0x80, 0x1B .byte 0x3D, 0xE2, 0xE2, 0xDF, 0x26, 0xEB, 0xEB, 0xCD, 0x69, 0x27, 0x27, 0x4E, 0xCD, 0xB2, 0xB2, 0x7F .byte 0x9F, 0x75, 0x75, 0xEA, 0x1B, 0x09, 0x09, 0x12, 0x9E, 0x83, 0x83, 0x1D, 0x74, 0x2C, 0x2C, 0x58 .byte 0x2E, 0x1A, 0x1A, 0x34, 0x2D, 0x1B, 0x1B, 0x36, 0xB2, 0x6E, 0x6E, 0xDC, 0xEE, 0x5A, 0x5A, 0xB4 .byte 0xFB, 0xA0, 0xA0, 0x5B, 0xF6, 0x52, 0x52, 0xA4, 0x4D, 0x3B, 0x3B, 0x76, 0x61, 0xD6, 0xD6, 0xB7 .byte 0xCE, 0xB3, 0xB3, 0x7D, 0x7B, 0x29, 0x29, 0x52, 0x3E, 0xE3, 0xE3, 0xDD, 0x71, 0x2F, 0x2F, 0x5E .byte 0x97, 0x84, 0x84, 0x13, 0xF5, 0x53, 0x53, 0xA6, 0x68, 0xD1, 0xD1, 0xB9, 0x00, 0x00, 0x00, 0x00 .byte 0x2C, 0xED, 0xED, 0xC1, 0x60, 0x20, 0x20, 0x40, 0x1F, 0xFC, 0xFC, 0xE3, 0xC8, 0xB1, 0xB1, 0x79 .byte 0xED, 0x5B, 0x5B, 0xB6, 0xBE, 0x6A, 0x6A, 0xD4, 0x46, 0xCB, 0xCB, 0x8D, 0xD9, 0xBE, 0xBE, 0x67 .byte 0x4B, 0x39, 0x39, 0x72, 0xDE, 0x4A, 0x4A, 0x94, 0xD4, 0x4C, 0x4C, 0x98, 0xE8, 0x58, 0x58, 0xB0 .byte 0x4A, 0xCF, 0xCF, 0x85, 0x6B, 0xD0, 0xD0, 0xBB, 0x2A, 0xEF, 0xEF, 0xC5, 0xE5, 0xAA, 0xAA, 0x4F .byte 0x16, 0xFB, 0xFB, 0xED, 0xC5, 0x43, 0x43, 0x86, 0xD7, 0x4D, 0x4D, 0x9A, 0x55, 0x33, 0x33, 0x66 .byte 0x94, 0x85, 0x85, 0x11, 0xCF, 0x45, 0x45, 0x8A, 0x10, 0xF9, 0xF9, 0xE9, 0x06, 0x02, 0x02, 0x04 .byte 0x81, 0x7F, 0x7F, 0xFE, 0xF0, 0x50, 0x50, 0xA0, 0x44, 0x3C, 0x3C, 0x78, 0xBA, 0x9F, 0x9F, 0x25 .byte 0xE3, 0xA8, 0xA8, 0x4B, 0xF3, 0x51, 0x51, 0xA2, 0xFE, 0xA3, 0xA3, 0x5D, 0xC0, 0x40, 0x40, 0x80 .byte 0x8A, 0x8F, 0x8F, 0x05, 0xAD, 0x92, 0x92, 0x3F, 0xBC, 0x9D, 0x9D, 0x21, 0x48, 0x38, 0x38, 0x70 .byte 0x04, 0xF5, 0xF5, 0xF1, 0xDF, 0xBC, 0xBC, 0x63, 0xC1, 0xB6, 0xB6, 0x77, 0x75, 0xDA, 0xDA, 0xAF .byte 0x63, 0x21, 0x21, 0x42, 0x30, 0x10, 0x10, 0x20, 0x1A, 0xFF, 0xFF, 0xE5, 0x0E, 0xF3, 0xF3, 0xFD .byte 0x6D, 0xD2, 0xD2, 0xBF, 0x4C, 0xCD, 0xCD, 0x81, 0x14, 0x0C, 0x0C, 0x18, 0x35, 0x13, 0x13, 0x26 .byte 0x2F, 0xEC, 0xEC, 0xC3, 0xE1, 0x5F, 0x5F, 0xBE, 0xA2, 0x97, 0x97, 0x35, 0xCC, 0x44, 0x44, 0x88 .byte 0x39, 0x17, 0x17, 0x2E, 0x57, 0xC4, 0xC4, 0x93, 0xF2, 0xA7, 0xA7, 0x55, 0x82, 0x7E, 0x7E, 0xFC .byte 0x47, 0x3D, 0x3D, 0x7A, 0xAC, 0x64, 0x64, 0xC8, 0xE7, 0x5D, 0x5D, 0xBA, 0x2B, 0x19, 0x19, 0x32 .byte 0x95, 0x73, 0x73, 0xE6, 0xA0, 0x60, 0x60, 0xC0, 0x98, 0x81, 0x81, 0x19, 0xD1, 0x4F, 0x4F, 0x9E .byte 0x7F, 0xDC, 0xDC, 0xA3, 0x66, 0x22, 0x22, 0x44, 0x7E, 0x2A, 0x2A, 0x54, 0xAB, 0x90, 0x90, 0x3B .byte 0x83, 0x88, 0x88, 0x0B, 0xCA, 0x46, 0x46, 0x8C, 0x29, 0xEE, 0xEE, 0xC7, 0xD3, 0xB8, 0xB8, 0x6B .byte 0x3C, 0x14, 0x14, 0x28, 0x79, 0xDE, 0xDE, 0xA7, 0xE2, 0x5E, 0x5E, 0xBC, 0x1D, 0x0B, 0x0B, 0x16 .byte 0x76, 0xDB, 0xDB, 0xAD, 0x3B, 0xE0, 0xE0, 0xDB, 0x56, 0x32, 0x32, 0x64, 0x4E, 0x3A, 0x3A, 0x74 .byte 0x1E, 0x0A, 0x0A, 0x14, 0xDB, 0x49, 0x49, 0x92, 0x0A, 0x06, 0x06, 0x0C, 0x6C, 0x24, 0x24, 0x48 .byte 0xE4, 0x5C, 0x5C, 0xB8, 0x5D, 0xC2, 0xC2, 0x9F, 0x6E, 0xD3, 0xD3, 0xBD, 0xEF, 0xAC, 0xAC, 0x43 .byte 0xA6, 0x62, 0x62, 0xC4, 0xA8, 0x91, 0x91, 0x39, 0xA4, 0x95, 0x95, 0x31, 0x37, 0xE4, 0xE4, 0xD3 .byte 0x8B, 0x79, 0x79, 0xF2, 0x32, 0xE7, 0xE7, 0xD5, 0x43, 0xC8, 0xC8, 0x8B, 0x59, 0x37, 0x37, 0x6E .byte 0xB7, 0x6D, 0x6D, 0xDA, 0x8C, 0x8D, 0x8D, 0x01, 0x64, 0xD5, 0xD5, 0xB1, 0xD2, 0x4E, 0x4E, 0x9C .byte 0xE0, 0xA9, 0xA9, 0x49, 0xB4, 0x6C, 0x6C, 0xD8, 0xFA, 0x56, 0x56, 0xAC, 0x07, 0xF4, 0xF4, 0xF3 .byte 0x25, 0xEA, 0xEA, 0xCF, 0xAF, 0x65, 0x65, 0xCA, 0x8E, 0x7A, 0x7A, 0xF4, 0xE9, 0xAE, 0xAE, 0x47 .byte 0x18, 0x08, 0x08, 0x10, 0xD5, 0xBA, 0xBA, 0x6F, 0x88, 0x78, 0x78, 0xF0, 0x6F, 0x25, 0x25, 0x4A .byte 0x72, 0x2E, 0x2E, 0x5C, 0x24, 0x1C, 0x1C, 0x38, 0xF1, 0xA6, 0xA6, 0x57, 0xC7, 0xB4, 0xB4, 0x73 .byte 0x51, 0xC6, 0xC6, 0x97, 0x23, 0xE8, 0xE8, 0xCB, 0x7C, 0xDD, 0xDD, 0xA1, 0x9C, 0x74, 0x74, 0xE8 .byte 0x21, 0x1F, 0x1F, 0x3E, 0xDD, 0x4B, 0x4B, 0x96, 0xDC, 0xBD, 0xBD, 0x61, 0x86, 0x8B, 0x8B, 0x0D .byte 0x85, 0x8A, 0x8A, 0x0F, 0x90, 0x70, 0x70, 0xE0, 0x42, 0x3E, 0x3E, 0x7C, 0xC4, 0xB5, 0xB5, 0x71 .byte 0xAA, 0x66, 0x66, 0xCC, 0xD8, 0x48, 0x48, 0x90, 0x05, 0x03, 0x03, 0x06, 0x01, 0xF6, 0xF6, 0xF7 .byte 0x12, 0x0E, 0x0E, 0x1C, 0xA3, 0x61, 0x61, 0xC2, 0x5F, 0x35, 0x35, 0x6A, 0xF9, 0x57, 0x57, 0xAE .byte 0xD0, 0xB9, 0xB9, 0x69, 0x91, 0x86, 0x86, 0x17, 0x58, 0xC1, 0xC1, 0x99, 0x27, 0x1D, 0x1D, 0x3A .byte 0xB9, 0x9E, 0x9E, 0x27, 0x38, 0xE1, 0xE1, 0xD9, 0x13, 0xF8, 0xF8, 0xEB, 0xB3, 0x98, 0x98, 0x2B .byte 0x33, 0x11, 0x11, 0x22, 0xBB, 0x69, 0x69, 0xD2, 0x70, 0xD9, 0xD9, 0xA9, 0x89, 0x8E, 0x8E, 0x07 .byte 0xA7, 0x94, 0x94, 0x33, 0xB6, 0x9B, 0x9B, 0x2D, 0x22, 0x1E, 0x1E, 0x3C, 0x92, 0x87, 0x87, 0x15 .byte 0x20, 0xE9, 0xE9, 0xC9, 0x49, 0xCE, 0xCE, 0x87, 0xFF, 0x55, 0x55, 0xAA, 0x78, 0x28, 0x28, 0x50 .byte 0x7A, 0xDF, 0xDF, 0xA5, 0x8F, 0x8C, 0x8C, 0x03, 0xF8, 0xA1, 0xA1, 0x59, 0x80, 0x89, 0x89, 0x09 .byte 0x17, 0x0D, 0x0D, 0x1A, 0xDA, 0xBF, 0xBF, 0x65, 0x31, 0xE6, 0xE6, 0xD7, 0xC6, 0x42, 0x42, 0x84 .byte 0xB8, 0x68, 0x68, 0xD0, 0xC3, 0x41, 0x41, 0x82, 0xB0, 0x99, 0x99, 0x29, 0x77, 0x2D, 0x2D, 0x5A .byte 0x11, 0x0F, 0x0F, 0x1E, 0xCB, 0xB0, 0xB0, 0x7B, 0xFC, 0x54, 0x54, 0xA8, 0xD6, 0xBB, 0xBB, 0x6D .byte 0x3A, 0x16, 0x16, 0x2C .global ov02_02350C8C ov02_02350C8C: .byte 0x63, 0x63, 0xC6, 0xA5, 0x7C, 0x7C, 0xF8, 0x84, 0x77, 0x77, 0xEE, 0x99 .byte 0x7B, 0x7B, 0xF6, 0x8D, 0xF2, 0xF2, 0xFF, 0x0D, 0x6B, 0x6B, 0xD6, 0xBD, 0x6F, 0x6F, 0xDE, 0xB1 .byte 0xC5, 0xC5, 0x91, 0x54, 0x30, 0x30, 0x60, 0x50, 0x01, 0x01, 0x02, 0x03, 0x67, 0x67, 0xCE, 0xA9 .byte 0x2B, 0x2B, 0x56, 0x7D, 0xFE, 0xFE, 0xE7, 0x19, 0xD7, 0xD7, 0xB5, 0x62, 0xAB, 0xAB, 0x4D, 0xE6 .byte 0x76, 0x76, 0xEC, 0x9A, 0xCA, 0xCA, 0x8F, 0x45, 0x82, 0x82, 0x1F, 0x9D, 0xC9, 0xC9, 0x89, 0x40 .byte 0x7D, 0x7D, 0xFA, 0x87, 0xFA, 0xFA, 0xEF, 0x15, 0x59, 0x59, 0xB2, 0xEB, 0x47, 0x47, 0x8E, 0xC9 .byte 0xF0, 0xF0, 0xFB, 0x0B, 0xAD, 0xAD, 0x41, 0xEC, 0xD4, 0xD4, 0xB3, 0x67, 0xA2, 0xA2, 0x5F, 0xFD .byte 0xAF, 0xAF, 0x45, 0xEA, 0x9C, 0x9C, 0x23, 0xBF, 0xA4, 0xA4, 0x53, 0xF7, 0x72, 0x72, 0xE4, 0x96 .byte 0xC0, 0xC0, 0x9B, 0x5B, 0xB7, 0xB7, 0x75, 0xC2, 0xFD, 0xFD, 0xE1, 0x1C, 0x93, 0x93, 0x3D, 0xAE .byte 0x26, 0x26, 0x4C, 0x6A, 0x36, 0x36, 0x6C, 0x5A, 0x3F, 0x3F, 0x7E, 0x41, 0xF7, 0xF7, 0xF5, 0x02 .byte 0xCC, 0xCC, 0x83, 0x4F, 0x34, 0x34, 0x68, 0x5C, 0xA5, 0xA5, 0x51, 0xF4, 0xE5, 0xE5, 0xD1, 0x34 .byte 0xF1, 0xF1, 0xF9, 0x08, 0x71, 0x71, 0xE2, 0x93, 0xD8, 0xD8, 0xAB, 0x73, 0x31, 0x31, 0x62, 0x53 .byte 0x15, 0x15, 0x2A, 0x3F, 0x04, 0x04, 0x08, 0x0C, 0xC7, 0xC7, 0x95, 0x52, 0x23, 0x23, 0x46, 0x65 .byte 0xC3, 0xC3, 0x9D, 0x5E, 0x18, 0x18, 0x30, 0x28, 0x96, 0x96, 0x37, 0xA1, 0x05, 0x05, 0x0A, 0x0F .byte 0x9A, 0x9A, 0x2F, 0xB5, 0x07, 0x07, 0x0E, 0x09, 0x12, 0x12, 0x24, 0x36, 0x80, 0x80, 0x1B, 0x9B .byte 0xE2, 0xE2, 0xDF, 0x3D, 0xEB, 0xEB, 0xCD, 0x26, 0x27, 0x27, 0x4E, 0x69, 0xB2, 0xB2, 0x7F, 0xCD .byte 0x75, 0x75, 0xEA, 0x9F, 0x09, 0x09, 0x12, 0x1B, 0x83, 0x83, 0x1D, 0x9E, 0x2C, 0x2C, 0x58, 0x74 .byte 0x1A, 0x1A, 0x34, 0x2E, 0x1B, 0x1B, 0x36, 0x2D, 0x6E, 0x6E, 0xDC, 0xB2, 0x5A, 0x5A, 0xB4, 0xEE .byte 0xA0, 0xA0, 0x5B, 0xFB, 0x52, 0x52, 0xA4, 0xF6, 0x3B, 0x3B, 0x76, 0x4D, 0xD6, 0xD6, 0xB7, 0x61 .byte 0xB3, 0xB3, 0x7D, 0xCE, 0x29, 0x29, 0x52, 0x7B, 0xE3, 0xE3, 0xDD, 0x3E, 0x2F, 0x2F, 0x5E, 0x71 .byte 0x84, 0x84, 0x13, 0x97, 0x53, 0x53, 0xA6, 0xF5, 0xD1, 0xD1, 0xB9, 0x68, 0x00, 0x00, 0x00, 0x00 .byte 0xED, 0xED, 0xC1, 0x2C, 0x20, 0x20, 0x40, 0x60, 0xFC, 0xFC, 0xE3, 0x1F, 0xB1, 0xB1, 0x79, 0xC8 .byte 0x5B, 0x5B, 0xB6, 0xED, 0x6A, 0x6A, 0xD4, 0xBE, 0xCB, 0xCB, 0x8D, 0x46, 0xBE, 0xBE, 0x67, 0xD9 .byte 0x39, 0x39, 0x72, 0x4B, 0x4A, 0x4A, 0x94, 0xDE, 0x4C, 0x4C, 0x98, 0xD4, 0x58, 0x58, 0xB0, 0xE8 .byte 0xCF, 0xCF, 0x85, 0x4A, 0xD0, 0xD0, 0xBB, 0x6B, 0xEF, 0xEF, 0xC5, 0x2A, 0xAA, 0xAA, 0x4F, 0xE5 .byte 0xFB, 0xFB, 0xED, 0x16, 0x43, 0x43, 0x86, 0xC5, 0x4D, 0x4D, 0x9A, 0xD7, 0x33, 0x33, 0x66, 0x55 .byte 0x85, 0x85, 0x11, 0x94, 0x45, 0x45, 0x8A, 0xCF, 0xF9, 0xF9, 0xE9, 0x10, 0x02, 0x02, 0x04, 0x06 .byte 0x7F, 0x7F, 0xFE, 0x81, 0x50, 0x50, 0xA0, 0xF0, 0x3C, 0x3C, 0x78, 0x44, 0x9F, 0x9F, 0x25, 0xBA .byte 0xA8, 0xA8, 0x4B, 0xE3, 0x51, 0x51, 0xA2, 0xF3, 0xA3, 0xA3, 0x5D, 0xFE, 0x40, 0x40, 0x80, 0xC0 .byte 0x8F, 0x8F, 0x05, 0x8A, 0x92, 0x92, 0x3F, 0xAD, 0x9D, 0x9D, 0x21, 0xBC, 0x38, 0x38, 0x70, 0x48 .byte 0xF5, 0xF5, 0xF1, 0x04, 0xBC, 0xBC, 0x63, 0xDF, 0xB6, 0xB6, 0x77, 0xC1, 0xDA, 0xDA, 0xAF, 0x75 .byte 0x21, 0x21, 0x42, 0x63, 0x10, 0x10, 0x20, 0x30, 0xFF, 0xFF, 0xE5, 0x1A, 0xF3, 0xF3, 0xFD, 0x0E .byte 0xD2, 0xD2, 0xBF, 0x6D, 0xCD, 0xCD, 0x81, 0x4C, 0x0C, 0x0C, 0x18, 0x14, 0x13, 0x13, 0x26, 0x35 .byte 0xEC, 0xEC, 0xC3, 0x2F, 0x5F, 0x5F, 0xBE, 0xE1, 0x97, 0x97, 0x35, 0xA2, 0x44, 0x44, 0x88, 0xCC .byte 0x17, 0x17, 0x2E, 0x39, 0xC4, 0xC4, 0x93, 0x57, 0xA7, 0xA7, 0x55, 0xF2, 0x7E, 0x7E, 0xFC, 0x82 .byte 0x3D, 0x3D, 0x7A, 0x47, 0x64, 0x64, 0xC8, 0xAC, 0x5D, 0x5D, 0xBA, 0xE7, 0x19, 0x19, 0x32, 0x2B .byte 0x73, 0x73, 0xE6, 0x95, 0x60, 0x60, 0xC0, 0xA0, 0x81, 0x81, 0x19, 0x98, 0x4F, 0x4F, 0x9E, 0xD1 .byte 0xDC, 0xDC, 0xA3, 0x7F, 0x22, 0x22, 0x44, 0x66, 0x2A, 0x2A, 0x54, 0x7E, 0x90, 0x90, 0x3B, 0xAB .byte 0x88, 0x88, 0x0B, 0x83, 0x46, 0x46, 0x8C, 0xCA, 0xEE, 0xEE, 0xC7, 0x29, 0xB8, 0xB8, 0x6B, 0xD3 .byte 0x14, 0x14, 0x28, 0x3C, 0xDE, 0xDE, 0xA7, 0x79, 0x5E, 0x5E, 0xBC, 0xE2, 0x0B, 0x0B, 0x16, 0x1D .byte 0xDB, 0xDB, 0xAD, 0x76, 0xE0, 0xE0, 0xDB, 0x3B, 0x32, 0x32, 0x64, 0x56, 0x3A, 0x3A, 0x74, 0x4E .byte 0x0A, 0x0A, 0x14, 0x1E, 0x49, 0x49, 0x92, 0xDB, 0x06, 0x06, 0x0C, 0x0A, 0x24, 0x24, 0x48, 0x6C .byte 0x5C, 0x5C, 0xB8, 0xE4, 0xC2, 0xC2, 0x9F, 0x5D, 0xD3, 0xD3, 0xBD, 0x6E, 0xAC, 0xAC, 0x43, 0xEF .byte 0x62, 0x62, 0xC4, 0xA6, 0x91, 0x91, 0x39, 0xA8, 0x95, 0x95, 0x31, 0xA4, 0xE4, 0xE4, 0xD3, 0x37 .byte 0x79, 0x79, 0xF2, 0x8B, 0xE7, 0xE7, 0xD5, 0x32, 0xC8, 0xC8, 0x8B, 0x43, 0x37, 0x37, 0x6E, 0x59 .byte 0x6D, 0x6D, 0xDA, 0xB7, 0x8D, 0x8D, 0x01, 0x8C, 0xD5, 0xD5, 0xB1, 0x64, 0x4E, 0x4E, 0x9C, 0xD2 .byte 0xA9, 0xA9, 0x49, 0xE0, 0x6C, 0x6C, 0xD8, 0xB4, 0x56, 0x56, 0xAC, 0xFA, 0xF4, 0xF4, 0xF3, 0x07 .byte 0xEA, 0xEA, 0xCF, 0x25, 0x65, 0x65, 0xCA, 0xAF, 0x7A, 0x7A, 0xF4, 0x8E, 0xAE, 0xAE, 0x47, 0xE9 .byte 0x08, 0x08, 0x10, 0x18, 0xBA, 0xBA, 0x6F, 0xD5, 0x78, 0x78, 0xF0, 0x88, 0x25, 0x25, 0x4A, 0x6F .byte 0x2E, 0x2E, 0x5C, 0x72, 0x1C, 0x1C, 0x38, 0x24, 0xA6, 0xA6, 0x57, 0xF1, 0xB4, 0xB4, 0x73, 0xC7 .byte 0xC6, 0xC6, 0x97, 0x51, 0xE8, 0xE8, 0xCB, 0x23, 0xDD, 0xDD, 0xA1, 0x7C, 0x74, 0x74, 0xE8, 0x9C .byte 0x1F, 0x1F, 0x3E, 0x21, 0x4B, 0x4B, 0x96, 0xDD, 0xBD, 0xBD, 0x61, 0xDC, 0x8B, 0x8B, 0x0D, 0x86 .byte 0x8A, 0x8A, 0x0F, 0x85, 0x70, 0x70, 0xE0, 0x90, 0x3E, 0x3E, 0x7C, 0x42, 0xB5, 0xB5, 0x71, 0xC4 .byte 0x66, 0x66, 0xCC, 0xAA, 0x48, 0x48, 0x90, 0xD8, 0x03, 0x03, 0x06, 0x05, 0xF6, 0xF6, 0xF7, 0x01 .byte 0x0E, 0x0E, 0x1C, 0x12, 0x61, 0x61, 0xC2, 0xA3, 0x35, 0x35, 0x6A, 0x5F, 0x57, 0x57, 0xAE, 0xF9 .byte 0xB9, 0xB9, 0x69, 0xD0, 0x86, 0x86, 0x17, 0x91, 0xC1, 0xC1, 0x99, 0x58, 0x1D, 0x1D, 0x3A, 0x27 .byte 0x9E, 0x9E, 0x27, 0xB9, 0xE1, 0xE1, 0xD9, 0x38, 0xF8, 0xF8, 0xEB, 0x13, 0x98, 0x98, 0x2B, 0xB3 .byte 0x11, 0x11, 0x22, 0x33, 0x69, 0x69, 0xD2, 0xBB, 0xD9, 0xD9, 0xA9, 0x70, 0x8E, 0x8E, 0x07, 0x89 .byte 0x94, 0x94, 0x33, 0xA7, 0x9B, 0x9B, 0x2D, 0xB6, 0x1E, 0x1E, 0x3C, 0x22, 0x87, 0x87, 0x15, 0x92 .byte 0xE9, 0xE9, 0xC9, 0x20, 0xCE, 0xCE, 0x87, 0x49, 0x55, 0x55, 0xAA, 0xFF, 0x28, 0x28, 0x50, 0x78 .byte 0xDF, 0xDF, 0xA5, 0x7A, 0x8C, 0x8C, 0x03, 0x8F, 0xA1, 0xA1, 0x59, 0xF8, 0x89, 0x89, 0x09, 0x80 .byte 0x0D, 0x0D, 0x1A, 0x17, 0xBF, 0xBF, 0x65, 0xDA, 0xE6, 0xE6, 0xD7, 0x31, 0x42, 0x42, 0x84, 0xC6 .byte 0x68, 0x68, 0xD0, 0xB8, 0x41, 0x41, 0x82, 0xC3, 0x99, 0x99, 0x29, 0xB0, 0x2D, 0x2D, 0x5A, 0x77 .byte 0x0F, 0x0F, 0x1E, 0x11, 0xB0, 0xB0, 0x7B, 0xCB, 0x54, 0x54, 0xA8, 0xFC, 0xBB, 0xBB, 0x6D, 0xD6 .byte 0x16, 0x16, 0x2C, 0x3A .global ov02_0235108C ov02_0235108C: .byte 0x63, 0xC6, 0xA5, 0x63, 0x7C, 0xF8, 0x84, 0x7C, 0x77, 0xEE, 0x99, 0x77 .byte 0x7B, 0xF6, 0x8D, 0x7B, 0xF2, 0xFF, 0x0D, 0xF2, 0x6B, 0xD6, 0xBD, 0x6B, 0x6F, 0xDE, 0xB1, 0x6F .byte 0xC5, 0x91, 0x54, 0xC5, 0x30, 0x60, 0x50, 0x30, 0x01, 0x02, 0x03, 0x01, 0x67, 0xCE, 0xA9, 0x67 .byte 0x2B, 0x56, 0x7D, 0x2B, 0xFE, 0xE7, 0x19, 0xFE, 0xD7, 0xB5, 0x62, 0xD7, 0xAB, 0x4D, 0xE6, 0xAB .byte 0x76, 0xEC, 0x9A, 0x76, 0xCA, 0x8F, 0x45, 0xCA, 0x82, 0x1F, 0x9D, 0x82, 0xC9, 0x89, 0x40, 0xC9 .byte 0x7D, 0xFA, 0x87, 0x7D, 0xFA, 0xEF, 0x15, 0xFA, 0x59, 0xB2, 0xEB, 0x59, 0x47, 0x8E, 0xC9, 0x47 .byte 0xF0, 0xFB, 0x0B, 0xF0, 0xAD, 0x41, 0xEC, 0xAD, 0xD4, 0xB3, 0x67, 0xD4, 0xA2, 0x5F, 0xFD, 0xA2 .byte 0xAF, 0x45, 0xEA, 0xAF, 0x9C, 0x23, 0xBF, 0x9C, 0xA4, 0x53, 0xF7, 0xA4, 0x72, 0xE4, 0x96, 0x72 .byte 0xC0, 0x9B, 0x5B, 0xC0, 0xB7, 0x75, 0xC2, 0xB7, 0xFD, 0xE1, 0x1C, 0xFD, 0x93, 0x3D, 0xAE, 0x93 .byte 0x26, 0x4C, 0x6A, 0x26, 0x36, 0x6C, 0x5A, 0x36, 0x3F, 0x7E, 0x41, 0x3F, 0xF7, 0xF5, 0x02, 0xF7 .byte 0xCC, 0x83, 0x4F, 0xCC, 0x34, 0x68, 0x5C, 0x34, 0xA5, 0x51, 0xF4, 0xA5, 0xE5, 0xD1, 0x34, 0xE5 .byte 0xF1, 0xF9, 0x08, 0xF1, 0x71, 0xE2, 0x93, 0x71, 0xD8, 0xAB, 0x73, 0xD8, 0x31, 0x62, 0x53, 0x31 .byte 0x15, 0x2A, 0x3F, 0x15, 0x04, 0x08, 0x0C, 0x04, 0xC7, 0x95, 0x52, 0xC7, 0x23, 0x46, 0x65, 0x23 .byte 0xC3, 0x9D, 0x5E, 0xC3, 0x18, 0x30, 0x28, 0x18, 0x96, 0x37, 0xA1, 0x96, 0x05, 0x0A, 0x0F, 0x05 .byte 0x9A, 0x2F, 0xB5, 0x9A, 0x07, 0x0E, 0x09, 0x07, 0x12, 0x24, 0x36, 0x12, 0x80, 0x1B, 0x9B, 0x80 .byte 0xE2, 0xDF, 0x3D, 0xE2, 0xEB, 0xCD, 0x26, 0xEB, 0x27, 0x4E, 0x69, 0x27, 0xB2, 0x7F, 0xCD, 0xB2 .byte 0x75, 0xEA, 0x9F, 0x75, 0x09, 0x12, 0x1B, 0x09, 0x83, 0x1D, 0x9E, 0x83, 0x2C, 0x58, 0x74, 0x2C .byte 0x1A, 0x34, 0x2E, 0x1A, 0x1B, 0x36, 0x2D, 0x1B, 0x6E, 0xDC, 0xB2, 0x6E, 0x5A, 0xB4, 0xEE, 0x5A .byte 0xA0, 0x5B, 0xFB, 0xA0, 0x52, 0xA4, 0xF6, 0x52, 0x3B, 0x76, 0x4D, 0x3B, 0xD6, 0xB7, 0x61, 0xD6 .byte 0xB3, 0x7D, 0xCE, 0xB3, 0x29, 0x52, 0x7B, 0x29, 0xE3, 0xDD, 0x3E, 0xE3, 0x2F, 0x5E, 0x71, 0x2F .byte 0x84, 0x13, 0x97, 0x84, 0x53, 0xA6, 0xF5, 0x53, 0xD1, 0xB9, 0x68, 0xD1, 0x00, 0x00, 0x00, 0x00 .byte 0xED, 0xC1, 0x2C, 0xED, 0x20, 0x40, 0x60, 0x20, 0xFC, 0xE3, 0x1F, 0xFC, 0xB1, 0x79, 0xC8, 0xB1 .byte 0x5B, 0xB6, 0xED, 0x5B, 0x6A, 0xD4, 0xBE, 0x6A, 0xCB, 0x8D, 0x46, 0xCB, 0xBE, 0x67, 0xD9, 0xBE .byte 0x39, 0x72, 0x4B, 0x39, 0x4A, 0x94, 0xDE, 0x4A, 0x4C, 0x98, 0xD4, 0x4C, 0x58, 0xB0, 0xE8, 0x58 .byte 0xCF, 0x85, 0x4A, 0xCF, 0xD0, 0xBB, 0x6B, 0xD0, 0xEF, 0xC5, 0x2A, 0xEF, 0xAA, 0x4F, 0xE5, 0xAA .byte 0xFB, 0xED, 0x16, 0xFB, 0x43, 0x86, 0xC5, 0x43, 0x4D, 0x9A, 0xD7, 0x4D, 0x33, 0x66, 0x55, 0x33 .byte 0x85, 0x11, 0x94, 0x85, 0x45, 0x8A, 0xCF, 0x45, 0xF9, 0xE9, 0x10, 0xF9, 0x02, 0x04, 0x06, 0x02 .byte 0x7F, 0xFE, 0x81, 0x7F, 0x50, 0xA0, 0xF0, 0x50, 0x3C, 0x78, 0x44, 0x3C, 0x9F, 0x25, 0xBA, 0x9F .byte 0xA8, 0x4B, 0xE3, 0xA8, 0x51, 0xA2, 0xF3, 0x51, 0xA3, 0x5D, 0xFE, 0xA3, 0x40, 0x80, 0xC0, 0x40 .byte 0x8F, 0x05, 0x8A, 0x8F, 0x92, 0x3F, 0xAD, 0x92, 0x9D, 0x21, 0xBC, 0x9D, 0x38, 0x70, 0x48, 0x38 .byte 0xF5, 0xF1, 0x04, 0xF5, 0xBC, 0x63, 0xDF, 0xBC, 0xB6, 0x77, 0xC1, 0xB6, 0xDA, 0xAF, 0x75, 0xDA .byte 0x21, 0x42, 0x63, 0x21, 0x10, 0x20, 0x30, 0x10, 0xFF, 0xE5, 0x1A, 0xFF, 0xF3, 0xFD, 0x0E, 0xF3 .byte 0xD2, 0xBF, 0x6D, 0xD2, 0xCD, 0x81, 0x4C, 0xCD, 0x0C, 0x18, 0x14, 0x0C, 0x13, 0x26, 0x35, 0x13 .byte 0xEC, 0xC3, 0x2F, 0xEC, 0x5F, 0xBE, 0xE1, 0x5F, 0x97, 0x35, 0xA2, 0x97, 0x44, 0x88, 0xCC, 0x44 .byte 0x17, 0x2E, 0x39, 0x17, 0xC4, 0x93, 0x57, 0xC4, 0xA7, 0x55, 0xF2, 0xA7, 0x7E, 0xFC, 0x82, 0x7E .byte 0x3D, 0x7A, 0x47, 0x3D, 0x64, 0xC8, 0xAC, 0x64, 0x5D, 0xBA, 0xE7, 0x5D, 0x19, 0x32, 0x2B, 0x19 .byte 0x73, 0xE6, 0x95, 0x73, 0x60, 0xC0, 0xA0, 0x60, 0x81, 0x19, 0x98, 0x81, 0x4F, 0x9E, 0xD1, 0x4F .byte 0xDC, 0xA3, 0x7F, 0xDC, 0x22, 0x44, 0x66, 0x22, 0x2A, 0x54, 0x7E, 0x2A, 0x90, 0x3B, 0xAB, 0x90 .byte 0x88, 0x0B, 0x83, 0x88, 0x46, 0x8C, 0xCA, 0x46, 0xEE, 0xC7, 0x29, 0xEE, 0xB8, 0x6B, 0xD3, 0xB8 .byte 0x14, 0x28, 0x3C, 0x14, 0xDE, 0xA7, 0x79, 0xDE, 0x5E, 0xBC, 0xE2, 0x5E, 0x0B, 0x16, 0x1D, 0x0B .byte 0xDB, 0xAD, 0x76, 0xDB, 0xE0, 0xDB, 0x3B, 0xE0, 0x32, 0x64, 0x56, 0x32, 0x3A, 0x74, 0x4E, 0x3A .byte 0x0A, 0x14, 0x1E, 0x0A, 0x49, 0x92, 0xDB, 0x49, 0x06, 0x0C, 0x0A, 0x06, 0x24, 0x48, 0x6C, 0x24 .byte 0x5C, 0xB8, 0xE4, 0x5C, 0xC2, 0x9F, 0x5D, 0xC2, 0xD3, 0xBD, 0x6E, 0xD3, 0xAC, 0x43, 0xEF, 0xAC .byte 0x62, 0xC4, 0xA6, 0x62, 0x91, 0x39, 0xA8, 0x91, 0x95, 0x31, 0xA4, 0x95, 0xE4, 0xD3, 0x37, 0xE4 .byte 0x79, 0xF2, 0x8B, 0x79, 0xE7, 0xD5, 0x32, 0xE7, 0xC8, 0x8B, 0x43, 0xC8, 0x37, 0x6E, 0x59, 0x37 .byte 0x6D, 0xDA, 0xB7, 0x6D, 0x8D, 0x01, 0x8C, 0x8D, 0xD5, 0xB1, 0x64, 0xD5, 0x4E, 0x9C, 0xD2, 0x4E .byte 0xA9, 0x49, 0xE0, 0xA9, 0x6C, 0xD8, 0xB4, 0x6C, 0x56, 0xAC, 0xFA, 0x56, 0xF4, 0xF3, 0x07, 0xF4 .byte 0xEA, 0xCF, 0x25, 0xEA, 0x65, 0xCA, 0xAF, 0x65, 0x7A, 0xF4, 0x8E, 0x7A, 0xAE, 0x47, 0xE9, 0xAE .byte 0x08, 0x10, 0x18, 0x08, 0xBA, 0x6F, 0xD5, 0xBA, 0x78, 0xF0, 0x88, 0x78, 0x25, 0x4A, 0x6F, 0x25 .byte 0x2E, 0x5C, 0x72, 0x2E, 0x1C, 0x38, 0x24, 0x1C, 0xA6, 0x57, 0xF1, 0xA6, 0xB4, 0x73, 0xC7, 0xB4 .byte 0xC6, 0x97, 0x51, 0xC6, 0xE8, 0xCB, 0x23, 0xE8, 0xDD, 0xA1, 0x7C, 0xDD, 0x74, 0xE8, 0x9C, 0x74 .byte 0x1F, 0x3E, 0x21, 0x1F, 0x4B, 0x96, 0xDD, 0x4B, 0xBD, 0x61, 0xDC, 0xBD, 0x8B, 0x0D, 0x86, 0x8B .byte 0x8A, 0x0F, 0x85, 0x8A, 0x70, 0xE0, 0x90, 0x70, 0x3E, 0x7C, 0x42, 0x3E, 0xB5, 0x71, 0xC4, 0xB5 .byte 0x66, 0xCC, 0xAA, 0x66, 0x48, 0x90, 0xD8, 0x48, 0x03, 0x06, 0x05, 0x03, 0xF6, 0xF7, 0x01, 0xF6 .byte 0x0E, 0x1C, 0x12, 0x0E, 0x61, 0xC2, 0xA3, 0x61, 0x35, 0x6A, 0x5F, 0x35, 0x57, 0xAE, 0xF9, 0x57 .byte 0xB9, 0x69, 0xD0, 0xB9, 0x86, 0x17, 0x91, 0x86, 0xC1, 0x99, 0x58, 0xC1, 0x1D, 0x3A, 0x27, 0x1D .byte 0x9E, 0x27, 0xB9, 0x9E, 0xE1, 0xD9, 0x38, 0xE1, 0xF8, 0xEB, 0x13, 0xF8, 0x98, 0x2B, 0xB3, 0x98 .byte 0x11, 0x22, 0x33, 0x11, 0x69, 0xD2, 0xBB, 0x69, 0xD9, 0xA9, 0x70, 0xD9, 0x8E, 0x07, 0x89, 0x8E .byte 0x94, 0x33, 0xA7, 0x94, 0x9B, 0x2D, 0xB6, 0x9B, 0x1E, 0x3C, 0x22, 0x1E, 0x87, 0x15, 0x92, 0x87 .byte 0xE9, 0xC9, 0x20, 0xE9, 0xCE, 0x87, 0x49, 0xCE, 0x55, 0xAA, 0xFF, 0x55, 0x28, 0x50, 0x78, 0x28 .byte 0xDF, 0xA5, 0x7A, 0xDF, 0x8C, 0x03, 0x8F, 0x8C, 0xA1, 0x59, 0xF8, 0xA1, 0x89, 0x09, 0x80, 0x89 .byte 0x0D, 0x1A, 0x17, 0x0D, 0xBF, 0x65, 0xDA, 0xBF, 0xE6, 0xD7, 0x31, 0xE6, 0x42, 0x84, 0xC6, 0x42 .byte 0x68, 0xD0, 0xB8, 0x68, 0x41, 0x82, 0xC3, 0x41, 0x99, 0x29, 0xB0, 0x99, 0x2D, 0x5A, 0x77, 0x2D .byte 0x0F, 0x1E, 0x11, 0x0F, 0xB0, 0x7B, 0xCB, 0xB0, 0x54, 0xA8, 0xFC, 0x54, 0xBB, 0x6D, 0xD6, 0xBB .byte 0x16, 0x2C, 0x3A, 0x16 .global ov02_0235148C ov02_0235148C: .byte 0xC6, 0xA5, 0x63, 0x63, 0xF8, 0x84, 0x7C, 0x7C, 0xEE, 0x99, 0x77, 0x77 .byte 0xF6, 0x8D, 0x7B, 0x7B, 0xFF, 0x0D, 0xF2, 0xF2, 0xD6, 0xBD, 0x6B, 0x6B, 0xDE, 0xB1, 0x6F, 0x6F .byte 0x91, 0x54, 0xC5, 0xC5, 0x60, 0x50, 0x30, 0x30, 0x02, 0x03, 0x01, 0x01, 0xCE, 0xA9, 0x67, 0x67 .byte 0x56, 0x7D, 0x2B, 0x2B, 0xE7, 0x19, 0xFE, 0xFE, 0xB5, 0x62, 0xD7, 0xD7, 0x4D, 0xE6, 0xAB, 0xAB .byte 0xEC, 0x9A, 0x76, 0x76, 0x8F, 0x45, 0xCA, 0xCA, 0x1F, 0x9D, 0x82, 0x82, 0x89, 0x40, 0xC9, 0xC9 .byte 0xFA, 0x87, 0x7D, 0x7D, 0xEF, 0x15, 0xFA, 0xFA, 0xB2, 0xEB, 0x59, 0x59, 0x8E, 0xC9, 0x47, 0x47 .byte 0xFB, 0x0B, 0xF0, 0xF0, 0x41, 0xEC, 0xAD, 0xAD, 0xB3, 0x67, 0xD4, 0xD4, 0x5F, 0xFD, 0xA2, 0xA2 .byte 0x45, 0xEA, 0xAF, 0xAF, 0x23, 0xBF, 0x9C, 0x9C, 0x53, 0xF7, 0xA4, 0xA4, 0xE4, 0x96, 0x72, 0x72 .byte 0x9B, 0x5B, 0xC0, 0xC0, 0x75, 0xC2, 0xB7, 0xB7, 0xE1, 0x1C, 0xFD, 0xFD, 0x3D, 0xAE, 0x93, 0x93 .byte 0x4C, 0x6A, 0x26, 0x26, 0x6C, 0x5A, 0x36, 0x36, 0x7E, 0x41, 0x3F, 0x3F, 0xF5, 0x02, 0xF7, 0xF7 .byte 0x83, 0x4F, 0xCC, 0xCC, 0x68, 0x5C, 0x34, 0x34, 0x51, 0xF4, 0xA5, 0xA5, 0xD1, 0x34, 0xE5, 0xE5 .byte 0xF9, 0x08, 0xF1, 0xF1, 0xE2, 0x93, 0x71, 0x71, 0xAB, 0x73, 0xD8, 0xD8, 0x62, 0x53, 0x31, 0x31 .byte 0x2A, 0x3F, 0x15, 0x15, 0x08, 0x0C, 0x04, 0x04, 0x95, 0x52, 0xC7, 0xC7, 0x46, 0x65, 0x23, 0x23 .byte 0x9D, 0x5E, 0xC3, 0xC3, 0x30, 0x28, 0x18, 0x18, 0x37, 0xA1, 0x96, 0x96, 0x0A, 0x0F, 0x05, 0x05 .byte 0x2F, 0xB5, 0x9A, 0x9A, 0x0E, 0x09, 0x07, 0x07, 0x24, 0x36, 0x12, 0x12, 0x1B, 0x9B, 0x80, 0x80 .byte 0xDF, 0x3D, 0xE2, 0xE2, 0xCD, 0x26, 0xEB, 0xEB, 0x4E, 0x69, 0x27, 0x27, 0x7F, 0xCD, 0xB2, 0xB2 .byte 0xEA, 0x9F, 0x75, 0x75, 0x12, 0x1B, 0x09, 0x09, 0x1D, 0x9E, 0x83, 0x83, 0x58, 0x74, 0x2C, 0x2C .byte 0x34, 0x2E, 0x1A, 0x1A, 0x36, 0x2D, 0x1B, 0x1B, 0xDC, 0xB2, 0x6E, 0x6E, 0xB4, 0xEE, 0x5A, 0x5A .byte 0x5B, 0xFB, 0xA0, 0xA0, 0xA4, 0xF6, 0x52, 0x52, 0x76, 0x4D, 0x3B, 0x3B, 0xB7, 0x61, 0xD6, 0xD6 .byte 0x7D, 0xCE, 0xB3, 0xB3, 0x52, 0x7B, 0x29, 0x29, 0xDD, 0x3E, 0xE3, 0xE3, 0x5E, 0x71, 0x2F, 0x2F .byte 0x13, 0x97, 0x84, 0x84, 0xA6, 0xF5, 0x53, 0x53, 0xB9, 0x68, 0xD1, 0xD1, 0x00, 0x00, 0x00, 0x00 .byte 0xC1, 0x2C, 0xED, 0xED, 0x40, 0x60, 0x20, 0x20, 0xE3, 0x1F, 0xFC, 0xFC, 0x79, 0xC8, 0xB1, 0xB1 .byte 0xB6, 0xED, 0x5B, 0x5B, 0xD4, 0xBE, 0x6A, 0x6A, 0x8D, 0x46, 0xCB, 0xCB, 0x67, 0xD9, 0xBE, 0xBE .byte 0x72, 0x4B, 0x39, 0x39, 0x94, 0xDE, 0x4A, 0x4A, 0x98, 0xD4, 0x4C, 0x4C, 0xB0, 0xE8, 0x58, 0x58 .byte 0x85, 0x4A, 0xCF, 0xCF, 0xBB, 0x6B, 0xD0, 0xD0, 0xC5, 0x2A, 0xEF, 0xEF, 0x4F, 0xE5, 0xAA, 0xAA .byte 0xED, 0x16, 0xFB, 0xFB, 0x86, 0xC5, 0x43, 0x43, 0x9A, 0xD7, 0x4D, 0x4D, 0x66, 0x55, 0x33, 0x33 .byte 0x11, 0x94, 0x85, 0x85, 0x8A, 0xCF, 0x45, 0x45, 0xE9, 0x10, 0xF9, 0xF9, 0x04, 0x06, 0x02, 0x02 .byte 0xFE, 0x81, 0x7F, 0x7F, 0xA0, 0xF0, 0x50, 0x50, 0x78, 0x44, 0x3C, 0x3C, 0x25, 0xBA, 0x9F, 0x9F .byte 0x4B, 0xE3, 0xA8, 0xA8, 0xA2, 0xF3, 0x51, 0x51, 0x5D, 0xFE, 0xA3, 0xA3, 0x80, 0xC0, 0x40, 0x40 .byte 0x05, 0x8A, 0x8F, 0x8F, 0x3F, 0xAD, 0x92, 0x92, 0x21, 0xBC, 0x9D, 0x9D, 0x70, 0x48, 0x38, 0x38 .byte 0xF1, 0x04, 0xF5, 0xF5, 0x63, 0xDF, 0xBC, 0xBC, 0x77, 0xC1, 0xB6, 0xB6, 0xAF, 0x75, 0xDA, 0xDA .byte 0x42, 0x63, 0x21, 0x21, 0x20, 0x30, 0x10, 0x10, 0xE5, 0x1A, 0xFF, 0xFF, 0xFD, 0x0E, 0xF3, 0xF3 .byte 0xBF, 0x6D, 0xD2, 0xD2, 0x81, 0x4C, 0xCD, 0xCD, 0x18, 0x14, 0x0C, 0x0C, 0x26, 0x35, 0x13, 0x13 .byte 0xC3, 0x2F, 0xEC, 0xEC, 0xBE, 0xE1, 0x5F, 0x5F, 0x35, 0xA2, 0x97, 0x97, 0x88, 0xCC, 0x44, 0x44 .byte 0x2E, 0x39, 0x17, 0x17, 0x93, 0x57, 0xC4, 0xC4, 0x55, 0xF2, 0xA7, 0xA7, 0xFC, 0x82, 0x7E, 0x7E .byte 0x7A, 0x47, 0x3D, 0x3D, 0xC8, 0xAC, 0x64, 0x64, 0xBA, 0xE7, 0x5D, 0x5D, 0x32, 0x2B, 0x19, 0x19 .byte 0xE6, 0x95, 0x73, 0x73, 0xC0, 0xA0, 0x60, 0x60, 0x19, 0x98, 0x81, 0x81, 0x9E, 0xD1, 0x4F, 0x4F .byte 0xA3, 0x7F, 0xDC, 0xDC, 0x44, 0x66, 0x22, 0x22, 0x54, 0x7E, 0x2A, 0x2A, 0x3B, 0xAB, 0x90, 0x90 .byte 0x0B, 0x83, 0x88, 0x88, 0x8C, 0xCA, 0x46, 0x46, 0xC7, 0x29, 0xEE, 0xEE, 0x6B, 0xD3, 0xB8, 0xB8 .byte 0x28, 0x3C, 0x14, 0x14, 0xA7, 0x79, 0xDE, 0xDE, 0xBC, 0xE2, 0x5E, 0x5E, 0x16, 0x1D, 0x0B, 0x0B .byte 0xAD, 0x76, 0xDB, 0xDB, 0xDB, 0x3B, 0xE0, 0xE0, 0x64, 0x56, 0x32, 0x32, 0x74, 0x4E, 0x3A, 0x3A .byte 0x14, 0x1E, 0x0A, 0x0A, 0x92, 0xDB, 0x49, 0x49, 0x0C, 0x0A, 0x06, 0x06, 0x48, 0x6C, 0x24, 0x24 .byte 0xB8, 0xE4, 0x5C, 0x5C, 0x9F, 0x5D, 0xC2, 0xC2, 0xBD, 0x6E, 0xD3, 0xD3, 0x43, 0xEF, 0xAC, 0xAC .byte 0xC4, 0xA6, 0x62, 0x62, 0x39, 0xA8, 0x91, 0x91, 0x31, 0xA4, 0x95, 0x95, 0xD3, 0x37, 0xE4, 0xE4 .byte 0xF2, 0x8B, 0x79, 0x79, 0xD5, 0x32, 0xE7, 0xE7, 0x8B, 0x43, 0xC8, 0xC8, 0x6E, 0x59, 0x37, 0x37 .byte 0xDA, 0xB7, 0x6D, 0x6D, 0x01, 0x8C, 0x8D, 0x8D, 0xB1, 0x64, 0xD5, 0xD5, 0x9C, 0xD2, 0x4E, 0x4E .byte 0x49, 0xE0, 0xA9, 0xA9, 0xD8, 0xB4, 0x6C, 0x6C, 0xAC, 0xFA, 0x56, 0x56, 0xF3, 0x07, 0xF4, 0xF4 .byte 0xCF, 0x25, 0xEA, 0xEA, 0xCA, 0xAF, 0x65, 0x65, 0xF4, 0x8E, 0x7A, 0x7A, 0x47, 0xE9, 0xAE, 0xAE .byte 0x10, 0x18, 0x08, 0x08, 0x6F, 0xD5, 0xBA, 0xBA, 0xF0, 0x88, 0x78, 0x78, 0x4A, 0x6F, 0x25, 0x25 .byte 0x5C, 0x72, 0x2E, 0x2E, 0x38, 0x24, 0x1C, 0x1C, 0x57, 0xF1, 0xA6, 0xA6, 0x73, 0xC7, 0xB4, 0xB4 .byte 0x97, 0x51, 0xC6, 0xC6, 0xCB, 0x23, 0xE8, 0xE8, 0xA1, 0x7C, 0xDD, 0xDD, 0xE8, 0x9C, 0x74, 0x74 .byte 0x3E, 0x21, 0x1F, 0x1F, 0x96, 0xDD, 0x4B, 0x4B, 0x61, 0xDC, 0xBD, 0xBD, 0x0D, 0x86, 0x8B, 0x8B .byte 0x0F, 0x85, 0x8A, 0x8A, 0xE0, 0x90, 0x70, 0x70, 0x7C, 0x42, 0x3E, 0x3E, 0x71, 0xC4, 0xB5, 0xB5 .byte 0xCC, 0xAA, 0x66, 0x66, 0x90, 0xD8, 0x48, 0x48, 0x06, 0x05, 0x03, 0x03, 0xF7, 0x01, 0xF6, 0xF6 .byte 0x1C, 0x12, 0x0E, 0x0E, 0xC2, 0xA3, 0x61, 0x61, 0x6A, 0x5F, 0x35, 0x35, 0xAE, 0xF9, 0x57, 0x57 .byte 0x69, 0xD0, 0xB9, 0xB9, 0x17, 0x91, 0x86, 0x86, 0x99, 0x58, 0xC1, 0xC1, 0x3A, 0x27, 0x1D, 0x1D .byte 0x27, 0xB9, 0x9E, 0x9E, 0xD9, 0x38, 0xE1, 0xE1, 0xEB, 0x13, 0xF8, 0xF8, 0x2B, 0xB3, 0x98, 0x98 .byte 0x22, 0x33, 0x11, 0x11, 0xD2, 0xBB, 0x69, 0x69, 0xA9, 0x70, 0xD9, 0xD9, 0x07, 0x89, 0x8E, 0x8E .byte 0x33, 0xA7, 0x94, 0x94, 0x2D, 0xB6, 0x9B, 0x9B, 0x3C, 0x22, 0x1E, 0x1E, 0x15, 0x92, 0x87, 0x87 .byte 0xC9, 0x20, 0xE9, 0xE9, 0x87, 0x49, 0xCE, 0xCE, 0xAA, 0xFF, 0x55, 0x55, 0x50, 0x78, 0x28, 0x28 .byte 0xA5, 0x7A, 0xDF, 0xDF, 0x03, 0x8F, 0x8C, 0x8C, 0x59, 0xF8, 0xA1, 0xA1, 0x09, 0x80, 0x89, 0x89 .byte 0x1A, 0x17, 0x0D, 0x0D, 0x65, 0xDA, 0xBF, 0xBF, 0xD7, 0x31, 0xE6, 0xE6, 0x84, 0xC6, 0x42, 0x42 .byte 0xD0, 0xB8, 0x68, 0x68, 0x82, 0xC3, 0x41, 0x41, 0x29, 0xB0, 0x99, 0x99, 0x5A, 0x77, 0x2D, 0x2D .byte 0x1E, 0x11, 0x0F, 0x0F, 0x7B, 0xCB, 0xB0, 0xB0, 0xA8, 0xFC, 0x54, 0x54, 0x6D, 0xD6, 0xBB, 0xBB .byte 0x2C, 0x3A, 0x16, 0x16 .global ov02_0235188C ov02_0235188C: .byte 0x63, 0x63, 0x63, 0x63, 0x7C, 0x7C, 0x7C, 0x7C, 0x77, 0x77, 0x77, 0x77 .byte 0x7B, 0x7B, 0x7B, 0x7B, 0xF2, 0xF2, 0xF2, 0xF2, 0x6B, 0x6B, 0x6B, 0x6B, 0x6F, 0x6F, 0x6F, 0x6F .byte 0xC5, 0xC5, 0xC5, 0xC5, 0x30, 0x30, 0x30, 0x30, 0x01, 0x01, 0x01, 0x01, 0x67, 0x67, 0x67, 0x67 .byte 0x2B, 0x2B, 0x2B, 0x2B, 0xFE, 0xFE, 0xFE, 0xFE, 0xD7, 0xD7, 0xD7, 0xD7, 0xAB, 0xAB, 0xAB, 0xAB .byte 0x76, 0x76, 0x76, 0x76, 0xCA, 0xCA, 0xCA, 0xCA, 0x82, 0x82, 0x82, 0x82, 0xC9, 0xC9, 0xC9, 0xC9 .byte 0x7D, 0x7D, 0x7D, 0x7D, 0xFA, 0xFA, 0xFA, 0xFA, 0x59, 0x59, 0x59, 0x59, 0x47, 0x47, 0x47, 0x47 .byte 0xF0, 0xF0, 0xF0, 0xF0, 0xAD, 0xAD, 0xAD, 0xAD, 0xD4, 0xD4, 0xD4, 0xD4, 0xA2, 0xA2, 0xA2, 0xA2 .byte 0xAF, 0xAF, 0xAF, 0xAF, 0x9C, 0x9C, 0x9C, 0x9C, 0xA4, 0xA4, 0xA4, 0xA4, 0x72, 0x72, 0x72, 0x72 .byte 0xC0, 0xC0, 0xC0, 0xC0, 0xB7, 0xB7, 0xB7, 0xB7, 0xFD, 0xFD, 0xFD, 0xFD, 0x93, 0x93, 0x93, 0x93 .byte 0x26, 0x26, 0x26, 0x26, 0x36, 0x36, 0x36, 0x36, 0x3F, 0x3F, 0x3F, 0x3F, 0xF7, 0xF7, 0xF7, 0xF7 .byte 0xCC, 0xCC, 0xCC, 0xCC, 0x34, 0x34, 0x34, 0x34, 0xA5, 0xA5, 0xA5, 0xA5, 0xE5, 0xE5, 0xE5, 0xE5 .byte 0xF1, 0xF1, 0xF1, 0xF1, 0x71, 0x71, 0x71, 0x71, 0xD8, 0xD8, 0xD8, 0xD8, 0x31, 0x31, 0x31, 0x31 .byte 0x15, 0x15, 0x15, 0x15, 0x04, 0x04, 0x04, 0x04, 0xC7, 0xC7, 0xC7, 0xC7, 0x23, 0x23, 0x23, 0x23 .byte 0xC3, 0xC3, 0xC3, 0xC3, 0x18, 0x18, 0x18, 0x18, 0x96, 0x96, 0x96, 0x96, 0x05, 0x05, 0x05, 0x05 .byte 0x9A, 0x9A, 0x9A, 0x9A, 0x07, 0x07, 0x07, 0x07, 0x12, 0x12, 0x12, 0x12, 0x80, 0x80, 0x80, 0x80 .byte 0xE2, 0xE2, 0xE2, 0xE2, 0xEB, 0xEB, 0xEB, 0xEB, 0x27, 0x27, 0x27, 0x27, 0xB2, 0xB2, 0xB2, 0xB2 .byte 0x75, 0x75, 0x75, 0x75, 0x09, 0x09, 0x09, 0x09, 0x83, 0x83, 0x83, 0x83, 0x2C, 0x2C, 0x2C, 0x2C .byte 0x1A, 0x1A, 0x1A, 0x1A, 0x1B, 0x1B, 0x1B, 0x1B, 0x6E, 0x6E, 0x6E, 0x6E, 0x5A, 0x5A, 0x5A, 0x5A .byte 0xA0, 0xA0, 0xA0, 0xA0, 0x52, 0x52, 0x52, 0x52, 0x3B, 0x3B, 0x3B, 0x3B, 0xD6, 0xD6, 0xD6, 0xD6 .byte 0xB3, 0xB3, 0xB3, 0xB3, 0x29, 0x29, 0x29, 0x29, 0xE3, 0xE3, 0xE3, 0xE3, 0x2F, 0x2F, 0x2F, 0x2F .byte 0x84, 0x84, 0x84, 0x84, 0x53, 0x53, 0x53, 0x53, 0xD1, 0xD1, 0xD1, 0xD1, 0x00, 0x00, 0x00, 0x00 .byte 0xED, 0xED, 0xED, 0xED, 0x20, 0x20, 0x20, 0x20, 0xFC, 0xFC, 0xFC, 0xFC, 0xB1, 0xB1, 0xB1, 0xB1 .byte 0x5B, 0x5B, 0x5B, 0x5B, 0x6A, 0x6A, 0x6A, 0x6A, 0xCB, 0xCB, 0xCB, 0xCB, 0xBE, 0xBE, 0xBE, 0xBE .byte 0x39, 0x39, 0x39, 0x39, 0x4A, 0x4A, 0x4A, 0x4A, 0x4C, 0x4C, 0x4C, 0x4C, 0x58, 0x58, 0x58, 0x58 .byte 0xCF, 0xCF, 0xCF, 0xCF, 0xD0, 0xD0, 0xD0, 0xD0, 0xEF, 0xEF, 0xEF, 0xEF, 0xAA, 0xAA, 0xAA, 0xAA .byte 0xFB, 0xFB, 0xFB, 0xFB, 0x43, 0x43, 0x43, 0x43, 0x4D, 0x4D, 0x4D, 0x4D, 0x33, 0x33, 0x33, 0x33 .byte 0x85, 0x85, 0x85, 0x85, 0x45, 0x45, 0x45, 0x45, 0xF9, 0xF9, 0xF9, 0xF9, 0x02, 0x02, 0x02, 0x02 .byte 0x7F, 0x7F, 0x7F, 0x7F, 0x50, 0x50, 0x50, 0x50, 0x3C, 0x3C, 0x3C, 0x3C, 0x9F, 0x9F, 0x9F, 0x9F .byte 0xA8, 0xA8, 0xA8, 0xA8, 0x51, 0x51, 0x51, 0x51, 0xA3, 0xA3, 0xA3, 0xA3, 0x40, 0x40, 0x40, 0x40 .byte 0x8F, 0x8F, 0x8F, 0x8F, 0x92, 0x92, 0x92, 0x92, 0x9D, 0x9D, 0x9D, 0x9D, 0x38, 0x38, 0x38, 0x38 .byte 0xF5, 0xF5, 0xF5, 0xF5, 0xBC, 0xBC, 0xBC, 0xBC, 0xB6, 0xB6, 0xB6, 0xB6, 0xDA, 0xDA, 0xDA, 0xDA .byte 0x21, 0x21, 0x21, 0x21, 0x10, 0x10, 0x10, 0x10, 0xFF, 0xFF, 0xFF, 0xFF, 0xF3, 0xF3, 0xF3, 0xF3 .byte 0xD2, 0xD2, 0xD2, 0xD2, 0xCD, 0xCD, 0xCD, 0xCD, 0x0C, 0x0C, 0x0C, 0x0C, 0x13, 0x13, 0x13, 0x13 .byte 0xEC, 0xEC, 0xEC, 0xEC, 0x5F, 0x5F, 0x5F, 0x5F, 0x97, 0x97, 0x97, 0x97, 0x44, 0x44, 0x44, 0x44 .byte 0x17, 0x17, 0x17, 0x17, 0xC4, 0xC4, 0xC4, 0xC4, 0xA7, 0xA7, 0xA7, 0xA7, 0x7E, 0x7E, 0x7E, 0x7E .byte 0x3D, 0x3D, 0x3D, 0x3D, 0x64, 0x64, 0x64, 0x64, 0x5D, 0x5D, 0x5D, 0x5D, 0x19, 0x19, 0x19, 0x19 .byte 0x73, 0x73, 0x73, 0x73, 0x60, 0x60, 0x60, 0x60, 0x81, 0x81, 0x81, 0x81, 0x4F, 0x4F, 0x4F, 0x4F .byte 0xDC, 0xDC, 0xDC, 0xDC, 0x22, 0x22, 0x22, 0x22, 0x2A, 0x2A, 0x2A, 0x2A, 0x90, 0x90, 0x90, 0x90 .byte 0x88, 0x88, 0x88, 0x88, 0x46, 0x46, 0x46, 0x46, 0xEE, 0xEE, 0xEE, 0xEE, 0xB8, 0xB8, 0xB8, 0xB8 .byte 0x14, 0x14, 0x14, 0x14, 0xDE, 0xDE, 0xDE, 0xDE, 0x5E, 0x5E, 0x5E, 0x5E, 0x0B, 0x0B, 0x0B, 0x0B .byte 0xDB, 0xDB, 0xDB, 0xDB, 0xE0, 0xE0, 0xE0, 0xE0, 0x32, 0x32, 0x32, 0x32, 0x3A, 0x3A, 0x3A, 0x3A .byte 0x0A, 0x0A, 0x0A, 0x0A, 0x49, 0x49, 0x49, 0x49, 0x06, 0x06, 0x06, 0x06, 0x24, 0x24, 0x24, 0x24 .byte 0x5C, 0x5C, 0x5C, 0x5C, 0xC2, 0xC2, 0xC2, 0xC2, 0xD3, 0xD3, 0xD3, 0xD3, 0xAC, 0xAC, 0xAC, 0xAC .byte 0x62, 0x62, 0x62, 0x62, 0x91, 0x91, 0x91, 0x91, 0x95, 0x95, 0x95, 0x95, 0xE4, 0xE4, 0xE4, 0xE4 .byte 0x79, 0x79, 0x79, 0x79, 0xE7, 0xE7, 0xE7, 0xE7, 0xC8, 0xC8, 0xC8, 0xC8, 0x37, 0x37, 0x37, 0x37 .byte 0x6D, 0x6D, 0x6D, 0x6D, 0x8D, 0x8D, 0x8D, 0x8D, 0xD5, 0xD5, 0xD5, 0xD5, 0x4E, 0x4E, 0x4E, 0x4E .byte 0xA9, 0xA9, 0xA9, 0xA9, 0x6C, 0x6C, 0x6C, 0x6C, 0x56, 0x56, 0x56, 0x56, 0xF4, 0xF4, 0xF4, 0xF4 .byte 0xEA, 0xEA, 0xEA, 0xEA, 0x65, 0x65, 0x65, 0x65, 0x7A, 0x7A, 0x7A, 0x7A, 0xAE, 0xAE, 0xAE, 0xAE .byte 0x08, 0x08, 0x08, 0x08, 0xBA, 0xBA, 0xBA, 0xBA, 0x78, 0x78, 0x78, 0x78, 0x25, 0x25, 0x25, 0x25 .byte 0x2E, 0x2E, 0x2E, 0x2E, 0x1C, 0x1C, 0x1C, 0x1C, 0xA6, 0xA6, 0xA6, 0xA6, 0xB4, 0xB4, 0xB4, 0xB4 .byte 0xC6, 0xC6, 0xC6, 0xC6, 0xE8, 0xE8, 0xE8, 0xE8, 0xDD, 0xDD, 0xDD, 0xDD, 0x74, 0x74, 0x74, 0x74 .byte 0x1F, 0x1F, 0x1F, 0x1F, 0x4B, 0x4B, 0x4B, 0x4B, 0xBD, 0xBD, 0xBD, 0xBD, 0x8B, 0x8B, 0x8B, 0x8B .byte 0x8A, 0x8A, 0x8A, 0x8A, 0x70, 0x70, 0x70, 0x70, 0x3E, 0x3E, 0x3E, 0x3E, 0xB5, 0xB5, 0xB5, 0xB5 .byte 0x66, 0x66, 0x66, 0x66, 0x48, 0x48, 0x48, 0x48, 0x03, 0x03, 0x03, 0x03, 0xF6, 0xF6, 0xF6, 0xF6 .byte 0x0E, 0x0E, 0x0E, 0x0E, 0x61, 0x61, 0x61, 0x61, 0x35, 0x35, 0x35, 0x35, 0x57, 0x57, 0x57, 0x57 .byte 0xB9, 0xB9, 0xB9, 0xB9, 0x86, 0x86, 0x86, 0x86, 0xC1, 0xC1, 0xC1, 0xC1, 0x1D, 0x1D, 0x1D, 0x1D .byte 0x9E, 0x9E, 0x9E, 0x9E, 0xE1, 0xE1, 0xE1, 0xE1, 0xF8, 0xF8, 0xF8, 0xF8, 0x98, 0x98, 0x98, 0x98 .byte 0x11, 0x11, 0x11, 0x11, 0x69, 0x69, 0x69, 0x69, 0xD9, 0xD9, 0xD9, 0xD9, 0x8E, 0x8E, 0x8E, 0x8E .byte 0x94, 0x94, 0x94, 0x94, 0x9B, 0x9B, 0x9B, 0x9B, 0x1E, 0x1E, 0x1E, 0x1E, 0x87, 0x87, 0x87, 0x87 .byte 0xE9, 0xE9, 0xE9, 0xE9, 0xCE, 0xCE, 0xCE, 0xCE, 0x55, 0x55, 0x55, 0x55, 0x28, 0x28, 0x28, 0x28 .byte 0xDF, 0xDF, 0xDF, 0xDF, 0x8C, 0x8C, 0x8C, 0x8C, 0xA1, 0xA1, 0xA1, 0xA1, 0x89, 0x89, 0x89, 0x89 .byte 0x0D, 0x0D, 0x0D, 0x0D, 0xBF, 0xBF, 0xBF, 0xBF, 0xE6, 0xE6, 0xE6, 0xE6, 0x42, 0x42, 0x42, 0x42 .byte 0x68, 0x68, 0x68, 0x68, 0x41, 0x41, 0x41, 0x41, 0x99, 0x99, 0x99, 0x99, 0x2D, 0x2D, 0x2D, 0x2D .byte 0x0F, 0x0F, 0x0F, 0x0F, 0xB0, 0xB0, 0xB0, 0xB0, 0x54, 0x54, 0x54, 0x54, 0xBB, 0xBB, 0xBB, 0xBB .byte 0x16, 0x16, 0x16, 0x16 .global ov02_02351C8C ov02_02351C8C: .byte 0x50, 0xA7, 0xF4, 0x51, 0x53, 0x65, 0x41, 0x7E, 0xC3, 0xA4, 0x17, 0x1A .byte 0x96, 0x5E, 0x27, 0x3A, 0xCB, 0x6B, 0xAB, 0x3B, 0xF1, 0x45, 0x9D, 0x1F, 0xAB, 0x58, 0xFA, 0xAC .byte 0x93, 0x03, 0xE3, 0x4B, 0x55, 0xFA, 0x30, 0x20, 0xF6, 0x6D, 0x76, 0xAD, 0x91, 0x76, 0xCC, 0x88 .byte 0x25, 0x4C, 0x02, 0xF5, 0xFC, 0xD7, 0xE5, 0x4F, 0xD7, 0xCB, 0x2A, 0xC5, 0x80, 0x44, 0x35, 0x26 .byte 0x8F, 0xA3, 0x62, 0xB5, 0x49, 0x5A, 0xB1, 0xDE, 0x67, 0x1B, 0xBA, 0x25, 0x98, 0x0E, 0xEA, 0x45 .byte 0xE1, 0xC0, 0xFE, 0x5D, 0x02, 0x75, 0x2F, 0xC3, 0x12, 0xF0, 0x4C, 0x81, 0xA3, 0x97, 0x46, 0x8D .byte 0xC6, 0xF9, 0xD3, 0x6B, 0xE7, 0x5F, 0x8F, 0x03, 0x95, 0x9C, 0x92, 0x15, 0xEB, 0x7A, 0x6D, 0xBF .byte 0xDA, 0x59, 0x52, 0x95, 0x2D, 0x83, 0xBE, 0xD4, 0xD3, 0x21, 0x74, 0x58, 0x29, 0x69, 0xE0, 0x49 .byte 0x44, 0xC8, 0xC9, 0x8E, 0x6A, 0x89, 0xC2, 0x75, 0x78, 0x79, 0x8E, 0xF4, 0x6B, 0x3E, 0x58, 0x99 .byte 0xDD, 0x71, 0xB9, 0x27, 0xB6, 0x4F, 0xE1, 0xBE, 0x17, 0xAD, 0x88, 0xF0, 0x66, 0xAC, 0x20, 0xC9 .byte 0xB4, 0x3A, 0xCE, 0x7D, 0x18, 0x4A, 0xDF, 0x63, 0x82, 0x31, 0x1A, 0xE5, 0x60, 0x33, 0x51, 0x97 .byte 0x45, 0x7F, 0x53, 0x62, 0xE0, 0x77, 0x64, 0xB1, 0x84, 0xAE, 0x6B, 0xBB, 0x1C, 0xA0, 0x81, 0xFE .byte 0x94, 0x2B, 0x08, 0xF9, 0x58, 0x68, 0x48, 0x70, 0x19, 0xFD, 0x45, 0x8F, 0x87, 0x6C, 0xDE, 0x94 .byte 0xB7, 0xF8, 0x7B, 0x52, 0x23, 0xD3, 0x73, 0xAB, 0xE2, 0x02, 0x4B, 0x72, 0x57, 0x8F, 0x1F, 0xE3 .byte 0x2A, 0xAB, 0x55, 0x66, 0x07, 0x28, 0xEB, 0xB2, 0x03, 0xC2, 0xB5, 0x2F, 0x9A, 0x7B, 0xC5, 0x86 .byte 0xA5, 0x08, 0x37, 0xD3, 0xF2, 0x87, 0x28, 0x30, 0xB2, 0xA5, 0xBF, 0x23, 0xBA, 0x6A, 0x03, 0x02 .byte 0x5C, 0x82, 0x16, 0xED, 0x2B, 0x1C, 0xCF, 0x8A, 0x92, 0xB4, 0x79, 0xA7, 0xF0, 0xF2, 0x07, 0xF3 .byte 0xA1, 0xE2, 0x69, 0x4E, 0xCD, 0xF4, 0xDA, 0x65, 0xD5, 0xBE, 0x05, 0x06, 0x1F, 0x62, 0x34, 0xD1 .byte 0x8A, 0xFE, 0xA6, 0xC4, 0x9D, 0x53, 0x2E, 0x34, 0xA0, 0x55, 0xF3, 0xA2, 0x32, 0xE1, 0x8A, 0x05 .byte 0x75, 0xEB, 0xF6, 0xA4, 0x39, 0xEC, 0x83, 0x0B, 0xAA, 0xEF, 0x60, 0x40, 0x06, 0x9F, 0x71, 0x5E .byte 0x51, 0x10, 0x6E, 0xBD, 0xF9, 0x8A, 0x21, 0x3E, 0x3D, 0x06, 0xDD, 0x96, 0xAE, 0x05, 0x3E, 0xDD .byte 0x46, 0xBD, 0xE6, 0x4D, 0xB5, 0x8D, 0x54, 0x91, 0x05, 0x5D, 0xC4, 0x71, 0x6F, 0xD4, 0x06, 0x04 .byte 0xFF, 0x15, 0x50, 0x60, 0x24, 0xFB, 0x98, 0x19, 0x97, 0xE9, 0xBD, 0xD6, 0xCC, 0x43, 0x40, 0x89 .byte 0x77, 0x9E, 0xD9, 0x67, 0xBD, 0x42, 0xE8, 0xB0, 0x88, 0x8B, 0x89, 0x07, 0x38, 0x5B, 0x19, 0xE7 .byte 0xDB, 0xEE, 0xC8, 0x79, 0x47, 0x0A, 0x7C, 0xA1, 0xE9, 0x0F, 0x42, 0x7C, 0xC9, 0x1E, 0x84, 0xF8 .byte 0x00, 0x00, 0x00, 0x00, 0x83, 0x86, 0x80, 0x09, 0x48, 0xED, 0x2B, 0x32, 0xAC, 0x70, 0x11, 0x1E .byte 0x4E, 0x72, 0x5A, 0x6C, 0xFB, 0xFF, 0x0E, 0xFD, 0x56, 0x38, 0x85, 0x0F, 0x1E, 0xD5, 0xAE, 0x3D .byte 0x27, 0x39, 0x2D, 0x36, 0x64, 0xD9, 0x0F, 0x0A, 0x21, 0xA6, 0x5C, 0x68, 0xD1, 0x54, 0x5B, 0x9B .byte 0x3A, 0x2E, 0x36, 0x24, 0xB1, 0x67, 0x0A, 0x0C, 0x0F, 0xE7, 0x57, 0x93, 0xD2, 0x96, 0xEE, 0xB4 .byte 0x9E, 0x91, 0x9B, 0x1B, 0x4F, 0xC5, 0xC0, 0x80, 0xA2, 0x20, 0xDC, 0x61, 0x69, 0x4B, 0x77, 0x5A .byte 0x16, 0x1A, 0x12, 0x1C, 0x0A, 0xBA, 0x93, 0xE2, 0xE5, 0x2A, 0xA0, 0xC0, 0x43, 0xE0, 0x22, 0x3C .byte 0x1D, 0x17, 0x1B, 0x12, 0x0B, 0x0D, 0x09, 0x0E, 0xAD, 0xC7, 0x8B, 0xF2, 0xB9, 0xA8, 0xB6, 0x2D .byte 0xC8, 0xA9, 0x1E, 0x14, 0x85, 0x19, 0xF1, 0x57, 0x4C, 0x07, 0x75, 0xAF, 0xBB, 0xDD, 0x99, 0xEE .byte 0xFD, 0x60, 0x7F, 0xA3, 0x9F, 0x26, 0x01, 0xF7, 0xBC, 0xF5, 0x72, 0x5C, 0xC5, 0x3B, 0x66, 0x44 .byte 0x34, 0x7E, 0xFB, 0x5B, 0x76, 0x29, 0x43, 0x8B, 0xDC, 0xC6, 0x23, 0xCB, 0x68, 0xFC, 0xED, 0xB6 .byte 0x63, 0xF1, 0xE4, 0xB8, 0xCA, 0xDC, 0x31, 0xD7, 0x10, 0x85, 0x63, 0x42, 0x40, 0x22, 0x97, 0x13 .byte 0x20, 0x11, 0xC6, 0x84, 0x7D, 0x24, 0x4A, 0x85, 0xF8, 0x3D, 0xBB, 0xD2, 0x11, 0x32, 0xF9, 0xAE .byte 0x6D, 0xA1, 0x29, 0xC7, 0x4B, 0x2F, 0x9E, 0x1D, 0xF3, 0x30, 0xB2, 0xDC, 0xEC, 0x52, 0x86, 0x0D .byte 0xD0, 0xE3, 0xC1, 0x77, 0x6C, 0x16, 0xB3, 0x2B, 0x99, 0xB9, 0x70, 0xA9, 0xFA, 0x48, 0x94, 0x11 .byte 0x22, 0x64, 0xE9, 0x47, 0xC4, 0x8C, 0xFC, 0xA8, 0x1A, 0x3F, 0xF0, 0xA0, 0xD8, 0x2C, 0x7D, 0x56 .byte 0xEF, 0x90, 0x33, 0x22, 0xC7, 0x4E, 0x49, 0x87, 0xC1, 0xD1, 0x38, 0xD9, 0xFE, 0xA2, 0xCA, 0x8C .byte 0x36, 0x0B, 0xD4, 0x98, 0xCF, 0x81, 0xF5, 0xA6, 0x28, 0xDE, 0x7A, 0xA5, 0x26, 0x8E, 0xB7, 0xDA .byte 0xA4, 0xBF, 0xAD, 0x3F, 0xE4, 0x9D, 0x3A, 0x2C, 0x0D, 0x92, 0x78, 0x50, 0x9B, 0xCC, 0x5F, 0x6A .byte 0x62, 0x46, 0x7E, 0x54, 0xC2, 0x13, 0x8D, 0xF6, 0xE8, 0xB8, 0xD8, 0x90, 0x5E, 0xF7, 0x39, 0x2E .byte 0xF5, 0xAF, 0xC3, 0x82, 0xBE, 0x80, 0x5D, 0x9F, 0x7C, 0x93, 0xD0, 0x69, 0xA9, 0x2D, 0xD5, 0x6F .byte 0xB3, 0x12, 0x25, 0xCF, 0x3B, 0x99, 0xAC, 0xC8, 0xA7, 0x7D, 0x18, 0x10, 0x6E, 0x63, 0x9C, 0xE8 .byte 0x7B, 0xBB, 0x3B, 0xDB, 0x09, 0x78, 0x26, 0xCD, 0xF4, 0x18, 0x59, 0x6E, 0x01, 0xB7, 0x9A, 0xEC .byte 0xA8, 0x9A, 0x4F, 0x83, 0x65, 0x6E, 0x95, 0xE6, 0x7E, 0xE6, 0xFF, 0xAA, 0x08, 0xCF, 0xBC, 0x21 .byte 0xE6, 0xE8, 0x15, 0xEF, 0xD9, 0x9B, 0xE7, 0xBA, 0xCE, 0x36, 0x6F, 0x4A, 0xD4, 0x09, 0x9F, 0xEA .byte 0xD6, 0x7C, 0xB0, 0x29, 0xAF, 0xB2, 0xA4, 0x31, 0x31, 0x23, 0x3F, 0x2A, 0x30, 0x94, 0xA5, 0xC6 .byte 0xC0, 0x66, 0xA2, 0x35, 0x37, 0xBC, 0x4E, 0x74, 0xA6, 0xCA, 0x82, 0xFC, 0xB0, 0xD0, 0x90, 0xE0 .byte 0x15, 0xD8, 0xA7, 0x33, 0x4A, 0x98, 0x04, 0xF1, 0xF7, 0xDA, 0xEC, 0x41, 0x0E, 0x50, 0xCD, 0x7F .byte 0x2F, 0xF6, 0x91, 0x17, 0x8D, 0xD6, 0x4D, 0x76, 0x4D, 0xB0, 0xEF, 0x43, 0x54, 0x4D, 0xAA, 0xCC .byte 0xDF, 0x04, 0x96, 0xE4, 0xE3, 0xB5, 0xD1, 0x9E, 0x1B, 0x88, 0x6A, 0x4C, 0xB8, 0x1F, 0x2C, 0xC1 .byte 0x7F, 0x51, 0x65, 0x46, 0x04, 0xEA, 0x5E, 0x9D, 0x5D, 0x35, 0x8C, 0x01, 0x73, 0x74, 0x87, 0xFA .byte 0x2E, 0x41, 0x0B, 0xFB, 0x5A, 0x1D, 0x67, 0xB3, 0x52, 0xD2, 0xDB, 0x92, 0x33, 0x56, 0x10, 0xE9 .byte 0x13, 0x47, 0xD6, 0x6D, 0x8C, 0x61, 0xD7, 0x9A, 0x7A, 0x0C, 0xA1, 0x37, 0x8E, 0x14, 0xF8, 0x59 .byte 0x89, 0x3C, 0x13, 0xEB, 0xEE, 0x27, 0xA9, 0xCE, 0x35, 0xC9, 0x61, 0xB7, 0xED, 0xE5, 0x1C, 0xE1 .byte 0x3C, 0xB1, 0x47, 0x7A, 0x59, 0xDF, 0xD2, 0x9C, 0x3F, 0x73, 0xF2, 0x55, 0x79, 0xCE, 0x14, 0x18 .byte 0xBF, 0x37, 0xC7, 0x73, 0xEA, 0xCD, 0xF7, 0x53, 0x5B, 0xAA, 0xFD, 0x5F, 0x14, 0x6F, 0x3D, 0xDF .byte 0x86, 0xDB, 0x44, 0x78, 0x81, 0xF3, 0xAF, 0xCA, 0x3E, 0xC4, 0x68, 0xB9, 0x2C, 0x34, 0x24, 0x38 .byte 0x5F, 0x40, 0xA3, 0xC2, 0x72, 0xC3, 0x1D, 0x16, 0x0C, 0x25, 0xE2, 0xBC, 0x8B, 0x49, 0x3C, 0x28 .byte 0x41, 0x95, 0x0D, 0xFF, 0x71, 0x01, 0xA8, 0x39, 0xDE, 0xB3, 0x0C, 0x08, 0x9C, 0xE4, 0xB4, 0xD8 .byte 0x90, 0xC1, 0x56, 0x64, 0x61, 0x84, 0xCB, 0x7B, 0x70, 0xB6, 0x32, 0xD5, 0x74, 0x5C, 0x6C, 0x48 .byte 0x42, 0x57, 0xB8, 0xD0 .global ov02_0235208C ov02_0235208C: .byte 0xA7, 0xF4, 0x51, 0x50, 0x65, 0x41, 0x7E, 0x53, 0xA4, 0x17, 0x1A, 0xC3 .byte 0x5E, 0x27, 0x3A, 0x96, 0x6B, 0xAB, 0x3B, 0xCB, 0x45, 0x9D, 0x1F, 0xF1, 0x58, 0xFA, 0xAC, 0xAB .byte 0x03, 0xE3, 0x4B, 0x93, 0xFA, 0x30, 0x20, 0x55, 0x6D, 0x76, 0xAD, 0xF6, 0x76, 0xCC, 0x88, 0x91 .byte 0x4C, 0x02, 0xF5, 0x25, 0xD7, 0xE5, 0x4F, 0xFC, 0xCB, 0x2A, 0xC5, 0xD7, 0x44, 0x35, 0x26, 0x80 .byte 0xA3, 0x62, 0xB5, 0x8F, 0x5A, 0xB1, 0xDE, 0x49, 0x1B, 0xBA, 0x25, 0x67, 0x0E, 0xEA, 0x45, 0x98 .byte 0xC0, 0xFE, 0x5D, 0xE1, 0x75, 0x2F, 0xC3, 0x02, 0xF0, 0x4C, 0x81, 0x12, 0x97, 0x46, 0x8D, 0xA3 .byte 0xF9, 0xD3, 0x6B, 0xC6, 0x5F, 0x8F, 0x03, 0xE7, 0x9C, 0x92, 0x15, 0x95, 0x7A, 0x6D, 0xBF, 0xEB .byte 0x59, 0x52, 0x95, 0xDA, 0x83, 0xBE, 0xD4, 0x2D, 0x21, 0x74, 0x58, 0xD3, 0x69, 0xE0, 0x49, 0x29 .byte 0xC8, 0xC9, 0x8E, 0x44, 0x89, 0xC2, 0x75, 0x6A, 0x79, 0x8E, 0xF4, 0x78, 0x3E, 0x58, 0x99, 0x6B .byte 0x71, 0xB9, 0x27, 0xDD, 0x4F, 0xE1, 0xBE, 0xB6, 0xAD, 0x88, 0xF0, 0x17, 0xAC, 0x20, 0xC9, 0x66 .byte 0x3A, 0xCE, 0x7D, 0xB4, 0x4A, 0xDF, 0x63, 0x18, 0x31, 0x1A, 0xE5, 0x82, 0x33, 0x51, 0x97, 0x60 .byte 0x7F, 0x53, 0x62, 0x45, 0x77, 0x64, 0xB1, 0xE0, 0xAE, 0x6B, 0xBB, 0x84, 0xA0, 0x81, 0xFE, 0x1C .byte 0x2B, 0x08, 0xF9, 0x94, 0x68, 0x48, 0x70, 0x58, 0xFD, 0x45, 0x8F, 0x19, 0x6C, 0xDE, 0x94, 0x87 .byte 0xF8, 0x7B, 0x52, 0xB7, 0xD3, 0x73, 0xAB, 0x23, 0x02, 0x4B, 0x72, 0xE2, 0x8F, 0x1F, 0xE3, 0x57 .byte 0xAB, 0x55, 0x66, 0x2A, 0x28, 0xEB, 0xB2, 0x07, 0xC2, 0xB5, 0x2F, 0x03, 0x7B, 0xC5, 0x86, 0x9A .byte 0x08, 0x37, 0xD3, 0xA5, 0x87, 0x28, 0x30, 0xF2, 0xA5, 0xBF, 0x23, 0xB2, 0x6A, 0x03, 0x02, 0xBA .byte 0x82, 0x16, 0xED, 0x5C, 0x1C, 0xCF, 0x8A, 0x2B, 0xB4, 0x79, 0xA7, 0x92, 0xF2, 0x07, 0xF3, 0xF0 .byte 0xE2, 0x69, 0x4E, 0xA1, 0xF4, 0xDA, 0x65, 0xCD, 0xBE, 0x05, 0x06, 0xD5, 0x62, 0x34, 0xD1, 0x1F .byte 0xFE, 0xA6, 0xC4, 0x8A, 0x53, 0x2E, 0x34, 0x9D, 0x55, 0xF3, 0xA2, 0xA0, 0xE1, 0x8A, 0x05, 0x32 .byte 0xEB, 0xF6, 0xA4, 0x75, 0xEC, 0x83, 0x0B, 0x39, 0xEF, 0x60, 0x40, 0xAA, 0x9F, 0x71, 0x5E, 0x06 .byte 0x10, 0x6E, 0xBD, 0x51, 0x8A, 0x21, 0x3E, 0xF9, 0x06, 0xDD, 0x96, 0x3D, 0x05, 0x3E, 0xDD, 0xAE .byte 0xBD, 0xE6, 0x4D, 0x46, 0x8D, 0x54, 0x91, 0xB5, 0x5D, 0xC4, 0x71, 0x05, 0xD4, 0x06, 0x04, 0x6F .byte 0x15, 0x50, 0x60, 0xFF, 0xFB, 0x98, 0x19, 0x24, 0xE9, 0xBD, 0xD6, 0x97, 0x43, 0x40, 0x89, 0xCC .byte 0x9E, 0xD9, 0x67, 0x77, 0x42, 0xE8, 0xB0, 0xBD, 0x8B, 0x89, 0x07, 0x88, 0x5B, 0x19, 0xE7, 0x38 .byte 0xEE, 0xC8, 0x79, 0xDB, 0x0A, 0x7C, 0xA1, 0x47, 0x0F, 0x42, 0x7C, 0xE9, 0x1E, 0x84, 0xF8, 0xC9 .byte 0x00, 0x00, 0x00, 0x00, 0x86, 0x80, 0x09, 0x83, 0xED, 0x2B, 0x32, 0x48, 0x70, 0x11, 0x1E, 0xAC .byte 0x72, 0x5A, 0x6C, 0x4E, 0xFF, 0x0E, 0xFD, 0xFB, 0x38, 0x85, 0x0F, 0x56, 0xD5, 0xAE, 0x3D, 0x1E .byte 0x39, 0x2D, 0x36, 0x27, 0xD9, 0x0F, 0x0A, 0x64, 0xA6, 0x5C, 0x68, 0x21, 0x54, 0x5B, 0x9B, 0xD1 .byte 0x2E, 0x36, 0x24, 0x3A, 0x67, 0x0A, 0x0C, 0xB1, 0xE7, 0x57, 0x93, 0x0F, 0x96, 0xEE, 0xB4, 0xD2 .byte 0x91, 0x9B, 0x1B, 0x9E, 0xC5, 0xC0, 0x80, 0x4F, 0x20, 0xDC, 0x61, 0xA2, 0x4B, 0x77, 0x5A, 0x69 .byte 0x1A, 0x12, 0x1C, 0x16, 0xBA, 0x93, 0xE2, 0x0A, 0x2A, 0xA0, 0xC0, 0xE5, 0xE0, 0x22, 0x3C, 0x43 .byte 0x17, 0x1B, 0x12, 0x1D, 0x0D, 0x09, 0x0E, 0x0B, 0xC7, 0x8B, 0xF2, 0xAD, 0xA8, 0xB6, 0x2D, 0xB9 .byte 0xA9, 0x1E, 0x14, 0xC8, 0x19, 0xF1, 0x57, 0x85, 0x07, 0x75, 0xAF, 0x4C, 0xDD, 0x99, 0xEE, 0xBB .byte 0x60, 0x7F, 0xA3, 0xFD, 0x26, 0x01, 0xF7, 0x9F, 0xF5, 0x72, 0x5C, 0xBC, 0x3B, 0x66, 0x44, 0xC5 .byte 0x7E, 0xFB, 0x5B, 0x34, 0x29, 0x43, 0x8B, 0x76, 0xC6, 0x23, 0xCB, 0xDC, 0xFC, 0xED, 0xB6, 0x68 .byte 0xF1, 0xE4, 0xB8, 0x63, 0xDC, 0x31, 0xD7, 0xCA, 0x85, 0x63, 0x42, 0x10, 0x22, 0x97, 0x13, 0x40 .byte 0x11, 0xC6, 0x84, 0x20, 0x24, 0x4A, 0x85, 0x7D, 0x3D, 0xBB, 0xD2, 0xF8, 0x32, 0xF9, 0xAE, 0x11 .byte 0xA1, 0x29, 0xC7, 0x6D, 0x2F, 0x9E, 0x1D, 0x4B, 0x30, 0xB2, 0xDC, 0xF3, 0x52, 0x86, 0x0D, 0xEC .byte 0xE3, 0xC1, 0x77, 0xD0, 0x16, 0xB3, 0x2B, 0x6C, 0xB9, 0x70, 0xA9, 0x99, 0x48, 0x94, 0x11, 0xFA .byte 0x64, 0xE9, 0x47, 0x22, 0x8C, 0xFC, 0xA8, 0xC4, 0x3F, 0xF0, 0xA0, 0x1A, 0x2C, 0x7D, 0x56, 0xD8 .byte 0x90, 0x33, 0x22, 0xEF, 0x4E, 0x49, 0x87, 0xC7, 0xD1, 0x38, 0xD9, 0xC1, 0xA2, 0xCA, 0x8C, 0xFE .byte 0x0B, 0xD4, 0x98, 0x36, 0x81, 0xF5, 0xA6, 0xCF, 0xDE, 0x7A, 0xA5, 0x28, 0x8E, 0xB7, 0xDA, 0x26 .byte 0xBF, 0xAD, 0x3F, 0xA4, 0x9D, 0x3A, 0x2C, 0xE4, 0x92, 0x78, 0x50, 0x0D, 0xCC, 0x5F, 0x6A, 0x9B .byte 0x46, 0x7E, 0x54, 0x62, 0x13, 0x8D, 0xF6, 0xC2, 0xB8, 0xD8, 0x90, 0xE8, 0xF7, 0x39, 0x2E, 0x5E .byte 0xAF, 0xC3, 0x82, 0xF5, 0x80, 0x5D, 0x9F, 0xBE, 0x93, 0xD0, 0x69, 0x7C, 0x2D, 0xD5, 0x6F, 0xA9 .byte 0x12, 0x25, 0xCF, 0xB3, 0x99, 0xAC, 0xC8, 0x3B, 0x7D, 0x18, 0x10, 0xA7, 0x63, 0x9C, 0xE8, 0x6E .byte 0xBB, 0x3B, 0xDB, 0x7B, 0x78, 0x26, 0xCD, 0x09, 0x18, 0x59, 0x6E, 0xF4, 0xB7, 0x9A, 0xEC, 0x01 .byte 0x9A, 0x4F, 0x83, 0xA8, 0x6E, 0x95, 0xE6, 0x65, 0xE6, 0xFF, 0xAA, 0x7E, 0xCF, 0xBC, 0x21, 0x08 .byte 0xE8, 0x15, 0xEF, 0xE6, 0x9B, 0xE7, 0xBA, 0xD9, 0x36, 0x6F, 0x4A, 0xCE, 0x09, 0x9F, 0xEA, 0xD4 .byte 0x7C, 0xB0, 0x29, 0xD6, 0xB2, 0xA4, 0x31, 0xAF, 0x23, 0x3F, 0x2A, 0x31, 0x94, 0xA5, 0xC6, 0x30 .byte 0x66, 0xA2, 0x35, 0xC0, 0xBC, 0x4E, 0x74, 0x37, 0xCA, 0x82, 0xFC, 0xA6, 0xD0, 0x90, 0xE0, 0xB0 .byte 0xD8, 0xA7, 0x33, 0x15, 0x98, 0x04, 0xF1, 0x4A, 0xDA, 0xEC, 0x41, 0xF7, 0x50, 0xCD, 0x7F, 0x0E .byte 0xF6, 0x91, 0x17, 0x2F, 0xD6, 0x4D, 0x76, 0x8D, 0xB0, 0xEF, 0x43, 0x4D, 0x4D, 0xAA, 0xCC, 0x54 .byte 0x04, 0x96, 0xE4, 0xDF, 0xB5, 0xD1, 0x9E, 0xE3, 0x88, 0x6A, 0x4C, 0x1B, 0x1F, 0x2C, 0xC1, 0xB8 .byte 0x51, 0x65, 0x46, 0x7F, 0xEA, 0x5E, 0x9D, 0x04, 0x35, 0x8C, 0x01, 0x5D, 0x74, 0x87, 0xFA, 0x73 .byte 0x41, 0x0B, 0xFB, 0x2E, 0x1D, 0x67, 0xB3, 0x5A, 0xD2, 0xDB, 0x92, 0x52, 0x56, 0x10, 0xE9, 0x33 .byte 0x47, 0xD6, 0x6D, 0x13, 0x61, 0xD7, 0x9A, 0x8C, 0x0C, 0xA1, 0x37, 0x7A, 0x14, 0xF8, 0x59, 0x8E .byte 0x3C, 0x13, 0xEB, 0x89, 0x27, 0xA9, 0xCE, 0xEE, 0xC9, 0x61, 0xB7, 0x35, 0xE5, 0x1C, 0xE1, 0xED .byte 0xB1, 0x47, 0x7A, 0x3C, 0xDF, 0xD2, 0x9C, 0x59, 0x73, 0xF2, 0x55, 0x3F, 0xCE, 0x14, 0x18, 0x79 .byte 0x37, 0xC7, 0x73, 0xBF, 0xCD, 0xF7, 0x53, 0xEA, 0xAA, 0xFD, 0x5F, 0x5B, 0x6F, 0x3D, 0xDF, 0x14 .byte 0xDB, 0x44, 0x78, 0x86, 0xF3, 0xAF, 0xCA, 0x81, 0xC4, 0x68, 0xB9, 0x3E, 0x34, 0x24, 0x38, 0x2C .byte 0x40, 0xA3, 0xC2, 0x5F, 0xC3, 0x1D, 0x16, 0x72, 0x25, 0xE2, 0xBC, 0x0C, 0x49, 0x3C, 0x28, 0x8B .byte 0x95, 0x0D, 0xFF, 0x41, 0x01, 0xA8, 0x39, 0x71, 0xB3, 0x0C, 0x08, 0xDE, 0xE4, 0xB4, 0xD8, 0x9C .byte 0xC1, 0x56, 0x64, 0x90, 0x84, 0xCB, 0x7B, 0x61, 0xB6, 0x32, 0xD5, 0x70, 0x5C, 0x6C, 0x48, 0x74 .byte 0x57, 0xB8, 0xD0, 0x42 .global ov02_0235248C ov02_0235248C: .byte 0x0E, 0x04, 0x05, 0x00, 0x00, 0x00, 0xA8, 0x00 .global ov02_02352494 ov02_02352494: .byte 0x78, 0x00, 0x10, 0x00 .global ov02_02352498 ov02_02352498: .byte 0x08, 0x00 .global ov02_0235249A ov02_0235249A: .byte 0xAC, 0x00, 0x84, 0x00, 0xAC, 0x00 .global ov02_023524A0 ov02_023524A0: .byte 0x27, 0x1F, 0x25, 0x00, 0x27, 0x00, 0x23, 0x1D .byte 0x21, 0x00, 0x59, 0x00, 0x27, 0x21 .global ov02_023524AE ov02_023524AE: .byte 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00 .byte 0x01, 0x00, 0x00, 0x01 .global ov02_023524BC ov02_023524BC: .byte 0x02, 0x01, 0x01, 0x02, 0x01, 0x01, 0x02, 0x00, 0x0D, 0x00, 0x3C, 0x00 .byte 0xE6, 0x00, 0x5E, 0x00, 0x0D, 0x00, 0x28, 0x00, 0xE6, 0x00, 0x70, 0x00 .global ov02_023524D4 ov02_023524D4: .byte 0x80, 0x04, 0x00, 0x00 .byte 0x80, 0x02, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00 .byte 0x80, 0x02, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00 .global ov02_023524F0 ov02_023524F0: .byte 0x6B, 0x00 .global ov02_023524F2 ov02_023524F2: .byte 0x22, 0x00, 0x6C, 0x00, 0x22, 0x00 .byte 0x7C, 0x00, 0x22, 0x00, 0x5D, 0x00, 0x22, 0x00, 0x5F, 0x00, 0x22, 0x00, 0x7D, 0x00, 0x22, 0x00 .byte 0x50, 0x00, 0x22, 0x00 .global ov02_0235250C ov02_0235250C: .byte 0x6A, 0x65, 0x66, 0x67, 0x69, 0x73, 0x6B, 0x00 .global ov02_02352514 ov02_02352514: .byte 0x0A, 0x0B, 0x04, 0x05 .byte 0x02, 0x03, 0x0C, 0x0D, 0xE5, 0x00, 0x26, 0x00 .global ov02_02352520 ov02_02352520: .byte 0x18, 0x17, 0x16, 0x15, 0x5F, 0x5E, 0x5D, 0x5C .global ov02_02352528 ov02_02352528: .byte 0x02, 0x03, 0x00, 0x00 .global ov02_0235252C ov02_0235252C: .byte 0x04, 0x05, 0x00, 0x00 .global ov02_02352530 ov02_02352530: .byte 0x3C, 0x3D, 0x00, 0x00 .global ov02_02352534 ov02_02352534: .byte 0x82, 0x83, 0x00, 0x00 .global ov02_02352538 ov02_02352538: .byte 0x3A, 0x3B, 0x35, 0x39 .global ov02_0235253C ov02_0235253C: .byte 0x1C, 0x00, 0x02, 0x00 .global ov02_02352540 ov02_02352540: .byte 0x78, 0x00, 0x12, 0x00 .global ov02_02352544 ov02_02352544: .byte 0x11, 0x00, 0x12, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x0C, 0x0C, 0x0C, 0x0B, 0x00, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00 .global ov02_02352558 ov02_02352558: .byte 0x04, 0x00, 0xAA, 0x00, 0x84, 0x00, 0xAA, 0x00 .global ov02_02352560 ov02_02352560: .byte 0x04, 0x00, 0x67, 0x00 .global ov02_02352564 ov02_02352564: .byte 0x04, 0x00, 0x7D, 0x00 .global ov02_02352568 ov02_02352568: .byte 0x04, 0x00, 0x93, 0x00, 0xDC, 0x00, 0x51, 0x00 .global ov02_02352570 ov02_02352570: .byte 0x1B, 0x00, 0x12, 0x00 .global ov02_02352574 ov02_02352574: .byte 0x20, 0x00, 0x12, 0x00 .global ov02_02352578 ov02_02352578: .byte 0x28, 0x00, 0x12, 0x00, 0x20, 0x00, 0x12, 0x00 .global ov02_02352580 ov02_02352580: .byte 0xFF, 0xFF, 0x20, 0x80, 0x00, 0x00, 0x00, 0x00 .global ov02_02352588 ov02_02352588: .byte 0x04, 0x00, 0x51, 0x00, 0x16, 0x00, 0x51, 0x00, 0x28, 0x00, 0x51, 0x00, 0x3A, 0x00, 0x51, 0x00 .byte 0x4C, 0x00, 0x51, 0x00, 0x5E, 0x00, 0x51, 0x00, 0x70, 0x00, 0x51, 0x00, 0x82, 0x00, 0x51, 0x00 .byte 0x94, 0x00, 0x51, 0x00, 0xA6, 0x00, 0x51, 0x00, 0xB8, 0x00, 0x51, 0x00, 0xCA, 0x00, 0x51, 0x00 .byte 0x20, 0x00, 0x67, 0x00, 0x32, 0x00, 0x67, 0x00, 0x44, 0x00, 0x67, 0x00, 0x56, 0x00, 0x67, 0x00 .byte 0x68, 0x00, 0x67, 0x00, 0x7A, 0x00, 0x67, 0x00, 0x8C, 0x00, 0x67, 0x00, 0x9E, 0x00, 0x67, 0x00 .byte 0xB0, 0x00, 0x67, 0x00, 0xC2, 0x00, 0x67, 0x00, 0xD4, 0x00, 0x67, 0x00, 0xE6, 0x00, 0x67, 0x00 .byte 0x25, 0x00, 0x7D, 0x00, 0x37, 0x00, 0x7D, 0x00, 0x49, 0x00, 0x7D, 0x00, 0x5B, 0x00, 0x7D, 0x00 .byte 0x6D, 0x00, 0x7D, 0x00, 0x7F, 0x00, 0x7D, 0x00, 0x91, 0x00, 0x7D, 0x00, 0xA3, 0x00, 0x7D, 0x00 .byte 0xB5, 0x00, 0x7D, 0x00, 0xC7, 0x00, 0x7D, 0x00, 0xD9, 0x00, 0x7D, 0x00, 0xEB, 0x00, 0x7D, 0x00 .byte 0x2D, 0x00, 0x93, 0x00, 0x3F, 0x00, 0x93, 0x00, 0x51, 0x00, 0x93, 0x00, 0x63, 0x00, 0x93, 0x00 .byte 0x75, 0x00, 0x93, 0x00, 0x87, 0x00, 0x93, 0x00, 0x99, 0x00, 0x93, 0x00, 0xAB, 0x00, 0x93, 0x00 .byte 0xBD, 0x00, 0x93, 0x00, 0xCF, 0x00, 0x93, 0x00, 0xE1, 0x00, 0x93, 0x00 .global ov02_02352644 ov02_02352644: .byte 0x02, 0x00 .global ov02_02352646 ov02_02352646: .byte 0x4F, 0x00 .byte 0x14, 0x00, 0x4F, 0x00, 0x26, 0x00, 0x4F, 0x00, 0x38, 0x00, 0x4F, 0x00, 0x4A, 0x00, 0x4F, 0x00 .byte 0x5C, 0x00, 0x4F, 0x00, 0x6E, 0x00, 0x4F, 0x00, 0x80, 0x00, 0x4F, 0x00, 0x92, 0x00, 0x4F, 0x00 .byte 0xA4, 0x00, 0x4F, 0x00, 0xB6, 0x00, 0x4F, 0x00, 0xC8, 0x00, 0x4F, 0x00, 0x1E, 0x00, 0x65, 0x00 .byte 0x30, 0x00, 0x65, 0x00, 0x42, 0x00, 0x65, 0x00, 0x54, 0x00, 0x65, 0x00, 0x66, 0x00, 0x65, 0x00 .byte 0x78, 0x00, 0x65, 0x00, 0x8A, 0x00, 0x65, 0x00, 0x9C, 0x00, 0x65, 0x00, 0xAE, 0x00, 0x65, 0x00 .byte 0xC0, 0x00, 0x65, 0x00, 0xD2, 0x00, 0x65, 0x00, 0xE4, 0x00, 0x65, 0x00, 0x23, 0x00, 0x7B, 0x00 .byte 0x35, 0x00, 0x7B, 0x00, 0x47, 0x00, 0x7B, 0x00, 0x59, 0x00, 0x7B, 0x00, 0x6B, 0x00, 0x7B, 0x00 .byte 0x7D, 0x00, 0x7B, 0x00, 0x8F, 0x00, 0x7B, 0x00, 0xA1, 0x00, 0x7B, 0x00, 0xB3, 0x00, 0x7B, 0x00 .byte 0xC5, 0x00, 0x7B, 0x00, 0xD7, 0x00, 0x7B, 0x00, 0xE9, 0x00, 0x7B, 0x00, 0x2B, 0x00, 0x91, 0x00 .byte 0x3D, 0x00, 0x91, 0x00, 0x4F, 0x00, 0x91, 0x00, 0x61, 0x00, 0x91, 0x00, 0x73, 0x00, 0x91, 0x00 .byte 0x85, 0x00, 0x91, 0x00, 0x97, 0x00, 0x91, 0x00, 0xA9, 0x00, 0x91, 0x00, 0xBB, 0x00, 0x91, 0x00 .byte 0xCD, 0x00, 0x91, 0x00, 0xDF, 0x00, 0x91, 0x00, 0x02, 0x00, 0x65, 0x00, 0x02, 0x00, 0x7B, 0x00 .byte 0x02, 0x00, 0x91, 0x00, 0xDA, 0x00, 0x4F, 0x00, 0x02, 0x00, 0xA8, 0x00, 0x82, 0x00, 0xA8, 0x00 .global ov02_02352718 ov02_02352718: .byte 0x32, 0x33, 0x01, 0x2F, 0x00, 0x33, 0x02, 0x0C, 0x01, 0x33, 0x03, 0x0D, 0x02, 0x33, 0x04, 0x0E .byte 0x03, 0x33, 0x05, 0x0F, 0x04, 0x33, 0x06, 0x10, 0x05, 0x34, 0x07, 0x11, 0x06, 0x34, 0x08, 0x12 .byte 0x07, 0x34, 0x09, 0x13, 0x08, 0x34, 0x0A, 0x14, 0x09, 0x34, 0x0B, 0x15, 0x0A, 0x34, 0x32, 0x16 .byte 0x2F, 0x01, 0x0D, 0x18, 0x0C, 0x02, 0x0E, 0x19, 0x0D, 0x03, 0x0F, 0x1A, 0x0E, 0x04, 0x10, 0x1B .byte 0x0F, 0x05, 0x11, 0x1C, 0x10, 0x06, 0x12, 0x1D, 0x11, 0x07, 0x13, 0x1E, 0x12, 0x08, 0x14, 0x1F .byte 0x13, 0x09, 0x15, 0x20, 0x14, 0x0A, 0x16, 0x21, 0x15, 0x0B, 0x17, 0x22, 0x16, 0x32, 0x2F, 0x23 .byte 0x30, 0x0C, 0x19, 0x24, 0x18, 0x0D, 0x1A, 0x25, 0x19, 0x0E, 0x1B, 0x26, 0x1A, 0x0F, 0x1C, 0x27 .byte 0x1B, 0x10, 0x1D, 0x28, 0x1C, 0x11, 0x1E, 0x29, 0x1D, 0x12, 0x1F, 0x2A, 0x1E, 0x13, 0x20, 0x2B .byte 0x1F, 0x14, 0x21, 0x2C, 0x20, 0x15, 0x22, 0x2D, 0x21, 0x16, 0x23, 0x2E, 0x22, 0x17, 0x30, 0x2E .byte 0x31, 0x18, 0x25, 0x33, 0x24, 0x19, 0x26, 0x33, 0x25, 0x1A, 0x27, 0x33, 0x26, 0x1B, 0x28, 0x33 .byte 0x27, 0x1C, 0x29, 0x33, 0x28, 0x1D, 0x2A, 0x34, 0x29, 0x1E, 0x2B, 0x34, 0x2A, 0x1F, 0x2C, 0x34 .byte 0x2B, 0x20, 0x2D, 0x34, 0x2C, 0x21, 0x2E, 0x34, 0x2D, 0xFF, 0x31, 0x34, 0x17, 0x00, 0x0C, 0x30 .byte 0x23, 0x2F, 0x18, 0x31, 0x2E, 0x30, 0x24, 0x33, 0x0B, 0x34, 0x00, 0x17, 0x34, 0xFE, 0x34, 0xFC .byte 0x33, 0xFD, 0x33, 0xFB .global ov02_023527EC ov02_023527EC: .byte 0x04, 0x05, 0x00, 0x00 .global ov02_023527F0 ov02_023527F0: .byte 0x37, 0x38, 0x00, 0x00 .global ov02_023527F4 ov02_023527F4: .byte 0x3C, 0x3D, 0x00, 0x00 .global ov02_023527F8 ov02_023527F8: .byte 0x02, 0x03, 0x00, 0x00 .global ov02_023527FC ov02_023527FC: .byte 0x12, 0x13, 0x00, 0x00 .global ov02_02352800 ov02_02352800: .byte 0x10, 0x11, 0x00, 0x00 .global ov02_02352804 ov02_02352804: .byte 0x1C, 0x00, 0x14, 0x00 .byte 0x0C, 0x00, 0x04, 0x00 .global ov02_0235280C ov02_0235280C: .byte 0x1C, 0x00, 0x14, 0x00 .global ov02_02352810 ov02_02352810: .byte 0x78, 0x00, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x02, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00 .byte 0x00, 0x00, 0x00, 0x00 .global ov02_0235282C ov02_0235282C: .byte 0x72, 0x00, 0x91, 0x00, 0x92, 0x00, 0x91, 0x00 .global ov02_02352834 ov02_02352834: .byte 0x04, 0x00, 0xAA, 0x00 .byte 0x84, 0x00, 0xAA, 0x00 .global ov02_0235283C ov02_0235283C: .byte 0x37, 0x00, 0x38, 0x00, 0x39, 0x00, 0x34, 0x00, 0x35, 0x00, 0x36, 0x00 .byte 0x31, 0x00, 0x32, 0x00, 0x33, 0x00, 0x30, 0x00, 0x20, 0x00, 0x20, 0x00, 0x00, 0x00 .global ov02_02352856 ov02_02352856: .byte 0x52, 0x00 .byte 0x4C, 0x00, 0x72, 0x00, 0x4C, 0x00, 0x92, 0x00, 0x4C, 0x00, 0x52, 0x00, 0x63, 0x00, 0x72, 0x00 .byte 0x63, 0x00, 0x92, 0x00, 0x63, 0x00, 0x52, 0x00, 0x7A, 0x00, 0x72, 0x00, 0x7A, 0x00, 0x92, 0x00 .byte 0x7A, 0x00, 0x52, 0x00, 0x91, 0x00 .global ov02_0235287E ov02_0235287E: .byte 0x50, 0x00 .global ov02_02352880 ov02_02352880: .byte 0x4A, 0x00, 0x70, 0x00, 0x4A, 0x00, 0x90, 0x00 .byte 0x4A, 0x00, 0x50, 0x00, 0x61, 0x00, 0x70, 0x00, 0x61, 0x00, 0x90, 0x00, 0x61, 0x00, 0x50, 0x00 .byte 0x78, 0x00, 0x70, 0x00, 0x78, 0x00, 0x90, 0x00, 0x78, 0x00, 0x50, 0x00, 0x8F, 0x00, 0x70, 0x00 .byte 0x8F, 0x00, 0x90, 0x00, 0x8F, 0x00, 0x02, 0x00, 0xA8, 0x00, 0x82, 0x00, 0xA8, 0x00 .global ov02_023528B6 ov02_023528B6: .byte 0x02, 0x0C .byte 0x01, 0x03, 0x00, 0x0D, 0x02, 0x04, 0x01, 0x0D, 0x00, 0x05, 0x05, 0x00, 0x04, 0x06, 0x03, 0x01 .byte 0x05, 0x07, 0x04, 0x02, 0x03, 0x08, 0x08, 0x03, 0x07, 0x09, 0x06, 0x04, 0x08, 0x0A, 0x07, 0x05 .byte 0x06, 0x0B, 0x0B, 0x06, 0x0A, 0x0C, 0x09, 0x07, 0x0B, 0x0D, 0x0A, 0x08, 0x09, 0x0D, 0x0D, 0x09 .byte 0x0D, 0x00, 0x0C, 0xFF, 0x0C, 0xFE, 0x00, 0x00 .global ov02_023528F0 ov02_023528F0: .byte 0x37, 0x38, 0x39, 0x34, 0x35, 0x36, 0x31, 0x32 .byte 0x33, 0x30, 0x00, 0x00 .global ov02_023528FC ov02_023528FC: .byte 0x4E, 0x49, 0x4E, 0x54, 0x45, 0x4E, 0x44, 0x4F, 0x2D, 0x44, 0x53, 0x00 .global ov02_02352908 ov02_02352908: .byte 0x01, 0x02 .global ov02_0235290A ov02_0235290A: .byte 0x08, 0x00, 0x20, 0x00, 0xAC, 0x00, 0xA0, 0x00, 0xB4, 0x00, 0x20, 0x00, 0xF8, 0x00 .byte 0xA0, 0x00 .global ov02_0235291A ov02_0235291A: .byte 0x06, 0x00 .global ov02_0235291C ov02_0235291C: .byte 0x1E, 0x00 .global ov02_0235291E ov02_0235291E: .byte 0x9E, 0x00 .global ov02_02352920 ov02_02352920: .byte 0x92, 0x00, 0xB2, 0x00, 0x1E, 0x00, 0xEA, 0x00 .byte 0x92, 0x00 .global ov02_0235292A ov02_0235292A: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x31 .byte 0x31, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00 .global ov02_02352940 ov02_02352940: .byte 0x01, 0x02, 0x03, 0x00, 0xE0, 0x00, 0x84, 0x00 .global ov02_02352948 ov02_02352948: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x42, 0x67, 0x4F, 0x70, 0x74, 0x69, 0x6F, 0x6E, 0x2E .byte 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00 .global ov02_0235295E ov02_0235295E: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x42, 0x67, 0x4F .byte 0x70, 0x74, 0x69, 0x6F, 0x6E, 0x31, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00 .global ov02_02352976 ov02_02352976: .byte 0x08, 0x00 .byte 0x24, 0x00, 0xF8, 0x00, 0x44, 0x00, 0x08, 0x00, 0x50, 0x00, 0xF8, 0x00, 0x70, 0x00, 0x08, 0x00 .byte 0x7C, 0x00, 0xF8, 0x00, 0x9C, 0x00 .global ov02_0235298E ov02_0235298E: .byte 0x06, 0x00 .global ov02_02352990 ov02_02352990: .byte 0x22, 0x00 .global ov02_02352992 ov02_02352992: .byte 0xEA, 0x00 .global ov02_02352994 ov02_02352994: .byte 0x36, 0x00, 0x06, 0x00 .byte 0x4E, 0x00, 0xEA, 0x00, 0x62, 0x00, 0x06, 0x00, 0x7A, 0x00, 0xEA, 0x00, 0x8E, 0x00, 0x00, 0x00 .global ov02_023529A8 ov02_023529A8: .byte 0x02 .global ov02_023529A9 ov02_023529A9: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x33, 0x31 .byte 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00 .global ov02_023529BF ov02_023529BF: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x78, 0x62, 0x34, 0x41 .byte 0x70, 0x4C, 0x69, 0x73, 0x74, 0x42, 0x61, 0x63, 0x6B, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_023529D8 ov02_023529D8: .byte 0x07, 0x00, 0x32, 0x00, 0xD0, 0x00, 0x4C, 0x00, 0x07, 0x00, 0x4E, 0x00, 0xD0, 0x00, 0x68, 0x00 .byte 0x07, 0x00, 0x6A, 0x00, 0xD0, 0x00, 0x84, 0x00, 0x07, 0x00, 0x86, 0x00, 0xD0, 0x00, 0xA0, 0x00 .byte 0x85, 0x00, 0x1B, 0x00, 0xFD, 0x00, 0x2C, 0x00 .global ov02_02352A00 ov02_02352A00: .byte 0x04, 0x00 .global ov02_02352A02 ov02_02352A02: .byte 0x2E, 0x00 .global ov02_02352A04 ov02_02352A04: .byte 0xDB, 0x00, 0x3F, 0x00 .byte 0x04, 0x00, 0x4A, 0x00, 0xDB, 0x00, 0x5B, 0x00, 0x04, 0x00, 0x66, 0x00, 0xDB, 0x00, 0x77, 0x00 .byte 0x04, 0x00, 0x82, 0x00, 0xDB, 0x00, 0x93, 0x00, 0x82, 0x00, 0x18, 0x00, 0xF0, 0x00, 0x2C, 0x00 .global ov02_02352A28 ov02_02352A28: .byte 0x2E, 0x2D, 0x33, 0x00 .global ov02_02352A2C ov02_02352A2C: .byte 0x18, 0x17, 0x16, 0x15 .global ov02_02352A30 ov02_02352A30: .byte 0x3E, 0x3D, 0x0E, 0x00, 0x10, 0x00, 0x00, 0x00 .byte 0x47, 0x00, 0x00, 0x00, 0x48, 0x00, 0x00, 0x00 .word ov02_02347554 .word ov02_02347584 .global ov02_02352A48 ov02_02352A48: .byte 0x20, 0x31, 0x00, 0x00 .global ov02_02352A4C ov02_02352A4C: .byte 0x08, 0x17, 0x26, 0x35, 0x44, 0x53, 0x62, 0x71, 0x80, 0x8F, 0x9E, 0xAD .byte 0xBC, 0xCB, 0xDA, 0xE9 .global ov02_02352A5C ov02_02352A5C: .byte 0x32, 0x35, 0x35, 0x00, 0x0B, 0x00, 0x10, 0x00, 0x3F, 0x40, 0x41, 0x42 .byte 0x43, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .global ov02_02352A74 ov02_02352A74: .word ov02_023477D8 .word ov02_02347818 .word ov02_02347858 .word ov02_0234789C .word ov02_023478E0 .global ov02_02352A88 ov02_02352A88: .word ov02_0234771C .word ov02_02347738 .word ov02_02347754 .word ov02_02347774 .word ov02_02347794 .global ov02_02352A9C ov02_02352A9C: .byte 0x31, 0x3D, 0x49, 0x5A, 0x66, 0x72, 0x83, 0x8F, 0x9B, 0xAC, 0xB8, 0xC4 .global ov02_02352AA8 ov02_02352AA8: .byte 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x0D, 0x00, 0x3C, 0x00, 0xE6, 0x00, 0x5E, 0x00 .global ov02_02352AB8 ov02_02352AB8: .byte 0x62, 0x00 .global ov02_02352ABA ov02_02352ABA: .byte 0x22, 0x00, 0x62, 0x00, 0x22, 0x00, 0x3D, 0x00, 0x22, 0x00, 0x65, 0x00, 0x22, 0x00 .byte 0x6C, 0x00, 0x22, 0x00, 0x34, 0x00, 0x22, 0x00, 0x4E, 0x00, 0x22, 0x00 .global ov02_02352AD4 ov02_02352AD4: .byte 0x06, 0x08, 0x07, 0x00 .global ov02_02352AD8 ov02_02352AD8: .byte 0x02, 0x03, 0x07, 0x08, 0xCC, 0x00, 0x34, 0x00, 0x1C, 0x00, 0x18, 0x00, 0x8F, 0x00, 0x34, 0x00 .byte 0x2C, 0x00, 0x18, 0x00, 0xC0, 0x00, 0x34, 0x00, 0x2C, 0x00, 0x18, 0x00 .global ov02_02352AF4 ov02_02352AF4: .byte 0x00, 0x00, 0x01, 0x02 .byte 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x03, 0x04, 0x05 .global ov02_02352B02 ov02_02352B02: .byte 0x00, 0x29, 0x2C, 0x52, 0x53, 0x30 .byte 0x00, 0x2A, 0x30, 0x54, 0x55, 0x00, 0x00, 0x2B, 0x00, 0x00 .global ov02_02352B12 ov02_02352B12: .byte 0x00, 0x00, 0x60, 0x00, 0xE0, 0x00 .byte 0x40, 0x01, 0xC0, 0x01, 0x40, 0x02, 0xA0, 0x02, 0x20, 0x03, 0xA0, 0x03 .global ov02_02352B24 ov02_02352B24: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x79, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x32, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C .byte 0x00 .global ov02_02352B39 ov02_02352B39: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x32, 0x31 .byte 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00 .global ov02_02352B4F ov02_02352B4F: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x33, 0x4C .byte 0x69, 0x73, 0x74, 0x42, 0x61, 0x63, 0x6B, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_02352B66 ov02_02352B66: .byte 0x84, 0x00 .byte 0x1B, 0x00, 0xFC, 0x00, 0x2C, 0x00, 0x84, 0x00, 0xAC, 0x00, 0xFC, 0x00, 0xBD, 0x00, 0x04, 0x00 .byte 0xAC, 0x00, 0x7C, 0x00, 0xBD, 0x00 .global ov02_02352B7E ov02_02352B7E: .byte 0xC8, 0x00 .global ov02_02352B80 ov02_02352B80: .byte 0x31, 0x00 .global ov02_02352B82 ov02_02352B82: .byte 0xE0, 0x00, 0x4D, 0x00, 0xBC, 0x00 .byte 0x31, 0x00, 0xE0, 0x00, 0x4D, 0x00, 0x8B, 0x00, 0x31, 0x00, 0xAF, 0x00, 0x4D, 0x00, 0x82, 0x00 .byte 0x18, 0x00, 0xEE, 0x00, 0x2C, 0x00, 0x82, 0x00, 0xA9, 0x00, 0xEE, 0x00, 0xBD, 0x00, 0x02, 0x00 .byte 0xA9, 0x00, 0x6E, 0x00, 0xBD, 0x00, 0x00, 0x00 .global ov02_02352BB0 ov02_02352BB0: .byte 0xFF, 0x23, 0x27, 0xFF, 0x23, 0x2F, 0xFF, 0x00 .global ov02_02352BB8 ov02_02352BB8: .byte 0x00, 0x01, 0x0E, 0x04, 0x05, 0x06, 0x0E, 0x09, 0x0A, 0x00, 0x00, 0x00 .global ov02_02352BC4 ov02_02352BC4: .byte 0x00, 0x05, 0x02, 0x07 .byte 0x04, 0x01, 0x06, 0x03, 0x00, 0x00, 0x00, 0x00 .global ov02_02352BD0 ov02_02352BD0: .byte 0x00, 0x01, 0x02, 0x02, 0x03, 0x04, 0x05, 0x06 .byte 0x06, 0x07, 0x08, 0x00 .global ov02_02352BDC ov02_02352BDC: .byte 0x13, 0x14, 0x12, 0x56 .global ov02_02352BE0 ov02_02352BE0: .byte 0x03, 0x04, 0x05, 0x07, 0x0A, 0x09, 0x0B, 0x06 .global ov02_02352BE8 ov02_02352BE8: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x31, 0x31, 0x2E .byte 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00 .global ov02_02352BFE ov02_02352BFE: .byte 0x08, 0x00 .global ov02_02352C00 ov02_02352C00: .byte 0x30, 0x00, 0x5A, 0x00, 0x30, 0x00, 0xAC, 0x00 .byte 0x30, 0x00, 0x0C, 0x00, 0x58, 0x00, 0x5E, 0x00, 0x58, 0x00, 0xB0, 0x00, 0x58, 0x00 .global ov02_02352C16 ov02_02352C16: .byte 0x08, 0x00 .byte 0x20, 0x00, 0x54, 0x00, 0x56, 0x00, 0x5A, 0x00, 0x20, 0x00, 0xA6, 0x00, 0x56, 0x00, 0xAC, 0x00 .byte 0x20, 0x00, 0xF8, 0x00, 0x56, 0x00, 0x08, 0x00, 0x78, 0x00, 0xF8, 0x00, 0xA0, 0x00, 0x08, 0x00 .byte 0x54, 0x00, 0x54, 0x00, 0x70, 0x00, 0x5A, 0x00, 0x54, 0x00, 0xA6, 0x00, 0x70, 0x00, 0xAC, 0x00 .byte 0x54, 0x00, 0xF8, 0x00, 0x70, 0x00 .global ov02_02352C4E ov02_02352C4E: .byte 0x06, 0x00 .global ov02_02352C50 ov02_02352C50: .byte 0x1E, 0x00 .global ov02_02352C52 ov02_02352C52: .byte 0x46, 0x00 .global ov02_02352C54 ov02_02352C54: .byte 0x48, 0x00, 0x58, 0x00 .byte 0x1E, 0x00, 0x98, 0x00, 0x48, 0x00, 0xAA, 0x00, 0x1E, 0x00, 0xEA, 0x00, 0x48, 0x00, 0x06, 0x00 .byte 0x76, 0x00, 0xEA, 0x00, 0x92, 0x00, 0x09, 0x00, 0x54, 0x00, 0x43, 0x00, 0x70, 0x00, 0x5B, 0x00 .byte 0x54, 0x00, 0x95, 0x00, 0x70, 0x00, 0xAD, 0x00, 0x54, 0x00, 0xE7, 0x00, 0x70, 0x00, 0x00, 0x00 .global ov02_02352C88 ov02_02352C88: .byte 0x03, 0x2D, 0x27, 0x1D, 0x32, 0x30, 0x06, 0x00 .global ov02_02352C90 ov02_02352C90: .byte 0x01, 0x02, 0x03, 0x04 .global ov02_02352C94 ov02_02352C94: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x79, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x32, 0x31, 0x2E, 0x6E, 0x63, 0x6C, 0x2E .byte 0x6C, 0x00 .global ov02_02352CAA ov02_02352CAA: .byte 0xFF, 0xFE, 0xFF, 0xFE, 0x03, 0x00, 0x03, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00 .byte 0x01, 0x00, 0xFF, 0xFE, 0xFF, 0xFE, 0x03, 0x00, 0x02, 0x00, 0x01, 0x00, 0x03, 0x00, 0x02, 0x00 .byte 0x01, 0x00, 0x00, 0x00 .global ov02_02352CCC ov02_02352CCC: .byte 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x06, 0x00 .global ov02_02352CD4 ov02_02352CD4: .byte 0x08, 0x00, 0x20, 0x00 .byte 0xF8, 0x00, 0x5C, 0x00, 0x08, 0x00, 0x64, 0x00, 0x7E, 0x00, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x83, 0x00, 0x64, 0x00, 0xF8, 0x00, 0xA0, 0x00, 0x08, 0x00, 0x20, 0x00 .byte 0xF8, 0x00, 0x5C, 0x00, 0x08, 0x00, 0x64, 0x00, 0x64, 0x00, 0xA0, 0x00, 0x68, 0x00, 0x64, 0x00 .byte 0xC4, 0x00, 0xA0, 0x00, 0xC8, 0x00, 0x64, 0x00, 0xF8, 0x00, 0xA0, 0x00 .global ov02_02352D14 ov02_02352D14: .byte 0x06, 0x00 .global ov02_02352D16 ov02_02352D16: .byte 0x1E, 0x00 .global ov02_02352D18 ov02_02352D18: .byte 0xEA, 0x00 .global ov02_02352D1A ov02_02352D1A: .byte 0x4E, 0x00, 0x06, 0x00, 0x62, 0x00, 0x70, 0x00, 0x92, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x62, 0x00, 0xEA, 0x00, 0x92, 0x00, 0x06, 0x00, 0x1E, 0x00 .byte 0xEA, 0x00, 0x4E, 0x00, 0x06, 0x00, 0x62, 0x00, 0x56, 0x00, 0x92, 0x00, 0x66, 0x00, 0x62, 0x00 .byte 0xB6, 0x00, 0x92, 0x00, 0xC6, 0x00, 0x62, 0x00, 0xEA, 0x00, 0x92, 0x00 .global ov02_02352D54 ov02_02352D54: .word ov02_023456D0 .word ov02_023456E4 .byte 0x03, 0x01, 0x00, 0x00 .global ov02_02352D60 ov02_02352D60: .byte 0x2B, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x00 .byte 0x49, 0x00, 0x00, 0x00 .global ov02_02352D6C ov02_02352D6C: .byte 0x10, 0x0F, 0x0E, 0x00 .global ov02_02352D70 ov02_02352D70: .byte 0x55, 0x36, 0x1E, 0x00 .global ov02_02352D74 ov02_02352D74: .byte 0x00, 0x50, 0xF2, 0x01 .global ov02_02352D78 ov02_02352D78: .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .global ov02_02352D80 ov02_02352D80: .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xFF, 0x3F .byte 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .global ov02_02352DC4 ov02_02352DC4: .byte 0x00, 0x00, 0x00, 0x00 .global ov02_02352DC8 ov02_02352DC8: .byte 0x01, 0x00, 0x05, 0x00, 0x06, 0x04, 0x00, 0x02, 0x00, 0x06, 0x04, 0x00, 0x05, 0x00, 0x03 .global ov02_02352DD7 ov02_02352DD7: .byte 0x02 .byte 0x01, 0x03, 0x01, 0x03, 0x05, 0x01, 0x04, 0x01, 0x05, 0x07, 0x01, 0x07, 0x01, 0x06 .global ov02_02352DE6 ov02_02352DE6: .byte 0x20, 0x00 .byte 0x21, 0x00, 0x50, 0x00, 0x30, 0x00, 0x68, 0x00, 0x21, 0x00, 0x98, 0x00, 0x30, 0x00, 0xB0, 0x00 .byte 0x21, 0x00, 0x00, 0x00 .global ov02_02352DFC ov02_02352DFC: .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .global ov02_02352E04 ov02_02352E04: .byte 0x4E, 0x57, 0x43, 0x55 .byte 0x53, 0x42, 0x41, 0x50, 0x00, 0x00, 0x00, 0x00 .global ov02_02352E10 ov02_02352E10: .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xFF, 0x3F .byte 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x02, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .global ov02_02352E54 ov02_02352E54: .byte 0x08, 0x00, 0x08, 0x00 .byte 0x01, 0x01, 0x00, 0x00, 0x01, 0x01 .global ov02_02352E5E ov02_02352E5E: .byte 0x04, 0x00, 0x1D, 0x00, 0xFC, 0x00, 0x44, 0x00 .global ov02_02352E66 ov02_02352E66: .byte 0x00, 0x01 .byte 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x01 .global ov02_02352E70 ov02_02352E70: .byte 0x01 .global ov02_02352E71 ov02_02352E71: .byte 0x00, 0x00, 0xFF, 0x01, 0x00, 0x00, 0xFF .byte 0x01, 0x00 .global ov02_02352E7A ov02_02352E7A: .byte 0x1B, 0x19, 0x57, 0x00, 0x23, 0x1D, 0x59, 0x00, 0x23, 0x1D .global ov02_02352E84 ov02_02352E84: .byte 0x6C, 0x00, 0x10, 0x00 .byte 0x6C, 0x00, 0x10, 0x00, 0x78, 0x00, 0x10, 0x00, 0x78, 0x00, 0x10, 0x00, 0x78, 0x00, 0x10, 0x00 .global ov02_02352E98 ov02_02352E98: .byte 0xD8, 0x00 .global ov02_02352E9A ov02_02352E9A: .byte 0x50, 0x00, 0xD8, 0x00, 0x50, 0x00, 0xE6, 0x00, 0x4F, 0x00, 0xE6, 0x00, 0x4F, 0x00 .byte 0xE6, 0x00, 0x48, 0x00, 0xDA, 0x00, 0x5C, 0x00 .global ov02_02352EB0 ov02_02352EB0: .byte 0x0B, 0x00 .global ov02_02352EB2 ov02_02352EB2: .byte 0x27, 0x00, 0x0B, 0x00, 0x27, 0x00 .byte 0x04, 0x00, 0x4C, 0x00, 0x04, 0x00, 0x4C, 0x00, 0x04, 0x00, 0x54, 0x00, 0x0B, 0x00, 0x27, 0x00 .global ov02_02352EC8 ov02_02352EC8: .byte 0xEA, 0x00 .global ov02_02352ECA ov02_02352ECA: .byte 0x72, 0x00, 0xEA, 0x00, 0x72, 0x00, 0xF8, 0x00, 0x70, 0x00, 0xF8, 0x00, 0x70, 0x00 .byte 0x64, 0x00, 0x70, 0x00, 0xEA, 0x00, 0x72, 0x00 .global ov02_02352EE0 ov02_02352EE0: .byte 0x10, 0x00 .global ov02_02352EE2 ov02_02352EE2: .byte 0x84, 0x00, 0x84, 0x00, 0x84, 0x00 .byte 0x10, 0x00, 0x84, 0x00, 0x84, 0x00, 0x84, 0x00, 0x09, 0x00, 0xA7, 0x00, 0x83, 0x00, 0xA7, 0x00 .byte 0x09, 0x00, 0xA7, 0x00, 0x83, 0x00, 0xA7, 0x00, 0x09, 0x00, 0xA7, 0x00, 0x83, 0x00, 0xA7, 0x00 .global ov02_02352F08 ov02_02352F08: .byte 0x00, 0x00, 0x46, 0x46, 0x4F, 0x2F, 0x00, 0x00 .global ov02_02352F10 ov02_02352F10: .byte 0x02, 0x01, 0x02, 0x01, 0x02, 0x00, 0x00, 0x00 .global ov02_02352F18 ov02_02352F18: .byte 0x64, 0x77, 0x63, 0x00 .global ov02_02352F1C ov02_02352F1C: .byte 0x00, 0xF0, 0x00, 0x10, 0x11, 0x10, 0x01, 0x00, 0xF0, 0x00, 0x10, 0x00 .global ov02_02352F28 ov02_02352F28: .byte 0x00, 0x00, 0x80, 0x01 .global ov02_02352F2C ov02_02352F2C: .byte 0x20, 0x00 .global ov02_02352F2E ov02_02352F2E: .byte 0x18, 0x00, 0x20, 0x00, 0x0C, 0x00 .global ov02_02352F34 ov02_02352F34: .byte 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x01, 0xC0, 0x00 .global ov02_02352F3C ov02_02352F3C: .byte 0x80, 0x20, 0x00, 0x00 .data .global ov02_02352F60 ov02_02352F60: .byte 0x09, 0x08, 0x00, 0x00 .global ov02_02352F64 ov02_02352F64: .byte 0xFF, 0xFF, 0xFF, 0xFF .byte 0xFF, 0xFF, 0xFF, 0xFF .global ov02_02352F6C ov02_02352F6C: .byte 0x00, 0x00, 0x00, 0x01 .word ov02_0232FD28 + 1 .word ov02_0232FD40 + 1 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .global ov02_02352FC4 ov02_02352FC4: .byte 0x45, 0x53, 0x53, 0x49 .byte 0x44, 0x2D, 0x41, 0x4F, 0x53, 0x53, 0x00, 0x00 .global ov02_02352FD0 ov02_02352FD0: .byte 0x4D, 0x45, 0x4C, 0x43, 0x4F, 0x00, 0x00, 0x00 .global ov02_02352FD8 ov02_02352FD8: .byte 0x01, 0x00, 0x02, 0x00, 0x02, 0x00, 0x04, 0x00, 0x04, 0x00, 0x0B, 0x00, 0x08, 0x00, 0x0C, 0x00 .byte 0x10, 0x00, 0x12, 0x00, 0x20, 0x00, 0x16, 0x00, 0x40, 0x00, 0x18, 0x00, 0x80, 0x00, 0x24, 0x00 .byte 0x00, 0x01, 0x30, 0x00, 0x00, 0x02, 0x48, 0x00, 0x00, 0x04, 0x60, 0x00, 0x00, 0x08, 0x6C, 0x00 .global ov02_02353008 ov02_02353008: .word ov02_02359A0C .byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF .byte 0x40, 0x00, 0x00, 0x00 .global ov02_0235301C ov02_0235301C: .byte 0x00, 0x00, 0x00, 0x01 .word ov02_02331270 + 1 .word ov02_023312A0 + 1 .byte 0x00, 0x00, 0x00, 0x00, 0xC0, 0xA8, 0x00, 0xB0, 0xFF, 0xFF, 0xFF, 0x00, 0xC0, 0xA8, 0x00, 0xC8 .byte 0xC0, 0xA8, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .word ov02_0235307C .byte 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .global ov02_02353074 ov02_02353074: .byte 0x2A, 0x2A, 0x2A, 0x2A .byte 0x2A, 0x2A, 0x00, 0x00 .global ov02_0235307C ov02_0235307C: .byte 0x4E, 0x49, 0x4E, 0x54, 0x45, 0x4E, 0x44, 0x4F, 0x2D, 0x44, 0x53, 0x00 .global ov02_02353088 ov02_02353088: .byte 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .global ov02_023530C8 ov02_023530C8: .byte 0x57, 0x41, 0x52, 0x50, 0x00, 0x00, 0x00, 0x00 .global ov02_023530D0 ov02_023530D0: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x74, 0x4E .byte 0x75, 0x6C, 0x6C, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00, 0x00 .global ov02_023530E4 ov02_023530E4: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x6A, 0x62, 0x32, 0x48, 0x6C, 0x41, 0x70, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00 .global ov02_023530F8 ov02_023530F8: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x34, 0x48, 0x6C, 0x49, 0x70, 0x2E, 0x6E, 0x73, 0x63 .byte 0x2E, 0x6C, 0x00, 0x00 .global ov02_0235310C ov02_0235310C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x34, 0x48, 0x6C, 0x57, 0x65 .byte 0x70, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_02353120 ov02_02353120: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x34 .byte 0x48, 0x6C, 0x55, 0x73, 0x62, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_02353134 ov02_02353134: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x6A, 0x62, 0x34, 0x48, 0x6C, 0x44, 0x6E, 0x73, 0x31, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C .byte 0x00, 0x00, 0x00, 0x00 .global ov02_0235314C ov02_0235314C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x34, 0x48, 0x6C, 0x53, 0x73 .byte 0x69, 0x64, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353164 ov02_02353164: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x6A, 0x62, 0x35, 0x48, 0x6C, 0x4D, 0x6F, 0x76, 0x65, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C .byte 0x00, 0x00, 0x00, 0x00 .global ov02_0235317C ov02_0235317C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x32, 0x48, 0x6C, 0x57, 0x69 .byte 0x46, 0x69, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353194 ov02_02353194: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x6A, 0x62, 0x35, 0x48, 0x6C, 0x49, 0x6E, 0x66, 0x6F, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C .byte 0x00, 0x00, 0x00, 0x00 .global ov02_023531AC ov02_023531AC: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x34, 0x48, 0x6C, 0x4D, 0x61 .byte 0x73, 0x6B, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_023531C4 ov02_023531C4: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x6A, 0x62, 0x34, 0x48, 0x6C, 0x53, 0x65, 0x74, 0x32, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C .byte 0x00, 0x00, 0x00, 0x00 .global ov02_023531DC ov02_023531DC: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x34, 0x48, 0x6C, 0x44, 0x6E .byte 0x73, 0x30, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_023531F4 ov02_023531F4: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x6A, 0x62, 0x34, 0x48, 0x6C, 0x53, 0x65, 0x74, 0x33, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C .byte 0x00, 0x00, 0x00, 0x00 .global ov02_0235320C ov02_0235320C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x34, 0x48, 0x6C, 0x53, 0x65 .byte 0x74, 0x31, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353224 ov02_02353224: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x6A, 0x62, 0x33, 0x48, 0x6C, 0x4C, 0x69, 0x73, 0x74, 0x31, 0x2E, 0x6E, 0x73, 0x63, 0x2E .byte 0x6C, 0x00, 0x00, 0x00 .global ov02_0235323C ov02_0235323C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x33, 0x48, 0x6C, 0x4C, 0x69 .byte 0x73, 0x74, 0x32, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00, 0x00 .global ov02_02353254 ov02_02353254: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x6A, 0x62, 0x33, 0x48, 0x6C, 0x4C, 0x69, 0x73, 0x74, 0x33, 0x2E, 0x6E, 0x73, 0x63, 0x2E .byte 0x6C, 0x00, 0x00, 0x00 .global ov02_0235326C ov02_0235326C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x35, 0x48, 0x6C, 0x45, 0x72 .byte 0x61, 0x73, 0x65, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00, 0x00 .global ov02_02353284 ov02_02353284: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x6A, 0x62, 0x35, 0x48, 0x6C, 0x4F, 0x70, 0x74, 0x69, 0x6F, 0x6E, 0x2E, 0x6E, 0x73, 0x63 .byte 0x2E, 0x6C, 0x00, 0x00 .global ov02_0235329C ov02_0235329C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x34, 0x48, 0x6C, 0x47, 0x61 .byte 0x74, 0x65, 0x77, 0x61, 0x79, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_023532B4 ov02_023532B4: .word ov02_0235317C .word ov02_023530E4 .word ov02_02353224 .word ov02_0235323C .word ov02_02353254 .word ov02_0235320C .word ov02_023531C4 .word ov02_023531F4 .word ov02_02353120 .word ov02_0235314C .word ov02_0235310C .word ov02_023530F8 .word ov02_023531AC .word ov02_0235329C .word ov02_023531DC .word ov02_02353134 .word ov02_02353284 .word ov02_02353194 .word ov02_0235326C .word ov02_02353164 .global ov02_02353304 ov02_02353304: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x6A, 0x62, 0x42, 0x67, 0x48, 0x6C, 0x2E, 0x6E, 0x63, 0x67, 0x2E, 0x6C, 0x00, 0x00, 0x00 .global ov02_02353318 ov02_02353318: .word ov02_023533A0 .word ov02_02353340 .word ov02_02353370 .global ov02_02353324 ov02_02353324: .word ov02_023533D0 .word ov02_02353434 .word ov02_02353498 .global ov02_02353330 ov02_02353330: .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00 .global ov02_02353340 ov02_02353340: .byte 0x21, 0x40, 0x23, 0x24, 0x25, 0x5E, 0x26, 0x2A .byte 0x28, 0x29, 0x5F, 0x2B, 0x51, 0x57, 0x45, 0x52, 0x54, 0x59, 0x55, 0x49, 0x4F, 0x50, 0x7B, 0x7D .byte 0x41, 0x53, 0x44, 0x46, 0x47, 0x48, 0x4A, 0x4B, 0x4C, 0x3A, 0x22, 0x7E, 0x5A, 0x58, 0x43, 0x56 .byte 0x42, 0x4E, 0x4D, 0x3C, 0x3E, 0x3F, 0x7C, 0x00 .global ov02_02353370 ov02_02353370: .byte 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38 .byte 0x39, 0x30, 0x2D, 0x3D, 0x51, 0x57, 0x45, 0x52, 0x54, 0x59, 0x55, 0x49, 0x4F, 0x50, 0x5B, 0x5D .byte 0x41, 0x53, 0x44, 0x46, 0x47, 0x48, 0x4A, 0x4B, 0x4C, 0x3B, 0x27, 0x60, 0x5A, 0x58, 0x43, 0x56 .byte 0x42, 0x4E, 0x4D, 0x2C, 0x2E, 0x2F, 0x5C, 0x00 .global ov02_023533A0 ov02_023533A0: .byte 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38 .byte 0x39, 0x30, 0x2D, 0x3D, 0x71, 0x77, 0x65, 0x72, 0x74, 0x79, 0x75, 0x69, 0x6F, 0x70, 0x5B, 0x5D .byte 0x61, 0x73, 0x64, 0x66, 0x67, 0x68, 0x6A, 0x6B, 0x6C, 0x3B, 0x27, 0x60, 0x7A, 0x78, 0x63, 0x76 .byte 0x62, 0x6E, 0x6D, 0x2C, 0x2E, 0x2F, 0x5C, 0x00 .global ov02_023533D0 ov02_023533D0: .byte 0x31, 0x00, 0x32, 0x00, 0x33, 0x00, 0x34, 0x00 .byte 0x35, 0x00, 0x36, 0x00, 0x37, 0x00, 0x38, 0x00, 0x39, 0x00, 0x30, 0x00, 0x2D, 0x00, 0x3D, 0x00 .byte 0x71, 0x00, 0x77, 0x00, 0x65, 0x00, 0x72, 0x00, 0x74, 0x00, 0x79, 0x00, 0x75, 0x00, 0x69, 0x00 .byte 0x6F, 0x00, 0x70, 0x00, 0x5B, 0x00, 0x5D, 0x00, 0x61, 0x00, 0x73, 0x00, 0x64, 0x00, 0x66, 0x00 .byte 0x67, 0x00, 0x68, 0x00, 0x6A, 0x00, 0x6B, 0x00, 0x6C, 0x00, 0x3B, 0x00, 0x27, 0x00, 0x60, 0x00 .byte 0x7A, 0x00, 0x78, 0x00, 0x63, 0x00, 0x76, 0x00, 0x62, 0x00, 0x6E, 0x00, 0x6D, 0x00, 0x2C, 0x00 .byte 0x2E, 0x00, 0x2F, 0x00, 0x5C, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00 .global ov02_02353434 ov02_02353434: .byte 0x21, 0x00, 0x40, 0x00 .byte 0x23, 0x00, 0x24, 0x00, 0x25, 0x00, 0x5E, 0x00, 0x26, 0x00, 0x2A, 0x00, 0x28, 0x00, 0x29, 0x00 .byte 0x5F, 0x00, 0x2B, 0x00, 0x51, 0x00, 0x57, 0x00, 0x45, 0x00, 0x52, 0x00, 0x54, 0x00, 0x59, 0x00 .byte 0x55, 0x00, 0x49, 0x00, 0x4F, 0x00, 0x50, 0x00, 0x7B, 0x00, 0x7D, 0x00, 0x41, 0x00, 0x53, 0x00 .byte 0x44, 0x00, 0x46, 0x00, 0x47, 0x00, 0x48, 0x00, 0x4A, 0x00, 0x4B, 0x00, 0x4C, 0x00, 0x3A, 0x00 .byte 0x22, 0x00, 0x7E, 0x00, 0x5A, 0x00, 0x58, 0x00, 0x43, 0x00, 0x56, 0x00, 0x42, 0x00, 0x4E, 0x00 .byte 0x4D, 0x00, 0x3C, 0x00, 0x3E, 0x00, 0x3F, 0x00, 0x7C, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00 .global ov02_02353498 ov02_02353498: .byte 0x31, 0x00, 0x32, 0x00, 0x33, 0x00, 0x34, 0x00, 0x35, 0x00, 0x36, 0x00, 0x37, 0x00, 0x38, 0x00 .byte 0x39, 0x00, 0x30, 0x00, 0x2D, 0x00, 0x3D, 0x00, 0x51, 0x00, 0x57, 0x00, 0x45, 0x00, 0x52, 0x00 .byte 0x54, 0x00, 0x59, 0x00, 0x55, 0x00, 0x49, 0x00, 0x4F, 0x00, 0x50, 0x00, 0x5B, 0x00, 0x5D, 0x00 .byte 0x41, 0x00, 0x53, 0x00, 0x44, 0x00, 0x46, 0x00, 0x47, 0x00, 0x48, 0x00, 0x4A, 0x00, 0x4B, 0x00 .byte 0x4C, 0x00, 0x3B, 0x00, 0x27, 0x00, 0x60, 0x00, 0x5A, 0x00, 0x58, 0x00, 0x43, 0x00, 0x56, 0x00 .byte 0x42, 0x00, 0x4E, 0x00, 0x4D, 0x00, 0x2C, 0x00, 0x2E, 0x00, 0x2F, 0x00, 0x5C, 0x00, 0x20, 0x00 .byte 0x00, 0x00, 0x00, 0x00 .global ov02_023534FC ov02_023534FC: .byte 0x68, 0x74, 0x74, 0x70, 0x73, 0x3A, 0x2F, 0x2F, 0x6E, 0x61, 0x73, 0x2E .byte 0x6E, 0x69, 0x6E, 0x74, 0x65, 0x6E, 0x64, 0x6F, 0x77, 0x69, 0x66, 0x69, 0x2E, 0x6E, 0x65, 0x74 .byte 0x2F, 0x61, 0x63, 0x00 .global ov02_0235351C ov02_0235351C: .byte 0x64, 0x77, 0x63, 0x3A, 0x2F, 0x6D, 0x6F, 0x76, 0x65, 0x2F, 0x63, 0x68 .byte 0x69, 0x6C, 0x64, 0x2E, 0x73, 0x72, 0x6C, 0x00 .global ov02_02353530 ov02_02353530: .byte 0x64, 0x77, 0x63, 0x3A, 0x2F, 0x6D, 0x6F, 0x76 .byte 0x65, 0x2F, 0x62, 0x61, 0x6E, 0x6E, 0x65, 0x72, 0x2E, 0x70, 0x6C, 0x74, 0x00, 0x00, 0x00, 0x00 .global ov02_02353548 ov02_02353548: .byte 0x64, 0x77, 0x63, 0x3A, 0x2F, 0x6D, 0x6F, 0x76, 0x65, 0x2F, 0x62, 0x61, 0x6E, 0x6E, 0x65, 0x72 .byte 0x2E, 0x63, 0x68, 0x61, 0x72, 0x00, 0x00, 0x00 .global ov02_02353560 ov02_02353560: .word ov02_0235351C .byte 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00 .word ov02_02353548 .word ov02_02353530 .byte 0x59, 0x01, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00 .global ov02_0235357C ov02_0235357C: .byte 0x6D, 0x73, 0x67, 0x2F, 0x6B, 0x6F, 0x72, 0x2E, 0x62, 0x6D, 0x67, 0x2E .byte 0x6C, 0x00, 0x00, 0x00 .global ov02_0235358C ov02_0235358C: .byte 0x6D, 0x73, 0x67, 0x2F, 0x65, 0x6E, 0x67, 0x2E, 0x62, 0x6D, 0x67, 0x2E .byte 0x6C, 0x00, 0x00, 0x00 .global ov02_0235359C ov02_0235359C: .byte 0x6D, 0x73, 0x67, 0x2F, 0x69, 0x74, 0x61, 0x2E, 0x62, 0x6D, 0x67, 0x2E .byte 0x6C, 0x00, 0x00, 0x00 .global ov02_023535AC ov02_023535AC: .byte 0x6D, 0x73, 0x67, 0x2F, 0x67, 0x65, 0x72, 0x2E, 0x62, 0x6D, 0x67, 0x2E .byte 0x6C, 0x00, 0x00, 0x00 .global ov02_023535BC ov02_023535BC: .byte 0x6D, 0x73, 0x67, 0x2F, 0x66, 0x72, 0x65, 0x2E, 0x62, 0x6D, 0x67, 0x2E .byte 0x6C, 0x00, 0x00, 0x00 .global ov02_023535CC ov02_023535CC: .byte 0x6D, 0x73, 0x67, 0x2F, 0x73, 0x70, 0x61, 0x2E, 0x62, 0x6D, 0x67, 0x2E .byte 0x6C, 0x00, 0x00, 0x00 .global ov02_023535DC ov02_023535DC: .byte 0x6D, 0x73, 0x67, 0x2F, 0x6A, 0x61, 0x70, 0x2E, 0x62, 0x6D, 0x67, 0x2E .byte 0x6C, 0x00, 0x00, 0x00 .global ov02_023535EC ov02_023535EC: .word ov02_023535DC .word ov02_0235358C .word ov02_023535BC .word ov02_023535AC .word ov02_0235359C .word ov02_023535CC .word ov02_0235357C .global ov02_02353608 ov02_02353608: .byte 0x6D, 0x73, 0x67, 0x2F, 0x75, 0x73, 0x61, 0x2E, 0x62, 0x6D, 0x67, 0x2E, 0x6C, 0x00, 0x00, 0x00 .global ov02_02353618 ov02_02353618: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x74, 0x4D, 0x61, 0x69, 0x6E, 0x2E, 0x6E, 0x63, 0x65, 0x2E .byte 0x6C, 0x00, 0x00, 0x00 .global ov02_0235362C ov02_0235362C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x4D, 0x61, 0x69, 0x6E, 0x2E .byte 0x6E, 0x63, 0x65, 0x2E, 0x6C, 0x00, 0x00, 0x00 .global ov02_02353640 ov02_02353640: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x74, 0x42 .byte 0x67, 0x4D, 0x61, 0x69, 0x6E, 0x2E, 0x6E, 0x63, 0x67, 0x2E, 0x6C, 0x00 .global ov02_02353654 ov02_02353654: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x6A, 0x74, 0x42, 0x67, 0x4D, 0x61, 0x69, 0x6E, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00 .global ov02_02353668 ov02_02353668: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x74, 0x4F, 0x62, 0x6A, 0x4D, 0x61, 0x69, 0x6E, 0x2E, 0x6E .byte 0x63, 0x67, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353680 ov02_02353680: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x78, 0x74, 0x4F .byte 0x62, 0x6A, 0x4D, 0x61, 0x69, 0x6E, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353698 ov02_02353698: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x31, 0x2E, 0x6E .byte 0x63, 0x67, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_023536B0 ov02_023536B0: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x42 .byte 0x67, 0x53, 0x74, 0x65, 0x70, 0x31, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_023536C8 ov02_023536C8: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x4F, 0x62, 0x6A, 0x4D, 0x61, 0x69, 0x6E, 0x2E, 0x6E .byte 0x63, 0x67, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_023536E0 ov02_023536E0: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x4F .byte 0x62, 0x6A, 0x4D, 0x61, 0x69, 0x6E, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_023536F8 ov02_023536F8: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x74, 0x54, 0x6F, 0x70, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C .byte 0x00, 0x00, 0x00, 0x00 .global ov02_0235370C ov02_0235370C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x74, 0x53, 0x74, 0x65, 0x70, 0x31 .byte 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00 .global ov02_02353720 ov02_02353720: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x42 .byte 0x67, 0x53, 0x74, 0x65, 0x70, 0x31, 0x2E, 0x6E, 0x63, 0x67, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353738 ov02_02353738: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x31, 0x2E, 0x6E .byte 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353750 ov02_02353750: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x32 .byte 0x4D, 0x65, 0x6E, 0x75, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00 .global ov02_02353764 ov02_02353764: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x79, 0x62, 0x35, 0x4D, 0x75, 0x6C, 0x74, 0x69, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_02353778 ov02_02353778: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x35, 0x4D, 0x75, 0x6C, 0x74, 0x69, 0x2E, 0x6E, 0x73 .byte 0x63, 0x2E, 0x6C, 0x00 .global ov02_0235378C ov02_0235378C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x35, 0x49, 0x6E, 0x66, 0x6F .byte 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00 .global ov02_023537A0 ov02_023537A0: .byte 0x25, 0x30, 0x32, 0x58, 0x2D, 0x25, 0x30, 0x32 .byte 0x58, 0x2D, 0x25, 0x30, 0x32, 0x58, 0x2D, 0x25, 0x30, 0x32, 0x58, 0x2D, 0x25, 0x30, 0x32, 0x58 .byte 0x2D, 0x25, 0x30, 0x32, 0x58, 0x00, 0x00, 0x00 .global ov02_023537C0 ov02_023537C0: .byte 0x25, 0x30, 0x34, 0x64, 0x2D, 0x25, 0x30, 0x34 .byte 0x64, 0x2D, 0x25, 0x30, 0x34, 0x64, 0x2D, 0x25, 0x30, 0x34, 0x64, 0x00 .global ov02_023537D4 ov02_023537D4: .byte 0x2D, 0x2D, 0x2D, 0x2D .byte 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x2D, 0x00 .global ov02_023537E8 ov02_023537E8: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x42, 0x67, 0x4F, 0x70, 0x74, 0x69, 0x6F, 0x6E, 0x2E .byte 0x6E, 0x63, 0x67, 0x2E, 0x6C, 0x00, 0x00, 0x00 .global ov02_02353800 ov02_02353800: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x35 .byte 0x4F, 0x70, 0x74, 0x4D, 0x65, 0x6E, 0x75, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00, 0x00 .global ov02_02353818 ov02_02353818: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x35, 0x4D, 0x75, 0x6C, 0x74, 0x69, 0x2E, 0x6E, 0x73 .byte 0x63, 0x2E, 0x6C, 0x00 .global ov02_0235382C ov02_0235382C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x35, 0x4D, 0x75, 0x6C, 0x74 .byte 0x69, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_02353840 ov02_02353840: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x35 .byte 0x4D, 0x75, 0x6C, 0x74, 0x69, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_02353854 ov02_02353854: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x79, 0x62, 0x35, 0x4D, 0x75, 0x6C, 0x74, 0x69, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_02353868 ov02_02353868: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x35, 0x4D, 0x6F, 0x76, 0x65, 0x2E, 0x6E, 0x73, 0x63 .byte 0x2E, 0x6C, 0x00, 0x00 .global ov02_0235387C ov02_0235387C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x35, 0x4D, 0x75, 0x6C, 0x74 .byte 0x69, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_02353890 ov02_02353890: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x42 .byte 0x67, 0x53, 0x74, 0x65, 0x70, 0x33, 0x2E, 0x6E, 0x63, 0x67, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_023538A8 ov02_023538A8: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x33, 0x2E, 0x6E .byte 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_023538C0 ov02_023538C0: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x78, 0x62, 0x34 .byte 0x4D, 0x75, 0x6C, 0x74, 0x69, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_023538D4 ov02_023538D4: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x78, 0x62, 0x34, 0x4D, 0x75, 0x6C, 0x74, 0x69, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_023538E8 ov02_023538E8: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x34, 0x41, 0x70, 0x4C, 0x69, 0x73, 0x74, 0x2E, 0x6E .byte 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353900 ov02_02353900: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x4F .byte 0x62, 0x6A, 0x4B, 0x62, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00 .global ov02_02353914 ov02_02353914: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x6A, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x33, 0x2E, 0x6E, 0x63, 0x67, 0x2E, 0x6C .byte 0x00, 0x00, 0x00, 0x00 .global ov02_0235392C ov02_0235392C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65 .byte 0x70, 0x33, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353944 ov02_02353944: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x78, 0x62, 0x34, 0x45, 0x64, 0x69, 0x74, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00 .global ov02_02353958 ov02_02353958: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x4F, 0x62, 0x6A, 0x4D, 0x61, 0x69, 0x6E, 0x2E, 0x6E .byte 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353970 ov02_02353970: .byte 0x20, 0x20, 0x30, 0x00 .global ov02_02353974 ov02_02353974: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x79, 0x62, 0x4F, 0x62, 0x6A, 0x4B, 0x62, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00 .global ov02_02353988 ov02_02353988: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x33, 0x2E, 0x6E .byte 0x63, 0x67, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_023539A0 ov02_023539A0: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x42 .byte 0x67, 0x53, 0x74, 0x65, 0x70, 0x33, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_023539B8 ov02_023539B8: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x78, 0x62, 0x34, 0x45, 0x64, 0x69, 0x74, 0x41, 0x64, 0x64, 0x72 .byte 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00 .global ov02_023539D0 ov02_023539D0: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x4F .byte 0x62, 0x6A, 0x4D, 0x61, 0x69, 0x6E, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_023539E8 ov02_023539E8: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x34, 0x45, 0x72, 0x72, 0x6F, 0x72, 0x2E, 0x6E, 0x73 .byte 0x63, 0x2E, 0x6C, 0x00 .global ov02_023539FC ov02_023539FC: .byte 0x25, 0x64, 0x00, 0x00 .global ov02_02353A00 ov02_02353A00: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x4F .byte 0x62, 0x6A, 0x4B, 0x62, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00 .global ov02_02353A14 ov02_02353A14: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x6A, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x32, 0x2E, 0x6E, 0x63, 0x67, 0x2E, 0x6C .byte 0x00, 0x00, 0x00, 0x00 .global ov02_02353A2C ov02_02353A2C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65 .byte 0x70, 0x32, 0x31, 0x2E, 0x6E, 0x63, 0x67, 0x2E, 0x6C, 0x00, 0x00, 0x00 .global ov02_02353A44 ov02_02353A44: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x6A, 0x62, 0x33, 0x4C, 0x69, 0x73, 0x74, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00 .global ov02_02353A58 ov02_02353A58: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x4F, 0x62, 0x6A, 0x4D, 0x61, 0x69, 0x6E, 0x2E, 0x6E .byte 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353A70 ov02_02353A70: .byte 0x25, 0x33, 0x64, 0x2E, 0x25, 0x33, 0x64, 0x2E .byte 0x25, 0x33, 0x64, 0x2E, 0x25, 0x33, 0x64, 0x00 .global ov02_02353A80 ov02_02353A80: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x42 .byte 0x67, 0x53, 0x74, 0x65, 0x70, 0x33, 0x2E, 0x6E, 0x63, 0x67, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353A98 ov02_02353A98: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x33, 0x2E, 0x6E .byte 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353AB0 ov02_02353AB0: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x78, 0x62, 0x34 .byte 0x4E, 0x6F, 0x6E, 0x65, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00 .global ov02_02353AC4 ov02_02353AC4: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x78, 0x62, 0x34, 0x4D, 0x75, 0x6C, 0x74, 0x69, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_02353AD8 ov02_02353AD8: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x78, 0x62, 0x34, 0x4D, 0x75, 0x6C, 0x74, 0x69, 0x2E, 0x6E, 0x73 .byte 0x63, 0x2E, 0x6C, 0x00 .global ov02_02353AEC ov02_02353AEC: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x78, 0x62, 0x34, 0x4D, 0x75, 0x6C, 0x74 .byte 0x69, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_02353B00 ov02_02353B00: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x42 .byte 0x67, 0x53, 0x74, 0x65, 0x70, 0x33, 0x2E, 0x6E, 0x63, 0x67, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353B18 ov02_02353B18: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x33, 0x2E, 0x6E .byte 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353B30 ov02_02353B30: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x78, 0x62, 0x34 .byte 0x4D, 0x75, 0x6C, 0x74, 0x69, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_02353B44 ov02_02353B44: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x6A, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x33, 0x2E, 0x6E, 0x63, 0x67, 0x2E, 0x6C .byte 0x00, 0x00, 0x00, 0x00 .global ov02_02353B5C ov02_02353B5C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65 .byte 0x70, 0x33, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353B74 ov02_02353B74: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x78, 0x62, 0x34, 0x4D, 0x75, 0x6C, 0x74, 0x69, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_02353B88 ov02_02353B88: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x4F, 0x62, 0x6A, 0x57, 0x61, 0x79, 0x2E, 0x6E, 0x63 .byte 0x6C, 0x2E, 0x6C, 0x00 .global ov02_02353B9C ov02_02353B9C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65 .byte 0x70, 0x31, 0x2E, 0x6E, 0x63, 0x67, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353BB4 ov02_02353BB4: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x6A, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x31, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C .byte 0x00, 0x00, 0x00, 0x00 .global ov02_02353BCC ov02_02353BCC: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x32, 0x41, 0x70, 0x2E, 0x6E .byte 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353BE0 ov02_02353BE0: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x4F .byte 0x62, 0x6A, 0x4D, 0x61, 0x69, 0x6E, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353BF8 ov02_02353BF8: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x32, 0x2E, 0x6E .byte 0x63, 0x67, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353C10 ov02_02353C10: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x42 .byte 0x67, 0x53, 0x74, 0x65, 0x70, 0x32, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353C28 ov02_02353C28: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x33, 0x57, 0x61, 0x79, 0x2E, 0x6E, 0x73, 0x63, 0x2E .byte 0x6C, 0x00, 0x00, 0x00 .global ov02_02353C3C ov02_02353C3C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65 .byte 0x70, 0x33, 0x2E, 0x6E, 0x63, 0x67, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353C54 ov02_02353C54: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x79, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x33, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C .byte 0x00, 0x00, 0x00, 0x00 .global ov02_02353C6C ov02_02353C6C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x78, 0x62, 0x34, 0x4D, 0x75, 0x6C, 0x74 .byte 0x69, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_02353C80 ov02_02353C80: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x78, 0x62, 0x34 .byte 0x4D, 0x75, 0x6C, 0x74, 0x69, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_02353C94 ov02_02353C94: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x78, 0x62, 0x34, 0x4E, 0x6F, 0x6E, 0x65, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00 .global ov02_02353CA8 ov02_02353CA8: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x78, 0x62, 0x34, 0x4D, 0x75, 0x6C, 0x74, 0x69, 0x2E, 0x6E, 0x73 .byte 0x63, 0x2E, 0x6C, 0x00 .global ov02_02353CBC ov02_02353CBC: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65 .byte 0x70, 0x32, 0x2E, 0x6E, 0x63, 0x67, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353CD4 ov02_02353CD4: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x79, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x32, 0x2E, 0x6E, 0x63, 0x6C, 0x2E, 0x6C .byte 0x00, 0x00, 0x00, 0x00 .global ov02_02353CEC ov02_02353CEC: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x78, 0x62, 0x33, 0x4D, 0x75, 0x6C, 0x74 .byte 0x69, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_02353D00 ov02_02353D00: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x42 .byte 0x67, 0x53, 0x74, 0x65, 0x70, 0x33, 0x2E, 0x6E, 0x63, 0x67, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353D18 ov02_02353D18: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x79, 0x62, 0x42, 0x67, 0x53, 0x74, 0x65, 0x70, 0x33, 0x2E, 0x6E .byte 0x63, 0x6C, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353D30 ov02_02353D30: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x62, 0x34 .byte 0x55, 0x73, 0x62, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00, 0x00 .global ov02_02353D44 ov02_02353D44: .byte 0x25, 0x33, 0x64, 0x25 .byte 0x33, 0x64, 0x25, 0x33, 0x64, 0x25, 0x33, 0x64, 0x00, 0x00, 0x00, 0x00 .global ov02_02353D54 ov02_02353D54: .byte 0x73, 0x6F, 0x75, 0x6E .byte 0x64, 0x2F, 0x73, 0x6F, 0x75, 0x6E, 0x64, 0x5F, 0x64, 0x61, 0x74, 0x61, 0x2E, 0x73, 0x64, 0x61 .byte 0x74, 0x2E, 0x6C, 0x00 .global ov02_02353D6C ov02_02353D6C: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x74, 0x54, 0x6F, 0x70, 0x2E, 0x6E .byte 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00 .global ov02_02353D80 ov02_02353D80: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x74, 0x53 .byte 0x74, 0x65, 0x70, 0x31, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00 .global ov02_02353D94 ov02_02353D94: .byte 0x63, 0x68, 0x61, 0x72 .byte 0x2F, 0x6A, 0x74, 0x53, 0x74, 0x65, 0x70, 0x32, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00, 0x00 .global ov02_02353DA8 ov02_02353DA8: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x74, 0x53, 0x74, 0x65, 0x70, 0x33, 0x2E, 0x6E, 0x73, 0x63 .byte 0x2E, 0x6C, 0x00, 0x00 .global ov02_02353DBC ov02_02353DBC: .byte 0x63, 0x68, 0x61, 0x72, 0x2F, 0x6A, 0x74, 0x4F, 0x70, 0x74, 0x69, 0x6F .byte 0x6E, 0x2E, 0x6E, 0x73, 0x63, 0x2E, 0x6C, 0x00 .global ov02_02353DD0 ov02_02353DD0: .word ov02_02353D80 .word ov02_02353D94 .word ov02_02353DA8 .word ov02_02353DBC .word ov02_02353D6C .global ov02_02353DE4 ov02_02353DE4: .byte 0x4D, 0x42, 0x5F, 0x43 .byte 0x4F, 0x4D, 0x4D, 0x5F, 0x50, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x45, 0x4E, 0x44, 0x00, 0x00 .global ov02_02353DF8 ov02_02353DF8: .byte 0x4D, 0x42, 0x5F, 0x43, 0x4F, 0x4D, 0x4D, 0x5F, 0x50, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x4E .byte 0x4F, 0x4E, 0x45, 0x00 .global ov02_02353E0C ov02_02353E0C: .byte 0x4D, 0x42, 0x5F, 0x43, 0x4F, 0x4D, 0x4D, 0x5F, 0x50, 0x53, 0x54, 0x41 .byte 0x54, 0x45, 0x5F, 0x45, 0x52, 0x52, 0x4F, 0x52, 0x00, 0x00, 0x00, 0x00 .global ov02_02353E24 ov02_02353E24: .byte 0x4D, 0x42, 0x5F, 0x43 .byte 0x4F, 0x4D, 0x4D, 0x5F, 0x50, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x4B, 0x49, 0x43, 0x4B, 0x45 .byte 0x44, 0x00, 0x00, 0x00 .global ov02_02353E3C ov02_02353E3C: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56, 0x5F, 0x4D, 0x42, 0x50 .byte 0x5F, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x53, 0x54, 0x4F, 0x50, 0x00 .global ov02_02353E54 ov02_02353E54: .byte 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00 .word ov02_02353E3C .word ov02_02353EC8 .word ov02_02353EFC .word ov02_023540B0 .word ov02_02354030 .word ov02_02353FC0 .word ov02_02353F50 .word ov02_02353F34 .word ov02_02353DF8 .word ov02_02354050 .word ov02_02353EE0 .word ov02_02353FA4 .word ov02_02353E24 .word ov02_02353FDC .word ov02_02353FF8 .word ov02_02354070 .word ov02_02354014 .word ov02_02354090 .word ov02_02353F18 .word ov02_02353F6C .word ov02_02353DE4 .word ov02_02353E0C .word ov02_02353F88 .global ov02_02353EC8 ov02_02353EC8: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56, 0x5F, 0x4D, 0x42, 0x50, 0x5F, 0x53, 0x54, 0x41 .byte 0x54, 0x45, 0x5F, 0x49, 0x44, 0x4C, 0x45, 0x00 .global ov02_02353EE0 ov02_02353EE0: .byte 0x4D, 0x42, 0x5F, 0x43, 0x4F, 0x4D, 0x4D, 0x5F .byte 0x50, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x43, 0x4F, 0x4E, 0x4E, 0x45, 0x43, 0x54, 0x45, 0x44 .byte 0x00, 0x00, 0x00, 0x00 .global ov02_02353EFC ov02_02353EFC: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56, 0x5F, 0x4D, 0x42, 0x50 .byte 0x5F, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x45, 0x4E, 0x54, 0x52, 0x59, 0x00, 0x00, 0x00, 0x00 .global ov02_02353F18 ov02_02353F18: .byte 0x4D, 0x42, 0x5F, 0x43, 0x4F, 0x4D, 0x4D, 0x5F, 0x50, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x52 .byte 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x45, 0x44, 0x00, 0x00, 0x00, 0x00 .global ov02_02353F34 ov02_02353F34: .byte 0x44, 0x57, 0x43, 0x69 .byte 0x5F, 0x4D, 0x4F, 0x56, 0x5F, 0x4D, 0x42, 0x50, 0x5F, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x45 .byte 0x52, 0x52, 0x4F, 0x52, 0x00, 0x00, 0x00, 0x00 .global ov02_02353F50 ov02_02353F50: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56 .byte 0x5F, 0x4D, 0x42, 0x50, 0x5F, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x43, 0x41, 0x4E, 0x43, 0x45 .byte 0x4C, 0x00, 0x00, 0x00 .global ov02_02353F6C ov02_02353F6C: .byte 0x4D, 0x42, 0x5F, 0x43, 0x4F, 0x4D, 0x4D, 0x5F, 0x50, 0x53, 0x54, 0x41 .byte 0x54, 0x45, 0x5F, 0x4D, 0x45, 0x4D, 0x42, 0x45, 0x52, 0x5F, 0x46, 0x55, 0x4C, 0x4C, 0x00, 0x00 .global ov02_02353F88 ov02_02353F88: .byte 0x4D, 0x42, 0x5F, 0x43, 0x4F, 0x4D, 0x4D, 0x5F, 0x50, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x57 .byte 0x41, 0x49, 0x54, 0x5F, 0x54, 0x4F, 0x5F, 0x53, 0x45, 0x4E, 0x44, 0x00 .global ov02_02353FA4 ov02_02353FA4: .byte 0x4D, 0x42, 0x5F, 0x43 .byte 0x4F, 0x4D, 0x4D, 0x5F, 0x50, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x44, 0x49, 0x53, 0x43, 0x4F .byte 0x4E, 0x4E, 0x45, 0x43, 0x54, 0x45, 0x44, 0x00 .global ov02_02353FC0 ov02_02353FC0: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56 .byte 0x5F, 0x4D, 0x42, 0x50, 0x5F, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x43, 0x4F, 0x4D, 0x50, 0x4C .byte 0x45, 0x54, 0x45, 0x00 .global ov02_02353FDC ov02_02353FDC: .byte 0x4D, 0x42, 0x5F, 0x43, 0x4F, 0x4D, 0x4D, 0x5F, 0x50, 0x53, 0x54, 0x41 .byte 0x54, 0x45, 0x5F, 0x52, 0x45, 0x51, 0x5F, 0x41, 0x43, 0x43, 0x45, 0x50, 0x54, 0x45, 0x44, 0x00 .global ov02_02353FF8 ov02_02353FF8: .byte 0x4D, 0x42, 0x5F, 0x43, 0x4F, 0x4D, 0x4D, 0x5F, 0x50, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x53 .byte 0x45, 0x4E, 0x44, 0x5F, 0x50, 0x52, 0x4F, 0x43, 0x45, 0x45, 0x44, 0x00 .global ov02_02354014 ov02_02354014: .byte 0x4D, 0x42, 0x5F, 0x43 .byte 0x4F, 0x4D, 0x4D, 0x5F, 0x50, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x42, 0x4F, 0x4F, 0x54, 0x5F .byte 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x00 .global ov02_02354030 ov02_02354030: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56 .byte 0x5F, 0x4D, 0x42, 0x50, 0x5F, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x52, 0x45, 0x42, 0x4F, 0x4F .byte 0x54, 0x49, 0x4E, 0x47, 0x00, 0x00, 0x00, 0x00 .global ov02_02354050 ov02_02354050: .byte 0x4D, 0x42, 0x5F, 0x43, 0x4F, 0x4D, 0x4D, 0x5F .byte 0x50, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x49, 0x4E, 0x49, 0x54, 0x5F, 0x43, 0x4F, 0x4D, 0x50 .byte 0x4C, 0x45, 0x54, 0x45, 0x00, 0x00, 0x00, 0x00 .global ov02_02354070 ov02_02354070: .byte 0x4D, 0x42, 0x5F, 0x43, 0x4F, 0x4D, 0x4D, 0x5F .byte 0x50, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x53, 0x45, 0x4E, 0x44, 0x5F, 0x43, 0x4F, 0x4D, 0x50 .byte 0x4C, 0x45, 0x54, 0x45, 0x00, 0x00, 0x00, 0x00 .global ov02_02354090 ov02_02354090: .byte 0x4D, 0x42, 0x5F, 0x43, 0x4F, 0x4D, 0x4D, 0x5F .byte 0x50, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x42, 0x4F, 0x4F, 0x54, 0x5F, 0x53, 0x54, 0x41, 0x52 .byte 0x54, 0x41, 0x42, 0x4C, 0x45, 0x00, 0x00, 0x00 .global ov02_023540B0 ov02_023540B0: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56 .byte 0x5F, 0x4D, 0x42, 0x50, 0x5F, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x44, 0x41, 0x54, 0x41, 0x53 .byte 0x45, 0x4E, 0x44, 0x49, 0x4E, 0x47, 0x00, 0x00 .global ov02_023540D0 ov02_023540D0: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56 .byte 0x5F, 0x57, 0x48, 0x5F, 0x53, 0x59, 0x53, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x53, 0x54, 0x4F .byte 0x50, 0x00, 0x00, 0x00 .global ov02_023540EC ov02_023540EC: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56, 0x5F, 0x57, 0x48, 0x5F .byte 0x53, 0x59, 0x53, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x49, 0x44, 0x4C, 0x45, 0x00, 0x00, 0x00 .global ov02_02354108 ov02_02354108: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56, 0x5F, 0x57, 0x48, 0x5F, 0x53, 0x59, 0x53, 0x53 .byte 0x54, 0x41, 0x54, 0x45, 0x5F, 0x42, 0x55, 0x53, 0x59, 0x00, 0x00, 0x00 .global ov02_02354124 ov02_02354124: .byte 0x44, 0x57, 0x43, 0x69 .byte 0x5F, 0x4D, 0x4F, 0x56, 0x5F, 0x57, 0x48, 0x5F, 0x53, 0x59, 0x53, 0x53, 0x54, 0x41, 0x54, 0x45 .byte 0x5F, 0x45, 0x52, 0x52, 0x4F, 0x52, 0x00, 0x00 .global ov02_02354140 ov02_02354140: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56 .byte 0x5F, 0x57, 0x48, 0x5F, 0x53, 0x59, 0x53, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x53, 0x43, 0x41 .byte 0x4E, 0x4E, 0x49, 0x4E, 0x47, 0x00, 0x00, 0x00 .global ov02_02354160 ov02_02354160: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56 .byte 0x5F, 0x57, 0x48, 0x5F, 0x53, 0x59, 0x53, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x43, 0x4F, 0x4E .byte 0x4E, 0x45, 0x43, 0x54, 0x45, 0x44, 0x00, 0x00 .global ov02_02354180 ov02_02354180: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56 .byte 0x5F, 0x57, 0x48, 0x5F, 0x53, 0x59, 0x53, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x4B, 0x45, 0x59 .byte 0x53, 0x48, 0x41, 0x52, 0x49, 0x4E, 0x47, 0x00 .global ov02_023541A0 ov02_023541A0: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56 .byte 0x5F, 0x57, 0x48, 0x5F, 0x53, 0x59, 0x53, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5F, 0x44, 0x41, 0x54 .byte 0x41, 0x53, 0x48, 0x41, 0x52, 0x49, 0x4E, 0x47, 0x00, 0x00, 0x00, 0x00 .global ov02_023541C4 ov02_023541C4: .byte 0x44, 0x57, 0x43, 0x69 .byte 0x5F, 0x4D, 0x4F, 0x56, 0x5F, 0x57, 0x48, 0x5F, 0x53, 0x59, 0x53, 0x53, 0x54, 0x41, 0x54, 0x45 .byte 0x5F, 0x43, 0x4F, 0x4E, 0x4E, 0x45, 0x43, 0x54, 0x5F, 0x46, 0x41, 0x49, 0x4C, 0x00, 0x00, 0x00 .global ov02_023541E8 ov02_023541E8: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56, 0x5F, 0x57, 0x48, 0x5F, 0x53, 0x59, 0x53, 0x53 .byte 0x54, 0x41, 0x54, 0x45, 0x5F, 0x4D, 0x45, 0x41, 0x53, 0x55, 0x52, 0x45, 0x43, 0x48, 0x41, 0x4E .byte 0x4E, 0x45, 0x4C, 0x00 .global ov02_0235420C ov02_0235420C: .word ov02_023540D0 .word ov02_023540EC .word ov02_02354140 .word ov02_02354108 .word ov02_02354160 .word ov02_023541A0 .word ov02_02354180 .word ov02_023541E8 .word ov02_023541C4 .word ov02_02354124 .global ov02_02354234 ov02_02354234: .byte 0x25, 0x73, 0x20, 0x2D .byte 0x3E, 0x20, 0x00, 0x00 .global ov02_0235423C ov02_0235423C: .byte 0x25, 0x73, 0x0A, 0x00 .global ov02_02354240 ov02_02354240: .byte 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x61, 0x72 .byte 0x65, 0x6E, 0x74, 0x20, 0x2D, 0x20, 0x6E, 0x65, 0x77, 0x20, 0x63, 0x68, 0x69, 0x6C, 0x64, 0x20 .byte 0x28, 0x61, 0x69, 0x64, 0x20, 0x25, 0x78, 0x29, 0x20, 0x63, 0x6F, 0x6E, 0x6E, 0x65, 0x63, 0x74 .byte 0x65, 0x64, 0x0A, 0x00 .global ov02_0235426C ov02_0235426C: .byte 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x61, 0x72, 0x65, 0x6E, 0x74, 0x20 .byte 0x2D, 0x20, 0x63, 0x68, 0x69, 0x6C, 0x64, 0x20, 0x28, 0x61, 0x69, 0x64, 0x20, 0x25, 0x78, 0x29 .byte 0x20, 0x64, 0x69, 0x73, 0x63, 0x6F, 0x6E, 0x6E, 0x65, 0x63, 0x74, 0x65, 0x64, 0x0A, 0x00, 0x00 .global ov02_02354298 ov02_02354298: .byte 0x75, 0x6E, 0x6B, 0x6E, 0x6F, 0x77, 0x6E, 0x20, 0x69, 0x6E, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65 .byte 0x2C, 0x20, 0x73, 0x74, 0x61, 0x74, 0x65, 0x20, 0x3D, 0x20, 0x25, 0x64, 0x0A, 0x00, 0x00, 0x00 .global ov02_023542B8 ov02_023542B8: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56, 0x5F, 0x57, 0x48, 0x5F, 0x53, 0x74, 0x61, 0x74 .byte 0x65, 0x49, 0x6E, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x61, 0x72, 0x65, 0x6E, 0x74, 0x4B, 0x65 .byte 0x79, 0x53, 0x68, 0x61, 0x72, 0x65, 0x20, 0x66, 0x61, 0x69, 0x6C, 0x65, 0x64, 0x0A, 0x00, 0x00 .global ov02_023542E8 ov02_023542E8: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56, 0x5F, 0x57, 0x48, 0x5F, 0x53, 0x74, 0x61, 0x74 .byte 0x65, 0x49, 0x6E, 0x45, 0x6E, 0x64, 0x50, 0x61, 0x72, 0x65, 0x6E, 0x74, 0x20, 0x66, 0x61, 0x69 .byte 0x6C, 0x65, 0x64, 0x0A, 0x00, 0x00, 0x00, 0x00 .global ov02_02354310 ov02_02354310: .byte 0x72, 0x65, 0x63, 0x76, 0x20, 0x62, 0x75, 0x66 .byte 0x66, 0x65, 0x72, 0x20, 0x73, 0x69, 0x7A, 0x65, 0x20, 0x3D, 0x20, 0x25, 0x64, 0x0A, 0x00, 0x00 .global ov02_02354328 ov02_02354328: .byte 0x73, 0x65, 0x6E, 0x64, 0x20, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x20, 0x73, 0x69, 0x7A, 0x65 .byte 0x20, 0x3D, 0x20, 0x25, 0x64, 0x0A, 0x00, 0x00 .global ov02_02354340 ov02_02354340: .byte 0x63, 0x68, 0x61, 0x6E, 0x6E, 0x65, 0x6C, 0x20 .byte 0x25, 0x64, 0x20, 0x62, 0x72, 0x61, 0x74, 0x69, 0x6F, 0x20, 0x3D, 0x20, 0x25, 0x78, 0x0A, 0x00 .global ov02_02354358 ov02_02354358: .byte 0x64, 0x65, 0x63, 0x69, 0x64, 0x65, 0x64, 0x20, 0x63, 0x68, 0x61, 0x6E, 0x6E, 0x65, 0x6C, 0x20 .byte 0x3D, 0x20, 0x25, 0x64, 0x0A, 0x00, 0x00, 0x00 .global ov02_02354370 ov02_02354370: .byte 0x75, 0x6E, 0x6B, 0x6E, 0x6F, 0x77, 0x6E, 0x20 .byte 0x63, 0x6F, 0x6E, 0x6E, 0x65, 0x63, 0x74, 0x20, 0x6D, 0x6F, 0x64, 0x65, 0x20, 0x25, 0x64, 0x0A .byte 0x00, 0x00, 0x00, 0x00 .global ov02_0235438C ov02_0235438C: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56, 0x5F, 0x57, 0x48, 0x5F .byte 0x53, 0x74, 0x65, 0x70, 0x44, 0x61, 0x74, 0x61, 0x53, 0x68, 0x61, 0x72, 0x69, 0x6E, 0x67, 0x20 .byte 0x2D, 0x20, 0x57, 0x61, 0x72, 0x6E, 0x69, 0x6E, 0x67, 0x20, 0x4E, 0x6F, 0x20, 0x43, 0x68, 0x69 .byte 0x6C, 0x64, 0x0A, 0x00 .global ov02_023543BC ov02_023543BC: .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56, 0x5F, 0x57, 0x48, 0x5F .byte 0x53, 0x74, 0x65, 0x70, 0x44, 0x61, 0x74, 0x61, 0x53, 0x68, 0x61, 0x72, 0x69, 0x6E, 0x67, 0x20 .byte 0x2D, 0x20, 0x57, 0x61, 0x72, 0x6E, 0x69, 0x6E, 0x67, 0x20, 0x4E, 0x6F, 0x20, 0x44, 0x61, 0x74 .byte 0x61, 0x53, 0x65, 0x74, 0x0A, 0x00, 0x00, 0x00 .global ov02_023543F0 ov02_023543F0: .byte 0x61, 0x6C, 0x72, 0x65, 0x61, 0x64, 0x79, 0x20 .byte 0x44, 0x57, 0x43, 0x69, 0x5F, 0x4D, 0x4F, 0x56, 0x5F, 0x57, 0x48, 0x5F, 0x53, 0x59, 0x53, 0x53 .byte 0x54, 0x41, 0x54, 0x45, 0x5F, 0x49, 0x44, 0x4C, 0x45, 0x0A, 0x00, 0x00 .global ov02_02354414 ov02_02354414: .byte 0x44, 0x57, 0x43, 0x69 .byte 0x5F, 0x4D, 0x4F, 0x56, 0x5F, 0x57, 0x48, 0x5F, 0x46, 0x69, 0x6E, 0x61, 0x6C, 0x69, 0x7A, 0x65 .byte 0x2C, 0x20, 0x73, 0x74, 0x61, 0x74, 0x65, 0x20, 0x3D, 0x20, 0x25, 0x64, 0x0A, 0x00, 0x00, 0x00 .global ov02_02354438 ov02_02354438: .byte 0x72, 0x6F, 0x6D, 0x3A, 0x2F, 0x64, 0x77, 0x63, 0x2F, 0x75, 0x74, 0x69, 0x6C, 0x69, 0x74, 0x79 .byte 0x2E, 0x62, 0x69, 0x6E, 0x00, 0x00, 0x00, 0x00 .global ov02_02354450 ov02_02354450: .byte 0x25, 0x73, 0x3A, 0x2F, 0x00, 0x00, 0x00, 0x00 .global ov02_02354458 ov02_02354458: .byte 0x72, 0x6F, 0x6D, 0x3A, 0x2F, 0x00, 0x00, 0x00 .global ov02_02354460 ov02_02354460: .byte 0x2E, 0x6C, 0x00, 0x00 .global ov02_02354464 ov02_02354464: .word ov02_02354484 .word ov02_02354474 .global ov02_0235446C ov02_0235446C: .word ov02_02354494 .word ov02_02354474 .global ov02_02354474 ov02_02354474: .byte 0x6D, 0x73, 0x67, 0x2F .byte 0x6C, 0x63, 0x5F, 0x73, 0x2E, 0x4E, 0x46, 0x54, 0x52, 0x2E, 0x6C, 0x00 .global ov02_02354484 ov02_02354484: .byte 0x6D, 0x73, 0x67, 0x2F .byte 0x6B, 0x63, 0x5F, 0x6D, 0x2E, 0x4E, 0x46, 0x54, 0x52, 0x2E, 0x6C, 0x00 .global ov02_02354494 ov02_02354494: .byte 0x6D, 0x73, 0x67, 0x2F .byte 0x6C, 0x63, 0x5F, 0x6D, 0x2E, 0x4E, 0x46, 0x54, 0x52, 0x2E, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .bss .global ov02_023544C0 ov02_023544C0: .space 0x4 .global ov02_023544C4 ov02_023544C4: .space 0x1C .global ov02_023544E0 ov02_023544E0: .space 0x10 .global ov02_023544F0 ov02_023544F0: .space 0xC .global ov02_023544FC ov02_023544FC: .space 0x23E4 .global ov02_023568E0 ov02_023568E0: .space 0xC .global ov02_023568EC ov02_023568EC: .space 0xC .global ov02_023568F8 ov02_023568F8: .space 0xC .global ov02_02356904 ov02_02356904: .space 0x440 .global ov02_02356D44 ov02_02356D44: .space 0x18 .global ov02_02356D5C ov02_02356D5C: .space 0x4 .global ov02_02356D60 ov02_02356D60: .space 0x468 .global ov02_023571C8 ov02_023571C8: .space 0x4C .global ov02_02357214 ov02_02357214: .space 0x80 .global ov02_02357294 ov02_02357294: .space 0x8 .global ov02_0235729C ov02_0235729C: .space 0x40 .global ov02_023572DC ov02_023572DC: .space 0x5B4 .global ov02_02357890 ov02_02357890: .space 0x4 .global ov02_02357894 ov02_02357894: .space 0x3C .global ov02_023578D0 ov02_023578D0: .space 0xC .global ov02_023578DC ov02_023578DC: .space 0x66C .global ov02_02357F48 ov02_02357F48: .space 0x18 .global ov02_02357F60 ov02_02357F60: .space 0xC .global ov02_02357F6C ov02_02357F6C: .space 0x5D0 .global ov02_0235853C ov02_0235853C: .space 0x4 .global ov02_02358540 ov02_02358540: .space 0x1C .global ov02_0235855C ov02_0235855C: .space 0x4 .global ov02_02358560 ov02_02358560: .space 0x1C .global ov02_0235857C ov02_0235857C: .space 0x280 .global ov02_023587FC ov02_023587FC: .space 0x400 .global ov02_02358BFC ov02_02358BFC: .space 0x8 .global ov02_02358C04 ov02_02358C04: .space 0x130 .global ov02_02358D34 ov02_02358D34: .space 0x130 .global ov02_02358E64 ov02_02358E64: .space 0x70 .global ov02_02358ED4 ov02_02358ED4: .space 0x3C8 .global ov02_0235929C ov02_0235929C: .space 0x8 .global ov02_023592A4 ov02_023592A4: .space 0x2 .global ov02_023592A6 ov02_023592A6: .space 0x7A .global ov02_02359320 ov02_02359320: .space 0xC .global ov02_0235932C ov02_0235932C: .space 0x4 .global ov02_02359330 ov02_02359330: .space 0x10 .global ov02_02359340 ov02_02359340: .space 0x20 .global ov02_02359360 ov02_02359360: .space 0xC0 .global ov02_02359420 ov02_02359420: .space 0x60 .global ov02_02359480 ov02_02359480: .space 0x28 .global ov02_023594A8 ov02_023594A8: .space 0x8 .global ov02_023594B0 ov02_023594B0: .space 0x20 .global ov02_023594D0 ov02_023594D0: .space 0x50 .global ov02_02359520 ov02_02359520: .space 0x30 .global ov02_02359550 ov02_02359550: .space 0x4 .global ov02_02359554 ov02_02359554: .space 0x10 .global ov02_02359564 ov02_02359564: .space 0x18 .global ov02_0235957C ov02_0235957C: .space 0xC0 .global ov02_0235963C ov02_0235963C: .space 0x14 .global ov02_02359650 ov02_02359650: .space 0x14 .global ov02_02359664 ov02_02359664: .space 0x80 .global ov02_023596E4 ov02_023596E4: .space 0x40 .global ov02_02359724 ov02_02359724: .space 0xEC .global ov02_02359810 ov02_02359810: .space 0x14 .global ov02_02359824 ov02_02359824: .space 0x2C .global ov02_02359850 ov02_02359850: .space 0x38 .global ov02_02359888 ov02_02359888: .space 0x98 .global ov02_02359920 ov02_02359920: .space 0x58 .global ov02_02359978 ov02_02359978: .space 0x8 .global ov02_02359980 ov02_02359980: .space 0x8 .global ov02_02359988 ov02_02359988: .space 0x8 .global ov02_02359990 ov02_02359990: .space 0x10 .global ov02_023599A0 ov02_023599A0: .space 0x8 .global ov02_023599A8 ov02_023599A8: .space 0x18 .global ov02_023599C0 ov02_023599C0: .space 0x20 .global ov02_023599E0 ov02_023599E0: .space 0x24 .global ov02_02359A04 ov02_02359A04: .space 0x8 .global ov02_02359A0C ov02_02359A0C: .space 0x7F8 .global ov02_0235A204 ov02_0235A204: .space 0x800 .global ov02_0235AA04 ov02_0235AA04: .space 0x4 .global ov02_0235AA08 ov02_0235AA08: .space 0x4 .global ov02_0235AA0C ov02_0235AA0C: .space 0x4 .global ov02_0235AA10 ov02_0235AA10: .space 0x40 .global ov02_0235AA50 ov02_0235AA50: .space 0x4 .global ov02_0235AA54 ov02_0235AA54: .space 0x4 .global ov02_0235AA58 ov02_0235AA58: .space 0x4 .global ov02_0235AA5C ov02_0235AA5C: .space 0x4 .global ov02_0235AA60 ov02_0235AA60: .space 0x4 .global ov02_0235AA64 ov02_0235AA64: .space 0x4 .global ov02_0235AA68 ov02_0235AA68: .space 0x4 .global ov02_0235AA6C ov02_0235AA6C: .space 0x20 .global ov02_0235AA8C ov02_0235AA8C: .space 0x4 .global ov02_0235AA90 ov02_0235AA90: .space 0x4 .global ov02_0235AA94 ov02_0235AA94: .space 0x4 .global ov02_0235AA98 ov02_0235AA98: .space 0x4 .global ov02_0235AA9C ov02_0235AA9C: .space 0x8 .global ov02_0235AAA4 ov02_0235AAA4: .space 0x4 .global ov02_0235AAA8 ov02_0235AAA8: .space 0xC .global ov02_0235AAB4 ov02_0235AAB4: .space 0x4 .global ov02_0235AAB8 ov02_0235AAB8: .space 0x4 .global ov02_0235AABC ov02_0235AABC: .space 0x4 .global ov02_0235AAC0 ov02_0235AAC0: .space 0x4 .global ov02_0235AAC4 ov02_0235AAC4: .space 0x4 .global ov02_0235AAC8 ov02_0235AAC8: .space 0x4 .global ov02_0235AACC ov02_0235AACC: .space 0x8 .global ov02_0235AAD4 ov02_0235AAD4: .space 0x4 .global ov02_0235AAD8 ov02_0235AAD8: .space 0x4 .global ov02_0235AADC ov02_0235AADC: .space 0x4 .global ov02_0235AAE0 ov02_0235AAE0: .space 0x4 .global ov02_0235AAE4 ov02_0235AAE4: .space 0x4 .global ov02_0235AAE8 ov02_0235AAE8: .space 0x4 .global ov02_0235AAEC ov02_0235AAEC: .space 0x8 .global ov02_0235AAF4 ov02_0235AAF4: .space 0x4 .global ov02_0235AAF8 ov02_0235AAF8: .space 0x4 .global ov02_0235AAFC ov02_0235AAFC: .space 0x4 .global ov02_0235AB00 ov02_0235AB00: .space 0x4 .global ov02_0235AB04 ov02_0235AB04: .space 0x4 .global ov02_0235AB08 ov02_0235AB08: .space 0x4 .global ov02_0235AB0C ov02_0235AB0C: .space 0x4 .global ov02_0235AB10 ov02_0235AB10: .space 0x4 .global ov02_0235AB14 ov02_0235AB14: .space 0x8 .global ov02_0235AB1C ov02_0235AB1C: .space 0x8 .global ov02_0235AB24 ov02_0235AB24: .space 0x4 .global ov02_0235AB28 ov02_0235AB28: .space 0x4 .global ov02_0235AB2C ov02_0235AB2C: .space 0x4 .global ov02_0235AB30 ov02_0235AB30: .space 0x4 .global ov02_0235AB34 ov02_0235AB34: .space 0xC .global ov02_0235AB40 ov02_0235AB40: .space 0x4 .global ov02_0235AB44 ov02_0235AB44: .space 0x4 .global ov02_0235AB48 ov02_0235AB48: .space 0x4 .global ov02_0235AB4C ov02_0235AB4C: .space 0x4 .global ov02_0235AB50 ov02_0235AB50: .space 0x4 .global ov02_0235AB54 ov02_0235AB54: .space 0x4 .global ov02_0235AB58 ov02_0235AB58: .space 0x4 .global ov02_0235AB5C ov02_0235AB5C: .space 0x4 .global ov02_0235AB60 ov02_0235AB60: .space 0x4 .global ov02_0235AB64 ov02_0235AB64: .space 0x8 .global ov02_0235AB6C ov02_0235AB6C: .space 0x4 .global ov02_0235AB70 ov02_0235AB70: .space 0x4 .global ov02_0235AB74 ov02_0235AB74: .space 0x4 .global ov02_0235AB78 ov02_0235AB78: .space 0x8 .global ov02_0235AB80 ov02_0235AB80: .space 0x4 .global ov02_0235AB84 ov02_0235AB84: .space 0x4 .global ov02_0235AB88 ov02_0235AB88: .space 0x4 .global ov02_0235AB8C ov02_0235AB8C: .space 0x4 .global ov02_0235AB90 ov02_0235AB90: .space 0x4 .global ov02_0235AB94 ov02_0235AB94: .space 0x10 .global ov02_0235ABA4 ov02_0235ABA4: .space 0x8 .global ov02_0235ABAC ov02_0235ABAC: .space 0x4 .global ov02_0235ABB0 ov02_0235ABB0: .space 0x4 .global ov02_0235ABB4 ov02_0235ABB4: .space 0x34 .global ov02_0235ABE8 ov02_0235ABE8: .space 0x18