.include "asm/macros.inc" .include "global.inc" .section .text .balign 4, 0 thumb_func_start MOD41_02254840 MOD41_02254840: ; 0x02254840 ldr r3, _02254848 ; =MOD20_02252978 ldr r0, _0225484C ; =MOD41_02254854 ldr r1, _02254850 ; =MOD41_02254AD8 bx r3 .align 2, 0 _02254848: .word MOD20_02252978 _0225484C: .word MOD41_02254854 _02254850: .word MOD41_02254AD8 thumb_func_end MOD41_02254840 thumb_func_start MOD41_02254854 MOD41_02254854: ; 0x02254854 push {r3, r4, r5, r6, r7, lr} add r5, r0, #0 add r6, r1, #0 mov r0, #8 mov r1, #0x90 add r7, r2, #0 str r3, [sp] bl FUN_02016998 add r4, r0, #0 beq _02254892 ldr r3, [sp] add r1, r6, #0 add r2, r7, #0 bl MOD41_02254990 cmp r0, #0 beq _0225488C ldr r0, _02254898 ; =MOD41_02254A88 add r1, r4, #0 mov r2, #1 bl FUN_0200CA44 cmp r0, #0 beq _0225488C str r4, [r5] mov r0, #1 pop {r3, r4, r5, r6, r7, pc} _0225488C: add r0, r4, #0 bl FUN_02016A18 _02254892: mov r0, #0 pop {r3, r4, r5, r6, r7, pc} nop _02254898: .word MOD41_02254A88 thumb_func_end MOD41_02254854 thumb_func_start MOD41_0225489C MOD41_0225489C: ; 0x0225489C push {r4, r5} mov r4, #0 add r5, r0, #0 mov r3, #1 add r2, r4, #0 _022548A6: add r1, r0, r4 str r3, [r5, #0x5c] add r1, #0x4c add r4, r4, #1 add r5, r5, #4 strb r2, [r1] cmp r4, #3 blt _022548A6 str r3, [r0, #0x44] pop {r4, r5} bx lr thumb_func_end MOD41_0225489C thumb_func_start MOD41_022548BC MOD41_022548BC: ; 0x022548BC lsl r3, r1, #2 add r3, r0, r3 str r2, [r3, #0x5c] cmp r2, #0 beq _022548CA mov r2, #0 b _022548CC _022548CA: mov r2, #1 _022548CC: add r1, r0, r1 add r1, #0x4c strb r2, [r1] mov r1, #1 str r1, [r0, #0x44] bx lr thumb_func_end MOD41_022548BC thumb_func_start MOD41_022548D8 MOD41_022548D8: ; 0x022548D8 lsl r3, r1, #2 add r3, r0, r3 ldr r3, [r3, #0x5c] cmp r3, #0 beq _022548EC add r1, r0, r1 add r1, #0x4c strb r2, [r1] mov r1, #1 str r1, [r0, #0x44] _022548EC: bx lr .align 2, 0 thumb_func_end MOD41_022548D8 thumb_func_start MOD41_022548F0 MOD41_022548F0: ; 0x022548F0 push {r3, r4, r5, lr} add r5, r0, #0 ldr r0, [r5, #8] add r4, r1, #0 bl MOD41_0225578C str r0, [r4, #0x10] ldr r0, [r5, #4] add r1, r4, #0 mov r2, #0x48 bl FUN_020893F0 pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end MOD41_022548F0 thumb_func_start MOD41_0225490C MOD41_0225490C: ; 0x0225490C push {r4, lr} add r4, r0, #0 add r1, r4, #0 ldr r0, [r4, #4] add r1, #0x48 mov r2, #0x48 bl FUN_02089418 cmp r0, #0 beq _0225494C add r0, r4, #0 add r0, #0x8c ldr r0, [r0] cmp r0, #2 bne _02254952 add r0, r4, #0 bl MOD41_02255108 add r0, r4, #0 bl MOD41_022550F8 cmp r0, #0 beq _02254952 add r0, r4, #0 mov r1, #4 add r0, #0x8c str r1, [r0] mov r0, #0 str r0, [r4, #0x50] mov r0, #2 str r0, [r4, #0x54] pop {r4, pc} _0225494C: add r0, r4, #0 bl MOD41_02254954 _02254952: pop {r4, pc} thumb_func_end MOD41_0225490C thumb_func_start MOD41_02254954 MOD41_02254954: ; 0x02254954 push {r4, lr} add r4, r0, #0 add r1, r4, #0 add r3, r4, #0 mov r2, #1 add r1, #0x8c str r2, [r1] mov r1, #0 add r3, #0x48 strb r1, [r3] add r3, r4, #0 add r3, #0x49 strb r1, [r3] add r3, r4, #0 add r3, #0x4a strb r1, [r3] add r3, r4, #0 add r3, #0x4b strb r1, [r3] str r2, [r4, #0x50] str r1, [r4, #0x54] str r1, [r4, #0x58] bl MOD41_0225489C add r0, r4, #0 mov r1, #1 mov r2, #0 bl MOD41_022548BC pop {r4, pc} thumb_func_end MOD41_02254954 thumb_func_start MOD41_02254990 MOD41_02254990: ; 0x02254990 push {r3, r4, r5, r6, lr} sub sp, #4 add r5, r0, #0 add r4, r1, #0 add r6, r2, #0 str r3, [r5, #4] bl MOD41_0225490C add r0, r5, #0 add r1, r5, #0 add r0, #8 add r1, #0x48 add r2, r6, #0 bl MOD41_0225524C cmp r0, #0 beq _02254A28 mov r0, #0 strb r0, [r5] strb r0, [r5, #1] strb r0, [r5, #3] mov r0, #8 str r0, [sp] ldr r0, _02254A30 ; =0x022557B0 ldr r2, _02254A34 ; =MOD41_02254A58 mov r1, #0xb add r3, r5, #0 bl MOD20_02254130 str r0, [r5, #0x10] mov r0, #0 str r0, [r5, #0x18] ldr r0, [r5, #0x10] mov r1, #3 mov r2, #4 bl MOD20_022542C0 ldr r0, [r5, #0x10] mov r1, #5 mov r2, #4 bl MOD20_022542C0 mov r1, #4 ldr r0, [r5, #0x10] add r2, r1, #0 bl MOD20_022542C0 ldr r0, [r5, #0x10] mov r1, #6 mov r2, #4 bl MOD20_022542C0 ldr r0, [r5, #0x10] mov r1, #7 mov r2, #4 bl MOD20_022542C0 ldr r0, [r5, #0x10] mov r1, #9 mov r2, #4 bl MOD20_022542C0 ldr r0, [r5, #0x10] mov r1, #8 mov r2, #4 bl MOD20_022542C0 ldr r0, [r5, #0x10] mov r1, #0xa mov r2, #4 bl MOD20_022542C0 add sp, #4 str r4, [r5, #0xc] mov r0, #1 pop {r3, r4, r5, r6, pc} _02254A28: mov r0, #0 add sp, #4 pop {r3, r4, r5, r6, pc} nop _02254A30: .word 0x022557B0 _02254A34: .word MOD41_02254A58 thumb_func_end MOD41_02254990 thumb_func_start MOD41_02254A38 MOD41_02254A38: ; 0x02254A38 push {r4, lr} add r4, r0, #0 add r1, r4, #0 add r1, #0x48 bl MOD41_022548F0 ldr r0, [r4, #0x10] bl MOD20_02254198 ldr r0, [r4, #8] bl MOD41_0225528C add r0, r4, #0 bl FUN_02016A18 pop {r4, pc} thumb_func_end MOD41_02254A38 thumb_func_start MOD41_02254A58 MOD41_02254A58: ; 0x02254A58 push {r3, lr} add r2, r0, #0 str r2, [r3, #0x14] str r1, [r3, #0x18] cmp r2, #3 bhs _02254A84 cmp r1, #1 bne _02254A74 add r1, r2, #0 add r0, r3, #0 mov r2, #1 bl MOD41_022548D8 pop {r3, pc} _02254A74: sub r0, r1, #2 cmp r0, #1 bhi _02254A84 add r1, r2, #0 add r0, r3, #0 mov r2, #0 bl MOD41_022548D8 _02254A84: pop {r3, pc} .align 2, 0 thumb_func_end MOD41_02254A58 thumb_func_start MOD41_02254A88 MOD41_02254A88: ; 0x02254A88 push {r3, r4, r5, lr} add r4, r1, #0 add r5, r0, #0 ldrb r0, [r4] cmp r0, #7 bhs _02254AD0 ldr r0, [r4, #0xc] ldr r1, [r4, #0x10] bl MOD20_02252C14 ldr r0, [r4, #0x44] cmp r0, #0 beq _02254AAE ldr r0, [r4, #8] mov r1, #4 bl MOD41_022553A4 mov r0, #0 str r0, [r4, #0x44] _02254AAE: ldrb r1, [r4] add r0, r4, #0 lsl r2, r1, #2 ldr r1, _02254AD4 ; =0x02255794 ldr r1, [r1, r2] blx r1 cmp r0, #0 beq _02254AD0 add r0, r4, #0 bl MOD41_02254A38 add r0, r5, #0 bl FUN_0200CAB4 ldr r0, [r4, #0xc] bl MOD20_022529A0 _02254AD0: pop {r3, r4, r5, pc} nop _02254AD4: .word 0x02255794 thumb_func_end MOD41_02254A88 thumb_func_start MOD41_02254AD8 MOD41_02254AD8: ; 0x02254AD8 mov r1, #1 strb r1, [r0, #3] bx lr .align 2, 0 thumb_func_end MOD41_02254AD8 thumb_func_start MOD41_02254AE0 MOD41_02254AE0: ; 0x02254AE0 ldrb r3, [r0, #3] ldrb r2, [r0] cmp r3, #0 beq _02254AEA mov r1, #6 _02254AEA: strb r1, [r0] cmp r1, #0 beq _02254AFA cmp r1, #6 beq _02254AFA add r3, r0, #0 add r3, #0x8c str r2, [r3] _02254AFA: cmp r1, #6 bhi _02254B50 add r1, r1, r1 add r1, pc ldrh r1, [r1, #6] lsl r1, r1, #0x10 asr r1, r1, #0x10 add pc, r1 _02254B0A: ; jump table .short _02254B50 - _02254B0A - 2 ; case 0 .short _02254B18 - _02254B0A - 2 ; case 1 .short _02254B22 - _02254B0A - 2 ; case 2 .short _02254B2C - _02254B0A - 2 ; case 3 .short _02254B36 - _02254B0A - 2 ; case 4 .short _02254B40 - _02254B0A - 2 ; case 5 .short _02254B4A - _02254B0A - 2 ; case 6 _02254B18: mov r1, #1 str r1, [r0, #0x50] mov r1, #0 str r1, [r0, #0x54] b _02254B50 _02254B22: mov r1, #0 str r1, [r0, #0x50] mov r1, #1 str r1, [r0, #0x54] b _02254B50 _02254B2C: mov r1, #0 str r1, [r0, #0x50] mov r1, #1 str r1, [r0, #0x54] b _02254B50 _02254B36: mov r1, #0 str r1, [r0, #0x50] mov r1, #2 str r1, [r0, #0x54] b _02254B50 _02254B40: mov r1, #0 str r1, [r0, #0x50] mov r1, #3 str r1, [r0, #0x54] b _02254B50 _02254B4A: add r1, r0, #0 add r1, #0x8c str r2, [r1] _02254B50: mov r1, #0 strb r1, [r0, #1] bx lr .align 2, 0 thumb_func_end MOD41_02254AE0 thumb_func_start MOD41_02254B58 MOD41_02254B58: ; 0x02254B58 push {r4, lr} add r4, r0, #0 ldrb r0, [r4, #1] cmp r0, #0 beq _02254B68 cmp r0, #1 beq _02254B78 b _02254B94 _02254B68: ldr r0, [r4, #8] mov r1, #0 bl MOD41_022553A4 ldrb r0, [r4, #1] add r0, r0, #1 strb r0, [r4, #1] b _02254B94 _02254B78: ldr r0, [r4, #8] mov r1, #0 bl MOD41_022553C8 cmp r0, #0 beq _02254B94 ldr r0, [r4, #0xc] bl MOD20_0225298C add r0, r4, #0 add r4, #0x8c ldr r1, [r4] bl MOD41_02254AE0 _02254B94: mov r0, #0 pop {r4, pc} thumb_func_end MOD41_02254B58 thumb_func_start MOD41_02254B98 MOD41_02254B98: ; 0x02254B98 push {r4, lr} add r4, r0, #0 ldrb r1, [r4, #3] cmp r1, #0 beq _02254BAC mov r1, #6 bl MOD41_02254AE0 mov r0, #0 pop {r4, pc} _02254BAC: ldr r0, [r4, #8] bl MOD41_022553D4 cmp r0, #0 bne _02254BBA mov r0, #0 pop {r4, pc} _02254BBA: ldr r1, [r4, #0x18] cmp r1, #1 bne _02254C36 ldr r0, [r4, #0x14] cmp r0, #2 bhi _02254C36 mov r0, #0 str r0, [r4, #0x18] ldr r0, [r4, #0x14] cmp r0, #0 beq _02254BEE cmp r0, #1 beq _02254C2C cmp r0, #2 bne _02254C32 add r0, r4, #0 bl MOD41_02255170 ldr r0, [r4, #8] mov r1, #5 bl MOD41_022553A4 ldr r0, _02254D18 ; =0x00000663 bl MOD20_02252B28 b _02254C32 _02254BEE: ldr r0, _02254D18 ; =0x00000663 bl MOD20_02252B28 add r0, r4, #0 bl MOD41_0225504C mov r3, #0 mov r2, #0 eor r1, r3 eor r0, r2 orr r0, r1 beq _02254C32 mov r1, #0 add r0, r4, #0 add r2, r1, #0 bl MOD41_022548BC mov r1, #1 add r0, r4, #0 add r2, r1, #0 bl MOD41_022548BC ldr r0, [r4, #8] mov r1, #3 bl MOD41_022553A4 add r0, r4, #0 mov r1, #2 bl MOD41_02254AE0 b _02254C32 _02254C2C: ldr r0, _02254D1C ; =0x0000066E bl MOD20_02252B28 _02254C32: mov r0, #0 pop {r4, pc} _02254C36: cmp r1, #1 beq _02254C3E cmp r1, #7 bne _02254D12 _02254C3E: ldr r1, [r4, #0x14] add r0, r4, #0 add r0, #0x48 cmp r1, #0xa bhi _02254D06 add r1, r1, r1 add r1, pc ldrh r1, [r1, #6] lsl r1, r1, #0x10 asr r1, r1, #0x10 add pc, r1 _02254C54: ; jump table .short _02254D06 - _02254C54 - 2 ; case 0 .short _02254D06 - _02254C54 - 2 ; case 1 .short _02254D06 - _02254C54 - 2 ; case 2 .short _02254C6A - _02254C54 - 2 ; case 3 .short _02254C7C - _02254C54 - 2 ; case 4 .short _02254C90 - _02254C54 - 2 ; case 5 .short _02254CA4 - _02254C54 - 2 ; case 6 .short _02254CB8 - _02254C54 - 2 ; case 7 .short _02254CCC - _02254C54 - 2 ; case 8 .short _02254CE0 - _02254C54 - 2 ; case 9 .short _02254CF4 - _02254C54 - 2 ; case 10 _02254C6A: mov r1, #0 ldrsb r2, [r0, r1] add r2, r2, #1 strb r2, [r0] ldrsb r2, [r0, r1] cmp r2, #9 ble _02254D06 strb r1, [r0] b _02254D06 _02254C7C: mov r1, #1 ldrsb r2, [r0, r1] add r2, r2, #1 strb r2, [r0, #1] ldrsb r1, [r0, r1] cmp r1, #9 ble _02254D06 mov r1, #0 strb r1, [r0, #1] b _02254D06 _02254C90: mov r1, #0 ldrsb r2, [r0, r1] sub r2, r2, #1 strb r2, [r0] ldrsb r1, [r0, r1] cmp r1, #0 bge _02254D06 mov r1, #9 strb r1, [r0] b _02254D06 _02254CA4: mov r1, #1 ldrsb r2, [r0, r1] sub r2, r2, #1 strb r2, [r0, #1] ldrsb r1, [r0, r1] cmp r1, #0 bge _02254D06 mov r1, #9 strb r1, [r0, #1] b _02254D06 _02254CB8: mov r1, #2 ldrsb r2, [r0, r1] add r2, r2, #1 strb r2, [r0, #2] ldrsb r1, [r0, r1] cmp r1, #5 ble _02254D06 mov r1, #0 strb r1, [r0, #2] b _02254D06 _02254CCC: mov r1, #3 ldrsb r2, [r0, r1] add r2, r2, #1 strb r2, [r0, #3] ldrsb r1, [r0, r1] cmp r1, #9 ble _02254D06 mov r1, #0 strb r1, [r0, #3] b _02254D06 _02254CE0: mov r1, #2 ldrsb r2, [r0, r1] sub r2, r2, #1 strb r2, [r0, #2] ldrsb r1, [r0, r1] cmp r1, #0 bge _02254D06 mov r1, #5 strb r1, [r0, #2] b _02254D06 _02254CF4: mov r1, #3 ldrsb r2, [r0, r1] sub r2, r2, #1 strb r2, [r0, #3] ldrsb r1, [r0, r1] cmp r1, #0 bge _02254D06 mov r1, #9 strb r1, [r0, #3] _02254D06: ldr r0, [r4, #8] mov r1, #5 bl MOD41_022553A4 mov r0, #0 str r0, [r4, #0x18] _02254D12: mov r0, #0 pop {r4, pc} nop _02254D18: .word 0x00000663 _02254D1C: .word 0x0000066E thumb_func_end MOD41_02254B98 thumb_func_start MOD41_02254D20 MOD41_02254D20: ; 0x02254D20 push {r4, lr} add r4, r0, #0 ldrb r1, [r4, #3] cmp r1, #0 beq _02254D34 mov r1, #6 bl MOD41_02254AE0 mov r0, #0 pop {r4, pc} _02254D34: bl MOD41_02255108 cmp r0, #0 beq _02254D6C ldr r0, [r4, #8] mov r1, #5 bl MOD41_022553A4 add r0, r4, #0 bl MOD41_022550F8 cmp r0, #0 beq _02254D6C mov r1, #0 add r0, r4, #0 add r2, r1, #0 bl MOD41_022548BC ldr r0, [r4, #8] mov r1, #6 bl MOD41_022553A4 add r0, r4, #0 mov r1, #4 bl MOD41_02254AE0 mov r0, #0 pop {r4, pc} _02254D6C: ldr r0, [r4, #0x18] cmp r0, #1 bne _02254E00 mov r0, #0 str r0, [r4, #0x18] ldr r0, [r4, #0x14] cmp r0, #0 beq _02254D86 cmp r0, #1 beq _02254D8E cmp r0, #2 beq _02254DC0 b _02254E00 _02254D86: ldr r0, _02254E04 ; =0x0000066E bl MOD20_02252B28 b _02254E00 _02254D8E: ldr r0, _02254E08 ; =0x00000663 bl MOD20_02252B28 add r0, r4, #0 mov r1, #1 mov r2, #0 bl MOD41_022548BC add r0, r4, #0 mov r1, #0 mov r2, #1 bl MOD41_022548BC add r0, r4, #0 bl MOD41_022550BC ldr r0, [r4, #8] mov r1, #4 bl MOD41_022553A4 add r0, r4, #0 mov r1, #3 bl MOD41_02254AE0 b _02254E00 _02254DC0: ldr r0, _02254E08 ; =0x00000663 bl MOD20_02252B28 add r0, r4, #0 mov r1, #0 mov r2, #1 bl MOD41_022548BC add r0, r4, #0 mov r1, #1 mov r2, #0 bl MOD41_022548BC add r0, r4, #0 bl MOD41_02255170 ldr r0, [r4, #8] mov r1, #4 bl MOD41_022553A4 ldr r0, [r4, #8] mov r1, #5 bl MOD41_022553A4 ldr r0, [r4, #8] mov r1, #2 bl MOD41_022553A4 add r0, r4, #0 mov r1, #1 bl MOD41_02254AE0 _02254E00: mov r0, #0 pop {r4, pc} .align 2, 0 _02254E04: .word 0x0000066E _02254E08: .word 0x00000663 thumb_func_end MOD41_02254D20 thumb_func_start MOD41_02254E0C MOD41_02254E0C: ; 0x02254E0C push {r4, lr} add r4, r0, #0 ldrb r1, [r4, #3] cmp r1, #0 beq _02254E20 mov r1, #6 bl MOD41_02254AE0 mov r0, #0 pop {r4, pc} _02254E20: ldr r0, [r4, #0x18] cmp r0, #1 bne _02254EAC mov r0, #0 str r0, [r4, #0x18] ldr r0, [r4, #0x14] cmp r0, #0 beq _02254E3A cmp r0, #1 beq _02254E64 cmp r0, #2 beq _02254E6C b _02254EAC _02254E3A: ldr r0, _02254EB0 ; =0x00000663 bl MOD20_02252B28 mov r1, #1 add r0, r4, #0 add r2, r1, #0 bl MOD41_022548BC mov r1, #0 add r0, r4, #0 add r2, r1, #0 bl MOD41_022548BC add r0, r4, #0 bl MOD41_022550D0 add r0, r4, #0 mov r1, #2 bl MOD41_02254AE0 b _02254EAC _02254E64: ldr r0, _02254EB4 ; =0x0000066E bl MOD20_02252B28 b _02254EAC _02254E6C: ldr r0, _02254EB0 ; =0x00000663 bl MOD20_02252B28 add r0, r4, #0 mov r1, #0 mov r2, #1 bl MOD41_022548BC add r0, r4, #0 mov r1, #1 mov r2, #0 bl MOD41_022548BC add r0, r4, #0 bl MOD41_02255170 ldr r0, [r4, #8] mov r1, #4 bl MOD41_022553A4 ldr r0, [r4, #8] mov r1, #5 bl MOD41_022553A4 ldr r0, [r4, #8] mov r1, #2 bl MOD41_022553A4 add r0, r4, #0 mov r1, #1 bl MOD41_02254AE0 _02254EAC: mov r0, #0 pop {r4, pc} .align 2, 0 _02254EB0: .word 0x00000663 _02254EB4: .word 0x0000066E thumb_func_end MOD41_02254E0C thumb_func_start MOD41_02254EB8 MOD41_02254EB8: ; 0x02254EB8 push {r4, lr} add r4, r0, #0 ldrb r1, [r4, #3] cmp r1, #0 beq _02254ECC mov r1, #6 bl MOD41_02254AE0 mov r0, #0 pop {r4, pc} _02254ECC: ldr r0, [r4, #0x18] cmp r0, #1 bne _02254F52 mov r0, #0 str r0, [r4, #0x18] ldr r0, [r4, #0x14] cmp r0, #0 beq _02254EE6 cmp r0, #1 beq _02254EEE cmp r0, #2 beq _02254F20 b _02254F52 _02254EE6: ldr r0, _02254F58 ; =0x0000066E bl MOD20_02252B28 b _02254F52 _02254EEE: ldr r0, _02254F5C ; =0x00000663 bl MOD20_02252B28 add r0, r4, #0 mov r1, #0 mov r2, #1 bl MOD41_022548BC add r0, r4, #0 mov r1, #1 mov r2, #0 bl MOD41_022548BC ldr r0, [r4, #8] mov r1, #7 bl MOD41_022553A4 add r0, r4, #0 mov r1, #5 bl MOD41_02254AE0 ldrb r0, [r4, #1] add r0, r0, #1 strb r0, [r4, #1] b _02254F52 _02254F20: ldr r0, _02254F5C ; =0x00000663 bl MOD20_02252B28 add r0, r4, #0 mov r1, #0 mov r2, #1 bl MOD41_022548BC add r0, r4, #0 mov r1, #1 mov r2, #0 bl MOD41_022548BC ldr r0, [r4, #8] mov r1, #7 bl MOD41_022553A4 ldr r0, [r4, #8] mov r1, #2 bl MOD41_022553A4 add r0, r4, #0 mov r1, #1 bl MOD41_02254AE0 _02254F52: mov r0, #0 pop {r4, pc} nop _02254F58: .word 0x0000066E _02254F5C: .word 0x00000663 thumb_func_end MOD41_02254EB8 thumb_func_start MOD41_02254F60 MOD41_02254F60: ; 0x02254F60 push {r4, lr} add r4, r0, #0 ldrb r1, [r4, #3] cmp r1, #0 beq _02254F74 mov r1, #6 bl MOD41_02254AE0 mov r0, #0 pop {r4, pc} _02254F74: ldr r0, [r4, #0x18] cmp r0, #1 bne _0225500A mov r0, #0 str r0, [r4, #0x18] ldr r0, [r4, #0x14] cmp r0, #0 beq _02254F8E cmp r0, #1 beq _02254FBA cmp r0, #2 beq _02254FC2 b _0225500A _02254F8E: ldr r0, _02255010 ; =0x00000663 bl MOD20_02252B28 mov r1, #0 add r0, r4, #0 add r2, r1, #0 bl MOD41_022548BC mov r1, #1 add r0, r4, #0 add r2, r1, #0 bl MOD41_022548BC ldr r0, [r4, #8] mov r1, #6 bl MOD41_022553A4 add r0, r4, #0 mov r1, #4 bl MOD41_02254AE0 b _0225500A _02254FBA: ldr r0, _02255014 ; =0x0000066E bl MOD20_02252B28 b _0225500A _02254FC2: ldr r0, _02255010 ; =0x00000663 bl MOD20_02252B28 add r0, r4, #0 mov r1, #0 mov r2, #1 bl MOD41_022548BC add r0, r4, #0 mov r1, #1 mov r2, #0 bl MOD41_022548BC add r0, r4, #0 bl MOD41_02255170 ldr r0, [r4, #8] mov r1, #7 bl MOD41_022553A4 ldr r0, [r4, #8] mov r1, #4 bl MOD41_022553A4 ldr r0, [r4, #8] mov r1, #5 bl MOD41_022553A4 ldr r0, [r4, #8] mov r1, #2 bl MOD41_022553A4 add r0, r4, #0 mov r1, #1 bl MOD41_02254AE0 _0225500A: mov r0, #0 pop {r4, pc} nop _02255010: .word 0x00000663 _02255014: .word 0x0000066E thumb_func_end MOD41_02254F60 thumb_func_start MOD41_02255018 MOD41_02255018: ; 0x02255018 push {r4, lr} add r4, r0, #0 ldrb r0, [r4, #1] cmp r0, #0 beq _02255028 cmp r0, #1 beq _02255038 b _02255046 _02255028: ldr r0, [r4, #8] mov r1, #1 bl MOD41_022553A4 ldrb r0, [r4, #1] add r0, r0, #1 strb r0, [r4, #1] b _02255046 _02255038: ldr r0, [r4, #8] bl MOD41_022553D4 cmp r0, #0 beq _02255046 mov r0, #1 pop {r4, pc} _02255046: mov r0, #0 pop {r4, pc} .align 2, 0 thumb_func_end MOD41_02255018 thumb_func_start MOD41_0225504C MOD41_0225504C: ; 0x0225504C push {r4, r5, r6, lr} add r5, r0, #0 add r4, r5, #0 add r4, #0x48 bl FUN_02020BF4 str r0, [r5, #0x68] str r1, [r5, #0x6c] mov r2, #0 str r2, [r5, #0x70] add r0, r5, #0 str r2, [r5, #0x74] mov r1, #1 add r0, #0x88 str r1, [r0] str r2, [r5, #0x78] str r2, [r5, #0x7c] mov r2, #2 ldrsb r3, [r4, r2] mov r0, #3 ldrsb r0, [r4, r0] add r6, r3, #0 ldrsb r3, [r4, r1] mov r1, #0x48 mov r2, #0xa mul r6, r2 ldrsb r1, [r5, r1] add r0, r0, r6 mul r2, r1 add r2, r3, r2 mov r1, #0x3c mul r1, r2 add r2, r0, r1 add r0, r5, #0 add r0, #0x80 str r2, [r0] add r0, r5, #0 asr r1, r2, #0x1f add r0, #0x84 str r1, [r0] add r1, r5, #0 add r2, r5, #0 add r1, #0x80 add r2, #0x84 ldr r1, [r1] ldr r2, [r2] add r0, r5, #0 bl MOD41_02255190 add r0, r5, #0 add r0, #0x80 add r5, #0x84 ldr r0, [r0] ldr r1, [r5] pop {r4, r5, r6, pc} .align 2, 0 thumb_func_end MOD41_0225504C thumb_func_start MOD41_022550BC MOD41_022550BC: ; 0x022550BC push {r4, lr} add r4, r0, #0 mov r1, #0 add r0, #0x88 str r1, [r0] bl FUN_02020BF4 str r0, [r4, #0x70] str r1, [r4, #0x74] pop {r4, pc} thumb_func_end MOD41_022550BC thumb_func_start MOD41_022550D0 MOD41_022550D0: ; 0x022550D0 push {r3, r4, r5, r6, r7, lr} add r4, r0, #0 bl FUN_02020BF4 add r5, r4, #0 add r5, #0x68 ldr r7, [r4, #0x70] ldr r2, [r4, #0x68] ldr r6, [r4, #0x74] sub r0, r0, r7 sbc r1, r6 ldr r3, [r5, #4] add r0, r2, r0 adc r3, r1 str r0, [r4, #0x68] str r3, [r5, #4] mov r0, #1 add r4, #0x88 str r0, [r4] pop {r3, r4, r5, r6, r7, pc} thumb_func_end MOD41_022550D0 thumb_func_start MOD41_022550F8 MOD41_022550F8: ; 0x022550F8 add r0, #0x88 ldr r0, [r0] cmp r0, #0 bne _02255104 mov r0, #1 bx lr _02255104: mov r0, #0 bx lr thumb_func_end MOD41_022550F8 thumb_func_start MOD41_02255108 MOD41_02255108: ; 0x02255108 push {r4, r5, r6, lr} add r4, r0, #0 add r0, #0x88 ldr r0, [r0] cmp r0, #0 beq _0225516A bl FUN_02020BF4 ldr r3, [r4, #0x68] ldr r2, [r4, #0x6c] sub r0, r0, r3 sbc r1, r2 bl FUN_02020C14 add r5, r0, #0 add r0, r4, #0 add r0, #0x80 add r6, r1, #0 ldr r1, [r0] add r0, r4, #0 add r0, #0x84 ldr r2, [r0] sub r0, r5, r1 mov ip, r6 mov r0, ip sbc r0, r2 blo _02255148 add r0, r4, #0 bl MOD41_02255170 mov r0, #1 pop {r4, r5, r6, pc} _02255148: ldr r3, [r4, #0x78] ldr r0, [r4, #0x7c] eor r3, r5 eor r0, r6 orr r0, r3 beq _02255166 add r0, r4, #0 sub r1, r1, r5 sbc r2, r6 bl MOD41_02255190 str r5, [r4, #0x78] str r6, [r4, #0x7c] mov r0, #1 pop {r4, r5, r6, pc} _02255166: mov r0, #0 pop {r4, r5, r6, pc} _0225516A: mov r0, #0 pop {r4, r5, r6, pc} .align 2, 0 thumb_func_end MOD41_02255108 thumb_func_start MOD41_02255170 MOD41_02255170: ; 0x02255170 add r1, r0, #0 mov r2, #0 add r1, #0x88 str r2, [r1] add r1, r0, #0 add r1, #0x48 strb r2, [r1] add r1, r0, #0 add r1, #0x49 strb r2, [r1] add r1, r0, #0 add r1, #0x4a strb r2, [r1] add r0, #0x4b strb r2, [r0] bx lr thumb_func_end MOD41_02255170 thumb_func_start MOD41_02255190 MOD41_02255190: ; 0x02255190 push {r3, r4, r5, r6} add r3, r0, #0 ldr r0, _02255240 ; =0x04000280 mov r4, #1 strh r4, [r0] add r4, r0, #0 add r4, #0x10 str r1, [r4] str r2, [r4, #4] add r1, r0, #0 mov r4, #0x3c add r1, #0x18 mov r2, #0 str r4, [r1] str r2, [r1, #4] lsr r1, r0, #0xb _022551B0: ldrh r2, [r0] tst r2, r1 bne _022551B0 ldr r0, _02255244 ; =0x040002A0 ldr r6, _02255240 ; =0x04000280 ldr r0, [r0] lsr r1, r6, #0xb _022551BE: ldrh r2, [r6] tst r2, r1 bne _022551BE ldr r5, _02255248 ; =0x040002A8 mov r4, #0 ldr r2, [r5] add r1, r5, #0 strh r4, [r6] sub r1, #0x18 str r0, [r1] mov r0, #0xa sub r5, #0x10 str r0, [r5] str r4, [r5, #4] ldr r4, _02255240 ; =0x04000280 lsr r0, r4, #0xb _022551DE: ldrh r1, [r4] tst r1, r0 bne _022551DE ldr r0, _02255244 ; =0x040002A0 ldr r1, [r0] add r0, r3, #0 add r0, #0x48 strb r1, [r0] ldr r1, _02255240 ; =0x04000280 lsr r0, r1, #0xb _022551F2: ldrh r4, [r1] tst r4, r0 bne _022551F2 ldr r0, _02255248 ; =0x040002A8 add r4, r3, #0 ldr r5, [r0] add r4, #0x49 strb r5, [r4] mov r4, #0 strh r4, [r1] add r1, r0, #0 sub r1, #0x18 str r2, [r1] mov r1, #0xa sub r0, #0x10 str r1, [r0] ldr r2, _02255240 ; =0x04000280 str r4, [r0, #4] lsr r0, r2, #0xb _02255218: ldrh r1, [r2] tst r1, r0 bne _02255218 ldr r0, _02255244 ; =0x040002A0 ldr r2, _02255240 ; =0x04000280 ldr r1, [r0] add r0, r3, #0 add r0, #0x4a strb r1, [r0] lsr r0, r2, #0xb _0225522C: ldrh r1, [r2] tst r1, r0 bne _0225522C ldr r0, _02255248 ; =0x040002A8 add r3, #0x4b ldr r0, [r0] strb r0, [r3] pop {r3, r4, r5, r6} bx lr nop _02255240: .word 0x04000280 _02255244: .word 0x040002A0 _02255248: .word 0x040002A8 thumb_func_end MOD41_02255190 thumb_func_start MOD41_0225524C MOD41_0225524C: ; 0x0225524C push {r4, r5, r6, lr} add r6, r0, #0 add r5, r1, #0 mov r0, #8 mov r1, #0xac bl FUN_02016998 add r4, r0, #0 beq _02255288 add r0, #8 mov r1, #8 bl MOD20_022536F4 str r5, [r4] bl MOD20_02252D34 str r0, [r4, #4] bl MOD20_02252D24 str r0, [r4, #0x30] add r0, r4, #0 add r1, r5, #0 bl MOD41_022552A0 ldr r0, [r4, #4] cmp r0, #0 beq _02255288 str r4, [r6] mov r0, #1 pop {r4, r5, r6, pc} _02255288: mov r0, #0 pop {r4, r5, r6, pc} thumb_func_end MOD41_0225524C thumb_func_start MOD41_0225528C MOD41_0225528C: ; 0x0225528C push {r4, lr} add r4, r0, #0 beq _0225529C bl MOD41_02255374 add r0, r4, #0 bl FUN_02016A18 _0225529C: pop {r4, pc} .align 2, 0 thumb_func_end MOD41_0225528C thumb_func_start MOD41_022552A0 MOD41_022552A0: ; 0x022552A0 push {r3, r4, r5, r6, r7, lr} sub sp, #0x18 mov r3, #0 str r3, [sp] mov r2, #1 add r7, r0, #0 str r1, [sp, #0xc] str r2, [sp, #4] mov r0, #8 str r0, [sp, #8] mov r0, #0xc mov r1, #2 bl FUN_02006A34 mov r0, #0 str r0, [sp] mov r2, #1 mov r3, #0xa str r2, [sp, #4] mov r0, #8 str r0, [sp, #8] mov r0, #0xc mov r1, #0x5e lsl r3, r3, #8 bl FUN_02006A34 mov r0, #8 str r0, [sp] add r0, r7, #0 add r0, #0x78 mov r1, #0xc mov r2, #0x5c mov r3, #0x5d bl MOD20_02253FBC mov r0, #8 str r0, [sp] add r0, r7, #0 add r0, #0x8c mov r1, #0xc mov r2, #3 mov r3, #4 bl MOD20_02253FBC add r0, r7, #0 str r0, [sp, #0x14] add r0, #0x78 str r0, [sp, #0x14] add r0, r7, #0 str r0, [sp, #0x10] add r0, #0x8c ldr r6, _02255370 ; =0x02255864 mov r4, #0 add r5, r7, #0 str r0, [sp, #0x10] _0225530E: cmp r4, #0xd blt _02255324 cmp r4, #0x10 bgt _02255324 ldr r0, [r7, #0x30] ldr r2, [sp, #0x10] add r1, r6, #0 bl MOD20_02253E74 str r0, [r5, #0x34] b _02255336 _02255324: ldr r0, [r7, #0x30] ldr r2, [sp, #0x14] add r1, r6, #0 bl MOD20_02253E74 mov r1, #0x50 str r0, [r5, #0x34] bl MOD20_02253FA4 _02255336: add r4, r4, #1 add r6, #0x10 add r5, r5, #4 cmp r4, #0x11 blt _0225530E ldr r1, [sp, #0xc] add r0, r7, #0 bl MOD41_022556D4 ldr r1, [sp, #0xc] add r0, r7, #0 bl MOD41_02255714 ldr r0, [sp, #0xc] ldr r0, [r0, #8] cmp r0, #0 bne _0225535C mov r1, #1 b _0225535E _0225535C: mov r1, #0 _0225535E: add r0, r7, #0 bl MOD41_02255744 mov r0, #0 add r7, #0xa8 str r0, [r7] add sp, #0x18 pop {r3, r4, r5, r6, r7, pc} nop _02255370: .word 0x02255864 thumb_func_end MOD41_022552A0 thumb_func_start MOD41_02255374 MOD41_02255374: ; 0x02255374 push {r4, r5, r6, lr} add r6, r0, #0 mov r4, #0 add r5, r6, #0 _0225537C: ldr r1, [r5, #0x34] cmp r1, #0 beq _02255388 ldr r0, [r6, #0x30] bl MOD20_02253F14 _02255388: add r4, r4, #1 add r5, r5, #4 cmp r4, #0x11 blt _0225537C add r0, r6, #0 add r0, #0x78 bl MOD20_02254014 add r6, #0x8c add r0, r6, #0 bl MOD20_02254014 pop {r4, r5, r6, pc} .align 2, 0 thumb_func_end MOD41_02255374 thumb_func_start MOD41_022553A4 MOD41_022553A4: ; 0x022553A4 push {lr} sub sp, #0xc add r2, r0, #0 add r0, #8 str r0, [sp] mov r0, #2 str r0, [sp, #4] mov r0, #8 str r0, [sp, #8] ldr r0, _022553C4 ; =0x022557F8 ldr r3, [r2] bl MOD20_022537E0 add sp, #0xc pop {pc} nop _022553C4: .word 0x022557F8 thumb_func_end MOD41_022553A4 thumb_func_start MOD41_022553C8 MOD41_022553C8: ; 0x022553C8 ldr r3, _022553D0 ; =MOD20_02253794 add r0, #8 bx r3 nop _022553D0: .word MOD20_02253794 thumb_func_end MOD41_022553C8 thumb_func_start MOD41_022553D4 MOD41_022553D4: ; 0x022553D4 ldr r3, _022553DC ; =MOD20_022537B8 add r0, #8 bx r3 nop _022553DC: .word MOD20_022537B8 thumb_func_end MOD41_022553D4 thumb_func_start MOD41_022553E0 MOD41_022553E0: ; 0x022553E0 push {r4, lr} add r4, r0, #0 bl MOD20_022538A0 add r0, #8 add r1, r4, #0 bl MOD20_02253888 pop {r4, pc} .align 2, 0 thumb_func_end MOD41_022553E0 thumb_func_start MOD41_022553F4 MOD41_022553F4: ; 0x022553F4 push {r4, r5, lr} sub sp, #0x14 add r5, r1, #0 add r0, r5, #0 bl MOD20_022538A0 add r4, r0, #0 ldr r0, [r4, #4] ldr r2, _022554CC ; =0x022557DC mov r1, #6 mov r3, #0 bl FUN_02016C18 mov r0, #0 str r0, [sp] str r0, [sp, #4] mov r0, #1 str r0, [sp, #8] mov r0, #8 str r0, [sp, #0xc] ldr r2, [r4, #4] mov r0, #0xc mov r1, #0x5b mov r3, #6 bl FUN_0200687C mov r0, #0 str r0, [sp] str r0, [sp, #4] mov r0, #1 str r0, [sp, #8] mov r0, #8 str r0, [sp, #0xc] ldr r2, [r4, #4] mov r0, #0xc mov r1, #0x5a mov r3, #6 bl FUN_020068C8 mov r0, #0 add r1, r0, #0 bl MOD20_02252D7C ldr r0, [r4, #4] mov r1, #6 bl FUN_02017CD0 ldr r1, _022554D0 ; =0x04001000 ldr r0, _022554D4 ; =0xFFFFE0FF ldr r3, [r1] ldr r2, [r1] str r3, [sp, #0x10] and r0, r2 lsl r2, r3, #0x13 lsr r3, r2, #0x1b mov r2, #4 orr r2, r3 lsl r2, r2, #8 orr r0, r2 str r0, [r1] ldr r1, [r4] ldr r0, [r1, #0xc] cmp r0, #1 beq _02255488 cmp r0, #2 beq _0225547E cmp r0, #3 beq _0225549A b _022554C0 _0225547E: add r0, r4, #0 mov r1, #6 bl MOD41_022553A4 b _022554C0 _02255488: ldr r0, [r4, #0x34] mov r1, #3 bl MOD20_02253F28 ldr r0, [r4, #0x38] mov r1, #1 bl MOD20_02253F28 b _022554C0 _0225549A: ldr r0, [r1, #0x10] cmp r0, #0 ldr r0, [r4, #0x34] beq _022554B2 mov r1, #2 bl MOD20_02253F28 ldr r0, [r4, #0x38] mov r1, #1 bl MOD20_02253F28 b _022554C0 _022554B2: mov r1, #3 bl MOD20_02253F28 ldr r0, [r4, #0x38] mov r1, #0 bl MOD20_02253F28 _022554C0: add r0, r5, #0 bl MOD41_022553E0 add sp, #0x14 pop {r4, r5, pc} nop _022554CC: .word 0x022557DC _022554D0: .word 0x04001000 _022554D4: .word 0xFFFFE0FF thumb_func_end MOD41_022553F4 thumb_func_start MOD41_022554D8 MOD41_022554D8: ; 0x022554D8 push {r3, r4, r5, lr} add r5, r1, #0 add r0, r5, #0 bl MOD20_022538A0 add r4, r0, #0 add r0, r5, #0 bl MOD20_022538A4 add r0, r5, #0 bl MOD20_022538AC cmp r0, #0 beq _022554FA cmp r0, #1 beq _02255508 pop {r3, r4, r5, pc} _022554FA: add r0, r4, #0 mov r1, #1 add r0, #0xa0 str r1, [r0] add r0, r5, #0 bl MOD20_022538B0 _02255508: add r0, r4, #0 mov r1, #6 bl MOD41_022553C8 cmp r0, #0 beq _02255522 ldr r0, [r4, #4] mov r1, #6 bl FUN_020178A0 add r0, r5, #0 bl MOD41_022553E0 _02255522: pop {r3, r4, r5, pc} thumb_func_end MOD41_022554D8 thumb_func_start MOD41_02255524 MOD41_02255524: ; 0x02255524 push {r3, r4, r5, lr} add r5, r1, #0 add r0, r5, #0 bl MOD20_022538A0 add r4, r0, #0 add r0, r5, #0 bl MOD20_022538A4 add r0, r4, #0 mov r1, #0 bl MOD41_02255744 ldr r0, [r4, #0x34] mov r1, #2 bl MOD20_02253F28 ldr r0, [r4, #0x38] mov r1, #0 bl MOD20_02253F28 add r0, r5, #0 bl MOD41_022553E0 pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end MOD41_02255524 thumb_func_start MOD41_02255558 MOD41_02255558: ; 0x02255558 push {r3, r4, r5, lr} add r5, r1, #0 add r0, r5, #0 bl MOD20_022538A0 add r4, r0, #0 add r0, r5, #0 bl MOD20_022538A4 add r0, r4, #0 mov r1, #1 bl MOD41_02255744 ldr r0, [r4, #0x34] mov r1, #3 bl MOD20_02253F28 ldr r0, [r4, #0x38] mov r1, #1 bl MOD20_02253F28 add r0, r5, #0 bl MOD41_022553E0 pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end MOD41_02255558 thumb_func_start MOD41_0225558C MOD41_0225558C: ; 0x0225558C push {r3, r4, r5, lr} add r5, r1, #0 add r0, r5, #0 bl MOD20_022538A0 add r4, r0, #0 add r0, r5, #0 bl MOD20_022538A4 add r1, r0, #0 add r0, r4, #0 bl MOD41_022556D4 add r0, r5, #0 bl MOD41_022553E0 pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end MOD41_0225558C thumb_func_start MOD41_022555B0 MOD41_022555B0: ; 0x022555B0 push {r3, r4, r5, lr} add r5, r1, #0 add r0, r5, #0 bl MOD20_022538A0 add r4, r0, #0 add r0, r5, #0 bl MOD20_022538A4 add r1, r0, #0 add r0, r4, #0 bl MOD41_02255714 add r0, r5, #0 bl MOD41_022553E0 pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end MOD41_022555B0 thumb_func_start MOD41_022555D4 MOD41_022555D4: ; 0x022555D4 push {r3, r4, r5, lr} add r5, r1, #0 add r0, r5, #0 bl MOD20_022538A0 add r4, r0, #0 add r0, r5, #0 bl MOD20_022538A4 add r0, r5, #0 bl MOD20_022538AC cmp r0, #0 beq _022555F6 cmp r0, #1 beq _0225561A pop {r3, r4, r5, pc} _022555F6: ldr r0, [r4, #0x34] mov r1, #2 bl MOD20_02253F28 ldr r0, [r4, #0x38] mov r1, #0 bl MOD20_02253F28 add r0, r4, #0 mov r1, #0 add r0, #0xa4 str r1, [r0] add r0, r4, #0 add r0, #0xa0 str r1, [r0] add r0, r5, #0 bl MOD20_022538B0 _0225561A: add r0, r4, #0 add r0, #0xa0 ldr r0, [r0] cmp r0, #0 beq _0225562C add r0, r5, #0 bl MOD41_022553E0 pop {r3, r4, r5, pc} _0225562C: add r0, r4, #0 add r0, #0xa4 ldr r0, [r0] add r1, r0, #1 add r0, r4, #0 add r0, #0xa4 str r1, [r0] add r0, r4, #0 add r0, #0xa4 ldr r0, [r0] cmp r0, #8 blo _0225568A add r0, r4, #0 add r0, #0xa8 ldr r1, [r0] mov r0, #1 eor r1, r0 add r0, r4, #0 add r0, #0xa8 str r1, [r0] add r0, r4, #0 add r0, #0xa8 ldr r0, [r0] cmp r0, #0 ldr r0, [r4, #0x34] beq _02255670 mov r1, #2 bl MOD20_02253F28 ldr r0, [r4, #0x38] mov r1, #1 bl MOD20_02253F28 b _0225567E _02255670: mov r1, #3 bl MOD20_02253F28 ldr r0, [r4, #0x38] mov r1, #0 bl MOD20_02253F28 _0225567E: ldr r0, _0225568C ; =0x00000677 bl MOD20_02252B28 mov r0, #0 add r4, #0xa4 str r0, [r4] _0225568A: pop {r3, r4, r5, pc} .align 2, 0 _0225568C: .word 0x00000677 thumb_func_end MOD41_022555D4 thumb_func_start MOD41_02255690 MOD41_02255690: ; 0x02255690 push {r3, r4, r5, lr} add r5, r1, #0 add r0, r5, #0 bl MOD20_022538A0 add r4, r0, #0 add r0, r5, #0 bl MOD20_022538A4 add r0, r5, #0 bl MOD20_022538AC cmp r0, #0 beq _022556B2 cmp r0, #1 beq _022556C0 pop {r3, r4, r5, pc} _022556B2: add r0, r4, #0 mov r1, #1 add r0, #0xa0 str r1, [r0] add r0, r5, #0 bl MOD20_022538B0 _022556C0: add r0, r4, #0 mov r1, #6 bl MOD41_022553C8 cmp r0, #0 beq _022556D2 add r0, r5, #0 bl MOD41_022553E0 _022556D2: pop {r3, r4, r5, pc} thumb_func_end MOD41_02255690 thumb_func_start MOD41_022556D4 MOD41_022556D4: ; 0x022556D4 push {r3, r4, r5, lr} add r4, r1, #0 add r5, r0, #0 ldrb r0, [r4, #4] cmp r0, #0 beq _022556E4 mov r1, #6 b _022556E6 _022556E4: mov r1, #5 _022556E6: ldr r0, [r5, #0x3c] bl MOD20_02253F28 ldrb r0, [r4, #5] cmp r0, #0 beq _022556F6 mov r1, #8 b _022556F8 _022556F6: mov r1, #7 _022556F8: ldr r0, [r5, #0x40] bl MOD20_02253F28 ldrb r0, [r4, #6] cmp r0, #0 beq _02255708 mov r1, #0xa b _0225570A _02255708: mov r1, #9 _0225570A: ldr r0, [r5, #0x44] bl MOD20_02253F28 pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end MOD41_022556D4 thumb_func_start MOD41_02255714 MOD41_02255714: ; 0x02255714 push {r3, r4, r5, lr} add r4, r1, #0 mov r1, #0 add r5, r0, #0 ldrsb r1, [r4, r1] ldr r0, [r5, #0x68] bl MOD20_02253F28 mov r1, #1 ldrsb r1, [r4, r1] ldr r0, [r5, #0x6c] bl MOD20_02253F28 mov r1, #2 ldrsb r1, [r4, r1] ldr r0, [r5, #0x70] bl MOD20_02253F28 mov r1, #3 ldrsb r1, [r4, r1] ldr r0, [r5, #0x74] bl MOD20_02253F28 pop {r3, r4, r5, pc} thumb_func_end MOD41_02255714 thumb_func_start MOD41_02255744 MOD41_02255744: ; 0x02255744 push {r3, r4, r5, lr} add r5, r0, #0 ldr r0, [r5, #0x48] add r4, r1, #0 bl MOD20_02253F78 ldr r0, [r5, #0x4c] add r1, r4, #0 bl MOD20_02253F78 ldr r0, [r5, #0x50] add r1, r4, #0 bl MOD20_02253F78 ldr r0, [r5, #0x54] add r1, r4, #0 bl MOD20_02253F78 ldr r0, [r5, #0x58] add r1, r4, #0 bl MOD20_02253F78 ldr r0, [r5, #0x5c] add r1, r4, #0 bl MOD20_02253F78 ldr r0, [r5, #0x60] add r1, r4, #0 bl MOD20_02253F78 ldr r0, [r5, #0x64] add r1, r4, #0 bl MOD20_02253F78 pop {r3, r4, r5, pc} .align 2, 0 thumb_func_end MOD41_02255744 thumb_func_start MOD41_0225578C MOD41_0225578C: ; 0x0225578C add r0, #0xa8 ldr r0, [r0] bx lr .align 2, 0 thumb_func_end MOD41_0225578C .section .rodata ; 0x02255794 .incbin "baserom.nds", 0x293d54, 0x1E0 ; .section .sinit .global SDK_OVERLAY.MODULE_41.SINIT_START .global SDK_OVERLAY.MODULE_41.SINIT_END SDK_OVERLAY.MODULE_41.SINIT_START: .word MOD41_02254840 .word 0 SDK_OVERLAY.MODULE_41.SINIT_END: