diff options
Diffstat (limited to 'arm9/modules/04/asm/arm_04.s')
-rw-r--r-- | arm9/modules/04/asm/arm_04.s | 10802 |
1 files changed, 3 insertions, 10799 deletions
diff --git a/arm9/modules/04/asm/arm_04.s b/arm9/modules/04/asm/arm_04.s index 259f9f52..696e0b3b 100644 --- a/arm9/modules/04/asm/arm_04.s +++ b/arm9/modules/04/asm/arm_04.s @@ -3,9668 +3,6 @@ .section .text .balign 4, 0 - arm_func_start MOD04_021D8D18 -MOD04_021D8D18: ; 0x021D8D18 - stmdb sp!, {r4, lr} - ldr r2, _021D8D58 ; =UNK04_02210468 - ldr r1, _021D8D5C ; =0x000013D8 - ldr r2, [r2] - mov r4, r0 - add r0, r2, r1 - bl OS_LockMutex - ldr r2, _021D8D58 ; =UNK04_02210468 - ldr r1, _021D8D5C ; =0x000013D8 - ldr r0, [r2] - add r0, r0, #0x1000 - str r4, [r0, #4] - ldr r0, [r2] - add r0, r0, r1 - bl OS_UnlockMutex - ldmia sp!, {r4, pc} - .align 2, 0 -_021D8D58: .word UNK04_02210468 -_021D8D5C: .word 0x000013D8 - arm_func_end MOD04_021D8D18 - - arm_func_start MOD04_021D8D60 -MOD04_021D8D60: ; 0x021D8D60 - stmdb sp!, {r4, r5, r6, lr} - sub sp, sp, #0x98 - ldr r4, _021D8EE0 ; =UNK04_0221046C - mov r3, #0 - ldr r5, [r4, #4] - ldr ip, [r4] - cmp r5, r3 - mov r5, r0 - mov r6, r1 - mov r4, r2 - cmpeq ip, r3 - bne _021D8DC0 - ldr r0, _021D8EE4 ; =UNK04_0220BEF8 - bl strlen - mov r3, r0 - ldr r1, _021D8EE8 ; =UNK04_0220BF04 - ldr r2, _021D8EE4 ; =UNK04_0220BEF8 - mov r0, r5 - bl MOD04_021DAB68 - cmp r0, #0 - beq _021D8E18 - add sp, sp, #0x98 - mov r0, #8 - ldmia sp!, {r4, r5, r6, pc} -_021D8DC0: - ldr r0, _021D8EEC ; =UNK04_0220BF0C - bl strlen - mov r3, r0 - ldr r1, _021D8EE8 ; =UNK04_0220BF04 - ldr r2, _021D8EEC ; =UNK04_0220BF0C - mov r0, r5 - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x98 - movne r0, #8 - ldmneia sp!, {r4, r5, r6, pc} - mov r0, r6 - bl strlen - mov r3, r0 - ldr r1, _021D8EF0 ; =UNK04_0220BF14 - mov r0, r5 - mov r2, r6 - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x98 - movne r0, #8 - ldmneia sp!, {r4, r5, r6, pc} -_021D8E18: - ldr r1, _021D8EE0 ; =UNK04_0221046C - add r0, sp, #0 - bl MOD04_021D9F78 - cmp r0, #0 - addeq sp, sp, #0x98 - moveq r0, #5 - ldmeqia sp!, {r4, r5, r6, pc} - ldr r0, _021D8EF4 ; =UNK04_0221048C - add r1, sp, #0 - ldr r2, [r0] - mov r0, r5 - bl MOD04_021D9C2C - cmp r0, #0 - addeq sp, sp, #0x98 - moveq r0, #8 - ldmeqia sp!, {r4, r5, r6, pc} - ldr r0, _021D8EF8 ; =UNK04_02210460 - ldr r0, [r0] - cmp r0, #1 - bne _021D8E94 - ldr r0, _021D8EFC ; =UNK04_0220BF1C - bl strlen - mov r3, r0 - ldr r1, _021D8F00 ; =UNK04_0220BF20 - ldr r2, _021D8EFC ; =UNK04_0220BF1C - mov r0, r5 - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x98 - movne r0, #8 - ldmneia sp!, {r4, r5, r6, pc} -_021D8E94: - mov r0, r4 - bl wcslen - cmp r0, #0 - beq _021D8ED4 - mov r0, r4 - bl wcslen - mov r3, r0 - ldr r1, _021D8F04 ; =UNK04_0220BF28 - mov r0, r5 - mov r2, r4 - mov r3, r3, lsl #1 - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x98 - movne r0, #8 - ldmneia sp!, {r4, r5, r6, pc} -_021D8ED4: - mov r0, #0 - add sp, sp, #0x98 - ldmia sp!, {r4, r5, r6, pc} - .align 2, 0 -_021D8EE0: .word UNK04_0221046C -_021D8EE4: .word UNK04_0220BEF8 -_021D8EE8: .word UNK04_0220BF04 -_021D8EEC: .word UNK04_0220BF0C -_021D8EF0: .word UNK04_0220BF14 -_021D8EF4: .word UNK04_0221048C -_021D8EF8: .word UNK04_02210460 -_021D8EFC: .word UNK04_0220BF1C -_021D8F00: .word UNK04_0220BF20 -_021D8F04: .word UNK04_0220BF28 - arm_func_end MOD04_021D8D60 - - arm_func_start MOD04_021D8F08 -MOD04_021D8F08: ; 0x021D8F08 - stmdb sp!, {r4, r5, lr} - sub sp, sp, #4 - ldr r0, _021D91BC ; =UNK04_02210468 - mov r1, #0 - ldr r0, [r0] - str r1, [sp] - add r0, r0, #0x1000 - ldr r0, [r0, #0x314] - ldr r1, _021D91C0 ; =UNK04_0220BF34 - bl MOD04_021DA388 - str r0, [sp] - cmp r0, #0 - beq _021D8F40 - bl MOD04_021DCA84 -_021D8F40: - ldr r0, _021D91BC ; =UNK04_02210468 - mov r2, #0 - ldr r1, [r0] - ldr r0, _021D91C4 ; =errno - str r2, [sp] - str r2, [r0] - add r0, r1, #0x1000 - ldr r0, [r0, #0x314] - ldr r1, _021D91C8 ; =UNK04_0220BF3C - bl MOD04_021DA388 - bl atol - ldr r1, _021D91C4 ; =errno - ldr r1, [r1] - cmp r1, #0x22 - bne _021D8F9C - ldr r0, _021D91BC ; =UNK04_02210468 - ldr r2, _021D91CC ; =0x00004E85 - ldr r1, [r0] - add sp, sp, #4 - add r1, r1, #0x1000 - str r2, [r1, #8] - mov r0, #0xc - ldmia sp!, {r4, r5, pc} -_021D8F9C: - cmp r0, #0xc8 - beq _021D8FC8 - ldr r2, _021D91BC ; =UNK04_02210468 - ldr r1, _021D91D0 ; =0x000059D8 - ldr r2, [r2] - add r1, r0, r1 - add r0, r2, #0x1000 - str r1, [r0, #8] - add sp, sp, #4 - mov r0, #0x12 - ldmia sp!, {r4, r5, pc} -_021D8FC8: - ldr r0, _021D91BC ; =UNK04_02210468 - ldr r2, _021D91D4 ; =0x0000100C - ldr r3, [r0] - ldr r1, _021D91D8 ; =UNK04_0220BF48 - add r0, r3, #0x1000 - ldr r0, [r0, #0x314] - add r2, r3, r2 - mov r3, #4 - bl MOD04_021DA334 - cmp r0, #0 - bgt _021D9014 - ldr r0, _021D91BC ; =UNK04_02210468 - ldr r2, _021D91CC ; =0x00004E85 - ldr r1, [r0] - add sp, sp, #4 - add r1, r1, #0x1000 - str r2, [r1, #8] - mov r0, #0xe - ldmia sp!, {r4, r5, pc} -_021D9014: - ldr r1, _021D91BC ; =UNK04_02210468 - ldr r0, _021D91D4 ; =0x0000100C - ldr r2, [r1] - add r1, sp, #0 - add r0, r2, r0 - mov r2, #0xa - bl strtol - ldr r2, _021D91BC ; =UNK04_02210468 - ldr r1, _021D91D4 ; =0x0000100C - ldr r5, [r2] - mov r4, r0 - add r0, r5, r1 - bl strlen - ldr r1, _021D91D4 ; =0x0000100C - ldr r2, [sp] - add r1, r5, r1 - add r0, r1, r0 - cmp r2, r0 - ldrne r1, _021D91CC ; =0x00004E85 - addne r0, r5, #0x1000 - strne r1, [r0, #8] - addne sp, sp, #4 - movne r0, #0xc - ldmneia sp!, {r4, r5, pc} - ldr r0, _021D91DC ; =0x00004E20 - add r1, r5, #0x1000 - add r0, r4, r0 - str r0, [r1, #8] - cmp r4, #0x64 - bge _021D91B0 - ldr ip, _021D91BC ; =UNK04_02210468 - mov r0, #0 - ldr r1, [ip] - ldr r5, _021D91E0 ; =0x00001052 - add r1, r1, #0x1000 - strb r0, [r1, #0x52] - ldr r2, [ip] - ldr r1, _021D91E4 ; =UNK04_0220BF54 - add r2, r2, #0x1000 - strb r0, [r2, #0x1f] - ldr r2, [ip] - ldr r3, _021D91E8 ; =0x0000012D - add r2, r2, #0x1000 - strb r0, [r2, #0x17f] - ldr r2, [ip] - add r2, r2, #0x1000 - strb r0, [r2, #0x10] - ldr r2, [ip] - add r2, r2, #0x1000 - strb r0, [r2, #0x188] - ldr r2, [ip] - add r0, r2, #0x1000 - ldr r0, [r0, #0x314] - add r2, r2, r5 - bl MOD04_021DA334 - ldr r0, _021D91BC ; =UNK04_02210468 - ldr r2, _021D91EC ; =0x0000101F - ldr r3, [r0] - ldr r1, _021D91F0 ; =UNK04_0220BF5C - add r0, r3, #0x1000 - add r2, r3, r2 - ldr r0, [r0, #0x314] - mov r3, #0x33 - bl MOD04_021DA334 - ldr r0, _021D91BC ; =UNK04_02210468 - ldr r2, _021D91F4 ; =0x0000117F - ldr r3, [r0] - ldr r1, _021D91F8 ; =UNK04_0220BF64 - add r0, r3, #0x1000 - add r2, r3, r2 - ldr r0, [r0, #0x314] - mov r3, #9 - bl MOD04_021DA334 - ldr r0, _021D91BC ; =UNK04_02210468 - ldr r2, _021D91FC ; =0x00001010 - ldr r3, [r0] - ldr r1, _021D9200 ; =UNK04_0220BF70 - add r0, r3, #0x1000 - add r2, r3, r2 - ldr r0, [r0, #0x314] - mov r3, #0xf - bl MOD04_021DA334 - ldr r0, _021D91BC ; =UNK04_02210468 - ldr r2, _021D9204 ; =0x00001188 - ldr r3, [r0] - ldr r1, _021D9208 ; =UNK04_0220BF7C - add r0, r3, #0x1000 - add r2, r3, r2 - ldr r0, [r0, #0x314] - mov r3, #0x41 - bl MOD04_021DA2F4 - ldr r0, _021D91BC ; =UNK04_02210468 - mov r1, #0 - ldr r0, [r0] - cmp r4, #0x28 - add r0, r0, #0x1000 - strb r1, [r0, #0x1b3] - ldrne r0, _021D920C ; =UNK04_02210464 - movne r1, #1 - strne r1, [r0] - ldreq r0, _021D920C ; =UNK04_02210464 - moveq r1, #2 - streq r1, [r0] -_021D91B0: - mov r0, #0 - add sp, sp, #4 - ldmia sp!, {r4, r5, pc} - .align 2, 0 -_021D91BC: .word UNK04_02210468 -_021D91C0: .word UNK04_0220BF34 -_021D91C4: .word errno -_021D91C8: .word UNK04_0220BF3C -_021D91CC: .word 0x00004E85 -_021D91D0: .word 0x000059D8 -_021D91D4: .word 0x0000100C -_021D91D8: .word UNK04_0220BF48 -_021D91DC: .word 0x00004E20 -_021D91E0: .word 0x00001052 -_021D91E4: .word UNK04_0220BF54 -_021D91E8: .word 0x0000012D -_021D91EC: .word 0x0000101F -_021D91F0: .word UNK04_0220BF5C -_021D91F4: .word 0x0000117F -_021D91F8: .word UNK04_0220BF64 -_021D91FC: .word 0x00001010 -_021D9200: .word UNK04_0220BF70 -_021D9204: .word 0x00001188 -_021D9208: .word UNK04_0220BF7C -_021D920C: .word UNK04_02210464 - arm_func_end MOD04_021D8F08 - - arm_func_start MOD04_021D9210 -MOD04_021D9210: ; 0x021D9210 - stmdb sp!, {r4, r5, lr} - sub sp, sp, #4 - ldr r0, _021D93F4 ; =UNK04_02210468 - mov r1, #0 - ldr r0, [r0] - add r2, r0, #0x1000 - ldr r0, [r2, #0x314] - ldr r5, [r2, #0x20c] - ldr r4, [r2, #0x210] - bl MOD04_021DA3DC - cmp r0, #1 - beq _021D9260 - ldr r0, _021D93F4 ; =UNK04_02210468 - ldr r2, _021D93F8 ; =0x00004E84 - ldr r1, [r0] - add sp, sp, #4 - add r1, r1, #0x1000 - str r2, [r1, #8] - mov r0, #0xe - ldmia sp!, {r4, r5, pc} -_021D9260: - bl MOD04_021D8F08 - cmp r0, #0 - addne sp, sp, #4 - movne r0, #0xe - ldmneia sp!, {r4, r5, pc} - ldr r0, _021D93F4 ; =UNK04_02210468 - ldr r1, _021D93F8 ; =0x00004E84 - ldr r0, [r0] - add r0, r0, #0x1000 - ldr r2, [r0, #8] - cmp r2, r1 - bge _021D9334 - ldr r0, _021D93FC ; =0x00004E22 - cmp r2, r0 - bne _021D9328 - ldr r0, _021D9400 ; =UNK04_0220BF88 - ldr r1, _021D9404 ; =0x0000071F - blx r5 - movs r5, r0 - bne _021D92D0 - ldr r0, _021D93F4 ; =UNK04_02210468 - ldr r2, _021D93F8 ; =0x00004E84 - ldr r1, [r0] - add sp, sp, #4 - add r1, r1, #0x1000 - str r2, [r1, #8] - mov r0, #2 - ldmia sp!, {r4, r5, pc} -_021D92D0: - add r1, r5, #0x1f - ldr r0, _021D9408 ; =UNK04_0221046C - bic r1, r1, #0x1f - bl FUN_02096710 - cmp r0, #1 - beq _021D9318 - ldr r0, _021D940C ; =UNK04_0220BF98 - mov r1, r5 - mov r2, #0 - blx r4 - ldr r0, _021D93F4 ; =UNK04_02210468 - ldr r2, _021D93F8 ; =0x00004E84 - ldr r1, [r0] - add sp, sp, #4 - add r1, r1, #0x1000 - str r2, [r1, #8] - mov r0, #0xf - ldmia sp!, {r4, r5, pc} -_021D9318: - ldr r0, _021D940C ; =UNK04_0220BF98 - mov r1, r5 - mov r2, #0 - blx r4 -_021D9328: - add sp, sp, #4 - mov r0, #0x15 - ldmia sp!, {r4, r5, pc} -_021D9334: - ldr r0, _021D9410 ; =0x00004E88 - cmp r2, r0 - beq _021D9350 - ldr r0, _021D9414 ; =0x00004E8C - cmp r2, r0 - beq _021D9378 - b _021D93E8 -_021D9350: - ldr r0, _021D9408 ; =UNK04_0221046C - bl FUN_02096570 - ldr r0, _021D93F4 ; =UNK04_02210468 - ldr r2, _021D9410 ; =0x00004E88 - ldr r1, [r0] - add sp, sp, #4 - add r1, r1, #0x1000 - str r2, [r1, #8] - mov r0, #0x10 - ldmia sp!, {r4, r5, pc} -_021D9378: - ldr r0, _021D9400 ; =UNK04_0220BF88 - mov r1, #0x700 - blx r5 - movs r5, r0 - bne _021D93AC - ldr r0, _021D93F4 ; =UNK04_02210468 - ldr r2, _021D9414 ; =0x00004E8C - ldr r1, [r0] - add sp, sp, #4 - add r1, r1, #0x1000 - str r2, [r1, #8] - mov r0, #0x11 - ldmia sp!, {r4, r5, pc} -_021D93AC: - add r0, r5, #0x1f - bic r0, r0, #0x1f - bl DWCi_AUTH_MakeWiFiID - ldr r0, _021D940C ; =UNK04_0220BF98 - mov r1, r5 - mov r2, #0 - blx r4 - ldr r0, _021D93F4 ; =UNK04_02210468 - ldr r2, _021D9414 ; =0x00004E8C - ldr r1, [r0] - add sp, sp, #4 - add r1, r1, #0x1000 - str r2, [r1, #8] - mov r0, #0x11 - ldmia sp!, {r4, r5, pc} -_021D93E8: - mov r0, #0x12 - add sp, sp, #4 - ldmia sp!, {r4, r5, pc} - .align 2, 0 -_021D93F4: .word UNK04_02210468 -_021D93F8: .word 0x00004E84 -_021D93FC: .word 0x00004E22 -_021D9400: .word UNK04_0220BF88 -_021D9404: .word 0x0000071F -_021D9408: .word UNK04_0221046C -_021D940C: .word UNK04_0220BF98 -_021D9410: .word 0x00004E88 -_021D9414: .word 0x00004E8C - arm_func_end MOD04_021D9210 - - arm_func_start MOD04_021D9418 -MOD04_021D9418: ; 0x021D9418 - stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} - sub sp, sp, #0x14 - mov sb, #0 - mov r0, #1 - ldr r7, _021D96D4 ; =0x00001388 - ldr fp, _021D96D8 ; =0x000082EA - ldr r5, _021D96DC ; =UNK04_02210468 - ldr r4, _021D96E0 ; =0x000013D8 - mov r6, sb - str sb, [sp, #8] - str sb, [sp, #0xc] - str r0, [sp, #4] -_021D9448: - ldr r0, [r5] - add r0, r0, #0x1000 - ldr r1, [r0, #0x314] - add r0, r1, #0x1000 - ldr r0, [r0, #0xba0] - cmp r0, #0 - beq _021D9470 - ldr r0, _021D96E4 ; =0x00001B34 - add r0, r1, r0 - bl OS_JoinThread -_021D9470: - ldr r0, [r5] - add r1, r0, #0x1000 - ldr r0, [r1, #0x314] - add r0, r0, #0x1000 - ldr r0, [r0, #0x20] - cmp r0, #8 - beq _021D9518 - ldr r0, _021D96E8 ; =0x00004E84 - str r0, [r1, #8] - ldr r0, [r5] - add r0, r0, #0x1000 - ldr r0, [r0, #0x314] - add r0, r0, #0x1000 - ldr r0, [r0, #0x20] - cmp r0, #7 - bne _021D94C0 - mov r0, #0x14 - bl MOD04_021D8D18 - add sp, sp, #0x14 - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} -_021D94C0: - cmp sb, #2 - ble _021D9508 - cmp r0, #2 - bne _021D94E0 - mov r0, #9 - bl MOD04_021D8D18 - add sp, sp, #0x14 - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} -_021D94E0: - cmp r0, #3 - bne _021D94F8 - mov r0, #0xb - bl MOD04_021D8D18 - add sp, sp, #0x14 - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} -_021D94F8: - mov r0, #0xd - bl MOD04_021D8D18 - add sp, sp, #0x14 - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} -_021D9508: - ldr r0, [sp, #4] - add sb, sb, #1 - str r0, [sp] - b _021D9598 -_021D9518: - bl MOD04_021D9210 - cmp r0, #0x10 - beq _021D9544 - cmp r0, #0x11 - beq _021D956C - cmp r0, #0x15 - bne _021D9578 - mov r0, #0x15 - bl MOD04_021D8D18 - add sp, sp, #0x14 - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} -_021D9544: - cmp sb, #2 - ble _021D955C - mov r0, #0x10 - bl MOD04_021D8D18 - add sp, sp, #0x14 - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} -_021D955C: - ldr r0, [sp, #8] - add sb, sb, #1 - str r0, [sp] - b _021D9598 -_021D956C: - bl MOD04_021D8D18 - add sp, sp, #0x14 - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} -_021D9578: - cmp sb, #2 - blt _021D958C - bl MOD04_021D8D18 - add sp, sp, #0x14 - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} -_021D958C: - ldr r0, [sp, #4] - add sb, sb, #1 - str r0, [sp] -_021D9598: - bl OS_GetTick - mov r8, r0 - mov sl, r1 - bl OS_GetTick - subs r2, r0, r8 - sbc r0, r1, sl - mov r1, r0, lsl #6 - ldr r3, [sp, #0xc] - orr r1, r1, r2, lsr #26 - mov r0, r2, lsl #6 - mov r2, fp - bl _ll_udiv - cmp r1, #0 - cmpeq r0, r7 - bhs _021D965C -_021D95D4: - ldr r0, [r5] - add r0, r0, r4 - bl OS_LockMutex - ldr r2, [r5] - add r1, r2, #0x1000 - ldr r0, [r1, #0x3f0] - cmp r0, #1 - bne _021D961C - ldr r2, _021D96E8 ; =0x00004E84 - ldr r0, _021D96E0 ; =0x000013D8 - str r2, [r1, #8] - ldr r1, [r5] - add r0, r1, r0 - bl OS_UnlockMutex - mov r0, #0x14 - bl MOD04_021D8D18 - add sp, sp, #0x14 - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} -_021D961C: - add r0, r2, r4 - bl OS_UnlockMutex - mov r0, r7 - bl OS_Sleep - bl OS_GetTick - subs r2, r0, r8 - sbc r0, r1, sl - mov r1, r0, lsl #6 - orr r1, r1, r2, lsr #26 - mov r0, r2, lsl #6 - mov r2, fp - mov r3, r6 - bl _ll_udiv - cmp r1, #0 - cmpeq r0, r7 - blo _021D95D4 -_021D965C: - ldr r0, [r5] - add r0, r0, #0x1000 - ldr r0, [r0, #0x314] - bl MOD04_021DAE4C - ldr r0, [r5] - add r0, r0, r4 - bl OS_LockMutex - ldr r0, [sp] - bl MOD04_021D96EC - ldr r1, [r5] - add r1, r1, #0x1000 - str r0, [r1, #4] - ldr r2, [r5] - add r1, r2, #0x1000 - ldr r0, [r1, #4] - cmp r0, #0 - beq _021D96C0 - ldr r2, _021D96E8 ; =0x00004E84 - ldr r0, _021D96E0 ; =0x000013D8 - str r2, [r1, #8] - ldr r1, [r5] - add r0, r1, r0 - bl OS_UnlockMutex - add sp, sp, #0x14 - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} -_021D96C0: - add r0, r2, r4 - bl OS_UnlockMutex - b _021D9448 - arm_func_end MOD04_021D9418 - - arm_func_start MOD04_021D96CC -MOD04_021D96CC: ; 0x021D96CC - add sp, sp, #0x14 - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - .align 2, 0 -_021D96D4: .word 0x00001388 -_021D96D8: .word 0x000082EA -_021D96DC: .word UNK04_02210468 -_021D96E0: .word 0x000013D8 -_021D96E4: .word 0x00001B34 -_021D96E8: .word 0x00004E84 - arm_func_end MOD04_021D96CC - - arm_func_start MOD04_021D96EC -MOD04_021D96EC: ; 0x021D96EC - stmdb sp!, {r4, lr} - ldr r1, _021D97E0 ; =UNK04_0220BEB4 - mov r4, r0 - ldr r0, [r1] - ldr r1, _021D97E4 ; =UNK04_0220BFA4 - bl strcmp - cmp r0, #0 - ldrne r0, _021D97E0 ; =UNK04_0220BEB4 - movne r1, #1 - strne r1, [r0, #0x14] - ldr r0, _021D97E8 ; =UNK04_02210468 - ldr r1, _021D97E0 ; =UNK04_0220BEB4 - ldr r0, [r0] - add r0, r0, #0x1000 - ldr r2, [r0, #0x20c] - str r2, [r1, #0xc] - ldr r2, [r0, #0x210] - str r2, [r1, #0x10] - ldr r0, [r0, #0x314] - bl MOD04_021DB608 - cmp r0, #0 - movne r0, #4 - ldmneia sp!, {r4, pc} - cmp r4, #1 - bne _021D9758 - ldr r0, _021D97EC ; =UNK04_0221046C - bl DWCi_BM_GetWiFiInfo -_021D9758: - ldr r0, _021D97E8 ; =UNK04_02210468 - ldr r2, _021D97F0 ; =0x000011CC - ldr r3, [r0] - add r0, r3, #0x1000 - ldr r0, [r0, #0x314] - add r1, r3, #0x1200 - add r2, r3, r2 - bl MOD04_021D8D60 - ldr r2, _021D97E8 ; =UNK04_02210468 - ldr r1, [r2] - add r1, r1, #0x1000 - str r0, [r1, #4] - ldr r0, [r2] - add r0, r0, #0x1000 - ldr r1, [r0, #4] - cmp r1, #0 - movne r0, #4 - ldmneia sp!, {r4, pc} - ldr r0, [r0, #0x314] - bl MOD04_021DB570 - cmp r0, #0 - movne r0, #4 - ldmneia sp!, {r4, pc} - ldr r0, _021D97F4 ; =OSi_ThreadInfo - ldr r0, [r0, #4] - bl OS_GetThreadPriority - ldr r1, _021D97E8 ; =UNK04_02210468 - ldr r2, [r1] - sub r1, r0, #1 - add r0, r2, #0x1000 - ldr r0, [r0, #0x314] - bl MOD04_021DB4A4 - mov r0, #0 - ldmia sp!, {r4, pc} - .align 2, 0 -_021D97E0: .word UNK04_0220BEB4 -_021D97E4: .word UNK04_0220BFA4 -_021D97E8: .word UNK04_02210468 -_021D97EC: .word UNK04_0221046C -_021D97F0: .word 0x000011CC -_021D97F4: .word OSi_ThreadInfo - arm_func_end MOD04_021D96EC - - arm_func_start MOD04_021D97F8 -MOD04_021D97F8: ; 0x021D97F8 - stmdb sp!, {r4, lr} - ldr r1, _021D9874 ; =UNK04_02210468 - mov r4, r0 - ldr r1, [r1] - cmp r1, #0 - bne _021D981C - mov r1, #0 - mov r2, #0x1c4 - bl MI_CpuFill8 -_021D981C: - ldr r1, _021D9874 ; =UNK04_02210468 - ldr r0, _021D9878 ; =0x00001008 - ldr r2, [r1] - mov r1, r4 - add r0, r2, r0 - mov r2, #0x1c4 - bl MI_CpuCopy8 - ldr r1, [r4] - ldr r0, _021D987C ; =0x00004E20 - cmp r1, r0 - blt _021D9854 - ldr r0, _021D9880 ; =0x00007530 - cmp r1, r0 - blt _021D985C -_021D9854: - ldr r0, _021D9884 ; =0x00005206 - str r0, [r4] -_021D985C: - ldr r1, [r4] - ldr r0, _021D9888 ; =0x00004E84 - cmp r1, r0 - rsbge r0, r1, #0 - strge r0, [r4] - ldmia sp!, {r4, pc} - .align 2, 0 -_021D9874: .word UNK04_02210468 -_021D9878: .word 0x00001008 -_021D987C: .word 0x00004E20 -_021D9880: .word 0x00007530 -_021D9884: .word 0x00005206 -_021D9888: .word 0x00004E84 - arm_func_end MOD04_021D97F8 - - arm_func_start MOD04_021D988C -MOD04_021D988C: ; 0x021D988C - stmdb sp!, {r4, lr} - ldr r0, _021D98D4 ; =UNK04_02210468 - ldr r1, [r0] - cmp r1, #0 - moveq r0, #0x16 - ldmeqia sp!, {r4, pc} - ldr r0, _021D98D8 ; =0x000013D8 - add r0, r1, r0 - bl OS_LockMutex - ldr r1, _021D98D4 ; =UNK04_02210468 - ldr r0, _021D98D8 ; =0x000013D8 - ldr r2, [r1] - add r1, r2, #0x1000 - add r0, r2, r0 - ldr r4, [r1, #4] - bl OS_UnlockMutex - mov r0, r4 - ldmia sp!, {r4, pc} - .align 2, 0 -_021D98D4: .word UNK04_02210468 -_021D98D8: .word 0x000013D8 - arm_func_end MOD04_021D988C - - arm_func_start MOD04_021D98DC -MOD04_021D98DC: ; 0x021D98DC - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r0, _021D9914 ; =UNK04_02210468 - ldr r1, [r0] - add r0, r1, #0x1000 - ldr r0, [r0, #0x384] - cmp r0, #0 - addeq sp, sp, #4 - ldmeqia sp!, {pc} - ldr r0, _021D9918 ; =0x00001318 - add r0, r1, r0 - bl OS_JoinThread - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021D9914: .word UNK04_02210468 -_021D9918: .word 0x00001318 - arm_func_end MOD04_021D98DC - - arm_func_start MOD04_021D991C -MOD04_021D991C: ; 0x021D991C - stmdb sp!, {r4, lr} - ldr r0, _021D996C ; =UNK04_02210468 - ldr r0, [r0] - cmp r0, #0 - ldmeqia sp!, {r4, pc} - add r1, r0, #0x1000 - ldr r0, [r1, #0x314] - ldr r4, [r1, #0x210] - cmp r0, #0 - beq _021D9948 - bl MOD04_021DAE4C -_021D9948: - ldr r1, _021D996C ; =UNK04_02210468 - ldr r0, _021D9970 ; =UNK04_0220BFC4 - ldr r1, [r1] - mov r2, #0 - blx r4 - ldr r0, _021D996C ; =UNK04_02210468 - mov r1, #0 - str r1, [r0] - ldmia sp!, {r4, pc} - .align 2, 0 -_021D996C: .word UNK04_02210468 -_021D9970: .word UNK04_0220BFC4 - arm_func_end MOD04_021D991C - - arm_func_start MOD04_021D9974 -MOD04_021D9974: ; 0x021D9974 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r0, _021D9A0C ; =UNK04_02210468 - ldr r1, [r0] - cmp r1, #0 - addeq sp, sp, #4 - ldmeqia sp!, {pc} - ldr r0, _021D9A10 ; =0x000013D8 - add r0, r1, r0 - bl OS_LockMutex - ldr r2, _021D9A0C ; =UNK04_02210468 - mov r3, #1 - ldr r0, [r2] - ldr r1, _021D9A10 ; =0x000013D8 - add r0, r0, #0x1000 - str r3, [r0, #0x3f0] - ldr r0, [r2] - add r0, r0, r1 - bl OS_UnlockMutex - ldr r0, _021D9A0C ; =UNK04_02210468 - ldr r0, [r0] - add r0, r0, #0x1000 - ldr r0, [r0, #0x314] - cmp r0, #0 - beq _021D99DC - bl MOD04_021DB440 -_021D99DC: - ldr r0, _021D9A0C ; =UNK04_02210468 - ldr r1, [r0] - add r0, r1, #0x1000 - ldr r0, [r0, #0x384] - cmp r0, #0 - addeq sp, sp, #4 - ldmeqia sp!, {pc} - ldr r0, _021D9A14 ; =0x00001318 - add r0, r1, r0 - bl OS_JoinThread - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021D9A0C: .word UNK04_02210468 -_021D9A10: .word 0x000013D8 -_021D9A14: .word 0x00001318 - arm_func_end MOD04_021D9974 - - arm_func_start MOD04_021D9A18 -MOD04_021D9A18: ; 0x021D9A18 - stmdb sp!, {lr} - sub sp, sp, #0xc - ldr r1, _021D9ABC ; =UNK04_02210468 - ldr r0, _021D9AC0 ; =0x000013D8 - ldr r1, [r1] - add r0, r1, r0 - bl OS_InitMutex - ldr r1, _021D9ABC ; =UNK04_02210468 - mov r2, #0 - ldr r0, [r1] - add r0, r0, #0x1000 - str r2, [r0, #0x3f0] - ldr r1, [r1] - add r0, r1, #0x1000 - ldr r0, [r0, #0x384] - cmp r0, #0 - beq _021D9A74 - ldr r0, _021D9AC4 ; =0x00001318 - add r0, r1, r0 - bl OS_IsThreadTerminated - cmp r0, #0 - addeq sp, sp, #0xc - ldmeqia sp!, {pc} -_021D9A74: - ldr r2, _021D9ABC ; =UNK04_02210468 - ldr r0, _021D9AC4 ; =0x00001318 - ldr lr, [r2] - mov r3, #0x1000 - ldr r1, _021D9AC8 ; =MOD04_021D9418 - str r3, [sp] - mov ip, #0x10 - add r0, lr, r0 - add r3, lr, #0x1000 - str ip, [sp, #4] - bl OS_CreateThread - ldr r1, _021D9ABC ; =UNK04_02210468 - ldr r0, _021D9AC4 ; =0x00001318 - ldr r1, [r1] - add r0, r1, r0 - bl OS_WakeupThreadDirect - add sp, sp, #0xc - ldmfd sp!, {pc} - .align 2, 0 -_021D9ABC: .word UNK04_02210468 -_021D9AC0: .word 0x000013D8 -_021D9AC4: .word 0x00001318 -_021D9AC8: .word MOD04_021D9418 - arm_func_end MOD04_021D9A18 - - arm_func_start MOD04_021D9ACC -MOD04_021D9ACC: ; 0x021D9ACC - stmdb sp!, {r4, r5, lr} - sub sp, sp, #4 - ldr r2, _021D9BFC ; =UNK04_02210468 - mov r5, r0 - ldr r0, [r2] - mov r4, r1 - cmp r0, #0 - addne sp, sp, #4 - ldr r2, [r5, #0x40] - movne r0, #2 - ldmneia sp!, {r4, r5, pc} - ldr r0, _021D9C00 ; =UNK04_0220BFD4 - ldr r1, _021D9C04 ; =0x000013F4 - blx r2 - ldr r1, _021D9BFC ; =UNK04_02210468 - cmp r0, #0 - str r0, [r1] - addeq sp, sp, #4 - moveq r0, #2 - ldmeqia sp!, {r4, r5, pc} - ldr r2, _021D9C04 ; =0x000013F4 - mov r1, #0 - bl MI_CpuFill8 - ldr r1, _021D9BFC ; =UNK04_02210468 - ldr r2, _021D9C08 ; =0x00001008 - ldr r0, [r1] - ldr r3, _021D9C0C ; =UNK04_02210464 - add r0, r0, #0x1000 - str r4, [r0, #0x314] - ldr r0, [r1] - mov r1, #0 - add r0, r0, r2 - mov r2, #0x1c4 - str r1, [r3] - bl MI_CpuFill8 - ldr r2, _021D9BFC ; =UNK04_02210468 - ldr r3, _021D9C10 ; =0x00004E84 - ldr r0, [r2] - ldr r1, _021D9C14 ; =0x000011CC - add r0, r0, #0x1000 - str r3, [r0, #8] - ldr lr, [r2] - mov r4, #4 - add ip, lr, r1 -_021D9B7C: - ldmia r5!, {r0, r1, r2, r3} - stmia ip!, {r0, r1, r2, r3} - subs r4, r4, #1 - bne _021D9B7C - ldmia r5, {r0, r1} - stmia ip, {r0, r1} - add r0, lr, #0x1100 - mov r2, #0 - strh r2, [r0, #0xfe] - ldr r1, _021D9BFC ; =UNK04_02210468 - mov r0, #1 - ldr r1, [r1] - add r1, r1, #0x1000 - strb r2, [r1, #0x20b] - bl MOD04_021D96EC - ldr r2, _021D9BFC ; =UNK04_02210468 - ldr r1, [r2] - add r1, r1, #0x1000 - str r0, [r1, #4] - ldr r0, [r2] - add r0, r0, #0x1000 - ldr r0, [r0, #4] - cmp r0, #0 - addne sp, sp, #4 - ldmneia sp!, {r4, r5, pc} - ldr r0, _021D9C18 ; =UNK04_02210460 - mov r1, #0 - str r1, [r0] - bl MOD04_021D9A18 - mov r0, #0 - add sp, sp, #4 - ldmia sp!, {r4, r5, pc} - .align 2, 0 -_021D9BFC: .word UNK04_02210468 -_021D9C00: .word UNK04_0220BFD4 -_021D9C04: .word 0x000013F4 -_021D9C08: .word 0x00001008 -_021D9C0C: .word UNK04_02210464 -_021D9C10: .word 0x00004E84 -_021D9C14: .word 0x000011CC -_021D9C18: .word UNK04_02210460 - arm_func_end MOD04_021D9ACC - - arm_func_start MOD04_021D9C1C -MOD04_021D9C1C: ; 0x021D9C1C - ldr r1, _021D9C28 ; =UNK04_0220BEB4 - str r0, [r1] - bx lr - .align 2, 0 -_021D9C28: .word UNK04_0220BEB4 - arm_func_end MOD04_021D9C1C - - arm_func_start MOD04_021D9C2C -MOD04_021D9C2C: ; 0x021D9C2C - stmdb sp!, {r4, r5, r6, lr} - sub sp, sp, #0x28 - mov r4, r2 - mov r6, r0 - mov r5, r1 - mov ip, #2 - ldr r2, _021D9F30 ; =UNK04_0220BFE4 - add r0, sp, #4 - mov r1, #0x21 - mov r3, #1 - str ip, [sp] - bl OS_SNPrintf - add r0, sp, #4 - bl strlen - mov r3, r0 - ldr r1, _021D9F34 ; =UNK04_0220BFF0 - mov r0, r6 - add r2, sp, #4 - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x28 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - mov r0, r5 - bl strlen - mov r3, r0 - ldr r1, _021D9F38 ; =UNK04_0220BFF8 - mov r0, r6 - mov r2, r5 - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x28 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - add r0, r5, #0xe - bl strlen - mov r3, r0 - ldr r1, _021D9F3C ; =UNK04_0220C000 - mov r0, r6 - add r2, r5, #0xe - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x28 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - add r0, r5, #0x41 - bl strlen - mov r3, r0 - ldr r1, _021D9F40 ; =UNK04_0220C008 - mov r0, r6 - add r2, r5, #0x41 - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x28 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - add r0, r5, #0x6f - bl strlen - mov r3, r0 - ldr r1, _021D9F44 ; =UNK04_0220C010 - mov r0, r6 - add r2, r5, #0x6f - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x28 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - add r0, r5, #0x15 - bl strlen - mov r3, r0 - ldr r1, _021D9F48 ; =UNK04_0220C018 - mov r0, r6 - add r2, r5, #0x15 - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x28 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - add r0, r5, #0x1a - bl strlen - mov r3, r0 - ldr r1, _021D9F4C ; =UNK04_0220C020 - mov r0, r6 - add r2, r5, #0x1a - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x28 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - add r0, r5, #0x1d - bl strlen - mov r3, r0 - ldr r1, _021D9F50 ; =UNK04_0220C028 - mov r0, r6 - add r2, r5, #0x1d - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x28 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - add r0, r5, #0x1f - bl strlen - mov r3, r0 - ldr r1, _021D9F54 ; =UNK04_0220C030 - mov r0, r6 - add r2, r5, #0x1f - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x28 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - add r0, r5, #0x2c - bl strlen - mov r3, r0 - ldr r1, _021D9F58 ; =UNK04_0220C038 - mov r0, r6 - add r2, r5, #0x2c - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x28 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - add r0, r5, #0x2f - bl strlen - mov r3, r0 - ldr r1, _021D9F5C ; =UNK04_0220C040 - mov r0, r6 - add r2, r5, #0x2f - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x28 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - add r0, r5, #0x34 - bl strlen - mov r3, r0 - ldr r1, _021D9F60 ; =UNK04_0220C048 - mov r0, r6 - add r2, r5, #0x34 - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x28 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - add r0, r5, #0x7e - bl wcslen - mov r3, r0 - ldr r1, _021D9F64 ; =UNK04_0220C050 - mov r0, r6 - add r2, r5, #0x7e - mov r3, r3, lsl #1 - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x28 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - cmp r4, #1 - bne _021D9ED0 - add r0, r5, #0x4e - bl strlen - mov r3, r0 - ldr r1, _021D9F68 ; =UNK04_0220C058 - mov r0, r6 - add r2, r5, #0x4e - bl MOD04_021DAB68 - cmp r0, #0 - addne sp, sp, #0x28 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} -_021D9ED0: - ldr r2, _021D9F6C ; =UNK04_0220C060 - mov ip, #2 - add r0, sp, #4 - mov r1, #0x21 - mov r3, #1 - str ip, [sp] - bl OS_SNPrintf - ldr r1, _021D9F70 ; =UNK04_0220C078 - add r2, sp, #4 - mov r0, r6 - bl MOD04_021DAC98 - cmp r0, #0 - addne sp, sp, #0x28 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - ldr r1, _021D9F74 ; =UNK04_0220C084 - mov r0, r6 - add r2, r5, #0x15 - bl MOD04_021DAC98 - cmp r0, #0 - moveq r0, #1 - movne r0, #0 - add sp, sp, #0x28 - ldmia sp!, {r4, r5, r6, pc} - .align 2, 0 -_021D9F30: .word UNK04_0220BFE4 -_021D9F34: .word UNK04_0220BFF0 -_021D9F38: .word UNK04_0220BFF8 -_021D9F3C: .word UNK04_0220C000 -_021D9F40: .word UNK04_0220C008 -_021D9F44: .word UNK04_0220C010 -_021D9F48: .word UNK04_0220C018 -_021D9F4C: .word UNK04_0220C020 -_021D9F50: .word UNK04_0220C028 -_021D9F54: .word UNK04_0220C030 -_021D9F58: .word UNK04_0220C038 -_021D9F5C: .word UNK04_0220C040 -_021D9F60: .word UNK04_0220C048 -_021D9F64: .word UNK04_0220C050 -_021D9F68: .word UNK04_0220C058 -_021D9F6C: .word UNK04_0220C060 -_021D9F70: .word UNK04_0220C078 -_021D9F74: .word UNK04_0220C084 - arm_func_end MOD04_021D9C2C - - arm_func_start MOD04_021D9F78 -MOD04_021D9F78: ; 0x021D9F78 - stmdb sp!, {r4, r5, r6, r7, r8, sb, lr} - sub sp, sp, #0x8c - mov r6, r1 - mov r1, #0 - mov r2, #0x94 - mov r4, r0 - bl MI_CpuFill8 - ldr r3, [r6] - ldr r5, [r6, #4] - mov r0, #0 - cmp r5, r0 - cmpeq r3, r0 - beq _021D9FC4 - ldr r2, _021DA218 ; =UNK04_0220C094 - mov r0, r4 - mov r1, #0xe - str r5, [sp] - bl OS_SNPrintf - b _021D9FE0 -_021D9FC4: - ldr r3, [r6, #8] - ldr r5, [r6, #0xc] - ldr r2, _021DA218 ; =UNK04_0220C094 - mov r0, r4 - mov r1, #0xe - str r5, [sp] - bl OS_SNPrintf -_021D9FE0: - ldrh r3, [r6, #0x10] - ldr r2, _021DA21C ; =UNK04_0220C09C - add r0, r4, #0xe - mov r1, #7 - bl OS_SNPrintf - ldr r0, _021DA220 ; =0x027FFE0C - ldrb r0, [r0] - cmp r0, #0 - bne _021DA008 - bl OS_Terminate -_021DA008: - ldr r0, _021DA220 ; =0x027FFE0C - add r1, r4, #0x15 - mov r2, #4 - bl MI_CpuCopy8 - ldr r0, _021DA224 ; =0x027FFE10 - ldrb r0, [r0] - cmp r0, #0 - bne _021DA02C - bl OS_Terminate -_021DA02C: - ldr r0, _021DA224 ; =0x027FFE10 - add r1, r4, #0x1a - mov r2, #2 - bl MI_CpuCopy8 - mov r1, #0x30 - add r0, sp, #0x16 - strb r1, [r4, #0x1d] - bl OS_GetMacAddress - ldr r5, _021DA228 ; =UNK04_0220C0A4 - add r7, sp, #0x16 - add r6, r4, #0x1f - mov r8, #0 -_021DA05C: - ldrb r2, [r7] - mov r0, r6 - mov r1, r5 - bl OS_SPrintf - add r8, r8, #1 - cmp r8, #6 - add r7, r7, #1 - add r6, r6, #2 - blt _021DA05C - add r0, sp, #0x38 - bl OS_GetOwnerInfo - ldrb r0, [sp, #0x38] - ldr r2, _021DA228 ; =UNK04_0220C0A4 - mov r1, #3 - cmp r0, #6 - movhi r0, #1 - strhib r0, [sp, #0x38] - ldrb r3, [sp, #0x38] - add r0, r4, #0x2c - bl OS_SNPrintf - add r0, sp, #0x3c - add r1, r4, #0x7e - mov r2, #0x14 - bl MI_CpuCopy8 - ldrb r1, [sp, #0x3b] - ldr r2, _021DA22C ; =UNK04_0220C0AC - add r0, r4, #0x2f - str r1, [sp] - ldrb r3, [sp, #0x3a] - mov r1, #5 - bl OS_SNPrintf - add r0, sp, #0x1c - bl RTC_GetDate - cmp r0, #0 - bne _021DA0F8 - add r0, sp, #0x2c - bl RTC_GetTime - cmp r0, #0 - beq _021DA104 -_021DA0F8: - add sp, sp, #0x8c - mov r0, #0 - ldmia sp!, {r4, r5, r6, r7, r8, sb, pc} -_021DA104: - ldr r0, [sp, #0x20] - ldr r2, _021DA230 ; =UNK04_0220C0B8 - str r0, [sp] - ldr r1, [sp, #0x24] - add r0, r4, #0x34 - str r1, [sp, #4] - ldr r3, [sp, #0x2c] - mov r1, #0xd - str r3, [sp, #8] - ldr r3, [sp, #0x30] - str r3, [sp, #0xc] - ldr r3, [sp, #0x34] - str r3, [sp, #0x10] - ldr r3, [sp, #0x1c] - bl OS_SNPrintf - bl OS_DisableInterrupts - mov sb, r0 - bl WCM_GetApMacAddress - mov r8, r0 - mov r1, #6 - bl DC_InvalidateRange - cmp r8, #0 - bne _021DA174 - mov r0, sb - bl OS_RestoreInterrupts - add sp, sp, #0x8c - mov r0, #0 - ldmia sp!, {r4, r5, r6, r7, r8, sb, pc} -_021DA174: - add r7, r4, #0x41 - mov r6, #0 - ldr r5, _021DA228 ; =UNK04_0220C0A4 -_021DA180: - ldrb r2, [r8, r6] - mov r0, r7 - mov r1, r5 - bl OS_SPrintf - add r6, r6, #1 - cmp r6, #6 - add r7, r7, #2 - blt _021DA180 - bl MOD04_021EBAB8 - mov r3, r0 - ldr r2, _021DA234 ; =UNK04_0220C0D4 - add r0, r4, #0x6f - mov r1, #0xe - bl OS_SNPrintf - add r0, sp, #0x14 - bl WCM_GetApEssid - mov r5, r0 - mov r1, #0x20 - bl DC_InvalidateRange - cmp r5, #0 - bne _021DA1E8 - mov r0, sb - bl OS_RestoreInterrupts - add sp, sp, #0x8c - mov r0, #0 - ldmia sp!, {r4, r5, r6, r7, r8, sb, pc} -_021DA1E8: - mov r0, r5 - add r1, r4, #0x72 - bl MOD04_021EE5F4 - mov r0, r5 - add r1, r4, #0x4e - mov r2, #0x20 - bl MI_CpuCopy8 - mov r0, sb - bl OS_RestoreInterrupts - mov r0, #1 - add sp, sp, #0x8c - ldmia sp!, {r4, r5, r6, r7, r8, sb, pc} - .align 2, 0 -_021DA218: .word UNK04_0220C094 -_021DA21C: .word UNK04_0220C09C -_021DA220: .word 0x027FFE0C -_021DA224: .word 0x027FFE10 -_021DA228: .word UNK04_0220C0A4 -_021DA22C: .word UNK04_0220C0AC -_021DA230: .word UNK04_0220C0B8 -_021DA234: .word UNK04_0220C0D4 - arm_func_end MOD04_021D9F78 - - arm_func_start MOD04_021DA238 -MOD04_021DA238: ; 0x021DA238 - stmdb sp!, {r4, lr} - sub sp, sp, #0x18 - mov r4, r0 - add r0, sp, #0 - bl DWCi_BM_GetWiFiInfo - add r1, sp, #0 - mov r0, r4 - bl MOD04_021D9F78 - add sp, sp, #0x18 - ldmia sp!, {r4, pc} - arm_func_end MOD04_021DA238 - - arm_func_start MOD04_021DA260 -MOD04_021DA260: ; 0x021DA260 - stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} - sub sp, sp, #4 - add r0, r0, #0x1000 - mov sb, r2 - cmp sb, #0 - ldr r8, [r0, #0x14] - mov sl, r1 - mov r7, #0 - addle sp, sp, #4 - ldmleia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - mov r6, r7 - mov r5, r7 - mov fp, r7 - mov r4, r7 -_021DA298: - ldr r1, [sl, r7, lsl #3] - cmp r1, #0 - beq _021DA2B4 - ldr r0, _021DA2EC ; =UNK04_0220C110 - mov r2, r6 - blx r8 - str r5, [sl, r7, lsl #3] -_021DA2B4: - add r0, sl, r7, lsl #3 - ldr r1, [r0, #4] - cmp r1, #0 - beq _021DA2D8 - ldr r0, _021DA2F0 ; =UNK04_0220C12C - mov r2, fp - blx r8 - add r0, sl, r7, lsl #3 - str r4, [r0, #4] -_021DA2D8: - add r7, r7, #1 - cmp r7, sb - blt _021DA298 - add sp, sp, #4 - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - .align 2, 0 -_021DA2EC: .word UNK04_0220C110 -_021DA2F0: .word UNK04_0220C12C - arm_func_end MOD04_021DA260 - - arm_func_start MOD04_021DA2F4 -MOD04_021DA2F4: ; 0x021DA2F4 - stmdb sp!, {r4, r5, r6, lr} - mov r6, r2 - mov r5, r3 - bl MOD04_021DA388 - movs r4, r0 - moveq r0, #0 - ldmeqia sp!, {r4, r5, r6, pc} - bl strlen - cmp r0, r5 - movge r0, #0 - ldmgeia sp!, {r4, r5, r6, pc} - mov r0, r6 - mov r1, r4 - bl strcpy - mov r0, #1 - ldmia sp!, {r4, r5, r6, pc} - arm_func_end MOD04_021DA2F4 - - arm_func_start MOD04_021DA334 -MOD04_021DA334: ; 0x021DA334 - stmdb sp!, {r4, r5, r6, lr} - mov r6, r2 - mov r5, r3 - bl MOD04_021DA388 - movs r4, r0 - moveq r0, #0 - ldmeqia sp!, {r4, r5, r6, pc} - bl strlen - mov r1, r0 - mov r0, r4 - mov r2, r6 - mov r3, r5 - bl MOD04_021DD36C - mvn r1, #0 - cmp r0, r1 - ldmeqia sp!, {r4, r5, r6, pc} - cmp r0, r5 - ldmhsia sp!, {r4, r5, r6, pc} - mov r1, #0 - strb r1, [r6, r0] - ldmia sp!, {r4, r5, r6, pc} - arm_func_end MOD04_021DA334 - - arm_func_start MOD04_021DA388 -MOD04_021DA388: ; 0x021DA388 - stmdb sp!, {r4, r5, r6, lr} - mov r6, r0 - mov r5, r1 - mov r4, #0 -_021DA398: - add r0, r6, r4, lsl #3 - add r0, r0, #0x1000 - ldr r1, [r0, #0xa34] - cmp r1, #0 - beq _021DA3D4 - mov r0, r5 - bl strcmp - cmp r0, #0 - addeq r0, r6, r4, lsl #3 - addeq r0, r0, #0x1000 - ldreq r0, [r0, #0xa38] - ldmeqia sp!, {r4, r5, r6, pc} - add r4, r4, #1 - cmp r4, #0x20 - blt _021DA398 -_021DA3D4: - mov r0, #0 - ldmia sp!, {r4, r5, r6, pc} - arm_func_end MOD04_021DA388 - - arm_func_start MOD04_021DA3DC -MOD04_021DA3DC: ; 0x021DA3DC - stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} - sub sp, sp, #0x14 - ldr r2, _021DA668 ; =0x00001A34 - mov fp, r0 - add r0, fp, r2 - mov r6, r1 - mov r3, #0x20 - mov r1, #0 - mov r2, #0x100 - str r0, [sp, #8] - str r3, [sp, #0xc] - str r1, [sp, #0x10] - bl MI_CpuFill8 - add r0, fp, #0x1000 - ldr r5, [r0, #0xa04] - ldr r1, _021DA66C ; =UNK04_0220C148 - mov r0, r5 - bl strstr - str r0, [sp] - cmp r0, #0 - addeq sp, sp, #0x14 - moveq r0, #0 - ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - add r0, r0, #4 - bl strlen - ldr r1, [sp] - add r1, r1, #4 - add r0, r1, r0 - str r0, [sp, #4] - ldr r1, _021DA670 ; =UNK04_0220C150 - mov r0, r5 - bl strstr - cmp r0, #0 - addeq sp, sp, #0x14 - moveq r0, #0 - ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - add r8, r0, #1 - ldrsb r7, [r8, #3] - ldr r2, _021DA674 ; =UNK04_0220C154 - mov r5, #0 - add r1, sp, #8 - mov r0, fp - mov r3, r8 - strb r5, [r8, #3] - bl MOD04_021DA68C - cmp r0, #1 - addne sp, sp, #0x14 - strneb r7, [r8, #3] - movne r0, r5 - ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - strb r7, [r8, #3] - cmp r6, #1 - beq _021DA4C8 - ldr r1, _021DA678 ; =UNK04_0220C160 - mov r0, r8 - mov r2, #3 - bl strncmp - cmp r0, #0 - beq _021DA4D4 -_021DA4C8: - add sp, sp, #0x14 - mov r0, #1 - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} -_021DA4D4: - ldr r1, _021DA67C ; =UNK04_0220C164 - add r0, r8, #4 - bl strstr - cmp r0, #0 - addeq sp, sp, #0x14 - moveq r0, r5 - ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - add sb, r0, #2 - mov r6, r5 - b _021DA580 -_021DA4FC: - ldr r1, _021DA680 ; =UNK04_0220C168 - mov r0, sb - bl strstr - movs r7, r0 - beq _021DA598 - ldrsb sl, [r7] - add r8, r7, #2 - ldr r1, _021DA67C ; =UNK04_0220C164 - mov r0, r8 - strb r6, [r7] - bl strstr - movs r5, r0 - streqb sl, [r7] - beq _021DA598 - ldrsb r4, [r5] - mov r0, fp - mov r2, sb - strb r6, [r5] - add r1, sp, #8 - mov r3, r8 - bl MOD04_021DA68C - cmp r0, #1 - strneb sl, [r7] - addne sp, sp, #0x14 - strneb r4, [r5] - movne r0, #0 - ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - mov r0, r8 - bl strlen - strb sl, [r7] - add r0, r8, r0 - strb r4, [r5] - add sb, r0, #2 -_021DA580: - ldrsb r0, [sb] - cmp r0, #0xd - beq _021DA598 - ldrsb r0, [sb, #1] - cmp r0, #0xa - bne _021DA4FC -_021DA598: - ldr r0, [sp] - add r8, r0, #4 - ldr r0, [sp, #4] - cmp r8, r0 - bhs _021DA65C - mov r5, #0 -_021DA5B0: - ldr r1, _021DA684 ; =UNK04_0220C16C - mov r0, r8 - bl strstr - movs sl, r0 - beq _021DA65C - ldrsb r7, [sl] - add sb, sl, #1 - ldr r1, _021DA688 ; =UNK04_0220C170 - mov r0, sb - strb r5, [sl] - bl strstr - movs r6, r0 - bne _021DA5F4 - ldr r1, _021DA67C ; =UNK04_0220C164 - mov r0, sb - bl strstr - mov r6, r0 -_021DA5F4: - cmp r6, #0 - ldrnesb r4, [r6] - mov r0, fp - mov r2, r8 - add r1, sp, #8 - mov r3, sb - strneb r5, [r6] - bl MOD04_021DA68C - cmp r0, #1 - beq _021DA634 - strb r7, [sl] - cmp r6, #0 - add sp, sp, #0x14 - strneb r4, [r6] - mov r0, #0 - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} -_021DA634: - mov r0, sb - bl strlen - add r0, sb, r0 - add r8, r0, #1 - ldr r0, [sp, #4] - strb r7, [sl] - cmp r6, #0 - strneb r4, [r6] - cmp r8, r0 - blo _021DA5B0 -_021DA65C: - mov r0, #1 - add sp, sp, #0x14 - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - .align 2, 0 -_021DA668: .word 0x00001A34 -_021DA66C: .word UNK04_0220C148 -_021DA670: .word UNK04_0220C150 -_021DA674: .word UNK04_0220C154 -_021DA678: .word UNK04_0220C160 -_021DA67C: .word UNK04_0220C164 -_021DA680: .word UNK04_0220C168 -_021DA684: .word UNK04_0220C16C -_021DA688: .word UNK04_0220C170 - arm_func_end MOD04_021DA3DC - - arm_func_start MOD04_021DA68C -MOD04_021DA68C: ; 0x021DA68C - stmdb sp!, {r4, r5, r6, r7, r8, lr} - mov r8, r1 - ldr r4, [r8, #8] - ldr r1, [r8, #4] - add r0, r0, #0x1000 - cmp r4, r1 - ldr r5, [r0, #0x10] - ldr r4, [r0, #0x14] - mov r7, r2 - mov r6, r3 - movgt r0, #0 - ldmgtia sp!, {r4, r5, r6, r7, r8, pc} - mov r0, r7 - bl strlen - mov r1, r0 - ldr r0, _021DA7D8 ; =UNK04_0220C174 - add r1, r1, #1 - blx r5 - ldr r2, [r8] - ldr r1, [r8, #8] - str r0, [r2, r1, lsl #3] - ldr r3, [r8, #8] - ldr r2, [r8] - ldr r0, [r2, r3, lsl #3] - cmp r0, #0 - beq _021DA770 - mov r0, r6 - bl strlen - mov r1, r0 - ldr r0, _021DA7DC ; =UNK04_0220C194 - add r1, r1, #1 - blx r5 - ldr r2, [r8] - ldr r1, [r8, #8] - add r1, r2, r1, lsl #3 - str r0, [r1, #4] - ldr r3, [r8, #8] - ldr r2, [r8] - mov r1, r3, lsl #3 - add r0, r2, r3, lsl #3 - ldr r0, [r0, #4] - cmp r0, #0 - beq _021DA770 - ldr r0, [r2, r1] - mov r1, r7 - bl strcpy - ldr r2, [r8] - ldr r0, [r8, #8] - mov r1, r6 - add r0, r2, r0, lsl #3 - ldr r0, [r0, #4] - bl strcpy - ldr r1, [r8, #8] - mov r0, #1 - add r1, r1, #1 - str r1, [r8, #8] - ldmia sp!, {r4, r5, r6, r7, r8, pc} -_021DA770: - ldr r1, [r2, r3, lsl #3] - cmp r1, #0 - beq _021DA798 - ldr r0, _021DA7E0 ; =UNK04_0220C1B4 - mov r2, #0 - blx r4 - ldr r1, [r8] - ldr r0, [r8, #8] - mov r2, #0 - str r2, [r1, r0, lsl #3] -_021DA798: - ldr r1, [r8] - ldr r0, [r8, #8] - add r0, r1, r0, lsl #3 - ldr r1, [r0, #4] - cmp r1, #0 - beq _021DA7D0 - ldr r0, _021DA7E4 ; =UNK04_0220C1D0 - mov r2, #0 - blx r4 - ldr r1, [r8] - ldr r0, [r8, #8] - mov r2, #0 - add r0, r1, r0, lsl #3 - str r2, [r0, #4] -_021DA7D0: - mov r0, #0 - ldmia sp!, {r4, r5, r6, r7, r8, pc} - .align 2, 0 -_021DA7D8: .word UNK04_0220C174 -_021DA7DC: .word UNK04_0220C194 -_021DA7E0: .word UNK04_0220C1B4 -_021DA7E4: .word UNK04_0220C1D0 - arm_func_end MOD04_021DA68C - - arm_func_start MOD04_021DA7E8 -MOD04_021DA7E8: ; 0x021DA7E8 - stmdb sp!, {r4, r5, r6, lr} - mov r6, r1 - mov r5, r0 - mov r0, r6 - mov r4, #0 - bl strlen - cmp r0, #0x100 - movhs r0, r4 - ldmhsia sp!, {r4, r5, r6, pc} - ldr r0, _021DA934 ; =0x00001024 - mov r1, r6 - add r0, r5, r0 - mov r2, #0x100 - bl strncpy - mov r0, r6 - bl strlen - ldr r1, _021DA934 ; =0x00001024 - mov r6, r0 - add r0, r5, r1 - bl strlen - cmp r6, r0 - movne r0, r4 - ldmneia sp!, {r4, r5, r6, pc} - ldr r0, _021DA934 ; =0x00001024 - ldr r1, _021DA938 ; =UNK04_0220C1EC - add r0, r5, r0 - bl strstr - cmp r0, #0 - beq _021DA884 - ldr r0, _021DA93C ; =0x0000102B - add r1, r5, #0x1000 - add r0, r5, r0 - str r0, [r1, #0x124] - mov r0, r4 - str r0, [r1, #0x12c] - add r0, r5, #0x1100 - mov r1, #0x50 - strh r1, [r0, #0x30] - b _021DA8C0 -_021DA884: - ldr r0, _021DA934 ; =0x00001024 - ldr r1, _021DA940 ; =UNK04_0220C1F4 - add r0, r5, r0 - bl strstr - cmp r0, #0 - moveq r0, r4 - ldmeqia sp!, {r4, r5, r6, pc} - add r1, r0, #8 - add r0, r5, #0x1000 - str r1, [r0, #0x124] - mov r2, #1 - ldr r1, _021DA944 ; =0x000001BB - str r2, [r0, #0x12c] - add r0, r5, #0x1100 - strh r1, [r0, #0x30] -_021DA8C0: - add r0, r5, #0x1000 - ldr r0, [r0, #0x124] - ldr r1, _021DA948 ; =UNK04_0220C200 - bl strstr - cmp r0, #0 - movne r1, #0 - strneb r1, [r0] - addne r4, r0, #1 - add r0, r5, #0x1000 - ldr r0, [r0, #0x124] - ldr r1, _021DA94C ; =UNK04_0220C204 - bl strstr - cmp r0, #0 - addeq r0, r5, #0x1000 - moveq r1, #0 - streq r1, [r0, #0x128] - movne r1, #0 - strneb r1, [r0] - addne r1, r0, #1 - addne r0, r5, #0x1000 - strne r1, [r0, #0x128] - cmp r4, #0 - beq _021DA92C - mov r0, r4 - bl atol - add r1, r5, #0x1100 - strh r0, [r1, #0x30] -_021DA92C: - mov r0, #1 - ldmia sp!, {r4, r5, r6, pc} - .align 2, 0 -_021DA934: .word 0x00001024 -_021DA938: .word UNK04_0220C1EC -_021DA93C: .word 0x0000102B -_021DA940: .word UNK04_0220C1F4 -_021DA944: .word 0x000001BB -_021DA948: .word UNK04_0220C200 -_021DA94C: .word UNK04_0220C204 - arm_func_end MOD04_021DA7E8 - - arm_func_start MOD04_021DA950 -MOD04_021DA950: ; 0x021DA950 - stmdb sp!, {r4, r5, r6, r7, lr} - sub sp, sp, #4 - add r0, r0, #0x1000 - mov r5, r2 - cmp r5, #0 - ldr r7, [r0, #0x14] - ldr r2, [r0, #0x10] - mov r6, r1 - addle sp, sp, #4 - movle r0, #0 - ldmleia sp!, {r4, r5, r6, r7, pc} - ldr r1, [r6, #0xc] - ldr r0, _021DAA08 ; =UNK04_0220C208 - add r1, r1, r5 - blx r2 - movs r4, r0 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {r4, r5, r6, r7, pc} - ldr r0, [r6] - ldr r2, [r6, #0xc] - mov r1, r4 - bl MI_CpuCopy8 - ldr r1, [r6] - ldr r0, _021DAA0C ; =UNK04_0220C218 - mov r2, #0 - blx r7 - cmp r4, #0 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {r4, r5, r6, r7, pc} - ldr r0, [r6] - ldr r1, [r6, #4] - sub r0, r4, r0 - add r0, r1, r0 - str r0, [r6, #4] - ldr r1, [r6, #0xc] - mov r0, #1 - add r1, r1, r5 - str r1, [r6, #0xc] - str r4, [r6] - ldr r1, [r6, #0xc] - add r1, r4, r1 - str r1, [r6, #8] - add sp, sp, #4 - ldmia sp!, {r4, r5, r6, r7, pc} - .align 2, 0 -_021DAA08: .word UNK04_0220C208 -_021DAA0C: .word UNK04_0220C218 - arm_func_end MOD04_021DA950 - - arm_func_start MOD04_021DAA10 -MOD04_021DAA10: ; 0x021DAA10 - stmdb sp!, {r4, lr} - mov r4, r1 - ldr r1, [r4] - add r0, r0, #0x1000 - cmp r1, #0 - ldr r3, [r0, #0x14] - beq _021DAA38 - ldr r0, _021DAA4C ; =UNK04_0220C218 - mov r2, #0 - blx r3 -_021DAA38: - mov r0, r4 - mov r1, #0 - mov r2, #0x10 - bl MI_CpuFill8 - ldmia sp!, {r4, pc} - .align 2, 0 -_021DAA4C: .word UNK04_0220C218 - arm_func_end MOD04_021DAA10 - - arm_func_start MOD04_021DAA50 -MOD04_021DAA50: ; 0x021DAA50 - stmdb sp!, {r4, r5, lr} - sub sp, sp, #4 - movs r5, r2 - add r0, r0, #0x1000 - ldr r2, [r0, #0x10] - mov r4, r1 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {r4, r5, pc} - ldr r0, _021DAABC ; =UNK04_0220C22C - mov r1, r5 - blx r2 - str r0, [r4] - ldr r0, [r4] - cmp r0, #0 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {r4, r5, pc} - str r0, [r4, #4] - str r5, [r4, #0xc] - ldr r2, [r4] - ldr r1, [r4, #0xc] - mov r0, #1 - add r1, r2, r1 - str r1, [r4, #8] - add sp, sp, #4 - ldmia sp!, {r4, r5, pc} - .align 2, 0 -_021DAABC: .word UNK04_0220C22C - arm_func_end MOD04_021DAA50 - - arm_func_start MOD04_021DAAC0 -MOD04_021DAAC0: ; 0x021DAAC0 - ands r1, r0, #0x8000 - bicne r0, r0, #0x8000 - bx lr - arm_func_end MOD04_021DAAC0 - - arm_func_start MOD04_021DAACC -MOD04_021DAACC: ; 0x021DAACC - stmdb sp!, {r4, r5, r6, r7, lr} - sub sp, sp, #4 - ldr r2, _021DAB60 ; =0x000019F4 - mov r7, r0 - mov r6, r1 - mov r0, r6 - add r4, r7, r2 - bl strlen - mov r5, r0 - ldr r0, [r4, #4] - ldr r1, [r4, #8] - sub r1, r1, r0 - cmp r5, r1 - ble _021DAB34 - sub r2, r5, r1 - mov r0, r7 - mov r1, r4 - add r2, r2, #1 - bl MOD04_021DA950 - cmp r0, #0 - addeq sp, sp, #4 - moveq r0, #1 - ldmeqia sp!, {r4, r5, r6, r7, pc} - ldr r0, [r4, #4] - ldr r1, [r4, #8] - sub r1, r1, r0 -_021DAB34: - ldr r2, _021DAB64 ; =UNK04_0220C240 - mov r3, r6 - bl OS_SNPrintf - cmp r0, r5 - ldreq r1, [r4, #4] - movne r0, #1 - addeq r0, r1, r0 - streq r0, [r4, #4] - moveq r0, #0 - add sp, sp, #4 - ldmia sp!, {r4, r5, r6, r7, pc} - .align 2, 0 -_021DAB60: .word 0x000019F4 -_021DAB64: .word UNK04_0220C240 - arm_func_end MOD04_021DAACC - - arm_func_start MOD04_021DAB68 -MOD04_021DAB68: ; 0x021DAB68 - stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} - sub sp, sp, #4 - mov sl, r0 - add r0, sl, #0x1000 - ldr r4, [r0, #0x9f0] - ldr r0, _021DAC8C ; =0x000019F4 - cmp r4, #0 - ldreq r6, _021DAC90 ; =UNK04_0220C244 - mov r8, r2 - add r5, sl, #0x1000 - add r4, sl, r0 - ldr r0, [r5, #0x9f0] - mov r7, r3 - add fp, r0, #1 - mov r2, #0 - mov sb, r1 - ldrne r6, _021DAC94 ; =UNK04_0220C248 - mov r0, r8 - mov r1, r7 - mov r3, r2 - str fp, [r5, #0x9f0] - bl MOD04_021DD4FC - mov r5, r0 - mov r0, r6 - bl strlen - mov fp, r0 - mov r0, sb - bl strlen - sub r1, fp, #2 - add r2, r1, r0 - ldr r0, [r4, #4] - ldr r1, [r4, #8] - add r2, r5, r2 - sub r1, r1, r0 - cmp r2, r1 - ble _021DAC28 - sub r2, r2, r1 - mov r0, sl - mov r1, r4 - add r2, r2, #1 - bl MOD04_021DA950 - cmp r0, #0 - addeq sp, sp, #4 - moveq r0, #1 - ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - ldr r0, [r4, #4] - ldr r1, [r4, #8] - sub r1, r1, r0 -_021DAC28: - mov r2, r6 - mov r3, sb - bl OS_SNPrintf - ldr r2, [r4, #4] - mov r1, r7 - add r0, r2, r0 - str r0, [r4, #4] - ldr r2, [r4, #4] - ldr r3, [r4, #8] - mov r0, r8 - sub r3, r3, r2 - sub r3, r3, #1 - bl MOD04_021DD4FC - cmp r0, #0 - addlt sp, sp, #4 - movlt r0, #1 - ldmltia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - ldr r1, [r4, #4] - mov r0, #0 - add r1, r1, r5 - str r1, [r4, #4] - ldr r1, [r4, #4] - strb r0, [r1] - add sp, sp, #4 - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - .align 2, 0 -_021DAC8C: .word 0x000019F4 -_021DAC90: .word UNK04_0220C244 -_021DAC94: .word UNK04_0220C248 - arm_func_end MOD04_021DAB68 - - arm_func_start MOD04_021DAC98 -MOD04_021DAC98: ; 0x021DAC98 - stmdb sp!, {r4, r5, r6, r7, r8, sb, lr} - sub sp, sp, #4 - mov r6, r2 - mov r8, r0 - ldr r2, _021DAD7C ; =0x000019F4 - mov r0, r6 - mov r7, r1 - add r5, r8, r2 - bl strlen - mov r4, r0 - ldr r0, _021DAD80 ; =UNK04_0220C250 - bl strlen - mov sb, r0 - mov r0, r7 - bl strlen - sub r1, sb, #4 - add r0, r1, r0 - add r4, r4, r0 - ldr r2, [r5, #8] - ldr r1, [r5, #4] - add r0, r4, #1 - sub r1, r2, r1 - cmp r0, r1 - ble _021DAD1C - sub r2, r4, r1 - mov r0, r8 - mov r1, r5 - add r2, r2, #1 - bl MOD04_021DA950 - cmp r0, #0 - addeq sp, sp, #4 - moveq r0, #1 - ldmeqia sp!, {r4, r5, r6, r7, r8, sb, pc} -_021DAD1C: - ldr r0, [r5] - ldr r1, _021DAD84 ; =UNK04_0220C148 - bl strstr - add r8, r0, #2 - ldrsb sb, [r0, #2] - mov r0, r8 - bl strlen - add r2, r0, #1 - add r0, r8, r4 - mov r1, r8 - bl memmove - ldr r2, _021DAD80 ; =UNK04_0220C250 - str r6, [sp] - mov r3, r7 - mov r0, r8 - add r1, r4, #1 - bl OS_SNPrintf - strb sb, [r8, r0] - ldr r1, [r5, #4] - mov r0, #0 - add r1, r1, r4 - str r1, [r5, #4] - add sp, sp, #4 - ldmia sp!, {r4, r5, r6, r7, r8, sb, pc} - .align 2, 0 -_021DAD7C: .word 0x000019F4 -_021DAD80: .word UNK04_0220C250 -_021DAD84: .word UNK04_0220C148 - arm_func_end MOD04_021DAC98 - - arm_func_start MOD04_021DAD88 -MOD04_021DAD88: ; 0x021DAD88 - stmdb sp!, {r4, r5, r6, r7, r8, lr} - sub sp, sp, #8 - mov r7, r0 - add r0, r7, #0x1000 - ldr r1, [r0, #8] - ldr r0, _021DAE40 ; =0x000019F4 - cmp r1, #0 - ldreq r6, _021DAE44 ; =UNK04_0220C25C - add r5, r7, r0 - add r0, r7, #0x1000 - ldrne r6, _021DAE48 ; =UNK04_0220C2B0 - ldr r0, [r0, #0x124] - bl strlen - mov r4, r0 - mov r0, r6 - bl strlen - add r1, r7, #0x1000 - mov r8, r0 - ldr r0, [r1, #0x128] - bl strlen - sub r1, r8, #4 - add r0, r1, r0 - add r1, r4, r0 - ldr r0, _021DAE40 ; =0x000019F4 - add r2, r1, #0x400 - add r1, r7, r0 - mov r0, r7 - bl MOD04_021DAA50 - cmp r0, #1 - addne sp, sp, #8 - movne r0, #1 - ldmneia sp!, {r4, r5, r6, r7, r8, pc} - add r3, r7, #0x1000 - ldr r0, [r3, #0x124] - mov r2, r6 - str r0, [sp] - ldr r0, [r5, #4] - ldr r1, [r5, #0xc] - ldr r3, [r3, #0x128] - bl OS_SNPrintf - ldr r1, [r5, #4] - add r0, r1, r0 - str r0, [r5, #4] - mov r0, #0 - add sp, sp, #8 - ldmia sp!, {r4, r5, r6, r7, r8, pc} - .align 2, 0 -_021DAE40: .word 0x000019F4 -_021DAE44: .word UNK04_0220C25C -_021DAE48: .word UNK04_0220C2B0 - arm_func_end MOD04_021DAD88 - - arm_func_start MOD04_021DAE4C -MOD04_021DAE4C: ; 0x021DAE4C - stmdb sp!, {r4, r5, lr} - sub sp, sp, #4 - movs r5, r0 - add r1, r5, #0x1000 - ldr r4, [r1, #0x14] - addeq sp, sp, #4 - ldmeqia sp!, {r4, r5, pc} - ldr r1, _021DAF00 ; =0x00001A34 - mov r2, #0x20 - add r1, r5, r1 - bl MOD04_021DA260 - ldr r1, _021DAF04 ; =0x00001A04 - mov r0, r5 - add r1, r5, r1 - bl MOD04_021DAA10 - ldr r1, _021DAF08 ; =0x000019F4 - mov r0, r5 - add r1, r5, r1 - bl MOD04_021DAA10 - add r0, r5, #0x1000 - ldr r1, [r0, #0x9c8] - cmp r1, #0 - beq _021DAEC0 - ldr r0, _021DAF0C ; =UNK04_0220C2D0 - mov r2, #0 - blx r4 - add r0, r5, #0x1000 - mov r1, #0 - str r1, [r0, #0x9c8] -_021DAEC0: - add r0, r5, #0x1000 - ldr r1, [r0, #0x9cc] - cmp r1, #0 - beq _021DAEE8 - ldr r0, _021DAF10 ; =UNK04_0220C2E8 - mov r2, #0 - blx r4 - add r0, r5, #0x1000 - mov r1, #0 - str r1, [r0, #0x9cc] -_021DAEE8: - ldr r2, _021DAF14 ; =0x00001C10 - mov r0, r5 - mov r1, #0 - bl MI_CpuFill8 - add sp, sp, #4 - ldmia sp!, {r4, r5, pc} - .align 2, 0 -_021DAF00: .word 0x00001A34 -_021DAF04: .word 0x00001A04 -_021DAF08: .word 0x000019F4 -_021DAF0C: .word UNK04_0220C2D0 -_021DAF10: .word UNK04_0220C2E8 -_021DAF14: .word 0x00001C10 - arm_func_end MOD04_021DAE4C - - arm_func_start MOD04_021DAF18 -MOD04_021DAF18: ; 0x021DAF18 - stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} - sub sp, sp, #0xc - mov sl, r0 - add r0, sl, #0x1000 - ldr fp, [r0, #0x1c] - ldr r0, _021DB224 ; =0x00001134 - ldr r1, _021DB228 ; =0x00001198 - ldr r2, _021DB22C ; =0x00001A04 - add r8, sl, r0 - cmp fp, #0 - mov r0, sl - add r6, sl, r1 - add r7, sl, r2 - mov r5, #0 - ldrle fp, _021DB230 ; =0x0000EA60 - bl MOD04_021DB35C - mov r0, sl - bl MOD04_021DB348 - movs r4, r0 - addeq r0, sl, #0x1000 - moveq r1, #2 - streq r1, [r0, #0x20] - addeq sp, sp, #0xc - ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - bl CPS_SocUse - add r0, sl, #0x1000 - ldr r0, [r0, #0x12c] - cmp r0, #1 - bne _021DAFC8 - mov r0, r6 - mov r1, #0 - mov r2, #0x830 - bl MI_CpuFill8 - ldr r1, _021DB234 ; =MOD04_021DAAC0 - add r0, sl, #0x1000 - str r1, [r6, #0x810] - ldr r1, [r0, #0x124] - ldr r0, _021DB238 ; =UNK04_0220C0E4 - str r1, [r6, #0x800] - mov r1, #0xb - str r6, [r8, #0xc] - bl CPS_SetRootCa - mov r0, #1 - bl CPS_SetSsl -_021DAFC8: - add r0, sl, #0x1100 - ldrh r1, [r0, #0x30] - mov r2, r4 - mov r0, #0 - bl CPS_SocPingMode - bl CPS_TcpConnect - cmp r0, #0 - beq _021DB004 - add r0, sl, #0x1000 - mov r1, #3 - str r1, [r0, #0x20] - bl CPS_SocRelease - bl CPS_SocUnRegister - add sp, sp, #0xc - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} -_021DB004: - add r0, sl, #0x1000 - ldr r4, [r0, #0x9f4] - mov r0, r4 - bl strlen - mov r1, r0 - mov r0, r4 - bl CPS_SocWrite - cmp r0, #0 - str r0, [sp, #8] - addle r0, sl, #0x1000 - movle r1, #5 - strle r1, [r0, #0x20] - ble _021DB20C - bl CPS_SocGetChar - mov r0, sl - bl MOD04_021DB3B8 - cmp r0, #0 - addeq r0, sl, #0x1000 - moveq r1, #7 - streq r1, [r0, #0x20] - beq _021DB20C - ldr r0, [r7] - str r0, [r7, #4] - ldr r1, [r7] - ldr r0, [r7, #0xc] - add r0, r1, r0 - str r0, [r7, #8] - bl OS_GetTick - mov r6, r0 - mov r0, fp, asr #0x1f - mov r8, r1 - str r0, [sp, #4] - mov r4, #0 -_021DB088: - ldr r0, _021DB23C ; =CPSMyIp - ldr r0, [r0] - cmp r0, #0 - addeq r0, sl, #0x1000 - moveq r1, #5 - streq r1, [r0, #0x20] - beq _021DB20C - bl CPS_SocGetLength - str r0, [sp, #8] - cmp r0, #0 - blt _021DB1E8 - cmp r0, #0 - ble _021DB16C - bl OS_GetTick - mov r6, r0 - add r0, sp, #8 - mov r8, r1 - bl CPS_SocRead - cmp r0, #0 - beq _021DB1E8 - ldr r2, [r7, #8] - ldr r1, [r7, #4] - sub r2, r2, #1 - ldr sb, [sp, #8] - sub r2, r2, r1 - cmp sb, r2 - movge sb, r2 - mov r2, sb - bl MI_CpuCopy8 - ldr r0, [r7, #4] - cmp r5, #1 - add r0, r0, sb - str r0, [r7, #4] - ldr r0, [r7, #4] - strb r4, [r0] - bne _021DB144 - ldr r0, _021DB240 ; =0x00001A14 - add r0, sl, r0 - bl OS_LockMutex - add r1, sl, #0x1000 - ldr r2, [r1, #0xa30] - ldr r0, _021DB240 ; =0x00001A14 - add r2, r2, sb - add r0, sl, r0 - str r2, [r1, #0xa30] - bl OS_UnlockMutex - b _021DB150 -_021DB144: - mov r0, sl - bl MOD04_021DB248 - mov r5, r0 -_021DB150: - ldr r0, [sp, #8] - cmp r0, sb - bls _021DB164 - bl CPS_SocConsume - b _021DB1E8 -_021DB164: - mov r0, sb - bl CPS_SocConsume -_021DB16C: - add r0, sl, #0x1000 - ldr r1, [r0, #0xa2c] - cmp r1, #0 - blt _021DB188 - ldr r0, [r0, #0xa30] - cmp r0, r1 - bge _021DB1E8 -_021DB188: - bl OS_GetTick - subs r2, r0, r6 - sbc r0, r1, r8 - mov r1, r0, lsl #6 - orr r1, r1, r2, lsr #26 - mov r0, r2, lsl #6 - ldr r2, _021DB244 ; =0x000082EA - mov r3, r4 - bl _ll_udiv - ldr r2, [sp, #4] - cmp r1, r2 - cmpeq r0, fp - addhi r0, sl, #0x1000 - movhi r1, #6 - strhi r1, [r0, #0x20] - bhi _021DB20C - mov r0, sl - bl MOD04_021DB3B8 - cmp r0, #0 - bne _021DB088 - add r0, sl, #0x1000 - mov r1, #7 - str r1, [r0, #0x20] - b _021DB20C -_021DB1E8: - bl CPS_TcpShutdown - bl CPS_TcpClose - bl CPS_SocRelease - bl CPS_SocUnRegister - add r0, sl, #0x1000 - mov r1, #8 - str r1, [r0, #0x20] - add sp, sp, #0xc - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} -_021DB20C: - bl CPS_TcpShutdown - bl CPS_TcpClose - bl CPS_SocRelease - bl CPS_SocUnRegister - add sp, sp, #0xc - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - .align 2, 0 -_021DB224: .word 0x00001134 -_021DB228: .word 0x00001198 -_021DB22C: .word 0x00001A04 -_021DB230: .word 0x0000EA60 -_021DB234: .word MOD04_021DAAC0 -_021DB238: .word UNK04_0220C0E4 -_021DB23C: .word CPSMyIp -_021DB240: .word 0x00001A14 -_021DB244: .word 0x000082EA - arm_func_end MOD04_021DAF18 - - arm_func_start MOD04_021DB248 -MOD04_021DB248: ; 0x021DB248 - stmdb sp!, {r4, r5, r6, r7, lr} - sub sp, sp, #4 - mov r5, r0 - add r0, r5, #0x1000 - ldr r6, [r0, #0xa04] - ldr r2, _021DB334 ; =0x00001A04 - ldr r1, _021DB338 ; =UNK04_0220C148 - mov r0, r6 - add r4, r5, r2 - bl strstr - cmp r0, #0 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {r4, r5, r6, r7, pc} - ldr r1, _021DB338 ; =UNK04_0220C148 - mov r0, r6 - bl strstr - ldr r1, _021DB33C ; =0x00001A14 - add r6, r0, #4 - add r0, r5, r1 - bl OS_LockMutex - ldr r0, [r4, #4] - ldr r1, _021DB33C ; =0x00001A14 - sub r2, r0, r6 - add r0, r5, #0x1000 - str r2, [r0, #0xa30] - add r0, r5, r1 - bl OS_UnlockMutex - ldr r0, [r4] - ldr r1, _021DB340 ; =UNK04_0220C300 - bl strstr - movs r4, r0 - addeq sp, sp, #4 - moveq r0, #1 - ldmeqia sp!, {r4, r5, r6, r7, pc} - ldr r0, _021DB340 ; =UNK04_0220C300 - bl strlen - add r7, r4, r0 - ldr r1, _021DB344 ; =UNK04_0220C164 - mov r0, r7 - bl strstr - mov r4, r0 - ldr r0, _021DB33C ; =0x00001A14 - ldrsb r6, [r4] - mov r1, #0 - add r0, r5, r0 - strb r1, [r4] - bl OS_LockMutex - mov r0, r7 - bl atol - add r1, r5, #0x1000 - ldr r2, _021DB33C ; =0x00001A14 - str r0, [r1, #0xa2c] - add r0, r5, r2 - bl OS_UnlockMutex - strb r6, [r4] - mov r0, #1 - add sp, sp, #4 - ldmia sp!, {r4, r5, r6, r7, pc} - .align 2, 0 -_021DB334: .word 0x00001A04 -_021DB338: .word UNK04_0220C148 -_021DB33C: .word 0x00001A14 -_021DB340: .word UNK04_0220C300 -_021DB344: .word UNK04_0220C164 - arm_func_end MOD04_021DB248 - - arm_func_start MOD04_021DB348 -MOD04_021DB348: ; 0x021DB348 - ldr ip, _021DB358 ; =CPS_Resolve - add r0, r0, #0x1000 - ldr r0, [r0, #0x124] - bx ip - .align 2, 0 -_021DB358: .word CPS_Resolve - arm_func_end MOD04_021DB348 - - arm_func_start MOD04_021DB35C -MOD04_021DB35C: ; 0x021DB35C - stmdb sp!, {r4, lr} - ldr r1, _021DB3AC ; =0x00001134 - mov r4, r0 - add r0, r4, r1 - mov r1, #0 - mov r2, #0x64 - bl MI_CpuFill8 - ldr r0, _021DB3B0 ; =0x00000B68 - add r1, r4, #0x1000 - str r0, [r1, #0x170] - ldr r3, [r1, #0x9c8] - ldr r0, _021DB3AC ; =0x00001134 - ldr r2, _021DB3B4 ; =0x000005EA - str r3, [r1, #0x174] - str r2, [r1, #0x17c] - ldr r2, [r1, #0x9cc] - add r0, r4, r0 - str r2, [r1, #0x180] - bl CPS_SocRegister - ldmia sp!, {r4, pc} - .align 2, 0 -_021DB3AC: .word 0x00001134 -_021DB3B0: .word 0x00000B68 -_021DB3B4: .word 0x000005EA - arm_func_end MOD04_021DB35C - - arm_func_start MOD04_021DB3B8 -MOD04_021DB3B8: ; 0x021DB3B8 - stmdb sp!, {r4, lr} - mov r4, r0 - add r0, r4, #0x1000 - ldr r0, [r0, #0x12c] - cmp r0, #1 - bne _021DB3EC - ldr r0, _021DB438 ; =0x000019D0 - add r0, r4, r0 - bl OS_GetLowEntropyData - ldr r0, _021DB438 ; =0x000019D0 - mov r1, #0x20 - add r0, r4, r0 - bl CPS_SslAddRandomSeed -_021DB3EC: - ldr r0, _021DB43C ; =0x00001BF4 - add r0, r4, r0 - bl OS_LockMutex - add r0, r4, #0x1000 - ldr r0, [r0, #0xc0c] - cmp r0, #1 - bne _021DB41C - ldr r0, _021DB43C ; =0x00001BF4 - add r0, r4, r0 - bl OS_UnlockMutex - mov r0, #0 - ldmia sp!, {r4, pc} -_021DB41C: - ldr r0, _021DB43C ; =0x00001BF4 - add r0, r4, r0 - bl OS_UnlockMutex - mov r0, #0xa - bl OS_Sleep - mov r0, #1 - ldmia sp!, {r4, pc} - .align 2, 0 -_021DB438: .word 0x000019D0 -_021DB43C: .word 0x00001BF4 - arm_func_end MOD04_021DB3B8 - - arm_func_start MOD04_021DB440 -MOD04_021DB440: ; 0x021DB440 - stmdb sp!, {r4, lr} - mov r4, r0 - add r0, r4, #0x1000 - ldrb r0, [r0] - cmp r0, #0xff - ldmneia sp!, {r4, pc} - ldr r0, _021DB49C ; =0x00001BF4 - add r0, r4, r0 - bl OS_LockMutex - ldr r0, _021DB49C ; =0x00001BF4 - add r1, r4, #0x1000 - mov r2, #1 - add r0, r4, r0 - str r2, [r1, #0xc0c] - bl OS_UnlockMutex - add r0, r4, #0x1000 - ldr r0, [r0, #0xba0] - cmp r0, #0 - ldmeqia sp!, {r4, pc} - ldr r0, _021DB4A0 ; =0x00001B34 - add r0, r4, r0 - bl OS_JoinThread - ldmia sp!, {r4, pc} - .align 2, 0 -_021DB49C: .word 0x00001BF4 -_021DB4A0: .word 0x00001B34 - arm_func_end MOD04_021DB440 - - arm_func_start MOD04_021DB4A4 -MOD04_021DB4A4: ; 0x021DB4A4 - stmdb sp!, {r4, r5, lr} - sub sp, sp, #0xc - ldr r3, _021DB55C ; =0x00001BF4 - mov r5, r0 - add r2, r5, #0x1000 - mov ip, #0 - add r0, r5, r3 - mov r4, r1 - str ip, [r2, #0xc0c] - bl OS_InitMutex - ldr r0, _021DB560 ; =0x00001A14 - add r0, r5, r0 - bl OS_InitMutex - add r0, r5, #0x1000 - ldr r0, [r0, #0x18] - cmp r0, #1 - ldreq r0, _021DB564 ; =UNK04_02210480 - moveq r1, #1 - streq r1, [r0] - ldrne r0, _021DB564 ; =UNK04_02210480 - movne r1, #0 - strne r1, [r0] - add r0, r5, #0x1000 - ldr r0, [r0, #0xba0] - cmp r0, #0 - beq _021DB524 - ldr r0, _021DB568 ; =0x00001B34 - add r0, r5, r0 - bl OS_IsThreadTerminated - cmp r0, #0 - addeq sp, sp, #0xc - ldmeqia sp!, {r4, r5, pc} -_021DB524: - ldr r0, _021DB568 ; =0x00001B34 - mov r1, #0x1000 - str r1, [sp] - ldr r1, _021DB56C ; =MOD04_021DAF18 - mov r2, r5 - add r0, r5, r0 - add r3, r5, #0x1000 - str r4, [sp, #4] - bl OS_CreateThread - ldr r0, _021DB568 ; =0x00001B34 - add r0, r5, r0 - bl OS_WakeupThreadDirect - add sp, sp, #0xc - ldmia sp!, {r4, r5, pc} - .align 2, 0 -_021DB55C: .word 0x00001BF4 -_021DB560: .word 0x00001A14 -_021DB564: .word UNK04_02210480 -_021DB568: .word 0x00001B34 -_021DB56C: .word MOD04_021DAF18 - arm_func_end MOD04_021DB4A4 - - arm_func_start MOD04_021DB570 -MOD04_021DB570: ; 0x021DB570 - stmdb sp!, {r4, lr} - sub sp, sp, #8 - ldr r1, _021DB5F4 ; =UNK04_0220C314 - ldr r2, _021DB5F8 ; =UNK04_0220C320 - mov r4, r0 - bl MOD04_021DAC98 - cmp r0, #0 - addne sp, sp, #8 - movne r0, #1 - ldmneia sp!, {r4, pc} - add r0, r4, #0x1000 - ldr r0, [r0, #0x9f4] - ldr r1, _021DB5FC ; =UNK04_0220C148 - bl strstr - add r0, r0, #4 - bl strlen - movs r3, r0 - beq _021DB5E8 - ldr r2, _021DB600 ; =UNK04_0220C328 - add r0, sp, #0 - mov r1, #7 - bl OS_SNPrintf - ldr r1, _021DB604 ; =UNK04_0220C32C - add r2, sp, #0 - mov r0, r4 - bl MOD04_021DAC98 - cmp r0, #0 - addne sp, sp, #8 - movne r0, #1 - ldmneia sp!, {r4, pc} -_021DB5E8: - mov r0, #0 - add sp, sp, #8 - ldmia sp!, {r4, pc} - .align 2, 0 -_021DB5F4: .word UNK04_0220C314 -_021DB5F8: .word UNK04_0220C320 -_021DB5FC: .word UNK04_0220C148 -_021DB600: .word UNK04_0220C328 -_021DB604: .word UNK04_0220C32C - arm_func_end MOD04_021DB570 - - arm_func_start MOD04_021DB608 -MOD04_021DB608: ; 0x021DB608 - stmdb sp!, {r4, r5, r6, lr} - mov r5, r1 - ldr r2, _021DB714 ; =0x00001C10 - mov r6, r0 - ldr r4, [r5, #0xc] - mov r1, #0 - bl MI_CpuFill8 - ldr r1, _021DB718 ; =0x00001004 - add r0, r6, #0x1000 - mvn r2, #0 - str r2, [r0, #0xa2c] - mov lr, r5 - str r2, [r0, #0xa30] - add ip, r6, r1 - ldmia lr!, {r0, r1, r2, r3} - stmia ip!, {r0, r1, r2, r3} - ldmia lr, {r0, r1, r2} - stmia ip, {r0, r1, r2} - ldr r0, _021DB71C ; =UNK04_0220C33C - ldr r1, _021DB720 ; =0x00000B68 - blx r4 - add r1, r6, #0x1000 - str r0, [r1, #0x9c8] - ldr r0, [r1, #0x9c8] - cmp r0, #0 - moveq r0, #1 - streq r0, [r1, #0x20] - ldmeqia sp!, {r4, r5, r6, pc} - ldr r0, _021DB724 ; =UNK04_0220C354 - ldr r1, _021DB728 ; =0x000005EA - blx r4 - add r2, r6, #0x1000 - str r0, [r2, #0x9cc] - ldr r0, [r2, #0x9cc] - cmp r0, #0 - moveq r0, #1 - streq r0, [r2, #0x20] - ldmeqia sp!, {r4, r5, r6, pc} - ldr r1, _021DB72C ; =0x00001A04 - ldr r2, [r2, #0xc] - mov r0, r6 - add r1, r6, r1 - bl MOD04_021DAA50 - cmp r0, #0 - addeq r1, r6, #0x1000 - moveq r0, #1 - streq r0, [r1, #0x20] - ldmeqia sp!, {r4, r5, r6, pc} - ldr r1, [r5] - mov r0, r6 - bl MOD04_021DA7E8 - cmp r0, #0 - addeq r1, r6, #0x1000 - moveq r0, #1 - streq r0, [r1, #0x20] - ldmeqia sp!, {r4, r5, r6, pc} - mov r0, r6 - bl MOD04_021DAD88 - add r1, r6, #0x1000 - str r0, [r1, #0x20] - ldr r0, [r1, #0x20] - cmp r0, #0 - moveq r0, #0xff - streqb r0, [r1] - add r0, r6, #0x1000 - ldr r0, [r0, #0x20] - ldmia sp!, {r4, r5, r6, pc} - .align 2, 0 -_021DB714: .word 0x00001C10 -_021DB718: .word 0x00001004 -_021DB71C: .word UNK04_0220C33C -_021DB720: .word 0x00000B68 -_021DB724: .word UNK04_0220C354 -_021DB728: .word 0x000005EA -_021DB72C: .word 0x00001A04 - arm_func_end MOD04_021DB608 - - arm_func_start MOD04_021DB730 -MOD04_021DB730: ; 0x021DB730 - stmdb sp!, {r4, lr} - ldr r2, _021DB770 ; =UNK04_02210484 - ldr r1, _021DB774 ; =0x000011DC - ldr r2, [r2] - mov r4, r0 - add r0, r2, r1 - bl OS_LockMutex - ldr r2, _021DB770 ; =UNK04_02210484 - ldr r1, _021DB774 ; =0x000011DC - ldr r0, [r2] - add r0, r0, #0x1000 - str r4, [r0] - ldr r0, [r2] - add r0, r0, r1 - bl OS_UnlockMutex - ldmia sp!, {r4, pc} - .align 2, 0 -_021DB770: .word UNK04_02210484 -_021DB774: .word 0x000011DC - arm_func_end MOD04_021DB730 - - arm_func_start MOD04_021DB778 -MOD04_021DB778: ; 0x021DB778 - stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} - sub sp, sp, #0x2d4 - ldr r5, _021DC670 ; =UNK04_02210484 - mov r0, #0 - str r0, [sp] - ldr r0, [r5] - ldr r7, [sp] - add r0, r0, #0x1000 - ldr sb, [r0, #0x108] - ldr r8, [r0, #0x10c] - mov r0, r7 - str r0, [sp, #8] - str r0, [sp, #0x1c] - mvn r0, #2 - str r0, [sp, #0x20] - mov r0, r7 - str r0, [sp, #0x24] - mvn r0, #3 - str r0, [sp, #0x28] - mov r0, r7 - str r0, [sp, #0x2c] - mov r0, #0x1000 - str r0, [sp, #0x14] - mov r0, #5 - str r0, [sp, #0x30] - mov r0, r7 - str r0, [sp, #0x34] - str r0, [sp, #0x38] - str r0, [sp, #0x3c] - mov r0, #4 - str r0, [sp, #0x40] - mov r0, r7 - str r0, [sp, #0x44] - str r0, [sp, #0x48] - str r0, [sp, #0x4c] - str r0, [sp, #0x50] - str r0, [sp, #0x58] - str r0, [sp, #0x54] - mvn r0, #4 - str r0, [sp, #0x5c] - mov r0, r7 - str r0, [sp, #0x60] - mvn r0, #1 - ldr r4, _021DC674 ; =UNK04_02210490 - mov r6, #1 - str r0, [sp, #0x18] -_021DB830: - ldr r0, _021DC678 ; =UNK04_02210494 - ldr r1, [sp, #0x14] - str r6, [r0, #4] - str r1, [r0, #8] - ldr r1, _021DC67C ; =0x00004E20 - str sb, [r0, #0xc] - str r1, [r0, #0x18] - str r8, [r0, #0x10] - ldr r0, _021DC680 ; =UNK04_0220C36C - ldr r1, [r5] - ldr r2, [r0] - ldr r0, _021DC678 ; =UNK04_02210494 - add r1, r1, #0x1000 - str r2, [r0] - ldr r0, [sp, #0x18] - str r0, [r1, #4] - ldr r0, [r4] - ldr r1, _021DC678 ; =UNK04_02210494 - bl MOD04_021DB608 - cmp r0, #0 - beq _021DB89C - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #1 - bl MOD04_021DB730 - b _021DC614 -_021DB89C: - ldr r0, [r4] - bl MOD04_021DB570 - cmp r0, #0 - beq _021DB8C4 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #1 - bl MOD04_021DB730 - b _021DC614 -_021DB8C4: - ldr r0, _021DC684 ; =OSi_ThreadInfo - ldr r0, [r0, #4] - bl OS_GetThreadPriority - sub r1, r0, #1 - ldr r0, [r4] - bl MOD04_021DB4A4 - ldr r1, [r4] - add r0, r1, #0x1000 - ldr r0, [r0, #0xba0] - cmp r0, #0 - beq _021DB8FC - ldr r0, _021DC688 ; =0x00001B34 - add r0, r1, r0 - bl OS_JoinThread -_021DB8FC: - ldr r0, [r4] - add r1, r0, #0x1000 - ldr r1, [r1, #0x20] - cmp r1, #2 - beq _021DB91C - cmp r1, #8 - beq _021DB948 - b _021DB930 -_021DB91C: - ldr r0, _021DC670 ; =UNK04_02210484 - mvn r1, #0 - ldr r0, [r0] - add r0, r0, #0x1000 - str r1, [r0, #4] -_021DB930: - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #3 - bl MOD04_021DB730 - b _021DC614 -_021DB948: - ldr r1, [sp, #0x1c] - bl MOD04_021DA3DC - cmp r0, #1 - beq _021DB970 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #2 - bl MOD04_021DB730 - b _021DC614 -_021DB970: - ldr r0, [r4] - ldr r1, _021DC68C ; =UNK04_0220C418 - bl MOD04_021DA388 - bl atol - mov sl, r0 - ldr r0, _021DC690 ; =errno - ldr r0, [r0] - cmp r0, #0x22 - bne _021DB9A0 - mov r0, #2 - bl MOD04_021DB730 - b _021DC614 -_021DB9A0: - cmp sl, #0xc8 - beq _021DBCB4 - ldr r0, _021DC694 ; =0x0000012E - cmp sl, r0 - bne _021DBC9C - ldr r0, _021DC698 ; =UNK04_0221048C - str r6, [r0] - ldr r0, [r5] - add r0, r0, #0x1000 - ldr r1, [r0, #0x118] - cmp r1, #0 - beq _021DBC0C - ldr r1, _021DC674 ; =UNK04_02210490 - mvn r2, #5 - str r2, [r0, #4] - ldr r0, [r1] - bl MOD04_021DAE4C - ldr r2, _021DC678 ; =UNK04_02210494 - ldr r0, _021DC69C ; =UNK04_0220BEB4 - ldr r3, _021DC67C ; =0x00004E20 - ldr r0, [r0] - mov r5, #0 - mov r4, #0x200 - ldr r1, _021DC6A0 ; =UNK04_0220C424 - str r0, [r2] - str r5, [r2, #4] - str r4, [r2, #8] - str sb, [r2, #0xc] - str r8, [r2, #0x10] - str r3, [r2, #0x18] - bl strcmp - cmp r0, #0 - ldrne r0, _021DC678 ; =UNK04_02210494 - movne r1, #1 - strne r1, [r0, #0x14] - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r1, _021DC678 ; =UNK04_02210494 - ldr r0, [r0] - bl MOD04_021DB608 - cmp r0, #0 - beq _021DBA5C - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #1 - bl MOD04_021DB730 - b _021DC614 -_021DBA5C: - add r0, sp, #0x240 - bl MOD04_021DA238 - cmp r0, #0 - beq _021DBA88 - ldr r0, _021DC674 ; =UNK04_02210490 - add r1, sp, #0x240 - ldr r0, [r0] - mov r2, #1 - bl MOD04_021D9C2C - cmp r0, #0 - bne _021DBAA0 -_021DBA88: - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #8 - bl MOD04_021DB730 - b _021DC614 -_021DBAA0: - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r1, _021DC6A4 ; =UNK04_0220C444 - ldr r0, [r0] - ldr r2, _021DC6A8 ; =UNK04_0220C44C - mov r3, #7 - bl MOD04_021DAB68 - cmp r0, #0 - bne _021DBAF8 - ldr r0, _021DC670 ; =UNK04_02210484 - ldr r0, [r0] - add r0, r0, #0x1000 - ldr r4, [r0, #0x118] - mov r0, r4 - bl strlen - ldr r1, _021DC674 ; =UNK04_02210490 - mov r3, r0 - ldr r0, [r1] - ldr r1, _021DC6AC ; =UNK04_0220C454 - mov r2, r4 - bl MOD04_021DAB68 - cmp r0, #0 - beq _021DBB10 -_021DBAF8: - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #8 - bl MOD04_021DB730 - b _021DC614 -_021DBB10: - ldr r1, _021DC670 ; =UNK04_02210484 - ldr r0, _021DC6B0 ; =UNK04_0220C464 - ldr r1, [r1] - mov r2, #0 - add r1, r1, #0x1000 - ldr r1, [r1, #0x118] - blx r8 - ldr r0, _021DC670 ; =UNK04_02210484 - mov r2, #0 - ldr r0, [r0] - ldr r1, _021DC674 ; =UNK04_02210490 - add r0, r0, #0x1000 - str r2, [r0, #0x118] - ldr r0, [r1] - bl MOD04_021DB570 - cmp r0, #0 - beq _021DBB6C - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #1 - bl MOD04_021DB730 - b _021DC614 -_021DBB6C: - ldr r0, _021DC684 ; =OSi_ThreadInfo - ldr r0, [r0, #4] - bl OS_GetThreadPriority - ldr r2, _021DC674 ; =UNK04_02210490 - sub r1, r0, #1 - ldr r0, [r2] - bl MOD04_021DB4A4 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r1, [r0] - add r0, r1, #0x1000 - ldr r0, [r0, #0xba0] - cmp r0, #0 - beq _021DBBAC - ldr r0, _021DC688 ; =0x00001B34 - add r0, r1, r0 - bl OS_JoinThread -_021DBBAC: - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - add r1, r0, #0x1000 - ldr r1, [r1, #0x20] - cmp r1, #2 - beq _021DBBD0 - cmp r1, #8 - beq _021DBBFC - b _021DBBE4 -_021DBBD0: - ldr r0, _021DC670 ; =UNK04_02210484 - mvn r1, #0 - ldr r0, [r0] - add r0, r0, #0x1000 - str r1, [r0, #4] -_021DBBE4: - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #3 - bl MOD04_021DB730 - b _021DC614 -_021DBBFC: - bl MOD04_021DAE4C - mov r0, #7 - bl MOD04_021DB730 - b _021DC614 -_021DBC0C: - ldr r0, [r4] - add r1, r0, #0x1000 - ldr fp, [r1, #0xa04] - cmp fp, #0 - bne _021DBC30 - bl MOD04_021DAE4C - mov r0, #2 - bl MOD04_021DB730 - b _021DC614 -_021DBC30: - mov r0, fp - bl strlen - add r1, r0, #1 - ldr r0, _021DC6B4 ; =UNK04_0220C394 - blx sb - ldr r1, [r5] - add r1, r1, #0x1000 - str r0, [r1, #0x114] - ldr r0, [r5] - add r0, r0, #0x1000 - ldr r0, [r0, #0x114] - str r0, [sp, #0xc] - cmp r0, #0 - bne _021DBC80 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #4 - bl MOD04_021DB730 - b _021DC614 -_021DBC80: - mov r0, fp - bl strlen - mov r2, r0 - ldr r0, [sp, #0xc] - mov r1, fp - bl strncpy - b _021DBCB4 -_021DBC9C: - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #0xa - bl MOD04_021DB730 - b _021DC614 -_021DBCB4: - ldr r0, [r4] - bl MOD04_021DAE4C - add r0, sp, #0x68 - bl DWCi_BM_GetWiFiInfo - ldr r2, [sp, #0x68] - ldr r1, [sp, #0x6c] - mov r0, #0 - cmp r1, r0 - cmpeq r2, r0 - bne _021DBDEC - ldr r1, [r5] - ldr r0, _021DC6B8 ; =UNK04_022104B0 - add r2, r1, #0x1000 - ldr r1, [sp, #0x20] - str r1, [r2, #4] - ldr r2, [sp, #0x24] - mov r1, r0 - strh r2, [r1] - strb r2, [r1, #0x34] - ldr r2, [r5] - ldr r1, [r4] - add r3, r2, #0x1000 - ldr fp, [r3, #0x108] - mov r2, r0 - str fp, [r2, #0x40] - ldr r3, [r3, #0x10c] - str r3, [r2, #0x44] - bl MOD04_021D9ACC - cmp r0, #0 - beq _021DBD38 - mov r0, #5 - bl MOD04_021DB730 - b _021DC614 -_021DBD38: - bl MOD04_021D98DC - bl MOD04_021D988C - cmp r0, #0x15 - beq _021DBDE8 - bl MOD04_021D988C - cmp r0, #9 - bne _021DBD6C - ldr r0, _021DC670 ; =UNK04_02210484 - mvn r1, #0 - ldr r0, [r0] - add r0, r0, #0x1000 - str r1, [r0, #4] - b _021DBDD8 -_021DBD6C: - add r0, sp, #0x7c - bl MOD04_021D97F8 - ldr r0, _021DC6BC ; =UNK04_02210488 - ldr r0, [r0] - cmp r0, #1 - bne _021DBDC4 - ldr r1, [sp, #0x7c] - ldr r0, _021DC6C0 ; =0xFFFFA4FA - cmp r1, r0 - beq _021DBDA0 - bl MOD04_021D988C - cmp r0, #0xb - bne _021DBDC4 -_021DBDA0: - ldr r0, _021DC670 ; =UNK04_02210484 - mov r1, #0 - ldr r0, [r0] - add r0, r0, #0x1000 - str r1, [r0, #4] - bl MOD04_021D991C - mov r0, #0xb - bl MOD04_021DB730 - b _021DC614 -_021DBDC4: - ldr r0, _021DC670 ; =UNK04_02210484 - ldr r1, [sp, #0x7c] - ldr r0, [r0] - add r0, r0, #0x1000 - str r1, [r0, #4] -_021DBDD8: - bl MOD04_021D991C - mov r0, #6 - bl MOD04_021DB730 - b _021DC614 -_021DBDE8: - bl MOD04_021D991C -_021DBDEC: - cmp sl, #0xc8 - bne _021DBE14 - ldr r0, _021DC670 ; =UNK04_02210484 - mov r2, #0 - ldr r1, [r0] - mov r0, #0xb - add r1, r1, #0x1000 - str r2, [r1, #4] - bl MOD04_021DB730 - b _021DC614 -_021DBE14: - ldr r0, [r5] - ldr r1, _021DC6A0 ; =UNK04_0220C424 - add r2, r0, #0x1000 - ldr r0, [sp, #0x28] - str r0, [r2, #4] - ldr r0, _021DC678 ; =UNK04_02210494 - ldr r2, [sp, #0x2c] - str sb, [r0, #0xc] - str r2, [r0, #4] - ldr r2, [sp, #0x14] - str r8, [r0, #0x10] - str r2, [r0, #8] - ldr r2, _021DC6C4 ; =0x00009C40 - str r2, [r0, #0x18] - ldr r0, _021DC69C ; =UNK04_0220BEB4 - ldr r2, _021DC678 ; =UNK04_02210494 - ldr r0, [r0] - str r0, [r2] - bl strcmp - cmp r0, #0 - ldrne r0, _021DC678 ; =UNK04_02210494 - ldr r1, _021DC678 ; =UNK04_02210494 - strne r6, [r0, #0x14] - ldr r0, [r4] - bl MOD04_021DB608 - cmp r0, #0 - beq _021DBE98 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #1 - bl MOD04_021DB730 - b _021DC614 -_021DBE98: - add r0, sp, #0x240 - bl MOD04_021DA238 - cmp r0, #0 - beq _021DBEC0 - ldr r0, [r4] - add r1, sp, #0x240 - mov r2, r6 - bl MOD04_021D9C2C - cmp r0, #0 - bne _021DBED8 -_021DBEC0: - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #8 - bl MOD04_021DB730 - b _021DC614 -_021DBED8: - ldr r0, [r4] - ldr r1, _021DC6A4 ; =UNK04_0220C444 - ldr r2, _021DC6C8 ; =UNK04_0220C484 - ldr r3, [sp, #0x30] - bl MOD04_021DAB68 - cmp r0, #0 - bne _021DBF24 - ldr r0, [r5] - add r0, r0, #0x1000 - ldr sl, [r0, #0x114] - mov r0, sl - bl strlen - mov r3, r0 - ldr r0, [r4] - ldr r1, _021DC6CC ; =UNK04_0220C48C - mov r2, sl - bl MOD04_021DAB68 - cmp r0, #0 - beq _021DBF3C -_021DBF24: - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #8 - bl MOD04_021DB730 - b _021DC614 -_021DBF3C: - ldr r1, [r5] - ldr r0, _021DC6D0 ; =UNK04_0220C3B0 - add r1, r1, #0x1000 - ldr r2, [sp, #0x34] - ldr r1, [r1, #0x114] - blx r8 - ldr r0, [r5] - add r1, r0, #0x1000 - ldr r0, [sp, #0x38] - str r0, [r1, #0x114] - ldr r0, [r4] - bl MOD04_021DB570 - cmp r0, #0 - beq _021DBF8C - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #1 - bl MOD04_021DB730 - b _021DC614 -_021DBF8C: - ldr r0, _021DC684 ; =OSi_ThreadInfo - ldr r0, [r0, #4] - bl OS_GetThreadPriority - sub r1, r0, #1 - ldr r0, [r4] - bl MOD04_021DB4A4 - ldr r1, [r4] - add r0, r1, #0x1000 - ldr r0, [r0, #0xba0] - cmp r0, #0 - beq _021DBFC4 - ldr r0, _021DC688 ; =0x00001B34 - add r0, r1, r0 - bl OS_JoinThread -_021DBFC4: - ldr r0, [r4] - add r1, r0, #0x1000 - ldr r1, [r1, #0x20] - cmp r1, #2 - beq _021DC02C - cmp r1, #3 - beq _021DBFEC - cmp r1, #8 - beq _021DC058 - b _021DC040 -_021DBFEC: - bl MOD04_021DAE4C - ldr r0, _021DC6BC ; =UNK04_02210488 - ldr r0, [r0] - cmp r0, #1 - bne _021DC020 - ldr r0, _021DC670 ; =UNK04_02210484 - mov r2, #0 - ldr r1, [r0] - mov r0, #0xb - add r1, r1, #0x1000 - str r2, [r1, #4] - bl MOD04_021DB730 - b _021DC614 -_021DC020: - mov r0, #3 - bl MOD04_021DB730 - b _021DC614 -_021DC02C: - ldr r0, _021DC670 ; =UNK04_02210484 - mvn r1, #0 - ldr r0, [r0] - add r0, r0, #0x1000 - str r1, [r0, #4] -_021DC040: - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #3 - bl MOD04_021DB730 - b _021DC614 -_021DC058: - ldr r1, [sp, #0x3c] - bl MOD04_021DA3DC - cmp r0, #1 - beq _021DC080 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #2 - bl MOD04_021DB730 - b _021DC614 -_021DC080: - ldr r0, [r4] - ldr r1, _021DC68C ; =UNK04_0220C418 - bl MOD04_021DA388 - bl atol - mov sl, r0 - ldr r0, _021DC690 ; =errno - ldr r0, [r0] - cmp r0, #0x22 - bne _021DC0BC - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #2 - bl MOD04_021DB730 - b _021DC614 -_021DC0BC: - cmp sl, #0xc8 - beq _021DC118 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - ldr r0, _021DC6BC ; =UNK04_02210488 - ldr r0, [r0] - cmp r0, #1 - bne _021DC10C - ldr r0, _021DC694 ; =0x0000012E - cmp sl, r0 - bne _021DC10C - ldr r0, _021DC670 ; =UNK04_02210484 - mov r2, #0 - ldr r1, [r0] - mov r0, #0xb - add r1, r1, #0x1000 - str r2, [r1, #4] - bl MOD04_021DB730 - b _021DC614 -_021DC10C: - mov r0, #2 - bl MOD04_021DB730 - b _021DC614 -_021DC118: - ldr r0, [r4] - ldr r1, _021DC6D4 ; =UNK04_0220C494 - ldr r3, [sp, #0x40] - add r2, sp, #0x64 - bl MOD04_021DA334 - cmp r0, #0 - bgt _021DC14C - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #9 - bl MOD04_021DB730 - b _021DC614 -_021DC14C: - add r0, sp, #0x64 - bl atol - ldr r1, _021DC690 ; =errno - ldr r1, [r1] - cmp r1, #0x22 - bne _021DC17C - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #9 - bl MOD04_021DB730 - b _021DC614 -_021DC17C: - ldr r1, _021DC6BC ; =UNK04_02210488 - ldr r1, [r1] - cmp r1, #1 - bne _021DC1B4 - cmp r0, #0x72 - bne _021DC1B4 - ldr r0, _021DC670 ; =UNK04_02210484 - mov r2, #0 - ldr r1, [r0] - mov r0, #0xb - add r1, r1, #0x1000 - str r2, [r1, #4] - bl MOD04_021DB730 - b _021DC614 -_021DC1B4: - cmp r0, #0x64 - blt _021DC1D4 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #6 - bl MOD04_021DB730 - b _021DC614 -_021DC1D4: - ldr r2, [sp, #0x44] - ldr r0, [r4] - ldr r1, _021DC6D8 ; =UNK04_0220C4A0 - mov r3, r2 - bl MOD04_021DA334 - mov fp, r0 - cmp fp, #0 - bgt _021DC20C - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #9 - bl MOD04_021DB730 - b _021DC614 -_021DC20C: - ldr r2, [sp, #0x48] - ldr r0, [r4] - ldr r1, _021DC6DC ; =UNK04_0220C4A4 - mov r3, r2 - bl MOD04_021DA334 - str r0, [sp, #4] - cmp r0, #0 - bgt _021DC244 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #9 - bl MOD04_021DB730 - b _021DC614 -_021DC244: - ldr r2, [sp, #0x4c] - ldr r0, [r4] - ldr r1, _021DC6E0 ; =UNK04_0220C4AC - mov r3, r2 - bl MOD04_021DA334 - mov sl, r0 - ldr r0, _021DC6E4 ; =UNK04_0220C3CC - add r1, fp, #1 - blx sb - str r0, [sp] - cmp r0, #0 - bne _021DC28C - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #4 - bl MOD04_021DB730 - b _021DC614 -_021DC28C: - ldr r1, [sp, #4] - ldr r0, _021DC6E8 ; =UNK04_0220C3D8 - add r1, r1, #1 - blx sb - movs r7, r0 - bne _021DC2BC - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #4 - bl MOD04_021DB730 - b _021DC614 -_021DC2BC: - cmp sl, #0 - ble _021DC2F4 - ldr r0, _021DC6EC ; =UNK04_0220C3E8 - add r1, sl, #1 - blx sb - str r0, [sp, #8] - cmp r0, #0 - bne _021DC2F4 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #4 - bl MOD04_021DB730 - b _021DC614 -_021DC2F4: - ldr r0, [r4] - ldr r1, _021DC6D8 ; =UNK04_0220C4A0 - ldr r2, [sp] - add r3, fp, #1 - bl MOD04_021DA334 - cmp r0, #0 - bge _021DC328 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #9 - bl MOD04_021DB730 - b _021DC614 -_021DC328: - ldr r1, [sp, #4] - ldr r2, [sp, #0x50] - add r3, r1, #1 - ldr r1, [sp] - strb r2, [r1, r0] - ldr r0, [r4] - ldr r1, _021DC6DC ; =UNK04_0220C4A4 - mov r2, r7 - bl MOD04_021DA334 - cmp r0, #0 - bge _021DC36C - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #9 - bl MOD04_021DB730 - b _021DC614 -_021DC36C: - ldr r1, [sp, #0x54] - cmp sl, #0 - strb r1, [r7, r0] - mov fp, r1 - ble _021DC404 - ldr r0, [r4] - ldr r1, _021DC6E0 ; =UNK04_0220C4AC - ldr r2, [sp, #8] - add r3, sl, #1 - bl MOD04_021DA334 - cmp r0, #0 - bge _021DC3B4 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #9 - bl MOD04_021DB730 - b _021DC614 -_021DC3B4: - ldr r2, [sp, #0x58] - ldr r1, [sp, #8] - strb r2, [r1, r0] - mov r0, r1 - bl atol - ldr r1, _021DC690 ; =errno - ldr r1, [r1] - cmp r1, #0x22 - bne _021DC3F0 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #9 - bl MOD04_021DB730 - b _021DC614 -_021DC3F0: - mov r1, #0x3e8 - mul fp, r0, r1 - ldr r0, _021DC6F0 ; =0x0002BF20 - cmp fp, r0 - movgt fp, r0 -_021DC404: - ldr r0, [r4] - bl MOD04_021DAE4C - ldr r0, [r5] - ldr r1, _021DC678 ; =UNK04_02210494 - add r2, r0, #0x1000 - ldr r0, [sp, #0x5c] - str r0, [r2, #4] - mov r0, r1 - ldr r2, [sp] - str sb, [r0, #0xc] - str r2, [r0] - ldr r2, [sp, #0x60] - str r8, [r0, #0x10] - str r2, [r0, #4] - ldr r2, [sp, #0x14] - str r2, [r0, #8] - ldr r2, _021DC6F4 ; =0x0001D4C0 - str r2, [r0, #0x18] - ldr r0, [r4] - bl MOD04_021DB608 - cmp r0, #0 - beq _021DC474 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #1 - bl MOD04_021DB730 - b _021DC614 -_021DC474: - ldr r0, [r4] - mov r1, r7 - bl MOD04_021DAACC - cmp r0, #0 - beq _021DC4A0 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #8 - bl MOD04_021DB730 - b _021DC614 -_021DC4A0: - ldr r0, [r4] - bl MOD04_021DB570 - cmp r0, #0 - beq _021DC4C8 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #1 - bl MOD04_021DB730 - b _021DC614 -_021DC4C8: - ldr r0, _021DC684 ; =OSi_ThreadInfo - ldr r0, [r0, #4] - bl OS_GetThreadPriority - sub r1, r0, #1 - ldr r0, [r4] - bl MOD04_021DB4A4 - ldr r1, [r4] - add r0, r1, #0x1000 - ldr r0, [r0, #0xba0] - cmp r0, #0 - beq _021DC500 - ldr r0, _021DC688 ; =0x00001B34 - add r0, r1, r0 - bl OS_JoinThread -_021DC500: - ldr r0, [r4] - add r1, r0, #0x1000 - ldr r1, [r1, #0x20] - cmp r1, #2 - beq _021DC520 - cmp r1, #8 - beq _021DC54C - b _021DC534 -_021DC520: - ldr r0, _021DC670 ; =UNK04_02210484 - mvn r1, #0 - ldr r0, [r0] - add r0, r0, #0x1000 - str r1, [r0, #4] -_021DC534: - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #3 - bl MOD04_021DB730 - b _021DC614 -_021DC54C: - mov r1, r6 - bl MOD04_021DA3DC - cmp r0, #1 - beq _021DC574 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #2 - bl MOD04_021DB730 - b _021DC614 -_021DC574: - ldr r0, [r4] - add r1, r0, #0x1000 - ldr sl, [r1, #0xa04] - cmp sl, #0 - bne _021DC598 - bl MOD04_021DAE4C - mov r0, #2 - bl MOD04_021DB730 - b _021DC614 -_021DC598: - mov r0, sl - bl strlen - add r1, r0, #1 - ldr r0, _021DC6F8 ; =UNK04_0220C3F8 - blx sb - ldr r1, [r5] - add r1, r1, #0x1000 - str r0, [r1, #0x118] - ldr r0, [r5] - add r0, r0, #0x1000 - ldr r0, [r0, #0x118] - str r0, [sp, #0x10] - cmp r0, #0 - bne _021DC5E8 - ldr r0, _021DC674 ; =UNK04_02210490 - ldr r0, [r0] - bl MOD04_021DAE4C - mov r0, #4 - bl MOD04_021DB730 - b _021DC614 -_021DC5E8: - mov r0, sl - bl strlen - mov r2, r0 - ldr r0, [sp, #0x10] - mov r1, sl - bl strncpy - ldr r0, [r4] - bl MOD04_021DAE4C - mov r0, fp - bl OS_Sleep - b _021DB830 -_021DC614: - ldr r0, [sp] - cmp r0, #0 - beq _021DC630 - ldr r0, _021DC6FC ; =UNK04_0220C4B4 - ldr r1, [sp] - mov r2, #0 - blx r8 -_021DC630: - cmp r7, #0 - beq _021DC648 - ldr r0, _021DC700 ; =UNK04_0220C4C0 - mov r1, r7 - mov r2, #0 - blx r8 -_021DC648: - ldr r0, [sp, #8] - cmp r0, #0 - addeq sp, sp, #0x2d4 - ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - ldr r0, _021DC704 ; =UNK04_0220C4CC - ldr r1, [sp, #8] - mov r2, #0 - blx r8 - add sp, sp, #0x2d4 - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - .align 2, 0 -_021DC670: .word UNK04_02210484 -_021DC674: .word UNK04_02210490 -_021DC678: .word UNK04_02210494 -_021DC67C: .word 0x00004E20 -_021DC680: .word UNK04_0220C36C -_021DC684: .word OSi_ThreadInfo -_021DC688: .word 0x00001B34 -_021DC68C: .word UNK04_0220C418 -_021DC690: .word errno -_021DC694: .word 0x0000012E -_021DC698: .word UNK04_0221048C -_021DC69C: .word UNK04_0220BEB4 -_021DC6A0: .word UNK04_0220C424 -_021DC6A4: .word UNK04_0220C444 -_021DC6A8: .word UNK04_0220C44C -_021DC6AC: .word UNK04_0220C454 -_021DC6B0: .word UNK04_0220C464 -_021DC6B4: .word UNK04_0220C394 -_021DC6B8: .word UNK04_022104B0 -_021DC6BC: .word UNK04_02210488 -_021DC6C0: .word 0xFFFFA4FA -_021DC6C4: .word 0x00009C40 -_021DC6C8: .word UNK04_0220C484 -_021DC6CC: .word UNK04_0220C48C -_021DC6D0: .word UNK04_0220C3B0 -_021DC6D4: .word UNK04_0220C494 -_021DC6D8: .word UNK04_0220C4A0 -_021DC6DC: .word UNK04_0220C4A4 -_021DC6E0: .word UNK04_0220C4AC -_021DC6E4: .word UNK04_0220C3CC -_021DC6E8: .word UNK04_0220C3D8 -_021DC6EC: .word UNK04_0220C3E8 -_021DC6F0: .word 0x0002BF20 -_021DC6F4: .word 0x0001D4C0 -_021DC6F8: .word UNK04_0220C3F8 -_021DC6FC: .word UNK04_0220C4B4 -_021DC700: .word UNK04_0220C4C0 -_021DC704: .word UNK04_0220C4CC - arm_func_end MOD04_021DB778 - - arm_func_start MOD04_021DC708 -MOD04_021DC708: ; 0x021DC708 - stmdb sp!, {lr} - sub sp, sp, #0xc - ldr r0, _021DC788 ; =UNK04_02210484 - ldr r1, [r0] - add r0, r1, #0x1000 - ldr r0, [r0, #0x188] - cmp r0, #0 - beq _021DC740 - ldr r0, _021DC78C ; =0x0000111C - add r0, r1, r0 - bl OS_IsThreadTerminated - cmp r0, #0 - addeq sp, sp, #0xc - ldmeqia sp!, {pc} -_021DC740: - ldr r1, _021DC788 ; =UNK04_02210484 - ldr r0, _021DC78C ; =0x0000111C - ldr r2, [r1] - mov r3, #0x1000 - ldr r1, _021DC790 ; =MOD04_021DB778 - str r3, [sp] - mov ip, #0x10 - add r0, r2, r0 - add r3, r2, #0x1000 - str ip, [sp, #4] - bl OS_CreateThread - ldr r1, _021DC788 ; =UNK04_02210484 - ldr r0, _021DC78C ; =0x0000111C - ldr r1, [r1] - add r0, r1, r0 - bl OS_WakeupThreadDirect - add sp, sp, #0xc - ldmfd sp!, {pc} - .align 2, 0 -_021DC788: .word UNK04_02210484 -_021DC78C: .word 0x0000111C -_021DC790: .word MOD04_021DB778 - arm_func_end MOD04_021DC708 - - arm_func_start MOD04_021DC794 -MOD04_021DC794: ; 0x021DC794 - ldr r0, _021DC7A8 ; =UNK04_02210484 - ldr r0, [r0] - add r0, r0, #0x1000 - ldr r0, [r0, #4] - bx lr - .align 2, 0 -_021DC7A8: .word UNK04_02210484 - arm_func_end MOD04_021DC794 - - arm_func_start MOD04_021DC7AC -MOD04_021DC7AC: ; 0x021DC7AC - stmdb sp!, {r4, lr} - ldr r1, _021DC7E8 ; =UNK04_02210484 - ldr r0, _021DC7EC ; =0x000011DC - ldr r1, [r1] - add r0, r1, r0 - bl OS_LockMutex - ldr r1, _021DC7E8 ; =UNK04_02210484 - ldr r0, _021DC7EC ; =0x000011DC - ldr r2, [r1] - add r1, r2, #0x1000 - add r0, r2, r0 - ldr r4, [r1] - bl OS_UnlockMutex - mov r0, r4 - ldmia sp!, {r4, pc} - .align 2, 0 -_021DC7E8: .word UNK04_02210484 -_021DC7EC: .word 0x000011DC - arm_func_end MOD04_021DC7AC - - arm_func_start MOD04_021DC7F0 -MOD04_021DC7F0: ; 0x021DC7F0 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r0, _021DC864 ; =UNK04_02210484 - ldr r0, [r0] - cmp r0, #0 - addeq sp, sp, #4 - ldmeqia sp!, {pc} - ldr r0, _021DC868 ; =UNK04_02210490 - ldr r0, [r0] - cmp r0, #0 - beq _021DC820 - bl MOD04_021DB440 -_021DC820: - bl MOD04_021D9974 - ldr r0, _021DC864 ; =UNK04_02210484 - ldr r1, [r0] - add r0, r1, #0x1000 - ldr r0, [r0, #0x188] - cmp r0, #0 - beq _021DC848 - ldr r0, _021DC86C ; =0x0000111C - add r0, r1, r0 - bl OS_JoinThread -_021DC848: - ldr r0, _021DC864 ; =UNK04_02210484 - mvn r1, #6 - ldr r0, [r0] - add r0, r0, #0x1000 - str r1, [r0, #4] - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DC864: .word UNK04_02210484 -_021DC868: .word UNK04_02210490 -_021DC86C: .word 0x0000111C - arm_func_end MOD04_021DC7F0 - - arm_func_start MOD04_021DC870 -MOD04_021DC870: ; 0x021DC870 - stmdb sp!, {r4, lr} - ldr r1, _021DC958 ; =UNK04_02210484 - ldr r0, _021DC95C ; =UNK04_02210490 - ldr r1, [r1] - ldr r0, [r0] - add r1, r1, #0x1000 - cmp r0, #0 - ldr r4, [r1, #0x10c] - beq _021DC8B8 - bl MOD04_021DAE4C - ldr r1, _021DC95C ; =UNK04_02210490 - ldr r0, _021DC960 ; =UNK04_0220C4D8 - ldr r1, [r1] - mov r2, #0 - blx r4 - ldr r0, _021DC95C ; =UNK04_02210490 - mov r1, #0 - str r1, [r0] -_021DC8B8: - bl MOD04_021D991C - ldr r0, _021DC958 ; =UNK04_02210484 - ldr r0, [r0] - cmp r0, #0 - ldmeqia sp!, {r4, pc} - add r0, r0, #0x1000 - ldr r1, [r0, #0x114] - cmp r1, #0 - beq _021DC8FC - ldr r0, _021DC964 ; =UNK04_0220C3B0 - mov r2, #0 - blx r4 - ldr r0, _021DC958 ; =UNK04_02210484 - mov r1, #0 - ldr r0, [r0] - add r0, r0, #0x1000 - str r1, [r0, #0x114] -_021DC8FC: - ldr r0, _021DC958 ; =UNK04_02210484 - ldr r0, [r0] - add r0, r0, #0x1000 - ldr r1, [r0, #0x118] - cmp r1, #0 - beq _021DC934 - ldr r0, _021DC968 ; =UNK04_0220C464 - mov r2, #0 - blx r4 - ldr r0, _021DC958 ; =UNK04_02210484 - mov r1, #0 - ldr r0, [r0] - add r0, r0, #0x1000 - str r1, [r0, #0x118] -_021DC934: - ldr r1, _021DC958 ; =UNK04_02210484 - ldr r0, _021DC96C ; =UNK04_0220C4E8 - ldr r1, [r1] - mov r2, #0 - blx r4 - ldr r0, _021DC958 ; =UNK04_02210484 - mov r1, #0 - str r1, [r0] - ldmia sp!, {r4, pc} - .align 2, 0 -_021DC958: .word UNK04_02210484 -_021DC95C: .word UNK04_02210490 -_021DC960: .word UNK04_0220C4D8 -_021DC964: .word UNK04_0220C3B0 -_021DC968: .word UNK04_0220C464 -_021DC96C: .word UNK04_0220C4E8 - arm_func_end MOD04_021DC870 - - arm_func_start MOD04_021DC970 -MOD04_021DC970: ; 0x021DC970 - stmdb sp!, {r4, r5, lr} - sub sp, sp, #4 - ldr r1, _021DCA5C ; =UNK04_02210484 - mov r5, r0 - ldr r0, [r1] - ldr r4, [r5] - cmp r0, #0 - addne sp, sp, #4 - movne r0, #4 - ldmneia sp!, {r4, r5, pc} - ldr r0, _021DCA60 ; =UNK04_0220C4FC - ldr r1, _021DCA64 ; =0x000011F4 - blx r4 - ldr r1, _021DCA5C ; =UNK04_02210484 - cmp r0, #0 - str r0, [r1] - addeq sp, sp, #4 - moveq r0, #4 - ldmeqia sp!, {r4, r5, pc} - ldr r2, _021DCA64 ; =0x000011F4 - mov r1, #0 - bl MI_CpuFill8 - ldr r1, _021DCA5C ; =UNK04_02210484 - ldr r2, _021DCA68 ; =0xFFFE7961 - ldr r0, [r1] - ldr r3, _021DCA6C ; =0x00001108 - add r0, r0, #0x1000 - str r2, [r0, #4] - ldr ip, [r1] - ldmia r5, {r0, r1, r2} - add r3, ip, r3 - stmia r3, {r0, r1, r2} - ldr r0, _021DCA70 ; =UNK04_02210490 - ldr r0, [r0] - cmp r0, #0 - addne sp, sp, #4 - movne r0, #4 - ldmneia sp!, {r4, r5, pc} - ldr r0, _021DCA74 ; =UNK04_0220C510 - ldr r1, _021DCA78 ; =0x00001C10 - blx r4 - ldr r1, _021DCA70 ; =UNK04_02210490 - cmp r0, #0 - str r0, [r1] - addeq sp, sp, #4 - moveq r0, #4 - ldmeqia sp!, {r4, r5, pc} - ldr r1, _021DCA5C ; =UNK04_02210484 - ldr r0, _021DCA7C ; =0x000011DC - ldr r2, [r1] - ldr r1, _021DCA80 ; =UNK04_0221048C - mov r3, #0 - add r0, r2, r0 - str r3, [r1] - bl OS_InitMutex - bl MOD04_021DC708 - mov r0, #0 - add sp, sp, #4 - ldmia sp!, {r4, r5, pc} - .align 2, 0 -_021DCA5C: .word UNK04_02210484 -_021DCA60: .word UNK04_0220C4FC -_021DCA64: .word 0x000011F4 -_021DCA68: .word 0xFFFE7961 -_021DCA6C: .word 0x00001108 -_021DCA70: .word UNK04_02210490 -_021DCA74: .word UNK04_0220C510 -_021DCA78: .word 0x00001C10 -_021DCA7C: .word 0x000011DC -_021DCA80: .word UNK04_0221048C - arm_func_end MOD04_021DC970 - - arm_func_start MOD04_021DCA84 -MOD04_021DCA84: ; 0x021DCA84 - stmdb sp!, {r4, r5, r6, r7, r8, lr} - sub sp, sp, #0x40 - mov r6, r0 - bl strlen - mov r4, r0 - ldr r0, _021DCCB4 ; =UNK04_0220C580 - bl strlen - cmp r4, r0 - bne _021DCCA8 - ldrsb r0, [r6, #7] - cmp r0, #0x20 - bne _021DCCA8 - ldrsb r0, [r6, #0xb] - cmp r0, #0x20 - bne _021DCCA8 - ldrsb r0, [r6, #0x10] - cmp r0, #0x20 - bne _021DCCA8 - ldrsb r0, [r6, #0x13] - cmp r0, #0x3a - bne _021DCCA8 - ldrsb r0, [r6, #0x16] - cmp r0, #0x3a - bne _021DCCA8 - ldrsb r0, [r6, #0x19] - cmp r0, #0x20 - bne _021DCCA8 - add r0, sp, #0 - bl RTC_GetDate - cmp r0, #0 - bne _021DCCA8 - add r0, sp, #0x10 - bl RTC_GetTime - cmp r0, #0 - bne _021DCCA8 - add r0, sp, #0 - add r1, sp, #0x10 - bl RTC_ConvertDateTimeToSecond - mov r4, r0 - mov r5, r1 - mvn r0, #0 - cmp r5, r0 - cmpeq r4, r0 - beq _021DCCA8 - add r0, sp, #0x1c - mov r1, r6 - bl strcpy - mov r2, #0 - ldr r1, _021DCCB8 ; =errno - add r0, sp, #0x28 - strb r2, [sp, #0x23] - strb r2, [sp, #0x27] - strb r2, [sp, #0x2c] - strb r2, [sp, #0x2f] - strb r2, [sp, #0x32] - strb r2, [sp, #0x35] - str r2, [r1] - bl atol - ldr r1, _021DCCB8 ; =errno - str r0, [sp] - ldr r1, [r1] - cmp r1, #0x22 - beq _021DCCA8 - sub r1, r0, #0x7d0 - mov r0, #0xd - str r1, [sp] - str r0, [sp, #4] - mov r8, #0 - ldr r7, _021DCCBC ; =UNK04_0220C550 - add r6, sp, #0x24 -_021DCB9C: - ldr r0, [r7, r8, lsl #2] - mov r1, r6 - bl strcmp - cmp r0, #0 - addeq r0, r8, #1 - streq r0, [sp, #4] - beq _021DCBC4 - add r8, r8, #1 - cmp r8, #0xc - blt _021DCB9C -_021DCBC4: - ldr r0, [sp, #4] - cmp r0, #0xc - bhi _021DCCA8 - ldr r1, _021DCCB8 ; =errno - mov r2, #0 - add r0, sp, #0x21 - str r2, [r1] - bl atol - ldr r1, _021DCCB8 ; =errno - str r0, [sp, #8] - ldr r0, [r1] - cmp r0, #0x22 - beq _021DCCA8 - mov r2, #0 - add r0, sp, #0x2d - str r2, [r1] - bl atol - ldr r1, _021DCCB8 ; =errno - str r0, [sp, #0x10] - ldr r0, [r1] - cmp r0, #0x22 - beq _021DCCA8 - mov r2, #0 - add r0, sp, #0x30 - str r2, [r1] - bl atol - ldr r1, _021DCCB8 ; =errno - str r0, [sp, #0x14] - ldr r0, [r1] - cmp r0, #0x22 - beq _021DCCA8 - mov r2, #0 - add r0, sp, #0x33 - str r2, [r1] - bl atol - ldr r1, _021DCCB8 ; =errno - str r0, [sp, #0x18] - ldr r0, [r1] - cmp r0, #0x22 - beq _021DCCA8 - add r0, sp, #0 - add r1, sp, #0x10 - bl RTC_ConvertDateTimeToSecond - mvn r2, #0 - cmp r1, r2 - cmpeq r0, r2 - beq _021DCCA8 - subs r4, r4, r0 - ldr r2, _021DCCC0 ; =UNK04_022104FC - sbc r3, r5, r1 - ldr r1, _021DCCC4 ; =UNK04_022104F8 - mov r0, #1 - str r3, [r2, #4] - str r0, [r1] - add sp, sp, #0x40 - str r4, [r2] - ldmia sp!, {r4, r5, r6, r7, r8, pc} -_021DCCA8: - mov r0, #0 - add sp, sp, #0x40 - ldmia sp!, {r4, r5, r6, r7, r8, pc} - .align 2, 0 -_021DCCB4: .word UNK04_0220C580 -_021DCCB8: .word errno -_021DCCBC: .word UNK04_0220C550 -_021DCCC0: .word UNK04_022104FC -_021DCCC4: .word UNK04_022104F8 - arm_func_end MOD04_021DCA84 - - arm_func_start MOD04_021DCCC8 -MOD04_021DCCC8: ; 0x021DCCC8 - stmdb sp!, {r4, lr} - sub sp, sp, #8 - ldr r0, _021DCED4 ; =UNK04_02210504 - mov r1, #0 - ldr r0, [r0] - add r4, r0, #8 - mov r0, r4 - bl MOD04_021DA3DC - cmp r0, #0 - bne _021DCD08 - ldr r1, _021DCED8 ; =0xFFFF9DF3 - mov r0, #0x10 - bl MOD04_021DD6B0 - add sp, sp, #8 - mov r0, #0 - ldmia sp!, {r4, pc} -_021DCD08: - ldr r1, _021DCEDC ; =UNK04_0220C5A0 - mov r0, r4 - bl MOD04_021DA388 - cmp r0, #0 - beq _021DCD20 - bl MOD04_021DCA84 -_021DCD20: - ldr r1, _021DCEE0 ; =UNK04_0220C5A8 - mov r0, r4 - bl MOD04_021DA388 - cmp r0, #0 - bne _021DCD4C - ldr r1, _021DCED8 ; =0xFFFF9DF3 - mov r0, #0x10 - bl MOD04_021DD6B0 - add sp, sp, #8 - mov r0, #0 - ldmia sp!, {r4, pc} -_021DCD4C: - bl atol - ldr r1, _021DCEE4 ; =errno - mov r2, r0 - ldr r0, [r1] - cmp r0, #0x22 - bne _021DCD7C - ldr r1, _021DCED8 ; =0xFFFF9DF3 - mov r0, #0x10 - bl MOD04_021DD6B0 - add sp, sp, #8 - mov r0, #0 - ldmia sp!, {r4, pc} -_021DCD7C: - cmp r2, #0xc8 - beq _021DCDA0 - ldr r1, _021DCEE8 ; =0xFFFF9E58 - mov r0, #0x10 - sub r1, r1, r2 - bl MOD04_021DD6B0 - add sp, sp, #8 - mov r0, #0 - ldmia sp!, {r4, pc} -_021DCDA0: - ldr r1, _021DCEEC ; =UNK04_0220C5B4 - add r2, sp, #0 - mov r0, r4 - mov r3, #4 - bl MOD04_021DA334 - cmp r0, #0 - bgt _021DCDD4 - ldr r1, _021DCED8 ; =0xFFFF9DF3 - mov r0, #0x10 - bl MOD04_021DD6B0 - add sp, sp, #8 - mov r0, #0 - ldmia sp!, {r4, pc} -_021DCDD4: - add r0, sp, #0 - bl atol - ldr r1, _021DCEE4 ; =errno - mov r2, r0 - ldr r0, [r1] - cmp r0, #0x22 - bne _021DCE08 - ldr r1, _021DCED8 ; =0xFFFF9DF3 - mov r0, #0x10 - bl MOD04_021DD6B0 - add sp, sp, #8 - mov r0, #0 - ldmia sp!, {r4, pc} -_021DCE08: - cmp r2, #0x64 - blt _021DCE2C - ldr r1, _021DCEF0 ; =0xFFFFA240 - mov r0, #0x10 - sub r1, r1, r2 - bl MOD04_021DD6B0 - add sp, sp, #8 - mov r0, #0 - ldmia sp!, {r4, pc} -_021DCE2C: - ldr r0, _021DCED4 ; =UNK04_02210504 - ldr r1, _021DCEF4 ; =UNK04_0220C5C0 - ldr r2, [r0] - mov r0, r4 - add r2, r2, #0x1000 - ldr r2, [r2, #0xc18] - mov r3, #0x40 - add r2, r2, #4 - bl MOD04_021DA334 - ldr r0, _021DCED4 ; =UNK04_02210504 - ldr r1, _021DCEF8 ; =UNK04_0220C5C8 - ldr r2, [r0] - mov r0, r4 - add r2, r2, #0x1000 - ldr r2, [r2, #0xc18] - mov r3, #0x12c - add r2, r2, #0x45 - bl MOD04_021DA334 - ldr r1, _021DCEFC ; =UNK04_0220C5D8 - add r2, sp, #0 - mov r0, r4 - mov r3, #1 - bl MOD04_021DA334 - ldrsb r0, [sp] - cmp r0, #0x59 - bne _021DCEB0 - ldr r0, _021DCED4 ; =UNK04_02210504 - mov r1, #1 - ldr r0, [r0] - add r0, r0, #0x1000 - ldr r0, [r0, #0xc18] - str r1, [r0] - b _021DCEC8 -_021DCEB0: - ldr r0, _021DCED4 ; =UNK04_02210504 - mov r1, #0 - ldr r0, [r0] - add r0, r0, #0x1000 - ldr r0, [r0, #0xc18] - str r1, [r0] -_021DCEC8: - mov r0, #1 - add sp, sp, #8 - ldmia sp!, {r4, pc} - .align 2, 0 -_021DCED4: .word UNK04_02210504 -_021DCED8: .word 0xFFFF9DF3 -_021DCEDC: .word UNK04_0220C5A0 -_021DCEE0: .word UNK04_0220C5A8 -_021DCEE4: .word errno -_021DCEE8: .word 0xFFFF9E58 -_021DCEEC: .word UNK04_0220C5B4 -_021DCEF0: .word 0xFFFFA240 -_021DCEF4: .word UNK04_0220C5C0 -_021DCEF8: .word UNK04_0220C5C8 -_021DCEFC: .word UNK04_0220C5D8 - arm_func_end MOD04_021DCCC8 - - arm_func_start MOD04_021DCF00 -MOD04_021DCF00: ; 0x021DCF00 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r0, _021DCFF0 ; =UNK04_02210504 - ldr r1, [r0] - cmp r1, #0 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {pc} - add r0, r1, #0x1000 - ldr r0, [r0, #0xba8] - cmp r0, #0 - addeq sp, sp, #4 - moveq r0, #1 - ldmeqia sp!, {pc} - ldr r0, _021DCFF4 ; =0x00001B3C - add r0, r1, r0 - bl OS_IsThreadTerminated - cmp r0, #1 - bne _021DCFE4 - ldr r0, _021DCFF0 ; =UNK04_02210504 - ldr r1, [r0] - add r0, r1, #0x1000 - ldr r0, [r0, #0x28] - cmp r0, #7 - beq _021DCFB0 - cmp r0, #8 - bne _021DCFC4 - bl MOD04_021DCCC8 - cmp r0, #0 - bne _021DCF94 - ldr r0, _021DCFF0 ; =UNK04_02210504 - ldr r0, [r0] - add r0, r0, #8 - bl MOD04_021DAE4C - add sp, sp, #4 - mov r0, #4 - ldmfd sp!, {pc} -_021DCF94: - ldr r0, _021DCFF0 ; =UNK04_02210504 - ldr r0, [r0] - add r0, r0, #8 - bl MOD04_021DAE4C - add sp, sp, #4 - mov r0, #3 - ldmfd sp!, {pc} -_021DCFB0: - add r0, r1, #8 - bl MOD04_021DAE4C - add sp, sp, #4 - mov r0, #5 - ldmfd sp!, {pc} -_021DCFC4: - add r0, r1, #8 - bl MOD04_021DAE4C - ldr r1, _021DCFF8 ; =0xFFFFA1DB - mov r0, #0x11 - bl MOD04_021DD6B0 - add sp, sp, #4 - mov r0, #4 - ldmfd sp!, {pc} -_021DCFE4: - mov r0, #2 - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DCFF0: .word UNK04_02210504 -_021DCFF4: .word 0x00001B3C -_021DCFF8: .word 0xFFFFA1DB - arm_func_end MOD04_021DCF00 - - arm_func_start MOD04_021DCFFC -MOD04_021DCFFC: ; 0x021DCFFC - stmdb sp!, {r4, r5, lr} - sub sp, sp, #0xb4 - ldr r2, _021DD244 ; =UNK04_02210504 - mov r5, r0 - ldr r2, [r2] - mov r0, r1 - add r2, r2, #0x1000 - str r1, [r2, #0xc18] - mov r1, #0 - mov r2, #0x174 - bl MI_CpuFill8 - ldr r0, _021DD244 ; =UNK04_02210504 - ldr r1, [r0] - add r0, r1, #0x1000 - ldr r0, [r0, #0xba8] - cmp r0, #0 - beq _021DD058 - ldr r0, _021DD248 ; =0x00001B3C - add r0, r1, r0 - bl OS_IsThreadTerminated - cmp r0, #0 - bne _021DD058 - bl OS_Terminate -_021DD058: - ldr r0, _021DD24C ; =UNK04_0220BEB4 - ldr r1, _021DD244 ; =UNK04_02210504 - ldr r0, [r0] - mov r3, #0 - ldr r4, [r1] - mov r2, #0x1000 - str r0, [sp] - str r3, [sp, #4] - str r2, [sp, #8] - ldr r2, [r4] - ldr r1, _021DD250 ; =UNK04_0220C5E4 - str r2, [sp, #0xc] - ldr r2, [r4, #4] - str r2, [sp, #0x10] - bl strcmp - cmp r0, #0 - movne r0, #1 - strne r0, [sp, #0x14] - moveq r0, #0 - ldr r2, _021DD254 ; =0x00004E20 - streq r0, [sp, #0x14] - add r1, sp, #0 - add r0, r4, #8 - str r2, [sp, #0x18] - bl MOD04_021DB608 - cmp r0, #0 - beq _021DD0DC - ldr r1, _021DD258 ; =0xFFFFA1DC - mov r0, #9 - bl MOD04_021DD6B0 - add sp, sp, #0xb4 - mov r0, #0 - ldmia sp!, {r4, r5, pc} -_021DD0DC: - add r0, sp, #0x1c - bl MOD04_021DA238 - cmp r0, #0 - beq _021DD10C - ldr r0, _021DD244 ; =UNK04_02210504 - add r1, sp, #0x1c - ldr r0, [r0] - mov r2, #0 - add r0, r0, #8 - bl MOD04_021D9C2C - cmp r0, #0 - bne _021DD134 -_021DD10C: - ldr r0, _021DD244 ; =UNK04_02210504 - ldr r0, [r0] - add r0, r0, #8 - bl MOD04_021DAE4C - ldr r1, _021DD258 ; =0xFFFFA1DC - mov r0, #9 - bl MOD04_021DD6B0 - add sp, sp, #0xb4 - mov r0, #0 - ldmia sp!, {r4, r5, pc} -_021DD134: - ldr r0, _021DD244 ; =UNK04_02210504 - ldr r1, _021DD25C ; =UNK04_0220C604 - ldr r0, [r0] - ldr r2, _021DD260 ; =UNK04_0220C60C - add r0, r0, #8 - mov r3, #6 - bl MOD04_021DAB68 - cmp r0, #0 - bne _021DD17C - ldr r0, _021DD244 ; =UNK04_02210504 - ldr r1, _021DD264 ; =UNK04_0220C614 - ldr r0, [r0] - mov r2, r5 - add r0, r0, #8 - mov r3, #4 - bl MOD04_021DAB68 - cmp r0, #0 - beq _021DD1A4 -_021DD17C: - ldr r0, _021DD244 ; =UNK04_02210504 - ldr r0, [r0] - add r0, r0, #8 - bl MOD04_021DAE4C - ldr r1, _021DD258 ; =0xFFFFA1DC - mov r0, #9 - bl MOD04_021DD6B0 - add sp, sp, #0xb4 - mov r0, #0 - ldmia sp!, {r4, r5, pc} -_021DD1A4: - ldr r0, _021DD244 ; =UNK04_02210504 - ldr r0, [r0] - add r0, r0, #8 - bl MOD04_021DB570 - cmp r0, #0 - beq _021DD1E4 - ldr r0, _021DD244 ; =UNK04_02210504 - ldr r0, [r0] - add r0, r0, #8 - bl MOD04_021DAE4C - ldr r1, _021DD258 ; =0xFFFFA1DC - mov r0, #9 - bl MOD04_021DD6B0 - add sp, sp, #0xb4 - mov r0, #0 - ldmia sp!, {r4, r5, pc} -_021DD1E4: - ldr r0, _021DD268 ; =OSi_ThreadInfo - ldr r0, [r0, #4] - bl OS_GetThreadPriority - ldr r1, _021DD244 ; =UNK04_02210504 - ldr r2, [r1] - sub r1, r0, #1 - add r0, r2, #8 - bl MOD04_021DB4A4 - ldr r0, _021DD244 ; =UNK04_02210504 - ldr r1, [r0] - add r0, r1, #0x1000 - ldr r0, [r0, #0xba8] - cmp r0, #0 - addne sp, sp, #0xb4 - movne r0, #1 - ldmneia sp!, {r4, r5, pc} - add r0, r1, #8 - bl MOD04_021DAE4C - ldr r1, _021DD258 ; =0xFFFFA1DC - mov r0, #9 - bl MOD04_021DD6B0 - mov r0, #0 - add sp, sp, #0xb4 - ldmia sp!, {r4, r5, pc} - .align 2, 0 -_021DD244: .word UNK04_02210504 -_021DD248: .word 0x00001B3C -_021DD24C: .word UNK04_0220BEB4 -_021DD250: .word UNK04_0220C5E4 -_021DD254: .word 0x00004E20 -_021DD258: .word 0xFFFFA1DC -_021DD25C: .word UNK04_0220C604 -_021DD260: .word UNK04_0220C60C -_021DD264: .word UNK04_0220C614 -_021DD268: .word OSi_ThreadInfo - arm_func_end MOD04_021DCFFC - - arm_func_start MOD04_021DD26C -MOD04_021DD26C: ; 0x021DD26C - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r0, _021DD2BC ; =UNK04_02210504 - ldr r0, [r0] - cmp r0, #0 - addeq sp, sp, #4 - ldmeqia sp!, {pc} - add r0, r0, #8 - bl MOD04_021DAE4C - ldr r1, _021DD2BC ; =UNK04_02210504 - ldr r0, _021DD2C0 ; =UNK04_0220C618 - ldr r1, [r1] - mov r2, #0 - ldr r3, [r1, #4] - blx r3 - ldr r0, _021DD2BC ; =UNK04_02210504 - mov r1, #0 - str r1, [r0] - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DD2BC: .word UNK04_02210504 -_021DD2C0: .word UNK04_0220C618 - arm_func_end MOD04_021DD26C - - arm_func_start MOD04_021DD2C4 -MOD04_021DD2C4: ; 0x021DD2C4 - stmdb sp!, {r4, r5, lr} - sub sp, sp, #4 - ldr r2, _021DD35C ; =UNK04_02210504 - mov r5, r0 - ldr r0, [r2] - mov r4, r1 - cmp r0, #0 - beq _021DD2FC - ldr r1, _021DD360 ; =0xFFFFA1DC - mov r0, #9 - bl MOD04_021DD6B0 - add sp, sp, #4 - mov r0, #0 - ldmia sp!, {r4, r5, pc} -_021DD2FC: - ldr r0, _021DD364 ; =UNK04_0220C628 - ldr r1, _021DD368 ; =0x00001C1C - blx r5 - ldr r1, _021DD35C ; =UNK04_02210504 - cmp r0, #0 - str r0, [r1] - bne _021DD330 - ldr r1, _021DD360 ; =0xFFFFA1DC - mov r0, #9 - bl MOD04_021DD6B0 - add sp, sp, #4 - mov r0, #0 - ldmia sp!, {r4, r5, pc} -_021DD330: - ldr r2, _021DD368 ; =0x00001C1C - mov r1, #0 - bl MI_CpuFill8 - ldr r1, _021DD35C ; =UNK04_02210504 - mov r0, #1 - ldr r2, [r1] - str r5, [r2] - ldr r1, [r1] - str r4, [r1, #4] - add sp, sp, #4 - ldmia sp!, {r4, r5, pc} - .align 2, 0 -_021DD35C: .word UNK04_02210504 -_021DD360: .word 0xFFFFA1DC -_021DD364: .word UNK04_0220C628 -_021DD368: .word 0x00001C1C - arm_func_end MOD04_021DD2C4 - - arm_func_start MOD04_021DD36C -MOD04_021DD36C: ; 0x021DD36C - stmdb sp!, {r4, r5, r6, r7, r8, lr} - sub sp, sp, #8 - ands r4, r1, #3 - addne sp, sp, #8 - mvnne r0, #0 - ldmneia sp!, {r4, r5, r6, r7, r8, pc} - mov r6, #0 - mov r5, r6 - cmp r1, #0 - bls _021DD3AC -_021DD394: - ldrsb r4, [r0, r5] - add r5, r5, #1 - cmp r4, #0x2a - addne r6, r6, #6 - cmp r5, r1 - blo _021DD394 -_021DD3AC: - cmp r2, #0 - moveq r0, r6, asr #2 - addeq r0, r6, r0, lsr #29 - addeq sp, sp, #8 - moveq r0, r0, asr #3 - ldmeqia sp!, {r4, r5, r6, r7, r8, pc} - mov r4, r6, asr #2 - add r4, r6, r4, lsr #29 - mov r4, r4, asr #3 - cmp r3, r4 - addlo sp, sp, #8 - mvnlo r0, #0 - ldmloia sp!, {r4, r5, r6, r7, r8, pc} - cmp r1, #0 - moveq r0, #0 - streqb r0, [r2] - addeq sp, sp, #8 - ldmeqia sp!, {r4, r5, r6, r7, r8, pc} - mov r6, r2 - add ip, sp, #0 - mov lr, #0 - mov r1, #0x3f - mov r3, #0x3e -_021DD408: - mov r8, lr - mov r5, ip -_021DD410: - ldrsb r7, [r0, r8] - cmp r7, #0x41 - blt _021DD42C - cmp r7, #0x5a - suble r7, r7, #0x41 - strleb r7, [r5] - ble _021DD474 -_021DD42C: - cmp r7, #0x61 - blt _021DD444 - cmp r7, #0x7a - suble r7, r7, #0x47 - strleb r7, [r5] - ble _021DD474 -_021DD444: - cmp r7, #0x30 - blt _021DD45C - cmp r7, #0x39 - addle r7, r7, #4 - strleb r7, [r5] - ble _021DD474 -_021DD45C: - cmp r7, #0x2e - streqb r3, [r5] - beq _021DD474 - cmp r7, #0x2d - streqb r1, [r5] - strneb lr, [r5] -_021DD474: - add r8, r8, #1 - cmp r8, #4 - add r5, r5, #1 - blt _021DD410 - ldrsb r8, [sp] - ldrsb r7, [sp, #1] - add r5, r6, #1 - mov r8, r8, lsl #2 - orr r7, r8, r7, asr #4 - sub r5, r5, r2 - strb r7, [r6] - cmp r5, r4 - add r0, r0, #4 - bge _021DD4F0 - ldrsb r8, [sp, #1] - ldrsb r7, [sp, #2] - add r5, r6, #2 - mov r8, r8, lsl #4 - orr r7, r8, r7, asr #2 - sub r5, r5, r2 - strb r7, [r6, #1] - cmp r5, r4 - bge _021DD4F0 - ldrsb r7, [sp, #2] - ldrsb r5, [sp, #3] - orr r5, r5, r7, lsl #6 - strb r5, [r6, #2] - add r6, r6, #3 - sub r5, r6, r2 - cmp r5, r4 - blt _021DD408 -_021DD4F0: - mov r0, r5 - add sp, sp, #8 - ldmia sp!, {r4, r5, r6, r7, r8, pc} - arm_func_end MOD04_021DD36C - - arm_func_start MOD04_021DD4FC -MOD04_021DD4FC: ; 0x021DD4FC - stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} - sub sp, sp, #0xc - ldr r4, _021DD69C ; =0xAAAAAAAB - str r2, [sp] - umull r4, r5, r1, r4 - ldr r6, _021DD6A0 ; =0x00000003 - mov r5, r5, lsr #1 - umull r4, r5, r6, r5 - mov sl, r0 - subs r5, r1, r4 - movne r4, #4 - ldr r2, _021DD69C ; =0xAAAAAAAB - ldr r0, [sp] - moveq r4, #0 - cmp r0, #0 - umull r0, r2, r1, r2 - mov r2, r2, lsr #1 - addeq sp, sp, #0xc - add r0, r4, r2, lsl #2 - ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - cmp r3, r0 - addlo sp, sp, #0xc - mvnlo r0, #0 - ldmloia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - add r7, sl, r1 - ldr r6, [sp] - cmp sl, r7 - beq _021DD68C - mov r0, #1 - mov r5, #0 - str r0, [sp, #4] - mov fp, #3 - mov r4, #0x2a -_021DD580: - sub sb, r7, sl - ldr r1, _021DD6A4 ; =0x2AAAAAAB - mov r0, sb, lsl #3 - smull r2, r3, r1, r0 - ldr r1, _021DD6A8 ; =0x00000006 - add r3, r3, r0, lsr #31 - smull r2, r3, r1, r3 - subs r3, r0, r2 - ldr r1, _021DD6A4 ; =0x2AAAAAAB - ldrne r8, [sp, #4] - smull r2, r3, r1, r0 - moveq r8, r5 - add r3, r3, r0, lsr #31 - cmp sb, #3 - movge sb, fp - add r0, sp, #8 - mov r1, r5 - mov r2, fp - add r8, r3, r8 - bl MI_CpuFill8 - mov r0, sl - add r1, sp, #8 - mov r2, sb - bl MI_CpuCopy8 - ldr r0, _021DD6AC ; =UNK04_0220C638 - cmp r8, #2 - ldr r1, [r0] - ldrb r0, [sp, #8] - mov r0, r0, asr #2 - ldrsb r0, [r1, r0] - strb r0, [r6] - strltb r4, [r6, #1] - blt _021DD628 - ldrb r2, [sp, #8] - ldr r0, _021DD6AC ; =UNK04_0220C638 - ldrb r1, [sp, #9] - mov r2, r2, lsl #4 - and r2, r2, #0x3f - ldr r0, [r0] - orr r1, r2, r1, asr #4 - ldrsb r0, [r0, r1] - strb r0, [r6, #1] -_021DD628: - cmp r8, #3 - strltb r4, [r6, #2] - blt _021DD658 - ldrb r2, [sp, #9] - ldr r0, _021DD6AC ; =UNK04_0220C638 - ldrb r1, [sp, #0xa] - mov r2, r2, lsl #2 - and r2, r2, #0x3f - ldr r0, [r0] - orr r1, r2, r1, asr #6 - ldrsb r0, [r0, r1] - strb r0, [r6, #2] -_021DD658: - cmp r8, #4 - strltb r4, [r6, #3] - blt _021DD67C - ldr r0, _021DD6AC ; =UNK04_0220C638 - ldrb r1, [sp, #0xa] - ldr r2, [r0] - and r0, r1, #0x3f - ldrsb r0, [r2, r0] - strb r0, [r6, #3] -_021DD67C: - add sl, sl, sb - cmp sl, r7 - add r6, r6, #4 - bne _021DD580 -_021DD68C: - ldr r0, [sp] - sub r0, r6, r0 - add sp, sp, #0xc - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - .align 2, 0 -_021DD69C: .word 0xAAAAAAAB -_021DD6A0: .word 0x00000003 -_021DD6A4: .word 0x2AAAAAAB -_021DD6A8: .word 0x00000006 -_021DD6AC: .word UNK04_0220C638 - arm_func_end MOD04_021DD4FC - - arm_func_start MOD04_021DD6B0 -MOD04_021DD6B0: ; 0x021DD6B0 - ldr r3, _021DD6CC ; =UNK04_02210508 - ldr r2, [r3] - cmp r2, #9 - ldrne r2, _021DD6D0 ; =UNK04_0221050C - strne r0, [r3] - strne r1, [r2] - bx lr - .align 2, 0 -_021DD6CC: .word UNK04_02210508 -_021DD6D0: .word UNK04_0221050C - arm_func_end MOD04_021DD6B0 - - arm_func_start MOD04_021DD6D4 -MOD04_021DD6D4: ; 0x021DD6D4 - ldr r0, _021DD6EC ; =UNK04_02210508 - ldr r0, [r0] - cmp r0, #0 - movne r0, #1 - moveq r0, #0 - bx lr - .align 2, 0 -_021DD6EC: .word UNK04_02210508 - arm_func_end MOD04_021DD6D4 - - arm_func_start MOD04_021DD6F0 -MOD04_021DD6F0: ; 0x021DD6F0 - ldr r1, _021DD710 ; =UNK04_02210508 - ldr r0, [r1] - cmp r0, #9 - movne r2, #0 - ldrne r0, _021DD714 ; =UNK04_0221050C - strne r2, [r1] - strne r2, [r0] - bx lr - .align 2, 0 -_021DD710: .word UNK04_02210508 -_021DD714: .word UNK04_0221050C - arm_func_end MOD04_021DD6F0 - - arm_func_start MOD04_021DD718 -MOD04_021DD718: ; 0x021DD718 - cmp r0, #0 - ldrne r2, _021DD800 ; =UNK04_0221050C - ldrne r2, [r2] - strne r2, [r0] - cmp r1, #0 - beq _021DD7F4 - ldr r0, _021DD804 ; =UNK04_02210508 - ldr r0, [r0] - cmp r0, #0x11 - addls pc, pc, r0, lsl #2 - b _021DD7EC -_021DD744: ; jump table - b _021DD7EC ; case 0 - b _021DD7BC ; case 1 - b _021DD78C ; case 2 - b _021DD78C ; case 3 - b _021DD78C ; case 4 - b _021DD78C ; case 5 - b _021DD798 ; case 6 - b _021DD7A4 ; case 7 - b _021DD78C ; case 8 - b _021DD7BC ; case 9 - b _021DD7B0 ; case 10 - b _021DD7B0 ; case 11 - b _021DD7B0 ; case 12 - b _021DD7B0 ; case 13 - b _021DD7C8 ; case 14 - b _021DD7D4 ; case 15 - b _021DD7E0 ; case 16 - b _021DD7D4 ; case 17 -_021DD78C: - mov r0, #6 - str r0, [r1] - b _021DD7F4 -_021DD798: - mov r0, #3 - str r0, [r1] - b _021DD7F4 -_021DD7A4: - mov r0, #4 - str r0, [r1] - b _021DD7F4 -_021DD7B0: - mov r0, #1 - str r0, [r1] - b _021DD7F4 -_021DD7BC: - mov r0, #7 - str r0, [r1] - b _021DD7F4 -_021DD7C8: - mov r0, #5 - str r0, [r1] - b _021DD7F4 -_021DD7D4: - mov r0, #6 - str r0, [r1] - b _021DD7F4 -_021DD7E0: - mov r0, #2 - str r0, [r1] - b _021DD7F4 -_021DD7EC: - mov r0, #0 - str r0, [r1] -_021DD7F4: - ldr r0, _021DD804 ; =UNK04_02210508 - ldr r0, [r0] - bx lr - .align 2, 0 -_021DD800: .word UNK04_0221050C -_021DD804: .word UNK04_02210508 - arm_func_end MOD04_021DD718 - - arm_func_start MOD04_021DD808 -MOD04_021DD808: ; 0x021DD808 - cmp r0, #0 - ldrne r1, _021DD824 ; =UNK04_0221050C - ldrne r1, [r1] - strne r1, [r0] - ldr r0, _021DD828 ; =UNK04_02210508 - ldr r0, [r0] - bx lr - .align 2, 0 -_021DD824: .word UNK04_0221050C -_021DD828: .word UNK04_02210508 - arm_func_end MOD04_021DD808 - - arm_func_start MOD04_021DD82C -MOD04_021DD82C: ; 0x021DD82C - ldr ip, _021DD840 ; =MOD04_021DD904 - mov r1, r0 - mov r0, #5 - mov r2, #0 - bx ip - .align 2, 0 -_021DD840: .word MOD04_021DD904 - arm_func_end MOD04_021DD82C - - arm_func_start MOD04_021DD844 -MOD04_021DD844: ; 0x021DD844 - ldr ip, _021DD85C ; =MOD04_021DD8E8 - mov r2, r1 - mov r1, r0 - mov r3, r2 - mov r0, #5 - bx ip - .align 2, 0 -_021DD85C: .word MOD04_021DD8E8 - arm_func_end MOD04_021DD844 - - arm_func_start MOD04_021DD860 -MOD04_021DD860: ; 0x021DD860 - ldr ip, _021DD870 ; =MOD04_021DD944 - mov r1, r0 - mov r0, #5 - bx ip - .align 2, 0 -_021DD870: .word MOD04_021DD944 - arm_func_end MOD04_021DD860 - - arm_func_start MOD04_021DD874 -MOD04_021DD874: ; 0x021DD874 - stmdb sp!, {r4, r5, r6, r7, r8, lr} - ldr ip, _021DD8E0 ; =UNK04_02210514 - mov r4, r2 - mov r7, r3 - mov r5, r1 - ldr r2, [sp, #0x18] - ldr r3, [ip] - mov r1, r7 - mov r8, r0 - blx r3 - movs r6, r0 - moveq r0, #0 - ldmeqia sp!, {r4, r5, r6, r7, r8, pc} - cmp r5, #0 - beq _021DD8D8 - mov r0, r5 - mov r1, r6 - mov r2, r7 - bl MI_CpuCopy8 - ldr r1, _021DD8E4 ; =UNK04_02210510 - mov r0, r8 - ldr r3, [r1] - mov r1, r5 - mov r2, r4 - blx r3 -_021DD8D8: - mov r0, r6 - ldmia sp!, {r4, r5, r6, r7, r8, pc} - .align 2, 0 -_021DD8E0: .word UNK04_02210514 -_021DD8E4: .word UNK04_02210510 - arm_func_end MOD04_021DD874 - - arm_func_start MOD04_021DD8E8 -MOD04_021DD8E8: ; 0x021DD8E8 - stmdb sp!, {lr} - sub sp, sp, #4 - mov ip, #0x20 - str ip, [sp] - bl MOD04_021DD874 - add sp, sp, #4 - ldmfd sp!, {pc} - arm_func_end MOD04_021DD8E8 - - arm_func_start MOD04_021DD904 -MOD04_021DD904: ; 0x021DD904 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r3, _021DD920 ; =UNK04_02210510 - ldr r3, [r3] - blx r3 - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DD920: .word UNK04_02210510 - arm_func_end MOD04_021DD904 - - arm_func_start MOD04_021DD924 -MOD04_021DD924: ; 0x021DD924 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r3, _021DD940 ; =UNK04_02210514 - ldr r3, [r3] - blx r3 - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DD940: .word UNK04_02210514 - arm_func_end MOD04_021DD924 - - arm_func_start MOD04_021DD944 -MOD04_021DD944: ; 0x021DD944 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r3, _021DD964 ; =UNK04_02210514 - mov r2, #0x20 - ldr r3, [r3] - blx r3 - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DD964: .word UNK04_02210514 - arm_func_end MOD04_021DD944 - - arm_func_start MOD04_021DD968 -MOD04_021DD968: ; 0x021DD968 - ldr r3, _021DD97C ; =UNK04_02210514 - ldr r2, _021DD980 ; =UNK04_02210510 - str r0, [r3] - str r1, [r2] - bx lr - .align 2, 0 -_021DD97C: .word UNK04_02210514 -_021DD980: .word UNK04_02210510 - arm_func_end MOD04_021DD968 - - arm_func_start MOD04_021DD984 -MOD04_021DD984: ; 0x021DD984 - stmdb sp!, {lr} - sub sp, sp, #4 - bl MOD04_021DDCE8 - bl MOD04_021DDB14 - cmp r0, #0 - beq _021DD9CC - bl MOD04_021EBAB8 - mov r2, r0 - cmp r2, #0x63 - ldr r1, _021DD9D8 ; =0xFFFF2D10 - movhi r2, #0x63 - mov r0, #8 - sub r1, r1, r2 - bl MOD04_021DD6B0 - bl MOD04_021DDBBC - add sp, sp, #4 - mov r0, #1 - ldmfd sp!, {pc} -_021DD9CC: - mov r0, #0 - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DD9D8: .word 0xFFFF2D10 - arm_func_end MOD04_021DD984 - - arm_func_start MOD04_021DD9DC -MOD04_021DD9DC: ; 0x021DD9DC - stmdb sp!, {r4, r5, r6, lr} - sub sp, sp, #0x18 - mov r1, #0 - mov r2, #0x3c - mov r4, r0 - bl MI_CpuFill8 - mov r0, #0xff - str r0, [r4, #4] - bl MOD04_021DDC1C - cmp r0, #4 - addne sp, sp, #0x18 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - bl MOD04_021EBAB8 - str r0, [r4] - bl OS_DisableInterrupts - mov r6, r0 - bl WCM_GetApMacAddress - mov r5, r0 - mov r1, #6 - bl DC_InvalidateRange - cmp r5, #0 - bne _021DDA4C - mov r0, r6 - bl OS_RestoreInterrupts - add sp, sp, #0x18 - mov r0, #0 - ldmia sp!, {r4, r5, r6, pc} -_021DDA4C: - mov r0, r5 - add r1, r4, #0x33 - mov r2, #6 - bl MI_CpuCopy8 - ldr r0, [r4] - cmp r0, #0 - blt _021DDAB0 - cmp r0, #3 - bge _021DDAB0 - add r0, sp, #0 - bl WCM_GetApEssid - mov r5, r0 - mov r1, #0x20 - bl DC_InvalidateRange - cmp r5, #0 - bne _021DDAA0 - mov r0, r6 - bl OS_RestoreInterrupts - add sp, sp, #0x18 - mov r0, #0 - ldmia sp!, {r4, r5, r6, pc} -_021DDAA0: - ldrh r2, [sp] - mov r0, r5 - add r1, r4, #0x12 - bl MI_CpuCopy8 -_021DDAB0: - mov r0, r6 - bl OS_RestoreInterrupts - add r0, sp, #2 - mov r1, #0 - mov r2, #0x10 - bl MI_CpuFill8 - add r0, sp, #2 - bl MOD04_021EBA28 - cmp r0, #1 - bne _021DDAFC - ldrb r1, [sp, #8] - cmp r1, #0 - beq _021DDAFC - sub r3, r1, #0x30 - add r0, sp, #9 - add r1, r4, #8 - mov r2, #9 - str r3, [r4, #4] - bl MI_CpuCopy8 -_021DDAFC: - mov r0, #1 - add sp, sp, #0x18 - ldmia sp!, {r4, r5, r6, pc} - arm_func_end MOD04_021DD9DC - - arm_func_start MOD04_021DDB08 -MOD04_021DDB08: ; 0x021DDB08 - ldr ip, _021DDB10 ; =WCM_GetLinkLevel - bx ip - .align 2, 0 -_021DDB10: .word WCM_GetLinkLevel - arm_func_end MOD04_021DDB08 - - arm_func_start MOD04_021DDB14 -MOD04_021DDB14: ; 0x021DDB14 - ldr r0, _021DDB3C ; =UNK04_02210518 - ldr r0, [r0] - cmp r0, #0 - beq _021DDB34 - ldrh r0, [r0, #4] - cmp r0, #6 - moveq r0, #1 - bxeq lr -_021DDB34: - mov r0, #0 - bx lr - .align 2, 0 -_021DDB3C: .word UNK04_02210518 - arm_func_end MOD04_021DDB14 - - arm_func_start MOD04_021DDB40 -MOD04_021DDB40: ; 0x021DDB40 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r0, _021DDBB8 ; =UNK04_02210518 - ldr r2, [r0] - cmp r2, #0 - addeq sp, sp, #4 - moveq r0, #1 - ldmeqia sp!, {pc} - ldrh r1, [r2, #4] - cmp r1, #8 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {pc} - cmp r1, #1 - moveq r1, #0 - streq r1, [r0] - addeq sp, sp, #4 - moveq r0, #1 - ldmeqia sp!, {pc} - mov r0, #5 - strh r0, [r2, #4] - bl MOD04_021EB9D8 - cmp r0, #0 - ldrne r0, _021DDBB8 ; =UNK04_02210518 - movne r1, #0 - strne r1, [r0] - movne r0, #1 - moveq r0, #0 - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DDBB8: .word UNK04_02210518 - arm_func_end MOD04_021DDB40 - - arm_func_start MOD04_021DDBBC -MOD04_021DDBBC: ; 0x021DDBBC - stmdb sp!, {r4, lr} - ldr r0, _021DDC18 ; =UNK04_02210518 - ldr r1, [r0] - cmp r1, #0 - ldmeqia sp!, {r4, pc} - ldrh r1, [r1, #4] - cmp r1, #1 - moveq r1, #0 - streq r1, [r0] - ldmeqia sp!, {r4, pc} - bl MOD04_021EB9D8 - cmp r0, #0 - bne _021DDC08 - mov r4, #0xa -_021DDBF4: - mov r0, r4 - bl OS_Sleep - bl MOD04_021EB9D8 - cmp r0, #0 - beq _021DDBF4 -_021DDC08: - ldr r0, _021DDC18 ; =UNK04_02210518 - mov r1, #0 - str r1, [r0] - ldmia sp!, {r4, pc} - .align 2, 0 -_021DDC18: .word UNK04_02210518 - arm_func_end MOD04_021DDBBC - - arm_func_start MOD04_021DDC1C -MOD04_021DDC1C: ; 0x021DDC1C - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r0, _021DDCE4 ; =UNK04_02210518 - ldr r0, [r0] - cmp r0, #0 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {pc} - ldrh r0, [r0, #4] - cmp r0, #1 - addeq sp, sp, #4 - ldmeqia sp!, {pc} - bl MOD04_021EBAE8 - mov r1, r0 - cmp r1, #5 - bne _021DDC80 - ldr r1, _021DDCE4 ; =UNK04_02210518 - mov r0, #4 - ldr r3, [r1] - mov r2, #1 - strh r0, [r3, #4] - ldr r1, [r1] - add sp, sp, #4 - strh r2, [r1, #6] - ldmfd sp!, {pc} -_021DDC80: - cmp r1, #0 - bge _021DDCD8 - mvn r0, #9 - cmp r1, r0 - blt _021DDCB8 - sub r1, r1, #0x2bc - mov r0, #9 - bl MOD04_021DD6B0 - ldr r1, _021DDCE4 ; =UNK04_02210518 - mov r0, #8 - ldr r1, [r1] - add sp, sp, #4 - strh r0, [r1, #4] - ldmfd sp!, {pc} -_021DDCB8: - mov r0, #5 - bl MOD04_021DD6B0 - ldr r1, _021DDCE4 ; =UNK04_02210518 - mov r0, #7 - ldr r1, [r1] - add sp, sp, #4 - strh r0, [r1, #4] - ldmfd sp!, {pc} -_021DDCD8: - mov r0, #2 - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DDCE4: .word UNK04_02210518 - arm_func_end MOD04_021DDC1C - - arm_func_start MOD04_021DDCE8 -MOD04_021DDCE8: ; 0x021DDCE8 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r0, _021DDD78 ; =UNK04_02210518 - ldr r1, [r0] - cmp r1, #0 - addeq sp, sp, #4 - ldmeqia sp!, {pc} - ldrh r0, [r1, #4] - cmp r0, #2 - bne _021DDD28 - bl MOD04_021EBB80 - ldr r1, _021DDD78 ; =UNK04_02210518 - add sp, sp, #4 - ldr r1, [r1] - str r0, [r1] - ldmfd sp!, {pc} -_021DDD28: - cmp r0, #4 - addne sp, sp, #4 - ldmneia sp!, {pc} - ldrh r0, [r1, #6] - cmp r0, #0 - addeq sp, sp, #4 - ldmeqia sp!, {pc} - bl WCM_GetPhase - cmp r0, #9 - addeq sp, sp, #4 - ldmeqia sp!, {pc} - ldr r0, _021DDD78 ; =UNK04_02210518 - mov r3, #0 - ldr r2, [r0] - mov r1, #6 - strh r3, [r2, #6] - ldr r0, [r0] - strh r1, [r0, #4] - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DDD78: .word UNK04_02210518 - arm_func_end MOD04_021DDCE8 - - arm_func_start MOD04_021DDD7C -MOD04_021DDD7C: ; 0x021DDD7C - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r0, _021DDDC8 ; =UNK04_02210518 - ldr r1, [r0] - cmp r1, #0 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {pc} - ldr r0, [r1] - cmp r0, #0 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {pc} - mov r0, #3 - strh r0, [r1, #4] - bl MOD04_021DDC1C - mov r0, #1 - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DDDC8: .word UNK04_02210518 - arm_func_end MOD04_021DDD7C - - arm_func_start MOD04_021DDDCC -MOD04_021DDDCC: ; 0x021DDDCC - stmdb sp!, {lr} - sub sp, sp, #0xc - ldr r0, _021DDE70 ; =UNK04_02210518 - ldr r0, [r0] - cmp r0, #0 - beq _021DDE5C - ldrh r0, [r0, #4] - cmp r0, #1 - addne sp, sp, #0xc - ldmneia sp!, {pc} - add r0, sp, #0 - mov r1, #0 - mov r2, #0xc - bl MI_CpuFill8 - ldr r0, _021DDE70 ; =UNK04_02210518 - ldr r3, _021DDE74 ; =MOD04_021DD944 - ldr lr, [r0] - ldr r2, _021DDE78 ; =MOD04_021DD904 - ldrh ip, [lr, #8] - add r0, sp, #0 - mov r1, #2 - strb ip, [sp, #8] - ldrh ip, [lr, #0xa] - strb ip, [sp, #9] - str r3, [sp] - str r2, [sp, #4] - strh r1, [lr, #4] - bl MOD04_021EBC60 - cmp r0, #0 - addne sp, sp, #0xc - ldmneia sp!, {pc} - mov r0, #9 - mvn r1, #5 - bl MOD04_021DD6B0 - add sp, sp, #0xc - ldmfd sp!, {pc} -_021DDE5C: - mov r0, #9 - mvn r1, #3 - bl MOD04_021DD6B0 - add sp, sp, #0xc - ldmfd sp!, {pc} - .align 2, 0 -_021DDE70: .word UNK04_02210518 -_021DDE74: .word MOD04_021DD944 -_021DDE78: .word MOD04_021DD904 - arm_func_end MOD04_021DDDCC - - arm_func_start MOD04_021DDE7C -MOD04_021DDE7C: ; 0x021DDE7C - stmdb sp!, {lr} - sub sp, sp, #4 - cmp r0, #0 - beq _021DDEA4 - cmp r0, #1 - beq _021DDEB4 - cmp r0, #2 - beq _021DDEC4 - add sp, sp, #4 - ldmfd sp!, {pc} -_021DDEA4: - ldr r0, _021DDED4 ; =UNK04_0220D280 - bl MOD04_021D9C1C - add sp, sp, #4 - ldmfd sp!, {pc} -_021DDEB4: - ldr r0, _021DDED8 ; =UNK04_0220D2A8 - bl MOD04_021D9C1C - add sp, sp, #4 - ldmfd sp!, {pc} -_021DDEC4: - ldr r0, _021DDEDC ; =UNK04_0220D2CC - bl MOD04_021D9C1C - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DDED4: .word UNK04_0220D280 -_021DDED8: .word UNK04_0220D2A8 -_021DDEDC: .word UNK04_0220D2CC - arm_func_end MOD04_021DDE7C - - arm_func_start MOD04_021DDEE0 -MOD04_021DDEE0: ; 0x021DDEE0 - stmdb sp!, {r4, r5, r6, lr} - ldr r2, _021DDF3C ; =UNK04_02210518 - mov r6, r0 - ldr r2, [r2] - mov r5, r1 - mov r4, r3 - cmp r2, #0 - ldmneia sp!, {r4, r5, r6, pc} - mov r1, #0 - mov r2, #0xc - bl MI_CpuFill8 - strh r5, [r6, #8] - mov r0, #1 - strh r0, [r6, #0xa] - strh r0, [r6, #4] - mov r0, #0 - ldr r1, _021DDF3C ; =UNK04_02210518 - strh r0, [r6, #6] - str r6, [r1] - bl MOD04_021DDE7C - mov r0, r4 - bl CPS_SetSslHandshakePriority - ldmia sp!, {r4, r5, r6, pc} - .align 2, 0 -_021DDF3C: .word UNK04_02210518 - arm_func_end MOD04_021DDEE0 - - arm_func_start MOD04_021DDF40 -MOD04_021DDF40: ; 0x021DDF40 - ldr ip, _021DDF48 ; =MOD04_021D9974 - bx ip - .align 2, 0 -_021DDF48: .word MOD04_021D9974 - arm_func_end MOD04_021DDF40 - - arm_func_start MOD04_021DDF4C -MOD04_021DDF4C: ; 0x021DDF4C - stmdb sp!, {lr} - sub sp, sp, #0x1c4 - ldr r0, _021DE054 ; =UNK04_0221051C - ldr r0, [r0] - cmp r0, #0 - addeq sp, sp, #0x1c4 - moveq r0, #0 - ldmeqia sp!, {pc} - add r0, r0, #0x1000 - ldr r0, [r0, #0xba0] - cmp r0, #0 - addeq sp, sp, #0x1c4 - moveq r0, #1 - ldmeqia sp!, {pc} - bl MOD04_021D988C - cmp r0, #0 - beq _021DDFA4 - cmp r0, #0x14 - beq _021DDFE0 - cmp r0, #0x15 - beq _021DDFB0 - b _021DE010 -_021DDFA4: - add sp, sp, #0x1c4 - mov r0, #2 - ldmfd sp!, {pc} -_021DDFB0: - bl MOD04_021D991C - ldr r0, _021DE054 ; =UNK04_0221051C - ldr r2, _021DE058 ; =0x00001E1C - ldr r1, [r0] - mov r0, #4 - bl MOD04_021DD904 - ldr r0, _021DE054 ; =UNK04_0221051C - mov r1, #0 - str r1, [r0] - add sp, sp, #0x1c4 - mov r0, #3 - ldmfd sp!, {pc} -_021DDFE0: - bl MOD04_021D991C - ldr r0, _021DE054 ; =UNK04_0221051C - ldr r2, _021DE058 ; =0x00001E1C - ldr r1, [r0] - mov r0, #4 - bl MOD04_021DD904 - ldr r0, _021DE054 ; =UNK04_0221051C - mov r1, #0 - str r1, [r0] - add sp, sp, #0x1c4 - mov r0, #5 - ldmfd sp!, {pc} -_021DE010: - add r0, sp, #0 - bl MOD04_021D97F8 - bl MOD04_021D991C - ldr r0, _021DE054 ; =UNK04_0221051C - ldr r2, _021DE058 ; =0x00001E1C - ldr r1, [r0] - mov r0, #4 - bl MOD04_021DD904 - ldr r1, [sp] - ldr r2, _021DE054 ; =UNK04_0221051C - mov r3, #0 - mov r0, #2 - str r3, [r2] - bl MOD04_021DD6B0 - mov r0, #4 - add sp, sp, #0x1c4 - ldmfd sp!, {pc} - .align 2, 0 -_021DE054: .word UNK04_0221051C -_021DE058: .word 0x00001E1C - arm_func_end MOD04_021DDF4C - - arm_func_start MOD04_021DE05C -MOD04_021DE05C: ; 0x021DE05C - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r0, _021DE130 ; =UNK04_0221051C - ldr r0, [r0] - cmp r0, #0 - beq _021DE078 - bl OS_Terminate -_021DE078: - ldr r1, _021DE134 ; =0x00001E1C - mov r0, #4 - bl MOD04_021DD944 - ldr r1, _021DE130 ; =UNK04_0221051C - cmp r0, #0 - str r0, [r1] - bne _021DE0AC - ldr r1, _021DE138 ; =0xFFFFB17C - mov r0, #9 - bl MOD04_021DD6B0 - add sp, sp, #4 - mov r0, #0 - ldmfd sp!, {pc} -_021DE0AC: - ldr r2, _021DE134 ; =0x00001E1C - mov r1, #0 - bl MI_CpuFill8 - ldr r0, _021DE130 ; =UNK04_0221051C - ldr r1, _021DE13C ; =0x00001C44 - ldr r2, [r0] - ldr r0, _021DE140 ; =UNK04_0220D2EC - add r1, r2, r1 - mov r2, #9 - bl MI_CpuCopy8 - ldr r1, _021DE130 ; =UNK04_0221051C - ldr r2, _021DE144 ; =MOD04_021DD944 - ldr r0, [r1] - ldr r3, _021DE148 ; =MOD04_021DD904 - add r0, r0, #0x1000 - str r2, [r0, #0xc50] - ldr r0, [r1] - ldr r2, _021DE14C ; =0x00001C10 - add r0, r0, #0x1000 - str r3, [r0, #0xc54] - ldr r1, [r1] - add r0, r1, r2 - bl MOD04_021D9ACC - cmp r0, #0 - addeq sp, sp, #4 - moveq r0, #1 - ldmeqia sp!, {pc} - ldr r1, _021DE138 ; =0xFFFFB17C - mov r0, #9 - bl MOD04_021DD6B0 - mov r0, #0 - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DE130: .word UNK04_0221051C -_021DE134: .word 0x00001E1C -_021DE138: .word 0xFFFFB17C -_021DE13C: .word 0x00001C44 -_021DE140: .word UNK04_0220D2EC -_021DE144: .word MOD04_021DD944 -_021DE148: .word MOD04_021DD904 -_021DE14C: .word 0x00001C10 - arm_func_end MOD04_021DE05C - - arm_func_start MOD04_021DE150 -MOD04_021DE150: ; 0x021DE150 - stmdb sp!, {r4, lr} - bl MOD04_021DCF00 - mov r4, r0 - sub r0, r4, #3 - cmp r0, #2 - bhi _021DE16C - bl MOD04_021DD26C -_021DE16C: - mov r0, r4 - ldmia sp!, {r4, pc} - arm_func_end MOD04_021DE150 - - arm_func_start MOD04_021DE174 -MOD04_021DE174: ; 0x021DE174 - stmdb sp!, {r4, r5, lr} - sub sp, sp, #4 - mov r5, r0 - mov r4, r1 - ldr r0, _021DE1EC ; =MOD04_021DD944 - ldr r1, _021DE1F0 ; =MOD04_021DD904 - bl MOD04_021DD2C4 - cmp r0, #0 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {r4, r5, pc} - mov r0, r5 - bl strlen - cmp r0, #0 - bne _021DE1C0 - ldr r0, _021DE1F4 ; =UNK04_0220D2F0 - mov r1, r4 - bl MOD04_021DCFFC - b _021DE1CC -_021DE1C0: - mov r0, r5 - mov r1, r4 - bl MOD04_021DCFFC -_021DE1CC: - cmp r0, #0 - addne sp, sp, #4 - movne r0, #1 - ldmneia sp!, {r4, r5, pc} - bl MOD04_021DD26C - mov r0, #0 - add sp, sp, #4 - ldmia sp!, {r4, r5, pc} - .align 2, 0 -_021DE1EC: .word MOD04_021DD944 -_021DE1F0: .word MOD04_021DD904 -_021DE1F4: .word UNK04_0220D2F0 - arm_func_end MOD04_021DE174 - - arm_func_start MOD04_021DE1F8 -MOD04_021DE1F8: ; 0x021DE1F8 - stmdb sp!, {r4, r5, lr} - sub sp, sp, #4 - ldr r2, _021DE2C4 ; =UNK04_022104F8 - mov r5, r0 - ldr r2, [r2] - mov r4, r1 - cmp r2, #0 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {r4, r5, pc} - bl RTC_GetDate - cmp r0, #0 - bne _021DE23C - mov r0, r4 - bl RTC_GetTime - cmp r0, #0 - beq _021DE248 -_021DE23C: - add sp, sp, #4 - mov r0, #0 - ldmia sp!, {r4, r5, pc} -_021DE248: - mov r0, r5 - mov r1, r4 - bl RTC_ConvertDateTimeToSecond - mvn r2, #0 - cmp r1, r2 - cmpeq r0, r2 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {r4, r5, pc} - ldr r2, _021DE2C8 ; =UNK04_022104FC - mov ip, #0 - ldr lr, [r2] - ldr r3, [r2, #4] - subs r2, r0, lr - sbc r3, r1, r3 - subs r0, r2, ip - sbcs r0, r3, ip - blt _021DE2A0 - ldr r0, _021DE2CC ; =0xBC19137F - subs r0, r0, r2 - sbcs r0, ip, r3 - bge _021DE2AC -_021DE2A0: - add sp, sp, #4 - mov r0, #0 - ldmia sp!, {r4, r5, pc} -_021DE2AC: - mov r0, r5 - mov r1, r4 - bl RTC_ConvertSecondToDateTime - mov r0, #1 - add sp, sp, #4 - ldmia sp!, {r4, r5, pc} - .align 2, 0 -_021DE2C4: .word UNK04_022104F8 -_021DE2C8: .word UNK04_022104FC -_021DE2CC: .word 0xBC19137F - arm_func_end MOD04_021DE1F8 - - arm_func_start MOD04_021DE2D0 -MOD04_021DE2D0: ; 0x021DE2D0 - stmdb sp!, {r4, r5, lr} - sub sp, sp, #4 - mov r5, r0 - mov r4, r1 - bl MOD04_021DD6D4 - cmp r0, #0 - addne sp, sp, #4 - movne r0, #0 - ldmneia sp!, {r4, r5, pc} - mov r0, r5 - mov r1, r4 - bl MOD04_02207330 - add sp, sp, #4 - ldmia sp!, {r4, r5, pc} - arm_func_end MOD04_021DE2D0 - - arm_func_start MOD04_021DE308 -MOD04_021DE308: ; 0x021DE308 - stmdb sp!, {lr} - sub sp, sp, #4 - bl MOD04_021DD6D4 - cmp r0, #0 - addne sp, sp, #4 - movne r0, #0 - ldmneia sp!, {pc} - bl MOD04_02207158 - add sp, sp, #4 - ldmfd sp!, {pc} - arm_func_end MOD04_021DE308 - - arm_func_start MOD04_021DE330 -MOD04_021DE330: ; 0x021DE330 - stmdb sp!, {r4, r5, r6, lr} - mov r6, r0 - mov r5, r1 - mov r4, r2 - bl MOD04_021DD6D4 - cmp r0, #0 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - mov r0, r6 - mov r1, r5 - mov r2, r4 - bl MOD04_0220733C - ldmia sp!, {r4, r5, r6, pc} - arm_func_end MOD04_021DE330 - - arm_func_start MOD04_021DE364 -MOD04_021DE364: ; 0x021DE364 - stmdb sp!, {r4, r5, r6, lr} - mov r6, r0 - mov r5, r1 - mov r4, r2 - bl MOD04_021DD6D4 - cmp r0, #0 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - mov r0, #0xb0 - mul r2, r4, r0 - mov r0, r6 - mov r1, #0 - bl MI_CpuFill8 - mov r0, r6 - mov r1, r5 - mov r2, r4 - bl MOD04_022074EC - ldmia sp!, {r4, r5, r6, pc} - arm_func_end MOD04_021DE364 - - arm_func_start MOD04_021DE3AC -MOD04_021DE3AC: ; 0x021DE3AC - stmdb sp!, {r4, lr} - mov r4, r0 - bl MOD04_021DD6D4 - cmp r0, #0 - movne r0, #0 - ldmneia sp!, {r4, pc} - mov r0, r4 - bl MOD04_022077A8 - ldmia sp!, {r4, pc} - arm_func_end MOD04_021DE3AC - - arm_func_start MOD04_021DE3D0 -MOD04_021DE3D0: ; 0x021DE3D0 - stmdb sp!, {r4, r5, r6, lr} - mov r6, r0 - mov r5, r1 - mov r4, r2 - bl MOD04_021DD6D4 - cmp r0, #0 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - mov r0, r6 - mov r1, r5 - mov r2, r4 - bl MOD04_022069DC - ldmia sp!, {r4, r5, r6, pc} - arm_func_end MOD04_021DE3D0 - - arm_func_start MOD04_021DE404 -MOD04_021DE404: ; 0x021DE404 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r1, _021DE454 ; =UNK04_02210520 - ldr r2, [r1] - cmp r2, #0 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {pc} - str r0, [r2, #4] - ldr r0, [r1] - ldr r0, [r0, #0x48] - cmp r0, #0 - bne _021DE440 - bl MOD04_021DE730 - b _021DE448 -_021DE440: - ldr r0, _021DE458 ; =MOD04_021DE730 - bl MOD04_02206E6C -_021DE448: - mov r0, #1 - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DE454: .word UNK04_02210520 -_021DE458: .word MOD04_021DE730 - arm_func_end MOD04_021DE404 - - arm_func_start MOD04_021DE45C -MOD04_021DE45C: ; 0x021DE45C - stmdb sp!, {r4, r5, r6, lr} - sub sp, sp, #8 - mov r6, r0 - mov r5, r1 - mov r4, r2 - bl MOD04_021DD6D4 - cmp r0, #0 - addne sp, sp, #8 - movne r0, #0 - ldmneia sp!, {r4, r5, r6, pc} - mov r0, #0xa80 - mov r1, #0x20 - bl MOD04_021DE884 - ldr r2, _021DE568 ; =UNK04_02210520 - mov r1, #0 - str r0, [r2] - str r1, [r0, #0x48] - ldr r0, [r2] - mov r2, #0xa80 - bl MI_CpuFill8 - ldr r0, _021DE568 ; =UNK04_02210520 - mov r1, r5 - ldr r3, [r0] - mov r2, #0x1f - str r6, [r3] - ldr r0, [r0] - add r0, r0, #8 - bl strncpy - ldr r0, _021DE568 ; =UNK04_02210520 - mov r1, r4 - ldr r0, [r0] - mov r2, #0x1f - add r0, r0, #0x28 - bl strncpy - ldr r1, _021DE568 ; =UNK04_02210520 - ldr r0, _021DE56C ; =UNK04_0220D2F8 - ldr r1, [r1] - add r1, r1, #0x4c - bl MOD04_021DE174 - cmp r0, #0 - bne _021DE520 - ldr r0, _021DE568 ; =UNK04_02210520 - ldr r0, [r0] - bl MOD04_021DE86C - ldr r1, _021DE568 ; =UNK04_02210520 - mov r0, #0 - str r0, [r1] - add sp, sp, #8 - ldmia sp!, {r4, r5, r6, pc} -_021DE520: - ldr r0, _021DE568 ; =UNK04_02210520 - mov r2, #0x800 - ldr r0, [r0] - ldr r1, _021DE570 ; =MOD04_021DE574 - add r0, r0, #0x9c0 - mov r3, r0 - str r2, [sp] - mov ip, #0x10 - mov r2, #0 - str ip, [sp, #4] - bl OS_CreateThread - ldr r0, _021DE568 ; =UNK04_02210520 - ldr r0, [r0] - add r0, r0, #0x9c0 - bl OS_WakeupThreadDirect - mov r0, #1 - add sp, sp, #8 - ldmia sp!, {r4, r5, r6, pc} - .align 2, 0 -_021DE568: .word UNK04_02210520 -_021DE56C: .word UNK04_0220D2F8 -_021DE570: .word MOD04_021DE574 - arm_func_end MOD04_021DE45C - - arm_func_start MOD04_021DE574 -MOD04_021DE574: ; 0x021DE574 - stmdb sp!, {r4, r5, r6, r7, lr} - sub sp, sp, #0x2a4 - mov r7, #0 - mov r6, #6 - mvn r5, #0 - mov r4, #0x64 -_021DE58C: - bl MOD04_021DE150 - cmp r0, #3 - bne _021DE6AC - ldr r0, _021DE718 ; =UNK04_02210520 - ldr r5, [r0] - add r0, r5, #0x50 - bl strlen - mov r4, r0 - ldr r0, _021DE71C ; =UNK04_0220D300 - bl strlen - add r0, r4, r0 - cmp r0, #0xff - bls _021DE5D8 - mov r0, #0 - mov r1, #8 - mvn r2, #0 - bl MOD04_021DE774 - add sp, sp, #0x2a4 - ldmia sp!, {r4, r5, r6, r7, pc} -_021DE5D8: - ldr r2, _021DE720 ; =UNK04_0220D314 - add r0, sp, #0x10 - add r3, r5, #0x50 - mov r1, #0x100 - bl OS_SNPrintf - ldr r0, _021DE718 ; =UNK04_02210520 - ldr r4, [r0] - add r0, r4, #0x91 - bl strlen - mov r1, r0 - add r2, sp, #0x110 - add r0, r4, #0x91 - mov r3, #0x190 - bl MOD04_021DD4FC - cmp r0, #0 - bge _021DE630 - mov r0, #0 - mov r1, #8 - mvn r2, #0 - bl MOD04_021DE774 - add sp, sp, #0x2a4 - ldmia sp!, {r4, r5, r6, r7, pc} -_021DE630: - ldr r0, _021DE718 ; =UNK04_02210520 - ldr r4, _021DE724 ; =MOD04_021DE774 - ldr r2, [r0] - ldr r0, _021DE728 ; =MOD04_021DE884 - add r1, r2, #8 - str r1, [sp] - add r1, r2, #0x28 - str r1, [sp, #4] - ldr r1, _021DE72C ; =MOD04_021DE86C - add r2, sp, #0x10 - add r3, sp, #0x110 - str r4, [sp, #8] - bl MOD04_02206EFC - cmp r0, #0 - bne _021DE684 - mov r0, #0 - mov r1, #8 - mvn r2, #0 - bl MOD04_021DE774 - add sp, sp, #0x2a4 - ldmia sp!, {r4, r5, r6, r7, pc} -_021DE684: - ldr r1, _021DE718 ; =UNK04_02210520 - mov r0, #0 - ldr r3, [r1] - mov r4, #1 - mov r1, r0 - mvn r2, #0 - str r4, [r3, #0x48] - bl MOD04_021DE774 - add sp, sp, #0x2a4 - ldmia sp!, {r4, r5, r6, r7, pc} -_021DE6AC: - cmp r0, #4 - bne _021DE6EC - add r0, sp, #0xc - bl MOD04_021DD808 - ldr r1, [sp, #0xc] - mov r0, #0xe - bl MOD04_021DD6B0 - ldr r1, _021DE718 ; =UNK04_02210520 - mov r0, #0 - ldr r2, [r1] - mov r1, #3 - ldr r3, [r2] - mvn r2, #0 - blx r3 - add sp, sp, #0x2a4 - ldmia sp!, {r4, r5, r6, r7, pc} -_021DE6EC: - cmp r0, #5 - bne _021DE704 - mov r0, r7 - mov r1, r6 - mov r2, r5 - bl MOD04_021DE774 -_021DE704: - mov r0, r4 - bl OS_Sleep - b _021DE58C - arm_func_end MOD04_021DE574 - - arm_func_start MOD04_021DE710 -MOD04_021DE710: ; 0x021DE710 - add sp, sp, #0x2a4 - ldmia sp!, {r4, r5, r6, r7, pc} - .align 2, 0 -_021DE718: .word UNK04_02210520 -_021DE71C: .word UNK04_0220D300 -_021DE720: .word UNK04_0220D314 -_021DE724: .word MOD04_021DE774 -_021DE728: .word MOD04_021DE884 -_021DE72C: .word MOD04_021DE86C - arm_func_end MOD04_021DE710 - - arm_func_start MOD04_021DE730 -MOD04_021DE730: ; 0x021DE730 - stmdb sp!, {r4, lr} - ldr r0, _021DE770 ; =UNK04_02210520 - ldr r0, [r0] - add r0, r0, #0x9c0 - bl OS_JoinThread - ldr r0, _021DE770 ; =UNK04_02210520 - ldr r0, [r0] - ldr r4, [r0, #4] - bl MOD04_021DE86C - ldr r0, _021DE770 ; =UNK04_02210520 - mov r1, #0 - str r1, [r0] - cmp r4, #0 - ldmeqia sp!, {r4, pc} - blx r4 - ldmia sp!, {r4, pc} - .align 2, 0 -_021DE770: .word UNK04_02210520 - arm_func_end MOD04_021DE730 - - arm_func_start MOD04_021DE774 -MOD04_021DE774: ; 0x021DE774 - stmdb sp!, {r4, r5, r6, lr} - movs r5, r1 - mov r6, r0 - mov r4, r2 - bne _021DE79C - ldr r3, _021DE854 ; =UNK04_02210520 - ldr r3, [r3] - ldr r3, [r3] - blx r3 - ldmia sp!, {r4, r5, r6, pc} -_021DE79C: - cmp r5, #8 - addls pc, pc, r5, lsl #2 - b _021DE830 -_021DE7A8: ; jump table - b _021DE830 ; case 0 - b _021DE7CC ; case 1 - b _021DE7DC ; case 2 - b _021DE7E4 ; case 3 - b _021DE7F4 ; case 4 - b _021DE804 ; case 5 - b _021DE834 ; case 6 - b _021DE818 ; case 7 - b _021DE820 ; case 8 -_021DE7CC: - ldr r1, _021DE858 ; =0xFFFF86E7 - mov r0, #9 - bl MOD04_021DD6B0 - b _021DE834 -_021DE7DC: - bl OS_Terminate - b _021DE834 -_021DE7E4: - ldr r1, _021DE85C ; =0xFFFF86D4 - mov r0, #0xf - bl MOD04_021DD6B0 - b _021DE834 -_021DE7F4: - ldr r1, _021DE860 ; =0xFFFF86CA - mov r0, #0xe - bl MOD04_021DD6B0 - b _021DE834 -_021DE804: - ldr r1, _021DE864 ; =0xFFFF86E8 - mov r0, #0xe - sub r1, r1, r4 - bl MOD04_021DD6B0 - b _021DE834 -_021DE818: - bl OS_Terminate - b _021DE834 -_021DE820: - ldr r1, _021DE868 ; =0xFFFF86DF - mov r0, #9 - bl MOD04_021DD6B0 - b _021DE834 -_021DE830: - bl OS_Terminate -_021DE834: - ldr r1, _021DE854 ; =UNK04_02210520 - mov r0, r6 - ldr r2, [r1] - mov r1, r5 - ldr r3, [r2] - mov r2, r4 - blx r3 - ldmia sp!, {r4, r5, r6, pc} - .align 2, 0 -_021DE854: .word UNK04_02210520 -_021DE858: .word 0xFFFF86E7 -_021DE85C: .word 0xFFFF86D4 -_021DE860: .word 0xFFFF86CA -_021DE864: .word 0xFFFF86E8 -_021DE868: .word 0xFFFF86DF - arm_func_end MOD04_021DE774 - - arm_func_start MOD04_021DE86C -MOD04_021DE86C: ; 0x021DE86C - ldr ip, _021DE880 ; =MOD04_021DD904 - mov r1, r0 - mov r0, #6 - mov r2, #0 - bx ip - .align 2, 0 -_021DE880: .word MOD04_021DD904 - arm_func_end MOD04_021DE86C - - arm_func_start MOD04_021DE884 -MOD04_021DE884: ; 0x021DE884 - ldr ip, _021DE898 ; =MOD04_021DD924 - mov r2, r1 - mov r1, r0 - mov r0, #6 - bx ip - .align 2, 0 -_021DE898: .word MOD04_021DD924 - arm_func_end MOD04_021DE884 - - arm_func_start MOD04_021DE89C -MOD04_021DE89C: ; 0x021DE89C - ldrh r1, [r0] - mov r2, #0 - cmp r1, #0 - beq _021DE8C0 -_021DE8AC: - add r2, r2, #1 - mov r1, r2, lsl #1 - ldrh r1, [r0, r1] - cmp r1, #0 - bne _021DE8AC -_021DE8C0: - mov r0, r2 - bx lr - arm_func_end MOD04_021DE89C - - arm_func_start MOD04_021DE8C8 -MOD04_021DE8C8: ; 0x021DE8C8 - stmdb sp!, {r4, lr} - sub sp, sp, #8 - ldr r2, _021DE9E4 ; =UNK04_02210524 - mov r1, #0 - ldr r3, [r2, #4] - ldr ip, [r2] - cmp r3, r1 - mov r4, r0 - cmpeq ip, r1 - bne _021DE98C - ldr r0, [r2, #0xc] - ldr r3, [r2, #8] - cmp r0, r1 - cmpeq r3, r1 - bne _021DE98C - ldr r0, [r2, #0x14] - ldr r2, [r2, #0x10] - cmp r0, r1 - cmpeq r2, r1 - bne _021DE98C - add r0, sp, #0 - bl OS_GetMacAddress - bl OS_GetTick - ldr r2, [sp] - ldr r3, [sp, #4] - mov lr, r2, lsr #0x18 - mov r2, r1, lsl #0x18 - orr lr, lr, r3, lsl #8 - mvn r1, #0xff000000 - mov ip, r3, lsr #0x18 - and r1, lr, r1 - orr r3, r1, r0, lsl #24 - and r1, ip, #0 - orr r2, r2, r0, lsr #8 - orr r1, r1, r2 - str r1, [sp, #4] - ldr ip, _021DE9E4 ; =UNK04_02210524 - add r0, sp, #0 - str r3, [sp] - ldmia r0, {r2, r3} - stmia ip, {r2, r3} - ldr r3, _021DE9E8 ; =0x6C078965 - ldr r2, _021DE9EC ; =0x5D588B65 - ldr r1, _021DE9F0 ; =0x00269EC3 - mov r0, #0 - str r3, [ip, #8] - str r2, [ip, #0xc] - str r1, [ip, #0x10] - str r0, [ip, #0x14] -_021DE98C: - ldr r1, _021DE9E4 ; =UNK04_02210524 - ldr r3, [r1, #8] - ldr r2, [r1] - ldr r0, [r1, #4] - umull lr, ip, r3, r2 - mla ip, r3, r0, ip - ldr r0, [r1, #0xc] - ldr r3, [r1, #0x10] - mla ip, r0, r2, ip - adds r2, r3, lr - ldr r0, [r1, #0x14] - str r2, [r1] - adc r0, r0, ip - cmp r4, #0 - str r0, [r1, #4] - movne r3, #0 - umullne r2, r1, r0, r4 - mlane r1, r0, r3, r1 - mlane r1, r3, r4, r1 - movne r0, r1 - add sp, sp, #8 - ldmia sp!, {r4, pc} - .align 2, 0 -_021DE9E4: .word UNK04_02210524 -_021DE9E8: .word 0x6C078965 -_021DE9EC: .word 0x5D588B65 -_021DE9F0: .word 0x00269EC3 - arm_func_end MOD04_021DE8C8 - - arm_func_start MOD04_021DE9F4 -MOD04_021DE9F4: ; 0x021DE9F4 - stmdb sp!, {r4, r5, r6, r7, lr} - sub sp, sp, #4 - movs r4, r1 - mov r7, r0 - mov r6, r3 - addeq sp, sp, #4 - mvneq r0, #0 - ldmeqia sp!, {r4, r5, r6, r7, pc} - mov r0, r2 - mov r1, r6 - bl strchr - movs r5, r0 - addeq sp, sp, #4 - mvneq r0, #0 - ldmeqia sp!, {r4, r5, r6, r7, pc} -_021DEA30: - mov r0, r7 - bl strlen - mov r2, r0 - mov r1, r7 - add r0, r5, #1 - bl strncmp - cmp r0, #0 - bne _021DEA68 - mov r0, r7 - bl strlen - add r0, r0, r5 - ldrsb r0, [r0, #1] - cmp r6, r0 - beq _021DEAA4 -_021DEA68: - mov r1, r6 - add r0, r5, #1 - bl strchr - cmp r0, #0 - addeq sp, sp, #4 - mvneq r0, #0 - ldmeqia sp!, {r4, r5, r6, r7, pc} - mov r1, r6 - add r0, r0, #1 - bl strchr - movs r5, r0 - bne _021DEA30 - add sp, sp, #4 - mvn r0, #0 - ldmia sp!, {r4, r5, r6, r7, pc} -_021DEAA4: - mov r1, r6 - add r0, r5, #1 - bl strchr - movs r5, r0 - addeq sp, sp, #4 - mvneq r0, #0 - ldmeqia sp!, {r4, r5, r6, r7, pc} - mov r1, r6 - add r0, r5, #1 - bl strchr - cmp r0, #0 - addne r1, r5, #1 - subne r6, r0, r1 - bne _021DEAE8 - add r0, r5, #1 - bl strlen - mov r6, r0 -_021DEAE8: - mov r0, r4 - mov r2, r6 - add r1, r5, #1 - bl strncpy - mov r1, #0 - mov r0, r6 - strb r1, [r4, r6] - add sp, sp, #4 - ldmia sp!, {r4, r5, r6, r7, pc} - arm_func_end MOD04_021DE9F4 - - arm_func_start MOD04_021DEB0C -MOD04_021DEB0C: ; 0x021DEB0C - stmdb sp!, {r4, r5, r6, r7, lr} - sub sp, sp, #4 - mov r5, r2 - mov r7, r0 - mov r6, r1 - mov r4, r3 - mov r0, r5 - mov r1, #0 - bl strchr - mov r2, r0 - mov r0, r7 - mov r1, r6 - mov r3, r4 - bl MOD04_021DEB54 - mov r0, r5 - bl strlen - add sp, sp, #4 - ldmia sp!, {r4, r5, r6, r7, pc} - arm_func_end MOD04_021DEB0C - - arm_func_start MOD04_021DEB54 -MOD04_021DEB54: ; 0x021DEB54 - stmdb sp!, {r4, lr} - sub sp, sp, #0x10 - str r0, [sp] - mov r4, r2 - str r3, [sp, #4] - str r1, [sp, #8] - ldr r2, _021DEB8C ; =UNK04_0220D328 - mov r0, r4 - mov r1, #0x1000 - bl OS_SNPrintf - mov r0, r4 - bl strlen - add sp, sp, #0x10 - ldmia sp!, {r4, pc} - .align 2, 0 -_021DEB8C: .word UNK04_0220D328 - arm_func_end MOD04_021DEB54 - - arm_func_start MOD04_021DEB90 -MOD04_021DEB90: ; 0x021DEB90 - stmdb sp!, {lr} - sub sp, sp, #4 - bl MOD04_021FD43C - bl MOD04_021EFB28 - ldr r2, _021DEBCC ; =UNK04_02210540 - ldr r1, _021DEBD0 ; =0xFFFE8515 - str r0, [r2] - mov r0, #9 - bl MOD04_021DD6B0 - ldr r0, _021DEBD4 ; =UNK04_0221053C - mov r1, #0 - ldr r0, [r0] - str r1, [r0] - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DEBCC: .word UNK04_02210540 -_021DEBD0: .word 0xFFFE8515 -_021DEBD4: .word UNK04_0221053C - arm_func_end MOD04_021DEB90 - - arm_func_start MOD04_021DEBD8 -MOD04_021DEBD8: ; 0x021DEBD8 - ldr ip, _021DEBE0 ; =MOD04_021EAC1C - bx ip - .align 2, 0 -_021DEBE0: .word MOD04_021EAC1C - arm_func_end MOD04_021DEBD8 - - arm_func_start MOD04_021DEBE4 -MOD04_021DEBE4: ; 0x021DEBE4 - stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} - sub sp, sp, #0xc - mov r7, #0 - mov fp, r0 - mov sb, r1 - mov sl, r7 - bl MOD04_021E852C - cmp r0, #0 - addne sp, sp, #0xc - ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - cmp sb, #4 - addls pc, pc, sb, lsl #2 - b _021DEC48 -_021DEC18: ; jump table - b _021DEC2C ; case 0 - b _021DEC2C ; case 1 - b _021DEC34 ; case 2 - b _021DEC34 ; case 3 - b _021DEC40 ; case 4 -_021DEC2C: - mov r4, r7 - b _021DEC48 -_021DEC34: - mov r4, #6 - ldr r6, _021DEF4C ; =0xFFFFE250 - b _021DEC48 -_021DEC40: - ldr r6, _021DEF50 ; =0xFFFFE24F - mov r4, #9 -_021DEC48: - cmp r4, #0 - bne _021DED00 - mov r0, fp - bl MOD04_021FD3C4 - movs r7, r0 - addeq sp, sp, #0xc - ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - ldr r0, _021DEF54 ; =UNK04_0221053C - ldrb r8, [r7, #1] - ldr r1, [r0] - mov r5, #1 - mov r0, r5,lsl r8 - ldr r1, [r1, #0x644] - ands r0, r1, r0 - mov r0, r8 - moveq r5, #0 - bl MOD04_021EA9D8 - ldr r0, _021DEF54 ; =UNK04_0221053C - ldr r1, [r0] - ldrb r0, [r1, #0x369] - cmp r0, #2 - bne _021DECA8 - cmp sb, #0 - beq _021DECBC -_021DECA8: - ldrb r0, [r1, #0x369] - cmp r0, #3 - bne _021DECC0 - cmp r8, #0 - bne _021DECC0 -_021DECBC: - mov sl, #1 -_021DECC0: - mov r0, r8 - bl MOD04_021DF56C - ldr r1, _021DEF54 ; =UNK04_0221053C - ldrb r7, [r7] - ldr r2, _021DEF58 ; =UNK04_02210544 - mov fp, #0 - ldr r3, [r1] - str fp, [r2, r7, lsl #2] - ldrb r2, [r3, #0x361] - mov r7, r0 - sub r0, r2, #1 - strb r0, [r3, #0x361] - ldr r1, [r1] - ldrb r0, [r1, #0x368] - sub r0, r0, #1 - strb r0, [r1, #0x368] -_021DED00: - ldr r0, _021DEF54 ; =UNK04_0221053C - ldr r1, [r0] - ldrb r0, [r1, #0x2d] - cmp r0, #0 - bne _021DED58 - ldr r0, [r1, #0x24] - cmp r0, #6 - bne _021DED58 - cmp r5, #0 - bne _021DED58 - ldrb r0, [r1, #0x369] - cmp r0, #2 - addne sp, sp, #0xc - ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - cmp r4, #0 - addne sp, sp, #0xc - ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - bl MOD04_021E85D4 - mov r0, r7 - bl MOD04_021E8A50 - add sp, sp, #0xc - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} -_021DED58: - mov r0, r4 - mov r1, r6 - mov r2, r7 - bl MOD04_021E8A74 - cmp r0, #0 - addne sp, sp, #0xc - ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - cmp r4, #0 - beq _021DED90 - mov r0, r4 - mov r1, r6 - bl MOD04_021DD6B0 - add sp, sp, #0xc - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} -_021DED90: - ldr r0, _021DEF54 ; =UNK04_0221053C - ldr r1, [r0] - ldrb r0, [r1, #0x2d] - cmp r0, #0 - bne _021DEE04 - ldrb r0, [r1, #0x369] - cmp r0, #2 - beq _021DEDBC - ldrb r0, [r1, #0x369] - cmp r0, #3 - bne _021DEE04 -_021DEDBC: - ldr r2, _021DEF54 ; =UNK04_0221053C - ldr r1, [r2] - ldrb r0, [r1, #0x361] - add r6, r0, #2 - add r3, r1, r6, lsl #2 - ldr r3, [r3, #0x448] - cmp r3, #0 - beq _021DEE04 - add r3, r1, r6 - ldrb r3, [r3, #0x624] - add r0, r0, #1 - add r0, r1, r0 - strb r3, [r0, #0x624] - ldr r0, [r2] - ldrb r1, [r0, #0x361] - add r0, r1, #1 - add r1, r1, #3 - bl MOD04_021E8830 -_021DEE04: - ldr r0, _021DEF54 ; =UNK04_0221053C - ldr r1, [r0] - ldrb r0, [r1, #0x369] - cmp r0, #2 - bne _021DEE4C - ldrb r0, [r1, #0x2d] - cmp r0, #0 - bne _021DEE2C - bl MOD04_021E85D4 - b _021DEE68 -_021DEE2C: - ldrb r0, [r1, #0x361] - cmp r0, #0 - bne _021DEE68 - ldr r1, _021DEF5C ; =UNK04_0220D334 - mov r0, #1 - mov r2, #0 - bl MOD04_021E1E30 - b _021DEE68 -_021DEE4C: - ldrb r0, [r1, #0x361] - cmp r0, #0 - bne _021DEE68 - ldr r1, _021DEF5C ; =UNK04_0220D334 - mov r0, #1 - mov r2, #0 - bl MOD04_021E1E30 -_021DEE68: - ldr r0, _021DEF54 ; =UNK04_0221053C - ldr r1, [r0] - ldrb r0, [r1, #0x369] - cmp r0, #0 - beq _021DEE88 - ldrb r0, [r1, #0x369] - cmp r0, #1 - bne _021DEEA4 -_021DEE88: - ldr r0, _021DEF54 ; =UNK04_0221053C - ldr r2, [r0] - ldrb r1, [r2, #0x368] - strb r1, [r2, #0x36a] - ldr r0, [r0] - ldr r0, [r0, #0x364] - bl MOD04_02202308 -_021DEEA4: - ldr r0, _021DEF54 ; =UNK04_0221053C - ldr r6, [r0] - ldr r0, [r6, #0x90] - cmp r0, #0 - beq _021DEF00 - cmp r5, #0 - beq _021DEF00 - cmp sb, #0 - moveq r5, #1 - mov r0, r7 - movne r5, #0 - bl MOD04_021E1F18 - str r0, [sp] - ldr r1, [r6, #0x94] - ldr r0, _021DEF54 ; =UNK04_0221053C - str r1, [sp, #4] - ldr r1, [r0] - mov r0, r4 - ldr r4, [r1, #0x90] - mov r1, r5 - mov r2, sl - mov r3, r8 - blx r4 -_021DEF00: - ldr r0, _021DEF54 ; =UNK04_0221053C - ldr r1, [r0] - ldrb r0, [r1, #0x2d] - cmp r0, #0 - bne _021DEF24 - ldrb r0, [r1, #0x369] - cmp r0, #2 - addeq sp, sp, #0xc - ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} -_021DEF24: - ldrb r0, [r1, #0x361] - cmp r0, #0 - addne sp, sp, #0xc - ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - bl MOD04_02200D6C - bl MOD04_021E8DC0 - mov r0, #3 - bl MOD04_021DF5CC - add sp, sp, #0xc - ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc} - .align 2, 0 -_021DEF4C: .word 0xFFFFE250 -_021DEF50: .word 0xFFFFE24F -_021DEF54: .word UNK04_0221053C -_021DEF58: .word UNK04_02210544 -_021DEF5C: .word UNK04_0220D334 - arm_func_end MOD04_021DEBE4 - - arm_func_start MOD04_021DEF60 -MOD04_021DEF60: ; 0x021DEF60 - ldr ip, _021DEF68 ; =MOD04_021EAC5C - bx ip - .align 2, 0 -_021DEF68: .word MOD04_021EAC5C - arm_func_end MOD04_021DEF60 - - arm_func_start MOD04_021DEF6C -MOD04_021DEF6C: ; 0x021DEF6C - stmdb sp!, {r4, r5, r6, r7, lr} - sub sp, sp, #0xc - add r4, sp, #0 - mov r3, #0 - strb r3, [r4] - strb r3, [r4, #1] - strb r3, [r4, #2] - strb r3, [r4, #3] - strb r3, [r4, #4] - strb r3, [r4, #5] - strb r3, [r4, #6] - strb r3, [r4, #7] - strb r3, [r4, #8] - strb r3, [r4, #9] - strb r3, [r4, #0xa] - mov r5, r1 - strb r3, [r4, #0xb] - ldr r4, [r5, #8] - mov r6, r0 - bl MOD04_021E2068 - cmp r0, #0 - addne sp, sp, #0xc - ldmneia sp!, {r4, r5, r6, r7, pc} - ldr r0, _021DF0C8 ; =UNK04_0220D338 - bl strlen - mov r2, r0 - ldr r1, _021DF0C8 ; =UNK04_0220D338 - mov r0, r4 - bl memcmp - cmp r0, #0 - addne sp, sp, #0xc - ldmneia sp!, {r4, r5, r6, r7, pc} - ldr r0, _021DF0C8 ; =UNK04_0220D338 - bl strlen - add r4, r4, r0 - mov r0, r4 - mov r1, #0x76 - bl strchr - sub r7, r0, r4 - add r0, sp, #0 - mov r1, r4 - mov r2, r7 - bl strncpy - cmp r7, #0xa - addhi sp, sp, #0xc - ldmhiia sp!, {r4, r5, r6, r7, pc} - add r0, sp, #0 - mov r1, #0 - mov r2, #0xa - bl strtoul - cmp r0, #3 - addne sp, sp, #0xc - ldmneia sp!, {r4, r5, r6, r7, pc} - ldr r0, _021DF0CC ; =UNK04_0220D340 - add r1, r7, #1 - add r4, r4, r1 - bl strlen - mov r2, r0 - ldr r1, _021DF0CC ; =UNK04_0220D340 - mov r0, r4 - bl memcmp - cmp r0, #0 - addne sp, sp, #0xc - ldmneia sp!, {r4, r5, r6, r7, pc} - ldr r0, _021DF0D0 ; =UNK04_0221053C - ldr r1, [r0] - ldr r0, [r1, #0x24] - cmp r0, #5 - beq _021DF0A8 - cmp r0, #6 - addne sp, sp, #0xc - ldmneia sp!, {r4, r5, r6, r7, pc} - ldrb r0, [r1, #0x369] - cmp r0, #2 - beq _021DF0A8 - ldrb r0, [r1, #0x369] - cmp r0, #3 - addne sp, sp, #0xc - ldmneia sp!, {r4, r5, r6, r7, pc} -_021DF0A8: - ldr r0, _021DF0CC ; =UNK04_0220D340 - bl strlen - add r2, r4, r0 - ldr r1, [r5] - mov r0, r6 - bl MOD04_021E8EF4 - add sp, sp, #0xc - ldmia sp!, {r4, r5, r6, r7, pc} - .align 2, 0 -_021DF0C8: .word UNK04_0220D338 -_021DF0CC: .word UNK04_0220D340 -_021DF0D0: .word UNK04_0221053C - arm_func_end MOD04_021DEF6C - - arm_func_start MOD04_021DF0D4 -MOD04_021DF0D4: ; 0x021DF0D4 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r1, [r1, #4] - ldr r0, _021DF120 ; =0x00000603 - cmp r1, r0 - addeq sp, sp, #4 - ldmeqia sp!, {pc} - ldr r0, _021DF124 ; =0x00000901 - cmp r1, r0 - addeq sp, sp, #4 - ldmeqia sp!, {pc} - ldr r0, _021DF128 ; =0x00000B01 - cmp r1, r0 - addeq sp, sp, #4 - ldmeqia sp!, {pc} - mov r0, #3 - bl MOD04_021DF414 - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DF120: .word 0x00000603 -_021DF124: .word 0x00000901 -_021DF128: .word 0x00000B01 - arm_func_end MOD04_021DF0D4 - - arm_func_start MOD04_021DF12C -MOD04_021DF12C: ; 0x021DF12C - stmdb sp!, {r4, r5, r6, r7, lr} - sub sp, sp, #0xc - movs r7, r0 - mov r6, r1 - mov r5, r2 - mov r4, r3 - bne _021DF174 - cmp r6, #0 - beq _021DF174 - ldr r0, _021DF2AC ; =UNK04_0221053C - ldr r0, [r0] - ldr r0, [r0, #0x4f4] - cmp r0, #0 - bne _021DF1D8 - bl MOD04_021E8DC0 - mov r0, #3 - bl MOD04_021DF5CC - b _021DF1D8 -_021DF174: - cmp r7, #0 - bne _021DF1D8 - mov r0, #6 - bl MOD04_021DF5CC - ldr r1, _021DF2AC ; =UNK04_0221053C - mov r0, #0 - ldr r3, [r1] - ldrb r1, [r3, #0x361] - cmp r1, #0 - blt _021DF1D8 - ldr r2, [r3, #0x64] -_021DF1A0: - add r1, r3, r0, lsl #2 - ldr r1, [r1, #0x448] - cmp r2, r1 - bne _021DF1C8 - ldr r1, _021DF2AC ; =UNK04_0221053C - ldr r1, [r1] - add r0, r1, r0 - ldrb r0, [r0, #0x624] - strb r0, [r1, #0x2c] - b _021DF1D8 -_021DF1C8: - ldrb r1, [r3, #0x361] - add r0, r0, #1 - cmp r0, r1 - ble _021DF1A0 -_021DF1D8: - ldr r1, _021DF2AC ; =UNK04_0221053C - ldr r0, _021DF2B0 ; =0x00000624 - ldr r2, [r1] - ldrb r1, [r2, #0x361] - add r0, r2, r0 - add r1, r1, #1 - bl MOD04_021DF530 - ldr r1, _021DF2AC ; =UNK04_0221053C - ldr r1, [r1] - str r0, [r1, #0x644] - bl MOD04_021E8780 - ldr r0, _021DF2AC ; =UNK04_0221053C - ldr r1, [r0] - ldrb r0, [r1, #0x369] - cmp r0, #2 - beq _021DF224 - ldrb r0, [r1, #0x369] - cmp r0, #3 - bne _021DF258 -_021DF224: - ldr r0, _021DF2AC ; =UNK04_0221053C - ldr r1, [sp, #0x20] - ldr r3, [r0] - mov r0, r7 - str r1, [sp] - ldr r2, [r3, #0x8c] - mov r1, r6 - str r2, [sp, #4] - ldr r6, [r3, #0x88] - mov r2, r5 - mov r3, r4 - blx r6 - b _021DF26C -_021DF258: - ldr r2, [r1, #0x84] - ldr r3, [r1, #0x80] - mov r0, r7 - mov r1, r6 - blx r3 -_021DF26C: - cmp r7, #0 - addeq sp, sp, #0xc - ldmeqia sp!, {r4, r5, r6, r7, pc} - ldr r0, _021DF2AC ; =UNK04_0221053C - ldr r0, [r0] - cmp r0, #0 - addeq sp, sp, #0xc - ldmeqia sp!, {r4, r5, r6, r7, pc} - ldr r0, [r0, #0x24] - cmp r0, #5 - addne sp, sp, #0xc - ldmneia sp!, {r4, r5, r6, r7, pc} - mov r0, #3 - bl MOD04_021DF5CC - add sp, sp, #0xc - ldmia sp!, {r4, r5, r6, r7, pc} - .align 2, 0 -_021DF2AC: .word UNK04_0221053C -_021DF2B0: .word 0x00000624 - arm_func_end MOD04_021DF12C - - arm_func_start MOD04_021DF2B4 -MOD04_021DF2B4: ; 0x021DF2B4 - stmdb sp!, {r4, r5, lr} - sub sp, sp, #4 - ldr r2, _021DF300 ; =UNK04_0221053C - mov r5, r0 - ldr r0, [r2] - mov r4, r1 - ldr r0, [r0, #0x28] - cmp r0, #4 - beq _021DF2DC - bl MOD04_021DF5CC -_021DF2DC: - ldr r1, _021DF300 ; =UNK04_0221053C - mov r0, r5 - ldr r3, [r1] - mov r1, r4 - ldr r2, [r3, #0x7c] - ldr r3, [r3, #0x78] - blx r3 - add sp, sp, #4 - ldmia sp!, {r4, r5, pc} - .align 2, 0 -_021DF300: .word UNK04_0221053C - arm_func_end MOD04_021DF2B4 - - arm_func_start MOD04_021DF304 -MOD04_021DF304: ; 0x021DF304 - stmdb sp!, {r4, r5, lr} - sub sp, sp, #4 - movs r5, r0 - mov r4, r1 - bne _021DF334 - ldr r1, _021DF36C ; =UNK04_0221053C - mov r0, #3 - ldr r1, [r1] - str r4, [r1, #0x64] - bl MOD04_021DF5CC - bl MOD04_021E1ED4 - b _021DF33C -_021DF334: - mov r0, #0 - bl MOD04_021DF5CC -_021DF33C: - ldr r0, _021DF36C ; =UNK04_0221053C - ldr r0, [r0] - ldr r3, [r0, #0x70] - cmp r3, #0 - addeq sp, sp, #4 - ldmeqia sp!, {r4, r5, pc} - ldr r2, [r0, #0x74] - mov r0, r5 - mov r1, r4 - blx r3 - add sp, sp, #4 - ldmia sp!, {r4, r5, pc} - .align 2, 0 -_021DF36C: .word UNK04_0221053C - arm_func_end MOD04_021DF304 - - arm_func_start MOD04_021DF370 -MOD04_021DF370: ; 0x021DF370 - stmdb sp!, {r4, lr} - movs r4, r0 - moveq r0, #0 - ldmeqia sp!, {r4, pc} - cmp r4, #7 - addls pc, pc, r4, lsl #2 - b _021DF3F4 -_021DF38C: ; jump table - b _021DF3F4 ; case 0 - b _021DF3AC ; case 1 - b _021DF3B8 ; case 2 - b _021DF3C8 ; case 3 - b _021DF3D4 ; case 4 - b _021DF3B8 ; case 5 - b _021DF3E0 ; case 6 - b _021DF3EC ; case 7 -_021DF3AC: - mov r0, #9 - mvn r2, #0 - b _021DF3F4 -_021DF3B8: - mov r0, #0 - mov r2, r0 - mov r4, r0 - b _021DF3F4 -_021DF3C8: - mov r0, #6 - mvn r2, #9 - b _021DF3F4 -_021DF3D4: - mov r0, #6 - mvn r2, #0x1d - b _021DF3F4 -_021DF3E0: - mov r0, #6 - mvn r2, #0x45 - b _021DF3F4 -_021DF3EC: - mov r0, #6 - mvn r2, #0x4f -_021DF3F4: - cmp r0, #0 - beq _021DF408 - ldr r1, _021DF410 ; =0xFFFEFA48 - add r1, r2, r1 - bl MOD04_021E0EAC -_021DF408: - mov r0, r4 - ldmia sp!, {r4, pc} - .align 2, 0 -_021DF410: .word 0xFFFEFA48 - arm_func_end MOD04_021DF370 - - arm_func_start MOD04_021DF414 -MOD04_021DF414: ; 0x021DF414 - stmdb sp!, {r4, r5, r6, lr} - movs r6, r0 - moveq r0, #0 - ldmeqia sp!, {r4, r5, r6, pc} - cmp r6, #4 - addls pc, pc, r6, lsl #2 - b _021DF470 -_021DF430: ; jump table - b _021DF470 ; case 0 - b _021DF444 ; case 1 - b _021DF450 ; case 2 - b _021DF45C ; case 3 - b _021DF468 ; case 4 -_021DF444: - mov r4, #9 - mvn r5, #0 - b _021DF470 -_021DF450: - mov r4, #9 - mvn r5, #1 - b _021DF470 -_021DF45C: - mov r4, #6 - mvn r5, #9 - b _021DF470 -_021DF468: - mov r4, #6 - mvn r5, #0x13 -_021DF470: - ldr r0, _021DF51C ; =UNK04_0221053C - ldr r1, [r0] - ldr r0, [r1, #0x24] - cmp r0, #5 - addls pc, pc, r0, lsl #2 - b _021DF500 -_021DF488: ; jump table - b _021DF500 ; case 0 - b _021DF4A0 ; case 1 - b _021DF4B8 ; case 2 - b _021DF500 ; case 3 - b _021DF4F4 ; case 4 - b _021DF4DC ; case 5 -_021DF4A0: - ldr r1, _021DF520 ; =0xFFFF11B8 - mov r0, r4 - add r5, r5, r1 - mov r1, r5 - bl MOD04_021E0EAC - b _021DF508 -_021DF4B8: - ldr r1, [r1, #0x9c] - ldr r0, _021DF520 ; =0xFFFF11B8 - cmp r1, #1 - add r5, r5, r0 - bge _021DF508 - mov r0, r4 - mov r1, r5 - bl MOD04_021E0EAC - b _021DF508 -_021DF4DC: - ldr r1, _021DF524 ; =0xFFFEC398 - mov r0, r4 - add r5, r5, r1 - mov r1, r5 - bl MOD04_021E8E08 - b _021DF508 -_021DF4F4: - ldr r0, _021DF528 ; =0xFFFEEAA8 - add r5, r5, r0 - b _021DF508 -_021DF500: - ldr r0, _021DF52C ; =0xFFFE9C88 - add r5, r5, r0 -_021DF508: - mov r0, r4 - mov r1, r5 - bl MOD04_021E2114 - mov r0, r6 - ldmia sp!, {r4, r5, r6, pc} - .align 2, 0 -_021DF51C: .word UNK04_0221053C -_021DF520: .word 0xFFFF11B8 -_021DF524: .word 0xFFFEC398 -_021DF528: .word 0xFFFEEAA8 -_021DF52C: .word 0xFFFE9C88 - arm_func_end MOD04_021DF414 - - arm_func_start MOD04_021DF530 -MOD04_021DF530: ; 0x021DF530 - stmdb sp!, {lr} - sub sp, sp, #4 - mov lr, #0 - mov ip, lr - cmp r1, #0 - ble _021DF560 - mov r3, #1 -_021DF54C: - ldrb r2, [r0, ip] - add ip, ip, #1 - cmp ip, r1 - orr lr, lr, r3, lsl r2 - blt _021DF54C -_021DF560: - mov r0, lr - add sp, sp, #4 - ldmfd sp!, {pc} - arm_func_end MOD04_021DF530 - - arm_func_start MOD04_021DF56C -MOD04_021DF56C: ; 0x021DF56C - stmdb sp!, {r4, lr} - sub sp, sp, #8 - mov r4, r0 - add r0, sp, #0 - bl MOD04_021E874C - mov r1, r0 - cmp r1, #0 - mov r0, #0 - ble _021DF5B0 - ldr r3, [sp] -_021DF594: - ldrb r2, [r3] - cmp r4, r2 - beq _021DF5B0 - add r0, r0, #1 - cmp r0, r1 - add r3, r3, #1 - blt _021DF594 -_021DF5B0: - cmp r0, r1 - addeq sp, sp, #8 - moveq r0, #0 - ldmeqia sp!, {r4, pc} - bl MOD04_021E8830 - add sp, sp, #8 - ldmia sp!, {r4, pc} - arm_func_end MOD04_021DF56C - - arm_func_start MOD04_021DF5CC -MOD04_021DF5CC: ; 0x021DF5CC - ldr r1, _021DF5E8 ; =UNK04_0221053C - ldr r3, [r1] - ldr r2, [r3, #0x24] - str r2, [r3, #0x28] - ldr r1, [r1] - str r0, [r1, #0x24] - bx lr - .align 2, 0 -_021DF5E8: .word UNK04_0221053C - arm_func_end MOD04_021DF5CC - - arm_func_start MOD04_021DF5EC -MOD04_021DF5EC: ; 0x021DF5EC - bx lr - arm_func_end MOD04_021DF5EC - - arm_func_start MOD04_021DF5F0 -MOD04_021DF5F0: ; 0x021DF5F0 - stmdb sp!, {r4, r5, r6, lr} - mov r6, r0 - mov r5, #0 - ldr r4, _021DF634 ; =UNK04_02210544 -_021DF600: - ldr r0, [r4, r5, lsl #2] - cmp r0, #0 - beq _021DF620 - bl MOD04_021FD3C4 - ldrb r0, [r0, #1] - cmp r6, r0 - moveq r0, #1 - ldmeqia sp!, {r4, r5, r6, pc} -_021DF620: - add r5, r5, #1 - cmp r5, #0x20 - blt _021DF600 - mov r0, #0 - ldmia sp!, {r4, r5, r6, pc} - .align 2, 0 -_021DF634: .word UNK04_02210544 - arm_func_end MOD04_021DF5F0 - - arm_func_start MOD04_021DF638 -MOD04_021DF638: ; 0x021DF638 - ldr r1, _021DF644 ; =UNK04_022105C4 - add r0, r1, r0, lsl #3 - bx lr - .align 2, 0 -_021DF644: .word UNK04_022105C4 - arm_func_end MOD04_021DF638 - - arm_func_start MOD04_021DF648 -MOD04_021DF648: ; 0x021DF648 - stmdb sp!, {lr} - sub sp, sp, #4 - cmp r1, #0 - mov ip, #0 - ble _021DF684 - ldr r2, _021DF6B8 ; =UNK04_0221053C - ldr r3, [r2] -_021DF664: - add r2, r3, ip, lsl #2 - ldr r2, [r2, #0x448] - cmp r0, r2 - beq _021DF684 - add r2, ip, #1 - and ip, r2, #0xff - cmp ip, r1 - blt _021DF664 -_021DF684: - cmp ip, r1 - addge sp, sp, #4 - movge r0, #0 - ldmgeia sp!, {pc} - ldr r0, _021DF6B8 ; =UNK04_0221053C - ldr r0, [r0] - add r0, r0, ip - ldrb r0, [r0, #0x624] - bl MOD04_021DF760 - bl MOD04_021DF730 - bl MOD04_021DF6BC - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DF6B8: .word UNK04_0221053C - arm_func_end MOD04_021DF648 - - arm_func_start MOD04_021DF6BC -MOD04_021DF6BC: ; 0x021DF6BC - ldr r1, _021DF6C8 ; =UNK04_02210544 - add r0, r1, r0, lsl #2 - bx lr - .align 2, 0 -_021DF6C8: .word UNK04_02210544 - arm_func_end MOD04_021DF6BC - - arm_func_start MOD04_021DF6CC -MOD04_021DF6CC: ; 0x021DF6CC - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r1, _021DF6FC ; =UNK04_02210544 - mov r0, #0 - mov r2, #0x80 - bl MIi_CpuClear32 - ldr r1, _021DF700 ; =UNK04_022105C4 - mov r0, #0 - mov r2, #0x100 - bl MIi_CpuClear32 - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DF6FC: .word UNK04_02210544 -_021DF700: .word UNK04_022105C4 - arm_func_end MOD04_021DF6CC - - arm_func_start MOD04_021DF704 -MOD04_021DF704: ; 0x021DF704 - ldr r2, _021DF72C ; =UNK04_02210544 - mov r0, #0 -_021DF70C: - ldr r1, [r2, r0, lsl #2] - cmp r1, #0 - bxeq lr - add r0, r0, #1 - cmp r0, #0x20 - blt _021DF70C - mvn r0, #0 - bx lr - .align 2, 0 -_021DF72C: .word UNK04_02210544 - arm_func_end MOD04_021DF704 - - arm_func_start MOD04_021DF730 -MOD04_021DF730: ; 0x021DF730 - stmdb sp!, {lr} - sub sp, sp, #4 - bl MOD04_021FD3C4 - ldrb r0, [r0] - add sp, sp, #4 - ldmfd sp!, {pc} - arm_func_end MOD04_021DF730 - - arm_func_start MOD04_021DF748 -MOD04_021DF748: ; 0x021DF748 - stmdb sp!, {lr} - sub sp, sp, #4 - bl MOD04_021FD3C4 - ldrb r0, [r0, #1] - add sp, sp, #4 - ldmfd sp!, {pc} - arm_func_end MOD04_021DF748 - - arm_func_start MOD04_021DF760 -MOD04_021DF760: ; 0x021DF760 - stmdb sp!, {r4, r5, r6, lr} - ldr r1, _021DF7BC ; =UNK04_0221053C - mov r6, r0 - ldr r0, [r1] - cmp r0, #0 - moveq r0, #0 - ldmeqia sp!, {r4, r5, r6, pc} - ldr r4, _021DF7C0 ; =UNK04_02210544 - mov r5, #0 -_021DF784: - ldr r0, [r4, r5, lsl #2] - cmp r0, #0 - beq _021DF7A8 - bl MOD04_021FD3C4 - ldrb r0, [r0, #1] - cmp r6, r0 - ldreq r0, _021DF7C0 ; =UNK04_02210544 - ldreq r0, [r0, r5, lsl #2] - ldmeqia sp!, {r4, r5, r6, pc} -_021DF7A8: - add r5, r5, #1 - cmp r5, #0x20 - blt _021DF784 - mov r0, #0 - ldmia sp!, {r4, r5, r6, pc} - .align 2, 0 -_021DF7BC: .word UNK04_0221053C -_021DF7C0: .word UNK04_02210544 - arm_func_end MOD04_021DF760 - - arm_func_start MOD04_021DF7C4 -MOD04_021DF7C4: ; 0x021DF7C4 - stmdb sp!, {r4, lr} - sub sp, sp, #8 - ldr r0, _021DF87C ; =UNK04_0221053C - ldr r0, [r0] - ldr r0, [r0] - cmp r0, #0 - addne sp, sp, #8 - movne r0, #0 - ldmneia sp!, {r4, pc} - mov r0, #0x4000 - bl MOD04_021DE8C8 - add r0, r0, #0xc000 - mov r1, r0, lsl #0x10 - ldr r3, _021DF87C ; =UNK04_0221053C - mov r0, #0 - mov r2, r0 - mov r1, r1, lsr #0x10 - ldr r4, [r3] - bl MOD04_021FFEB0 - ldr r1, _021DF880 ; =MOD04_021DEB90 - ldr r2, _021DF87C ; =UNK04_0221053C - str r1, [sp] - mov r1, r0 - ldr r0, [r2] - ldr r2, [r4, #0x14] - ldr r3, [r4, #0x18] - bl MOD04_021FD71C - mov r4, r0 - bl MOD04_021DF370 - cmp r0, #0 - addne sp, sp, #8 - movne r0, r4 - ldmneia sp!, {r4, pc} - ldr r0, _021DF87C ; =UNK04_0221053C - ldr r1, _021DF884 ; =MOD04_021E9204 - ldr r0, [r0] - ldr r0, [r0] - bl MOD04_021FD6C8 - ldr r0, _021DF87C ; =UNK04_0221053C - ldr r1, _021DF888 ; =MOD04_021E9464 - ldr r0, [r0] - ldr r0, [r0] - bl MOD04_021FD434 - mov r0, r4 - add sp, sp, #8 - ldmia sp!, {r4, pc} - .align 2, 0 -_021DF87C: .word UNK04_0221053C -_021DF880: .word MOD04_021DEB90 -_021DF884: .word MOD04_021E9204 -_021DF888: .word MOD04_021E9464 - arm_func_end MOD04_021DF7C4 - - arm_func_start MOD04_021DF88C -MOD04_021DF88C: ; 0x021DF88C - ldr r0, _021DF8A4 ; =UNK04_0221053C - ldr r0, [r0] - cmp r0, #0 - ldrne r0, [r0, #0x24] - moveq r0, #0 - bx lr - .align 2, 0 -_021DF8A4: .word UNK04_0221053C - arm_func_end MOD04_021DF88C - - arm_func_start MOD04_021DF8A8 -MOD04_021DF8A8: ; 0x021DF8A8 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r1, _021DF8F0 ; =UNK04_0221053C - ldr r2, [r1] - cmp r2, #0 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {pc} - mov r1, #1 - mov r1, r1,lsl r0 - ldr r2, [r2, #0x644] - ands r1, r2, r1 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {pc} - bl MOD04_021DF5F0 - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DF8F0: .word UNK04_0221053C - arm_func_end MOD04_021DF8A8 - - arm_func_start MOD04_021DF8F4 -MOD04_021DF8F4: ; 0x021DF8F4 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r2, _021DF954 ; =UNK04_0221053C - ldr r3, [r2] - cmp r3, #0 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {pc} - ldr r1, _021DF958 ; =0x00000624 - add r1, r3, r1 - str r1, [r0] - ldr r2, [r2] - ldrb r1, [r2, #0x369] - cmp r1, #2 - beq _021DF93C - ldrb r1, [r2, #0x369] - cmp r1, #3 - bne _021DF948 -_021DF93C: - bl MOD04_021E86A4 - add sp, sp, #4 - ldmfd sp!, {pc} -_021DF948: - bl MOD04_021E874C - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DF954: .word UNK04_0221053C -_021DF958: .word 0x00000624 - arm_func_end MOD04_021DF8F4 - - arm_func_start MOD04_021DF95C -MOD04_021DF95C: ; 0x021DF95C - ldr r0, _021DF974 ; =UNK04_0221053C - ldr r0, [r0] - cmp r0, #0 - ldrneb r0, [r0, #0x2c] - moveq r0, #0 - bx lr - .align 2, 0 -_021DF974: .word UNK04_0221053C - arm_func_end MOD04_021DF95C - - arm_func_start MOD04_021DF978 -MOD04_021DF978: ; 0x021DF978 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r0, _021DF9D0 ; =UNK04_0221053C - ldr r1, [r0] - cmp r1, #0 - addeq sp, sp, #4 - moveq r0, #0 - ldmeqia sp!, {pc} - ldrb r0, [r1, #0x369] - cmp r0, #2 - beq _021DF9B0 - ldrb r0, [r1, #0x369] - cmp r0, #3 - bne _021DF9C0 -_021DF9B0: - bl MOD04_021E87D8 - add sp, sp, #4 - add r0, r0, #1 - ldmfd sp!, {pc} -_021DF9C0: - bl MOD04_021E8804 - add r0, r0, #1 - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DF9D0: .word UNK04_0221053C - arm_func_end MOD04_021DF978 - - arm_func_start MOD04_021DF9D4 -MOD04_021DF9D4: ; 0x021DF9D4 - stmdb sp!, {r4, lr} - ldr r1, _021DFA3C ; =UNK04_0221053C - mov r4, r0 - ldr r0, [r1] - cmp r0, #0 - beq _021DFA14 - bl MOD04_021DD6D4 - cmp r0, #0 - bne _021DFA14 - ldr r0, _021DFA3C ; =UNK04_0221053C - ldr r0, [r0] - ldr r0, [r0, #0x24] - cmp r0, #5 - beq _021DFA1C - cmp r0, #6 - beq _021DFA1C -_021DFA14: - mvn r0, #0 - ldmia sp!, {r4, pc} -_021DFA1C: - mov r0, r4 - bl MOD04_021DF760 - cmp r0, #0 - mvneq r0, #1 - ldmeqia sp!, {r4, pc} - bl MOD04_021FD488 - mov r0, #0 - ldmia sp!, {r4, pc} - .align 2, 0 -_021DFA3C: .word UNK04_0221053C - arm_func_end MOD04_021DF9D4 - - arm_func_start MOD04_021DFA40 -MOD04_021DFA40: ; 0x021DFA40 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r0, _021DFAF0 ; =UNK04_0221053C - ldr r0, [r0] - cmp r0, #0 - beq _021DFA80 - bl MOD04_021DD6D4 - cmp r0, #0 - bne _021DFA80 - ldr r0, _021DFAF0 ; =UNK04_0221053C - ldr r2, [r0] - ldr r0, [r2, #0x24] - cmp r0, #5 - beq _021DFA8C - cmp r0, #6 - beq _021DFA8C -_021DFA80: - add sp, sp, #4 - mvn r0, #0 - ldmfd sp!, {pc} -_021DFA8C: - ldrb r0, [r2, #0x361] - cmp r0, #0 - bne _021DFAC0 - ldr r1, _021DFAF4 ; =UNK04_0220D334 - mov r0, #1 - mov r2, #0 - bl MOD04_021E1E30 - bl MOD04_02200D6C - mov r0, #3 - bl MOD04_021DF5CC - add sp, sp, #4 - mov r0, #1 - ldmfd sp!, {pc} -_021DFAC0: - mov r1, #1 - ldr r0, _021DFAF0 ; =UNK04_0221053C - strb r1, [r2, #0x2d] - ldr r0, [r0] - ldr r0, [r0] - bl MOD04_021FD45C - ldr r1, _021DFAF0 ; =UNK04_0221053C - mov r0, #0 - ldr r1, [r1] - strb r0, [r1, #0x2d] - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021DFAF0: .word UNK04_0221053C -_021DFAF4: .word UNK04_0220D334 - arm_func_end MOD04_021DFA40 - - arm_func_start MOD04_021DFAF8 -MOD04_021DFAF8: ; 0x021DFAF8 - ldr r2, _021DFB1C ; =UNK04_0221053C - ldr r3, [r2] - cmp r3, #0 - moveq r0, #0 - strne r0, [r3, #0x90] - ldrne r2, [r2] - movne r0, #1 - strne r1, [r2, #0x94] - bx lr - .align 2, 0 -_021DFB1C: .word UNK04_0221053C - arm_func_end MOD04_021DFAF8 - - arm_func_start MOD04_021DFB20 -MOD04_021DFB20: ; 0x021DFB20 - stmdb sp!, {r4, r5, r6, r7, lr} - sub sp, sp, #0x224 - mvn ip, #0 - mov r7, r0 - mov r6, r1 - mov r4, r2 - mov r5, r3 - str ip, [sp, #8] - bl MOD04_021DD6D4 - cmp r0, #0 - bne _021DFB60 - ldr r0, _021DFD04 ; =UNK04_0221053C - ldr r0, [r0] - ldr r0, [r0, #0x24] - cmp r0, #3 - beq _021DFB6C -_021DFB60: - add sp, sp, #0x224 - mov r0, #0 - ldmia sp!, {r4, r5, r6, r7, pc} -_021DFB6C: - bl MOD04_021DF6CC - ldr r1, _021DFD04 ; =UNK04_0221053C - mov r0, #5 - ldr r2, [r1] - str r6, [r2, #0x88] - ldr r1, [r1] - str r4, [r1, #0x8c] - bl MOD04_021DF5CC - mov r0, r7 - bl MOD04_021E1F84 - movs r4, r0 - beq _021DFBB8 - ldr r0, _021DFD04 ; =UNK04_0221053C - mov r1, r4 - ldr r0, [r0] - add r0, r0, #0x1c - bl MOD04_021F05F4 - cmp r0, #0 - bne _021DFBC0 -_021DFBB8: - mov r5, #0xb - b _021DFC8C -_021DFBC0: - ldr r0, _021DFD04 ; =UNK04_0221053C - add r2, sp, #8 - ldr r0, [r0] - mov r1, r4 - add r0, r0, #0x1c - bl MOD04_021F0664 - ldr r0, _021DFD04 ; =UNK04_0221053C - ldr r1, [sp, #8] - ldr r0, [r0] - add r2, sp, #0x10 - add r0, r0, #0x1c - bl MOD04_021F06E4 - ldr r0, [sp, #0x14] - cmp r0, #6 - movne r5, #0xb - bne _021DFC8C - ldr r0, _021DFD08 ; =UNK04_0220D344 - mov r6, #0x30 - add r1, sp, #0xc - add r2, sp, #0x18 - mov r3, #0x2f - strb r6, [sp, #0xc] - bl MOD04_021DE9F4 - add r0, sp, #0xc - mov r1, #0 - mov r2, #0xa - bl strtoul - and r6, r0, #0xff - ldr r0, _021DFD0C ; =UNK04_0220D348 - add r1, sp, #0xc - add r2, sp, #0x18 - mov r3, #0x2f - bl MOD04_021DE9F4 - add r0, sp, #0xc - mov r1, #0 - mov r2, #0xa - bl strtoul - and r0, r0, #0xff - cmp r0, r6 - moveq r5, #0xd - beq _021DFC8C - ldr r6, [sp, #0x238] - ldr r1, _021DFD10 ; =MOD04_021DF12C - mov r0, r4 - mov r3, r5 - mov r2, #0 - str r6, [sp] - bl MOD04_021E9FD0 - add sp, sp, #0x224 - mov r0, #1 - ldmia sp!, {r4, r5, r6, r7, pc} -_021DFC8C: - mov r0, r5 - mov r1, #0 - bl MOD04_021DD6B0 - ldr r0, _021DFD04 ; =UNK04_0221053C - mov r1, #0 - ldr r4, [r0] - mov r0, r5 - str r1, [sp] - ldr r2, [r4, #0x8c] - mov r3, r1 - str r2, [sp, #4] - ldr r4, [r4, #0x88] - mov r2, #1 - blx r4 - ldr r0, _021DFD04 ; =UNK04_0221053C - ldr r0, [r0] - cmp r0, #0 - beq _021DFCF8 - ldr r0, [r0, #0x24] - cmp r0, #5 - bne _021DFCF8 - mov r0, #3 - bl MOD04_021DF5CC - ldr r1, _021DFD14 ; =UNK04_0220D334 - mov r0, #1 - mov r2, #0 - bl MOD04_021E1E30 -_021DFCF8: - mov r0, #1 - add sp, sp, #0x224 - ldmia sp!, {r4, r5, r6, r7, pc} - .align 2, 0 -_021DFD04: .word UNK04_0221053C -_021DFD08: .word UNK04_0220D344 -_021DFD0C: .word UNK04_0220D348 -_021DFD10: .word MOD04_021DF12C -_021DFD14: .word UNK04_0220D334 - arm_func_end MOD04_021DFB20 - - arm_func_start MOD04_021DFD18 -MOD04_021DFD18: ; 0x021DFD18 - stmdb sp!, {r4, r5, r6, r7, lr} - sub sp, sp, #4 - mov r7, r0 - mov r6, r1 - mov r5, r2 - mov r4, r3 - bl MOD04_021DD6D4 - cmp r0, #0 - bne _021DFD50 - ldr r0, _021DFDB4 ; =UNK04_0221053C - ldr r0, [r0] - ldr r0, [r0, #0x24] - cmp r0, #3 - beq _021DFD5C -_021DFD50: - add sp, sp, #4 - mov r0, #0 - ldmia sp!, {r4, r5, r6, r7, pc} -_021DFD5C: - bl MOD04_021DF6CC - ldr r1, _021DFDB4 ; =UNK04_0221053C - mov r2, #0 - ldr r3, [r1] - mov r0, #5 - str r6, [r3, #0x88] - ldr r3, [r1] - str r5, [r3, #0x8c] - ldr r1, [r1] - strb r2, [r1, #0x2c] - bl MOD04_021DF5CC - sub r0, r7, #1 - ldr r5, [sp, #0x18] - ldr r1, _021DFDB8 ; =MOD04_021DF12C - mov r3, r4 - and r0, r0, #0xff - mov r2, #0 - str r5, [sp] - bl MOD04_021EA138 - mov r0, #1 - add sp, sp, #4 - ldmia sp!, {r4, r5, r6, r7, pc} - .align 2, 0 -_021DFDB4: .word UNK04_0221053C -_021DFDB8: .word MOD04_021DF12C - arm_func_end MOD04_021DFD18 - - arm_func_start MOD04_021DFDBC -MOD04_021DFDBC: ; 0x021DFDBC - stmdb sp!, {r4, r5, r6, lr} - sub sp, sp, #0x10 - mov r6, r1 - mov r5, r2 - mov r4, r3 - bl MOD04_021DD6D4 - cmp r0, #0 - bne _021DFDF8 - ldr r0, _021DFE5C ; =UNK04_0221053C - ldr r2, [r0] - ldr r1, [r2, #0x24] - cmp r1, #3 - blt _021DFDF8 - cmp r1, #4 - bne _021DFE04 -_021DFDF8: - add sp, sp, #0x10 - mov r0, #0 - ldmia sp!, {r4, r5, r6, pc} -_021DFE04: - str r6, [r2, #0x78] - ldr r1, [r0] - mov r0, #4 - str r5, [r1, #0x7c] - bl MOD04_021DF5CC - ldr r0, _021DFE5C ; =UNK04_0221053C - ldr r1, [sp, #0x20] - ldr r3, [r0] - ldr r0, [sp, #0x24] - str r4, [sp] - str r1, [sp, #4] - ldr r4, [sp, #0x28] - str r0, [sp, #8] - ldr r2, _021DFE60 ; =MOD04_021DF2B4 - add r0, r3, #0xe0 - add r1, r3, #0x1e0 - mov r3, #0 - str r4, [sp, #0xc] - bl MOD04_021E2174 - mov r0, #1 - add sp, sp, #0x10 - ldmia sp!, {r4, r5, r6, pc} - .align 2, 0 -_021DFE5C: .word UNK04_0221053C -_021DFE60: .word MOD04_021DF2B4 - arm_func_end MOD04_021DFDBC - - arm_func_start MOD04_021DFE64 -MOD04_021DFE64: ; 0x021DFE64 - stmdb sp!, {r4, r5, r6, lr} - movs r4, r0 - mov r6, r2 - mov r5, r3 - moveq r0, #0 - ldmeqia sp!, {r4, r5, r6, pc} - bl MOD04_021DD6D4 - cmp r0, #0 - bne _021DFE9C - ldr r0, _021DFF6C ; =UNK04_0221053C - ldr r2, [r0] - ldr r1, [r2, #0x24] - cmp r1, #0 - beq _021DFEA4 -_021DFE9C: - mov r0, #0 - ldmia sp!, {r4, r5, r6, pc} -_021DFEA4: - str r6, [r2, #0x70] - ldr r1, [r0] - cmp r4, #0 - str r5, [r1, #0x74] - beq _021DFEC4 - ldrh r1, [r4] - cmp r1, #0 - bne _021DFECC -_021DFEC4: - mov r5, #0 - b _021DFF18 -_021DFECC: - ldr r1, [r0] - mov r0, #0 - add r1, r1, #0x2e - mov r2, #0x34 - bl MIi_CpuClear16 - mov r0, r4 - bl MOD04_021DE89C - cmp r0, #0x19 - movhi r5, #0x19 - bhi _021DFF00 - mov r0, r4 - bl MOD04_021DE89C - mov r5, r0 -_021DFF00: - ldr r1, _021DFF6C ; =UNK04_0221053C - mov r0, r4 - ldr r1, [r1] - mov r2, r5, lsl #1 - add r1, r1, #0x2e - bl MIi_CpuCopy16 -_021DFF18: - ldr r0, _021DFF6C ; =UNK04_0221053C - mov r1, #0 - ldr r0, [r0] - add r0, r0, r5, lsl #1 - strh r1, [r0, #0x2e] - bl MOD04_021DDC1C - cmp r0, #4 - beq _021DFF4C - ldr r1, _021DFF70 ; =0xFFFF1596 - mov r0, #2 - bl MOD04_021E0EAC - mov r0, #1 - ldmia sp!, {r4, r5, r6, pc} -_021DFF4C: - mov r0, #1 - bl MOD04_021DF5CC - ldr r0, _021DFF6C ; =UNK04_0221053C - ldr r0, [r0] - ldr r0, [r0, #0x68] - bl MOD04_021EE898 - mov r0, #1 - ldmia sp!, {r4, r5, r6, pc} - .align 2, 0 -_021DFF6C: .word UNK04_0221053C -_021DFF70: .word 0xFFFF1596 - arm_func_end MOD04_021DFE64 - - arm_func_start MOD04_021DFF74 -MOD04_021DFF74: ; 0x021DFF74 - stmdb sp!, {lr} - sub sp, sp, #4 - bl MOD04_021DD984 - cmp r0, #0 - beq _021DFF8C - bl MOD04_021DF5EC -_021DFF8C: - ldr r0, _021E01E4 ; =UNK04_0221053C - ldr r0, [r0] - cmp r0, #0 - addeq sp, sp, #4 - ldmeqia sp!, {pc} - ldr r0, [r0, #0x24] - cmp r0, #0 - addeq sp, sp, #4 - ldmeqia sp!, {pc} - bl MOD04_021DD6D4 - cmp r0, #0 - addne sp, sp, #4 - ldmneia sp!, {pc} - ldr r0, _021E01E4 ; =UNK04_0221053C - ldr r0, [r0] - ldr r0, [r0, #0x24] - cmp r0, #6 - addls pc, pc, r0, lsl #2 - b _021E0194 -_021DFFD8: ; jump table - b _021E0194 ; case 0 - b _021DFFF4 ; case 1 - b _021E0124 ; case 2 - b _021E012C ; case 3 - b _021E012C ; case 4 - b _021E013C ; case 5 - b _021E014C ; case 6 -_021DFFF4: - bl MOD04_021EE6A0 - cmp r0, #1 - beq _021E0014 - cmp r0, #2 - beq _021E00FC - cmp r0, #3 - beq _021E0110 - b _021E0194 -_021E0014: - ldr r0, _021E01E4 ; =UNK04_0221053C - mov r2, #0 - ldr r0, [r0] - ldr r1, [r0, #0xa0] - add r0, r0, #0x1c - bl MOD04_021F0F94 - bl MOD04_021DF414 - cmp r0, #0 - addne sp, sp, #4 - ldmneia sp!, {pc} - ldr r0, _021E01E4 ; =UNK04_0221053C - mov r1, #0 - ldr r0, [r0] - ldr r2, _021E01E8 ; =MOD04_021DF0D4 - mov r3, r1 - add r0, r0, #0x1c - bl MOD04_021F0EB0 - bl MOD04_021DF414 - cmp r0, #0 - addne sp, sp, #4 - ldmneia sp!, {pc} - ldr r0, _021E01E4 ; =UNK04_0221053C - ldr r2, _021E01EC ; =MOD04_021DEF6C - ldr r0, [r0] - mov r1, #3 - add r0, r0, #0x1c - mov r3, #0 - bl MOD04_021F0EB0 - bl MOD04_021DF414 - cmp r0, #0 - addne sp, sp, #4 - ldmneia sp!, {pc} - ldr r0, _021E01E4 ; =UNK04_0221053C - ldr r2, _021E01F0 ; =MOD04_021E20C8 - ldr r0, [r0] - mov r1, #1 - add r0, r0, #0x1c - mov r3, #0 - bl MOD04_021F0EB0 - bl MOD04_021DF414 - cmp r0, #0 - addne sp, sp, #4 - ldmneia sp!, {pc} - ldr r0, _021E01E4 ; =UNK04_0221053C - ldr r2, _021E01F4 ; =MOD04_021E1FE4 - ldr r0, [r0] - mov r1, #2 - add r0, r0, #0x1c - mov r3, #0 - bl MOD04_021F0EB0 - bl MOD04_021DF414 - cmp r0, #0 - addne sp, sp, #4 - ldmneia sp!, {pc} - mov r0, #2 - bl MOD04_021DF5CC - bl MOD04_021E1034 - b _021E0194 -_021E00FC: - ldr r1, _021E01F8 ; =0xFFFFB172 - mov r0, #3 - bl MOD04_021E0EAC - add sp, sp, #4 - ldmfd sp!, {pc} -_021E0110: - ldr r1, _021E01FC ; =0xFFFFB17B - mov r0, #4 - bl MOD04_021E0EAC - add sp, sp, #4 - ldmfd sp!, {pc} -_021E0124: - bl MOD04_021E0F1C - b _021E0194 -_021E012C: - bl MOD04_021E2228 - mov r0, #0 - bl MOD04_021E9568 - b _021E0194 -_021E013C: - mov r0, #1 - bl MOD04_021E9568 - bl MOD04_021E2228 - b _021E0194 -_021E014C: - bl MOD04_021EAA64 - bl MOD04_021E2228 - ldr r0, _021E01E4 ; =UNK04_0221053C - ldr r1, [r0] - ldrb r0, [r1, #0x369] - cmp r0, #2 - beq _021E0174 - ldrb r0, [r1, #0x369] - cmp r0, #3 - bne _021E0180 -_021E0174: - mov r0, #1 - bl MOD04_021E9568 - b _021E0194 -_021E0180: - ldr r0, [r1] - cmp r0, #0 - beq _021E0194 - mov r0, #0 - bl MOD04_021E9568 -_021E0194: - ldr r0, _021E01E4 ; =UNK04_0221053C - ldr r1, [r0] - ldrb r0, [r1, #0x36c] - cmp r0, #1 - addne sp, sp, #4 - ldmneia sp!, {pc} - ldr r0, [r1, #0x364] - cmp r0, #0 - beq _021E01CC - bl MOD04_02202280 - ldr r0, _021E01E4 ; =UNK04_0221053C - mov r1, #0 - ldr r0, [r0] - str r1, [r0, #0x364] -_021E01CC: - ldr r0, _021E01E4 ; =UNK04_0221053C - mov r1, #0 - ldr r0, [r0] - strb r1, [r0, #0x36c] - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021E01E4: .word UNK04_0221053C -_021E01E8: .word MOD04_021DF0D4 -_021E01EC: .word MOD04_021DEF6C -_021E01F0: .word MOD04_021E20C8 -_021E01F4: .word MOD04_021E1FE4 -_021E01F8: .word 0xFFFFB172 -_021E01FC: .word 0xFFFFB17B - arm_func_end MOD04_021DFF74 - - arm_func_start MOD04_021E0200 -MOD04_021E0200: ; 0x021E0200 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r0, _021E0370 ; =UNK04_0221053C - ldr r0, [r0] - cmp r0, #0 - addeq sp, sp, #4 - ldmeqia sp!, {pc} - ldr r0, [r0, #0x364] - cmp r0, #0 - beq _021E023C - bl MOD04_02202280 - ldr r0, _021E0370 ; =UNK04_0221053C - mov r1, #0 - ldr r0, [r0] - str r1, [r0, #0x364] -_021E023C: - ldr r0, _021E0370 ; =UNK04_0221053C - mov r2, #0 - ldr r1, [r0] - strb r2, [r1, #0x36c] - ldr r0, [r0] - ldr r0, [r0, #0x438] - cmp r0, #0 - beq _021E0270 - bl MOD04_02203E80 - ldr r0, _021E0370 ; =UNK04_0221053C - mov r1, #0 - ldr r0, [r0] - str r1, [r0, #0x438] -_021E0270: - bl MOD04_02200D6C - bl MOD04_021FBE7C - ldr r0, _021E0370 ; =UNK04_0221053C - ldr ip, [r0] - ldr r0, [ip, #0x1c] - cmp r0, #0 - beq _021E0324 - mov r1, #0 - mov r2, r1 - mov r3, r1 - add r0, ip, #0x1c - bl MOD04_021F0EB0 - ldr r0, _021E0370 ; =UNK04_0221053C - mov r2, #0 - ldr r0, [r0] - mov r3, r2 - add r0, r0, #0x1c - mov r1, #3 - bl MOD04_021F0EB0 - ldr r0, _021E0370 ; =UNK04_0221053C - mov r2, #0 - ldr r0, [r0] - mov r3, r2 - add r0, r0, #0x1c - mov r1, #1 - bl MOD04_021F0EB0 - ldr r0, _021E0370 ; =UNK04_0221053C - mov r2, #0 - ldr r0, [r0] - mov r1, #2 - add r0, r0, #0x1c - mov r3, r2 - bl MOD04_021F0EB0 - ldr r0, _021E0370 ; =UNK04_0221053C - ldr r0, [r0] - add r0, r0, #0x1c - bl MOD04_021F0F18 - ldr r0, _021E0370 ; =UNK04_0221053C - ldr r0, [r0] - add r0, r0, #0x1c - bl MOD04_021F0F64 - mov r1, #0 - ldr r0, _021E0370 ; =UNK04_0221053C - ldr r0, [r0] - str r1, [r0, #0x1c] -_021E0324: - bl MOD04_021E0E48 - bl MOD04_021E1D90 - bl MOD04_021E854C - bl MOD04_021EA9C4 - ldr r0, _021E0370 ; =UNK04_0221053C - ldr r0, [r0] - ldr r0, [r0] - cmp r0, #0 - beq _021E035C - bl MOD04_021FD704 - ldr r0, _021E0370 ; =UNK04_0221053C - mov r1, #0 - ldr r0, [r0] - str r1, [r0] -_021E035C: - ldr r0, _021E0370 ; =UNK04_0221053C - mov r1, #0 - str r1, [r0] - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021E0370: .word UNK04_0221053C - arm_func_end MOD04_021E0200 - - arm_func_start MOD04_021E0374 -MOD04_021E0374: ; 0x021E0374 - stmdb sp!, {r4, r5, r6, lr} - sub sp, sp, #0x10 - ldr ip, _021E05D8 ; =UNK04_0221053C - mov r6, r1 - mov r5, r2 - mov r4, r3 - str r0, [ip] - bl MOD04_021DD6F0 - ldr r0, _021E05D8 ; =UNK04_0221053C - mov r2, #0 - ldr r1, [r0] - ldr r3, _021E05DC ; =MOD04_021E8F80 - str r2, [r1] - ldr r1, [r0] - ldr r2, _021E05E0 ; =MOD04_021DEF60 - str r3, [r1, #4] - ldr r1, [r0] - ldr ip, [sp, #0x24] - str r2, [r1, #8] - cmp ip, #0 - ldr r2, [r0] - ldr r3, _021E05E4 ; =MOD04_021DEBE4 - ldr r1, _021E05E8 ; =MOD04_021DEBD8 - str r3, [r2, #0xc] - ldr r0, [r0] - ldr r3, [sp, #0x28] - str r1, [r0, #0x10] - ldr r0, _021E05D8 ; =UNK04_0221053C - moveq ip, #0x2000 - ldr r0, [r0] - cmp r3, #0 - str ip, [r0, #0x14] - moveq r3, #0x2000 - ldr r1, _021E05D8 ; =UNK04_0221053C - mov r0, #0 - ldr r2, [r1] - ldr ip, _021E05EC ; =UNK04_02210F94 - str r3, [r2, #0x18] - ldr r2, [r1] - ldr r3, _021E05F0 ; =UNK04_02211094 - str r0, [r2, #0x1c] - ldr r2, [r1] - str r6, [r2, #0x20] - ldr r2, [r1] - str r0, [r2, #0x24] - ldr r2, [r1] - str r0, [r2, #0x28] - ldr r2, [r1] - strb r0, [r2, #0x2c] - ldr r2, [r1] - strb r0, [r2, #0x2d] - ldr r2, [r1] - str r0, [r2, #0x64] - ldr r2, [r1] - str ip, [r2, #0x68] - ldr r2, [r1] - str r3, [r2, #0x6c] - ldr r2, [r1] - str r0, [r2, #0x70] - ldr r2, [r1] - str r0, [r2, #0x74] - ldr r2, [r1] - str r0, [r2, #0x78] - ldr r2, [r1] - str r0, [r2, #0x7c] - ldr r2, [r1] - str r0, [r2, #0x80] - ldr r2, [r1] - str r0, [r2, #0x84] - ldr r2, [r1] - str r0, [r2, #0x88] - ldr r2, [r1] - str r0, [r2, #0x8c] - ldr r2, [r1] - str r0, [r2, #0x90] - ldr r1, [r1] - str r0, [r1, #0x94] - bl MOD04_021DF6CC - ldr r0, _021E05D8 ; =UNK04_0221053C - mov r3, r5 - ldr r2, [r0] - ldr r1, [r6, #0x24] - ldr r0, _021E05F4 ; =MOD04_021DF304 - str r1, [sp] - add r1, r2, #0x2e - str r1, [sp, #4] - str r0, [sp, #8] - mov r5, #0 - add r0, r2, #0x98 - mov r1, r6 - add r2, r2, #0x1c - str r5, [sp, #0xc] - bl MOD04_021E1074 - ldr r0, _021E05D8 ; =UNK04_0221053C - ldr r2, [sp, #0x30] - ldr r5, [r0] - ldr r3, [sp, #0x2c] - str r2, [sp] - add r0, r5, #0x2f8 - add r1, r5, #0x1c - add r2, r5, #0x2e - bl MOD04_021E234C - ldr r0, _021E05D8 ; =UNK04_0221053C - ldr r1, _021E05EC ; =UNK04_02210F94 - ldr r2, [r0] - ldr r0, _021E05F0 ; =UNK04_02211094 - str r1, [sp] - str r0, [sp, #4] - ldr r1, [sp, #0x2c] - ldr r0, [sp, #0x30] - str r1, [sp, #8] - str r0, [sp, #0xc] - add r0, r2, #0x354 - add r1, r2, #0x1c - add r3, r2, #4 - bl MOD04_021EA368 - ldr r1, _021E05D8 ; =UNK04_0221053C - ldr r0, _021E05F8 ; =0x000007D8 - ldr r1, [r1] - add r0, r1, r0 - bl MOD04_021EACB4 - mov r0, r4 - bl strlen - cmp r0, #0x100 - movhs r5, #0xff - bhs _021E0578 - mov r0, r4 - bl strlen - mov r5, r0 -_021E0578: - ldr r1, _021E05EC ; =UNK04_02210F94 - mov r0, r4 - mov r2, r5 - bl MI_CpuCopy8 - ldr r0, [sp, #0x20] - ldr r1, _021E05EC ; =UNK04_02210F94 - mov r2, #0 - strb r2, [r1, r5] - bl strlen - cmp r0, #0x100 - movhs r4, #0xff - bhs _021E05B4 - ldr r0, [sp, #0x20] - bl strlen - mov r4, r0 -_021E05B4: - ldr r0, [sp, #0x20] - ldr r1, _021E05F0 ; =UNK04_02211094 - mov r2, r4 - bl MI_CpuCopy8 - ldr r0, _021E05F0 ; =UNK04_02211094 - mov r1, #0 - strb r1, [r0, r4] - add sp, sp, #0x10 - ldmia sp!, {r4, r5, r6, pc} - .align 2, 0 -_021E05D8: .word UNK04_0221053C -_021E05DC: .word MOD04_021E8F80 -_021E05E0: .word MOD04_021DEF60 -_021E05E4: .word MOD04_021DEBE4 -_021E05E8: .word MOD04_021DEBD8 -_021E05EC: .word UNK04_02210F94 -_021E05F0: .word UNK04_02211094 -_021E05F4: .word MOD04_021DF304 -_021E05F8: .word 0x000007D8 - arm_func_end MOD04_021E0374 - - arm_func_start MOD04_021E05FC -MOD04_021E05FC: ; 0x021E05FC - ldr r0, _021E0624 ; =UNK04_022106C8 - ldr r0, [r0] - cmp r0, #0 - beq _021E061C - ldr r0, [r0, #4] - cmp r0, #5 - moveq r0, #1 - bxeq lr -_021E061C: - mov r0, #0 - bx lr - .align 2, 0 -_021E0624: .word UNK04_022106C8 - arm_func_end MOD04_021E05FC - - arm_func_start MOD04_021E0628 -MOD04_021E0628: ; 0x021E0628 - stmdb sp!, {r4, r5, lr} - sub sp, sp, #0x4c - mov r4, r1 - ldr r1, [r4] - mov r5, r0 - cmp r1, #0 - addne sp, sp, #0x4c - ldmneia sp!, {r4, r5, pc} - ldr r1, _021E07CC ; =UNK04_022106C8 - ldr r2, [r1] - ldr r1, [r2, #4] - cmp r1, #3 - bne _021E0704 - ldrsb r1, [r4, #0x8e] - cmp r1, #0 - bne _021E06DC - ldr r0, [r2, #0x1c] - ldr r1, [r2, #0xc] - add r2, sp, #8 - add r0, r0, #4 - bl DWCi_Acc_LoginIdToUserName - ldr r1, _021E07D0 ; =0x00000705 - add r2, sp, #8 - mov r0, r5 - bl MOD04_021F0B30 - bl MOD04_021E0DB0 - cmp r0, #0 - addne sp, sp, #0x4c - ldmneia sp!, {r4, r5, pc} - ldr r0, _021E07CC ; =UNK04_022106C8 - mov r3, #4 - ldr r1, [r0] - ldr r0, _021E07D4 ; =MOD04_021E0628 - str r3, [r1, #4] - mov r2, #0 - str r0, [sp] - str r2, [sp, #4] - ldr r1, [r4, #4] - mov r0, r5 - mov r3, r2 - bl MOD04_021F0B9C - bl MOD04_021E0DB0 - add sp, sp, #0x4c - cmp r0, #0 - ldmia sp!, {r4, r5, pc} -_021E06DC: - bl MOD04_021F0D54 - ldr r0, _021E07D8 ; =MOD04_021E0C80 - mov r1, #0 - bl MOD04_021E0A00 - ldr r0, _021E07CC ; =UNK04_022106C8 - mov r1, #1 - ldr r0, [r0] - add sp, sp, #0x4c - str r1, [r0, #4] - ldmia sp!, {r4, r5, pc} -_021E0704: - cmp r1, #4 - addne sp, sp, #0x4c - ldmneia sp!, {r4, r5, pc} - ldr r0, [r2, #0x1c] - ldr r1, [r2, #0xc] - add r2, sp, #0x1d - add r0, r0, #4 - bl DWCi_Acc_LoginIdToUserName - add r1, sp, #0x1d - add r0, r4, #0x8e - bl strcmp - cmp r0, #0 - bne _021E079C - ldr r0, _021E07CC ; =UNK04_022106C8 - add r2, sp, #0x32 - ldr r0, [r0] - ldr r1, [r0, #0xc] - add r0, r0, #0x3c - bl DWCi_Acc_LoginIdToUserName - ldr r0, _021E07CC ; =UNK04_022106C8 - ldr r2, [r4, #4] - ldr r1, [r0] - ldr r0, [r1, #0x1c] - add r1, r1, #0x3c - bl DWCi_Acc_SetLoginIdToUserData - mov r0, r5 - bl MOD04_021F0D54 - ldr r0, _021E07CC ; =UNK04_022106C8 - ldr r1, _021E07DC ; =UNK04_022106C4 - ldr r4, [r0] - ldr r0, _021E07E0 ; =UNK04_022106CC - ldr r2, [r1] - ldr r3, [r0] - add r0, r4, #0x48 - add r1, r4, #0x148 - blx r3 - add sp, sp, #0x4c - ldmia sp!, {r4, r5, pc} -_021E079C: - ldr r0, _021E07D4 ; =MOD04_021E0628 - mov r2, #0 - str r0, [sp] - str r2, [sp, #4] - ldr r1, [r4, #4] - mov r0, r5 - mov r3, r2 - bl MOD04_021F0B9C - bl MOD04_021E0DB0 - cmp r0, #0 - add sp, sp, #0x4c - ldmia sp!, {r4, r5, pc} - .align 2, 0 -_021E07CC: .word UNK04_022106C8 -_021E07D0: .word 0x00000705 -_021E07D4: .word MOD04_021E0628 -_021E07D8: .word MOD04_021E0C80 -_021E07DC: .word UNK04_022106C4 -_021E07E0: .word UNK04_022106CC - arm_func_end MOD04_021E0628 - - arm_func_start MOD04_021E07E4 -MOD04_021E07E4: ; 0x021E07E4 - stmdb sp!, {lr} - sub sp, sp, #0x3d4 - bl MOD04_021D988C - cmp r0, #0x15 - bne _021E08BC - add r0, sp, #0 - bl MOD04_021D97F8 - ldr r0, _021E09DC ; =UNK04_022106C8 - add r1, sp, #0x4a - ldr r0, [r0] - add r0, r0, #0x48 - bl strcpy - ldr r0, _021E09DC ; =UNK04_022106C8 - add r1, sp, #0x100 - ldr r0, [r0] - add r1, r1, #0x77 - add r0, r0, #0x148 - bl strcpy - bl MOD04_021D991C - ldr r1, _021E09DC ; =UNK04_022106C8 - mov r0, #0 - ldr r1, [r1] - mov r2, r0 - ldr r1, [r1, #0x24] - bl MOD04_021DD904 - ldr r0, _021E09DC ; =UNK04_022106C8 - mov r2, #0 - ldr r1, [r0] - str r2, [r1, #0x24] - ldr r0, [r0] - ldr r0, [r0, #0x1c] - bl DWCi_Acc_IsAuthentic - cmp r0, #0 - beq _021E0898 - ldr r0, _021E09DC ; =UNK04_022106C8 - ldr r1, _021E09E0 ; =UNK04_022106C4 - ldr ip, [r0] - ldr r0, _021E09E4 ; =UNK04_022106CC - ldr r2, [r1] - ldr r3, [r0] - add r0, ip, #0x48 - add r1, ip, #0x148 - blx r3 - add sp, sp, #0x3d4 - ldmfd sp!, {pc} -_021E0898: - ldr r0, _021E09DC ; =UNK04_022106C8 - ldr r2, _021E09E8 ; =MOD04_021E0C98 - ldr r1, [r0] - mov r3, #3 - add r0, r1, #0x48 - add r1, r1, #0x148 - bl MOD04_021E0BE0 - add sp, sp, #0x3d4 - ldmfd sp!, {pc} -_021E08BC: - bl MOD04_021D988C - cmp r0, #0 - addeq sp, sp, #0x3d4 - ldmeqia sp!, {pc} - bl OS_GetTick - ldr r3, _021E09DC ; =UNK04_022106C8 - ldr r2, _021E09EC ; =0x000082EA - ldr ip, [r3] - mov r3, #0 - ldr lr, [ip, #0x28] - ldr ip, [ip, #0x2c] - subs lr, r0, lr - sbc r0, r1, ip - mov r1, r0, lsl #6 - orr r1, r1, lr, lsr #26 - mov r0, lr, lsl #6 - bl _ll_udiv - ldr r2, _021E09F0 ; =0x00002710 - cmp r1, #0 - cmpeq r0, r2 - bls _021E0958 - add r0, sp, #0x1c4 - bl MOD04_021D97F8 - bl MOD04_021D991C - ldr r1, _021E09DC ; =UNK04_022106C8 - mov r0, #0 - ldr r1, [r1] - mov r2, r0 - ldr r1, [r1, #0x24] - bl MOD04_021DD904 - ldr r0, _021E09DC ; =UNK04_022106C8 - mov r2, #0 - ldr r1, [r0] - mov r0, #2 - str r2, [r1, #0x24] - ldr r1, [sp, #0x1c4] - bl MOD04_021E0EAC - add sp, sp, #0x3d4 - ldmfd sp!, {pc} -_021E0958: - bl MOD04_021D991C - add r0, sp, #0x388 - mov r1, #0 - mov r2, #0x48 - bl MI_CpuFill8 - ldr r0, _021E09DC ; =UNK04_022106C8 - ldr r0, [r0] - ldr r0, [r0, #0x10] - bl MOD04_021DE89C - ldr r1, _021E09DC ; =UNK04_022106C8 - mov r2, r0, lsl #1 - ldr r1, [r1] - add r2, r2, #2 - ldr r0, [r1, #0x10] - add r1, sp, #0x388 - bl MI_CpuCopy8 - ldr r0, _021E09DC ; =UNK04_022106C8 - ldr r1, _021E09F4 ; =0x00000251 - ldr r2, [r0] - add r0, sp, #0x3bc - add r1, r2, r1 - bl strcpy - ldr r2, _021E09F8 ; =MOD04_021DD944 - ldr r0, _021E09DC ; =UNK04_022106C8 - str r2, [sp, #0x3c8] - ldr r2, _021E09FC ; =MOD04_021DD904 - ldr r1, [r0] - str r2, [sp, #0x3cc] - ldr r1, [r1, #0x24] - add r0, sp, #0x388 - bl MOD04_021D9ACC - add sp, sp, #0x3d4 - ldmfd sp!, {pc} - .align 2, 0 -_021E09DC: .word UNK04_022106C8 -_021E09E0: .word UNK04_022106C4 -_021E09E4: .word UNK04_022106CC -_021E09E8: .word MOD04_021E0C98 -_021E09EC: .word 0x000082EA -_021E09F0: .word 0x00002710 -_021E09F4: .word 0x00000251 -_021E09F8: .word MOD04_021DD944 -_021E09FC: .word MOD04_021DD904 - arm_func_end MOD04_021E07E4 - - arm_func_start MOD04_021E0A00 -MOD04_021E0A00: ; 0x021E0A00 - stmdb sp!, {r4, r5, lr} - sub sp, sp, #0x4c - mov r5, r0 - mov r4, r1 - add r0, sp, #0 - mov r1, #0 - mov r2, #0x48 - bl MI_CpuFill8 - ldr r0, _021E0BB8 ; =UNK04_022106C8 - ldr r2, _021E0BBC ; =UNK04_022106CC - ldr r1, _021E0BC0 ; =UNK04_022106C4 - ldr r0, [r0] - str r5, [r2] - str r4, [r1] - ldr r0, [r0, #0x1c] - bl DWCi_Acc_IsAuthentic - cmp r0, #0 - beq _021E0A68 - ldr r0, _021E0BB8 ; =UNK04_022106C8 - ldr r1, [r0] - ldr r0, [r1, #0x1c] - add r2, r1, #0x248 - ldr r1, [r0, #0x24] - add r0, r0, #0x10 - bl DWCi_Acc_LoginIdToUserName - b _021E0B1C -_021E0A68: - ldr r0, _021E0BB8 ; =UNK04_022106C8 - ldr r0, [r0] - add r0, r0, #0x3c - bl DWCi_Acc_IsValidLoginId - cmp r0, #0 - bne _021E0AD0 - ldr r0, _021E0BB8 ; =UNK04_022106C8 - ldr r0, [r0] - ldr r0, [r0, #0x1c] - add r0, r0, #4 - bl DWCi_Acc_CheckConsoleUserId - cmp r0, #0 - beq _021E0ABC - ldr r0, _021E0BB8 ; =UNK04_022106C8 - ldr r1, [r0] - ldr r0, [r1, #0x1c] - add r3, r1, #0x3c - add r0, r0, #4 - ldmia r0, {r0, r1, r2} - stmia r3, {r0, r1, r2} - b _021E0B04 -_021E0ABC: - ldr r0, _021E0BB8 ; =UNK04_022106C8 - ldr r0, [r0] - add r0, r0, #0x3c - bl DWCi_Acc_CreateTempLoginId - b _021E0B04 -_021E0AD0: - bl OS_GetTick - ldr r2, _021E0BC4 ; =0x6C078965 - ldr r3, _021E0BC8 ; =0x5D588B65 - umull ip, r4, r0, r2 - mla r4, r0, r3, r4 - ldr r3, _021E0BB8 ; =UNK04_022106C8 - ldr r0, _021E0BCC ; =0x00269EC3 - mla r4, r1, r2, r4 - adds r0, ip, r0 - ldr r3, [r3] - adc r1, r4, #0 - add r0, r3, #0x3c - bl DWCi_Acc_SetPlayerId -_021E0B04: - ldr r0, _021E0BB8 ; =UNK04_022106C8 - ldr r2, [r0] - ldr r1, [r2, #0xc] - add r0, r2, #0x3c - add r2, r2, #0x248 - bl DWCi_Acc_LoginIdToUserName -_021E0B1C: - ldr r0, _021E0BB8 ; =UNK04_022106C8 - ldr r0, [r0] - ldr r0, [r0, #0x10] - bl MOD04_021DE89C - ldr r1, _021E0BB8 ; =UNK04_022106C8 - mov r2, r0, lsl #1 - ldr r1, [r1] - add r2, r2, #2 - ldr r0, [r1, #0x10] - add r1, sp, #0 - bl MI_CpuCopy8 - ldr r0, _021E0BB8 ; =UNK04_022106C8 - ldr r1, _021E0BD0 ; =0x00000251 - ldr r2, [r0] - add r0, sp, #0x34 - add r1, r2, r1 - bl strcpy - ldr r4, _021E0BD4 ; =MOD04_021DD944 - ldr r3, _021E0BD8 ; =MOD04_021DD904 - ldr r1, _021E0BDC ; =0x00001C10 - mov r0, #0 - mov r2, #4 - str r4, [sp, #0x40] - str r3, [sp, #0x44] - bl MOD04_021DD924 - ldr r1, _021E0BB8 ; =UNK04_022106C8 - mov r4, r0 - ldr r0, [r1] - str r4, [r0, #0x24] - bl OS_GetTick - ldr r2, _021E0BB8 ; =UNK04_022106C8 - ldr r2, [r2] - str r0, [r2, #0x28] - str r1, [r2, #0x2c] - mov r1, r4 - add r0, sp, #0 - bl MOD04_021D9ACC - add sp, sp, #0x4c - ldmia sp!, {r4, r5, pc} - .align 2, 0 -_021E0BB8: .word UNK04_022106C8 -_021E0BBC: .word UNK04_022106CC -_021E0BC0: .word UNK04_022106C4 -_021E0BC4: .word 0x6C078965 -_021E0BC8: .word 0x5D588B65 -_021E0BCC: .word 0x00269EC3 -_021E0BD0: .word 0x00000251 -_021E0BD4: .word MOD04_021DD944 -_021E0BD8: .word MOD04_021DD904 -_021E0BDC: .word 0x00001C10 - arm_func_end MOD04_021E0A00 - - arm_func_start MOD04_021E0BE0 -MOD04_021E0BE0: ; 0x021E0BE0 - stmdb sp!, {r4, r5, r6, lr} - sub sp, sp, #0x10 - ldr r4, _021E0C7C ; =UNK04_022106C8 - mov r6, r1 - ldr r4, [r4] - mov r1, r0 - add r0, r4, #0x48 - mov r5, r2 - mov r4, r3 - bl strcpy - ldr r0, _021E0C7C ; =UNK04_022106C8 - mov r1, r6 - ldr r0, [r0] - add r0, r0, #0x148 - bl strcpy - ldr r0, _021E0C7C ; =UNK04_022106C8 - ldr r6, [r0] - bl OS_GetTick - str r0, [r6, #0x34] - str r1, [r6, #0x38] - mov r3, #1 - ldr r0, _021E0C7C ; =UNK04_022106C8 - str r3, [r6, #0x30] - ldr r2, [r0] - mov r1, #0 - str r1, [sp] - str r5, [sp, #4] - str r1, [sp, #8] - ldr r0, [r2] - add r1, r2, #0x48 - add r2, r2, #0x148 - bl MOD04_021F0D8C - bl MOD04_021E0DB0 - cmp r0, #0 - ldreq r0, _021E0C7C ; =UNK04_022106C8 - ldreq r0, [r0] - streq r4, [r0, #4] - add sp, sp, #0x10 - ldmia sp!, {r4, r5, r6, pc} - .align 2, 0 -_021E0C7C: .word UNK04_022106C8 - arm_func_end MOD04_021E0BE0 - - arm_func_start MOD04_021E0C80 -MOD04_021E0C80: ; 0x021E0C80 - ldr ip, _021E0C90 ; =MOD04_021E0BE0 - ldr r2, _021E0C94 ; =MOD04_021E0C98 - mov r3, #2 - bx ip - .align 2, 0 -_021E0C90: .word MOD04_021E0BE0 -_021E0C94: .word MOD04_021E0C98 - arm_func_end MOD04_021E0C80 - - arm_func_start MOD04_021E0C98 -MOD04_021E0C98: ; 0x021E0C98 - stmdb sp!, {r4, lr} - sub sp, sp, #8 - ldr r3, _021E0DA0 ; =UNK04_022106C8 - mov r2, #0 - ldr ip, [r3] - mov r4, r1 - str r2, [ip, #0x30] - ldr r1, [r4] - cmp r1, #0 - bne _021E0D90 - ldr ip, [r3] - ldr r1, [ip, #4] - cmp r1, #2 - bne _021E0D5C - ldr r1, [ip, #0x1c] - ldr r0, [r4, #4] - ldr r1, [r1, #0x1c] - cmp r1, r0 - bne _021E0D48 - ldr r1, _021E0DA4 ; =UNK04_0220D34C - mov r3, #5 - mov r0, #1 - str r3, [ip, #4] - bl MOD04_021E1E30 - bl MOD04_021E0DB0 - cmp r0, #0 - addne sp, sp, #8 - ldmneia sp!, {r4, pc} - ldr r0, _021E0DA0 ; =UNK04_022106C8 - ldr r1, [r4, #4] - ldr r3, [r0] - mov r0, #0 - ldr r2, [r3, #0x18] - ldr r3, [r3, #0x14] - blx r3 - bl MOD04_021DF7C4 - cmp r0, #0 - addne sp, sp, #8 - ldmneia sp!, {r4, pc} - ldr r0, [r4, #4] - bl MOD04_021EA1E0 - add sp, sp, #8 - cmp r0, #0 - ldmia sp!, {r4, pc} -_021E0D48: - ldr r1, _021E0DA8 ; =0xFFFF15A0 - mov r0, #6 - bl MOD04_021E0EAC - add sp, sp, #8 - ldmia sp!, {r4, pc} -_021E0D5C: - cmp r1, #3 - addne sp, sp, #8 - ldmneia sp!, {r4, pc} - ldr r1, _021E0DAC ; =MOD04_021E0628 - mov r3, r2 - str r1, [sp] - str r2, [sp, #4] - ldr r1, [r4, #4] - bl MOD04_021F0B9C - bl MOD04_021E0DB0 - add sp, sp, #8 - cmp r0, #0 - ldmia sp!, {r4, pc} -_021E0D90: - mov r0, r1 - bl MOD04_021E0DB0 - add sp, sp, #8 - ldmia sp!, {r4, pc} - .align 2, 0 -_021E0DA0: .word UNK04_022106C8 -_021E0DA4: .word UNK04_0220D34C -_021E0DA8: .word 0xFFFF15A0 -_021E0DAC: .word MOD04_021E0628 - arm_func_end MOD04_021E0C98 - - arm_func_start MOD04_021E0DB0 -MOD04_021E0DB0: ; 0x021E0DB0 - stmdb sp!, {r4, lr} - movs r4, r0 - moveq r0, #0 - ldmeqia sp!, {r4, pc} - cmp r4, #4 - addls pc, pc, r4, lsl #2 - b _021E0E0C -_021E0DCC: ; jump table - b _021E0E0C ; case 0 - b _021E0DE0 ; case 1 - b _021E0DEC ; case 2 - b _021E0DF8 ; case 3 - b _021E0E04 ; case 4 -_021E0DE0: - mov r0, #9 - mvn r2, #0 - b _021E0E0C -_021E0DEC: - mov r0, #9 - mvn r2, #1 - b _021E0E0C -_021E0DF8: - mov r0, #6 - mvn r2, #9 - b _021E0E0C -_021E0E04: - mov r0, #6 - mvn r2, #0x13 -_021E0E0C: - ldr r1, _021E0E20 ; =0xFFFF11B8 - add r1, r2, r1 - bl MOD04_021E0EAC - mov r0, r4 - ldmia sp!, {r4, pc} - .align 2, 0 -_021E0E20: .word 0xFFFF11B8 - arm_func_end MOD04_021E0DB0 - - arm_func_start MOD04_021E0E24 -MOD04_021E0E24: ; 0x021E0E24 - ldr r0, _021E0E44 ; =UNK04_022106C8 - ldr r2, [r0] - cmp r2, #0 - movne r1, #0 - strne r1, [r2, #4] - ldrne r0, [r0] - strne r1, [r0, #0x30] - bx lr - .align 2, 0 -_021E0E44: .word UNK04_022106C8 - arm_func_end MOD04_021E0E24 - - arm_func_start MOD04_021E0E48 -MOD04_021E0E48: ; 0x021E0E48 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r0, _021E0EA8 ; =UNK04_022106C8 - ldr r0, [r0] - ldr r0, [r0, #0x24] - cmp r0, #0 - beq _021E0E94 - bl MOD04_021D9974 - bl MOD04_021D991C - ldr r1, _021E0EA8 ; =UNK04_022106C8 - mov r0, #0 - ldr r1, [r1] - mov r2, r0 - ldr r1, [r1, #0x24] - bl MOD04_021DD904 - ldr r0, _021E0EA8 ; =UNK04_022106C8 - mov r1, #0 - ldr r0, [r0] - str r1, [r0, #0x24] -_021E0E94: - ldr r0, _021E0EA8 ; =UNK04_022106C8 - mov r1, #0 - str r1, [r0] - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021E0EA8: .word UNK04_022106C8 - arm_func_end MOD04_021E0E48 - - arm_func_start MOD04_021E0EAC -MOD04_021E0EAC: ; 0x021E0EAC - stmdb sp!, {r4, lr} - ldr r2, _021E0EFC ; =UNK04_022106C8 - mov r4, r0 - ldr r2, [r2] - cmp r2, #0 - ldmeqia sp!, {r4, pc} - cmp r4, #0 - ldmeqia sp!, {r4, pc} - bl MOD04_021DD6B0 - ldr r0, _021E0EFC ; =UNK04_022106C8 - ldr r0, [r0] - ldr r3, [r0, #0x14] - cmp r3, #0 - beq _021E0EF4 - ldr r2, [r0, #0x18] - mov r0, r4 - mov r1, #0 - blx r3 -_021E0EF4: - bl MOD04_021E0E24 - ldmia sp!, {r4, pc} - .align 2, 0 -_021E0EFC: .word UNK04_022106C8 - arm_func_end MOD04_021E0EAC - - arm_func_start MOD04_021E0F00 -MOD04_021E0F00: ; 0x021E0F00 - ldr r0, _021E0F18 ; =UNK04_022106C8 - ldr r0, [r0] - cmp r0, #0 - ldrne r0, [r0, #0x1c] - moveq r0, #0 - bx lr - .align 2, 0 -_021E0F18: .word UNK04_022106C8 - arm_func_end MOD04_021E0F00 - - arm_func_start MOD04_021E0F1C -MOD04_021E0F1C: ; 0x021E0F1C - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r0, _021E1024 ; =UNK04_022106C8 - ldr r0, [r0] - cmp r0, #0 - addeq sp, sp, #4 - ldmeqia sp!, {pc} - bl MOD04_021DD6D4 - cmp r0, #0 - addne sp, sp, #4 - ldmneia sp!, {pc} - ldr r0, _021E1024 ; =UNK04_022106C8 - ldr r1, [r0] - ldr r0, [r1, #4] - cmp r0, #5 - addls pc, pc, r0, lsl #2 - b _021E101C -_021E0F60: ; jump table - b _021E101C ; case 0 - b _021E0F78 ; case 1 - b _021E0F84 ; case 2 - b _021E0F84 ; case 3 - b _021E0F84 ; case 4 - b _021E101C ; case 5 -_021E0F78: - bl MOD04_021E07E4 - add sp, sp, #4 - ldmfd sp!, {pc} -_021E0F84: - ldr r0, [r1] - cmp r0, #0 - beq _021E0FA0 - ldr r1, [r0] - cmp r1, #0 - beq _021E0FA0 - bl MOD04_021F0F18 -_021E0FA0: - ldr r0, _021E1024 ; =UNK04_022106C8 - ldr r0, [r0] - ldr r0, [r0, #0x30] - cmp r0, #0 - addeq sp, sp, #4 - ldmeqia sp!, {pc} - bl OS_GetTick - ldr r3, _021E1024 ; =UNK04_022106C8 - ldr r2, _021E1028 ; =0x000082EA - ldr ip, [r3] - mov r3, #0 - ldr lr, [ip, #0x34] - ldr ip, [ip, #0x38] - subs lr, r0, lr - sbc r0, r1, ip - mov r1, r0, lsl #6 - orr r1, r1, lr, lsr #26 - mov r0, lr, lsl #6 - bl _ll_udiv - ldr r2, _021E102C ; =0x0000EA60 - cmp r1, #0 - cmpeq r0, r2 - addls sp, sp, #4 - ldmlsia sp!, {pc} - ldr r1, _021E1030 ; =0xFFFF1172 - mov r0, #6 - bl MOD04_021E0EAC - ldr r0, _021E1024 ; =UNK04_022106C8 - mov r1, #0 - ldr r0, [r0] - str r1, [r0, #0x30] -_021E101C: - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021E1024: .word UNK04_022106C8 -_021E1028: .word 0x000082EA -_021E102C: .word 0x0000EA60 -_021E1030: .word 0xFFFF1172 - arm_func_end MOD04_021E0F1C - - arm_func_start MOD04_021E1034 -MOD04_021E1034: ; 0x021E1034 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r0, _021E106C ; =MOD04_021E0C80 - mov r1, #0 - bl MOD04_021E0A00 - ldr r0, _021E1070 ; =UNK04_022106C8 - mov r3, #1 - ldr r2, [r0] - mov r1, #0 - str r3, [r2, #4] - ldr r0, [r0] - str r1, [r0, #0x30] - add sp, sp, #4 - ldmfd sp!, {pc} - .align 2, 0 -_021E106C: .word MOD04_021E0C80 -_021E1070: .word UNK04_022106C8 - arm_func_end MOD04_021E1034 - - arm_func_start MOD04_021E1074 -MOD04_021E1074: ; 0x021E1074 - stmdb sp!, {r4, r5, r6, lr} - ldr ip, _021E10F4 ; =UNK04_022106C8 - mov r6, r1 - mov r5, r2 - mov r1, #0 - mov r2, #0x260 - mov r4, r3 - str r0, [ip] - bl MI_CpuFill8 - ldr r0, _021E10F4 ; =UNK04_022106C8 - mov r2, #0 - ldr r1, [r0] - ldr ip, [sp, #0x10] - str r5, [r1] - ldr r1, [r0] - ldr r5, [sp, #0x14] - str r2, [r1, #4] - ldr r1, [r0] - ldr r3, [sp, #0x18] - str r4, [r1, #8] - ldr r1, [r0] - ldr r2, [sp, #0x1c] - str ip, [r1, #0xc] - ldr r1, [r0] - str r5, [r1, #0x10] - ldr r1, [r0] - str r3, [r1, #0x14] - ldr r1, [r0] - str r2, [r1, #0x18] - ldr r0, [r0] - str r6, [r0, #0x1c] - ldmia sp!, {r4, r5, r6, pc} - .align 2, 0 -_021E10F4: .word UNK04_022106C8 - arm_func_end MOD04_021E1074 - arm_func_start MOD04_021E10F8 MOD04_021E10F8: ; 0x021E10F8 ldr r0, _021E1108 ; =UNK04_022106D0 @@ -60012,12 +50350,13 @@ _0220BAB8: arm_func_end MOD04_url_strlen .section .rodata - .global UNK_0220BAC4 + + .global UNK04_0220BAC4 UNK04_0220BAC4: ; 0x0220BAC4 .byte 0x03, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00 .byte 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00 - .global UNK_0220BADC + .global UNK04_0220BADC UNK04_0220BADC: ; 0x0220BADC .byte 0x57, 0x61, 0x79, 0x70, 0x6F, 0x72, 0x74, 0x32 @@ -60168,1025 +50507,6 @@ UNK04_0220BE70: ; 0x0220BE70 .byte 0x0A, 0x00, 0x00, 0x00 .section .data - .global UNK_0220BEB4 -UNK04_0220BEB4: ; 0x0220BEB4 - .word UNK04_0220BED0 - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x4E, 0x00, 0x00 - - .global UNK04_0220BED0 -UNK04_0220BED0: ; 0x0220BED0 - .asciz "https://nas.test.nintendowifi.net/ac" - - .balign 4, 0 - .global UNK_0220BEF8 -UNK04_0220BEF8: ; 0x0220BEF8 - .byte 0x61, 0x63, 0x63, 0x74, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x00, 0x00 - - .global UNK_0220BF04 -UNK04_0220BF04: ; 0x0220BF04 - .byte 0x61, 0x63, 0x74, 0x69, 0x6F, 0x6E, 0x00, 0x00 - - .global UNK_0220BF0C -UNK04_0220BF0C: ; 0x0220BF0C - .byte 0x6C, 0x6F, 0x67, 0x69, 0x6E, 0x00, 0x00, 0x00 - - .global UNK_0220BF14 -UNK04_0220BF14: ; 0x0220BF14 - .byte 0x67, 0x73, 0x62, 0x72, 0x63, 0x64, 0x00, 0x00 - - .global UNK_0220BF1C -UNK04_0220BF1C: ; 0x0220BF1C - .asciz "Y" - - .balign 4, 0 - .global UNK_0220BF20 -UNK04_0220BF20: ; 0x0220BF20 - .byte 0x69, 0x73, 0x77, 0x66, 0x63, 0x00, 0x00, 0x00 - - .global UNK_0220BF28 -UNK04_0220BF28: ; 0x0220BF28 - .byte 0x69, 0x6E, 0x67, 0x61, 0x6D, 0x65, 0x73, 0x6E, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220BF34 -UNK04_0220BF34: ; 0x0220BF34 - .byte 0x44, 0x61, 0x74, 0x65, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220BF3C -UNK04_0220BF3C: ; 0x0220BF3C - .byte 0x68, 0x74, 0x74, 0x70, 0x72, 0x65, 0x73, 0x75, 0x6C, 0x74, 0x00, 0x00 - - .global UNK_0220BF48 -UNK04_0220BF48: ; 0x0220BF48 - .byte 0x72, 0x65, 0x74, 0x75, 0x72, 0x6E, 0x63, 0x64, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220BF54 -UNK04_0220BF54: ; 0x0220BF54 - .byte 0x74, 0x6F, 0x6B, 0x65, 0x6E, 0x00, 0x00, 0x00 - - .global UNK_0220BF5C -UNK04_0220BF5C: ; 0x0220BF5C - .byte 0x6C, 0x6F, 0x63, 0x61, 0x74, 0x6F, 0x72, 0x00 - - .global UNK_0220BF64 -UNK04_0220BF64: ; 0x0220BF64 - .byte 0x63, 0x68, 0x61, 0x6C, 0x6C, 0x65, 0x6E, 0x67, 0x65, 0x00, 0x00, 0x00 - - .global UNK_0220BF70 -UNK04_0220BF70: ; 0x0220BF70 - .byte 0x64, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6D, 0x65, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220BF7C -UNK04_0220BF7C: ; 0x0220BF7C - .byte 0x53, 0x65, 0x74, 0x2D, 0x43, 0x6F, 0x6F, 0x6B, 0x69, 0x65, 0x00, 0x00 - - .global UNK_0220BF88 -UNK04_0220BF88: ; 0x0220BF88 - .byte 0x41, 0x4C, 0x4C, 0x4F, 0x43, 0x20, 0x62, 0x6D, 0x77, 0x6F, 0x72, 0x6B, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220BF98 -UNK04_0220BF98: ; 0x0220BF98 - .byte 0x46, 0x52, 0x45, 0x45, 0x20, 0x62, 0x6D, 0x77, 0x6F, 0x72, 0x6B, 0x00 - - .balign 4, 0 - .global UNK_0220BFA4 -UNK04_0220BFA4: ; 0x0220BFA4 - .asciz "https://nas.nintendowifi.net/ac" - - .balign 4, 0 - .global UNK_0220BFC4 -UNK04_0220BFC4: ; 0x0220BFC4 - .byte 0x46, 0x52, 0x45, 0x45, 0x20, 0x44, 0x57, 0x43, 0x61, 0x75, 0x74, 0x68, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220BFD4 -UNK04_0220BFD4: ; 0x0220BFD4 - .byte 0x41, 0x4C, 0x4C, 0x4F, 0x43, 0x20, 0x44, 0x57, 0x43, 0x61, 0x75, 0x74, 0x68, 0x00, 0x00, 0x00 - - .global UNK_0220BFE4 -UNK04_0220BFE4: ; 0x0220BFE4 - .byte 0x25, 0x30, 0x33, 0x64, 0x25, 0x30, 0x33, 0x64, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220BFF0 -UNK04_0220BFF0: ; 0x0220BFF0 - .byte 0x73, 0x64, 0x6B, 0x76, 0x65, 0x72, 0x00, 0x00 - - .global UNK_0220BFF8 -UNK04_0220BFF8: ; 0x0220BFF8 - .byte 0x75, 0x73, 0x65, 0x72, 0x69, 0x64, 0x00, 0x00 - - .global UNK_0220C000 -UNK04_0220C000: ; 0x0220C000 - .byte 0x70, 0x61, 0x73, 0x73, 0x77, 0x64, 0x00, 0x00 - - .global UNK_0220C008 -UNK04_0220C008: ; 0x0220C008 - .byte 0x62, 0x73, 0x73, 0x69, 0x64, 0x00, 0x00, 0x00 - - .global UNK_0220C010 -UNK04_0220C010: ; 0x0220C010 - .byte 0x61, 0x70, 0x69, 0x6E, 0x66, 0x6F, 0x00, 0x00 - - .global UNK_0220C018 -UNK04_0220C018: ; 0x0220C018 - .byte 0x67, 0x61, 0x6D, 0x65, 0x63, 0x64, 0x00, 0x00 - - .global UNK_0220C020 -UNK04_0220C020: ; 0x0220C020 - .byte 0x6D, 0x61, 0x6B, 0x65, 0x72, 0x63, 0x64, 0x00 - - .global UNK_0220C028 -UNK04_0220C028: ; 0x0220C028 - .byte 0x75, 0x6E, 0x69, 0x74, 0x63, 0x64, 0x00, 0x00 - - .global UNK_0220C030 -UNK04_0220C030: ; 0x0220C030 - .byte 0x6D, 0x61, 0x63, 0x61, 0x64, 0x72, 0x00, 0x00 - - .global UNK_0220C038 -UNK04_0220C038: ; 0x0220C038 - .byte 0x6C, 0x61, 0x6E, 0x67, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C040 -UNK04_0220C040: ; 0x0220C040 - .byte 0x62, 0x69, 0x72, 0x74, 0x68, 0x00, 0x00, 0x00 - - .global UNK_0220C048 -UNK04_0220C048: ; 0x0220C048 - .byte 0x64, 0x65, 0x76, 0x74, 0x69, 0x6D, 0x65, 0x00 - - .global UNK_0220C050 -UNK04_0220C050: ; 0x0220C050 - .byte 0x64, 0x65, 0x76, 0x6E, 0x61, 0x6D, 0x65, 0x00 - - .global UNK_0220C058 -UNK04_0220C058: ; 0x0220C058 - .byte 0x73, 0x73, 0x69, 0x64, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C060 -UNK04_0220C060: ; 0x0220C060 - .byte 0x4E, 0x69, 0x74, 0x72, 0x6F, 0x20, 0x57, 0x69, 0x46, 0x69, 0x20, 0x53, 0x44, 0x4B, 0x2F, 0x25 - .byte 0x64, 0x2E, 0x25, 0x64, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C078 -UNK04_0220C078: ; 0x0220C078 - .byte 0x55, 0x73, 0x65, 0x72, 0x2D, 0x41, 0x67, 0x65, 0x6E, 0x74, 0x00, 0x00 - - .global UNK_0220C084 -UNK04_0220C084: ; 0x0220C084 - .byte 0x48, 0x54, 0x54, 0x50, 0x5F, 0x58, 0x5F, 0x47, 0x41, 0x4D, 0x45, 0x43, 0x44, 0x00, 0x00, 0x00 - - .global UNK_0220C094 -UNK04_0220C094: ; 0x0220C094 - .byte 0x25, 0x30, 0x31, 0x33, 0x6C, 0x6C, 0x75, 0x00 - - .global UNK_0220C09C -UNK04_0220C09C: ; 0x0220C09C - .byte 0x25, 0x30, 0x33, 0x75, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C0A4 -UNK04_0220C0A4: ; 0x0220C0A4 - .byte 0x25, 0x30, 0x32, 0x78, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C0AC -UNK04_0220C0AC: ; 0x0220C0AC - .byte 0x25, 0x30, 0x32, 0x78, 0x25, 0x30, 0x32, 0x78, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C0B8 -UNK04_0220C0B8: ; 0x0220C0B8 - .byte 0x25, 0x30, 0x32, 0x64, 0x25, 0x30, 0x32, 0x64, 0x25, 0x30, 0x32, 0x64, 0x25, 0x30, 0x32, 0x64 - .byte 0x25, 0x30, 0x32, 0x64, 0x25, 0x30, 0x32, 0x64, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C0D4 -UNK04_0220C0D4: ; 0x0220C0D4 - .byte 0x25, 0x30, 0x32, 0x64, 0x3A, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x2D, 0x30, 0x30, 0x00 - - .global UNK_0220C0E4 -UNK04_0220C0E4: ; 0x0220C0E4 - .word UNK04_0220CF18, UNK04_0220CDEC, UNK04_0220D0CC, UNK04_0220D1A8 - .word UNK04_0220C684, UNK04_0220C920, UNK04_0220CA08, UNK04_0220C7D0 - .word UNK04_0220CCD4, UNK04_0220CBB4, UNK04_0220CACC - - .global UNK_0220C110 -UNK04_0220C110: ; 0x0220C110 - .byte 0x46, 0x52, 0x45, 0x45, 0x20, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5F, 0x65, 0x6E, 0x74, 0x72, 0x79 - .byte 0x5B, 0x69, 0x5D, 0x2E, 0x6C, 0x61, 0x62, 0x65, 0x6C, 0x00, 0x00, 0x00 - - .global UNK_0220C12C -UNK04_0220C12C: ; 0x0220C12C - .byte 0x46, 0x52, 0x45, 0x45, 0x20, 0x61, 0x72, 0x72, 0x61, 0x79, 0x5F, 0x65, 0x6E, 0x74, 0x72, 0x79 - .byte 0x5B, 0x69, 0x5D, 0x2E, 0x76, 0x61, 0x6C, 0x75, 0x65, 0x00, 0x00, 0x00 - - .global UNK_0220C148 -UNK04_0220C148: ; 0x0220C148 - .byte 0x0D, 0x0A, 0x0D, 0x0A, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C150 -UNK04_0220C150: ; 0x0220C150 - .byte 0x20, 0x00, 0x00, 0x00 - - .global UNK_0220C154 -UNK04_0220C154: ; 0x0220C154 - .byte 0x68, 0x74, 0x74, 0x70, 0x72, 0x65, 0x73, 0x75, 0x6C, 0x74, 0x00, 0x00 - - .global UNK_0220C160 -UNK04_0220C160: ; 0x0220C160 - .byte 0x32, 0x30, 0x30, 0x00 - - .global UNK_0220C164 -UNK04_0220C164: ; 0x0220C164 - .byte 0x0D, 0x0A, 0x00, 0x00 - - .global UNK_0220C168 -UNK04_0220C168: ; 0x0220C168 - .byte 0x3A, 0x20, 0x00, 0x00 - - .global UNK_0220C16C -UNK04_0220C16C: ; 0x0220C16C - .byte 0x3D, 0x00, 0x00, 0x00 - - .global UNK_0220C170 -UNK04_0220C170: ; 0x0220C170 - .byte 0x26, 0x00, 0x00, 0x00 - - .global UNK_0220C174 -UNK04_0220C174: ; 0x0220C174 - .byte 0x41, 0x4C, 0x4C, 0x4F, 0x43, 0x20, 0x72, 0x65, 0x73, 0x75, 0x6C, 0x74, 0x2D, 0x3E, 0x65, 0x6E - .byte 0x74, 0x72, 0x79, 0x5B, 0x69, 0x5D, 0x2E, 0x6C, 0x61, 0x62, 0x65, 0x6C, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C194 -UNK04_0220C194: ; 0x0220C194 - .byte 0x41, 0x4C, 0x4C, 0x4F, 0x43, 0x20, 0x72, 0x65, 0x73, 0x75, 0x6C, 0x74, 0x2D, 0x3E, 0x65, 0x6E - .byte 0x74, 0x72, 0x79, 0x5B, 0x69, 0x5D, 0x2E, 0x76, 0x61, 0x6C, 0x75, 0x65, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C1B4 -UNK04_0220C1B4: ; 0x0220C1B4 - .byte 0x46, 0x52, 0x45, 0x45, 0x20, 0x72, 0x65, 0x73, 0x75, 0x6C, 0x74, 0x2D, 0x3E, 0x65, 0x6E, 0x74 - .byte 0x72, 0x79, 0x5B, 0x69, 0x5D, 0x2E, 0x6C, 0x61, 0x62, 0x65, 0x6C, 0x00 - - .global UNK_0220C1D0 -UNK04_0220C1D0: ; 0x0220C1D0 - .byte 0x46, 0x52, 0x45, 0x45, 0x20, 0x72, 0x65, 0x73, 0x75, 0x6C, 0x74, 0x2D, 0x3E, 0x65, 0x6E, 0x74 - .byte 0x72, 0x79, 0x5B, 0x69, 0x5D, 0x2E, 0x76, 0x61, 0x6C, 0x75, 0x65, 0x00 - - .global UNK_0220C1EC -UNK04_0220C1EC: ; 0x0220C1EC - .byte 0x68, 0x74, 0x74, 0x70, 0x3A, 0x2F, 0x2F, 0x00 - - .global UNK_0220C1F4 -UNK04_0220C1F4: ; 0x0220C1F4 - .byte 0x68, 0x74, 0x74, 0x70, 0x73, 0x3A, 0x2F, 0x2F, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C200 -UNK04_0220C200: ; 0x0220C200 - .byte 0x3A, 0x00, 0x00, 0x00 - - .global UNK_0220C204 -UNK04_0220C204: ; 0x0220C204 - .byte 0x2F, 0x00, 0x00, 0x00 - - .global UNK_0220C208 -UNK04_0220C208: ; 0x0220C208 - .byte 0x41, 0x4C, 0x4C, 0x4F, 0x43, 0x20, 0x6E, 0x65, 0x77, 0x70, 0x74, 0x72, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C218 -UNK04_0220C218: ; 0x0220C218 - .byte 0x46, 0x52, 0x45, 0x45, 0x20, 0x62, 0x75, 0x66, 0x2D, 0x3E, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72 - .byte 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C22C -UNK04_0220C22C: ; 0x0220C22C - .byte 0x41, 0x4C, 0x4C, 0x4F, 0x43, 0x20, 0x62, 0x75, 0x66, 0x2D, 0x3E, 0x62, 0x75, 0x66, 0x66, 0x65 - .byte 0x72, 0x00, 0x00, 0x00 - - .global UNK_0220C240 -UNK04_0220C240: ; 0x0220C240 - .byte 0x25, 0x73, 0x00, 0x00 - - .global UNK_0220C244 -UNK04_0220C244: ; 0x0220C244 - .byte 0x25, 0x73, 0x3D, 0x00 - - .global UNK_0220C248 -UNK04_0220C248: ; 0x0220C248 - .byte 0x26, 0x25, 0x73, 0x3D, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C250 -UNK04_0220C250: ; 0x0220C250 - .byte 0x25, 0x73, 0x3A, 0x20, 0x25, 0x73, 0x0D, 0x0A, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C25C -UNK04_0220C25C: ; 0x0220C25C - .byte 0x50, 0x4F, 0x53, 0x54, 0x20, 0x2F, 0x25, 0x73, 0x20, 0x48, 0x54, 0x54, 0x50, 0x2F, 0x31, 0x2E - .byte 0x30, 0x0D, 0x0A, 0x43, 0x6F, 0x6E, 0x74, 0x65, 0x6E, 0x74, 0x2D, 0x74, 0x79, 0x70, 0x65, 0x3A - .byte 0x20, 0x61, 0x70, 0x70, 0x6C, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x2F, 0x78, 0x2D, 0x77 - .byte 0x77, 0x77, 0x2D, 0x66, 0x6F, 0x72, 0x6D, 0x2D, 0x75, 0x72, 0x6C, 0x65, 0x6E, 0x63, 0x6F, 0x64 - .byte 0x65, 0x64, 0x0D, 0x0A, 0x48, 0x6F, 0x73, 0x74, 0x3A, 0x20, 0x25, 0x73, 0x0D, 0x0A, 0x0D, 0x0A - .byte 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C2B0 -UNK04_0220C2B0: ; 0x0220C2B0 - .byte 0x47, 0x45, 0x54, 0x20, 0x2F, 0x25, 0x73, 0x20, 0x48, 0x54, 0x54, 0x50, 0x2F, 0x31, 0x2E, 0x30 - .byte 0x0D, 0x0A, 0x48, 0x6F, 0x73, 0x74, 0x3A, 0x20, 0x25, 0x73, 0x0D, 0x0A, 0x0D, 0x0A, 0x00, 0x00 - - .global UNK_0220C2D0 -UNK04_0220C2D0: ; 0x0220C2D0 - .byte 0x46, 0x52, 0x45, 0x45, 0x20, 0x68, 0x74, 0x74, 0x70, 0x2D, 0x3E, 0x6C, 0x6F, 0x77, 0x72, 0x65 - .byte 0x63, 0x76, 0x62, 0x75, 0x66, 0x00, 0x00, 0x00 - - .global UNK_0220C2E8 -UNK04_0220C2E8: ; 0x0220C2E8 - .byte 0x46, 0x52, 0x45, 0x45, 0x20, 0x68, 0x74, 0x74, 0x70, 0x2D, 0x3E, 0x6C, 0x6F, 0x77, 0x73, 0x65 - .byte 0x6E, 0x64, 0x62, 0x75, 0x66, 0x00, 0x00, 0x00 - - .global UNK_0220C300 -UNK04_0220C300: ; 0x0220C300 - .byte 0x43, 0x6F, 0x6E, 0x74, 0x65, 0x6E, 0x74, 0x2D, 0x4C, 0x65, 0x6E, 0x67, 0x74, 0x68, 0x3A, 0x20 - .byte 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C314 -UNK04_0220C314: ; 0x0220C314 - .byte 0x43, 0x6F, 0x6E, 0x6E, 0x65, 0x63, 0x74, 0x69, 0x6F, 0x6E, 0x00, 0x00 - - .global UNK_0220C320 -UNK04_0220C320: ; 0x0220C320 - .byte 0x63, 0x6C, 0x6F, 0x73, 0x65, 0x00, 0x00, 0x00 - - .global UNK_0220C328 -UNK04_0220C328: ; 0x0220C328 - .byte 0x25, 0x64, 0x00, 0x00 - - .global UNK_0220C32C -UNK04_0220C32C: ; 0x0220C32C - .byte 0x43, 0x6F, 0x6E, 0x74, 0x65, 0x6E, 0x74, 0x2D, 0x4C, 0x65, 0x6E, 0x67, 0x74, 0x68, 0x00, 0x00 - - .global UNK_0220C33C -UNK04_0220C33C: ; 0x0220C33C - .byte 0x41, 0x4C, 0x4C, 0x4F, 0x43, 0x20, 0x68, 0x74, 0x74, 0x70, 0x2D, 0x3E, 0x6C, 0x6F, 0x77, 0x72 - .byte 0x65, 0x63, 0x76, 0x62, 0x75, 0x66, 0x00, 0x00 - - .global UNK_0220C354 -UNK04_0220C354: ; 0x0220C354 - .byte 0x41, 0x4C, 0x4C, 0x4F, 0x43, 0x20, 0x68, 0x74, 0x74, 0x70, 0x2D, 0x3E, 0x6C, 0x6F, 0x77, 0x73 - .byte 0x65, 0x6E, 0x64, 0x62, 0x75, 0x66, 0x00, 0x00 - - .global UNK_0220C36C -UNK04_0220C36C: ; 0x0220C36C - .word UNK04_0220C370 - - .global UNK_0220C370 -UNK04_0220C370: ; 0x0220C370 - .byte 0x68, 0x74, 0x74, 0x70, 0x3A, 0x2F, 0x2F, 0x63, 0x6F, 0x6E, 0x6E, 0x74 - .byte 0x65, 0x73, 0x74, 0x2E, 0x6E, 0x69, 0x6E, 0x74, 0x65, 0x6E, 0x64, 0x6F, 0x77, 0x69, 0x66, 0x69 - .byte 0x2E, 0x6E, 0x65, 0x74, 0x2F, 0x00, 0x00, 0x00 - - .global UNK_0220C394 -UNK04_0220C394: ; 0x0220C394 - .byte 0x41, 0x4C, 0x4C, 0x4F, 0x43, 0x20, 0x44, 0x57, 0x43, 0x6E, 0x65, 0x74, 0x63, 0x68, 0x65, 0x63 - .byte 0x6B, 0x2D, 0x3E, 0x62, 0x6F, 0x64, 0x79, 0x5F, 0x33, 0x30, 0x32, 0x00 - - .global UNK_0220C3B0 -UNK04_0220C3B0: ; 0x0220C3B0 - .byte 0x46, 0x52, 0x45, 0x45, 0x20, 0x44, 0x57, 0x43, 0x6E, 0x65, 0x74, 0x63, 0x68, 0x65, 0x63, 0x6B - .byte 0x2D, 0x3E, 0x62, 0x6F, 0x64, 0x79, 0x5F, 0x33, 0x30, 0x32, 0x00, 0x00 - - .global UNK_0220C3CC -UNK04_0220C3CC: ; 0x0220C3CC - .byte 0x41, 0x4C, 0x4C, 0x4F, 0x43, 0x20, 0x75, 0x72, 0x6C, 0x00, 0x00, 0x00 - - .global UNK_0220C3D8 -UNK04_0220C3D8: ; 0x0220C3D8 - .byte 0x41, 0x4C, 0x4C, 0x4F, 0x43, 0x20, 0x64, 0x61, 0x74, 0x61, 0x5F, 0x6C, 0x65, 0x6E, 0x00, 0x00 - - .global UNK_0220C3E8 -UNK04_0220C3E8: ; 0x0220C3E8 - .byte 0x41, 0x4C, 0x4C, 0x4F, 0x43, 0x20, 0x77, 0x61, 0x69, 0x74, 0x5F, 0x6C, 0x65, 0x6E, 0x00, 0x00 - - .global UNK_0220C3F8 -UNK04_0220C3F8: ; 0x0220C3F8 - .byte 0x41, 0x4C, 0x4C, 0x4F, 0x43, 0x20, 0x44, 0x57, 0x43, 0x6E, 0x65, 0x74, 0x63, 0x68, 0x65, 0x63 - .byte 0x6B, 0x2D, 0x3E, 0x62, 0x6F, 0x64, 0x79, 0x5F, 0x77, 0x61, 0x79, 0x70, 0x6F, 0x72, 0x74, 0x00 - - .global UNK_0220C418 -UNK04_0220C418: ; 0x0220C418 - .byte 0x68, 0x74, 0x74, 0x70, 0x72, 0x65, 0x73, 0x75, 0x6C, 0x74, 0x00, 0x00 - - .global UNK_0220C424 -UNK04_0220C424: ; 0x0220C424 - .byte 0x68, 0x74, 0x74, 0x70, 0x73, 0x3A, 0x2F, 0x2F, 0x6E, 0x61, 0x73, 0x2E, 0x6E, 0x69, 0x6E, 0x74 - .byte 0x65, 0x6E, 0x64, 0x6F, 0x77, 0x69, 0x66, 0x69, 0x2E, 0x6E, 0x65, 0x74, 0x2F, 0x61, 0x63, 0x00 - - .global UNK_0220C444 -UNK04_0220C444: ; 0x0220C444 - .byte 0x61, 0x63, 0x74, 0x69, 0x6F, 0x6E, 0x00, 0x00 - - .global UNK_0220C44C -UNK04_0220C44C: ; 0x0220C44C - .byte 0x6D, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x00 - - .global UNK_0220C454 -UNK04_0220C454: ; 0x0220C454 - .byte 0x48, 0x6F, 0x74, 0x53, 0x70, 0x6F, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6F, 0x6E, 0x73, 0x65, 0x00 - - .global UNK_0220C464 -UNK04_0220C464: ; 0x0220C464 - .byte 0x46, 0x52, 0x45, 0x45, 0x20, 0x44, 0x57, 0x43, 0x6E, 0x65, 0x74, 0x63, 0x68, 0x65, 0x63, 0x6B - .byte 0x2D, 0x3E, 0x62, 0x6F, 0x64, 0x79, 0x5F, 0x77, 0x61, 0x79, 0x70, 0x6F, 0x72, 0x74, 0x00, 0x00 - - .global UNK_0220C484 -UNK04_0220C484: ; 0x0220C484 - .byte 0x70, 0x61, 0x72, 0x73, 0x65, 0x00, 0x00, 0x00 - - .global UNK_0220C48C -UNK04_0220C48C: ; 0x0220C48C - .byte 0x48, 0x54, 0x4D, 0x4C, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C494 -UNK04_0220C494: ; 0x0220C494 - .byte 0x72, 0x65, 0x74, 0x75, 0x72, 0x6E, 0x63, 0x64, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C4A0 -UNK04_0220C4A0: ; 0x0220C4A0 - .byte 0x75, 0x72, 0x6C, 0x00 - - .global UNK_0220C4A4 -UNK04_0220C4A4: ; 0x0220C4A4 - .byte 0x64, 0x61, 0x74, 0x61, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C4AC -UNK04_0220C4AC: ; 0x0220C4AC - .byte 0x77, 0x61, 0x69, 0x74, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C4B4 -UNK04_0220C4B4: ; 0x0220C4B4 - .byte 0x46, 0x52, 0x45, 0x45, 0x20, 0x75, 0x72, 0x6C, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C4C0 -UNK04_0220C4C0: ; 0x0220C4C0 - .byte 0x46, 0x52, 0x45, 0x45, 0x20, 0x64, 0x61, 0x74, 0x61, 0x00, 0x00, 0x00 - - .global UNK_0220C4CC -UNK04_0220C4CC: ; 0x0220C4CC - .byte 0x46, 0x52, 0x45, 0x45, 0x20, 0x77, 0x61, 0x69, 0x74, 0x00, 0x00, 0x00 - - .global UNK_0220C4D8 -UNK04_0220C4D8: ; 0x0220C4D8 - .byte 0x46, 0x52, 0x45, 0x45, 0x20, 0x44, 0x57, 0x43, 0x68, 0x74, 0x74, 0x70, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C4E8 -UNK04_0220C4E8: ; 0x0220C4E8 - .byte 0x46, 0x52, 0x45, 0x45, 0x20, 0x44, 0x57, 0x43, 0x6E, 0x65, 0x74, 0x63, 0x68, 0x65, 0x63, 0x6B - .byte 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C4FC -UNK04_0220C4FC: ; 0x0220C4FC - .byte 0x41, 0x4C, 0x4C, 0x4F, 0x43, 0x20, 0x44, 0x57, 0x43, 0x6E, 0x65, 0x74, 0x63, 0x68, 0x65, 0x63 - .byte 0x6B, 0x00, 0x00, 0x00 - - .global UNK_0220C510 -UNK04_0220C510: ; 0x0220C510 - .byte 0x41, 0x4C, 0x4C, 0x4F, 0x43, 0x20, 0x44, 0x57, 0x43, 0x68, 0x74, 0x74, 0x70, 0x00, 0x00, 0x00 - - .global UNK_0220C520 -UNK04_0220C520: ; 0x0220C520 - .byte 0x44, 0x65, 0x63, 0x00 - - .global UNK_0220C524 -UNK04_0220C524: ; 0x0220C524 - .byte 0x4A, 0x75, 0x6C, 0x00 - - .global UNK_0220C528 -UNK04_0220C528: ; 0x0220C528 - .byte 0x4F, 0x63, 0x74, 0x00 - - .global UNK_0220C52C -UNK04_0220C52C: ; 0x0220C52C - .byte 0x53, 0x65, 0x70, 0x00 - - .global UNK_0220C530 -UNK04_0220C530: ; 0x0220C530 - .byte 0x41, 0x75, 0x67, 0x00 - - .global UNK_0220C534 -UNK04_0220C534: ; 0x0220C534 - .byte 0x4E, 0x6F, 0x76, 0x00 - - .global UNK_0220C538 -UNK04_0220C538: ; 0x0220C538 - .byte 0x4A, 0x75, 0x6E, 0x00 - - .global UNK_0220C53C -UNK04_0220C53C: ; 0x0220C53C - .byte 0x4D, 0x61, 0x79, 0x00 - - .global UNK_0220C540 -UNK04_0220C540: ; 0x0220C540 - .byte 0x41, 0x70, 0x72, 0x00 - - .global UNK_0220C544 -UNK04_0220C544: ; 0x0220C544 - .byte 0x4D, 0x61, 0x72, 0x00 - - .global UNK_0220C548 -UNK04_0220C548: ; 0x0220C548 - .byte 0x46, 0x65, 0x62, 0x00 - - .global UNK_0220C54C -UNK04_0220C54C: ; 0x0220C54C - .byte 0x4A, 0x61, 0x6E, 0x00 - - .global UNK_0220C550 -UNK04_0220C550: ; 0x0220C550 - .word UNK04_0220C54C, UNK04_0220C548, UNK04_0220C544, UNK04_0220C540 - .word UNK04_0220C53C, UNK04_0220C538, UNK04_0220C524, UNK04_0220C530 - .word UNK04_0220C52C, UNK04_0220C528, UNK04_0220C534, UNK04_0220C520 - - .global UNK_0220C580 -UNK04_0220C580: ; 0x0220C580 - .byte 0x46, 0x72, 0x69, 0x2C, 0x20, 0x30, 0x33, 0x20, 0x4D, 0x61, 0x72, 0x20, 0x32, 0x30, 0x30, 0x36 - .byte 0x20, 0x30, 0x31, 0x3A, 0x32, 0x38, 0x3A, 0x31, 0x33, 0x20, 0x47, 0x4D, 0x54, 0x00, 0x00, 0x00 - - .global UNK_0220C5A0 -UNK04_0220C5A0: ; 0x0220C5A0 - .byte 0x44, 0x61, 0x74, 0x65, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C5A8 -UNK04_0220C5A8: ; 0x0220C5A8 - .byte 0x68, 0x74, 0x74, 0x70, 0x72, 0x65, 0x73, 0x75, 0x6C, 0x74, 0x00, 0x00 - - .global UNK_0220C5B4 -UNK04_0220C5B4: ; 0x0220C5B4 - .byte 0x72, 0x65, 0x74, 0x75, 0x72, 0x6E, 0x63, 0x64, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C5C0 -UNK04_0220C5C0: ; 0x0220C5C0 - .byte 0x73, 0x76, 0x63, 0x68, 0x6F, 0x73, 0x74, 0x00 - - .global UNK_0220C5C8 -UNK04_0220C5C8: ; 0x0220C5C8 - .byte 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x74, 0x6F, 0x6B, 0x65, 0x6E, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C5D8 -UNK04_0220C5D8: ; 0x0220C5D8 - .byte 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x64, 0x61, 0x74, 0x61, 0x00, 0x00 - - .global UNK_0220C5E4 -UNK04_0220C5E4: ; 0x0220C5E4 - .byte 0x68, 0x74, 0x74, 0x70, 0x73, 0x3A, 0x2F, 0x2F, 0x6E, 0x61, 0x73, 0x2E, 0x6E, 0x69, 0x6E, 0x74 - .byte 0x65, 0x6E, 0x64, 0x6F, 0x77, 0x69, 0x66, 0x69, 0x2E, 0x6E, 0x65, 0x74, 0x2F, 0x61, 0x63, 0x00 - - .global UNK_0220C604 -UNK04_0220C604: ; 0x0220C604 - .byte 0x61, 0x63, 0x74, 0x69, 0x6F, 0x6E, 0x00, 0x00 - - .global UNK_0220C60C -UNK04_0220C60C: ; 0x0220C60C - .byte 0x53, 0x56, 0x43, 0x4C, 0x4F, 0x43, 0x00, 0x00 - - .global UNK_0220C614 -UNK04_0220C614: ; 0x0220C614 - .byte 0x73, 0x76, 0x63, 0x00 - - .global UNK_0220C618 -UNK04_0220C618: ; 0x0220C618 - .byte 0x46, 0x52, 0x45, 0x45, 0x20, 0x69, 0x6E, 0x74, 0x77, 0x6F, 0x72, 0x6B, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C628 -UNK04_0220C628: ; 0x0220C628 - .byte 0x41, 0x4C, 0x4C, 0x4F, 0x43, 0x20, 0x69, 0x6E, 0x74, 0x77, 0x6F, 0x72, 0x6B, 0x00, 0x00, 0x00 - - .global UNK_0220C638 -UNK04_0220C638: ; 0x0220C638 - .word UNK04_0220C63C - - .global UNK_0220C63C -UNK04_0220C63C: ; 0x0220C63C - .byte 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C - .byte 0x4D, 0x4E, 0x4F, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5A, 0x61, 0x62 - .byte 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70, 0x71, 0x72 - .byte 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7A, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37 - .byte 0x38, 0x39, 0x2E, 0x2D, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C680 -UNK04_0220C680: ; 0x0220C680 - .byte 0x01, 0x00, 0x01, 0x00 - - .global UNK_0220C684 -UNK04_0220C684: ; 0x0220C684 - .word UNK04_0220C698, 0x00000100, UNK04_0220C6CC, 0x00000003 - .word UNK04_0220C680 - - .global UNK_0220C698 -UNK04_0220C698: ; 0x0220C698 - .byte 0x42, 0x45, 0x2C, 0x20, 0x47, 0x6C, 0x6F, 0x62, 0x61, 0x6C, 0x53, 0x69, 0x67, 0x6E, 0x20, 0x6E - .byte 0x76, 0x2D, 0x73, 0x61, 0x2C, 0x20, 0x52, 0x6F, 0x6F, 0x74, 0x20, 0x43, 0x41, 0x2C, 0x20, 0x47 - .byte 0x6C, 0x6F, 0x62, 0x61, 0x6C, 0x53, 0x69, 0x67, 0x6E, 0x20, 0x52, 0x6F, 0x6F, 0x74, 0x20, 0x43 - .byte 0x41, 0x00, 0x00, 0x00 - - .global UNK_0220C6CC -UNK04_0220C6CC: ; 0x0220C6CC - .byte 0xDA, 0x0E, 0xE6, 0x99, 0x8D, 0xCE, 0xA3, 0xE3, 0x4F, 0x8A, 0x7E, 0xFB - .byte 0xF1, 0x8B, 0x83, 0x25, 0x6B, 0xEA, 0x48, 0x1F, 0xF1, 0x2A, 0xB0, 0xB9, 0x95, 0x11, 0x04, 0xBD - .byte 0xF0, 0x63, 0xD1, 0xE2, 0x67, 0x66, 0xCF, 0x1C, 0xDD, 0xCF, 0x1B, 0x48, 0x2B, 0xEE, 0x8D, 0x89 - .byte 0x8E, 0x9A, 0xAF, 0x29, 0x80, 0x65, 0xAB, 0xE9, 0xC7, 0x2D, 0x12, 0xCB, 0xAB, 0x1C, 0x4C, 0x70 - .byte 0x07, 0xA1, 0x3D, 0x0A, 0x30, 0xCD, 0x15, 0x8D, 0x4F, 0xF8, 0xDD, 0xD4, 0x8C, 0x50, 0x15, 0x1C - .byte 0xEF, 0x50, 0xEE, 0xC4, 0x2E, 0xF7, 0xFC, 0xE9, 0x52, 0xF2, 0x91, 0x7D, 0xE0, 0x6D, 0xD5, 0x35 - .byte 0x30, 0x8E, 0x5E, 0x43, 0x73, 0xF2, 0x41, 0xE9, 0xD5, 0x6A, 0xE3, 0xB2, 0x89, 0x3A, 0x56, 0x39 - .byte 0x38, 0x6F, 0x06, 0x3C, 0x88, 0x69, 0x5B, 0x2A, 0x4D, 0xC5, 0xA7, 0x54, 0xB8, 0x6C, 0x89, 0xCC - .byte 0x9B, 0xF9, 0x3C, 0xCA, 0xE5, 0xFD, 0x89, 0xF5, 0x12, 0x3C, 0x92, 0x78, 0x96, 0xD6, 0xDC, 0x74 - .byte 0x6E, 0x93, 0x44, 0x61, 0xD1, 0x8D, 0xC7, 0x46, 0xB2, 0x75, 0x0E, 0x86, 0xE8, 0x19, 0x8A, 0xD5 - .byte 0x6D, 0x6C, 0xD5, 0x78, 0x16, 0x95, 0xA2, 0xE9, 0xC8, 0x0A, 0x38, 0xEB, 0xF2, 0x24, 0x13, 0x4F - .byte 0x73, 0x54, 0x93, 0x13, 0x85, 0x3A, 0x1B, 0xBC, 0x1E, 0x34, 0xB5, 0x8B, 0x05, 0x8C, 0xB9, 0x77 - .byte 0x8B, 0xB1, 0xDB, 0x1F, 0x20, 0x91, 0xAB, 0x09, 0x53, 0x6E, 0x90, 0xCE, 0x7B, 0x37, 0x74, 0xB9 - .byte 0x70, 0x47, 0x91, 0x22, 0x51, 0x63, 0x16, 0x79, 0xAE, 0xB1, 0xAE, 0x41, 0x26, 0x08, 0xC8, 0x19 - .byte 0x2B, 0xD1, 0x46, 0xAA, 0x48, 0xD6, 0x64, 0x2A, 0xD7, 0x83, 0x34, 0xFF, 0x2C, 0x2A, 0xC1, 0x6C - .byte 0x19, 0x43, 0x4A, 0x07, 0x85, 0xE7, 0xD3, 0x7C, 0xF6, 0x21, 0x68, 0xEF, 0xEA, 0xF2, 0x52, 0x9F - .byte 0x7F, 0x93, 0x90, 0xCF - - .global UNK_0220C7CC -UNK04_0220C7CC: ; 0x0220C7CC - .byte 0x01, 0x00, 0x01, 0x00 - - .global UNK_0220C7D0 -UNK04_0220C7D0: ; 0x0220C7D0 - .word UNK04_0220C7E4, 0x00000100, UNK04_0220C81C, 0x00000003 - .word UNK04_0220C7CC - - .global UNK_0220C7E4 -UNK04_0220C7E4: ; 0x0220C7E4 - .byte 0x49, 0x45, 0x2C, 0x20 - .byte 0x42, 0x61, 0x6C, 0x74, 0x69, 0x6D, 0x6F, 0x72, 0x65, 0x2C, 0x20, 0x43, 0x79, 0x62, 0x65, 0x72 - .byte 0x54, 0x72, 0x75, 0x73, 0x74, 0x2C, 0x20, 0x42, 0x61, 0x6C, 0x74, 0x69, 0x6D, 0x6F, 0x72, 0x65 - .byte 0x20, 0x43, 0x79, 0x62, 0x65, 0x72, 0x54, 0x72, 0x75, 0x73, 0x74, 0x20, 0x52, 0x6F, 0x6F, 0x74 - .byte 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220C81C -UNK04_0220C81C: ; 0x0220C81C - .byte 0xA3, 0x04, 0xBB, 0x22, 0xAB, 0x98, 0x3D, 0x57, 0xE8, 0x26, 0x72, 0x9A - .byte 0xB5, 0x79, 0xD4, 0x29, 0xE2, 0xE1, 0xE8, 0x95, 0x80, 0xB1, 0xB0, 0xE3, 0x5B, 0x8E, 0x2B, 0x29 - .byte 0x9A, 0x64, 0xDF, 0xA1, 0x5D, 0xED, 0xB0, 0x09, 0x05, 0x6D, 0xDB, 0x28, 0x2E, 0xCE, 0x62, 0xA2 - .byte 0x62, 0xFE, 0xB4, 0x88, 0xDA, 0x12, 0xEB, 0x38, 0xEB, 0x21, 0x9D, 0xC0, 0x41, 0x2B, 0x01, 0x52 - .byte 0x7B, 0x88, 0x77, 0xD3, 0x1C, 0x8F, 0xC7, 0xBA, 0xB9, 0x88, 0xB5, 0x6A, 0x09, 0xE7, 0x73, 0xE8 - .byte 0x11, 0x40, 0xA7, 0xD1, 0xCC, 0xCA, 0x62, 0x8D, 0x2D, 0xE5, 0x8F, 0x0B, 0xA6, 0x50, 0xD2, 0xA8 - .byte 0x50, 0xC3, 0x28, 0xEA, 0xF5, 0xAB, 0x25, 0x87, 0x8A, 0x9A, 0x96, 0x1C, 0xA9, 0x67, 0xB8, 0x3F - .byte 0x0C, 0xD5, 0xF7, 0xF9, 0x52, 0x13, 0x2F, 0xC2, 0x1B, 0xD5, 0x70, 0x70, 0xF0, 0x8F, 0xC0, 0x12 - .byte 0xCA, 0x06, 0xCB, 0x9A, 0xE1, 0xD9, 0xCA, 0x33, 0x7A, 0x77, 0xD6, 0xF8, 0xEC, 0xB9, 0xF1, 0x68 - .byte 0x44, 0x42, 0x48, 0x13, 0xD2, 0xC0, 0xC2, 0xA4, 0xAE, 0x5E, 0x60, 0xFE, 0xB6, 0xA6, 0x05, 0xFC - .byte 0xB4, 0xDD, 0x07, 0x59, 0x02, 0xD4, 0x59, 0x18, 0x98, 0x63, 0xF5, 0xA5, 0x63, 0xE0, 0x90, 0x0C - .byte 0x7D, 0x5D, 0xB2, 0x06, 0x7A, 0xF3, 0x85, 0xEA, 0xEB, 0xD4, 0x03, 0xAE, 0x5E, 0x84, 0x3E, 0x5F - .byte 0xFF, 0x15, 0xED, 0x69, 0xBC, 0xF9, 0x39, 0x36, 0x72, 0x75, 0xCF, 0x77, 0x52, 0x4D, 0xF3, 0xC9 - .byte 0x90, 0x2C, 0xB9, 0x3D, 0xE5, 0xC9, 0x23, 0x53, 0x3F, 0x1F, 0x24, 0x98, 0x21, 0x5C, 0x07, 0x99 - .byte 0x29, 0xBD, 0xC6, 0x3A, 0xEC, 0xE7, 0x6E, 0x86, 0x3A, 0x6B, 0x97, 0x74, 0x63, 0x33, 0xBD, 0x68 - .byte 0x18, 0x31, 0xF0, 0x78, 0x8D, 0x76, 0xBF, 0xFC, 0x9E, 0x8E, 0x5D, 0x2A, 0x86, 0xA7, 0x4D, 0x90 - .byte 0xDC, 0x27, 0x1A, 0x39 - - .global UNK_0220C91C -UNK04_0220C91C: ; 0x0220C91C - .byte 0x01, 0x00, 0x01, 0x00 - - .global UNK_0220C920 -UNK04_0220C920: ; 0x0220C920 - .word UNK04_0220C934, 0x00000080, UNK04_0220C984, 0x00000003 - .word UNK04_0220C91C - - .global UNK_0220C934 -UNK04_0220C934: ; 0x0220C934 - .byte 0x55, 0x53, 0x2C, 0x20 - .byte 0x47, 0x54, 0x45, 0x20, 0x43, 0x6F, 0x72, 0x70, 0x6F, 0x72, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x2C - .byte 0x20, 0x47, 0x54, 0x45, 0x20, 0x43, 0x79, 0x62, 0x65, 0x72, 0x54, 0x72, 0x75, 0x73, 0x74, 0x20 - .byte 0x53, 0x6F, 0x6C, 0x75, 0x74, 0x69, 0x6F, 0x6E, 0x73, 0x2C, 0x20, 0x49, 0x6E, 0x63, 0x2E, 0x2C - .byte 0x20, 0x47, 0x54, 0x45, 0x20, 0x43, 0x79, 0x62, 0x65, 0x72, 0x54, 0x72, 0x75, 0x73, 0x74, 0x20 - .byte 0x47, 0x6C, 0x6F, 0x62, 0x61, 0x6C, 0x20, 0x52, 0x6F, 0x6F, 0x74, 0x00 - - .global UNK_0220C984 -UNK04_0220C984: ; 0x0220C984 - .byte 0x95, 0x0F, 0xA0, 0xB6 - .byte 0xF0, 0x50, 0x9C, 0xE8, 0x7A, 0xC7, 0x88, 0xCD, 0xDD, 0x17, 0x0E, 0x2E, 0xB0, 0x94, 0xD0, 0x1B - .byte 0x3D, 0x0E, 0xF6, 0x94, 0xC0, 0x8A, 0x94, 0xC7, 0x06, 0xC8, 0x90, 0x97, 0xC8, 0xB8, 0x64, 0x1A - .byte 0x7A, 0x7E, 0x6C, 0x3C, 0x53, 0xE1, 0x37, 0x28, 0x73, 0x60, 0x7F, 0xB2, 0x97, 0x53, 0x07, 0x9F - .byte 0x53, 0xF9, 0x6D, 0x58, 0x94, 0xD2, 0xAF, 0x8D, 0x6D, 0x88, 0x67, 0x80, 0xE6, 0xED, 0xB2, 0x95 - .byte 0xCF, 0x72, 0x31, 0xCA, 0xA5, 0x1C, 0x72, 0xBA, 0x5C, 0x02, 0xE7, 0x64, 0x42, 0xE7, 0xF9, 0xA9 - .byte 0x2C, 0xD6, 0x3A, 0x0D, 0xAC, 0x8D, 0x42, 0xAA, 0x24, 0x01, 0x39, 0xE6, 0x9C, 0x3F, 0x01, 0x85 - .byte 0x57, 0x0D, 0x58, 0x87, 0x45, 0xF8, 0xD3, 0x85, 0xAA, 0x93, 0x69, 0x26, 0x85, 0x70, 0x48, 0x80 - .byte 0x3F, 0x12, 0x15, 0xC7, 0x79, 0xB4, 0x1F, 0x05, 0x2F, 0x3B, 0x62, 0x99 - - .global UNK_0220CA04 -UNK04_0220CA04: ; 0x0220CA04 - .byte 0x01, 0x00, 0x01, 0x00 - - .global UNK_0220CA08 -UNK04_0220CA08: ; 0x0220CA08 - .word UNK04_0220CA1C, 0x00000080, UNK04_0220CA48, 0x00000003 - .word UNK04_0220CA04 - - .global UNK_0220CA1C -UNK04_0220CA1C: ; 0x0220CA1C - .byte 0x55, 0x53, 0x2C, 0x20, 0x47, 0x54, 0x45, 0x20, 0x43, 0x6F, 0x72, 0x70 - .byte 0x6F, 0x72, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x2C, 0x20, 0x47, 0x54, 0x45, 0x20, 0x43, 0x79, 0x62 - .byte 0x65, 0x72, 0x54, 0x72, 0x75, 0x73, 0x74, 0x20, 0x52, 0x6F, 0x6F, 0x74, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220CA48 -UNK04_0220CA48: ; 0x0220CA48 - .byte 0xB8, 0xE6, 0x4F, 0xBA, 0xDB, 0x98, 0x7C, 0x71, 0x7C, 0xAF, 0x44, 0xB7, 0xD3, 0x0F, 0x46, 0xD9 - .byte 0x64, 0xE5, 0x93, 0xC1, 0x42, 0x8E, 0xC7, 0xBA, 0x49, 0x8D, 0x35, 0x2D, 0x7A, 0xE7, 0x8B, 0xBD - .byte 0xE5, 0x05, 0x31, 0x59, 0xC6, 0xB1, 0x2F, 0x0A, 0x0C, 0xFB, 0x9F, 0xA7, 0x3F, 0xA2, 0x09, 0x66 - .byte 0x84, 0x56, 0x1E, 0x37, 0x29, 0x1B, 0x87, 0xE9, 0x7E, 0x0C, 0xCA, 0x9A, 0x9F, 0xA5, 0x7F, 0xF5 - .byte 0x15, 0x94, 0xA3, 0xD5, 0xA2, 0x46, 0x82, 0xD8, 0x68, 0x4C, 0xD1, 0x37, 0x15, 0x06, 0x68, 0xAF - .byte 0xBD, 0xF8, 0xB0, 0xB3, 0xF0, 0x29, 0xF5, 0x95, 0x5A, 0x09, 0x16, 0x61, 0x77, 0x0A, 0x22, 0x25 - .byte 0xD4, 0x4F, 0x45, 0xAA, 0xC7, 0xBD, 0xE5, 0x96, 0xDF, 0xF9, 0xD4, 0xA8, 0x8E, 0x42, 0xCC, 0x24 - .byte 0xC0, 0x1E, 0x91, 0x27, 0x4A, 0xB5, 0x6D, 0x06, 0x80, 0x63, 0x39, 0xC4, 0xA2, 0x5E, 0x38, 0x03 - - .global UNK_0220CAC8 -UNK04_0220CAC8: ; 0x0220CAC8 - .byte 0x01, 0x00, 0x01, 0x00 - - .global UNK_0220CACC -UNK04_0220CACC: ; 0x0220CACC - .word UNK04_0220CAE0, 0x00000080, UNK04_0220CB30, 0x00000003 - .word UNK04_0220CAC8 - - .global UNK_0220CAE0 -UNK04_0220CAE0: ; 0x0220CAE0 - .byte 0x55, 0x53, 0x2C, 0x20, 0x57, 0x61, 0x73, 0x68 - .byte 0x69, 0x6E, 0x67, 0x74, 0x6F, 0x6E, 0x2C, 0x20, 0x4E, 0x69, 0x6E, 0x74, 0x65, 0x6E, 0x64, 0x6F - .byte 0x20, 0x6F, 0x66, 0x20, 0x41, 0x6D, 0x65, 0x72, 0x69, 0x63, 0x61, 0x20, 0x49, 0x6E, 0x63, 0x2C - .byte 0x20, 0x4E, 0x4F, 0x41, 0x2C, 0x20, 0x4E, 0x69, 0x6E, 0x74, 0x65, 0x6E, 0x64, 0x6F, 0x20, 0x43 - .byte 0x41, 0x2C, 0x20, 0x63, 0x61, 0x40, 0x6E, 0x6F, 0x61, 0x2E, 0x6E, 0x69, 0x6E, 0x74, 0x65, 0x6E - .byte 0x64, 0x6F, 0x2E, 0x63, 0x6F, 0x6D, 0x00, 0x00 - - .global UNK_0220CB30 -UNK04_0220CB30: ; 0x0220CB30 - .byte 0xB3, 0xCD, 0x79, 0x97, 0x77, 0x5D, 0x8A, 0xAF - .byte 0x86, 0xA8, 0xE8, 0xD7, 0x73, 0x1C, 0x77, 0xDF, 0x10, 0x90, 0x1F, 0x81, 0xF8, 0x41, 0x9E, 0x21 - .byte 0x55, 0xDF, 0xBC, 0xFC, 0x63, 0xFB, 0x19, 0x43, 0xF1, 0xF6, 0xC4, 0x72, 0x42, 0x49, 0xBD, 0xAD - .byte 0x44, 0x68, 0x4E, 0xF3, 0xDA, 0x1D, 0xE6, 0x4D, 0xD8, 0xF9, 0x59, 0x88, 0xDC, 0xAE, 0x3E, 0x9B - .byte 0x38, 0x09, 0xCA, 0x7F, 0xFF, 0xDC, 0x24, 0xA2, 0x44, 0x78, 0x78, 0x49, 0x93, 0xD4, 0x84, 0x40 - .byte 0x10, 0xB8, 0xEC, 0x3E, 0xDB, 0x2D, 0x93, 0xC8, 0x11, 0xC8, 0xFD, 0x78, 0x2D, 0x61, 0xAD, 0x31 - .byte 0xAE, 0x86, 0x26, 0xB0, 0xFD, 0x5A, 0x3F, 0xA1, 0x3D, 0xBF, 0xE2, 0x4B, 0x49, 0xEC, 0xCE, 0x66 - .byte 0x98, 0x58, 0x26, 0x12, 0xC0, 0xFB, 0xF4, 0x77, 0x65, 0x1B, 0xEA, 0xFB, 0xCB, 0x7F, 0xE0, 0x8C - .byte 0xCB, 0x02, 0xA3, 0x4E, 0x5E, 0x8C, 0xEA, 0x9B - - .global UNK_0220CBB0 -UNK04_0220CBB0: ; 0x0220CBB0 - .byte 0x01, 0x00, 0x01, 0x00 - - .global UNK_0220CBB4 -UNK04_0220CBB4: ; 0x0220CBB4 - .word UNK04_0220CC48, 0x00000080, UNK04_0220CBC8, 0x00000003 - .word UNK04_0220CBB0 - - .global UNK_0220CBC8 -UNK04_0220CBC8: ; 0x0220CBC8 - .byte 0xD2, 0x36, 0x36, 0x6A, 0x8B, 0xD7, 0xC2, 0x5B, 0x9E, 0xDA, 0x81, 0x41, 0x62, 0x8F, 0x38, 0xEE - .byte 0x49, 0x04, 0x55, 0xD6, 0xD0, 0xEF, 0x1C, 0x1B, 0x95, 0x16, 0x47, 0xEF, 0x18, 0x48, 0x35, 0x3A - .byte 0x52, 0xF4, 0x2B, 0x6A, 0x06, 0x8F, 0x3B, 0x2F, 0xEA, 0x56, 0xE3, 0xAF, 0x86, 0x8D, 0x9E, 0x17 - .byte 0xF7, 0x9E, 0xB4, 0x65, 0x75, 0x02, 0x4D, 0xEF, 0xCB, 0x09, 0xA2, 0x21, 0x51, 0xD8, 0x9B, 0xD0 - .byte 0x67, 0xD0, 0xBA, 0x0D, 0x92, 0x06, 0x14, 0x73, 0xD4, 0x93, 0xCB, 0x97, 0x2A, 0x00, 0x9C, 0x5C - .byte 0x4E, 0x0C, 0xBC, 0xFA, 0x15, 0x52, 0xFC, 0xF2, 0x44, 0x6E, 0xDA, 0x11, 0x4A, 0x6E, 0x08, 0x9F - .byte 0x2F, 0x2D, 0xE3, 0xF9, 0xAA, 0x3A, 0x86, 0x73, 0xB6, 0x46, 0x53, 0x58, 0xC8, 0x89, 0x05, 0xBD - .byte 0x83, 0x11, 0xB8, 0x73, 0x3F, 0xAA, 0x07, 0x8D, 0xF4, 0x42, 0x4D, 0xE7, 0x40, 0x9D, 0x1C, 0x37 - - .global UNK_0220CC48 -UNK04_0220CC48: ; 0x0220CC48 - .byte 0x5A, 0x41, 0x2C, 0x20, 0x57, 0x65, 0x73, 0x74, 0x65, 0x72, 0x6E, 0x20, 0x43, 0x61, 0x70, 0x65 - .byte 0x2C, 0x20, 0x43, 0x61, 0x70, 0x65, 0x20, 0x54, 0x6F, 0x77, 0x6E, 0x2C, 0x20, 0x54, 0x68, 0x61 - .byte 0x77, 0x74, 0x65, 0x20, 0x43, 0x6F, 0x6E, 0x73, 0x75, 0x6C, 0x74, 0x69, 0x6E, 0x67, 0x20, 0x63 - .byte 0x63, 0x2C, 0x20, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E - .byte 0x20, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x20, 0x44, 0x69, 0x76, 0x69, 0x73, 0x69 - .byte 0x6F, 0x6E, 0x2C, 0x20, 0x54, 0x68, 0x61, 0x77, 0x74, 0x65, 0x20, 0x50, 0x72, 0x65, 0x6D, 0x69 - .byte 0x75, 0x6D, 0x20, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x43, 0x41, 0x2C, 0x20, 0x70, 0x72 - .byte 0x65, 0x6D, 0x69, 0x75, 0x6D, 0x2D, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x40, 0x74, 0x68, 0x61 - .byte 0x77, 0x74, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x00 - - .global UNK_0220CCD0 -UNK04_0220CCD0: ; 0x0220CCD0 - .byte 0x01, 0x00, 0x01, 0x00 - - .global UNK_0220CCD4 -UNK04_0220CCD4: ; 0x0220CCD4 - .word UNK04_0220CCE8, 0x00000080, UNK04_0220CD68, 0x00000003 - .word UNK04_0220CCD0 - - .global UNK_0220CCE8 -UNK04_0220CCE8: ; 0x0220CCE8 - .byte 0x5A, 0x41, 0x2C, 0x20, 0x57, 0x65, 0x73, 0x74, 0x65, 0x72, 0x6E, 0x20, 0x43, 0x61, 0x70, 0x65 - .byte 0x2C, 0x20, 0x43, 0x61, 0x70, 0x65, 0x20, 0x54, 0x6F, 0x77, 0x6E, 0x2C, 0x20, 0x54, 0x68, 0x61 - .byte 0x77, 0x74, 0x65, 0x20, 0x43, 0x6F, 0x6E, 0x73, 0x75, 0x6C, 0x74, 0x69, 0x6E, 0x67, 0x20, 0x63 - .byte 0x63, 0x2C, 0x20, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E - .byte 0x20, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x20, 0x44, 0x69, 0x76, 0x69, 0x73, 0x69 - .byte 0x6F, 0x6E, 0x2C, 0x20, 0x54, 0x68, 0x61, 0x77, 0x74, 0x65, 0x20, 0x53, 0x65, 0x72, 0x76, 0x65 - .byte 0x72, 0x20, 0x43, 0x41, 0x2C, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2D, 0x63, 0x65, 0x72 - .byte 0x74, 0x73, 0x40, 0x74, 0x68, 0x61, 0x77, 0x74, 0x65, 0x2E, 0x63, 0x6F, 0x6D, 0x00, 0x00, 0x00 - - .global UNK_0220CD68 -UNK04_0220CD68: ; 0x0220CD68 - .byte 0xD3, 0xA4, 0x50, 0x6E, 0xC8, 0xFF, 0x56, 0x6B, 0xE6, 0xCF, 0x5D, 0xB6, 0xEA, 0x0C, 0x68, 0x75 - .byte 0x47, 0xA2, 0xAA, 0xC2, 0xDA, 0x84, 0x25, 0xFC, 0xA8, 0xF4, 0x47, 0x51, 0xDA, 0x85, 0xB5, 0x20 - .byte 0x74, 0x94, 0x86, 0x1E, 0x0F, 0x75, 0xC9, 0xE9, 0x08, 0x61, 0xF5, 0x06, 0x6D, 0x30, 0x6E, 0x15 - .byte 0x19, 0x02, 0xE9, 0x52, 0xC0, 0x62, 0xDB, 0x4D, 0x99, 0x9E, 0xE2, 0x6A, 0x0C, 0x44, 0x38, 0xCD - .byte 0xFE, 0xBE, 0xE3, 0x64, 0x09, 0x70, 0xC5, 0xFE, 0xB1, 0x6B, 0x29, 0xB6, 0x2F, 0x49, 0xC8, 0x3B - .byte 0xD4, 0x27, 0x04, 0x25, 0x10, 0x97, 0x2F, 0xE7, 0x90, 0x6D, 0xC0, 0x28, 0x42, 0x99, 0xD7, 0x4C - .byte 0x43, 0xDE, 0xC3, 0xF5, 0x21, 0x6D, 0x54, 0x9F, 0x5D, 0xC3, 0x58, 0xE1, 0xC0, 0xE4, 0xD9, 0x5B - .byte 0xB0, 0xB8, 0xDC, 0xB4, 0x7B, 0xDF, 0x36, 0x3A, 0xC2, 0xB5, 0x66, 0x22, 0x12, 0xD6, 0x87, 0x0D - - .global UNK_0220CDE8 -UNK04_0220CDE8: ; 0x0220CDE8 - .byte 0x01, 0x00, 0x01, 0x00 - - .global UNK_0220CDEC -UNK04_0220CDEC: ; 0x0220CDEC - .word UNK04_0220CE80, 0x00000080, UNK04_0220CE00, 0x00000003 - .word UNK04_0220CDE8 - - .global UNK_0220CE00 -UNK04_0220CE00: ; 0x0220CE00 - .byte 0xCC, 0x5E, 0xD1, 0x11, 0x5D, 0x5C, 0x69, 0xD0 - .byte 0xAB, 0xD3, 0xB9, 0x6A, 0x4C, 0x99, 0x1F, 0x59, 0x98, 0x30, 0x8E, 0x16, 0x85, 0x20, 0x46, 0x6D - .byte 0x47, 0x3F, 0xD4, 0x85, 0x20, 0x84, 0xE1, 0x6D, 0xB3, 0xF8, 0xA4, 0xED, 0x0C, 0xF1, 0x17, 0x0F - .byte 0x3B, 0xF9, 0xA7, 0xF9, 0x25, 0xD7, 0xC1, 0xCF, 0x84, 0x63, 0xF2, 0x7C, 0x63, 0xCF, 0xA2, 0x47 - .byte 0xF2, 0xC6, 0x5B, 0x33, 0x8E, 0x64, 0x40, 0x04, 0x68, 0xC1, 0x80, 0xB9, 0x64, 0x1C, 0x45, 0x77 - .byte 0xC7, 0xD8, 0x6E, 0xF5, 0x95, 0x29, 0x3C, 0x50, 0xE8, 0x34, 0xD7, 0x78, 0x1F, 0xA8, 0xBA, 0x6D - .byte 0x43, 0x91, 0x95, 0x8F, 0x45, 0x57, 0x5E, 0x7E, 0xC5, 0xFB, 0xCA, 0xA4, 0x04, 0xEB, 0xEA, 0x97 - .byte 0x37, 0x54, 0x30, 0x6F, 0xBB, 0x01, 0x47, 0x32, 0x33, 0xCD, 0xDC, 0x57, 0x9B, 0x64, 0x69, 0x61 - .byte 0xF8, 0x9B, 0x1D, 0x1C, 0x89, 0x4F, 0x5C, 0x67 - - .global UNK_0220CE80 -UNK04_0220CE80: ; 0x0220CE80 - .byte 0x55, 0x53, 0x2C, 0x20, 0x56, 0x65, 0x72, 0x69 - .byte 0x53, 0x69, 0x67, 0x6E, 0x2C, 0x20, 0x49, 0x6E, 0x63, 0x2E, 0x2C, 0x20, 0x43, 0x6C, 0x61, 0x73 - .byte 0x73, 0x20, 0x33, 0x20, 0x50, 0x75, 0x62, 0x6C, 0x69, 0x63, 0x20, 0x50, 0x72, 0x69, 0x6D, 0x61 - .byte 0x72, 0x79, 0x20, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E - .byte 0x20, 0x41, 0x75, 0x74, 0x68, 0x6F, 0x72, 0x69, 0x74, 0x79, 0x20, 0x2D, 0x20, 0x47, 0x32, 0x2C - .byte 0x20, 0x28, 0x63, 0x29, 0x20, 0x31, 0x39, 0x39, 0x38, 0x20, 0x56, 0x65, 0x72, 0x69, 0x53, 0x69 - .byte 0x67, 0x6E, 0x2C, 0x20, 0x49, 0x6E, 0x63, 0x2E, 0x20, 0x2D, 0x20, 0x46, 0x6F, 0x72, 0x20, 0x61 - .byte 0x75, 0x74, 0x68, 0x6F, 0x72, 0x69, 0x7A, 0x65, 0x64, 0x20, 0x75, 0x73, 0x65, 0x20, 0x6F, 0x6E - .byte 0x6C, 0x79, 0x2C, 0x20, 0x56, 0x65, 0x72, 0x69, 0x53, 0x69, 0x67, 0x6E, 0x20, 0x54, 0x72, 0x75 - .byte 0x73, 0x74, 0x20, 0x4E, 0x65, 0x74, 0x77, 0x6F, 0x72, 0x6B, 0x00, 0x00 - - .global UNK_0220CF14 -UNK04_0220CF14: ; 0x0220CF14 - .byte 0x01, 0x00, 0x01, 0x00 - - .global UNK_0220CF18 -UNK04_0220CF18: ; 0x0220CF18 - .word UNK04_0220CF2C, 0x00000100, UNK04_0220CFC8, 0x00000003 - .word UNK04_0220CF14 - - .global UNK_0220CF2C -UNK04_0220CF2C: ; 0x0220CF2C - .byte 0x55, 0x53, 0x2C, 0x20, 0x56, 0x65, 0x72, 0x69, 0x53, 0x69, 0x67, 0x6E - .byte 0x2C, 0x20, 0x49, 0x6E, 0x63, 0x2E, 0x2C, 0x20, 0x56, 0x65, 0x72, 0x69, 0x53, 0x69, 0x67, 0x6E - .byte 0x20, 0x54, 0x72, 0x75, 0x73, 0x74, 0x20, 0x4E, 0x65, 0x74, 0x77, 0x6F, 0x72, 0x6B, 0x2C, 0x20 - .byte 0x28, 0x63, 0x29, 0x20, 0x31, 0x39, 0x39, 0x39, 0x20, 0x56, 0x65, 0x72, 0x69, 0x53, 0x69, 0x67 - .byte 0x6E, 0x2C, 0x20, 0x49, 0x6E, 0x63, 0x2E, 0x20, 0x2D, 0x20, 0x46, 0x6F, 0x72, 0x20, 0x61, 0x75 - .byte 0x74, 0x68, 0x6F, 0x72, 0x69, 0x7A, 0x65, 0x64, 0x20, 0x75, 0x73, 0x65, 0x20, 0x6F, 0x6E, 0x6C - .byte 0x79, 0x2C, 0x20, 0x56, 0x65, 0x72, 0x69, 0x53, 0x69, 0x67, 0x6E, 0x20, 0x43, 0x6C, 0x61, 0x73 - .byte 0x73, 0x20, 0x33, 0x20, 0x50, 0x75, 0x62, 0x6C, 0x69, 0x63, 0x20, 0x50, 0x72, 0x69, 0x6D, 0x61 - .byte 0x72, 0x79, 0x20, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E - .byte 0x20, 0x41, 0x75, 0x74, 0x68, 0x6F, 0x72, 0x69, 0x74, 0x79, 0x20, 0x2D, 0x20, 0x47, 0x33, 0x00 - - .global UNK_0220CFC8 -UNK04_0220CFC8: ; 0x0220CFC8 - .byte 0xCB, 0xBA, 0x9C, 0x52, 0xFC, 0x78, 0x1F, 0x1A, 0x1E, 0x6F, 0x1B, 0x37, 0x73, 0xBD, 0xF8, 0xC9 - .byte 0x6B, 0x94, 0x12, 0x30, 0x4F, 0xF0, 0x36, 0x47, 0xF5, 0xD0, 0x91, 0x0A, 0xF5, 0x17, 0xC8, 0xA5 - .byte 0x61, 0xC1, 0x16, 0x40, 0x4D, 0xFB, 0x8A, 0x61, 0x90, 0xE5, 0x76, 0x20, 0xC1, 0x11, 0x06, 0x7D - .byte 0xAB, 0x2C, 0x6E, 0xA6, 0xF5, 0x11, 0x41, 0x8E, 0xFA, 0x2D, 0xAD, 0x2A, 0x61, 0x59, 0xA4, 0x67 - .byte 0x26, 0x4C, 0xD0, 0xE8, 0xBC, 0x52, 0x5B, 0x70, 0x20, 0x04, 0x58, 0xD1, 0x7A, 0xC9, 0xA4, 0x69 - .byte 0xBC, 0x83, 0x17, 0x64, 0xAD, 0x05, 0x8B, 0xBC, 0xD0, 0x58, 0xCE, 0x8D, 0x8C, 0xF5, 0xEB, 0xF0 - .byte 0x42, 0x49, 0x0B, 0x9D, 0x97, 0x27, 0x67, 0x32, 0x6E, 0xE1, 0xAE, 0x93, 0x15, 0x1C, 0x70, 0xBC - .byte 0x20, 0x4D, 0x2F, 0x18, 0xDE, 0x92, 0x88, 0xE8, 0x6C, 0x85, 0x57, 0x11, 0x1A, 0xE9, 0x7E, 0xE3 - .byte 0x26, 0x11, 0x54, 0xA2, 0x45, 0x96, 0x55, 0x83, 0xCA, 0x30, 0x89, 0xE8, 0xDC, 0xD8, 0xA3, 0xED - .byte 0x2A, 0x80, 0x3F, 0x7F, 0x79, 0x65, 0x57, 0x3E, 0x15, 0x20, 0x66, 0x08, 0x2F, 0x95, 0x93, 0xBF - .byte 0xAA, 0x47, 0x2F, 0xA8, 0x46, 0x97, 0xF0, 0x12, 0xE2, 0xFE, 0xC2, 0x0A, 0x2B, 0x51, 0xE6, 0x76 - .byte 0xE6, 0xB7, 0x46, 0xB7, 0xE2, 0x0D, 0xA6, 0xCC, 0xA8, 0xC3, 0x4C, 0x59, 0x55, 0x89, 0xE6, 0xE8 - .byte 0x53, 0x5C, 0x1C, 0xEA, 0x9D, 0xF0, 0x62, 0x16, 0x0B, 0xA7, 0xC9, 0x5F, 0x0C, 0xF0, 0xDE, 0xC2 - .byte 0x76, 0xCE, 0xAF, 0xF7, 0x6A, 0xF2, 0xFA, 0x41, 0xA6, 0xA2, 0x33, 0x14, 0xC9, 0xE5, 0x7A, 0x63 - .byte 0xD3, 0x9E, 0x62, 0x37, 0xD5, 0x85, 0x65, 0x9E, 0x0E, 0xE6, 0x53, 0x24, 0x74, 0x1B, 0x5E, 0x1D - .byte 0x12, 0x53, 0x5B, 0xC7, 0x2C, 0xE7, 0x83, 0x49, 0x3B, 0x15, 0xAE, 0x8A, 0x68, 0xB9, 0x57, 0x97 - - .global UNK_0220D0C8 -UNK04_0220D0C8: ; 0x0220D0C8 - .byte 0x01, 0x00, 0x01, 0x00 - - .global UNK_0220D0CC -UNK04_0220D0CC: ; 0x0220D0CC - .word UNK04_0220D0E0, 0x00000080, UNK04_0220D124, 0x00000003 - .word UNK04_0220D0C8 - - .global UNK_0220D0E0 -UNK04_0220D0E0: ; 0x0220D0E0 - .byte 0x55, 0x53, 0x2C, 0x20, 0x56, 0x65, 0x72, 0x69 - .byte 0x53, 0x69, 0x67, 0x6E, 0x2C, 0x20, 0x49, 0x6E, 0x63, 0x2E, 0x2C, 0x20, 0x43, 0x6C, 0x61, 0x73 - .byte 0x73, 0x20, 0x33, 0x20, 0x50, 0x75, 0x62, 0x6C, 0x69, 0x63, 0x20, 0x50, 0x72, 0x69, 0x6D, 0x61 - .byte 0x72, 0x79, 0x20, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E - .byte 0x20, 0x41, 0x75, 0x74, 0x68, 0x6F, 0x72, 0x69, 0x74, 0x79, 0x00, 0x00 - - .global UNK_0220D124 -UNK04_0220D124: ; 0x0220D124 - .byte 0xC9, 0x5C, 0x59, 0x9E - .byte 0xF2, 0x1B, 0x8A, 0x01, 0x14, 0xB4, 0x10, 0xDF, 0x04, 0x40, 0xDB, 0xE3, 0x57, 0xAF, 0x6A, 0x45 - .byte 0x40, 0x8F, 0x84, 0x0C, 0x0B, 0xD1, 0x33, 0xD9, 0xD9, 0x11, 0xCF, 0xEE, 0x02, 0x58, 0x1F, 0x25 - .byte 0xF7, 0x2A, 0xA8, 0x44, 0x05, 0xAA, 0xEC, 0x03, 0x1F, 0x78, 0x7F, 0x9E, 0x93, 0xB9, 0x9A, 0x00 - .byte 0xAA, 0x23, 0x7D, 0xD6, 0xAC, 0x85, 0xA2, 0x63, 0x45, 0xC7, 0x72, 0x27, 0xCC, 0xF4, 0x4C, 0xC6 - .byte 0x75, 0x71, 0xD2, 0x39, 0xEF, 0x4F, 0x42, 0xF0, 0x75, 0xDF, 0x0A, 0x90, 0xC6, 0x8E, 0x20, 0x6F - .byte 0x98, 0x0F, 0xF8, 0xAC, 0x23, 0x5F, 0x70, 0x29, 0x36, 0xA4, 0xC9, 0x86, 0xE7, 0xB1, 0x9A, 0x20 - .byte 0xCB, 0x53, 0xA5, 0x85, 0xE7, 0x3D, 0xBE, 0x7D, 0x9A, 0xFE, 0x24, 0x45, 0x33, 0xDC, 0x76, 0x15 - .byte 0xED, 0x0F, 0xA2, 0x71, 0x64, 0x4C, 0x65, 0x2E, 0x81, 0x68, 0x45, 0xA7 - - .global UNK_0220D1A4 -UNK04_0220D1A4: ; 0x0220D1A4 - .byte 0x01, 0x00, 0x01, 0x00 - - .global UNK_0220D1A8 -UNK04_0220D1A8: ; 0x0220D1A8 - .word UNK04_0220D1BC, 0x0000007D, UNK04_0220D200, 0x00000003 - .word UNK04_0220D1A4 - - .global UNK_0220D1BC -UNK04_0220D1BC: ; 0x0220D1BC - .byte 0x55, 0x53, 0x2C, 0x20, 0x52, 0x53, 0x41, 0x20, 0x44, 0x61, 0x74, 0x61 - .byte 0x20, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2C, 0x20, 0x49, 0x6E, 0x63, 0x2E, 0x2C - .byte 0x20, 0x53, 0x65, 0x63, 0x75, 0x72, 0x65, 0x20, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x43 - .byte 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x20, 0x41, 0x75, 0x74 - .byte 0x68, 0x6F, 0x72, 0x69, 0x74, 0x79, 0x00, 0x00 - - .global UNK_0220D200 -UNK04_0220D200: ; 0x0220D200 - .byte 0x92, 0xCE, 0x7A, 0xC1, 0xAE, 0x83, 0x3E, 0x5A - .byte 0xAA, 0x89, 0x83, 0x57, 0xAC, 0x25, 0x01, 0x76, 0x0C, 0xAD, 0xAE, 0x8E, 0x2C, 0x37, 0xCE, 0xEB - .byte 0x35, 0x78, 0x64, 0x54, 0x03, 0xE5, 0x84, 0x40, 0x51, 0xC9, 0xBF, 0x8F, 0x08, 0xE2, 0x8A, 0x82 - .byte 0x08, 0xD2, 0x16, 0x86, 0x37, 0x55, 0xE9, 0xB1, 0x21, 0x02, 0xAD, 0x76, 0x68, 0x81, 0x9A, 0x05 - .byte 0xA2, 0x4B, 0xC9, 0x4B, 0x25, 0x66, 0x22, 0x56, 0x6C, 0x88, 0x07, 0x8F, 0xF7, 0x81, 0x59, 0x6D - .byte 0x84, 0x07, 0x65, 0x70, 0x13, 0x71, 0x76, 0x3E, 0x9B, 0x77, 0x4C, 0xE3, 0x50, 0x89, 0x56, 0x98 - .byte 0x48, 0xB9, 0x1D, 0xA7, 0x29, 0x1A, 0x13, 0x2E, 0x4A, 0x11, 0x59, 0x9C, 0x1E, 0x15, 0xD5, 0x49 - .byte 0x54, 0x2C, 0x73, 0x3A, 0x69, 0x82, 0xB1, 0x97, 0x39, 0x9C, 0x6D, 0x70, 0x67, 0x48, 0xE5, 0xDD - .byte 0x2D, 0xD6, 0xC8, 0x1E, 0x7B, 0x00, 0x00, 0x00 - - .global UNK_0220D280 -UNK04_0220D280: ; 0x0220D280 - .byte 0x68, 0x74, 0x74, 0x70, 0x73, 0x3A, 0x2F, 0x2F, 0x6E, 0x61, 0x73, 0x2E, 0x74, 0x65, 0x73, 0x74 - .byte 0x2E, 0x6E, 0x69, 0x6E, 0x74, 0x65, 0x6E, 0x64, 0x6F, 0x77, 0x69, 0x66, 0x69, 0x2E, 0x6E, 0x65 - .byte 0x74, 0x2F, 0x61, 0x63, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220D2A8 -UNK04_0220D2A8: ; 0x0220D2A8 - .byte 0x68, 0x74, 0x74, 0x70, 0x73, 0x3A, 0x2F, 0x2F, 0x6E, 0x61, 0x73, 0x2E, 0x64, 0x65, 0x76, 0x2E - .byte 0x6E, 0x69, 0x6E, 0x74, 0x65, 0x6E, 0x64, 0x6F, 0x77, 0x69, 0x66, 0x69, 0x2E, 0x6E, 0x65, 0x74 - .byte 0x2F, 0x61, 0x63, 0x00 - - .global UNK_0220D2CC -UNK04_0220D2CC: ; 0x0220D2CC - .byte 0x68, 0x74, 0x74, 0x70, 0x73, 0x3A, 0x2F, 0x2F, 0x6E, 0x61, 0x73, 0x2E, 0x6E, 0x69, 0x6E, 0x74 - .byte 0x65, 0x6E, 0x64, 0x6F, 0x77, 0x69, 0x66, 0x69, 0x2E, 0x6E, 0x65, 0x74, 0x2F, 0x61, 0x63, 0x00 - - .global UNK_0220D2EC -UNK04_0220D2EC: ; 0x0220D2EC - .byte 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220D2F0 -UNK04_0220D2F0: ; 0x0220D2F0 - .byte 0x30, 0x30, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220D2F8 -UNK04_0220D2F8: ; 0x0220D2F8 - .byte 0x39, 0x30, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220D300 -UNK04_0220D300: ; 0x0220D300 - .byte 0x68, 0x74, 0x74, 0x70, 0x73, 0x3A, 0x2F, 0x2F, 0x2F, 0x64, 0x6F, 0x77, 0x6E, 0x6C, 0x6F, 0x61 - .byte 0x64, 0x00, 0x00, 0x00 - - .global UNK_0220D314 -UNK04_0220D314: ; 0x0220D314 - .byte 0x68, 0x74, 0x74, 0x70, 0x73, 0x3A, 0x2F, 0x2F, 0x25, 0x73, 0x2F, 0x64, 0x6F, 0x77, 0x6E, 0x6C - .byte 0x6F, 0x61, 0x64, 0x00 - - .global UNK_0220D328 -UNK04_0220D328: ; 0x0220D328 - .byte 0x25, 0x63, 0x25, 0x73, 0x25, 0x63, 0x25, 0x73, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220D334 -UNK04_0220D334: ; 0x0220D334 - .byte 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220D338 -UNK04_0220D338: ; 0x0220D338 - .byte 0x47, 0x50, 0x43, 0x4D, 0x00, 0x00, 0x00, 0x00 - - .global UNK_0220D340 -UNK04_0220D340: ; 0x0220D340 - .byte 0x4D, 0x41, 0x54, 0x00 - - .global UNK_0220D344 -UNK04_0220D344: ; 0x0220D344 - .byte 0x53, 0x43, 0x4D, 0x00 - - .global UNK_0220D348 -UNK04_0220D348: ; 0x0220D348 - .byte 0x53, 0x43, 0x4E, 0x00 - - .global UNK_0220D34C -UNK04_0220D34C: ; 0x0220D34C - .byte 0x00, 0x00, 0x00, 0x00 .global UNK_0220D350 UNK04_0220D350: ; 0x0220D350 @@ -63822,122 +53142,6 @@ UNK04_0220FBA4: ; 0x0220FBA4 .section .bss - .global UNK04_02210460 -UNK04_02210460: ; 0x02210460 - .space 0x4 - - .global UNK04_02210464 -UNK04_02210464: ; 0x02210464 - .space 0x4 - - .global UNK04_02210468 -UNK04_02210468: ; 0x02210468 - .space 0x4 - - .global UNK04_0221046C -UNK04_0221046C: ; 0x0221046C - .space 0x14 - - .global UNK04_02210480 -UNK04_02210480: ; 0x02210480 - .space 0x4 - - .global UNK04_02210484 -UNK04_02210484: ; 0x02210484 - .space 0x4 - - .global UNK04_02210488 -UNK04_02210488: ; 0x02210488 - .space 0x4 - - .global UNK04_0221048C -UNK04_0221048C: ; 0x0221048C - .space 0x4 - - .global UNK04_02210490 -UNK04_02210490: ; 0x02210490 - .space 0x4 - - .global UNK04_02210494 -UNK04_02210494: ; 0x02210494 - .space 0x1C - - .global UNK04_022104B0 -UNK04_022104B0: ; 0x022104B0 - .space 0x48 - - .global UNK04_022104F8 -UNK04_022104F8: ; 0x022104F8 - .space 0x4 - - .global UNK04_022104FC -UNK04_022104FC: ; 0x022104FC - .space 0x8 - - .global UNK04_02210504 -UNK04_02210504: ; 0x02210504 - .space 0x4 - - .global UNK04_02210508 -UNK04_02210508: ; 0x02210508 - .space 0x4 - - .global UNK04_0221050C -UNK04_0221050C: ; 0x0221050C - .space 0x4 - - .global UNK04_02210510 -UNK04_02210510: ; 0x02210510 - .space 0x4 - - .global UNK04_02210514 -UNK04_02210514: ; 0x02210514 - .space 0x4 - - .global UNK04_02210518 -UNK04_02210518: ; 0x02210518 - .space 0x4 - - .global UNK04_0221051C -UNK04_0221051C: ; 0x0221051C - .space 0x4 - - .global UNK04_02210520 -UNK04_02210520: ; 0x02210520 - .space 0x4 - - .global UNK04_02210524 -UNK04_02210524: ; 0x02210524 - .space 0x18 - - .global UNK04_0221053C -UNK04_0221053C: ; 0x0221053C - .space 0x4 - - .global UNK04_02210540 -UNK04_02210540: ; 0x02210540 - .space 0x4 - - .global UNK04_02210544 -UNK04_02210544: ; 0x02210544 - .space 0x80 - - .global UNK04_022105C4 -UNK04_022105C4: ; 0x022105C4 - .space 0x100 - - .global UNK04_022106C4 -UNK04_022106C4: ; 0x022106C4 - .space 0x4 - - .global UNK04_022106C8 -UNK04_022106C8: ; 0x022106C8 - .space 0x4 - - .global UNK04_022106CC -UNK04_022106CC: ; 0x022106CC - .space 0x4 - .global UNK04_022106D0 UNK04_022106D0: ; 0x022106D0 .space 0x4 |